Files
deusdata--codebase-memory-mcp/internal/cbm/vendored/grammars/teal/parser.c
T
wehub-resource-sync 41cb1c0170
OpenSSF Scorecard / scorecard (push) Failing after 0s
DCO / dco (push) Failing after 0s
CodeQL SAST / analyze (push) Failing after 1s
Deploy Pages / deploy (push) Failing after 1s
chore: import upstream snapshot with attribution
2026-07-13 12:28:05 +08:00

31775 lines
768 KiB
C
Generated

/* Automatically generated by tree-sitter v0.25.3 */
#include "tree_sitter/parser.h"
#if defined(__GNUC__) || defined(__clang__)
#pragma GCC diagnostic ignored "-Wmissing-field-initializers"
#endif
#define LANGUAGE_VERSION 15
#define STATE_COUNT 733
#define LARGE_STATE_COUNT 3
#define SYMBOL_COUNT 181
#define ALIAS_COUNT 11
#define TOKEN_COUNT 83
#define EXTERNAL_TOKEN_COUNT 7
#define FIELD_COUNT 44
#define MAX_ALIAS_SEQUENCE_LENGTH 10
#define MAX_RESERVED_WORD_SET_SIZE 0
#define PRODUCTION_ID_COUNT 116
#define SUPERTYPE_COUNT 0
enum ts_symbol_identifiers {
sym_identifier = 1,
aux_sym_program_token1 = 2,
anon_sym_COLON_COLON = 3,
anon_sym_SEMI = 4,
anon_sym_return = 5,
anon_sym_COMMA = 6,
anon_sym_LPAREN = 7,
anon_sym_RPAREN = 8,
sym_break = 9,
anon_sym_if = 10,
anon_sym_then = 11,
anon_sym_end = 12,
anon_sym_elseif = 13,
anon_sym_else = 14,
anon_sym_for = 15,
anon_sym_EQ = 16,
anon_sym_in = 17,
anon_sym_while = 18,
anon_sym_repeat = 19,
anon_sym_until = 20,
anon_sym_do = 21,
anon_sym_not = 22,
anon_sym_POUND = 23,
anon_sym_DASH = 24,
anon_sym_TILDE = 25,
anon_sym_or = 26,
anon_sym_and = 27,
anon_sym_LT = 28,
anon_sym_LT_EQ = 29,
anon_sym_EQ_EQ = 30,
anon_sym_TILDE_EQ = 31,
anon_sym_GT_EQ = 32,
anon_sym_GT = 33,
anon_sym_PIPE = 34,
anon_sym_AMP = 35,
anon_sym_LT_LT = 36,
anon_sym_GT_GT = 37,
anon_sym_PLUS = 38,
anon_sym_STAR = 39,
anon_sym_SLASH = 40,
anon_sym_SLASH_SLASH = 41,
anon_sym_PERCENT = 42,
anon_sym_DOT_DOT = 43,
anon_sym_CARET = 44,
anon_sym_is = 45,
anon_sym_as = 46,
anon_sym_type = 47,
anon_sym_COLON = 48,
anon_sym_LBRACK = 49,
anon_sym_RBRACK = 50,
anon_sym_LBRACE = 51,
anon_sym_RBRACE = 52,
anon_sym_DOT = 53,
anon_sym_local = 54,
anon_sym_global = 55,
anon_sym_function = 56,
anon_sym_macroexp = 57,
anon_sym_DOT_DOT_DOT = 58,
sym_optional_marker = 59,
anon_sym_record = 60,
anon_sym_interface = 61,
anon_sym_enum = 62,
anon_sym_userdata = 63,
anon_sym_metamethod = 64,
anon_sym_where = 65,
anon_sym_goto = 66,
aux_sym_number_token1 = 67,
aux_sym_number_token2 = 68,
aux_sym_number_token3 = 69,
anon_sym_true = 70,
anon_sym_false = 71,
anon_sym_PERCENT2 = 72,
sym_format_specifier = 73,
sym_escape_sequence = 74,
sym_nil = 75,
sym_comment = 76,
sym__long_string_start = 77,
sym__long_string_char = 78,
sym__long_string_end = 79,
sym__short_string_start = 80,
sym__short_string_char = 81,
sym__short_string_end = 82,
sym_program = 83,
sym__statement = 84,
sym_return_statement = 85,
sym_if_statement = 86,
sym_elseif_block = 87,
sym_else_block = 88,
sym_numeric_for_statement = 89,
sym_generic_for_statement = 90,
sym__for_statement = 91,
sym_while_statement = 92,
sym_repeat_statement = 93,
sym_do_statement = 94,
sym__expression = 95,
sym_parenthesized_expression = 96,
sym_unary_op = 97,
sym_bin_op = 98,
sym_type_cast = 99,
sym_type_tuple = 100,
sym_type_union = 101,
sym_var_declarator = 102,
sym_var_declarators = 103,
sym_expressions = 104,
sym_var_declaration = 105,
sym__type_def = 106,
sym_type_declaration = 107,
sym_assignment_variables = 108,
sym_var_assignment = 109,
sym__prefix_expression = 110,
sym_method_index = 111,
sym_arguments = 112,
sym_function_call = 113,
sym_table_entry = 114,
sym_table_constructor = 115,
sym_function_name = 116,
sym_function_statement = 117,
sym_macroexp_statement = 118,
sym__macroexp_def = 119,
sym_macroexp_body = 120,
sym_variadic_type = 121,
sym_return_type = 122,
sym__partype = 123,
sym__parname = 124,
sym_typearg = 125,
sym_typeargs = 126,
sym_anon_function = 127,
sym__annotated_var_arg = 128,
sym_signature_arguments = 129,
sym_function_signature = 130,
sym_function_body = 131,
sym_record_field = 132,
sym__record_entry = 133,
sym_metamethod_annotation = 134,
sym_record_body = 135,
sym__record_def = 136,
sym__interface_def = 137,
sym_interface_declaration = 138,
sym_record_declaration = 139,
sym_enum_body = 140,
sym__enum_def = 141,
sym_enum_declaration = 142,
sym_anon_interface = 143,
sym_anon_record = 144,
sym__anon_enum = 145,
sym__newtype = 146,
sym_type_annotation = 147,
sym__type = 148,
sym_typearg_params = 149,
sym_type_index = 150,
sym_simple_type = 151,
sym_table_type = 152,
sym_function_type_args = 153,
sym_function_type = 154,
sym_goto = 155,
sym_index = 156,
sym__var = 157,
sym_varargs = 158,
sym_number = 159,
sym_boolean = 160,
sym__short_string_content = 161,
sym__long_string_content = 162,
sym_string = 163,
aux_sym_program_repeat1 = 164,
aux_sym_return_statement_repeat1 = 165,
aux_sym_if_statement_repeat1 = 166,
aux_sym_generic_for_statement_repeat1 = 167,
aux_sym_type_tuple_repeat1 = 168,
aux_sym_var_declarators_repeat1 = 169,
aux_sym_assignment_variables_repeat1 = 170,
aux_sym_table_constructor_repeat1 = 171,
aux_sym_function_name_repeat1 = 172,
aux_sym__partypelist_repeat1 = 173,
aux_sym__parnamelist_repeat1 = 174,
aux_sym_typeargs_repeat1 = 175,
aux_sym_record_body_repeat1 = 176,
aux_sym_enum_body_repeat1 = 177,
aux_sym_table_type_repeat1 = 178,
aux_sym__short_string_content_repeat1 = 179,
aux_sym__long_string_content_repeat1 = 180,
alias_sym_attribute = 181,
alias_sym_for_body = 182,
alias_sym_interface_body = 183,
alias_sym_label = 184,
alias_sym_macroexp_declaration = 185,
alias_sym_macroexp_signature = 186,
alias_sym_record_array_type = 187,
alias_sym_string_content = 188,
alias_sym_typedef = 189,
alias_sym_userdata = 190,
alias_sym_while_body = 191,
};
static const char * const ts_symbol_names[] = {
[ts_builtin_sym_end] = "end",
[sym_identifier] = "identifier",
[aux_sym_program_token1] = "shebang_comment",
[anon_sym_COLON_COLON] = "::",
[anon_sym_SEMI] = ";",
[anon_sym_return] = "return",
[anon_sym_COMMA] = ",",
[anon_sym_LPAREN] = "(",
[anon_sym_RPAREN] = ")",
[sym_break] = "break",
[anon_sym_if] = "if",
[anon_sym_then] = "then",
[anon_sym_end] = "end",
[anon_sym_elseif] = "elseif",
[anon_sym_else] = "else",
[anon_sym_for] = "for",
[anon_sym_EQ] = "=",
[anon_sym_in] = "in",
[anon_sym_while] = "while",
[anon_sym_repeat] = "repeat",
[anon_sym_until] = "until",
[anon_sym_do] = "do",
[anon_sym_not] = "op",
[anon_sym_POUND] = "op",
[anon_sym_DASH] = "op",
[anon_sym_TILDE] = "op",
[anon_sym_or] = "op",
[anon_sym_and] = "op",
[anon_sym_LT] = "<",
[anon_sym_LT_EQ] = "op",
[anon_sym_EQ_EQ] = "op",
[anon_sym_TILDE_EQ] = "op",
[anon_sym_GT_EQ] = "op",
[anon_sym_GT] = ">",
[anon_sym_PIPE] = "|",
[anon_sym_AMP] = "op",
[anon_sym_LT_LT] = "op",
[anon_sym_GT_GT] = "op",
[anon_sym_PLUS] = "op",
[anon_sym_STAR] = "op",
[anon_sym_SLASH] = "op",
[anon_sym_SLASH_SLASH] = "op",
[anon_sym_PERCENT] = "op",
[anon_sym_DOT_DOT] = "op",
[anon_sym_CARET] = "op",
[anon_sym_is] = "is",
[anon_sym_as] = "as",
[anon_sym_type] = "type",
[anon_sym_COLON] = ":",
[anon_sym_LBRACK] = "[",
[anon_sym_RBRACK] = "]",
[anon_sym_LBRACE] = "{",
[anon_sym_RBRACE] = "}",
[anon_sym_DOT] = ".",
[anon_sym_local] = "local",
[anon_sym_global] = "global",
[anon_sym_function] = "function",
[anon_sym_macroexp] = "macroexp",
[anon_sym_DOT_DOT_DOT] = "...",
[sym_optional_marker] = "optional_marker",
[anon_sym_record] = "record",
[anon_sym_interface] = "interface",
[anon_sym_enum] = "enum",
[anon_sym_userdata] = "identifier",
[anon_sym_metamethod] = "metamethod",
[anon_sym_where] = "where",
[anon_sym_goto] = "goto",
[aux_sym_number_token1] = "number_token1",
[aux_sym_number_token2] = "number_token2",
[aux_sym_number_token3] = "number_token3",
[anon_sym_true] = "true",
[anon_sym_false] = "false",
[anon_sym_PERCENT2] = "%",
[sym_format_specifier] = "format_specifier",
[sym_escape_sequence] = "escape_sequence",
[sym_nil] = "nil",
[sym_comment] = "comment",
[sym__long_string_start] = "long_string_start",
[sym__long_string_char] = "_long_string_char",
[sym__long_string_end] = "long_string_end",
[sym__short_string_start] = "short_string_start",
[sym__short_string_char] = "_short_string_char",
[sym__short_string_end] = "short_string_end",
[sym_program] = "program",
[sym__statement] = "_statement",
[sym_return_statement] = "return_statement",
[sym_if_statement] = "if_statement",
[sym_elseif_block] = "elseif_block",
[sym_else_block] = "else_block",
[sym_numeric_for_statement] = "numeric_for_statement",
[sym_generic_for_statement] = "generic_for_statement",
[sym__for_statement] = "_for_statement",
[sym_while_statement] = "while_statement",
[sym_repeat_statement] = "repeat_statement",
[sym_do_statement] = "do_statement",
[sym__expression] = "_expression",
[sym_parenthesized_expression] = "parenthesized_expression",
[sym_unary_op] = "unary_op",
[sym_bin_op] = "bin_op",
[sym_type_cast] = "type_cast",
[sym_type_tuple] = "type_tuple",
[sym_type_union] = "type_union",
[sym_var_declarator] = "var",
[sym_var_declarators] = "var_declarators",
[sym_expressions] = "expressions",
[sym_var_declaration] = "var_declaration",
[sym__type_def] = "_type_def",
[sym_type_declaration] = "type_declaration",
[sym_assignment_variables] = "assignment_variables",
[sym_var_assignment] = "var_assignment",
[sym__prefix_expression] = "_prefix_expression",
[sym_method_index] = "method_index",
[sym_arguments] = "arguments",
[sym_function_call] = "function_call",
[sym_table_entry] = "table_entry",
[sym_table_constructor] = "table_constructor",
[sym_function_name] = "function_name",
[sym_function_statement] = "function_statement",
[sym_macroexp_statement] = "macroexp_statement",
[sym__macroexp_def] = "_macroexp_def",
[sym_macroexp_body] = "macroexp_body",
[sym_variadic_type] = "variadic_type",
[sym_return_type] = "return_type",
[sym__partype] = "arg",
[sym__parname] = "arg",
[sym_typearg] = "typearg",
[sym_typeargs] = "typeargs",
[sym_anon_function] = "anon_function",
[sym__annotated_var_arg] = "varargs",
[sym_signature_arguments] = "arguments",
[sym_function_signature] = "function_signature",
[sym_function_body] = "function_body",
[sym_record_field] = "field",
[sym__record_entry] = "_record_entry",
[sym_metamethod_annotation] = "metamethod",
[sym_record_body] = "record_body",
[sym__record_def] = "_record_def",
[sym__interface_def] = "_interface_def",
[sym_interface_declaration] = "interface_declaration",
[sym_record_declaration] = "record_declaration",
[sym_enum_body] = "enum_body",
[sym__enum_def] = "_enum_def",
[sym_enum_declaration] = "enum_declaration",
[sym_anon_interface] = "anon_interface",
[sym_anon_record] = "anon_record",
[sym__anon_enum] = "_anon_enum",
[sym__newtype] = "_newtype",
[sym_type_annotation] = "type_annotation",
[sym__type] = "_type",
[sym_typearg_params] = "typeargs",
[sym_type_index] = "type_index",
[sym_simple_type] = "simple_type",
[sym_table_type] = "table_type",
[sym_function_type_args] = "arguments",
[sym_function_type] = "function_type",
[sym_goto] = "goto",
[sym_index] = "index",
[sym__var] = "_var",
[sym_varargs] = "varargs",
[sym_number] = "number",
[sym_boolean] = "boolean",
[sym__short_string_content] = "_short_string_content",
[sym__long_string_content] = "_long_string_content",
[sym_string] = "string",
[aux_sym_program_repeat1] = "program_repeat1",
[aux_sym_return_statement_repeat1] = "return_statement_repeat1",
[aux_sym_if_statement_repeat1] = "if_statement_repeat1",
[aux_sym_generic_for_statement_repeat1] = "generic_for_statement_repeat1",
[aux_sym_type_tuple_repeat1] = "type_tuple_repeat1",
[aux_sym_var_declarators_repeat1] = "var_declarators_repeat1",
[aux_sym_assignment_variables_repeat1] = "assignment_variables_repeat1",
[aux_sym_table_constructor_repeat1] = "table_constructor_repeat1",
[aux_sym_function_name_repeat1] = "function_name_repeat1",
[aux_sym__partypelist_repeat1] = "_partypelist_repeat1",
[aux_sym__parnamelist_repeat1] = "_parnamelist_repeat1",
[aux_sym_typeargs_repeat1] = "typeargs_repeat1",
[aux_sym_record_body_repeat1] = "record_body_repeat1",
[aux_sym_enum_body_repeat1] = "enum_body_repeat1",
[aux_sym_table_type_repeat1] = "table_type_repeat1",
[aux_sym__short_string_content_repeat1] = "_short_string_content_repeat1",
[aux_sym__long_string_content_repeat1] = "_long_string_content_repeat1",
[alias_sym_attribute] = "attribute",
[alias_sym_for_body] = "for_body",
[alias_sym_interface_body] = "interface_body",
[alias_sym_label] = "label",
[alias_sym_macroexp_declaration] = "macroexp_declaration",
[alias_sym_macroexp_signature] = "macroexp_signature",
[alias_sym_record_array_type] = "record_array_type",
[alias_sym_string_content] = "string_content",
[alias_sym_typedef] = "typedef",
[alias_sym_userdata] = "userdata",
[alias_sym_while_body] = "while_body",
};
static const TSSymbol ts_symbol_map[] = {
[ts_builtin_sym_end] = ts_builtin_sym_end,
[sym_identifier] = sym_identifier,
[aux_sym_program_token1] = aux_sym_program_token1,
[anon_sym_COLON_COLON] = anon_sym_COLON_COLON,
[anon_sym_SEMI] = anon_sym_SEMI,
[anon_sym_return] = anon_sym_return,
[anon_sym_COMMA] = anon_sym_COMMA,
[anon_sym_LPAREN] = anon_sym_LPAREN,
[anon_sym_RPAREN] = anon_sym_RPAREN,
[sym_break] = sym_break,
[anon_sym_if] = anon_sym_if,
[anon_sym_then] = anon_sym_then,
[anon_sym_end] = anon_sym_end,
[anon_sym_elseif] = anon_sym_elseif,
[anon_sym_else] = anon_sym_else,
[anon_sym_for] = anon_sym_for,
[anon_sym_EQ] = anon_sym_EQ,
[anon_sym_in] = anon_sym_in,
[anon_sym_while] = anon_sym_while,
[anon_sym_repeat] = anon_sym_repeat,
[anon_sym_until] = anon_sym_until,
[anon_sym_do] = anon_sym_do,
[anon_sym_not] = anon_sym_not,
[anon_sym_POUND] = anon_sym_not,
[anon_sym_DASH] = anon_sym_not,
[anon_sym_TILDE] = anon_sym_not,
[anon_sym_or] = anon_sym_not,
[anon_sym_and] = anon_sym_not,
[anon_sym_LT] = anon_sym_LT,
[anon_sym_LT_EQ] = anon_sym_not,
[anon_sym_EQ_EQ] = anon_sym_not,
[anon_sym_TILDE_EQ] = anon_sym_not,
[anon_sym_GT_EQ] = anon_sym_not,
[anon_sym_GT] = anon_sym_GT,
[anon_sym_PIPE] = anon_sym_PIPE,
[anon_sym_AMP] = anon_sym_not,
[anon_sym_LT_LT] = anon_sym_not,
[anon_sym_GT_GT] = anon_sym_not,
[anon_sym_PLUS] = anon_sym_not,
[anon_sym_STAR] = anon_sym_not,
[anon_sym_SLASH] = anon_sym_not,
[anon_sym_SLASH_SLASH] = anon_sym_not,
[anon_sym_PERCENT] = anon_sym_not,
[anon_sym_DOT_DOT] = anon_sym_not,
[anon_sym_CARET] = anon_sym_not,
[anon_sym_is] = anon_sym_is,
[anon_sym_as] = anon_sym_as,
[anon_sym_type] = anon_sym_type,
[anon_sym_COLON] = anon_sym_COLON,
[anon_sym_LBRACK] = anon_sym_LBRACK,
[anon_sym_RBRACK] = anon_sym_RBRACK,
[anon_sym_LBRACE] = anon_sym_LBRACE,
[anon_sym_RBRACE] = anon_sym_RBRACE,
[anon_sym_DOT] = anon_sym_DOT,
[anon_sym_local] = anon_sym_local,
[anon_sym_global] = anon_sym_global,
[anon_sym_function] = anon_sym_function,
[anon_sym_macroexp] = anon_sym_macroexp,
[anon_sym_DOT_DOT_DOT] = anon_sym_DOT_DOT_DOT,
[sym_optional_marker] = sym_optional_marker,
[anon_sym_record] = anon_sym_record,
[anon_sym_interface] = anon_sym_interface,
[anon_sym_enum] = anon_sym_enum,
[anon_sym_userdata] = sym_identifier,
[anon_sym_metamethod] = anon_sym_metamethod,
[anon_sym_where] = anon_sym_where,
[anon_sym_goto] = anon_sym_goto,
[aux_sym_number_token1] = aux_sym_number_token1,
[aux_sym_number_token2] = aux_sym_number_token2,
[aux_sym_number_token3] = aux_sym_number_token3,
[anon_sym_true] = anon_sym_true,
[anon_sym_false] = anon_sym_false,
[anon_sym_PERCENT2] = anon_sym_PERCENT,
[sym_format_specifier] = sym_format_specifier,
[sym_escape_sequence] = sym_escape_sequence,
[sym_nil] = sym_nil,
[sym_comment] = sym_comment,
[sym__long_string_start] = sym__long_string_start,
[sym__long_string_char] = sym__long_string_char,
[sym__long_string_end] = sym__long_string_end,
[sym__short_string_start] = sym__short_string_start,
[sym__short_string_char] = sym__short_string_char,
[sym__short_string_end] = sym__short_string_end,
[sym_program] = sym_program,
[sym__statement] = sym__statement,
[sym_return_statement] = sym_return_statement,
[sym_if_statement] = sym_if_statement,
[sym_elseif_block] = sym_elseif_block,
[sym_else_block] = sym_else_block,
[sym_numeric_for_statement] = sym_numeric_for_statement,
[sym_generic_for_statement] = sym_generic_for_statement,
[sym__for_statement] = sym__for_statement,
[sym_while_statement] = sym_while_statement,
[sym_repeat_statement] = sym_repeat_statement,
[sym_do_statement] = sym_do_statement,
[sym__expression] = sym__expression,
[sym_parenthesized_expression] = sym_parenthesized_expression,
[sym_unary_op] = sym_unary_op,
[sym_bin_op] = sym_bin_op,
[sym_type_cast] = sym_type_cast,
[sym_type_tuple] = sym_type_tuple,
[sym_type_union] = sym_type_union,
[sym_var_declarator] = sym_var_declarator,
[sym_var_declarators] = sym_var_declarators,
[sym_expressions] = sym_expressions,
[sym_var_declaration] = sym_var_declaration,
[sym__type_def] = sym__type_def,
[sym_type_declaration] = sym_type_declaration,
[sym_assignment_variables] = sym_assignment_variables,
[sym_var_assignment] = sym_var_assignment,
[sym__prefix_expression] = sym__prefix_expression,
[sym_method_index] = sym_method_index,
[sym_arguments] = sym_arguments,
[sym_function_call] = sym_function_call,
[sym_table_entry] = sym_table_entry,
[sym_table_constructor] = sym_table_constructor,
[sym_function_name] = sym_function_name,
[sym_function_statement] = sym_function_statement,
[sym_macroexp_statement] = sym_macroexp_statement,
[sym__macroexp_def] = sym__macroexp_def,
[sym_macroexp_body] = sym_macroexp_body,
[sym_variadic_type] = sym_variadic_type,
[sym_return_type] = sym_return_type,
[sym__partype] = sym__partype,
[sym__parname] = sym__partype,
[sym_typearg] = sym_typearg,
[sym_typeargs] = sym_typeargs,
[sym_anon_function] = sym_anon_function,
[sym__annotated_var_arg] = sym_varargs,
[sym_signature_arguments] = sym_arguments,
[sym_function_signature] = sym_function_signature,
[sym_function_body] = sym_function_body,
[sym_record_field] = sym_record_field,
[sym__record_entry] = sym__record_entry,
[sym_metamethod_annotation] = sym_metamethod_annotation,
[sym_record_body] = sym_record_body,
[sym__record_def] = sym__record_def,
[sym__interface_def] = sym__interface_def,
[sym_interface_declaration] = sym_interface_declaration,
[sym_record_declaration] = sym_record_declaration,
[sym_enum_body] = sym_enum_body,
[sym__enum_def] = sym__enum_def,
[sym_enum_declaration] = sym_enum_declaration,
[sym_anon_interface] = sym_anon_interface,
[sym_anon_record] = sym_anon_record,
[sym__anon_enum] = sym__anon_enum,
[sym__newtype] = sym__newtype,
[sym_type_annotation] = sym_type_annotation,
[sym__type] = sym__type,
[sym_typearg_params] = sym_typeargs,
[sym_type_index] = sym_type_index,
[sym_simple_type] = sym_simple_type,
[sym_table_type] = sym_table_type,
[sym_function_type_args] = sym_arguments,
[sym_function_type] = sym_function_type,
[sym_goto] = sym_goto,
[sym_index] = sym_index,
[sym__var] = sym__var,
[sym_varargs] = sym_varargs,
[sym_number] = sym_number,
[sym_boolean] = sym_boolean,
[sym__short_string_content] = sym__short_string_content,
[sym__long_string_content] = sym__long_string_content,
[sym_string] = sym_string,
[aux_sym_program_repeat1] = aux_sym_program_repeat1,
[aux_sym_return_statement_repeat1] = aux_sym_return_statement_repeat1,
[aux_sym_if_statement_repeat1] = aux_sym_if_statement_repeat1,
[aux_sym_generic_for_statement_repeat1] = aux_sym_generic_for_statement_repeat1,
[aux_sym_type_tuple_repeat1] = aux_sym_type_tuple_repeat1,
[aux_sym_var_declarators_repeat1] = aux_sym_var_declarators_repeat1,
[aux_sym_assignment_variables_repeat1] = aux_sym_assignment_variables_repeat1,
[aux_sym_table_constructor_repeat1] = aux_sym_table_constructor_repeat1,
[aux_sym_function_name_repeat1] = aux_sym_function_name_repeat1,
[aux_sym__partypelist_repeat1] = aux_sym__partypelist_repeat1,
[aux_sym__parnamelist_repeat1] = aux_sym__parnamelist_repeat1,
[aux_sym_typeargs_repeat1] = aux_sym_typeargs_repeat1,
[aux_sym_record_body_repeat1] = aux_sym_record_body_repeat1,
[aux_sym_enum_body_repeat1] = aux_sym_enum_body_repeat1,
[aux_sym_table_type_repeat1] = aux_sym_table_type_repeat1,
[aux_sym__short_string_content_repeat1] = aux_sym__short_string_content_repeat1,
[aux_sym__long_string_content_repeat1] = aux_sym__long_string_content_repeat1,
[alias_sym_attribute] = alias_sym_attribute,
[alias_sym_for_body] = alias_sym_for_body,
[alias_sym_interface_body] = alias_sym_interface_body,
[alias_sym_label] = alias_sym_label,
[alias_sym_macroexp_declaration] = alias_sym_macroexp_declaration,
[alias_sym_macroexp_signature] = alias_sym_macroexp_signature,
[alias_sym_record_array_type] = alias_sym_record_array_type,
[alias_sym_string_content] = alias_sym_string_content,
[alias_sym_typedef] = alias_sym_typedef,
[alias_sym_userdata] = alias_sym_userdata,
[alias_sym_while_body] = alias_sym_while_body,
};
static const TSSymbolMetadata ts_symbol_metadata[] = {
[ts_builtin_sym_end] = {
.visible = false,
.named = true,
},
[sym_identifier] = {
.visible = true,
.named = true,
},
[aux_sym_program_token1] = {
.visible = true,
.named = true,
},
[anon_sym_COLON_COLON] = {
.visible = true,
.named = false,
},
[anon_sym_SEMI] = {
.visible = true,
.named = false,
},
[anon_sym_return] = {
.visible = true,
.named = false,
},
[anon_sym_COMMA] = {
.visible = true,
.named = false,
},
[anon_sym_LPAREN] = {
.visible = true,
.named = false,
},
[anon_sym_RPAREN] = {
.visible = true,
.named = false,
},
[sym_break] = {
.visible = true,
.named = true,
},
[anon_sym_if] = {
.visible = true,
.named = false,
},
[anon_sym_then] = {
.visible = true,
.named = false,
},
[anon_sym_end] = {
.visible = true,
.named = false,
},
[anon_sym_elseif] = {
.visible = true,
.named = false,
},
[anon_sym_else] = {
.visible = true,
.named = false,
},
[anon_sym_for] = {
.visible = true,
.named = false,
},
[anon_sym_EQ] = {
.visible = true,
.named = false,
},
[anon_sym_in] = {
.visible = true,
.named = false,
},
[anon_sym_while] = {
.visible = true,
.named = false,
},
[anon_sym_repeat] = {
.visible = true,
.named = false,
},
[anon_sym_until] = {
.visible = true,
.named = false,
},
[anon_sym_do] = {
.visible = true,
.named = false,
},
[anon_sym_not] = {
.visible = true,
.named = true,
},
[anon_sym_POUND] = {
.visible = true,
.named = true,
},
[anon_sym_DASH] = {
.visible = true,
.named = true,
},
[anon_sym_TILDE] = {
.visible = true,
.named = true,
},
[anon_sym_or] = {
.visible = true,
.named = true,
},
[anon_sym_and] = {
.visible = true,
.named = true,
},
[anon_sym_LT] = {
.visible = true,
.named = false,
},
[anon_sym_LT_EQ] = {
.visible = true,
.named = true,
},
[anon_sym_EQ_EQ] = {
.visible = true,
.named = true,
},
[anon_sym_TILDE_EQ] = {
.visible = true,
.named = true,
},
[anon_sym_GT_EQ] = {
.visible = true,
.named = true,
},
[anon_sym_GT] = {
.visible = true,
.named = false,
},
[anon_sym_PIPE] = {
.visible = true,
.named = false,
},
[anon_sym_AMP] = {
.visible = true,
.named = true,
},
[anon_sym_LT_LT] = {
.visible = true,
.named = true,
},
[anon_sym_GT_GT] = {
.visible = true,
.named = true,
},
[anon_sym_PLUS] = {
.visible = true,
.named = true,
},
[anon_sym_STAR] = {
.visible = true,
.named = true,
},
[anon_sym_SLASH] = {
.visible = true,
.named = true,
},
[anon_sym_SLASH_SLASH] = {
.visible = true,
.named = true,
},
[anon_sym_PERCENT] = {
.visible = true,
.named = true,
},
[anon_sym_DOT_DOT] = {
.visible = true,
.named = true,
},
[anon_sym_CARET] = {
.visible = true,
.named = true,
},
[anon_sym_is] = {
.visible = true,
.named = false,
},
[anon_sym_as] = {
.visible = true,
.named = false,
},
[anon_sym_type] = {
.visible = true,
.named = false,
},
[anon_sym_COLON] = {
.visible = true,
.named = false,
},
[anon_sym_LBRACK] = {
.visible = true,
.named = false,
},
[anon_sym_RBRACK] = {
.visible = true,
.named = false,
},
[anon_sym_LBRACE] = {
.visible = true,
.named = false,
},
[anon_sym_RBRACE] = {
.visible = true,
.named = false,
},
[anon_sym_DOT] = {
.visible = true,
.named = false,
},
[anon_sym_local] = {
.visible = true,
.named = false,
},
[anon_sym_global] = {
.visible = true,
.named = false,
},
[anon_sym_function] = {
.visible = true,
.named = false,
},
[anon_sym_macroexp] = {
.visible = true,
.named = false,
},
[anon_sym_DOT_DOT_DOT] = {
.visible = true,
.named = false,
},
[sym_optional_marker] = {
.visible = true,
.named = true,
},
[anon_sym_record] = {
.visible = true,
.named = false,
},
[anon_sym_interface] = {
.visible = true,
.named = false,
},
[anon_sym_enum] = {
.visible = true,
.named = false,
},
[anon_sym_userdata] = {
.visible = true,
.named = true,
},
[anon_sym_metamethod] = {
.visible = true,
.named = false,
},
[anon_sym_where] = {
.visible = true,
.named = false,
},
[anon_sym_goto] = {
.visible = true,
.named = false,
},
[aux_sym_number_token1] = {
.visible = false,
.named = false,
},
[aux_sym_number_token2] = {
.visible = false,
.named = false,
},
[aux_sym_number_token3] = {
.visible = false,
.named = false,
},
[anon_sym_true] = {
.visible = true,
.named = false,
},
[anon_sym_false] = {
.visible = true,
.named = false,
},
[anon_sym_PERCENT2] = {
.visible = true,
.named = false,
},
[sym_format_specifier] = {
.visible = true,
.named = true,
},
[sym_escape_sequence] = {
.visible = true,
.named = true,
},
[sym_nil] = {
.visible = true,
.named = true,
},
[sym_comment] = {
.visible = true,
.named = true,
},
[sym__long_string_start] = {
.visible = true,
.named = false,
},
[sym__long_string_char] = {
.visible = false,
.named = true,
},
[sym__long_string_end] = {
.visible = true,
.named = false,
},
[sym__short_string_start] = {
.visible = true,
.named = false,
},
[sym__short_string_char] = {
.visible = false,
.named = true,
},
[sym__short_string_end] = {
.visible = true,
.named = false,
},
[sym_program] = {
.visible = true,
.named = true,
},
[sym__statement] = {
.visible = false,
.named = true,
},
[sym_return_statement] = {
.visible = true,
.named = true,
},
[sym_if_statement] = {
.visible = true,
.named = true,
},
[sym_elseif_block] = {
.visible = true,
.named = true,
},
[sym_else_block] = {
.visible = true,
.named = true,
},
[sym_numeric_for_statement] = {
.visible = true,
.named = true,
},
[sym_generic_for_statement] = {
.visible = true,
.named = true,
},
[sym__for_statement] = {
.visible = false,
.named = true,
},
[sym_while_statement] = {
.visible = true,
.named = true,
},
[sym_repeat_statement] = {
.visible = true,
.named = true,
},
[sym_do_statement] = {
.visible = true,
.named = true,
},
[sym__expression] = {
.visible = false,
.named = true,
},
[sym_parenthesized_expression] = {
.visible = true,
.named = true,
},
[sym_unary_op] = {
.visible = true,
.named = true,
},
[sym_bin_op] = {
.visible = true,
.named = true,
},
[sym_type_cast] = {
.visible = true,
.named = true,
},
[sym_type_tuple] = {
.visible = true,
.named = true,
},
[sym_type_union] = {
.visible = true,
.named = true,
},
[sym_var_declarator] = {
.visible = true,
.named = true,
},
[sym_var_declarators] = {
.visible = true,
.named = true,
},
[sym_expressions] = {
.visible = true,
.named = true,
},
[sym_var_declaration] = {
.visible = true,
.named = true,
},
[sym__type_def] = {
.visible = false,
.named = true,
},
[sym_type_declaration] = {
.visible = true,
.named = true,
},
[sym_assignment_variables] = {
.visible = true,
.named = true,
},
[sym_var_assignment] = {
.visible = true,
.named = true,
},
[sym__prefix_expression] = {
.visible = false,
.named = true,
},
[sym_method_index] = {
.visible = true,
.named = true,
},
[sym_arguments] = {
.visible = true,
.named = true,
},
[sym_function_call] = {
.visible = true,
.named = true,
},
[sym_table_entry] = {
.visible = true,
.named = true,
},
[sym_table_constructor] = {
.visible = true,
.named = true,
},
[sym_function_name] = {
.visible = true,
.named = true,
},
[sym_function_statement] = {
.visible = true,
.named = true,
},
[sym_macroexp_statement] = {
.visible = true,
.named = true,
},
[sym__macroexp_def] = {
.visible = false,
.named = true,
},
[sym_macroexp_body] = {
.visible = true,
.named = true,
},
[sym_variadic_type] = {
.visible = true,
.named = true,
},
[sym_return_type] = {
.visible = true,
.named = true,
},
[sym__partype] = {
.visible = true,
.named = true,
},
[sym__parname] = {
.visible = true,
.named = true,
},
[sym_typearg] = {
.visible = true,
.named = true,
},
[sym_typeargs] = {
.visible = true,
.named = true,
},
[sym_anon_function] = {
.visible = true,
.named = true,
},
[sym__annotated_var_arg] = {
.visible = true,
.named = true,
},
[sym_signature_arguments] = {
.visible = true,
.named = true,
},
[sym_function_signature] = {
.visible = true,
.named = true,
},
[sym_function_body] = {
.visible = true,
.named = true,
},
[sym_record_field] = {
.visible = true,
.named = true,
},
[sym__record_entry] = {
.visible = false,
.named = true,
},
[sym_metamethod_annotation] = {
.visible = true,
.named = true,
},
[sym_record_body] = {
.visible = true,
.named = true,
},
[sym__record_def] = {
.visible = false,
.named = true,
},
[sym__interface_def] = {
.visible = false,
.named = true,
},
[sym_interface_declaration] = {
.visible = true,
.named = true,
},
[sym_record_declaration] = {
.visible = true,
.named = true,
},
[sym_enum_body] = {
.visible = true,
.named = true,
},
[sym__enum_def] = {
.visible = false,
.named = true,
},
[sym_enum_declaration] = {
.visible = true,
.named = true,
},
[sym_anon_interface] = {
.visible = true,
.named = true,
},
[sym_anon_record] = {
.visible = true,
.named = true,
},
[sym__anon_enum] = {
.visible = false,
.named = true,
},
[sym__newtype] = {
.visible = false,
.named = true,
},
[sym_type_annotation] = {
.visible = true,
.named = true,
},
[sym__type] = {
.visible = false,
.named = true,
},
[sym_typearg_params] = {
.visible = true,
.named = true,
},
[sym_type_index] = {
.visible = true,
.named = true,
},
[sym_simple_type] = {
.visible = true,
.named = true,
},
[sym_table_type] = {
.visible = true,
.named = true,
},
[sym_function_type_args] = {
.visible = true,
.named = true,
},
[sym_function_type] = {
.visible = true,
.named = true,
},
[sym_goto] = {
.visible = true,
.named = true,
},
[sym_index] = {
.visible = true,
.named = true,
},
[sym__var] = {
.visible = false,
.named = true,
},
[sym_varargs] = {
.visible = true,
.named = true,
},
[sym_number] = {
.visible = true,
.named = true,
},
[sym_boolean] = {
.visible = true,
.named = true,
},
[sym__short_string_content] = {
.visible = false,
.named = true,
},
[sym__long_string_content] = {
.visible = false,
.named = true,
},
[sym_string] = {
.visible = true,
.named = true,
},
[aux_sym_program_repeat1] = {
.visible = false,
.named = false,
},
[aux_sym_return_statement_repeat1] = {
.visible = false,
.named = false,
},
[aux_sym_if_statement_repeat1] = {
.visible = false,
.named = false,
},
[aux_sym_generic_for_statement_repeat1] = {
.visible = false,
.named = false,
},
[aux_sym_type_tuple_repeat1] = {
.visible = false,
.named = false,
},
[aux_sym_var_declarators_repeat1] = {
.visible = false,
.named = false,
},
[aux_sym_assignment_variables_repeat1] = {
.visible = false,
.named = false,
},
[aux_sym_table_constructor_repeat1] = {
.visible = false,
.named = false,
},
[aux_sym_function_name_repeat1] = {
.visible = false,
.named = false,
},
[aux_sym__partypelist_repeat1] = {
.visible = false,
.named = false,
},
[aux_sym__parnamelist_repeat1] = {
.visible = false,
.named = false,
},
[aux_sym_typeargs_repeat1] = {
.visible = false,
.named = false,
},
[aux_sym_record_body_repeat1] = {
.visible = false,
.named = false,
},
[aux_sym_enum_body_repeat1] = {
.visible = false,
.named = false,
},
[aux_sym_table_type_repeat1] = {
.visible = false,
.named = false,
},
[aux_sym__short_string_content_repeat1] = {
.visible = false,
.named = false,
},
[aux_sym__long_string_content_repeat1] = {
.visible = false,
.named = false,
},
[alias_sym_attribute] = {
.visible = true,
.named = true,
},
[alias_sym_for_body] = {
.visible = true,
.named = true,
},
[alias_sym_interface_body] = {
.visible = true,
.named = true,
},
[alias_sym_label] = {
.visible = true,
.named = true,
},
[alias_sym_macroexp_declaration] = {
.visible = true,
.named = true,
},
[alias_sym_macroexp_signature] = {
.visible = true,
.named = true,
},
[alias_sym_record_array_type] = {
.visible = true,
.named = true,
},
[alias_sym_string_content] = {
.visible = true,
.named = true,
},
[alias_sym_typedef] = {
.visible = true,
.named = true,
},
[alias_sym_userdata] = {
.visible = true,
.named = true,
},
[alias_sym_while_body] = {
.visible = true,
.named = true,
},
};
enum ts_field_identifiers {
field_arguments = 1,
field_attribute = 2,
field_base = 3,
field_body = 4,
field_called_object = 5,
field_condition = 6,
field_constraint = 7,
field_content = 8,
field_declarators = 9,
field_end = 10,
field_entry = 11,
field_enum_body = 12,
field_expr_key = 13,
field_expressions = 14,
field_initializer = 15,
field_initializers = 16,
field_interface_body = 17,
field_is_types = 18,
field_iterator = 19,
field_key = 20,
field_key_type = 21,
field_left = 22,
field_metamethod = 23,
field_method = 24,
field_name = 25,
field_op = 26,
field_optional_marker = 27,
field_record_body = 28,
field_return_type = 29,
field_right = 30,
field_scope = 31,
field_signature = 32,
field_start = 33,
field_step = 34,
field_target = 35,
field_tuple_type = 36,
field_type = 37,
field_type_annotation = 38,
field_typeargs = 39,
field_value = 40,
field_value_type = 41,
field_variable = 42,
field_variables = 43,
field_where = 44,
};
static const char * const ts_field_names[] = {
[0] = NULL,
[field_arguments] = "arguments",
[field_attribute] = "attribute",
[field_base] = "base",
[field_body] = "body",
[field_called_object] = "called_object",
[field_condition] = "condition",
[field_constraint] = "constraint",
[field_content] = "content",
[field_declarators] = "declarators",
[field_end] = "end",
[field_entry] = "entry",
[field_enum_body] = "enum_body",
[field_expr_key] = "expr_key",
[field_expressions] = "expressions",
[field_initializer] = "initializer",
[field_initializers] = "initializers",
[field_interface_body] = "interface_body",
[field_is_types] = "is_types",
[field_iterator] = "iterator",
[field_key] = "key",
[field_key_type] = "key_type",
[field_left] = "left",
[field_metamethod] = "metamethod",
[field_method] = "method",
[field_name] = "name",
[field_op] = "op",
[field_optional_marker] = "optional_marker",
[field_record_body] = "record_body",
[field_return_type] = "return_type",
[field_right] = "right",
[field_scope] = "scope",
[field_signature] = "signature",
[field_start] = "start",
[field_step] = "step",
[field_target] = "target",
[field_tuple_type] = "tuple_type",
[field_type] = "type",
[field_type_annotation] = "type_annotation",
[field_typeargs] = "typeargs",
[field_value] = "value",
[field_value_type] = "value_type",
[field_variable] = "variable",
[field_variables] = "variables",
[field_where] = "where",
};
static const TSMapSlice ts_field_map_slices[PRODUCTION_ID_COUNT] = {
[2] = {.index = 0, .length = 1},
[3] = {.index = 1, .length = 2},
[4] = {.index = 3, .length = 3},
[5] = {.index = 6, .length = 3},
[6] = {.index = 9, .length = 4},
[7] = {.index = 13, .length = 4},
[8] = {.index = 17, .length = 3},
[9] = {.index = 20, .length = 2},
[11] = {.index = 22, .length = 2},
[13] = {.index = 24, .length = 2},
[14] = {.index = 26, .length = 1},
[15] = {.index = 27, .length = 1},
[16] = {.index = 28, .length = 1},
[17] = {.index = 29, .length = 1},
[18] = {.index = 30, .length = 3},
[19] = {.index = 33, .length = 2},
[20] = {.index = 35, .length = 2},
[21] = {.index = 37, .length = 1},
[22] = {.index = 38, .length = 2},
[24] = {.index = 40, .length = 3},
[25] = {.index = 43, .length = 2},
[26] = {.index = 45, .length = 2},
[27] = {.index = 47, .length = 3},
[28] = {.index = 28, .length = 1},
[29] = {.index = 50, .length = 1},
[31] = {.index = 51, .length = 2},
[32] = {.index = 53, .length = 3},
[33] = {.index = 56, .length = 1},
[34] = {.index = 57, .length = 2},
[35] = {.index = 59, .length = 3},
[36] = {.index = 62, .length = 3},
[37] = {.index = 65, .length = 2},
[38] = {.index = 67, .length = 2},
[39] = {.index = 69, .length = 2},
[40] = {.index = 71, .length = 3},
[41] = {.index = 74, .length = 2},
[42] = {.index = 76, .length = 1},
[43] = {.index = 77, .length = 2},
[44] = {.index = 79, .length = 3},
[45] = {.index = 82, .length = 3},
[46] = {.index = 85, .length = 2},
[47] = {.index = 87, .length = 2},
[48] = {.index = 89, .length = 3},
[49] = {.index = 92, .length = 1},
[50] = {.index = 93, .length = 2},
[51] = {.index = 95, .length = 1},
[52] = {.index = 96, .length = 1},
[53] = {.index = 97, .length = 3},
[54] = {.index = 100, .length = 2},
[55] = {.index = 102, .length = 4},
[56] = {.index = 79, .length = 3},
[57] = {.index = 106, .length = 3},
[58] = {.index = 109, .length = 1},
[59] = {.index = 110, .length = 2},
[60] = {.index = 112, .length = 3},
[61] = {.index = 115, .length = 2},
[62] = {.index = 117, .length = 4},
[63] = {.index = 121, .length = 3},
[64] = {.index = 124, .length = 1},
[65] = {.index = 125, .length = 2},
[66] = {.index = 127, .length = 2},
[67] = {.index = 129, .length = 3},
[68] = {.index = 132, .length = 1},
[69] = {.index = 133, .length = 1},
[70] = {.index = 134, .length = 2},
[71] = {.index = 136, .length = 4},
[72] = {.index = 140, .length = 4},
[73] = {.index = 144, .length = 1},
[74] = {.index = 145, .length = 1},
[75] = {.index = 146, .length = 2},
[76] = {.index = 148, .length = 2},
[77] = {.index = 148, .length = 2},
[78] = {.index = 150, .length = 2},
[79] = {.index = 152, .length = 4},
[80] = {.index = 156, .length = 3},
[81] = {.index = 159, .length = 4},
[82] = {.index = 163, .length = 1},
[83] = {.index = 164, .length = 2},
[84] = {.index = 166, .length = 2},
[85] = {.index = 168, .length = 2},
[86] = {.index = 170, .length = 2},
[87] = {.index = 172, .length = 4},
[88] = {.index = 176, .length = 5},
[89] = {.index = 181, .length = 1},
[90] = {.index = 182, .length = 1},
[91] = {.index = 183, .length = 3},
[92] = {.index = 186, .length = 3},
[94] = {.index = 189, .length = 2},
[95] = {.index = 191, .length = 4},
[96] = {.index = 195, .length = 2},
[97] = {.index = 197, .length = 3},
[98] = {.index = 200, .length = 4},
[99] = {.index = 204, .length = 4},
[100] = {.index = 208, .length = 2},
[101] = {.index = 210, .length = 1},
[102] = {.index = 211, .length = 3},
[103] = {.index = 214, .length = 5},
[104] = {.index = 146, .length = 2},
[105] = {.index = 219, .length = 5},
[106] = {.index = 224, .length = 5},
[107] = {.index = 229, .length = 3},
[108] = {.index = 232, .length = 3},
[109] = {.index = 183, .length = 3},
[110] = {.index = 235, .length = 6},
[111] = {.index = 200, .length = 4},
[112] = {.index = 241, .length = 4},
[113] = {.index = 245, .length = 5},
[114] = {.index = 224, .length = 5},
[115] = {.index = 250, .length = 6},
};
static const TSFieldMapEntry ts_field_map_entries[] = {
[0] =
{field_name, 0},
[1] =
{field_declarators, 1},
{field_scope, 0},
[3] =
{field_name, 1, .inherited = true},
{field_scope, 0},
{field_value, 1, .inherited = true},
[6] =
{field_body, 1, .inherited = true},
{field_name, 1, .inherited = true},
{field_signature, 1, .inherited = true},
[9] =
{field_name, 1, .inherited = true},
{field_record_body, 1, .inherited = true},
{field_scope, 0},
{field_typeargs, 1, .inherited = true},
[13] =
{field_interface_body, 1, .inherited = true},
{field_name, 1, .inherited = true},
{field_scope, 0},
{field_typeargs, 1, .inherited = true},
[17] =
{field_enum_body, 1, .inherited = true},
{field_name, 1, .inherited = true},
{field_scope, 0},
[20] =
{field_arguments, 1},
{field_called_object, 0},
[22] =
{field_end, 1},
{field_start, 0},
[24] =
{field_op, 0},
{field_right, 1},
[26] =
{field_value, 0},
[27] =
{field_arguments, 0},
[28] =
{field_condition, 1},
[29] =
{field_condition, 2},
[30] =
{field_declarators, 1},
{field_scope, 0},
{field_type_annotation, 2},
[33] =
{field_base, 0},
{field_entry, 1, .inherited = true},
[35] =
{field_expressions, 2},
{field_variables, 0},
[37] =
{field_key, 2},
[38] =
{field_key, 1},
{field_key, 2},
[40] =
{field_content, 1},
{field_end, 2},
{field_start, 0},
[43] =
{field_arguments, 1},
{field_typeargs, 0},
[45] =
{field_body, 2},
{field_signature, 1},
[47] =
{field_left, 0},
{field_op, 1},
{field_right, 2},
[50] =
{field_condition, 3},
[51] =
{field_name, 0, .inherited = true},
{field_value, 0, .inherited = true},
[53] =
{field_body, 0, .inherited = true},
{field_name, 0, .inherited = true},
{field_signature, 0, .inherited = true},
[56] =
{field_metamethod, 0},
[57] =
{field_name, 1},
{field_record_body, 2},
[59] =
{field_name, 0, .inherited = true},
{field_record_body, 0, .inherited = true},
{field_typeargs, 0, .inherited = true},
[62] =
{field_interface_body, 0, .inherited = true},
{field_name, 0, .inherited = true},
{field_typeargs, 0, .inherited = true},
[65] =
{field_enum_body, 0, .inherited = true},
{field_name, 0, .inherited = true},
[67] =
{field_interface_body, 2},
{field_name, 1},
[69] =
{field_enum_body, 2},
{field_name, 1},
[71] =
{field_declarators, 1},
{field_initializers, 3},
{field_scope, 0},
[74] =
{field_base, 0},
{field_method, 2},
[76] =
{field_entry, 1},
[77] =
{field_entry, 0, .inherited = true},
{field_entry, 1, .inherited = true},
[79] =
{field_body, 3},
{field_name, 1},
{field_signature, 2},
[82] =
{field_expr_key, 1},
{field_expr_key, 2},
{field_expr_key, 3},
[85] =
{field_key, 0},
{field_value, 2},
[87] =
{field_name, 0},
{field_optional_marker, 1},
[89] =
{field_name, 1, .inherited = true},
{field_optional_marker, 1, .inherited = true},
{field_type, 1, .inherited = true},
[92] =
{field_type, 1, .inherited = true},
[93] =
{field_arguments, 0},
{field_return_type, 2},
[95] =
{field_typeargs, 1},
[96] =
{field_arguments, 1},
[97] =
{field_body, 4},
{field_iterator, 3},
{field_variable, 1},
[100] =
{field_name, 1},
{field_value, 3},
[102] =
{field_body, 4},
{field_name, 2},
{field_scope, 0},
{field_signature, 3},
[106] =
{field_name, 1},
{field_record_body, 3},
{field_typeargs, 2},
[109] =
{field_metamethod, 0, .inherited = true},
[110] =
{field_metamethod, 0, .inherited = true},
{field_metamethod, 1, .inherited = true},
[112] =
{field_interface_body, 3},
{field_name, 1},
{field_typeargs, 2},
[115] =
{field_attribute, 2},
{field_name, 0},
[117] =
{field_declarators, 1},
{field_initializers, 4},
{field_scope, 0},
{field_type_annotation, 2},
[121] =
{field_base, 0},
{field_entry, 1, .inherited = true},
{field_method, 3},
[124] =
{field_type, 2},
[125] =
{field_name, 0},
{field_type, 2},
[127] =
{field_constraint, 2},
{field_name, 0},
[129] =
{field_arguments, 1},
{field_return_type, 3},
{field_typeargs, 0},
[132] =
{field_value_type, 1},
[133] =
{field_type, 0},
[134] =
{field_arguments, 2},
{field_typeargs, 1},
[136] =
{field_body, 5},
{field_iterator, 3},
{field_iterator, 4},
{field_variable, 1},
[140] =
{field_body, 5},
{field_iterator, 4},
{field_variable, 1},
{field_variable, 2},
[144] =
{field_record_body, 1},
[145] =
{field_interface_body, 1},
[146] =
{field_is_types, 0},
{field_is_types, 1},
[148] =
{field_key, 0},
{field_type, 2},
[150] =
{field_expr_key, 1},
{field_value, 4},
[152] =
{field_key, 0},
{field_type, 1},
{field_type, 2},
{field_value, 4},
[156] =
{field_name, 0},
{field_optional_marker, 1},
{field_type, 3},
[159] =
{field_name, 1, .inherited = true},
{field_optional_marker, 1, .inherited = true},
{field_type, 1, .inherited = true},
{field_type, 3, .inherited = true},
[163] =
{field_tuple_type, 1},
[164] =
{field_tuple_type, 1},
{field_tuple_type, 2, .inherited = true},
[166] =
{field_tuple_type, 0, .inherited = true},
{field_tuple_type, 1, .inherited = true},
[168] =
{field_name, 1, .inherited = true},
{field_type, 1, .inherited = true},
[170] =
{field_arguments, 1},
{field_return_type, 3},
[172] =
{field_body, 6},
{field_initializer, 3},
{field_target, 5},
{field_variable, 1},
[176] =
{field_body, 6},
{field_iterator, 4},
{field_iterator, 5},
{field_variable, 1},
{field_variable, 2},
[181] =
{field_record_body, 2},
[182] =
{field_interface_body, 2},
[183] =
{field_is_types, 0},
{field_is_types, 1},
{field_is_types, 2},
[186] =
{field_is_types, 0},
{field_is_types, 1},
{field_metamethod, 2, .inherited = true},
[189] =
{field_name, 1},
{field_type, 3},
[191] =
{field_name, 1, .inherited = true},
{field_optional_marker, 1, .inherited = true},
{field_type, 1, .inherited = true},
{field_type, 4, .inherited = true},
[195] =
{field_key_type, 1},
{field_value_type, 3},
[197] =
{field_arguments, 2},
{field_return_type, 4},
{field_typeargs, 1},
[200] =
{field_is_types, 0},
{field_is_types, 1},
{field_where, 2},
{field_where, 3},
[204] =
{field_is_types, 0},
{field_is_types, 1},
{field_is_types, 2},
{field_metamethod, 3, .inherited = true},
[208] =
{field_key, 1},
{field_type, 4},
[210] =
{field_metamethod, 3, .inherited = true},
[211] =
{field_name, 1, .inherited = true},
{field_type, 1, .inherited = true},
{field_type, 3, .inherited = true},
[214] =
{field_body, 8},
{field_initializer, 3},
{field_step, 7},
{field_target, 5},
{field_variable, 1},
[219] =
{field_is_types, 0},
{field_is_types, 1},
{field_metamethod, 4, .inherited = true},
{field_where, 2},
{field_where, 3},
[224] =
{field_is_types, 0},
{field_is_types, 1},
{field_is_types, 2},
{field_where, 3},
{field_where, 4},
[229] =
{field_name, 1, .inherited = true},
{field_type, 1, .inherited = true},
{field_type, 4, .inherited = true},
[232] =
{field_is_types, 0},
{field_is_types, 1},
{field_metamethod, 5, .inherited = true},
[235] =
{field_is_types, 0},
{field_is_types, 1},
{field_is_types, 2},
{field_metamethod, 5, .inherited = true},
{field_where, 3},
{field_where, 4},
[241] =
{field_is_types, 0},
{field_is_types, 1},
{field_is_types, 2},
{field_metamethod, 6, .inherited = true},
[245] =
{field_is_types, 0},
{field_is_types, 1},
{field_metamethod, 7, .inherited = true},
{field_where, 2},
{field_where, 3},
[250] =
{field_is_types, 0},
{field_is_types, 1},
{field_is_types, 2},
{field_metamethod, 8, .inherited = true},
{field_where, 3},
{field_where, 4},
};
static const TSSymbol ts_alias_sequences[PRODUCTION_ID_COUNT][MAX_ALIAS_SEQUENCE_LENGTH] = {
[0] = {0},
[1] = {
[0] = sym_var_declarator,
},
[10] = {
[1] = alias_sym_label,
},
[12] = {
[0] = alias_sym_string_content,
},
[16] = {
[2] = alias_sym_while_body,
},
[23] = {
[1] = sym_var_declarator,
},
[27] = {
[1] = anon_sym_not,
},
[30] = {
[0] = alias_sym_userdata,
},
[31] = {
[0] = alias_sym_typedef,
},
[32] = {
[0] = alias_sym_macroexp_declaration,
},
[35] = {
[0] = sym_record_declaration,
},
[36] = {
[0] = sym_interface_declaration,
},
[37] = {
[0] = sym_enum_declaration,
},
[38] = {
[2] = alias_sym_interface_body,
},
[53] = {
[4] = alias_sym_for_body,
},
[56] = {
[2] = alias_sym_macroexp_signature,
},
[60] = {
[3] = alias_sym_interface_body,
},
[61] = {
[2] = alias_sym_attribute,
},
[71] = {
[5] = alias_sym_for_body,
},
[72] = {
[5] = alias_sym_for_body,
},
[74] = {
[1] = alias_sym_interface_body,
},
[76] = {
[0] = sym_identifier,
},
[87] = {
[6] = alias_sym_for_body,
},
[88] = {
[6] = alias_sym_for_body,
},
[90] = {
[2] = alias_sym_interface_body,
},
[93] = {
[1] = alias_sym_record_array_type,
},
[101] = {
[1] = alias_sym_record_array_type,
},
[103] = {
[8] = alias_sym_for_body,
},
[104] = {
[3] = alias_sym_record_array_type,
},
[108] = {
[3] = alias_sym_record_array_type,
},
[109] = {
[4] = alias_sym_record_array_type,
},
[111] = {
[5] = alias_sym_record_array_type,
},
[112] = {
[4] = alias_sym_record_array_type,
},
[113] = {
[5] = alias_sym_record_array_type,
},
[114] = {
[6] = alias_sym_record_array_type,
},
[115] = {
[6] = alias_sym_record_array_type,
},
};
static const uint16_t ts_non_terminal_alias_map[] = {
sym_do_statement, 3,
sym_do_statement,
alias_sym_for_body,
alias_sym_while_body,
sym__type_def, 2,
sym__type_def,
alias_sym_typedef,
sym__macroexp_def, 2,
sym__macroexp_def,
alias_sym_macroexp_declaration,
sym_function_signature, 2,
sym_function_signature,
alias_sym_macroexp_signature,
sym_record_body, 2,
sym_record_body,
alias_sym_interface_body,
sym__record_def, 2,
sym__record_def,
sym_record_declaration,
sym__interface_def, 2,
sym__interface_def,
sym_interface_declaration,
sym__enum_def, 2,
sym__enum_def,
sym_enum_declaration,
sym__type, 2,
sym__type,
alias_sym_record_array_type,
sym__var, 2,
sym__var,
sym_var_declarator,
aux_sym__short_string_content_repeat1, 2,
aux_sym__short_string_content_repeat1,
alias_sym_string_content,
aux_sym__long_string_content_repeat1, 2,
aux_sym__long_string_content_repeat1,
alias_sym_string_content,
0,
};
static const TSStateId ts_primary_state_ids[STATE_COUNT] = {
[0] = 0,
[1] = 1,
[2] = 2,
[3] = 3,
[4] = 4,
[5] = 5,
[6] = 6,
[7] = 7,
[8] = 8,
[9] = 9,
[10] = 10,
[11] = 11,
[12] = 12,
[13] = 13,
[14] = 14,
[15] = 15,
[16] = 16,
[17] = 17,
[18] = 18,
[19] = 19,
[20] = 20,
[21] = 21,
[22] = 22,
[23] = 23,
[24] = 24,
[25] = 25,
[26] = 6,
[27] = 27,
[28] = 28,
[29] = 29,
[30] = 30,
[31] = 31,
[32] = 32,
[33] = 33,
[34] = 34,
[35] = 35,
[36] = 36,
[37] = 37,
[38] = 38,
[39] = 39,
[40] = 40,
[41] = 41,
[42] = 42,
[43] = 43,
[44] = 44,
[45] = 45,
[46] = 46,
[47] = 47,
[48] = 48,
[49] = 4,
[50] = 50,
[51] = 51,
[52] = 52,
[53] = 10,
[54] = 54,
[55] = 55,
[56] = 44,
[57] = 57,
[58] = 58,
[59] = 59,
[60] = 27,
[61] = 28,
[62] = 16,
[63] = 8,
[64] = 35,
[65] = 18,
[66] = 39,
[67] = 41,
[68] = 58,
[69] = 69,
[70] = 48,
[71] = 36,
[72] = 52,
[73] = 30,
[74] = 45,
[75] = 47,
[76] = 31,
[77] = 37,
[78] = 42,
[79] = 43,
[80] = 57,
[81] = 46,
[82] = 82,
[83] = 50,
[84] = 84,
[85] = 51,
[86] = 29,
[87] = 54,
[88] = 32,
[89] = 33,
[90] = 34,
[91] = 55,
[92] = 59,
[93] = 38,
[94] = 40,
[95] = 69,
[96] = 58,
[97] = 84,
[98] = 24,
[99] = 99,
[100] = 21,
[101] = 23,
[102] = 22,
[103] = 103,
[104] = 104,
[105] = 19,
[106] = 106,
[107] = 107,
[108] = 108,
[109] = 109,
[110] = 110,
[111] = 111,
[112] = 20,
[113] = 69,
[114] = 48,
[115] = 82,
[116] = 57,
[117] = 55,
[118] = 54,
[119] = 119,
[120] = 120,
[121] = 121,
[122] = 122,
[123] = 123,
[124] = 124,
[125] = 125,
[126] = 126,
[127] = 127,
[128] = 128,
[129] = 129,
[130] = 130,
[131] = 131,
[132] = 132,
[133] = 133,
[134] = 134,
[135] = 135,
[136] = 128,
[137] = 129,
[138] = 130,
[139] = 139,
[140] = 131,
[141] = 132,
[142] = 120,
[143] = 124,
[144] = 122,
[145] = 121,
[146] = 119,
[147] = 123,
[148] = 125,
[149] = 126,
[150] = 127,
[151] = 151,
[152] = 152,
[153] = 153,
[154] = 154,
[155] = 155,
[156] = 156,
[157] = 157,
[158] = 158,
[159] = 159,
[160] = 160,
[161] = 161,
[162] = 162,
[163] = 163,
[164] = 164,
[165] = 165,
[166] = 166,
[167] = 167,
[168] = 168,
[169] = 169,
[170] = 4,
[171] = 6,
[172] = 172,
[173] = 173,
[174] = 174,
[175] = 175,
[176] = 48,
[177] = 10,
[178] = 18,
[179] = 48,
[180] = 16,
[181] = 8,
[182] = 44,
[183] = 38,
[184] = 47,
[185] = 58,
[186] = 31,
[187] = 37,
[188] = 42,
[189] = 43,
[190] = 40,
[191] = 52,
[192] = 69,
[193] = 193,
[194] = 46,
[195] = 58,
[196] = 193,
[197] = 50,
[198] = 41,
[199] = 30,
[200] = 45,
[201] = 51,
[202] = 27,
[203] = 28,
[204] = 29,
[205] = 32,
[206] = 33,
[207] = 34,
[208] = 35,
[209] = 36,
[210] = 54,
[211] = 59,
[212] = 39,
[213] = 55,
[214] = 54,
[215] = 84,
[216] = 69,
[217] = 82,
[218] = 59,
[219] = 84,
[220] = 57,
[221] = 221,
[222] = 221,
[223] = 223,
[224] = 57,
[225] = 82,
[226] = 55,
[227] = 223,
[228] = 48,
[229] = 229,
[230] = 58,
[231] = 231,
[232] = 134,
[233] = 233,
[234] = 234,
[235] = 235,
[236] = 69,
[237] = 237,
[238] = 238,
[239] = 239,
[240] = 240,
[241] = 241,
[242] = 242,
[243] = 243,
[244] = 244,
[245] = 245,
[246] = 246,
[247] = 247,
[248] = 248,
[249] = 249,
[250] = 250,
[251] = 251,
[252] = 252,
[253] = 253,
[254] = 254,
[255] = 255,
[256] = 256,
[257] = 257,
[258] = 258,
[259] = 239,
[260] = 260,
[261] = 261,
[262] = 262,
[263] = 263,
[264] = 264,
[265] = 265,
[266] = 266,
[267] = 267,
[268] = 258,
[269] = 266,
[270] = 55,
[271] = 57,
[272] = 272,
[273] = 54,
[274] = 274,
[275] = 248,
[276] = 250,
[277] = 251,
[278] = 252,
[279] = 253,
[280] = 254,
[281] = 255,
[282] = 256,
[283] = 257,
[284] = 284,
[285] = 284,
[286] = 133,
[287] = 287,
[288] = 288,
[289] = 289,
[290] = 290,
[291] = 291,
[292] = 292,
[293] = 293,
[294] = 294,
[295] = 295,
[296] = 296,
[297] = 297,
[298] = 298,
[299] = 299,
[300] = 300,
[301] = 301,
[302] = 302,
[303] = 303,
[304] = 304,
[305] = 305,
[306] = 306,
[307] = 307,
[308] = 308,
[309] = 309,
[310] = 310,
[311] = 311,
[312] = 312,
[313] = 313,
[314] = 314,
[315] = 315,
[316] = 316,
[317] = 317,
[318] = 318,
[319] = 319,
[320] = 320,
[321] = 321,
[322] = 322,
[323] = 323,
[324] = 324,
[325] = 325,
[326] = 326,
[327] = 327,
[328] = 328,
[329] = 329,
[330] = 330,
[331] = 331,
[332] = 332,
[333] = 328,
[334] = 334,
[335] = 335,
[336] = 336,
[337] = 337,
[338] = 338,
[339] = 339,
[340] = 340,
[341] = 341,
[342] = 342,
[343] = 343,
[344] = 344,
[345] = 345,
[346] = 346,
[347] = 347,
[348] = 348,
[349] = 349,
[350] = 350,
[351] = 351,
[352] = 352,
[353] = 353,
[354] = 354,
[355] = 355,
[356] = 356,
[357] = 357,
[358] = 358,
[359] = 359,
[360] = 360,
[361] = 361,
[362] = 362,
[363] = 363,
[364] = 364,
[365] = 365,
[366] = 366,
[367] = 367,
[368] = 368,
[369] = 369,
[370] = 370,
[371] = 371,
[372] = 372,
[373] = 373,
[374] = 374,
[375] = 375,
[376] = 376,
[377] = 377,
[378] = 378,
[379] = 379,
[380] = 380,
[381] = 381,
[382] = 382,
[383] = 383,
[384] = 384,
[385] = 385,
[386] = 386,
[387] = 387,
[388] = 388,
[389] = 389,
[390] = 390,
[391] = 391,
[392] = 392,
[393] = 393,
[394] = 394,
[395] = 395,
[396] = 396,
[397] = 397,
[398] = 398,
[399] = 399,
[400] = 400,
[401] = 401,
[402] = 402,
[403] = 403,
[404] = 404,
[405] = 405,
[406] = 406,
[407] = 407,
[408] = 408,
[409] = 409,
[410] = 410,
[411] = 411,
[412] = 412,
[413] = 413,
[414] = 414,
[415] = 415,
[416] = 416,
[417] = 417,
[418] = 418,
[419] = 419,
[420] = 420,
[421] = 421,
[422] = 422,
[423] = 423,
[424] = 424,
[425] = 425,
[426] = 426,
[427] = 427,
[428] = 427,
[429] = 427,
[430] = 430,
[431] = 431,
[432] = 431,
[433] = 431,
[434] = 430,
[435] = 430,
[436] = 436,
[437] = 437,
[438] = 438,
[439] = 439,
[440] = 440,
[441] = 440,
[442] = 436,
[443] = 440,
[444] = 436,
[445] = 440,
[446] = 440,
[447] = 436,
[448] = 440,
[449] = 436,
[450] = 440,
[451] = 436,
[452] = 436,
[453] = 453,
[454] = 454,
[455] = 455,
[456] = 456,
[457] = 457,
[458] = 458,
[459] = 459,
[460] = 456,
[461] = 461,
[462] = 462,
[463] = 463,
[464] = 456,
[465] = 461,
[466] = 456,
[467] = 461,
[468] = 468,
[469] = 453,
[470] = 468,
[471] = 468,
[472] = 453,
[473] = 461,
[474] = 455,
[475] = 456,
[476] = 461,
[477] = 477,
[478] = 478,
[479] = 479,
[480] = 480,
[481] = 481,
[482] = 482,
[483] = 483,
[484] = 484,
[485] = 485,
[486] = 486,
[487] = 487,
[488] = 488,
[489] = 489,
[490] = 490,
[491] = 491,
[492] = 492,
[493] = 493,
[494] = 494,
[495] = 495,
[496] = 496,
[497] = 497,
[498] = 498,
[499] = 495,
[500] = 500,
[501] = 494,
[502] = 498,
[503] = 503,
[504] = 479,
[505] = 489,
[506] = 500,
[507] = 507,
[508] = 495,
[509] = 500,
[510] = 498,
[511] = 479,
[512] = 512,
[513] = 513,
[514] = 514,
[515] = 515,
[516] = 494,
[517] = 486,
[518] = 489,
[519] = 519,
[520] = 520,
[521] = 494,
[522] = 486,
[523] = 523,
[524] = 486,
[525] = 484,
[526] = 526,
[527] = 486,
[528] = 489,
[529] = 486,
[530] = 530,
[531] = 531,
[532] = 489,
[533] = 486,
[534] = 534,
[535] = 48,
[536] = 536,
[537] = 537,
[538] = 538,
[539] = 539,
[540] = 538,
[541] = 541,
[542] = 542,
[543] = 543,
[544] = 544,
[545] = 545,
[546] = 544,
[547] = 54,
[548] = 548,
[549] = 549,
[550] = 57,
[551] = 551,
[552] = 55,
[553] = 553,
[554] = 554,
[555] = 555,
[556] = 556,
[557] = 557,
[558] = 558,
[559] = 559,
[560] = 558,
[561] = 59,
[562] = 562,
[563] = 563,
[564] = 564,
[565] = 69,
[566] = 566,
[567] = 558,
[568] = 568,
[569] = 569,
[570] = 58,
[571] = 571,
[572] = 572,
[573] = 573,
[574] = 574,
[575] = 575,
[576] = 576,
[577] = 577,
[578] = 576,
[579] = 574,
[580] = 82,
[581] = 15,
[582] = 582,
[583] = 575,
[584] = 584,
[585] = 585,
[586] = 586,
[587] = 575,
[588] = 588,
[589] = 575,
[590] = 590,
[591] = 591,
[592] = 592,
[593] = 576,
[594] = 84,
[595] = 572,
[596] = 596,
[597] = 597,
[598] = 598,
[599] = 599,
[600] = 600,
[601] = 601,
[602] = 602,
[603] = 603,
[604] = 601,
[605] = 605,
[606] = 606,
[607] = 598,
[608] = 600,
[609] = 602,
[610] = 610,
[611] = 611,
[612] = 612,
[613] = 613,
[614] = 614,
[615] = 615,
[616] = 603,
[617] = 606,
[618] = 618,
[619] = 619,
[620] = 620,
[621] = 621,
[622] = 622,
[623] = 601,
[624] = 624,
[625] = 625,
[626] = 600,
[627] = 605,
[628] = 603,
[629] = 629,
[630] = 606,
[631] = 602,
[632] = 632,
[633] = 633,
[634] = 634,
[635] = 635,
[636] = 636,
[637] = 637,
[638] = 638,
[639] = 639,
[640] = 640,
[641] = 605,
[642] = 598,
[643] = 643,
[644] = 644,
[645] = 645,
[646] = 646,
[647] = 647,
[648] = 648,
[649] = 649,
[650] = 650,
[651] = 651,
[652] = 645,
[653] = 653,
[654] = 646,
[655] = 655,
[656] = 656,
[657] = 643,
[658] = 658,
[659] = 659,
[660] = 660,
[661] = 661,
[662] = 662,
[663] = 643,
[664] = 646,
[665] = 665,
[666] = 666,
[667] = 667,
[668] = 668,
[669] = 669,
[670] = 670,
[671] = 671,
[672] = 672,
[673] = 673,
[674] = 645,
[675] = 675,
[676] = 676,
[677] = 677,
[678] = 678,
[679] = 679,
[680] = 679,
[681] = 681,
[682] = 682,
[683] = 683,
[684] = 684,
[685] = 685,
[686] = 686,
[687] = 687,
[688] = 688,
[689] = 689,
[690] = 690,
[691] = 691,
[692] = 692,
[693] = 693,
[694] = 694,
[695] = 688,
[696] = 696,
[697] = 675,
[698] = 679,
[699] = 699,
[700] = 693,
[701] = 701,
[702] = 675,
[703] = 703,
[704] = 704,
[705] = 705,
[706] = 706,
[707] = 707,
[708] = 708,
[709] = 709,
[710] = 710,
[711] = 711,
[712] = 712,
[713] = 692,
[714] = 685,
[715] = 715,
[716] = 683,
[717] = 717,
[718] = 718,
[719] = 691,
[720] = 692,
[721] = 721,
[722] = 722,
[723] = 723,
[724] = 724,
[725] = 685,
[726] = 726,
[727] = 683,
[728] = 693,
[729] = 729,
[730] = 730,
[731] = 726,
[732] = 732,
};
static const TSCharacterRange sym_format_specifier_character_set_1[] = {
{' ', ' '}, {'#', '#'}, {'%', '%'}, {'+', '+'}, {'-', '.'}, {'0', '9'}, {'A', 'A'}, {'E', 'E'},
{'G', 'G'}, {'X', 'X'}, {'a', 'a'}, {'c', 'g'}, {'i', 'i'}, {'o', 'q'}, {'s', 's'}, {'u', 'u'},
{'x', 'x'},
};
static const TSCharacterRange sym_format_specifier_character_set_4[] = {
{'0', '9'}, {'A', 'A'}, {'E', 'E'}, {'G', 'G'}, {'X', 'X'}, {'a', 'a'}, {'c', 'g'}, {'i', 'i'},
{'o', 'q'}, {'s', 's'}, {'u', 'u'}, {'x', 'x'},
};
static const TSCharacterRange sym_format_specifier_character_set_5[] = {
{' ', ' '}, {'#', '#'}, {'.', '.'}, {'0', '9'}, {'A', 'A'}, {'E', 'E'}, {'G', 'G'}, {'X', 'X'},
{'a', 'a'}, {'c', 'g'}, {'i', 'i'}, {'o', 'q'}, {'s', 's'}, {'u', 'u'}, {'x', 'x'},
};
static bool ts_lex(TSLexer *lexer, TSStateId state) {
START_LEXER();
eof = lexer->eof(lexer);
switch (state) {
case 0:
if (eof) ADVANCE(37);
ADVANCE_MAP(
'#', 47,
'%', 92,
'&', 60,
'(', 42,
')', 43,
'*', 64,
'+', 63,
',', 41,
'-', 48,
'.', 77,
'/', 65,
'0', 83,
':', 71,
';', 40,
'<', 52,
'=', 45,
'>', 58,
'?', 81,
'[', 72,
'\\', 7,
']', 73,
'^', 70,
'{', 74,
'|', 59,
'}', 75,
'~', 50,
);
if (('\t' <= lookahead && lookahead <= '\r') ||
lookahead == ' ') SKIP(30);
if (('1' <= lookahead && lookahead <= '9')) ADVANCE(84);
if (('A' <= lookahead && lookahead <= '_') ||
('a' <= lookahead && lookahead <= 'z')) ADVANCE(82);
END_STATE();
case 1:
if (lookahead == ' ') ADVANCE(3);
if (lookahead == '#') ADVANCE(5);
if (lookahead == '.') ADVANCE(24);
if (('0' <= lookahead && lookahead <= '9')) ADVANCE(5);
if (set_contains(sym_format_specifier_character_set_5, 15, lookahead)) ADVANCE(94);
END_STATE();
case 2:
if (lookahead == '!') ADVANCE(38);
END_STATE();
case 3:
if (lookahead == '#') ADVANCE(5);
if (lookahead == '.') ADVANCE(24);
if (('0' <= lookahead && lookahead <= '9')) ADVANCE(5);
if (set_contains(sym_format_specifier_character_set_4, 12, lookahead)) ADVANCE(94);
END_STATE();
case 4:
if (lookahead == '.') ADVANCE(80);
END_STATE();
case 5:
if (lookahead == '.') ADVANCE(24);
if (('0' <= lookahead && lookahead <= '9')) ADVANCE(5);
if (set_contains(sym_format_specifier_character_set_4, 12, lookahead)) ADVANCE(94);
END_STATE();
case 6:
if (lookahead == '.') ADVANCE(4);
if (('0' <= lookahead && lookahead <= '9')) ADVANCE(87);
END_STATE();
case 7:
ADVANCE_MAP(
'd', 19,
'u', 8,
'x', 29,
'"', 95,
'\'', 95,
'\\', 95,
'a', 95,
'b', 95,
'f', 95,
'n', 95,
'r', 95,
't', 95,
'v', 95,
'z', 95,
);
END_STATE();
case 8:
if (lookahead == '{') ADVANCE(27);
END_STATE();
case 9:
if (lookahead == '}') ADVANCE(95);
END_STATE();
case 10:
if (lookahead == '}') ADVANCE(95);
if (('0' <= lookahead && lookahead <= '9') ||
('A' <= lookahead && lookahead <= 'F') ||
('a' <= lookahead && lookahead <= 'f')) ADVANCE(9);
END_STATE();
case 11:
if (lookahead == '}') ADVANCE(95);
if (('0' <= lookahead && lookahead <= '9') ||
('A' <= lookahead && lookahead <= 'F') ||
('a' <= lookahead && lookahead <= 'f')) ADVANCE(10);
END_STATE();
case 12:
if (lookahead == '}') ADVANCE(95);
if (('0' <= lookahead && lookahead <= '9') ||
('A' <= lookahead && lookahead <= 'F') ||
('a' <= lookahead && lookahead <= 'f')) ADVANCE(11);
END_STATE();
case 13:
if (lookahead == '}') ADVANCE(95);
if (('0' <= lookahead && lookahead <= '9') ||
('A' <= lookahead && lookahead <= 'F') ||
('a' <= lookahead && lookahead <= 'f')) ADVANCE(12);
END_STATE();
case 14:
if (lookahead == '}') ADVANCE(95);
if (('0' <= lookahead && lookahead <= '9') ||
('A' <= lookahead && lookahead <= 'F') ||
('a' <= lookahead && lookahead <= 'f')) ADVANCE(13);
END_STATE();
case 15:
if (lookahead == '}') ADVANCE(95);
if (('0' <= lookahead && lookahead <= '9') ||
('A' <= lookahead && lookahead <= 'F') ||
('a' <= lookahead && lookahead <= 'f')) ADVANCE(14);
END_STATE();
case 16:
if (lookahead == '}') ADVANCE(95);
if (('0' <= lookahead && lookahead <= '9') ||
('A' <= lookahead && lookahead <= 'F') ||
('a' <= lookahead && lookahead <= 'f')) ADVANCE(15);
END_STATE();
case 17:
if (('0' <= lookahead && lookahead <= '7')) ADVANCE(95);
END_STATE();
case 18:
if (('0' <= lookahead && lookahead <= '7')) ADVANCE(17);
END_STATE();
case 19:
if (('0' <= lookahead && lookahead <= '7')) ADVANCE(18);
END_STATE();
case 20:
if (('0' <= lookahead && lookahead <= '9')) ADVANCE(85);
END_STATE();
case 21:
if (('0' <= lookahead && lookahead <= '9')) ADVANCE(86);
END_STATE();
case 22:
if (('0' <= lookahead && lookahead <= '9')) ADVANCE(88);
END_STATE();
case 23:
if (('0' <= lookahead && lookahead <= '9')) ADVANCE(91);
END_STATE();
case 24:
if (('0' <= lookahead && lookahead <= '9')) ADVANCE(24);
if (set_contains(sym_format_specifier_character_set_4, 12, lookahead)) ADVANCE(94);
END_STATE();
case 25:
if (('0' <= lookahead && lookahead <= '9') ||
('A' <= lookahead && lookahead <= 'F') ||
('a' <= lookahead && lookahead <= 'f')) ADVANCE(95);
END_STATE();
case 26:
if (('0' <= lookahead && lookahead <= '9') ||
('A' <= lookahead && lookahead <= 'F') ||
('a' <= lookahead && lookahead <= 'f')) ADVANCE(89);
END_STATE();
case 27:
if (('0' <= lookahead && lookahead <= '9') ||
('A' <= lookahead && lookahead <= 'F') ||
('a' <= lookahead && lookahead <= 'f')) ADVANCE(16);
END_STATE();
case 28:
if (('0' <= lookahead && lookahead <= '9') ||
('A' <= lookahead && lookahead <= 'F') ||
('a' <= lookahead && lookahead <= 'f')) ADVANCE(90);
END_STATE();
case 29:
if (('0' <= lookahead && lookahead <= '9') ||
('A' <= lookahead && lookahead <= 'F') ||
('a' <= lookahead && lookahead <= 'f')) ADVANCE(25);
END_STATE();
case 30:
if (eof) ADVANCE(37);
ADVANCE_MAP(
'#', 46,
'%', 67,
'&', 60,
'(', 42,
')', 43,
'*', 64,
'+', 63,
',', 41,
'-', 48,
'.', 77,
'/', 65,
'0', 83,
':', 71,
';', 40,
'<', 52,
'=', 45,
'>', 58,
'?', 81,
'[', 72,
']', 73,
'^', 70,
'{', 74,
'|', 59,
'}', 75,
'~', 50,
);
if (('\t' <= lookahead && lookahead <= '\r') ||
lookahead == ' ') SKIP(30);
if (('1' <= lookahead && lookahead <= '9')) ADVANCE(84);
if (('A' <= lookahead && lookahead <= 'Z') ||
lookahead == '_' ||
('a' <= lookahead && lookahead <= 'z')) ADVANCE(82);
END_STATE();
case 31:
if (eof) ADVANCE(37);
ADVANCE_MAP(
'#', 46,
'%', 93,
'(', 42,
')', 43,
',', 41,
'-', 48,
'.', 6,
'0', 83,
':', 71,
';', 40,
'<', 51,
'=', 44,
'>', 57,
'[', 72,
'\\', 7,
'{', 74,
'|', 59,
'}', 75,
'~', 49,
);
if (('\t' <= lookahead && lookahead <= '\r') ||
lookahead == ' ') SKIP(32);
if (('1' <= lookahead && lookahead <= '9')) ADVANCE(84);
if (('A' <= lookahead && lookahead <= 'Z') ||
lookahead == '_' ||
('a' <= lookahead && lookahead <= 'z')) ADVANCE(82);
END_STATE();
case 32:
if (eof) ADVANCE(37);
ADVANCE_MAP(
'#', 46,
'(', 42,
')', 43,
',', 41,
'-', 48,
'.', 6,
'0', 83,
':', 71,
';', 40,
'<', 51,
'=', 44,
'>', 57,
'[', 72,
'{', 74,
'|', 59,
'}', 75,
'~', 49,
);
if (('\t' <= lookahead && lookahead <= '\r') ||
lookahead == ' ') SKIP(32);
if (('1' <= lookahead && lookahead <= '9')) ADVANCE(84);
if (('A' <= lookahead && lookahead <= 'Z') ||
lookahead == '_' ||
('a' <= lookahead && lookahead <= 'z')) ADVANCE(82);
END_STATE();
case 33:
if (eof) ADVANCE(37);
ADVANCE_MAP(
'#', 2,
'%', 67,
'&', 60,
'(', 42,
')', 43,
'*', 64,
'+', 63,
',', 41,
'-', 48,
'.', 78,
'/', 65,
':', 71,
';', 40,
'<', 52,
'=', 45,
'>', 58,
'[', 72,
']', 73,
'^', 70,
'{', 74,
'|', 59,
'}', 75,
'~', 50,
);
if (('\t' <= lookahead && lookahead <= '\r') ||
lookahead == ' ') SKIP(34);
if (('A' <= lookahead && lookahead <= 'Z') ||
lookahead == '_' ||
('a' <= lookahead && lookahead <= 'z')) ADVANCE(82);
END_STATE();
case 34:
if (eof) ADVANCE(37);
ADVANCE_MAP(
'%', 67,
'&', 60,
'(', 42,
')', 43,
'*', 64,
'+', 63,
',', 41,
'-', 48,
'.', 78,
'/', 65,
':', 71,
';', 40,
'<', 52,
'=', 45,
'>', 58,
'[', 72,
']', 73,
'^', 70,
'{', 74,
'|', 59,
'}', 75,
'~', 50,
);
if (('\t' <= lookahead && lookahead <= '\r') ||
lookahead == ' ') SKIP(34);
if (('A' <= lookahead && lookahead <= 'Z') ||
lookahead == '_' ||
('a' <= lookahead && lookahead <= 'z')) ADVANCE(82);
END_STATE();
case 35:
if (eof) ADVANCE(37);
ADVANCE_MAP(
'%', 67,
'&', 60,
'(', 42,
')', 43,
'*', 64,
'+', 63,
',', 41,
'-', 48,
'.', 76,
'/', 65,
':', 71,
';', 40,
'<', 52,
'=', 45,
'>', 58,
'[', 72,
']', 73,
'^', 70,
'{', 74,
'|', 59,
'}', 75,
'~', 50,
);
if (('\t' <= lookahead && lookahead <= '\r') ||
lookahead == ' ') SKIP(35);
if (('A' <= lookahead && lookahead <= 'Z') ||
lookahead == '_' ||
('a' <= lookahead && lookahead <= 'z')) ADVANCE(82);
END_STATE();
case 36:
if (eof) ADVANCE(37);
ADVANCE_MAP(
'(', 42,
')', 43,
',', 41,
'.', 79,
':', 71,
';', 40,
'<', 51,
'=', 44,
'>', 57,
'[', 72,
'{', 74,
'|', 59,
'}', 75,
);
if (('\t' <= lookahead && lookahead <= '\r') ||
lookahead == ' ') SKIP(36);
if (('A' <= lookahead && lookahead <= 'Z') ||
lookahead == '_' ||
('a' <= lookahead && lookahead <= 'z')) ADVANCE(82);
END_STATE();
case 37:
ACCEPT_TOKEN(ts_builtin_sym_end);
END_STATE();
case 38:
ACCEPT_TOKEN(aux_sym_program_token1);
if (lookahead != 0 &&
lookahead != '\n' &&
lookahead != '\r') ADVANCE(38);
END_STATE();
case 39:
ACCEPT_TOKEN(anon_sym_COLON_COLON);
END_STATE();
case 40:
ACCEPT_TOKEN(anon_sym_SEMI);
END_STATE();
case 41:
ACCEPT_TOKEN(anon_sym_COMMA);
END_STATE();
case 42:
ACCEPT_TOKEN(anon_sym_LPAREN);
END_STATE();
case 43:
ACCEPT_TOKEN(anon_sym_RPAREN);
END_STATE();
case 44:
ACCEPT_TOKEN(anon_sym_EQ);
END_STATE();
case 45:
ACCEPT_TOKEN(anon_sym_EQ);
if (lookahead == '=') ADVANCE(54);
END_STATE();
case 46:
ACCEPT_TOKEN(anon_sym_POUND);
END_STATE();
case 47:
ACCEPT_TOKEN(anon_sym_POUND);
if (lookahead == '!') ADVANCE(38);
END_STATE();
case 48:
ACCEPT_TOKEN(anon_sym_DASH);
END_STATE();
case 49:
ACCEPT_TOKEN(anon_sym_TILDE);
END_STATE();
case 50:
ACCEPT_TOKEN(anon_sym_TILDE);
if (lookahead == '=') ADVANCE(55);
END_STATE();
case 51:
ACCEPT_TOKEN(anon_sym_LT);
END_STATE();
case 52:
ACCEPT_TOKEN(anon_sym_LT);
if (lookahead == '<') ADVANCE(61);
if (lookahead == '=') ADVANCE(53);
END_STATE();
case 53:
ACCEPT_TOKEN(anon_sym_LT_EQ);
END_STATE();
case 54:
ACCEPT_TOKEN(anon_sym_EQ_EQ);
END_STATE();
case 55:
ACCEPT_TOKEN(anon_sym_TILDE_EQ);
END_STATE();
case 56:
ACCEPT_TOKEN(anon_sym_GT_EQ);
END_STATE();
case 57:
ACCEPT_TOKEN(anon_sym_GT);
END_STATE();
case 58:
ACCEPT_TOKEN(anon_sym_GT);
if (lookahead == '=') ADVANCE(56);
if (lookahead == '>') ADVANCE(62);
END_STATE();
case 59:
ACCEPT_TOKEN(anon_sym_PIPE);
END_STATE();
case 60:
ACCEPT_TOKEN(anon_sym_AMP);
END_STATE();
case 61:
ACCEPT_TOKEN(anon_sym_LT_LT);
END_STATE();
case 62:
ACCEPT_TOKEN(anon_sym_GT_GT);
END_STATE();
case 63:
ACCEPT_TOKEN(anon_sym_PLUS);
END_STATE();
case 64:
ACCEPT_TOKEN(anon_sym_STAR);
END_STATE();
case 65:
ACCEPT_TOKEN(anon_sym_SLASH);
if (lookahead == '/') ADVANCE(66);
END_STATE();
case 66:
ACCEPT_TOKEN(anon_sym_SLASH_SLASH);
END_STATE();
case 67:
ACCEPT_TOKEN(anon_sym_PERCENT);
END_STATE();
case 68:
ACCEPT_TOKEN(anon_sym_DOT_DOT);
END_STATE();
case 69:
ACCEPT_TOKEN(anon_sym_DOT_DOT);
if (lookahead == '.') ADVANCE(80);
END_STATE();
case 70:
ACCEPT_TOKEN(anon_sym_CARET);
END_STATE();
case 71:
ACCEPT_TOKEN(anon_sym_COLON);
if (lookahead == ':') ADVANCE(39);
END_STATE();
case 72:
ACCEPT_TOKEN(anon_sym_LBRACK);
END_STATE();
case 73:
ACCEPT_TOKEN(anon_sym_RBRACK);
END_STATE();
case 74:
ACCEPT_TOKEN(anon_sym_LBRACE);
END_STATE();
case 75:
ACCEPT_TOKEN(anon_sym_RBRACE);
END_STATE();
case 76:
ACCEPT_TOKEN(anon_sym_DOT);
if (lookahead == '.') ADVANCE(69);
END_STATE();
case 77:
ACCEPT_TOKEN(anon_sym_DOT);
if (lookahead == '.') ADVANCE(69);
if (('0' <= lookahead && lookahead <= '9')) ADVANCE(87);
END_STATE();
case 78:
ACCEPT_TOKEN(anon_sym_DOT);
if (lookahead == '.') ADVANCE(68);
END_STATE();
case 79:
ACCEPT_TOKEN(anon_sym_DOT);
if (lookahead == '.') ADVANCE(4);
END_STATE();
case 80:
ACCEPT_TOKEN(anon_sym_DOT_DOT_DOT);
END_STATE();
case 81:
ACCEPT_TOKEN(sym_optional_marker);
END_STATE();
case 82:
ACCEPT_TOKEN(sym_identifier);
if (('0' <= lookahead && lookahead <= '9') ||
('A' <= lookahead && lookahead <= 'Z') ||
lookahead == '_' ||
('a' <= lookahead && lookahead <= 'z')) ADVANCE(82);
END_STATE();
case 83:
ACCEPT_TOKEN(aux_sym_number_token1);
if (lookahead == '.') ADVANCE(20);
if (lookahead == 'x') ADVANCE(26);
if (lookahead == 'E' ||
lookahead == 'e') ADVANCE(21);
if (('0' <= lookahead && lookahead <= '9')) ADVANCE(84);
END_STATE();
case 84:
ACCEPT_TOKEN(aux_sym_number_token1);
if (lookahead == '.') ADVANCE(20);
if (lookahead == 'E' ||
lookahead == 'e') ADVANCE(21);
if (('0' <= lookahead && lookahead <= '9')) ADVANCE(84);
END_STATE();
case 85:
ACCEPT_TOKEN(aux_sym_number_token1);
if (lookahead == 'E' ||
lookahead == 'e') ADVANCE(21);
if (('0' <= lookahead && lookahead <= '9')) ADVANCE(85);
END_STATE();
case 86:
ACCEPT_TOKEN(aux_sym_number_token1);
if (('0' <= lookahead && lookahead <= '9')) ADVANCE(86);
END_STATE();
case 87:
ACCEPT_TOKEN(aux_sym_number_token2);
if (lookahead == 'E' ||
lookahead == 'e') ADVANCE(22);
if (('0' <= lookahead && lookahead <= '9')) ADVANCE(87);
END_STATE();
case 88:
ACCEPT_TOKEN(aux_sym_number_token2);
if (('0' <= lookahead && lookahead <= '9')) ADVANCE(88);
END_STATE();
case 89:
ACCEPT_TOKEN(aux_sym_number_token3);
if (lookahead == '.') ADVANCE(28);
if (lookahead == 'p') ADVANCE(23);
if (('0' <= lookahead && lookahead <= '9') ||
('A' <= lookahead && lookahead <= 'F') ||
('a' <= lookahead && lookahead <= 'f')) ADVANCE(89);
END_STATE();
case 90:
ACCEPT_TOKEN(aux_sym_number_token3);
if (lookahead == 'p') ADVANCE(23);
if (('0' <= lookahead && lookahead <= '9') ||
('A' <= lookahead && lookahead <= 'F') ||
('a' <= lookahead && lookahead <= 'f')) ADVANCE(90);
END_STATE();
case 91:
ACCEPT_TOKEN(aux_sym_number_token3);
if (('0' <= lookahead && lookahead <= '9')) ADVANCE(91);
END_STATE();
case 92:
ACCEPT_TOKEN(anon_sym_PERCENT2);
END_STATE();
case 93:
ACCEPT_TOKEN(anon_sym_PERCENT2);
if (lookahead == ' ') ADVANCE(3);
if (lookahead == '#') ADVANCE(5);
if (lookahead == '.') ADVANCE(24);
if (lookahead == '+' ||
lookahead == '-') ADVANCE(1);
if (('0' <= lookahead && lookahead <= '9')) ADVANCE(5);
if (set_contains(sym_format_specifier_character_set_1, 17, lookahead)) ADVANCE(94);
END_STATE();
case 94:
ACCEPT_TOKEN(sym_format_specifier);
END_STATE();
case 95:
ACCEPT_TOKEN(sym_escape_sequence);
END_STATE();
default:
return false;
}
}
static bool ts_lex_keywords(TSLexer *lexer, TSStateId state) {
START_LEXER();
eof = lexer->eof(lexer);
switch (state) {
case 0:
ADVANCE_MAP(
'a', 1,
'b', 2,
'd', 3,
'e', 4,
'f', 5,
'g', 6,
'i', 7,
'l', 8,
'm', 9,
'n', 10,
'o', 11,
'r', 12,
't', 13,
'u', 14,
'w', 15,
);
if (('\t' <= lookahead && lookahead <= '\r') ||
lookahead == ' ') SKIP(0);
END_STATE();
case 1:
if (lookahead == 'n') ADVANCE(16);
if (lookahead == 's') ADVANCE(17);
END_STATE();
case 2:
if (lookahead == 'r') ADVANCE(18);
END_STATE();
case 3:
if (lookahead == 'o') ADVANCE(19);
END_STATE();
case 4:
if (lookahead == 'l') ADVANCE(20);
if (lookahead == 'n') ADVANCE(21);
END_STATE();
case 5:
if (lookahead == 'a') ADVANCE(22);
if (lookahead == 'o') ADVANCE(23);
if (lookahead == 'u') ADVANCE(24);
END_STATE();
case 6:
if (lookahead == 'l') ADVANCE(25);
if (lookahead == 'o') ADVANCE(26);
END_STATE();
case 7:
if (lookahead == 'f') ADVANCE(27);
if (lookahead == 'n') ADVANCE(28);
if (lookahead == 's') ADVANCE(29);
END_STATE();
case 8:
if (lookahead == 'o') ADVANCE(30);
END_STATE();
case 9:
if (lookahead == 'a') ADVANCE(31);
if (lookahead == 'e') ADVANCE(32);
END_STATE();
case 10:
if (lookahead == 'i') ADVANCE(33);
if (lookahead == 'o') ADVANCE(34);
END_STATE();
case 11:
if (lookahead == 'r') ADVANCE(35);
END_STATE();
case 12:
if (lookahead == 'e') ADVANCE(36);
END_STATE();
case 13:
if (lookahead == 'h') ADVANCE(37);
if (lookahead == 'r') ADVANCE(38);
if (lookahead == 'y') ADVANCE(39);
END_STATE();
case 14:
if (lookahead == 'n') ADVANCE(40);
if (lookahead == 's') ADVANCE(41);
END_STATE();
case 15:
if (lookahead == 'h') ADVANCE(42);
END_STATE();
case 16:
if (lookahead == 'd') ADVANCE(43);
END_STATE();
case 17:
ACCEPT_TOKEN(anon_sym_as);
END_STATE();
case 18:
if (lookahead == 'e') ADVANCE(44);
END_STATE();
case 19:
ACCEPT_TOKEN(anon_sym_do);
END_STATE();
case 20:
if (lookahead == 's') ADVANCE(45);
END_STATE();
case 21:
if (lookahead == 'd') ADVANCE(46);
if (lookahead == 'u') ADVANCE(47);
END_STATE();
case 22:
if (lookahead == 'l') ADVANCE(48);
END_STATE();
case 23:
if (lookahead == 'r') ADVANCE(49);
END_STATE();
case 24:
if (lookahead == 'n') ADVANCE(50);
END_STATE();
case 25:
if (lookahead == 'o') ADVANCE(51);
END_STATE();
case 26:
if (lookahead == 't') ADVANCE(52);
END_STATE();
case 27:
ACCEPT_TOKEN(anon_sym_if);
END_STATE();
case 28:
ACCEPT_TOKEN(anon_sym_in);
if (lookahead == 't') ADVANCE(53);
END_STATE();
case 29:
ACCEPT_TOKEN(anon_sym_is);
END_STATE();
case 30:
if (lookahead == 'c') ADVANCE(54);
END_STATE();
case 31:
if (lookahead == 'c') ADVANCE(55);
END_STATE();
case 32:
if (lookahead == 't') ADVANCE(56);
END_STATE();
case 33:
if (lookahead == 'l') ADVANCE(57);
END_STATE();
case 34:
if (lookahead == 't') ADVANCE(58);
END_STATE();
case 35:
ACCEPT_TOKEN(anon_sym_or);
END_STATE();
case 36:
if (lookahead == 'c') ADVANCE(59);
if (lookahead == 'p') ADVANCE(60);
if (lookahead == 't') ADVANCE(61);
END_STATE();
case 37:
if (lookahead == 'e') ADVANCE(62);
END_STATE();
case 38:
if (lookahead == 'u') ADVANCE(63);
END_STATE();
case 39:
if (lookahead == 'p') ADVANCE(64);
END_STATE();
case 40:
if (lookahead == 't') ADVANCE(65);
END_STATE();
case 41:
if (lookahead == 'e') ADVANCE(66);
END_STATE();
case 42:
if (lookahead == 'e') ADVANCE(67);
if (lookahead == 'i') ADVANCE(68);
END_STATE();
case 43:
ACCEPT_TOKEN(anon_sym_and);
END_STATE();
case 44:
if (lookahead == 'a') ADVANCE(69);
END_STATE();
case 45:
if (lookahead == 'e') ADVANCE(70);
END_STATE();
case 46:
ACCEPT_TOKEN(anon_sym_end);
END_STATE();
case 47:
if (lookahead == 'm') ADVANCE(71);
END_STATE();
case 48:
if (lookahead == 's') ADVANCE(72);
END_STATE();
case 49:
ACCEPT_TOKEN(anon_sym_for);
END_STATE();
case 50:
if (lookahead == 'c') ADVANCE(73);
END_STATE();
case 51:
if (lookahead == 'b') ADVANCE(74);
END_STATE();
case 52:
if (lookahead == 'o') ADVANCE(75);
END_STATE();
case 53:
if (lookahead == 'e') ADVANCE(76);
END_STATE();
case 54:
if (lookahead == 'a') ADVANCE(77);
END_STATE();
case 55:
if (lookahead == 'r') ADVANCE(78);
END_STATE();
case 56:
if (lookahead == 'a') ADVANCE(79);
END_STATE();
case 57:
ACCEPT_TOKEN(sym_nil);
END_STATE();
case 58:
ACCEPT_TOKEN(anon_sym_not);
END_STATE();
case 59:
if (lookahead == 'o') ADVANCE(80);
END_STATE();
case 60:
if (lookahead == 'e') ADVANCE(81);
END_STATE();
case 61:
if (lookahead == 'u') ADVANCE(82);
END_STATE();
case 62:
if (lookahead == 'n') ADVANCE(83);
END_STATE();
case 63:
if (lookahead == 'e') ADVANCE(84);
END_STATE();
case 64:
if (lookahead == 'e') ADVANCE(85);
END_STATE();
case 65:
if (lookahead == 'i') ADVANCE(86);
END_STATE();
case 66:
if (lookahead == 'r') ADVANCE(87);
END_STATE();
case 67:
if (lookahead == 'r') ADVANCE(88);
END_STATE();
case 68:
if (lookahead == 'l') ADVANCE(89);
END_STATE();
case 69:
if (lookahead == 'k') ADVANCE(90);
END_STATE();
case 70:
ACCEPT_TOKEN(anon_sym_else);
if (lookahead == 'i') ADVANCE(91);
END_STATE();
case 71:
ACCEPT_TOKEN(anon_sym_enum);
END_STATE();
case 72:
if (lookahead == 'e') ADVANCE(92);
END_STATE();
case 73:
if (lookahead == 't') ADVANCE(93);
END_STATE();
case 74:
if (lookahead == 'a') ADVANCE(94);
END_STATE();
case 75:
ACCEPT_TOKEN(anon_sym_goto);
END_STATE();
case 76:
if (lookahead == 'r') ADVANCE(95);
END_STATE();
case 77:
if (lookahead == 'l') ADVANCE(96);
END_STATE();
case 78:
if (lookahead == 'o') ADVANCE(97);
END_STATE();
case 79:
if (lookahead == 'm') ADVANCE(98);
END_STATE();
case 80:
if (lookahead == 'r') ADVANCE(99);
END_STATE();
case 81:
if (lookahead == 'a') ADVANCE(100);
END_STATE();
case 82:
if (lookahead == 'r') ADVANCE(101);
END_STATE();
case 83:
ACCEPT_TOKEN(anon_sym_then);
END_STATE();
case 84:
ACCEPT_TOKEN(anon_sym_true);
END_STATE();
case 85:
ACCEPT_TOKEN(anon_sym_type);
END_STATE();
case 86:
if (lookahead == 'l') ADVANCE(102);
END_STATE();
case 87:
if (lookahead == 'd') ADVANCE(103);
END_STATE();
case 88:
if (lookahead == 'e') ADVANCE(104);
END_STATE();
case 89:
if (lookahead == 'e') ADVANCE(105);
END_STATE();
case 90:
ACCEPT_TOKEN(sym_break);
END_STATE();
case 91:
if (lookahead == 'f') ADVANCE(106);
END_STATE();
case 92:
ACCEPT_TOKEN(anon_sym_false);
END_STATE();
case 93:
if (lookahead == 'i') ADVANCE(107);
END_STATE();
case 94:
if (lookahead == 'l') ADVANCE(108);
END_STATE();
case 95:
if (lookahead == 'f') ADVANCE(109);
END_STATE();
case 96:
ACCEPT_TOKEN(anon_sym_local);
END_STATE();
case 97:
if (lookahead == 'e') ADVANCE(110);
END_STATE();
case 98:
if (lookahead == 'e') ADVANCE(111);
END_STATE();
case 99:
if (lookahead == 'd') ADVANCE(112);
END_STATE();
case 100:
if (lookahead == 't') ADVANCE(113);
END_STATE();
case 101:
if (lookahead == 'n') ADVANCE(114);
END_STATE();
case 102:
ACCEPT_TOKEN(anon_sym_until);
END_STATE();
case 103:
if (lookahead == 'a') ADVANCE(115);
END_STATE();
case 104:
ACCEPT_TOKEN(anon_sym_where);
END_STATE();
case 105:
ACCEPT_TOKEN(anon_sym_while);
END_STATE();
case 106:
ACCEPT_TOKEN(anon_sym_elseif);
END_STATE();
case 107:
if (lookahead == 'o') ADVANCE(116);
END_STATE();
case 108:
ACCEPT_TOKEN(anon_sym_global);
END_STATE();
case 109:
if (lookahead == 'a') ADVANCE(117);
END_STATE();
case 110:
if (lookahead == 'x') ADVANCE(118);
END_STATE();
case 111:
if (lookahead == 't') ADVANCE(119);
END_STATE();
case 112:
ACCEPT_TOKEN(anon_sym_record);
END_STATE();
case 113:
ACCEPT_TOKEN(anon_sym_repeat);
END_STATE();
case 114:
ACCEPT_TOKEN(anon_sym_return);
END_STATE();
case 115:
if (lookahead == 't') ADVANCE(120);
END_STATE();
case 116:
if (lookahead == 'n') ADVANCE(121);
END_STATE();
case 117:
if (lookahead == 'c') ADVANCE(122);
END_STATE();
case 118:
if (lookahead == 'p') ADVANCE(123);
END_STATE();
case 119:
if (lookahead == 'h') ADVANCE(124);
END_STATE();
case 120:
if (lookahead == 'a') ADVANCE(125);
END_STATE();
case 121:
ACCEPT_TOKEN(anon_sym_function);
END_STATE();
case 122:
if (lookahead == 'e') ADVANCE(126);
END_STATE();
case 123:
ACCEPT_TOKEN(anon_sym_macroexp);
END_STATE();
case 124:
if (lookahead == 'o') ADVANCE(127);
END_STATE();
case 125:
ACCEPT_TOKEN(anon_sym_userdata);
END_STATE();
case 126:
ACCEPT_TOKEN(anon_sym_interface);
END_STATE();
case 127:
if (lookahead == 'd') ADVANCE(128);
END_STATE();
case 128:
ACCEPT_TOKEN(anon_sym_metamethod);
END_STATE();
default:
return false;
}
}
static const TSLexerMode ts_lex_modes[STATE_COUNT] = {
[0] = {.lex_state = 0, .external_lex_state = 1},
[1] = {.lex_state = 33, .external_lex_state = 2},
[2] = {.lex_state = 33, .external_lex_state = 3},
[3] = {.lex_state = 33, .external_lex_state = 3},
[4] = {.lex_state = 33, .external_lex_state = 2},
[5] = {.lex_state = 33, .external_lex_state = 3},
[6] = {.lex_state = 33, .external_lex_state = 2},
[7] = {.lex_state = 33, .external_lex_state = 3},
[8] = {.lex_state = 33, .external_lex_state = 2},
[9] = {.lex_state = 33, .external_lex_state = 3},
[10] = {.lex_state = 33, .external_lex_state = 2},
[11] = {.lex_state = 33, .external_lex_state = 3},
[12] = {.lex_state = 33, .external_lex_state = 3},
[13] = {.lex_state = 33, .external_lex_state = 3},
[14] = {.lex_state = 33, .external_lex_state = 3},
[15] = {.lex_state = 35, .external_lex_state = 2},
[16] = {.lex_state = 33, .external_lex_state = 2},
[17] = {.lex_state = 33, .external_lex_state = 3},
[18] = {.lex_state = 33, .external_lex_state = 2},
[19] = {.lex_state = 33, .external_lex_state = 3},
[20] = {.lex_state = 33, .external_lex_state = 3},
[21] = {.lex_state = 33, .external_lex_state = 3},
[22] = {.lex_state = 33, .external_lex_state = 3},
[23] = {.lex_state = 33, .external_lex_state = 3},
[24] = {.lex_state = 33, .external_lex_state = 3},
[25] = {.lex_state = 33, .external_lex_state = 3},
[26] = {.lex_state = 35, .external_lex_state = 2},
[27] = {.lex_state = 33, .external_lex_state = 2},
[28] = {.lex_state = 33, .external_lex_state = 2},
[29] = {.lex_state = 33, .external_lex_state = 2},
[30] = {.lex_state = 33, .external_lex_state = 2},
[31] = {.lex_state = 33, .external_lex_state = 2},
[32] = {.lex_state = 33, .external_lex_state = 2},
[33] = {.lex_state = 33, .external_lex_state = 2},
[34] = {.lex_state = 33, .external_lex_state = 2},
[35] = {.lex_state = 33, .external_lex_state = 2},
[36] = {.lex_state = 33, .external_lex_state = 2},
[37] = {.lex_state = 33, .external_lex_state = 2},
[38] = {.lex_state = 33, .external_lex_state = 2},
[39] = {.lex_state = 33, .external_lex_state = 2},
[40] = {.lex_state = 33, .external_lex_state = 2},
[41] = {.lex_state = 33, .external_lex_state = 2},
[42] = {.lex_state = 33, .external_lex_state = 2},
[43] = {.lex_state = 33, .external_lex_state = 2},
[44] = {.lex_state = 33, .external_lex_state = 2},
[45] = {.lex_state = 33, .external_lex_state = 2},
[46] = {.lex_state = 33, .external_lex_state = 2},
[47] = {.lex_state = 33, .external_lex_state = 2},
[48] = {.lex_state = 35, .external_lex_state = 2},
[49] = {.lex_state = 35, .external_lex_state = 2},
[50] = {.lex_state = 33, .external_lex_state = 2},
[51] = {.lex_state = 33, .external_lex_state = 2},
[52] = {.lex_state = 33, .external_lex_state = 2},
[53] = {.lex_state = 35, .external_lex_state = 2},
[54] = {.lex_state = 35, .external_lex_state = 2},
[55] = {.lex_state = 35, .external_lex_state = 2},
[56] = {.lex_state = 35, .external_lex_state = 2},
[57] = {.lex_state = 35, .external_lex_state = 2},
[58] = {.lex_state = 35, .external_lex_state = 2},
[59] = {.lex_state = 35, .external_lex_state = 2},
[60] = {.lex_state = 35, .external_lex_state = 2},
[61] = {.lex_state = 35, .external_lex_state = 2},
[62] = {.lex_state = 35, .external_lex_state = 2},
[63] = {.lex_state = 35, .external_lex_state = 2},
[64] = {.lex_state = 35, .external_lex_state = 2},
[65] = {.lex_state = 35, .external_lex_state = 2},
[66] = {.lex_state = 35, .external_lex_state = 2},
[67] = {.lex_state = 35, .external_lex_state = 2},
[68] = {.lex_state = 35, .external_lex_state = 2},
[69] = {.lex_state = 35, .external_lex_state = 2},
[70] = {.lex_state = 33, .external_lex_state = 2},
[71] = {.lex_state = 35, .external_lex_state = 2},
[72] = {.lex_state = 35, .external_lex_state = 2},
[73] = {.lex_state = 35, .external_lex_state = 2},
[74] = {.lex_state = 35, .external_lex_state = 2},
[75] = {.lex_state = 35, .external_lex_state = 2},
[76] = {.lex_state = 35, .external_lex_state = 2},
[77] = {.lex_state = 35, .external_lex_state = 2},
[78] = {.lex_state = 35, .external_lex_state = 2},
[79] = {.lex_state = 35, .external_lex_state = 2},
[80] = {.lex_state = 33, .external_lex_state = 2},
[81] = {.lex_state = 35, .external_lex_state = 2},
[82] = {.lex_state = 35, .external_lex_state = 2},
[83] = {.lex_state = 35, .external_lex_state = 2},
[84] = {.lex_state = 35, .external_lex_state = 2},
[85] = {.lex_state = 35, .external_lex_state = 2},
[86] = {.lex_state = 35, .external_lex_state = 2},
[87] = {.lex_state = 33, .external_lex_state = 2},
[88] = {.lex_state = 35, .external_lex_state = 2},
[89] = {.lex_state = 35, .external_lex_state = 2},
[90] = {.lex_state = 35, .external_lex_state = 2},
[91] = {.lex_state = 33, .external_lex_state = 2},
[92] = {.lex_state = 33, .external_lex_state = 2},
[93] = {.lex_state = 35, .external_lex_state = 2},
[94] = {.lex_state = 35, .external_lex_state = 2},
[95] = {.lex_state = 33, .external_lex_state = 2},
[96] = {.lex_state = 35, .external_lex_state = 2},
[97] = {.lex_state = 35, .external_lex_state = 2},
[98] = {.lex_state = 33, .external_lex_state = 2},
[99] = {.lex_state = 33, .external_lex_state = 2},
[100] = {.lex_state = 33, .external_lex_state = 2},
[101] = {.lex_state = 33, .external_lex_state = 2},
[102] = {.lex_state = 33, .external_lex_state = 2},
[103] = {.lex_state = 33, .external_lex_state = 2},
[104] = {.lex_state = 33, .external_lex_state = 2},
[105] = {.lex_state = 33, .external_lex_state = 2},
[106] = {.lex_state = 33, .external_lex_state = 2},
[107] = {.lex_state = 33, .external_lex_state = 2},
[108] = {.lex_state = 33, .external_lex_state = 2},
[109] = {.lex_state = 33, .external_lex_state = 2},
[110] = {.lex_state = 33, .external_lex_state = 2},
[111] = {.lex_state = 33, .external_lex_state = 2},
[112] = {.lex_state = 33, .external_lex_state = 2},
[113] = {.lex_state = 33, .external_lex_state = 2},
[114] = {.lex_state = 33, .external_lex_state = 2},
[115] = {.lex_state = 33, .external_lex_state = 2},
[116] = {.lex_state = 33, .external_lex_state = 2},
[117] = {.lex_state = 33, .external_lex_state = 2},
[118] = {.lex_state = 33, .external_lex_state = 2},
[119] = {.lex_state = 33, .external_lex_state = 2},
[120] = {.lex_state = 33, .external_lex_state = 2},
[121] = {.lex_state = 33, .external_lex_state = 2},
[122] = {.lex_state = 33, .external_lex_state = 2},
[123] = {.lex_state = 33, .external_lex_state = 2},
[124] = {.lex_state = 33, .external_lex_state = 2},
[125] = {.lex_state = 33, .external_lex_state = 2},
[126] = {.lex_state = 33, .external_lex_state = 2},
[127] = {.lex_state = 33, .external_lex_state = 2},
[128] = {.lex_state = 33, .external_lex_state = 2},
[129] = {.lex_state = 33, .external_lex_state = 2},
[130] = {.lex_state = 33, .external_lex_state = 2},
[131] = {.lex_state = 33, .external_lex_state = 2},
[132] = {.lex_state = 33, .external_lex_state = 2},
[133] = {.lex_state = 33, .external_lex_state = 3},
[134] = {.lex_state = 31, .external_lex_state = 3},
[135] = {.lex_state = 0, .external_lex_state = 2},
[136] = {.lex_state = 33, .external_lex_state = 2},
[137] = {.lex_state = 33, .external_lex_state = 2},
[138] = {.lex_state = 33, .external_lex_state = 2},
[139] = {.lex_state = 0, .external_lex_state = 2},
[140] = {.lex_state = 33, .external_lex_state = 2},
[141] = {.lex_state = 33, .external_lex_state = 2},
[142] = {.lex_state = 33, .external_lex_state = 2},
[143] = {.lex_state = 33, .external_lex_state = 2},
[144] = {.lex_state = 33, .external_lex_state = 2},
[145] = {.lex_state = 33, .external_lex_state = 2},
[146] = {.lex_state = 33, .external_lex_state = 2},
[147] = {.lex_state = 33, .external_lex_state = 2},
[148] = {.lex_state = 33, .external_lex_state = 2},
[149] = {.lex_state = 33, .external_lex_state = 2},
[150] = {.lex_state = 33, .external_lex_state = 2},
[151] = {.lex_state = 0, .external_lex_state = 2},
[152] = {.lex_state = 33, .external_lex_state = 2},
[153] = {.lex_state = 33, .external_lex_state = 2},
[154] = {.lex_state = 33, .external_lex_state = 2},
[155] = {.lex_state = 0, .external_lex_state = 2},
[156] = {.lex_state = 33, .external_lex_state = 2},
[157] = {.lex_state = 0, .external_lex_state = 2},
[158] = {.lex_state = 33, .external_lex_state = 2},
[159] = {.lex_state = 33, .external_lex_state = 2},
[160] = {.lex_state = 33, .external_lex_state = 2},
[161] = {.lex_state = 0, .external_lex_state = 2},
[162] = {.lex_state = 0, .external_lex_state = 2},
[163] = {.lex_state = 0, .external_lex_state = 2},
[164] = {.lex_state = 0, .external_lex_state = 2},
[165] = {.lex_state = 0, .external_lex_state = 2},
[166] = {.lex_state = 0, .external_lex_state = 2},
[167] = {.lex_state = 0, .external_lex_state = 2},
[168] = {.lex_state = 0, .external_lex_state = 2},
[169] = {.lex_state = 0, .external_lex_state = 2},
[170] = {.lex_state = 36, .external_lex_state = 2},
[171] = {.lex_state = 36, .external_lex_state = 2},
[172] = {.lex_state = 0, .external_lex_state = 2},
[173] = {.lex_state = 0, .external_lex_state = 2},
[174] = {.lex_state = 0, .external_lex_state = 2},
[175] = {.lex_state = 0, .external_lex_state = 2},
[176] = {.lex_state = 0, .external_lex_state = 2},
[177] = {.lex_state = 36, .external_lex_state = 2},
[178] = {.lex_state = 36, .external_lex_state = 2},
[179] = {.lex_state = 0, .external_lex_state = 2},
[180] = {.lex_state = 36, .external_lex_state = 2},
[181] = {.lex_state = 36, .external_lex_state = 2},
[182] = {.lex_state = 31, .external_lex_state = 2},
[183] = {.lex_state = 31, .external_lex_state = 2},
[184] = {.lex_state = 31, .external_lex_state = 2},
[185] = {.lex_state = 0, .external_lex_state = 2},
[186] = {.lex_state = 31, .external_lex_state = 2},
[187] = {.lex_state = 31, .external_lex_state = 2},
[188] = {.lex_state = 31, .external_lex_state = 2},
[189] = {.lex_state = 31, .external_lex_state = 2},
[190] = {.lex_state = 31, .external_lex_state = 2},
[191] = {.lex_state = 31, .external_lex_state = 2},
[192] = {.lex_state = 0, .external_lex_state = 2},
[193] = {.lex_state = 31, .external_lex_state = 3},
[194] = {.lex_state = 31, .external_lex_state = 2},
[195] = {.lex_state = 0, .external_lex_state = 2},
[196] = {.lex_state = 31, .external_lex_state = 3},
[197] = {.lex_state = 31, .external_lex_state = 2},
[198] = {.lex_state = 31, .external_lex_state = 2},
[199] = {.lex_state = 31, .external_lex_state = 2},
[200] = {.lex_state = 31, .external_lex_state = 2},
[201] = {.lex_state = 31, .external_lex_state = 2},
[202] = {.lex_state = 31, .external_lex_state = 2},
[203] = {.lex_state = 31, .external_lex_state = 2},
[204] = {.lex_state = 31, .external_lex_state = 2},
[205] = {.lex_state = 31, .external_lex_state = 2},
[206] = {.lex_state = 31, .external_lex_state = 2},
[207] = {.lex_state = 31, .external_lex_state = 2},
[208] = {.lex_state = 31, .external_lex_state = 2},
[209] = {.lex_state = 31, .external_lex_state = 2},
[210] = {.lex_state = 0, .external_lex_state = 2},
[211] = {.lex_state = 0, .external_lex_state = 2},
[212] = {.lex_state = 31, .external_lex_state = 2},
[213] = {.lex_state = 0, .external_lex_state = 2},
[214] = {.lex_state = 0, .external_lex_state = 2},
[215] = {.lex_state = 0, .external_lex_state = 2},
[216] = {.lex_state = 0, .external_lex_state = 2},
[217] = {.lex_state = 0, .external_lex_state = 2},
[218] = {.lex_state = 0, .external_lex_state = 2},
[219] = {.lex_state = 0, .external_lex_state = 2},
[220] = {.lex_state = 0, .external_lex_state = 2},
[221] = {.lex_state = 31, .external_lex_state = 3},
[222] = {.lex_state = 31, .external_lex_state = 3},
[223] = {.lex_state = 31, .external_lex_state = 3},
[224] = {.lex_state = 0, .external_lex_state = 2},
[225] = {.lex_state = 0, .external_lex_state = 2},
[226] = {.lex_state = 0, .external_lex_state = 2},
[227] = {.lex_state = 31, .external_lex_state = 3},
[228] = {.lex_state = 0, .external_lex_state = 2},
[229] = {.lex_state = 31, .external_lex_state = 3},
[230] = {.lex_state = 0, .external_lex_state = 2},
[231] = {.lex_state = 31, .external_lex_state = 3},
[232] = {.lex_state = 31, .external_lex_state = 3},
[233] = {.lex_state = 33, .external_lex_state = 3},
[234] = {.lex_state = 31, .external_lex_state = 3},
[235] = {.lex_state = 31, .external_lex_state = 3},
[236] = {.lex_state = 0, .external_lex_state = 2},
[237] = {.lex_state = 31, .external_lex_state = 3},
[238] = {.lex_state = 31, .external_lex_state = 3},
[239] = {.lex_state = 31, .external_lex_state = 3},
[240] = {.lex_state = 31, .external_lex_state = 3},
[241] = {.lex_state = 31, .external_lex_state = 3},
[242] = {.lex_state = 31, .external_lex_state = 3},
[243] = {.lex_state = 31, .external_lex_state = 3},
[244] = {.lex_state = 31, .external_lex_state = 3},
[245] = {.lex_state = 31, .external_lex_state = 3},
[246] = {.lex_state = 31, .external_lex_state = 3},
[247] = {.lex_state = 31, .external_lex_state = 3},
[248] = {.lex_state = 31, .external_lex_state = 3},
[249] = {.lex_state = 31, .external_lex_state = 3},
[250] = {.lex_state = 31, .external_lex_state = 3},
[251] = {.lex_state = 31, .external_lex_state = 3},
[252] = {.lex_state = 31, .external_lex_state = 3},
[253] = {.lex_state = 31, .external_lex_state = 3},
[254] = {.lex_state = 31, .external_lex_state = 3},
[255] = {.lex_state = 31, .external_lex_state = 3},
[256] = {.lex_state = 31, .external_lex_state = 3},
[257] = {.lex_state = 31, .external_lex_state = 3},
[258] = {.lex_state = 31, .external_lex_state = 3},
[259] = {.lex_state = 31, .external_lex_state = 3},
[260] = {.lex_state = 31, .external_lex_state = 3},
[261] = {.lex_state = 31, .external_lex_state = 3},
[262] = {.lex_state = 31, .external_lex_state = 3},
[263] = {.lex_state = 31, .external_lex_state = 3},
[264] = {.lex_state = 31, .external_lex_state = 3},
[265] = {.lex_state = 31, .external_lex_state = 3},
[266] = {.lex_state = 31, .external_lex_state = 3},
[267] = {.lex_state = 31, .external_lex_state = 3},
[268] = {.lex_state = 31, .external_lex_state = 3},
[269] = {.lex_state = 31, .external_lex_state = 3},
[270] = {.lex_state = 0, .external_lex_state = 2},
[271] = {.lex_state = 0, .external_lex_state = 2},
[272] = {.lex_state = 31, .external_lex_state = 3},
[273] = {.lex_state = 0, .external_lex_state = 2},
[274] = {.lex_state = 31, .external_lex_state = 3},
[275] = {.lex_state = 31, .external_lex_state = 3},
[276] = {.lex_state = 31, .external_lex_state = 3},
[277] = {.lex_state = 31, .external_lex_state = 3},
[278] = {.lex_state = 31, .external_lex_state = 3},
[279] = {.lex_state = 31, .external_lex_state = 3},
[280] = {.lex_state = 31, .external_lex_state = 3},
[281] = {.lex_state = 31, .external_lex_state = 3},
[282] = {.lex_state = 31, .external_lex_state = 3},
[283] = {.lex_state = 31, .external_lex_state = 3},
[284] = {.lex_state = 31, .external_lex_state = 3},
[285] = {.lex_state = 31, .external_lex_state = 3},
[286] = {.lex_state = 33, .external_lex_state = 3},
[287] = {.lex_state = 0, .external_lex_state = 2},
[288] = {.lex_state = 0, .external_lex_state = 2},
[289] = {.lex_state = 0, .external_lex_state = 2},
[290] = {.lex_state = 0, .external_lex_state = 2},
[291] = {.lex_state = 0, .external_lex_state = 2},
[292] = {.lex_state = 0, .external_lex_state = 2},
[293] = {.lex_state = 0, .external_lex_state = 2},
[294] = {.lex_state = 0, .external_lex_state = 2},
[295] = {.lex_state = 0, .external_lex_state = 2},
[296] = {.lex_state = 0, .external_lex_state = 2},
[297] = {.lex_state = 0, .external_lex_state = 2},
[298] = {.lex_state = 0, .external_lex_state = 2},
[299] = {.lex_state = 0, .external_lex_state = 2},
[300] = {.lex_state = 0, .external_lex_state = 2},
[301] = {.lex_state = 0, .external_lex_state = 2},
[302] = {.lex_state = 0, .external_lex_state = 2},
[303] = {.lex_state = 0, .external_lex_state = 2},
[304] = {.lex_state = 0, .external_lex_state = 2},
[305] = {.lex_state = 0, .external_lex_state = 2},
[306] = {.lex_state = 0, .external_lex_state = 2},
[307] = {.lex_state = 0, .external_lex_state = 2},
[308] = {.lex_state = 0, .external_lex_state = 2},
[309] = {.lex_state = 0, .external_lex_state = 2},
[310] = {.lex_state = 0, .external_lex_state = 2},
[311] = {.lex_state = 0, .external_lex_state = 2},
[312] = {.lex_state = 0, .external_lex_state = 2},
[313] = {.lex_state = 0, .external_lex_state = 2},
[314] = {.lex_state = 0, .external_lex_state = 2},
[315] = {.lex_state = 0, .external_lex_state = 2},
[316] = {.lex_state = 0, .external_lex_state = 2},
[317] = {.lex_state = 0, .external_lex_state = 2},
[318] = {.lex_state = 0, .external_lex_state = 2},
[319] = {.lex_state = 0, .external_lex_state = 2},
[320] = {.lex_state = 0, .external_lex_state = 2},
[321] = {.lex_state = 0, .external_lex_state = 2},
[322] = {.lex_state = 0, .external_lex_state = 2},
[323] = {.lex_state = 33, .external_lex_state = 2},
[324] = {.lex_state = 33, .external_lex_state = 2},
[325] = {.lex_state = 33, .external_lex_state = 2},
[326] = {.lex_state = 33, .external_lex_state = 2},
[327] = {.lex_state = 33, .external_lex_state = 3},
[328] = {.lex_state = 33, .external_lex_state = 2},
[329] = {.lex_state = 33, .external_lex_state = 2},
[330] = {.lex_state = 33, .external_lex_state = 2},
[331] = {.lex_state = 33, .external_lex_state = 2},
[332] = {.lex_state = 33, .external_lex_state = 2},
[333] = {.lex_state = 33, .external_lex_state = 2},
[334] = {.lex_state = 33, .external_lex_state = 2},
[335] = {.lex_state = 33, .external_lex_state = 2},
[336] = {.lex_state = 33, .external_lex_state = 2},
[337] = {.lex_state = 0, .external_lex_state = 2},
[338] = {.lex_state = 33, .external_lex_state = 2},
[339] = {.lex_state = 0, .external_lex_state = 2},
[340] = {.lex_state = 0, .external_lex_state = 2},
[341] = {.lex_state = 0, .external_lex_state = 2},
[342] = {.lex_state = 0, .external_lex_state = 2},
[343] = {.lex_state = 0, .external_lex_state = 2},
[344] = {.lex_state = 0, .external_lex_state = 2},
[345] = {.lex_state = 33, .external_lex_state = 2},
[346] = {.lex_state = 0, .external_lex_state = 2},
[347] = {.lex_state = 33, .external_lex_state = 2},
[348] = {.lex_state = 33, .external_lex_state = 2},
[349] = {.lex_state = 33, .external_lex_state = 2},
[350] = {.lex_state = 0, .external_lex_state = 2},
[351] = {.lex_state = 0, .external_lex_state = 2},
[352] = {.lex_state = 0, .external_lex_state = 2},
[353] = {.lex_state = 0, .external_lex_state = 2},
[354] = {.lex_state = 0, .external_lex_state = 2},
[355] = {.lex_state = 0, .external_lex_state = 2},
[356] = {.lex_state = 0, .external_lex_state = 2},
[357] = {.lex_state = 0, .external_lex_state = 2},
[358] = {.lex_state = 0, .external_lex_state = 2},
[359] = {.lex_state = 0, .external_lex_state = 2},
[360] = {.lex_state = 0, .external_lex_state = 2},
[361] = {.lex_state = 0, .external_lex_state = 2},
[362] = {.lex_state = 0, .external_lex_state = 2},
[363] = {.lex_state = 0, .external_lex_state = 2},
[364] = {.lex_state = 0, .external_lex_state = 2},
[365] = {.lex_state = 0, .external_lex_state = 2},
[366] = {.lex_state = 0, .external_lex_state = 2},
[367] = {.lex_state = 0, .external_lex_state = 2},
[368] = {.lex_state = 0, .external_lex_state = 2},
[369] = {.lex_state = 0, .external_lex_state = 2},
[370] = {.lex_state = 0, .external_lex_state = 2},
[371] = {.lex_state = 0, .external_lex_state = 2},
[372] = {.lex_state = 0, .external_lex_state = 2},
[373] = {.lex_state = 0, .external_lex_state = 2},
[374] = {.lex_state = 0, .external_lex_state = 2},
[375] = {.lex_state = 0, .external_lex_state = 2},
[376] = {.lex_state = 0, .external_lex_state = 2},
[377] = {.lex_state = 0, .external_lex_state = 2},
[378] = {.lex_state = 0, .external_lex_state = 2},
[379] = {.lex_state = 0, .external_lex_state = 2},
[380] = {.lex_state = 0, .external_lex_state = 2},
[381] = {.lex_state = 0, .external_lex_state = 2},
[382] = {.lex_state = 0, .external_lex_state = 2},
[383] = {.lex_state = 0, .external_lex_state = 2},
[384] = {.lex_state = 0, .external_lex_state = 2},
[385] = {.lex_state = 0, .external_lex_state = 2},
[386] = {.lex_state = 0, .external_lex_state = 2},
[387] = {.lex_state = 0, .external_lex_state = 2},
[388] = {.lex_state = 0, .external_lex_state = 2},
[389] = {.lex_state = 0, .external_lex_state = 2},
[390] = {.lex_state = 0, .external_lex_state = 2},
[391] = {.lex_state = 0, .external_lex_state = 2},
[392] = {.lex_state = 0, .external_lex_state = 2},
[393] = {.lex_state = 0, .external_lex_state = 2},
[394] = {.lex_state = 0, .external_lex_state = 2},
[395] = {.lex_state = 0, .external_lex_state = 2},
[396] = {.lex_state = 0, .external_lex_state = 2},
[397] = {.lex_state = 0, .external_lex_state = 2},
[398] = {.lex_state = 0, .external_lex_state = 2},
[399] = {.lex_state = 0, .external_lex_state = 2},
[400] = {.lex_state = 0, .external_lex_state = 2},
[401] = {.lex_state = 0, .external_lex_state = 2},
[402] = {.lex_state = 0, .external_lex_state = 2},
[403] = {.lex_state = 0, .external_lex_state = 2},
[404] = {.lex_state = 0, .external_lex_state = 2},
[405] = {.lex_state = 0, .external_lex_state = 2},
[406] = {.lex_state = 0, .external_lex_state = 2},
[407] = {.lex_state = 0, .external_lex_state = 2},
[408] = {.lex_state = 0, .external_lex_state = 2},
[409] = {.lex_state = 0, .external_lex_state = 2},
[410] = {.lex_state = 0, .external_lex_state = 2},
[411] = {.lex_state = 0, .external_lex_state = 2},
[412] = {.lex_state = 0, .external_lex_state = 2},
[413] = {.lex_state = 0, .external_lex_state = 2},
[414] = {.lex_state = 0, .external_lex_state = 2},
[415] = {.lex_state = 0, .external_lex_state = 2},
[416] = {.lex_state = 0, .external_lex_state = 2},
[417] = {.lex_state = 0, .external_lex_state = 2},
[418] = {.lex_state = 0, .external_lex_state = 2},
[419] = {.lex_state = 0, .external_lex_state = 2},
[420] = {.lex_state = 0, .external_lex_state = 2},
[421] = {.lex_state = 0, .external_lex_state = 2},
[422] = {.lex_state = 0, .external_lex_state = 2},
[423] = {.lex_state = 0, .external_lex_state = 2},
[424] = {.lex_state = 0, .external_lex_state = 2},
[425] = {.lex_state = 0, .external_lex_state = 2},
[426] = {.lex_state = 0, .external_lex_state = 2},
[427] = {.lex_state = 0, .external_lex_state = 2},
[428] = {.lex_state = 0, .external_lex_state = 2},
[429] = {.lex_state = 0, .external_lex_state = 2},
[430] = {.lex_state = 0, .external_lex_state = 2},
[431] = {.lex_state = 0, .external_lex_state = 2},
[432] = {.lex_state = 0, .external_lex_state = 2},
[433] = {.lex_state = 0, .external_lex_state = 2},
[434] = {.lex_state = 0, .external_lex_state = 2},
[435] = {.lex_state = 0, .external_lex_state = 2},
[436] = {.lex_state = 0, .external_lex_state = 2},
[437] = {.lex_state = 0, .external_lex_state = 2},
[438] = {.lex_state = 0, .external_lex_state = 2},
[439] = {.lex_state = 0, .external_lex_state = 2},
[440] = {.lex_state = 0, .external_lex_state = 2},
[441] = {.lex_state = 0, .external_lex_state = 2},
[442] = {.lex_state = 0, .external_lex_state = 2},
[443] = {.lex_state = 0, .external_lex_state = 2},
[444] = {.lex_state = 0, .external_lex_state = 2},
[445] = {.lex_state = 0, .external_lex_state = 2},
[446] = {.lex_state = 0, .external_lex_state = 2},
[447] = {.lex_state = 0, .external_lex_state = 2},
[448] = {.lex_state = 0, .external_lex_state = 2},
[449] = {.lex_state = 0, .external_lex_state = 2},
[450] = {.lex_state = 0, .external_lex_state = 2},
[451] = {.lex_state = 0, .external_lex_state = 2},
[452] = {.lex_state = 0, .external_lex_state = 2},
[453] = {.lex_state = 0, .external_lex_state = 2},
[454] = {.lex_state = 0, .external_lex_state = 2},
[455] = {.lex_state = 0, .external_lex_state = 2},
[456] = {.lex_state = 0, .external_lex_state = 2},
[457] = {.lex_state = 0, .external_lex_state = 2},
[458] = {.lex_state = 0, .external_lex_state = 2},
[459] = {.lex_state = 0, .external_lex_state = 2},
[460] = {.lex_state = 0, .external_lex_state = 2},
[461] = {.lex_state = 0, .external_lex_state = 2},
[462] = {.lex_state = 0, .external_lex_state = 2},
[463] = {.lex_state = 0, .external_lex_state = 2},
[464] = {.lex_state = 0, .external_lex_state = 2},
[465] = {.lex_state = 0, .external_lex_state = 2},
[466] = {.lex_state = 0, .external_lex_state = 2},
[467] = {.lex_state = 0, .external_lex_state = 2},
[468] = {.lex_state = 0, .external_lex_state = 2},
[469] = {.lex_state = 0, .external_lex_state = 2},
[470] = {.lex_state = 0, .external_lex_state = 2},
[471] = {.lex_state = 0, .external_lex_state = 2},
[472] = {.lex_state = 0, .external_lex_state = 2},
[473] = {.lex_state = 0, .external_lex_state = 2},
[474] = {.lex_state = 0, .external_lex_state = 2},
[475] = {.lex_state = 0, .external_lex_state = 2},
[476] = {.lex_state = 0, .external_lex_state = 2},
[477] = {.lex_state = 0, .external_lex_state = 2},
[478] = {.lex_state = 0, .external_lex_state = 2},
[479] = {.lex_state = 0, .external_lex_state = 2},
[480] = {.lex_state = 0, .external_lex_state = 2},
[481] = {.lex_state = 0, .external_lex_state = 2},
[482] = {.lex_state = 0, .external_lex_state = 2},
[483] = {.lex_state = 0, .external_lex_state = 2},
[484] = {.lex_state = 0, .external_lex_state = 2},
[485] = {.lex_state = 0, .external_lex_state = 2},
[486] = {.lex_state = 0, .external_lex_state = 2},
[487] = {.lex_state = 0, .external_lex_state = 2},
[488] = {.lex_state = 0, .external_lex_state = 2},
[489] = {.lex_state = 0, .external_lex_state = 2},
[490] = {.lex_state = 0, .external_lex_state = 2},
[491] = {.lex_state = 0, .external_lex_state = 2},
[492] = {.lex_state = 0, .external_lex_state = 2},
[493] = {.lex_state = 0, .external_lex_state = 2},
[494] = {.lex_state = 0, .external_lex_state = 2},
[495] = {.lex_state = 0, .external_lex_state = 2},
[496] = {.lex_state = 0, .external_lex_state = 2},
[497] = {.lex_state = 0, .external_lex_state = 2},
[498] = {.lex_state = 0, .external_lex_state = 2},
[499] = {.lex_state = 0, .external_lex_state = 2},
[500] = {.lex_state = 0, .external_lex_state = 2},
[501] = {.lex_state = 0, .external_lex_state = 2},
[502] = {.lex_state = 0, .external_lex_state = 2},
[503] = {.lex_state = 0, .external_lex_state = 2},
[504] = {.lex_state = 0, .external_lex_state = 2},
[505] = {.lex_state = 0, .external_lex_state = 2},
[506] = {.lex_state = 0, .external_lex_state = 2},
[507] = {.lex_state = 0, .external_lex_state = 2},
[508] = {.lex_state = 0, .external_lex_state = 2},
[509] = {.lex_state = 0, .external_lex_state = 2},
[510] = {.lex_state = 0, .external_lex_state = 2},
[511] = {.lex_state = 0, .external_lex_state = 2},
[512] = {.lex_state = 0, .external_lex_state = 2},
[513] = {.lex_state = 0, .external_lex_state = 2},
[514] = {.lex_state = 0, .external_lex_state = 2},
[515] = {.lex_state = 0, .external_lex_state = 2},
[516] = {.lex_state = 0, .external_lex_state = 2},
[517] = {.lex_state = 0, .external_lex_state = 2},
[518] = {.lex_state = 0, .external_lex_state = 2},
[519] = {.lex_state = 0, .external_lex_state = 2},
[520] = {.lex_state = 33, .external_lex_state = 3},
[521] = {.lex_state = 0, .external_lex_state = 2},
[522] = {.lex_state = 0, .external_lex_state = 2},
[523] = {.lex_state = 0, .external_lex_state = 2},
[524] = {.lex_state = 0, .external_lex_state = 2},
[525] = {.lex_state = 0, .external_lex_state = 2},
[526] = {.lex_state = 33, .external_lex_state = 3},
[527] = {.lex_state = 0, .external_lex_state = 2},
[528] = {.lex_state = 0, .external_lex_state = 2},
[529] = {.lex_state = 0, .external_lex_state = 2},
[530] = {.lex_state = 0, .external_lex_state = 2},
[531] = {.lex_state = 0, .external_lex_state = 2},
[532] = {.lex_state = 0, .external_lex_state = 2},
[533] = {.lex_state = 0, .external_lex_state = 2},
[534] = {.lex_state = 33, .external_lex_state = 3},
[535] = {.lex_state = 31, .external_lex_state = 2},
[536] = {.lex_state = 0, .external_lex_state = 2},
[537] = {.lex_state = 33, .external_lex_state = 2},
[538] = {.lex_state = 31, .external_lex_state = 4},
[539] = {.lex_state = 0, .external_lex_state = 3},
[540] = {.lex_state = 31, .external_lex_state = 4},
[541] = {.lex_state = 0, .external_lex_state = 3},
[542] = {.lex_state = 0, .external_lex_state = 2},
[543] = {.lex_state = 0, .external_lex_state = 3},
[544] = {.lex_state = 31, .external_lex_state = 5},
[545] = {.lex_state = 0, .external_lex_state = 2},
[546] = {.lex_state = 31, .external_lex_state = 5},
[547] = {.lex_state = 31, .external_lex_state = 2},
[548] = {.lex_state = 31, .external_lex_state = 4},
[549] = {.lex_state = 31, .external_lex_state = 4},
[550] = {.lex_state = 31, .external_lex_state = 2},
[551] = {.lex_state = 0, .external_lex_state = 2},
[552] = {.lex_state = 31, .external_lex_state = 2},
[553] = {.lex_state = 0, .external_lex_state = 3},
[554] = {.lex_state = 0, .external_lex_state = 2},
[555] = {.lex_state = 0, .external_lex_state = 2},
[556] = {.lex_state = 0, .external_lex_state = 2},
[557] = {.lex_state = 0, .external_lex_state = 3},
[558] = {.lex_state = 0, .external_lex_state = 2},
[559] = {.lex_state = 0, .external_lex_state = 2},
[560] = {.lex_state = 0, .external_lex_state = 2},
[561] = {.lex_state = 31, .external_lex_state = 2},
[562] = {.lex_state = 31, .external_lex_state = 4},
[563] = {.lex_state = 33, .external_lex_state = 2},
[564] = {.lex_state = 33, .external_lex_state = 2},
[565] = {.lex_state = 31, .external_lex_state = 2},
[566] = {.lex_state = 31, .external_lex_state = 5},
[567] = {.lex_state = 0, .external_lex_state = 2},
[568] = {.lex_state = 31, .external_lex_state = 4},
[569] = {.lex_state = 0, .external_lex_state = 2},
[570] = {.lex_state = 31, .external_lex_state = 2},
[571] = {.lex_state = 31, .external_lex_state = 5},
[572] = {.lex_state = 0, .external_lex_state = 2},
[573] = {.lex_state = 0, .external_lex_state = 2},
[574] = {.lex_state = 0, .external_lex_state = 2},
[575] = {.lex_state = 0, .external_lex_state = 2},
[576] = {.lex_state = 31, .external_lex_state = 2},
[577] = {.lex_state = 0, .external_lex_state = 2},
[578] = {.lex_state = 31, .external_lex_state = 2},
[579] = {.lex_state = 0, .external_lex_state = 2},
[580] = {.lex_state = 31, .external_lex_state = 2},
[581] = {.lex_state = 31, .external_lex_state = 2},
[582] = {.lex_state = 0, .external_lex_state = 2},
[583] = {.lex_state = 0, .external_lex_state = 2},
[584] = {.lex_state = 31, .external_lex_state = 5},
[585] = {.lex_state = 0, .external_lex_state = 2},
[586] = {.lex_state = 0, .external_lex_state = 2},
[587] = {.lex_state = 0, .external_lex_state = 2},
[588] = {.lex_state = 0, .external_lex_state = 2},
[589] = {.lex_state = 0, .external_lex_state = 2},
[590] = {.lex_state = 0, .external_lex_state = 2},
[591] = {.lex_state = 0, .external_lex_state = 3},
[592] = {.lex_state = 33, .external_lex_state = 2},
[593] = {.lex_state = 31, .external_lex_state = 2},
[594] = {.lex_state = 31, .external_lex_state = 2},
[595] = {.lex_state = 0, .external_lex_state = 2},
[596] = {.lex_state = 0, .external_lex_state = 2},
[597] = {.lex_state = 0, .external_lex_state = 2},
[598] = {.lex_state = 0, .external_lex_state = 2},
[599] = {.lex_state = 0, .external_lex_state = 3},
[600] = {.lex_state = 0, .external_lex_state = 2},
[601] = {.lex_state = 31, .external_lex_state = 2},
[602] = {.lex_state = 31, .external_lex_state = 2},
[603] = {.lex_state = 31, .external_lex_state = 2},
[604] = {.lex_state = 31, .external_lex_state = 2},
[605] = {.lex_state = 0, .external_lex_state = 2},
[606] = {.lex_state = 0, .external_lex_state = 2},
[607] = {.lex_state = 0, .external_lex_state = 2},
[608] = {.lex_state = 0, .external_lex_state = 2},
[609] = {.lex_state = 31, .external_lex_state = 2},
[610] = {.lex_state = 0, .external_lex_state = 2},
[611] = {.lex_state = 0, .external_lex_state = 2},
[612] = {.lex_state = 0, .external_lex_state = 2},
[613] = {.lex_state = 0, .external_lex_state = 2},
[614] = {.lex_state = 0, .external_lex_state = 2},
[615] = {.lex_state = 0, .external_lex_state = 2},
[616] = {.lex_state = 31, .external_lex_state = 2},
[617] = {.lex_state = 0, .external_lex_state = 2},
[618] = {.lex_state = 0, .external_lex_state = 2},
[619] = {.lex_state = 31, .external_lex_state = 2},
[620] = {.lex_state = 0, .external_lex_state = 2},
[621] = {.lex_state = 31, .external_lex_state = 2},
[622] = {.lex_state = 0, .external_lex_state = 2},
[623] = {.lex_state = 31, .external_lex_state = 2},
[624] = {.lex_state = 0, .external_lex_state = 2},
[625] = {.lex_state = 31, .external_lex_state = 2},
[626] = {.lex_state = 0, .external_lex_state = 2},
[627] = {.lex_state = 0, .external_lex_state = 2},
[628] = {.lex_state = 31, .external_lex_state = 2},
[629] = {.lex_state = 0, .external_lex_state = 2},
[630] = {.lex_state = 0, .external_lex_state = 2},
[631] = {.lex_state = 31, .external_lex_state = 2},
[632] = {.lex_state = 0, .external_lex_state = 2},
[633] = {.lex_state = 0, .external_lex_state = 2},
[634] = {.lex_state = 0, .external_lex_state = 2},
[635] = {.lex_state = 0, .external_lex_state = 2},
[636] = {.lex_state = 0, .external_lex_state = 2},
[637] = {.lex_state = 0, .external_lex_state = 2},
[638] = {.lex_state = 0, .external_lex_state = 2},
[639] = {.lex_state = 0, .external_lex_state = 2},
[640] = {.lex_state = 33, .external_lex_state = 2},
[641] = {.lex_state = 0, .external_lex_state = 2},
[642] = {.lex_state = 0, .external_lex_state = 2},
[643] = {.lex_state = 0, .external_lex_state = 2},
[644] = {.lex_state = 0, .external_lex_state = 2},
[645] = {.lex_state = 0, .external_lex_state = 2},
[646] = {.lex_state = 0, .external_lex_state = 2},
[647] = {.lex_state = 0, .external_lex_state = 2},
[648] = {.lex_state = 0, .external_lex_state = 2},
[649] = {.lex_state = 0, .external_lex_state = 2},
[650] = {.lex_state = 0, .external_lex_state = 2},
[651] = {.lex_state = 0, .external_lex_state = 2},
[652] = {.lex_state = 0, .external_lex_state = 2},
[653] = {.lex_state = 0, .external_lex_state = 2},
[654] = {.lex_state = 0, .external_lex_state = 2},
[655] = {.lex_state = 0, .external_lex_state = 2},
[656] = {.lex_state = 31, .external_lex_state = 2},
[657] = {.lex_state = 0, .external_lex_state = 2},
[658] = {.lex_state = 0, .external_lex_state = 2},
[659] = {.lex_state = 0, .external_lex_state = 2},
[660] = {.lex_state = 0, .external_lex_state = 2},
[661] = {.lex_state = 0, .external_lex_state = 2},
[662] = {.lex_state = 0, .external_lex_state = 2},
[663] = {.lex_state = 0, .external_lex_state = 2},
[664] = {.lex_state = 0, .external_lex_state = 2},
[665] = {.lex_state = 0, .external_lex_state = 2},
[666] = {.lex_state = 0, .external_lex_state = 2},
[667] = {.lex_state = 0, .external_lex_state = 2},
[668] = {.lex_state = 0, .external_lex_state = 2},
[669] = {.lex_state = 0, .external_lex_state = 2},
[670] = {.lex_state = 0, .external_lex_state = 2},
[671] = {.lex_state = 0, .external_lex_state = 2},
[672] = {.lex_state = 0, .external_lex_state = 2},
[673] = {.lex_state = 0, .external_lex_state = 2},
[674] = {.lex_state = 0, .external_lex_state = 2},
[675] = {.lex_state = 0, .external_lex_state = 2},
[676] = {.lex_state = 0, .external_lex_state = 2},
[677] = {.lex_state = 0, .external_lex_state = 2},
[678] = {.lex_state = 0, .external_lex_state = 2},
[679] = {.lex_state = 0, .external_lex_state = 2},
[680] = {.lex_state = 0, .external_lex_state = 2},
[681] = {.lex_state = 0, .external_lex_state = 2},
[682] = {.lex_state = 0, .external_lex_state = 2},
[683] = {.lex_state = 0, .external_lex_state = 2},
[684] = {.lex_state = 0, .external_lex_state = 2},
[685] = {.lex_state = 0, .external_lex_state = 2},
[686] = {.lex_state = 0, .external_lex_state = 2},
[687] = {.lex_state = 0, .external_lex_state = 2},
[688] = {.lex_state = 0, .external_lex_state = 2},
[689] = {.lex_state = 0, .external_lex_state = 2},
[690] = {.lex_state = 0, .external_lex_state = 2},
[691] = {.lex_state = 0, .external_lex_state = 6},
[692] = {.lex_state = 0, .external_lex_state = 2},
[693] = {.lex_state = 0, .external_lex_state = 2},
[694] = {.lex_state = 0, .external_lex_state = 2},
[695] = {.lex_state = 0, .external_lex_state = 2},
[696] = {.lex_state = 0, .external_lex_state = 2},
[697] = {.lex_state = 0, .external_lex_state = 2},
[698] = {.lex_state = 0, .external_lex_state = 2},
[699] = {.lex_state = 31, .external_lex_state = 2},
[700] = {.lex_state = 0, .external_lex_state = 2},
[701] = {.lex_state = 0, .external_lex_state = 2},
[702] = {.lex_state = 0, .external_lex_state = 2},
[703] = {.lex_state = 0, .external_lex_state = 2},
[704] = {.lex_state = 0, .external_lex_state = 2},
[705] = {.lex_state = 0, .external_lex_state = 2},
[706] = {.lex_state = 0, .external_lex_state = 2},
[707] = {.lex_state = 0, .external_lex_state = 2},
[708] = {.lex_state = 0, .external_lex_state = 2},
[709] = {.lex_state = 0, .external_lex_state = 2},
[710] = {.lex_state = 0, .external_lex_state = 2},
[711] = {.lex_state = 0, .external_lex_state = 2},
[712] = {.lex_state = 0, .external_lex_state = 2},
[713] = {.lex_state = 0, .external_lex_state = 2},
[714] = {.lex_state = 0, .external_lex_state = 2},
[715] = {.lex_state = 0, .external_lex_state = 2},
[716] = {.lex_state = 0, .external_lex_state = 2},
[717] = {.lex_state = 0, .external_lex_state = 2},
[718] = {.lex_state = 0, .external_lex_state = 2},
[719] = {.lex_state = 0, .external_lex_state = 6},
[720] = {.lex_state = 0, .external_lex_state = 2},
[721] = {.lex_state = 0, .external_lex_state = 2},
[722] = {.lex_state = 0, .external_lex_state = 2},
[723] = {.lex_state = 0, .external_lex_state = 2},
[724] = {.lex_state = 0, .external_lex_state = 2},
[725] = {.lex_state = 0, .external_lex_state = 2},
[726] = {.lex_state = 0, .external_lex_state = 7},
[727] = {.lex_state = 0, .external_lex_state = 2},
[728] = {.lex_state = 0, .external_lex_state = 2},
[729] = {.lex_state = 0, .external_lex_state = 2},
[730] = {.lex_state = 0, .external_lex_state = 2},
[731] = {.lex_state = 0, .external_lex_state = 7},
[732] = {.lex_state = 0, .external_lex_state = 2},
};
static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = {
[STATE(0)] = {
[ts_builtin_sym_end] = ACTIONS(1),
[sym_identifier] = ACTIONS(1),
[aux_sym_program_token1] = ACTIONS(1),
[anon_sym_COLON_COLON] = ACTIONS(1),
[anon_sym_SEMI] = ACTIONS(1),
[anon_sym_return] = ACTIONS(1),
[anon_sym_COMMA] = ACTIONS(1),
[anon_sym_LPAREN] = ACTIONS(1),
[anon_sym_RPAREN] = ACTIONS(1),
[sym_break] = ACTIONS(1),
[anon_sym_if] = ACTIONS(1),
[anon_sym_then] = ACTIONS(1),
[anon_sym_end] = ACTIONS(1),
[anon_sym_elseif] = ACTIONS(1),
[anon_sym_else] = ACTIONS(1),
[anon_sym_for] = ACTIONS(1),
[anon_sym_EQ] = ACTIONS(1),
[anon_sym_in] = ACTIONS(1),
[anon_sym_while] = ACTIONS(1),
[anon_sym_repeat] = ACTIONS(1),
[anon_sym_until] = ACTIONS(1),
[anon_sym_do] = ACTIONS(1),
[anon_sym_not] = ACTIONS(1),
[anon_sym_POUND] = ACTIONS(1),
[anon_sym_DASH] = ACTIONS(1),
[anon_sym_TILDE] = ACTIONS(1),
[anon_sym_or] = ACTIONS(1),
[anon_sym_and] = ACTIONS(1),
[anon_sym_LT] = ACTIONS(1),
[anon_sym_LT_EQ] = ACTIONS(1),
[anon_sym_EQ_EQ] = ACTIONS(1),
[anon_sym_TILDE_EQ] = ACTIONS(1),
[anon_sym_GT_EQ] = ACTIONS(1),
[anon_sym_GT] = ACTIONS(1),
[anon_sym_PIPE] = ACTIONS(1),
[anon_sym_AMP] = ACTIONS(1),
[anon_sym_LT_LT] = ACTIONS(1),
[anon_sym_GT_GT] = ACTIONS(1),
[anon_sym_PLUS] = ACTIONS(1),
[anon_sym_STAR] = ACTIONS(1),
[anon_sym_SLASH] = ACTIONS(1),
[anon_sym_SLASH_SLASH] = ACTIONS(1),
[anon_sym_PERCENT] = ACTIONS(1),
[anon_sym_DOT_DOT] = ACTIONS(1),
[anon_sym_CARET] = ACTIONS(1),
[anon_sym_is] = ACTIONS(1),
[anon_sym_as] = ACTIONS(1),
[anon_sym_type] = ACTIONS(1),
[anon_sym_COLON] = ACTIONS(1),
[anon_sym_LBRACK] = ACTIONS(1),
[anon_sym_RBRACK] = ACTIONS(1),
[anon_sym_LBRACE] = ACTIONS(1),
[anon_sym_RBRACE] = ACTIONS(1),
[anon_sym_DOT] = ACTIONS(1),
[anon_sym_local] = ACTIONS(1),
[anon_sym_global] = ACTIONS(1),
[anon_sym_function] = ACTIONS(1),
[anon_sym_macroexp] = ACTIONS(1),
[anon_sym_DOT_DOT_DOT] = ACTIONS(1),
[sym_optional_marker] = ACTIONS(1),
[anon_sym_record] = ACTIONS(1),
[anon_sym_interface] = ACTIONS(1),
[anon_sym_enum] = ACTIONS(1),
[anon_sym_userdata] = ACTIONS(1),
[anon_sym_metamethod] = ACTIONS(1),
[anon_sym_where] = ACTIONS(1),
[anon_sym_goto] = ACTIONS(1),
[aux_sym_number_token1] = ACTIONS(1),
[aux_sym_number_token2] = ACTIONS(1),
[aux_sym_number_token3] = ACTIONS(1),
[anon_sym_true] = ACTIONS(1),
[anon_sym_false] = ACTIONS(1),
[anon_sym_PERCENT2] = ACTIONS(1),
[sym_escape_sequence] = ACTIONS(1),
[sym_nil] = ACTIONS(1),
[sym_comment] = ACTIONS(3),
[sym__long_string_start] = ACTIONS(1),
[sym__long_string_char] = ACTIONS(1),
[sym__long_string_end] = ACTIONS(1),
[sym__short_string_start] = ACTIONS(1),
[sym__short_string_char] = ACTIONS(1),
[sym__short_string_end] = ACTIONS(1),
},
[STATE(1)] = {
[sym_program] = STATE(677),
[sym__statement] = STATE(174),
[sym_return_statement] = STATE(392),
[sym_if_statement] = STATE(392),
[sym_numeric_for_statement] = STATE(392),
[sym_generic_for_statement] = STATE(392),
[sym__for_statement] = STATE(392),
[sym_while_statement] = STATE(392),
[sym_repeat_statement] = STATE(392),
[sym_do_statement] = STATE(392),
[sym_parenthesized_expression] = STATE(520),
[sym_var_declaration] = STATE(392),
[sym_type_declaration] = STATE(392),
[sym_assignment_variables] = STATE(707),
[sym_var_assignment] = STATE(392),
[sym__prefix_expression] = STATE(520),
[sym_method_index] = STATE(539),
[sym_function_call] = STATE(327),
[sym_function_statement] = STATE(392),
[sym_macroexp_statement] = STATE(392),
[sym_interface_declaration] = STATE(372),
[sym_record_declaration] = STATE(372),
[sym_enum_declaration] = STATE(372),
[sym_goto] = STATE(392),
[sym_index] = STATE(7),
[sym__var] = STATE(526),
[aux_sym_program_repeat1] = STATE(174),
[ts_builtin_sym_end] = ACTIONS(5),
[sym_identifier] = ACTIONS(7),
[aux_sym_program_token1] = ACTIONS(9),
[anon_sym_COLON_COLON] = ACTIONS(11),
[anon_sym_return] = ACTIONS(13),
[anon_sym_LPAREN] = ACTIONS(15),
[sym_break] = ACTIONS(17),
[anon_sym_if] = ACTIONS(19),
[anon_sym_for] = ACTIONS(21),
[anon_sym_while] = ACTIONS(23),
[anon_sym_repeat] = ACTIONS(25),
[anon_sym_do] = ACTIONS(27),
[anon_sym_local] = ACTIONS(29),
[anon_sym_global] = ACTIONS(31),
[anon_sym_function] = ACTIONS(33),
[anon_sym_goto] = ACTIONS(35),
[sym_comment] = ACTIONS(3),
},
[STATE(2)] = {
[sym_arguments] = STATE(17),
[sym_table_constructor] = STATE(9),
[sym_string] = STATE(9),
[ts_builtin_sym_end] = ACTIONS(37),
[sym_identifier] = ACTIONS(39),
[anon_sym_COLON_COLON] = ACTIONS(37),
[anon_sym_SEMI] = ACTIONS(37),
[anon_sym_return] = ACTIONS(39),
[anon_sym_COMMA] = ACTIONS(37),
[anon_sym_LPAREN] = ACTIONS(41),
[anon_sym_RPAREN] = ACTIONS(37),
[sym_break] = ACTIONS(39),
[anon_sym_if] = ACTIONS(39),
[anon_sym_then] = ACTIONS(39),
[anon_sym_end] = ACTIONS(39),
[anon_sym_elseif] = ACTIONS(39),
[anon_sym_else] = ACTIONS(39),
[anon_sym_for] = ACTIONS(39),
[anon_sym_while] = ACTIONS(39),
[anon_sym_repeat] = ACTIONS(39),
[anon_sym_until] = ACTIONS(39),
[anon_sym_do] = ACTIONS(39),
[anon_sym_DASH] = ACTIONS(37),
[anon_sym_TILDE] = ACTIONS(39),
[anon_sym_or] = ACTIONS(39),
[anon_sym_and] = ACTIONS(39),
[anon_sym_LT] = ACTIONS(39),
[anon_sym_LT_EQ] = ACTIONS(37),
[anon_sym_EQ_EQ] = ACTIONS(37),
[anon_sym_TILDE_EQ] = ACTIONS(37),
[anon_sym_GT_EQ] = ACTIONS(37),
[anon_sym_GT] = ACTIONS(39),
[anon_sym_PIPE] = ACTIONS(37),
[anon_sym_AMP] = ACTIONS(37),
[anon_sym_LT_LT] = ACTIONS(37),
[anon_sym_GT_GT] = ACTIONS(37),
[anon_sym_PLUS] = ACTIONS(37),
[anon_sym_STAR] = ACTIONS(37),
[anon_sym_SLASH] = ACTIONS(39),
[anon_sym_SLASH_SLASH] = ACTIONS(37),
[anon_sym_PERCENT] = ACTIONS(37),
[anon_sym_DOT_DOT] = ACTIONS(37),
[anon_sym_CARET] = ACTIONS(37),
[anon_sym_is] = ACTIONS(39),
[anon_sym_as] = ACTIONS(39),
[anon_sym_type] = ACTIONS(39),
[anon_sym_COLON] = ACTIONS(43),
[anon_sym_LBRACK] = ACTIONS(45),
[anon_sym_RBRACK] = ACTIONS(37),
[anon_sym_LBRACE] = ACTIONS(47),
[anon_sym_RBRACE] = ACTIONS(37),
[anon_sym_DOT] = ACTIONS(49),
[anon_sym_local] = ACTIONS(39),
[anon_sym_global] = ACTIONS(39),
[anon_sym_function] = ACTIONS(39),
[anon_sym_macroexp] = ACTIONS(39),
[anon_sym_record] = ACTIONS(39),
[anon_sym_interface] = ACTIONS(39),
[anon_sym_enum] = ACTIONS(39),
[anon_sym_userdata] = ACTIONS(39),
[anon_sym_metamethod] = ACTIONS(39),
[anon_sym_goto] = ACTIONS(39),
[sym_comment] = ACTIONS(3),
[sym__long_string_start] = ACTIONS(51),
[sym__short_string_start] = ACTIONS(53),
},
};
static const uint16_t ts_small_parse_table[] = {
[0] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(55), 27,
sym__long_string_start,
sym__short_string_start,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(57), 35,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_EQ,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_COLON,
anon_sym_DOT,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[70] = 6,
ACTIONS(3), 1,
sym_comment,
ACTIONS(63), 1,
anon_sym_LT,
ACTIONS(65), 1,
anon_sym_DOT,
STATE(47), 1,
sym_typearg_params,
ACTIONS(59), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(61), 34,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_EQ,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[146] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(67), 27,
sym__long_string_start,
sym__short_string_start,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(69), 35,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_EQ,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_COLON,
anon_sym_DOT,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[216] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(63), 1,
anon_sym_LT,
STATE(8), 1,
sym_typearg_params,
ACTIONS(71), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(73), 35,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_EQ,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_COLON,
anon_sym_DOT,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[290] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(75), 27,
sym__long_string_start,
sym__short_string_start,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(77), 35,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_EQ,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_COLON,
anon_sym_DOT,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[360] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(79), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(81), 36,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_EQ,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_COLON,
anon_sym_DOT,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[429] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(83), 27,
sym__long_string_start,
sym__short_string_start,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(85), 34,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_COLON,
anon_sym_DOT,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[498] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(65), 1,
anon_sym_DOT,
ACTIONS(87), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(89), 35,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_EQ,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[569] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(91), 27,
sym__long_string_start,
sym__short_string_start,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(93), 34,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_COLON,
anon_sym_DOT,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[638] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(95), 27,
sym__long_string_start,
sym__short_string_start,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(97), 34,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_COLON,
anon_sym_DOT,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[707] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(99), 27,
sym__long_string_start,
sym__short_string_start,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(101), 34,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_COLON,
anon_sym_DOT,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[776] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(103), 27,
sym__long_string_start,
sym__short_string_start,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(105), 34,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_COLON,
anon_sym_DOT,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[845] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(107), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DOT_DOT_DOT,
ACTIONS(109), 36,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_EQ,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_DOT_DOT,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[914] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(111), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(113), 36,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_EQ,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_COLON,
anon_sym_DOT,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[983] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(115), 27,
sym__long_string_start,
sym__short_string_start,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(117), 34,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_COLON,
anon_sym_DOT,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[1052] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(119), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(121), 36,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_EQ,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_COLON,
anon_sym_DOT,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[1121] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(123), 27,
sym__long_string_start,
sym__short_string_start,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(125), 34,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_COLON,
anon_sym_DOT,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[1190] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(127), 27,
sym__long_string_start,
sym__short_string_start,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(129), 34,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_COLON,
anon_sym_DOT,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[1259] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(131), 27,
sym__long_string_start,
sym__short_string_start,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(133), 34,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_COLON,
anon_sym_DOT,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[1328] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(135), 27,
sym__long_string_start,
sym__short_string_start,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(137), 34,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_COLON,
anon_sym_DOT,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[1397] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(139), 27,
sym__long_string_start,
sym__short_string_start,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(141), 34,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_COLON,
anon_sym_DOT,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[1466] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(143), 27,
sym__long_string_start,
sym__short_string_start,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(145), 34,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_COLON,
anon_sym_DOT,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[1535] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(75), 27,
sym__long_string_start,
sym__short_string_start,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(77), 34,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_COLON,
anon_sym_DOT,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[1604] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(147), 1,
anon_sym_LT,
STATE(63), 1,
sym_typearg_params,
ACTIONS(71), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DOT_DOT_DOT,
ACTIONS(73), 33,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_DOT_DOT,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_DOT,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[1676] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(149), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(151), 35,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_EQ,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[1744] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(153), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(155), 35,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_EQ,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[1812] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(157), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(159), 35,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_EQ,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[1880] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(161), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(163), 35,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_EQ,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[1948] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(165), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(167), 35,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_EQ,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[2016] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(169), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(171), 35,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_EQ,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[2084] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(173), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(175), 35,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_EQ,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[2152] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(177), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(179), 35,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_EQ,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[2220] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(181), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(183), 35,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_EQ,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[2288] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(185), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(187), 35,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_EQ,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[2356] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(189), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(191), 35,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_EQ,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[2424] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(193), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(195), 35,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_EQ,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[2492] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(197), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(199), 35,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_EQ,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[2560] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(201), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(203), 35,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_EQ,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[2628] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(205), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(207), 35,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_EQ,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[2696] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(107), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(109), 35,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_EQ,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[2764] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(209), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(211), 35,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_EQ,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[2832] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(213), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(215), 35,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_EQ,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[2900] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(217), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(219), 35,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_EQ,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[2968] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(221), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(223), 35,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_EQ,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[3036] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(225), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(227), 35,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_EQ,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[3104] = 7,
ACTIONS(3), 1,
sym_comment,
ACTIONS(233), 1,
anon_sym_LPAREN,
ACTIONS(235), 1,
anon_sym_LT,
STATE(54), 1,
sym_typeargs,
STATE(55), 1,
sym_function_type_args,
ACTIONS(229), 24,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DOT_DOT_DOT,
ACTIONS(231), 32,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_DOT_DOT,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[3180] = 6,
ACTIONS(3), 1,
sym_comment,
ACTIONS(147), 1,
anon_sym_LT,
ACTIONS(237), 1,
anon_sym_DOT,
STATE(75), 1,
sym_typearg_params,
ACTIONS(59), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DOT_DOT_DOT,
ACTIONS(61), 32,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_DOT_DOT,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[3254] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(239), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(241), 35,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_EQ,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[3322] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(243), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(245), 35,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_EQ,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[3390] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(87), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(89), 35,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_EQ,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[3458] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(237), 1,
anon_sym_DOT,
ACTIONS(87), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DOT_DOT_DOT,
ACTIONS(89), 33,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_DOT_DOT,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[3527] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(233), 1,
anon_sym_LPAREN,
STATE(57), 1,
sym_function_type_args,
ACTIONS(247), 24,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DOT_DOT_DOT,
ACTIONS(249), 33,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_DOT_DOT,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[3598] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(255), 1,
anon_sym_COLON,
ACTIONS(251), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DOT_DOT_DOT,
ACTIONS(253), 33,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_DOT_DOT,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[3667] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(213), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DOT_DOT_DOT,
ACTIONS(215), 34,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_DOT_DOT,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[3734] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(261), 1,
anon_sym_COLON,
ACTIONS(257), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DOT_DOT_DOT,
ACTIONS(259), 33,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_DOT_DOT,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[3803] = 7,
ACTIONS(3), 1,
sym_comment,
ACTIONS(267), 1,
anon_sym_COMMA,
ACTIONS(270), 1,
anon_sym_PIPE,
ACTIONS(272), 1,
anon_sym_DOT_DOT_DOT,
STATE(95), 1,
aux_sym_type_tuple_repeat1,
ACTIONS(263), 22,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(265), 33,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_DOT_DOT,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[3878] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(278), 1,
anon_sym_COMMA,
STATE(59), 1,
aux_sym_type_tuple_repeat1,
ACTIONS(274), 24,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DOT_DOT_DOT,
ACTIONS(276), 33,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_DOT_DOT,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[3949] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(149), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DOT_DOT_DOT,
ACTIONS(151), 34,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_DOT_DOT,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[4016] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(153), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DOT_DOT_DOT,
ACTIONS(155), 34,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_DOT_DOT,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[4083] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(111), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DOT_DOT_DOT,
ACTIONS(113), 34,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_DOT_DOT,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_DOT,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[4150] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(79), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DOT_DOT_DOT,
ACTIONS(81), 34,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_DOT_DOT,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_DOT,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[4217] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(181), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DOT_DOT_DOT,
ACTIONS(183), 34,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_DOT_DOT,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[4284] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(119), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DOT_DOT_DOT,
ACTIONS(121), 34,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_DOT_DOT,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_DOT,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[4351] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(197), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DOT_DOT_DOT,
ACTIONS(199), 34,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_DOT_DOT,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[4418] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(205), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DOT_DOT_DOT,
ACTIONS(207), 34,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_DOT_DOT,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[4485] = 7,
ACTIONS(3), 1,
sym_comment,
ACTIONS(270), 1,
anon_sym_PIPE,
ACTIONS(281), 1,
anon_sym_COMMA,
ACTIONS(284), 1,
anon_sym_DOT_DOT_DOT,
STATE(69), 1,
aux_sym_type_tuple_repeat1,
ACTIONS(263), 22,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(265), 33,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_DOT_DOT,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[4560] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(290), 1,
anon_sym_COMMA,
STATE(59), 1,
aux_sym_type_tuple_repeat1,
ACTIONS(286), 24,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DOT_DOT_DOT,
ACTIONS(288), 33,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_DOT_DOT,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[4631] = 7,
ACTIONS(3), 1,
sym_comment,
ACTIONS(293), 1,
anon_sym_LPAREN,
ACTIONS(295), 1,
anon_sym_LT,
STATE(87), 1,
sym_typeargs,
STATE(91), 1,
sym_function_type_args,
ACTIONS(229), 24,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(231), 31,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[4706] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(185), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DOT_DOT_DOT,
ACTIONS(187), 33,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_DOT_DOT,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[4772] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(87), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DOT_DOT_DOT,
ACTIONS(89), 33,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_DOT_DOT,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[4838] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(161), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DOT_DOT_DOT,
ACTIONS(163), 33,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_DOT_DOT,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[4904] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(217), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DOT_DOT_DOT,
ACTIONS(219), 33,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_DOT_DOT,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[4970] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(225), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DOT_DOT_DOT,
ACTIONS(227), 33,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_DOT_DOT,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[5036] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(165), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DOT_DOT_DOT,
ACTIONS(167), 33,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_DOT_DOT,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[5102] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(189), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DOT_DOT_DOT,
ACTIONS(191), 33,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_DOT_DOT,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[5168] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(107), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DOT_DOT_DOT,
ACTIONS(109), 33,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_DOT_DOT,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[5234] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(209), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DOT_DOT_DOT,
ACTIONS(211), 33,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_DOT_DOT,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[5300] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(297), 1,
anon_sym_COLON,
ACTIONS(257), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(259), 32,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[5368] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(221), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DOT_DOT_DOT,
ACTIONS(223), 33,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_DOT_DOT,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[5434] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(270), 1,
anon_sym_PIPE,
ACTIONS(274), 24,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DOT_DOT_DOT,
ACTIONS(276), 33,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_DOT_DOT,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[5502] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(239), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DOT_DOT_DOT,
ACTIONS(241), 33,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_DOT_DOT,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[5568] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(270), 1,
anon_sym_PIPE,
ACTIONS(284), 1,
anon_sym_DOT_DOT_DOT,
ACTIONS(274), 23,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(276), 33,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_DOT_DOT,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[5638] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(243), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DOT_DOT_DOT,
ACTIONS(245), 33,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_DOT_DOT,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[5704] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(157), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DOT_DOT_DOT,
ACTIONS(159), 33,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_DOT_DOT,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[5770] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(293), 1,
anon_sym_LPAREN,
STATE(80), 1,
sym_function_type_args,
ACTIONS(247), 24,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(249), 32,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[5840] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(169), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DOT_DOT_DOT,
ACTIONS(171), 33,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_DOT_DOT,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[5906] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(173), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DOT_DOT_DOT,
ACTIONS(175), 33,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_DOT_DOT,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[5972] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(177), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DOT_DOT_DOT,
ACTIONS(179), 33,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_DOT_DOT,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[6038] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(299), 1,
anon_sym_COLON,
ACTIONS(251), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(253), 32,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[6106] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(301), 1,
anon_sym_COMMA,
STATE(92), 1,
aux_sym_type_tuple_repeat1,
ACTIONS(274), 24,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(276), 32,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[6176] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(193), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DOT_DOT_DOT,
ACTIONS(195), 33,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_DOT_DOT,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[6242] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(201), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DOT_DOT_DOT,
ACTIONS(203), 33,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_DOT_DOT,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[6308] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(304), 1,
anon_sym_COMMA,
STATE(92), 1,
aux_sym_type_tuple_repeat1,
ACTIONS(286), 24,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(288), 32,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[6378] = 7,
ACTIONS(3), 1,
sym_comment,
ACTIONS(270), 1,
anon_sym_PIPE,
ACTIONS(272), 1,
anon_sym_DOT_DOT_DOT,
ACTIONS(307), 1,
anon_sym_COMMA,
STATE(113), 1,
aux_sym_type_tuple_repeat1,
ACTIONS(263), 21,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
ACTIONS(265), 33,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_DOT_DOT,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[6452] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(270), 1,
anon_sym_PIPE,
ACTIONS(272), 1,
anon_sym_DOT_DOT_DOT,
ACTIONS(274), 23,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(276), 33,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_DOT_DOT,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[6522] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(143), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(145), 32,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[6587] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(309), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(311), 32,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[6652] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(131), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(133), 32,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[6717] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(139), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(141), 32,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[6782] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(135), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(137), 32,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[6847] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(313), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(315), 32,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[6912] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(317), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(319), 32,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[6977] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(123), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(125), 32,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[7042] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(321), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(323), 32,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[7107] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(325), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(327), 32,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[7172] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(329), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(331), 32,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[7237] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(333), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(335), 32,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[7302] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(337), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(339), 32,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[7367] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(341), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(343), 32,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[7432] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(127), 25,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(129), 32,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[7497] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(345), 1,
anon_sym_COMMA,
STATE(92), 1,
aux_sym_type_tuple_repeat1,
ACTIONS(286), 23,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
ACTIONS(288), 32,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[7566] = 7,
ACTIONS(3), 1,
sym_comment,
ACTIONS(293), 1,
anon_sym_LPAREN,
ACTIONS(295), 1,
anon_sym_LT,
STATE(117), 1,
sym_function_type_args,
STATE(118), 1,
sym_typeargs,
ACTIONS(229), 22,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
ACTIONS(231), 31,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[7639] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(347), 1,
anon_sym_PIPE,
ACTIONS(274), 24,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(276), 32,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[7706] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(349), 1,
anon_sym_COLON,
ACTIONS(257), 23,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
ACTIONS(259), 32,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[7772] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(351), 1,
anon_sym_COLON,
ACTIONS(251), 23,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
ACTIONS(253), 32,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[7838] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(293), 1,
anon_sym_LPAREN,
STATE(116), 1,
sym_function_type_args,
ACTIONS(247), 22,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
ACTIONS(249), 32,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[7906] = 17,
ACTIONS(3), 1,
sym_comment,
ACTIONS(359), 1,
anon_sym_TILDE,
ACTIONS(361), 1,
anon_sym_and,
ACTIONS(367), 1,
anon_sym_PIPE,
ACTIONS(369), 1,
anon_sym_AMP,
ACTIONS(375), 1,
anon_sym_SLASH,
ACTIONS(377), 1,
anon_sym_DOT_DOT,
ACTIONS(379), 1,
anon_sym_CARET,
ACTIONS(381), 1,
anon_sym_is,
ACTIONS(383), 1,
anon_sym_as,
ACTIONS(357), 2,
anon_sym_DASH,
anon_sym_PLUS,
ACTIONS(363), 2,
anon_sym_LT,
anon_sym_GT,
ACTIONS(371), 2,
anon_sym_LT_LT,
anon_sym_GT_GT,
ACTIONS(373), 3,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
ACTIONS(365), 4,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
ACTIONS(353), 8,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
ACTIONS(355), 25,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_or,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[7997] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(385), 1,
anon_sym_PIPE,
ACTIONS(337), 22,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
ACTIONS(339), 32,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[8062] = 7,
ACTIONS(3), 1,
sym_comment,
ACTIONS(375), 1,
anon_sym_SLASH,
ACTIONS(379), 1,
anon_sym_CARET,
ACTIONS(383), 1,
anon_sym_as,
ACTIONS(373), 3,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
ACTIONS(353), 19,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_DOT_DOT,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
ACTIONS(355), 30,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_is,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[8133] = 11,
ACTIONS(3), 1,
sym_comment,
ACTIONS(369), 1,
anon_sym_AMP,
ACTIONS(375), 1,
anon_sym_SLASH,
ACTIONS(377), 1,
anon_sym_DOT_DOT,
ACTIONS(379), 1,
anon_sym_CARET,
ACTIONS(383), 1,
anon_sym_as,
ACTIONS(357), 2,
anon_sym_DASH,
anon_sym_PLUS,
ACTIONS(371), 2,
anon_sym_LT_LT,
anon_sym_GT_GT,
ACTIONS(373), 3,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
ACTIONS(353), 13,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
ACTIONS(355), 30,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_is,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[8212] = 16,
ACTIONS(3), 1,
sym_comment,
ACTIONS(359), 1,
anon_sym_TILDE,
ACTIONS(367), 1,
anon_sym_PIPE,
ACTIONS(369), 1,
anon_sym_AMP,
ACTIONS(375), 1,
anon_sym_SLASH,
ACTIONS(377), 1,
anon_sym_DOT_DOT,
ACTIONS(379), 1,
anon_sym_CARET,
ACTIONS(381), 1,
anon_sym_is,
ACTIONS(383), 1,
anon_sym_as,
ACTIONS(357), 2,
anon_sym_DASH,
anon_sym_PLUS,
ACTIONS(363), 2,
anon_sym_LT,
anon_sym_GT,
ACTIONS(371), 2,
anon_sym_LT_LT,
anon_sym_GT_GT,
ACTIONS(373), 3,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
ACTIONS(365), 4,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
ACTIONS(353), 8,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
ACTIONS(355), 26,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_or,
anon_sym_and,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[8301] = 13,
ACTIONS(3), 1,
sym_comment,
ACTIONS(359), 1,
anon_sym_TILDE,
ACTIONS(367), 1,
anon_sym_PIPE,
ACTIONS(369), 1,
anon_sym_AMP,
ACTIONS(375), 1,
anon_sym_SLASH,
ACTIONS(377), 1,
anon_sym_DOT_DOT,
ACTIONS(379), 1,
anon_sym_CARET,
ACTIONS(383), 1,
anon_sym_as,
ACTIONS(357), 2,
anon_sym_DASH,
anon_sym_PLUS,
ACTIONS(371), 2,
anon_sym_LT_LT,
anon_sym_GT_GT,
ACTIONS(373), 3,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
ACTIONS(353), 12,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
ACTIONS(355), 29,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_is,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[8384] = 12,
ACTIONS(3), 1,
sym_comment,
ACTIONS(359), 1,
anon_sym_TILDE,
ACTIONS(369), 1,
anon_sym_AMP,
ACTIONS(375), 1,
anon_sym_SLASH,
ACTIONS(377), 1,
anon_sym_DOT_DOT,
ACTIONS(379), 1,
anon_sym_CARET,
ACTIONS(383), 1,
anon_sym_as,
ACTIONS(357), 2,
anon_sym_DASH,
anon_sym_PLUS,
ACTIONS(371), 2,
anon_sym_LT_LT,
anon_sym_GT_GT,
ACTIONS(373), 3,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
ACTIONS(353), 13,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
ACTIONS(355), 29,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_is,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[8465] = 10,
ACTIONS(3), 1,
sym_comment,
ACTIONS(375), 1,
anon_sym_SLASH,
ACTIONS(377), 1,
anon_sym_DOT_DOT,
ACTIONS(379), 1,
anon_sym_CARET,
ACTIONS(383), 1,
anon_sym_as,
ACTIONS(357), 2,
anon_sym_DASH,
anon_sym_PLUS,
ACTIONS(371), 2,
anon_sym_LT_LT,
anon_sym_GT_GT,
ACTIONS(373), 3,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
ACTIONS(353), 14,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
ACTIONS(355), 30,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_is,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[8542] = 9,
ACTIONS(3), 1,
sym_comment,
ACTIONS(375), 1,
anon_sym_SLASH,
ACTIONS(377), 1,
anon_sym_DOT_DOT,
ACTIONS(379), 1,
anon_sym_CARET,
ACTIONS(383), 1,
anon_sym_as,
ACTIONS(357), 2,
anon_sym_DASH,
anon_sym_PLUS,
ACTIONS(373), 3,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
ACTIONS(353), 16,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
ACTIONS(355), 30,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_is,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[8617] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(379), 1,
anon_sym_CARET,
ACTIONS(383), 1,
anon_sym_as,
ACTIONS(353), 22,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
ACTIONS(355), 31,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[8684] = 9,
ACTIONS(3), 1,
sym_comment,
ACTIONS(375), 1,
anon_sym_SLASH,
ACTIONS(377), 1,
anon_sym_DOT_DOT,
ACTIONS(379), 1,
anon_sym_CARET,
ACTIONS(383), 1,
anon_sym_as,
ACTIONS(357), 2,
anon_sym_DASH,
anon_sym_PLUS,
ACTIONS(373), 3,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
ACTIONS(353), 16,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
ACTIONS(355), 30,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_is,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[8759] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(379), 1,
anon_sym_CARET,
ACTIONS(383), 1,
anon_sym_as,
ACTIONS(353), 22,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
ACTIONS(355), 31,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[8826] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(385), 1,
anon_sym_PIPE,
ACTIONS(353), 22,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
ACTIONS(355), 32,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[8891] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(379), 1,
anon_sym_CARET,
ACTIONS(383), 1,
anon_sym_as,
ACTIONS(387), 22,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_LBRACK,
anon_sym_RBRACK,
anon_sym_LBRACE,
ACTIONS(389), 31,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_then,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[8958] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(391), 4,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
ACTIONS(97), 10,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_COLON,
anon_sym_DOT,
ACTIONS(393), 16,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
ACTIONS(95), 20,
sym__long_string_start,
sym__short_string_start,
anon_sym_COMMA,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_LBRACK,
anon_sym_LBRACE,
[9020] = 20,
ACTIONS(3), 1,
sym_comment,
ACTIONS(397), 1,
sym_identifier,
ACTIONS(401), 1,
anon_sym_LPAREN,
ACTIONS(403), 1,
anon_sym_not,
ACTIONS(407), 1,
anon_sym_LBRACE,
ACTIONS(409), 1,
anon_sym_function,
ACTIONS(411), 1,
anon_sym_DOT_DOT_DOT,
ACTIONS(413), 1,
aux_sym_number_token1,
ACTIONS(419), 1,
sym_nil,
ACTIONS(421), 1,
sym__long_string_start,
ACTIONS(423), 1,
sym__short_string_start,
STATE(7), 1,
sym_index,
STATE(539), 1,
sym_method_index,
ACTIONS(415), 2,
aux_sym_number_token2,
aux_sym_number_token3,
ACTIONS(417), 2,
anon_sym_true,
anon_sym_false,
ACTIONS(395), 3,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
ACTIONS(405), 3,
anon_sym_POUND,
anon_sym_DASH,
anon_sym_TILDE,
STATE(2), 4,
sym_parenthesized_expression,
sym__prefix_expression,
sym_function_call,
sym__var,
STATE(152), 10,
sym__expression,
sym_unary_op,
sym_bin_op,
sym_type_cast,
sym_table_constructor,
sym_anon_function,
sym_varargs,
sym_number,
sym_boolean,
sym_string,
ACTIONS(399), 14,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_local,
anon_sym_global,
anon_sym_goto,
[9112] = 29,
ACTIONS(3), 1,
sym_comment,
ACTIONS(7), 1,
sym_identifier,
ACTIONS(11), 1,
anon_sym_COLON_COLON,
ACTIONS(13), 1,
anon_sym_return,
ACTIONS(15), 1,
anon_sym_LPAREN,
ACTIONS(17), 1,
sym_break,
ACTIONS(19), 1,
anon_sym_if,
ACTIONS(21), 1,
anon_sym_for,
ACTIONS(23), 1,
anon_sym_while,
ACTIONS(25), 1,
anon_sym_repeat,
ACTIONS(27), 1,
anon_sym_do,
ACTIONS(29), 1,
anon_sym_local,
ACTIONS(31), 1,
anon_sym_global,
ACTIONS(33), 1,
anon_sym_function,
ACTIONS(35), 1,
anon_sym_goto,
ACTIONS(425), 1,
anon_sym_end,
ACTIONS(427), 1,
anon_sym_elseif,
ACTIONS(429), 1,
anon_sym_else,
STATE(7), 1,
sym_index,
STATE(327), 1,
sym_function_call,
STATE(526), 1,
sym__var,
STATE(539), 1,
sym_method_index,
STATE(690), 1,
sym_else_block,
STATE(707), 1,
sym_assignment_variables,
STATE(139), 2,
sym__statement,
aux_sym_program_repeat1,
STATE(520), 2,
sym_parenthesized_expression,
sym__prefix_expression,
STATE(545), 2,
sym_elseif_block,
aux_sym_if_statement_repeat1,
STATE(372), 3,
sym_interface_declaration,
sym_record_declaration,
sym_enum_declaration,
STATE(392), 14,
sym_return_statement,
sym_if_statement,
sym_numeric_for_statement,
sym_generic_for_statement,
sym__for_statement,
sym_while_statement,
sym_repeat_statement,
sym_do_statement,
sym_var_declaration,
sym_type_declaration,
sym_var_assignment,
sym_function_statement,
sym_macroexp_statement,
sym_goto,
[9218] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(431), 1,
anon_sym_CARET,
ACTIONS(433), 1,
anon_sym_as,
ACTIONS(353), 21,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_RBRACE,
ACTIONS(355), 23,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
[9276] = 9,
ACTIONS(3), 1,
sym_comment,
ACTIONS(431), 1,
anon_sym_CARET,
ACTIONS(433), 1,
anon_sym_as,
ACTIONS(439), 1,
anon_sym_SLASH,
ACTIONS(441), 1,
anon_sym_DOT_DOT,
ACTIONS(435), 2,
anon_sym_DASH,
anon_sym_PLUS,
ACTIONS(437), 3,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
ACTIONS(353), 15,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_RBRACE,
ACTIONS(355), 22,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_is,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
[9342] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(431), 1,
anon_sym_CARET,
ACTIONS(433), 1,
anon_sym_as,
ACTIONS(353), 21,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_RBRACE,
ACTIONS(355), 23,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
[9400] = 29,
ACTIONS(3), 1,
sym_comment,
ACTIONS(7), 1,
sym_identifier,
ACTIONS(11), 1,
anon_sym_COLON_COLON,
ACTIONS(13), 1,
anon_sym_return,
ACTIONS(15), 1,
anon_sym_LPAREN,
ACTIONS(17), 1,
sym_break,
ACTIONS(19), 1,
anon_sym_if,
ACTIONS(21), 1,
anon_sym_for,
ACTIONS(23), 1,
anon_sym_while,
ACTIONS(25), 1,
anon_sym_repeat,
ACTIONS(27), 1,
anon_sym_do,
ACTIONS(29), 1,
anon_sym_local,
ACTIONS(31), 1,
anon_sym_global,
ACTIONS(33), 1,
anon_sym_function,
ACTIONS(35), 1,
anon_sym_goto,
ACTIONS(427), 1,
anon_sym_elseif,
ACTIONS(429), 1,
anon_sym_else,
ACTIONS(443), 1,
anon_sym_end,
STATE(7), 1,
sym_index,
STATE(327), 1,
sym_function_call,
STATE(526), 1,
sym__var,
STATE(539), 1,
sym_method_index,
STATE(704), 1,
sym_else_block,
STATE(707), 1,
sym_assignment_variables,
STATE(151), 2,
sym__statement,
aux_sym_program_repeat1,
STATE(520), 2,
sym_parenthesized_expression,
sym__prefix_expression,
STATE(542), 2,
sym_elseif_block,
aux_sym_if_statement_repeat1,
STATE(372), 3,
sym_interface_declaration,
sym_record_declaration,
sym_enum_declaration,
STATE(392), 14,
sym_return_statement,
sym_if_statement,
sym_numeric_for_statement,
sym_generic_for_statement,
sym__for_statement,
sym_while_statement,
sym_repeat_statement,
sym_do_statement,
sym_var_declaration,
sym_type_declaration,
sym_var_assignment,
sym_function_statement,
sym_macroexp_statement,
sym_goto,
[9506] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(347), 1,
anon_sym_PIPE,
ACTIONS(353), 21,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_RBRACE,
ACTIONS(355), 24,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
[9562] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(431), 1,
anon_sym_CARET,
ACTIONS(433), 1,
anon_sym_as,
ACTIONS(387), 21,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_RBRACE,
ACTIONS(389), 23,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
[9620] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(347), 1,
anon_sym_PIPE,
ACTIONS(337), 21,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_RBRACE,
ACTIONS(339), 24,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_is,
anon_sym_as,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
[9676] = 13,
ACTIONS(3), 1,
sym_comment,
ACTIONS(431), 1,
anon_sym_CARET,
ACTIONS(433), 1,
anon_sym_as,
ACTIONS(439), 1,
anon_sym_SLASH,
ACTIONS(441), 1,
anon_sym_DOT_DOT,
ACTIONS(445), 1,
anon_sym_TILDE,
ACTIONS(447), 1,
anon_sym_PIPE,
ACTIONS(449), 1,
anon_sym_AMP,
ACTIONS(435), 2,
anon_sym_DASH,
anon_sym_PLUS,
ACTIONS(451), 2,
anon_sym_LT_LT,
anon_sym_GT_GT,
ACTIONS(437), 3,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
ACTIONS(353), 11,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_RBRACE,
ACTIONS(355), 21,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_is,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
[9750] = 11,
ACTIONS(3), 1,
sym_comment,
ACTIONS(431), 1,
anon_sym_CARET,
ACTIONS(433), 1,
anon_sym_as,
ACTIONS(439), 1,
anon_sym_SLASH,
ACTIONS(441), 1,
anon_sym_DOT_DOT,
ACTIONS(449), 1,
anon_sym_AMP,
ACTIONS(435), 2,
anon_sym_DASH,
anon_sym_PLUS,
ACTIONS(451), 2,
anon_sym_LT_LT,
anon_sym_GT_GT,
ACTIONS(437), 3,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
ACTIONS(353), 12,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_RBRACE,
ACTIONS(355), 22,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_is,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
[9820] = 7,
ACTIONS(3), 1,
sym_comment,
ACTIONS(431), 1,
anon_sym_CARET,
ACTIONS(433), 1,
anon_sym_as,
ACTIONS(439), 1,
anon_sym_SLASH,
ACTIONS(437), 3,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
ACTIONS(353), 18,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_DASH,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_DOT_DOT,
anon_sym_RBRACE,
ACTIONS(355), 22,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_is,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
[9882] = 17,
ACTIONS(3), 1,
sym_comment,
ACTIONS(431), 1,
anon_sym_CARET,
ACTIONS(433), 1,
anon_sym_as,
ACTIONS(439), 1,
anon_sym_SLASH,
ACTIONS(441), 1,
anon_sym_DOT_DOT,
ACTIONS(445), 1,
anon_sym_TILDE,
ACTIONS(447), 1,
anon_sym_PIPE,
ACTIONS(449), 1,
anon_sym_AMP,
ACTIONS(453), 1,
anon_sym_and,
ACTIONS(459), 1,
anon_sym_is,
ACTIONS(435), 2,
anon_sym_DASH,
anon_sym_PLUS,
ACTIONS(451), 2,
anon_sym_LT_LT,
anon_sym_GT_GT,
ACTIONS(455), 2,
anon_sym_LT,
anon_sym_GT,
ACTIONS(437), 3,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
ACTIONS(457), 4,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
ACTIONS(353), 7,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_RBRACE,
ACTIONS(355), 17,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_or,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
[9964] = 16,
ACTIONS(3), 1,
sym_comment,
ACTIONS(431), 1,
anon_sym_CARET,
ACTIONS(433), 1,
anon_sym_as,
ACTIONS(439), 1,
anon_sym_SLASH,
ACTIONS(441), 1,
anon_sym_DOT_DOT,
ACTIONS(445), 1,
anon_sym_TILDE,
ACTIONS(447), 1,
anon_sym_PIPE,
ACTIONS(449), 1,
anon_sym_AMP,
ACTIONS(459), 1,
anon_sym_is,
ACTIONS(435), 2,
anon_sym_DASH,
anon_sym_PLUS,
ACTIONS(451), 2,
anon_sym_LT_LT,
anon_sym_GT_GT,
ACTIONS(455), 2,
anon_sym_LT,
anon_sym_GT,
ACTIONS(437), 3,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
ACTIONS(457), 4,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
ACTIONS(353), 7,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_RBRACE,
ACTIONS(355), 18,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_or,
anon_sym_and,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
[10044] = 12,
ACTIONS(3), 1,
sym_comment,
ACTIONS(431), 1,
anon_sym_CARET,
ACTIONS(433), 1,
anon_sym_as,
ACTIONS(439), 1,
anon_sym_SLASH,
ACTIONS(441), 1,
anon_sym_DOT_DOT,
ACTIONS(445), 1,
anon_sym_TILDE,
ACTIONS(449), 1,
anon_sym_AMP,
ACTIONS(435), 2,
anon_sym_DASH,
anon_sym_PLUS,
ACTIONS(451), 2,
anon_sym_LT_LT,
anon_sym_GT_GT,
ACTIONS(437), 3,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
ACTIONS(353), 12,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_RBRACE,
ACTIONS(355), 21,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_is,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
[10116] = 10,
ACTIONS(3), 1,
sym_comment,
ACTIONS(431), 1,
anon_sym_CARET,
ACTIONS(433), 1,
anon_sym_as,
ACTIONS(439), 1,
anon_sym_SLASH,
ACTIONS(441), 1,
anon_sym_DOT_DOT,
ACTIONS(435), 2,
anon_sym_DASH,
anon_sym_PLUS,
ACTIONS(451), 2,
anon_sym_LT_LT,
anon_sym_GT_GT,
ACTIONS(437), 3,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
ACTIONS(353), 13,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_RBRACE,
ACTIONS(355), 22,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_is,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
[10184] = 9,
ACTIONS(3), 1,
sym_comment,
ACTIONS(431), 1,
anon_sym_CARET,
ACTIONS(433), 1,
anon_sym_as,
ACTIONS(439), 1,
anon_sym_SLASH,
ACTIONS(441), 1,
anon_sym_DOT_DOT,
ACTIONS(435), 2,
anon_sym_DASH,
anon_sym_PLUS,
ACTIONS(437), 3,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
ACTIONS(353), 15,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_RBRACE,
ACTIONS(355), 22,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_TILDE,
anon_sym_or,
anon_sym_and,
anon_sym_LT,
anon_sym_GT,
anon_sym_is,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
[10250] = 26,
ACTIONS(3), 1,
sym_comment,
ACTIONS(461), 1,
ts_builtin_sym_end,
ACTIONS(463), 1,
sym_identifier,
ACTIONS(466), 1,
anon_sym_COLON_COLON,
ACTIONS(469), 1,
anon_sym_return,
ACTIONS(472), 1,
anon_sym_LPAREN,
ACTIONS(475), 1,
sym_break,
ACTIONS(478), 1,
anon_sym_if,
ACTIONS(483), 1,
anon_sym_for,
ACTIONS(486), 1,
anon_sym_while,
ACTIONS(489), 1,
anon_sym_repeat,
ACTIONS(492), 1,
anon_sym_do,
ACTIONS(495), 1,
anon_sym_local,
ACTIONS(498), 1,
anon_sym_global,
ACTIONS(501), 1,
anon_sym_function,
ACTIONS(504), 1,
anon_sym_goto,
STATE(7), 1,
sym_index,
STATE(327), 1,
sym_function_call,
STATE(526), 1,
sym__var,
STATE(539), 1,
sym_method_index,
STATE(707), 1,
sym_assignment_variables,
STATE(151), 2,
sym__statement,
aux_sym_program_repeat1,
STATE(520), 2,
sym_parenthesized_expression,
sym__prefix_expression,
STATE(372), 3,
sym_interface_declaration,
sym_record_declaration,
sym_enum_declaration,
ACTIONS(481), 4,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_until,
STATE(392), 14,
sym_return_statement,
sym_if_statement,
sym_numeric_for_statement,
sym_generic_for_statement,
sym__for_statement,
sym_while_statement,
sym_repeat_statement,
sym_do_statement,
sym_var_declaration,
sym_type_declaration,
sym_var_assignment,
sym_function_statement,
sym_macroexp_statement,
sym_goto,
[10349] = 20,
ACTIONS(3), 1,
sym_comment,
ACTIONS(431), 1,
anon_sym_CARET,
ACTIONS(433), 1,
anon_sym_as,
ACTIONS(439), 1,
anon_sym_SLASH,
ACTIONS(441), 1,
anon_sym_DOT_DOT,
ACTIONS(445), 1,
anon_sym_TILDE,
ACTIONS(447), 1,
anon_sym_PIPE,
ACTIONS(449), 1,
anon_sym_AMP,
ACTIONS(453), 1,
anon_sym_and,
ACTIONS(459), 1,
anon_sym_is,
ACTIONS(511), 1,
anon_sym_COMMA,
ACTIONS(513), 1,
anon_sym_or,
STATE(359), 1,
aux_sym_return_statement_repeat1,
ACTIONS(435), 2,
anon_sym_DASH,
anon_sym_PLUS,
ACTIONS(451), 2,
anon_sym_LT_LT,
anon_sym_GT_GT,
ACTIONS(455), 2,
anon_sym_LT,
anon_sym_GT,
ACTIONS(437), 3,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
ACTIONS(457), 4,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
ACTIONS(507), 4,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
ACTIONS(509), 16,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
[10436] = 20,
ACTIONS(3), 1,
sym_comment,
ACTIONS(431), 1,
anon_sym_CARET,
ACTIONS(433), 1,
anon_sym_as,
ACTIONS(439), 1,
anon_sym_SLASH,
ACTIONS(441), 1,
anon_sym_DOT_DOT,
ACTIONS(445), 1,
anon_sym_TILDE,
ACTIONS(447), 1,
anon_sym_PIPE,
ACTIONS(449), 1,
anon_sym_AMP,
ACTIONS(453), 1,
anon_sym_and,
ACTIONS(459), 1,
anon_sym_is,
ACTIONS(511), 1,
anon_sym_COMMA,
ACTIONS(513), 1,
anon_sym_or,
STATE(362), 1,
aux_sym_return_statement_repeat1,
ACTIONS(435), 2,
anon_sym_DASH,
anon_sym_PLUS,
ACTIONS(451), 2,
anon_sym_LT_LT,
anon_sym_GT_GT,
ACTIONS(455), 2,
anon_sym_LT,
anon_sym_GT,
ACTIONS(437), 3,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
ACTIONS(457), 4,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
ACTIONS(515), 4,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
ACTIONS(517), 16,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
[10523] = 18,
ACTIONS(3), 1,
sym_comment,
ACTIONS(431), 1,
anon_sym_CARET,
ACTIONS(433), 1,
anon_sym_as,
ACTIONS(439), 1,
anon_sym_SLASH,
ACTIONS(441), 1,
anon_sym_DOT_DOT,
ACTIONS(445), 1,
anon_sym_TILDE,
ACTIONS(447), 1,
anon_sym_PIPE,
ACTIONS(449), 1,
anon_sym_AMP,
ACTIONS(453), 1,
anon_sym_and,
ACTIONS(459), 1,
anon_sym_is,
ACTIONS(513), 1,
anon_sym_or,
ACTIONS(435), 2,
anon_sym_DASH,
anon_sym_PLUS,
ACTIONS(451), 2,
anon_sym_LT_LT,
anon_sym_GT_GT,
ACTIONS(455), 2,
anon_sym_LT,
anon_sym_GT,
ACTIONS(437), 3,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
ACTIONS(457), 4,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
ACTIONS(519), 6,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
ACTIONS(521), 16,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
[10606] = 25,
ACTIONS(3), 1,
sym_comment,
ACTIONS(7), 1,
sym_identifier,
ACTIONS(11), 1,
anon_sym_COLON_COLON,
ACTIONS(13), 1,
anon_sym_return,
ACTIONS(15), 1,
anon_sym_LPAREN,
ACTIONS(17), 1,
sym_break,
ACTIONS(19), 1,
anon_sym_if,
ACTIONS(21), 1,
anon_sym_for,
ACTIONS(23), 1,
anon_sym_while,
ACTIONS(25), 1,
anon_sym_repeat,
ACTIONS(27), 1,
anon_sym_do,
ACTIONS(29), 1,
anon_sym_local,
ACTIONS(31), 1,
anon_sym_global,
ACTIONS(33), 1,
anon_sym_function,
ACTIONS(35), 1,
anon_sym_goto,
STATE(7), 1,
sym_index,
STATE(327), 1,
sym_function_call,
STATE(526), 1,
sym__var,
STATE(539), 1,
sym_method_index,
STATE(707), 1,
sym_assignment_variables,
STATE(157), 2,
sym__statement,
aux_sym_program_repeat1,
STATE(520), 2,
sym_parenthesized_expression,
sym__prefix_expression,
ACTIONS(523), 3,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
STATE(372), 3,
sym_interface_declaration,
sym_record_declaration,
sym_enum_declaration,
STATE(392), 14,
sym_return_statement,
sym_if_statement,
sym_numeric_for_statement,
sym_generic_for_statement,
sym__for_statement,
sym_while_statement,
sym_repeat_statement,
sym_do_statement,
sym_var_declaration,
sym_type_declaration,
sym_var_assignment,
sym_function_statement,
sym_macroexp_statement,
sym_goto,
[10701] = 34,
ACTIONS(3), 1,
sym_comment,
ACTIONS(359), 1,
anon_sym_TILDE,
ACTIONS(361), 1,
anon_sym_and,
ACTIONS(367), 1,
anon_sym_PIPE,
ACTIONS(369), 1,
anon_sym_AMP,
ACTIONS(375), 1,
anon_sym_SLASH,
ACTIONS(377), 1,
anon_sym_DOT_DOT,
ACTIONS(379), 1,
anon_sym_CARET,
ACTIONS(381), 1,
anon_sym_is,
ACTIONS(383), 1,
anon_sym_as,
ACTIONS(525), 1,
sym_identifier,
ACTIONS(527), 1,
anon_sym_end,
ACTIONS(529), 1,
anon_sym_or,
ACTIONS(531), 1,
anon_sym_type,
ACTIONS(533), 1,
anon_sym_LBRACK,
ACTIONS(535), 1,
anon_sym_LBRACE,
ACTIONS(537), 1,
anon_sym_macroexp,
ACTIONS(539), 1,
anon_sym_record,
ACTIONS(541), 1,
anon_sym_interface,
ACTIONS(543), 1,
anon_sym_enum,
ACTIONS(545), 1,
anon_sym_userdata,
ACTIONS(547), 1,
anon_sym_metamethod,
STATE(491), 1,
sym__type_def,
STATE(496), 1,
sym__macroexp_def,
STATE(503), 1,
sym_metamethod_annotation,
STATE(513), 1,
sym__record_def,
STATE(514), 1,
sym__interface_def,
STATE(515), 1,
sym__enum_def,
ACTIONS(357), 2,
anon_sym_DASH,
anon_sym_PLUS,
ACTIONS(363), 2,
anon_sym_LT,
anon_sym_GT,
ACTIONS(371), 2,
anon_sym_LT_LT,
anon_sym_GT_GT,
ACTIONS(373), 3,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
STATE(408), 3,
sym_record_field,
sym__record_entry,
aux_sym_record_body_repeat1,
ACTIONS(365), 4,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
[10814] = 25,
ACTIONS(3), 1,
sym_comment,
ACTIONS(7), 1,
sym_identifier,
ACTIONS(11), 1,
anon_sym_COLON_COLON,
ACTIONS(13), 1,
anon_sym_return,
ACTIONS(15), 1,
anon_sym_LPAREN,
ACTIONS(17), 1,
sym_break,
ACTIONS(19), 1,
anon_sym_if,
ACTIONS(21), 1,
anon_sym_for,
ACTIONS(23), 1,
anon_sym_while,
ACTIONS(25), 1,
anon_sym_repeat,
ACTIONS(27), 1,
anon_sym_do,
ACTIONS(29), 1,
anon_sym_local,
ACTIONS(31), 1,
anon_sym_global,
ACTIONS(33), 1,
anon_sym_function,
ACTIONS(35), 1,
anon_sym_goto,
STATE(7), 1,
sym_index,
STATE(327), 1,
sym_function_call,
STATE(526), 1,
sym__var,
STATE(539), 1,
sym_method_index,
STATE(707), 1,
sym_assignment_variables,
STATE(151), 2,
sym__statement,
aux_sym_program_repeat1,
STATE(520), 2,
sym_parenthesized_expression,
sym__prefix_expression,
ACTIONS(549), 3,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
STATE(372), 3,
sym_interface_declaration,
sym_record_declaration,
sym_enum_declaration,
STATE(392), 14,
sym_return_statement,
sym_if_statement,
sym_numeric_for_statement,
sym_generic_for_statement,
sym__for_statement,
sym_while_statement,
sym_repeat_statement,
sym_do_statement,
sym_var_declaration,
sym_type_declaration,
sym_var_assignment,
sym_function_statement,
sym_macroexp_statement,
sym_goto,
[10909] = 18,
ACTIONS(3), 1,
sym_comment,
ACTIONS(359), 1,
anon_sym_TILDE,
ACTIONS(361), 1,
anon_sym_and,
ACTIONS(367), 1,
anon_sym_PIPE,
ACTIONS(369), 1,
anon_sym_AMP,
ACTIONS(375), 1,
anon_sym_SLASH,
ACTIONS(377), 1,
anon_sym_DOT_DOT,
ACTIONS(379), 1,
anon_sym_CARET,
ACTIONS(381), 1,
anon_sym_is,
ACTIONS(383), 1,
anon_sym_as,
ACTIONS(529), 1,
anon_sym_or,
ACTIONS(357), 2,
anon_sym_DASH,
anon_sym_PLUS,
ACTIONS(363), 2,
anon_sym_LT,
anon_sym_GT,
ACTIONS(371), 2,
anon_sym_LT_LT,
anon_sym_GT_GT,
ACTIONS(373), 3,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
ACTIONS(365), 4,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
ACTIONS(551), 4,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
ACTIONS(553), 16,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
[10990] = 34,
ACTIONS(3), 1,
sym_comment,
ACTIONS(359), 1,
anon_sym_TILDE,
ACTIONS(361), 1,
anon_sym_and,
ACTIONS(367), 1,
anon_sym_PIPE,
ACTIONS(369), 1,
anon_sym_AMP,
ACTIONS(375), 1,
anon_sym_SLASH,
ACTIONS(377), 1,
anon_sym_DOT_DOT,
ACTIONS(379), 1,
anon_sym_CARET,
ACTIONS(381), 1,
anon_sym_is,
ACTIONS(383), 1,
anon_sym_as,
ACTIONS(525), 1,
sym_identifier,
ACTIONS(529), 1,
anon_sym_or,
ACTIONS(531), 1,
anon_sym_type,
ACTIONS(533), 1,
anon_sym_LBRACK,
ACTIONS(537), 1,
anon_sym_macroexp,
ACTIONS(539), 1,
anon_sym_record,
ACTIONS(541), 1,
anon_sym_interface,
ACTIONS(543), 1,
anon_sym_enum,
ACTIONS(545), 1,
anon_sym_userdata,
ACTIONS(547), 1,
anon_sym_metamethod,
ACTIONS(555), 1,
anon_sym_end,
ACTIONS(557), 1,
anon_sym_LBRACE,
STATE(491), 1,
sym__type_def,
STATE(496), 1,
sym__macroexp_def,
STATE(503), 1,
sym_metamethod_annotation,
STATE(513), 1,
sym__record_def,
STATE(514), 1,
sym__interface_def,
STATE(515), 1,
sym__enum_def,
ACTIONS(357), 2,
anon_sym_DASH,
anon_sym_PLUS,
ACTIONS(363), 2,
anon_sym_LT,
anon_sym_GT,
ACTIONS(371), 2,
anon_sym_LT_LT,
anon_sym_GT_GT,
ACTIONS(373), 3,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
STATE(410), 3,
sym_record_field,
sym__record_entry,
aux_sym_record_body_repeat1,
ACTIONS(365), 4,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
[11103] = 18,
ACTIONS(3), 1,
sym_comment,
ACTIONS(359), 1,
anon_sym_TILDE,
ACTIONS(361), 1,
anon_sym_and,
ACTIONS(367), 1,
anon_sym_PIPE,
ACTIONS(369), 1,
anon_sym_AMP,
ACTIONS(375), 1,
anon_sym_SLASH,
ACTIONS(377), 1,
anon_sym_DOT_DOT,
ACTIONS(379), 1,
anon_sym_CARET,
ACTIONS(381), 1,
anon_sym_is,
ACTIONS(383), 1,
anon_sym_as,
ACTIONS(529), 1,
anon_sym_or,
ACTIONS(357), 2,
anon_sym_DASH,
anon_sym_PLUS,
ACTIONS(363), 2,
anon_sym_LT,
anon_sym_GT,
ACTIONS(371), 2,
anon_sym_LT_LT,
anon_sym_GT_GT,
ACTIONS(373), 3,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
ACTIONS(365), 4,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
ACTIONS(559), 4,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
ACTIONS(561), 16,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
[11184] = 26,
ACTIONS(3), 1,
sym_comment,
ACTIONS(7), 1,
sym_identifier,
ACTIONS(11), 1,
anon_sym_COLON_COLON,
ACTIONS(13), 1,
anon_sym_return,
ACTIONS(15), 1,
anon_sym_LPAREN,
ACTIONS(17), 1,
sym_break,
ACTIONS(19), 1,
anon_sym_if,
ACTIONS(21), 1,
anon_sym_for,
ACTIONS(23), 1,
anon_sym_while,
ACTIONS(25), 1,
anon_sym_repeat,
ACTIONS(27), 1,
anon_sym_do,
ACTIONS(29), 1,
anon_sym_local,
ACTIONS(31), 1,
anon_sym_global,
ACTIONS(33), 1,
anon_sym_function,
ACTIONS(35), 1,
anon_sym_goto,
ACTIONS(563), 1,
anon_sym_end,
STATE(7), 1,
sym_index,
STATE(327), 1,
sym_function_call,
STATE(396), 1,
sym_function_body,
STATE(526), 1,
sym__var,
STATE(539), 1,
sym_method_index,
STATE(707), 1,
sym_assignment_variables,
STATE(168), 2,
sym__statement,
aux_sym_program_repeat1,
STATE(520), 2,
sym_parenthesized_expression,
sym__prefix_expression,
STATE(372), 3,
sym_interface_declaration,
sym_record_declaration,
sym_enum_declaration,
STATE(392), 14,
sym_return_statement,
sym_if_statement,
sym_numeric_for_statement,
sym_generic_for_statement,
sym__for_statement,
sym_while_statement,
sym_repeat_statement,
sym_do_statement,
sym_var_declaration,
sym_type_declaration,
sym_var_assignment,
sym_function_statement,
sym_macroexp_statement,
sym_goto,
[11280] = 26,
ACTIONS(3), 1,
sym_comment,
ACTIONS(7), 1,
sym_identifier,
ACTIONS(11), 1,
anon_sym_COLON_COLON,
ACTIONS(13), 1,
anon_sym_return,
ACTIONS(15), 1,
anon_sym_LPAREN,
ACTIONS(17), 1,
sym_break,
ACTIONS(19), 1,
anon_sym_if,
ACTIONS(21), 1,
anon_sym_for,
ACTIONS(23), 1,
anon_sym_while,
ACTIONS(25), 1,
anon_sym_repeat,
ACTIONS(27), 1,
anon_sym_do,
ACTIONS(29), 1,
anon_sym_local,
ACTIONS(31), 1,
anon_sym_global,
ACTIONS(33), 1,
anon_sym_function,
ACTIONS(35), 1,
anon_sym_goto,
ACTIONS(563), 1,
anon_sym_end,
STATE(7), 1,
sym_index,
STATE(327), 1,
sym_function_call,
STATE(381), 1,
sym_function_body,
STATE(526), 1,
sym__var,
STATE(539), 1,
sym_method_index,
STATE(707), 1,
sym_assignment_variables,
STATE(168), 2,
sym__statement,
aux_sym_program_repeat1,
STATE(520), 2,
sym_parenthesized_expression,
sym__prefix_expression,
STATE(372), 3,
sym_interface_declaration,
sym_record_declaration,
sym_enum_declaration,
STATE(392), 14,
sym_return_statement,
sym_if_statement,
sym_numeric_for_statement,
sym_generic_for_statement,
sym__for_statement,
sym_while_statement,
sym_repeat_statement,
sym_do_statement,
sym_var_declaration,
sym_type_declaration,
sym_var_assignment,
sym_function_statement,
sym_macroexp_statement,
sym_goto,
[11376] = 26,
ACTIONS(3), 1,
sym_comment,
ACTIONS(7), 1,
sym_identifier,
ACTIONS(11), 1,
anon_sym_COLON_COLON,
ACTIONS(13), 1,
anon_sym_return,
ACTIONS(15), 1,
anon_sym_LPAREN,
ACTIONS(17), 1,
sym_break,
ACTIONS(19), 1,
anon_sym_if,
ACTIONS(21), 1,
anon_sym_for,
ACTIONS(23), 1,
anon_sym_while,
ACTIONS(25), 1,
anon_sym_repeat,
ACTIONS(27), 1,
anon_sym_do,
ACTIONS(29), 1,
anon_sym_local,
ACTIONS(31), 1,
anon_sym_global,
ACTIONS(33), 1,
anon_sym_function,
ACTIONS(35), 1,
anon_sym_goto,
ACTIONS(563), 1,
anon_sym_end,
STATE(7), 1,
sym_index,
STATE(103), 1,
sym_function_body,
STATE(327), 1,
sym_function_call,
STATE(526), 1,
sym__var,
STATE(539), 1,
sym_method_index,
STATE(707), 1,
sym_assignment_variables,
STATE(168), 2,
sym__statement,
aux_sym_program_repeat1,
STATE(520), 2,
sym_parenthesized_expression,
sym__prefix_expression,
STATE(372), 3,
sym_interface_declaration,
sym_record_declaration,
sym_enum_declaration,
STATE(392), 14,
sym_return_statement,
sym_if_statement,
sym_numeric_for_statement,
sym_generic_for_statement,
sym__for_statement,
sym_while_statement,
sym_repeat_statement,
sym_do_statement,
sym_var_declaration,
sym_type_declaration,
sym_var_assignment,
sym_function_statement,
sym_macroexp_statement,
sym_goto,
[11472] = 25,
ACTIONS(3), 1,
sym_comment,
ACTIONS(7), 1,
sym_identifier,
ACTIONS(11), 1,
anon_sym_COLON_COLON,
ACTIONS(13), 1,
anon_sym_return,
ACTIONS(15), 1,
anon_sym_LPAREN,
ACTIONS(17), 1,
sym_break,
ACTIONS(19), 1,
anon_sym_if,
ACTIONS(21), 1,
anon_sym_for,
ACTIONS(23), 1,
anon_sym_while,
ACTIONS(25), 1,
anon_sym_repeat,
ACTIONS(27), 1,
anon_sym_do,
ACTIONS(29), 1,
anon_sym_local,
ACTIONS(31), 1,
anon_sym_global,
ACTIONS(33), 1,
anon_sym_function,
ACTIONS(35), 1,
anon_sym_goto,
ACTIONS(565), 1,
anon_sym_until,
STATE(7), 1,
sym_index,
STATE(327), 1,
sym_function_call,
STATE(526), 1,
sym__var,
STATE(539), 1,
sym_method_index,
STATE(707), 1,
sym_assignment_variables,
STATE(151), 2,
sym__statement,
aux_sym_program_repeat1,
STATE(520), 2,
sym_parenthesized_expression,
sym__prefix_expression,
STATE(372), 3,
sym_interface_declaration,
sym_record_declaration,
sym_enum_declaration,
STATE(392), 14,
sym_return_statement,
sym_if_statement,
sym_numeric_for_statement,
sym_generic_for_statement,
sym__for_statement,
sym_while_statement,
sym_repeat_statement,
sym_do_statement,
sym_var_declaration,
sym_type_declaration,
sym_var_assignment,
sym_function_statement,
sym_macroexp_statement,
sym_goto,
[11565] = 25,
ACTIONS(3), 1,
sym_comment,
ACTIONS(7), 1,
sym_identifier,
ACTIONS(11), 1,
anon_sym_COLON_COLON,
ACTIONS(13), 1,
anon_sym_return,
ACTIONS(15), 1,
anon_sym_LPAREN,
ACTIONS(17), 1,
sym_break,
ACTIONS(19), 1,
anon_sym_if,
ACTIONS(21), 1,
anon_sym_for,
ACTIONS(23), 1,
anon_sym_while,
ACTIONS(25), 1,
anon_sym_repeat,
ACTIONS(27), 1,
anon_sym_do,
ACTIONS(29), 1,
anon_sym_local,
ACTIONS(31), 1,
anon_sym_global,
ACTIONS(33), 1,
anon_sym_function,
ACTIONS(35), 1,
anon_sym_goto,
ACTIONS(567), 1,
anon_sym_until,
STATE(7), 1,
sym_index,
STATE(327), 1,
sym_function_call,
STATE(526), 1,
sym__var,
STATE(539), 1,
sym_method_index,
STATE(707), 1,
sym_assignment_variables,
STATE(164), 2,
sym__statement,
aux_sym_program_repeat1,
STATE(520), 2,
sym_parenthesized_expression,
sym__prefix_expression,
STATE(372), 3,
sym_interface_declaration,
sym_record_declaration,
sym_enum_declaration,
STATE(392), 14,
sym_return_statement,
sym_if_statement,
sym_numeric_for_statement,
sym_generic_for_statement,
sym__for_statement,
sym_while_statement,
sym_repeat_statement,
sym_do_statement,
sym_var_declaration,
sym_type_declaration,
sym_var_assignment,
sym_function_statement,
sym_macroexp_statement,
sym_goto,
[11658] = 25,
ACTIONS(3), 1,
sym_comment,
ACTIONS(7), 1,
sym_identifier,
ACTIONS(11), 1,
anon_sym_COLON_COLON,
ACTIONS(13), 1,
anon_sym_return,
ACTIONS(15), 1,
anon_sym_LPAREN,
ACTIONS(17), 1,
sym_break,
ACTIONS(19), 1,
anon_sym_if,
ACTIONS(21), 1,
anon_sym_for,
ACTIONS(23), 1,
anon_sym_while,
ACTIONS(25), 1,
anon_sym_repeat,
ACTIONS(27), 1,
anon_sym_do,
ACTIONS(29), 1,
anon_sym_local,
ACTIONS(31), 1,
anon_sym_global,
ACTIONS(33), 1,
anon_sym_function,
ACTIONS(35), 1,
anon_sym_goto,
ACTIONS(569), 1,
anon_sym_end,
STATE(7), 1,
sym_index,
STATE(327), 1,
sym_function_call,
STATE(526), 1,
sym__var,
STATE(539), 1,
sym_method_index,
STATE(707), 1,
sym_assignment_variables,
STATE(167), 2,
sym__statement,
aux_sym_program_repeat1,
STATE(520), 2,
sym_parenthesized_expression,
sym__prefix_expression,
STATE(372), 3,
sym_interface_declaration,
sym_record_declaration,
sym_enum_declaration,
STATE(392), 14,
sym_return_statement,
sym_if_statement,
sym_numeric_for_statement,
sym_generic_for_statement,
sym__for_statement,
sym_while_statement,
sym_repeat_statement,
sym_do_statement,
sym_var_declaration,
sym_type_declaration,
sym_var_assignment,
sym_function_statement,
sym_macroexp_statement,
sym_goto,
[11751] = 25,
ACTIONS(3), 1,
sym_comment,
ACTIONS(7), 1,
sym_identifier,
ACTIONS(11), 1,
anon_sym_COLON_COLON,
ACTIONS(13), 1,
anon_sym_return,
ACTIONS(15), 1,
anon_sym_LPAREN,
ACTIONS(17), 1,
sym_break,
ACTIONS(19), 1,
anon_sym_if,
ACTIONS(21), 1,
anon_sym_for,
ACTIONS(23), 1,
anon_sym_while,
ACTIONS(25), 1,
anon_sym_repeat,
ACTIONS(27), 1,
anon_sym_do,
ACTIONS(29), 1,
anon_sym_local,
ACTIONS(31), 1,
anon_sym_global,
ACTIONS(33), 1,
anon_sym_function,
ACTIONS(35), 1,
anon_sym_goto,
ACTIONS(571), 1,
anon_sym_end,
STATE(7), 1,
sym_index,
STATE(327), 1,
sym_function_call,
STATE(526), 1,
sym__var,
STATE(539), 1,
sym_method_index,
STATE(707), 1,
sym_assignment_variables,
STATE(151), 2,
sym__statement,
aux_sym_program_repeat1,
STATE(520), 2,
sym_parenthesized_expression,
sym__prefix_expression,
STATE(372), 3,
sym_interface_declaration,
sym_record_declaration,
sym_enum_declaration,
STATE(392), 14,
sym_return_statement,
sym_if_statement,
sym_numeric_for_statement,
sym_generic_for_statement,
sym__for_statement,
sym_while_statement,
sym_repeat_statement,
sym_do_statement,
sym_var_declaration,
sym_type_declaration,
sym_var_assignment,
sym_function_statement,
sym_macroexp_statement,
sym_goto,
[11844] = 25,
ACTIONS(3), 1,
sym_comment,
ACTIONS(7), 1,
sym_identifier,
ACTIONS(11), 1,
anon_sym_COLON_COLON,
ACTIONS(13), 1,
anon_sym_return,
ACTIONS(15), 1,
anon_sym_LPAREN,
ACTIONS(17), 1,
sym_break,
ACTIONS(19), 1,
anon_sym_if,
ACTIONS(21), 1,
anon_sym_for,
ACTIONS(23), 1,
anon_sym_while,
ACTIONS(25), 1,
anon_sym_repeat,
ACTIONS(27), 1,
anon_sym_do,
ACTIONS(29), 1,
anon_sym_local,
ACTIONS(31), 1,
anon_sym_global,
ACTIONS(33), 1,
anon_sym_function,
ACTIONS(35), 1,
anon_sym_goto,
ACTIONS(573), 1,
anon_sym_end,
STATE(7), 1,
sym_index,
STATE(327), 1,
sym_function_call,
STATE(526), 1,
sym__var,
STATE(539), 1,
sym_method_index,
STATE(707), 1,
sym_assignment_variables,
STATE(151), 2,
sym__statement,
aux_sym_program_repeat1,
STATE(520), 2,
sym_parenthesized_expression,
sym__prefix_expression,
STATE(372), 3,
sym_interface_declaration,
sym_record_declaration,
sym_enum_declaration,
STATE(392), 14,
sym_return_statement,
sym_if_statement,
sym_numeric_for_statement,
sym_generic_for_statement,
sym__for_statement,
sym_while_statement,
sym_repeat_statement,
sym_do_statement,
sym_var_declaration,
sym_type_declaration,
sym_var_assignment,
sym_function_statement,
sym_macroexp_statement,
sym_goto,
[11937] = 25,
ACTIONS(3), 1,
sym_comment,
ACTIONS(7), 1,
sym_identifier,
ACTIONS(11), 1,
anon_sym_COLON_COLON,
ACTIONS(13), 1,
anon_sym_return,
ACTIONS(15), 1,
anon_sym_LPAREN,
ACTIONS(17), 1,
sym_break,
ACTIONS(19), 1,
anon_sym_if,
ACTIONS(21), 1,
anon_sym_for,
ACTIONS(23), 1,
anon_sym_while,
ACTIONS(25), 1,
anon_sym_repeat,
ACTIONS(27), 1,
anon_sym_do,
ACTIONS(29), 1,
anon_sym_local,
ACTIONS(31), 1,
anon_sym_global,
ACTIONS(33), 1,
anon_sym_function,
ACTIONS(35), 1,
anon_sym_goto,
ACTIONS(575), 1,
anon_sym_end,
STATE(7), 1,
sym_index,
STATE(327), 1,
sym_function_call,
STATE(526), 1,
sym__var,
STATE(539), 1,
sym_method_index,
STATE(707), 1,
sym_assignment_variables,
STATE(151), 2,
sym__statement,
aux_sym_program_repeat1,
STATE(520), 2,
sym_parenthesized_expression,
sym__prefix_expression,
STATE(372), 3,
sym_interface_declaration,
sym_record_declaration,
sym_enum_declaration,
STATE(392), 14,
sym_return_statement,
sym_if_statement,
sym_numeric_for_statement,
sym_generic_for_statement,
sym__for_statement,
sym_while_statement,
sym_repeat_statement,
sym_do_statement,
sym_var_declaration,
sym_type_declaration,
sym_var_assignment,
sym_function_statement,
sym_macroexp_statement,
sym_goto,
[12030] = 6,
ACTIONS(3), 1,
sym_comment,
ACTIONS(577), 1,
anon_sym_LT,
ACTIONS(579), 1,
anon_sym_DOT,
STATE(184), 1,
sym_typearg_params,
ACTIONS(59), 13,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_EQ,
anon_sym_GT,
anon_sym_PIPE,
anon_sym_LBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DOT_DOT_DOT,
ACTIONS(61), 25,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[12085] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(577), 1,
anon_sym_LT,
STATE(181), 1,
sym_typearg_params,
ACTIONS(71), 13,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_EQ,
anon_sym_GT,
anon_sym_PIPE,
anon_sym_LBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DOT_DOT_DOT,
ACTIONS(73), 26,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_COLON,
anon_sym_DOT,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[12138] = 25,
ACTIONS(3), 1,
sym_comment,
ACTIONS(7), 1,
sym_identifier,
ACTIONS(11), 1,
anon_sym_COLON_COLON,
ACTIONS(13), 1,
anon_sym_return,
ACTIONS(15), 1,
anon_sym_LPAREN,
ACTIONS(17), 1,
sym_break,
ACTIONS(19), 1,
anon_sym_if,
ACTIONS(21), 1,
anon_sym_for,
ACTIONS(23), 1,
anon_sym_while,
ACTIONS(25), 1,
anon_sym_repeat,
ACTIONS(27), 1,
anon_sym_do,
ACTIONS(29), 1,
anon_sym_local,
ACTIONS(31), 1,
anon_sym_global,
ACTIONS(33), 1,
anon_sym_function,
ACTIONS(35), 1,
anon_sym_goto,
ACTIONS(581), 1,
anon_sym_end,
STATE(7), 1,
sym_index,
STATE(327), 1,
sym_function_call,
STATE(526), 1,
sym__var,
STATE(539), 1,
sym_method_index,
STATE(707), 1,
sym_assignment_variables,
STATE(169), 2,
sym__statement,
aux_sym_program_repeat1,
STATE(520), 2,
sym_parenthesized_expression,
sym__prefix_expression,
STATE(372), 3,
sym_interface_declaration,
sym_record_declaration,
sym_enum_declaration,
STATE(392), 14,
sym_return_statement,
sym_if_statement,
sym_numeric_for_statement,
sym_generic_for_statement,
sym__for_statement,
sym_while_statement,
sym_repeat_statement,
sym_do_statement,
sym_var_declaration,
sym_type_declaration,
sym_var_assignment,
sym_function_statement,
sym_macroexp_statement,
sym_goto,
[12231] = 25,
ACTIONS(3), 1,
sym_comment,
ACTIONS(7), 1,
sym_identifier,
ACTIONS(11), 1,
anon_sym_COLON_COLON,
ACTIONS(13), 1,
anon_sym_return,
ACTIONS(15), 1,
anon_sym_LPAREN,
ACTIONS(17), 1,
sym_break,
ACTIONS(19), 1,
anon_sym_if,
ACTIONS(21), 1,
anon_sym_for,
ACTIONS(23), 1,
anon_sym_while,
ACTIONS(25), 1,
anon_sym_repeat,
ACTIONS(27), 1,
anon_sym_do,
ACTIONS(29), 1,
anon_sym_local,
ACTIONS(31), 1,
anon_sym_global,
ACTIONS(33), 1,
anon_sym_function,
ACTIONS(35), 1,
anon_sym_goto,
ACTIONS(583), 1,
ts_builtin_sym_end,
STATE(7), 1,
sym_index,
STATE(327), 1,
sym_function_call,
STATE(526), 1,
sym__var,
STATE(539), 1,
sym_method_index,
STATE(707), 1,
sym_assignment_variables,
STATE(175), 2,
sym__statement,
aux_sym_program_repeat1,
STATE(520), 2,
sym_parenthesized_expression,
sym__prefix_expression,
STATE(372), 3,
sym_interface_declaration,
sym_record_declaration,
sym_enum_declaration,
STATE(392), 14,
sym_return_statement,
sym_if_statement,
sym_numeric_for_statement,
sym_generic_for_statement,
sym__for_statement,
sym_while_statement,
sym_repeat_statement,
sym_do_statement,
sym_var_declaration,
sym_type_declaration,
sym_var_assignment,
sym_function_statement,
sym_macroexp_statement,
sym_goto,
[12324] = 25,
ACTIONS(3), 1,
sym_comment,
ACTIONS(7), 1,
sym_identifier,
ACTIONS(11), 1,
anon_sym_COLON_COLON,
ACTIONS(13), 1,
anon_sym_return,
ACTIONS(15), 1,
anon_sym_LPAREN,
ACTIONS(17), 1,
sym_break,
ACTIONS(19), 1,
anon_sym_if,
ACTIONS(21), 1,
anon_sym_for,
ACTIONS(23), 1,
anon_sym_while,
ACTIONS(25), 1,
anon_sym_repeat,
ACTIONS(27), 1,
anon_sym_do,
ACTIONS(29), 1,
anon_sym_local,
ACTIONS(31), 1,
anon_sym_global,
ACTIONS(33), 1,
anon_sym_function,
ACTIONS(35), 1,
anon_sym_goto,
ACTIONS(583), 1,
ts_builtin_sym_end,
STATE(7), 1,
sym_index,
STATE(327), 1,
sym_function_call,
STATE(526), 1,
sym__var,
STATE(539), 1,
sym_method_index,
STATE(707), 1,
sym_assignment_variables,
STATE(151), 2,
sym__statement,
aux_sym_program_repeat1,
STATE(520), 2,
sym_parenthesized_expression,
sym__prefix_expression,
STATE(372), 3,
sym_interface_declaration,
sym_record_declaration,
sym_enum_declaration,
STATE(392), 14,
sym_return_statement,
sym_if_statement,
sym_numeric_for_statement,
sym_generic_for_statement,
sym__for_statement,
sym_while_statement,
sym_repeat_statement,
sym_do_statement,
sym_var_declaration,
sym_type_declaration,
sym_var_assignment,
sym_function_statement,
sym_macroexp_statement,
sym_goto,
[12417] = 25,
ACTIONS(3), 1,
sym_comment,
ACTIONS(7), 1,
sym_identifier,
ACTIONS(11), 1,
anon_sym_COLON_COLON,
ACTIONS(13), 1,
anon_sym_return,
ACTIONS(15), 1,
anon_sym_LPAREN,
ACTIONS(17), 1,
sym_break,
ACTIONS(19), 1,
anon_sym_if,
ACTIONS(21), 1,
anon_sym_for,
ACTIONS(23), 1,
anon_sym_while,
ACTIONS(25), 1,
anon_sym_repeat,
ACTIONS(27), 1,
anon_sym_do,
ACTIONS(29), 1,
anon_sym_local,
ACTIONS(31), 1,
anon_sym_global,
ACTIONS(33), 1,
anon_sym_function,
ACTIONS(35), 1,
anon_sym_goto,
ACTIONS(585), 1,
ts_builtin_sym_end,
STATE(7), 1,
sym_index,
STATE(327), 1,
sym_function_call,
STATE(526), 1,
sym__var,
STATE(539), 1,
sym_method_index,
STATE(707), 1,
sym_assignment_variables,
STATE(151), 2,
sym__statement,
aux_sym_program_repeat1,
STATE(520), 2,
sym_parenthesized_expression,
sym__prefix_expression,
STATE(372), 3,
sym_interface_declaration,
sym_record_declaration,
sym_enum_declaration,
STATE(392), 14,
sym_return_statement,
sym_if_statement,
sym_numeric_for_statement,
sym_generic_for_statement,
sym__for_statement,
sym_while_statement,
sym_repeat_statement,
sym_do_statement,
sym_var_declaration,
sym_type_declaration,
sym_var_assignment,
sym_function_statement,
sym_macroexp_statement,
sym_goto,
[12510] = 7,
ACTIONS(3), 1,
sym_comment,
ACTIONS(587), 1,
anon_sym_LPAREN,
ACTIONS(589), 1,
anon_sym_LT,
STATE(210), 1,
sym_typeargs,
STATE(213), 1,
sym_function_type_args,
ACTIONS(229), 11,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_RPAREN,
anon_sym_EQ,
anon_sym_PIPE,
anon_sym_LBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DOT_DOT_DOT,
ACTIONS(231), 25,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[12566] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(579), 1,
anon_sym_DOT,
ACTIONS(87), 13,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_EQ,
anon_sym_GT,
anon_sym_PIPE,
anon_sym_LBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DOT_DOT_DOT,
ACTIONS(89), 25,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[12615] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(119), 13,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_EQ,
anon_sym_GT,
anon_sym_PIPE,
anon_sym_LBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DOT_DOT_DOT,
ACTIONS(121), 26,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_COLON,
anon_sym_DOT,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[12662] = 7,
ACTIONS(3), 1,
sym_comment,
ACTIONS(293), 1,
anon_sym_LPAREN,
ACTIONS(591), 1,
anon_sym_LT,
STATE(214), 1,
sym_typeargs,
STATE(226), 1,
sym_function_type_args,
ACTIONS(229), 10,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_RPAREN,
anon_sym_EQ,
anon_sym_PIPE,
anon_sym_LBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(231), 25,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[12717] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(111), 13,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_EQ,
anon_sym_GT,
anon_sym_PIPE,
anon_sym_LBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DOT_DOT_DOT,
ACTIONS(113), 26,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_COLON,
anon_sym_DOT,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[12764] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(79), 13,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_EQ,
anon_sym_GT,
anon_sym_PIPE,
anon_sym_LBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DOT_DOT_DOT,
ACTIONS(81), 26,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_COLON,
anon_sym_DOT,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[12811] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(213), 13,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_EQ,
anon_sym_GT,
anon_sym_PIPE,
anon_sym_LBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DOT_DOT_DOT,
ACTIONS(215), 25,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[12857] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(193), 13,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_EQ,
anon_sym_GT,
anon_sym_PIPE,
anon_sym_LBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DOT_DOT_DOT,
ACTIONS(195), 25,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[12903] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(225), 13,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_EQ,
anon_sym_GT,
anon_sym_PIPE,
anon_sym_LBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DOT_DOT_DOT,
ACTIONS(227), 25,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[12949] = 7,
ACTIONS(3), 1,
sym_comment,
ACTIONS(593), 1,
anon_sym_COMMA,
ACTIONS(596), 1,
anon_sym_PIPE,
ACTIONS(598), 1,
anon_sym_DOT_DOT_DOT,
STATE(192), 1,
aux_sym_type_tuple_repeat1,
ACTIONS(263), 9,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_EQ,
anon_sym_LBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(265), 25,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[13003] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(165), 13,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_EQ,
anon_sym_GT,
anon_sym_PIPE,
anon_sym_LBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DOT_DOT_DOT,
ACTIONS(167), 25,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[13049] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(189), 13,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_EQ,
anon_sym_GT,
anon_sym_PIPE,
anon_sym_LBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DOT_DOT_DOT,
ACTIONS(191), 25,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[13095] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(107), 13,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_EQ,
anon_sym_GT,
anon_sym_PIPE,
anon_sym_LBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DOT_DOT_DOT,
ACTIONS(109), 25,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[13141] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(209), 13,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_EQ,
anon_sym_GT,
anon_sym_PIPE,
anon_sym_LBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DOT_DOT_DOT,
ACTIONS(211), 25,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[13187] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(201), 13,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_EQ,
anon_sym_GT,
anon_sym_PIPE,
anon_sym_LBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DOT_DOT_DOT,
ACTIONS(203), 25,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[13233] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(87), 13,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_EQ,
anon_sym_GT,
anon_sym_PIPE,
anon_sym_LBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DOT_DOT_DOT,
ACTIONS(89), 25,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[13279] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(600), 1,
anon_sym_COMMA,
STATE(211), 1,
aux_sym_type_tuple_repeat1,
ACTIONS(286), 11,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_EQ,
anon_sym_PIPE,
anon_sym_LBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DOT_DOT_DOT,
ACTIONS(288), 25,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[13329] = 22,
ACTIONS(3), 1,
sym_comment,
ACTIONS(15), 1,
anon_sym_LPAREN,
ACTIONS(403), 1,
anon_sym_not,
ACTIONS(407), 1,
anon_sym_LBRACE,
ACTIONS(409), 1,
anon_sym_function,
ACTIONS(411), 1,
anon_sym_DOT_DOT_DOT,
ACTIONS(413), 1,
aux_sym_number_token1,
ACTIONS(421), 1,
sym__long_string_start,
ACTIONS(423), 1,
sym__short_string_start,
ACTIONS(603), 1,
sym_identifier,
ACTIONS(607), 1,
anon_sym_LBRACK,
ACTIONS(609), 1,
anon_sym_RBRACE,
ACTIONS(611), 1,
sym_nil,
STATE(7), 1,
sym_index,
STATE(539), 1,
sym_method_index,
STATE(572), 1,
sym_table_entry,
ACTIONS(415), 2,
aux_sym_number_token2,
aux_sym_number_token3,
ACTIONS(417), 2,
anon_sym_true,
anon_sym_false,
ACTIONS(605), 2,
anon_sym_SEMI,
anon_sym_COMMA,
ACTIONS(405), 3,
anon_sym_POUND,
anon_sym_DASH,
anon_sym_TILDE,
STATE(2), 4,
sym_parenthesized_expression,
sym__prefix_expression,
sym_function_call,
sym__var,
STATE(330), 10,
sym__expression,
sym_unary_op,
sym_bin_op,
sym_type_cast,
sym_table_constructor,
sym_anon_function,
sym_varargs,
sym_number,
sym_boolean,
sym_string,
[13413] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(221), 13,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_EQ,
anon_sym_GT,
anon_sym_PIPE,
anon_sym_LBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DOT_DOT_DOT,
ACTIONS(223), 25,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[13459] = 7,
ACTIONS(3), 1,
sym_comment,
ACTIONS(272), 1,
anon_sym_DOT_DOT_DOT,
ACTIONS(596), 1,
anon_sym_PIPE,
ACTIONS(613), 1,
anon_sym_COMMA,
STATE(216), 1,
aux_sym_type_tuple_repeat1,
ACTIONS(263), 9,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_EQ,
anon_sym_LBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(265), 25,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[13513] = 22,
ACTIONS(3), 1,
sym_comment,
ACTIONS(15), 1,
anon_sym_LPAREN,
ACTIONS(403), 1,
anon_sym_not,
ACTIONS(407), 1,
anon_sym_LBRACE,
ACTIONS(409), 1,
anon_sym_function,
ACTIONS(411), 1,
anon_sym_DOT_DOT_DOT,
ACTIONS(413), 1,
aux_sym_number_token1,
ACTIONS(421), 1,
sym__long_string_start,
ACTIONS(423), 1,
sym__short_string_start,
ACTIONS(603), 1,
sym_identifier,
ACTIONS(607), 1,
anon_sym_LBRACK,
ACTIONS(611), 1,
sym_nil,
ACTIONS(618), 1,
anon_sym_RBRACE,
STATE(7), 1,
sym_index,
STATE(539), 1,
sym_method_index,
STATE(595), 1,
sym_table_entry,
ACTIONS(415), 2,
aux_sym_number_token2,
aux_sym_number_token3,
ACTIONS(417), 2,
anon_sym_true,
anon_sym_false,
ACTIONS(616), 2,
anon_sym_SEMI,
anon_sym_COMMA,
ACTIONS(405), 3,
anon_sym_POUND,
anon_sym_DASH,
anon_sym_TILDE,
STATE(2), 4,
sym_parenthesized_expression,
sym__prefix_expression,
sym_function_call,
sym__var,
STATE(330), 10,
sym__expression,
sym_unary_op,
sym_bin_op,
sym_type_cast,
sym_table_constructor,
sym_anon_function,
sym_varargs,
sym_number,
sym_boolean,
sym_string,
[13597] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(239), 13,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_EQ,
anon_sym_GT,
anon_sym_PIPE,
anon_sym_LBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DOT_DOT_DOT,
ACTIONS(241), 25,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[13643] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(205), 13,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_EQ,
anon_sym_GT,
anon_sym_PIPE,
anon_sym_LBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DOT_DOT_DOT,
ACTIONS(207), 25,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[13689] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(161), 13,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_EQ,
anon_sym_GT,
anon_sym_PIPE,
anon_sym_LBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DOT_DOT_DOT,
ACTIONS(163), 25,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[13735] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(217), 13,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_EQ,
anon_sym_GT,
anon_sym_PIPE,
anon_sym_LBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DOT_DOT_DOT,
ACTIONS(219), 25,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[13781] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(243), 13,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_EQ,
anon_sym_GT,
anon_sym_PIPE,
anon_sym_LBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DOT_DOT_DOT,
ACTIONS(245), 25,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[13827] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(149), 13,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_EQ,
anon_sym_GT,
anon_sym_PIPE,
anon_sym_LBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DOT_DOT_DOT,
ACTIONS(151), 25,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[13873] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(153), 13,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_EQ,
anon_sym_GT,
anon_sym_PIPE,
anon_sym_LBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DOT_DOT_DOT,
ACTIONS(155), 25,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[13919] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(157), 13,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_EQ,
anon_sym_GT,
anon_sym_PIPE,
anon_sym_LBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DOT_DOT_DOT,
ACTIONS(159), 25,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[13965] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(169), 13,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_EQ,
anon_sym_GT,
anon_sym_PIPE,
anon_sym_LBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DOT_DOT_DOT,
ACTIONS(171), 25,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[14011] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(173), 13,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_EQ,
anon_sym_GT,
anon_sym_PIPE,
anon_sym_LBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DOT_DOT_DOT,
ACTIONS(175), 25,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[14057] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(177), 13,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_EQ,
anon_sym_GT,
anon_sym_PIPE,
anon_sym_LBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DOT_DOT_DOT,
ACTIONS(179), 25,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[14103] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(181), 13,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_EQ,
anon_sym_GT,
anon_sym_PIPE,
anon_sym_LBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DOT_DOT_DOT,
ACTIONS(183), 25,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[14149] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(185), 13,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_EQ,
anon_sym_GT,
anon_sym_PIPE,
anon_sym_LBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DOT_DOT_DOT,
ACTIONS(187), 25,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[14195] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(587), 1,
anon_sym_LPAREN,
STATE(220), 1,
sym_function_type_args,
ACTIONS(247), 11,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_RPAREN,
anon_sym_EQ,
anon_sym_PIPE,
anon_sym_LBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DOT_DOT_DOT,
ACTIONS(249), 25,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[14245] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(620), 1,
anon_sym_COMMA,
STATE(211), 1,
aux_sym_type_tuple_repeat1,
ACTIONS(274), 11,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_EQ,
anon_sym_PIPE,
anon_sym_LBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DOT_DOT_DOT,
ACTIONS(276), 25,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[14295] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(197), 13,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_EQ,
anon_sym_GT,
anon_sym_PIPE,
anon_sym_LBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DOT_DOT_DOT,
ACTIONS(199), 25,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[14341] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(623), 1,
anon_sym_COLON,
ACTIONS(251), 12,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_EQ,
anon_sym_PIPE,
anon_sym_LBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DOT_DOT_DOT,
ACTIONS(253), 24,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[14388] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(293), 1,
anon_sym_LPAREN,
STATE(224), 1,
sym_function_type_args,
ACTIONS(247), 10,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_RPAREN,
anon_sym_EQ,
anon_sym_PIPE,
anon_sym_LBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(249), 25,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[14437] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(596), 1,
anon_sym_PIPE,
ACTIONS(598), 1,
anon_sym_DOT_DOT_DOT,
ACTIONS(274), 10,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_EQ,
anon_sym_LBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(276), 25,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[14486] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(625), 1,
anon_sym_COMMA,
STATE(218), 1,
aux_sym_type_tuple_repeat1,
ACTIONS(286), 10,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_EQ,
anon_sym_PIPE,
anon_sym_LBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(288), 25,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[14535] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(596), 1,
anon_sym_PIPE,
ACTIONS(274), 11,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_EQ,
anon_sym_LBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DOT_DOT_DOT,
ACTIONS(276), 25,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[14582] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(628), 1,
anon_sym_COMMA,
STATE(218), 1,
aux_sym_type_tuple_repeat1,
ACTIONS(274), 10,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_EQ,
anon_sym_PIPE,
anon_sym_LBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(276), 25,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[14631] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(272), 1,
anon_sym_DOT_DOT_DOT,
ACTIONS(596), 1,
anon_sym_PIPE,
ACTIONS(274), 10,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_EQ,
anon_sym_LBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(276), 25,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[14680] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(631), 1,
anon_sym_COLON,
ACTIONS(257), 12,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_EQ,
anon_sym_PIPE,
anon_sym_LBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DOT_DOT_DOT,
ACTIONS(259), 24,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[14727] = 21,
ACTIONS(3), 1,
sym_comment,
ACTIONS(15), 1,
anon_sym_LPAREN,
ACTIONS(403), 1,
anon_sym_not,
ACTIONS(407), 1,
anon_sym_LBRACE,
ACTIONS(409), 1,
anon_sym_function,
ACTIONS(411), 1,
anon_sym_DOT_DOT_DOT,
ACTIONS(413), 1,
aux_sym_number_token1,
ACTIONS(421), 1,
sym__long_string_start,
ACTIONS(423), 1,
sym__short_string_start,
ACTIONS(603), 1,
sym_identifier,
ACTIONS(607), 1,
anon_sym_LBRACK,
ACTIONS(611), 1,
sym_nil,
ACTIONS(633), 1,
anon_sym_RBRACE,
STATE(7), 1,
sym_index,
STATE(539), 1,
sym_method_index,
STATE(633), 1,
sym_table_entry,
ACTIONS(415), 2,
aux_sym_number_token2,
aux_sym_number_token3,
ACTIONS(417), 2,
anon_sym_true,
anon_sym_false,
ACTIONS(405), 3,
anon_sym_POUND,
anon_sym_DASH,
anon_sym_TILDE,
STATE(2), 4,
sym_parenthesized_expression,
sym__prefix_expression,
sym_function_call,
sym__var,
STATE(330), 10,
sym__expression,
sym_unary_op,
sym_bin_op,
sym_type_cast,
sym_table_constructor,
sym_anon_function,
sym_varargs,
sym_number,
sym_boolean,
sym_string,
[14807] = 21,
ACTIONS(3), 1,
sym_comment,
ACTIONS(15), 1,
anon_sym_LPAREN,
ACTIONS(403), 1,
anon_sym_not,
ACTIONS(407), 1,
anon_sym_LBRACE,
ACTIONS(409), 1,
anon_sym_function,
ACTIONS(411), 1,
anon_sym_DOT_DOT_DOT,
ACTIONS(413), 1,
aux_sym_number_token1,
ACTIONS(421), 1,
sym__long_string_start,
ACTIONS(423), 1,
sym__short_string_start,
ACTIONS(603), 1,
sym_identifier,
ACTIONS(607), 1,
anon_sym_LBRACK,
ACTIONS(611), 1,
sym_nil,
ACTIONS(635), 1,
anon_sym_RBRACE,
STATE(7), 1,
sym_index,
STATE(539), 1,
sym_method_index,
STATE(633), 1,
sym_table_entry,
ACTIONS(415), 2,
aux_sym_number_token2,
aux_sym_number_token3,
ACTIONS(417), 2,
anon_sym_true,
anon_sym_false,
ACTIONS(405), 3,
anon_sym_POUND,
anon_sym_DASH,
anon_sym_TILDE,
STATE(2), 4,
sym_parenthesized_expression,
sym__prefix_expression,
sym_function_call,
sym__var,
STATE(330), 10,
sym__expression,
sym_unary_op,
sym_bin_op,
sym_type_cast,
sym_table_constructor,
sym_anon_function,
sym_varargs,
sym_number,
sym_boolean,
sym_string,
[14887] = 21,
ACTIONS(3), 1,
sym_comment,
ACTIONS(15), 1,
anon_sym_LPAREN,
ACTIONS(403), 1,
anon_sym_not,
ACTIONS(407), 1,
anon_sym_LBRACE,
ACTIONS(409), 1,
anon_sym_function,
ACTIONS(411), 1,
anon_sym_DOT_DOT_DOT,
ACTIONS(413), 1,
aux_sym_number_token1,
ACTIONS(421), 1,
sym__long_string_start,
ACTIONS(423), 1,
sym__short_string_start,
ACTIONS(603), 1,
sym_identifier,
ACTIONS(607), 1,
anon_sym_LBRACK,
ACTIONS(611), 1,
sym_nil,
ACTIONS(637), 1,
anon_sym_RBRACE,
STATE(7), 1,
sym_index,
STATE(539), 1,
sym_method_index,
STATE(633), 1,
sym_table_entry,
ACTIONS(415), 2,
aux_sym_number_token2,
aux_sym_number_token3,
ACTIONS(417), 2,
anon_sym_true,
anon_sym_false,
ACTIONS(405), 3,
anon_sym_POUND,
anon_sym_DASH,
anon_sym_TILDE,
STATE(2), 4,
sym_parenthesized_expression,
sym__prefix_expression,
sym_function_call,
sym__var,
STATE(330), 10,
sym__expression,
sym_unary_op,
sym_bin_op,
sym_type_cast,
sym_table_constructor,
sym_anon_function,
sym_varargs,
sym_number,
sym_boolean,
sym_string,
[14967] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(639), 1,
anon_sym_COLON,
ACTIONS(257), 11,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_EQ,
anon_sym_PIPE,
anon_sym_LBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(259), 24,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[15013] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(641), 1,
anon_sym_PIPE,
ACTIONS(274), 10,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_EQ,
anon_sym_LBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(276), 25,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[15059] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(643), 1,
anon_sym_COLON,
ACTIONS(251), 11,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_EQ,
anon_sym_PIPE,
anon_sym_LBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
ACTIONS(253), 24,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_where,
anon_sym_goto,
sym_identifier,
[15105] = 21,
ACTIONS(3), 1,
sym_comment,
ACTIONS(15), 1,
anon_sym_LPAREN,
ACTIONS(403), 1,
anon_sym_not,
ACTIONS(407), 1,
anon_sym_LBRACE,
ACTIONS(409), 1,
anon_sym_function,
ACTIONS(411), 1,
anon_sym_DOT_DOT_DOT,
ACTIONS(413), 1,
aux_sym_number_token1,
ACTIONS(421), 1,
sym__long_string_start,
ACTIONS(423), 1,
sym__short_string_start,
ACTIONS(603), 1,
sym_identifier,
ACTIONS(607), 1,
anon_sym_LBRACK,
ACTIONS(611), 1,
sym_nil,
ACTIONS(645), 1,
anon_sym_RBRACE,
STATE(7), 1,
sym_index,
STATE(539), 1,
sym_method_index,
STATE(633), 1,
sym_table_entry,
ACTIONS(415), 2,
aux_sym_number_token2,
aux_sym_number_token3,
ACTIONS(417), 2,
anon_sym_true,
anon_sym_false,
ACTIONS(405), 3,
anon_sym_POUND,
anon_sym_DASH,
anon_sym_TILDE,
STATE(2), 4,
sym_parenthesized_expression,
sym__prefix_expression,
sym_function_call,
sym__var,
STATE(330), 10,
sym__expression,
sym_unary_op,
sym_bin_op,
sym_type_cast,
sym_table_constructor,
sym_anon_function,
sym_varargs,
sym_number,
sym_boolean,
sym_string,
[15185] = 7,
ACTIONS(3), 1,
sym_comment,
ACTIONS(293), 1,
anon_sym_LPAREN,
ACTIONS(591), 1,
anon_sym_LT,
STATE(270), 1,
sym_function_type_args,
STATE(273), 1,
sym_typeargs,
ACTIONS(229), 8,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_RPAREN,
anon_sym_EQ,
anon_sym_PIPE,
anon_sym_LBRACK,
anon_sym_RBRACE,
ACTIONS(231), 23,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[15236] = 20,
ACTIONS(3), 1,
sym_comment,
ACTIONS(15), 1,
anon_sym_LPAREN,
ACTIONS(403), 1,
anon_sym_not,
ACTIONS(407), 1,
anon_sym_LBRACE,
ACTIONS(409), 1,
anon_sym_function,
ACTIONS(411), 1,
anon_sym_DOT_DOT_DOT,
ACTIONS(413), 1,
aux_sym_number_token1,
ACTIONS(421), 1,
sym__long_string_start,
ACTIONS(423), 1,
sym__short_string_start,
ACTIONS(603), 1,
sym_identifier,
ACTIONS(607), 1,
anon_sym_LBRACK,
ACTIONS(611), 1,
sym_nil,
STATE(7), 1,
sym_index,
STATE(539), 1,
sym_method_index,
STATE(633), 1,
sym_table_entry,
ACTIONS(415), 2,
aux_sym_number_token2,
aux_sym_number_token3,
ACTIONS(417), 2,
anon_sym_true,
anon_sym_false,
ACTIONS(405), 3,
anon_sym_POUND,
anon_sym_DASH,
anon_sym_TILDE,
STATE(2), 4,
sym_parenthesized_expression,
sym__prefix_expression,
sym_function_call,
sym__var,
STATE(330), 10,
sym__expression,
sym_unary_op,
sym_bin_op,
sym_type_cast,
sym_table_constructor,
sym_anon_function,
sym_varargs,
sym_number,
sym_boolean,
sym_string,
[15313] = 7,
ACTIONS(3), 1,
sym_comment,
ACTIONS(272), 1,
anon_sym_DOT_DOT_DOT,
ACTIONS(596), 1,
anon_sym_PIPE,
ACTIONS(647), 1,
anon_sym_COMMA,
STATE(236), 1,
aux_sym_type_tuple_repeat1,
ACTIONS(263), 8,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_EQ,
anon_sym_LBRACK,
anon_sym_RBRACE,
ACTIONS(265), 23,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[15364] = 19,
ACTIONS(3), 1,
sym_comment,
ACTIONS(15), 1,
anon_sym_LPAREN,
ACTIONS(397), 1,
sym_identifier,
ACTIONS(403), 1,
anon_sym_not,
ACTIONS(407), 1,
anon_sym_LBRACE,
ACTIONS(409), 1,
anon_sym_function,
ACTIONS(411), 1,
anon_sym_DOT_DOT_DOT,
ACTIONS(413), 1,
aux_sym_number_token1,
ACTIONS(421), 1,
sym__long_string_start,
ACTIONS(423), 1,
sym__short_string_start,
ACTIONS(649), 1,
sym_nil,
STATE(7), 1,
sym_index,
STATE(393), 1,
sym_expressions,
STATE(539), 1,
sym_method_index,
ACTIONS(415), 2,
aux_sym_number_token2,
aux_sym_number_token3,
ACTIONS(417), 2,
anon_sym_true,
anon_sym_false,
ACTIONS(405), 3,
anon_sym_POUND,
anon_sym_DASH,
anon_sym_TILDE,
STATE(2), 4,
sym_parenthesized_expression,
sym__prefix_expression,
sym_function_call,
sym__var,
STATE(153), 10,
sym__expression,
sym_unary_op,
sym_bin_op,
sym_type_cast,
sym_table_constructor,
sym_anon_function,
sym_varargs,
sym_number,
sym_boolean,
sym_string,
[15438] = 19,
ACTIONS(3), 1,
sym_comment,
ACTIONS(397), 1,
sym_identifier,
ACTIONS(399), 1,
anon_sym_end,
ACTIONS(403), 1,
anon_sym_not,
ACTIONS(407), 1,
anon_sym_LBRACE,
ACTIONS(409), 1,
anon_sym_function,
ACTIONS(411), 1,
anon_sym_DOT_DOT_DOT,
ACTIONS(413), 1,
aux_sym_number_token1,
ACTIONS(419), 1,
sym_nil,
ACTIONS(421), 1,
sym__long_string_start,
ACTIONS(423), 1,
sym__short_string_start,
ACTIONS(651), 1,
anon_sym_LPAREN,
STATE(7), 1,
sym_index,
STATE(539), 1,
sym_method_index,
ACTIONS(415), 2,
aux_sym_number_token2,
aux_sym_number_token3,
ACTIONS(417), 2,
anon_sym_true,
anon_sym_false,
ACTIONS(405), 3,
anon_sym_POUND,
anon_sym_DASH,
anon_sym_TILDE,
STATE(2), 4,
sym_parenthesized_expression,
sym__prefix_expression,
sym_function_call,
sym__var,
STATE(152), 10,
sym__expression,
sym_unary_op,
sym_bin_op,
sym_type_cast,
sym_table_constructor,
sym_anon_function,
sym_varargs,
sym_number,
sym_boolean,
sym_string,
[15512] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(653), 1,
anon_sym_EQ,
ACTIONS(655), 1,
anon_sym_COLON,
ACTIONS(77), 5,
anon_sym_TILDE,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_DOT,
ACTIONS(75), 27,
sym__long_string_start,
sym__short_string_start,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_DASH,
anon_sym_or,
anon_sym_and,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_is,
anon_sym_as,
anon_sym_LBRACK,
anon_sym_LBRACE,
anon_sym_RBRACE,
[15558] = 19,
ACTIONS(3), 1,
sym_comment,
ACTIONS(15), 1,
anon_sym_LPAREN,
ACTIONS(397), 1,
sym_identifier,
ACTIONS(403), 1,
anon_sym_not,
ACTIONS(407), 1,
anon_sym_LBRACE,
ACTIONS(409), 1,
anon_sym_function,
ACTIONS(411), 1,
anon_sym_DOT_DOT_DOT,
ACTIONS(413), 1,
aux_sym_number_token1,
ACTIONS(421), 1,
sym__long_string_start,
ACTIONS(423), 1,
sym__short_string_start,
ACTIONS(649), 1,
sym_nil,
STATE(7), 1,
sym_index,
STATE(395), 1,
sym_expressions,
STATE(539), 1,
sym_method_index,
ACTIONS(415), 2,
aux_sym_number_token2,
aux_sym_number_token3,
ACTIONS(417), 2,
anon_sym_true,
anon_sym_false,
ACTIONS(405), 3,
anon_sym_POUND,
anon_sym_DASH,
anon_sym_TILDE,
STATE(2), 4,
sym_parenthesized_expression,
sym__prefix_expression,
sym_function_call,
sym__var,
STATE(153), 10,
sym__expression,
sym_unary_op,
sym_bin_op,
sym_type_cast,
sym_table_constructor,
sym_anon_function,
sym_varargs,
sym_number,
sym_boolean,
sym_string,
[15632] = 19,
ACTIONS(3), 1,
sym_comment,
ACTIONS(15), 1,
anon_sym_LPAREN,
ACTIONS(397), 1,
sym_identifier,
ACTIONS(403), 1,
anon_sym_not,
ACTIONS(407), 1,
anon_sym_LBRACE,
ACTIONS(409), 1,
anon_sym_function,
ACTIONS(411), 1,
anon_sym_DOT_DOT_DOT,
ACTIONS(413), 1,
aux_sym_number_token1,
ACTIONS(421), 1,
sym__long_string_start,
ACTIONS(423), 1,
sym__short_string_start,
ACTIONS(658), 1,
anon_sym_RPAREN,
ACTIONS(660), 1,
sym_nil,
STATE(7), 1,
sym_index,
STATE(539), 1,
sym_method_index,
ACTIONS(415), 2,
aux_sym_number_token2,
aux_sym_number_token3,
ACTIONS(417), 2,
anon_sym_true,
anon_sym_false,
ACTIONS(405), 3,
anon_sym_POUND,
anon_sym_DASH,
anon_sym_TILDE,
STATE(2), 4,
sym_parenthesized_expression,
sym__prefix_expression,
sym_function_call,
sym__var,
STATE(329), 10,
sym__expression,
sym_unary_op,
sym_bin_op,
sym_type_cast,
sym_table_constructor,
sym_anon_function,
sym_varargs,
sym_number,
sym_boolean,
sym_string,
[15706] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(662), 1,
anon_sym_COMMA,
STATE(218), 1,
aux_sym_type_tuple_repeat1,
ACTIONS(286), 9,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_EQ,
anon_sym_PIPE,
anon_sym_LBRACK,
anon_sym_RBRACE,
ACTIONS(288), 23,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[15752] = 19,
ACTIONS(3), 1,
sym_comment,
ACTIONS(15), 1,
anon_sym_LPAREN,
ACTIONS(397), 1,
sym_identifier,
ACTIONS(403), 1,
anon_sym_not,
ACTIONS(407), 1,
anon_sym_LBRACE,
ACTIONS(409), 1,
anon_sym_function,
ACTIONS(411), 1,
anon_sym_DOT_DOT_DOT,
ACTIONS(413), 1,
aux_sym_number_token1,
ACTIONS(421), 1,
sym__long_string_start,
ACTIONS(423), 1,
sym__short_string_start,
ACTIONS(649), 1,
sym_nil,
STATE(7), 1,
sym_index,
STATE(374), 1,
sym_expressions,
STATE(539), 1,
sym_method_index,
ACTIONS(415), 2,
aux_sym_number_token2,
aux_sym_number_token3,
ACTIONS(417), 2,
anon_sym_true,
anon_sym_false,
ACTIONS(405), 3,
anon_sym_POUND,
anon_sym_DASH,
anon_sym_TILDE,
STATE(2), 4,
sym_parenthesized_expression,
sym__prefix_expression,
sym_function_call,
sym__var,
STATE(153), 10,
sym__expression,
sym_unary_op,
sym_bin_op,
sym_type_cast,
sym_table_constructor,
sym_anon_function,
sym_varargs,
sym_number,
sym_boolean,
sym_string,
[15826] = 18,
ACTIONS(3), 1,
sym_comment,
ACTIONS(15), 1,
anon_sym_LPAREN,
ACTIONS(397), 1,
sym_identifier,
ACTIONS(407), 1,
anon_sym_LBRACE,
ACTIONS(409), 1,
anon_sym_function,
ACTIONS(411), 1,
anon_sym_DOT_DOT_DOT,
ACTIONS(413), 1,
aux_sym_number_token1,
ACTIONS(421), 1,
sym__long_string_start,
ACTIONS(423), 1,
sym__short_string_start,
ACTIONS(664), 1,
anon_sym_not,
ACTIONS(668), 1,
sym_nil,
STATE(7), 1,
sym_index,
STATE(539), 1,
sym_method_index,
ACTIONS(415), 2,
aux_sym_number_token2,
aux_sym_number_token3,
ACTIONS(417), 2,
anon_sym_true,
anon_sym_false,
ACTIONS(666), 3,
anon_sym_POUND,
anon_sym_DASH,
anon_sym_TILDE,
STATE(2), 4,
sym_parenthesized_expression,
sym__prefix_expression,
sym_function_call,
sym__var,
STATE(335), 10,
sym__expression,
sym_unary_op,
sym_bin_op,
sym_type_cast,
sym_table_constructor,
sym_anon_function,
sym_varargs,
sym_number,
sym_boolean,
sym_string,
[15897] = 18,
ACTIONS(3), 1,
sym_comment,
ACTIONS(15), 1,
anon_sym_LPAREN,
ACTIONS(397), 1,
sym_identifier,
ACTIONS(407), 1,
anon_sym_LBRACE,
ACTIONS(409), 1,
anon_sym_function,
ACTIONS(411), 1,
anon_sym_DOT_DOT_DOT,
ACTIONS(413), 1,
aux_sym_number_token1,
ACTIONS(421), 1,
sym__long_string_start,
ACTIONS(423), 1,
sym__short_string_start,
ACTIONS(664), 1,
anon_sym_not,
ACTIONS(670), 1,
sym_nil,
STATE(7), 1,
sym_index,
STATE(539), 1,
sym_method_index,
ACTIONS(415), 2,
aux_sym_number_token2,
aux_sym_number_token3,
ACTIONS(417), 2,
anon_sym_true,
anon_sym_false,
ACTIONS(666), 3,
anon_sym_POUND,
anon_sym_DASH,
anon_sym_TILDE,
STATE(2), 4,
sym_parenthesized_expression,
sym__prefix_expression,
sym_function_call,
sym__var,
STATE(130), 10,
sym__expression,
sym_unary_op,
sym_bin_op,
sym_type_cast,
sym_table_constructor,
sym_anon_function,
sym_varargs,
sym_number,
sym_boolean,
sym_string,
[15968] = 18,
ACTIONS(3), 1,
sym_comment,
ACTIONS(15), 1,
anon_sym_LPAREN,
ACTIONS(397), 1,
sym_identifier,
ACTIONS(407), 1,
anon_sym_LBRACE,
ACTIONS(409), 1,
anon_sym_function,
ACTIONS(411), 1,
anon_sym_DOT_DOT_DOT,
ACTIONS(413), 1,
aux_sym_number_token1,
ACTIONS(421), 1,
sym__long_string_start,
ACTIONS(423), 1,
sym__short_string_start,
ACTIONS(664), 1,
anon_sym_not,
ACTIONS(672), 1,
sym_nil,
STATE(7), 1,
sym_index,
STATE(539), 1,
sym_method_index,
ACTIONS(415), 2,
aux_sym_number_token2,
aux_sym_number_token3,
ACTIONS(417), 2,
anon_sym_true,
anon_sym_false,
ACTIONS(666), 3,
anon_sym_POUND,
anon_sym_DASH,
anon_sym_TILDE,
STATE(2), 4,
sym_parenthesized_expression,
sym__prefix_expression,
sym_function_call,
sym__var,
STATE(159), 10,
sym__expression,
sym_unary_op,
sym_bin_op,
sym_type_cast,
sym_table_constructor,
sym_anon_function,
sym_varargs,
sym_number,
sym_boolean,
sym_string,
[16039] = 18,
ACTIONS(3), 1,
sym_comment,
ACTIONS(15), 1,
anon_sym_LPAREN,
ACTIONS(397), 1,
sym_identifier,
ACTIONS(407), 1,
anon_sym_LBRACE,
ACTIONS(409), 1,
anon_sym_function,
ACTIONS(411), 1,
anon_sym_DOT_DOT_DOT,
ACTIONS(413), 1,
aux_sym_number_token1,
ACTIONS(421), 1,
sym__long_string_start,
ACTIONS(423), 1,
sym__short_string_start,
ACTIONS(664), 1,
anon_sym_not,
ACTIONS(674), 1,
sym_nil,
STATE(7), 1,
sym_index,
STATE(539), 1,
sym_method_index,
ACTIONS(415), 2,
aux_sym_number_token2,
aux_sym_number_token3,
ACTIONS(417), 2,
anon_sym_true,
anon_sym_false,
ACTIONS(666), 3,
anon_sym_POUND,
anon_sym_DASH,
anon_sym_TILDE,
STATE(2), 4,
sym_parenthesized_expression,
sym__prefix_expression,
sym_function_call,
sym__var,
STATE(347), 10,
sym__expression,
sym_unary_op,
sym_bin_op,
sym_type_cast,
sym_table_constructor,
sym_anon_function,
sym_varargs,
sym_number,
sym_boolean,
sym_string,
[16110] = 18,
ACTIONS(3), 1,
sym_comment,
ACTIONS(15), 1,
anon_sym_LPAREN,
ACTIONS(397), 1,
sym_identifier,
ACTIONS(407), 1,
anon_sym_LBRACE,
ACTIONS(409), 1,
anon_sym_function,
ACTIONS(411), 1,
anon_sym_DOT_DOT_DOT,
ACTIONS(413), 1,
aux_sym_number_token1,
ACTIONS(421), 1,
sym__long_string_start,
ACTIONS(423), 1,
sym__short_string_start,
ACTIONS(664), 1,
anon_sym_not,
ACTIONS(676), 1,
sym_nil,
STATE(7), 1,
sym_index,
STATE(539), 1,
sym_method_index,
ACTIONS(415), 2,
aux_sym_number_token2,
aux_sym_number_token3,
ACTIONS(417), 2,
anon_sym_true,
anon_sym_false,
ACTIONS(666), 3,
anon_sym_POUND,
anon_sym_DASH,
anon_sym_TILDE,
STATE(2), 4,
sym_parenthesized_expression,
sym__prefix_expression,
sym_function_call,
sym__var,
STATE(338), 10,
sym__expression,
sym_unary_op,
sym_bin_op,
sym_type_cast,
sym_table_constructor,
sym_anon_function,
sym_varargs,
sym_number,
sym_boolean,
sym_string,
[16181] = 18,
ACTIONS(3), 1,
sym_comment,
ACTIONS(15), 1,
anon_sym_LPAREN,
ACTIONS(397), 1,
sym_identifier,
ACTIONS(407), 1,
anon_sym_LBRACE,
ACTIONS(409), 1,
anon_sym_function,
ACTIONS(411), 1,
anon_sym_DOT_DOT_DOT,
ACTIONS(413), 1,
aux_sym_number_token1,
ACTIONS(421), 1,
sym__long_string_start,
ACTIONS(423), 1,
sym__short_string_start,
ACTIONS(664), 1,
anon_sym_not,
ACTIONS(678), 1,
sym_nil,
STATE(7), 1,
sym_index,
STATE(539), 1,
sym_method_index,
ACTIONS(415), 2,
aux_sym_number_token2,
aux_sym_number_token3,
ACTIONS(417), 2,
anon_sym_true,
anon_sym_false,
ACTIONS(666), 3,
anon_sym_POUND,
anon_sym_DASH,
anon_sym_TILDE,
STATE(2), 4,
sym_parenthesized_expression,
sym__prefix_expression,
sym_function_call,
sym__var,
STATE(334), 10,
sym__expression,
sym_unary_op,
sym_bin_op,
sym_type_cast,
sym_table_constructor,
sym_anon_function,
sym_varargs,
sym_number,
sym_boolean,
sym_string,
[16252] = 18,
ACTIONS(3), 1,
sym_comment,
ACTIONS(15), 1,
anon_sym_LPAREN,
ACTIONS(397), 1,
sym_identifier,
ACTIONS(407), 1,
anon_sym_LBRACE,
ACTIONS(409), 1,
anon_sym_function,
ACTIONS(411), 1,
anon_sym_DOT_DOT_DOT,
ACTIONS(413), 1,
aux_sym_number_token1,
ACTIONS(421), 1,
sym__long_string_start,
ACTIONS(423), 1,
sym__short_string_start,
ACTIONS(664), 1,
anon_sym_not,
ACTIONS(680), 1,
sym_nil,
STATE(7), 1,
sym_index,
STATE(539), 1,
sym_method_index,
ACTIONS(415), 2,
aux_sym_number_token2,
aux_sym_number_token3,
ACTIONS(417), 2,
anon_sym_true,
anon_sym_false,
ACTIONS(666), 3,
anon_sym_POUND,
anon_sym_DASH,
anon_sym_TILDE,
STATE(2), 4,
sym_parenthesized_expression,
sym__prefix_expression,
sym_function_call,
sym__var,
STATE(348), 10,
sym__expression,
sym_unary_op,
sym_bin_op,
sym_type_cast,
sym_table_constructor,
sym_anon_function,
sym_varargs,
sym_number,
sym_boolean,
sym_string,
[16323] = 18,
ACTIONS(3), 1,
sym_comment,
ACTIONS(15), 1,
anon_sym_LPAREN,
ACTIONS(397), 1,
sym_identifier,
ACTIONS(407), 1,
anon_sym_LBRACE,
ACTIONS(409), 1,
anon_sym_function,
ACTIONS(411), 1,
anon_sym_DOT_DOT_DOT,
ACTIONS(413), 1,
aux_sym_number_token1,
ACTIONS(421), 1,
sym__long_string_start,
ACTIONS(423), 1,
sym__short_string_start,
ACTIONS(664), 1,
anon_sym_not,
ACTIONS(682), 1,
sym_nil,
STATE(7), 1,
sym_index,
STATE(539), 1,
sym_method_index,
ACTIONS(415), 2,
aux_sym_number_token2,
aux_sym_number_token3,
ACTIONS(417), 2,
anon_sym_true,
anon_sym_false,
ACTIONS(666), 3,
anon_sym_POUND,
anon_sym_DASH,
anon_sym_TILDE,
STATE(2), 4,
sym_parenthesized_expression,
sym__prefix_expression,
sym_function_call,
sym__var,
STATE(336), 10,
sym__expression,
sym_unary_op,
sym_bin_op,
sym_type_cast,
sym_table_constructor,
sym_anon_function,
sym_varargs,
sym_number,
sym_boolean,
sym_string,
[16394] = 18,
ACTIONS(3), 1,
sym_comment,
ACTIONS(15), 1,
anon_sym_LPAREN,
ACTIONS(397), 1,
sym_identifier,
ACTIONS(407), 1,
anon_sym_LBRACE,
ACTIONS(409), 1,
anon_sym_function,
ACTIONS(411), 1,
anon_sym_DOT_DOT_DOT,
ACTIONS(413), 1,
aux_sym_number_token1,
ACTIONS(421), 1,
sym__long_string_start,
ACTIONS(423), 1,
sym__short_string_start,
ACTIONS(664), 1,
anon_sym_not,
ACTIONS(684), 1,
sym_nil,
STATE(7), 1,
sym_index,
STATE(539), 1,
sym_method_index,
ACTIONS(415), 2,
aux_sym_number_token2,
aux_sym_number_token3,
ACTIONS(417), 2,
anon_sym_true,
anon_sym_false,
ACTIONS(666), 3,
anon_sym_POUND,
anon_sym_DASH,
anon_sym_TILDE,
STATE(2), 4,
sym_parenthesized_expression,
sym__prefix_expression,
sym_function_call,
sym__var,
STATE(349), 10,
sym__expression,
sym_unary_op,
sym_bin_op,
sym_type_cast,
sym_table_constructor,
sym_anon_function,
sym_varargs,
sym_number,
sym_boolean,
sym_string,
[16465] = 18,
ACTIONS(3), 1,
sym_comment,
ACTIONS(15), 1,
anon_sym_LPAREN,
ACTIONS(397), 1,
sym_identifier,
ACTIONS(403), 1,
anon_sym_not,
ACTIONS(407), 1,
anon_sym_LBRACE,
ACTIONS(409), 1,
anon_sym_function,
ACTIONS(411), 1,
anon_sym_DOT_DOT_DOT,
ACTIONS(413), 1,
aux_sym_number_token1,
ACTIONS(421), 1,
sym__long_string_start,
ACTIONS(423), 1,
sym__short_string_start,
ACTIONS(686), 1,
sym_nil,
STATE(7), 1,
sym_index,
STATE(539), 1,
sym_method_index,
ACTIONS(415), 2,
aux_sym_number_token2,
aux_sym_number_token3,
ACTIONS(417), 2,
anon_sym_true,
anon_sym_false,
ACTIONS(405), 3,
anon_sym_POUND,
anon_sym_DASH,
anon_sym_TILDE,
STATE(2), 4,
sym_parenthesized_expression,
sym__prefix_expression,
sym_function_call,
sym__var,
STATE(154), 10,
sym__expression,
sym_unary_op,
sym_bin_op,
sym_type_cast,
sym_table_constructor,
sym_anon_function,
sym_varargs,
sym_number,
sym_boolean,
sym_string,
[16536] = 18,
ACTIONS(3), 1,
sym_comment,
ACTIONS(15), 1,
anon_sym_LPAREN,
ACTIONS(397), 1,
sym_identifier,
ACTIONS(403), 1,
anon_sym_not,
ACTIONS(407), 1,
anon_sym_LBRACE,
ACTIONS(409), 1,
anon_sym_function,
ACTIONS(411), 1,
anon_sym_DOT_DOT_DOT,
ACTIONS(413), 1,
aux_sym_number_token1,
ACTIONS(421), 1,
sym__long_string_start,
ACTIONS(423), 1,
sym__short_string_start,
ACTIONS(688), 1,
sym_nil,
STATE(7), 1,
sym_index,
STATE(539), 1,
sym_method_index,
ACTIONS(415), 2,
aux_sym_number_token2,
aux_sym_number_token3,
ACTIONS(417), 2,
anon_sym_true,
anon_sym_false,
ACTIONS(405), 3,
anon_sym_POUND,
anon_sym_DASH,
anon_sym_TILDE,
STATE(2), 4,
sym_parenthesized_expression,
sym__prefix_expression,
sym_function_call,
sym__var,
STATE(145), 10,
sym__expression,
sym_unary_op,
sym_bin_op,
sym_type_cast,
sym_table_constructor,
sym_anon_function,
sym_varargs,
sym_number,
sym_boolean,
sym_string,
[16607] = 18,
ACTIONS(3), 1,
sym_comment,
ACTIONS(15), 1,
anon_sym_LPAREN,
ACTIONS(397), 1,
sym_identifier,
ACTIONS(403), 1,
anon_sym_not,
ACTIONS(407), 1,
anon_sym_LBRACE,
ACTIONS(409), 1,
anon_sym_function,
ACTIONS(411), 1,
anon_sym_DOT_DOT_DOT,
ACTIONS(413), 1,
aux_sym_number_token1,
ACTIONS(421), 1,
sym__long_string_start,
ACTIONS(423), 1,
sym__short_string_start,
ACTIONS(690), 1,
sym_nil,
STATE(7), 1,
sym_index,
STATE(539), 1,
sym_method_index,
ACTIONS(415), 2,
aux_sym_number_token2,
aux_sym_number_token3,
ACTIONS(417), 2,
anon_sym_true,
anon_sym_false,
ACTIONS(405), 3,
anon_sym_POUND,
anon_sym_DASH,
anon_sym_TILDE,
STATE(2), 4,
sym_parenthesized_expression,
sym__prefix_expression,
sym_function_call,
sym__var,
STATE(323), 10,
sym__expression,
sym_unary_op,
sym_bin_op,
sym_type_cast,
sym_table_constructor,
sym_anon_function,
sym_varargs,
sym_number,
sym_boolean,
sym_string,
[16678] = 18,
ACTIONS(3), 1,
sym_comment,
ACTIONS(15), 1,
anon_sym_LPAREN,
ACTIONS(397), 1,
sym_identifier,
ACTIONS(403), 1,
anon_sym_not,
ACTIONS(407), 1,
anon_sym_LBRACE,
ACTIONS(409), 1,
anon_sym_function,
ACTIONS(411), 1,
anon_sym_DOT_DOT_DOT,
ACTIONS(413), 1,
aux_sym_number_token1,
ACTIONS(421), 1,
sym__long_string_start,
ACTIONS(423), 1,
sym__short_string_start,
ACTIONS(692), 1,
sym_nil,
STATE(7), 1,
sym_index,
STATE(539), 1,
sym_method_index,
ACTIONS(415), 2,
aux_sym_number_token2,
aux_sym_number_token3,
ACTIONS(417), 2,
anon_sym_true,
anon_sym_false,
ACTIONS(405), 3,
anon_sym_POUND,
anon_sym_DASH,
anon_sym_TILDE,
STATE(2), 4,
sym_parenthesized_expression,
sym__prefix_expression,
sym_function_call,
sym__var,
STATE(144), 10,
sym__expression,
sym_unary_op,
sym_bin_op,
sym_type_cast,
sym_table_constructor,
sym_anon_function,
sym_varargs,
sym_number,
sym_boolean,
sym_string,
[16749] = 18,
ACTIONS(3), 1,
sym_comment,
ACTIONS(15), 1,
anon_sym_LPAREN,
ACTIONS(397), 1,
sym_identifier,
ACTIONS(403), 1,
anon_sym_not,
ACTIONS(407), 1,
anon_sym_LBRACE,
ACTIONS(409), 1,
anon_sym_function,
ACTIONS(411), 1,
anon_sym_DOT_DOT_DOT,
ACTIONS(413), 1,
aux_sym_number_token1,
ACTIONS(421), 1,
sym__long_string_start,
ACTIONS(423), 1,
sym__short_string_start,
ACTIONS(694), 1,
sym_nil,
STATE(7), 1,
sym_index,
STATE(539), 1,
sym_method_index,
ACTIONS(415), 2,
aux_sym_number_token2,
aux_sym_number_token3,
ACTIONS(417), 2,
anon_sym_true,
anon_sym_false,
ACTIONS(405), 3,
anon_sym_POUND,
anon_sym_DASH,
anon_sym_TILDE,
STATE(2), 4,
sym_parenthesized_expression,
sym__prefix_expression,
sym_function_call,
sym__var,
STATE(146), 10,
sym__expression,
sym_unary_op,
sym_bin_op,
sym_type_cast,
sym_table_constructor,
sym_anon_function,
sym_varargs,
sym_number,
sym_boolean,
sym_string,
[16820] = 18,
ACTIONS(3), 1,
sym_comment,
ACTIONS(15), 1,
anon_sym_LPAREN,
ACTIONS(397), 1,
sym_identifier,
ACTIONS(403), 1,
anon_sym_not,
ACTIONS(407), 1,
anon_sym_LBRACE,
ACTIONS(409), 1,
anon_sym_function,
ACTIONS(411), 1,
anon_sym_DOT_DOT_DOT,
ACTIONS(413), 1,
aux_sym_number_token1,
ACTIONS(421), 1,
sym__long_string_start,
ACTIONS(423), 1,
sym__short_string_start,
ACTIONS(696), 1,
sym_nil,
STATE(7), 1,
sym_index,
STATE(539), 1,
sym_method_index,
ACTIONS(415), 2,
aux_sym_number_token2,
aux_sym_number_token3,
ACTIONS(417), 2,
anon_sym_true,
anon_sym_false,
ACTIONS(405), 3,
anon_sym_POUND,
anon_sym_DASH,
anon_sym_TILDE,
STATE(2), 4,
sym_parenthesized_expression,
sym__prefix_expression,
sym_function_call,
sym__var,
STATE(147), 10,
sym__expression,
sym_unary_op,
sym_bin_op,
sym_type_cast,
sym_table_constructor,
sym_anon_function,
sym_varargs,
sym_number,
sym_boolean,
sym_string,
[16891] = 18,
ACTIONS(3), 1,
sym_comment,
ACTIONS(15), 1,
anon_sym_LPAREN,
ACTIONS(397), 1,
sym_identifier,
ACTIONS(403), 1,
anon_sym_not,
ACTIONS(407), 1,
anon_sym_LBRACE,
ACTIONS(409), 1,
anon_sym_function,
ACTIONS(411), 1,
anon_sym_DOT_DOT_DOT,
ACTIONS(413), 1,
aux_sym_number_token1,
ACTIONS(421), 1,
sym__long_string_start,
ACTIONS(423), 1,
sym__short_string_start,
ACTIONS(698), 1,
sym_nil,
STATE(7), 1,
sym_index,
STATE(539), 1,
sym_method_index,
ACTIONS(415), 2,
aux_sym_number_token2,
aux_sym_number_token3,
ACTIONS(417), 2,
anon_sym_true,
anon_sym_false,
ACTIONS(405), 3,
anon_sym_POUND,
anon_sym_DASH,
anon_sym_TILDE,
STATE(2), 4,
sym_parenthesized_expression,
sym__prefix_expression,
sym_function_call,
sym__var,
STATE(143), 10,
sym__expression,
sym_unary_op,
sym_bin_op,
sym_type_cast,
sym_table_constructor,
sym_anon_function,
sym_varargs,
sym_number,
sym_boolean,
sym_string,
[16962] = 18,
ACTIONS(3), 1,
sym_comment,
ACTIONS(15), 1,
anon_sym_LPAREN,
ACTIONS(397), 1,
sym_identifier,
ACTIONS(403), 1,
anon_sym_not,
ACTIONS(407), 1,
anon_sym_LBRACE,
ACTIONS(409), 1,
anon_sym_function,
ACTIONS(411), 1,
anon_sym_DOT_DOT_DOT,
ACTIONS(413), 1,
aux_sym_number_token1,
ACTIONS(421), 1,
sym__long_string_start,
ACTIONS(423), 1,
sym__short_string_start,
ACTIONS(700), 1,
sym_nil,
STATE(7), 1,
sym_index,
STATE(539), 1,
sym_method_index,
ACTIONS(415), 2,
aux_sym_number_token2,
aux_sym_number_token3,
ACTIONS(417), 2,
anon_sym_true,
anon_sym_false,
ACTIONS(405), 3,
anon_sym_POUND,
anon_sym_DASH,
anon_sym_TILDE,
STATE(2), 4,
sym_parenthesized_expression,
sym__prefix_expression,
sym_function_call,
sym__var,
STATE(148), 10,
sym__expression,
sym_unary_op,
sym_bin_op,
sym_type_cast,
sym_table_constructor,
sym_anon_function,
sym_varargs,
sym_number,
sym_boolean,
sym_string,
[17033] = 18,
ACTIONS(3), 1,
sym_comment,
ACTIONS(15), 1,
anon_sym_LPAREN,
ACTIONS(397), 1,
sym_identifier,
ACTIONS(403), 1,
anon_sym_not,
ACTIONS(407), 1,
anon_sym_LBRACE,
ACTIONS(409), 1,
anon_sym_function,
ACTIONS(411), 1,
anon_sym_DOT_DOT_DOT,
ACTIONS(413), 1,
aux_sym_number_token1,
ACTIONS(421), 1,
sym__long_string_start,
ACTIONS(423), 1,
sym__short_string_start,
ACTIONS(702), 1,
sym_nil,
STATE(7), 1,
sym_index,
STATE(539), 1,
sym_method_index,
ACTIONS(415), 2,
aux_sym_number_token2,
aux_sym_number_token3,
ACTIONS(417), 2,
anon_sym_true,
anon_sym_false,
ACTIONS(405), 3,
anon_sym_POUND,
anon_sym_DASH,
anon_sym_TILDE,
STATE(2), 4,
sym_parenthesized_expression,
sym__prefix_expression,
sym_function_call,
sym__var,
STATE(149), 10,
sym__expression,
sym_unary_op,
sym_bin_op,
sym_type_cast,
sym_table_constructor,
sym_anon_function,
sym_varargs,
sym_number,
sym_boolean,
sym_string,
[17104] = 18,
ACTIONS(3), 1,
sym_comment,
ACTIONS(15), 1,
anon_sym_LPAREN,
ACTIONS(397), 1,
sym_identifier,
ACTIONS(403), 1,
anon_sym_not,
ACTIONS(407), 1,
anon_sym_LBRACE,
ACTIONS(409), 1,
anon_sym_function,
ACTIONS(411), 1,
anon_sym_DOT_DOT_DOT,
ACTIONS(413), 1,
aux_sym_number_token1,
ACTIONS(421), 1,
sym__long_string_start,
ACTIONS(423), 1,
sym__short_string_start,
ACTIONS(704), 1,
sym_nil,
STATE(7), 1,
sym_index,
STATE(539), 1,
sym_method_index,
ACTIONS(415), 2,
aux_sym_number_token2,
aux_sym_number_token3,
ACTIONS(417), 2,
anon_sym_true,
anon_sym_false,
ACTIONS(405), 3,
anon_sym_POUND,
anon_sym_DASH,
anon_sym_TILDE,
STATE(2), 4,
sym_parenthesized_expression,
sym__prefix_expression,
sym_function_call,
sym__var,
STATE(150), 10,
sym__expression,
sym_unary_op,
sym_bin_op,
sym_type_cast,
sym_table_constructor,
sym_anon_function,
sym_varargs,
sym_number,
sym_boolean,
sym_string,
[17175] = 18,
ACTIONS(3), 1,
sym_comment,
ACTIONS(15), 1,
anon_sym_LPAREN,
ACTIONS(397), 1,
sym_identifier,
ACTIONS(403), 1,
anon_sym_not,
ACTIONS(407), 1,
anon_sym_LBRACE,
ACTIONS(409), 1,
anon_sym_function,
ACTIONS(411), 1,
anon_sym_DOT_DOT_DOT,
ACTIONS(413), 1,
aux_sym_number_token1,
ACTIONS(421), 1,
sym__long_string_start,
ACTIONS(423), 1,
sym__short_string_start,
ACTIONS(706), 1,
sym_nil,
STATE(7), 1,
sym_index,
STATE(539), 1,
sym_method_index,
ACTIONS(415), 2,
aux_sym_number_token2,
aux_sym_number_token3,
ACTIONS(417), 2,
anon_sym_true,
anon_sym_false,
ACTIONS(405), 3,
anon_sym_POUND,
anon_sym_DASH,
anon_sym_TILDE,
STATE(2), 4,
sym_parenthesized_expression,
sym__prefix_expression,
sym_function_call,
sym__var,
STATE(136), 10,
sym__expression,
sym_unary_op,
sym_bin_op,
sym_type_cast,
sym_table_constructor,
sym_anon_function,
sym_varargs,
sym_number,
sym_boolean,
sym_string,
[17246] = 18,
ACTIONS(3), 1,
sym_comment,
ACTIONS(15), 1,
anon_sym_LPAREN,
ACTIONS(397), 1,
sym_identifier,
ACTIONS(407), 1,
anon_sym_LBRACE,
ACTIONS(409), 1,
anon_sym_function,
ACTIONS(411), 1,
anon_sym_DOT_DOT_DOT,
ACTIONS(413), 1,
aux_sym_number_token1,
ACTIONS(421), 1,
sym__long_string_start,
ACTIONS(423), 1,
sym__short_string_start,
ACTIONS(664), 1,
anon_sym_not,
ACTIONS(708), 1,
sym_nil,
STATE(7), 1,
sym_index,
STATE(539), 1,
sym_method_index,
ACTIONS(415), 2,
aux_sym_number_token2,
aux_sym_number_token3,
ACTIONS(417), 2,
anon_sym_true,
anon_sym_false,
ACTIONS(666), 3,
anon_sym_POUND,
anon_sym_DASH,
anon_sym_TILDE,
STATE(2), 4,
sym_parenthesized_expression,
sym__prefix_expression,
sym_function_call,
sym__var,
STATE(132), 10,
sym__expression,
sym_unary_op,
sym_bin_op,
sym_type_cast,
sym_table_constructor,
sym_anon_function,
sym_varargs,
sym_number,
sym_boolean,
sym_string,
[17317] = 18,
ACTIONS(3), 1,
sym_comment,
ACTIONS(15), 1,
anon_sym_LPAREN,
ACTIONS(397), 1,
sym_identifier,
ACTIONS(403), 1,
anon_sym_not,
ACTIONS(407), 1,
anon_sym_LBRACE,
ACTIONS(409), 1,
anon_sym_function,
ACTIONS(411), 1,
anon_sym_DOT_DOT_DOT,
ACTIONS(413), 1,
aux_sym_number_token1,
ACTIONS(421), 1,
sym__long_string_start,
ACTIONS(423), 1,
sym__short_string_start,
ACTIONS(710), 1,
sym_nil,
STATE(7), 1,
sym_index,
STATE(539), 1,
sym_method_index,
ACTIONS(415), 2,
aux_sym_number_token2,
aux_sym_number_token3,
ACTIONS(417), 2,
anon_sym_true,
anon_sym_false,
ACTIONS(405), 3,
anon_sym_POUND,
anon_sym_DASH,
anon_sym_TILDE,
STATE(2), 4,
sym_parenthesized_expression,
sym__prefix_expression,
sym_function_call,
sym__var,
STATE(138), 10,
sym__expression,
sym_unary_op,
sym_bin_op,
sym_type_cast,
sym_table_constructor,
sym_anon_function,
sym_varargs,
sym_number,
sym_boolean,
sym_string,
[17388] = 18,
ACTIONS(3), 1,
sym_comment,
ACTIONS(15), 1,
anon_sym_LPAREN,
ACTIONS(397), 1,
sym_identifier,
ACTIONS(407), 1,
anon_sym_LBRACE,
ACTIONS(409), 1,
anon_sym_function,
ACTIONS(411), 1,
anon_sym_DOT_DOT_DOT,
ACTIONS(413), 1,
aux_sym_number_token1,
ACTIONS(421), 1,
sym__long_string_start,
ACTIONS(423), 1,
sym__short_string_start,
ACTIONS(664), 1,
anon_sym_not,
ACTIONS(712), 1,
sym_nil,
STATE(7), 1,
sym_index,
STATE(539), 1,
sym_method_index,
ACTIONS(415), 2,
aux_sym_number_token2,
aux_sym_number_token3,
ACTIONS(417), 2,
anon_sym_true,
anon_sym_false,
ACTIONS(666), 3,
anon_sym_POUND,
anon_sym_DASH,
anon_sym_TILDE,
STATE(2), 4,
sym_parenthesized_expression,
sym__prefix_expression,
sym_function_call,
sym__var,
STATE(158), 10,
sym__expression,
sym_unary_op,
sym_bin_op,
sym_type_cast,
sym_table_constructor,
sym_anon_function,
sym_varargs,
sym_number,
sym_boolean,
sym_string,
[17459] = 18,
ACTIONS(3), 1,
sym_comment,
ACTIONS(15), 1,
anon_sym_LPAREN,
ACTIONS(397), 1,
sym_identifier,
ACTIONS(403), 1,
anon_sym_not,
ACTIONS(407), 1,
anon_sym_LBRACE,
ACTIONS(409), 1,
anon_sym_function,
ACTIONS(411), 1,
anon_sym_DOT_DOT_DOT,
ACTIONS(413), 1,
aux_sym_number_token1,
ACTIONS(421), 1,
sym__long_string_start,
ACTIONS(423), 1,
sym__short_string_start,
ACTIONS(714), 1,
sym_nil,
STATE(7), 1,
sym_index,
STATE(539), 1,
sym_method_index,
ACTIONS(415), 2,
aux_sym_number_token2,
aux_sym_number_token3,
ACTIONS(417), 2,
anon_sym_true,
anon_sym_false,
ACTIONS(405), 3,
anon_sym_POUND,
anon_sym_DASH,
anon_sym_TILDE,
STATE(2), 4,
sym_parenthesized_expression,
sym__prefix_expression,
sym_function_call,
sym__var,
STATE(345), 10,
sym__expression,
sym_unary_op,
sym_bin_op,
sym_type_cast,
sym_table_constructor,
sym_anon_function,
sym_varargs,
sym_number,
sym_boolean,
sym_string,
[17530] = 18,
ACTIONS(3), 1,
sym_comment,
ACTIONS(15), 1,
anon_sym_LPAREN,
ACTIONS(397), 1,
sym_identifier,
ACTIONS(403), 1,
anon_sym_not,
ACTIONS(407), 1,
anon_sym_LBRACE,
ACTIONS(409), 1,
anon_sym_function,
ACTIONS(411), 1,
anon_sym_DOT_DOT_DOT,
ACTIONS(413), 1,
aux_sym_number_token1,
ACTIONS(421), 1,
sym__long_string_start,
ACTIONS(423), 1,
sym__short_string_start,
ACTIONS(716), 1,
sym_nil,
STATE(7), 1,
sym_index,
STATE(539), 1,
sym_method_index,
ACTIONS(415), 2,
aux_sym_number_token2,
aux_sym_number_token3,
ACTIONS(417), 2,
anon_sym_true,
anon_sym_false,
ACTIONS(405), 3,
anon_sym_POUND,
anon_sym_DASH,
anon_sym_TILDE,
STATE(2), 4,
sym_parenthesized_expression,
sym__prefix_expression,
sym_function_call,
sym__var,
STATE(324), 10,
sym__expression,
sym_unary_op,
sym_bin_op,
sym_type_cast,
sym_table_constructor,
sym_anon_function,
sym_varargs,
sym_number,
sym_boolean,
sym_string,
[17601] = 18,
ACTIONS(3), 1,
sym_comment,
ACTIONS(15), 1,
anon_sym_LPAREN,
ACTIONS(397), 1,
sym_identifier,
ACTIONS(403), 1,
anon_sym_not,
ACTIONS(407), 1,
anon_sym_LBRACE,
ACTIONS(409), 1,
anon_sym_function,
ACTIONS(411), 1,
anon_sym_DOT_DOT_DOT,
ACTIONS(413), 1,
aux_sym_number_token1,
ACTIONS(421), 1,
sym__long_string_start,
ACTIONS(423), 1,
sym__short_string_start,
ACTIONS(718), 1,
sym_nil,
STATE(7), 1,
sym_index,
STATE(539), 1,
sym_method_index,
ACTIONS(415), 2,
aux_sym_number_token2,
aux_sym_number_token3,
ACTIONS(417), 2,
anon_sym_true,
anon_sym_false,
ACTIONS(405), 3,
anon_sym_POUND,
anon_sym_DASH,
anon_sym_TILDE,
STATE(2), 4,
sym_parenthesized_expression,
sym__prefix_expression,
sym_function_call,
sym__var,
STATE(325), 10,
sym__expression,
sym_unary_op,
sym_bin_op,
sym_type_cast,
sym_table_constructor,
sym_anon_function,
sym_varargs,
sym_number,
sym_boolean,
sym_string,
[17672] = 18,
ACTIONS(3), 1,
sym_comment,
ACTIONS(15), 1,
anon_sym_LPAREN,
ACTIONS(397), 1,
sym_identifier,
ACTIONS(403), 1,
anon_sym_not,
ACTIONS(407), 1,
anon_sym_LBRACE,
ACTIONS(409), 1,
anon_sym_function,
ACTIONS(411), 1,
anon_sym_DOT_DOT_DOT,
ACTIONS(413), 1,
aux_sym_number_token1,
ACTIONS(421), 1,
sym__long_string_start,
ACTIONS(423), 1,
sym__short_string_start,
ACTIONS(720), 1,
sym_nil,
STATE(7), 1,
sym_index,
STATE(539), 1,
sym_method_index,
ACTIONS(415), 2,
aux_sym_number_token2,
aux_sym_number_token3,
ACTIONS(417), 2,
anon_sym_true,
anon_sym_false,
ACTIONS(405), 3,
anon_sym_POUND,
anon_sym_DASH,
anon_sym_TILDE,
STATE(2), 4,
sym_parenthesized_expression,
sym__prefix_expression,
sym_function_call,
sym__var,
STATE(331), 10,
sym__expression,
sym_unary_op,
sym_bin_op,
sym_type_cast,
sym_table_constructor,
sym_anon_function,
sym_varargs,
sym_number,
sym_boolean,
sym_string,
[17743] = 18,
ACTIONS(3), 1,
sym_comment,
ACTIONS(15), 1,
anon_sym_LPAREN,
ACTIONS(397), 1,
sym_identifier,
ACTIONS(403), 1,
anon_sym_not,
ACTIONS(407), 1,
anon_sym_LBRACE,
ACTIONS(409), 1,
anon_sym_function,
ACTIONS(411), 1,
anon_sym_DOT_DOT_DOT,
ACTIONS(413), 1,
aux_sym_number_token1,
ACTIONS(421), 1,
sym__long_string_start,
ACTIONS(423), 1,
sym__short_string_start,
ACTIONS(722), 1,
sym_nil,
STATE(7), 1,
sym_index,
STATE(539), 1,
sym_method_index,
ACTIONS(415), 2,
aux_sym_number_token2,
aux_sym_number_token3,
ACTIONS(417), 2,
anon_sym_true,
anon_sym_false,
ACTIONS(405), 3,
anon_sym_POUND,
anon_sym_DASH,
anon_sym_TILDE,
STATE(2), 4,
sym_parenthesized_expression,
sym__prefix_expression,
sym_function_call,
sym__var,
STATE(332), 10,
sym__expression,
sym_unary_op,
sym_bin_op,
sym_type_cast,
sym_table_constructor,
sym_anon_function,
sym_varargs,
sym_number,
sym_boolean,
sym_string,
[17814] = 18,
ACTIONS(3), 1,
sym_comment,
ACTIONS(15), 1,
anon_sym_LPAREN,
ACTIONS(397), 1,
sym_identifier,
ACTIONS(403), 1,
anon_sym_not,
ACTIONS(407), 1,
anon_sym_LBRACE,
ACTIONS(409), 1,
anon_sym_function,
ACTIONS(411), 1,
anon_sym_DOT_DOT_DOT,
ACTIONS(413), 1,
aux_sym_number_token1,
ACTIONS(421), 1,
sym__long_string_start,
ACTIONS(423), 1,
sym__short_string_start,
ACTIONS(724), 1,
sym_nil,
STATE(7), 1,
sym_index,
STATE(539), 1,
sym_method_index,
ACTIONS(415), 2,
aux_sym_number_token2,
aux_sym_number_token3,
ACTIONS(417), 2,
anon_sym_true,
anon_sym_false,
ACTIONS(405), 3,
anon_sym_POUND,
anon_sym_DASH,
anon_sym_TILDE,
STATE(2), 4,
sym_parenthesized_expression,
sym__prefix_expression,
sym_function_call,
sym__var,
STATE(333), 10,
sym__expression,
sym_unary_op,
sym_bin_op,
sym_type_cast,
sym_table_constructor,
sym_anon_function,
sym_varargs,
sym_number,
sym_boolean,
sym_string,
[17885] = 18,
ACTIONS(3), 1,
sym_comment,
ACTIONS(15), 1,
anon_sym_LPAREN,
ACTIONS(397), 1,
sym_identifier,
ACTIONS(407), 1,
anon_sym_LBRACE,
ACTIONS(409), 1,
anon_sym_function,
ACTIONS(411), 1,
anon_sym_DOT_DOT_DOT,
ACTIONS(413), 1,
aux_sym_number_token1,
ACTIONS(421), 1,
sym__long_string_start,
ACTIONS(423), 1,
sym__short_string_start,
ACTIONS(664), 1,
anon_sym_not,
ACTIONS(726), 1,
sym_nil,
STATE(7), 1,
sym_index,
STATE(539), 1,
sym_method_index,
ACTIONS(415), 2,
aux_sym_number_token2,
aux_sym_number_token3,
ACTIONS(417), 2,
anon_sym_true,
anon_sym_false,
ACTIONS(666), 3,
anon_sym_POUND,
anon_sym_DASH,
anon_sym_TILDE,
STATE(2), 4,
sym_parenthesized_expression,
sym__prefix_expression,
sym_function_call,
sym__var,
STATE(160), 10,
sym__expression,
sym_unary_op,
sym_bin_op,
sym_type_cast,
sym_table_constructor,
sym_anon_function,
sym_varargs,
sym_number,
sym_boolean,
sym_string,
[17956] = 18,
ACTIONS(3), 1,
sym_comment,
ACTIONS(15), 1,
anon_sym_LPAREN,
ACTIONS(397), 1,
sym_identifier,
ACTIONS(403), 1,
anon_sym_not,
ACTIONS(407), 1,
anon_sym_LBRACE,
ACTIONS(409), 1,
anon_sym_function,
ACTIONS(411), 1,
anon_sym_DOT_DOT_DOT,
ACTIONS(413), 1,
aux_sym_number_token1,
ACTIONS(421), 1,
sym__long_string_start,
ACTIONS(423), 1,
sym__short_string_start,
ACTIONS(728), 1,
sym_nil,
STATE(7), 1,
sym_index,
STATE(539), 1,
sym_method_index,
ACTIONS(415), 2,
aux_sym_number_token2,
aux_sym_number_token3,
ACTIONS(417), 2,
anon_sym_true,
anon_sym_false,
ACTIONS(405), 3,
anon_sym_POUND,
anon_sym_DASH,
anon_sym_TILDE,
STATE(2), 4,
sym_parenthesized_expression,
sym__prefix_expression,
sym_function_call,
sym__var,
STATE(141), 10,
sym__expression,
sym_unary_op,
sym_bin_op,
sym_type_cast,
sym_table_constructor,
sym_anon_function,
sym_varargs,
sym_number,
sym_boolean,
sym_string,
[18027] = 18,
ACTIONS(3), 1,
sym_comment,
ACTIONS(15), 1,
anon_sym_LPAREN,
ACTIONS(397), 1,
sym_identifier,
ACTIONS(403), 1,
anon_sym_not,
ACTIONS(407), 1,
anon_sym_LBRACE,
ACTIONS(409), 1,
anon_sym_function,
ACTIONS(411), 1,
anon_sym_DOT_DOT_DOT,
ACTIONS(413), 1,
aux_sym_number_token1,
ACTIONS(421), 1,
sym__long_string_start,
ACTIONS(423), 1,
sym__short_string_start,
ACTIONS(730), 1,
sym_nil,
STATE(7), 1,
sym_index,
STATE(539), 1,
sym_method_index,
ACTIONS(415), 2,
aux_sym_number_token2,
aux_sym_number_token3,
ACTIONS(417), 2,
anon_sym_true,
anon_sym_false,
ACTIONS(405), 3,
anon_sym_POUND,
anon_sym_DASH,
anon_sym_TILDE,
STATE(2), 4,
sym_parenthesized_expression,
sym__prefix_expression,
sym_function_call,
sym__var,
STATE(328), 10,
sym__expression,
sym_unary_op,
sym_bin_op,
sym_type_cast,
sym_table_constructor,
sym_anon_function,
sym_varargs,
sym_number,
sym_boolean,
sym_string,
[18098] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(732), 1,
anon_sym_COLON,
ACTIONS(251), 9,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_EQ,
anon_sym_PIPE,
anon_sym_LBRACK,
anon_sym_RBRACE,
ACTIONS(253), 23,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[18141] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(734), 1,
anon_sym_COLON,
ACTIONS(257), 9,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_EQ,
anon_sym_PIPE,
anon_sym_LBRACK,
anon_sym_RBRACE,
ACTIONS(259), 23,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[18184] = 18,
ACTIONS(3), 1,
sym_comment,
ACTIONS(15), 1,
anon_sym_LPAREN,
ACTIONS(397), 1,
sym_identifier,
ACTIONS(407), 1,
anon_sym_LBRACE,
ACTIONS(409), 1,
anon_sym_function,
ACTIONS(411), 1,
anon_sym_DOT_DOT_DOT,
ACTIONS(413), 1,
aux_sym_number_token1,
ACTIONS(421), 1,
sym__long_string_start,
ACTIONS(423), 1,
sym__short_string_start,
ACTIONS(664), 1,
anon_sym_not,
ACTIONS(736), 1,
sym_nil,
STATE(7), 1,
sym_index,
STATE(539), 1,
sym_method_index,
ACTIONS(415), 2,
aux_sym_number_token2,
aux_sym_number_token3,
ACTIONS(417), 2,
anon_sym_true,
anon_sym_false,
ACTIONS(666), 3,
anon_sym_POUND,
anon_sym_DASH,
anon_sym_TILDE,
STATE(2), 4,
sym_parenthesized_expression,
sym__prefix_expression,
sym_function_call,
sym__var,
STATE(156), 10,
sym__expression,
sym_unary_op,
sym_bin_op,
sym_type_cast,
sym_table_constructor,
sym_anon_function,
sym_varargs,
sym_number,
sym_boolean,
sym_string,
[18255] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(293), 1,
anon_sym_LPAREN,
STATE(271), 1,
sym_function_type_args,
ACTIONS(247), 8,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_RPAREN,
anon_sym_EQ,
anon_sym_PIPE,
anon_sym_LBRACK,
anon_sym_RBRACE,
ACTIONS(249), 23,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[18300] = 18,
ACTIONS(3), 1,
sym_comment,
ACTIONS(15), 1,
anon_sym_LPAREN,
ACTIONS(397), 1,
sym_identifier,
ACTIONS(403), 1,
anon_sym_not,
ACTIONS(407), 1,
anon_sym_LBRACE,
ACTIONS(409), 1,
anon_sym_function,
ACTIONS(411), 1,
anon_sym_DOT_DOT_DOT,
ACTIONS(413), 1,
aux_sym_number_token1,
ACTIONS(421), 1,
sym__long_string_start,
ACTIONS(423), 1,
sym__short_string_start,
ACTIONS(738), 1,
sym_nil,
STATE(7), 1,
sym_index,
STATE(539), 1,
sym_method_index,
ACTIONS(415), 2,
aux_sym_number_token2,
aux_sym_number_token3,
ACTIONS(417), 2,
anon_sym_true,
anon_sym_false,
ACTIONS(405), 3,
anon_sym_POUND,
anon_sym_DASH,
anon_sym_TILDE,
STATE(2), 4,
sym_parenthesized_expression,
sym__prefix_expression,
sym_function_call,
sym__var,
STATE(326), 10,
sym__expression,
sym_unary_op,
sym_bin_op,
sym_type_cast,
sym_table_constructor,
sym_anon_function,
sym_varargs,
sym_number,
sym_boolean,
sym_string,
[18371] = 18,
ACTIONS(3), 1,
sym_comment,
ACTIONS(15), 1,
anon_sym_LPAREN,
ACTIONS(397), 1,
sym_identifier,
ACTIONS(407), 1,
anon_sym_LBRACE,
ACTIONS(409), 1,
anon_sym_function,
ACTIONS(411), 1,
anon_sym_DOT_DOT_DOT,
ACTIONS(413), 1,
aux_sym_number_token1,
ACTIONS(421), 1,
sym__long_string_start,
ACTIONS(423), 1,
sym__short_string_start,
ACTIONS(664), 1,
anon_sym_not,
ACTIONS(740), 1,
sym_nil,
STATE(7), 1,
sym_index,
STATE(539), 1,
sym_method_index,
ACTIONS(415), 2,
aux_sym_number_token2,
aux_sym_number_token3,
ACTIONS(417), 2,
anon_sym_true,
anon_sym_false,
ACTIONS(666), 3,
anon_sym_POUND,
anon_sym_DASH,
anon_sym_TILDE,
STATE(2), 4,
sym_parenthesized_expression,
sym__prefix_expression,
sym_function_call,
sym__var,
STATE(121), 10,
sym__expression,
sym_unary_op,
sym_bin_op,
sym_type_cast,
sym_table_constructor,
sym_anon_function,
sym_varargs,
sym_number,
sym_boolean,
sym_string,
[18442] = 18,
ACTIONS(3), 1,
sym_comment,
ACTIONS(15), 1,
anon_sym_LPAREN,
ACTIONS(397), 1,
sym_identifier,
ACTIONS(407), 1,
anon_sym_LBRACE,
ACTIONS(409), 1,
anon_sym_function,
ACTIONS(411), 1,
anon_sym_DOT_DOT_DOT,
ACTIONS(413), 1,
aux_sym_number_token1,
ACTIONS(421), 1,
sym__long_string_start,
ACTIONS(423), 1,
sym__short_string_start,
ACTIONS(664), 1,
anon_sym_not,
ACTIONS(742), 1,
sym_nil,
STATE(7), 1,
sym_index,
STATE(539), 1,
sym_method_index,
ACTIONS(415), 2,
aux_sym_number_token2,
aux_sym_number_token3,
ACTIONS(417), 2,
anon_sym_true,
anon_sym_false,
ACTIONS(666), 3,
anon_sym_POUND,
anon_sym_DASH,
anon_sym_TILDE,
STATE(2), 4,
sym_parenthesized_expression,
sym__prefix_expression,
sym_function_call,
sym__var,
STATE(122), 10,
sym__expression,
sym_unary_op,
sym_bin_op,
sym_type_cast,
sym_table_constructor,
sym_anon_function,
sym_varargs,
sym_number,
sym_boolean,
sym_string,
[18513] = 18,
ACTIONS(3), 1,
sym_comment,
ACTIONS(15), 1,
anon_sym_LPAREN,
ACTIONS(397), 1,
sym_identifier,
ACTIONS(407), 1,
anon_sym_LBRACE,
ACTIONS(409), 1,
anon_sym_function,
ACTIONS(411), 1,
anon_sym_DOT_DOT_DOT,
ACTIONS(413), 1,
aux_sym_number_token1,
ACTIONS(421), 1,
sym__long_string_start,
ACTIONS(423), 1,
sym__short_string_start,
ACTIONS(664), 1,
anon_sym_not,
ACTIONS(744), 1,
sym_nil,
STATE(7), 1,
sym_index,
STATE(539), 1,
sym_method_index,
ACTIONS(415), 2,
aux_sym_number_token2,
aux_sym_number_token3,
ACTIONS(417), 2,
anon_sym_true,
anon_sym_false,
ACTIONS(666), 3,
anon_sym_POUND,
anon_sym_DASH,
anon_sym_TILDE,
STATE(2), 4,
sym_parenthesized_expression,
sym__prefix_expression,
sym_function_call,
sym__var,
STATE(119), 10,
sym__expression,
sym_unary_op,
sym_bin_op,
sym_type_cast,
sym_table_constructor,
sym_anon_function,
sym_varargs,
sym_number,
sym_boolean,
sym_string,
[18584] = 18,
ACTIONS(3), 1,
sym_comment,
ACTIONS(15), 1,
anon_sym_LPAREN,
ACTIONS(397), 1,
sym_identifier,
ACTIONS(407), 1,
anon_sym_LBRACE,
ACTIONS(409), 1,
anon_sym_function,
ACTIONS(411), 1,
anon_sym_DOT_DOT_DOT,
ACTIONS(413), 1,
aux_sym_number_token1,
ACTIONS(421), 1,
sym__long_string_start,
ACTIONS(423), 1,
sym__short_string_start,
ACTIONS(664), 1,
anon_sym_not,
ACTIONS(746), 1,
sym_nil,
STATE(7), 1,
sym_index,
STATE(539), 1,
sym_method_index,
ACTIONS(415), 2,
aux_sym_number_token2,
aux_sym_number_token3,
ACTIONS(417), 2,
anon_sym_true,
anon_sym_false,
ACTIONS(666), 3,
anon_sym_POUND,
anon_sym_DASH,
anon_sym_TILDE,
STATE(2), 4,
sym_parenthesized_expression,
sym__prefix_expression,
sym_function_call,
sym__var,
STATE(123), 10,
sym__expression,
sym_unary_op,
sym_bin_op,
sym_type_cast,
sym_table_constructor,
sym_anon_function,
sym_varargs,
sym_number,
sym_boolean,
sym_string,
[18655] = 18,
ACTIONS(3), 1,
sym_comment,
ACTIONS(15), 1,
anon_sym_LPAREN,
ACTIONS(397), 1,
sym_identifier,
ACTIONS(407), 1,
anon_sym_LBRACE,
ACTIONS(409), 1,
anon_sym_function,
ACTIONS(411), 1,
anon_sym_DOT_DOT_DOT,
ACTIONS(413), 1,
aux_sym_number_token1,
ACTIONS(421), 1,
sym__long_string_start,
ACTIONS(423), 1,
sym__short_string_start,
ACTIONS(664), 1,
anon_sym_not,
ACTIONS(748), 1,
sym_nil,
STATE(7), 1,
sym_index,
STATE(539), 1,
sym_method_index,
ACTIONS(415), 2,
aux_sym_number_token2,
aux_sym_number_token3,
ACTIONS(417), 2,
anon_sym_true,
anon_sym_false,
ACTIONS(666), 3,
anon_sym_POUND,
anon_sym_DASH,
anon_sym_TILDE,
STATE(2), 4,
sym_parenthesized_expression,
sym__prefix_expression,
sym_function_call,
sym__var,
STATE(124), 10,
sym__expression,
sym_unary_op,
sym_bin_op,
sym_type_cast,
sym_table_constructor,
sym_anon_function,
sym_varargs,
sym_number,
sym_boolean,
sym_string,
[18726] = 18,
ACTIONS(3), 1,
sym_comment,
ACTIONS(15), 1,
anon_sym_LPAREN,
ACTIONS(397), 1,
sym_identifier,
ACTIONS(407), 1,
anon_sym_LBRACE,
ACTIONS(409), 1,
anon_sym_function,
ACTIONS(411), 1,
anon_sym_DOT_DOT_DOT,
ACTIONS(413), 1,
aux_sym_number_token1,
ACTIONS(421), 1,
sym__long_string_start,
ACTIONS(423), 1,
sym__short_string_start,
ACTIONS(664), 1,
anon_sym_not,
ACTIONS(750), 1,
sym_nil,
STATE(7), 1,
sym_index,
STATE(539), 1,
sym_method_index,
ACTIONS(415), 2,
aux_sym_number_token2,
aux_sym_number_token3,
ACTIONS(417), 2,
anon_sym_true,
anon_sym_false,
ACTIONS(666), 3,
anon_sym_POUND,
anon_sym_DASH,
anon_sym_TILDE,
STATE(2), 4,
sym_parenthesized_expression,
sym__prefix_expression,
sym_function_call,
sym__var,
STATE(125), 10,
sym__expression,
sym_unary_op,
sym_bin_op,
sym_type_cast,
sym_table_constructor,
sym_anon_function,
sym_varargs,
sym_number,
sym_boolean,
sym_string,
[18797] = 18,
ACTIONS(3), 1,
sym_comment,
ACTIONS(15), 1,
anon_sym_LPAREN,
ACTIONS(397), 1,
sym_identifier,
ACTIONS(407), 1,
anon_sym_LBRACE,
ACTIONS(409), 1,
anon_sym_function,
ACTIONS(411), 1,
anon_sym_DOT_DOT_DOT,
ACTIONS(413), 1,
aux_sym_number_token1,
ACTIONS(421), 1,
sym__long_string_start,
ACTIONS(423), 1,
sym__short_string_start,
ACTIONS(664), 1,
anon_sym_not,
ACTIONS(752), 1,
sym_nil,
STATE(7), 1,
sym_index,
STATE(539), 1,
sym_method_index,
ACTIONS(415), 2,
aux_sym_number_token2,
aux_sym_number_token3,
ACTIONS(417), 2,
anon_sym_true,
anon_sym_false,
ACTIONS(666), 3,
anon_sym_POUND,
anon_sym_DASH,
anon_sym_TILDE,
STATE(2), 4,
sym_parenthesized_expression,
sym__prefix_expression,
sym_function_call,
sym__var,
STATE(126), 10,
sym__expression,
sym_unary_op,
sym_bin_op,
sym_type_cast,
sym_table_constructor,
sym_anon_function,
sym_varargs,
sym_number,
sym_boolean,
sym_string,
[18868] = 18,
ACTIONS(3), 1,
sym_comment,
ACTIONS(15), 1,
anon_sym_LPAREN,
ACTIONS(397), 1,
sym_identifier,
ACTIONS(407), 1,
anon_sym_LBRACE,
ACTIONS(409), 1,
anon_sym_function,
ACTIONS(411), 1,
anon_sym_DOT_DOT_DOT,
ACTIONS(413), 1,
aux_sym_number_token1,
ACTIONS(421), 1,
sym__long_string_start,
ACTIONS(423), 1,
sym__short_string_start,
ACTIONS(664), 1,
anon_sym_not,
ACTIONS(754), 1,
sym_nil,
STATE(7), 1,
sym_index,
STATE(539), 1,
sym_method_index,
ACTIONS(415), 2,
aux_sym_number_token2,
aux_sym_number_token3,
ACTIONS(417), 2,
anon_sym_true,
anon_sym_false,
ACTIONS(666), 3,
anon_sym_POUND,
anon_sym_DASH,
anon_sym_TILDE,
STATE(2), 4,
sym_parenthesized_expression,
sym__prefix_expression,
sym_function_call,
sym__var,
STATE(127), 10,
sym__expression,
sym_unary_op,
sym_bin_op,
sym_type_cast,
sym_table_constructor,
sym_anon_function,
sym_varargs,
sym_number,
sym_boolean,
sym_string,
[18939] = 18,
ACTIONS(3), 1,
sym_comment,
ACTIONS(15), 1,
anon_sym_LPAREN,
ACTIONS(397), 1,
sym_identifier,
ACTIONS(407), 1,
anon_sym_LBRACE,
ACTIONS(409), 1,
anon_sym_function,
ACTIONS(411), 1,
anon_sym_DOT_DOT_DOT,
ACTIONS(413), 1,
aux_sym_number_token1,
ACTIONS(421), 1,
sym__long_string_start,
ACTIONS(423), 1,
sym__short_string_start,
ACTIONS(664), 1,
anon_sym_not,
ACTIONS(756), 1,
sym_nil,
STATE(7), 1,
sym_index,
STATE(539), 1,
sym_method_index,
ACTIONS(415), 2,
aux_sym_number_token2,
aux_sym_number_token3,
ACTIONS(417), 2,
anon_sym_true,
anon_sym_false,
ACTIONS(666), 3,
anon_sym_POUND,
anon_sym_DASH,
anon_sym_TILDE,
STATE(2), 4,
sym_parenthesized_expression,
sym__prefix_expression,
sym_function_call,
sym__var,
STATE(128), 10,
sym__expression,
sym_unary_op,
sym_bin_op,
sym_type_cast,
sym_table_constructor,
sym_anon_function,
sym_varargs,
sym_number,
sym_boolean,
sym_string,
[19010] = 18,
ACTIONS(3), 1,
sym_comment,
ACTIONS(15), 1,
anon_sym_LPAREN,
ACTIONS(397), 1,
sym_identifier,
ACTIONS(407), 1,
anon_sym_LBRACE,
ACTIONS(409), 1,
anon_sym_function,
ACTIONS(411), 1,
anon_sym_DOT_DOT_DOT,
ACTIONS(413), 1,
aux_sym_number_token1,
ACTIONS(421), 1,
sym__long_string_start,
ACTIONS(423), 1,
sym__short_string_start,
ACTIONS(664), 1,
anon_sym_not,
ACTIONS(758), 1,
sym_nil,
STATE(7), 1,
sym_index,
STATE(539), 1,
sym_method_index,
ACTIONS(415), 2,
aux_sym_number_token2,
aux_sym_number_token3,
ACTIONS(417), 2,
anon_sym_true,
anon_sym_false,
ACTIONS(666), 3,
anon_sym_POUND,
anon_sym_DASH,
anon_sym_TILDE,
STATE(2), 4,
sym_parenthesized_expression,
sym__prefix_expression,
sym_function_call,
sym__var,
STATE(129), 10,
sym__expression,
sym_unary_op,
sym_bin_op,
sym_type_cast,
sym_table_constructor,
sym_anon_function,
sym_varargs,
sym_number,
sym_boolean,
sym_string,
[19081] = 18,
ACTIONS(3), 1,
sym_comment,
ACTIONS(15), 1,
anon_sym_LPAREN,
ACTIONS(397), 1,
sym_identifier,
ACTIONS(403), 1,
anon_sym_not,
ACTIONS(407), 1,
anon_sym_LBRACE,
ACTIONS(409), 1,
anon_sym_function,
ACTIONS(411), 1,
anon_sym_DOT_DOT_DOT,
ACTIONS(413), 1,
aux_sym_number_token1,
ACTIONS(421), 1,
sym__long_string_start,
ACTIONS(423), 1,
sym__short_string_start,
ACTIONS(760), 1,
sym_nil,
STATE(7), 1,
sym_index,
STATE(539), 1,
sym_method_index,
ACTIONS(415), 2,
aux_sym_number_token2,
aux_sym_number_token3,
ACTIONS(417), 2,
anon_sym_true,
anon_sym_false,
ACTIONS(405), 3,
anon_sym_POUND,
anon_sym_DASH,
anon_sym_TILDE,
STATE(2), 4,
sym_parenthesized_expression,
sym__prefix_expression,
sym_function_call,
sym__var,
STATE(137), 10,
sym__expression,
sym_unary_op,
sym_bin_op,
sym_type_cast,
sym_table_constructor,
sym_anon_function,
sym_varargs,
sym_number,
sym_boolean,
sym_string,
[19152] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(391), 1,
anon_sym_end,
ACTIONS(97), 5,
anon_sym_TILDE,
anon_sym_LT,
anon_sym_GT,
anon_sym_SLASH,
anon_sym_DOT,
ACTIONS(95), 26,
sym__long_string_start,
sym__short_string_start,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_DASH,
anon_sym_or,
anon_sym_and,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
anon_sym_PIPE,
anon_sym_AMP,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_PLUS,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
anon_sym_DOT_DOT,
anon_sym_CARET,
anon_sym_is,
anon_sym_as,
anon_sym_COLON,
anon_sym_LBRACK,
anon_sym_LBRACE,
[19194] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(766), 1,
anon_sym_PIPE,
ACTIONS(762), 5,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
anon_sym_LBRACK,
ACTIONS(764), 23,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[19233] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(768), 5,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
anon_sym_LBRACK,
ACTIONS(770), 23,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[19269] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(772), 5,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
anon_sym_LBRACK,
ACTIONS(774), 23,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[19305] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(776), 5,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
anon_sym_LBRACK,
ACTIONS(778), 23,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[19341] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(780), 5,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
anon_sym_LBRACK,
ACTIONS(782), 23,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[19377] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(784), 5,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
anon_sym_LBRACK,
ACTIONS(786), 23,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[19413] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(788), 5,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
anon_sym_LBRACK,
ACTIONS(790), 23,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[19449] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(792), 5,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
anon_sym_LBRACK,
ACTIONS(794), 23,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[19485] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(762), 5,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
anon_sym_LBRACK,
ACTIONS(764), 23,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[19521] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(796), 5,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
anon_sym_LBRACK,
ACTIONS(798), 23,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[19557] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(800), 5,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
anon_sym_LBRACK,
ACTIONS(802), 23,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[19593] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(804), 5,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
anon_sym_LBRACK,
ACTIONS(806), 23,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[19629] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(808), 5,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
anon_sym_LBRACK,
ACTIONS(810), 23,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[19665] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(812), 5,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
anon_sym_LBRACK,
ACTIONS(814), 23,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[19701] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(816), 5,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
anon_sym_LBRACK,
ACTIONS(818), 23,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[19737] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(820), 5,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
anon_sym_LBRACK,
ACTIONS(822), 23,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[19773] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(824), 5,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
anon_sym_LBRACK,
ACTIONS(826), 23,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[19809] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(828), 5,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
anon_sym_LBRACK,
ACTIONS(830), 23,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[19845] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(832), 5,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
anon_sym_LBRACK,
ACTIONS(834), 23,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[19881] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(836), 5,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
anon_sym_LBRACK,
ACTIONS(838), 23,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[19917] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(840), 5,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
anon_sym_LBRACK,
ACTIONS(842), 23,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[19953] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(844), 5,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
anon_sym_LBRACK,
ACTIONS(846), 23,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[19989] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(848), 5,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
anon_sym_LBRACK,
ACTIONS(850), 23,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[20025] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(852), 5,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
anon_sym_LBRACK,
ACTIONS(854), 23,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[20061] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(856), 5,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
anon_sym_LBRACK,
ACTIONS(858), 23,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[20097] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(860), 5,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
anon_sym_LBRACK,
ACTIONS(862), 23,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[20133] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(864), 5,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
anon_sym_LBRACK,
ACTIONS(866), 23,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[20169] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(868), 5,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
anon_sym_LBRACK,
ACTIONS(870), 23,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[20205] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(872), 5,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
anon_sym_LBRACK,
ACTIONS(874), 23,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[20241] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(876), 5,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
anon_sym_LBRACK,
ACTIONS(878), 23,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[20277] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(880), 5,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
anon_sym_LBRACK,
ACTIONS(882), 23,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[20313] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(884), 5,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
anon_sym_LBRACK,
ACTIONS(886), 23,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[20349] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(888), 5,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
anon_sym_LBRACK,
ACTIONS(890), 23,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[20385] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(892), 5,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
anon_sym_LBRACK,
ACTIONS(894), 23,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[20421] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(896), 5,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
anon_sym_LBRACK,
ACTIONS(898), 23,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[20457] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(900), 5,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
anon_sym_LBRACK,
ACTIONS(902), 23,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_type,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
anon_sym_goto,
sym_identifier,
[20493] = 20,
ACTIONS(3), 1,
sym_comment,
ACTIONS(431), 1,
anon_sym_CARET,
ACTIONS(439), 1,
anon_sym_SLASH,
ACTIONS(441), 1,
anon_sym_DOT_DOT,
ACTIONS(445), 1,
anon_sym_TILDE,
ACTIONS(447), 1,
anon_sym_PIPE,
ACTIONS(449), 1,
anon_sym_AMP,
ACTIONS(511), 1,
anon_sym_COMMA,
ACTIONS(904), 1,
anon_sym_do,
ACTIONS(906), 1,
anon_sym_or,
ACTIONS(908), 1,
anon_sym_and,
ACTIONS(910), 1,
anon_sym_is,
ACTIONS(912), 1,
anon_sym_as,
STATE(379), 1,
sym_do_statement,
STATE(596), 1,
aux_sym_return_statement_repeat1,
ACTIONS(435), 2,
anon_sym_DASH,
anon_sym_PLUS,
ACTIONS(451), 2,
anon_sym_LT_LT,
anon_sym_GT_GT,
ACTIONS(455), 2,
anon_sym_LT,
anon_sym_GT,
ACTIONS(437), 3,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
ACTIONS(457), 4,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
[20562] = 20,
ACTIONS(3), 1,
sym_comment,
ACTIONS(431), 1,
anon_sym_CARET,
ACTIONS(439), 1,
anon_sym_SLASH,
ACTIONS(441), 1,
anon_sym_DOT_DOT,
ACTIONS(445), 1,
anon_sym_TILDE,
ACTIONS(447), 1,
anon_sym_PIPE,
ACTIONS(449), 1,
anon_sym_AMP,
ACTIONS(511), 1,
anon_sym_COMMA,
ACTIONS(904), 1,
anon_sym_do,
ACTIONS(906), 1,
anon_sym_or,
ACTIONS(908), 1,
anon_sym_and,
ACTIONS(910), 1,
anon_sym_is,
ACTIONS(912), 1,
anon_sym_as,
STATE(373), 1,
sym_do_statement,
STATE(573), 1,
aux_sym_return_statement_repeat1,
ACTIONS(435), 2,
anon_sym_DASH,
anon_sym_PLUS,
ACTIONS(451), 2,
anon_sym_LT_LT,
anon_sym_GT_GT,
ACTIONS(455), 2,
anon_sym_LT,
anon_sym_GT,
ACTIONS(437), 3,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
ACTIONS(457), 4,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
[20631] = 19,
ACTIONS(3), 1,
sym_comment,
ACTIONS(431), 1,
anon_sym_CARET,
ACTIONS(439), 1,
anon_sym_SLASH,
ACTIONS(441), 1,
anon_sym_DOT_DOT,
ACTIONS(445), 1,
anon_sym_TILDE,
ACTIONS(447), 1,
anon_sym_PIPE,
ACTIONS(449), 1,
anon_sym_AMP,
ACTIONS(904), 1,
anon_sym_do,
ACTIONS(906), 1,
anon_sym_or,
ACTIONS(908), 1,
anon_sym_and,
ACTIONS(910), 1,
anon_sym_is,
ACTIONS(912), 1,
anon_sym_as,
ACTIONS(914), 1,
anon_sym_COMMA,
STATE(382), 1,
sym_do_statement,
ACTIONS(435), 2,
anon_sym_DASH,
anon_sym_PLUS,
ACTIONS(451), 2,
anon_sym_LT_LT,
anon_sym_GT_GT,
ACTIONS(455), 2,
anon_sym_LT,
anon_sym_GT,
ACTIONS(437), 3,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
ACTIONS(457), 4,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
[20697] = 17,
ACTIONS(3), 1,
sym_comment,
ACTIONS(431), 1,
anon_sym_CARET,
ACTIONS(439), 1,
anon_sym_SLASH,
ACTIONS(441), 1,
anon_sym_DOT_DOT,
ACTIONS(445), 1,
anon_sym_TILDE,
ACTIONS(447), 1,
anon_sym_PIPE,
ACTIONS(449), 1,
anon_sym_AMP,
ACTIONS(906), 1,
anon_sym_or,
ACTIONS(908), 1,
anon_sym_and,
ACTIONS(910), 1,
anon_sym_is,
ACTIONS(912), 1,
anon_sym_as,
ACTIONS(435), 2,
anon_sym_DASH,
anon_sym_PLUS,
ACTIONS(451), 2,
anon_sym_LT_LT,
anon_sym_GT_GT,
ACTIONS(455), 2,
anon_sym_LT,
anon_sym_GT,
ACTIONS(437), 3,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
ACTIONS(916), 3,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_RBRACE,
ACTIONS(457), 4,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
[20759] = 6,
ACTIONS(3), 1,
sym_comment,
ACTIONS(922), 1,
anon_sym_SEMI,
ACTIONS(926), 1,
anon_sym_COLON,
ACTIONS(918), 2,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
ACTIONS(924), 6,
sym__long_string_start,
sym__short_string_start,
anon_sym_LPAREN,
anon_sym_LBRACK,
anon_sym_LBRACE,
anon_sym_DOT,
ACTIONS(920), 16,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
[20799] = 19,
ACTIONS(3), 1,
sym_comment,
ACTIONS(431), 1,
anon_sym_CARET,
ACTIONS(439), 1,
anon_sym_SLASH,
ACTIONS(441), 1,
anon_sym_DOT_DOT,
ACTIONS(445), 1,
anon_sym_TILDE,
ACTIONS(447), 1,
anon_sym_PIPE,
ACTIONS(449), 1,
anon_sym_AMP,
ACTIONS(511), 1,
anon_sym_COMMA,
ACTIONS(906), 1,
anon_sym_or,
ACTIONS(908), 1,
anon_sym_and,
ACTIONS(910), 1,
anon_sym_is,
ACTIONS(912), 1,
anon_sym_as,
ACTIONS(928), 1,
anon_sym_RPAREN,
STATE(611), 1,
aux_sym_return_statement_repeat1,
ACTIONS(435), 2,
anon_sym_DASH,
anon_sym_PLUS,
ACTIONS(451), 2,
anon_sym_LT_LT,
anon_sym_GT_GT,
ACTIONS(455), 2,
anon_sym_LT,
anon_sym_GT,
ACTIONS(437), 3,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
ACTIONS(457), 4,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
[20865] = 19,
ACTIONS(3), 1,
sym_comment,
ACTIONS(431), 1,
anon_sym_CARET,
ACTIONS(439), 1,
anon_sym_SLASH,
ACTIONS(441), 1,
anon_sym_DOT_DOT,
ACTIONS(445), 1,
anon_sym_TILDE,
ACTIONS(447), 1,
anon_sym_PIPE,
ACTIONS(449), 1,
anon_sym_AMP,
ACTIONS(511), 1,
anon_sym_COMMA,
ACTIONS(906), 1,
anon_sym_or,
ACTIONS(908), 1,
anon_sym_and,
ACTIONS(910), 1,
anon_sym_is,
ACTIONS(912), 1,
anon_sym_as,
ACTIONS(930), 1,
anon_sym_RPAREN,
STATE(638), 1,
aux_sym_return_statement_repeat1,
ACTIONS(435), 2,
anon_sym_DASH,
anon_sym_PLUS,
ACTIONS(451), 2,
anon_sym_LT_LT,
anon_sym_GT_GT,
ACTIONS(455), 2,
anon_sym_LT,
anon_sym_GT,
ACTIONS(437), 3,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
ACTIONS(457), 4,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
[20931] = 17,
ACTIONS(3), 1,
sym_comment,
ACTIONS(431), 1,
anon_sym_CARET,
ACTIONS(439), 1,
anon_sym_SLASH,
ACTIONS(441), 1,
anon_sym_DOT_DOT,
ACTIONS(445), 1,
anon_sym_TILDE,
ACTIONS(447), 1,
anon_sym_PIPE,
ACTIONS(449), 1,
anon_sym_AMP,
ACTIONS(906), 1,
anon_sym_or,
ACTIONS(908), 1,
anon_sym_and,
ACTIONS(910), 1,
anon_sym_is,
ACTIONS(912), 1,
anon_sym_as,
ACTIONS(435), 2,
anon_sym_DASH,
anon_sym_PLUS,
ACTIONS(451), 2,
anon_sym_LT_LT,
anon_sym_GT_GT,
ACTIONS(455), 2,
anon_sym_LT,
anon_sym_GT,
ACTIONS(437), 3,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
ACTIONS(932), 3,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_RBRACE,
ACTIONS(457), 4,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
[20993] = 17,
ACTIONS(3), 1,
sym_comment,
ACTIONS(431), 1,
anon_sym_CARET,
ACTIONS(439), 1,
anon_sym_SLASH,
ACTIONS(441), 1,
anon_sym_DOT_DOT,
ACTIONS(445), 1,
anon_sym_TILDE,
ACTIONS(447), 1,
anon_sym_PIPE,
ACTIONS(449), 1,
anon_sym_AMP,
ACTIONS(906), 1,
anon_sym_or,
ACTIONS(908), 1,
anon_sym_and,
ACTIONS(910), 1,
anon_sym_is,
ACTIONS(912), 1,
anon_sym_as,
ACTIONS(435), 2,
anon_sym_DASH,
anon_sym_PLUS,
ACTIONS(451), 2,
anon_sym_LT_LT,
anon_sym_GT_GT,
ACTIONS(455), 2,
anon_sym_LT,
anon_sym_GT,
ACTIONS(437), 3,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
ACTIONS(934), 3,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_RBRACE,
ACTIONS(457), 4,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
[21055] = 17,
ACTIONS(3), 1,
sym_comment,
ACTIONS(431), 1,
anon_sym_CARET,
ACTIONS(439), 1,
anon_sym_SLASH,
ACTIONS(441), 1,
anon_sym_DOT_DOT,
ACTIONS(445), 1,
anon_sym_TILDE,
ACTIONS(447), 1,
anon_sym_PIPE,
ACTIONS(449), 1,
anon_sym_AMP,
ACTIONS(906), 1,
anon_sym_or,
ACTIONS(908), 1,
anon_sym_and,
ACTIONS(910), 1,
anon_sym_is,
ACTIONS(912), 1,
anon_sym_as,
ACTIONS(435), 2,
anon_sym_DASH,
anon_sym_PLUS,
ACTIONS(451), 2,
anon_sym_LT_LT,
anon_sym_GT_GT,
ACTIONS(455), 2,
anon_sym_LT,
anon_sym_GT,
ACTIONS(437), 3,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
ACTIONS(936), 3,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_RBRACE,
ACTIONS(457), 4,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
[21117] = 19,
ACTIONS(3), 1,
sym_comment,
ACTIONS(431), 1,
anon_sym_CARET,
ACTIONS(439), 1,
anon_sym_SLASH,
ACTIONS(441), 1,
anon_sym_DOT_DOT,
ACTIONS(445), 1,
anon_sym_TILDE,
ACTIONS(447), 1,
anon_sym_PIPE,
ACTIONS(449), 1,
anon_sym_AMP,
ACTIONS(511), 1,
anon_sym_COMMA,
ACTIONS(906), 1,
anon_sym_or,
ACTIONS(908), 1,
anon_sym_and,
ACTIONS(910), 1,
anon_sym_is,
ACTIONS(912), 1,
anon_sym_as,
ACTIONS(938), 1,
anon_sym_RPAREN,
STATE(611), 1,
aux_sym_return_statement_repeat1,
ACTIONS(435), 2,
anon_sym_DASH,
anon_sym_PLUS,
ACTIONS(451), 2,
anon_sym_LT_LT,
anon_sym_GT_GT,
ACTIONS(455), 2,
anon_sym_LT,
anon_sym_GT,
ACTIONS(437), 3,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
ACTIONS(457), 4,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
[21183] = 18,
ACTIONS(3), 1,
sym_comment,
ACTIONS(359), 1,
anon_sym_TILDE,
ACTIONS(367), 1,
anon_sym_PIPE,
ACTIONS(369), 1,
anon_sym_AMP,
ACTIONS(375), 1,
anon_sym_SLASH,
ACTIONS(377), 1,
anon_sym_DOT_DOT,
ACTIONS(379), 1,
anon_sym_CARET,
ACTIONS(904), 1,
anon_sym_do,
ACTIONS(940), 1,
anon_sym_or,
ACTIONS(942), 1,
anon_sym_and,
ACTIONS(944), 1,
anon_sym_is,
ACTIONS(946), 1,
anon_sym_as,
STATE(394), 1,
sym_do_statement,
ACTIONS(357), 2,
anon_sym_DASH,
anon_sym_PLUS,
ACTIONS(363), 2,
anon_sym_LT,
anon_sym_GT,
ACTIONS(371), 2,
anon_sym_LT_LT,
anon_sym_GT_GT,
ACTIONS(373), 3,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
ACTIONS(365), 4,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
[21246] = 18,
ACTIONS(3), 1,
sym_comment,
ACTIONS(359), 1,
anon_sym_TILDE,
ACTIONS(367), 1,
anon_sym_PIPE,
ACTIONS(369), 1,
anon_sym_AMP,
ACTIONS(375), 1,
anon_sym_SLASH,
ACTIONS(377), 1,
anon_sym_DOT_DOT,
ACTIONS(379), 1,
anon_sym_CARET,
ACTIONS(904), 1,
anon_sym_do,
ACTIONS(940), 1,
anon_sym_or,
ACTIONS(942), 1,
anon_sym_and,
ACTIONS(944), 1,
anon_sym_is,
ACTIONS(946), 1,
anon_sym_as,
STATE(380), 1,
sym_do_statement,
ACTIONS(357), 2,
anon_sym_DASH,
anon_sym_PLUS,
ACTIONS(363), 2,
anon_sym_LT,
anon_sym_GT,
ACTIONS(371), 2,
anon_sym_LT_LT,
anon_sym_GT_GT,
ACTIONS(373), 3,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
ACTIONS(365), 4,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
[21309] = 17,
ACTIONS(3), 1,
sym_comment,
ACTIONS(359), 1,
anon_sym_TILDE,
ACTIONS(367), 1,
anon_sym_PIPE,
ACTIONS(369), 1,
anon_sym_AMP,
ACTIONS(375), 1,
anon_sym_SLASH,
ACTIONS(377), 1,
anon_sym_DOT_DOT,
ACTIONS(379), 1,
anon_sym_CARET,
ACTIONS(940), 1,
anon_sym_or,
ACTIONS(942), 1,
anon_sym_and,
ACTIONS(944), 1,
anon_sym_is,
ACTIONS(946), 1,
anon_sym_as,
ACTIONS(948), 1,
anon_sym_RBRACK,
ACTIONS(357), 2,
anon_sym_DASH,
anon_sym_PLUS,
ACTIONS(363), 2,
anon_sym_LT,
anon_sym_GT,
ACTIONS(371), 2,
anon_sym_LT_LT,
anon_sym_GT_GT,
ACTIONS(373), 3,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
ACTIONS(365), 4,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
[21369] = 23,
ACTIONS(3), 1,
sym_comment,
ACTIONS(525), 1,
sym_identifier,
ACTIONS(531), 1,
anon_sym_type,
ACTIONS(533), 1,
anon_sym_LBRACK,
ACTIONS(537), 1,
anon_sym_macroexp,
ACTIONS(539), 1,
anon_sym_record,
ACTIONS(541), 1,
anon_sym_interface,
ACTIONS(543), 1,
anon_sym_enum,
ACTIONS(545), 1,
anon_sym_userdata,
ACTIONS(547), 1,
anon_sym_metamethod,
ACTIONS(591), 1,
anon_sym_LT,
ACTIONS(950), 1,
anon_sym_end,
ACTIONS(952), 1,
anon_sym_is,
ACTIONS(954), 1,
anon_sym_LBRACE,
STATE(309), 1,
sym_record_body,
STATE(361), 1,
sym_typeargs,
STATE(491), 1,
sym__type_def,
STATE(496), 1,
sym__macroexp_def,
STATE(503), 1,
sym_metamethod_annotation,
STATE(513), 1,
sym__record_def,
STATE(514), 1,
sym__interface_def,
STATE(515), 1,
sym__enum_def,
STATE(409), 3,
sym_record_field,
sym__record_entry,
aux_sym_record_body_repeat1,
[21441] = 17,
ACTIONS(3), 1,
sym_comment,
ACTIONS(359), 1,
anon_sym_TILDE,
ACTIONS(367), 1,
anon_sym_PIPE,
ACTIONS(369), 1,
anon_sym_AMP,
ACTIONS(375), 1,
anon_sym_SLASH,
ACTIONS(377), 1,
anon_sym_DOT_DOT,
ACTIONS(379), 1,
anon_sym_CARET,
ACTIONS(940), 1,
anon_sym_or,
ACTIONS(942), 1,
anon_sym_and,
ACTIONS(944), 1,
anon_sym_is,
ACTIONS(946), 1,
anon_sym_as,
ACTIONS(956), 1,
anon_sym_then,
ACTIONS(357), 2,
anon_sym_DASH,
anon_sym_PLUS,
ACTIONS(363), 2,
anon_sym_LT,
anon_sym_GT,
ACTIONS(371), 2,
anon_sym_LT_LT,
anon_sym_GT_GT,
ACTIONS(373), 3,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
ACTIONS(365), 4,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
[21501] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(962), 1,
anon_sym_COMMA,
STATE(342), 1,
aux_sym_var_declarators_repeat1,
ACTIONS(958), 5,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
anon_sym_EQ,
ACTIONS(960), 17,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
[21537] = 23,
ACTIONS(3), 1,
sym_comment,
ACTIONS(525), 1,
sym_identifier,
ACTIONS(531), 1,
anon_sym_type,
ACTIONS(533), 1,
anon_sym_LBRACK,
ACTIONS(537), 1,
anon_sym_macroexp,
ACTIONS(539), 1,
anon_sym_record,
ACTIONS(541), 1,
anon_sym_interface,
ACTIONS(543), 1,
anon_sym_enum,
ACTIONS(545), 1,
anon_sym_userdata,
ACTIONS(547), 1,
anon_sym_metamethod,
ACTIONS(591), 1,
anon_sym_LT,
ACTIONS(950), 1,
anon_sym_end,
ACTIONS(952), 1,
anon_sym_is,
ACTIONS(954), 1,
anon_sym_LBRACE,
STATE(308), 1,
sym_record_body,
STATE(363), 1,
sym_typeargs,
STATE(491), 1,
sym__type_def,
STATE(496), 1,
sym__macroexp_def,
STATE(503), 1,
sym_metamethod_annotation,
STATE(513), 1,
sym__record_def,
STATE(514), 1,
sym__interface_def,
STATE(515), 1,
sym__enum_def,
STATE(409), 3,
sym_record_field,
sym__record_entry,
aux_sym_record_body_repeat1,
[21609] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(968), 1,
anon_sym_LT,
ACTIONS(964), 6,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_EQ,
ACTIONS(966), 17,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
[21643] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(962), 1,
anon_sym_COMMA,
STATE(350), 1,
aux_sym_var_declarators_repeat1,
ACTIONS(970), 5,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
anon_sym_EQ,
ACTIONS(972), 17,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
[21679] = 23,
ACTIONS(3), 1,
sym_comment,
ACTIONS(525), 1,
sym_identifier,
ACTIONS(531), 1,
anon_sym_type,
ACTIONS(533), 1,
anon_sym_LBRACK,
ACTIONS(537), 1,
anon_sym_macroexp,
ACTIONS(539), 1,
anon_sym_record,
ACTIONS(541), 1,
anon_sym_interface,
ACTIONS(543), 1,
anon_sym_enum,
ACTIONS(545), 1,
anon_sym_userdata,
ACTIONS(547), 1,
anon_sym_metamethod,
ACTIONS(591), 1,
anon_sym_LT,
ACTIONS(950), 1,
anon_sym_end,
ACTIONS(952), 1,
anon_sym_is,
ACTIONS(954), 1,
anon_sym_LBRACE,
STATE(302), 1,
sym_record_body,
STATE(360), 1,
sym_typeargs,
STATE(491), 1,
sym__type_def,
STATE(496), 1,
sym__macroexp_def,
STATE(503), 1,
sym_metamethod_annotation,
STATE(513), 1,
sym__record_def,
STATE(514), 1,
sym__interface_def,
STATE(515), 1,
sym__enum_def,
STATE(409), 3,
sym_record_field,
sym__record_entry,
aux_sym_record_body_repeat1,
[21751] = 23,
ACTIONS(3), 1,
sym_comment,
ACTIONS(525), 1,
sym_identifier,
ACTIONS(531), 1,
anon_sym_type,
ACTIONS(533), 1,
anon_sym_LBRACK,
ACTIONS(537), 1,
anon_sym_macroexp,
ACTIONS(539), 1,
anon_sym_record,
ACTIONS(541), 1,
anon_sym_interface,
ACTIONS(543), 1,
anon_sym_enum,
ACTIONS(545), 1,
anon_sym_userdata,
ACTIONS(547), 1,
anon_sym_metamethod,
ACTIONS(591), 1,
anon_sym_LT,
ACTIONS(950), 1,
anon_sym_end,
ACTIONS(952), 1,
anon_sym_is,
ACTIONS(954), 1,
anon_sym_LBRACE,
STATE(288), 1,
sym_record_body,
STATE(358), 1,
sym_typeargs,
STATE(491), 1,
sym__type_def,
STATE(496), 1,
sym__macroexp_def,
STATE(503), 1,
sym_metamethod_annotation,
STATE(513), 1,
sym__record_def,
STATE(514), 1,
sym__interface_def,
STATE(515), 1,
sym__enum_def,
STATE(409), 3,
sym_record_field,
sym__record_entry,
aux_sym_record_body_repeat1,
[21823] = 17,
ACTIONS(3), 1,
sym_comment,
ACTIONS(431), 1,
anon_sym_CARET,
ACTIONS(439), 1,
anon_sym_SLASH,
ACTIONS(441), 1,
anon_sym_DOT_DOT,
ACTIONS(445), 1,
anon_sym_TILDE,
ACTIONS(447), 1,
anon_sym_PIPE,
ACTIONS(449), 1,
anon_sym_AMP,
ACTIONS(906), 1,
anon_sym_or,
ACTIONS(908), 1,
anon_sym_and,
ACTIONS(910), 1,
anon_sym_is,
ACTIONS(912), 1,
anon_sym_as,
ACTIONS(974), 1,
anon_sym_COMMA,
ACTIONS(435), 2,
anon_sym_DASH,
anon_sym_PLUS,
ACTIONS(451), 2,
anon_sym_LT_LT,
anon_sym_GT_GT,
ACTIONS(455), 2,
anon_sym_LT,
anon_sym_GT,
ACTIONS(437), 3,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
ACTIONS(457), 4,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
[21883] = 23,
ACTIONS(3), 1,
sym_comment,
ACTIONS(525), 1,
sym_identifier,
ACTIONS(531), 1,
anon_sym_type,
ACTIONS(533), 1,
anon_sym_LBRACK,
ACTIONS(537), 1,
anon_sym_macroexp,
ACTIONS(539), 1,
anon_sym_record,
ACTIONS(541), 1,
anon_sym_interface,
ACTIONS(543), 1,
anon_sym_enum,
ACTIONS(545), 1,
anon_sym_userdata,
ACTIONS(547), 1,
anon_sym_metamethod,
ACTIONS(641), 1,
anon_sym_PIPE,
ACTIONS(976), 1,
anon_sym_COMMA,
ACTIONS(978), 1,
anon_sym_end,
ACTIONS(980), 1,
anon_sym_LBRACE,
ACTIONS(982), 1,
anon_sym_where,
STATE(354), 1,
aux_sym_type_tuple_repeat1,
STATE(491), 1,
sym__type_def,
STATE(496), 1,
sym__macroexp_def,
STATE(503), 1,
sym_metamethod_annotation,
STATE(513), 1,
sym__record_def,
STATE(514), 1,
sym__interface_def,
STATE(515), 1,
sym__enum_def,
STATE(402), 3,
sym_record_field,
sym__record_entry,
aux_sym_record_body_repeat1,
[21955] = 17,
ACTIONS(3), 1,
sym_comment,
ACTIONS(359), 1,
anon_sym_TILDE,
ACTIONS(367), 1,
anon_sym_PIPE,
ACTIONS(369), 1,
anon_sym_AMP,
ACTIONS(375), 1,
anon_sym_SLASH,
ACTIONS(377), 1,
anon_sym_DOT_DOT,
ACTIONS(379), 1,
anon_sym_CARET,
ACTIONS(940), 1,
anon_sym_or,
ACTIONS(942), 1,
anon_sym_and,
ACTIONS(944), 1,
anon_sym_is,
ACTIONS(946), 1,
anon_sym_as,
ACTIONS(984), 1,
anon_sym_RBRACK,
ACTIONS(357), 2,
anon_sym_DASH,
anon_sym_PLUS,
ACTIONS(363), 2,
anon_sym_LT,
anon_sym_GT,
ACTIONS(371), 2,
anon_sym_LT_LT,
anon_sym_GT_GT,
ACTIONS(373), 3,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
ACTIONS(365), 4,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
[22015] = 17,
ACTIONS(3), 1,
sym_comment,
ACTIONS(359), 1,
anon_sym_TILDE,
ACTIONS(367), 1,
anon_sym_PIPE,
ACTIONS(369), 1,
anon_sym_AMP,
ACTIONS(375), 1,
anon_sym_SLASH,
ACTIONS(377), 1,
anon_sym_DOT_DOT,
ACTIONS(379), 1,
anon_sym_CARET,
ACTIONS(940), 1,
anon_sym_or,
ACTIONS(942), 1,
anon_sym_and,
ACTIONS(944), 1,
anon_sym_is,
ACTIONS(946), 1,
anon_sym_as,
ACTIONS(986), 1,
anon_sym_RPAREN,
ACTIONS(357), 2,
anon_sym_DASH,
anon_sym_PLUS,
ACTIONS(363), 2,
anon_sym_LT,
anon_sym_GT,
ACTIONS(371), 2,
anon_sym_LT_LT,
anon_sym_GT_GT,
ACTIONS(373), 3,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
ACTIONS(365), 4,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
[22075] = 17,
ACTIONS(3), 1,
sym_comment,
ACTIONS(359), 1,
anon_sym_TILDE,
ACTIONS(367), 1,
anon_sym_PIPE,
ACTIONS(369), 1,
anon_sym_AMP,
ACTIONS(375), 1,
anon_sym_SLASH,
ACTIONS(377), 1,
anon_sym_DOT_DOT,
ACTIONS(379), 1,
anon_sym_CARET,
ACTIONS(940), 1,
anon_sym_or,
ACTIONS(942), 1,
anon_sym_and,
ACTIONS(944), 1,
anon_sym_is,
ACTIONS(946), 1,
anon_sym_as,
ACTIONS(988), 1,
anon_sym_then,
ACTIONS(357), 2,
anon_sym_DASH,
anon_sym_PLUS,
ACTIONS(363), 2,
anon_sym_LT,
anon_sym_GT,
ACTIONS(371), 2,
anon_sym_LT_LT,
anon_sym_GT_GT,
ACTIONS(373), 3,
anon_sym_STAR,
anon_sym_SLASH_SLASH,
anon_sym_PERCENT,
ACTIONS(365), 4,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_TILDE_EQ,
anon_sym_GT_EQ,
[22135] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(994), 1,
anon_sym_COMMA,
STATE(350), 1,
aux_sym_var_declarators_repeat1,
ACTIONS(990), 5,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
anon_sym_EQ,
ACTIONS(992), 17,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
[22171] = 6,
ACTIONS(3), 1,
sym_comment,
ACTIONS(641), 1,
anon_sym_PIPE,
ACTIONS(976), 1,
anon_sym_COMMA,
STATE(352), 1,
aux_sym_type_tuple_repeat1,
ACTIONS(997), 5,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
anon_sym_EQ,
ACTIONS(999), 16,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
[22209] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(976), 1,
anon_sym_COMMA,
STATE(218), 1,
aux_sym_type_tuple_repeat1,
ACTIONS(1001), 5,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
anon_sym_EQ,
ACTIONS(1003), 16,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
[22244] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1005), 1,
anon_sym_COMMA,
STATE(353), 1,
aux_sym_return_statement_repeat1,
ACTIONS(519), 5,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
anon_sym_RPAREN,
ACTIONS(521), 16,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
[22279] = 22,
ACTIONS(3), 1,
sym_comment,
ACTIONS(525), 1,
sym_identifier,
ACTIONS(531), 1,
anon_sym_type,
ACTIONS(533), 1,
anon_sym_LBRACK,
ACTIONS(537), 1,
anon_sym_macroexp,
ACTIONS(539), 1,
anon_sym_record,
ACTIONS(541), 1,
anon_sym_interface,
ACTIONS(543), 1,
anon_sym_enum,
ACTIONS(545), 1,
anon_sym_userdata,
ACTIONS(547), 1,
anon_sym_metamethod,
ACTIONS(976), 1,
anon_sym_COMMA,
ACTIONS(1008), 1,
anon_sym_end,
ACTIONS(1010), 1,
anon_sym_LBRACE,
ACTIONS(1012), 1,
anon_sym_where,
STATE(218), 1,
aux_sym_type_tuple_repeat1,
STATE(491), 1,
sym__type_def,
STATE(496), 1,
sym__macroexp_def,
STATE(503), 1,
sym_metamethod_annotation,
STATE(513), 1,
sym__record_def,
STATE(514), 1,
sym__interface_def,
STATE(515), 1,
sym__enum_def,
STATE(411), 3,
sym_record_field,
sym__record_entry,
aux_sym_record_body_repeat1,
[22348] = 6,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1018), 1,
anon_sym_EQ,
ACTIONS(1020), 1,
anon_sym_COLON,
STATE(364), 1,
sym_type_annotation,
ACTIONS(1014), 4,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
ACTIONS(1016), 16,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
[22385] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(990), 6,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_EQ,
ACTIONS(992), 17,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
[22416] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1022), 6,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_LPAREN,
anon_sym_EQ,
ACTIONS(1024), 17,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
[22447] = 21,
ACTIONS(3), 1,
sym_comment,
ACTIONS(525), 1,
sym_identifier,
ACTIONS(531), 1,
anon_sym_type,
ACTIONS(533), 1,
anon_sym_LBRACK,
ACTIONS(537), 1,
anon_sym_macroexp,
ACTIONS(539), 1,
anon_sym_record,
ACTIONS(541), 1,
anon_sym_interface,
ACTIONS(543), 1,
anon_sym_enum,
ACTIONS(545), 1,
anon_sym_userdata,
ACTIONS(547), 1,
anon_sym_metamethod,
ACTIONS(950), 1,
anon_sym_end,
ACTIONS(952), 1,
anon_sym_is,
ACTIONS(954), 1,
anon_sym_LBRACE,
STATE(301), 1,
sym_record_body,
STATE(491), 1,
sym__type_def,
STATE(496), 1,
sym__macroexp_def,
STATE(503), 1,
sym_metamethod_annotation,
STATE(513), 1,
sym__record_def,
STATE(514), 1,
sym__interface_def,
STATE(515), 1,
sym__enum_def,
STATE(409), 3,
sym_record_field,
sym__record_entry,
aux_sym_record_body_repeat1,
[22513] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(511), 1,
anon_sym_COMMA,
STATE(353), 1,
aux_sym_return_statement_repeat1,
ACTIONS(1026), 4,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
ACTIONS(1028), 16,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
[22547] = 21,
ACTIONS(3), 1,
sym_comment,
ACTIONS(525), 1,
sym_identifier,
ACTIONS(531), 1,
anon_sym_type,
ACTIONS(533), 1,
anon_sym_LBRACK,
ACTIONS(537), 1,
anon_sym_macroexp,
ACTIONS(539), 1,
anon_sym_record,
ACTIONS(541), 1,
anon_sym_interface,
ACTIONS(543), 1,
anon_sym_enum,
ACTIONS(545), 1,
anon_sym_userdata,
ACTIONS(547), 1,
anon_sym_metamethod,
ACTIONS(950), 1,
anon_sym_end,
ACTIONS(952), 1,
anon_sym_is,
ACTIONS(954), 1,
anon_sym_LBRACE,
STATE(296), 1,
sym_record_body,
STATE(491), 1,
sym__type_def,
STATE(496), 1,
sym__macroexp_def,
STATE(503), 1,
sym_metamethod_annotation,
STATE(513), 1,
sym__record_def,
STATE(514), 1,
sym__interface_def,
STATE(515), 1,
sym__enum_def,
STATE(409), 3,
sym_record_field,
sym__record_entry,
aux_sym_record_body_repeat1,
[22613] = 21,
ACTIONS(3), 1,
sym_comment,
ACTIONS(525), 1,
sym_identifier,
ACTIONS(531), 1,
anon_sym_type,
ACTIONS(533), 1,
anon_sym_LBRACK,
ACTIONS(537), 1,
anon_sym_macroexp,
ACTIONS(539), 1,
anon_sym_record,
ACTIONS(541), 1,
anon_sym_interface,
ACTIONS(543), 1,
anon_sym_enum,
ACTIONS(545), 1,
anon_sym_userdata,
ACTIONS(547), 1,
anon_sym_metamethod,
ACTIONS(950), 1,
anon_sym_end,
ACTIONS(952), 1,
anon_sym_is,
ACTIONS(954), 1,
anon_sym_LBRACE,
STATE(293), 1,
sym_record_body,
STATE(491), 1,
sym__type_def,
STATE(496), 1,
sym__macroexp_def,
STATE(503), 1,
sym_metamethod_annotation,
STATE(513), 1,
sym__record_def,
STATE(514), 1,
sym__interface_def,
STATE(515), 1,
sym__enum_def,
STATE(409), 3,
sym_record_field,
sym__record_entry,
aux_sym_record_body_repeat1,
[22679] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(511), 1,
anon_sym_COMMA,
STATE(353), 1,
aux_sym_return_statement_repeat1,
ACTIONS(1030), 4,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
ACTIONS(1032), 16,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
[22713] = 21,
ACTIONS(3), 1,
sym_comment,
ACTIONS(525), 1,
sym_identifier,
ACTIONS(531), 1,
anon_sym_type,
ACTIONS(533), 1,
anon_sym_LBRACK,
ACTIONS(537), 1,
anon_sym_macroexp,
ACTIONS(539), 1,
anon_sym_record,
ACTIONS(541), 1,
anon_sym_interface,
ACTIONS(543), 1,
anon_sym_enum,
ACTIONS(545), 1,
anon_sym_userdata,
ACTIONS(547), 1,
anon_sym_metamethod,
ACTIONS(950), 1,
anon_sym_end,
ACTIONS(952), 1,
anon_sym_is,
ACTIONS(954), 1,
anon_sym_LBRACE,
STATE(291), 1,
sym_record_body,
STATE(491), 1,
sym__type_def,
STATE(496), 1,
sym__macroexp_def,
STATE(503), 1,
sym_metamethod_annotation,
STATE(513), 1,
sym__record_def,
STATE(514), 1,
sym__interface_def,
STATE(515), 1,
sym__enum_def,
STATE(409), 3,
sym_record_field,
sym__record_entry,
aux_sym_record_body_repeat1,
[22779] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1038), 1,
anon_sym_EQ,
ACTIONS(1034), 4,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
ACTIONS(1036), 16,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
[22810] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1040), 4,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
ACTIONS(1042), 16,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
[22838] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1044), 4,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
ACTIONS(1046), 16,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
[22866] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1048), 4,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
ACTIONS(1050), 16,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
[22894] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1052), 4,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
ACTIONS(1054), 16,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
[22922] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1056), 4,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
ACTIONS(1058), 16,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
[22950] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1060), 4,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
ACTIONS(1062), 16,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
[22978] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1064), 4,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
ACTIONS(1066), 16,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
[23006] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(922), 1,
anon_sym_SEMI,
ACTIONS(918), 3,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_LPAREN,
ACTIONS(920), 16,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
[23036] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1068), 4,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
ACTIONS(1070), 16,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
[23064] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1072), 4,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
ACTIONS(1074), 16,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
[23092] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1076), 4,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
ACTIONS(1078), 16,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
[23120] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1080), 4,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
ACTIONS(1082), 16,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
[23148] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1084), 4,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
ACTIONS(1086), 16,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
[23176] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1092), 1,
anon_sym_SEMI,
ACTIONS(1088), 3,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_LPAREN,
ACTIONS(1090), 16,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
[23206] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1094), 4,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
ACTIONS(1096), 16,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
[23234] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1098), 4,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
ACTIONS(1100), 16,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
[23262] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1102), 4,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
ACTIONS(1104), 16,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
[23290] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1106), 4,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
ACTIONS(1108), 16,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
[23318] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1040), 4,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
ACTIONS(1042), 16,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
[23346] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1110), 4,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
ACTIONS(1112), 16,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
[23374] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1114), 4,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
ACTIONS(1116), 16,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
[23402] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1118), 4,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
ACTIONS(1120), 16,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
[23430] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1122), 4,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
ACTIONS(1124), 16,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
[23458] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1126), 4,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
ACTIONS(1128), 16,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
[23486] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1056), 4,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
ACTIONS(1058), 16,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
[23514] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1122), 4,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
ACTIONS(1124), 16,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
[23542] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1114), 4,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
ACTIONS(1116), 16,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
[23570] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(922), 1,
anon_sym_SEMI,
ACTIONS(918), 3,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_LPAREN,
ACTIONS(920), 16,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
[23600] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1130), 4,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
ACTIONS(1132), 16,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
[23628] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1134), 4,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
ACTIONS(1136), 16,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
[23656] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1138), 4,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
ACTIONS(1140), 16,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
[23684] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1142), 4,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_SEMI,
anon_sym_LPAREN,
ACTIONS(1144), 16,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
[23712] = 18,
ACTIONS(3), 1,
sym_comment,
ACTIONS(525), 1,
sym_identifier,
ACTIONS(531), 1,
anon_sym_type,
ACTIONS(533), 1,
anon_sym_LBRACK,
ACTIONS(537), 1,
anon_sym_macroexp,
ACTIONS(539), 1,
anon_sym_record,
ACTIONS(541), 1,
anon_sym_interface,
ACTIONS(543), 1,
anon_sym_enum,
ACTIONS(545), 1,
anon_sym_userdata,
ACTIONS(547), 1,
anon_sym_metamethod,
ACTIONS(1146), 1,
anon_sym_end,
STATE(491), 1,
sym__type_def,
STATE(496), 1,
sym__macroexp_def,
STATE(503), 1,
sym_metamethod_annotation,
STATE(513), 1,
sym__record_def,
STATE(514), 1,
sym__interface_def,
STATE(515), 1,
sym__enum_def,
STATE(412), 3,
sym_record_field,
sym__record_entry,
aux_sym_record_body_repeat1,
[23769] = 18,
ACTIONS(3), 1,
sym_comment,
ACTIONS(525), 1,
sym_identifier,
ACTIONS(531), 1,
anon_sym_type,
ACTIONS(533), 1,
anon_sym_LBRACK,
ACTIONS(537), 1,
anon_sym_macroexp,
ACTIONS(539), 1,
anon_sym_record,
ACTIONS(541), 1,
anon_sym_interface,
ACTIONS(543), 1,
anon_sym_enum,
ACTIONS(545), 1,
anon_sym_userdata,
ACTIONS(547), 1,
anon_sym_metamethod,
ACTIONS(1148), 1,
anon_sym_end,
STATE(491), 1,
sym__type_def,
STATE(496), 1,
sym__macroexp_def,
STATE(503), 1,
sym_metamethod_annotation,
STATE(513), 1,
sym__record_def,
STATE(514), 1,
sym__interface_def,
STATE(515), 1,
sym__enum_def,
STATE(399), 3,
sym_record_field,
sym__record_entry,
aux_sym_record_body_repeat1,
[23826] = 18,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1150), 1,
sym_identifier,
ACTIONS(1153), 1,
anon_sym_end,
ACTIONS(1155), 1,
anon_sym_type,
ACTIONS(1158), 1,
anon_sym_LBRACK,
ACTIONS(1161), 1,
anon_sym_macroexp,
ACTIONS(1164), 1,
anon_sym_record,
ACTIONS(1167), 1,
anon_sym_interface,
ACTIONS(1170), 1,
anon_sym_enum,
ACTIONS(1173), 1,
anon_sym_userdata,
ACTIONS(1176), 1,
anon_sym_metamethod,
STATE(491), 1,
sym__type_def,
STATE(496), 1,
sym__macroexp_def,
STATE(503), 1,
sym_metamethod_annotation,
STATE(513), 1,
sym__record_def,
STATE(514), 1,
sym__interface_def,
STATE(515), 1,
sym__enum_def,
STATE(399), 3,
sym_record_field,
sym__record_entry,
aux_sym_record_body_repeat1,
[23883] = 18,
ACTIONS(3), 1,
sym_comment,
ACTIONS(525), 1,
sym_identifier,
ACTIONS(531), 1,
anon_sym_type,
ACTIONS(533), 1,
anon_sym_LBRACK,
ACTIONS(537), 1,
anon_sym_macroexp,
ACTIONS(539), 1,
anon_sym_record,
ACTIONS(541), 1,
anon_sym_interface,
ACTIONS(543), 1,
anon_sym_enum,
ACTIONS(545), 1,
anon_sym_userdata,
ACTIONS(547), 1,
anon_sym_metamethod,
ACTIONS(1179), 1,
anon_sym_end,
STATE(491), 1,
sym__type_def,
STATE(496), 1,
sym__macroexp_def,
STATE(503), 1,
sym_metamethod_annotation,
STATE(513), 1,
sym__record_def,
STATE(514), 1,
sym__interface_def,
STATE(515), 1,
sym__enum_def,
STATE(401), 3,
sym_record_field,
sym__record_entry,
aux_sym_record_body_repeat1,
[23940] = 18,
ACTIONS(3), 1,
sym_comment,
ACTIONS(525), 1,
sym_identifier,
ACTIONS(531), 1,
anon_sym_type,
ACTIONS(533), 1,
anon_sym_LBRACK,
ACTIONS(537), 1,
anon_sym_macroexp,
ACTIONS(539), 1,
anon_sym_record,
ACTIONS(541), 1,
anon_sym_interface,
ACTIONS(543), 1,
anon_sym_enum,
ACTIONS(545), 1,
anon_sym_userdata,
ACTIONS(547), 1,
anon_sym_metamethod,
ACTIONS(1181), 1,
anon_sym_end,
STATE(491), 1,
sym__type_def,
STATE(496), 1,
sym__macroexp_def,
STATE(503), 1,
sym_metamethod_annotation,
STATE(513), 1,
sym__record_def,
STATE(514), 1,
sym__interface_def,
STATE(515), 1,
sym__enum_def,
STATE(399), 3,
sym_record_field,
sym__record_entry,
aux_sym_record_body_repeat1,
[23997] = 18,
ACTIONS(3), 1,
sym_comment,
ACTIONS(525), 1,
sym_identifier,
ACTIONS(531), 1,
anon_sym_type,
ACTIONS(533), 1,
anon_sym_LBRACK,
ACTIONS(537), 1,
anon_sym_macroexp,
ACTIONS(539), 1,
anon_sym_record,
ACTIONS(541), 1,
anon_sym_interface,
ACTIONS(543), 1,
anon_sym_enum,
ACTIONS(545), 1,
anon_sym_userdata,
ACTIONS(547), 1,
anon_sym_metamethod,
ACTIONS(1183), 1,
anon_sym_end,
STATE(491), 1,
sym__type_def,
STATE(496), 1,
sym__macroexp_def,
STATE(503), 1,
sym_metamethod_annotation,
STATE(513), 1,
sym__record_def,
STATE(514), 1,
sym__interface_def,
STATE(515), 1,
sym__enum_def,
STATE(399), 3,
sym_record_field,
sym__record_entry,
aux_sym_record_body_repeat1,
[24054] = 18,
ACTIONS(3), 1,
sym_comment,
ACTIONS(525), 1,
sym_identifier,
ACTIONS(531), 1,
anon_sym_type,
ACTIONS(533), 1,
anon_sym_LBRACK,
ACTIONS(537), 1,
anon_sym_macroexp,
ACTIONS(539), 1,
anon_sym_record,
ACTIONS(541), 1,
anon_sym_interface,
ACTIONS(543), 1,
anon_sym_enum,
ACTIONS(545), 1,
anon_sym_userdata,
ACTIONS(547), 1,
anon_sym_metamethod,
ACTIONS(1185), 1,
anon_sym_end,
STATE(491), 1,
sym__type_def,
STATE(496), 1,
sym__macroexp_def,
STATE(503), 1,
sym_metamethod_annotation,
STATE(513), 1,
sym__record_def,
STATE(514), 1,
sym__interface_def,
STATE(515), 1,
sym__enum_def,
STATE(404), 3,
sym_record_field,
sym__record_entry,
aux_sym_record_body_repeat1,
[24111] = 18,
ACTIONS(3), 1,
sym_comment,
ACTIONS(525), 1,
sym_identifier,
ACTIONS(531), 1,
anon_sym_type,
ACTIONS(533), 1,
anon_sym_LBRACK,
ACTIONS(537), 1,
anon_sym_macroexp,
ACTIONS(539), 1,
anon_sym_record,
ACTIONS(541), 1,
anon_sym_interface,
ACTIONS(543), 1,
anon_sym_enum,
ACTIONS(545), 1,
anon_sym_userdata,
ACTIONS(547), 1,
anon_sym_metamethod,
ACTIONS(1187), 1,
anon_sym_end,
STATE(491), 1,
sym__type_def,
STATE(496), 1,
sym__macroexp_def,
STATE(503), 1,
sym_metamethod_annotation,
STATE(513), 1,
sym__record_def,
STATE(514), 1,
sym__interface_def,
STATE(515), 1,
sym__enum_def,
STATE(399), 3,
sym_record_field,
sym__record_entry,
aux_sym_record_body_repeat1,
[24168] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1189), 3,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_LPAREN,
ACTIONS(1191), 16,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
[24195] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1193), 3,
ts_builtin_sym_end,
anon_sym_COLON_COLON,
anon_sym_LPAREN,
ACTIONS(1195), 16,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_elseif,
anon_sym_else,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_until,
anon_sym_do,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
[24222] = 18,
ACTIONS(3), 1,
sym_comment,
ACTIONS(525), 1,
sym_identifier,
ACTIONS(531), 1,
anon_sym_type,
ACTIONS(533), 1,
anon_sym_LBRACK,
ACTIONS(537), 1,
anon_sym_macroexp,
ACTIONS(539), 1,
anon_sym_record,
ACTIONS(541), 1,
anon_sym_interface,
ACTIONS(543), 1,
anon_sym_enum,
ACTIONS(545), 1,
anon_sym_userdata,
ACTIONS(547), 1,
anon_sym_metamethod,
ACTIONS(1197), 1,
anon_sym_end,
STATE(491), 1,
sym__type_def,
STATE(496), 1,
sym__macroexp_def,
STATE(503), 1,
sym_metamethod_annotation,
STATE(513), 1,
sym__record_def,
STATE(514), 1,
sym__interface_def,
STATE(515), 1,
sym__enum_def,
STATE(398), 3,
sym_record_field,
sym__record_entry,
aux_sym_record_body_repeat1,
[24279] = 18,
ACTIONS(3), 1,
sym_comment,
ACTIONS(525), 1,
sym_identifier,
ACTIONS(531), 1,
anon_sym_type,
ACTIONS(533), 1,
anon_sym_LBRACK,
ACTIONS(537), 1,
anon_sym_macroexp,
ACTIONS(539), 1,
anon_sym_record,
ACTIONS(541), 1,
anon_sym_interface,
ACTIONS(543), 1,
anon_sym_enum,
ACTIONS(545), 1,
anon_sym_userdata,
ACTIONS(547), 1,
anon_sym_metamethod,
ACTIONS(1199), 1,
anon_sym_end,
STATE(491), 1,
sym__type_def,
STATE(496), 1,
sym__macroexp_def,
STATE(503), 1,
sym_metamethod_annotation,
STATE(513), 1,
sym__record_def,
STATE(514), 1,
sym__interface_def,
STATE(515), 1,
sym__enum_def,
STATE(399), 3,
sym_record_field,
sym__record_entry,
aux_sym_record_body_repeat1,
[24336] = 18,
ACTIONS(3), 1,
sym_comment,
ACTIONS(525), 1,
sym_identifier,
ACTIONS(531), 1,
anon_sym_type,
ACTIONS(533), 1,
anon_sym_LBRACK,
ACTIONS(537), 1,
anon_sym_macroexp,
ACTIONS(539), 1,
anon_sym_record,
ACTIONS(541), 1,
anon_sym_interface,
ACTIONS(543), 1,
anon_sym_enum,
ACTIONS(545), 1,
anon_sym_userdata,
ACTIONS(547), 1,
anon_sym_metamethod,
ACTIONS(1201), 1,
anon_sym_end,
STATE(491), 1,
sym__type_def,
STATE(496), 1,
sym__macroexp_def,
STATE(503), 1,
sym_metamethod_annotation,
STATE(513), 1,
sym__record_def,
STATE(514), 1,
sym__interface_def,
STATE(515), 1,
sym__enum_def,
STATE(399), 3,
sym_record_field,
sym__record_entry,
aux_sym_record_body_repeat1,
[24393] = 18,
ACTIONS(3), 1,
sym_comment,
ACTIONS(525), 1,
sym_identifier,
ACTIONS(531), 1,
anon_sym_type,
ACTIONS(533), 1,
anon_sym_LBRACK,
ACTIONS(537), 1,
anon_sym_macroexp,
ACTIONS(539), 1,
anon_sym_record,
ACTIONS(541), 1,
anon_sym_interface,
ACTIONS(543), 1,
anon_sym_enum,
ACTIONS(545), 1,
anon_sym_userdata,
ACTIONS(547), 1,
anon_sym_metamethod,
ACTIONS(1203), 1,
anon_sym_end,
STATE(491), 1,
sym__type_def,
STATE(496), 1,
sym__macroexp_def,
STATE(503), 1,
sym_metamethod_annotation,
STATE(513), 1,
sym__record_def,
STATE(514), 1,
sym__interface_def,
STATE(515), 1,
sym__enum_def,
STATE(399), 3,
sym_record_field,
sym__record_entry,
aux_sym_record_body_repeat1,
[24450] = 18,
ACTIONS(3), 1,
sym_comment,
ACTIONS(525), 1,
sym_identifier,
ACTIONS(531), 1,
anon_sym_type,
ACTIONS(533), 1,
anon_sym_LBRACK,
ACTIONS(537), 1,
anon_sym_macroexp,
ACTIONS(539), 1,
anon_sym_record,
ACTIONS(541), 1,
anon_sym_interface,
ACTIONS(543), 1,
anon_sym_enum,
ACTIONS(545), 1,
anon_sym_userdata,
ACTIONS(547), 1,
anon_sym_metamethod,
ACTIONS(1205), 1,
anon_sym_end,
STATE(491), 1,
sym__type_def,
STATE(496), 1,
sym__macroexp_def,
STATE(503), 1,
sym_metamethod_annotation,
STATE(513), 1,
sym__record_def,
STATE(514), 1,
sym__interface_def,
STATE(515), 1,
sym__enum_def,
STATE(399), 3,
sym_record_field,
sym__record_entry,
aux_sym_record_body_repeat1,
[24507] = 18,
ACTIONS(3), 1,
sym_comment,
ACTIONS(525), 1,
sym_identifier,
ACTIONS(531), 1,
anon_sym_type,
ACTIONS(533), 1,
anon_sym_LBRACK,
ACTIONS(537), 1,
anon_sym_macroexp,
ACTIONS(539), 1,
anon_sym_record,
ACTIONS(541), 1,
anon_sym_interface,
ACTIONS(543), 1,
anon_sym_enum,
ACTIONS(545), 1,
anon_sym_userdata,
ACTIONS(547), 1,
anon_sym_metamethod,
ACTIONS(1207), 1,
anon_sym_end,
STATE(491), 1,
sym__type_def,
STATE(496), 1,
sym__macroexp_def,
STATE(503), 1,
sym_metamethod_annotation,
STATE(513), 1,
sym__record_def,
STATE(514), 1,
sym__interface_def,
STATE(515), 1,
sym__enum_def,
STATE(399), 3,
sym_record_field,
sym__record_entry,
aux_sym_record_body_repeat1,
[24564] = 18,
ACTIONS(3), 1,
sym_comment,
ACTIONS(525), 1,
sym_identifier,
ACTIONS(531), 1,
anon_sym_type,
ACTIONS(533), 1,
anon_sym_LBRACK,
ACTIONS(537), 1,
anon_sym_macroexp,
ACTIONS(539), 1,
anon_sym_record,
ACTIONS(541), 1,
anon_sym_interface,
ACTIONS(543), 1,
anon_sym_enum,
ACTIONS(545), 1,
anon_sym_userdata,
ACTIONS(547), 1,
anon_sym_metamethod,
ACTIONS(1209), 1,
anon_sym_end,
STATE(491), 1,
sym__type_def,
STATE(496), 1,
sym__macroexp_def,
STATE(503), 1,
sym_metamethod_annotation,
STATE(513), 1,
sym__record_def,
STATE(514), 1,
sym__interface_def,
STATE(515), 1,
sym__enum_def,
STATE(399), 3,
sym_record_field,
sym__record_entry,
aux_sym_record_body_repeat1,
[24621] = 18,
ACTIONS(3), 1,
sym_comment,
ACTIONS(525), 1,
sym_identifier,
ACTIONS(531), 1,
anon_sym_type,
ACTIONS(533), 1,
anon_sym_LBRACK,
ACTIONS(537), 1,
anon_sym_macroexp,
ACTIONS(539), 1,
anon_sym_record,
ACTIONS(541), 1,
anon_sym_interface,
ACTIONS(543), 1,
anon_sym_enum,
ACTIONS(545), 1,
anon_sym_userdata,
ACTIONS(547), 1,
anon_sym_metamethod,
ACTIONS(1211), 1,
anon_sym_end,
STATE(491), 1,
sym__type_def,
STATE(496), 1,
sym__macroexp_def,
STATE(503), 1,
sym_metamethod_annotation,
STATE(513), 1,
sym__record_def,
STATE(514), 1,
sym__interface_def,
STATE(515), 1,
sym__enum_def,
STATE(413), 3,
sym_record_field,
sym__record_entry,
aux_sym_record_body_repeat1,
[24678] = 12,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1213), 1,
sym_identifier,
ACTIONS(1215), 1,
anon_sym_LPAREN,
ACTIONS(1217), 1,
anon_sym_LBRACE,
ACTIONS(1219), 1,
anon_sym_function,
ACTIONS(1221), 1,
anon_sym_record,
ACTIONS(1223), 1,
anon_sym_interface,
ACTIONS(1225), 1,
anon_sym_enum,
STATE(10), 1,
sym_type_index,
STATE(287), 1,
sym__type,
STATE(52), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
STATE(295), 4,
sym_anon_interface,
sym_anon_record,
sym__anon_enum,
sym__newtype,
[24721] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1229), 2,
anon_sym_COLON_COLON,
anon_sym_LPAREN,
ACTIONS(1227), 14,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_do,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
[24745] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1233), 2,
anon_sym_COLON_COLON,
anon_sym_LPAREN,
ACTIONS(1231), 14,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_do,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
[24769] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1237), 2,
anon_sym_COLON_COLON,
anon_sym_LPAREN,
ACTIONS(1235), 14,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_do,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
[24793] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1243), 1,
anon_sym_COLON,
ACTIONS(1241), 2,
anon_sym_COLON_COLON,
anon_sym_LPAREN,
ACTIONS(1239), 13,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_do,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
[24819] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1247), 2,
anon_sym_COLON_COLON,
anon_sym_LPAREN,
ACTIONS(1245), 14,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_do,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
[24843] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1251), 2,
anon_sym_COLON_COLON,
anon_sym_LPAREN,
ACTIONS(1249), 14,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_do,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
[24867] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1257), 1,
anon_sym_COLON,
ACTIONS(1255), 2,
anon_sym_COLON_COLON,
anon_sym_LPAREN,
ACTIONS(1253), 13,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_do,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
[24893] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1261), 2,
anon_sym_COLON_COLON,
anon_sym_LPAREN,
ACTIONS(1259), 14,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_do,
anon_sym_COLON,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
[24917] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1265), 2,
anon_sym_COLON_COLON,
anon_sym_LPAREN,
ACTIONS(1263), 13,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_do,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
[24940] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1269), 2,
anon_sym_COLON_COLON,
anon_sym_LPAREN,
ACTIONS(1267), 13,
anon_sym_return,
sym_break,
anon_sym_if,
anon_sym_end,
anon_sym_for,
anon_sym_while,
anon_sym_repeat,
anon_sym_do,
anon_sym_local,
anon_sym_global,
anon_sym_function,
anon_sym_goto,
sym_identifier,
[24963] = 15,
ACTIONS(3), 1,
sym_comment,
ACTIONS(537), 1,
anon_sym_macroexp,
ACTIONS(1271), 1,
sym_identifier,
ACTIONS(1273), 1,
anon_sym_type,
ACTIONS(1275), 1,
anon_sym_function,
ACTIONS(1277), 1,
anon_sym_record,
ACTIONS(1279), 1,
anon_sym_interface,
ACTIONS(1281), 1,
anon_sym_enum,
STATE(339), 1,
sym_var_declarator,
STATE(355), 1,
sym_var_declarators,
STATE(365), 1,
sym__enum_def,
STATE(385), 1,
sym__type_def,
STATE(386), 1,
sym__macroexp_def,
STATE(387), 1,
sym__record_def,
STATE(389), 1,
sym__interface_def,
[25009] = 12,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1215), 1,
anon_sym_LPAREN,
ACTIONS(1217), 1,
anon_sym_LBRACE,
ACTIONS(1283), 1,
sym_identifier,
ACTIONS(1285), 1,
anon_sym_RPAREN,
ACTIONS(1287), 1,
anon_sym_function,
ACTIONS(1289), 1,
anon_sym_DOT_DOT_DOT,
STATE(10), 1,
sym_type_index,
STATE(617), 1,
sym__partype,
STATE(632), 1,
sym__type,
STATE(679), 1,
sym__annotated_var_arg,
STATE(52), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[25049] = 12,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1215), 1,
anon_sym_LPAREN,
ACTIONS(1217), 1,
anon_sym_LBRACE,
ACTIONS(1283), 1,
sym_identifier,
ACTIONS(1287), 1,
anon_sym_function,
ACTIONS(1289), 1,
anon_sym_DOT_DOT_DOT,
ACTIONS(1291), 1,
anon_sym_RPAREN,
STATE(10), 1,
sym_type_index,
STATE(606), 1,
sym__partype,
STATE(632), 1,
sym__type,
STATE(680), 1,
sym__annotated_var_arg,
STATE(52), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[25089] = 12,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1215), 1,
anon_sym_LPAREN,
ACTIONS(1217), 1,
anon_sym_LBRACE,
ACTIONS(1283), 1,
sym_identifier,
ACTIONS(1287), 1,
anon_sym_function,
ACTIONS(1289), 1,
anon_sym_DOT_DOT_DOT,
ACTIONS(1293), 1,
anon_sym_RPAREN,
STATE(10), 1,
sym_type_index,
STATE(630), 1,
sym__partype,
STATE(632), 1,
sym__type,
STATE(698), 1,
sym__annotated_var_arg,
STATE(52), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[25129] = 11,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1215), 1,
anon_sym_LPAREN,
ACTIONS(1217), 1,
anon_sym_LBRACE,
ACTIONS(1283), 1,
sym_identifier,
ACTIONS(1287), 1,
anon_sym_function,
ACTIONS(1289), 1,
anon_sym_DOT_DOT_DOT,
STATE(10), 1,
sym_type_index,
STATE(632), 1,
sym__type,
STATE(647), 1,
sym__partype,
STATE(697), 1,
sym__annotated_var_arg,
STATE(52), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[25166] = 11,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1215), 1,
anon_sym_LPAREN,
ACTIONS(1217), 1,
anon_sym_LBRACE,
ACTIONS(1283), 1,
sym_identifier,
ACTIONS(1287), 1,
anon_sym_function,
ACTIONS(1289), 1,
anon_sym_DOT_DOT_DOT,
STATE(10), 1,
sym_type_index,
STATE(632), 1,
sym__type,
STATE(647), 1,
sym__partype,
STATE(727), 1,
sym__annotated_var_arg,
STATE(52), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[25203] = 11,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1215), 1,
anon_sym_LPAREN,
ACTIONS(1217), 1,
anon_sym_LBRACE,
ACTIONS(1283), 1,
sym_identifier,
ACTIONS(1287), 1,
anon_sym_function,
ACTIONS(1289), 1,
anon_sym_DOT_DOT_DOT,
STATE(10), 1,
sym_type_index,
STATE(632), 1,
sym__type,
STATE(647), 1,
sym__partype,
STATE(716), 1,
sym__annotated_var_arg,
STATE(52), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[25240] = 11,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1215), 1,
anon_sym_LPAREN,
ACTIONS(1217), 1,
anon_sym_LBRACE,
ACTIONS(1283), 1,
sym_identifier,
ACTIONS(1287), 1,
anon_sym_function,
ACTIONS(1289), 1,
anon_sym_DOT_DOT_DOT,
STATE(10), 1,
sym_type_index,
STATE(632), 1,
sym__type,
STATE(647), 1,
sym__partype,
STATE(683), 1,
sym__annotated_var_arg,
STATE(52), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[25277] = 11,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1215), 1,
anon_sym_LPAREN,
ACTIONS(1217), 1,
anon_sym_LBRACE,
ACTIONS(1283), 1,
sym_identifier,
ACTIONS(1287), 1,
anon_sym_function,
ACTIONS(1289), 1,
anon_sym_DOT_DOT_DOT,
STATE(10), 1,
sym_type_index,
STATE(632), 1,
sym__type,
STATE(647), 1,
sym__partype,
STATE(702), 1,
sym__annotated_var_arg,
STATE(52), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[25314] = 11,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1215), 1,
anon_sym_LPAREN,
ACTIONS(1217), 1,
anon_sym_LBRACE,
ACTIONS(1283), 1,
sym_identifier,
ACTIONS(1287), 1,
anon_sym_function,
ACTIONS(1289), 1,
anon_sym_DOT_DOT_DOT,
STATE(10), 1,
sym_type_index,
STATE(632), 1,
sym__type,
STATE(647), 1,
sym__partype,
STATE(675), 1,
sym__annotated_var_arg,
STATE(52), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[25351] = 10,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1295), 1,
sym_identifier,
ACTIONS(1297), 1,
anon_sym_LPAREN,
ACTIONS(1299), 1,
anon_sym_LBRACE,
ACTIONS(1301), 1,
anon_sym_function,
STATE(36), 1,
sym_return_type,
STATE(45), 1,
sym_variadic_type,
STATE(177), 1,
sym_type_index,
STATE(230), 1,
sym__type,
STATE(191), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[25385] = 13,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1271), 1,
sym_identifier,
ACTIONS(1273), 1,
anon_sym_type,
ACTIONS(1275), 1,
anon_sym_function,
ACTIONS(1277), 1,
anon_sym_record,
ACTIONS(1279), 1,
anon_sym_interface,
ACTIONS(1281), 1,
anon_sym_enum,
STATE(339), 1,
sym_var_declarator,
STATE(355), 1,
sym_var_declarators,
STATE(369), 1,
sym__interface_def,
STATE(383), 1,
sym__enum_def,
STATE(390), 1,
sym__record_def,
STATE(391), 1,
sym__type_def,
[25425] = 10,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1295), 1,
sym_identifier,
ACTIONS(1297), 1,
anon_sym_LPAREN,
ACTIONS(1299), 1,
anon_sym_LBRACE,
ACTIONS(1301), 1,
anon_sym_function,
STATE(45), 1,
sym_variadic_type,
STATE(177), 1,
sym_type_index,
STATE(230), 1,
sym__type,
STATE(425), 1,
sym_return_type,
STATE(191), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[25459] = 10,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1295), 1,
sym_identifier,
ACTIONS(1297), 1,
anon_sym_LPAREN,
ACTIONS(1299), 1,
anon_sym_LBRACE,
ACTIONS(1301), 1,
anon_sym_function,
STATE(45), 1,
sym_variadic_type,
STATE(177), 1,
sym_type_index,
STATE(230), 1,
sym__type,
STATE(424), 1,
sym_return_type,
STATE(191), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[25493] = 10,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1297), 1,
anon_sym_LPAREN,
ACTIONS(1303), 1,
sym_identifier,
ACTIONS(1305), 1,
anon_sym_LBRACE,
ACTIONS(1307), 1,
anon_sym_function,
STATE(29), 1,
sym_return_type,
STATE(45), 1,
sym_variadic_type,
STATE(53), 1,
sym_type_index,
STATE(58), 1,
sym__type,
STATE(72), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[25527] = 10,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1297), 1,
anon_sym_LPAREN,
ACTIONS(1303), 1,
sym_identifier,
ACTIONS(1305), 1,
anon_sym_LBRACE,
ACTIONS(1307), 1,
anon_sym_function,
STATE(29), 1,
sym_return_type,
STATE(45), 1,
sym_variadic_type,
STATE(53), 1,
sym_type_index,
STATE(96), 1,
sym__type,
STATE(72), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[25561] = 10,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1297), 1,
anon_sym_LPAREN,
ACTIONS(1303), 1,
sym_identifier,
ACTIONS(1305), 1,
anon_sym_LBRACE,
ACTIONS(1307), 1,
anon_sym_function,
STATE(36), 1,
sym_return_type,
STATE(45), 1,
sym_variadic_type,
STATE(53), 1,
sym_type_index,
STATE(96), 1,
sym__type,
STATE(72), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[25595] = 10,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1295), 1,
sym_identifier,
ACTIONS(1297), 1,
anon_sym_LPAREN,
ACTIONS(1299), 1,
anon_sym_LBRACE,
ACTIONS(1301), 1,
anon_sym_function,
STATE(29), 1,
sym_return_type,
STATE(45), 1,
sym_variadic_type,
STATE(177), 1,
sym_type_index,
STATE(195), 1,
sym__type,
STATE(191), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[25629] = 10,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1295), 1,
sym_identifier,
ACTIONS(1297), 1,
anon_sym_LPAREN,
ACTIONS(1299), 1,
anon_sym_LBRACE,
ACTIONS(1301), 1,
anon_sym_function,
STATE(36), 1,
sym_return_type,
STATE(45), 1,
sym_variadic_type,
STATE(177), 1,
sym_type_index,
STATE(195), 1,
sym__type,
STATE(191), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[25663] = 10,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1295), 1,
sym_identifier,
ACTIONS(1297), 1,
anon_sym_LPAREN,
ACTIONS(1299), 1,
anon_sym_LBRACE,
ACTIONS(1301), 1,
anon_sym_function,
STATE(29), 1,
sym_return_type,
STATE(45), 1,
sym_variadic_type,
STATE(177), 1,
sym_type_index,
STATE(230), 1,
sym__type,
STATE(191), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[25697] = 10,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1295), 1,
sym_identifier,
ACTIONS(1299), 1,
anon_sym_LBRACE,
ACTIONS(1301), 1,
anon_sym_function,
ACTIONS(1309), 1,
anon_sym_LPAREN,
STATE(177), 1,
sym_type_index,
STATE(185), 1,
sym__type,
STATE(200), 1,
sym_variadic_type,
STATE(204), 1,
sym_return_type,
STATE(191), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[25731] = 10,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1295), 1,
sym_identifier,
ACTIONS(1299), 1,
anon_sym_LBRACE,
ACTIONS(1301), 1,
anon_sym_function,
ACTIONS(1309), 1,
anon_sym_LPAREN,
STATE(177), 1,
sym_type_index,
STATE(185), 1,
sym__type,
STATE(200), 1,
sym_variadic_type,
STATE(209), 1,
sym_return_type,
STATE(191), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[25765] = 10,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1303), 1,
sym_identifier,
ACTIONS(1305), 1,
anon_sym_LBRACE,
ACTIONS(1307), 1,
anon_sym_function,
ACTIONS(1311), 1,
anon_sym_LPAREN,
STATE(53), 1,
sym_type_index,
STATE(68), 1,
sym__type,
STATE(74), 1,
sym_variadic_type,
STATE(86), 1,
sym_return_type,
STATE(72), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[25799] = 10,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1303), 1,
sym_identifier,
ACTIONS(1305), 1,
anon_sym_LBRACE,
ACTIONS(1307), 1,
anon_sym_function,
ACTIONS(1311), 1,
anon_sym_LPAREN,
STATE(53), 1,
sym_type_index,
STATE(68), 1,
sym__type,
STATE(71), 1,
sym_return_type,
STATE(74), 1,
sym_variadic_type,
STATE(72), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[25833] = 10,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1295), 1,
sym_identifier,
ACTIONS(1299), 1,
anon_sym_LBRACE,
ACTIONS(1313), 1,
anon_sym_LPAREN,
ACTIONS(1315), 1,
anon_sym_function,
STATE(177), 1,
sym_type_index,
STATE(200), 1,
sym_variadic_type,
STATE(204), 1,
sym_return_type,
STATE(570), 1,
sym__type,
STATE(191), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[25867] = 10,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1295), 1,
sym_identifier,
ACTIONS(1299), 1,
anon_sym_LBRACE,
ACTIONS(1313), 1,
anon_sym_LPAREN,
ACTIONS(1315), 1,
anon_sym_function,
STATE(177), 1,
sym_type_index,
STATE(200), 1,
sym_variadic_type,
STATE(209), 1,
sym_return_type,
STATE(570), 1,
sym__type,
STATE(191), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[25901] = 10,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1297), 1,
anon_sym_LPAREN,
ACTIONS(1303), 1,
sym_identifier,
ACTIONS(1305), 1,
anon_sym_LBRACE,
ACTIONS(1307), 1,
anon_sym_function,
STATE(36), 1,
sym_return_type,
STATE(45), 1,
sym_variadic_type,
STATE(53), 1,
sym_type_index,
STATE(58), 1,
sym__type,
STATE(72), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[25935] = 9,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1295), 1,
sym_identifier,
ACTIONS(1299), 1,
anon_sym_LBRACE,
ACTIONS(1301), 1,
anon_sym_function,
ACTIONS(1317), 1,
anon_sym_LPAREN,
STATE(177), 1,
sym_type_index,
STATE(219), 1,
sym__type,
STATE(692), 1,
sym_variadic_type,
STATE(191), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[25966] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(766), 1,
anon_sym_PIPE,
ACTIONS(1321), 1,
anon_sym_LBRACK,
ACTIONS(1319), 9,
anon_sym_end,
anon_sym_type,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
sym_identifier,
[25987] = 9,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1213), 1,
sym_identifier,
ACTIONS(1217), 1,
anon_sym_LBRACE,
ACTIONS(1323), 1,
anon_sym_LPAREN,
ACTIONS(1325), 1,
anon_sym_function,
STATE(10), 1,
sym_type_index,
STATE(110), 1,
sym_type_tuple,
STATE(142), 1,
sym__type,
STATE(52), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[26018] = 9,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1295), 1,
sym_identifier,
ACTIONS(1299), 1,
anon_sym_LBRACE,
ACTIONS(1301), 1,
anon_sym_function,
ACTIONS(1317), 1,
anon_sym_LPAREN,
STATE(50), 1,
sym_variadic_type,
STATE(177), 1,
sym_type_index,
STATE(219), 1,
sym__type,
STATE(191), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[26049] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(766), 1,
anon_sym_PIPE,
ACTIONS(1329), 1,
anon_sym_LBRACK,
ACTIONS(1327), 9,
anon_sym_end,
anon_sym_type,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
sym_identifier,
[26070] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1333), 1,
anon_sym_COLON,
ACTIONS(1335), 1,
anon_sym_LBRACK,
ACTIONS(1331), 9,
anon_sym_end,
anon_sym_type,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
sym_identifier,
[26091] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(766), 1,
anon_sym_PIPE,
ACTIONS(1339), 1,
anon_sym_LBRACK,
ACTIONS(1337), 9,
anon_sym_end,
anon_sym_type,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
sym_identifier,
[26112] = 9,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1303), 1,
sym_identifier,
ACTIONS(1305), 1,
anon_sym_LBRACE,
ACTIONS(1307), 1,
anon_sym_function,
ACTIONS(1341), 1,
anon_sym_LPAREN,
STATE(50), 1,
sym_variadic_type,
STATE(53), 1,
sym_type_index,
STATE(97), 1,
sym__type,
STATE(72), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[26143] = 9,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1303), 1,
sym_identifier,
ACTIONS(1305), 1,
anon_sym_LBRACE,
ACTIONS(1307), 1,
anon_sym_function,
ACTIONS(1341), 1,
anon_sym_LPAREN,
STATE(33), 1,
sym_variadic_type,
STATE(53), 1,
sym_type_index,
STATE(97), 1,
sym__type,
STATE(72), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[26174] = 9,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1215), 1,
anon_sym_LPAREN,
ACTIONS(1217), 1,
anon_sym_LBRACE,
ACTIONS(1283), 1,
sym_identifier,
ACTIONS(1287), 1,
anon_sym_function,
STATE(10), 1,
sym_type_index,
STATE(632), 1,
sym__type,
STATE(647), 1,
sym__partype,
STATE(52), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[26205] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(766), 1,
anon_sym_PIPE,
ACTIONS(1345), 1,
anon_sym_LBRACK,
ACTIONS(1343), 9,
anon_sym_end,
anon_sym_type,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
sym_identifier,
[26226] = 9,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1295), 1,
sym_identifier,
ACTIONS(1299), 1,
anon_sym_LBRACE,
ACTIONS(1301), 1,
anon_sym_function,
ACTIONS(1317), 1,
anon_sym_LPAREN,
STATE(177), 1,
sym_type_index,
STATE(197), 1,
sym_variadic_type,
STATE(215), 1,
sym__type,
STATE(191), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[26257] = 9,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1295), 1,
sym_identifier,
ACTIONS(1299), 1,
anon_sym_LBRACE,
ACTIONS(1301), 1,
anon_sym_function,
ACTIONS(1317), 1,
anon_sym_LPAREN,
STATE(177), 1,
sym_type_index,
STATE(206), 1,
sym_variadic_type,
STATE(215), 1,
sym__type,
STATE(191), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[26288] = 9,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1303), 1,
sym_identifier,
ACTIONS(1305), 1,
anon_sym_LBRACE,
ACTIONS(1307), 1,
anon_sym_function,
ACTIONS(1341), 1,
anon_sym_LPAREN,
STATE(53), 1,
sym_type_index,
STATE(83), 1,
sym_variadic_type,
STATE(84), 1,
sym__type,
STATE(72), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[26319] = 9,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1303), 1,
sym_identifier,
ACTIONS(1305), 1,
anon_sym_LBRACE,
ACTIONS(1307), 1,
anon_sym_function,
ACTIONS(1341), 1,
anon_sym_LPAREN,
STATE(53), 1,
sym_type_index,
STATE(84), 1,
sym__type,
STATE(89), 1,
sym_variadic_type,
STATE(72), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[26350] = 9,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1295), 1,
sym_identifier,
ACTIONS(1299), 1,
anon_sym_LBRACE,
ACTIONS(1301), 1,
anon_sym_function,
ACTIONS(1317), 1,
anon_sym_LPAREN,
STATE(177), 1,
sym_type_index,
STATE(219), 1,
sym__type,
STATE(693), 1,
sym_variadic_type,
STATE(191), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[26381] = 9,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1295), 1,
sym_identifier,
ACTIONS(1299), 1,
anon_sym_LBRACE,
ACTIONS(1301), 1,
anon_sym_function,
ACTIONS(1317), 1,
anon_sym_LPAREN,
STATE(177), 1,
sym_type_index,
STATE(219), 1,
sym__type,
STATE(720), 1,
sym_variadic_type,
STATE(191), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[26412] = 9,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1295), 1,
sym_identifier,
ACTIONS(1299), 1,
anon_sym_LBRACE,
ACTIONS(1301), 1,
anon_sym_function,
ACTIONS(1317), 1,
anon_sym_LPAREN,
STATE(177), 1,
sym_type_index,
STATE(219), 1,
sym__type,
STATE(728), 1,
sym_variadic_type,
STATE(191), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[26443] = 9,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1295), 1,
sym_identifier,
ACTIONS(1299), 1,
anon_sym_LBRACE,
ACTIONS(1301), 1,
anon_sym_function,
ACTIONS(1317), 1,
anon_sym_LPAREN,
STATE(177), 1,
sym_type_index,
STATE(219), 1,
sym__type,
STATE(700), 1,
sym_variadic_type,
STATE(191), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[26474] = 9,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1295), 1,
sym_identifier,
ACTIONS(1299), 1,
anon_sym_LBRACE,
ACTIONS(1301), 1,
anon_sym_function,
ACTIONS(1317), 1,
anon_sym_LPAREN,
STATE(177), 1,
sym_type_index,
STATE(219), 1,
sym__type,
STATE(713), 1,
sym_variadic_type,
STATE(191), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[26505] = 9,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1295), 1,
sym_identifier,
ACTIONS(1299), 1,
anon_sym_LBRACE,
ACTIONS(1301), 1,
anon_sym_function,
ACTIONS(1317), 1,
anon_sym_LPAREN,
STATE(33), 1,
sym_variadic_type,
STATE(177), 1,
sym_type_index,
STATE(219), 1,
sym__type,
STATE(191), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[26536] = 9,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1213), 1,
sym_identifier,
ACTIONS(1217), 1,
anon_sym_LBRACE,
ACTIONS(1323), 1,
anon_sym_LPAREN,
ACTIONS(1347), 1,
anon_sym_function,
STATE(10), 1,
sym_type_index,
STATE(110), 1,
sym_type_tuple,
STATE(120), 1,
sym__type,
STATE(52), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[26567] = 9,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1295), 1,
sym_identifier,
ACTIONS(1299), 1,
anon_sym_LBRACE,
ACTIONS(1315), 1,
anon_sym_function,
ACTIONS(1317), 1,
anon_sym_LPAREN,
STATE(177), 1,
sym_type_index,
STATE(197), 1,
sym_variadic_type,
STATE(594), 1,
sym__type,
STATE(191), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[26598] = 9,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1295), 1,
sym_identifier,
ACTIONS(1299), 1,
anon_sym_LBRACE,
ACTIONS(1315), 1,
anon_sym_function,
ACTIONS(1317), 1,
anon_sym_LPAREN,
STATE(177), 1,
sym_type_index,
STATE(206), 1,
sym_variadic_type,
STATE(594), 1,
sym__type,
STATE(191), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[26629] = 8,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1213), 1,
sym_identifier,
ACTIONS(1215), 1,
anon_sym_LPAREN,
ACTIONS(1217), 1,
anon_sym_LBRACE,
ACTIONS(1219), 1,
anon_sym_function,
STATE(10), 1,
sym_type_index,
STATE(659), 1,
sym__type,
STATE(52), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[26657] = 8,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1213), 1,
sym_identifier,
ACTIONS(1215), 1,
anon_sym_LPAREN,
ACTIONS(1217), 1,
anon_sym_LBRACE,
ACTIONS(1287), 1,
anon_sym_function,
STATE(10), 1,
sym_type_index,
STATE(620), 1,
sym__type,
STATE(52), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[26685] = 8,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1213), 1,
sym_identifier,
ACTIONS(1215), 1,
anon_sym_LPAREN,
ACTIONS(1217), 1,
anon_sym_LBRACE,
ACTIONS(1219), 1,
anon_sym_function,
STATE(10), 1,
sym_type_index,
STATE(657), 1,
sym__type,
STATE(52), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[26713] = 8,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1213), 1,
sym_identifier,
ACTIONS(1215), 1,
anon_sym_LPAREN,
ACTIONS(1217), 1,
anon_sym_LBRACE,
ACTIONS(1287), 1,
anon_sym_function,
STATE(10), 1,
sym_type_index,
STATE(351), 1,
sym__type,
STATE(52), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[26741] = 8,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1213), 1,
sym_identifier,
ACTIONS(1215), 1,
anon_sym_LPAREN,
ACTIONS(1217), 1,
anon_sym_LBRACE,
ACTIONS(1287), 1,
anon_sym_function,
STATE(10), 1,
sym_type_index,
STATE(346), 1,
sym__type,
STATE(52), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[26769] = 8,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1213), 1,
sym_identifier,
ACTIONS(1215), 1,
anon_sym_LPAREN,
ACTIONS(1217), 1,
anon_sym_LBRACE,
ACTIONS(1219), 1,
anon_sym_function,
STATE(10), 1,
sym_type_index,
STATE(655), 1,
sym__type,
STATE(52), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[26797] = 8,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1213), 1,
sym_identifier,
ACTIONS(1215), 1,
anon_sym_LPAREN,
ACTIONS(1217), 1,
anon_sym_LBRACE,
ACTIONS(1219), 1,
anon_sym_function,
STATE(10), 1,
sym_type_index,
STATE(667), 1,
sym__type,
STATE(52), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[26825] = 8,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1213), 1,
sym_identifier,
ACTIONS(1215), 1,
anon_sym_LPAREN,
ACTIONS(1217), 1,
anon_sym_LBRACE,
ACTIONS(1325), 1,
anon_sym_function,
STATE(10), 1,
sym_type_index,
STATE(140), 1,
sym__type,
STATE(52), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[26853] = 8,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1213), 1,
sym_identifier,
ACTIONS(1215), 1,
anon_sym_LPAREN,
ACTIONS(1217), 1,
anon_sym_LBRACE,
ACTIONS(1219), 1,
anon_sym_function,
STATE(10), 1,
sym_type_index,
STATE(459), 1,
sym__type,
STATE(52), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[26881] = 8,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1295), 1,
sym_identifier,
ACTIONS(1299), 1,
anon_sym_LBRACE,
ACTIONS(1301), 1,
anon_sym_function,
ACTIONS(1317), 1,
anon_sym_LPAREN,
STATE(177), 1,
sym_type_index,
STATE(194), 1,
sym__type,
STATE(191), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[26909] = 8,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1295), 1,
sym_identifier,
ACTIONS(1299), 1,
anon_sym_LBRACE,
ACTIONS(1315), 1,
anon_sym_function,
ACTIONS(1317), 1,
anon_sym_LPAREN,
STATE(177), 1,
sym_type_index,
STATE(619), 1,
sym__type,
STATE(191), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[26937] = 8,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1213), 1,
sym_identifier,
ACTIONS(1215), 1,
anon_sym_LPAREN,
ACTIONS(1217), 1,
anon_sym_LBRACE,
ACTIONS(1219), 1,
anon_sym_function,
STATE(10), 1,
sym_type_index,
STATE(454), 1,
sym__type,
STATE(52), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[26965] = 8,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1295), 1,
sym_identifier,
ACTIONS(1299), 1,
anon_sym_LBRACE,
ACTIONS(1315), 1,
anon_sym_function,
ACTIONS(1317), 1,
anon_sym_LPAREN,
STATE(177), 1,
sym_type_index,
STATE(580), 1,
sym__type,
STATE(191), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[26993] = 8,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1213), 1,
sym_identifier,
ACTIONS(1215), 1,
anon_sym_LPAREN,
ACTIONS(1217), 1,
anon_sym_LBRACE,
ACTIONS(1219), 1,
anon_sym_function,
STATE(10), 1,
sym_type_index,
STATE(463), 1,
sym__type,
STATE(52), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[27021] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1351), 1,
anon_sym_LBRACK,
ACTIONS(1349), 9,
anon_sym_end,
anon_sym_type,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
sym_identifier,
[27039] = 8,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1213), 1,
sym_identifier,
ACTIONS(1215), 1,
anon_sym_LPAREN,
ACTIONS(1217), 1,
anon_sym_LBRACE,
ACTIONS(1219), 1,
anon_sym_function,
STATE(10), 1,
sym_type_index,
STATE(650), 1,
sym__type,
STATE(52), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[27067] = 8,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1213), 1,
sym_identifier,
ACTIONS(1215), 1,
anon_sym_LPAREN,
ACTIONS(1217), 1,
anon_sym_LBRACE,
ACTIONS(1287), 1,
anon_sym_function,
STATE(10), 1,
sym_type_index,
STATE(615), 1,
sym__type,
STATE(52), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[27095] = 8,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1213), 1,
sym_identifier,
ACTIONS(1215), 1,
anon_sym_LPAREN,
ACTIONS(1217), 1,
anon_sym_LBRACE,
ACTIONS(1287), 1,
anon_sym_function,
STATE(10), 1,
sym_type_index,
STATE(589), 1,
sym__type,
STATE(52), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[27123] = 8,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1213), 1,
sym_identifier,
ACTIONS(1215), 1,
anon_sym_LPAREN,
ACTIONS(1217), 1,
anon_sym_LBRACE,
ACTIONS(1219), 1,
anon_sym_function,
STATE(10), 1,
sym_type_index,
STATE(646), 1,
sym__type,
STATE(52), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[27151] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1355), 1,
anon_sym_LBRACK,
ACTIONS(1353), 9,
anon_sym_end,
anon_sym_type,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
sym_identifier,
[27169] = 8,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1213), 1,
sym_identifier,
ACTIONS(1215), 1,
anon_sym_LPAREN,
ACTIONS(1217), 1,
anon_sym_LBRACE,
ACTIONS(1219), 1,
anon_sym_function,
STATE(10), 1,
sym_type_index,
STATE(651), 1,
sym__type,
STATE(52), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[27197] = 8,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1295), 1,
sym_identifier,
ACTIONS(1299), 1,
anon_sym_LBRACE,
ACTIONS(1315), 1,
anon_sym_function,
ACTIONS(1317), 1,
anon_sym_LPAREN,
STATE(177), 1,
sym_type_index,
STATE(593), 1,
sym__type,
STATE(191), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[27225] = 8,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1213), 1,
sym_identifier,
ACTIONS(1215), 1,
anon_sym_LPAREN,
ACTIONS(1217), 1,
anon_sym_LBRACE,
ACTIONS(1219), 1,
anon_sym_function,
STATE(10), 1,
sym_type_index,
STATE(664), 1,
sym__type,
STATE(52), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[27253] = 8,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1213), 1,
sym_identifier,
ACTIONS(1215), 1,
anon_sym_LPAREN,
ACTIONS(1217), 1,
anon_sym_LBRACE,
ACTIONS(1287), 1,
anon_sym_function,
STATE(10), 1,
sym_type_index,
STATE(567), 1,
sym__type,
STATE(52), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[27281] = 8,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1213), 1,
sym_identifier,
ACTIONS(1215), 1,
anon_sym_LPAREN,
ACTIONS(1217), 1,
anon_sym_LBRACE,
ACTIONS(1287), 1,
anon_sym_function,
STATE(10), 1,
sym_type_index,
STATE(575), 1,
sym__type,
STATE(52), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[27309] = 8,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1295), 1,
sym_identifier,
ACTIONS(1299), 1,
anon_sym_LBRACE,
ACTIONS(1315), 1,
anon_sym_function,
ACTIONS(1317), 1,
anon_sym_LPAREN,
STATE(177), 1,
sym_type_index,
STATE(576), 1,
sym__type,
STATE(191), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[27337] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1359), 1,
anon_sym_LBRACK,
ACTIONS(1357), 9,
anon_sym_end,
anon_sym_type,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
sym_identifier,
[27355] = 8,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1213), 1,
sym_identifier,
ACTIONS(1215), 1,
anon_sym_LPAREN,
ACTIONS(1217), 1,
anon_sym_LBRACE,
ACTIONS(1219), 1,
anon_sym_function,
STATE(10), 1,
sym_type_index,
STATE(643), 1,
sym__type,
STATE(52), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[27383] = 8,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1213), 1,
sym_identifier,
ACTIONS(1215), 1,
anon_sym_LPAREN,
ACTIONS(1217), 1,
anon_sym_LBRACE,
ACTIONS(1287), 1,
anon_sym_function,
STATE(10), 1,
sym_type_index,
STATE(225), 1,
sym__type,
STATE(52), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[27411] = 8,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1213), 1,
sym_identifier,
ACTIONS(1215), 1,
anon_sym_LPAREN,
ACTIONS(1217), 1,
anon_sym_LBRACE,
ACTIONS(1287), 1,
anon_sym_function,
STATE(10), 1,
sym_type_index,
STATE(558), 1,
sym__type,
STATE(52), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[27439] = 8,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1213), 1,
sym_identifier,
ACTIONS(1215), 1,
anon_sym_LPAREN,
ACTIONS(1217), 1,
anon_sym_LBRACE,
ACTIONS(1287), 1,
anon_sym_function,
STATE(10), 1,
sym_type_index,
STATE(590), 1,
sym__type,
STATE(52), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[27467] = 8,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1213), 1,
sym_identifier,
ACTIONS(1215), 1,
anon_sym_LPAREN,
ACTIONS(1217), 1,
anon_sym_LBRACE,
ACTIONS(1219), 1,
anon_sym_function,
STATE(10), 1,
sym_type_index,
STATE(654), 1,
sym__type,
STATE(52), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[27495] = 8,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1213), 1,
sym_identifier,
ACTIONS(1215), 1,
anon_sym_LPAREN,
ACTIONS(1217), 1,
anon_sym_LBRACE,
ACTIONS(1287), 1,
anon_sym_function,
STATE(10), 1,
sym_type_index,
STATE(560), 1,
sym__type,
STATE(52), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[27523] = 8,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1295), 1,
sym_identifier,
ACTIONS(1299), 1,
anon_sym_LBRACE,
ACTIONS(1315), 1,
anon_sym_function,
ACTIONS(1317), 1,
anon_sym_LPAREN,
STATE(177), 1,
sym_type_index,
STATE(578), 1,
sym__type,
STATE(191), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[27551] = 8,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1213), 1,
sym_identifier,
ACTIONS(1215), 1,
anon_sym_LPAREN,
ACTIONS(1217), 1,
anon_sym_LBRACE,
ACTIONS(1219), 1,
anon_sym_function,
STATE(10), 1,
sym_type_index,
STATE(663), 1,
sym__type,
STATE(52), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[27579] = 8,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1213), 1,
sym_identifier,
ACTIONS(1215), 1,
anon_sym_LPAREN,
ACTIONS(1217), 1,
anon_sym_LBRACE,
ACTIONS(1287), 1,
anon_sym_function,
STATE(10), 1,
sym_type_index,
STATE(613), 1,
sym__type,
STATE(52), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[27607] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1363), 1,
anon_sym_LBRACK,
ACTIONS(1361), 9,
anon_sym_end,
anon_sym_type,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
sym_identifier,
[27625] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1367), 1,
anon_sym_LBRACK,
ACTIONS(1365), 9,
anon_sym_end,
anon_sym_type,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
sym_identifier,
[27643] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1371), 1,
anon_sym_LBRACK,
ACTIONS(1369), 9,
anon_sym_end,
anon_sym_type,
anon_sym_macroexp,
anon_sym_record,
anon_sym_interface,
anon_sym_enum,
anon_sym_userdata,
anon_sym_metamethod,
sym_identifier,
[27661] = 8,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1213), 1,
sym_identifier,
ACTIONS(1215), 1,
anon_sym_LPAREN,
ACTIONS(1217), 1,
anon_sym_LBRACE,
ACTIONS(1287), 1,
anon_sym_function,
STATE(10), 1,
sym_type_index,
STATE(583), 1,
sym__type,
STATE(52), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[27689] = 8,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1213), 1,
sym_identifier,
ACTIONS(1215), 1,
anon_sym_LPAREN,
ACTIONS(1217), 1,
anon_sym_LBRACE,
ACTIONS(1347), 1,
anon_sym_function,
STATE(10), 1,
sym_type_index,
STATE(46), 1,
sym__type,
STATE(52), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[27717] = 8,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1213), 1,
sym_identifier,
ACTIONS(1215), 1,
anon_sym_LPAREN,
ACTIONS(1217), 1,
anon_sym_LBRACE,
ACTIONS(1325), 1,
anon_sym_function,
STATE(10), 1,
sym_type_index,
STATE(115), 1,
sym__type,
STATE(52), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[27745] = 8,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1213), 1,
sym_identifier,
ACTIONS(1215), 1,
anon_sym_LPAREN,
ACTIONS(1217), 1,
anon_sym_LBRACE,
ACTIONS(1287), 1,
anon_sym_function,
STATE(10), 1,
sym_type_index,
STATE(597), 1,
sym__type,
STATE(52), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[27773] = 10,
ACTIONS(3), 1,
sym_comment,
ACTIONS(41), 1,
anon_sym_LPAREN,
ACTIONS(45), 1,
anon_sym_LBRACK,
ACTIONS(47), 1,
anon_sym_LBRACE,
ACTIONS(51), 1,
sym__long_string_start,
ACTIONS(53), 1,
sym__short_string_start,
ACTIONS(1373), 1,
anon_sym_COLON,
ACTIONS(1375), 1,
anon_sym_DOT,
STATE(17), 1,
sym_arguments,
STATE(9), 2,
sym_table_constructor,
sym_string,
[27805] = 8,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1213), 1,
sym_identifier,
ACTIONS(1215), 1,
anon_sym_LPAREN,
ACTIONS(1217), 1,
anon_sym_LBRACE,
ACTIONS(1287), 1,
anon_sym_function,
STATE(10), 1,
sym_type_index,
STATE(587), 1,
sym__type,
STATE(52), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[27833] = 8,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1213), 1,
sym_identifier,
ACTIONS(1215), 1,
anon_sym_LPAREN,
ACTIONS(1217), 1,
anon_sym_LBRACE,
ACTIONS(1287), 1,
anon_sym_function,
STATE(10), 1,
sym_type_index,
STATE(46), 1,
sym__type,
STATE(52), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[27861] = 8,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1213), 1,
sym_identifier,
ACTIONS(1215), 1,
anon_sym_LPAREN,
ACTIONS(1217), 1,
anon_sym_LBRACE,
ACTIONS(1219), 1,
anon_sym_function,
STATE(10), 1,
sym_type_index,
STATE(658), 1,
sym__type,
STATE(52), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[27889] = 8,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1213), 1,
sym_identifier,
ACTIONS(1215), 1,
anon_sym_LPAREN,
ACTIONS(1217), 1,
anon_sym_LBRACE,
ACTIONS(1219), 1,
anon_sym_function,
STATE(10), 1,
sym_type_index,
STATE(46), 1,
sym__type,
STATE(52), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[27917] = 8,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1213), 1,
sym_identifier,
ACTIONS(1215), 1,
anon_sym_LPAREN,
ACTIONS(1217), 1,
anon_sym_LBRACE,
ACTIONS(1347), 1,
anon_sym_function,
STATE(10), 1,
sym_type_index,
STATE(131), 1,
sym__type,
STATE(52), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[27945] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1377), 1,
anon_sym_COMMA,
ACTIONS(1379), 1,
anon_sym_EQ,
STATE(612), 1,
aux_sym_assignment_variables_repeat1,
ACTIONS(924), 7,
sym__long_string_start,
sym__short_string_start,
anon_sym_LPAREN,
anon_sym_COLON,
anon_sym_LBRACK,
anon_sym_LBRACE,
anon_sym_DOT,
[27967] = 8,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1295), 1,
sym_identifier,
ACTIONS(1299), 1,
anon_sym_LBRACE,
ACTIONS(1315), 1,
anon_sym_function,
ACTIONS(1317), 1,
anon_sym_LPAREN,
STATE(177), 1,
sym_type_index,
STATE(194), 1,
sym__type,
STATE(191), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[27995] = 8,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1295), 1,
sym_identifier,
ACTIONS(1299), 1,
anon_sym_LBRACE,
ACTIONS(1301), 1,
anon_sym_function,
ACTIONS(1317), 1,
anon_sym_LPAREN,
STATE(177), 1,
sym_type_index,
STATE(217), 1,
sym__type,
STATE(191), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[28023] = 8,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1303), 1,
sym_identifier,
ACTIONS(1305), 1,
anon_sym_LBRACE,
ACTIONS(1307), 1,
anon_sym_function,
ACTIONS(1341), 1,
anon_sym_LPAREN,
STATE(53), 1,
sym_type_index,
STATE(81), 1,
sym__type,
STATE(72), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[28051] = 8,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1213), 1,
sym_identifier,
ACTIONS(1215), 1,
anon_sym_LPAREN,
ACTIONS(1217), 1,
anon_sym_LBRACE,
ACTIONS(1219), 1,
anon_sym_function,
STATE(10), 1,
sym_type_index,
STATE(660), 1,
sym__type,
STATE(52), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[28079] = 8,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1213), 1,
sym_identifier,
ACTIONS(1215), 1,
anon_sym_LPAREN,
ACTIONS(1217), 1,
anon_sym_LBRACE,
ACTIONS(1219), 1,
anon_sym_function,
STATE(10), 1,
sym_type_index,
STATE(457), 1,
sym__type,
STATE(52), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[28107] = 8,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1303), 1,
sym_identifier,
ACTIONS(1305), 1,
anon_sym_LBRACE,
ACTIONS(1307), 1,
anon_sym_function,
ACTIONS(1341), 1,
anon_sym_LPAREN,
STATE(53), 1,
sym_type_index,
STATE(82), 1,
sym__type,
STATE(72), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[28135] = 8,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1213), 1,
sym_identifier,
ACTIONS(1215), 1,
anon_sym_LPAREN,
ACTIONS(1217), 1,
anon_sym_LBRACE,
ACTIONS(1325), 1,
anon_sym_function,
STATE(10), 1,
sym_type_index,
STATE(46), 1,
sym__type,
STATE(52), 4,
sym_type_union,
sym_simple_type,
sym_table_type,
sym_function_type,
[28163] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1381), 2,
anon_sym_COMMA,
anon_sym_EQ,
ACTIONS(924), 7,
sym__long_string_start,
sym__short_string_start,
anon_sym_LPAREN,
anon_sym_COLON,
anon_sym_LBRACK,
anon_sym_LBRACE,
anon_sym_DOT,
[28180] = 6,
ACTIONS(3), 1,
sym_comment,
ACTIONS(587), 1,
anon_sym_LPAREN,
ACTIONS(589), 1,
anon_sym_LT,
STATE(547), 1,
sym_typeargs,
STATE(552), 1,
sym_function_type_args,
ACTIONS(229), 4,
anon_sym_COMMA,
anon_sym_GT,
anon_sym_PIPE,
anon_sym_DOT_DOT_DOT,
[28202] = 7,
ACTIONS(3), 1,
sym_comment,
ACTIONS(15), 1,
anon_sym_LPAREN,
ACTIONS(1383), 1,
sym_identifier,
STATE(7), 1,
sym_index,
STATE(534), 1,
sym__var,
STATE(539), 1,
sym_method_index,
STATE(520), 3,
sym_parenthesized_expression,
sym__prefix_expression,
sym_function_call,
[28226] = 6,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1385), 1,
anon_sym_LT,
ACTIONS(1387), 1,
anon_sym_COLON,
ACTIONS(1389), 1,
anon_sym_DOT,
STATE(47), 1,
sym_typearg_params,
ACTIONS(59), 3,
anon_sym_COMMA,
anon_sym_RPAREN,
anon_sym_PIPE,
[28247] = 7,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1391), 1,
anon_sym_PERCENT2,
ACTIONS(1395), 1,
sym__short_string_char,
ACTIONS(1397), 1,
sym__short_string_end,
STATE(548), 1,
aux_sym__short_string_content_repeat1,
STATE(691), 1,
sym__short_string_content,
ACTIONS(1393), 2,
sym_format_specifier,
sym_escape_sequence,
[28270] = 7,
ACTIONS(3), 1,
sym_comment,
ACTIONS(41), 1,
anon_sym_LPAREN,
ACTIONS(47), 1,
anon_sym_LBRACE,
ACTIONS(51), 1,
sym__long_string_start,
ACTIONS(53), 1,
sym__short_string_start,
STATE(17), 1,
sym_arguments,
STATE(9), 2,
sym_table_constructor,
sym_string,
[28293] = 7,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1391), 1,
anon_sym_PERCENT2,
ACTIONS(1395), 1,
sym__short_string_char,
ACTIONS(1399), 1,
sym__short_string_end,
STATE(548), 1,
aux_sym__short_string_content_repeat1,
STATE(719), 1,
sym__short_string_content,
ACTIONS(1393), 2,
sym_format_specifier,
sym_escape_sequence,
[28316] = 6,
ACTIONS(3), 1,
sym_comment,
ACTIONS(51), 1,
sym__long_string_start,
ACTIONS(53), 1,
sym__short_string_start,
ACTIONS(1401), 1,
anon_sym_end,
STATE(305), 1,
sym_enum_body,
STATE(557), 2,
sym_string,
aux_sym_enum_body_repeat1,
[28336] = 6,
ACTIONS(3), 1,
sym_comment,
ACTIONS(429), 1,
anon_sym_else,
ACTIONS(1403), 1,
anon_sym_end,
ACTIONS(1405), 1,
anon_sym_elseif,
STATE(717), 1,
sym_else_block,
STATE(555), 2,
sym_elseif_block,
aux_sym_if_statement_repeat1,
[28356] = 6,
ACTIONS(3), 1,
sym_comment,
ACTIONS(51), 1,
sym__long_string_start,
ACTIONS(53), 1,
sym__short_string_start,
ACTIONS(1401), 1,
anon_sym_end,
STATE(311), 1,
sym_enum_body,
STATE(557), 2,
sym_string,
aux_sym_enum_body_repeat1,
[28376] = 6,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1397), 1,
sym__long_string_end,
ACTIONS(1407), 1,
anon_sym_PERCENT2,
STATE(566), 1,
aux_sym__long_string_content_repeat1,
STATE(726), 1,
sym__long_string_content,
ACTIONS(1409), 2,
sym__long_string_char,
sym_format_specifier,
[28396] = 6,
ACTIONS(3), 1,
sym_comment,
ACTIONS(429), 1,
anon_sym_else,
ACTIONS(1405), 1,
anon_sym_elseif,
ACTIONS(1411), 1,
anon_sym_end,
STATE(704), 1,
sym_else_block,
STATE(555), 2,
sym_elseif_block,
aux_sym_if_statement_repeat1,
[28416] = 6,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1399), 1,
sym__long_string_end,
ACTIONS(1407), 1,
anon_sym_PERCENT2,
STATE(566), 1,
aux_sym__long_string_content_repeat1,
STATE(731), 1,
sym__long_string_content,
ACTIONS(1409), 2,
sym__long_string_char,
sym_format_specifier,
[28436] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(587), 1,
anon_sym_LPAREN,
STATE(550), 1,
sym_function_type_args,
ACTIONS(247), 4,
anon_sym_COMMA,
anon_sym_GT,
anon_sym_PIPE,
anon_sym_DOT_DOT_DOT,
[28452] = 6,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1391), 1,
anon_sym_PERCENT2,
ACTIONS(1395), 1,
sym__short_string_char,
ACTIONS(1413), 1,
sym__short_string_end,
STATE(549), 1,
aux_sym__short_string_content_repeat1,
ACTIONS(1393), 2,
sym_format_specifier,
sym_escape_sequence,
[28472] = 6,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1415), 1,
anon_sym_PERCENT2,
ACTIONS(1421), 1,
sym__short_string_char,
ACTIONS(1424), 1,
sym__short_string_end,
STATE(549), 1,
aux_sym__short_string_content_repeat1,
ACTIONS(1418), 2,
sym_format_specifier,
sym_escape_sequence,
[28492] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1426), 1,
anon_sym_COLON,
ACTIONS(257), 4,
anon_sym_COMMA,
anon_sym_GT,
anon_sym_PIPE,
anon_sym_DOT_DOT_DOT,
[28505] = 6,
ACTIONS(3), 1,
sym_comment,
ACTIONS(591), 1,
anon_sym_LT,
ACTIONS(1428), 1,
anon_sym_LPAREN,
STATE(162), 1,
sym_function_signature,
STATE(422), 1,
sym_signature_arguments,
STATE(662), 1,
sym_typeargs,
[28524] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1430), 1,
anon_sym_COLON,
ACTIONS(251), 4,
anon_sym_COMMA,
anon_sym_GT,
anon_sym_PIPE,
anon_sym_DOT_DOT_DOT,
[28537] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1432), 1,
anon_sym_end,
ACTIONS(1434), 1,
sym__long_string_start,
ACTIONS(1437), 1,
sym__short_string_start,
STATE(553), 2,
sym_string,
aux_sym_enum_body_repeat1,
[28554] = 6,
ACTIONS(3), 1,
sym_comment,
ACTIONS(591), 1,
anon_sym_LT,
ACTIONS(1428), 1,
anon_sym_LPAREN,
STATE(163), 1,
sym_function_signature,
STATE(422), 1,
sym_signature_arguments,
STATE(662), 1,
sym_typeargs,
[28573] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1440), 1,
anon_sym_end,
ACTIONS(1442), 1,
anon_sym_elseif,
ACTIONS(1445), 1,
anon_sym_else,
STATE(555), 2,
sym_elseif_block,
aux_sym_if_statement_repeat1,
[28590] = 6,
ACTIONS(3), 1,
sym_comment,
ACTIONS(591), 1,
anon_sym_LT,
ACTIONS(1428), 1,
anon_sym_LPAREN,
STATE(422), 1,
sym_signature_arguments,
STATE(639), 1,
sym_function_signature,
STATE(662), 1,
sym_typeargs,
[28609] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(51), 1,
sym__long_string_start,
ACTIONS(53), 1,
sym__short_string_start,
ACTIONS(1447), 1,
anon_sym_end,
STATE(553), 2,
sym_string,
aux_sym_enum_body_repeat1,
[28626] = 6,
ACTIONS(3), 1,
sym_comment,
ACTIONS(641), 1,
anon_sym_PIPE,
ACTIONS(1449), 1,
anon_sym_COMMA,
ACTIONS(1451), 1,
anon_sym_COLON,
ACTIONS(1453), 1,
anon_sym_RBRACE,
STATE(627), 1,
aux_sym_table_type_repeat1,
[28645] = 6,
ACTIONS(3), 1,
sym_comment,
ACTIONS(591), 1,
anon_sym_LT,
ACTIONS(1428), 1,
anon_sym_LPAREN,
STATE(161), 1,
sym_function_signature,
STATE(422), 1,
sym_signature_arguments,
STATE(662), 1,
sym_typeargs,
[28664] = 6,
ACTIONS(3), 1,
sym_comment,
ACTIONS(641), 1,
anon_sym_PIPE,
ACTIONS(1449), 1,
anon_sym_COMMA,
ACTIONS(1455), 1,
anon_sym_COLON,
ACTIONS(1457), 1,
anon_sym_RBRACE,
STATE(605), 1,
aux_sym_table_type_repeat1,
[28683] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1459), 1,
anon_sym_COMMA,
STATE(561), 1,
aux_sym_type_tuple_repeat1,
ACTIONS(274), 3,
anon_sym_GT,
anon_sym_PIPE,
anon_sym_DOT_DOT_DOT,
[28698] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1462), 1,
anon_sym_PERCENT2,
ACTIONS(1464), 4,
sym__short_string_char,
sym__short_string_end,
sym_format_specifier,
sym_escape_sequence,
[28711] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1468), 1,
anon_sym_DOT,
STATE(563), 1,
aux_sym_function_name_repeat1,
ACTIONS(1466), 3,
anon_sym_LPAREN,
anon_sym_LT,
anon_sym_COLON,
[28726] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1473), 1,
anon_sym_COLON,
ACTIONS(1475), 1,
anon_sym_DOT,
STATE(563), 1,
aux_sym_function_name_repeat1,
ACTIONS(1471), 2,
anon_sym_LPAREN,
anon_sym_LT,
[28743] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1477), 1,
anon_sym_COMMA,
STATE(561), 1,
aux_sym_type_tuple_repeat1,
ACTIONS(286), 3,
anon_sym_GT,
anon_sym_PIPE,
anon_sym_DOT_DOT_DOT,
[28758] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1407), 1,
anon_sym_PERCENT2,
ACTIONS(1480), 1,
sym__long_string_end,
STATE(571), 1,
aux_sym__long_string_content_repeat1,
ACTIONS(1409), 2,
sym__long_string_char,
sym_format_specifier,
[28775] = 6,
ACTIONS(3), 1,
sym_comment,
ACTIONS(641), 1,
anon_sym_PIPE,
ACTIONS(1449), 1,
anon_sym_COMMA,
ACTIONS(1482), 1,
anon_sym_COLON,
ACTIONS(1484), 1,
anon_sym_RBRACE,
STATE(641), 1,
aux_sym_table_type_repeat1,
[28794] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1462), 1,
anon_sym_PERCENT2,
ACTIONS(1464), 4,
sym__short_string_char,
sym__short_string_end,
sym_format_specifier,
sym_escape_sequence,
[28807] = 6,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1289), 1,
anon_sym_DOT_DOT_DOT,
ACTIONS(1486), 1,
sym_identifier,
ACTIONS(1488), 1,
anon_sym_RPAREN,
STATE(624), 1,
sym__parname,
STATE(682), 1,
sym__annotated_var_arg,
[28826] = 6,
ACTIONS(3), 1,
sym_comment,
ACTIONS(263), 1,
anon_sym_GT,
ACTIONS(598), 1,
anon_sym_DOT_DOT_DOT,
ACTIONS(1490), 1,
anon_sym_COMMA,
ACTIONS(1493), 1,
anon_sym_PIPE,
STATE(565), 1,
aux_sym_type_tuple_repeat1,
[28845] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1495), 1,
anon_sym_PERCENT2,
ACTIONS(1501), 1,
sym__long_string_end,
STATE(571), 1,
aux_sym__long_string_content_repeat1,
ACTIONS(1498), 2,
sym__long_string_char,
sym_format_specifier,
[28862] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1505), 1,
anon_sym_RBRACE,
STATE(574), 1,
aux_sym_table_constructor_repeat1,
ACTIONS(1503), 2,
anon_sym_SEMI,
anon_sym_COMMA,
[28876] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(511), 1,
anon_sym_COMMA,
ACTIONS(904), 1,
anon_sym_do,
STATE(353), 1,
aux_sym_return_statement_repeat1,
STATE(377), 1,
sym_do_statement,
[28892] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(635), 1,
anon_sym_RBRACE,
STATE(577), 1,
aux_sym_table_constructor_repeat1,
ACTIONS(1507), 2,
anon_sym_SEMI,
anon_sym_COMMA,
[28906] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(641), 1,
anon_sym_PIPE,
ACTIONS(1509), 1,
anon_sym_COMMA,
ACTIONS(1511), 1,
anon_sym_RPAREN,
STATE(598), 1,
aux_sym_type_tuple_repeat1,
[28922] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1493), 1,
anon_sym_PIPE,
ACTIONS(1513), 1,
anon_sym_COMMA,
ACTIONS(1515), 1,
anon_sym_GT,
STATE(602), 1,
aux_sym_type_tuple_repeat1,
[28938] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1520), 1,
anon_sym_RBRACE,
STATE(577), 1,
aux_sym_table_constructor_repeat1,
ACTIONS(1517), 2,
anon_sym_SEMI,
anon_sym_COMMA,
[28952] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1493), 1,
anon_sym_PIPE,
ACTIONS(1513), 1,
anon_sym_COMMA,
ACTIONS(1522), 1,
anon_sym_GT,
STATE(609), 1,
aux_sym_type_tuple_repeat1,
[28968] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(633), 1,
anon_sym_RBRACE,
STATE(577), 1,
aux_sym_table_constructor_repeat1,
ACTIONS(1524), 2,
anon_sym_SEMI,
anon_sym_COMMA,
[28982] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1493), 1,
anon_sym_PIPE,
ACTIONS(274), 3,
anon_sym_COMMA,
anon_sym_GT,
anon_sym_DOT_DOT_DOT,
[28994] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(107), 4,
anon_sym_COMMA,
anon_sym_GT,
anon_sym_PIPE,
anon_sym_DOT_DOT_DOT,
[29004] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1526), 1,
anon_sym_COMMA,
ACTIONS(1528), 1,
anon_sym_EQ,
ACTIONS(1530), 1,
anon_sym_in,
STATE(614), 1,
aux_sym_generic_for_statement_repeat1,
[29020] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(641), 1,
anon_sym_PIPE,
ACTIONS(1509), 1,
anon_sym_COMMA,
ACTIONS(1532), 1,
anon_sym_RPAREN,
STATE(598), 1,
aux_sym_type_tuple_repeat1,
[29036] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1534), 1,
anon_sym_PERCENT2,
ACTIONS(1536), 3,
sym__long_string_char,
sym__long_string_end,
sym_format_specifier,
[29048] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1289), 1,
anon_sym_DOT_DOT_DOT,
ACTIONS(1486), 1,
sym_identifier,
STATE(653), 1,
sym__parname,
STATE(705), 1,
sym__annotated_var_arg,
[29064] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1540), 1,
anon_sym_COLON,
ACTIONS(1542), 1,
sym_optional_marker,
ACTIONS(1538), 2,
anon_sym_COMMA,
anon_sym_RPAREN,
[29078] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(641), 1,
anon_sym_PIPE,
ACTIONS(1532), 1,
anon_sym_RPAREN,
ACTIONS(1544), 1,
anon_sym_COMMA,
STATE(607), 1,
aux_sym_type_tuple_repeat1,
[29094] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1289), 1,
anon_sym_DOT_DOT_DOT,
ACTIONS(1486), 1,
sym_identifier,
STATE(653), 1,
sym__parname,
STATE(721), 1,
sym__annotated_var_arg,
[29110] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(641), 1,
anon_sym_PIPE,
ACTIONS(1532), 1,
anon_sym_RPAREN,
ACTIONS(1546), 1,
anon_sym_COMMA,
STATE(642), 1,
aux_sym_type_tuple_repeat1,
[29126] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(641), 1,
anon_sym_PIPE,
ACTIONS(976), 1,
anon_sym_COMMA,
ACTIONS(1548), 1,
anon_sym_RPAREN,
STATE(634), 1,
aux_sym_type_tuple_repeat1,
[29142] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1550), 4,
sym__long_string_start,
sym__short_string_start,
anon_sym_LPAREN,
anon_sym_LBRACE,
[29152] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1552), 4,
anon_sym_LPAREN,
anon_sym_LT,
anon_sym_COLON,
anon_sym_DOT,
[29162] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1493), 1,
anon_sym_PIPE,
ACTIONS(1513), 1,
anon_sym_COMMA,
ACTIONS(1554), 1,
anon_sym_GT,
STATE(631), 1,
aux_sym_type_tuple_repeat1,
[29178] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(598), 1,
anon_sym_DOT_DOT_DOT,
ACTIONS(1493), 1,
anon_sym_PIPE,
ACTIONS(274), 2,
anon_sym_COMMA,
anon_sym_GT,
[29192] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1558), 1,
anon_sym_RBRACE,
STATE(579), 1,
aux_sym_table_constructor_repeat1,
ACTIONS(1556), 2,
anon_sym_SEMI,
anon_sym_COMMA,
[29206] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(511), 1,
anon_sym_COMMA,
ACTIONS(904), 1,
anon_sym_do,
STATE(353), 1,
aux_sym_return_statement_repeat1,
STATE(368), 1,
sym_do_statement,
[29222] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(641), 1,
anon_sym_PIPE,
ACTIONS(1560), 2,
anon_sym_COMMA,
anon_sym_RPAREN,
[29233] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1562), 1,
anon_sym_COMMA,
ACTIONS(1564), 1,
anon_sym_RPAREN,
STATE(218), 1,
aux_sym_type_tuple_repeat1,
[29246] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(421), 1,
sym__long_string_start,
ACTIONS(423), 1,
sym__short_string_start,
STATE(709), 1,
sym_string,
[29259] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1566), 1,
anon_sym_COMMA,
ACTIONS(1568), 1,
anon_sym_RPAREN,
STATE(636), 1,
aux_sym__partypelist_repeat1,
[29272] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1570), 1,
anon_sym_COMMA,
ACTIONS(1572), 1,
anon_sym_GT,
STATE(621), 1,
aux_sym_typeargs_repeat1,
[29285] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1513), 1,
anon_sym_COMMA,
ACTIONS(1574), 1,
anon_sym_GT,
STATE(561), 1,
aux_sym_type_tuple_repeat1,
[29298] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1570), 1,
anon_sym_COMMA,
ACTIONS(1576), 1,
anon_sym_GT,
STATE(604), 1,
aux_sym_typeargs_repeat1,
[29311] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1570), 1,
anon_sym_COMMA,
ACTIONS(1578), 1,
anon_sym_GT,
STATE(621), 1,
aux_sym_typeargs_repeat1,
[29324] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1449), 1,
anon_sym_COMMA,
ACTIONS(1580), 1,
anon_sym_RBRACE,
STATE(622), 1,
aux_sym_table_type_repeat1,
[29337] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1582), 1,
anon_sym_COMMA,
ACTIONS(1584), 1,
anon_sym_RPAREN,
STATE(608), 1,
aux_sym__partypelist_repeat1,
[29350] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1586), 1,
anon_sym_COMMA,
ACTIONS(1588), 1,
anon_sym_RPAREN,
STATE(218), 1,
aux_sym_type_tuple_repeat1,
[29363] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1590), 1,
anon_sym_COMMA,
ACTIONS(1592), 1,
anon_sym_RPAREN,
STATE(636), 1,
aux_sym__partypelist_repeat1,
[29376] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1513), 1,
anon_sym_COMMA,
ACTIONS(1594), 1,
anon_sym_GT,
STATE(561), 1,
aux_sym_type_tuple_repeat1,
[29389] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1598), 1,
anon_sym_COLON,
ACTIONS(1596), 2,
anon_sym_COMMA,
anon_sym_RPAREN,
[29400] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(511), 1,
anon_sym_COMMA,
ACTIONS(1600), 1,
anon_sym_RPAREN,
STATE(353), 1,
aux_sym_return_statement_repeat1,
[29413] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1377), 1,
anon_sym_COMMA,
ACTIONS(1602), 1,
anon_sym_EQ,
STATE(637), 1,
aux_sym_assignment_variables_repeat1,
[29426] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(641), 1,
anon_sym_PIPE,
ACTIONS(1604), 2,
anon_sym_COMMA,
anon_sym_RPAREN,
[29437] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1526), 1,
anon_sym_COMMA,
ACTIONS(1606), 1,
anon_sym_in,
STATE(635), 1,
aux_sym_generic_for_statement_repeat1,
[29450] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(641), 1,
anon_sym_PIPE,
ACTIONS(1608), 2,
anon_sym_COMMA,
anon_sym_RPAREN,
[29461] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1570), 1,
anon_sym_COMMA,
ACTIONS(1610), 1,
anon_sym_GT,
STATE(623), 1,
aux_sym_typeargs_repeat1,
[29474] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1612), 1,
anon_sym_COMMA,
ACTIONS(1614), 1,
anon_sym_RPAREN,
STATE(600), 1,
aux_sym__partypelist_repeat1,
[29487] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1616), 1,
anon_sym_COMMA,
ACTIONS(1619), 1,
anon_sym_RPAREN,
STATE(618), 1,
aux_sym__parnamelist_repeat1,
[29500] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1493), 1,
anon_sym_PIPE,
ACTIONS(1621), 2,
anon_sym_COMMA,
anon_sym_GT,
[29511] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(641), 1,
anon_sym_PIPE,
ACTIONS(1623), 2,
anon_sym_COMMA,
anon_sym_RBRACE,
[29522] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1625), 1,
anon_sym_COMMA,
ACTIONS(1628), 1,
anon_sym_GT,
STATE(621), 1,
aux_sym_typeargs_repeat1,
[29535] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1630), 1,
anon_sym_COMMA,
ACTIONS(1633), 1,
anon_sym_RBRACE,
STATE(622), 1,
aux_sym_table_type_repeat1,
[29548] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1570), 1,
anon_sym_COMMA,
ACTIONS(1635), 1,
anon_sym_GT,
STATE(621), 1,
aux_sym_typeargs_repeat1,
[29561] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1637), 1,
anon_sym_COMMA,
ACTIONS(1639), 1,
anon_sym_RPAREN,
STATE(629), 1,
aux_sym__parnamelist_repeat1,
[29574] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1643), 1,
anon_sym_is,
ACTIONS(1641), 2,
anon_sym_COMMA,
anon_sym_GT,
[29585] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1645), 1,
anon_sym_COMMA,
ACTIONS(1647), 1,
anon_sym_RPAREN,
STATE(636), 1,
aux_sym__partypelist_repeat1,
[29598] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1449), 1,
anon_sym_COMMA,
ACTIONS(1649), 1,
anon_sym_RBRACE,
STATE(622), 1,
aux_sym_table_type_repeat1,
[29611] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1570), 1,
anon_sym_COMMA,
ACTIONS(1651), 1,
anon_sym_GT,
STATE(601), 1,
aux_sym_typeargs_repeat1,
[29624] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1653), 1,
anon_sym_COMMA,
ACTIONS(1655), 1,
anon_sym_RPAREN,
STATE(618), 1,
aux_sym__parnamelist_repeat1,
[29637] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1657), 1,
anon_sym_COMMA,
ACTIONS(1659), 1,
anon_sym_RPAREN,
STATE(626), 1,
aux_sym__partypelist_repeat1,
[29650] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1513), 1,
anon_sym_COMMA,
ACTIONS(1661), 1,
anon_sym_GT,
STATE(561), 1,
aux_sym_type_tuple_repeat1,
[29663] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(641), 1,
anon_sym_PIPE,
ACTIONS(1663), 2,
anon_sym_COMMA,
anon_sym_RPAREN,
[29674] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1520), 3,
anon_sym_SEMI,
anon_sym_COMMA,
anon_sym_RBRACE,
[29683] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(976), 1,
anon_sym_COMMA,
ACTIONS(1665), 1,
anon_sym_RPAREN,
STATE(218), 1,
aux_sym_type_tuple_repeat1,
[29696] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1667), 1,
anon_sym_COMMA,
ACTIONS(1670), 1,
anon_sym_in,
STATE(635), 1,
aux_sym_generic_for_statement_repeat1,
[29709] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1672), 1,
anon_sym_COMMA,
ACTIONS(1675), 1,
anon_sym_RPAREN,
STATE(636), 1,
aux_sym__partypelist_repeat1,
[29722] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1677), 1,
anon_sym_COMMA,
ACTIONS(1680), 1,
anon_sym_EQ,
STATE(637), 1,
aux_sym_assignment_variables_repeat1,
[29735] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(511), 1,
anon_sym_COMMA,
ACTIONS(1682), 1,
anon_sym_RPAREN,
STATE(353), 1,
aux_sym_return_statement_repeat1,
[29748] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1684), 1,
anon_sym_return,
STATE(290), 1,
sym_macroexp_body,
STATE(723), 1,
sym_return_statement,
[29761] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1475), 1,
anon_sym_DOT,
ACTIONS(1686), 1,
anon_sym_COLON,
STATE(564), 1,
aux_sym_function_name_repeat1,
[29774] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1449), 1,
anon_sym_COMMA,
ACTIONS(1688), 1,
anon_sym_RBRACE,
STATE(622), 1,
aux_sym_table_type_repeat1,
[29787] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1690), 1,
anon_sym_COMMA,
ACTIONS(1692), 1,
anon_sym_RPAREN,
STATE(218), 1,
aux_sym_type_tuple_repeat1,
[29800] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(766), 1,
anon_sym_PIPE,
ACTIONS(1694), 1,
anon_sym_RBRACE,
[29810] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1333), 1,
anon_sym_COLON,
ACTIONS(1696), 1,
sym_identifier,
[29820] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1698), 1,
sym_identifier,
STATE(616), 1,
sym_typearg,
[29830] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(766), 1,
anon_sym_PIPE,
ACTIONS(1700), 1,
anon_sym_RPAREN,
[29840] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1702), 2,
anon_sym_COMMA,
anon_sym_RPAREN,
[29848] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1704), 2,
anon_sym_LPAREN,
anon_sym_LT,
[29856] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1486), 1,
sym_identifier,
STATE(653), 1,
sym__parname,
[29866] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(766), 1,
anon_sym_PIPE,
ACTIONS(1706), 1,
anon_sym_EQ,
[29876] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(766), 1,
anon_sym_PIPE,
ACTIONS(1708), 1,
anon_sym_RPAREN,
[29886] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1698), 1,
sym_identifier,
STATE(603), 1,
sym_typearg,
[29896] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1710), 2,
anon_sym_COMMA,
anon_sym_RPAREN,
[29904] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(766), 1,
anon_sym_PIPE,
ACTIONS(1712), 1,
anon_sym_RPAREN,
[29914] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(766), 1,
anon_sym_PIPE,
ACTIONS(1714), 1,
anon_sym_RBRACE,
[29924] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1628), 2,
anon_sym_COMMA,
anon_sym_GT,
[29932] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(766), 1,
anon_sym_PIPE,
ACTIONS(1716), 1,
anon_sym_RBRACE,
[29942] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(766), 1,
anon_sym_PIPE,
ACTIONS(1718), 1,
anon_sym_RBRACE,
[29952] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(766), 1,
anon_sym_PIPE,
ACTIONS(1720), 1,
anon_sym_RBRACE,
[29962] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(766), 1,
anon_sym_PIPE,
ACTIONS(1722), 1,
anon_sym_RBRACE,
[29972] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1698), 1,
sym_identifier,
STATE(656), 1,
sym_typearg,
[29982] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1428), 1,
anon_sym_LPAREN,
STATE(419), 1,
sym_signature_arguments,
[29992] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(766), 1,
anon_sym_PIPE,
ACTIONS(1724), 1,
anon_sym_RBRACE,
[30002] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(766), 1,
anon_sym_PIPE,
ACTIONS(1726), 1,
anon_sym_RPAREN,
[30012] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1728), 1,
sym_identifier,
STATE(559), 1,
sym_function_name,
[30022] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1730), 2,
anon_sym_LPAREN,
anon_sym_LT,
[30030] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(766), 1,
anon_sym_PIPE,
ACTIONS(1732), 1,
anon_sym_RBRACE,
[30040] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1333), 1,
anon_sym_COLON,
ACTIONS(1734), 1,
sym_identifier,
[30050] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1670), 2,
anon_sym_COMMA,
anon_sym_in,
[30058] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1736), 1,
sym_identifier,
STATE(356), 1,
sym_var_declarator,
[30068] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1333), 1,
anon_sym_COLON,
ACTIONS(1738), 1,
sym_identifier,
[30078] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1333), 1,
anon_sym_COLON,
ACTIONS(1740), 1,
sym_identifier,
[30088] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1333), 1,
anon_sym_COLON,
ACTIONS(1742), 1,
sym_identifier,
[30098] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1698), 1,
sym_identifier,
STATE(628), 1,
sym_typearg,
[30108] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1744), 1,
anon_sym_RPAREN,
[30115] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1746), 1,
anon_sym_COLON,
[30122] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1748), 1,
ts_builtin_sym_end,
[30129] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1750), 1,
anon_sym_EQ,
[30136] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1752), 1,
anon_sym_RPAREN,
[30143] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1754), 1,
anon_sym_RPAREN,
[30150] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1756), 1,
anon_sym_COLON,
[30157] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1758), 1,
anon_sym_RPAREN,
[30164] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1760), 1,
anon_sym_RPAREN,
[30171] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1762), 1,
sym_identifier,
[30178] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1764), 1,
sym_identifier,
[30185] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1766), 1,
sym_identifier,
[30192] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1768), 1,
sym_identifier,
[30199] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1505), 1,
anon_sym_RBRACE,
[30206] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1770), 1,
anon_sym_COLON,
[30213] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1411), 1,
anon_sym_end,
[30220] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1772), 1,
sym__short_string_end,
[30227] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1774), 1,
anon_sym_RPAREN,
[30234] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1776), 1,
anon_sym_RPAREN,
[30241] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1778), 1,
sym_identifier,
[30248] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1558), 1,
anon_sym_RBRACE,
[30255] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1780), 1,
sym_identifier,
[30262] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1782), 1,
anon_sym_RPAREN,
[30269] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1784), 1,
anon_sym_RPAREN,
[30276] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1786), 1,
anon_sym_GT,
[30283] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1788), 1,
anon_sym_RPAREN,
[30290] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1738), 1,
sym_identifier,
[30297] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1790), 1,
anon_sym_RPAREN,
[30304] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1792), 1,
anon_sym_COLON,
[30311] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1403), 1,
anon_sym_end,
[30318] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1794), 1,
anon_sym_RPAREN,
[30325] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1742), 1,
sym_identifier,
[30332] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1796), 1,
anon_sym_EQ,
[30339] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1798), 1,
sym_identifier,
[30346] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1800), 1,
anon_sym_RBRACK,
[30353] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1802), 1,
anon_sym_COLON_COLON,
[30360] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1804), 1,
sym_identifier,
[30367] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1806), 1,
sym_identifier,
[30374] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1808), 1,
anon_sym_RPAREN,
[30381] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1810), 1,
sym_identifier,
[30388] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1696), 1,
sym_identifier,
[30395] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1812), 1,
anon_sym_RPAREN,
[30402] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1814), 1,
anon_sym_end,
[30409] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1816), 1,
sym_identifier,
[30416] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1818), 1,
sym__short_string_end,
[30423] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1820), 1,
anon_sym_RPAREN,
[30430] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1822), 1,
anon_sym_RPAREN,
[30437] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1824), 1,
sym_identifier,
[30444] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1826), 1,
anon_sym_end,
[30451] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1828), 1,
sym_identifier,
[30458] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1830), 1,
sym_identifier,
[30465] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1772), 1,
sym__long_string_end,
[30472] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1832), 1,
anon_sym_RPAREN,
[30479] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1834), 1,
anon_sym_RPAREN,
[30486] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1740), 1,
sym_identifier,
[30493] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1836), 1,
anon_sym_EQ,
[30500] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1818), 1,
sym__long_string_end,
[30507] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(1838), 1,
sym_identifier,
};
static const uint32_t ts_small_parse_table_map[] = {
[SMALL_STATE(3)] = 0,
[SMALL_STATE(4)] = 70,
[SMALL_STATE(5)] = 146,
[SMALL_STATE(6)] = 216,
[SMALL_STATE(7)] = 290,
[SMALL_STATE(8)] = 360,
[SMALL_STATE(9)] = 429,
[SMALL_STATE(10)] = 498,
[SMALL_STATE(11)] = 569,
[SMALL_STATE(12)] = 638,
[SMALL_STATE(13)] = 707,
[SMALL_STATE(14)] = 776,
[SMALL_STATE(15)] = 845,
[SMALL_STATE(16)] = 914,
[SMALL_STATE(17)] = 983,
[SMALL_STATE(18)] = 1052,
[SMALL_STATE(19)] = 1121,
[SMALL_STATE(20)] = 1190,
[SMALL_STATE(21)] = 1259,
[SMALL_STATE(22)] = 1328,
[SMALL_STATE(23)] = 1397,
[SMALL_STATE(24)] = 1466,
[SMALL_STATE(25)] = 1535,
[SMALL_STATE(26)] = 1604,
[SMALL_STATE(27)] = 1676,
[SMALL_STATE(28)] = 1744,
[SMALL_STATE(29)] = 1812,
[SMALL_STATE(30)] = 1880,
[SMALL_STATE(31)] = 1948,
[SMALL_STATE(32)] = 2016,
[SMALL_STATE(33)] = 2084,
[SMALL_STATE(34)] = 2152,
[SMALL_STATE(35)] = 2220,
[SMALL_STATE(36)] = 2288,
[SMALL_STATE(37)] = 2356,
[SMALL_STATE(38)] = 2424,
[SMALL_STATE(39)] = 2492,
[SMALL_STATE(40)] = 2560,
[SMALL_STATE(41)] = 2628,
[SMALL_STATE(42)] = 2696,
[SMALL_STATE(43)] = 2764,
[SMALL_STATE(44)] = 2832,
[SMALL_STATE(45)] = 2900,
[SMALL_STATE(46)] = 2968,
[SMALL_STATE(47)] = 3036,
[SMALL_STATE(48)] = 3104,
[SMALL_STATE(49)] = 3180,
[SMALL_STATE(50)] = 3254,
[SMALL_STATE(51)] = 3322,
[SMALL_STATE(52)] = 3390,
[SMALL_STATE(53)] = 3458,
[SMALL_STATE(54)] = 3527,
[SMALL_STATE(55)] = 3598,
[SMALL_STATE(56)] = 3667,
[SMALL_STATE(57)] = 3734,
[SMALL_STATE(58)] = 3803,
[SMALL_STATE(59)] = 3878,
[SMALL_STATE(60)] = 3949,
[SMALL_STATE(61)] = 4016,
[SMALL_STATE(62)] = 4083,
[SMALL_STATE(63)] = 4150,
[SMALL_STATE(64)] = 4217,
[SMALL_STATE(65)] = 4284,
[SMALL_STATE(66)] = 4351,
[SMALL_STATE(67)] = 4418,
[SMALL_STATE(68)] = 4485,
[SMALL_STATE(69)] = 4560,
[SMALL_STATE(70)] = 4631,
[SMALL_STATE(71)] = 4706,
[SMALL_STATE(72)] = 4772,
[SMALL_STATE(73)] = 4838,
[SMALL_STATE(74)] = 4904,
[SMALL_STATE(75)] = 4970,
[SMALL_STATE(76)] = 5036,
[SMALL_STATE(77)] = 5102,
[SMALL_STATE(78)] = 5168,
[SMALL_STATE(79)] = 5234,
[SMALL_STATE(80)] = 5300,
[SMALL_STATE(81)] = 5368,
[SMALL_STATE(82)] = 5434,
[SMALL_STATE(83)] = 5502,
[SMALL_STATE(84)] = 5568,
[SMALL_STATE(85)] = 5638,
[SMALL_STATE(86)] = 5704,
[SMALL_STATE(87)] = 5770,
[SMALL_STATE(88)] = 5840,
[SMALL_STATE(89)] = 5906,
[SMALL_STATE(90)] = 5972,
[SMALL_STATE(91)] = 6038,
[SMALL_STATE(92)] = 6106,
[SMALL_STATE(93)] = 6176,
[SMALL_STATE(94)] = 6242,
[SMALL_STATE(95)] = 6308,
[SMALL_STATE(96)] = 6378,
[SMALL_STATE(97)] = 6452,
[SMALL_STATE(98)] = 6522,
[SMALL_STATE(99)] = 6587,
[SMALL_STATE(100)] = 6652,
[SMALL_STATE(101)] = 6717,
[SMALL_STATE(102)] = 6782,
[SMALL_STATE(103)] = 6847,
[SMALL_STATE(104)] = 6912,
[SMALL_STATE(105)] = 6977,
[SMALL_STATE(106)] = 7042,
[SMALL_STATE(107)] = 7107,
[SMALL_STATE(108)] = 7172,
[SMALL_STATE(109)] = 7237,
[SMALL_STATE(110)] = 7302,
[SMALL_STATE(111)] = 7367,
[SMALL_STATE(112)] = 7432,
[SMALL_STATE(113)] = 7497,
[SMALL_STATE(114)] = 7566,
[SMALL_STATE(115)] = 7639,
[SMALL_STATE(116)] = 7706,
[SMALL_STATE(117)] = 7772,
[SMALL_STATE(118)] = 7838,
[SMALL_STATE(119)] = 7906,
[SMALL_STATE(120)] = 7997,
[SMALL_STATE(121)] = 8062,
[SMALL_STATE(122)] = 8133,
[SMALL_STATE(123)] = 8212,
[SMALL_STATE(124)] = 8301,
[SMALL_STATE(125)] = 8384,
[SMALL_STATE(126)] = 8465,
[SMALL_STATE(127)] = 8542,
[SMALL_STATE(128)] = 8617,
[SMALL_STATE(129)] = 8684,
[SMALL_STATE(130)] = 8759,
[SMALL_STATE(131)] = 8826,
[SMALL_STATE(132)] = 8891,
[SMALL_STATE(133)] = 8958,
[SMALL_STATE(134)] = 9020,
[SMALL_STATE(135)] = 9112,
[SMALL_STATE(136)] = 9218,
[SMALL_STATE(137)] = 9276,
[SMALL_STATE(138)] = 9342,
[SMALL_STATE(139)] = 9400,
[SMALL_STATE(140)] = 9506,
[SMALL_STATE(141)] = 9562,
[SMALL_STATE(142)] = 9620,
[SMALL_STATE(143)] = 9676,
[SMALL_STATE(144)] = 9750,
[SMALL_STATE(145)] = 9820,
[SMALL_STATE(146)] = 9882,
[SMALL_STATE(147)] = 9964,
[SMALL_STATE(148)] = 10044,
[SMALL_STATE(149)] = 10116,
[SMALL_STATE(150)] = 10184,
[SMALL_STATE(151)] = 10250,
[SMALL_STATE(152)] = 10349,
[SMALL_STATE(153)] = 10436,
[SMALL_STATE(154)] = 10523,
[SMALL_STATE(155)] = 10606,
[SMALL_STATE(156)] = 10701,
[SMALL_STATE(157)] = 10814,
[SMALL_STATE(158)] = 10909,
[SMALL_STATE(159)] = 10990,
[SMALL_STATE(160)] = 11103,
[SMALL_STATE(161)] = 11184,
[SMALL_STATE(162)] = 11280,
[SMALL_STATE(163)] = 11376,
[SMALL_STATE(164)] = 11472,
[SMALL_STATE(165)] = 11565,
[SMALL_STATE(166)] = 11658,
[SMALL_STATE(167)] = 11751,
[SMALL_STATE(168)] = 11844,
[SMALL_STATE(169)] = 11937,
[SMALL_STATE(170)] = 12030,
[SMALL_STATE(171)] = 12085,
[SMALL_STATE(172)] = 12138,
[SMALL_STATE(173)] = 12231,
[SMALL_STATE(174)] = 12324,
[SMALL_STATE(175)] = 12417,
[SMALL_STATE(176)] = 12510,
[SMALL_STATE(177)] = 12566,
[SMALL_STATE(178)] = 12615,
[SMALL_STATE(179)] = 12662,
[SMALL_STATE(180)] = 12717,
[SMALL_STATE(181)] = 12764,
[SMALL_STATE(182)] = 12811,
[SMALL_STATE(183)] = 12857,
[SMALL_STATE(184)] = 12903,
[SMALL_STATE(185)] = 12949,
[SMALL_STATE(186)] = 13003,
[SMALL_STATE(187)] = 13049,
[SMALL_STATE(188)] = 13095,
[SMALL_STATE(189)] = 13141,
[SMALL_STATE(190)] = 13187,
[SMALL_STATE(191)] = 13233,
[SMALL_STATE(192)] = 13279,
[SMALL_STATE(193)] = 13329,
[SMALL_STATE(194)] = 13413,
[SMALL_STATE(195)] = 13459,
[SMALL_STATE(196)] = 13513,
[SMALL_STATE(197)] = 13597,
[SMALL_STATE(198)] = 13643,
[SMALL_STATE(199)] = 13689,
[SMALL_STATE(200)] = 13735,
[SMALL_STATE(201)] = 13781,
[SMALL_STATE(202)] = 13827,
[SMALL_STATE(203)] = 13873,
[SMALL_STATE(204)] = 13919,
[SMALL_STATE(205)] = 13965,
[SMALL_STATE(206)] = 14011,
[SMALL_STATE(207)] = 14057,
[SMALL_STATE(208)] = 14103,
[SMALL_STATE(209)] = 14149,
[SMALL_STATE(210)] = 14195,
[SMALL_STATE(211)] = 14245,
[SMALL_STATE(212)] = 14295,
[SMALL_STATE(213)] = 14341,
[SMALL_STATE(214)] = 14388,
[SMALL_STATE(215)] = 14437,
[SMALL_STATE(216)] = 14486,
[SMALL_STATE(217)] = 14535,
[SMALL_STATE(218)] = 14582,
[SMALL_STATE(219)] = 14631,
[SMALL_STATE(220)] = 14680,
[SMALL_STATE(221)] = 14727,
[SMALL_STATE(222)] = 14807,
[SMALL_STATE(223)] = 14887,
[SMALL_STATE(224)] = 14967,
[SMALL_STATE(225)] = 15013,
[SMALL_STATE(226)] = 15059,
[SMALL_STATE(227)] = 15105,
[SMALL_STATE(228)] = 15185,
[SMALL_STATE(229)] = 15236,
[SMALL_STATE(230)] = 15313,
[SMALL_STATE(231)] = 15364,
[SMALL_STATE(232)] = 15438,
[SMALL_STATE(233)] = 15512,
[SMALL_STATE(234)] = 15558,
[SMALL_STATE(235)] = 15632,
[SMALL_STATE(236)] = 15706,
[SMALL_STATE(237)] = 15752,
[SMALL_STATE(238)] = 15826,
[SMALL_STATE(239)] = 15897,
[SMALL_STATE(240)] = 15968,
[SMALL_STATE(241)] = 16039,
[SMALL_STATE(242)] = 16110,
[SMALL_STATE(243)] = 16181,
[SMALL_STATE(244)] = 16252,
[SMALL_STATE(245)] = 16323,
[SMALL_STATE(246)] = 16394,
[SMALL_STATE(247)] = 16465,
[SMALL_STATE(248)] = 16536,
[SMALL_STATE(249)] = 16607,
[SMALL_STATE(250)] = 16678,
[SMALL_STATE(251)] = 16749,
[SMALL_STATE(252)] = 16820,
[SMALL_STATE(253)] = 16891,
[SMALL_STATE(254)] = 16962,
[SMALL_STATE(255)] = 17033,
[SMALL_STATE(256)] = 17104,
[SMALL_STATE(257)] = 17175,
[SMALL_STATE(258)] = 17246,
[SMALL_STATE(259)] = 17317,
[SMALL_STATE(260)] = 17388,
[SMALL_STATE(261)] = 17459,
[SMALL_STATE(262)] = 17530,
[SMALL_STATE(263)] = 17601,
[SMALL_STATE(264)] = 17672,
[SMALL_STATE(265)] = 17743,
[SMALL_STATE(266)] = 17814,
[SMALL_STATE(267)] = 17885,
[SMALL_STATE(268)] = 17956,
[SMALL_STATE(269)] = 18027,
[SMALL_STATE(270)] = 18098,
[SMALL_STATE(271)] = 18141,
[SMALL_STATE(272)] = 18184,
[SMALL_STATE(273)] = 18255,
[SMALL_STATE(274)] = 18300,
[SMALL_STATE(275)] = 18371,
[SMALL_STATE(276)] = 18442,
[SMALL_STATE(277)] = 18513,
[SMALL_STATE(278)] = 18584,
[SMALL_STATE(279)] = 18655,
[SMALL_STATE(280)] = 18726,
[SMALL_STATE(281)] = 18797,
[SMALL_STATE(282)] = 18868,
[SMALL_STATE(283)] = 18939,
[SMALL_STATE(284)] = 19010,
[SMALL_STATE(285)] = 19081,
[SMALL_STATE(286)] = 19152,
[SMALL_STATE(287)] = 19194,
[SMALL_STATE(288)] = 19233,
[SMALL_STATE(289)] = 19269,
[SMALL_STATE(290)] = 19305,
[SMALL_STATE(291)] = 19341,
[SMALL_STATE(292)] = 19377,
[SMALL_STATE(293)] = 19413,
[SMALL_STATE(294)] = 19449,
[SMALL_STATE(295)] = 19485,
[SMALL_STATE(296)] = 19521,
[SMALL_STATE(297)] = 19557,
[SMALL_STATE(298)] = 19593,
[SMALL_STATE(299)] = 19629,
[SMALL_STATE(300)] = 19665,
[SMALL_STATE(301)] = 19701,
[SMALL_STATE(302)] = 19737,
[SMALL_STATE(303)] = 19773,
[SMALL_STATE(304)] = 19809,
[SMALL_STATE(305)] = 19845,
[SMALL_STATE(306)] = 19881,
[SMALL_STATE(307)] = 19917,
[SMALL_STATE(308)] = 19953,
[SMALL_STATE(309)] = 19989,
[SMALL_STATE(310)] = 20025,
[SMALL_STATE(311)] = 20061,
[SMALL_STATE(312)] = 20097,
[SMALL_STATE(313)] = 20133,
[SMALL_STATE(314)] = 20169,
[SMALL_STATE(315)] = 20205,
[SMALL_STATE(316)] = 20241,
[SMALL_STATE(317)] = 20277,
[SMALL_STATE(318)] = 20313,
[SMALL_STATE(319)] = 20349,
[SMALL_STATE(320)] = 20385,
[SMALL_STATE(321)] = 20421,
[SMALL_STATE(322)] = 20457,
[SMALL_STATE(323)] = 20493,
[SMALL_STATE(324)] = 20562,
[SMALL_STATE(325)] = 20631,
[SMALL_STATE(326)] = 20697,
[SMALL_STATE(327)] = 20759,
[SMALL_STATE(328)] = 20799,
[SMALL_STATE(329)] = 20865,
[SMALL_STATE(330)] = 20931,
[SMALL_STATE(331)] = 20993,
[SMALL_STATE(332)] = 21055,
[SMALL_STATE(333)] = 21117,
[SMALL_STATE(334)] = 21183,
[SMALL_STATE(335)] = 21246,
[SMALL_STATE(336)] = 21309,
[SMALL_STATE(337)] = 21369,
[SMALL_STATE(338)] = 21441,
[SMALL_STATE(339)] = 21501,
[SMALL_STATE(340)] = 21537,
[SMALL_STATE(341)] = 21609,
[SMALL_STATE(342)] = 21643,
[SMALL_STATE(343)] = 21679,
[SMALL_STATE(344)] = 21751,
[SMALL_STATE(345)] = 21823,
[SMALL_STATE(346)] = 21883,
[SMALL_STATE(347)] = 21955,
[SMALL_STATE(348)] = 22015,
[SMALL_STATE(349)] = 22075,
[SMALL_STATE(350)] = 22135,
[SMALL_STATE(351)] = 22171,
[SMALL_STATE(352)] = 22209,
[SMALL_STATE(353)] = 22244,
[SMALL_STATE(354)] = 22279,
[SMALL_STATE(355)] = 22348,
[SMALL_STATE(356)] = 22385,
[SMALL_STATE(357)] = 22416,
[SMALL_STATE(358)] = 22447,
[SMALL_STATE(359)] = 22513,
[SMALL_STATE(360)] = 22547,
[SMALL_STATE(361)] = 22613,
[SMALL_STATE(362)] = 22679,
[SMALL_STATE(363)] = 22713,
[SMALL_STATE(364)] = 22779,
[SMALL_STATE(365)] = 22810,
[SMALL_STATE(366)] = 22838,
[SMALL_STATE(367)] = 22866,
[SMALL_STATE(368)] = 22894,
[SMALL_STATE(369)] = 22922,
[SMALL_STATE(370)] = 22950,
[SMALL_STATE(371)] = 22978,
[SMALL_STATE(372)] = 23006,
[SMALL_STATE(373)] = 23036,
[SMALL_STATE(374)] = 23064,
[SMALL_STATE(375)] = 23092,
[SMALL_STATE(376)] = 23120,
[SMALL_STATE(377)] = 23148,
[SMALL_STATE(378)] = 23176,
[SMALL_STATE(379)] = 23206,
[SMALL_STATE(380)] = 23234,
[SMALL_STATE(381)] = 23262,
[SMALL_STATE(382)] = 23290,
[SMALL_STATE(383)] = 23318,
[SMALL_STATE(384)] = 23346,
[SMALL_STATE(385)] = 23374,
[SMALL_STATE(386)] = 23402,
[SMALL_STATE(387)] = 23430,
[SMALL_STATE(388)] = 23458,
[SMALL_STATE(389)] = 23486,
[SMALL_STATE(390)] = 23514,
[SMALL_STATE(391)] = 23542,
[SMALL_STATE(392)] = 23570,
[SMALL_STATE(393)] = 23600,
[SMALL_STATE(394)] = 23628,
[SMALL_STATE(395)] = 23656,
[SMALL_STATE(396)] = 23684,
[SMALL_STATE(397)] = 23712,
[SMALL_STATE(398)] = 23769,
[SMALL_STATE(399)] = 23826,
[SMALL_STATE(400)] = 23883,
[SMALL_STATE(401)] = 23940,
[SMALL_STATE(402)] = 23997,
[SMALL_STATE(403)] = 24054,
[SMALL_STATE(404)] = 24111,
[SMALL_STATE(405)] = 24168,
[SMALL_STATE(406)] = 24195,
[SMALL_STATE(407)] = 24222,
[SMALL_STATE(408)] = 24279,
[SMALL_STATE(409)] = 24336,
[SMALL_STATE(410)] = 24393,
[SMALL_STATE(411)] = 24450,
[SMALL_STATE(412)] = 24507,
[SMALL_STATE(413)] = 24564,
[SMALL_STATE(414)] = 24621,
[SMALL_STATE(415)] = 24678,
[SMALL_STATE(416)] = 24721,
[SMALL_STATE(417)] = 24745,
[SMALL_STATE(418)] = 24769,
[SMALL_STATE(419)] = 24793,
[SMALL_STATE(420)] = 24819,
[SMALL_STATE(421)] = 24843,
[SMALL_STATE(422)] = 24867,
[SMALL_STATE(423)] = 24893,
[SMALL_STATE(424)] = 24917,
[SMALL_STATE(425)] = 24940,
[SMALL_STATE(426)] = 24963,
[SMALL_STATE(427)] = 25009,
[SMALL_STATE(428)] = 25049,
[SMALL_STATE(429)] = 25089,
[SMALL_STATE(430)] = 25129,
[SMALL_STATE(431)] = 25166,
[SMALL_STATE(432)] = 25203,
[SMALL_STATE(433)] = 25240,
[SMALL_STATE(434)] = 25277,
[SMALL_STATE(435)] = 25314,
[SMALL_STATE(436)] = 25351,
[SMALL_STATE(437)] = 25385,
[SMALL_STATE(438)] = 25425,
[SMALL_STATE(439)] = 25459,
[SMALL_STATE(440)] = 25493,
[SMALL_STATE(441)] = 25527,
[SMALL_STATE(442)] = 25561,
[SMALL_STATE(443)] = 25595,
[SMALL_STATE(444)] = 25629,
[SMALL_STATE(445)] = 25663,
[SMALL_STATE(446)] = 25697,
[SMALL_STATE(447)] = 25731,
[SMALL_STATE(448)] = 25765,
[SMALL_STATE(449)] = 25799,
[SMALL_STATE(450)] = 25833,
[SMALL_STATE(451)] = 25867,
[SMALL_STATE(452)] = 25901,
[SMALL_STATE(453)] = 25935,
[SMALL_STATE(454)] = 25966,
[SMALL_STATE(455)] = 25987,
[SMALL_STATE(456)] = 26018,
[SMALL_STATE(457)] = 26049,
[SMALL_STATE(458)] = 26070,
[SMALL_STATE(459)] = 26091,
[SMALL_STATE(460)] = 26112,
[SMALL_STATE(461)] = 26143,
[SMALL_STATE(462)] = 26174,
[SMALL_STATE(463)] = 26205,
[SMALL_STATE(464)] = 26226,
[SMALL_STATE(465)] = 26257,
[SMALL_STATE(466)] = 26288,
[SMALL_STATE(467)] = 26319,
[SMALL_STATE(468)] = 26350,
[SMALL_STATE(469)] = 26381,
[SMALL_STATE(470)] = 26412,
[SMALL_STATE(471)] = 26443,
[SMALL_STATE(472)] = 26474,
[SMALL_STATE(473)] = 26505,
[SMALL_STATE(474)] = 26536,
[SMALL_STATE(475)] = 26567,
[SMALL_STATE(476)] = 26598,
[SMALL_STATE(477)] = 26629,
[SMALL_STATE(478)] = 26657,
[SMALL_STATE(479)] = 26685,
[SMALL_STATE(480)] = 26713,
[SMALL_STATE(481)] = 26741,
[SMALL_STATE(482)] = 26769,
[SMALL_STATE(483)] = 26797,
[SMALL_STATE(484)] = 26825,
[SMALL_STATE(485)] = 26853,
[SMALL_STATE(486)] = 26881,
[SMALL_STATE(487)] = 26909,
[SMALL_STATE(488)] = 26937,
[SMALL_STATE(489)] = 26965,
[SMALL_STATE(490)] = 26993,
[SMALL_STATE(491)] = 27021,
[SMALL_STATE(492)] = 27039,
[SMALL_STATE(493)] = 27067,
[SMALL_STATE(494)] = 27095,
[SMALL_STATE(495)] = 27123,
[SMALL_STATE(496)] = 27151,
[SMALL_STATE(497)] = 27169,
[SMALL_STATE(498)] = 27197,
[SMALL_STATE(499)] = 27225,
[SMALL_STATE(500)] = 27253,
[SMALL_STATE(501)] = 27281,
[SMALL_STATE(502)] = 27309,
[SMALL_STATE(503)] = 27337,
[SMALL_STATE(504)] = 27355,
[SMALL_STATE(505)] = 27383,
[SMALL_STATE(506)] = 27411,
[SMALL_STATE(507)] = 27439,
[SMALL_STATE(508)] = 27467,
[SMALL_STATE(509)] = 27495,
[SMALL_STATE(510)] = 27523,
[SMALL_STATE(511)] = 27551,
[SMALL_STATE(512)] = 27579,
[SMALL_STATE(513)] = 27607,
[SMALL_STATE(514)] = 27625,
[SMALL_STATE(515)] = 27643,
[SMALL_STATE(516)] = 27661,
[SMALL_STATE(517)] = 27689,
[SMALL_STATE(518)] = 27717,
[SMALL_STATE(519)] = 27745,
[SMALL_STATE(520)] = 27773,
[SMALL_STATE(521)] = 27805,
[SMALL_STATE(522)] = 27833,
[SMALL_STATE(523)] = 27861,
[SMALL_STATE(524)] = 27889,
[SMALL_STATE(525)] = 27917,
[SMALL_STATE(526)] = 27945,
[SMALL_STATE(527)] = 27967,
[SMALL_STATE(528)] = 27995,
[SMALL_STATE(529)] = 28023,
[SMALL_STATE(530)] = 28051,
[SMALL_STATE(531)] = 28079,
[SMALL_STATE(532)] = 28107,
[SMALL_STATE(533)] = 28135,
[SMALL_STATE(534)] = 28163,
[SMALL_STATE(535)] = 28180,
[SMALL_STATE(536)] = 28202,
[SMALL_STATE(537)] = 28226,
[SMALL_STATE(538)] = 28247,
[SMALL_STATE(539)] = 28270,
[SMALL_STATE(540)] = 28293,
[SMALL_STATE(541)] = 28316,
[SMALL_STATE(542)] = 28336,
[SMALL_STATE(543)] = 28356,
[SMALL_STATE(544)] = 28376,
[SMALL_STATE(545)] = 28396,
[SMALL_STATE(546)] = 28416,
[SMALL_STATE(547)] = 28436,
[SMALL_STATE(548)] = 28452,
[SMALL_STATE(549)] = 28472,
[SMALL_STATE(550)] = 28492,
[SMALL_STATE(551)] = 28505,
[SMALL_STATE(552)] = 28524,
[SMALL_STATE(553)] = 28537,
[SMALL_STATE(554)] = 28554,
[SMALL_STATE(555)] = 28573,
[SMALL_STATE(556)] = 28590,
[SMALL_STATE(557)] = 28609,
[SMALL_STATE(558)] = 28626,
[SMALL_STATE(559)] = 28645,
[SMALL_STATE(560)] = 28664,
[SMALL_STATE(561)] = 28683,
[SMALL_STATE(562)] = 28698,
[SMALL_STATE(563)] = 28711,
[SMALL_STATE(564)] = 28726,
[SMALL_STATE(565)] = 28743,
[SMALL_STATE(566)] = 28758,
[SMALL_STATE(567)] = 28775,
[SMALL_STATE(568)] = 28794,
[SMALL_STATE(569)] = 28807,
[SMALL_STATE(570)] = 28826,
[SMALL_STATE(571)] = 28845,
[SMALL_STATE(572)] = 28862,
[SMALL_STATE(573)] = 28876,
[SMALL_STATE(574)] = 28892,
[SMALL_STATE(575)] = 28906,
[SMALL_STATE(576)] = 28922,
[SMALL_STATE(577)] = 28938,
[SMALL_STATE(578)] = 28952,
[SMALL_STATE(579)] = 28968,
[SMALL_STATE(580)] = 28982,
[SMALL_STATE(581)] = 28994,
[SMALL_STATE(582)] = 29004,
[SMALL_STATE(583)] = 29020,
[SMALL_STATE(584)] = 29036,
[SMALL_STATE(585)] = 29048,
[SMALL_STATE(586)] = 29064,
[SMALL_STATE(587)] = 29078,
[SMALL_STATE(588)] = 29094,
[SMALL_STATE(589)] = 29110,
[SMALL_STATE(590)] = 29126,
[SMALL_STATE(591)] = 29142,
[SMALL_STATE(592)] = 29152,
[SMALL_STATE(593)] = 29162,
[SMALL_STATE(594)] = 29178,
[SMALL_STATE(595)] = 29192,
[SMALL_STATE(596)] = 29206,
[SMALL_STATE(597)] = 29222,
[SMALL_STATE(598)] = 29233,
[SMALL_STATE(599)] = 29246,
[SMALL_STATE(600)] = 29259,
[SMALL_STATE(601)] = 29272,
[SMALL_STATE(602)] = 29285,
[SMALL_STATE(603)] = 29298,
[SMALL_STATE(604)] = 29311,
[SMALL_STATE(605)] = 29324,
[SMALL_STATE(606)] = 29337,
[SMALL_STATE(607)] = 29350,
[SMALL_STATE(608)] = 29363,
[SMALL_STATE(609)] = 29376,
[SMALL_STATE(610)] = 29389,
[SMALL_STATE(611)] = 29400,
[SMALL_STATE(612)] = 29413,
[SMALL_STATE(613)] = 29426,
[SMALL_STATE(614)] = 29437,
[SMALL_STATE(615)] = 29450,
[SMALL_STATE(616)] = 29461,
[SMALL_STATE(617)] = 29474,
[SMALL_STATE(618)] = 29487,
[SMALL_STATE(619)] = 29500,
[SMALL_STATE(620)] = 29511,
[SMALL_STATE(621)] = 29522,
[SMALL_STATE(622)] = 29535,
[SMALL_STATE(623)] = 29548,
[SMALL_STATE(624)] = 29561,
[SMALL_STATE(625)] = 29574,
[SMALL_STATE(626)] = 29585,
[SMALL_STATE(627)] = 29598,
[SMALL_STATE(628)] = 29611,
[SMALL_STATE(629)] = 29624,
[SMALL_STATE(630)] = 29637,
[SMALL_STATE(631)] = 29650,
[SMALL_STATE(632)] = 29663,
[SMALL_STATE(633)] = 29674,
[SMALL_STATE(634)] = 29683,
[SMALL_STATE(635)] = 29696,
[SMALL_STATE(636)] = 29709,
[SMALL_STATE(637)] = 29722,
[SMALL_STATE(638)] = 29735,
[SMALL_STATE(639)] = 29748,
[SMALL_STATE(640)] = 29761,
[SMALL_STATE(641)] = 29774,
[SMALL_STATE(642)] = 29787,
[SMALL_STATE(643)] = 29800,
[SMALL_STATE(644)] = 29810,
[SMALL_STATE(645)] = 29820,
[SMALL_STATE(646)] = 29830,
[SMALL_STATE(647)] = 29840,
[SMALL_STATE(648)] = 29848,
[SMALL_STATE(649)] = 29856,
[SMALL_STATE(650)] = 29866,
[SMALL_STATE(651)] = 29876,
[SMALL_STATE(652)] = 29886,
[SMALL_STATE(653)] = 29896,
[SMALL_STATE(654)] = 29904,
[SMALL_STATE(655)] = 29914,
[SMALL_STATE(656)] = 29924,
[SMALL_STATE(657)] = 29932,
[SMALL_STATE(658)] = 29942,
[SMALL_STATE(659)] = 29952,
[SMALL_STATE(660)] = 29962,
[SMALL_STATE(661)] = 29972,
[SMALL_STATE(662)] = 29982,
[SMALL_STATE(663)] = 29992,
[SMALL_STATE(664)] = 30002,
[SMALL_STATE(665)] = 30012,
[SMALL_STATE(666)] = 30022,
[SMALL_STATE(667)] = 30030,
[SMALL_STATE(668)] = 30040,
[SMALL_STATE(669)] = 30050,
[SMALL_STATE(670)] = 30058,
[SMALL_STATE(671)] = 30068,
[SMALL_STATE(672)] = 30078,
[SMALL_STATE(673)] = 30088,
[SMALL_STATE(674)] = 30098,
[SMALL_STATE(675)] = 30108,
[SMALL_STATE(676)] = 30115,
[SMALL_STATE(677)] = 30122,
[SMALL_STATE(678)] = 30129,
[SMALL_STATE(679)] = 30136,
[SMALL_STATE(680)] = 30143,
[SMALL_STATE(681)] = 30150,
[SMALL_STATE(682)] = 30157,
[SMALL_STATE(683)] = 30164,
[SMALL_STATE(684)] = 30171,
[SMALL_STATE(685)] = 30178,
[SMALL_STATE(686)] = 30185,
[SMALL_STATE(687)] = 30192,
[SMALL_STATE(688)] = 30199,
[SMALL_STATE(689)] = 30206,
[SMALL_STATE(690)] = 30213,
[SMALL_STATE(691)] = 30220,
[SMALL_STATE(692)] = 30227,
[SMALL_STATE(693)] = 30234,
[SMALL_STATE(694)] = 30241,
[SMALL_STATE(695)] = 30248,
[SMALL_STATE(696)] = 30255,
[SMALL_STATE(697)] = 30262,
[SMALL_STATE(698)] = 30269,
[SMALL_STATE(699)] = 30276,
[SMALL_STATE(700)] = 30283,
[SMALL_STATE(701)] = 30290,
[SMALL_STATE(702)] = 30297,
[SMALL_STATE(703)] = 30304,
[SMALL_STATE(704)] = 30311,
[SMALL_STATE(705)] = 30318,
[SMALL_STATE(706)] = 30325,
[SMALL_STATE(707)] = 30332,
[SMALL_STATE(708)] = 30339,
[SMALL_STATE(709)] = 30346,
[SMALL_STATE(710)] = 30353,
[SMALL_STATE(711)] = 30360,
[SMALL_STATE(712)] = 30367,
[SMALL_STATE(713)] = 30374,
[SMALL_STATE(714)] = 30381,
[SMALL_STATE(715)] = 30388,
[SMALL_STATE(716)] = 30395,
[SMALL_STATE(717)] = 30402,
[SMALL_STATE(718)] = 30409,
[SMALL_STATE(719)] = 30416,
[SMALL_STATE(720)] = 30423,
[SMALL_STATE(721)] = 30430,
[SMALL_STATE(722)] = 30437,
[SMALL_STATE(723)] = 30444,
[SMALL_STATE(724)] = 30451,
[SMALL_STATE(725)] = 30458,
[SMALL_STATE(726)] = 30465,
[SMALL_STATE(727)] = 30472,
[SMALL_STATE(728)] = 30479,
[SMALL_STATE(729)] = 30486,
[SMALL_STATE(730)] = 30493,
[SMALL_STATE(731)] = 30500,
[SMALL_STATE(732)] = 30507,
};
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_program, 0, 0, 0),
[7] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7),
[9] = {.entry = {.count = 1, .reusable = true}}, SHIFT(173),
[11] = {.entry = {.count = 1, .reusable = true}}, SHIFT(722),
[13] = {.entry = {.count = 1, .reusable = false}}, SHIFT(134),
[15] = {.entry = {.count = 1, .reusable = true}}, SHIFT(244),
[17] = {.entry = {.count = 1, .reusable = false}}, SHIFT(392),
[19] = {.entry = {.count = 1, .reusable = false}}, SHIFT(242),
[21] = {.entry = {.count = 1, .reusable = false}}, SHIFT(696),
[23] = {.entry = {.count = 1, .reusable = false}}, SHIFT(243),
[25] = {.entry = {.count = 1, .reusable = false}}, SHIFT(165),
[27] = {.entry = {.count = 1, .reusable = false}}, SHIFT(166),
[29] = {.entry = {.count = 1, .reusable = false}}, SHIFT(426),
[31] = {.entry = {.count = 1, .reusable = false}}, SHIFT(437),
[33] = {.entry = {.count = 1, .reusable = false}}, SHIFT(665),
[35] = {.entry = {.count = 1, .reusable = false}}, SHIFT(687),
[37] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__expression, 1, 0, 0),
[39] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__expression, 1, 0, 0),
[41] = {.entry = {.count = 1, .reusable = true}}, SHIFT(235),
[43] = {.entry = {.count = 1, .reusable = false}}, SHIFT(708),
[45] = {.entry = {.count = 1, .reusable = true}}, SHIFT(241),
[47] = {.entry = {.count = 1, .reusable = true}}, SHIFT(193),
[49] = {.entry = {.count = 1, .reusable = false}}, SHIFT(686),
[51] = {.entry = {.count = 1, .reusable = true}}, SHIFT(544),
[53] = {.entry = {.count = 1, .reusable = true}}, SHIFT(538),
[55] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_index, 3, 0, 22),
[57] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_index, 3, 0, 22),
[59] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_simple_type, 1, 0, 2),
[61] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_simple_type, 1, 0, 2),
[63] = {.entry = {.count = 1, .reusable = false}}, SHIFT(498),
[65] = {.entry = {.count = 1, .reusable = false}}, SHIFT(685),
[67] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_index, 4, 0, 45),
[69] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_index, 4, 0, 45),
[71] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_index, 3, 0, 0),
[73] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_index, 3, 0, 0),
[75] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__var, 1, 0, 0),
[77] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__var, 1, 0, 0),
[79] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_index, 4, 0, 0),
[81] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_index, 4, 0, 0),
[83] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_arguments, 1, 0, 0),
[85] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_arguments, 1, 0, 0),
[87] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__type, 1, 0, 0),
[89] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__type, 1, 0, 0),
[91] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_arguments, 3, 0, 0),
[93] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_arguments, 3, 0, 0),
[95] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parenthesized_expression, 3, 0, 0),
[97] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_parenthesized_expression, 3, 0, 0),
[99] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_arguments, 4, 0, 0),
[101] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_arguments, 4, 0, 0),
[103] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_arguments, 2, 0, 0),
[105] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_arguments, 2, 0, 0),
[107] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__type, 3, 0, 0),
[109] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__type, 3, 0, 0),
[111] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typearg_params, 3, 0, 0),
[113] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_typearg_params, 3, 0, 0),
[115] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_call, 2, 0, 9),
[117] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_call, 2, 0, 9),
[119] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typearg_params, 4, 0, 0),
[121] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_typearg_params, 4, 0, 0),
[123] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_string, 2, 0, 11),
[125] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_string, 2, 0, 11),
[127] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_table_constructor, 2, 0, 0),
[129] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_table_constructor, 2, 0, 0),
[131] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_string, 3, 0, 24),
[133] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_string, 3, 0, 24),
[135] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_table_constructor, 3, 0, 0),
[137] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_table_constructor, 3, 0, 0),
[139] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_table_constructor, 4, 0, 0),
[141] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_table_constructor, 4, 0, 0),
[143] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_table_constructor, 5, 0, 0),
[145] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_table_constructor, 5, 0, 0),
[147] = {.entry = {.count = 1, .reusable = false}}, SHIFT(510),
[149] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_type_args, 3, 0, 85),
[151] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_type_args, 3, 0, 85),
[153] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_type_args, 3, 0, 49),
[155] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_type_args, 3, 0, 49),
[157] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_type, 4, 0, 86),
[159] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_type, 4, 0, 86),
[161] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typeargs, 3, 0, 0),
[163] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_typeargs, 3, 0, 0),
[165] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typeargs, 4, 0, 0),
[167] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_typeargs, 4, 0, 0),
[169] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return_type, 4, 10, 0),
[171] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_return_type, 4, 10, 0),
[173] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return_type, 4, 1, 0),
[175] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_return_type, 4, 1, 0),
[177] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_table_type, 5, 0, 96),
[179] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_table_type, 5, 0, 96),
[181] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_type_args, 4, 0, 85),
[183] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_type_args, 4, 0, 85),
[185] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_type, 5, 0, 97),
[187] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_type, 5, 0, 97),
[189] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variadic_type, 2, 0, 0),
[191] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_variadic_type, 2, 0, 0),
[193] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return_type, 5, 10, 0),
[195] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_return_type, 5, 10, 0),
[197] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_type_args, 5, 0, 102),
[199] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_type_args, 5, 0, 102),
[201] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return_type, 6, 10, 0),
[203] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_return_type, 6, 10, 0),
[205] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_type_args, 6, 0, 107),
[207] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_type_args, 6, 0, 107),
[209] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_table_type, 3, 0, 68),
[211] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_table_type, 3, 0, 68),
[213] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_type_args, 2, 0, 0),
[215] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_type_args, 2, 0, 0),
[217] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return_type, 1, 0, 0),
[219] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_return_type, 1, 0, 0),
[221] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_union, 3, 0, 0),
[223] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_union, 3, 0, 0),
[225] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_simple_type, 2, 0, 2),
[227] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_simple_type, 2, 0, 2),
[229] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_type, 1, 0, 0),
[231] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_type, 1, 0, 0),
[233] = {.entry = {.count = 1, .reusable = true}}, SHIFT(428),
[235] = {.entry = {.count = 1, .reusable = false}}, SHIFT(652),
[237] = {.entry = {.count = 1, .reusable = false}}, SHIFT(725),
[239] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return_type, 3, 1, 0),
[241] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_return_type, 3, 1, 0),
[243] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_table_type, 4, 0, 83),
[245] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_table_type, 4, 0, 83),
[247] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_type, 2, 0, 51),
[249] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_type, 2, 0, 51),
[251] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_type, 2, 0, 52),
[253] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_type, 2, 0, 52),
[255] = {.entry = {.count = 1, .reusable = false}}, SHIFT(448),
[257] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_type, 3, 0, 70),
[259] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_type, 3, 0, 70),
[261] = {.entry = {.count = 1, .reusable = false}}, SHIFT(449),
[263] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return_type, 1, 1, 0),
[265] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_return_type, 1, 1, 0),
[267] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_return_type, 1, 1, 0), SHIFT(460),
[270] = {.entry = {.count = 1, .reusable = true}}, SHIFT(529),
[272] = {.entry = {.count = 1, .reusable = true}}, SHIFT(37),
[274] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_type_tuple_repeat1, 2, 0, 0),
[276] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_type_tuple_repeat1, 2, 0, 0),
[278] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_tuple_repeat1, 2, 0, 0), SHIFT_REPEAT(532),
[281] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_return_type, 1, 1, 0), SHIFT(466),
[284] = {.entry = {.count = 1, .reusable = true}}, SHIFT(77),
[286] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return_type, 2, 1, 0),
[288] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_return_type, 2, 1, 0),
[290] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_return_type, 2, 1, 0), SHIFT(467),
[293] = {.entry = {.count = 1, .reusable = true}}, SHIFT(429),
[295] = {.entry = {.count = 1, .reusable = false}}, SHIFT(674),
[297] = {.entry = {.count = 1, .reusable = false}}, SHIFT(452),
[299] = {.entry = {.count = 1, .reusable = false}}, SHIFT(440),
[301] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_tuple_repeat1, 2, 0, 0), SHIFT_REPEAT(518),
[304] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_return_type, 2, 1, 0), SHIFT(461),
[307] = {.entry = {.count = 1, .reusable = true}}, SHIFT(460),
[309] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_boolean, 1, 0, 0),
[311] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_boolean, 1, 0, 0),
[313] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_anon_function, 3, 0, 26),
[315] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_anon_function, 3, 0, 26),
[317] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_body, 1, 0, 0),
[319] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_body, 1, 0, 0),
[321] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_number, 1, 0, 0),
[323] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_number, 1, 0, 0),
[325] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_varargs, 1, 0, 0),
[327] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_varargs, 1, 0, 0),
[329] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_tuple, 4, 0, 0),
[331] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_tuple, 4, 0, 0),
[333] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_body, 2, 0, 0),
[335] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_body, 2, 0, 0),
[337] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_cast, 3, 0, 0),
[339] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_cast, 3, 0, 0),
[341] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_tuple, 3, 0, 0),
[343] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_tuple, 3, 0, 0),
[345] = {.entry = {.count = 1, .reusable = true}}, SHIFT(461),
[347] = {.entry = {.count = 1, .reusable = true}}, SHIFT(533),
[349] = {.entry = {.count = 1, .reusable = false}}, SHIFT(442),
[351] = {.entry = {.count = 1, .reusable = false}}, SHIFT(441),
[353] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_bin_op, 3, 0, 27),
[355] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_bin_op, 3, 0, 27),
[357] = {.entry = {.count = 1, .reusable = true}}, SHIFT(275),
[359] = {.entry = {.count = 1, .reusable = false}}, SHIFT(276),
[361] = {.entry = {.count = 1, .reusable = false}}, SHIFT(278),
[363] = {.entry = {.count = 1, .reusable = false}}, SHIFT(279),
[365] = {.entry = {.count = 1, .reusable = true}}, SHIFT(279),
[367] = {.entry = {.count = 1, .reusable = true}}, SHIFT(280),
[369] = {.entry = {.count = 1, .reusable = true}}, SHIFT(281),
[371] = {.entry = {.count = 1, .reusable = true}}, SHIFT(282),
[373] = {.entry = {.count = 1, .reusable = true}}, SHIFT(283),
[375] = {.entry = {.count = 1, .reusable = false}}, SHIFT(283),
[377] = {.entry = {.count = 1, .reusable = true}}, SHIFT(284),
[379] = {.entry = {.count = 1, .reusable = true}}, SHIFT(239),
[381] = {.entry = {.count = 1, .reusable = false}}, SHIFT(525),
[383] = {.entry = {.count = 1, .reusable = false}}, SHIFT(474),
[385] = {.entry = {.count = 1, .reusable = true}}, SHIFT(517),
[387] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_unary_op, 2, 0, 13),
[389] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_unary_op, 2, 0, 13),
[391] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return_statement, 4, 0, 0),
[393] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_return_statement, 4, 0, 0),
[395] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return_statement, 1, 0, 0),
[397] = {.entry = {.count = 1, .reusable = false}}, SHIFT(25),
[399] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_return_statement, 1, 0, 0),
[401] = {.entry = {.count = 1, .reusable = true}}, SHIFT(266),
[403] = {.entry = {.count = 1, .reusable = false}}, SHIFT(268),
[405] = {.entry = {.count = 1, .reusable = true}}, SHIFT(268),
[407] = {.entry = {.count = 1, .reusable = true}}, SHIFT(196),
[409] = {.entry = {.count = 1, .reusable = false}}, SHIFT(554),
[411] = {.entry = {.count = 1, .reusable = true}}, SHIFT(107),
[413] = {.entry = {.count = 1, .reusable = false}}, SHIFT(106),
[415] = {.entry = {.count = 1, .reusable = true}}, SHIFT(106),
[417] = {.entry = {.count = 1, .reusable = false}}, SHIFT(99),
[419] = {.entry = {.count = 1, .reusable = false}}, SHIFT(152),
[421] = {.entry = {.count = 1, .reusable = true}}, SHIFT(546),
[423] = {.entry = {.count = 1, .reusable = true}}, SHIFT(540),
[425] = {.entry = {.count = 1, .reusable = false}}, SHIFT(366),
[427] = {.entry = {.count = 1, .reusable = false}}, SHIFT(246),
[429] = {.entry = {.count = 1, .reusable = false}}, SHIFT(172),
[431] = {.entry = {.count = 1, .reusable = true}}, SHIFT(259),
[433] = {.entry = {.count = 1, .reusable = false}}, SHIFT(455),
[435] = {.entry = {.count = 1, .reusable = true}}, SHIFT(248),
[437] = {.entry = {.count = 1, .reusable = true}}, SHIFT(257),
[439] = {.entry = {.count = 1, .reusable = false}}, SHIFT(257),
[441] = {.entry = {.count = 1, .reusable = true}}, SHIFT(285),
[443] = {.entry = {.count = 1, .reusable = false}}, SHIFT(371),
[445] = {.entry = {.count = 1, .reusable = false}}, SHIFT(250),
[447] = {.entry = {.count = 1, .reusable = true}}, SHIFT(254),
[449] = {.entry = {.count = 1, .reusable = true}}, SHIFT(255),
[451] = {.entry = {.count = 1, .reusable = true}}, SHIFT(256),
[453] = {.entry = {.count = 1, .reusable = false}}, SHIFT(252),
[455] = {.entry = {.count = 1, .reusable = false}}, SHIFT(253),
[457] = {.entry = {.count = 1, .reusable = true}}, SHIFT(253),
[459] = {.entry = {.count = 1, .reusable = false}}, SHIFT(484),
[461] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_program_repeat1, 2, 0, 0),
[463] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_program_repeat1, 2, 0, 0), SHIFT_REPEAT(7),
[466] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_program_repeat1, 2, 0, 0), SHIFT_REPEAT(722),
[469] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_program_repeat1, 2, 0, 0), SHIFT_REPEAT(134),
[472] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_program_repeat1, 2, 0, 0), SHIFT_REPEAT(244),
[475] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_program_repeat1, 2, 0, 0), SHIFT_REPEAT(392),
[478] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_program_repeat1, 2, 0, 0), SHIFT_REPEAT(242),
[481] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_program_repeat1, 2, 0, 0),
[483] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_program_repeat1, 2, 0, 0), SHIFT_REPEAT(696),
[486] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_program_repeat1, 2, 0, 0), SHIFT_REPEAT(243),
[489] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_program_repeat1, 2, 0, 0), SHIFT_REPEAT(165),
[492] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_program_repeat1, 2, 0, 0), SHIFT_REPEAT(166),
[495] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_program_repeat1, 2, 0, 0), SHIFT_REPEAT(426),
[498] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_program_repeat1, 2, 0, 0), SHIFT_REPEAT(437),
[501] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_program_repeat1, 2, 0, 0), SHIFT_REPEAT(665),
[504] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_program_repeat1, 2, 0, 0), SHIFT_REPEAT(687),
[507] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return_statement, 2, 0, 0),
[509] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_return_statement, 2, 0, 0),
[511] = {.entry = {.count = 1, .reusable = true}}, SHIFT(247),
[513] = {.entry = {.count = 1, .reusable = false}}, SHIFT(251),
[515] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expressions, 1, 0, 0),
[517] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expressions, 1, 0, 0),
[519] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_return_statement_repeat1, 2, 0, 0),
[521] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_return_statement_repeat1, 2, 0, 0),
[523] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_elseif_block, 3, 0, 28),
[525] = {.entry = {.count = 1, .reusable = false}}, SHIFT(681),
[527] = {.entry = {.count = 1, .reusable = false}}, SHIFT(297),
[529] = {.entry = {.count = 1, .reusable = false}}, SHIFT(277),
[531] = {.entry = {.count = 1, .reusable = false}}, SHIFT(673),
[533] = {.entry = {.count = 1, .reusable = true}}, SHIFT(599),
[535] = {.entry = {.count = 1, .reusable = true}}, SHIFT(523),
[537] = {.entry = {.count = 1, .reusable = false}}, SHIFT(718),
[539] = {.entry = {.count = 1, .reusable = false}}, SHIFT(671),
[541] = {.entry = {.count = 1, .reusable = false}}, SHIFT(672),
[543] = {.entry = {.count = 1, .reusable = false}}, SHIFT(644),
[545] = {.entry = {.count = 1, .reusable = false}}, SHIFT(458),
[547] = {.entry = {.count = 1, .reusable = false}}, SHIFT(668),
[549] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_elseif_block, 4, 0, 28),
[551] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_repeat_statement, 3, 0, 17),
[553] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_repeat_statement, 3, 0, 17),
[555] = {.entry = {.count = 1, .reusable = false}}, SHIFT(312),
[557] = {.entry = {.count = 1, .reusable = true}}, SHIFT(477),
[559] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_repeat_statement, 4, 0, 29),
[561] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_repeat_statement, 4, 0, 29),
[563] = {.entry = {.count = 1, .reusable = false}}, SHIFT(104),
[565] = {.entry = {.count = 1, .reusable = false}}, SHIFT(267),
[567] = {.entry = {.count = 1, .reusable = false}}, SHIFT(260),
[569] = {.entry = {.count = 1, .reusable = false}}, SHIFT(370),
[571] = {.entry = {.count = 1, .reusable = false}}, SHIFT(367),
[573] = {.entry = {.count = 1, .reusable = false}}, SHIFT(109),
[575] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_else_block, 2, 0, 0),
[577] = {.entry = {.count = 1, .reusable = true}}, SHIFT(502),
[579] = {.entry = {.count = 1, .reusable = false}}, SHIFT(714),
[581] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_else_block, 1, 0, 0),
[583] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_program, 1, 0, 0),
[585] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_program, 2, 0, 0),
[587] = {.entry = {.count = 1, .reusable = true}}, SHIFT(427),
[589] = {.entry = {.count = 1, .reusable = true}}, SHIFT(645),
[591] = {.entry = {.count = 1, .reusable = true}}, SHIFT(674),
[593] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_return_type, 1, 1, 0), SHIFT(464),
[596] = {.entry = {.count = 1, .reusable = true}}, SHIFT(486),
[598] = {.entry = {.count = 1, .reusable = true}}, SHIFT(187),
[600] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_return_type, 2, 1, 0), SHIFT(465),
[603] = {.entry = {.count = 1, .reusable = false}}, SHIFT(233),
[605] = {.entry = {.count = 1, .reusable = true}}, SHIFT(688),
[607] = {.entry = {.count = 1, .reusable = true}}, SHIFT(245),
[609] = {.entry = {.count = 1, .reusable = true}}, SHIFT(20),
[611] = {.entry = {.count = 1, .reusable = false}}, SHIFT(330),
[613] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_return_type, 1, 1, 0), SHIFT(456),
[616] = {.entry = {.count = 1, .reusable = true}}, SHIFT(695),
[618] = {.entry = {.count = 1, .reusable = true}}, SHIFT(112),
[620] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_tuple_repeat1, 2, 0, 0), SHIFT_REPEAT(528),
[623] = {.entry = {.count = 1, .reusable = false}}, SHIFT(446),
[625] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_return_type, 2, 1, 0), SHIFT(473),
[628] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_tuple_repeat1, 2, 0, 0), SHIFT_REPEAT(505),
[631] = {.entry = {.count = 1, .reusable = false}}, SHIFT(447),
[633] = {.entry = {.count = 1, .reusable = true}}, SHIFT(101),
[635] = {.entry = {.count = 1, .reusable = true}}, SHIFT(23),
[637] = {.entry = {.count = 1, .reusable = true}}, SHIFT(24),
[639] = {.entry = {.count = 1, .reusable = false}}, SHIFT(444),
[641] = {.entry = {.count = 1, .reusable = true}}, SHIFT(522),
[643] = {.entry = {.count = 1, .reusable = false}}, SHIFT(443),
[645] = {.entry = {.count = 1, .reusable = true}}, SHIFT(98),
[647] = {.entry = {.count = 1, .reusable = true}}, SHIFT(456),
[649] = {.entry = {.count = 1, .reusable = false}}, SHIFT(153),
[651] = {.entry = {.count = 1, .reusable = true}}, SHIFT(269),
[653] = {.entry = {.count = 1, .reusable = false}}, SHIFT(274),
[655] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__var, 1, 0, 0), SHIFT(492),
[658] = {.entry = {.count = 1, .reusable = true}}, SHIFT(14),
[660] = {.entry = {.count = 1, .reusable = false}}, SHIFT(329),
[662] = {.entry = {.count = 1, .reusable = true}}, SHIFT(473),
[664] = {.entry = {.count = 1, .reusable = false}}, SHIFT(258),
[666] = {.entry = {.count = 1, .reusable = true}}, SHIFT(258),
[668] = {.entry = {.count = 1, .reusable = false}}, SHIFT(335),
[670] = {.entry = {.count = 1, .reusable = false}}, SHIFT(130),
[672] = {.entry = {.count = 1, .reusable = false}}, SHIFT(159),
[674] = {.entry = {.count = 1, .reusable = false}}, SHIFT(347),
[676] = {.entry = {.count = 1, .reusable = false}}, SHIFT(338),
[678] = {.entry = {.count = 1, .reusable = false}}, SHIFT(334),
[680] = {.entry = {.count = 1, .reusable = false}}, SHIFT(348),
[682] = {.entry = {.count = 1, .reusable = false}}, SHIFT(336),
[684] = {.entry = {.count = 1, .reusable = false}}, SHIFT(349),
[686] = {.entry = {.count = 1, .reusable = false}}, SHIFT(154),
[688] = {.entry = {.count = 1, .reusable = false}}, SHIFT(145),
[690] = {.entry = {.count = 1, .reusable = false}}, SHIFT(323),
[692] = {.entry = {.count = 1, .reusable = false}}, SHIFT(144),
[694] = {.entry = {.count = 1, .reusable = false}}, SHIFT(146),
[696] = {.entry = {.count = 1, .reusable = false}}, SHIFT(147),
[698] = {.entry = {.count = 1, .reusable = false}}, SHIFT(143),
[700] = {.entry = {.count = 1, .reusable = false}}, SHIFT(148),
[702] = {.entry = {.count = 1, .reusable = false}}, SHIFT(149),
[704] = {.entry = {.count = 1, .reusable = false}}, SHIFT(150),
[706] = {.entry = {.count = 1, .reusable = false}}, SHIFT(136),
[708] = {.entry = {.count = 1, .reusable = false}}, SHIFT(132),
[710] = {.entry = {.count = 1, .reusable = false}}, SHIFT(138),
[712] = {.entry = {.count = 1, .reusable = false}}, SHIFT(158),
[714] = {.entry = {.count = 1, .reusable = false}}, SHIFT(345),
[716] = {.entry = {.count = 1, .reusable = false}}, SHIFT(324),
[718] = {.entry = {.count = 1, .reusable = false}}, SHIFT(325),
[720] = {.entry = {.count = 1, .reusable = false}}, SHIFT(331),
[722] = {.entry = {.count = 1, .reusable = false}}, SHIFT(332),
[724] = {.entry = {.count = 1, .reusable = false}}, SHIFT(333),
[726] = {.entry = {.count = 1, .reusable = false}}, SHIFT(160),
[728] = {.entry = {.count = 1, .reusable = false}}, SHIFT(141),
[730] = {.entry = {.count = 1, .reusable = false}}, SHIFT(328),
[732] = {.entry = {.count = 1, .reusable = false}}, SHIFT(445),
[734] = {.entry = {.count = 1, .reusable = false}}, SHIFT(436),
[736] = {.entry = {.count = 1, .reusable = false}}, SHIFT(156),
[738] = {.entry = {.count = 1, .reusable = false}}, SHIFT(326),
[740] = {.entry = {.count = 1, .reusable = false}}, SHIFT(121),
[742] = {.entry = {.count = 1, .reusable = false}}, SHIFT(122),
[744] = {.entry = {.count = 1, .reusable = false}}, SHIFT(119),
[746] = {.entry = {.count = 1, .reusable = false}}, SHIFT(123),
[748] = {.entry = {.count = 1, .reusable = false}}, SHIFT(124),
[750] = {.entry = {.count = 1, .reusable = false}}, SHIFT(125),
[752] = {.entry = {.count = 1, .reusable = false}}, SHIFT(126),
[754] = {.entry = {.count = 1, .reusable = false}}, SHIFT(127),
[756] = {.entry = {.count = 1, .reusable = false}}, SHIFT(128),
[758] = {.entry = {.count = 1, .reusable = false}}, SHIFT(129),
[760] = {.entry = {.count = 1, .reusable = false}}, SHIFT(137),
[762] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__type_def, 4, 0, 54),
[764] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__type_def, 4, 0, 54),
[766] = {.entry = {.count = 1, .reusable = true}}, SHIFT(524),
[768] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_anon_record, 2, 0, 73),
[770] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_anon_record, 2, 0, 73),
[772] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_body, 4, 0, 91),
[774] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_body, 4, 0, 91),
[776] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__macroexp_def, 4, 0, 56),
[778] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__macroexp_def, 4, 0, 56),
[780] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__record_def, 4, 0, 57),
[782] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__record_def, 4, 0, 57),
[784] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_body, 2, 0, 58),
[786] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_body, 2, 0, 58),
[788] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__interface_def, 4, 0, 60),
[790] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__interface_def, 4, 0, 60),
[792] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_body, 2, 0, 0),
[794] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_enum_body, 2, 0, 0),
[796] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_anon_interface, 3, 0, 90),
[798] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_anon_interface, 3, 0, 90),
[800] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_body, 5, 0, 98),
[802] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_body, 5, 0, 98),
[804] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_body, 5, 0, 99),
[806] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_body, 5, 0, 99),
[808] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_body, 5, 0, 101),
[810] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_body, 5, 0, 101),
[812] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_body, 6, 0, 104),
[814] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_body, 6, 0, 104),
[816] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_anon_record, 3, 0, 89),
[818] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_anon_record, 3, 0, 89),
[820] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_anon_interface, 2, 0, 74),
[822] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_anon_interface, 2, 0, 74),
[824] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_body, 6, 0, 105),
[826] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_body, 6, 0, 105),
[828] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_body, 4, 0, 93),
[830] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_body, 4, 0, 93),
[832] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__anon_enum, 2, 0, 0),
[834] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__anon_enum, 2, 0, 0),
[836] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_macroexp_body, 2, 0, 0),
[838] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_macroexp_body, 2, 0, 0),
[840] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_body, 3, 0, 75),
[842] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_body, 3, 0, 75),
[844] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__record_def, 3, 0, 34),
[846] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__record_def, 3, 0, 34),
[848] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__interface_def, 3, 0, 38),
[850] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__interface_def, 3, 0, 38),
[852] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_body, 1, 0, 0),
[854] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_enum_body, 1, 0, 0),
[856] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__enum_def, 3, 0, 39),
[858] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__enum_def, 3, 0, 39),
[860] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_body, 6, 0, 106),
[862] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_body, 6, 0, 106),
[864] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_body, 4, 0, 92),
[866] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_body, 4, 0, 92),
[868] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_body, 7, 0, 108),
[870] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_body, 7, 0, 108),
[872] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_body, 7, 0, 109),
[874] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_body, 7, 0, 109),
[876] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_body, 7, 0, 110),
[878] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_body, 7, 0, 110),
[880] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_body, 8, 0, 111),
[882] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_body, 8, 0, 111),
[884] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_body, 8, 0, 112),
[886] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_body, 8, 0, 112),
[888] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_body, 9, 0, 113),
[890] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_body, 9, 0, 113),
[892] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_body, 9, 0, 114),
[894] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_body, 9, 0, 114),
[896] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_body, 10, 0, 115),
[898] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_body, 10, 0, 115),
[900] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_body, 1, 0, 0),
[902] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_body, 1, 0, 0),
[904] = {.entry = {.count = 1, .reusable = true}}, SHIFT(166),
[906] = {.entry = {.count = 1, .reusable = true}}, SHIFT(251),
[908] = {.entry = {.count = 1, .reusable = true}}, SHIFT(252),
[910] = {.entry = {.count = 1, .reusable = true}}, SHIFT(484),
[912] = {.entry = {.count = 1, .reusable = true}}, SHIFT(455),
[914] = {.entry = {.count = 1, .reusable = true}}, SHIFT(238),
[916] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_table_entry, 3, 0, 46),
[918] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__statement, 1, 0, 0),
[920] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__statement, 1, 0, 0),
[922] = {.entry = {.count = 1, .reusable = true}}, SHIFT(405),
[924] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__prefix_expression, 1, 0, 0),
[926] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__prefix_expression, 1, 0, 0),
[928] = {.entry = {.count = 1, .reusable = true}}, SHIFT(286),
[930] = {.entry = {.count = 1, .reusable = true}}, SHIFT(11),
[932] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_table_entry, 1, 0, 14),
[934] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_table_entry, 5, 0, 78),
[936] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_table_entry, 5, 0, 79),
[938] = {.entry = {.count = 1, .reusable = true}}, SHIFT(133),
[940] = {.entry = {.count = 1, .reusable = true}}, SHIFT(277),
[942] = {.entry = {.count = 1, .reusable = true}}, SHIFT(278),
[944] = {.entry = {.count = 1, .reusable = true}}, SHIFT(525),
[946] = {.entry = {.count = 1, .reusable = true}}, SHIFT(474),
[948] = {.entry = {.count = 1, .reusable = true}}, SHIFT(730),
[950] = {.entry = {.count = 1, .reusable = false}}, SHIFT(322),
[952] = {.entry = {.count = 1, .reusable = false}}, SHIFT(481),
[954] = {.entry = {.count = 1, .reusable = true}}, SHIFT(482),
[956] = {.entry = {.count = 1, .reusable = true}}, SHIFT(135),
[958] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_var_declarators, 1, 0, 0),
[960] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_var_declarators, 1, 0, 0),
[962] = {.entry = {.count = 1, .reusable = true}}, SHIFT(670),
[964] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_var_declarator, 1, 0, 2),
[966] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_var_declarator, 1, 0, 2),
[968] = {.entry = {.count = 1, .reusable = true}}, SHIFT(711),
[970] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_var_declarators, 2, 0, 0),
[972] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_var_declarators, 2, 0, 0),
[974] = {.entry = {.count = 1, .reusable = true}}, SHIFT(263),
[976] = {.entry = {.count = 1, .reusable = true}}, SHIFT(505),
[978] = {.entry = {.count = 1, .reusable = false}}, SHIFT(307),
[980] = {.entry = {.count = 1, .reusable = true}}, SHIFT(483),
[982] = {.entry = {.count = 1, .reusable = false}}, SHIFT(272),
[984] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5),
[986] = {.entry = {.count = 1, .reusable = true}}, SHIFT(12),
[988] = {.entry = {.count = 1, .reusable = true}}, SHIFT(155),
[990] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_var_declarators_repeat1, 2, 0, 0),
[992] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_var_declarators_repeat1, 2, 0, 0),
[994] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_var_declarators_repeat1, 2, 0, 0), SHIFT_REPEAT(670),
[997] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_annotation, 2, 0, 0),
[999] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_annotation, 2, 0, 0),
[1001] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_annotation, 3, 0, 0),
[1003] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_annotation, 3, 0, 0),
[1005] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_return_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(247),
[1008] = {.entry = {.count = 1, .reusable = false}}, SHIFT(289),
[1010] = {.entry = {.count = 1, .reusable = true}}, SHIFT(530),
[1012] = {.entry = {.count = 1, .reusable = false}}, SHIFT(240),
[1014] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_var_declaration, 2, 0, 3),
[1016] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_var_declaration, 2, 0, 3),
[1018] = {.entry = {.count = 1, .reusable = true}}, SHIFT(234),
[1020] = {.entry = {.count = 1, .reusable = false}}, SHIFT(480),
[1022] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_var_declarator, 4, 0, 61),
[1024] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_var_declarator, 4, 0, 61),
[1026] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return_statement, 3, 0, 0),
[1028] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_return_statement, 3, 0, 0),
[1030] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expressions, 2, 0, 0),
[1032] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expressions, 2, 0, 0),
[1034] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_var_declaration, 3, 0, 18),
[1036] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_var_declaration, 3, 0, 18),
[1038] = {.entry = {.count = 1, .reusable = true}}, SHIFT(231),
[1040] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_declaration, 2, 0, 8),
[1042] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_enum_declaration, 2, 0, 8),
[1044] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 4, 0, 28),
[1046] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 4, 0, 28),
[1048] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_do_statement, 3, 0, 0),
[1050] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_do_statement, 3, 0, 0),
[1052] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_generic_for_statement, 7, 0, 88),
[1054] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_generic_for_statement, 7, 0, 88),
[1056] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interface_declaration, 2, 0, 7),
[1058] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interface_declaration, 2, 0, 7),
[1060] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_do_statement, 2, 0, 0),
[1062] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_do_statement, 2, 0, 0),
[1064] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 5, 0, 28),
[1066] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 5, 0, 28),
[1068] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_generic_for_statement, 5, 0, 53),
[1070] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_generic_for_statement, 5, 0, 53),
[1072] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_var_assignment, 3, 0, 20),
[1074] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_var_assignment, 3, 0, 20),
[1076] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 7, 0, 28),
[1078] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 7, 0, 28),
[1080] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 6, 0, 28),
[1082] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 6, 0, 28),
[1084] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_generic_for_statement, 6, 0, 71),
[1086] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_generic_for_statement, 6, 0, 71),
[1088] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__statement, 3, 0, 10),
[1090] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__statement, 3, 0, 10),
[1092] = {.entry = {.count = 1, .reusable = true}}, SHIFT(406),
[1094] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_generic_for_statement, 6, 0, 72),
[1096] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_generic_for_statement, 6, 0, 72),
[1098] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_numeric_for_statement, 9, 0, 103),
[1100] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_numeric_for_statement, 9, 0, 103),
[1102] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_statement, 5, 0, 55),
[1104] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_statement, 5, 0, 55),
[1106] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_numeric_for_statement, 7, 0, 87),
[1108] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_numeric_for_statement, 7, 0, 87),
[1110] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return_statement, 5, 0, 0),
[1112] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_return_statement, 5, 0, 0),
[1114] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_declaration, 2, 0, 4),
[1116] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_declaration, 2, 0, 4),
[1118] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_macroexp_statement, 2, 0, 5),
[1120] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_macroexp_statement, 2, 0, 5),
[1122] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_declaration, 2, 0, 6),
[1124] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_declaration, 2, 0, 6),
[1126] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_goto, 2, 0, 0),
[1128] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_goto, 2, 0, 0),
[1130] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_var_declaration, 5, 0, 62),
[1132] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_var_declaration, 5, 0, 62),
[1134] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_while_statement, 3, 0, 16),
[1136] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_while_statement, 3, 0, 16),
[1138] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_var_declaration, 4, 0, 40),
[1140] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_var_declaration, 4, 0, 40),
[1142] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_statement, 4, 0, 44),
[1144] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_statement, 4, 0, 44),
[1146] = {.entry = {.count = 1, .reusable = false}}, SHIFT(315),
[1148] = {.entry = {.count = 1, .reusable = false}}, SHIFT(314),
[1150] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_record_body_repeat1, 2, 0, 59), SHIFT_REPEAT(681),
[1153] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_record_body_repeat1, 2, 0, 59),
[1155] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_record_body_repeat1, 2, 0, 59), SHIFT_REPEAT(673),
[1158] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_record_body_repeat1, 2, 0, 59), SHIFT_REPEAT(599),
[1161] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_record_body_repeat1, 2, 0, 59), SHIFT_REPEAT(718),
[1164] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_record_body_repeat1, 2, 0, 59), SHIFT_REPEAT(671),
[1167] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_record_body_repeat1, 2, 0, 59), SHIFT_REPEAT(672),
[1170] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_record_body_repeat1, 2, 0, 59), SHIFT_REPEAT(644),
[1173] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_record_body_repeat1, 2, 0, 59), SHIFT_REPEAT(458),
[1176] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_record_body_repeat1, 2, 0, 59), SHIFT_REPEAT(668),
[1179] = {.entry = {.count = 1, .reusable = false}}, SHIFT(317),
[1181] = {.entry = {.count = 1, .reusable = false}}, SHIFT(319),
[1183] = {.entry = {.count = 1, .reusable = false}}, SHIFT(313),
[1185] = {.entry = {.count = 1, .reusable = false}}, SHIFT(304),
[1187] = {.entry = {.count = 1, .reusable = false}}, SHIFT(299),
[1189] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__statement, 2, 0, 0),
[1191] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__statement, 2, 0, 0),
[1193] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__statement, 4, 0, 10),
[1195] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__statement, 4, 0, 10),
[1197] = {.entry = {.count = 1, .reusable = false}}, SHIFT(300),
[1199] = {.entry = {.count = 1, .reusable = false}}, SHIFT(303),
[1201] = {.entry = {.count = 1, .reusable = false}}, SHIFT(292),
[1203] = {.entry = {.count = 1, .reusable = false}}, SHIFT(316),
[1205] = {.entry = {.count = 1, .reusable = false}}, SHIFT(298),
[1207] = {.entry = {.count = 1, .reusable = false}}, SHIFT(318),
[1209] = {.entry = {.count = 1, .reusable = false}}, SHIFT(321),
[1211] = {.entry = {.count = 1, .reusable = false}}, SHIFT(320),
[1213] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4),
[1215] = {.entry = {.count = 1, .reusable = true}}, SHIFT(495),
[1217] = {.entry = {.count = 1, .reusable = true}}, SHIFT(506),
[1219] = {.entry = {.count = 1, .reusable = false}}, SHIFT(228),
[1221] = {.entry = {.count = 1, .reusable = false}}, SHIFT(344),
[1223] = {.entry = {.count = 1, .reusable = false}}, SHIFT(343),
[1225] = {.entry = {.count = 1, .reusable = false}}, SHIFT(541),
[1227] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_signature_arguments, 4, 0, 48),
[1229] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_signature_arguments, 4, 0, 48),
[1231] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_signature_arguments, 2, 0, 0),
[1233] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_signature_arguments, 2, 0, 0),
[1235] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_signature_arguments, 5, 0, 81),
[1237] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_signature_arguments, 5, 0, 81),
[1239] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_signature, 2, 0, 25),
[1241] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_signature, 2, 0, 25),
[1243] = {.entry = {.count = 1, .reusable = false}}, SHIFT(438),
[1245] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_signature_arguments, 3, 0, 48),
[1247] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_signature_arguments, 3, 0, 48),
[1249] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_signature_arguments, 3, 0, 49),
[1251] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_signature_arguments, 3, 0, 49),
[1253] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_signature, 1, 0, 15),
[1255] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_signature, 1, 0, 15),
[1257] = {.entry = {.count = 1, .reusable = false}}, SHIFT(439),
[1259] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_signature_arguments, 6, 0, 95),
[1261] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_signature_arguments, 6, 0, 95),
[1263] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_signature, 3, 0, 50),
[1265] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_signature, 3, 0, 50),
[1267] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_signature, 4, 0, 67),
[1269] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_signature, 4, 0, 67),
[1271] = {.entry = {.count = 1, .reusable = false}}, SHIFT(341),
[1273] = {.entry = {.count = 1, .reusable = false}}, SHIFT(706),
[1275] = {.entry = {.count = 1, .reusable = false}}, SHIFT(694),
[1277] = {.entry = {.count = 1, .reusable = false}}, SHIFT(701),
[1279] = {.entry = {.count = 1, .reusable = false}}, SHIFT(729),
[1281] = {.entry = {.count = 1, .reusable = false}}, SHIFT(715),
[1283] = {.entry = {.count = 1, .reusable = false}}, SHIFT(537),
[1285] = {.entry = {.count = 1, .reusable = true}}, SHIFT(182),
[1287] = {.entry = {.count = 1, .reusable = false}}, SHIFT(179),
[1289] = {.entry = {.count = 1, .reusable = true}}, SHIFT(676),
[1291] = {.entry = {.count = 1, .reusable = true}}, SHIFT(56),
[1293] = {.entry = {.count = 1, .reusable = true}}, SHIFT(44),
[1295] = {.entry = {.count = 1, .reusable = false}}, SHIFT(170),
[1297] = {.entry = {.count = 1, .reusable = true}}, SHIFT(494),
[1299] = {.entry = {.count = 1, .reusable = true}}, SHIFT(500),
[1301] = {.entry = {.count = 1, .reusable = false}}, SHIFT(176),
[1303] = {.entry = {.count = 1, .reusable = false}}, SHIFT(49),
[1305] = {.entry = {.count = 1, .reusable = true}}, SHIFT(509),
[1307] = {.entry = {.count = 1, .reusable = false}}, SHIFT(48),
[1309] = {.entry = {.count = 1, .reusable = true}}, SHIFT(516),
[1311] = {.entry = {.count = 1, .reusable = true}}, SHIFT(521),
[1313] = {.entry = {.count = 1, .reusable = true}}, SHIFT(501),
[1315] = {.entry = {.count = 1, .reusable = false}}, SHIFT(535),
[1317] = {.entry = {.count = 1, .reusable = true}}, SHIFT(499),
[1319] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_metamethod_annotation, 4, 0, 94),
[1321] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_metamethod_annotation, 4, 0, 94),
[1323] = {.entry = {.count = 1, .reusable = true}}, SHIFT(507),
[1325] = {.entry = {.count = 1, .reusable = false}}, SHIFT(70),
[1327] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_field, 5, 0, 100),
[1329] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_field, 5, 0, 100),
[1331] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_record_body_repeat1, 1, 0, 30),
[1333] = {.entry = {.count = 1, .reusable = true}}, SHIFT(485),
[1335] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_record_body_repeat1, 1, 0, 30),
[1337] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_field, 3, 0, 76),
[1339] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_field, 3, 0, 76),
[1341] = {.entry = {.count = 1, .reusable = true}}, SHIFT(508),
[1343] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_field, 3, 0, 77),
[1345] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_field, 3, 0, 77),
[1347] = {.entry = {.count = 1, .reusable = false}}, SHIFT(114),
[1349] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__record_entry, 1, 0, 31),
[1351] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__record_entry, 1, 0, 31),
[1353] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__record_entry, 1, 0, 32),
[1355] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__record_entry, 1, 0, 32),
[1357] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_record_body_repeat1, 1, 0, 33),
[1359] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_record_body_repeat1, 1, 0, 33),
[1361] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__record_entry, 1, 0, 35),
[1363] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__record_entry, 1, 0, 35),
[1365] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__record_entry, 1, 0, 36),
[1367] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__record_entry, 1, 0, 36),
[1369] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__record_entry, 1, 0, 37),
[1371] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__record_entry, 1, 0, 37),
[1373] = {.entry = {.count = 1, .reusable = true}}, SHIFT(708),
[1375] = {.entry = {.count = 1, .reusable = true}}, SHIFT(686),
[1377] = {.entry = {.count = 1, .reusable = true}}, SHIFT(536),
[1379] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment_variables, 1, 0, 1),
[1381] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_assignment_variables_repeat1, 2, 0, 23),
[1383] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7),
[1385] = {.entry = {.count = 1, .reusable = true}}, SHIFT(498),
[1387] = {.entry = {.count = 1, .reusable = true}}, SHIFT(519),
[1389] = {.entry = {.count = 1, .reusable = true}}, SHIFT(685),
[1391] = {.entry = {.count = 1, .reusable = false}}, SHIFT(562),
[1393] = {.entry = {.count = 1, .reusable = true}}, SHIFT(562),
[1395] = {.entry = {.count = 1, .reusable = true}}, SHIFT(568),
[1397] = {.entry = {.count = 1, .reusable = true}}, SHIFT(19),
[1399] = {.entry = {.count = 1, .reusable = true}}, SHIFT(105),
[1401] = {.entry = {.count = 1, .reusable = true}}, SHIFT(310),
[1403] = {.entry = {.count = 1, .reusable = true}}, SHIFT(376),
[1405] = {.entry = {.count = 1, .reusable = true}}, SHIFT(246),
[1407] = {.entry = {.count = 1, .reusable = false}}, SHIFT(584),
[1409] = {.entry = {.count = 1, .reusable = true}}, SHIFT(584),
[1411] = {.entry = {.count = 1, .reusable = true}}, SHIFT(371),
[1413] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__short_string_content, 1, 0, 12),
[1415] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__short_string_content_repeat1, 2, 0, 0), SHIFT_REPEAT(562),
[1418] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__short_string_content_repeat1, 2, 0, 0), SHIFT_REPEAT(562),
[1421] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__short_string_content_repeat1, 2, 0, 0), SHIFT_REPEAT(568),
[1424] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__short_string_content_repeat1, 2, 0, 0),
[1426] = {.entry = {.count = 1, .reusable = true}}, SHIFT(451),
[1428] = {.entry = {.count = 1, .reusable = true}}, SHIFT(569),
[1430] = {.entry = {.count = 1, .reusable = true}}, SHIFT(450),
[1432] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_enum_body_repeat1, 2, 0, 0),
[1434] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_enum_body_repeat1, 2, 0, 0), SHIFT_REPEAT(544),
[1437] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_enum_body_repeat1, 2, 0, 0), SHIFT_REPEAT(538),
[1440] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_if_statement_repeat1, 2, 0, 0),
[1442] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_if_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(246),
[1445] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_if_statement_repeat1, 2, 0, 0),
[1447] = {.entry = {.count = 1, .reusable = true}}, SHIFT(294),
[1449] = {.entry = {.count = 1, .reusable = true}}, SHIFT(478),
[1451] = {.entry = {.count = 1, .reusable = true}}, SHIFT(479),
[1453] = {.entry = {.count = 1, .reusable = true}}, SHIFT(43),
[1455] = {.entry = {.count = 1, .reusable = true}}, SHIFT(511),
[1457] = {.entry = {.count = 1, .reusable = true}}, SHIFT(79),
[1459] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_tuple_repeat1, 2, 0, 0), SHIFT_REPEAT(489),
[1462] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym__short_string_content_repeat1, 1, 0, 0),
[1464] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__short_string_content_repeat1, 1, 0, 0),
[1466] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_function_name_repeat1, 2, 0, 43),
[1468] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_function_name_repeat1, 2, 0, 43), SHIFT_REPEAT(732),
[1471] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_name, 2, 0, 19),
[1473] = {.entry = {.count = 1, .reusable = true}}, SHIFT(712),
[1475] = {.entry = {.count = 1, .reusable = true}}, SHIFT(732),
[1477] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_return_type, 2, 1, 0), SHIFT(476),
[1480] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__long_string_content, 1, 0, 12),
[1482] = {.entry = {.count = 1, .reusable = true}}, SHIFT(504),
[1484] = {.entry = {.count = 1, .reusable = true}}, SHIFT(189),
[1486] = {.entry = {.count = 1, .reusable = true}}, SHIFT(586),
[1488] = {.entry = {.count = 1, .reusable = true}}, SHIFT(417),
[1490] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_return_type, 1, 1, 0), SHIFT(475),
[1493] = {.entry = {.count = 1, .reusable = true}}, SHIFT(527),
[1495] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__long_string_content_repeat1, 2, 0, 0), SHIFT_REPEAT(584),
[1498] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__long_string_content_repeat1, 2, 0, 0), SHIFT_REPEAT(584),
[1501] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__long_string_content_repeat1, 2, 0, 0),
[1503] = {.entry = {.count = 1, .reusable = true}}, SHIFT(222),
[1505] = {.entry = {.count = 1, .reusable = true}}, SHIFT(22),
[1507] = {.entry = {.count = 1, .reusable = true}}, SHIFT(223),
[1509] = {.entry = {.count = 1, .reusable = true}}, SHIFT(468),
[1511] = {.entry = {.count = 1, .reusable = true}}, SHIFT(581),
[1513] = {.entry = {.count = 1, .reusable = true}}, SHIFT(489),
[1515] = {.entry = {.count = 1, .reusable = true}}, SHIFT(180),
[1517] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_table_constructor_repeat1, 2, 0, 0), SHIFT_REPEAT(229),
[1520] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_table_constructor_repeat1, 2, 0, 0),
[1522] = {.entry = {.count = 1, .reusable = true}}, SHIFT(62),
[1524] = {.entry = {.count = 1, .reusable = true}}, SHIFT(227),
[1526] = {.entry = {.count = 1, .reusable = true}}, SHIFT(724),
[1528] = {.entry = {.count = 1, .reusable = true}}, SHIFT(261),
[1530] = {.entry = {.count = 1, .reusable = true}}, SHIFT(262),
[1532] = {.entry = {.count = 1, .reusable = true}}, SHIFT(15),
[1534] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym__long_string_content_repeat1, 1, 0, 0),
[1536] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__long_string_content_repeat1, 1, 0, 0),
[1538] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__parname, 1, 0, 2),
[1540] = {.entry = {.count = 1, .reusable = true}}, SHIFT(493),
[1542] = {.entry = {.count = 1, .reusable = true}}, SHIFT(610),
[1544] = {.entry = {.count = 1, .reusable = true}}, SHIFT(471),
[1546] = {.entry = {.count = 1, .reusable = true}}, SHIFT(470),
[1548] = {.entry = {.count = 1, .reusable = true}}, SHIFT(111),
[1550] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_method_index, 3, 0, 21),
[1552] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_function_name_repeat1, 2, 0, 42),
[1554] = {.entry = {.count = 1, .reusable = true}}, SHIFT(16),
[1556] = {.entry = {.count = 1, .reusable = true}}, SHIFT(221),
[1558] = {.entry = {.count = 1, .reusable = true}}, SHIFT(102),
[1560] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__partype, 3, 0, 65),
[1562] = {.entry = {.count = 1, .reusable = true}}, SHIFT(469),
[1564] = {.entry = {.count = 1, .reusable = true}}, SHIFT(205),
[1566] = {.entry = {.count = 1, .reusable = true}}, SHIFT(431),
[1568] = {.entry = {.count = 1, .reusable = true}}, SHIFT(208),
[1570] = {.entry = {.count = 1, .reusable = true}}, SHIFT(661),
[1572] = {.entry = {.count = 1, .reusable = true}}, SHIFT(31),
[1574] = {.entry = {.count = 1, .reusable = true}}, SHIFT(178),
[1576] = {.entry = {.count = 1, .reusable = true}}, SHIFT(73),
[1578] = {.entry = {.count = 1, .reusable = true}}, SHIFT(76),
[1580] = {.entry = {.count = 1, .reusable = true}}, SHIFT(85),
[1582] = {.entry = {.count = 1, .reusable = true}}, SHIFT(434),
[1584] = {.entry = {.count = 1, .reusable = true}}, SHIFT(60),
[1586] = {.entry = {.count = 1, .reusable = true}}, SHIFT(472),
[1588] = {.entry = {.count = 1, .reusable = true}}, SHIFT(88),
[1590] = {.entry = {.count = 1, .reusable = true}}, SHIFT(432),
[1592] = {.entry = {.count = 1, .reusable = true}}, SHIFT(64),
[1594] = {.entry = {.count = 1, .reusable = true}}, SHIFT(65),
[1596] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__parname, 2, 0, 47),
[1598] = {.entry = {.count = 1, .reusable = true}}, SHIFT(512),
[1600] = {.entry = {.count = 1, .reusable = true}}, SHIFT(384),
[1602] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment_variables, 2, 0, 1),
[1604] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__parname, 4, 0, 80),
[1606] = {.entry = {.count = 1, .reusable = true}}, SHIFT(249),
[1608] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__parname, 3, 0, 65),
[1610] = {.entry = {.count = 1, .reusable = true}}, SHIFT(199),
[1612] = {.entry = {.count = 1, .reusable = true}}, SHIFT(430),
[1614] = {.entry = {.count = 1, .reusable = true}}, SHIFT(202),
[1616] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__parnamelist_repeat1, 2, 0, 0), SHIFT_REPEAT(649),
[1619] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__parnamelist_repeat1, 2, 0, 0),
[1621] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typearg, 3, 0, 66),
[1623] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_table_type_repeat1, 2, 0, 82),
[1625] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_typeargs_repeat1, 2, 0, 0), SHIFT_REPEAT(661),
[1628] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_typeargs_repeat1, 2, 0, 0),
[1630] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_table_type_repeat1, 2, 0, 84), SHIFT_REPEAT(478),
[1633] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_table_type_repeat1, 2, 0, 84),
[1635] = {.entry = {.count = 1, .reusable = true}}, SHIFT(186),
[1637] = {.entry = {.count = 1, .reusable = true}}, SHIFT(585),
[1639] = {.entry = {.count = 1, .reusable = true}}, SHIFT(420),
[1641] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typearg, 1, 0, 2),
[1643] = {.entry = {.count = 1, .reusable = true}}, SHIFT(487),
[1645] = {.entry = {.count = 1, .reusable = true}}, SHIFT(433),
[1647] = {.entry = {.count = 1, .reusable = true}}, SHIFT(35),
[1649] = {.entry = {.count = 1, .reusable = true}}, SHIFT(51),
[1651] = {.entry = {.count = 1, .reusable = true}}, SHIFT(30),
[1653] = {.entry = {.count = 1, .reusable = true}}, SHIFT(588),
[1655] = {.entry = {.count = 1, .reusable = true}}, SHIFT(416),
[1657] = {.entry = {.count = 1, .reusable = true}}, SHIFT(435),
[1659] = {.entry = {.count = 1, .reusable = true}}, SHIFT(27),
[1661] = {.entry = {.count = 1, .reusable = true}}, SHIFT(18),
[1663] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__partype, 1, 0, 69),
[1665] = {.entry = {.count = 1, .reusable = true}}, SHIFT(108),
[1667] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_generic_for_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(724),
[1670] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_generic_for_statement_repeat1, 2, 0, 0),
[1672] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__partypelist_repeat1, 2, 0, 0), SHIFT_REPEAT(462),
[1675] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__partypelist_repeat1, 2, 0, 0),
[1677] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_assignment_variables_repeat1, 2, 0, 0), SHIFT_REPEAT(536),
[1680] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_assignment_variables_repeat1, 2, 0, 0),
[1682] = {.entry = {.count = 1, .reusable = true}}, SHIFT(13),
[1684] = {.entry = {.count = 1, .reusable = true}}, SHIFT(232),
[1686] = {.entry = {.count = 1, .reusable = true}}, SHIFT(684),
[1688] = {.entry = {.count = 1, .reusable = true}}, SHIFT(201),
[1690] = {.entry = {.count = 1, .reusable = true}}, SHIFT(453),
[1692] = {.entry = {.count = 1, .reusable = true}}, SHIFT(32),
[1694] = {.entry = {.count = 1, .reusable = true}}, SHIFT(207),
[1696] = {.entry = {.count = 1, .reusable = true}}, SHIFT(543),
[1698] = {.entry = {.count = 1, .reusable = true}}, SHIFT(625),
[1700] = {.entry = {.count = 1, .reusable = true}}, SHIFT(42),
[1702] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__partypelist_repeat1, 2, 0, 85),
[1704] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_name, 4, 0, 63),
[1706] = {.entry = {.count = 1, .reusable = true}}, SHIFT(265),
[1708] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__annotated_var_arg, 3, 0, 64),
[1710] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__parnamelist_repeat1, 2, 0, 48),
[1712] = {.entry = {.count = 1, .reusable = true}}, SHIFT(78),
[1714] = {.entry = {.count = 1, .reusable = true}}, SHIFT(403),
[1716] = {.entry = {.count = 1, .reusable = true}}, SHIFT(34),
[1718] = {.entry = {.count = 1, .reusable = true}}, SHIFT(400),
[1720] = {.entry = {.count = 1, .reusable = true}}, SHIFT(414),
[1722] = {.entry = {.count = 1, .reusable = true}}, SHIFT(397),
[1724] = {.entry = {.count = 1, .reusable = true}}, SHIFT(90),
[1726] = {.entry = {.count = 1, .reusable = true}}, SHIFT(188),
[1728] = {.entry = {.count = 1, .reusable = true}}, SHIFT(640),
[1730] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_name, 3, 0, 41),
[1732] = {.entry = {.count = 1, .reusable = true}}, SHIFT(407),
[1734] = {.entry = {.count = 1, .reusable = true}}, SHIFT(703),
[1736] = {.entry = {.count = 1, .reusable = true}}, SHIFT(341),
[1738] = {.entry = {.count = 1, .reusable = true}}, SHIFT(340),
[1740] = {.entry = {.count = 1, .reusable = true}}, SHIFT(337),
[1742] = {.entry = {.count = 1, .reusable = true}}, SHIFT(678),
[1744] = {.entry = {.count = 1, .reusable = true}}, SHIFT(39),
[1746] = {.entry = {.count = 1, .reusable = true}}, SHIFT(497),
[1748] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(),
[1750] = {.entry = {.count = 1, .reusable = true}}, SHIFT(415),
[1752] = {.entry = {.count = 1, .reusable = true}}, SHIFT(203),
[1754] = {.entry = {.count = 1, .reusable = true}}, SHIFT(61),
[1756] = {.entry = {.count = 1, .reusable = true}}, SHIFT(490),
[1758] = {.entry = {.count = 1, .reusable = true}}, SHIFT(421),
[1760] = {.entry = {.count = 1, .reusable = true}}, SHIFT(41),
[1762] = {.entry = {.count = 1, .reusable = true}}, SHIFT(666),
[1764] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6),
[1766] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3),
[1768] = {.entry = {.count = 1, .reusable = true}}, SHIFT(388),
[1770] = {.entry = {.count = 1, .reusable = true}}, SHIFT(531),
[1772] = {.entry = {.count = 1, .reusable = true}}, SHIFT(21),
[1774] = {.entry = {.count = 1, .reusable = true}}, SHIFT(40),
[1776] = {.entry = {.count = 1, .reusable = true}}, SHIFT(183),
[1778] = {.entry = {.count = 1, .reusable = true}}, SHIFT(551),
[1780] = {.entry = {.count = 1, .reusable = true}}, SHIFT(582),
[1782] = {.entry = {.count = 1, .reusable = true}}, SHIFT(212),
[1784] = {.entry = {.count = 1, .reusable = true}}, SHIFT(28),
[1786] = {.entry = {.count = 1, .reusable = true}}, SHIFT(357),
[1788] = {.entry = {.count = 1, .reusable = true}}, SHIFT(93),
[1790] = {.entry = {.count = 1, .reusable = true}}, SHIFT(66),
[1792] = {.entry = {.count = 1, .reusable = true}}, SHIFT(488),
[1794] = {.entry = {.count = 1, .reusable = true}}, SHIFT(418),
[1796] = {.entry = {.count = 1, .reusable = true}}, SHIFT(237),
[1798] = {.entry = {.count = 1, .reusable = true}}, SHIFT(591),
[1800] = {.entry = {.count = 1, .reusable = true}}, SHIFT(689),
[1802] = {.entry = {.count = 1, .reusable = true}}, SHIFT(378),
[1804] = {.entry = {.count = 1, .reusable = true}}, SHIFT(699),
[1806] = {.entry = {.count = 1, .reusable = true}}, SHIFT(648),
[1808] = {.entry = {.count = 1, .reusable = true}}, SHIFT(94),
[1810] = {.entry = {.count = 1, .reusable = true}}, SHIFT(171),
[1812] = {.entry = {.count = 1, .reusable = true}}, SHIFT(67),
[1814] = {.entry = {.count = 1, .reusable = true}}, SHIFT(375),
[1816] = {.entry = {.count = 1, .reusable = true}}, SHIFT(556),
[1818] = {.entry = {.count = 1, .reusable = true}}, SHIFT(100),
[1820] = {.entry = {.count = 1, .reusable = true}}, SHIFT(190),
[1822] = {.entry = {.count = 1, .reusable = true}}, SHIFT(423),
[1824] = {.entry = {.count = 1, .reusable = true}}, SHIFT(710),
[1826] = {.entry = {.count = 1, .reusable = true}}, SHIFT(306),
[1828] = {.entry = {.count = 1, .reusable = true}}, SHIFT(669),
[1830] = {.entry = {.count = 1, .reusable = true}}, SHIFT(26),
[1832] = {.entry = {.count = 1, .reusable = true}}, SHIFT(198),
[1834] = {.entry = {.count = 1, .reusable = true}}, SHIFT(38),
[1836] = {.entry = {.count = 1, .reusable = true}}, SHIFT(264),
[1838] = {.entry = {.count = 1, .reusable = true}}, SHIFT(592),
};
enum ts_external_scanner_symbol_identifiers {
ts_external_token_comment = 0,
ts_external_token__long_string_start = 1,
ts_external_token__long_string_char = 2,
ts_external_token__long_string_end = 3,
ts_external_token__short_string_start = 4,
ts_external_token__short_string_char = 5,
ts_external_token__short_string_end = 6,
};
static const TSSymbol ts_external_scanner_symbol_map[EXTERNAL_TOKEN_COUNT] = {
[ts_external_token_comment] = sym_comment,
[ts_external_token__long_string_start] = sym__long_string_start,
[ts_external_token__long_string_char] = sym__long_string_char,
[ts_external_token__long_string_end] = sym__long_string_end,
[ts_external_token__short_string_start] = sym__short_string_start,
[ts_external_token__short_string_char] = sym__short_string_char,
[ts_external_token__short_string_end] = sym__short_string_end,
};
static const bool ts_external_scanner_states[8][EXTERNAL_TOKEN_COUNT] = {
[1] = {
[ts_external_token_comment] = true,
[ts_external_token__long_string_start] = true,
[ts_external_token__long_string_char] = true,
[ts_external_token__long_string_end] = true,
[ts_external_token__short_string_start] = true,
[ts_external_token__short_string_char] = true,
[ts_external_token__short_string_end] = true,
},
[2] = {
[ts_external_token_comment] = true,
},
[3] = {
[ts_external_token_comment] = true,
[ts_external_token__long_string_start] = true,
[ts_external_token__short_string_start] = true,
},
[4] = {
[ts_external_token_comment] = true,
[ts_external_token__short_string_char] = true,
[ts_external_token__short_string_end] = true,
},
[5] = {
[ts_external_token_comment] = true,
[ts_external_token__long_string_char] = true,
[ts_external_token__long_string_end] = true,
},
[6] = {
[ts_external_token_comment] = true,
[ts_external_token__short_string_end] = true,
},
[7] = {
[ts_external_token_comment] = true,
[ts_external_token__long_string_end] = true,
},
};
#ifdef __cplusplus
extern "C" {
#endif
void *tree_sitter_teal_external_scanner_create(void);
void tree_sitter_teal_external_scanner_destroy(void *);
bool tree_sitter_teal_external_scanner_scan(void *, TSLexer *, const bool *);
unsigned tree_sitter_teal_external_scanner_serialize(void *, char *);
void tree_sitter_teal_external_scanner_deserialize(void *, const char *, unsigned);
#ifdef TREE_SITTER_HIDE_SYMBOLS
#define TS_PUBLIC
#elif defined(_WIN32)
#define TS_PUBLIC __declspec(dllexport)
#else
#define TS_PUBLIC __attribute__((visibility("default")))
#endif
TS_PUBLIC const TSLanguage *tree_sitter_teal(void) {
static const TSLanguage language = {
.abi_version = LANGUAGE_VERSION,
.symbol_count = SYMBOL_COUNT,
.alias_count = ALIAS_COUNT,
.token_count = TOKEN_COUNT,
.external_token_count = EXTERNAL_TOKEN_COUNT,
.state_count = STATE_COUNT,
.large_state_count = LARGE_STATE_COUNT,
.production_id_count = PRODUCTION_ID_COUNT,
.supertype_count = SUPERTYPE_COUNT,
.field_count = FIELD_COUNT,
.max_alias_sequence_length = MAX_ALIAS_SEQUENCE_LENGTH,
.parse_table = &ts_parse_table[0][0],
.small_parse_table = ts_small_parse_table,
.small_parse_table_map = ts_small_parse_table_map,
.parse_actions = ts_parse_actions,
.symbol_names = ts_symbol_names,
.field_names = ts_field_names,
.field_map_slices = ts_field_map_slices,
.field_map_entries = ts_field_map_entries,
.symbol_metadata = ts_symbol_metadata,
.public_symbol_map = ts_symbol_map,
.alias_map = ts_non_terminal_alias_map,
.alias_sequences = &ts_alias_sequences[0][0],
.lex_modes = (const void*)ts_lex_modes,
.lex_fn = ts_lex,
.keyword_lex_fn = ts_lex_keywords,
.keyword_capture_token = sym_identifier,
.external_scanner = {
&ts_external_scanner_states[0][0],
ts_external_scanner_symbol_map,
tree_sitter_teal_external_scanner_create,
tree_sitter_teal_external_scanner_destroy,
tree_sitter_teal_external_scanner_scan,
tree_sitter_teal_external_scanner_serialize,
tree_sitter_teal_external_scanner_deserialize,
},
.primary_state_ids = ts_primary_state_ids,
.name = "teal",
.max_reserved_word_set_size = 0,
.metadata = {
.major_version = 0,
.minor_version = 0,
.patch_version = 4,
},
};
return &language;
}
#ifdef __cplusplus
}
#endif