Modules/Objects/private/parser/oscript.cpp
IlyaShurupov 8dc73bc1d5 tmp
2024-11-24 22:41:13 +03:00

1026 lines
49 KiB
C++

#include <lalr/ParserStateMachine.hpp>
#include <lalr/ParserState.hpp>
#include <lalr/ParserTransition.hpp>
#include <lalr/ParserSymbol.hpp>
#include <lalr/ParserAction.hpp>
#include <lalr/LexerStateMachine.hpp>
#include <lalr/LexerState.hpp>
#include <lalr/LexerTransition.hpp>
#include <lalr/LexerAction.hpp>
namespace
{
using namespace lalr;
extern const LexerAction lexer_actions [];
extern const LexerTransition lexer_transitions [];
extern const LexerState lexer_states [];
extern const LexerAction whitespace_lexer_actions [];
extern const LexerTransition whitespace_lexer_transitions [];
extern const LexerState whitespace_lexer_states [];
extern const ParserAction actions [];
extern const ParserSymbol symbols [];
extern const ParserTransition transitions [];
extern const ParserState states [];
const ParserAction actions [] =
{
{0, "scope"},
{1, "stm_list_append"},
{2, "stm_list_create"},
{3, "tmp"},
{4, "stm_var_def_new_type"},
{5, "stm_var_def_assign"},
{6, "stm_log"},
{7, "stm_assign"},
{8, "expr_list_append"},
{9, "expr_list_create"},
{10, "expr_function"},
{11, "expr_method"},
{12, "expr_child"},
{13, "expr_bool_eq"},
{14, "expr_bool_negate"},
{15, "expr_bool_neq"},
{16, "expr_bool_grater"},
{17, "expr_bool_lesser"},
{18, "expr_bool_grater_eq"},
{19, "expr_bool_lesser_eq"},
{20, "expr_add"},
{21, "expr_subtract"},
{22, "expr_multiply"},
{23, "expr_divide"},
{24, "expr_compound"},
{25, "expr_bool"},
{26, "expr_int"},
{27, "expr_float"},
{28, "expr_string"},
{29, "expr_id"},
{-1, nullptr}
};
const ParserSymbol symbols [] =
{
{0, (SymbolType) 2, "dot_start", ".start", "dot_start"},
{1, (SymbolType) 3, "dot_end", ".end", "dot_end"},
{2, (SymbolType) 1, "error", "error", "error"},
{3, (SymbolType) 1, "dot_whitespace", ".whitespace", "dot_whitespace"},
{4, (SymbolType) 1, "left_paren_terminal", "(", "("},
{5, (SymbolType) 1, "right_paren_terminal", ")", ")"},
{6, (SymbolType) 1, "plus_terminal", "+", "+"},
{7, (SymbolType) 1, "minus_terminal", "-", "-"},
{8, (SymbolType) 1, "star_terminal", "*", "*"},
{9, (SymbolType) 1, "slash_terminal", "/", "/"},
{10, (SymbolType) 1, "dot_terminal", ".", "."},
{11, (SymbolType) 1, "eq_terminal", "=", "="},
{12, (SymbolType) 1, "eq__eq_terminal", "==", "=="},
{13, (SymbolType) 1, "gt_terminal", ">", ">"},
{14, (SymbolType) 1, "lt_terminal", "<", "<"},
{15, (SymbolType) 1, "gt__eq_terminal", ">=", ">="},
{16, (SymbolType) 1, "lt__eq_terminal", "<=", "<="},
{17, (SymbolType) 1, "bang__eq_terminal", "!=", "!="},
{18, (SymbolType) 1, "bang_terminal", "!", "!"},
{19, (SymbolType) 2, "scope", "scope", "scope"},
{20, (SymbolType) 1, "left_curly_brace_terminal", "{", "{"},
{21, (SymbolType) 2, "stmts", "stmts", "stmts"},
{22, (SymbolType) 1, "right_curly_brace_terminal", "}", "}"},
{23, (SymbolType) 1, "semi_colon_terminal", ";", ";"},
{24, (SymbolType) 2, "stmt", "stmt", "stmt"},
{25, (SymbolType) 2, "stm_var_def_new_type", "stm_var_def_new_type", "stm_var_def_new_type"},
{26, (SymbolType) 2, "stm_var_def_assign", "stm_var_def_assign", "stm_var_def_assign"},
{27, (SymbolType) 2, "stm_log", "stm_log", "stm_log"},
{28, (SymbolType) 2, "stm_assign", "stm_assign", "stm_assign"},
{29, (SymbolType) 1, "var_terminal", "var", "var"},
{30, (SymbolType) 1, "colon_terminal", ":", ":"},
{31, (SymbolType) 2, "expr", "expr", "expr"},
{32, (SymbolType) 1, "print_terminal", "print", "print"},
{33, (SymbolType) 2, "expr_list", "expr_list", "expr_list"},
{34, (SymbolType) 1, "comma_terminal", ",", ","},
{35, (SymbolType) 1, "id", "[a-z]", "id"},
{36, (SymbolType) 1, "boolean", "true|false", "boolean"},
{37, (SymbolType) 1, "integer", "(\\+|\\-)?[0-9]+", "integer"},
{38, (SymbolType) 1, "real", "(\\+|\\-)?[0-9]+(\\.[0-9]+)?((e|E)(\\+|\\-)?[0-9]+)?", "real"},
{39, (SymbolType) 1, "string", "[\\\"']:string:", "string"},
{-1, (SymbolType) 0, nullptr, nullptr, nullptr}
};
const ParserTransition transitions [] =
{
{&symbols[19], &states[1], nullptr, 0, 0, 0, 0},
{&symbols[20], &states[2], nullptr, 0, 0, 0, 1},
{&symbols[1], nullptr, &symbols[19], 0, 0, -1, 2},
{&symbols[1], nullptr, &symbols[0], 1, 0, -1, 3},
{&symbols[4], &states[43], nullptr, 0, 0, 0, 4},
{&symbols[18], &states[33], nullptr, 0, 0, 0, 5},
{&symbols[21], &states[3], nullptr, 0, 0, 0, 6},
{&symbols[24], &states[8], nullptr, 0, 0, 0, 7},
{&symbols[25], &states[9], nullptr, 0, 0, 0, 8},
{&symbols[26], &states[10], nullptr, 0, 0, 0, 9},
{&symbols[27], &states[11], nullptr, 0, 0, 0, 10},
{&symbols[28], &states[12], nullptr, 0, 0, 0, 11},
{&symbols[29], &states[13], nullptr, 0, 0, 0, 12},
{&symbols[31], &states[21], nullptr, 0, 0, 0, 13},
{&symbols[32], &states[19], nullptr, 0, 0, 0, 14},
{&symbols[35], &states[44], nullptr, 0, 0, 0, 15},
{&symbols[36], &states[62], nullptr, 0, 0, 0, 16},
{&symbols[37], &states[63], nullptr, 0, 0, 0, 17},
{&symbols[38], &states[64], nullptr, 0, 0, 0, 18},
{&symbols[39], &states[65], nullptr, 0, 0, 0, 19},
{&symbols[22], nullptr, &symbols[21], 0, 0, -1, 20},
{&symbols[23], nullptr, &symbols[21], 0, 0, -1, 21},
{&symbols[22], &states[4], nullptr, 0, 0, 0, 22},
{&symbols[23], &states[5], nullptr, 0, 0, 0, 23},
{&symbols[1], nullptr, &symbols[19], 3, 0, 0, 24},
{&symbols[4], &states[43], nullptr, 0, 0, 0, 25},
{&symbols[18], &states[33], nullptr, 0, 0, 0, 26},
{&symbols[24], &states[6], nullptr, 0, 0, 0, 27},
{&symbols[25], &states[9], nullptr, 0, 0, 0, 28},
{&symbols[26], &states[10], nullptr, 0, 0, 0, 29},
{&symbols[27], &states[11], nullptr, 0, 0, 0, 30},
{&symbols[28], &states[12], nullptr, 0, 0, 0, 31},
{&symbols[29], &states[13], nullptr, 0, 0, 0, 32},
{&symbols[31], &states[21], nullptr, 0, 0, 0, 33},
{&symbols[32], &states[19], nullptr, 0, 0, 0, 34},
{&symbols[35], &states[44], nullptr, 0, 0, 0, 35},
{&symbols[36], &states[62], nullptr, 0, 0, 0, 36},
{&symbols[37], &states[63], nullptr, 0, 0, 0, 37},
{&symbols[38], &states[64], nullptr, 0, 0, 0, 38},
{&symbols[39], &states[65], nullptr, 0, 0, 0, 39},
{&symbols[23], &states[7], nullptr, 0, 0, 0, 40},
{&symbols[22], nullptr, &symbols[21], 4, 0, 1, 41},
{&symbols[23], nullptr, &symbols[21], 4, 0, 1, 42},
{&symbols[22], nullptr, &symbols[21], 1, 0, 2, 43},
{&symbols[23], nullptr, &symbols[21], 1, 0, 2, 44},
{&symbols[22], nullptr, &symbols[24], 1, 0, 3, 45},
{&symbols[23], nullptr, &symbols[24], 1, 0, 3, 46},
{&symbols[22], nullptr, &symbols[24], 1, 0, 3, 47},
{&symbols[23], nullptr, &symbols[24], 1, 0, 3, 48},
{&symbols[22], nullptr, &symbols[24], 1, 0, 3, 49},
{&symbols[23], nullptr, &symbols[24], 1, 0, 3, 50},
{&symbols[22], nullptr, &symbols[24], 1, 0, 3, 51},
{&symbols[23], nullptr, &symbols[24], 1, 0, 3, 52},
{&symbols[35], &states[14], nullptr, 0, 0, 0, 53},
{&symbols[11], &states[17], nullptr, 0, 0, 0, 54},
{&symbols[30], &states[15], nullptr, 0, 0, 0, 55},
{&symbols[35], &states[16], nullptr, 0, 0, 0, 56},
{&symbols[22], nullptr, &symbols[25], 4, 0, 4, 57},
{&symbols[23], nullptr, &symbols[25], 4, 0, 4, 58},
{&symbols[4], &states[43], nullptr, 0, 0, 0, 59},
{&symbols[18], &states[33], nullptr, 0, 0, 0, 60},
{&symbols[31], &states[18], nullptr, 0, 0, 0, 61},
{&symbols[35], &states[44], nullptr, 0, 0, 0, 62},
{&symbols[36], &states[62], nullptr, 0, 0, 0, 63},
{&symbols[37], &states[63], nullptr, 0, 0, 0, 64},
{&symbols[38], &states[64], nullptr, 0, 0, 0, 65},
{&symbols[39], &states[65], nullptr, 0, 0, 0, 66},
{&symbols[6], &states[39], nullptr, 0, 0, 0, 67},
{&symbols[7], &states[40], nullptr, 0, 0, 0, 68},
{&symbols[8], &states[41], nullptr, 0, 0, 0, 69},
{&symbols[9], &states[42], nullptr, 0, 0, 0, 70},
{&symbols[10], &states[58], nullptr, 0, 0, 0, 71},
{&symbols[12], &states[32], nullptr, 0, 0, 0, 72},
{&symbols[13], &states[35], nullptr, 0, 0, 0, 73},
{&symbols[14], &states[36], nullptr, 0, 0, 0, 74},
{&symbols[15], &states[37], nullptr, 0, 0, 0, 75},
{&symbols[16], &states[38], nullptr, 0, 0, 0, 76},
{&symbols[17], &states[34], nullptr, 0, 0, 0, 77},
{&symbols[22], nullptr, &symbols[26], 4, 6, 5, 78},
{&symbols[23], nullptr, &symbols[26], 4, 6, 5, 79},
{&symbols[4], &states[43], nullptr, 0, 0, 0, 80},
{&symbols[18], &states[33], nullptr, 0, 0, 0, 81},
{&symbols[31], &states[20], nullptr, 0, 0, 0, 82},
{&symbols[35], &states[44], nullptr, 0, 0, 0, 83},
{&symbols[36], &states[62], nullptr, 0, 0, 0, 84},
{&symbols[37], &states[63], nullptr, 0, 0, 0, 85},
{&symbols[38], &states[64], nullptr, 0, 0, 0, 86},
{&symbols[39], &states[65], nullptr, 0, 0, 0, 87},
{&symbols[6], &states[39], nullptr, 0, 0, 0, 88},
{&symbols[7], &states[40], nullptr, 0, 0, 0, 89},
{&symbols[8], &states[41], nullptr, 0, 0, 0, 90},
{&symbols[9], &states[42], nullptr, 0, 0, 0, 91},
{&symbols[10], &states[58], nullptr, 0, 0, 0, 92},
{&symbols[12], &states[32], nullptr, 0, 0, 0, 93},
{&symbols[13], &states[35], nullptr, 0, 0, 0, 94},
{&symbols[14], &states[36], nullptr, 0, 0, 0, 95},
{&symbols[15], &states[37], nullptr, 0, 0, 0, 96},
{&symbols[16], &states[38], nullptr, 0, 0, 0, 97},
{&symbols[17], &states[34], nullptr, 0, 0, 0, 98},
{&symbols[22], nullptr, &symbols[27], 2, 0, 6, 99},
{&symbols[23], nullptr, &symbols[27], 2, 0, 6, 100},
{&symbols[6], &states[39], nullptr, 0, 0, 0, 101},
{&symbols[7], &states[40], nullptr, 0, 0, 0, 102},
{&symbols[8], &states[41], nullptr, 0, 0, 0, 103},
{&symbols[9], &states[42], nullptr, 0, 0, 0, 104},
{&symbols[10], &states[58], nullptr, 0, 0, 0, 105},
{&symbols[11], &states[22], nullptr, 0, 0, 0, 106},
{&symbols[12], &states[32], nullptr, 0, 0, 0, 107},
{&symbols[13], &states[35], nullptr, 0, 0, 0, 108},
{&symbols[14], &states[36], nullptr, 0, 0, 0, 109},
{&symbols[15], &states[37], nullptr, 0, 0, 0, 110},
{&symbols[16], &states[38], nullptr, 0, 0, 0, 111},
{&symbols[17], &states[34], nullptr, 0, 0, 0, 112},
{&symbols[4], &states[43], nullptr, 0, 0, 0, 113},
{&symbols[18], &states[33], nullptr, 0, 0, 0, 114},
{&symbols[31], &states[23], nullptr, 0, 0, 0, 115},
{&symbols[35], &states[44], nullptr, 0, 0, 0, 116},
{&symbols[36], &states[62], nullptr, 0, 0, 0, 117},
{&symbols[37], &states[63], nullptr, 0, 0, 0, 118},
{&symbols[38], &states[64], nullptr, 0, 0, 0, 119},
{&symbols[39], &states[65], nullptr, 0, 0, 0, 120},
{&symbols[6], &states[39], nullptr, 0, 0, 0, 121},
{&symbols[7], &states[40], nullptr, 0, 0, 0, 122},
{&symbols[8], &states[41], nullptr, 0, 0, 0, 123},
{&symbols[9], &states[42], nullptr, 0, 0, 0, 124},
{&symbols[10], &states[58], nullptr, 0, 0, 0, 125},
{&symbols[12], &states[32], nullptr, 0, 0, 0, 126},
{&symbols[13], &states[35], nullptr, 0, 0, 0, 127},
{&symbols[14], &states[36], nullptr, 0, 0, 0, 128},
{&symbols[15], &states[37], nullptr, 0, 0, 0, 129},
{&symbols[16], &states[38], nullptr, 0, 0, 0, 130},
{&symbols[17], &states[34], nullptr, 0, 0, 0, 131},
{&symbols[22], nullptr, &symbols[28], 3, 6, 7, 132},
{&symbols[23], nullptr, &symbols[28], 3, 6, 7, 133},
{&symbols[4], &states[43], nullptr, 0, 0, 0, 134},
{&symbols[18], &states[33], nullptr, 0, 0, 0, 135},
{&symbols[31], &states[31], nullptr, 0, 0, 0, 136},
{&symbols[33], &states[26], nullptr, 0, 0, 0, 137},
{&symbols[35], &states[44], nullptr, 0, 0, 0, 138},
{&symbols[36], &states[62], nullptr, 0, 0, 0, 139},
{&symbols[37], &states[63], nullptr, 0, 0, 0, 140},
{&symbols[38], &states[64], nullptr, 0, 0, 0, 141},
{&symbols[39], &states[65], nullptr, 0, 0, 0, 142},
{&symbols[5], nullptr, &symbols[33], 0, 0, -1, 143},
{&symbols[34], nullptr, &symbols[33], 0, 0, -1, 144},
{&symbols[4], &states[43], nullptr, 0, 0, 0, 145},
{&symbols[18], &states[33], nullptr, 0, 0, 0, 146},
{&symbols[31], &states[31], nullptr, 0, 0, 0, 147},
{&symbols[33], &states[27], nullptr, 0, 0, 0, 148},
{&symbols[35], &states[44], nullptr, 0, 0, 0, 149},
{&symbols[36], &states[62], nullptr, 0, 0, 0, 150},
{&symbols[37], &states[63], nullptr, 0, 0, 0, 151},
{&symbols[38], &states[64], nullptr, 0, 0, 0, 152},
{&symbols[39], &states[65], nullptr, 0, 0, 0, 153},
{&symbols[5], nullptr, &symbols[33], 0, 0, -1, 154},
{&symbols[34], nullptr, &symbols[33], 0, 0, -1, 155},
{&symbols[5], &states[45], nullptr, 0, 0, 0, 156},
{&symbols[34], &states[28], nullptr, 0, 0, 0, 157},
{&symbols[5], &states[60], nullptr, 0, 0, 0, 158},
{&symbols[34], &states[28], nullptr, 0, 0, 0, 159},
{&symbols[4], &states[43], nullptr, 0, 0, 0, 160},
{&symbols[18], &states[33], nullptr, 0, 0, 0, 161},
{&symbols[31], &states[29], nullptr, 0, 0, 0, 162},
{&symbols[35], &states[44], nullptr, 0, 0, 0, 163},
{&symbols[36], &states[62], nullptr, 0, 0, 0, 164},
{&symbols[37], &states[63], nullptr, 0, 0, 0, 165},
{&symbols[38], &states[64], nullptr, 0, 0, 0, 166},
{&symbols[39], &states[65], nullptr, 0, 0, 0, 167},
{&symbols[6], &states[39], nullptr, 0, 0, 0, 168},
{&symbols[7], &states[40], nullptr, 0, 0, 0, 169},
{&symbols[8], &states[41], nullptr, 0, 0, 0, 170},
{&symbols[9], &states[42], nullptr, 0, 0, 0, 171},
{&symbols[10], &states[58], nullptr, 0, 0, 0, 172},
{&symbols[12], &states[32], nullptr, 0, 0, 0, 173},
{&symbols[13], &states[35], nullptr, 0, 0, 0, 174},
{&symbols[14], &states[36], nullptr, 0, 0, 0, 175},
{&symbols[15], &states[37], nullptr, 0, 0, 0, 176},
{&symbols[16], &states[38], nullptr, 0, 0, 0, 177},
{&symbols[17], &states[34], nullptr, 0, 0, 0, 178},
{&symbols[34], &states[30], nullptr, 0, 0, 0, 179},
{&symbols[5], nullptr, &symbols[33], 4, 0, 8, 180},
{&symbols[34], nullptr, &symbols[33], 4, 0, 8, 181},
{&symbols[6], &states[39], nullptr, 0, 0, 0, 182},
{&symbols[7], &states[40], nullptr, 0, 0, 0, 183},
{&symbols[8], &states[41], nullptr, 0, 0, 0, 184},
{&symbols[9], &states[42], nullptr, 0, 0, 0, 185},
{&symbols[10], &states[58], nullptr, 0, 0, 0, 186},
{&symbols[12], &states[32], nullptr, 0, 0, 0, 187},
{&symbols[13], &states[35], nullptr, 0, 0, 0, 188},
{&symbols[14], &states[36], nullptr, 0, 0, 0, 189},
{&symbols[15], &states[37], nullptr, 0, 0, 0, 190},
{&symbols[16], &states[38], nullptr, 0, 0, 0, 191},
{&symbols[17], &states[34], nullptr, 0, 0, 0, 192},
{&symbols[5], nullptr, &symbols[33], 1, 0, 9, 193},
{&symbols[34], nullptr, &symbols[33], 1, 0, 9, 194},
{&symbols[4], &states[43], nullptr, 0, 0, 0, 195},
{&symbols[18], &states[33], nullptr, 0, 0, 0, 196},
{&symbols[31], &states[46], nullptr, 0, 0, 0, 197},
{&symbols[35], &states[44], nullptr, 0, 0, 0, 198},
{&symbols[36], &states[62], nullptr, 0, 0, 0, 199},
{&symbols[37], &states[63], nullptr, 0, 0, 0, 200},
{&symbols[38], &states[64], nullptr, 0, 0, 0, 201},
{&symbols[39], &states[65], nullptr, 0, 0, 0, 202},
{&symbols[4], &states[43], nullptr, 0, 0, 0, 203},
{&symbols[18], &states[33], nullptr, 0, 0, 0, 204},
{&symbols[31], &states[47], nullptr, 0, 0, 0, 205},
{&symbols[35], &states[44], nullptr, 0, 0, 0, 206},
{&symbols[36], &states[62], nullptr, 0, 0, 0, 207},
{&symbols[37], &states[63], nullptr, 0, 0, 0, 208},
{&symbols[38], &states[64], nullptr, 0, 0, 0, 209},
{&symbols[39], &states[65], nullptr, 0, 0, 0, 210},
{&symbols[4], &states[43], nullptr, 0, 0, 0, 211},
{&symbols[18], &states[33], nullptr, 0, 0, 0, 212},
{&symbols[31], &states[48], nullptr, 0, 0, 0, 213},
{&symbols[35], &states[44], nullptr, 0, 0, 0, 214},
{&symbols[36], &states[62], nullptr, 0, 0, 0, 215},
{&symbols[37], &states[63], nullptr, 0, 0, 0, 216},
{&symbols[38], &states[64], nullptr, 0, 0, 0, 217},
{&symbols[39], &states[65], nullptr, 0, 0, 0, 218},
{&symbols[4], &states[43], nullptr, 0, 0, 0, 219},
{&symbols[18], &states[33], nullptr, 0, 0, 0, 220},
{&symbols[31], &states[49], nullptr, 0, 0, 0, 221},
{&symbols[35], &states[44], nullptr, 0, 0, 0, 222},
{&symbols[36], &states[62], nullptr, 0, 0, 0, 223},
{&symbols[37], &states[63], nullptr, 0, 0, 0, 224},
{&symbols[38], &states[64], nullptr, 0, 0, 0, 225},
{&symbols[39], &states[65], nullptr, 0, 0, 0, 226},
{&symbols[4], &states[43], nullptr, 0, 0, 0, 227},
{&symbols[18], &states[33], nullptr, 0, 0, 0, 228},
{&symbols[31], &states[50], nullptr, 0, 0, 0, 229},
{&symbols[35], &states[44], nullptr, 0, 0, 0, 230},
{&symbols[36], &states[62], nullptr, 0, 0, 0, 231},
{&symbols[37], &states[63], nullptr, 0, 0, 0, 232},
{&symbols[38], &states[64], nullptr, 0, 0, 0, 233},
{&symbols[39], &states[65], nullptr, 0, 0, 0, 234},
{&symbols[4], &states[43], nullptr, 0, 0, 0, 235},
{&symbols[18], &states[33], nullptr, 0, 0, 0, 236},
{&symbols[31], &states[51], nullptr, 0, 0, 0, 237},
{&symbols[35], &states[44], nullptr, 0, 0, 0, 238},
{&symbols[36], &states[62], nullptr, 0, 0, 0, 239},
{&symbols[37], &states[63], nullptr, 0, 0, 0, 240},
{&symbols[38], &states[64], nullptr, 0, 0, 0, 241},
{&symbols[39], &states[65], nullptr, 0, 0, 0, 242},
{&symbols[4], &states[43], nullptr, 0, 0, 0, 243},
{&symbols[18], &states[33], nullptr, 0, 0, 0, 244},
{&symbols[31], &states[52], nullptr, 0, 0, 0, 245},
{&symbols[35], &states[44], nullptr, 0, 0, 0, 246},
{&symbols[36], &states[62], nullptr, 0, 0, 0, 247},
{&symbols[37], &states[63], nullptr, 0, 0, 0, 248},
{&symbols[38], &states[64], nullptr, 0, 0, 0, 249},
{&symbols[39], &states[65], nullptr, 0, 0, 0, 250},
{&symbols[4], &states[43], nullptr, 0, 0, 0, 251},
{&symbols[18], &states[33], nullptr, 0, 0, 0, 252},
{&symbols[31], &states[53], nullptr, 0, 0, 0, 253},
{&symbols[35], &states[44], nullptr, 0, 0, 0, 254},
{&symbols[36], &states[62], nullptr, 0, 0, 0, 255},
{&symbols[37], &states[63], nullptr, 0, 0, 0, 256},
{&symbols[38], &states[64], nullptr, 0, 0, 0, 257},
{&symbols[39], &states[65], nullptr, 0, 0, 0, 258},
{&symbols[4], &states[43], nullptr, 0, 0, 0, 259},
{&symbols[18], &states[33], nullptr, 0, 0, 0, 260},
{&symbols[31], &states[54], nullptr, 0, 0, 0, 261},
{&symbols[35], &states[44], nullptr, 0, 0, 0, 262},
{&symbols[36], &states[62], nullptr, 0, 0, 0, 263},
{&symbols[37], &states[63], nullptr, 0, 0, 0, 264},
{&symbols[38], &states[64], nullptr, 0, 0, 0, 265},
{&symbols[39], &states[65], nullptr, 0, 0, 0, 266},
{&symbols[4], &states[43], nullptr, 0, 0, 0, 267},
{&symbols[18], &states[33], nullptr, 0, 0, 0, 268},
{&symbols[31], &states[55], nullptr, 0, 0, 0, 269},
{&symbols[35], &states[44], nullptr, 0, 0, 0, 270},
{&symbols[36], &states[62], nullptr, 0, 0, 0, 271},
{&symbols[37], &states[63], nullptr, 0, 0, 0, 272},
{&symbols[38], &states[64], nullptr, 0, 0, 0, 273},
{&symbols[39], &states[65], nullptr, 0, 0, 0, 274},
{&symbols[4], &states[43], nullptr, 0, 0, 0, 275},
{&symbols[18], &states[33], nullptr, 0, 0, 0, 276},
{&symbols[31], &states[56], nullptr, 0, 0, 0, 277},
{&symbols[35], &states[44], nullptr, 0, 0, 0, 278},
{&symbols[36], &states[62], nullptr, 0, 0, 0, 279},
{&symbols[37], &states[63], nullptr, 0, 0, 0, 280},
{&symbols[38], &states[64], nullptr, 0, 0, 0, 281},
{&symbols[39], &states[65], nullptr, 0, 0, 0, 282},
{&symbols[4], &states[43], nullptr, 0, 0, 0, 283},
{&symbols[18], &states[33], nullptr, 0, 0, 0, 284},
{&symbols[31], &states[57], nullptr, 0, 0, 0, 285},
{&symbols[35], &states[44], nullptr, 0, 0, 0, 286},
{&symbols[36], &states[62], nullptr, 0, 0, 0, 287},
{&symbols[37], &states[63], nullptr, 0, 0, 0, 288},
{&symbols[38], &states[64], nullptr, 0, 0, 0, 289},
{&symbols[39], &states[65], nullptr, 0, 0, 0, 290},
{&symbols[4], &states[24], nullptr, 0, 0, 0, 291},
{&symbols[5], nullptr, &symbols[31], 1, 0, 29, 292},
{&symbols[6], nullptr, &symbols[31], 1, 0, 29, 293},
{&symbols[7], nullptr, &symbols[31], 1, 0, 29, 294},
{&symbols[8], nullptr, &symbols[31], 1, 0, 29, 295},
{&symbols[9], nullptr, &symbols[31], 1, 0, 29, 296},
{&symbols[10], nullptr, &symbols[31], 1, 0, 29, 297},
{&symbols[11], nullptr, &symbols[31], 1, 0, 29, 298},
{&symbols[12], nullptr, &symbols[31], 1, 0, 29, 299},
{&symbols[13], nullptr, &symbols[31], 1, 0, 29, 300},
{&symbols[14], nullptr, &symbols[31], 1, 0, 29, 301},
{&symbols[15], nullptr, &symbols[31], 1, 0, 29, 302},
{&symbols[16], nullptr, &symbols[31], 1, 0, 29, 303},
{&symbols[17], nullptr, &symbols[31], 1, 0, 29, 304},
{&symbols[22], nullptr, &symbols[31], 1, 0, 29, 305},
{&symbols[23], nullptr, &symbols[31], 1, 0, 29, 306},
{&symbols[34], nullptr, &symbols[31], 1, 0, 29, 307},
{&symbols[5], nullptr, &symbols[31], 4, 3, 10, 308},
{&symbols[6], nullptr, &symbols[31], 4, 3, 10, 309},
{&symbols[7], nullptr, &symbols[31], 4, 3, 10, 310},
{&symbols[8], nullptr, &symbols[31], 4, 3, 10, 311},
{&symbols[9], nullptr, &symbols[31], 4, 3, 10, 312},
{&symbols[10], nullptr, &symbols[31], 4, 3, 10, 313},
{&symbols[11], nullptr, &symbols[31], 4, 3, 10, 314},
{&symbols[12], nullptr, &symbols[31], 4, 3, 10, 315},
{&symbols[13], nullptr, &symbols[31], 4, 3, 10, 316},
{&symbols[14], nullptr, &symbols[31], 4, 3, 10, 317},
{&symbols[15], nullptr, &symbols[31], 4, 3, 10, 318},
{&symbols[16], nullptr, &symbols[31], 4, 3, 10, 319},
{&symbols[17], nullptr, &symbols[31], 4, 3, 10, 320},
{&symbols[22], nullptr, &symbols[31], 4, 3, 10, 321},
{&symbols[23], nullptr, &symbols[31], 4, 3, 10, 322},
{&symbols[34], nullptr, &symbols[31], 4, 3, 10, 323},
{&symbols[6], nullptr, &symbols[31], 3, 7, 13, 324},
{&symbols[7], nullptr, &symbols[31], 3, 7, 13, 325},
{&symbols[8], nullptr, &symbols[31], 3, 7, 13, 326},
{&symbols[9], nullptr, &symbols[31], 3, 7, 13, 327},
{&symbols[10], nullptr, &symbols[31], 3, 7, 13, 328},
{&symbols[12], &states[32], nullptr, 0, 0, 0, 329},
{&symbols[13], &states[35], nullptr, 0, 0, 0, 330},
{&symbols[14], &states[36], nullptr, 0, 0, 0, 331},
{&symbols[15], &states[37], nullptr, 0, 0, 0, 332},
{&symbols[16], &states[38], nullptr, 0, 0, 0, 333},
{&symbols[17], &states[34], nullptr, 0, 0, 0, 334},
{&symbols[5], nullptr, &symbols[31], 3, 7, 13, 335},
{&symbols[11], nullptr, &symbols[31], 3, 7, 13, 336},
{&symbols[22], nullptr, &symbols[31], 3, 7, 13, 337},
{&symbols[23], nullptr, &symbols[31], 3, 7, 13, 338},
{&symbols[34], nullptr, &symbols[31], 3, 7, 13, 339},
{&symbols[6], nullptr, &symbols[31], 2, 7, 14, 340},
{&symbols[7], nullptr, &symbols[31], 2, 7, 14, 341},
{&symbols[8], nullptr, &symbols[31], 2, 7, 14, 342},
{&symbols[9], nullptr, &symbols[31], 2, 7, 14, 343},
{&symbols[10], nullptr, &symbols[31], 2, 7, 14, 344},
{&symbols[12], &states[32], nullptr, 0, 0, 0, 345},
{&symbols[13], &states[35], nullptr, 0, 0, 0, 346},
{&symbols[14], &states[36], nullptr, 0, 0, 0, 347},
{&symbols[15], &states[37], nullptr, 0, 0, 0, 348},
{&symbols[16], &states[38], nullptr, 0, 0, 0, 349},
{&symbols[17], &states[34], nullptr, 0, 0, 0, 350},
{&symbols[5], nullptr, &symbols[31], 2, 7, 14, 351},
{&symbols[11], nullptr, &symbols[31], 2, 7, 14, 352},
{&symbols[22], nullptr, &symbols[31], 2, 7, 14, 353},
{&symbols[23], nullptr, &symbols[31], 2, 7, 14, 354},
{&symbols[34], nullptr, &symbols[31], 2, 7, 14, 355},
{&symbols[6], nullptr, &symbols[31], 3, 7, 15, 356},
{&symbols[7], nullptr, &symbols[31], 3, 7, 15, 357},
{&symbols[8], nullptr, &symbols[31], 3, 7, 15, 358},
{&symbols[9], nullptr, &symbols[31], 3, 7, 15, 359},
{&symbols[10], nullptr, &symbols[31], 3, 7, 15, 360},
{&symbols[12], &states[32], nullptr, 0, 0, 0, 361},
{&symbols[13], &states[35], nullptr, 0, 0, 0, 362},
{&symbols[14], &states[36], nullptr, 0, 0, 0, 363},
{&symbols[15], &states[37], nullptr, 0, 0, 0, 364},
{&symbols[16], &states[38], nullptr, 0, 0, 0, 365},
{&symbols[17], &states[34], nullptr, 0, 0, 0, 366},
{&symbols[5], nullptr, &symbols[31], 3, 7, 15, 367},
{&symbols[11], nullptr, &symbols[31], 3, 7, 15, 368},
{&symbols[22], nullptr, &symbols[31], 3, 7, 15, 369},
{&symbols[23], nullptr, &symbols[31], 3, 7, 15, 370},
{&symbols[34], nullptr, &symbols[31], 3, 7, 15, 371},
{&symbols[6], nullptr, &symbols[31], 3, 7, 16, 372},
{&symbols[7], nullptr, &symbols[31], 3, 7, 16, 373},
{&symbols[8], nullptr, &symbols[31], 3, 7, 16, 374},
{&symbols[9], nullptr, &symbols[31], 3, 7, 16, 375},
{&symbols[10], nullptr, &symbols[31], 3, 7, 16, 376},
{&symbols[12], &states[32], nullptr, 0, 0, 0, 377},
{&symbols[13], &states[35], nullptr, 0, 0, 0, 378},
{&symbols[14], &states[36], nullptr, 0, 0, 0, 379},
{&symbols[15], &states[37], nullptr, 0, 0, 0, 380},
{&symbols[16], &states[38], nullptr, 0, 0, 0, 381},
{&symbols[17], &states[34], nullptr, 0, 0, 0, 382},
{&symbols[5], nullptr, &symbols[31], 3, 7, 16, 383},
{&symbols[11], nullptr, &symbols[31], 3, 7, 16, 384},
{&symbols[22], nullptr, &symbols[31], 3, 7, 16, 385},
{&symbols[23], nullptr, &symbols[31], 3, 7, 16, 386},
{&symbols[34], nullptr, &symbols[31], 3, 7, 16, 387},
{&symbols[6], nullptr, &symbols[31], 3, 7, 17, 388},
{&symbols[7], nullptr, &symbols[31], 3, 7, 17, 389},
{&symbols[8], nullptr, &symbols[31], 3, 7, 17, 390},
{&symbols[9], nullptr, &symbols[31], 3, 7, 17, 391},
{&symbols[10], nullptr, &symbols[31], 3, 7, 17, 392},
{&symbols[12], &states[32], nullptr, 0, 0, 0, 393},
{&symbols[13], &states[35], nullptr, 0, 0, 0, 394},
{&symbols[14], &states[36], nullptr, 0, 0, 0, 395},
{&symbols[15], &states[37], nullptr, 0, 0, 0, 396},
{&symbols[16], &states[38], nullptr, 0, 0, 0, 397},
{&symbols[17], &states[34], nullptr, 0, 0, 0, 398},
{&symbols[5], nullptr, &symbols[31], 3, 7, 17, 399},
{&symbols[11], nullptr, &symbols[31], 3, 7, 17, 400},
{&symbols[22], nullptr, &symbols[31], 3, 7, 17, 401},
{&symbols[23], nullptr, &symbols[31], 3, 7, 17, 402},
{&symbols[34], nullptr, &symbols[31], 3, 7, 17, 403},
{&symbols[6], nullptr, &symbols[31], 3, 7, 18, 404},
{&symbols[7], nullptr, &symbols[31], 3, 7, 18, 405},
{&symbols[8], nullptr, &symbols[31], 3, 7, 18, 406},
{&symbols[9], nullptr, &symbols[31], 3, 7, 18, 407},
{&symbols[10], nullptr, &symbols[31], 3, 7, 18, 408},
{&symbols[12], &states[32], nullptr, 0, 0, 0, 409},
{&symbols[13], &states[35], nullptr, 0, 0, 0, 410},
{&symbols[14], &states[36], nullptr, 0, 0, 0, 411},
{&symbols[15], &states[37], nullptr, 0, 0, 0, 412},
{&symbols[16], &states[38], nullptr, 0, 0, 0, 413},
{&symbols[17], &states[34], nullptr, 0, 0, 0, 414},
{&symbols[5], nullptr, &symbols[31], 3, 7, 18, 415},
{&symbols[11], nullptr, &symbols[31], 3, 7, 18, 416},
{&symbols[22], nullptr, &symbols[31], 3, 7, 18, 417},
{&symbols[23], nullptr, &symbols[31], 3, 7, 18, 418},
{&symbols[34], nullptr, &symbols[31], 3, 7, 18, 419},
{&symbols[6], nullptr, &symbols[31], 3, 7, 19, 420},
{&symbols[7], nullptr, &symbols[31], 3, 7, 19, 421},
{&symbols[8], nullptr, &symbols[31], 3, 7, 19, 422},
{&symbols[9], nullptr, &symbols[31], 3, 7, 19, 423},
{&symbols[10], nullptr, &symbols[31], 3, 7, 19, 424},
{&symbols[12], &states[32], nullptr, 0, 0, 0, 425},
{&symbols[13], &states[35], nullptr, 0, 0, 0, 426},
{&symbols[14], &states[36], nullptr, 0, 0, 0, 427},
{&symbols[15], &states[37], nullptr, 0, 0, 0, 428},
{&symbols[16], &states[38], nullptr, 0, 0, 0, 429},
{&symbols[17], &states[34], nullptr, 0, 0, 0, 430},
{&symbols[5], nullptr, &symbols[31], 3, 7, 19, 431},
{&symbols[11], nullptr, &symbols[31], 3, 7, 19, 432},
{&symbols[22], nullptr, &symbols[31], 3, 7, 19, 433},
{&symbols[23], nullptr, &symbols[31], 3, 7, 19, 434},
{&symbols[34], nullptr, &symbols[31], 3, 7, 19, 435},
{&symbols[6], &states[39], nullptr, 0, 0, 0, 436},
{&symbols[7], &states[40], nullptr, 0, 0, 0, 437},
{&symbols[8], &states[41], nullptr, 0, 0, 0, 438},
{&symbols[9], &states[42], nullptr, 0, 0, 0, 439},
{&symbols[10], &states[58], nullptr, 0, 0, 0, 440},
{&symbols[12], &states[32], nullptr, 0, 0, 0, 441},
{&symbols[13], &states[35], nullptr, 0, 0, 0, 442},
{&symbols[14], &states[36], nullptr, 0, 0, 0, 443},
{&symbols[15], &states[37], nullptr, 0, 0, 0, 444},
{&symbols[16], &states[38], nullptr, 0, 0, 0, 445},
{&symbols[17], &states[34], nullptr, 0, 0, 0, 446},
{&symbols[5], nullptr, &symbols[31], 3, 4, 20, 447},
{&symbols[11], nullptr, &symbols[31], 3, 4, 20, 448},
{&symbols[22], nullptr, &symbols[31], 3, 4, 20, 449},
{&symbols[23], nullptr, &symbols[31], 3, 4, 20, 450},
{&symbols[34], nullptr, &symbols[31], 3, 4, 20, 451},
{&symbols[6], &states[39], nullptr, 0, 0, 0, 452},
{&symbols[7], &states[40], nullptr, 0, 0, 0, 453},
{&symbols[8], &states[41], nullptr, 0, 0, 0, 454},
{&symbols[9], &states[42], nullptr, 0, 0, 0, 455},
{&symbols[10], &states[58], nullptr, 0, 0, 0, 456},
{&symbols[12], &states[32], nullptr, 0, 0, 0, 457},
{&symbols[13], &states[35], nullptr, 0, 0, 0, 458},
{&symbols[14], &states[36], nullptr, 0, 0, 0, 459},
{&symbols[15], &states[37], nullptr, 0, 0, 0, 460},
{&symbols[16], &states[38], nullptr, 0, 0, 0, 461},
{&symbols[17], &states[34], nullptr, 0, 0, 0, 462},
{&symbols[5], nullptr, &symbols[31], 3, 4, 21, 463},
{&symbols[11], nullptr, &symbols[31], 3, 4, 21, 464},
{&symbols[22], nullptr, &symbols[31], 3, 4, 21, 465},
{&symbols[23], nullptr, &symbols[31], 3, 4, 21, 466},
{&symbols[34], nullptr, &symbols[31], 3, 4, 21, 467},
{&symbols[6], nullptr, &symbols[31], 3, 5, 22, 468},
{&symbols[7], nullptr, &symbols[31], 3, 5, 22, 469},
{&symbols[8], &states[41], nullptr, 0, 0, 0, 470},
{&symbols[9], &states[42], nullptr, 0, 0, 0, 471},
{&symbols[10], &states[58], nullptr, 0, 0, 0, 472},
{&symbols[12], &states[32], nullptr, 0, 0, 0, 473},
{&symbols[13], &states[35], nullptr, 0, 0, 0, 474},
{&symbols[14], &states[36], nullptr, 0, 0, 0, 475},
{&symbols[15], &states[37], nullptr, 0, 0, 0, 476},
{&symbols[16], &states[38], nullptr, 0, 0, 0, 477},
{&symbols[17], &states[34], nullptr, 0, 0, 0, 478},
{&symbols[5], nullptr, &symbols[31], 3, 5, 22, 479},
{&symbols[11], nullptr, &symbols[31], 3, 5, 22, 480},
{&symbols[22], nullptr, &symbols[31], 3, 5, 22, 481},
{&symbols[23], nullptr, &symbols[31], 3, 5, 22, 482},
{&symbols[34], nullptr, &symbols[31], 3, 5, 22, 483},
{&symbols[6], nullptr, &symbols[31], 3, 5, 23, 484},
{&symbols[7], nullptr, &symbols[31], 3, 5, 23, 485},
{&symbols[8], &states[41], nullptr, 0, 0, 0, 486},
{&symbols[9], &states[42], nullptr, 0, 0, 0, 487},
{&symbols[10], &states[58], nullptr, 0, 0, 0, 488},
{&symbols[12], &states[32], nullptr, 0, 0, 0, 489},
{&symbols[13], &states[35], nullptr, 0, 0, 0, 490},
{&symbols[14], &states[36], nullptr, 0, 0, 0, 491},
{&symbols[15], &states[37], nullptr, 0, 0, 0, 492},
{&symbols[16], &states[38], nullptr, 0, 0, 0, 493},
{&symbols[17], &states[34], nullptr, 0, 0, 0, 494},
{&symbols[5], nullptr, &symbols[31], 3, 5, 23, 495},
{&symbols[11], nullptr, &symbols[31], 3, 5, 23, 496},
{&symbols[22], nullptr, &symbols[31], 3, 5, 23, 497},
{&symbols[23], nullptr, &symbols[31], 3, 5, 23, 498},
{&symbols[34], nullptr, &symbols[31], 3, 5, 23, 499},
{&symbols[5], &states[61], nullptr, 0, 0, 0, 500},
{&symbols[6], &states[39], nullptr, 0, 0, 0, 501},
{&symbols[7], &states[40], nullptr, 0, 0, 0, 502},
{&symbols[8], &states[41], nullptr, 0, 0, 0, 503},
{&symbols[9], &states[42], nullptr, 0, 0, 0, 504},
{&symbols[10], &states[58], nullptr, 0, 0, 0, 505},
{&symbols[12], &states[32], nullptr, 0, 0, 0, 506},
{&symbols[13], &states[35], nullptr, 0, 0, 0, 507},
{&symbols[14], &states[36], nullptr, 0, 0, 0, 508},
{&symbols[15], &states[37], nullptr, 0, 0, 0, 509},
{&symbols[16], &states[38], nullptr, 0, 0, 0, 510},
{&symbols[17], &states[34], nullptr, 0, 0, 0, 511},
{&symbols[35], &states[59], nullptr, 0, 0, 0, 512},
{&symbols[4], &states[25], nullptr, 0, 0, 0, 513},
{&symbols[5], nullptr, &symbols[31], 3, 0, 12, 514},
{&symbols[6], nullptr, &symbols[31], 3, 0, 12, 515},
{&symbols[7], nullptr, &symbols[31], 3, 0, 12, 516},
{&symbols[8], nullptr, &symbols[31], 3, 0, 12, 517},
{&symbols[9], nullptr, &symbols[31], 3, 0, 12, 518},
{&symbols[10], nullptr, &symbols[31], 3, 0, 12, 519},
{&symbols[11], nullptr, &symbols[31], 3, 0, 12, 520},
{&symbols[12], nullptr, &symbols[31], 3, 0, 12, 521},
{&symbols[13], nullptr, &symbols[31], 3, 0, 12, 522},
{&symbols[14], nullptr, &symbols[31], 3, 0, 12, 523},
{&symbols[15], nullptr, &symbols[31], 3, 0, 12, 524},
{&symbols[16], nullptr, &symbols[31], 3, 0, 12, 525},
{&symbols[17], nullptr, &symbols[31], 3, 0, 12, 526},
{&symbols[22], nullptr, &symbols[31], 3, 0, 12, 527},
{&symbols[23], nullptr, &symbols[31], 3, 0, 12, 528},
{&symbols[34], nullptr, &symbols[31], 3, 0, 12, 529},
{&symbols[5], nullptr, &symbols[31], 6, 3, 11, 530},
{&symbols[6], nullptr, &symbols[31], 6, 3, 11, 531},
{&symbols[7], nullptr, &symbols[31], 6, 3, 11, 532},
{&symbols[8], nullptr, &symbols[31], 6, 3, 11, 533},
{&symbols[9], nullptr, &symbols[31], 6, 3, 11, 534},
{&symbols[10], nullptr, &symbols[31], 6, 3, 11, 535},
{&symbols[11], nullptr, &symbols[31], 6, 3, 11, 536},
{&symbols[12], nullptr, &symbols[31], 6, 3, 11, 537},
{&symbols[13], nullptr, &symbols[31], 6, 3, 11, 538},
{&symbols[14], nullptr, &symbols[31], 6, 3, 11, 539},
{&symbols[15], nullptr, &symbols[31], 6, 3, 11, 540},
{&symbols[16], nullptr, &symbols[31], 6, 3, 11, 541},
{&symbols[17], nullptr, &symbols[31], 6, 3, 11, 542},
{&symbols[22], nullptr, &symbols[31], 6, 3, 11, 543},
{&symbols[23], nullptr, &symbols[31], 6, 3, 11, 544},
{&symbols[34], nullptr, &symbols[31], 6, 3, 11, 545},
{&symbols[5], nullptr, &symbols[31], 3, 3, 24, 546},
{&symbols[6], nullptr, &symbols[31], 3, 3, 24, 547},
{&symbols[7], nullptr, &symbols[31], 3, 3, 24, 548},
{&symbols[8], nullptr, &symbols[31], 3, 3, 24, 549},
{&symbols[9], nullptr, &symbols[31], 3, 3, 24, 550},
{&symbols[10], nullptr, &symbols[31], 3, 3, 24, 551},
{&symbols[11], nullptr, &symbols[31], 3, 3, 24, 552},
{&symbols[12], nullptr, &symbols[31], 3, 3, 24, 553},
{&symbols[13], nullptr, &symbols[31], 3, 3, 24, 554},
{&symbols[14], nullptr, &symbols[31], 3, 3, 24, 555},
{&symbols[15], nullptr, &symbols[31], 3, 3, 24, 556},
{&symbols[16], nullptr, &symbols[31], 3, 3, 24, 557},
{&symbols[17], nullptr, &symbols[31], 3, 3, 24, 558},
{&symbols[22], nullptr, &symbols[31], 3, 3, 24, 559},
{&symbols[23], nullptr, &symbols[31], 3, 3, 24, 560},
{&symbols[34], nullptr, &symbols[31], 3, 3, 24, 561},
{&symbols[5], nullptr, &symbols[31], 1, 0, 25, 562},
{&symbols[6], nullptr, &symbols[31], 1, 0, 25, 563},
{&symbols[7], nullptr, &symbols[31], 1, 0, 25, 564},
{&symbols[8], nullptr, &symbols[31], 1, 0, 25, 565},
{&symbols[9], nullptr, &symbols[31], 1, 0, 25, 566},
{&symbols[10], nullptr, &symbols[31], 1, 0, 25, 567},
{&symbols[11], nullptr, &symbols[31], 1, 0, 25, 568},
{&symbols[12], nullptr, &symbols[31], 1, 0, 25, 569},
{&symbols[13], nullptr, &symbols[31], 1, 0, 25, 570},
{&symbols[14], nullptr, &symbols[31], 1, 0, 25, 571},
{&symbols[15], nullptr, &symbols[31], 1, 0, 25, 572},
{&symbols[16], nullptr, &symbols[31], 1, 0, 25, 573},
{&symbols[17], nullptr, &symbols[31], 1, 0, 25, 574},
{&symbols[22], nullptr, &symbols[31], 1, 0, 25, 575},
{&symbols[23], nullptr, &symbols[31], 1, 0, 25, 576},
{&symbols[34], nullptr, &symbols[31], 1, 0, 25, 577},
{&symbols[5], nullptr, &symbols[31], 1, 2, 26, 578},
{&symbols[6], nullptr, &symbols[31], 1, 2, 26, 579},
{&symbols[7], nullptr, &symbols[31], 1, 2, 26, 580},
{&symbols[8], nullptr, &symbols[31], 1, 2, 26, 581},
{&symbols[9], nullptr, &symbols[31], 1, 2, 26, 582},
{&symbols[10], nullptr, &symbols[31], 1, 2, 26, 583},
{&symbols[11], nullptr, &symbols[31], 1, 2, 26, 584},
{&symbols[12], nullptr, &symbols[31], 1, 2, 26, 585},
{&symbols[13], nullptr, &symbols[31], 1, 2, 26, 586},
{&symbols[14], nullptr, &symbols[31], 1, 2, 26, 587},
{&symbols[15], nullptr, &symbols[31], 1, 2, 26, 588},
{&symbols[16], nullptr, &symbols[31], 1, 2, 26, 589},
{&symbols[17], nullptr, &symbols[31], 1, 2, 26, 590},
{&symbols[22], nullptr, &symbols[31], 1, 2, 26, 591},
{&symbols[23], nullptr, &symbols[31], 1, 2, 26, 592},
{&symbols[34], nullptr, &symbols[31], 1, 2, 26, 593},
{&symbols[5], nullptr, &symbols[31], 1, 0, 27, 594},
{&symbols[6], nullptr, &symbols[31], 1, 0, 27, 595},
{&symbols[7], nullptr, &symbols[31], 1, 0, 27, 596},
{&symbols[8], nullptr, &symbols[31], 1, 0, 27, 597},
{&symbols[9], nullptr, &symbols[31], 1, 0, 27, 598},
{&symbols[10], nullptr, &symbols[31], 1, 0, 27, 599},
{&symbols[11], nullptr, &symbols[31], 1, 0, 27, 600},
{&symbols[12], nullptr, &symbols[31], 1, 0, 27, 601},
{&symbols[13], nullptr, &symbols[31], 1, 0, 27, 602},
{&symbols[14], nullptr, &symbols[31], 1, 0, 27, 603},
{&symbols[15], nullptr, &symbols[31], 1, 0, 27, 604},
{&symbols[16], nullptr, &symbols[31], 1, 0, 27, 605},
{&symbols[17], nullptr, &symbols[31], 1, 0, 27, 606},
{&symbols[22], nullptr, &symbols[31], 1, 0, 27, 607},
{&symbols[23], nullptr, &symbols[31], 1, 0, 27, 608},
{&symbols[34], nullptr, &symbols[31], 1, 0, 27, 609},
{&symbols[5], nullptr, &symbols[31], 1, 0, 28, 610},
{&symbols[6], nullptr, &symbols[31], 1, 0, 28, 611},
{&symbols[7], nullptr, &symbols[31], 1, 0, 28, 612},
{&symbols[8], nullptr, &symbols[31], 1, 0, 28, 613},
{&symbols[9], nullptr, &symbols[31], 1, 0, 28, 614},
{&symbols[10], nullptr, &symbols[31], 1, 0, 28, 615},
{&symbols[11], nullptr, &symbols[31], 1, 0, 28, 616},
{&symbols[12], nullptr, &symbols[31], 1, 0, 28, 617},
{&symbols[13], nullptr, &symbols[31], 1, 0, 28, 618},
{&symbols[14], nullptr, &symbols[31], 1, 0, 28, 619},
{&symbols[15], nullptr, &symbols[31], 1, 0, 28, 620},
{&symbols[16], nullptr, &symbols[31], 1, 0, 28, 621},
{&symbols[17], nullptr, &symbols[31], 1, 0, 28, 622},
{&symbols[22], nullptr, &symbols[31], 1, 0, 28, 623},
{&symbols[23], nullptr, &symbols[31], 1, 0, 28, 624},
{&symbols[34], nullptr, &symbols[31], 1, 0, 28, 625},
{nullptr, nullptr, nullptr, 0, 0, 0, -1}
};
const ParserState states [] =
{
{0, 3, &transitions[0], "(null)"},
{1, 1, &transitions[3], "(null)"},
{2, 18, &transitions[4], "(null)"},
{3, 2, &transitions[22], "(null)"},
{4, 1, &transitions[24], "(null)"},
{5, 15, &transitions[25], "(null)"},
{6, 1, &transitions[40], "(null)"},
{7, 2, &transitions[41], "(null)"},
{8, 2, &transitions[43], "(null)"},
{9, 2, &transitions[45], "(null)"},
{10, 2, &transitions[47], "(null)"},
{11, 2, &transitions[49], "(null)"},
{12, 2, &transitions[51], "(null)"},
{13, 1, &transitions[53], "(null)"},
{14, 2, &transitions[54], "(null)"},
{15, 1, &transitions[56], "(null)"},
{16, 2, &transitions[57], "(null)"},
{17, 8, &transitions[59], "(null)"},
{18, 13, &transitions[67], "(null)"},
{19, 8, &transitions[80], "(null)"},
{20, 13, &transitions[88], "(null)"},
{21, 12, &transitions[101], "(null)"},
{22, 8, &transitions[113], "(null)"},
{23, 13, &transitions[121], "(null)"},
{24, 11, &transitions[134], "(null)"},
{25, 11, &transitions[145], "(null)"},
{26, 2, &transitions[156], "(null)"},
{27, 2, &transitions[158], "(null)"},
{28, 8, &transitions[160], "(null)"},
{29, 12, &transitions[168], "(null)"},
{30, 2, &transitions[180], "(null)"},
{31, 13, &transitions[182], "(null)"},
{32, 8, &transitions[195], "(null)"},
{33, 8, &transitions[203], "(null)"},
{34, 8, &transitions[211], "(null)"},
{35, 8, &transitions[219], "(null)"},
{36, 8, &transitions[227], "(null)"},
{37, 8, &transitions[235], "(null)"},
{38, 8, &transitions[243], "(null)"},
{39, 8, &transitions[251], "(null)"},
{40, 8, &transitions[259], "(null)"},
{41, 8, &transitions[267], "(null)"},
{42, 8, &transitions[275], "(null)"},
{43, 8, &transitions[283], "(null)"},
{44, 17, &transitions[291], "(null)"},
{45, 16, &transitions[308], "(null)"},
{46, 16, &transitions[324], "(null)"},
{47, 16, &transitions[340], "(null)"},
{48, 16, &transitions[356], "(null)"},
{49, 16, &transitions[372], "(null)"},
{50, 16, &transitions[388], "(null)"},
{51, 16, &transitions[404], "(null)"},
{52, 16, &transitions[420], "(null)"},
{53, 16, &transitions[436], "(null)"},
{54, 16, &transitions[452], "(null)"},
{55, 16, &transitions[468], "(null)"},
{56, 16, &transitions[484], "(null)"},
{57, 12, &transitions[500], "(null)"},
{58, 1, &transitions[512], "(null)"},
{59, 17, &transitions[513], "(null)"},
{60, 16, &transitions[530], "(null)"},
{61, 16, &transitions[546], "(null)"},
{62, 16, &transitions[562], "(null)"},
{63, 16, &transitions[578], "(null)"},
{64, 16, &transitions[594], "(null)"},
{65, 16, &transitions[610], "(null)"},
{-1, 0, nullptr}
};
const LexerAction lexer_actions [] =
{
{0, "string"},
{-1, nullptr}
};
const LexerTransition lexer_transitions [] =
{
{33, 34, &lexer_states[29], nullptr},
{34, 35, &lexer_states[60], nullptr},
{39, 40, &lexer_states[60], nullptr},
{40, 41, &lexer_states[17], nullptr},
{41, 42, &lexer_states[18], nullptr},
{42, 43, &lexer_states[21], nullptr},
{43, 44, &lexer_states[19], nullptr},
{44, 45, &lexer_states[43], nullptr},
{45, 46, &lexer_states[20], nullptr},
{46, 47, &lexer_states[6], nullptr},
{47, 48, &lexer_states[22], nullptr},
{48, 58, &lexer_states[53], nullptr},
{58, 59, &lexer_states[37], nullptr},
{59, 60, &lexer_states[33], nullptr},
{60, 61, &lexer_states[26], nullptr},
{61, 62, &lexer_states[23], nullptr},
{62, 63, &lexer_states[25], nullptr},
{97, 101, &lexer_states[44], nullptr},
{101, 102, &lexer_states[1], nullptr},
{102, 103, &lexer_states[46], nullptr},
{103, 112, &lexer_states[44], nullptr},
{112, 113, &lexer_states[38], nullptr},
{113, 116, &lexer_states[44], nullptr},
{116, 117, &lexer_states[45], nullptr},
{117, 118, &lexer_states[44], nullptr},
{118, 119, &lexer_states[34], nullptr},
{119, 123, &lexer_states[44], nullptr},
{123, 124, &lexer_states[31], nullptr},
{125, 126, &lexer_states[32], nullptr},
{114, 115, &lexer_states[2], nullptr},
{114, 115, &lexer_states[3], nullptr},
{111, 112, &lexer_states[4], nullptr},
{114, 115, &lexer_states[5], nullptr},
{119, 120, &lexer_states[7], nullptr},
{104, 105, &lexer_states[8], nullptr},
{105, 106, &lexer_states[9], nullptr},
{116, 117, &lexer_states[10], nullptr},
{101, 102, &lexer_states[11], nullptr},
{115, 116, &lexer_states[12], nullptr},
{112, 113, &lexer_states[13], nullptr},
{97, 98, &lexer_states[14], nullptr},
{99, 100, &lexer_states[15], nullptr},
{101, 102, &lexer_states[16], nullptr},
{48, 58, &lexer_states[53], nullptr},
{48, 58, &lexer_states[53], nullptr},
{61, 62, &lexer_states[24], nullptr},
{61, 62, &lexer_states[27], nullptr},
{61, 62, &lexer_states[28], nullptr},
{61, 62, &lexer_states[30], nullptr},
{97, 98, &lexer_states[35], nullptr},
{114, 115, &lexer_states[36], nullptr},
{114, 115, &lexer_states[39], nullptr},
{105, 106, &lexer_states[40], nullptr},
{110, 111, &lexer_states[41], nullptr},
{116, 117, &lexer_states[42], nullptr},
{114, 115, &lexer_states[47], nullptr},
{97, 98, &lexer_states[49], nullptr},
{117, 118, &lexer_states[48], nullptr},
{101, 102, &lexer_states[52], nullptr},
{108, 109, &lexer_states[50], nullptr},
{115, 116, &lexer_states[51], nullptr},
{101, 102, &lexer_states[52], nullptr},
{46, 47, &lexer_states[54], nullptr},
{48, 58, &lexer_states[53], nullptr},
{69, 70, &lexer_states[56], nullptr},
{101, 102, &lexer_states[56], nullptr},
{48, 58, &lexer_states[55], nullptr},
{48, 58, &lexer_states[55], nullptr},
{69, 70, &lexer_states[56], nullptr},
{101, 102, &lexer_states[56], nullptr},
{43, 44, &lexer_states[57], nullptr},
{45, 46, &lexer_states[57], nullptr},
{48, 58, &lexer_states[58], nullptr},
{48, 58, &lexer_states[58], nullptr},
{48, 58, &lexer_states[58], nullptr},
{0, 2147483647, &lexer_states[59], &lexer_actions[0]},
{-1, -1, nullptr, nullptr}
};
const LexerState lexer_states [] =
{
{0, 29, &lexer_transitions[0], nullptr},
{1, 1, &lexer_transitions[29], &symbols[35]},
{2, 1, &lexer_transitions[30], nullptr},
{3, 1, &lexer_transitions[31], nullptr},
{4, 1, &lexer_transitions[32], nullptr},
{5, 0, &lexer_transitions[33], &symbols[2]},
{6, 1, &lexer_transitions[33], &symbols[10]},
{7, 1, &lexer_transitions[34], nullptr},
{8, 1, &lexer_transitions[35], nullptr},
{9, 1, &lexer_transitions[36], nullptr},
{10, 1, &lexer_transitions[37], nullptr},
{11, 1, &lexer_transitions[38], nullptr},
{12, 1, &lexer_transitions[39], nullptr},
{13, 1, &lexer_transitions[40], nullptr},
{14, 1, &lexer_transitions[41], nullptr},
{15, 1, &lexer_transitions[42], nullptr},
{16, 0, &lexer_transitions[43], &symbols[3]},
{17, 0, &lexer_transitions[43], &symbols[4]},
{18, 0, &lexer_transitions[43], &symbols[5]},
{19, 1, &lexer_transitions[43], &symbols[6]},
{20, 1, &lexer_transitions[44], &symbols[7]},
{21, 0, &lexer_transitions[45], &symbols[8]},
{22, 0, &lexer_transitions[45], &symbols[9]},
{23, 1, &lexer_transitions[45], &symbols[11]},
{24, 0, &lexer_transitions[46], &symbols[12]},
{25, 1, &lexer_transitions[46], &symbols[13]},
{26, 1, &lexer_transitions[47], &symbols[14]},
{27, 0, &lexer_transitions[48], &symbols[15]},
{28, 0, &lexer_transitions[48], &symbols[16]},
{29, 1, &lexer_transitions[48], &symbols[18]},
{30, 0, &lexer_transitions[49], &symbols[17]},
{31, 0, &lexer_transitions[49], &symbols[20]},
{32, 0, &lexer_transitions[49], &symbols[22]},
{33, 0, &lexer_transitions[49], &symbols[23]},
{34, 1, &lexer_transitions[49], &symbols[35]},
{35, 1, &lexer_transitions[50], nullptr},
{36, 0, &lexer_transitions[51], &symbols[29]},
{37, 0, &lexer_transitions[51], &symbols[30]},
{38, 1, &lexer_transitions[51], &symbols[35]},
{39, 1, &lexer_transitions[52], nullptr},
{40, 1, &lexer_transitions[53], nullptr},
{41, 1, &lexer_transitions[54], nullptr},
{42, 0, &lexer_transitions[55], &symbols[32]},
{43, 0, &lexer_transitions[55], &symbols[34]},
{44, 0, &lexer_transitions[55], &symbols[35]},
{45, 1, &lexer_transitions[55], &symbols[35]},
{46, 1, &lexer_transitions[56], &symbols[35]},
{47, 1, &lexer_transitions[57], nullptr},
{48, 1, &lexer_transitions[58], nullptr},
{49, 1, &lexer_transitions[59], nullptr},
{50, 1, &lexer_transitions[60], nullptr},
{51, 1, &lexer_transitions[61], nullptr},
{52, 0, &lexer_transitions[62], &symbols[36]},
{53, 4, &lexer_transitions[62], &symbols[37]},
{54, 1, &lexer_transitions[66], nullptr},
{55, 3, &lexer_transitions[67], &symbols[38]},
{56, 3, &lexer_transitions[70], nullptr},
{57, 1, &lexer_transitions[73], nullptr},
{58, 1, &lexer_transitions[74], &symbols[38]},
{59, 0, &lexer_transitions[75], &symbols[39]},
{60, 1, &lexer_transitions[75], nullptr},
{-1, 0, nullptr, nullptr}
};
const LexerStateMachine lexer_state_machine =
{
1, // #actions
76, // #transitions
61, // #states
lexer_actions, // actions
lexer_transitions, // transitions
lexer_states, // states
&lexer_states[0] // start state
};
const LexerAction whitespace_lexer_actions [] =
{
{-1, nullptr}
};
const LexerTransition whitespace_lexer_transitions [] =
{
{9, 11, &whitespace_lexer_states[0], nullptr},
{13, 14, &whitespace_lexer_states[0], nullptr},
{32, 33, &whitespace_lexer_states[0], nullptr},
{-1, -1, nullptr, nullptr}
};
const LexerState whitespace_lexer_states [] =
{
{0, 3, &whitespace_lexer_transitions[0], &symbols[3]},
{-1, 0, nullptr, nullptr}
};
const LexerStateMachine whitespace_lexer_state_machine =
{
0, // #actions
3, // #transitions
1, // #states
whitespace_lexer_actions, // actions
whitespace_lexer_transitions, // transitions
whitespace_lexer_states, // states
&whitespace_lexer_states[0] // start state
};
const ParserStateMachine parser_state_machine =
{
"oscript",
30, // #actions
40, // #symbols
626, // #transitions
66, // #states
actions,
symbols,
transitions,
states,
&symbols[0], // start symbol
&symbols[1], // end symbol
&symbols[2], // error symbol
&symbols[3], // whitespace symbol
&states[0], // start state
&lexer_state_machine, // lexer state machine
&whitespace_lexer_state_machine // whitespace lexer state machine
};
}
const lalr::ParserStateMachine* oscript_parser_state_machine = &parser_state_machine;