#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 326
#define LARGE_STATE_COUNT 2
#define SYMBOL_COUNT 92
#define ALIAS_COUNT 1
#define TOKEN_COUNT 43
#define EXTERNAL_TOKEN_COUNT 0
#define FIELD_COUNT 33
#define MAX_ALIAS_SEQUENCE_LENGTH 14
#define MAX_RESERVED_WORD_SET_SIZE 0
#define PRODUCTION_ID_COUNT 172
#define SUPERTYPE_COUNT 0
enum ts_symbol_identifiers {
sym_identifier = 1,
sym_comment = 2,
anon_sym_include = 3,
anon_sym_category = 4,
anon_sym_LBRACE = 5,
anon_sym_RBRACE = 6,
anon_sym_abstract = 7,
anon_sym_asset = 8,
anon_sym_extends = 9,
anon_sym_let = 10,
anon_sym_EQ = 11,
anon_sym_AT = 12,
sym_step_type = 13,
anon_sym_COMMA = 14,
anon_sym_BANG = 15,
anon_sym_SLASH_SLASH_BANG = 16,
anon_sym_DOT = 17,
anon_sym_LPAREN = 18,
anon_sym_RPAREN = 19,
anon_sym_LT_DASH = 20,
anon_sym_PLUS_GT = 21,
anon_sym_DASH_GT = 22,
anon_sym_LBRACK = 23,
anon_sym_RBRACK = 24,
anon_sym_PLUS = 25,
anon_sym_DASH = 26,
anon_sym_STAR = 27,
anon_sym_SLASH = 28,
anon_sym_CARET = 29,
anon_sym_BSLASH_SLASH = 30,
anon_sym_SLASH_BSLASH = 31,
anon_sym_POUND = 32,
anon_sym_COLON = 33,
anon_sym_associations = 34,
anon_sym_LT_DASH_DASH = 35,
anon_sym_DASH_DASH_GT = 36,
anon_sym_DOT_DOT = 37,
anon_sym_info = 38,
sym_string = 39,
sym_integer = 40,
sym_float = 41,
sym_cia = 42,
sym_source_file = 43,
sym_declaration = 44,
sym_include_declaration = 45,
sym_category_declaration = 46,
sym_asset_declaration = 47,
sym_asset_definition = 48,
sym_asset_variable = 49,
sym_attack_step = 50,
sym_cias = 51,
sym_detector = 52,
sym_detector_name = 53,
sym_detector_context = 54,
sym_detector_context_asset = 55,
sym_preconditions = 56,
sym_reaching = 57,
sym_ttc = 58,
sym__ttc_expr = 59,
sym__ttc_parenthesized = 60,
sym__ttc_primary = 61,
sym_ttc_distribution = 62,
sym_ttc_binop = 63,
sym_asset_expr = 64,
sym__inline_asset_expr = 65,
sym__asset_expr_primary = 66,
sym_asset_variable_substitution = 67,
sym_asset_expr_type = 68,
sym_asset_expr_binop = 69,
sym_asset_expr_unop = 70,
sym_define_declaration = 71,
sym_associations_declaration = 72,
sym_association = 73,
sym_multiplicity = 74,
sym__multiplicity_atom = 75,
sym_multiplicity_range = 76,
sym_meta = 77,
sym__number = 78,
sym_star = 79,
aux_sym_source_file_repeat1 = 80,
aux_sym_category_declaration_repeat1 = 81,
aux_sym_category_declaration_repeat2 = 82,
aux_sym_asset_definition_repeat1 = 83,
aux_sym_attack_step_repeat1 = 84,
aux_sym_attack_step_repeat2 = 85,
aux_sym_cias_repeat1 = 86,
aux_sym_detector_name_repeat1 = 87,
aux_sym_detector_context_repeat1 = 88,
aux_sym_preconditions_repeat1 = 89,
aux_sym_ttc_distribution_repeat1 = 90,
aux_sym_associations_declaration_repeat1 = 91,
alias_sym_meta_string = 92,
};
static const char * const ts_symbol_names[] = {
[ts_builtin_sym_end] = "end",
[sym_identifier] = "identifier",
[sym_comment] = "comment",
[anon_sym_include] = "include",
[anon_sym_category] = "category",
[anon_sym_LBRACE] = "{",
[anon_sym_RBRACE] = "}",
[anon_sym_abstract] = "abstract",
[anon_sym_asset] = "asset",
[anon_sym_extends] = "extends",
[anon_sym_let] = "let",
[anon_sym_EQ] = "=",
[anon_sym_AT] = "@",
[sym_step_type] = "step_type",
[anon_sym_COMMA] = ",",
[anon_sym_BANG] = "!",
[anon_sym_SLASH_SLASH_BANG] = "//!",
[anon_sym_DOT] = ".",
[anon_sym_LPAREN] = "(",
[anon_sym_RPAREN] = ")",
[anon_sym_LT_DASH] = "<-",
[anon_sym_PLUS_GT] = "+>",
[anon_sym_DASH_GT] = "->",
[anon_sym_LBRACK] = "[",
[anon_sym_RBRACK] = "]",
[anon_sym_PLUS] = "+",
[anon_sym_DASH] = "-",
[anon_sym_STAR] = "*",
[anon_sym_SLASH] = "/",
[anon_sym_CARET] = "^",
[anon_sym_BSLASH_SLASH] = "\\/",
[anon_sym_SLASH_BSLASH] = "/\\",
[anon_sym_POUND] = "#",
[anon_sym_COLON] = ":",
[anon_sym_associations] = "associations",
[anon_sym_LT_DASH_DASH] = "<--",
[anon_sym_DASH_DASH_GT] = "-->",
[anon_sym_DOT_DOT] = "..",
[anon_sym_info] = "info",
[sym_string] = "string",
[sym_integer] = "integer",
[sym_float] = "float",
[sym_cia] = "cia",
[sym_source_file] = "source_file",
[sym_declaration] = "declaration",
[sym_include_declaration] = "include_declaration",
[sym_category_declaration] = "category_declaration",
[sym_asset_declaration] = "asset_declaration",
[sym_asset_definition] = "asset_definition",
[sym_asset_variable] = "asset_variable",
[sym_attack_step] = "attack_step",
[sym_cias] = "cias",
[sym_detector] = "detector",
[sym_detector_name] = "detector_name",
[sym_detector_context] = "detector_context",
[sym_detector_context_asset] = "detector_context_asset",
[sym_preconditions] = "preconditions",
[sym_reaching] = "reaching",
[sym_ttc] = "ttc",
[sym__ttc_expr] = "_ttc_expr",
[sym__ttc_parenthesized] = "_ttc_parenthesized",
[sym__ttc_primary] = "_ttc_primary",
[sym_ttc_distribution] = "ttc_distribution",
[sym_ttc_binop] = "ttc_binop",
[sym_asset_expr] = "asset_expr",
[sym__inline_asset_expr] = "_inline_asset_expr",
[sym__asset_expr_primary] = "_asset_expr_primary",
[sym_asset_variable_substitution] = "asset_variable_substitution",
[sym_asset_expr_type] = "asset_expr_type",
[sym_asset_expr_binop] = "asset_expr_binop",
[sym_asset_expr_unop] = "asset_expr_unop",
[sym_define_declaration] = "define_declaration",
[sym_associations_declaration] = "associations_declaration",
[sym_association] = "association",
[sym_multiplicity] = "multiplicity",
[sym__multiplicity_atom] = "_multiplicity_atom",
[sym_multiplicity_range] = "multiplicity_range",
[sym_meta] = "meta",
[sym__number] = "_number",
[sym_star] = "star",
[aux_sym_source_file_repeat1] = "source_file_repeat1",
[aux_sym_category_declaration_repeat1] = "category_declaration_repeat1",
[aux_sym_category_declaration_repeat2] = "category_declaration_repeat2",
[aux_sym_asset_definition_repeat1] = "asset_definition_repeat1",
[aux_sym_attack_step_repeat1] = "attack_step_repeat1",
[aux_sym_attack_step_repeat2] = "attack_step_repeat2",
[aux_sym_cias_repeat1] = "cias_repeat1",
[aux_sym_detector_name_repeat1] = "detector_name_repeat1",
[aux_sym_detector_context_repeat1] = "detector_context_repeat1",
[aux_sym_preconditions_repeat1] = "preconditions_repeat1",
[aux_sym_ttc_distribution_repeat1] = "ttc_distribution_repeat1",
[aux_sym_associations_declaration_repeat1] = "associations_declaration_repeat1",
[alias_sym_meta_string] = "meta_string",
};
static const TSSymbol ts_symbol_map[] = {
[ts_builtin_sym_end] = ts_builtin_sym_end,
[sym_identifier] = sym_identifier,
[sym_comment] = sym_comment,
[anon_sym_include] = anon_sym_include,
[anon_sym_category] = anon_sym_category,
[anon_sym_LBRACE] = anon_sym_LBRACE,
[anon_sym_RBRACE] = anon_sym_RBRACE,
[anon_sym_abstract] = anon_sym_abstract,
[anon_sym_asset] = anon_sym_asset,
[anon_sym_extends] = anon_sym_extends,
[anon_sym_let] = anon_sym_let,
[anon_sym_EQ] = anon_sym_EQ,
[anon_sym_AT] = anon_sym_AT,
[sym_step_type] = sym_step_type,
[anon_sym_COMMA] = anon_sym_COMMA,
[anon_sym_BANG] = anon_sym_BANG,
[anon_sym_SLASH_SLASH_BANG] = anon_sym_SLASH_SLASH_BANG,
[anon_sym_DOT] = anon_sym_DOT,
[anon_sym_LPAREN] = anon_sym_LPAREN,
[anon_sym_RPAREN] = anon_sym_RPAREN,
[anon_sym_LT_DASH] = anon_sym_LT_DASH,
[anon_sym_PLUS_GT] = anon_sym_PLUS_GT,
[anon_sym_DASH_GT] = anon_sym_DASH_GT,
[anon_sym_LBRACK] = anon_sym_LBRACK,
[anon_sym_RBRACK] = anon_sym_RBRACK,
[anon_sym_PLUS] = anon_sym_PLUS,
[anon_sym_DASH] = anon_sym_DASH,
[anon_sym_STAR] = anon_sym_STAR,
[anon_sym_SLASH] = anon_sym_SLASH,
[anon_sym_CARET] = anon_sym_CARET,
[anon_sym_BSLASH_SLASH] = anon_sym_BSLASH_SLASH,
[anon_sym_SLASH_BSLASH] = anon_sym_SLASH_BSLASH,
[anon_sym_POUND] = anon_sym_POUND,
[anon_sym_COLON] = anon_sym_COLON,
[anon_sym_associations] = anon_sym_associations,
[anon_sym_LT_DASH_DASH] = anon_sym_LT_DASH_DASH,
[anon_sym_DASH_DASH_GT] = anon_sym_DASH_DASH_GT,
[anon_sym_DOT_DOT] = anon_sym_DOT_DOT,
[anon_sym_info] = anon_sym_info,
[sym_string] = sym_string,
[sym_integer] = sym_integer,
[sym_float] = sym_float,
[sym_cia] = sym_cia,
[sym_source_file] = sym_source_file,
[sym_declaration] = sym_declaration,
[sym_include_declaration] = sym_include_declaration,
[sym_category_declaration] = sym_category_declaration,
[sym_asset_declaration] = sym_asset_declaration,
[sym_asset_definition] = sym_asset_definition,
[sym_asset_variable] = sym_asset_variable,
[sym_attack_step] = sym_attack_step,
[sym_cias] = sym_cias,
[sym_detector] = sym_detector,
[sym_detector_name] = sym_detector_name,
[sym_detector_context] = sym_detector_context,
[sym_detector_context_asset] = sym_detector_context_asset,
[sym_preconditions] = sym_preconditions,
[sym_reaching] = sym_reaching,
[sym_ttc] = sym_ttc,
[sym__ttc_expr] = sym__ttc_expr,
[sym__ttc_parenthesized] = sym__ttc_parenthesized,
[sym__ttc_primary] = sym__ttc_primary,
[sym_ttc_distribution] = sym_ttc_distribution,
[sym_ttc_binop] = sym_ttc_binop,
[sym_asset_expr] = sym_asset_expr,
[sym__inline_asset_expr] = sym__inline_asset_expr,
[sym__asset_expr_primary] = sym__asset_expr_primary,
[sym_asset_variable_substitution] = sym_asset_variable_substitution,
[sym_asset_expr_type] = sym_asset_expr_type,
[sym_asset_expr_binop] = sym_asset_expr_binop,
[sym_asset_expr_unop] = sym_asset_expr_unop,
[sym_define_declaration] = sym_define_declaration,
[sym_associations_declaration] = sym_associations_declaration,
[sym_association] = sym_association,
[sym_multiplicity] = sym_multiplicity,
[sym__multiplicity_atom] = sym__multiplicity_atom,
[sym_multiplicity_range] = sym_multiplicity_range,
[sym_meta] = sym_meta,
[sym__number] = sym__number,
[sym_star] = sym_star,
[aux_sym_source_file_repeat1] = aux_sym_source_file_repeat1,
[aux_sym_category_declaration_repeat1] = aux_sym_category_declaration_repeat1,
[aux_sym_category_declaration_repeat2] = aux_sym_category_declaration_repeat2,
[aux_sym_asset_definition_repeat1] = aux_sym_asset_definition_repeat1,
[aux_sym_attack_step_repeat1] = aux_sym_attack_step_repeat1,
[aux_sym_attack_step_repeat2] = aux_sym_attack_step_repeat2,
[aux_sym_cias_repeat1] = aux_sym_cias_repeat1,
[aux_sym_detector_name_repeat1] = aux_sym_detector_name_repeat1,
[aux_sym_detector_context_repeat1] = aux_sym_detector_context_repeat1,
[aux_sym_preconditions_repeat1] = aux_sym_preconditions_repeat1,
[aux_sym_ttc_distribution_repeat1] = aux_sym_ttc_distribution_repeat1,
[aux_sym_associations_declaration_repeat1] = aux_sym_associations_declaration_repeat1,
[alias_sym_meta_string] = alias_sym_meta_string,
};
static const TSSymbolMetadata ts_symbol_metadata[] = {
[ts_builtin_sym_end] = {
.visible = false,
.named = true,
},
[sym_identifier] = {
.visible = true,
.named = true,
},
[sym_comment] = {
.visible = true,
.named = true,
},
[anon_sym_include] = {
.visible = true,
.named = false,
},
[anon_sym_category] = {
.visible = true,
.named = false,
},
[anon_sym_LBRACE] = {
.visible = true,
.named = false,
},
[anon_sym_RBRACE] = {
.visible = true,
.named = false,
},
[anon_sym_abstract] = {
.visible = true,
.named = false,
},
[anon_sym_asset] = {
.visible = true,
.named = false,
},
[anon_sym_extends] = {
.visible = true,
.named = false,
},
[anon_sym_let] = {
.visible = true,
.named = false,
},
[anon_sym_EQ] = {
.visible = true,
.named = false,
},
[anon_sym_AT] = {
.visible = true,
.named = false,
},
[sym_step_type] = {
.visible = true,
.named = true,
},
[anon_sym_COMMA] = {
.visible = true,
.named = false,
},
[anon_sym_BANG] = {
.visible = true,
.named = false,
},
[anon_sym_SLASH_SLASH_BANG] = {
.visible = true,
.named = false,
},
[anon_sym_DOT] = {
.visible = true,
.named = false,
},
[anon_sym_LPAREN] = {
.visible = true,
.named = false,
},
[anon_sym_RPAREN] = {
.visible = true,
.named = false,
},
[anon_sym_LT_DASH] = {
.visible = true,
.named = false,
},
[anon_sym_PLUS_GT] = {
.visible = true,
.named = false,
},
[anon_sym_DASH_GT] = {
.visible = true,
.named = false,
},
[anon_sym_LBRACK] = {
.visible = true,
.named = false,
},
[anon_sym_RBRACK] = {
.visible = true,
.named = false,
},
[anon_sym_PLUS] = {
.visible = true,
.named = false,
},
[anon_sym_DASH] = {
.visible = true,
.named = false,
},
[anon_sym_STAR] = {
.visible = true,
.named = false,
},
[anon_sym_SLASH] = {
.visible = true,
.named = false,
},
[anon_sym_CARET] = {
.visible = true,
.named = false,
},
[anon_sym_BSLASH_SLASH] = {
.visible = true,
.named = false,
},
[anon_sym_SLASH_BSLASH] = {
.visible = true,
.named = false,
},
[anon_sym_POUND] = {
.visible = true,
.named = false,
},
[anon_sym_COLON] = {
.visible = true,
.named = false,
},
[anon_sym_associations] = {
.visible = true,
.named = false,
},
[anon_sym_LT_DASH_DASH] = {
.visible = true,
.named = false,
},
[anon_sym_DASH_DASH_GT] = {
.visible = true,
.named = false,
},
[anon_sym_DOT_DOT] = {
.visible = true,
.named = false,
},
[anon_sym_info] = {
.visible = true,
.named = false,
},
[sym_string] = {
.visible = true,
.named = true,
},
[sym_integer] = {
.visible = true,
.named = true,
},
[sym_float] = {
.visible = true,
.named = true,
},
[sym_cia] = {
.visible = true,
.named = true,
},
[sym_source_file] = {
.visible = true,
.named = true,
},
[sym_declaration] = {
.visible = true,
.named = true,
},
[sym_include_declaration] = {
.visible = true,
.named = true,
},
[sym_category_declaration] = {
.visible = true,
.named = true,
},
[sym_asset_declaration] = {
.visible = true,
.named = true,
},
[sym_asset_definition] = {
.visible = true,
.named = true,
},
[sym_asset_variable] = {
.visible = true,
.named = true,
},
[sym_attack_step] = {
.visible = true,
.named = true,
},
[sym_cias] = {
.visible = true,
.named = true,
},
[sym_detector] = {
.visible = true,
.named = true,
},
[sym_detector_name] = {
.visible = true,
.named = true,
},
[sym_detector_context] = {
.visible = true,
.named = true,
},
[sym_detector_context_asset] = {
.visible = true,
.named = true,
},
[sym_preconditions] = {
.visible = true,
.named = true,
},
[sym_reaching] = {
.visible = true,
.named = true,
},
[sym_ttc] = {
.visible = true,
.named = true,
},
[sym__ttc_expr] = {
.visible = false,
.named = true,
},
[sym__ttc_parenthesized] = {
.visible = false,
.named = true,
},
[sym__ttc_primary] = {
.visible = false,
.named = true,
},
[sym_ttc_distribution] = {
.visible = true,
.named = true,
},
[sym_ttc_binop] = {
.visible = true,
.named = true,
},
[sym_asset_expr] = {
.visible = true,
.named = true,
},
[sym__inline_asset_expr] = {
.visible = false,
.named = true,
},
[sym__asset_expr_primary] = {
.visible = false,
.named = true,
},
[sym_asset_variable_substitution] = {
.visible = true,
.named = true,
},
[sym_asset_expr_type] = {
.visible = true,
.named = true,
},
[sym_asset_expr_binop] = {
.visible = true,
.named = true,
},
[sym_asset_expr_unop] = {
.visible = true,
.named = true,
},
[sym_define_declaration] = {
.visible = true,
.named = true,
},
[sym_associations_declaration] = {
.visible = true,
.named = true,
},
[sym_association] = {
.visible = true,
.named = true,
},
[sym_multiplicity] = {
.visible = true,
.named = true,
},
[sym__multiplicity_atom] = {
.visible = false,
.named = true,
},
[sym_multiplicity_range] = {
.visible = true,
.named = true,
},
[sym_meta] = {
.visible = true,
.named = true,
},
[sym__number] = {
.visible = false,
.named = true,
},
[sym_star] = {
.visible = true,
.named = true,
},
[aux_sym_source_file_repeat1] = {
.visible = false,
.named = false,
},
[aux_sym_category_declaration_repeat1] = {
.visible = false,
.named = false,
},
[aux_sym_category_declaration_repeat2] = {
.visible = false,
.named = false,
},
[aux_sym_asset_definition_repeat1] = {
.visible = false,
.named = false,
},
[aux_sym_attack_step_repeat1] = {
.visible = false,
.named = false,
},
[aux_sym_attack_step_repeat2] = {
.visible = false,
.named = false,
},
[aux_sym_cias_repeat1] = {
.visible = false,
.named = false,
},
[aux_sym_detector_name_repeat1] = {
.visible = false,
.named = false,
},
[aux_sym_detector_context_repeat1] = {
.visible = false,
.named = false,
},
[aux_sym_preconditions_repeat1] = {
.visible = false,
.named = false,
},
[aux_sym_ttc_distribution_repeat1] = {
.visible = false,
.named = false,
},
[aux_sym_associations_declaration_repeat1] = {
.visible = false,
.named = false,
},
[alias_sym_meta_string] = {
.visible = true,
.named = true,
},
};
enum ts_field_identifiers {
field_assets = 1,
field_body = 2,
field_cias = 3,
field_condition = 4,
field_context = 5,
field_detector = 6,
field_end = 7,
field_expression = 8,
field_extends = 9,
field_file = 10,
field_id = 11,
field_info = 12,
field_left = 13,
field_left_field_id = 14,
field_left_id = 15,
field_left_mult = 16,
field_meta = 17,
field_name = 18,
field_operator = 19,
field_preconditions = 20,
field_reaches = 21,
field_right = 22,
field_right_field_id = 23,
field_right_id = 24,
field_right_mult = 25,
field_start = 26,
field_step_type = 27,
field_tag = 28,
field_ttc = 29,
field_type = 30,
field_type_id = 31,
field_value = 32,
field_values = 33,
};
static const char * const ts_field_names[] = {
[0] = NULL,
[field_assets] = "assets",
[field_body] = "body",
[field_cias] = "cias",
[field_condition] = "condition",
[field_context] = "context",
[field_detector] = "detector",
[field_end] = "end",
[field_expression] = "expression",
[field_extends] = "extends",
[field_file] = "file",
[field_id] = "id",
[field_info] = "info",
[field_left] = "left",
[field_left_field_id] = "left_field_id",
[field_left_id] = "left_id",
[field_left_mult] = "left_mult",
[field_meta] = "meta",
[field_name] = "name",
[field_operator] = "operator",
[field_preconditions] = "preconditions",
[field_reaches] = "reaches",
[field_right] = "right",
[field_right_field_id] = "right_field_id",
[field_right_id] = "right_id",
[field_right_mult] = "right_mult",
[field_start] = "start",
[field_step_type] = "step_type",
[field_tag] = "tag",
[field_ttc] = "ttc",
[field_type] = "type",
[field_type_id] = "type_id",
[field_value] = "value",
[field_values] = "values",
};
static const TSMapSlice ts_field_map_slices[PRODUCTION_ID_COUNT] = {
[1] = {.index = 0, .length = 1},
[2] = {.index = 1, .length = 1},
[3] = {.index = 2, .length = 2},
[4] = {.index = 4, .length = 2},
[5] = {.index = 6, .length = 2},
[6] = {.index = 8, .length = 2},
[7] = {.index = 10, .length = 3},
[8] = {.index = 13, .length = 1},
[9] = {.index = 14, .length = 2},
[10] = {.index = 16, .length = 2},
[11] = {.index = 18, .length = 2},
[12] = {.index = 20, .length = 2},
[13] = {.index = 22, .length = 3},
[14] = {.index = 25, .length = 3},
[15] = {.index = 28, .length = 3},
[16] = {.index = 31, .length = 3},
[17] = {.index = 34, .length = 3},
[18] = {.index = 37, .length = 3},
[19] = {.index = 40, .length = 3},
[20] = {.index = 43, .length = 3},
[21] = {.index = 46, .length = 2},
[22] = {.index = 48, .length = 3},
[23] = {.index = 51, .length = 3},
[24] = {.index = 54, .length = 1},
[25] = {.index = 55, .length = 1},
[26] = {.index = 56, .length = 2},
[27] = {.index = 58, .length = 4},
[28] = {.index = 62, .length = 4},
[29] = {.index = 66, .length = 4},
[30] = {.index = 70, .length = 4},
[31] = {.index = 74, .length = 4},
[32] = {.index = 78, .length = 4},
[33] = {.index = 82, .length = 4},
[34] = {.index = 86, .length = 4},
[35] = {.index = 90, .length = 4},
[36] = {.index = 94, .length = 4},
[37] = {.index = 98, .length = 4},
[38] = {.index = 102, .length = 4},
[39] = {.index = 106, .length = 4},
[40] = {.index = 110, .length = 4},
[41] = {.index = 114, .length = 4},
[42] = {.index = 118, .length = 4},
[43] = {.index = 122, .length = 4},
[44] = {.index = 126, .length = 4},
[45] = {.index = 130, .length = 4},
[46] = {.index = 134, .length = 2},
[47] = {.index = 136, .length = 5},
[48] = {.index = 141, .length = 2},
[49] = {.index = 143, .length = 2},
[50] = {.index = 145, .length = 2},
[51] = {.index = 147, .length = 2},
[52] = {.index = 149, .length = 3},
[53] = {.index = 152, .length = 5},
[54] = {.index = 157, .length = 5},
[55] = {.index = 162, .length = 5},
[56] = {.index = 167, .length = 5},
[57] = {.index = 172, .length = 5},
[58] = {.index = 177, .length = 5},
[59] = {.index = 182, .length = 5},
[60] = {.index = 187, .length = 5},
[61] = {.index = 192, .length = 5},
[62] = {.index = 197, .length = 5},
[63] = {.index = 202, .length = 5},
[64] = {.index = 207, .length = 5},
[65] = {.index = 212, .length = 5},
[66] = {.index = 217, .length = 5},
[67] = {.index = 222, .length = 5},
[68] = {.index = 227, .length = 5},
[69] = {.index = 232, .length = 5},
[70] = {.index = 237, .length = 5},
[71] = {.index = 242, .length = 5},
[72] = {.index = 247, .length = 5},
[73] = {.index = 252, .length = 5},
[74] = {.index = 257, .length = 5},
[75] = {.index = 262, .length = 1},
[76] = {.index = 263, .length = 3},
[77] = {.index = 266, .length = 6},
[78] = {.index = 272, .length = 6},
[79] = {.index = 278, .length = 6},
[80] = {.index = 284, .length = 6},
[81] = {.index = 290, .length = 6},
[82] = {.index = 296, .length = 2},
[83] = {.index = 298, .length = 3},
[84] = {.index = 301, .length = 3},
[85] = {.index = 304, .length = 3},
[86] = {.index = 307, .length = 6},
[87] = {.index = 313, .length = 6},
[88] = {.index = 319, .length = 6},
[89] = {.index = 325, .length = 6},
[90] = {.index = 331, .length = 6},
[91] = {.index = 337, .length = 6},
[92] = {.index = 343, .length = 6},
[93] = {.index = 349, .length = 6},
[94] = {.index = 355, .length = 6},
[95] = {.index = 361, .length = 6},
[96] = {.index = 367, .length = 6},
[97] = {.index = 373, .length = 6},
[98] = {.index = 379, .length = 6},
[99] = {.index = 385, .length = 6},
[100] = {.index = 391, .length = 6},
[101] = {.index = 397, .length = 6},
[102] = {.index = 403, .length = 2},
[103] = {.index = 405, .length = 7},
[104] = {.index = 412, .length = 7},
[105] = {.index = 419, .length = 7},
[106] = {.index = 426, .length = 7},
[107] = {.index = 433, .length = 7},
[108] = {.index = 440, .length = 7},
[109] = {.index = 447, .length = 7},
[110] = {.index = 454, .length = 7},
[111] = {.index = 461, .length = 7},
[112] = {.index = 468, .length = 7},
[113] = {.index = 475, .length = 4},
[114] = {.index = 479, .length = 2},
[115] = {.index = 481, .length = 7},
[116] = {.index = 488, .length = 7},
[117] = {.index = 495, .length = 7},
[118] = {.index = 502, .length = 7},
[119] = {.index = 509, .length = 7},
[120] = {.index = 516, .length = 7},
[121] = {.index = 523, .length = 7},
[122] = {.index = 530, .length = 7},
[123] = {.index = 537, .length = 7},
[124] = {.index = 544, .length = 7},
[125] = {.index = 551, .length = 7},
[126] = {.index = 558, .length = 8},
[127] = {.index = 566, .length = 8},
[128] = {.index = 574, .length = 8},
[129] = {.index = 582, .length = 8},
[130] = {.index = 590, .length = 8},
[131] = {.index = 598, .length = 8},
[132] = {.index = 606, .length = 8},
[133] = {.index = 614, .length = 8},
[134] = {.index = 622, .length = 8},
[135] = {.index = 630, .length = 8},
[136] = {.index = 638, .length = 3},
[137] = {.index = 641, .length = 8},
[138] = {.index = 649, .length = 8},
[139] = {.index = 657, .length = 8},
[140] = {.index = 665, .length = 8},
[141] = {.index = 673, .length = 8},
[142] = {.index = 681, .length = 8},
[143] = {.index = 689, .length = 8},
[144] = {.index = 697, .length = 8},
[145] = {.index = 705, .length = 8},
[146] = {.index = 713, .length = 8},
[147] = {.index = 721, .length = 8},
[148] = {.index = 729, .length = 9},
[149] = {.index = 738, .length = 9},
[150] = {.index = 747, .length = 9},
[151] = {.index = 756, .length = 9},
[152] = {.index = 765, .length = 9},
[153] = {.index = 774, .length = 9},
[154] = {.index = 783, .length = 9},
[155] = {.index = 792, .length = 9},
[156] = {.index = 801, .length = 9},
[157] = {.index = 810, .length = 9},
[158] = {.index = 819, .length = 9},
[159] = {.index = 828, .length = 9},
[160] = {.index = 837, .length = 9},
[161] = {.index = 846, .length = 9},
[162] = {.index = 855, .length = 9},
[163] = {.index = 864, .length = 7},
[164] = {.index = 871, .length = 10},
[165] = {.index = 881, .length = 10},
[166] = {.index = 891, .length = 10},
[167] = {.index = 901, .length = 10},
[168] = {.index = 911, .length = 10},
[169] = {.index = 921, .length = 10},
[170] = {.index = 931, .length = 8},
[171] = {.index = 939, .length = 11},
};
static const TSFieldMapEntry ts_field_map_entries[] = {
[0] =
{field_file, 1},
[1] =
{field_id, 1},
[2] =
{field_id, 1},
{field_value, 3},
[4] =
{field_assets, 3},
{field_id, 1},
[6] =
{field_id, 1},
{field_meta, 2},
[8] =
{field_id, 0},
{field_info, 3},
[10] =
{field_assets, 4},
{field_id, 1},
{field_meta, 2},
[13] =
{field_id, 2},
[14] =
{field_id, 1},
{field_step_type, 0},
[16] =
{field_body, 3},
{field_id, 1},
[18] =
{field_body, 4},
{field_id, 2},
[20] =
{field_id, 2},
{field_meta, 3},
[22] =
{field_id, 1},
{field_preconditions, 2},
{field_step_type, 0},
[25] =
{field_id, 1},
{field_reaches, 2},
{field_step_type, 0},
[28] =
{field_id, 1},
{field_step_type, 0},
{field_ttc, 2},
[31] =
{field_id, 1},
{field_meta, 2},
{field_step_type, 0},
[34] =
{field_id, 1},
{field_step_type, 0},
{field_tag, 2},
[37] =
{field_detector, 2},
{field_id, 1},
{field_step_type, 0},
[40] =
{field_extends, 2},
{field_extends, 3},
{field_id, 1},
[43] =
{field_body, 4},
{field_id, 1},
{field_meta, 2},
[46] =
{field_end, 2},
{field_start, 0},
[48] =
{field_extends, 3},
{field_extends, 4},
{field_id, 2},
[51] =
{field_body, 5},
{field_id, 2},
{field_meta, 3},
[54] =
{field_context, 1},
[55] =
{field_condition, 1},
[56] =
{field_operator, 0},
{field_reaches, 1},
[58] =
{field_id, 1},
{field_preconditions, 2},
{field_reaches, 3},
{field_step_type, 0},
[62] =
{field_id, 1},
{field_preconditions, 3},
{field_step_type, 0},
{field_ttc, 2},
[66] =
{field_id, 1},
{field_reaches, 3},
{field_step_type, 0},
{field_ttc, 2},
[70] =
{field_id, 1},
{field_meta, 3},
{field_step_type, 0},
{field_ttc, 2},
[74] =
{field_detector, 3},
{field_id, 1},
{field_step_type, 0},
{field_ttc, 2},
[78] =
{field_id, 1},
{field_meta, 2},
{field_preconditions, 3},
{field_step_type, 0},
[82] =
{field_id, 1},
{field_meta, 2},
{field_reaches, 3},
{field_step_type, 0},
[86] =
{field_detector, 3},
{field_id, 1},
{field_meta, 2},
{field_step_type, 0},
[90] =
{field_id, 1},
{field_preconditions, 3},
{field_step_type, 0},
{field_tag, 2},
[94] =
{field_id, 1},
{field_reaches, 3},
{field_step_type, 0},
{field_tag, 2},
[98] =
{field_id, 1},
{field_step_type, 0},
{field_tag, 2},
{field_ttc, 3},
[102] =
{field_id, 1},
{field_meta, 3},
{field_step_type, 0},
{field_tag, 2},
[106] =
{field_detector, 3},
{field_id, 1},
{field_step_type, 0},
{field_tag, 2},
[110] =
{field_detector, 2},
{field_id, 1},
{field_preconditions, 3},
{field_step_type, 0},
[114] =
{field_detector, 2},
{field_id, 1},
{field_reaches, 3},
{field_step_type, 0},
[118] =
{field_body, 5},
{field_extends, 2},
{field_extends, 3},
{field_id, 1},
[122] =
{field_extends, 2},
{field_extends, 3},
{field_id, 1},
{field_meta, 4},
[126] =
{field_body, 6},
{field_extends, 3},
{field_extends, 4},
{field_id, 2},
[130] =
{field_extends, 3},
{field_extends, 4},
{field_id, 2},
{field_meta, 5},
[134] =
{field_expression, 0},
{field_operator, 1},
[136] =
{field_cias, 2},
{field_cias, 3},
{field_cias, 4},
{field_id, 1},
{field_step_type, 0},
[141] =
{field_context, 2},
{field_name, 1},
[143] =
{field_context, 1},
{field_type, 2},
[145] =
{field_context, 1},
{field_ttc, 2},
[147] =
{field_condition, 1},
{field_condition, 2},
[149] =
{field_operator, 0},
{field_reaches, 1},
{field_reaches, 2},
[152] =
{field_id, 1},
{field_preconditions, 3},
{field_reaches, 4},
{field_step_type, 0},
{field_ttc, 2},
[157] =
{field_id, 1},
{field_meta, 3},
{field_preconditions, 4},
{field_step_type, 0},
{field_ttc, 2},
[162] =
{field_id, 1},
{field_meta, 3},
{field_reaches, 4},
{field_step_type, 0},
{field_ttc, 2},
[167] =
{field_detector, 4},
{field_id, 1},
{field_meta, 3},
{field_step_type, 0},
{field_ttc, 2},
[172] =
{field_detector, 3},
{field_id, 1},
{field_preconditions, 4},
{field_step_type, 0},
{field_ttc, 2},
[177] =
{field_detector, 3},
{field_id, 1},
{field_reaches, 4},
{field_step_type, 0},
{field_ttc, 2},
[182] =
{field_id, 1},
{field_meta, 2},
{field_preconditions, 3},
{field_reaches, 4},
{field_step_type, 0},
[187] =
{field_detector, 3},
{field_id, 1},
{field_meta, 2},
{field_preconditions, 4},
{field_step_type, 0},
[192] =
{field_detector, 3},
{field_id, 1},
{field_meta, 2},
{field_reaches, 4},
{field_step_type, 0},
[197] =
{field_id, 1},
{field_preconditions, 3},
{field_reaches, 4},
{field_step_type, 0},
{field_tag, 2},
[202] =
{field_id, 1},
{field_preconditions, 4},
{field_step_type, 0},
{field_tag, 2},
{field_ttc, 3},
[207] =
{field_id, 1},
{field_reaches, 4},
{field_step_type, 0},
{field_tag, 2},
{field_ttc, 3},
[212] =
{field_id, 1},
{field_meta, 4},
{field_step_type, 0},
{field_tag, 2},
{field_ttc, 3},
[217] =
{field_detector, 4},
{field_id, 1},
{field_step_type, 0},
{field_tag, 2},
{field_ttc, 3},
[222] =
{field_id, 1},
{field_meta, 3},
{field_preconditions, 4},
{field_step_type, 0},
{field_tag, 2},
[227] =
{field_id, 1},
{field_meta, 3},
{field_reaches, 4},
{field_step_type, 0},
{field_tag, 2},
[232] =
{field_detector, 4},
{field_id, 1},
{field_meta, 3},
{field_step_type, 0},
{field_tag, 2},
[237] =
{field_detector, 3},
{field_id, 1},
{field_preconditions, 4},
{field_step_type, 0},
{field_tag, 2},
[242] =
{field_detector, 3},
{field_id, 1},
{field_reaches, 4},
{field_step_type, 0},
{field_tag, 2},
[247] =
{field_detector, 2},
{field_id, 1},
{field_preconditions, 3},
{field_reaches, 4},
{field_step_type, 0},
[252] =
{field_body, 6},
{field_extends, 2},
{field_extends, 3},
{field_id, 1},
{field_meta, 4},
[257] =
{field_body, 7},
{field_extends, 3},
{field_extends, 4},
{field_id, 2},
{field_meta, 5},
[262] =
{field_id, 0},
[263] =
{field_left, 0},
{field_operator, 1},
{field_right, 2},
[266] =
{field_cias, 2},
{field_cias, 3},
{field_cias, 4},
{field_id, 1},
{field_preconditions, 5},
{field_step_type, 0},
[272] =
{field_cias, 2},
{field_cias, 3},
{field_cias, 4},
{field_id, 1},
{field_reaches, 5},
{field_step_type, 0},
[278] =
{field_cias, 2},
{field_cias, 3},
{field_cias, 4},
{field_id, 1},
{field_step_type, 0},
{field_ttc, 5},
[284] =
{field_cias, 2},
{field_cias, 3},
{field_cias, 4},
{field_id, 1},
{field_meta, 5},
{field_step_type, 0},
[290] =
{field_cias, 2},
{field_cias, 3},
{field_cias, 4},
{field_detector, 5},
{field_id, 1},
{field_step_type, 0},
[296] =
{field_id, 1},
{field_type, 0},
[298] =
{field_context, 2},
{field_name, 1},
{field_type, 3},
[301] =
{field_context, 2},
{field_name, 1},
{field_ttc, 3},
[304] =
{field_context, 1},
{field_ttc, 3},
{field_type, 2},
[307] =
{field_id, 1},
{field_meta, 3},
{field_preconditions, 4},
{field_reaches, 5},
{field_step_type, 0},
{field_ttc, 2},
[313] =
{field_detector, 4},
{field_id, 1},
{field_meta, 3},
{field_preconditions, 5},
{field_step_type, 0},
{field_ttc, 2},
[319] =
{field_detector, 4},
{field_id, 1},
{field_meta, 3},
{field_reaches, 5},
{field_step_type, 0},
{field_ttc, 2},
[325] =
{field_detector, 3},
{field_id, 1},
{field_preconditions, 4},
{field_reaches, 5},
{field_step_type, 0},
{field_ttc, 2},
[331] =
{field_detector, 3},
{field_id, 1},
{field_meta, 2},
{field_preconditions, 4},
{field_reaches, 5},
{field_step_type, 0},
[337] =
{field_cias, 3},
{field_cias, 4},
{field_cias, 5},
{field_id, 1},
{field_step_type, 0},
{field_tag, 2},
[343] =
{field_id, 1},
{field_preconditions, 4},
{field_reaches, 5},
{field_step_type, 0},
{field_tag, 2},
{field_ttc, 3},
[349] =
{field_id, 1},
{field_meta, 4},
{field_preconditions, 5},
{field_step_type, 0},
{field_tag, 2},
{field_ttc, 3},
[355] =
{field_id, 1},
{field_meta, 4},
{field_reaches, 5},
{field_step_type, 0},
{field_tag, 2},
{field_ttc, 3},
[361] =
{field_detector, 5},
{field_id, 1},
{field_meta, 4},
{field_step_type, 0},
{field_tag, 2},
{field_ttc, 3},
[367] =
{field_detector, 4},
{field_id, 1},
{field_preconditions, 5},
{field_step_type, 0},
{field_tag, 2},
{field_ttc, 3},
[373] =
{field_detector, 4},
{field_id, 1},
{field_reaches, 5},
{field_step_type, 0},
{field_tag, 2},
{field_ttc, 3},
[379] =
{field_id, 1},
{field_meta, 3},
{field_preconditions, 4},
{field_reaches, 5},
{field_step_type, 0},
{field_tag, 2},
[385] =
{field_detector, 4},
{field_id, 1},
{field_meta, 3},
{field_preconditions, 5},
{field_step_type, 0},
{field_tag, 2},
[391] =
{field_detector, 4},
{field_id, 1},
{field_meta, 3},
{field_reaches, 5},
{field_step_type, 0},
{field_tag, 2},
[397] =
{field_detector, 3},
{field_id, 1},
{field_preconditions, 4},
{field_reaches, 5},
{field_step_type, 0},
{field_tag, 2},
[403] =
{field_expression, 0},
{field_type_id, 2},
[405] =
{field_cias, 2},
{field_cias, 3},
{field_cias, 4},
{field_id, 1},
{field_preconditions, 5},
{field_reaches, 6},
{field_step_type, 0},
[412] =
{field_cias, 2},
{field_cias, 3},
{field_cias, 4},
{field_id, 1},
{field_preconditions, 6},
{field_step_type, 0},
{field_ttc, 5},
[419] =
{field_cias, 2},
{field_cias, 3},
{field_cias, 4},
{field_id, 1},
{field_reaches, 6},
{field_step_type, 0},
{field_ttc, 5},
[426] =
{field_cias, 2},
{field_cias, 3},
{field_cias, 4},
{field_id, 1},
{field_meta, 6},
{field_step_type, 0},
{field_ttc, 5},
[433] =
{field_cias, 2},
{field_cias, 3},
{field_cias, 4},
{field_detector, 6},
{field_id, 1},
{field_step_type, 0},
{field_ttc, 5},
[440] =
{field_cias, 2},
{field_cias, 3},
{field_cias, 4},
{field_id, 1},
{field_meta, 5},
{field_preconditions, 6},
{field_step_type, 0},
[447] =
{field_cias, 2},
{field_cias, 3},
{field_cias, 4},
{field_id, 1},
{field_meta, 5},
{field_reaches, 6},
{field_step_type, 0},
[454] =
{field_cias, 2},
{field_cias, 3},
{field_cias, 4},
{field_detector, 6},
{field_id, 1},
{field_meta, 5},
{field_step_type, 0},
[461] =
{field_cias, 2},
{field_cias, 3},
{field_cias, 4},
{field_detector, 5},
{field_id, 1},
{field_preconditions, 6},
{field_step_type, 0},
[468] =
{field_cias, 2},
{field_cias, 3},
{field_cias, 4},
{field_detector, 5},
{field_id, 1},
{field_reaches, 6},
{field_step_type, 0},
[475] =
{field_context, 2},
{field_name, 1},
{field_ttc, 4},
{field_type, 3},
[479] =
{field_id, 0},
{field_values, 2},
[481] =
{field_detector, 4},
{field_id, 1},
{field_meta, 3},
{field_preconditions, 5},
{field_reaches, 6},
{field_step_type, 0},
{field_ttc, 2},
[488] =
{field_cias, 3},
{field_cias, 4},
{field_cias, 5},
{field_id, 1},
{field_preconditions, 6},
{field_step_type, 0},
{field_tag, 2},
[495] =
{field_cias, 3},
{field_cias, 4},
{field_cias, 5},
{field_id, 1},
{field_reaches, 6},
{field_step_type, 0},
{field_tag, 2},
[502] =
{field_cias, 3},
{field_cias, 4},
{field_cias, 5},
{field_id, 1},
{field_step_type, 0},
{field_tag, 2},
{field_ttc, 6},
[509] =
{field_cias, 3},
{field_cias, 4},
{field_cias, 5},
{field_id, 1},
{field_meta, 6},
{field_step_type, 0},
{field_tag, 2},
[516] =
{field_cias, 3},
{field_cias, 4},
{field_cias, 5},
{field_detector, 6},
{field_id, 1},
{field_step_type, 0},
{field_tag, 2},
[523] =
{field_id, 1},
{field_meta, 4},
{field_preconditions, 5},
{field_reaches, 6},
{field_step_type, 0},
{field_tag, 2},
{field_ttc, 3},
[530] =
{field_detector, 5},
{field_id, 1},
{field_meta, 4},
{field_preconditions, 6},
{field_step_type, 0},
{field_tag, 2},
{field_ttc, 3},
[537] =
{field_detector, 5},
{field_id, 1},
{field_meta, 4},
{field_reaches, 6},
{field_step_type, 0},
{field_tag, 2},
{field_ttc, 3},
[544] =
{field_detector, 4},
{field_id, 1},
{field_preconditions, 5},
{field_reaches, 6},
{field_step_type, 0},
{field_tag, 2},
{field_ttc, 3},
[551] =
{field_detector, 4},
{field_id, 1},
{field_meta, 3},
{field_preconditions, 5},
{field_reaches, 6},
{field_step_type, 0},
{field_tag, 2},
[558] =
{field_cias, 2},
{field_cias, 3},
{field_cias, 4},
{field_id, 1},
{field_preconditions, 6},
{field_reaches, 7},
{field_step_type, 0},
{field_ttc, 5},
[566] =
{field_cias, 2},
{field_cias, 3},
{field_cias, 4},
{field_id, 1},
{field_meta, 6},
{field_preconditions, 7},
{field_step_type, 0},
{field_ttc, 5},
[574] =
{field_cias, 2},
{field_cias, 3},
{field_cias, 4},
{field_id, 1},
{field_meta, 6},
{field_reaches, 7},
{field_step_type, 0},
{field_ttc, 5},
[582] =
{field_cias, 2},
{field_cias, 3},
{field_cias, 4},
{field_detector, 7},
{field_id, 1},
{field_meta, 6},
{field_step_type, 0},
{field_ttc, 5},
[590] =
{field_cias, 2},
{field_cias, 3},
{field_cias, 4},
{field_detector, 6},
{field_id, 1},
{field_preconditions, 7},
{field_step_type, 0},
{field_ttc, 5},
[598] =
{field_cias, 2},
{field_cias, 3},
{field_cias, 4},
{field_detector, 6},
{field_id, 1},
{field_reaches, 7},
{field_step_type, 0},
{field_ttc, 5},
[606] =
{field_cias, 2},
{field_cias, 3},
{field_cias, 4},
{field_id, 1},
{field_meta, 5},
{field_preconditions, 6},
{field_reaches, 7},
{field_step_type, 0},
[614] =
{field_cias, 2},
{field_cias, 3},
{field_cias, 4},
{field_detector, 6},
{field_id, 1},
{field_meta, 5},
{field_preconditions, 7},
{field_step_type, 0},
[622] =
{field_cias, 2},
{field_cias, 3},
{field_cias, 4},
{field_detector, 6},
{field_id, 1},
{field_meta, 5},
{field_reaches, 7},
{field_step_type, 0},
[630] =
{field_cias, 2},
{field_cias, 3},
{field_cias, 4},
{field_detector, 5},
{field_id, 1},
{field_preconditions, 6},
{field_reaches, 7},
{field_step_type, 0},
[638] =
{field_id, 0},
{field_values, 2},
{field_values, 3},
[641] =
{field_cias, 3},
{field_cias, 4},
{field_cias, 5},
{field_id, 1},
{field_preconditions, 6},
{field_reaches, 7},
{field_step_type, 0},
{field_tag, 2},
[649] =
{field_cias, 3},
{field_cias, 4},
{field_cias, 5},
{field_id, 1},
{field_preconditions, 7},
{field_step_type, 0},
{field_tag, 2},
{field_ttc, 6},
[657] =
{field_cias, 3},
{field_cias, 4},
{field_cias, 5},
{field_id, 1},
{field_reaches, 7},
{field_step_type, 0},
{field_tag, 2},
{field_ttc, 6},
[665] =
{field_cias, 3},
{field_cias, 4},
{field_cias, 5},
{field_id, 1},
{field_meta, 7},
{field_step_type, 0},
{field_tag, 2},
{field_ttc, 6},
[673] =
{field_cias, 3},
{field_cias, 4},
{field_cias, 5},
{field_detector, 7},
{field_id, 1},
{field_step_type, 0},
{field_tag, 2},
{field_ttc, 6},
[681] =
{field_cias, 3},
{field_cias, 4},
{field_cias, 5},
{field_id, 1},
{field_meta, 6},
{field_preconditions, 7},
{field_step_type, 0},
{field_tag, 2},
[689] =
{field_cias, 3},
{field_cias, 4},
{field_cias, 5},
{field_id, 1},
{field_meta, 6},
{field_reaches, 7},
{field_step_type, 0},
{field_tag, 2},
[697] =
{field_cias, 3},
{field_cias, 4},
{field_cias, 5},
{field_detector, 7},
{field_id, 1},
{field_meta, 6},
{field_step_type, 0},
{field_tag, 2},
[705] =
{field_cias, 3},
{field_cias, 4},
{field_cias, 5},
{field_detector, 6},
{field_id, 1},
{field_preconditions, 7},
{field_step_type, 0},
{field_tag, 2},
[713] =
{field_cias, 3},
{field_cias, 4},
{field_cias, 5},
{field_detector, 6},
{field_id, 1},
{field_reaches, 7},
{field_step_type, 0},
{field_tag, 2},
[721] =
{field_detector, 5},
{field_id, 1},
{field_meta, 4},
{field_preconditions, 6},
{field_reaches, 7},
{field_step_type, 0},
{field_tag, 2},
{field_ttc, 3},
[729] =
{field_cias, 2},
{field_cias, 3},
{field_cias, 4},
{field_id, 1},
{field_meta, 6},
{field_preconditions, 7},
{field_reaches, 8},
{field_step_type, 0},
{field_ttc, 5},
[738] =
{field_cias, 2},
{field_cias, 3},
{field_cias, 4},
{field_detector, 7},
{field_id, 1},
{field_meta, 6},
{field_preconditions, 8},
{field_step_type, 0},
{field_ttc, 5},
[747] =
{field_cias, 2},
{field_cias, 3},
{field_cias, 4},
{field_detector, 7},
{field_id, 1},
{field_meta, 6},
{field_reaches, 8},
{field_step_type, 0},
{field_ttc, 5},
[756] =
{field_cias, 2},
{field_cias, 3},
{field_cias, 4},
{field_detector, 6},
{field_id, 1},
{field_preconditions, 7},
{field_reaches, 8},
{field_step_type, 0},
{field_ttc, 5},
[765] =
{field_cias, 2},
{field_cias, 3},
{field_cias, 4},
{field_detector, 6},
{field_id, 1},
{field_meta, 5},
{field_preconditions, 7},
{field_reaches, 8},
{field_step_type, 0},
[774] =
{field_cias, 3},
{field_cias, 4},
{field_cias, 5},
{field_id, 1},
{field_preconditions, 7},
{field_reaches, 8},
{field_step_type, 0},
{field_tag, 2},
{field_ttc, 6},
[783] =
{field_cias, 3},
{field_cias, 4},
{field_cias, 5},
{field_id, 1},
{field_meta, 7},
{field_preconditions, 8},
{field_step_type, 0},
{field_tag, 2},
{field_ttc, 6},
[792] =
{field_cias, 3},
{field_cias, 4},
{field_cias, 5},
{field_id, 1},
{field_meta, 7},
{field_reaches, 8},
{field_step_type, 0},
{field_tag, 2},
{field_ttc, 6},
[801] =
{field_cias, 3},
{field_cias, 4},
{field_cias, 5},
{field_detector, 8},
{field_id, 1},
{field_meta, 7},
{field_step_type, 0},
{field_tag, 2},
{field_ttc, 6},
[810] =
{field_cias, 3},
{field_cias, 4},
{field_cias, 5},
{field_detector, 7},
{field_id, 1},
{field_preconditions, 8},
{field_step_type, 0},
{field_tag, 2},
{field_ttc, 6},
[819] =
{field_cias, 3},
{field_cias, 4},
{field_cias, 5},
{field_detector, 7},
{field_id, 1},
{field_reaches, 8},
{field_step_type, 0},
{field_tag, 2},
{field_ttc, 6},
[828] =
{field_cias, 3},
{field_cias, 4},
{field_cias, 5},
{field_id, 1},
{field_meta, 6},
{field_preconditions, 7},
{field_reaches, 8},
{field_step_type, 0},
{field_tag, 2},
[837] =
{field_cias, 3},
{field_cias, 4},
{field_cias, 5},
{field_detector, 7},
{field_id, 1},
{field_meta, 6},
{field_preconditions, 8},
{field_step_type, 0},
{field_tag, 2},
[846] =
{field_cias, 3},
{field_cias, 4},
{field_cias, 5},
{field_detector, 7},
{field_id, 1},
{field_meta, 6},
{field_reaches, 8},
{field_step_type, 0},
{field_tag, 2},
[855] =
{field_cias, 3},
{field_cias, 4},
{field_cias, 5},
{field_detector, 6},
{field_id, 1},
{field_preconditions, 7},
{field_reaches, 8},
{field_step_type, 0},
{field_tag, 2},
[864] =
{field_id, 6},
{field_left_field_id, 2},
{field_left_id, 0},
{field_left_mult, 4},
{field_right_field_id, 10},
{field_right_id, 12},
{field_right_mult, 8},
[871] =
{field_cias, 2},
{field_cias, 3},
{field_cias, 4},
{field_detector, 7},
{field_id, 1},
{field_meta, 6},
{field_preconditions, 8},
{field_reaches, 9},
{field_step_type, 0},
{field_ttc, 5},
[881] =
{field_cias, 3},
{field_cias, 4},
{field_cias, 5},
{field_id, 1},
{field_meta, 7},
{field_preconditions, 8},
{field_reaches, 9},
{field_step_type, 0},
{field_tag, 2},
{field_ttc, 6},
[891] =
{field_cias, 3},
{field_cias, 4},
{field_cias, 5},
{field_detector, 8},
{field_id, 1},
{field_meta, 7},
{field_preconditions, 9},
{field_step_type, 0},
{field_tag, 2},
{field_ttc, 6},
[901] =
{field_cias, 3},
{field_cias, 4},
{field_cias, 5},
{field_detector, 8},
{field_id, 1},
{field_meta, 7},
{field_reaches, 9},
{field_step_type, 0},
{field_tag, 2},
{field_ttc, 6},
[911] =
{field_cias, 3},
{field_cias, 4},
{field_cias, 5},
{field_detector, 7},
{field_id, 1},
{field_preconditions, 8},
{field_reaches, 9},
{field_step_type, 0},
{field_tag, 2},
{field_ttc, 6},
[921] =
{field_cias, 3},
{field_cias, 4},
{field_cias, 5},
{field_detector, 7},
{field_id, 1},
{field_meta, 6},
{field_preconditions, 8},
{field_reaches, 9},
{field_step_type, 0},
{field_tag, 2},
[931] =
{field_id, 6},
{field_left_field_id, 2},
{field_left_id, 0},
{field_left_mult, 4},
{field_meta, 13},
{field_right_field_id, 10},
{field_right_id, 12},
{field_right_mult, 8},
[939] =
{field_cias, 3},
{field_cias, 4},
{field_cias, 5},
{field_detector, 8},
{field_id, 1},
{field_meta, 7},
{field_preconditions, 9},
{field_reaches, 10},
{field_step_type, 0},
{field_tag, 2},
{field_ttc, 6},
};
static const TSSymbol ts_alias_sequences[PRODUCTION_ID_COUNT][MAX_ALIAS_SEQUENCE_LENGTH] = {
[0] = {0},
[6] = {
[3] = alias_sym_meta_string,
},
};
static const uint16_t ts_non_terminal_alias_map[] = {
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] = 26,
[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] = 49,
[50] = 50,
[51] = 51,
[52] = 52,
[53] = 53,
[54] = 54,
[55] = 52,
[56] = 56,
[57] = 57,
[58] = 58,
[59] = 59,
[60] = 60,
[61] = 61,
[62] = 62,
[63] = 63,
[64] = 64,
[65] = 65,
[66] = 66,
[67] = 67,
[68] = 68,
[69] = 69,
[70] = 70,
[71] = 71,
[72] = 72,
[73] = 64,
[74] = 74,
[75] = 75,
[76] = 76,
[77] = 77,
[78] = 78,
[79] = 79,
[80] = 80,
[81] = 81,
[82] = 82,
[83] = 83,
[84] = 84,
[85] = 85,
[86] = 86,
[87] = 87,
[88] = 88,
[89] = 89,
[90] = 90,
[91] = 91,
[92] = 92,
[93] = 93,
[94] = 94,
[95] = 95,
[96] = 96,
[97] = 97,
[98] = 98,
[99] = 99,
[100] = 100,
[101] = 101,
[102] = 102,
[103] = 103,
[104] = 104,
[105] = 105,
[106] = 106,
[107] = 107,
[108] = 108,
[109] = 109,
[110] = 110,
[111] = 111,
[112] = 112,
[113] = 113,
[114] = 114,
[115] = 115,
[116] = 116,
[117] = 117,
[118] = 118,
[119] = 119,
[120] = 120,
[121] = 121,
[122] = 122,
[123] = 123,
[124] = 124,
[125] = 125,
[126] = 126,
[127] = 127,
[128] = 128,
[129] = 129,
[130] = 130,
[131] = 131,
[132] = 95,
[133] = 133,
[134] = 134,
[135] = 135,
[136] = 48,
[137] = 137,
[138] = 138,
[139] = 139,
[140] = 140,
[141] = 141,
[142] = 142,
[143] = 143,
[144] = 144,
[145] = 145,
[146] = 146,
[147] = 147,
[148] = 148,
[149] = 149,
[150] = 150,
[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] = 170,
[171] = 171,
[172] = 172,
[173] = 173,
[174] = 174,
[175] = 175,
[176] = 176,
[177] = 177,
[178] = 178,
[179] = 179,
[180] = 180,
[181] = 181,
[182] = 182,
[183] = 183,
[184] = 184,
[185] = 185,
[186] = 186,
[187] = 187,
[188] = 188,
[189] = 189,
[190] = 190,
[191] = 191,
[192] = 192,
[193] = 193,
[194] = 194,
[195] = 195,
[196] = 196,
[197] = 197,
[198] = 198,
[199] = 199,
[200] = 200,
[201] = 201,
[202] = 202,
[203] = 203,
[204] = 204,
[205] = 205,
[206] = 206,
[207] = 207,
[208] = 208,
[209] = 209,
[210] = 210,
[211] = 211,
[212] = 212,
[213] = 213,
[214] = 214,
[215] = 215,
[216] = 216,
[217] = 217,
[218] = 218,
[219] = 219,
[220] = 220,
[221] = 221,
[222] = 222,
[223] = 223,
[224] = 224,
[225] = 225,
[226] = 226,
[227] = 227,
[228] = 228,
[229] = 229,
[230] = 230,
[231] = 231,
[232] = 232,
[233] = 233,
[234] = 234,
[235] = 235,
[236] = 65,
[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] = 259,
[260] = 260,
[261] = 261,
[262] = 262,
[263] = 263,
[264] = 264,
[265] = 265,
[266] = 266,
[267] = 267,
[268] = 268,
[269] = 269,
[270] = 270,
[271] = 271,
[272] = 272,
[273] = 273,
[274] = 274,
[275] = 275,
[276] = 276,
[277] = 277,
[278] = 278,
[279] = 279,
[280] = 280,
[281] = 281,
[282] = 282,
[283] = 283,
[284] = 284,
[285] = 285,
[286] = 286,
[287] = 287,
[288] = 288,
[289] = 289,
[290] = 290,
[291] = 291,
[292] = 292,
[293] = 293,
[294] = 294,
[295] = 295,
[296] = 296,
[297] = 297,
[298] = 298,
[299] = 299,
[300] = 300,
[301] = 301,
[302] = 302,
[303] = 303,
[304] = 304,
[305] = 305,
[306] = 306,
[307] = 307,
[308] = 308,
[309] = 309,
[310] = 310,
[311] = 311,
[312] = 312,
[313] = 313,
[314] = 314,
[315] = 315,
[316] = 316,
[317] = 317,
[318] = 318,
[319] = 319,
[320] = 320,
[321] = 321,
[322] = 291,
[323] = 323,
[324] = 299,
[325] = 320,
};
static bool ts_lex(TSLexer *lexer, TSStateId state) {
START_LEXER();
eof = lexer->eof(lexer);
switch (state) {
case 0:
if (eof) ADVANCE(28);
ADVANCE_MAP(
'!', 41,
'"', 4,
'#', 64,
'(', 45,
')', 46,
'*', 58,
'+', 54,
',', 40,
'-', 56,
'.', 44,
'/', 60,
':', 65,
'<', 13,
'=', 36,
'@', 37,
'E', 39,
'[', 51,
'\\', 19,
']', 52,
'^', 61,
'l', 75,
'{', 32,
'}', 33,
'&', 38,
'|', 38,
'A', 77,
'C', 77,
'I', 77,
);
if (lookahead == '\t' ||
lookahead == '\n' ||
lookahead == '\r' ||
lookahead == ' ') SKIP(0);
if (('0' <= lookahead && lookahead <= '9')) ADVANCE(72);
if (('B' <= lookahead && lookahead <= '_') ||
('a' <= lookahead && lookahead <= 'z')) ADVANCE(77);
END_STATE();
case 1:
ADVANCE_MAP(
'!', 41,
'+', 20,
'-', 21,
'/', 9,
'<', 15,
'@', 37,
'E', 39,
'[', 51,
'l', 75,
'{', 32,
'}', 33,
'#', 38,
'&', 38,
'|', 38,
);
if (lookahead == '\t' ||
lookahead == '\n' ||
lookahead == '\r' ||
lookahead == ' ') SKIP(1);
if (('0' <= lookahead && lookahead <= '9') ||
('A' <= lookahead && lookahead <= 'Z') ||
lookahead == '_' ||
('a' <= lookahead && lookahead <= 'z')) ADVANCE(77);
END_STATE();
case 2:
ADVANCE_MAP(
'!', 41,
'+', 20,
'-', 21,
'/', 9,
'<', 15,
'[', 51,
'l', 24,
'}', 33,
'#', 38,
'&', 38,
'E', 38,
'|', 38,
);
if (lookahead == '\t' ||
lookahead == '\n' ||
lookahead == '\r' ||
lookahead == ' ') SKIP(2);
END_STATE();
case 3:
ADVANCE_MAP(
'!', 23,
'(', 45,
')', 46,
'*', 58,
'+', 20,
',', 40,
'-', 57,
'.', 43,
'/', 8,
'[', 51,
'\\', 19,
'l', 24,
'}', 33,
'A', 78,
'C', 78,
'I', 78,
'#', 38,
'&', 38,
'E', 38,
'|', 38,
);
if (lookahead == '\t' ||
lookahead == '\n' ||
lookahead == '\r' ||
lookahead == ' ') SKIP(3);
END_STATE();
case 4:
if (lookahead == '"') ADVANCE(69);
if (lookahead == '\\') ADVANCE(5);
if (lookahead != 0) ADVANCE(4);
END_STATE();
case 5:
if (lookahead == '"') ADVANCE(70);
if (lookahead == '\\') ADVANCE(5);
if (lookahead != 0) ADVANCE(4);
END_STATE();
case 6:
ADVANCE_MAP(
'(', 45,
')', 46,
'-', 12,
'.', 17,
'/', 7,
':', 26,
'<', 16,
'[', 51,
);
if (lookahead == '\t' ||
lookahead == '\n' ||
lookahead == '\r' ||
lookahead == ' ') SKIP(6);
if (('0' <= lookahead && lookahead <= '9')) ADVANCE(71);
if (('A' <= lookahead && lookahead <= 'Z') ||
lookahead == '_' ||
('a' <= lookahead && lookahead <= 'z')) ADVANCE(77);
END_STATE();
case 7:
if (lookahead == '*') ADVANCE(11);
if (lookahead == '/') ADVANCE(31);
END_STATE();
case 8:
if (lookahead == '*') ADVANCE(11);
if (lookahead == '/') ADVANCE(31);
if (lookahead == '\\') ADVANCE(63);
END_STATE();
case 9:
if (lookahead == '*') ADVANCE(11);
if (lookahead == '/') ADVANCE(30);
END_STATE();
case 10:
if (lookahead == '*') ADVANCE(10);
if (lookahead == '/') ADVANCE(29);
if (lookahead != 0) ADVANCE(11);
END_STATE();
case 11:
if (lookahead == '*') ADVANCE(10);
if (lookahead != 0) ADVANCE(11);
END_STATE();
case 12:
if (lookahead == '-') ADVANCE(22);
END_STATE();
case 13:
if (lookahead == '-') ADVANCE(48);
END_STATE();
case 14:
if (lookahead == '-') ADVANCE(66);
END_STATE();
case 15:
if (lookahead == '-') ADVANCE(47);
END_STATE();
case 16:
if (lookahead == '-') ADVANCE(14);
END_STATE();
case 17:
if (lookahead == '.') ADVANCE(68);
if (('0' <= lookahead && lookahead <= '9')) ADVANCE(74);
END_STATE();
case 18:
if (lookahead == '.') ADVANCE(74);
END_STATE();
case 19:
if (lookahead == '/') ADVANCE(62);
END_STATE();
case 20:
if (lookahead == '>') ADVANCE(49);
END_STATE();
case 21:
if (lookahead == '>') ADVANCE(50);
END_STATE();
case 22:
if (lookahead == '>') ADVANCE(67);
END_STATE();
case 23:
if (lookahead == 'E') ADVANCE(38);
END_STATE();
case 24:
if (lookahead == 'e') ADVANCE(25);
END_STATE();
case 25:
if (lookahead == 't') ADVANCE(34);
END_STATE();
case 26:
if (('0' <= lookahead && lookahead <= '9')) ADVANCE(73);
END_STATE();
case 27:
if (eof) ADVANCE(28);
ADVANCE_MAP(
'#', 64,
'(', 45,
')', 46,
'*', 58,
'+', 53,
'-', 55,
'.', 43,
'/', 59,
'<', 16,
'[', 51,
']', 52,
'^', 61,
'{', 32,
'}', 33,
);
if (lookahead == '\t' ||
lookahead == '\n' ||
lookahead == '\r' ||
lookahead == ' ') SKIP(27);
if (('0' <= lookahead && lookahead <= '9') ||
('A' <= lookahead && lookahead <= 'Z') ||
lookahead == '_' ||
('a' <= lookahead && lookahead <= 'z')) ADVANCE(77);
END_STATE();
case 28:
ACCEPT_TOKEN(ts_builtin_sym_end);
END_STATE();
case 29:
ACCEPT_TOKEN(sym_comment);
END_STATE();
case 30:
ACCEPT_TOKEN(sym_comment);
if (lookahead == '!') ADVANCE(42);
if (lookahead != 0 &&
lookahead != '\n' &&
lookahead != '\r' &&
lookahead != 0x2028 &&
lookahead != 0x2029) ADVANCE(31);
END_STATE();
case 31:
ACCEPT_TOKEN(sym_comment);
if (lookahead != 0 &&
lookahead != '\n' &&
lookahead != '\r' &&
lookahead != 0x2028 &&
lookahead != 0x2029) ADVANCE(31);
END_STATE();
case 32:
ACCEPT_TOKEN(anon_sym_LBRACE);
END_STATE();
case 33:
ACCEPT_TOKEN(anon_sym_RBRACE);
END_STATE();
case 34:
ACCEPT_TOKEN(anon_sym_let);
END_STATE();
case 35:
ACCEPT_TOKEN(anon_sym_let);
if (('0' <= lookahead && lookahead <= '9') ||
('A' <= lookahead && lookahead <= 'Z') ||
lookahead == '_' ||
('a' <= lookahead && lookahead <= 'z')) ADVANCE(77);
END_STATE();
case 36:
ACCEPT_TOKEN(anon_sym_EQ);
END_STATE();
case 37:
ACCEPT_TOKEN(anon_sym_AT);
END_STATE();
case 38:
ACCEPT_TOKEN(sym_step_type);
END_STATE();
case 39:
ACCEPT_TOKEN(sym_step_type);
if (('0' <= lookahead && lookahead <= '9') ||
('A' <= lookahead && lookahead <= 'Z') ||
lookahead == '_' ||
('a' <= lookahead && lookahead <= 'z')) ADVANCE(77);
END_STATE();
case 40:
ACCEPT_TOKEN(anon_sym_COMMA);
END_STATE();
case 41:
ACCEPT_TOKEN(anon_sym_BANG);
if (lookahead == 'E') ADVANCE(38);
END_STATE();
case 42:
ACCEPT_TOKEN(anon_sym_SLASH_SLASH_BANG);
END_STATE();
case 43:
ACCEPT_TOKEN(anon_sym_DOT);
END_STATE();
case 44:
ACCEPT_TOKEN(anon_sym_DOT);
if (lookahead == '.') ADVANCE(68);
END_STATE();
case 45:
ACCEPT_TOKEN(anon_sym_LPAREN);
END_STATE();
case 46:
ACCEPT_TOKEN(anon_sym_RPAREN);
END_STATE();
case 47:
ACCEPT_TOKEN(anon_sym_LT_DASH);
END_STATE();
case 48:
ACCEPT_TOKEN(anon_sym_LT_DASH);
if (lookahead == '-') ADVANCE(66);
END_STATE();
case 49:
ACCEPT_TOKEN(anon_sym_PLUS_GT);
END_STATE();
case 50:
ACCEPT_TOKEN(anon_sym_DASH_GT);
END_STATE();
case 51:
ACCEPT_TOKEN(anon_sym_LBRACK);
END_STATE();
case 52:
ACCEPT_TOKEN(anon_sym_RBRACK);
END_STATE();
case 53:
ACCEPT_TOKEN(anon_sym_PLUS);
END_STATE();
case 54:
ACCEPT_TOKEN(anon_sym_PLUS);
if (lookahead == '>') ADVANCE(49);
END_STATE();
case 55:
ACCEPT_TOKEN(anon_sym_DASH);
END_STATE();
case 56:
ACCEPT_TOKEN(anon_sym_DASH);
if (lookahead == '-') ADVANCE(22);
if (lookahead == '>') ADVANCE(50);
END_STATE();
case 57:
ACCEPT_TOKEN(anon_sym_DASH);
if (lookahead == '>') ADVANCE(50);
END_STATE();
case 58:
ACCEPT_TOKEN(anon_sym_STAR);
END_STATE();
case 59:
ACCEPT_TOKEN(anon_sym_SLASH);
if (lookahead == '*') ADVANCE(11);
if (lookahead == '/') ADVANCE(31);
END_STATE();
case 60:
ACCEPT_TOKEN(anon_sym_SLASH);
if (lookahead == '*') ADVANCE(11);
if (lookahead == '/') ADVANCE(31);
if (lookahead == '\\') ADVANCE(63);
END_STATE();
case 61:
ACCEPT_TOKEN(anon_sym_CARET);
END_STATE();
case 62:
ACCEPT_TOKEN(anon_sym_BSLASH_SLASH);
END_STATE();
case 63:
ACCEPT_TOKEN(anon_sym_SLASH_BSLASH);
END_STATE();
case 64:
ACCEPT_TOKEN(anon_sym_POUND);
END_STATE();
case 65:
ACCEPT_TOKEN(anon_sym_COLON);
END_STATE();
case 66:
ACCEPT_TOKEN(anon_sym_LT_DASH_DASH);
END_STATE();
case 67:
ACCEPT_TOKEN(anon_sym_DASH_DASH_GT);
END_STATE();
case 68:
ACCEPT_TOKEN(anon_sym_DOT_DOT);
END_STATE();
case 69:
ACCEPT_TOKEN(sym_string);
END_STATE();
case 70:
ACCEPT_TOKEN(sym_string);
if (lookahead == '"') ADVANCE(69);
if (lookahead == '\\') ADVANCE(5);
if (lookahead != 0) ADVANCE(4);
END_STATE();
case 71:
ACCEPT_TOKEN(sym_integer);
if (lookahead == '.') ADVANCE(74);
if (lookahead == ':') ADVANCE(18);
if (('0' <= lookahead && lookahead <= '9')) ADVANCE(71);
if (('A' <= lookahead && lookahead <= 'Z') ||
lookahead == '_' ||
('a' <= lookahead && lookahead <= 'z')) ADVANCE(77);
END_STATE();
case 72:
ACCEPT_TOKEN(sym_integer);
if (('0' <= lookahead && lookahead <= '9')) ADVANCE(72);
if (('A' <= lookahead && lookahead <= 'Z') ||
lookahead == '_' ||
('a' <= lookahead && lookahead <= 'z')) ADVANCE(77);
END_STATE();
case 73:
ACCEPT_TOKEN(sym_float);
if (lookahead == '.') ADVANCE(74);
if (lookahead == ':') ADVANCE(18);
if (('0' <= lookahead && lookahead <= '9')) ADVANCE(73);
END_STATE();
case 74:
ACCEPT_TOKEN(sym_float);
if (('0' <= lookahead && lookahead <= '9')) ADVANCE(74);
END_STATE();
case 75:
ACCEPT_TOKEN(sym_identifier);
if (lookahead == 'e') ADVANCE(76);
if (('0' <= lookahead && lookahead <= '9') ||
('A' <= lookahead && lookahead <= 'Z') ||
lookahead == '_' ||
('a' <= lookahead && lookahead <= 'z')) ADVANCE(77);
END_STATE();
case 76:
ACCEPT_TOKEN(sym_identifier);
if (lookahead == 't') ADVANCE(35);
if (('0' <= lookahead && lookahead <= '9') ||
('A' <= lookahead && lookahead <= 'Z') ||
lookahead == '_' ||
('a' <= lookahead && lookahead <= 'z')) ADVANCE(77);
END_STATE();
case 77:
ACCEPT_TOKEN(sym_identifier);
if (('0' <= lookahead && lookahead <= '9') ||
('A' <= lookahead && lookahead <= 'Z') ||
lookahead == '_' ||
('a' <= lookahead && lookahead <= 'z')) ADVANCE(77);
END_STATE();
case 78:
ACCEPT_TOKEN(sym_cia);
END_STATE();
default:
return false;
}
}
static bool ts_lex_keywords(TSLexer *lexer, TSStateId state) {
START_LEXER();
eof = lexer->eof(lexer);
switch (state) {
case 0:
if (lookahead == 'a') ADVANCE(1);
if (lookahead == 'c') ADVANCE(2);
if (lookahead == 'e') ADVANCE(3);
if (lookahead == 'i') ADVANCE(4);
if (lookahead == '\t' ||
lookahead == '\n' ||
lookahead == '\r' ||
lookahead == ' ') SKIP(0);
END_STATE();
case 1:
if (lookahead == 'b') ADVANCE(5);
if (lookahead == 's') ADVANCE(6);
END_STATE();
case 2:
if (lookahead == 'a') ADVANCE(7);
END_STATE();
case 3:
if (lookahead == 'x') ADVANCE(8);
END_STATE();
case 4:
if (lookahead == 'n') ADVANCE(9);
END_STATE();
case 5:
if (lookahead == 's') ADVANCE(10);
END_STATE();
case 6:
if (lookahead == 's') ADVANCE(11);
END_STATE();
case 7:
if (lookahead == 't') ADVANCE(12);
END_STATE();
case 8:
if (lookahead == 't') ADVANCE(13);
END_STATE();
case 9:
if (lookahead == 'c') ADVANCE(14);
if (lookahead == 'f') ADVANCE(15);
END_STATE();
case 10:
if (lookahead == 't') ADVANCE(16);
END_STATE();
case 11:
if (lookahead == 'e') ADVANCE(17);
if (lookahead == 'o') ADVANCE(18);
END_STATE();
case 12:
if (lookahead == 'e') ADVANCE(19);
END_STATE();
case 13:
if (lookahead == 'e') ADVANCE(20);
END_STATE();
case 14:
if (lookahead == 'l') ADVANCE(21);
END_STATE();
case 15:
if (lookahead == 'o') ADVANCE(22);
END_STATE();
case 16:
if (lookahead == 'r') ADVANCE(23);
END_STATE();
case 17:
if (lookahead == 't') ADVANCE(24);
END_STATE();
case 18:
if (lookahead == 'c') ADVANCE(25);
END_STATE();
case 19:
if (lookahead == 'g') ADVANCE(26);
END_STATE();
case 20:
if (lookahead == 'n') ADVANCE(27);
END_STATE();
case 21:
if (lookahead == 'u') ADVANCE(28);
END_STATE();
case 22:
ACCEPT_TOKEN(anon_sym_info);
END_STATE();
case 23:
if (lookahead == 'a') ADVANCE(29);
END_STATE();
case 24:
ACCEPT_TOKEN(anon_sym_asset);
END_STATE();
case 25:
if (lookahead == 'i') ADVANCE(30);
END_STATE();
case 26:
if (lookahead == 'o') ADVANCE(31);
END_STATE();
case 27:
if (lookahead == 'd') ADVANCE(32);
END_STATE();
case 28:
if (lookahead == 'd') ADVANCE(33);
END_STATE();
case 29:
if (lookahead == 'c') ADVANCE(34);
END_STATE();
case 30:
if (lookahead == 'a') ADVANCE(35);
END_STATE();
case 31:
if (lookahead == 'r') ADVANCE(36);
END_STATE();
case 32:
if (lookahead == 's') ADVANCE(37);
END_STATE();
case 33:
if (lookahead == 'e') ADVANCE(38);
END_STATE();
case 34:
if (lookahead == 't') ADVANCE(39);
END_STATE();
case 35:
if (lookahead == 't') ADVANCE(40);
END_STATE();
case 36:
if (lookahead == 'y') ADVANCE(41);
END_STATE();
case 37:
ACCEPT_TOKEN(anon_sym_extends);
END_STATE();
case 38:
ACCEPT_TOKEN(anon_sym_include);
END_STATE();
case 39:
ACCEPT_TOKEN(anon_sym_abstract);
END_STATE();
case 40:
if (lookahead == 'i') ADVANCE(42);
END_STATE();
case 41:
ACCEPT_TOKEN(anon_sym_category);
END_STATE();
case 42:
if (lookahead == 'o') ADVANCE(43);
END_STATE();
case 43:
if (lookahead == 'n') ADVANCE(44);
END_STATE();
case 44:
if (lookahead == 's') ADVANCE(45);
END_STATE();
case 45:
ACCEPT_TOKEN(anon_sym_associations);
END_STATE();
default:
return false;
}
}
static const TSLexerMode ts_lex_modes[STATE_COUNT] = {
[0] = {.lex_state = 0},
[1] = {.lex_state = 27},
[2] = {.lex_state = 1},
[3] = {.lex_state = 1},
[4] = {.lex_state = 1},
[5] = {.lex_state = 1},
[6] = {.lex_state = 1},
[7] = {.lex_state = 1},
[8] = {.lex_state = 1},
[9] = {.lex_state = 1},
[10] = {.lex_state = 1},
[11] = {.lex_state = 1},
[12] = {.lex_state = 1},
[13] = {.lex_state = 1},
[14] = {.lex_state = 1},
[15] = {.lex_state = 1},
[16] = {.lex_state = 1},
[17] = {.lex_state = 1},
[18] = {.lex_state = 3},
[19] = {.lex_state = 1},
[20] = {.lex_state = 3},
[21] = {.lex_state = 3},
[22] = {.lex_state = 3},
[23] = {.lex_state = 3},
[24] = {.lex_state = 3},
[25] = {.lex_state = 3},
[26] = {.lex_state = 2},
[27] = {.lex_state = 2},
[28] = {.lex_state = 2},
[29] = {.lex_state = 2},
[30] = {.lex_state = 2},
[31] = {.lex_state = 2},
[32] = {.lex_state = 2},
[33] = {.lex_state = 2},
[34] = {.lex_state = 2},
[35] = {.lex_state = 2},
[36] = {.lex_state = 2},
[37] = {.lex_state = 2},
[38] = {.lex_state = 3},
[39] = {.lex_state = 2},
[40] = {.lex_state = 2},
[41] = {.lex_state = 1},
[42] = {.lex_state = 2},
[43] = {.lex_state = 2},
[44] = {.lex_state = 1},
[45] = {.lex_state = 27},
[46] = {.lex_state = 27},
[47] = {.lex_state = 1},
[48] = {.lex_state = 1},
[49] = {.lex_state = 1},
[50] = {.lex_state = 6},
[51] = {.lex_state = 2},
[52] = {.lex_state = 6},
[53] = {.lex_state = 1},
[54] = {.lex_state = 2},
[55] = {.lex_state = 6},
[56] = {.lex_state = 6},
[57] = {.lex_state = 6},
[58] = {.lex_state = 2},
[59] = {.lex_state = 6},
[60] = {.lex_state = 27},
[61] = {.lex_state = 27},
[62] = {.lex_state = 27},
[63] = {.lex_state = 27},
[64] = {.lex_state = 1},
[65] = {.lex_state = 1},
[66] = {.lex_state = 27},
[67] = {.lex_state = 2},
[68] = {.lex_state = 2},
[69] = {.lex_state = 27},
[70] = {.lex_state = 2},
[71] = {.lex_state = 27},
[72] = {.lex_state = 2},
[73] = {.lex_state = 2},
[74] = {.lex_state = 27},
[75] = {.lex_state = 27},
[76] = {.lex_state = 3},
[77] = {.lex_state = 3},
[78] = {.lex_state = 3},
[79] = {.lex_state = 27},
[80] = {.lex_state = 3},
[81] = {.lex_state = 3},
[82] = {.lex_state = 27},
[83] = {.lex_state = 27},
[84] = {.lex_state = 27},
[85] = {.lex_state = 27},
[86] = {.lex_state = 3},
[87] = {.lex_state = 27},
[88] = {.lex_state = 3},
[89] = {.lex_state = 3},
[90] = {.lex_state = 3},
[91] = {.lex_state = 3},
[92] = {.lex_state = 3},
[93] = {.lex_state = 3},
[94] = {.lex_state = 3},
[95] = {.lex_state = 27},
[96] = {.lex_state = 3},
[97] = {.lex_state = 3},
[98] = {.lex_state = 3},
[99] = {.lex_state = 3},
[100] = {.lex_state = 0},
[101] = {.lex_state = 0},
[102] = {.lex_state = 27},
[103] = {.lex_state = 3},
[104] = {.lex_state = 3},
[105] = {.lex_state = 3},
[106] = {.lex_state = 3},
[107] = {.lex_state = 3},
[108] = {.lex_state = 3},
[109] = {.lex_state = 3},
[110] = {.lex_state = 3},
[111] = {.lex_state = 3},
[112] = {.lex_state = 3},
[113] = {.lex_state = 3},
[114] = {.lex_state = 3},
[115] = {.lex_state = 3},
[116] = {.lex_state = 3},
[117] = {.lex_state = 3},
[118] = {.lex_state = 3},
[119] = {.lex_state = 3},
[120] = {.lex_state = 3},
[121] = {.lex_state = 3},
[122] = {.lex_state = 3},
[123] = {.lex_state = 3},
[124] = {.lex_state = 3},
[125] = {.lex_state = 3},
[126] = {.lex_state = 3},
[127] = {.lex_state = 3},
[128] = {.lex_state = 3},
[129] = {.lex_state = 3},
[130] = {.lex_state = 3},
[131] = {.lex_state = 3},
[132] = {.lex_state = 27},
[133] = {.lex_state = 3},
[134] = {.lex_state = 27},
[135] = {.lex_state = 27},
[136] = {.lex_state = 27},
[137] = {.lex_state = 27},
[138] = {.lex_state = 27},
[139] = {.lex_state = 27},
[140] = {.lex_state = 27},
[141] = {.lex_state = 27},
[142] = {.lex_state = 27},
[143] = {.lex_state = 27},
[144] = {.lex_state = 27},
[145] = {.lex_state = 27},
[146] = {.lex_state = 27},
[147] = {.lex_state = 27},
[148] = {.lex_state = 27},
[149] = {.lex_state = 27},
[150] = {.lex_state = 3},
[151] = {.lex_state = 27},
[152] = {.lex_state = 3},
[153] = {.lex_state = 27},
[154] = {.lex_state = 27},
[155] = {.lex_state = 0},
[156] = {.lex_state = 6},
[157] = {.lex_state = 27},
[158] = {.lex_state = 27},
[159] = {.lex_state = 27},
[160] = {.lex_state = 27},
[161] = {.lex_state = 27},
[162] = {.lex_state = 27},
[163] = {.lex_state = 27},
[164] = {.lex_state = 27},
[165] = {.lex_state = 27},
[166] = {.lex_state = 27},
[167] = {.lex_state = 27},
[168] = {.lex_state = 27},
[169] = {.lex_state = 3},
[170] = {.lex_state = 3},
[171] = {.lex_state = 3},
[172] = {.lex_state = 3},
[173] = {.lex_state = 3},
[174] = {.lex_state = 3},
[175] = {.lex_state = 27},
[176] = {.lex_state = 3},
[177] = {.lex_state = 3},
[178] = {.lex_state = 3},
[179] = {.lex_state = 3},
[180] = {.lex_state = 3},
[181] = {.lex_state = 27},
[182] = {.lex_state = 27},
[183] = {.lex_state = 27},
[184] = {.lex_state = 6},
[185] = {.lex_state = 0},
[186] = {.lex_state = 3},
[187] = {.lex_state = 6},
[188] = {.lex_state = 27},
[189] = {.lex_state = 0},
[190] = {.lex_state = 27},
[191] = {.lex_state = 3},
[192] = {.lex_state = 27},
[193] = {.lex_state = 27},
[194] = {.lex_state = 0},
[195] = {.lex_state = 27},
[196] = {.lex_state = 27},
[197] = {.lex_state = 3},
[198] = {.lex_state = 3},
[199] = {.lex_state = 3},
[200] = {.lex_state = 3},
[201] = {.lex_state = 27},
[202] = {.lex_state = 3},
[203] = {.lex_state = 27},
[204] = {.lex_state = 3},
[205] = {.lex_state = 3},
[206] = {.lex_state = 3},
[207] = {.lex_state = 3},
[208] = {.lex_state = 3},
[209] = {.lex_state = 3},
[210] = {.lex_state = 27},
[211] = {.lex_state = 27},
[212] = {.lex_state = 27},
[213] = {.lex_state = 3},
[214] = {.lex_state = 27},
[215] = {.lex_state = 0},
[216] = {.lex_state = 6},
[217] = {.lex_state = 0},
[218] = {.lex_state = 3},
[219] = {.lex_state = 3},
[220] = {.lex_state = 0},
[221] = {.lex_state = 3},
[222] = {.lex_state = 3},
[223] = {.lex_state = 3},
[224] = {.lex_state = 3},
[225] = {.lex_state = 3},
[226] = {.lex_state = 3},
[227] = {.lex_state = 0},
[228] = {.lex_state = 3},
[229] = {.lex_state = 3},
[230] = {.lex_state = 27},
[231] = {.lex_state = 3},
[232] = {.lex_state = 3},
[233] = {.lex_state = 0},
[234] = {.lex_state = 3},
[235] = {.lex_state = 3},
[236] = {.lex_state = 27},
[237] = {.lex_state = 3},
[238] = {.lex_state = 3},
[239] = {.lex_state = 3},
[240] = {.lex_state = 3},
[241] = {.lex_state = 3},
[242] = {.lex_state = 3},
[243] = {.lex_state = 3},
[244] = {.lex_state = 3},
[245] = {.lex_state = 3},
[246] = {.lex_state = 3},
[247] = {.lex_state = 3},
[248] = {.lex_state = 3},
[249] = {.lex_state = 3},
[250] = {.lex_state = 3},
[251] = {.lex_state = 3},
[252] = {.lex_state = 3},
[253] = {.lex_state = 3},
[254] = {.lex_state = 3},
[255] = {.lex_state = 3},
[256] = {.lex_state = 0},
[257] = {.lex_state = 3},
[258] = {.lex_state = 3},
[259] = {.lex_state = 3},
[260] = {.lex_state = 27},
[261] = {.lex_state = 3},
[262] = {.lex_state = 3},
[263] = {.lex_state = 27},
[264] = {.lex_state = 3},
[265] = {.lex_state = 3},
[266] = {.lex_state = 0},
[267] = {.lex_state = 27},
[268] = {.lex_state = 3},
[269] = {.lex_state = 27},
[270] = {.lex_state = 0},
[271] = {.lex_state = 0},
[272] = {.lex_state = 27},
[273] = {.lex_state = 27},
[274] = {.lex_state = 27},
[275] = {.lex_state = 0},
[276] = {.lex_state = 3},
[277] = {.lex_state = 0},
[278] = {.lex_state = 0},
[279] = {.lex_state = 27},
[280] = {.lex_state = 27},
[281] = {.lex_state = 0},
[282] = {.lex_state = 27},
[283] = {.lex_state = 0},
[284] = {.lex_state = 27},
[285] = {.lex_state = 27},
[286] = {.lex_state = 27},
[287] = {.lex_state = 6},
[288] = {.lex_state = 0},
[289] = {.lex_state = 0},
[290] = {.lex_state = 0},
[291] = {.lex_state = 0},
[292] = {.lex_state = 27},
[293] = {.lex_state = 27},
[294] = {.lex_state = 27},
[295] = {.lex_state = 0},
[296] = {.lex_state = 0},
[297] = {.lex_state = 27},
[298] = {.lex_state = 0},
[299] = {.lex_state = 27},
[300] = {.lex_state = 27},
[301] = {.lex_state = 27},
[302] = {.lex_state = 27},
[303] = {.lex_state = 0},
[304] = {.lex_state = 0},
[305] = {.lex_state = 0},
[306] = {.lex_state = 0},
[307] = {.lex_state = 0},
[308] = {.lex_state = 27},
[309] = {.lex_state = 0},
[310] = {.lex_state = 0},
[311] = {.lex_state = 0},
[312] = {.lex_state = 3},
[313] = {.lex_state = 0},
[314] = {.lex_state = 27},
[315] = {.lex_state = 27},
[316] = {.lex_state = 27},
[317] = {.lex_state = 0},
[318] = {.lex_state = 0},
[319] = {.lex_state = 27},
[320] = {.lex_state = 0},
[321] = {.lex_state = 0},
[322] = {.lex_state = 0},
[323] = {.lex_state = 0},
[324] = {.lex_state = 27},
[325] = {.lex_state = 0},
};
static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = {
[STATE(0)] = {
[ts_builtin_sym_end] = ACTIONS(1),
[sym_identifier] = ACTIONS(1),
[sym_comment] = ACTIONS(3),
[anon_sym_include] = ACTIONS(1),
[anon_sym_category] = ACTIONS(1),
[anon_sym_LBRACE] = ACTIONS(1),
[anon_sym_RBRACE] = ACTIONS(1),
[anon_sym_abstract] = ACTIONS(1),
[anon_sym_asset] = ACTIONS(1),
[anon_sym_extends] = ACTIONS(1),
[anon_sym_let] = ACTIONS(1),
[anon_sym_EQ] = ACTIONS(1),
[anon_sym_AT] = ACTIONS(1),
[sym_step_type] = ACTIONS(1),
[anon_sym_COMMA] = ACTIONS(1),
[anon_sym_BANG] = ACTIONS(1),
[anon_sym_DOT] = ACTIONS(1),
[anon_sym_LPAREN] = ACTIONS(1),
[anon_sym_RPAREN] = ACTIONS(1),
[anon_sym_LT_DASH] = ACTIONS(1),
[anon_sym_PLUS_GT] = ACTIONS(1),
[anon_sym_DASH_GT] = ACTIONS(1),
[anon_sym_LBRACK] = ACTIONS(1),
[anon_sym_RBRACK] = ACTIONS(1),
[anon_sym_PLUS] = ACTIONS(1),
[anon_sym_DASH] = ACTIONS(1),
[anon_sym_STAR] = ACTIONS(1),
[anon_sym_SLASH] = ACTIONS(1),
[anon_sym_CARET] = ACTIONS(1),
[anon_sym_BSLASH_SLASH] = ACTIONS(1),
[anon_sym_SLASH_BSLASH] = ACTIONS(1),
[anon_sym_POUND] = ACTIONS(1),
[anon_sym_COLON] = ACTIONS(1),
[anon_sym_associations] = ACTIONS(1),
[anon_sym_LT_DASH_DASH] = ACTIONS(1),
[anon_sym_DASH_DASH_GT] = ACTIONS(1),
[anon_sym_DOT_DOT] = ACTIONS(1),
[anon_sym_info] = ACTIONS(1),
[sym_string] = ACTIONS(1),
[sym_integer] = ACTIONS(1),
[sym_cia] = ACTIONS(1),
},
[STATE(1)] = {
[sym_source_file] = STATE(307),
[sym_declaration] = STATE(46),
[sym_include_declaration] = STATE(143),
[sym_category_declaration] = STATE(143),
[sym_define_declaration] = STATE(143),
[sym_associations_declaration] = STATE(143),
[aux_sym_source_file_repeat1] = STATE(46),
[ts_builtin_sym_end] = ACTIONS(5),
[sym_comment] = ACTIONS(3),
[anon_sym_include] = ACTIONS(7),
[anon_sym_category] = ACTIONS(9),
[anon_sym_POUND] = ACTIONS(11),
[anon_sym_associations] = ACTIONS(13),
},
};
static const uint16_t ts_small_parse_table[] = {
[0] = 17,
ACTIONS(15), 1,
sym_identifier,
ACTIONS(17), 1,
sym_comment,
ACTIONS(19), 1,
anon_sym_LBRACE,
ACTIONS(21), 1,
anon_sym_RBRACE,
ACTIONS(25), 1,
anon_sym_AT,
ACTIONS(27), 1,
anon_sym_BANG,
ACTIONS(29), 1,
anon_sym_SLASH_SLASH_BANG,
ACTIONS(31), 1,
anon_sym_LT_DASH,
ACTIONS(35), 1,
anon_sym_LBRACK,
STATE(3), 1,
aux_sym_attack_step_repeat1,
STATE(7), 1,
sym_ttc,
STATE(126), 1,
sym_preconditions,
STATE(239), 1,
sym_reaching,
ACTIONS(23), 2,
anon_sym_let,
sym_step_type,
ACTIONS(33), 2,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
STATE(6), 2,
sym_meta,
aux_sym_category_declaration_repeat1,
STATE(29), 2,
sym_detector,
aux_sym_attack_step_repeat2,
[56] = 17,
ACTIONS(15), 1,
sym_identifier,
ACTIONS(17), 1,
sym_comment,
ACTIONS(25), 1,
anon_sym_AT,
ACTIONS(27), 1,
anon_sym_BANG,
ACTIONS(29), 1,
anon_sym_SLASH_SLASH_BANG,
ACTIONS(31), 1,
anon_sym_LT_DASH,
ACTIONS(35), 1,
anon_sym_LBRACK,
ACTIONS(37), 1,
anon_sym_LBRACE,
ACTIONS(39), 1,
anon_sym_RBRACE,
STATE(9), 1,
sym_ttc,
STATE(19), 1,
aux_sym_attack_step_repeat1,
STATE(98), 1,
sym_preconditions,
STATE(177), 1,
sym_reaching,
ACTIONS(33), 2,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
ACTIONS(41), 2,
anon_sym_let,
sym_step_type,
STATE(10), 2,
sym_meta,
aux_sym_category_declaration_repeat1,
STATE(28), 2,
sym_detector,
aux_sym_attack_step_repeat2,
[112] = 14,
ACTIONS(15), 1,
sym_identifier,
ACTIONS(17), 1,
sym_comment,
ACTIONS(27), 1,
anon_sym_BANG,
ACTIONS(29), 1,
anon_sym_SLASH_SLASH_BANG,
ACTIONS(31), 1,
anon_sym_LT_DASH,
ACTIONS(35), 1,
anon_sym_LBRACK,
ACTIONS(43), 1,
anon_sym_RBRACE,
STATE(14), 1,
sym_ttc,
STATE(133), 1,
sym_preconditions,
STATE(186), 1,
sym_reaching,
ACTIONS(33), 2,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
ACTIONS(45), 2,
anon_sym_let,
sym_step_type,
STATE(15), 2,
sym_meta,
aux_sym_category_declaration_repeat1,
STATE(31), 2,
sym_detector,
aux_sym_attack_step_repeat2,
[159] = 14,
ACTIONS(15), 1,
sym_identifier,
ACTIONS(17), 1,
sym_comment,
ACTIONS(27), 1,
anon_sym_BANG,
ACTIONS(29), 1,
anon_sym_SLASH_SLASH_BANG,
ACTIONS(31), 1,
anon_sym_LT_DASH,
ACTIONS(35), 1,
anon_sym_LBRACK,
ACTIONS(47), 1,
anon_sym_RBRACE,
STATE(13), 1,
sym_ttc,
STATE(120), 1,
sym_preconditions,
STATE(219), 1,
sym_reaching,
ACTIONS(33), 2,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
ACTIONS(49), 2,
anon_sym_let,
sym_step_type,
STATE(16), 2,
sym_meta,
aux_sym_category_declaration_repeat1,
STATE(39), 2,
sym_detector,
aux_sym_attack_step_repeat2,
[206] = 12,
ACTIONS(15), 1,
sym_identifier,
ACTIONS(17), 1,
sym_comment,
ACTIONS(27), 1,
anon_sym_BANG,
ACTIONS(29), 1,
anon_sym_SLASH_SLASH_BANG,
ACTIONS(31), 1,
anon_sym_LT_DASH,
ACTIONS(51), 1,
anon_sym_RBRACE,
STATE(97), 1,
sym_preconditions,
STATE(264), 1,
sym_reaching,
ACTIONS(33), 2,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
ACTIONS(53), 2,
anon_sym_let,
sym_step_type,
STATE(30), 2,
sym_detector,
aux_sym_attack_step_repeat2,
STATE(48), 2,
sym_meta,
aux_sym_category_declaration_repeat1,
[247] = 12,
ACTIONS(15), 1,
sym_identifier,
ACTIONS(17), 1,
sym_comment,
ACTIONS(27), 1,
anon_sym_BANG,
ACTIONS(29), 1,
anon_sym_SLASH_SLASH_BANG,
ACTIONS(31), 1,
anon_sym_LT_DASH,
ACTIONS(55), 1,
anon_sym_RBRACE,
STATE(96), 1,
sym_preconditions,
STATE(244), 1,
sym_reaching,
ACTIONS(33), 2,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
ACTIONS(57), 2,
anon_sym_let,
sym_step_type,
STATE(8), 2,
sym_meta,
aux_sym_category_declaration_repeat1,
STATE(27), 2,
sym_detector,
aux_sym_attack_step_repeat2,
[288] = 12,
ACTIONS(15), 1,
sym_identifier,
ACTIONS(17), 1,
sym_comment,
ACTIONS(27), 1,
anon_sym_BANG,
ACTIONS(29), 1,
anon_sym_SLASH_SLASH_BANG,
ACTIONS(31), 1,
anon_sym_LT_DASH,
ACTIONS(59), 1,
anon_sym_RBRACE,
STATE(103), 1,
sym_preconditions,
STATE(170), 1,
sym_reaching,
ACTIONS(33), 2,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
ACTIONS(61), 2,
anon_sym_let,
sym_step_type,
STATE(33), 2,
sym_detector,
aux_sym_attack_step_repeat2,
STATE(48), 2,
sym_meta,
aux_sym_category_declaration_repeat1,
[329] = 12,
ACTIONS(15), 1,
sym_identifier,
ACTIONS(17), 1,
sym_comment,
ACTIONS(27), 1,
anon_sym_BANG,
ACTIONS(29), 1,
anon_sym_SLASH_SLASH_BANG,
ACTIONS(31), 1,
anon_sym_LT_DASH,
ACTIONS(63), 1,
anon_sym_RBRACE,
STATE(106), 1,
sym_preconditions,
STATE(176), 1,
sym_reaching,
ACTIONS(33), 2,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
ACTIONS(65), 2,
anon_sym_let,
sym_step_type,
STATE(11), 2,
sym_meta,
aux_sym_category_declaration_repeat1,
STATE(36), 2,
sym_detector,
aux_sym_attack_step_repeat2,
[370] = 12,
ACTIONS(15), 1,
sym_identifier,
ACTIONS(17), 1,
sym_comment,
ACTIONS(27), 1,
anon_sym_BANG,
ACTIONS(29), 1,
anon_sym_SLASH_SLASH_BANG,
ACTIONS(31), 1,
anon_sym_LT_DASH,
ACTIONS(67), 1,
anon_sym_RBRACE,
STATE(107), 1,
sym_preconditions,
STATE(178), 1,
sym_reaching,
ACTIONS(33), 2,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
ACTIONS(69), 2,
anon_sym_let,
sym_step_type,
STATE(26), 2,
sym_detector,
aux_sym_attack_step_repeat2,
STATE(48), 2,
sym_meta,
aux_sym_category_declaration_repeat1,
[411] = 12,
ACTIONS(15), 1,
sym_identifier,
ACTIONS(17), 1,
sym_comment,
ACTIONS(27), 1,
anon_sym_BANG,
ACTIONS(29), 1,
anon_sym_SLASH_SLASH_BANG,
ACTIONS(31), 1,
anon_sym_LT_DASH,
ACTIONS(71), 1,
anon_sym_RBRACE,
STATE(114), 1,
sym_preconditions,
STATE(202), 1,
sym_reaching,
ACTIONS(33), 2,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
ACTIONS(73), 2,
anon_sym_let,
sym_step_type,
STATE(32), 2,
sym_detector,
aux_sym_attack_step_repeat2,
STATE(48), 2,
sym_meta,
aux_sym_category_declaration_repeat1,
[452] = 12,
ACTIONS(15), 1,
sym_identifier,
ACTIONS(17), 1,
sym_comment,
ACTIONS(27), 1,
anon_sym_BANG,
ACTIONS(29), 1,
anon_sym_SLASH_SLASH_BANG,
ACTIONS(31), 1,
anon_sym_LT_DASH,
ACTIONS(75), 1,
anon_sym_RBRACE,
STATE(94), 1,
sym_preconditions,
STATE(249), 1,
sym_reaching,
ACTIONS(33), 2,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
ACTIONS(77), 2,
anon_sym_let,
sym_step_type,
STATE(43), 2,
sym_detector,
aux_sym_attack_step_repeat2,
STATE(48), 2,
sym_meta,
aux_sym_category_declaration_repeat1,
[493] = 12,
ACTIONS(15), 1,
sym_identifier,
ACTIONS(17), 1,
sym_comment,
ACTIONS(27), 1,
anon_sym_BANG,
ACTIONS(29), 1,
anon_sym_SLASH_SLASH_BANG,
ACTIONS(31), 1,
anon_sym_LT_DASH,
ACTIONS(79), 1,
anon_sym_RBRACE,
STATE(125), 1,
sym_preconditions,
STATE(235), 1,
sym_reaching,
ACTIONS(33), 2,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
ACTIONS(81), 2,
anon_sym_let,
sym_step_type,
STATE(12), 2,
sym_meta,
aux_sym_category_declaration_repeat1,
STATE(42), 2,
sym_detector,
aux_sym_attack_step_repeat2,
[534] = 12,
ACTIONS(15), 1,
sym_identifier,
ACTIONS(17), 1,
sym_comment,
ACTIONS(27), 1,
anon_sym_BANG,
ACTIONS(29), 1,
anon_sym_SLASH_SLASH_BANG,
ACTIONS(31), 1,
anon_sym_LT_DASH,
ACTIONS(83), 1,
anon_sym_RBRACE,
STATE(117), 1,
sym_preconditions,
STATE(209), 1,
sym_reaching,
ACTIONS(33), 2,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
ACTIONS(85), 2,
anon_sym_let,
sym_step_type,
STATE(17), 2,
sym_meta,
aux_sym_category_declaration_repeat1,
STATE(34), 2,
sym_detector,
aux_sym_attack_step_repeat2,
[575] = 12,
ACTIONS(15), 1,
sym_identifier,
ACTIONS(17), 1,
sym_comment,
ACTIONS(27), 1,
anon_sym_BANG,
ACTIONS(29), 1,
anon_sym_SLASH_SLASH_BANG,
ACTIONS(31), 1,
anon_sym_LT_DASH,
ACTIONS(87), 1,
anon_sym_RBRACE,
STATE(118), 1,
sym_preconditions,
STATE(265), 1,
sym_reaching,
ACTIONS(33), 2,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
ACTIONS(89), 2,
anon_sym_let,
sym_step_type,
STATE(35), 2,
sym_detector,
aux_sym_attack_step_repeat2,
STATE(48), 2,
sym_meta,
aux_sym_category_declaration_repeat1,
[616] = 12,
ACTIONS(15), 1,
sym_identifier,
ACTIONS(17), 1,
sym_comment,
ACTIONS(27), 1,
anon_sym_BANG,
ACTIONS(29), 1,
anon_sym_SLASH_SLASH_BANG,
ACTIONS(31), 1,
anon_sym_LT_DASH,
ACTIONS(91), 1,
anon_sym_RBRACE,
STATE(127), 1,
sym_preconditions,
STATE(238), 1,
sym_reaching,
ACTIONS(33), 2,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
ACTIONS(93), 2,
anon_sym_let,
sym_step_type,
STATE(37), 2,
sym_detector,
aux_sym_attack_step_repeat2,
STATE(48), 2,
sym_meta,
aux_sym_category_declaration_repeat1,
[657] = 12,
ACTIONS(15), 1,
sym_identifier,
ACTIONS(17), 1,
sym_comment,
ACTIONS(27), 1,
anon_sym_BANG,
ACTIONS(29), 1,
anon_sym_SLASH_SLASH_BANG,
ACTIONS(31), 1,
anon_sym_LT_DASH,
ACTIONS(95), 1,
anon_sym_RBRACE,
STATE(122), 1,
sym_preconditions,
STATE(226), 1,
sym_reaching,
ACTIONS(33), 2,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
ACTIONS(97), 2,
anon_sym_let,
sym_step_type,
STATE(40), 2,
sym_detector,
aux_sym_attack_step_repeat2,
STATE(48), 2,
sym_meta,
aux_sym_category_declaration_repeat1,
[698] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(101), 1,
anon_sym_LPAREN,
ACTIONS(103), 1,
anon_sym_DASH,
ACTIONS(99), 12,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
anon_sym_COMMA,
anon_sym_DOT,
anon_sym_RPAREN,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
anon_sym_LBRACK,
anon_sym_STAR,
anon_sym_BSLASH_SLASH,
anon_sym_SLASH_BSLASH,
[722] = 5,
ACTIONS(17), 1,
sym_comment,
ACTIONS(109), 1,
anon_sym_AT,
STATE(19), 1,
aux_sym_attack_step_repeat1,
ACTIONS(105), 4,
anon_sym_let,
sym_step_type,
anon_sym_BANG,
sym_identifier,
ACTIONS(107), 7,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_SLASH_SLASH_BANG,
anon_sym_LT_DASH,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
anon_sym_LBRACK,
[747] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(114), 1,
anon_sym_DASH,
ACTIONS(112), 12,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
anon_sym_COMMA,
anon_sym_DOT,
anon_sym_RPAREN,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
anon_sym_LBRACK,
anon_sym_STAR,
anon_sym_BSLASH_SLASH,
anon_sym_SLASH_BSLASH,
[768] = 6,
ACTIONS(3), 1,
sym_comment,
ACTIONS(118), 1,
anon_sym_DOT,
ACTIONS(120), 1,
anon_sym_LBRACK,
ACTIONS(122), 1,
anon_sym_DASH,
ACTIONS(124), 1,
anon_sym_STAR,
ACTIONS(116), 9,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
anon_sym_COMMA,
anon_sym_RPAREN,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
anon_sym_BSLASH_SLASH,
anon_sym_SLASH_BSLASH,
[795] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(120), 1,
anon_sym_LBRACK,
ACTIONS(122), 1,
anon_sym_DASH,
ACTIONS(124), 1,
anon_sym_STAR,
ACTIONS(116), 10,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
anon_sym_COMMA,
anon_sym_DOT,
anon_sym_RPAREN,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
anon_sym_BSLASH_SLASH,
anon_sym_SLASH_BSLASH,
[820] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(128), 1,
anon_sym_DASH,
ACTIONS(126), 12,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
anon_sym_COMMA,
anon_sym_DOT,
anon_sym_RPAREN,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
anon_sym_LBRACK,
anon_sym_STAR,
anon_sym_BSLASH_SLASH,
anon_sym_SLASH_BSLASH,
[841] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(132), 1,
anon_sym_DASH,
ACTIONS(130), 12,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
anon_sym_COMMA,
anon_sym_DOT,
anon_sym_RPAREN,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
anon_sym_LBRACK,
anon_sym_STAR,
anon_sym_BSLASH_SLASH,
anon_sym_SLASH_BSLASH,
[862] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(136), 1,
anon_sym_DASH,
ACTIONS(134), 12,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
anon_sym_COMMA,
anon_sym_DOT,
anon_sym_RPAREN,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
anon_sym_LBRACK,
anon_sym_STAR,
anon_sym_BSLASH_SLASH,
anon_sym_SLASH_BSLASH,
[883] = 9,
ACTIONS(17), 1,
sym_comment,
ACTIONS(27), 1,
anon_sym_BANG,
ACTIONS(29), 1,
anon_sym_SLASH_SLASH_BANG,
ACTIONS(31), 1,
anon_sym_LT_DASH,
STATE(116), 1,
sym_preconditions,
STATE(206), 1,
sym_reaching,
ACTIONS(33), 2,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
STATE(54), 2,
sym_detector,
aux_sym_attack_step_repeat2,
ACTIONS(138), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[915] = 9,
ACTIONS(17), 1,
sym_comment,
ACTIONS(27), 1,
anon_sym_BANG,
ACTIONS(29), 1,
anon_sym_SLASH_SLASH_BANG,
ACTIONS(31), 1,
anon_sym_LT_DASH,
STATE(104), 1,
sym_preconditions,
STATE(171), 1,
sym_reaching,
ACTIONS(33), 2,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
STATE(54), 2,
sym_detector,
aux_sym_attack_step_repeat2,
ACTIONS(140), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[947] = 9,
ACTIONS(17), 1,
sym_comment,
ACTIONS(27), 1,
anon_sym_BANG,
ACTIONS(29), 1,
anon_sym_SLASH_SLASH_BANG,
ACTIONS(31), 1,
anon_sym_LT_DASH,
STATE(109), 1,
sym_preconditions,
STATE(179), 1,
sym_reaching,
ACTIONS(33), 2,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
STATE(54), 2,
sym_detector,
aux_sym_attack_step_repeat2,
ACTIONS(142), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[979] = 9,
ACTIONS(17), 1,
sym_comment,
ACTIONS(27), 1,
anon_sym_BANG,
ACTIONS(29), 1,
anon_sym_SLASH_SLASH_BANG,
ACTIONS(31), 1,
anon_sym_LT_DASH,
STATE(99), 1,
sym_preconditions,
STATE(191), 1,
sym_reaching,
ACTIONS(33), 2,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
STATE(54), 2,
sym_detector,
aux_sym_attack_step_repeat2,
ACTIONS(144), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[1011] = 9,
ACTIONS(17), 1,
sym_comment,
ACTIONS(27), 1,
anon_sym_BANG,
ACTIONS(29), 1,
anon_sym_SLASH_SLASH_BANG,
ACTIONS(31), 1,
anon_sym_LT_DASH,
STATE(105), 1,
sym_preconditions,
STATE(173), 1,
sym_reaching,
ACTIONS(33), 2,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
STATE(54), 2,
sym_detector,
aux_sym_attack_step_repeat2,
ACTIONS(146), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[1043] = 9,
ACTIONS(17), 1,
sym_comment,
ACTIONS(27), 1,
anon_sym_BANG,
ACTIONS(29), 1,
anon_sym_SLASH_SLASH_BANG,
ACTIONS(31), 1,
anon_sym_LT_DASH,
STATE(119), 1,
sym_preconditions,
STATE(213), 1,
sym_reaching,
ACTIONS(33), 2,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
STATE(54), 2,
sym_detector,
aux_sym_attack_step_repeat2,
ACTIONS(148), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[1075] = 9,
ACTIONS(17), 1,
sym_comment,
ACTIONS(27), 1,
anon_sym_BANG,
ACTIONS(29), 1,
anon_sym_SLASH_SLASH_BANG,
ACTIONS(31), 1,
anon_sym_LT_DASH,
STATE(121), 1,
sym_preconditions,
STATE(222), 1,
sym_reaching,
ACTIONS(33), 2,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
STATE(54), 2,
sym_detector,
aux_sym_attack_step_repeat2,
ACTIONS(150), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[1107] = 9,
ACTIONS(17), 1,
sym_comment,
ACTIONS(27), 1,
anon_sym_BANG,
ACTIONS(29), 1,
anon_sym_SLASH_SLASH_BANG,
ACTIONS(31), 1,
anon_sym_LT_DASH,
STATE(113), 1,
sym_preconditions,
STATE(198), 1,
sym_reaching,
ACTIONS(33), 2,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
STATE(54), 2,
sym_detector,
aux_sym_attack_step_repeat2,
ACTIONS(152), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[1139] = 9,
ACTIONS(17), 1,
sym_comment,
ACTIONS(27), 1,
anon_sym_BANG,
ACTIONS(29), 1,
anon_sym_SLASH_SLASH_BANG,
ACTIONS(31), 1,
anon_sym_LT_DASH,
STATE(123), 1,
sym_preconditions,
STATE(228), 1,
sym_reaching,
ACTIONS(33), 2,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
STATE(54), 2,
sym_detector,
aux_sym_attack_step_repeat2,
ACTIONS(154), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[1171] = 9,
ACTIONS(17), 1,
sym_comment,
ACTIONS(27), 1,
anon_sym_BANG,
ACTIONS(29), 1,
anon_sym_SLASH_SLASH_BANG,
ACTIONS(31), 1,
anon_sym_LT_DASH,
STATE(124), 1,
sym_preconditions,
STATE(231), 1,
sym_reaching,
ACTIONS(33), 2,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
STATE(54), 2,
sym_detector,
aux_sym_attack_step_repeat2,
ACTIONS(156), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[1203] = 9,
ACTIONS(17), 1,
sym_comment,
ACTIONS(27), 1,
anon_sym_BANG,
ACTIONS(29), 1,
anon_sym_SLASH_SLASH_BANG,
ACTIONS(31), 1,
anon_sym_LT_DASH,
STATE(115), 1,
sym_preconditions,
STATE(204), 1,
sym_reaching,
ACTIONS(33), 2,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
STATE(54), 2,
sym_detector,
aux_sym_attack_step_repeat2,
ACTIONS(158), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[1235] = 9,
ACTIONS(17), 1,
sym_comment,
ACTIONS(27), 1,
anon_sym_BANG,
ACTIONS(29), 1,
anon_sym_SLASH_SLASH_BANG,
ACTIONS(31), 1,
anon_sym_LT_DASH,
STATE(131), 1,
sym_preconditions,
STATE(252), 1,
sym_reaching,
ACTIONS(33), 2,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
STATE(54), 2,
sym_detector,
aux_sym_attack_step_repeat2,
ACTIONS(160), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[1267] = 7,
ACTIONS(3), 1,
sym_comment,
ACTIONS(118), 1,
anon_sym_DOT,
ACTIONS(120), 1,
anon_sym_LBRACK,
ACTIONS(124), 1,
anon_sym_STAR,
ACTIONS(164), 1,
anon_sym_DASH,
ACTIONS(166), 2,
anon_sym_BSLASH_SLASH,
anon_sym_SLASH_BSLASH,
ACTIONS(162), 6,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
anon_sym_COMMA,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
[1295] = 9,
ACTIONS(17), 1,
sym_comment,
ACTIONS(27), 1,
anon_sym_BANG,
ACTIONS(29), 1,
anon_sym_SLASH_SLASH_BANG,
ACTIONS(31), 1,
anon_sym_LT_DASH,
STATE(128), 1,
sym_preconditions,
STATE(241), 1,
sym_reaching,
ACTIONS(33), 2,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
STATE(54), 2,
sym_detector,
aux_sym_attack_step_repeat2,
ACTIONS(168), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[1327] = 9,
ACTIONS(17), 1,
sym_comment,
ACTIONS(27), 1,
anon_sym_BANG,
ACTIONS(29), 1,
anon_sym_SLASH_SLASH_BANG,
ACTIONS(31), 1,
anon_sym_LT_DASH,
STATE(129), 1,
sym_preconditions,
STATE(245), 1,
sym_reaching,
ACTIONS(33), 2,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
STATE(54), 2,
sym_detector,
aux_sym_attack_step_repeat2,
ACTIONS(170), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[1359] = 3,
ACTIONS(17), 1,
sym_comment,
ACTIONS(105), 4,
anon_sym_let,
sym_step_type,
anon_sym_BANG,
sym_identifier,
ACTIONS(107), 8,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_AT,
anon_sym_SLASH_SLASH_BANG,
anon_sym_LT_DASH,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
anon_sym_LBRACK,
[1379] = 9,
ACTIONS(17), 1,
sym_comment,
ACTIONS(27), 1,
anon_sym_BANG,
ACTIONS(29), 1,
anon_sym_SLASH_SLASH_BANG,
ACTIONS(31), 1,
anon_sym_LT_DASH,
STATE(130), 1,
sym_preconditions,
STATE(250), 1,
sym_reaching,
ACTIONS(33), 2,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
STATE(54), 2,
sym_detector,
aux_sym_attack_step_repeat2,
ACTIONS(172), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[1411] = 9,
ACTIONS(17), 1,
sym_comment,
ACTIONS(27), 1,
anon_sym_BANG,
ACTIONS(29), 1,
anon_sym_SLASH_SLASH_BANG,
ACTIONS(31), 1,
anon_sym_LT_DASH,
STATE(110), 1,
sym_preconditions,
STATE(257), 1,
sym_reaching,
ACTIONS(33), 2,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
STATE(54), 2,
sym_detector,
aux_sym_attack_step_repeat2,
ACTIONS(174), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[1443] = 6,
ACTIONS(17), 1,
sym_comment,
ACTIONS(176), 1,
sym_identifier,
ACTIONS(182), 1,
anon_sym_LBRACK,
STATE(67), 1,
sym_ttc,
ACTIONS(180), 3,
anon_sym_let,
sym_step_type,
anon_sym_BANG,
ACTIONS(178), 5,
anon_sym_RBRACE,
anon_sym_SLASH_SLASH_BANG,
anon_sym_LT_DASH,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
[1468] = 8,
ACTIONS(3), 1,
sym_comment,
ACTIONS(184), 1,
ts_builtin_sym_end,
ACTIONS(186), 1,
anon_sym_include,
ACTIONS(189), 1,
anon_sym_category,
ACTIONS(192), 1,
anon_sym_POUND,
ACTIONS(195), 1,
anon_sym_associations,
STATE(45), 2,
sym_declaration,
aux_sym_source_file_repeat1,
STATE(143), 4,
sym_include_declaration,
sym_category_declaration,
sym_define_declaration,
sym_associations_declaration,
[1497] = 8,
ACTIONS(3), 1,
sym_comment,
ACTIONS(7), 1,
anon_sym_include,
ACTIONS(9), 1,
anon_sym_category,
ACTIONS(11), 1,
anon_sym_POUND,
ACTIONS(13), 1,
anon_sym_associations,
ACTIONS(198), 1,
ts_builtin_sym_end,
STATE(45), 2,
sym_declaration,
aux_sym_source_file_repeat1,
STATE(143), 4,
sym_include_declaration,
sym_category_declaration,
sym_define_declaration,
sym_associations_declaration,
[1526] = 6,
ACTIONS(17), 1,
sym_comment,
ACTIONS(182), 1,
anon_sym_LBRACK,
ACTIONS(200), 1,
sym_identifier,
STATE(70), 1,
sym_ttc,
ACTIONS(204), 3,
anon_sym_let,
sym_step_type,
anon_sym_BANG,
ACTIONS(202), 5,
anon_sym_RBRACE,
anon_sym_SLASH_SLASH_BANG,
anon_sym_LT_DASH,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
[1551] = 5,
ACTIONS(17), 1,
sym_comment,
ACTIONS(206), 1,
sym_identifier,
STATE(48), 2,
sym_meta,
aux_sym_category_declaration_repeat1,
ACTIONS(211), 3,
anon_sym_let,
sym_step_type,
anon_sym_BANG,
ACTIONS(209), 5,
anon_sym_RBRACE,
anon_sym_SLASH_SLASH_BANG,
anon_sym_LT_DASH,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
[1574] = 3,
ACTIONS(17), 1,
sym_comment,
ACTIONS(213), 4,
anon_sym_let,
sym_step_type,
anon_sym_BANG,
sym_identifier,
ACTIONS(215), 6,
anon_sym_RBRACE,
anon_sym_SLASH_SLASH_BANG,
anon_sym_LT_DASH,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
anon_sym_LBRACK,
[1592] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(217), 1,
sym_identifier,
ACTIONS(219), 1,
anon_sym_LPAREN,
ACTIONS(221), 2,
sym_integer,
sym_float,
STATE(102), 6,
sym__ttc_expr,
sym__ttc_parenthesized,
sym__ttc_primary,
sym_ttc_distribution,
sym_ttc_binop,
sym__number,
[1614] = 5,
ACTIONS(17), 1,
sym_comment,
ACTIONS(182), 1,
anon_sym_LBRACK,
ACTIONS(225), 1,
anon_sym_BANG,
STATE(72), 1,
sym_ttc,
ACTIONS(223), 7,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
anon_sym_SLASH_SLASH_BANG,
anon_sym_LT_DASH,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
[1636] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(217), 1,
sym_identifier,
ACTIONS(219), 1,
anon_sym_LPAREN,
ACTIONS(227), 2,
sym_integer,
sym_float,
STATE(95), 6,
sym__ttc_expr,
sym__ttc_parenthesized,
sym__ttc_primary,
sym_ttc_distribution,
sym_ttc_binop,
sym__number,
[1658] = 3,
ACTIONS(17), 1,
sym_comment,
ACTIONS(229), 4,
anon_sym_let,
sym_step_type,
anon_sym_BANG,
sym_identifier,
ACTIONS(231), 6,
anon_sym_RBRACE,
anon_sym_SLASH_SLASH_BANG,
anon_sym_LT_DASH,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
anon_sym_LBRACK,
[1676] = 5,
ACTIONS(17), 1,
sym_comment,
ACTIONS(235), 1,
anon_sym_BANG,
ACTIONS(238), 1,
anon_sym_SLASH_SLASH_BANG,
STATE(54), 2,
sym_detector,
aux_sym_attack_step_repeat2,
ACTIONS(233), 6,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
anon_sym_LT_DASH,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
[1698] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(217), 1,
sym_identifier,
ACTIONS(219), 1,
anon_sym_LPAREN,
ACTIONS(241), 2,
sym_integer,
sym_float,
STATE(132), 6,
sym__ttc_expr,
sym__ttc_parenthesized,
sym__ttc_primary,
sym_ttc_distribution,
sym_ttc_binop,
sym__number,
[1720] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(217), 1,
sym_identifier,
ACTIONS(219), 1,
anon_sym_LPAREN,
ACTIONS(243), 2,
sym_integer,
sym_float,
STATE(87), 6,
sym__ttc_expr,
sym__ttc_parenthesized,
sym__ttc_primary,
sym_ttc_distribution,
sym_ttc_binop,
sym__number,
[1742] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(217), 1,
sym_identifier,
ACTIONS(219), 1,
anon_sym_LPAREN,
ACTIONS(245), 2,
sym_integer,
sym_float,
STATE(75), 6,
sym__ttc_expr,
sym__ttc_parenthesized,
sym__ttc_primary,
sym_ttc_distribution,
sym_ttc_binop,
sym__number,
[1764] = 5,
ACTIONS(17), 1,
sym_comment,
ACTIONS(182), 1,
anon_sym_LBRACK,
ACTIONS(249), 1,
anon_sym_BANG,
STATE(68), 1,
sym_ttc,
ACTIONS(247), 7,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
anon_sym_SLASH_SLASH_BANG,
anon_sym_LT_DASH,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
[1786] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(217), 1,
sym_identifier,
ACTIONS(219), 1,
anon_sym_LPAREN,
ACTIONS(251), 2,
sym_integer,
sym_float,
STATE(85), 6,
sym__ttc_expr,
sym__ttc_parenthesized,
sym__ttc_primary,
sym_ttc_distribution,
sym_ttc_binop,
sym__number,
[1808] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(253), 1,
sym_identifier,
ACTIONS(255), 1,
anon_sym_LPAREN,
STATE(240), 1,
sym_asset_expr,
STATE(38), 6,
sym__inline_asset_expr,
sym__asset_expr_primary,
sym_asset_variable_substitution,
sym_asset_expr_type,
sym_asset_expr_binop,
sym_asset_expr_unop,
[1829] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(253), 1,
sym_identifier,
ACTIONS(255), 1,
anon_sym_LPAREN,
STATE(152), 1,
sym_asset_expr,
STATE(38), 6,
sym__inline_asset_expr,
sym__asset_expr_primary,
sym_asset_variable_substitution,
sym_asset_expr_type,
sym_asset_expr_binop,
sym_asset_expr_unop,
[1850] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(253), 1,
sym_identifier,
ACTIONS(255), 1,
anon_sym_LPAREN,
STATE(91), 1,
sym_asset_expr,
STATE(38), 6,
sym__inline_asset_expr,
sym__asset_expr_primary,
sym_asset_variable_substitution,
sym_asset_expr_type,
sym_asset_expr_binop,
sym_asset_expr_unop,
[1871] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(253), 1,
sym_identifier,
ACTIONS(255), 1,
anon_sym_LPAREN,
STATE(111), 1,
sym_asset_expr,
STATE(38), 6,
sym__inline_asset_expr,
sym__asset_expr_primary,
sym_asset_variable_substitution,
sym_asset_expr_type,
sym_asset_expr_binop,
sym_asset_expr_unop,
[1892] = 3,
ACTIONS(17), 1,
sym_comment,
ACTIONS(257), 4,
anon_sym_let,
sym_step_type,
anon_sym_BANG,
sym_identifier,
ACTIONS(259), 5,
anon_sym_RBRACE,
anon_sym_SLASH_SLASH_BANG,
anon_sym_LT_DASH,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
[1909] = 3,
ACTIONS(17), 1,
sym_comment,
ACTIONS(261), 4,
anon_sym_let,
sym_step_type,
anon_sym_BANG,
sym_identifier,
ACTIONS(263), 5,
anon_sym_RBRACE,
anon_sym_SLASH_SLASH_BANG,
anon_sym_LT_DASH,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
[1926] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(265), 1,
anon_sym_LPAREN,
ACTIONS(269), 1,
anon_sym_SLASH,
ACTIONS(267), 6,
anon_sym_RPAREN,
anon_sym_RBRACK,
anon_sym_PLUS,
anon_sym_DASH,
anon_sym_STAR,
anon_sym_CARET,
[1944] = 3,
ACTIONS(17), 1,
sym_comment,
ACTIONS(273), 1,
anon_sym_BANG,
ACTIONS(271), 7,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
anon_sym_SLASH_SLASH_BANG,
anon_sym_LT_DASH,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
[1960] = 3,
ACTIONS(17), 1,
sym_comment,
ACTIONS(277), 1,
anon_sym_BANG,
ACTIONS(275), 7,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
anon_sym_SLASH_SLASH_BANG,
anon_sym_LT_DASH,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
[1976] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(253), 1,
sym_identifier,
ACTIONS(255), 1,
anon_sym_LPAREN,
STATE(22), 6,
sym__inline_asset_expr,
sym__asset_expr_primary,
sym_asset_variable_substitution,
sym_asset_expr_type,
sym_asset_expr_binop,
sym_asset_expr_unop,
[1994] = 3,
ACTIONS(17), 1,
sym_comment,
ACTIONS(281), 1,
anon_sym_BANG,
ACTIONS(279), 7,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
anon_sym_SLASH_SLASH_BANG,
anon_sym_LT_DASH,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
[2010] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(253), 1,
sym_identifier,
ACTIONS(255), 1,
anon_sym_LPAREN,
STATE(92), 6,
sym__inline_asset_expr,
sym__asset_expr_primary,
sym_asset_variable_substitution,
sym_asset_expr_type,
sym_asset_expr_binop,
sym_asset_expr_unop,
[2028] = 3,
ACTIONS(17), 1,
sym_comment,
ACTIONS(285), 1,
anon_sym_BANG,
ACTIONS(283), 7,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
anon_sym_SLASH_SLASH_BANG,
anon_sym_LT_DASH,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
[2044] = 3,
ACTIONS(17), 1,
sym_comment,
ACTIONS(257), 1,
anon_sym_BANG,
ACTIONS(259), 7,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
anon_sym_SLASH_SLASH_BANG,
anon_sym_LT_DASH,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
[2060] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(253), 1,
sym_identifier,
ACTIONS(255), 1,
anon_sym_LPAREN,
STATE(21), 6,
sym__inline_asset_expr,
sym__asset_expr_primary,
sym_asset_variable_substitution,
sym_asset_expr_type,
sym_asset_expr_binop,
sym_asset_expr_unop,
[2078] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(289), 1,
anon_sym_SLASH,
ACTIONS(291), 1,
anon_sym_CARET,
ACTIONS(287), 5,
anon_sym_RPAREN,
anon_sym_RBRACK,
anon_sym_PLUS,
anon_sym_DASH,
anon_sym_STAR,
[2095] = 6,
ACTIONS(3), 1,
sym_comment,
ACTIONS(293), 1,
anon_sym_RBRACE,
ACTIONS(295), 1,
anon_sym_let,
ACTIONS(297), 1,
sym_step_type,
STATE(318), 1,
sym_asset_definition,
STATE(108), 3,
sym_asset_variable,
sym_attack_step,
aux_sym_asset_definition_repeat1,
[2116] = 6,
ACTIONS(3), 1,
sym_comment,
ACTIONS(295), 1,
anon_sym_let,
ACTIONS(297), 1,
sym_step_type,
ACTIONS(299), 1,
anon_sym_RBRACE,
STATE(281), 1,
sym_asset_definition,
STATE(108), 3,
sym_asset_variable,
sym_attack_step,
aux_sym_asset_definition_repeat1,
[2137] = 6,
ACTIONS(3), 1,
sym_comment,
ACTIONS(295), 1,
anon_sym_let,
ACTIONS(297), 1,
sym_step_type,
ACTIONS(301), 1,
anon_sym_RBRACE,
STATE(306), 1,
sym_asset_definition,
STATE(108), 3,
sym_asset_variable,
sym_attack_step,
aux_sym_asset_definition_repeat1,
[2158] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(305), 1,
anon_sym_SLASH,
ACTIONS(303), 6,
anon_sym_RPAREN,
anon_sym_RBRACK,
anon_sym_PLUS,
anon_sym_DASH,
anon_sym_STAR,
anon_sym_CARET,
[2173] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(309), 1,
anon_sym_COMMA,
STATE(80), 1,
aux_sym_preconditions_repeat1,
ACTIONS(307), 5,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
[2190] = 6,
ACTIONS(3), 1,
sym_comment,
ACTIONS(295), 1,
anon_sym_let,
ACTIONS(297), 1,
sym_step_type,
ACTIONS(312), 1,
anon_sym_RBRACE,
STATE(323), 1,
sym_asset_definition,
STATE(108), 3,
sym_asset_variable,
sym_attack_step,
aux_sym_asset_definition_repeat1,
[2211] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(316), 1,
anon_sym_SLASH,
ACTIONS(314), 6,
anon_sym_RPAREN,
anon_sym_RBRACK,
anon_sym_PLUS,
anon_sym_DASH,
anon_sym_STAR,
anon_sym_CARET,
[2226] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(320), 1,
anon_sym_SLASH,
ACTIONS(318), 6,
anon_sym_RPAREN,
anon_sym_RBRACK,
anon_sym_PLUS,
anon_sym_DASH,
anon_sym_STAR,
anon_sym_CARET,
[2241] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(324), 1,
anon_sym_SLASH,
ACTIONS(322), 6,
anon_sym_RPAREN,
anon_sym_RBRACK,
anon_sym_PLUS,
anon_sym_DASH,
anon_sym_STAR,
anon_sym_CARET,
[2256] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(291), 1,
anon_sym_CARET,
ACTIONS(326), 1,
anon_sym_STAR,
ACTIONS(328), 1,
anon_sym_SLASH,
ACTIONS(287), 4,
anon_sym_RPAREN,
anon_sym_RBRACK,
anon_sym_PLUS,
anon_sym_DASH,
[2275] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(332), 1,
anon_sym_COMMA,
STATE(80), 1,
aux_sym_preconditions_repeat1,
ACTIONS(330), 5,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
[2292] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(289), 1,
anon_sym_SLASH,
ACTIONS(291), 1,
anon_sym_CARET,
ACTIONS(287), 5,
anon_sym_RPAREN,
anon_sym_RBRACK,
anon_sym_PLUS,
anon_sym_DASH,
anon_sym_STAR,
[2309] = 6,
ACTIONS(3), 1,
sym_comment,
ACTIONS(295), 1,
anon_sym_let,
ACTIONS(297), 1,
sym_step_type,
ACTIONS(334), 1,
anon_sym_RBRACE,
STATE(321), 1,
sym_asset_definition,
STATE(108), 3,
sym_asset_variable,
sym_attack_step,
aux_sym_asset_definition_repeat1,
[2330] = 6,
ACTIONS(3), 1,
sym_comment,
ACTIONS(295), 1,
anon_sym_let,
ACTIONS(297), 1,
sym_step_type,
ACTIONS(336), 1,
anon_sym_RBRACE,
STATE(278), 1,
sym_asset_definition,
STATE(108), 3,
sym_asset_variable,
sym_attack_step,
aux_sym_asset_definition_repeat1,
[2351] = 6,
ACTIONS(3), 1,
sym_comment,
ACTIONS(295), 1,
anon_sym_let,
ACTIONS(297), 1,
sym_step_type,
ACTIONS(338), 1,
anon_sym_RBRACE,
STATE(313), 1,
sym_asset_definition,
STATE(108), 3,
sym_asset_variable,
sym_attack_step,
aux_sym_asset_definition_repeat1,
[2372] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(332), 1,
anon_sym_COMMA,
STATE(86), 1,
aux_sym_preconditions_repeat1,
ACTIONS(340), 5,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
[2389] = 6,
ACTIONS(3), 1,
sym_comment,
ACTIONS(118), 1,
anon_sym_DOT,
ACTIONS(120), 1,
anon_sym_LBRACK,
ACTIONS(124), 1,
anon_sym_STAR,
ACTIONS(342), 1,
anon_sym_RPAREN,
ACTIONS(166), 3,
anon_sym_DASH,
anon_sym_BSLASH_SLASH,
anon_sym_SLASH_BSLASH,
[2410] = 6,
ACTIONS(3), 1,
sym_comment,
ACTIONS(295), 1,
anon_sym_let,
ACTIONS(297), 1,
sym_step_type,
ACTIONS(344), 1,
anon_sym_RBRACE,
STATE(283), 1,
sym_asset_definition,
STATE(108), 3,
sym_asset_variable,
sym_attack_step,
aux_sym_asset_definition_repeat1,
[2431] = 4,
ACTIONS(3), 1,
sym_comment,
STATE(255), 1,
sym_reaching,
ACTIONS(33), 2,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
ACTIONS(346), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[2447] = 6,
ACTIONS(3), 1,
sym_comment,
ACTIONS(291), 1,
anon_sym_CARET,
ACTIONS(326), 1,
anon_sym_STAR,
ACTIONS(328), 1,
anon_sym_SLASH,
ACTIONS(348), 1,
anon_sym_RBRACK,
ACTIONS(350), 2,
anon_sym_PLUS,
anon_sym_DASH,
[2467] = 4,
ACTIONS(3), 1,
sym_comment,
STATE(262), 1,
sym_reaching,
ACTIONS(33), 2,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
ACTIONS(352), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[2483] = 4,
ACTIONS(3), 1,
sym_comment,
STATE(172), 1,
sym_reaching,
ACTIONS(33), 2,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
ACTIONS(354), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[2499] = 4,
ACTIONS(3), 1,
sym_comment,
STATE(174), 1,
sym_reaching,
ACTIONS(33), 2,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
ACTIONS(356), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[2515] = 4,
ACTIONS(3), 1,
sym_comment,
STATE(180), 1,
sym_reaching,
ACTIONS(33), 2,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
ACTIONS(358), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[2531] = 6,
ACTIONS(3), 1,
sym_comment,
ACTIONS(360), 1,
anon_sym_STAR,
ACTIONS(362), 1,
sym_integer,
STATE(269), 1,
sym_multiplicity_range,
STATE(290), 1,
sym_multiplicity,
STATE(187), 2,
sym__multiplicity_atom,
sym_star,
[2551] = 6,
ACTIONS(3), 1,
sym_comment,
ACTIONS(360), 1,
anon_sym_STAR,
ACTIONS(362), 1,
sym_integer,
STATE(269), 1,
sym_multiplicity_range,
STATE(316), 1,
sym_multiplicity,
STATE(187), 2,
sym__multiplicity_atom,
sym_star,
[2571] = 6,
ACTIONS(3), 1,
sym_comment,
ACTIONS(291), 1,
anon_sym_CARET,
ACTIONS(326), 1,
anon_sym_STAR,
ACTIONS(328), 1,
anon_sym_SLASH,
ACTIONS(364), 1,
anon_sym_RPAREN,
ACTIONS(350), 2,
anon_sym_PLUS,
anon_sym_DASH,
[2591] = 4,
ACTIONS(3), 1,
sym_comment,
STATE(197), 1,
sym_reaching,
ACTIONS(33), 2,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
ACTIONS(366), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[2607] = 4,
ACTIONS(3), 1,
sym_comment,
STATE(199), 1,
sym_reaching,
ACTIONS(33), 2,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
ACTIONS(368), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[2623] = 4,
ACTIONS(3), 1,
sym_comment,
STATE(200), 1,
sym_reaching,
ACTIONS(33), 2,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
ACTIONS(370), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[2639] = 4,
ACTIONS(3), 1,
sym_comment,
STATE(169), 1,
sym_reaching,
ACTIONS(33), 2,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
ACTIONS(372), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[2655] = 4,
ACTIONS(3), 1,
sym_comment,
STATE(205), 1,
sym_reaching,
ACTIONS(33), 2,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
ACTIONS(374), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[2671] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(295), 1,
anon_sym_let,
ACTIONS(297), 1,
sym_step_type,
ACTIONS(376), 1,
anon_sym_RBRACE,
STATE(112), 3,
sym_asset_variable,
sym_attack_step,
aux_sym_asset_definition_repeat1,
[2689] = 4,
ACTIONS(3), 1,
sym_comment,
STATE(207), 1,
sym_reaching,
ACTIONS(33), 2,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
ACTIONS(378), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[2705] = 4,
ACTIONS(3), 1,
sym_comment,
STATE(261), 1,
sym_reaching,
ACTIONS(33), 2,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
ACTIONS(380), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[2721] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(307), 6,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
anon_sym_COMMA,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
[2733] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(382), 1,
anon_sym_RBRACE,
ACTIONS(384), 1,
anon_sym_let,
ACTIONS(387), 1,
sym_step_type,
STATE(112), 3,
sym_asset_variable,
sym_attack_step,
aux_sym_asset_definition_repeat1,
[2751] = 4,
ACTIONS(3), 1,
sym_comment,
STATE(218), 1,
sym_reaching,
ACTIONS(33), 2,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
ACTIONS(390), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[2767] = 4,
ACTIONS(3), 1,
sym_comment,
STATE(221), 1,
sym_reaching,
ACTIONS(33), 2,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
ACTIONS(392), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[2783] = 4,
ACTIONS(3), 1,
sym_comment,
STATE(223), 1,
sym_reaching,
ACTIONS(33), 2,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
ACTIONS(394), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[2799] = 4,
ACTIONS(3), 1,
sym_comment,
STATE(224), 1,
sym_reaching,
ACTIONS(33), 2,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
ACTIONS(396), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[2815] = 4,
ACTIONS(3), 1,
sym_comment,
STATE(225), 1,
sym_reaching,
ACTIONS(33), 2,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
ACTIONS(398), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[2831] = 4,
ACTIONS(3), 1,
sym_comment,
STATE(229), 1,
sym_reaching,
ACTIONS(33), 2,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
ACTIONS(400), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[2847] = 4,
ACTIONS(3), 1,
sym_comment,
STATE(232), 1,
sym_reaching,
ACTIONS(33), 2,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
ACTIONS(402), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[2863] = 4,
ACTIONS(3), 1,
sym_comment,
STATE(234), 1,
sym_reaching,
ACTIONS(33), 2,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
ACTIONS(404), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[2879] = 4,
ACTIONS(3), 1,
sym_comment,
STATE(242), 1,
sym_reaching,
ACTIONS(33), 2,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
ACTIONS(406), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[2895] = 4,
ACTIONS(3), 1,
sym_comment,
STATE(243), 1,
sym_reaching,
ACTIONS(33), 2,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
ACTIONS(408), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[2911] = 4,
ACTIONS(3), 1,
sym_comment,
STATE(246), 1,
sym_reaching,
ACTIONS(33), 2,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
ACTIONS(410), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[2927] = 4,
ACTIONS(3), 1,
sym_comment,
STATE(247), 1,
sym_reaching,
ACTIONS(33), 2,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
ACTIONS(412), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[2943] = 4,
ACTIONS(3), 1,
sym_comment,
STATE(248), 1,
sym_reaching,
ACTIONS(33), 2,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
ACTIONS(414), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[2959] = 4,
ACTIONS(3), 1,
sym_comment,
STATE(237), 1,
sym_reaching,
ACTIONS(33), 2,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
ACTIONS(416), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[2975] = 4,
ACTIONS(3), 1,
sym_comment,
STATE(251), 1,
sym_reaching,
ACTIONS(33), 2,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
ACTIONS(418), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[2991] = 4,
ACTIONS(3), 1,
sym_comment,
STATE(253), 1,
sym_reaching,
ACTIONS(33), 2,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
ACTIONS(420), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[3007] = 4,
ACTIONS(3), 1,
sym_comment,
STATE(254), 1,
sym_reaching,
ACTIONS(33), 2,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
ACTIONS(422), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[3023] = 4,
ACTIONS(3), 1,
sym_comment,
STATE(258), 1,
sym_reaching,
ACTIONS(33), 2,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
ACTIONS(424), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[3039] = 4,
ACTIONS(3), 1,
sym_comment,
STATE(259), 1,
sym_reaching,
ACTIONS(33), 2,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
ACTIONS(426), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[3055] = 6,
ACTIONS(3), 1,
sym_comment,
ACTIONS(291), 1,
anon_sym_CARET,
ACTIONS(326), 1,
anon_sym_STAR,
ACTIONS(328), 1,
anon_sym_SLASH,
ACTIONS(428), 1,
anon_sym_RBRACK,
ACTIONS(350), 2,
anon_sym_PLUS,
anon_sym_DASH,
[3075] = 4,
ACTIONS(3), 1,
sym_comment,
STATE(208), 1,
sym_reaching,
ACTIONS(33), 2,
anon_sym_PLUS_GT,
anon_sym_DASH_GT,
ACTIONS(430), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[3091] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(432), 1,
anon_sym_RBRACE,
ACTIONS(434), 1,
anon_sym_abstract,
ACTIONS(436), 1,
anon_sym_asset,
STATE(141), 2,
sym_asset_declaration,
aux_sym_category_declaration_repeat2,
[3108] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(438), 5,
ts_builtin_sym_end,
anon_sym_include,
anon_sym_category,
anon_sym_POUND,
anon_sym_associations,
[3119] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(440), 1,
sym_identifier,
ACTIONS(209), 2,
anon_sym_LBRACE,
anon_sym_RBRACE,
STATE(136), 2,
sym_meta,
aux_sym_category_declaration_repeat1,
[3134] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(443), 1,
sym_identifier,
ACTIONS(445), 1,
anon_sym_LBRACE,
ACTIONS(447), 1,
anon_sym_extends,
STATE(168), 2,
sym_meta,
aux_sym_category_declaration_repeat1,
[3151] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(449), 5,
ts_builtin_sym_end,
anon_sym_include,
anon_sym_category,
anon_sym_POUND,
anon_sym_associations,
[3162] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(451), 1,
anon_sym_RBRACE,
ACTIONS(453), 1,
anon_sym_abstract,
ACTIONS(456), 1,
anon_sym_asset,
STATE(139), 2,
sym_asset_declaration,
aux_sym_category_declaration_repeat2,
[3179] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(459), 5,
ts_builtin_sym_end,
anon_sym_include,
anon_sym_category,
anon_sym_POUND,
anon_sym_associations,
[3190] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(434), 1,
anon_sym_abstract,
ACTIONS(436), 1,
anon_sym_asset,
ACTIONS(461), 1,
anon_sym_RBRACE,
STATE(139), 2,
sym_asset_declaration,
aux_sym_category_declaration_repeat2,
[3207] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(463), 5,
ts_builtin_sym_end,
anon_sym_include,
anon_sym_category,
anon_sym_POUND,
anon_sym_associations,
[3218] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(465), 5,
ts_builtin_sym_end,
anon_sym_include,
anon_sym_category,
anon_sym_POUND,
anon_sym_associations,
[3229] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(467), 5,
ts_builtin_sym_end,
anon_sym_include,
anon_sym_category,
anon_sym_POUND,
anon_sym_associations,
[3240] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(434), 1,
anon_sym_abstract,
ACTIONS(436), 1,
anon_sym_asset,
ACTIONS(469), 1,
anon_sym_RBRACE,
STATE(139), 2,
sym_asset_declaration,
aux_sym_category_declaration_repeat2,
[3257] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(443), 1,
sym_identifier,
ACTIONS(471), 1,
anon_sym_LBRACE,
ACTIONS(473), 1,
anon_sym_extends,
STATE(161), 2,
sym_meta,
aux_sym_category_declaration_repeat1,
[3274] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(475), 5,
ts_builtin_sym_end,
anon_sym_include,
anon_sym_category,
anon_sym_POUND,
anon_sym_associations,
[3285] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(477), 5,
ts_builtin_sym_end,
anon_sym_include,
anon_sym_category,
anon_sym_POUND,
anon_sym_associations,
[3296] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(434), 1,
anon_sym_abstract,
ACTIONS(436), 1,
anon_sym_asset,
ACTIONS(479), 1,
anon_sym_RBRACE,
STATE(145), 2,
sym_asset_declaration,
aux_sym_category_declaration_repeat2,
[3313] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(332), 1,
anon_sym_COMMA,
STATE(80), 1,
aux_sym_preconditions_repeat1,
ACTIONS(481), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[3328] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(483), 5,
ts_builtin_sym_end,
anon_sym_include,
anon_sym_category,
anon_sym_POUND,
anon_sym_associations,
[3339] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(332), 1,
anon_sym_COMMA,
STATE(150), 1,
aux_sym_preconditions_repeat1,
ACTIONS(485), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[3354] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(487), 1,
sym_identifier,
ACTIONS(490), 1,
anon_sym_RBRACE,
STATE(167), 2,
sym_meta,
aux_sym_category_declaration_repeat1,
[3368] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(492), 1,
sym_identifier,
ACTIONS(494), 1,
anon_sym_RBRACE,
STATE(165), 2,
sym_association,
aux_sym_associations_declaration_repeat1,
[3382] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(360), 1,
anon_sym_STAR,
ACTIONS(496), 1,
sym_integer,
STATE(274), 2,
sym__multiplicity_atom,
sym_star,
[3396] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(498), 1,
anon_sym_RPAREN,
STATE(194), 1,
sym__number,
ACTIONS(500), 2,
sym_integer,
sym_float,
[3410] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(502), 1,
sym_identifier,
ACTIONS(504), 1,
anon_sym_LBRACE,
STATE(162), 2,
sym_meta,
aux_sym_category_declaration_repeat1,
[3424] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(502), 1,
sym_identifier,
ACTIONS(506), 1,
anon_sym_LBRACE,
STATE(160), 2,
sym_meta,
aux_sym_category_declaration_repeat1,
[3438] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(502), 1,
sym_identifier,
ACTIONS(508), 1,
anon_sym_LBRACE,
STATE(136), 2,
sym_meta,
aux_sym_category_declaration_repeat1,
[3452] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(502), 1,
sym_identifier,
ACTIONS(510), 1,
anon_sym_LBRACE,
STATE(136), 2,
sym_meta,
aux_sym_category_declaration_repeat1,
[3466] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(502), 1,
sym_identifier,
ACTIONS(512), 1,
anon_sym_LBRACE,
STATE(136), 2,
sym_meta,
aux_sym_category_declaration_repeat1,
[3480] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(502), 1,
sym_identifier,
ACTIONS(514), 1,
anon_sym_LBRACE,
STATE(136), 2,
sym_meta,
aux_sym_category_declaration_repeat1,
[3494] = 5,
ACTIONS(3), 1,
sym_comment,
ACTIONS(516), 1,
sym_identifier,
ACTIONS(518), 1,
anon_sym_LPAREN,
STATE(47), 1,
sym_detector_context,
STATE(266), 1,
sym_detector_name,
[3510] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(502), 1,
sym_identifier,
ACTIONS(520), 1,
anon_sym_LBRACE,
STATE(159), 2,
sym_meta,
aux_sym_category_declaration_repeat1,
[3524] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(522), 1,
sym_identifier,
ACTIONS(525), 1,
anon_sym_RBRACE,
STATE(165), 2,
sym_association,
aux_sym_associations_declaration_repeat1,
[3538] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(492), 1,
sym_identifier,
ACTIONS(527), 1,
anon_sym_RBRACE,
STATE(154), 2,
sym_association,
aux_sym_associations_declaration_repeat1,
[3552] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(529), 1,
sym_identifier,
ACTIONS(532), 1,
anon_sym_RBRACE,
STATE(136), 2,
sym_meta,
aux_sym_category_declaration_repeat1,
[3566] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(502), 1,
sym_identifier,
ACTIONS(534), 1,
anon_sym_LBRACE,
STATE(136), 2,
sym_meta,
aux_sym_category_declaration_repeat1,
[3580] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(536), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[3589] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(538), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[3598] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(540), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[3607] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(542), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[3616] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(544), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[3625] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(546), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[3634] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(548), 3,
anon_sym_RBRACE,
anon_sym_abstract,
anon_sym_asset,
[3643] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(550), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[3652] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(552), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[3661] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(554), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[3670] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(556), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[3679] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(558), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[3688] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(560), 3,
anon_sym_RBRACE,
anon_sym_abstract,
anon_sym_asset,
[3697] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(562), 3,
anon_sym_RBRACE,
anon_sym_abstract,
anon_sym_asset,
[3706] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(564), 1,
anon_sym_DOT,
ACTIONS(566), 1,
anon_sym_LPAREN,
STATE(230), 1,
aux_sym_detector_name_repeat1,
[3719] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(568), 3,
anon_sym_LBRACK,
anon_sym_LT_DASH_DASH,
anon_sym_DOT_DOT,
[3728] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(570), 1,
anon_sym_RBRACE,
ACTIONS(572), 1,
anon_sym_COMMA,
STATE(185), 1,
aux_sym_cias_repeat1,
[3741] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(575), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[3750] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(579), 1,
anon_sym_DOT_DOT,
ACTIONS(577), 2,
anon_sym_LBRACK,
anon_sym_LT_DASH_DASH,
[3761] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(581), 3,
anon_sym_RBRACE,
anon_sym_abstract,
anon_sym_asset,
[3770] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(583), 1,
anon_sym_COMMA,
ACTIONS(585), 1,
anon_sym_RPAREN,
STATE(215), 1,
aux_sym_detector_context_repeat1,
[3783] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(587), 1,
anon_sym_DOT,
ACTIONS(590), 1,
anon_sym_LPAREN,
STATE(190), 1,
aux_sym_detector_name_repeat1,
[3796] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(592), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[3805] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(594), 3,
anon_sym_RBRACE,
anon_sym_abstract,
anon_sym_asset,
[3814] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(596), 3,
anon_sym_RBRACE,
anon_sym_abstract,
anon_sym_asset,
[3823] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(598), 1,
anon_sym_COMMA,
ACTIONS(600), 1,
anon_sym_RPAREN,
STATE(217), 1,
aux_sym_ttc_distribution_repeat1,
[3836] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(602), 3,
anon_sym_RBRACE,
anon_sym_abstract,
anon_sym_asset,
[3845] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(604), 3,
anon_sym_RBRACE,
anon_sym_abstract,
anon_sym_asset,
[3854] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(606), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[3863] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(608), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[3872] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(610), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[3881] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(612), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[3890] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(614), 3,
anon_sym_RBRACE,
anon_sym_abstract,
anon_sym_asset,
[3899] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(616), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[3908] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(618), 3,
anon_sym_RBRACE,
anon_sym_abstract,
anon_sym_asset,
[3917] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(620), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[3926] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(622), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[3935] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(624), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[3944] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(626), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[3953] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(628), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[3962] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(630), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[3971] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(632), 3,
anon_sym_RBRACE,
anon_sym_abstract,
anon_sym_asset,
[3980] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(634), 3,
anon_sym_RBRACE,
anon_sym_abstract,
anon_sym_asset,
[3989] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(636), 3,
anon_sym_RBRACE,
anon_sym_abstract,
anon_sym_asset,
[3998] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(638), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[4007] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(640), 3,
anon_sym_RBRACE,
anon_sym_abstract,
anon_sym_asset,
[4016] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(642), 1,
anon_sym_COMMA,
ACTIONS(645), 1,
anon_sym_RPAREN,
STATE(215), 1,
aux_sym_detector_context_repeat1,
[4029] = 3,
ACTIONS(3), 1,
sym_comment,
STATE(271), 1,
sym__number,
ACTIONS(647), 2,
sym_integer,
sym_float,
[4040] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(598), 1,
anon_sym_COMMA,
ACTIONS(649), 1,
anon_sym_RPAREN,
STATE(233), 1,
aux_sym_ttc_distribution_repeat1,
[4053] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(651), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[4062] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(653), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[4071] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(655), 1,
anon_sym_RBRACE,
ACTIONS(657), 1,
anon_sym_COMMA,
STATE(185), 1,
aux_sym_cias_repeat1,
[4084] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(659), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[4093] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(661), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[4102] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(663), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[4111] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(665), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[4120] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(667), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[4129] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(669), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[4138] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(583), 1,
anon_sym_COMMA,
ACTIONS(671), 1,
anon_sym_RPAREN,
STATE(189), 1,
aux_sym_detector_context_repeat1,
[4151] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(673), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[4160] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(675), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[4169] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(564), 1,
anon_sym_DOT,
ACTIONS(677), 1,
anon_sym_LPAREN,
STATE(190), 1,
aux_sym_detector_name_repeat1,
[4182] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(679), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[4191] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(681), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[4200] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(683), 1,
anon_sym_COMMA,
ACTIONS(686), 1,
anon_sym_RPAREN,
STATE(233), 1,
aux_sym_ttc_distribution_repeat1,
[4213] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(688), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[4222] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(690), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[4231] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(263), 3,
anon_sym_LBRACE,
anon_sym_RBRACE,
sym_identifier,
[4240] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(692), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[4249] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(694), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[4258] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(696), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[4267] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(698), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[4276] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(700), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[4285] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(702), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[4294] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(704), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[4303] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(706), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[4312] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(708), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[4321] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(710), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[4330] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(712), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[4339] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(714), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[4348] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(716), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[4357] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(718), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[4366] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(720), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[4375] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(722), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[4384] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(724), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[4393] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(726), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[4402] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(728), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[4411] = 4,
ACTIONS(3), 1,
sym_comment,
ACTIONS(657), 1,
anon_sym_COMMA,
ACTIONS(730), 1,
anon_sym_RBRACE,
STATE(220), 1,
aux_sym_cias_repeat1,
[4424] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(732), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[4433] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(734), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[4442] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(736), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[4451] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(738), 3,
anon_sym_RBRACE,
anon_sym_abstract,
anon_sym_asset,
[4460] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(740), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[4469] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(742), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[4478] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(744), 3,
anon_sym_RBRACE,
anon_sym_abstract,
anon_sym_asset,
[4487] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(746), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[4496] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(748), 3,
anon_sym_RBRACE,
anon_sym_let,
sym_step_type,
[4505] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(518), 1,
anon_sym_LPAREN,
STATE(44), 1,
sym_detector_context,
[4515] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(750), 1,
sym_identifier,
STATE(227), 1,
sym_detector_context_asset,
[4525] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(752), 1,
sym_cia,
STATE(304), 1,
sym_cias,
[4535] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(577), 2,
anon_sym_LBRACK,
anon_sym_LT_DASH_DASH,
[4543] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(754), 2,
anon_sym_COMMA,
anon_sym_RPAREN,
[4551] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(686), 2,
anon_sym_COMMA,
anon_sym_RPAREN,
[4559] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(750), 1,
sym_identifier,
STATE(275), 1,
sym_detector_context_asset,
[4569] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(590), 2,
anon_sym_DOT,
anon_sym_LPAREN,
[4577] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(756), 2,
anon_sym_LBRACK,
anon_sym_LT_DASH_DASH,
[4585] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(645), 2,
anon_sym_COMMA,
anon_sym_RPAREN,
[4593] = 3,
ACTIONS(3), 1,
sym_comment,
ACTIONS(752), 1,
sym_cia,
STATE(310), 1,
sym_cias,
[4603] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(570), 2,
anon_sym_RBRACE,
anon_sym_COMMA,
[4611] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(758), 1,
anon_sym_RBRACE,
[4618] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(760), 1,
sym_identifier,
[4625] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(762), 1,
sym_identifier,
[4632] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(764), 1,
anon_sym_RBRACE,
[4639] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(766), 1,
sym_identifier,
[4646] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(768), 1,
anon_sym_RBRACE,
[4653] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(770), 1,
anon_sym_asset,
[4660] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(772), 1,
sym_identifier,
[4667] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(774), 1,
sym_identifier,
[4674] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(776), 1,
anon_sym_DASH_DASH_GT,
[4681] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(778), 1,
anon_sym_RBRACK,
[4688] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(780), 1,
anon_sym_RPAREN,
[4695] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(782), 1,
anon_sym_LBRACK,
[4702] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(784), 1,
anon_sym_COLON,
[4709] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(786), 1,
sym_identifier,
[4716] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(788), 1,
sym_identifier,
[4723] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(790), 1,
sym_identifier,
[4730] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(792), 1,
anon_sym_EQ,
[4737] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(794), 1,
anon_sym_RBRACK,
[4744] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(796), 1,
sym_identifier,
[4751] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(798), 1,
anon_sym_LBRACK,
[4758] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(800), 1,
anon_sym_info,
[4765] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(802), 1,
sym_identifier,
[4772] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(804), 1,
sym_identifier,
[4779] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(806), 1,
sym_identifier,
[4786] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(808), 1,
sym_string,
[4793] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(810), 1,
anon_sym_RBRACE,
[4800] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(812), 1,
anon_sym_LBRACE,
[4807] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(814), 1,
anon_sym_RBRACE,
[4814] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(816), 1,
ts_builtin_sym_end,
[4821] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(818), 1,
sym_identifier,
[4828] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(820), 1,
anon_sym_COLON,
[4835] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(822), 1,
anon_sym_RBRACE,
[4842] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(824), 1,
anon_sym_RBRACK,
[4849] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(826), 1,
sym_cia,
[4856] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(828), 1,
anon_sym_RBRACE,
[4863] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(830), 1,
sym_identifier,
[4870] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(832), 1,
sym_identifier,
[4877] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(834), 1,
anon_sym_LT_DASH_DASH,
[4884] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(836), 1,
sym_string,
[4891] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(838), 1,
anon_sym_RBRACE,
[4898] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(840), 1,
sym_identifier,
[4905] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(842), 1,
sym_string,
[4912] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(844), 1,
anon_sym_RBRACE,
[4919] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(846), 1,
anon_sym_COLON,
[4926] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(848), 1,
anon_sym_RBRACE,
[4933] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(850), 1,
anon_sym_info,
[4940] = 2,
ACTIONS(3), 1,
sym_comment,
ACTIONS(852), 1,
sym_string,
};
static const uint32_t ts_small_parse_table_map[] = {
[SMALL_STATE(2)] = 0,
[SMALL_STATE(3)] = 56,
[SMALL_STATE(4)] = 112,
[SMALL_STATE(5)] = 159,
[SMALL_STATE(6)] = 206,
[SMALL_STATE(7)] = 247,
[SMALL_STATE(8)] = 288,
[SMALL_STATE(9)] = 329,
[SMALL_STATE(10)] = 370,
[SMALL_STATE(11)] = 411,
[SMALL_STATE(12)] = 452,
[SMALL_STATE(13)] = 493,
[SMALL_STATE(14)] = 534,
[SMALL_STATE(15)] = 575,
[SMALL_STATE(16)] = 616,
[SMALL_STATE(17)] = 657,
[SMALL_STATE(18)] = 698,
[SMALL_STATE(19)] = 722,
[SMALL_STATE(20)] = 747,
[SMALL_STATE(21)] = 768,
[SMALL_STATE(22)] = 795,
[SMALL_STATE(23)] = 820,
[SMALL_STATE(24)] = 841,
[SMALL_STATE(25)] = 862,
[SMALL_STATE(26)] = 883,
[SMALL_STATE(27)] = 915,
[SMALL_STATE(28)] = 947,
[SMALL_STATE(29)] = 979,
[SMALL_STATE(30)] = 1011,
[SMALL_STATE(31)] = 1043,
[SMALL_STATE(32)] = 1075,
[SMALL_STATE(33)] = 1107,
[SMALL_STATE(34)] = 1139,
[SMALL_STATE(35)] = 1171,
[SMALL_STATE(36)] = 1203,
[SMALL_STATE(37)] = 1235,
[SMALL_STATE(38)] = 1267,
[SMALL_STATE(39)] = 1295,
[SMALL_STATE(40)] = 1327,
[SMALL_STATE(41)] = 1359,
[SMALL_STATE(42)] = 1379,
[SMALL_STATE(43)] = 1411,
[SMALL_STATE(44)] = 1443,
[SMALL_STATE(45)] = 1468,
[SMALL_STATE(46)] = 1497,
[SMALL_STATE(47)] = 1526,
[SMALL_STATE(48)] = 1551,
[SMALL_STATE(49)] = 1574,
[SMALL_STATE(50)] = 1592,
[SMALL_STATE(51)] = 1614,
[SMALL_STATE(52)] = 1636,
[SMALL_STATE(53)] = 1658,
[SMALL_STATE(54)] = 1676,
[SMALL_STATE(55)] = 1698,
[SMALL_STATE(56)] = 1720,
[SMALL_STATE(57)] = 1742,
[SMALL_STATE(58)] = 1764,
[SMALL_STATE(59)] = 1786,
[SMALL_STATE(60)] = 1808,
[SMALL_STATE(61)] = 1829,
[SMALL_STATE(62)] = 1850,
[SMALL_STATE(63)] = 1871,
[SMALL_STATE(64)] = 1892,
[SMALL_STATE(65)] = 1909,
[SMALL_STATE(66)] = 1926,
[SMALL_STATE(67)] = 1944,
[SMALL_STATE(68)] = 1960,
[SMALL_STATE(69)] = 1976,
[SMALL_STATE(70)] = 1994,
[SMALL_STATE(71)] = 2010,
[SMALL_STATE(72)] = 2028,
[SMALL_STATE(73)] = 2044,
[SMALL_STATE(74)] = 2060,
[SMALL_STATE(75)] = 2078,
[SMALL_STATE(76)] = 2095,
[SMALL_STATE(77)] = 2116,
[SMALL_STATE(78)] = 2137,
[SMALL_STATE(79)] = 2158,
[SMALL_STATE(80)] = 2173,
[SMALL_STATE(81)] = 2190,
[SMALL_STATE(82)] = 2211,
[SMALL_STATE(83)] = 2226,
[SMALL_STATE(84)] = 2241,
[SMALL_STATE(85)] = 2256,
[SMALL_STATE(86)] = 2275,
[SMALL_STATE(87)] = 2292,
[SMALL_STATE(88)] = 2309,
[SMALL_STATE(89)] = 2330,
[SMALL_STATE(90)] = 2351,
[SMALL_STATE(91)] = 2372,
[SMALL_STATE(92)] = 2389,
[SMALL_STATE(93)] = 2410,
[SMALL_STATE(94)] = 2431,
[SMALL_STATE(95)] = 2447,
[SMALL_STATE(96)] = 2467,
[SMALL_STATE(97)] = 2483,
[SMALL_STATE(98)] = 2499,
[SMALL_STATE(99)] = 2515,
[SMALL_STATE(100)] = 2531,
[SMALL_STATE(101)] = 2551,
[SMALL_STATE(102)] = 2571,
[SMALL_STATE(103)] = 2591,
[SMALL_STATE(104)] = 2607,
[SMALL_STATE(105)] = 2623,
[SMALL_STATE(106)] = 2639,
[SMALL_STATE(107)] = 2655,
[SMALL_STATE(108)] = 2671,
[SMALL_STATE(109)] = 2689,
[SMALL_STATE(110)] = 2705,
[SMALL_STATE(111)] = 2721,
[SMALL_STATE(112)] = 2733,
[SMALL_STATE(113)] = 2751,
[SMALL_STATE(114)] = 2767,
[SMALL_STATE(115)] = 2783,
[SMALL_STATE(116)] = 2799,
[SMALL_STATE(117)] = 2815,
[SMALL_STATE(118)] = 2831,
[SMALL_STATE(119)] = 2847,
[SMALL_STATE(120)] = 2863,
[SMALL_STATE(121)] = 2879,
[SMALL_STATE(122)] = 2895,
[SMALL_STATE(123)] = 2911,
[SMALL_STATE(124)] = 2927,
[SMALL_STATE(125)] = 2943,
[SMALL_STATE(126)] = 2959,
[SMALL_STATE(127)] = 2975,
[SMALL_STATE(128)] = 2991,
[SMALL_STATE(129)] = 3007,
[SMALL_STATE(130)] = 3023,
[SMALL_STATE(131)] = 3039,
[SMALL_STATE(132)] = 3055,
[SMALL_STATE(133)] = 3075,
[SMALL_STATE(134)] = 3091,
[SMALL_STATE(135)] = 3108,
[SMALL_STATE(136)] = 3119,
[SMALL_STATE(137)] = 3134,
[SMALL_STATE(138)] = 3151,
[SMALL_STATE(139)] = 3162,
[SMALL_STATE(140)] = 3179,
[SMALL_STATE(141)] = 3190,
[SMALL_STATE(142)] = 3207,
[SMALL_STATE(143)] = 3218,
[SMALL_STATE(144)] = 3229,
[SMALL_STATE(145)] = 3240,
[SMALL_STATE(146)] = 3257,
[SMALL_STATE(147)] = 3274,
[SMALL_STATE(148)] = 3285,
[SMALL_STATE(149)] = 3296,
[SMALL_STATE(150)] = 3313,
[SMALL_STATE(151)] = 3328,
[SMALL_STATE(152)] = 3339,
[SMALL_STATE(153)] = 3354,
[SMALL_STATE(154)] = 3368,
[SMALL_STATE(155)] = 3382,
[SMALL_STATE(156)] = 3396,
[SMALL_STATE(157)] = 3410,
[SMALL_STATE(158)] = 3424,
[SMALL_STATE(159)] = 3438,
[SMALL_STATE(160)] = 3452,
[SMALL_STATE(161)] = 3466,
[SMALL_STATE(162)] = 3480,
[SMALL_STATE(163)] = 3494,
[SMALL_STATE(164)] = 3510,
[SMALL_STATE(165)] = 3524,
[SMALL_STATE(166)] = 3538,
[SMALL_STATE(167)] = 3552,
[SMALL_STATE(168)] = 3566,
[SMALL_STATE(169)] = 3580,
[SMALL_STATE(170)] = 3589,
[SMALL_STATE(171)] = 3598,
[SMALL_STATE(172)] = 3607,
[SMALL_STATE(173)] = 3616,
[SMALL_STATE(174)] = 3625,
[SMALL_STATE(175)] = 3634,
[SMALL_STATE(176)] = 3643,
[SMALL_STATE(177)] = 3652,
[SMALL_STATE(178)] = 3661,
[SMALL_STATE(179)] = 3670,
[SMALL_STATE(180)] = 3679,
[SMALL_STATE(181)] = 3688,
[SMALL_STATE(182)] = 3697,
[SMALL_STATE(183)] = 3706,
[SMALL_STATE(184)] = 3719,
[SMALL_STATE(185)] = 3728,
[SMALL_STATE(186)] = 3741,
[SMALL_STATE(187)] = 3750,
[SMALL_STATE(188)] = 3761,
[SMALL_STATE(189)] = 3770,
[SMALL_STATE(190)] = 3783,
[SMALL_STATE(191)] = 3796,
[SMALL_STATE(192)] = 3805,
[SMALL_STATE(193)] = 3814,
[SMALL_STATE(194)] = 3823,
[SMALL_STATE(195)] = 3836,
[SMALL_STATE(196)] = 3845,
[SMALL_STATE(197)] = 3854,
[SMALL_STATE(198)] = 3863,
[SMALL_STATE(199)] = 3872,
[SMALL_STATE(200)] = 3881,
[SMALL_STATE(201)] = 3890,
[SMALL_STATE(202)] = 3899,
[SMALL_STATE(203)] = 3908,
[SMALL_STATE(204)] = 3917,
[SMALL_STATE(205)] = 3926,
[SMALL_STATE(206)] = 3935,
[SMALL_STATE(207)] = 3944,
[SMALL_STATE(208)] = 3953,
[SMALL_STATE(209)] = 3962,
[SMALL_STATE(210)] = 3971,
[SMALL_STATE(211)] = 3980,
[SMALL_STATE(212)] = 3989,
[SMALL_STATE(213)] = 3998,
[SMALL_STATE(214)] = 4007,
[SMALL_STATE(215)] = 4016,
[SMALL_STATE(216)] = 4029,
[SMALL_STATE(217)] = 4040,
[SMALL_STATE(218)] = 4053,
[SMALL_STATE(219)] = 4062,
[SMALL_STATE(220)] = 4071,
[SMALL_STATE(221)] = 4084,
[SMALL_STATE(222)] = 4093,
[SMALL_STATE(223)] = 4102,
[SMALL_STATE(224)] = 4111,
[SMALL_STATE(225)] = 4120,
[SMALL_STATE(226)] = 4129,
[SMALL_STATE(227)] = 4138,
[SMALL_STATE(228)] = 4151,
[SMALL_STATE(229)] = 4160,
[SMALL_STATE(230)] = 4169,
[SMALL_STATE(231)] = 4182,
[SMALL_STATE(232)] = 4191,
[SMALL_STATE(233)] = 4200,
[SMALL_STATE(234)] = 4213,
[SMALL_STATE(235)] = 4222,
[SMALL_STATE(236)] = 4231,
[SMALL_STATE(237)] = 4240,
[SMALL_STATE(238)] = 4249,
[SMALL_STATE(239)] = 4258,
[SMALL_STATE(240)] = 4267,
[SMALL_STATE(241)] = 4276,
[SMALL_STATE(242)] = 4285,
[SMALL_STATE(243)] = 4294,
[SMALL_STATE(244)] = 4303,
[SMALL_STATE(245)] = 4312,
[SMALL_STATE(246)] = 4321,
[SMALL_STATE(247)] = 4330,
[SMALL_STATE(248)] = 4339,
[SMALL_STATE(249)] = 4348,
[SMALL_STATE(250)] = 4357,
[SMALL_STATE(251)] = 4366,
[SMALL_STATE(252)] = 4375,
[SMALL_STATE(253)] = 4384,
[SMALL_STATE(254)] = 4393,
[SMALL_STATE(255)] = 4402,
[SMALL_STATE(256)] = 4411,
[SMALL_STATE(257)] = 4424,
[SMALL_STATE(258)] = 4433,
[SMALL_STATE(259)] = 4442,
[SMALL_STATE(260)] = 4451,
[SMALL_STATE(261)] = 4460,
[SMALL_STATE(262)] = 4469,
[SMALL_STATE(263)] = 4478,
[SMALL_STATE(264)] = 4487,
[SMALL_STATE(265)] = 4496,
[SMALL_STATE(266)] = 4505,
[SMALL_STATE(267)] = 4515,
[SMALL_STATE(268)] = 4525,
[SMALL_STATE(269)] = 4535,
[SMALL_STATE(270)] = 4543,
[SMALL_STATE(271)] = 4551,
[SMALL_STATE(272)] = 4559,
[SMALL_STATE(273)] = 4569,
[SMALL_STATE(274)] = 4577,
[SMALL_STATE(275)] = 4585,
[SMALL_STATE(276)] = 4593,
[SMALL_STATE(277)] = 4603,
[SMALL_STATE(278)] = 4611,
[SMALL_STATE(279)] = 4618,
[SMALL_STATE(280)] = 4625,
[SMALL_STATE(281)] = 4632,
[SMALL_STATE(282)] = 4639,
[SMALL_STATE(283)] = 4646,
[SMALL_STATE(284)] = 4653,
[SMALL_STATE(285)] = 4660,
[SMALL_STATE(286)] = 4667,
[SMALL_STATE(287)] = 4674,
[SMALL_STATE(288)] = 4681,
[SMALL_STATE(289)] = 4688,
[SMALL_STATE(290)] = 4695,
[SMALL_STATE(291)] = 4702,
[SMALL_STATE(292)] = 4709,
[SMALL_STATE(293)] = 4716,
[SMALL_STATE(294)] = 4723,
[SMALL_STATE(295)] = 4730,
[SMALL_STATE(296)] = 4737,
[SMALL_STATE(297)] = 4744,
[SMALL_STATE(298)] = 4751,
[SMALL_STATE(299)] = 4758,
[SMALL_STATE(300)] = 4765,
[SMALL_STATE(301)] = 4772,
[SMALL_STATE(302)] = 4779,
[SMALL_STATE(303)] = 4786,
[SMALL_STATE(304)] = 4793,
[SMALL_STATE(305)] = 4800,
[SMALL_STATE(306)] = 4807,
[SMALL_STATE(307)] = 4814,
[SMALL_STATE(308)] = 4821,
[SMALL_STATE(309)] = 4828,
[SMALL_STATE(310)] = 4835,
[SMALL_STATE(311)] = 4842,
[SMALL_STATE(312)] = 4849,
[SMALL_STATE(313)] = 4856,
[SMALL_STATE(314)] = 4863,
[SMALL_STATE(315)] = 4870,
[SMALL_STATE(316)] = 4877,
[SMALL_STATE(317)] = 4884,
[SMALL_STATE(318)] = 4891,
[SMALL_STATE(319)] = 4898,
[SMALL_STATE(320)] = 4905,
[SMALL_STATE(321)] = 4912,
[SMALL_STATE(322)] = 4919,
[SMALL_STATE(323)] = 4926,
[SMALL_STATE(324)] = 4933,
[SMALL_STATE(325)] = 4940,
};
static const TSParseActionEntry ts_parse_actions[] = {
[0] = {.entry = {.count = 0, .reusable = false}},
[1] = {.entry = {.count = 1, .reusable = false}}, RECOVER(),
[3] = {.entry = {.count = 1, .reusable = true}}, SHIFT_EXTRA(),
[5] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 0, 0, 0),
[7] = {.entry = {.count = 1, .reusable = true}}, SHIFT(303),
[9] = {.entry = {.count = 1, .reusable = true}}, SHIFT(279),
[11] = {.entry = {.count = 1, .reusable = true}}, SHIFT(319),
[13] = {.entry = {.count = 1, .reusable = true}}, SHIFT(305),
[15] = {.entry = {.count = 1, .reusable = false}}, SHIFT(324),
[17] = {.entry = {.count = 1, .reusable = false}}, SHIFT_EXTRA(),
[19] = {.entry = {.count = 1, .reusable = true}}, SHIFT(276),
[21] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 2, 0, 9),
[23] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attack_step, 2, 0, 9),
[25] = {.entry = {.count = 1, .reusable = true}}, SHIFT(315),
[27] = {.entry = {.count = 1, .reusable = false}}, SHIFT(163),
[29] = {.entry = {.count = 1, .reusable = true}}, SHIFT(163),
[31] = {.entry = {.count = 1, .reusable = true}}, SHIFT(62),
[33] = {.entry = {.count = 1, .reusable = true}}, SHIFT(61),
[35] = {.entry = {.count = 1, .reusable = true}}, SHIFT(52),
[37] = {.entry = {.count = 1, .reusable = true}}, SHIFT(268),
[39] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 3, 0, 17),
[41] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attack_step, 3, 0, 17),
[43] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 5, 0, 47),
[45] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attack_step, 5, 0, 47),
[47] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 6, 0, 91),
[49] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attack_step, 6, 0, 91),
[51] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 3, 0, 16),
[53] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attack_step, 3, 0, 16),
[55] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 3, 0, 15),
[57] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attack_step, 3, 0, 15),
[59] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 4, 0, 30),
[61] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attack_step, 4, 0, 30),
[63] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 4, 0, 37),
[65] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attack_step, 4, 0, 37),
[67] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 4, 0, 38),
[69] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attack_step, 4, 0, 38),
[71] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 5, 0, 65),
[73] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attack_step, 5, 0, 65),
[75] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 8, 0, 140),
[77] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attack_step, 8, 0, 140),
[79] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 7, 0, 118),
[81] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attack_step, 7, 0, 118),
[83] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 6, 0, 79),
[85] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attack_step, 6, 0, 79),
[87] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 6, 0, 80),
[89] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attack_step, 6, 0, 80),
[91] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 7, 0, 119),
[93] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attack_step, 7, 0, 119),
[95] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 7, 0, 106),
[97] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attack_step, 7, 0, 106),
[99] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__asset_expr_primary, 1, 0, 0),
[101] = {.entry = {.count = 1, .reusable = true}}, SHIFT(289),
[103] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__asset_expr_primary, 1, 0, 0),
[105] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_attack_step_repeat1, 2, 0, 0),
[107] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_attack_step_repeat1, 2, 0, 0),
[109] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_attack_step_repeat1, 2, 0, 0), SHIFT_REPEAT(315),
[112] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_asset_expr_unop, 2, 0, 46),
[114] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_asset_expr_unop, 2, 0, 46),
[116] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_asset_expr_binop, 3, 0, 76),
[118] = {.entry = {.count = 1, .reusable = true}}, SHIFT(69),
[120] = {.entry = {.count = 1, .reusable = true}}, SHIFT(294),
[122] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_asset_expr_binop, 3, 0, 76),
[124] = {.entry = {.count = 1, .reusable = true}}, SHIFT(20),
[126] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_asset_variable_substitution, 3, 0, 75),
[128] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_asset_variable_substitution, 3, 0, 75),
[130] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_asset_expr_type, 4, 0, 102),
[132] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_asset_expr_type, 4, 0, 102),
[134] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__inline_asset_expr, 3, 0, 0),
[136] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__inline_asset_expr, 3, 0, 0),
[138] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 5, 0, 69),
[140] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 4, 0, 31),
[142] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 4, 0, 39),
[144] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 3, 0, 18),
[146] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 4, 0, 34),
[148] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 6, 0, 81),
[150] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 6, 0, 95),
[152] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 5, 0, 56),
[154] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 7, 0, 107),
[156] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 7, 0, 110),
[158] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 5, 0, 66),
[160] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 8, 0, 144),
[162] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_asset_expr, 1, 0, 0),
[164] = {.entry = {.count = 1, .reusable = false}}, SHIFT(74),
[166] = {.entry = {.count = 1, .reusable = true}}, SHIFT(74),
[168] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 7, 0, 120),
[170] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 8, 0, 129),
[172] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 8, 0, 141),
[174] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 9, 0, 156),
[176] = {.entry = {.count = 1, .reusable = false}}, SHIFT(51),
[178] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_detector, 3, 0, 48),
[180] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_detector, 3, 0, 48),
[182] = {.entry = {.count = 1, .reusable = true}}, SHIFT(55),
[184] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0),
[186] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(303),
[189] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(279),
[192] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(319),
[195] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(305),
[198] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 1, 0, 0),
[200] = {.entry = {.count = 1, .reusable = false}}, SHIFT(58),
[202] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_detector, 2, 0, 24),
[204] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_detector, 2, 0, 24),
[206] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_category_declaration_repeat1, 2, 0, 0), SHIFT_REPEAT(324),
[209] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_category_declaration_repeat1, 2, 0, 0),
[211] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_category_declaration_repeat1, 2, 0, 0),
[213] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_detector_context, 4, 0, 0),
[215] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_detector_context, 4, 0, 0),
[217] = {.entry = {.count = 1, .reusable = false}}, SHIFT(66),
[219] = {.entry = {.count = 1, .reusable = true}}, SHIFT(50),
[221] = {.entry = {.count = 1, .reusable = false}}, SHIFT(102),
[223] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_detector, 4, 0, 83),
[225] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_detector, 4, 0, 83),
[227] = {.entry = {.count = 1, .reusable = false}}, SHIFT(95),
[229] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_detector_context, 3, 0, 0),
[231] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_detector_context, 3, 0, 0),
[233] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_attack_step_repeat2, 2, 0, 0),
[235] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_attack_step_repeat2, 2, 0, 0), SHIFT_REPEAT(163),
[238] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_attack_step_repeat2, 2, 0, 0), SHIFT_REPEAT(163),
[241] = {.entry = {.count = 1, .reusable = false}}, SHIFT(132),
[243] = {.entry = {.count = 1, .reusable = false}}, SHIFT(87),
[245] = {.entry = {.count = 1, .reusable = false}}, SHIFT(75),
[247] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_detector, 3, 0, 49),
[249] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_detector, 3, 0, 49),
[251] = {.entry = {.count = 1, .reusable = false}}, SHIFT(85),
[253] = {.entry = {.count = 1, .reusable = true}}, SHIFT(18),
[255] = {.entry = {.count = 1, .reusable = true}}, SHIFT(71),
[257] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_ttc, 3, 0, 0),
[259] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_ttc, 3, 0, 0),
[261] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_meta, 4, 0, 6),
[263] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_meta, 4, 0, 6),
[265] = {.entry = {.count = 1, .reusable = true}}, SHIFT(156),
[267] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__ttc_primary, 1, 0, 0),
[269] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__ttc_primary, 1, 0, 0),
[271] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_detector, 4, 0, 84),
[273] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_detector, 4, 0, 84),
[275] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_detector, 4, 0, 85),
[277] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_detector, 4, 0, 85),
[279] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_detector, 3, 0, 50),
[281] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_detector, 3, 0, 50),
[283] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_detector, 5, 0, 113),
[285] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_detector, 5, 0, 113),
[287] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_ttc_binop, 3, 0, 76),
[289] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_ttc_binop, 3, 0, 76),
[291] = {.entry = {.count = 1, .reusable = true}}, SHIFT(57),
[293] = {.entry = {.count = 1, .reusable = true}}, SHIFT(196),
[295] = {.entry = {.count = 1, .reusable = true}}, SHIFT(314),
[297] = {.entry = {.count = 1, .reusable = true}}, SHIFT(285),
[299] = {.entry = {.count = 1, .reusable = true}}, SHIFT(203),
[301] = {.entry = {.count = 1, .reusable = true}}, SHIFT(214),
[303] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_ttc_distribution, 4, 0, 114),
[305] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_ttc_distribution, 4, 0, 114),
[307] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_preconditions_repeat1, 2, 0, 0),
[309] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_preconditions_repeat1, 2, 0, 0), SHIFT_REPEAT(63),
[312] = {.entry = {.count = 1, .reusable = true}}, SHIFT(263),
[314] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__ttc_parenthesized, 3, 0, 0),
[316] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__ttc_parenthesized, 3, 0, 0),
[318] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_ttc_distribution, 3, 0, 75),
[320] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_ttc_distribution, 3, 0, 75),
[322] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_ttc_distribution, 5, 0, 136),
[324] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_ttc_distribution, 5, 0, 136),
[326] = {.entry = {.count = 1, .reusable = true}}, SHIFT(56),
[328] = {.entry = {.count = 1, .reusable = false}}, SHIFT(56),
[330] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_preconditions, 3, 0, 51),
[332] = {.entry = {.count = 1, .reusable = true}}, SHIFT(63),
[334] = {.entry = {.count = 1, .reusable = true}}, SHIFT(175),
[336] = {.entry = {.count = 1, .reusable = true}}, SHIFT(260),
[338] = {.entry = {.count = 1, .reusable = true}}, SHIFT(195),
[340] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_preconditions, 2, 0, 25),
[342] = {.entry = {.count = 1, .reusable = true}}, SHIFT(25),
[344] = {.entry = {.count = 1, .reusable = true}}, SHIFT(188),
[346] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 9, 0, 154),
[348] = {.entry = {.count = 1, .reusable = true}}, SHIFT(64),
[350] = {.entry = {.count = 1, .reusable = true}}, SHIFT(59),
[352] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 4, 0, 28),
[354] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 4, 0, 32),
[356] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 4, 0, 35),
[358] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 4, 0, 40),
[360] = {.entry = {.count = 1, .reusable = true}}, SHIFT(184),
[362] = {.entry = {.count = 1, .reusable = true}}, SHIFT(187),
[364] = {.entry = {.count = 1, .reusable = true}}, SHIFT(82),
[366] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 5, 0, 54),
[368] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 5, 0, 57),
[370] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 5, 0, 60),
[372] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 5, 0, 63),
[374] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 5, 0, 67),
[376] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_asset_definition, 1, 0, 0),
[378] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 5, 0, 70),
[380] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 10, 0, 166),
[382] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_asset_definition_repeat1, 2, 0, 0),
[384] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_asset_definition_repeat1, 2, 0, 0), SHIFT_REPEAT(314),
[387] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_asset_definition_repeat1, 2, 0, 0), SHIFT_REPEAT(285),
[390] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 6, 0, 87),
[392] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 6, 0, 93),
[394] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 6, 0, 96),
[396] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 6, 0, 99),
[398] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 7, 0, 104),
[400] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 7, 0, 108),
[402] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 7, 0, 111),
[404] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 7, 0, 116),
[406] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 7, 0, 122),
[408] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 8, 0, 127),
[410] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 8, 0, 130),
[412] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 8, 0, 133),
[414] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 8, 0, 138),
[416] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 3, 0, 13),
[418] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 8, 0, 142),
[420] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 8, 0, 145),
[422] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 9, 0, 149),
[424] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 9, 0, 157),
[426] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 9, 0, 160),
[428] = {.entry = {.count = 1, .reusable = true}}, SHIFT(73),
[430] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 6, 0, 77),
[432] = {.entry = {.count = 1, .reusable = true}}, SHIFT(135),
[434] = {.entry = {.count = 1, .reusable = true}}, SHIFT(284),
[436] = {.entry = {.count = 1, .reusable = true}}, SHIFT(302),
[438] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_category_declaration, 4, 0, 2),
[440] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_category_declaration_repeat1, 2, 0, 0), SHIFT_REPEAT(299),
[443] = {.entry = {.count = 1, .reusable = false}}, SHIFT(299),
[445] = {.entry = {.count = 1, .reusable = true}}, SHIFT(89),
[447] = {.entry = {.count = 1, .reusable = false}}, SHIFT(282),
[449] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_category_declaration, 5, 0, 4),
[451] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_category_declaration_repeat2, 2, 0, 0),
[453] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_category_declaration_repeat2, 2, 0, 0), SHIFT_REPEAT(284),
[456] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_category_declaration_repeat2, 2, 0, 0), SHIFT_REPEAT(302),
[459] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_define_declaration, 4, 0, 3),
[461] = {.entry = {.count = 1, .reusable = true}}, SHIFT(138),
[463] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_category_declaration, 5, 0, 5),
[465] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_declaration, 1, 0, 0),
[467] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_associations_declaration, 3, 0, 0),
[469] = {.entry = {.count = 1, .reusable = true}}, SHIFT(148),
[471] = {.entry = {.count = 1, .reusable = true}}, SHIFT(93),
[473] = {.entry = {.count = 1, .reusable = false}}, SHIFT(308),
[475] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_include_declaration, 2, 0, 1),
[477] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_category_declaration, 6, 0, 7),
[479] = {.entry = {.count = 1, .reusable = true}}, SHIFT(142),
[481] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_reaching, 3, 0, 52),
[483] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_associations_declaration, 4, 0, 0),
[485] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_reaching, 2, 0, 26),
[487] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_association, 13, 0, 163), SHIFT(299),
[490] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_association, 13, 0, 163),
[492] = {.entry = {.count = 1, .reusable = true}}, SHIFT(298),
[494] = {.entry = {.count = 1, .reusable = true}}, SHIFT(151),
[496] = {.entry = {.count = 1, .reusable = true}}, SHIFT(274),
[498] = {.entry = {.count = 1, .reusable = true}}, SHIFT(83),
[500] = {.entry = {.count = 1, .reusable = false}}, SHIFT(194),
[502] = {.entry = {.count = 1, .reusable = true}}, SHIFT(299),
[504] = {.entry = {.count = 1, .reusable = true}}, SHIFT(134),
[506] = {.entry = {.count = 1, .reusable = true}}, SHIFT(81),
[508] = {.entry = {.count = 1, .reusable = true}}, SHIFT(77),
[510] = {.entry = {.count = 1, .reusable = true}}, SHIFT(90),
[512] = {.entry = {.count = 1, .reusable = true}}, SHIFT(78),
[514] = {.entry = {.count = 1, .reusable = true}}, SHIFT(149),
[516] = {.entry = {.count = 1, .reusable = true}}, SHIFT(183),
[518] = {.entry = {.count = 1, .reusable = true}}, SHIFT(267),
[520] = {.entry = {.count = 1, .reusable = true}}, SHIFT(88),
[522] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_associations_declaration_repeat1, 2, 0, 0), SHIFT_REPEAT(298),
[525] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_associations_declaration_repeat1, 2, 0, 0),
[527] = {.entry = {.count = 1, .reusable = true}}, SHIFT(144),
[529] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_association, 14, 0, 170), SHIFT(299),
[532] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_association, 14, 0, 170),
[534] = {.entry = {.count = 1, .reusable = true}}, SHIFT(76),
[536] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 6, 0, 92),
[538] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 5, 0, 55),
[540] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 5, 0, 58),
[542] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 5, 0, 59),
[544] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 5, 0, 61),
[546] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 5, 0, 62),
[548] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_asset_declaration, 7, 0, 22),
[550] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 5, 0, 64),
[552] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 4, 0, 36),
[554] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 5, 0, 68),
[556] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 5, 0, 71),
[558] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 5, 0, 72),
[560] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_asset_declaration, 8, 0, 73),
[562] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_asset_declaration, 9, 0, 74),
[564] = {.entry = {.count = 1, .reusable = true}}, SHIFT(280),
[566] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_detector_name, 1, 0, 0),
[568] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_star, 1, 0, 0),
[570] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_cias_repeat1, 2, 0, 0),
[572] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_cias_repeat1, 2, 0, 0), SHIFT_REPEAT(312),
[575] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 6, 0, 78),
[577] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_multiplicity, 1, 0, 0),
[579] = {.entry = {.count = 1, .reusable = true}}, SHIFT(155),
[581] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_asset_declaration, 5, 0, 8),
[583] = {.entry = {.count = 1, .reusable = true}}, SHIFT(272),
[585] = {.entry = {.count = 1, .reusable = true}}, SHIFT(49),
[587] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_detector_name_repeat1, 2, 0, 0), SHIFT_REPEAT(280),
[590] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_detector_name_repeat1, 2, 0, 0),
[592] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 4, 0, 41),
[594] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_asset_declaration, 5, 0, 10),
[596] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_asset_declaration, 7, 0, 42),
[598] = {.entry = {.count = 1, .reusable = true}}, SHIFT(216),
[600] = {.entry = {.count = 1, .reusable = true}}, SHIFT(79),
[602] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_asset_declaration, 7, 0, 43),
[604] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_asset_declaration, 5, 0, 5),
[606] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 6, 0, 86),
[608] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 6, 0, 88),
[610] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 6, 0, 89),
[612] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 6, 0, 90),
[614] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_asset_declaration, 8, 0, 44),
[616] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 6, 0, 94),
[618] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_asset_declaration, 8, 0, 45),
[620] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 6, 0, 97),
[622] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 6, 0, 98),
[624] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 6, 0, 100),
[626] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 6, 0, 101),
[628] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 7, 0, 103),
[630] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 7, 0, 105),
[632] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_asset_declaration, 6, 0, 11),
[634] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_asset_declaration, 7, 0, 23),
[636] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_asset_declaration, 6, 0, 20),
[638] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 7, 0, 112),
[640] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_asset_declaration, 6, 0, 12),
[642] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_detector_context_repeat1, 2, 0, 0), SHIFT_REPEAT(272),
[645] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_detector_context_repeat1, 2, 0, 0),
[647] = {.entry = {.count = 1, .reusable = false}}, SHIFT(271),
[649] = {.entry = {.count = 1, .reusable = true}}, SHIFT(84),
[651] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 7, 0, 115),
[653] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 7, 0, 117),
[655] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_cias, 2, 0, 0),
[657] = {.entry = {.count = 1, .reusable = true}}, SHIFT(312),
[659] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 7, 0, 121),
[661] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 7, 0, 123),
[663] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 7, 0, 124),
[665] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 7, 0, 125),
[667] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 8, 0, 126),
[669] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 8, 0, 128),
[671] = {.entry = {.count = 1, .reusable = true}}, SHIFT(53),
[673] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 8, 0, 131),
[675] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 8, 0, 132),
[677] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_detector_name, 2, 0, 0),
[679] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 8, 0, 134),
[681] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 8, 0, 135),
[683] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_ttc_distribution_repeat1, 2, 0, 0), SHIFT_REPEAT(216),
[686] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_ttc_distribution_repeat1, 2, 0, 0),
[688] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 8, 0, 137),
[690] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 8, 0, 139),
[692] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 4, 0, 27),
[694] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 8, 0, 143),
[696] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 3, 0, 14),
[698] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_asset_variable, 4, 0, 3),
[700] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 8, 0, 146),
[702] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 8, 0, 147),
[704] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 9, 0, 148),
[706] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 4, 0, 29),
[708] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 9, 0, 150),
[710] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 9, 0, 151),
[712] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 9, 0, 152),
[714] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 9, 0, 153),
[716] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 9, 0, 155),
[718] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 9, 0, 158),
[720] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 9, 0, 159),
[722] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 9, 0, 161),
[724] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 9, 0, 162),
[726] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 10, 0, 164),
[728] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 10, 0, 165),
[730] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_cias, 1, 0, 0),
[732] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 10, 0, 167),
[734] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 10, 0, 168),
[736] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 10, 0, 169),
[738] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_asset_declaration, 4, 0, 2),
[740] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 11, 0, 171),
[742] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 5, 0, 53),
[744] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_asset_declaration, 6, 0, 19),
[746] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 4, 0, 33),
[748] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attack_step, 7, 0, 109),
[750] = {.entry = {.count = 1, .reusable = true}}, SHIFT(297),
[752] = {.entry = {.count = 1, .reusable = true}}, SHIFT(256),
[754] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_detector_context_asset, 2, 0, 82),
[756] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_multiplicity_range, 3, 0, 21),
[758] = {.entry = {.count = 1, .reusable = true}}, SHIFT(192),
[760] = {.entry = {.count = 1, .reusable = true}}, SHIFT(157),
[762] = {.entry = {.count = 1, .reusable = true}}, SHIFT(273),
[764] = {.entry = {.count = 1, .reusable = true}}, SHIFT(182),
[766] = {.entry = {.count = 1, .reusable = true}}, SHIFT(158),
[768] = {.entry = {.count = 1, .reusable = true}}, SHIFT(210),
[770] = {.entry = {.count = 1, .reusable = true}}, SHIFT(293),
[772] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2),
[774] = {.entry = {.count = 1, .reusable = true}}, SHIFT(288),
[776] = {.entry = {.count = 1, .reusable = true}}, SHIFT(100),
[778] = {.entry = {.count = 1, .reusable = true}}, SHIFT(292),
[780] = {.entry = {.count = 1, .reusable = true}}, SHIFT(23),
[782] = {.entry = {.count = 1, .reusable = true}}, SHIFT(286),
[784] = {.entry = {.count = 1, .reusable = true}}, SHIFT(325),
[786] = {.entry = {.count = 1, .reusable = true}}, SHIFT(153),
[788] = {.entry = {.count = 1, .reusable = true}}, SHIFT(146),
[790] = {.entry = {.count = 1, .reusable = true}}, SHIFT(311),
[792] = {.entry = {.count = 1, .reusable = true}}, SHIFT(60),
[794] = {.entry = {.count = 1, .reusable = true}}, SHIFT(101),
[796] = {.entry = {.count = 1, .reusable = true}}, SHIFT(270),
[798] = {.entry = {.count = 1, .reusable = true}}, SHIFT(301),
[800] = {.entry = {.count = 1, .reusable = true}}, SHIFT(291),
[802] = {.entry = {.count = 1, .reusable = true}}, SHIFT(287),
[804] = {.entry = {.count = 1, .reusable = true}}, SHIFT(296),
[806] = {.entry = {.count = 1, .reusable = true}}, SHIFT(137),
[808] = {.entry = {.count = 1, .reusable = true}}, SHIFT(147),
[810] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5),
[812] = {.entry = {.count = 1, .reusable = true}}, SHIFT(166),
[814] = {.entry = {.count = 1, .reusable = true}}, SHIFT(211),
[816] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(),
[818] = {.entry = {.count = 1, .reusable = true}}, SHIFT(164),
[820] = {.entry = {.count = 1, .reusable = true}}, SHIFT(317),
[822] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4),
[824] = {.entry = {.count = 1, .reusable = true}}, SHIFT(24),
[826] = {.entry = {.count = 1, .reusable = true}}, SHIFT(277),
[828] = {.entry = {.count = 1, .reusable = true}}, SHIFT(181),
[830] = {.entry = {.count = 1, .reusable = true}}, SHIFT(295),
[832] = {.entry = {.count = 1, .reusable = true}}, SHIFT(41),
[834] = {.entry = {.count = 1, .reusable = true}}, SHIFT(300),
[836] = {.entry = {.count = 1, .reusable = true}}, SHIFT(140),
[838] = {.entry = {.count = 1, .reusable = true}}, SHIFT(212),
[840] = {.entry = {.count = 1, .reusable = true}}, SHIFT(309),
[842] = {.entry = {.count = 1, .reusable = true}}, SHIFT(65),
[844] = {.entry = {.count = 1, .reusable = true}}, SHIFT(201),
[846] = {.entry = {.count = 1, .reusable = true}}, SHIFT(320),
[848] = {.entry = {.count = 1, .reusable = true}}, SHIFT(193),
[850] = {.entry = {.count = 1, .reusable = true}}, SHIFT(322),
[852] = {.entry = {.count = 1, .reusable = true}}, SHIFT(236),
};
#ifdef __cplusplus
extern "C" {
#endif
#ifdef TREE_SITTER_HIDE_SYMBOLS
#define TS_PUBLIC
#elif defined(_WIN32)
#define TS_PUBLIC __declspec(dllexport)
#else
#define TS_PUBLIC __attribute__((visibility("default")))
#endif
TS_PUBLIC const TSLanguage *tree_sitter_mal(void) {
static const TSLanguage language = {
.abi_version = LANGUAGE_VERSION,
.symbol_count = SYMBOL_COUNT,
.alias_count = ALIAS_COUNT,
.token_count = TOKEN_COUNT,
.external_token_count = EXTERNAL_TOKEN_COUNT,
.state_count = STATE_COUNT,
.large_state_count = LARGE_STATE_COUNT,
.production_id_count = PRODUCTION_ID_COUNT,
.supertype_count = SUPERTYPE_COUNT,
.field_count = FIELD_COUNT,
.max_alias_sequence_length = MAX_ALIAS_SEQUENCE_LENGTH,
.parse_table = &ts_parse_table[0][0],
.small_parse_table = ts_small_parse_table,
.small_parse_table_map = ts_small_parse_table_map,
.parse_actions = ts_parse_actions,
.symbol_names = ts_symbol_names,
.field_names = ts_field_names,
.field_map_slices = ts_field_map_slices,
.field_map_entries = ts_field_map_entries,
.symbol_metadata = ts_symbol_metadata,
.public_symbol_map = ts_symbol_map,
.alias_map = ts_non_terminal_alias_map,
.alias_sequences = &ts_alias_sequences[0][0],
.lex_modes = (const void*)ts_lex_modes,
.lex_fn = ts_lex,
.keyword_lex_fn = ts_lex_keywords,
.keyword_capture_token = sym_identifier,
.primary_state_ids = ts_primary_state_ids,
.name = "mal",
.max_reserved_word_set_size = 0,
.metadata = {
.major_version = 1,
.minor_version = 0,
.patch_version = 0,
},
};
return &language;
}
#ifdef __cplusplus
}
#endif