hogql-parser 1.1.2__tar.gz → 1.2.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,827 @@
1
+
2
+
3
+ #include <cctype>
4
+
5
+
6
+
7
+ // Generated from HogQLLexer.g4 by ANTLR 4.13.2
8
+
9
+
10
+ #include "HogQLLexer.h"
11
+
12
+
13
+ using namespace antlr4;
14
+
15
+
16
+
17
+ using namespace antlr4;
18
+
19
+ namespace {
20
+
21
+ struct HogQLLexerStaticData final {
22
+ HogQLLexerStaticData(std::vector<std::string> ruleNames,
23
+ std::vector<std::string> channelNames,
24
+ std::vector<std::string> modeNames,
25
+ std::vector<std::string> literalNames,
26
+ std::vector<std::string> symbolicNames)
27
+ : ruleNames(std::move(ruleNames)), channelNames(std::move(channelNames)),
28
+ modeNames(std::move(modeNames)), literalNames(std::move(literalNames)),
29
+ symbolicNames(std::move(symbolicNames)),
30
+ vocabulary(this->literalNames, this->symbolicNames) {}
31
+
32
+ HogQLLexerStaticData(const HogQLLexerStaticData&) = delete;
33
+ HogQLLexerStaticData(HogQLLexerStaticData&&) = delete;
34
+ HogQLLexerStaticData& operator=(const HogQLLexerStaticData&) = delete;
35
+ HogQLLexerStaticData& operator=(HogQLLexerStaticData&&) = delete;
36
+
37
+ std::vector<antlr4::dfa::DFA> decisionToDFA;
38
+ antlr4::atn::PredictionContextCache sharedContextCache;
39
+ const std::vector<std::string> ruleNames;
40
+ const std::vector<std::string> channelNames;
41
+ const std::vector<std::string> modeNames;
42
+ const std::vector<std::string> literalNames;
43
+ const std::vector<std::string> symbolicNames;
44
+ const antlr4::dfa::Vocabulary vocabulary;
45
+ antlr4::atn::SerializedATNView serializedATN;
46
+ std::unique_ptr<antlr4::atn::ATN> atn;
47
+ };
48
+
49
+ ::antlr4::internal::OnceFlag hogqllexerLexerOnceFlag;
50
+ #if ANTLR4_USE_THREAD_LOCAL_CACHE
51
+ static thread_local
52
+ #endif
53
+ std::unique_ptr<HogQLLexerStaticData> hogqllexerLexerStaticData = nullptr;
54
+
55
+ void hogqllexerLexerInitialize() {
56
+ #if ANTLR4_USE_THREAD_LOCAL_CACHE
57
+ if (hogqllexerLexerStaticData != nullptr) {
58
+ return;
59
+ }
60
+ #else
61
+ assert(hogqllexerLexerStaticData == nullptr);
62
+ #endif
63
+ auto staticData = std::make_unique<HogQLLexerStaticData>(
64
+ std::vector<std::string>{
65
+ "ALL", "AND", "ANTI", "ANY", "ARRAY", "AS", "ASCENDING", "ASOF", "BETWEEN",
66
+ "BOTH", "BY", "CASE", "CAST", "CATCH", "COHORT", "COLLATE", "CROSS",
67
+ "CUBE", "CURRENT", "DATE", "DAY", "DESC", "DESCENDING", "DISTINCT",
68
+ "ELSE", "END", "EXCEPT", "EXTRACT", "FINAL", "FINALLY", "FIRST", "FN",
69
+ "FOLLOWING", "FOR", "FROM", "FULL", "FUN", "GROUP", "HAVING", "HOUR",
70
+ "ID", "IF", "ILIKE", "IN", "INF", "INNER", "INTERSECT", "INTERVAL",
71
+ "IS", "JOIN", "KEY", "LAST", "LEADING", "LEFT", "LET", "LIKE", "LIMIT",
72
+ "MINUTE", "MONTH", "NAN_SQL", "NOT", "NULL_SQL", "NULLS", "OFFSET",
73
+ "ON", "OR", "ORDER", "OUTER", "OVER", "PARTITION", "PRECEDING", "PREWHERE",
74
+ "QUARTER", "RANGE", "RETURN", "RIGHT", "ROLLUP", "ROW", "ROWS", "SAMPLE",
75
+ "SECOND", "SELECT", "SEMI", "SETTINGS", "SUBSTRING", "THEN", "THROW",
76
+ "TIES", "TIMESTAMP", "TO", "TOP", "TOTALS", "TRAILING", "TRIM", "TRUNCATE",
77
+ "TRY", "UNBOUNDED", "UNION", "USING", "WEEK", "WHEN", "WHERE", "WHILE",
78
+ "WINDOW", "WITH", "YEAR", "ESCAPE_CHAR_COMMON", "IDENTIFIER", "FLOATING_LITERAL",
79
+ "OCTAL_LITERAL", "DECIMAL_LITERAL", "HEXADECIMAL_LITERAL", "STRING_LITERAL",
80
+ "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N",
81
+ "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z", "LETTER",
82
+ "OCT_DIGIT", "DEC_DIGIT", "HEX_DIGIT", "ARROW", "ASTERISK", "BACKQUOTE",
83
+ "BACKSLASH", "COLON", "COMMA", "CONCAT", "DASH", "DOLLAR", "DOT",
84
+ "EQ_DOUBLE", "EQ_SINGLE", "GT_EQ", "GT", "HASH", "IREGEX_SINGLE",
85
+ "IREGEX_DOUBLE", "LBRACE", "LBRACKET", "LPAREN", "LT_EQ", "TAG_LT_SLASH",
86
+ "TAG_LT_OPEN", "LT", "LT_SLASH", "NOT_EQ", "NOT_IREGEX", "NOT_REGEX",
87
+ "NULL_PROPERTY", "NULLISH", "PERCENT", "PLUS", "QUERY", "QUOTE_DOUBLE",
88
+ "QUOTE_SINGLE_TEMPLATE", "QUOTE_SINGLE_TEMPLATE_FULL", "QUOTE_SINGLE",
89
+ "REGEX_SINGLE", "REGEX_DOUBLE", "RBRACE", "RBRACKET", "RPAREN", "SEMICOLON",
90
+ "SLASH", "SLASH_GT", "UNDERSCORE", "MULTI_LINE_COMMENT", "SINGLE_LINE_COMMENT",
91
+ "WHITESPACE", "STRING_TEXT", "STRING_ESCAPE_TRIGGER", "STRING_QUOTE_SINGLE",
92
+ "FULL_STRING_TEXT", "FULL_STRING_ESCAPE_TRIGGER", "TAG_SELF_CLOSE_GT",
93
+ "TAG_OPEN_GT", "TAG_IDENT", "TAG_EQ", "TAG_STRING", "TAG_WS", "TAG_LBRACE",
94
+ "TAGC_GT", "TAGC_IDENT", "TAGC_WS", "HOGQLX_TEXT_TEXT", "HOGQLX_TEXT_LBRACE",
95
+ "HOGQLX_TEXT_LT_SLASH", "HOGQLX_TEXT_LT", "HOGQLX_TEXT_WS"
96
+ },
97
+ std::vector<std::string>{
98
+ "DEFAULT_TOKEN_CHANNEL", "HIDDEN"
99
+ },
100
+ std::vector<std::string>{
101
+ "DEFAULT_MODE", "IN_TEMPLATE_STRING", "IN_FULL_TEMPLATE_STRING", "HOGQLX_TAG_OPEN",
102
+ "HOGQLX_TAG_CLOSE", "HOGQLX_TEXT"
103
+ },
104
+ std::vector<std::string>{
105
+ "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "",
106
+ "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "",
107
+ "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "",
108
+ "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "",
109
+ "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "",
110
+ "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "",
111
+ "", "", "", "", "", "", "", "", "", "", "", "", "'->'", "'*'", "'`'",
112
+ "'\\'", "':'", "','", "'||'", "'-'", "'$'", "'.'", "'=='", "", "'>='",
113
+ "", "'#'", "'~*'", "'=~*'", "'{'", "'['", "'('", "'<='", "'<'", "'</'",
114
+ "", "'!~*'", "'!~'", "'\\u003F.'", "'\\u003F\\u003F'", "'%'", "'+'",
115
+ "'\\u003F'", "'\"'", "'f''", "'F''", "'''", "'~'", "'=~'", "'}'",
116
+ "']'", "')'", "';'", "'/'", "", "'_'"
117
+ },
118
+ std::vector<std::string>{
119
+ "", "ALL", "AND", "ANTI", "ANY", "ARRAY", "AS", "ASCENDING", "ASOF",
120
+ "BETWEEN", "BOTH", "BY", "CASE", "CAST", "CATCH", "COHORT", "COLLATE",
121
+ "CROSS", "CUBE", "CURRENT", "DATE", "DAY", "DESC", "DESCENDING", "DISTINCT",
122
+ "ELSE", "END", "EXCEPT", "EXTRACT", "FINAL", "FINALLY", "FIRST", "FN",
123
+ "FOLLOWING", "FOR", "FROM", "FULL", "FUN", "GROUP", "HAVING", "HOUR",
124
+ "ID", "IF", "ILIKE", "IN", "INF", "INNER", "INTERSECT", "INTERVAL",
125
+ "IS", "JOIN", "KEY", "LAST", "LEADING", "LEFT", "LET", "LIKE", "LIMIT",
126
+ "MINUTE", "MONTH", "NAN_SQL", "NOT", "NULL_SQL", "NULLS", "OFFSET",
127
+ "ON", "OR", "ORDER", "OUTER", "OVER", "PARTITION", "PRECEDING", "PREWHERE",
128
+ "QUARTER", "RANGE", "RETURN", "RIGHT", "ROLLUP", "ROW", "ROWS", "SAMPLE",
129
+ "SECOND", "SELECT", "SEMI", "SETTINGS", "SUBSTRING", "THEN", "THROW",
130
+ "TIES", "TIMESTAMP", "TO", "TOP", "TOTALS", "TRAILING", "TRIM", "TRUNCATE",
131
+ "TRY", "UNBOUNDED", "UNION", "USING", "WEEK", "WHEN", "WHERE", "WHILE",
132
+ "WINDOW", "WITH", "YEAR", "ESCAPE_CHAR_COMMON", "IDENTIFIER", "FLOATING_LITERAL",
133
+ "OCTAL_LITERAL", "DECIMAL_LITERAL", "HEXADECIMAL_LITERAL", "STRING_LITERAL",
134
+ "ARROW", "ASTERISK", "BACKQUOTE", "BACKSLASH", "COLON", "COMMA", "CONCAT",
135
+ "DASH", "DOLLAR", "DOT", "EQ_DOUBLE", "EQ_SINGLE", "GT_EQ", "GT",
136
+ "HASH", "IREGEX_SINGLE", "IREGEX_DOUBLE", "LBRACE", "LBRACKET", "LPAREN",
137
+ "LT_EQ", "LT", "LT_SLASH", "NOT_EQ", "NOT_IREGEX", "NOT_REGEX", "NULL_PROPERTY",
138
+ "NULLISH", "PERCENT", "PLUS", "QUERY", "QUOTE_DOUBLE", "QUOTE_SINGLE_TEMPLATE",
139
+ "QUOTE_SINGLE_TEMPLATE_FULL", "QUOTE_SINGLE", "REGEX_SINGLE", "REGEX_DOUBLE",
140
+ "RBRACE", "RBRACKET", "RPAREN", "SEMICOLON", "SLASH", "SLASH_GT",
141
+ "UNDERSCORE", "MULTI_LINE_COMMENT", "SINGLE_LINE_COMMENT", "WHITESPACE",
142
+ "STRING_TEXT", "STRING_ESCAPE_TRIGGER", "FULL_STRING_TEXT", "FULL_STRING_ESCAPE_TRIGGER",
143
+ "TAG_WS", "TAGC_WS", "HOGQLX_TEXT_TEXT", "HOGQLX_TEXT_WS"
144
+ }
145
+ );
146
+ static const int32_t serializedATNSegment[] = {
147
+ 4,0,168,1626,6,-1,6,-1,6,-1,6,-1,6,-1,6,-1,2,0,7,0,2,1,7,1,2,2,7,2,2,
148
+ 3,7,3,2,4,7,4,2,5,7,5,2,6,7,6,2,7,7,7,2,8,7,8,2,9,7,9,2,10,7,10,2,11,
149
+ 7,11,2,12,7,12,2,13,7,13,2,14,7,14,2,15,7,15,2,16,7,16,2,17,7,17,2,18,
150
+ 7,18,2,19,7,19,2,20,7,20,2,21,7,21,2,22,7,22,2,23,7,23,2,24,7,24,2,25,
151
+ 7,25,2,26,7,26,2,27,7,27,2,28,7,28,2,29,7,29,2,30,7,30,2,31,7,31,2,32,
152
+ 7,32,2,33,7,33,2,34,7,34,2,35,7,35,2,36,7,36,2,37,7,37,2,38,7,38,2,39,
153
+ 7,39,2,40,7,40,2,41,7,41,2,42,7,42,2,43,7,43,2,44,7,44,2,45,7,45,2,46,
154
+ 7,46,2,47,7,47,2,48,7,48,2,49,7,49,2,50,7,50,2,51,7,51,2,52,7,52,2,53,
155
+ 7,53,2,54,7,54,2,55,7,55,2,56,7,56,2,57,7,57,2,58,7,58,2,59,7,59,2,60,
156
+ 7,60,2,61,7,61,2,62,7,62,2,63,7,63,2,64,7,64,2,65,7,65,2,66,7,66,2,67,
157
+ 7,67,2,68,7,68,2,69,7,69,2,70,7,70,2,71,7,71,2,72,7,72,2,73,7,73,2,74,
158
+ 7,74,2,75,7,75,2,76,7,76,2,77,7,77,2,78,7,78,2,79,7,79,2,80,7,80,2,81,
159
+ 7,81,2,82,7,82,2,83,7,83,2,84,7,84,2,85,7,85,2,86,7,86,2,87,7,87,2,88,
160
+ 7,88,2,89,7,89,2,90,7,90,2,91,7,91,2,92,7,92,2,93,7,93,2,94,7,94,2,95,
161
+ 7,95,2,96,7,96,2,97,7,97,2,98,7,98,2,99,7,99,2,100,7,100,2,101,7,101,
162
+ 2,102,7,102,2,103,7,103,2,104,7,104,2,105,7,105,2,106,7,106,2,107,7,107,
163
+ 2,108,7,108,2,109,7,109,2,110,7,110,2,111,7,111,2,112,7,112,2,113,7,113,
164
+ 2,114,7,114,2,115,7,115,2,116,7,116,2,117,7,117,2,118,7,118,2,119,7,119,
165
+ 2,120,7,120,2,121,7,121,2,122,7,122,2,123,7,123,2,124,7,124,2,125,7,125,
166
+ 2,126,7,126,2,127,7,127,2,128,7,128,2,129,7,129,2,130,7,130,2,131,7,131,
167
+ 2,132,7,132,2,133,7,133,2,134,7,134,2,135,7,135,2,136,7,136,2,137,7,137,
168
+ 2,138,7,138,2,139,7,139,2,140,7,140,2,141,7,141,2,142,7,142,2,143,7,143,
169
+ 2,144,7,144,2,145,7,145,2,146,7,146,2,147,7,147,2,148,7,148,2,149,7,149,
170
+ 2,150,7,150,2,151,7,151,2,152,7,152,2,153,7,153,2,154,7,154,2,155,7,155,
171
+ 2,156,7,156,2,157,7,157,2,158,7,158,2,159,7,159,2,160,7,160,2,161,7,161,
172
+ 2,162,7,162,2,163,7,163,2,164,7,164,2,165,7,165,2,166,7,166,2,167,7,167,
173
+ 2,168,7,168,2,169,7,169,2,170,7,170,2,171,7,171,2,172,7,172,2,173,7,173,
174
+ 2,174,7,174,2,175,7,175,2,176,7,176,2,177,7,177,2,178,7,178,2,179,7,179,
175
+ 2,180,7,180,2,181,7,181,2,182,7,182,2,183,7,183,2,184,7,184,2,185,7,185,
176
+ 2,186,7,186,2,187,7,187,2,188,7,188,2,189,7,189,2,190,7,190,2,191,7,191,
177
+ 2,192,7,192,2,193,7,193,2,194,7,194,2,195,7,195,2,196,7,196,2,197,7,197,
178
+ 2,198,7,198,2,199,7,199,2,200,7,200,2,201,7,201,2,202,7,202,2,203,7,203,
179
+ 2,204,7,204,2,205,7,205,2,206,7,206,2,207,7,207,2,208,7,208,2,209,7,209,
180
+ 2,210,7,210,2,211,7,211,1,0,1,0,1,0,1,0,1,1,1,1,1,1,1,1,1,2,1,2,1,2,1,
181
+ 2,1,2,1,3,1,3,1,3,1,3,1,4,1,4,1,4,1,4,1,4,1,4,1,5,1,5,1,5,1,6,1,6,1,6,
182
+ 1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,3,6,471,8,6,1,7,1,7,1,7,1,
183
+ 7,1,7,1,8,1,8,1,8,1,8,1,8,1,8,1,8,1,8,1,9,1,9,1,9,1,9,1,9,1,10,1,10,1,
184
+ 10,1,11,1,11,1,11,1,11,1,11,1,12,1,12,1,12,1,12,1,12,1,13,1,13,1,13,1,
185
+ 13,1,13,1,13,1,14,1,14,1,14,1,14,1,14,1,14,1,14,1,15,1,15,1,15,1,15,1,
186
+ 15,1,15,1,15,1,15,1,16,1,16,1,16,1,16,1,16,1,16,1,17,1,17,1,17,1,17,1,
187
+ 17,1,18,1,18,1,18,1,18,1,18,1,18,1,18,1,18,1,19,1,19,1,19,1,19,1,19,1,
188
+ 20,1,20,1,20,1,20,1,21,1,21,1,21,1,21,1,21,1,22,1,22,1,22,1,22,1,22,1,
189
+ 22,1,22,1,22,1,22,1,22,1,22,1,23,1,23,1,23,1,23,1,23,1,23,1,23,1,23,1,
190
+ 23,1,24,1,24,1,24,1,24,1,24,1,25,1,25,1,25,1,25,1,26,1,26,1,26,1,26,1,
191
+ 26,1,26,1,26,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,28,1,28,1,28,1,
192
+ 28,1,28,1,28,1,29,1,29,1,29,1,29,1,29,1,29,1,29,1,29,1,30,1,30,1,30,1,
193
+ 30,1,30,1,30,1,31,1,31,1,31,1,32,1,32,1,32,1,32,1,32,1,32,1,32,1,32,1,
194
+ 32,1,32,1,33,1,33,1,33,1,33,1,34,1,34,1,34,1,34,1,34,1,35,1,35,1,35,1,
195
+ 35,1,35,1,36,1,36,1,36,1,36,1,37,1,37,1,37,1,37,1,37,1,37,1,38,1,38,1,
196
+ 38,1,38,1,38,1,38,1,38,1,39,1,39,1,39,1,39,1,39,1,40,1,40,1,40,1,41,1,
197
+ 41,1,41,1,42,1,42,1,42,1,42,1,42,1,42,1,43,1,43,1,43,1,44,1,44,1,44,1,
198
+ 44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,3,44,699,8,44,1,45,1,
199
+ 45,1,45,1,45,1,45,1,45,1,46,1,46,1,46,1,46,1,46,1,46,1,46,1,46,1,46,1,
200
+ 46,1,47,1,47,1,47,1,47,1,47,1,47,1,47,1,47,1,47,1,48,1,48,1,48,1,49,1,
201
+ 49,1,49,1,49,1,49,1,50,1,50,1,50,1,50,1,51,1,51,1,51,1,51,1,51,1,52,1,
202
+ 52,1,52,1,52,1,52,1,52,1,52,1,52,1,53,1,53,1,53,1,53,1,53,1,54,1,54,1,
203
+ 54,1,54,1,55,1,55,1,55,1,55,1,55,1,56,1,56,1,56,1,56,1,56,1,56,1,57,1,
204
+ 57,1,57,1,57,1,57,1,57,1,57,1,58,1,58,1,58,1,58,1,58,1,58,1,59,1,59,1,
205
+ 59,1,59,1,60,1,60,1,60,1,60,1,61,1,61,1,61,1,61,1,61,1,62,1,62,1,62,1,
206
+ 62,1,62,1,62,1,63,1,63,1,63,1,63,1,63,1,63,1,63,1,64,1,64,1,64,1,65,1,
207
+ 65,1,65,1,66,1,66,1,66,1,66,1,66,1,66,1,67,1,67,1,67,1,67,1,67,1,67,1,
208
+ 68,1,68,1,68,1,68,1,68,1,69,1,69,1,69,1,69,1,69,1,69,1,69,1,69,1,69,1,
209
+ 69,1,70,1,70,1,70,1,70,1,70,1,70,1,70,1,70,1,70,1,70,1,71,1,71,1,71,1,
210
+ 71,1,71,1,71,1,71,1,71,1,71,1,72,1,72,1,72,1,72,1,72,1,72,1,72,1,72,1,
211
+ 73,1,73,1,73,1,73,1,73,1,73,1,74,1,74,1,74,1,74,1,74,1,74,1,74,1,75,1,
212
+ 75,1,75,1,75,1,75,1,75,1,76,1,76,1,76,1,76,1,76,1,76,1,76,1,77,1,77,1,
213
+ 77,1,77,1,78,1,78,1,78,1,78,1,78,1,79,1,79,1,79,1,79,1,79,1,79,1,79,1,
214
+ 80,1,80,1,80,1,80,1,80,1,80,1,80,1,81,1,81,1,81,1,81,1,81,1,81,1,81,1,
215
+ 82,1,82,1,82,1,82,1,82,1,83,1,83,1,83,1,83,1,83,1,83,1,83,1,83,1,83,1,
216
+ 84,1,84,1,84,1,84,1,84,1,84,1,84,1,84,1,84,1,84,1,85,1,85,1,85,1,85,1,
217
+ 85,1,86,1,86,1,86,1,86,1,86,1,86,1,87,1,87,1,87,1,87,1,87,1,88,1,88,1,
218
+ 88,1,88,1,88,1,88,1,88,1,88,1,88,1,88,1,89,1,89,1,89,1,90,1,90,1,90,1,
219
+ 90,1,91,1,91,1,91,1,91,1,91,1,91,1,91,1,92,1,92,1,92,1,92,1,92,1,92,1,
220
+ 92,1,92,1,92,1,93,1,93,1,93,1,93,1,93,1,94,1,94,1,94,1,94,1,94,1,94,1,
221
+ 94,1,94,1,94,1,95,1,95,1,95,1,95,1,96,1,96,1,96,1,96,1,96,1,96,1,96,1,
222
+ 96,1,96,1,96,1,97,1,97,1,97,1,97,1,97,1,97,1,98,1,98,1,98,1,98,1,98,1,
223
+ 98,1,99,1,99,1,99,1,99,1,99,1,100,1,100,1,100,1,100,1,100,1,101,1,101,
224
+ 1,101,1,101,1,101,1,101,1,102,1,102,1,102,1,102,1,102,1,102,1,103,1,103,
225
+ 1,103,1,103,1,103,1,103,1,103,1,104,1,104,1,104,1,104,1,104,1,105,1,105,
226
+ 1,105,1,105,1,105,1,105,1,105,1,105,1,105,1,105,3,105,1083,8,105,1,106,
227
+ 1,106,1,106,1,106,1,106,1,106,1,106,1,106,1,106,1,106,1,106,1,106,1,106,
228
+ 1,106,1,106,1,106,1,106,1,106,1,106,1,106,1,106,1,106,1,106,1,106,1,106,
229
+ 1,106,1,106,3,106,1112,8,106,1,107,1,107,1,107,3,107,1117,8,107,1,107,
230
+ 1,107,1,107,1,107,5,107,1123,8,107,10,107,12,107,1126,9,107,1,107,1,107,
231
+ 1,107,1,107,1,107,1,107,1,107,1,107,1,107,5,107,1137,8,107,10,107,12,
232
+ 107,1140,9,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,
233
+ 1,107,1,107,5,107,1153,8,107,10,107,12,107,1156,9,107,1,107,1,107,3,107,
234
+ 1160,8,107,1,108,1,108,1,108,5,108,1165,8,108,10,108,12,108,1168,9,108,
235
+ 1,108,1,108,3,108,1172,8,108,1,108,1,108,3,108,1176,8,108,1,108,4,108,
236
+ 1179,8,108,11,108,12,108,1180,1,108,1,108,1,108,3,108,1186,8,108,1,108,
237
+ 1,108,3,108,1190,8,108,1,108,4,108,1193,8,108,11,108,12,108,1194,1,108,
238
+ 1,108,1,108,5,108,1200,8,108,10,108,12,108,1203,9,108,1,108,1,108,1,108,
239
+ 3,108,1208,8,108,1,108,4,108,1211,8,108,11,108,12,108,1212,1,108,1,108,
240
+ 1,108,1,108,1,108,3,108,1220,8,108,1,108,4,108,1223,8,108,11,108,12,108,
241
+ 1224,1,108,1,108,1,108,1,108,3,108,1231,8,108,1,108,4,108,1234,8,108,
242
+ 11,108,12,108,1235,3,108,1238,8,108,1,109,1,109,4,109,1242,8,109,11,109,
243
+ 12,109,1243,1,110,4,110,1247,8,110,11,110,12,110,1248,1,111,1,111,1,111,
244
+ 4,111,1254,8,111,11,111,12,111,1255,1,112,1,112,1,112,1,112,1,112,1,112,
245
+ 1,112,1,112,1,112,5,112,1267,8,112,10,112,12,112,1270,9,112,1,112,1,112,
246
+ 1,113,1,113,1,114,1,114,1,115,1,115,1,116,1,116,1,117,1,117,1,118,1,118,
247
+ 1,119,1,119,1,120,1,120,1,121,1,121,1,122,1,122,1,123,1,123,1,124,1,124,
248
+ 1,125,1,125,1,126,1,126,1,127,1,127,1,128,1,128,1,129,1,129,1,130,1,130,
249
+ 1,131,1,131,1,132,1,132,1,133,1,133,1,134,1,134,1,135,1,135,1,136,1,136,
250
+ 1,137,1,137,1,138,1,138,1,139,1,139,1,140,1,140,1,141,1,141,1,142,1,142,
251
+ 1,143,1,143,1,143,1,144,1,144,1,145,1,145,1,146,1,146,1,147,1,147,1,148,
252
+ 1,148,1,149,1,149,1,149,1,150,1,150,1,151,1,151,1,152,1,152,1,153,1,153,
253
+ 1,153,1,154,1,154,1,155,1,155,1,155,1,156,1,156,1,157,1,157,1,158,1,158,
254
+ 1,158,1,159,1,159,1,159,1,159,1,160,1,160,1,160,1,160,1,161,1,161,1,162,
255
+ 1,162,1,163,1,163,1,163,1,164,1,164,1,164,1,164,1,164,1,164,1,165,1,165,
256
+ 1,165,1,165,1,165,1,165,1,166,1,166,1,167,1,167,1,167,1,168,1,168,1,168,
257
+ 1,168,3,168,1407,8,168,1,169,1,169,1,169,1,169,1,170,1,170,1,170,1,171,
258
+ 1,171,1,171,1,172,1,172,1,172,1,173,1,173,1,174,1,174,1,175,1,175,1,176,
259
+ 1,176,1,177,1,177,1,177,1,177,1,177,1,178,1,178,1,178,1,178,1,178,1,179,
260
+ 1,179,1,180,1,180,1,181,1,181,1,181,1,182,1,182,1,182,1,182,1,183,1,183,
261
+ 1,184,1,184,1,185,1,185,1,186,1,186,1,187,1,187,1,187,1,188,1,188,1,189,
262
+ 1,189,1,189,1,189,5,189,1468,8,189,10,189,12,189,1471,9,189,1,189,1,189,
263
+ 1,189,1,189,1,189,1,190,1,190,1,190,1,190,3,190,1482,8,190,1,190,5,190,
264
+ 1485,8,190,10,190,12,190,1488,9,190,1,190,3,190,1491,8,190,1,190,1,190,
265
+ 1,191,1,191,1,191,1,191,1,192,1,192,1,192,1,192,1,192,1,192,1,192,1,192,
266
+ 1,192,1,192,1,192,4,192,1510,8,192,11,192,12,192,1511,1,193,1,193,1,193,
267
+ 1,193,1,194,1,194,1,194,1,194,1,194,1,195,1,195,1,195,1,195,1,195,4,195,
268
+ 1528,8,195,11,195,12,195,1529,1,196,1,196,1,196,1,196,1,197,1,197,1,197,
269
+ 1,197,1,197,1,197,1,198,1,198,1,198,1,198,1,198,1,198,1,199,1,199,5,199,
270
+ 1550,8,199,10,199,12,199,1553,9,199,1,199,1,199,1,200,1,200,1,200,1,200,
271
+ 1,201,1,201,1,201,1,201,1,202,4,202,1566,8,202,11,202,12,202,1567,1,202,
272
+ 1,202,1,203,1,203,1,203,1,203,1,203,1,204,1,204,1,204,1,204,1,204,1,205,
273
+ 1,205,5,205,1584,8,205,10,205,12,205,1587,9,205,1,205,1,205,1,206,4,206,
274
+ 1592,8,206,11,206,12,206,1593,1,206,1,206,1,207,4,207,1599,8,207,11,207,
275
+ 12,207,1600,1,208,1,208,1,208,1,208,1,208,1,209,1,209,1,209,1,209,1,209,
276
+ 1,209,1,209,1,210,1,210,1,210,1,210,1,210,1,211,4,211,1621,8,211,11,211,
277
+ 12,211,1622,1,211,1,211,1,1469,0,212,6,1,8,2,10,3,12,4,14,5,16,6,18,7,
278
+ 20,8,22,9,24,10,26,11,28,12,30,13,32,14,34,15,36,16,38,17,40,18,42,19,
279
+ 44,20,46,21,48,22,50,23,52,24,54,25,56,26,58,27,60,28,62,29,64,30,66,
280
+ 31,68,32,70,33,72,34,74,35,76,36,78,37,80,38,82,39,84,40,86,41,88,42,
281
+ 90,43,92,44,94,45,96,46,98,47,100,48,102,49,104,50,106,51,108,52,110,
282
+ 53,112,54,114,55,116,56,118,57,120,58,122,59,124,60,126,61,128,62,130,
283
+ 63,132,64,134,65,136,66,138,67,140,68,142,69,144,70,146,71,148,72,150,
284
+ 73,152,74,154,75,156,76,158,77,160,78,162,79,164,80,166,81,168,82,170,
285
+ 83,172,84,174,85,176,86,178,87,180,88,182,89,184,90,186,91,188,92,190,
286
+ 93,192,94,194,95,196,96,198,97,200,98,202,99,204,100,206,101,208,102,
287
+ 210,103,212,104,214,105,216,106,218,107,220,108,222,109,224,110,226,111,
288
+ 228,112,230,113,232,0,234,0,236,0,238,0,240,0,242,0,244,0,246,0,248,0,
289
+ 250,0,252,0,254,0,256,0,258,0,260,0,262,0,264,0,266,0,268,0,270,0,272,
290
+ 0,274,0,276,0,278,0,280,0,282,0,284,0,286,0,288,0,290,0,292,114,294,115,
291
+ 296,116,298,117,300,118,302,119,304,120,306,121,308,122,310,123,312,124,
292
+ 314,125,316,126,318,127,320,128,322,129,324,130,326,131,328,132,330,133,
293
+ 332,134,334,0,336,0,338,135,340,136,342,137,344,138,346,139,348,140,350,
294
+ 141,352,142,354,143,356,144,358,145,360,146,362,147,364,148,366,149,368,
295
+ 150,370,151,372,152,374,153,376,154,378,155,380,156,382,157,384,158,386,
296
+ 159,388,160,390,161,392,162,394,0,396,163,398,164,400,0,402,0,404,0,406,
297
+ 0,408,0,410,165,412,0,414,0,416,0,418,166,420,167,422,0,424,0,426,0,428,
298
+ 168,6,0,1,2,3,4,5,42,2,0,92,92,96,96,2,0,34,34,92,92,2,0,39,39,92,92,
299
+ 2,0,65,65,97,97,2,0,66,66,98,98,2,0,67,67,99,99,2,0,68,68,100,100,2,0,
300
+ 69,69,101,101,2,0,70,70,102,102,2,0,71,71,103,103,2,0,72,72,104,104,2,
301
+ 0,73,73,105,105,2,0,74,74,106,106,2,0,75,75,107,107,2,0,76,76,108,108,
302
+ 2,0,77,77,109,109,2,0,78,78,110,110,2,0,79,79,111,111,2,0,80,80,112,112,
303
+ 2,0,81,81,113,113,2,0,82,82,114,114,2,0,83,83,115,115,2,0,84,84,116,116,
304
+ 2,0,85,85,117,117,2,0,86,86,118,118,2,0,87,87,119,119,2,0,88,88,120,120,
305
+ 2,0,89,89,121,121,2,0,90,90,122,122,2,0,65,90,97,122,1,0,48,55,1,0,48,
306
+ 57,3,0,48,57,65,70,97,102,2,0,10,10,13,13,2,1,10,10,13,13,2,0,9,13,32,
307
+ 32,3,0,39,39,92,92,123,123,1,0,123,123,3,0,65,90,95,95,97,122,5,0,45,
308
+ 45,48,57,65,90,95,95,97,122,3,0,9,10,13,13,32,32,2,0,60,60,123,123,1665,
309
+ 0,6,1,0,0,0,0,8,1,0,0,0,0,10,1,0,0,0,0,12,1,0,0,0,0,14,1,0,0,0,0,16,1,
310
+ 0,0,0,0,18,1,0,0,0,0,20,1,0,0,0,0,22,1,0,0,0,0,24,1,0,0,0,0,26,1,0,0,
311
+ 0,0,28,1,0,0,0,0,30,1,0,0,0,0,32,1,0,0,0,0,34,1,0,0,0,0,36,1,0,0,0,0,
312
+ 38,1,0,0,0,0,40,1,0,0,0,0,42,1,0,0,0,0,44,1,0,0,0,0,46,1,0,0,0,0,48,1,
313
+ 0,0,0,0,50,1,0,0,0,0,52,1,0,0,0,0,54,1,0,0,0,0,56,1,0,0,0,0,58,1,0,0,
314
+ 0,0,60,1,0,0,0,0,62,1,0,0,0,0,64,1,0,0,0,0,66,1,0,0,0,0,68,1,0,0,0,0,
315
+ 70,1,0,0,0,0,72,1,0,0,0,0,74,1,0,0,0,0,76,1,0,0,0,0,78,1,0,0,0,0,80,1,
316
+ 0,0,0,0,82,1,0,0,0,0,84,1,0,0,0,0,86,1,0,0,0,0,88,1,0,0,0,0,90,1,0,0,
317
+ 0,0,92,1,0,0,0,0,94,1,0,0,0,0,96,1,0,0,0,0,98,1,0,0,0,0,100,1,0,0,0,0,
318
+ 102,1,0,0,0,0,104,1,0,0,0,0,106,1,0,0,0,0,108,1,0,0,0,0,110,1,0,0,0,0,
319
+ 112,1,0,0,0,0,114,1,0,0,0,0,116,1,0,0,0,0,118,1,0,0,0,0,120,1,0,0,0,0,
320
+ 122,1,0,0,0,0,124,1,0,0,0,0,126,1,0,0,0,0,128,1,0,0,0,0,130,1,0,0,0,0,
321
+ 132,1,0,0,0,0,134,1,0,0,0,0,136,1,0,0,0,0,138,1,0,0,0,0,140,1,0,0,0,0,
322
+ 142,1,0,0,0,0,144,1,0,0,0,0,146,1,0,0,0,0,148,1,0,0,0,0,150,1,0,0,0,0,
323
+ 152,1,0,0,0,0,154,1,0,0,0,0,156,1,0,0,0,0,158,1,0,0,0,0,160,1,0,0,0,0,
324
+ 162,1,0,0,0,0,164,1,0,0,0,0,166,1,0,0,0,0,168,1,0,0,0,0,170,1,0,0,0,0,
325
+ 172,1,0,0,0,0,174,1,0,0,0,0,176,1,0,0,0,0,178,1,0,0,0,0,180,1,0,0,0,0,
326
+ 182,1,0,0,0,0,184,1,0,0,0,0,186,1,0,0,0,0,188,1,0,0,0,0,190,1,0,0,0,0,
327
+ 192,1,0,0,0,0,194,1,0,0,0,0,196,1,0,0,0,0,198,1,0,0,0,0,200,1,0,0,0,0,
328
+ 202,1,0,0,0,0,204,1,0,0,0,0,206,1,0,0,0,0,208,1,0,0,0,0,210,1,0,0,0,0,
329
+ 212,1,0,0,0,0,214,1,0,0,0,0,216,1,0,0,0,0,218,1,0,0,0,0,220,1,0,0,0,0,
330
+ 222,1,0,0,0,0,224,1,0,0,0,0,226,1,0,0,0,0,228,1,0,0,0,0,230,1,0,0,0,0,
331
+ 292,1,0,0,0,0,294,1,0,0,0,0,296,1,0,0,0,0,298,1,0,0,0,0,300,1,0,0,0,0,
332
+ 302,1,0,0,0,0,304,1,0,0,0,0,306,1,0,0,0,0,308,1,0,0,0,0,310,1,0,0,0,0,
333
+ 312,1,0,0,0,0,314,1,0,0,0,0,316,1,0,0,0,0,318,1,0,0,0,0,320,1,0,0,0,0,
334
+ 322,1,0,0,0,0,324,1,0,0,0,0,326,1,0,0,0,0,328,1,0,0,0,0,330,1,0,0,0,0,
335
+ 332,1,0,0,0,0,334,1,0,0,0,0,336,1,0,0,0,0,338,1,0,0,0,0,340,1,0,0,0,0,
336
+ 342,1,0,0,0,0,344,1,0,0,0,0,346,1,0,0,0,0,348,1,0,0,0,0,350,1,0,0,0,0,
337
+ 352,1,0,0,0,0,354,1,0,0,0,0,356,1,0,0,0,0,358,1,0,0,0,0,360,1,0,0,0,0,
338
+ 362,1,0,0,0,0,364,1,0,0,0,0,366,1,0,0,0,0,368,1,0,0,0,0,370,1,0,0,0,0,
339
+ 372,1,0,0,0,0,374,1,0,0,0,0,376,1,0,0,0,0,378,1,0,0,0,0,380,1,0,0,0,0,
340
+ 382,1,0,0,0,0,384,1,0,0,0,0,386,1,0,0,0,0,388,1,0,0,0,1,390,1,0,0,0,1,
341
+ 392,1,0,0,0,1,394,1,0,0,0,2,396,1,0,0,0,2,398,1,0,0,0,3,400,1,0,0,0,3,
342
+ 402,1,0,0,0,3,404,1,0,0,0,3,406,1,0,0,0,3,408,1,0,0,0,3,410,1,0,0,0,3,
343
+ 412,1,0,0,0,4,414,1,0,0,0,4,416,1,0,0,0,4,418,1,0,0,0,5,420,1,0,0,0,5,
344
+ 422,1,0,0,0,5,424,1,0,0,0,5,426,1,0,0,0,5,428,1,0,0,0,6,430,1,0,0,0,8,
345
+ 434,1,0,0,0,10,438,1,0,0,0,12,443,1,0,0,0,14,447,1,0,0,0,16,453,1,0,0,
346
+ 0,18,470,1,0,0,0,20,472,1,0,0,0,22,477,1,0,0,0,24,485,1,0,0,0,26,490,
347
+ 1,0,0,0,28,493,1,0,0,0,30,498,1,0,0,0,32,503,1,0,0,0,34,509,1,0,0,0,36,
348
+ 516,1,0,0,0,38,524,1,0,0,0,40,530,1,0,0,0,42,535,1,0,0,0,44,543,1,0,0,
349
+ 0,46,548,1,0,0,0,48,552,1,0,0,0,50,557,1,0,0,0,52,568,1,0,0,0,54,577,
350
+ 1,0,0,0,56,582,1,0,0,0,58,586,1,0,0,0,60,593,1,0,0,0,62,601,1,0,0,0,64,
351
+ 607,1,0,0,0,66,615,1,0,0,0,68,621,1,0,0,0,70,624,1,0,0,0,72,634,1,0,0,
352
+ 0,74,638,1,0,0,0,76,643,1,0,0,0,78,648,1,0,0,0,80,652,1,0,0,0,82,658,
353
+ 1,0,0,0,84,665,1,0,0,0,86,670,1,0,0,0,88,673,1,0,0,0,90,676,1,0,0,0,92,
354
+ 682,1,0,0,0,94,698,1,0,0,0,96,700,1,0,0,0,98,706,1,0,0,0,100,716,1,0,
355
+ 0,0,102,725,1,0,0,0,104,728,1,0,0,0,106,733,1,0,0,0,108,737,1,0,0,0,110,
356
+ 742,1,0,0,0,112,750,1,0,0,0,114,755,1,0,0,0,116,759,1,0,0,0,118,764,1,
357
+ 0,0,0,120,770,1,0,0,0,122,777,1,0,0,0,124,783,1,0,0,0,126,787,1,0,0,0,
358
+ 128,791,1,0,0,0,130,796,1,0,0,0,132,802,1,0,0,0,134,809,1,0,0,0,136,812,
359
+ 1,0,0,0,138,815,1,0,0,0,140,821,1,0,0,0,142,827,1,0,0,0,144,832,1,0,0,
360
+ 0,146,842,1,0,0,0,148,852,1,0,0,0,150,861,1,0,0,0,152,869,1,0,0,0,154,
361
+ 875,1,0,0,0,156,882,1,0,0,0,158,888,1,0,0,0,160,895,1,0,0,0,162,899,1,
362
+ 0,0,0,164,904,1,0,0,0,166,911,1,0,0,0,168,918,1,0,0,0,170,925,1,0,0,0,
363
+ 172,930,1,0,0,0,174,939,1,0,0,0,176,949,1,0,0,0,178,954,1,0,0,0,180,960,
364
+ 1,0,0,0,182,965,1,0,0,0,184,975,1,0,0,0,186,978,1,0,0,0,188,982,1,0,0,
365
+ 0,190,989,1,0,0,0,192,998,1,0,0,0,194,1003,1,0,0,0,196,1012,1,0,0,0,198,
366
+ 1016,1,0,0,0,200,1026,1,0,0,0,202,1032,1,0,0,0,204,1038,1,0,0,0,206,1043,
367
+ 1,0,0,0,208,1048,1,0,0,0,210,1054,1,0,0,0,212,1060,1,0,0,0,214,1067,1,
368
+ 0,0,0,216,1082,1,0,0,0,218,1111,1,0,0,0,220,1159,1,0,0,0,222,1237,1,0,
369
+ 0,0,224,1239,1,0,0,0,226,1246,1,0,0,0,228,1250,1,0,0,0,230,1257,1,0,0,
370
+ 0,232,1273,1,0,0,0,234,1275,1,0,0,0,236,1277,1,0,0,0,238,1279,1,0,0,0,
371
+ 240,1281,1,0,0,0,242,1283,1,0,0,0,244,1285,1,0,0,0,246,1287,1,0,0,0,248,
372
+ 1289,1,0,0,0,250,1291,1,0,0,0,252,1293,1,0,0,0,254,1295,1,0,0,0,256,1297,
373
+ 1,0,0,0,258,1299,1,0,0,0,260,1301,1,0,0,0,262,1303,1,0,0,0,264,1305,1,
374
+ 0,0,0,266,1307,1,0,0,0,268,1309,1,0,0,0,270,1311,1,0,0,0,272,1313,1,0,
375
+ 0,0,274,1315,1,0,0,0,276,1317,1,0,0,0,278,1319,1,0,0,0,280,1321,1,0,0,
376
+ 0,282,1323,1,0,0,0,284,1325,1,0,0,0,286,1327,1,0,0,0,288,1329,1,0,0,0,
377
+ 290,1331,1,0,0,0,292,1333,1,0,0,0,294,1336,1,0,0,0,296,1338,1,0,0,0,298,
378
+ 1340,1,0,0,0,300,1342,1,0,0,0,302,1344,1,0,0,0,304,1346,1,0,0,0,306,1349,
379
+ 1,0,0,0,308,1351,1,0,0,0,310,1353,1,0,0,0,312,1355,1,0,0,0,314,1358,1,
380
+ 0,0,0,316,1360,1,0,0,0,318,1363,1,0,0,0,320,1365,1,0,0,0,322,1367,1,0,
381
+ 0,0,324,1370,1,0,0,0,326,1374,1,0,0,0,328,1378,1,0,0,0,330,1380,1,0,0,
382
+ 0,332,1382,1,0,0,0,334,1385,1,0,0,0,336,1391,1,0,0,0,338,1397,1,0,0,0,
383
+ 340,1399,1,0,0,0,342,1406,1,0,0,0,344,1408,1,0,0,0,346,1412,1,0,0,0,348,
384
+ 1415,1,0,0,0,350,1418,1,0,0,0,352,1421,1,0,0,0,354,1423,1,0,0,0,356,1425,
385
+ 1,0,0,0,358,1427,1,0,0,0,360,1429,1,0,0,0,362,1434,1,0,0,0,364,1439,1,
386
+ 0,0,0,366,1441,1,0,0,0,368,1443,1,0,0,0,370,1446,1,0,0,0,372,1450,1,0,
387
+ 0,0,374,1452,1,0,0,0,376,1454,1,0,0,0,378,1456,1,0,0,0,380,1458,1,0,0,
388
+ 0,382,1461,1,0,0,0,384,1463,1,0,0,0,386,1481,1,0,0,0,388,1494,1,0,0,0,
389
+ 390,1509,1,0,0,0,392,1513,1,0,0,0,394,1517,1,0,0,0,396,1527,1,0,0,0,398,
390
+ 1531,1,0,0,0,400,1535,1,0,0,0,402,1541,1,0,0,0,404,1547,1,0,0,0,406,1556,
391
+ 1,0,0,0,408,1560,1,0,0,0,410,1565,1,0,0,0,412,1571,1,0,0,0,414,1576,1,
392
+ 0,0,0,416,1581,1,0,0,0,418,1591,1,0,0,0,420,1598,1,0,0,0,422,1602,1,0,
393
+ 0,0,424,1607,1,0,0,0,426,1614,1,0,0,0,428,1620,1,0,0,0,430,431,3,232,
394
+ 113,0,431,432,3,254,124,0,432,433,3,254,124,0,433,7,1,0,0,0,434,435,3,
395
+ 232,113,0,435,436,3,258,126,0,436,437,3,238,116,0,437,9,1,0,0,0,438,439,
396
+ 3,232,113,0,439,440,3,258,126,0,440,441,3,270,132,0,441,442,3,248,121,
397
+ 0,442,11,1,0,0,0,443,444,3,232,113,0,444,445,3,258,126,0,445,446,3,280,
398
+ 137,0,446,13,1,0,0,0,447,448,3,232,113,0,448,449,3,266,130,0,449,450,
399
+ 3,266,130,0,450,451,3,232,113,0,451,452,3,280,137,0,452,15,1,0,0,0,453,
400
+ 454,3,232,113,0,454,455,3,268,131,0,455,17,1,0,0,0,456,457,3,232,113,
401
+ 0,457,458,3,268,131,0,458,459,3,236,115,0,459,471,1,0,0,0,460,461,3,232,
402
+ 113,0,461,462,3,268,131,0,462,463,3,236,115,0,463,464,3,240,117,0,464,
403
+ 465,3,258,126,0,465,466,3,238,116,0,466,467,3,248,121,0,467,468,3,258,
404
+ 126,0,468,469,3,244,119,0,469,471,1,0,0,0,470,456,1,0,0,0,470,460,1,0,
405
+ 0,0,471,19,1,0,0,0,472,473,3,232,113,0,473,474,3,268,131,0,474,475,3,
406
+ 260,127,0,475,476,3,242,118,0,476,21,1,0,0,0,477,478,3,234,114,0,478,
407
+ 479,3,240,117,0,479,480,3,270,132,0,480,481,3,276,135,0,481,482,3,240,
408
+ 117,0,482,483,3,240,117,0,483,484,3,258,126,0,484,23,1,0,0,0,485,486,
409
+ 3,234,114,0,486,487,3,260,127,0,487,488,3,270,132,0,488,489,3,246,120,
410
+ 0,489,25,1,0,0,0,490,491,3,234,114,0,491,492,3,280,137,0,492,27,1,0,0,
411
+ 0,493,494,3,236,115,0,494,495,3,232,113,0,495,496,3,268,131,0,496,497,
412
+ 3,240,117,0,497,29,1,0,0,0,498,499,3,236,115,0,499,500,3,232,113,0,500,
413
+ 501,3,268,131,0,501,502,3,270,132,0,502,31,1,0,0,0,503,504,3,236,115,
414
+ 0,504,505,3,232,113,0,505,506,3,270,132,0,506,507,3,236,115,0,507,508,
415
+ 3,246,120,0,508,33,1,0,0,0,509,510,3,236,115,0,510,511,3,260,127,0,511,
416
+ 512,3,246,120,0,512,513,3,260,127,0,513,514,3,266,130,0,514,515,3,270,
417
+ 132,0,515,35,1,0,0,0,516,517,3,236,115,0,517,518,3,260,127,0,518,519,
418
+ 3,254,124,0,519,520,3,254,124,0,520,521,3,232,113,0,521,522,3,270,132,
419
+ 0,522,523,3,240,117,0,523,37,1,0,0,0,524,525,3,236,115,0,525,526,3,266,
420
+ 130,0,526,527,3,260,127,0,527,528,3,268,131,0,528,529,3,268,131,0,529,
421
+ 39,1,0,0,0,530,531,3,236,115,0,531,532,3,272,133,0,532,533,3,234,114,
422
+ 0,533,534,3,240,117,0,534,41,1,0,0,0,535,536,3,236,115,0,536,537,3,272,
423
+ 133,0,537,538,3,266,130,0,538,539,3,266,130,0,539,540,3,240,117,0,540,
424
+ 541,3,258,126,0,541,542,3,270,132,0,542,43,1,0,0,0,543,544,3,238,116,
425
+ 0,544,545,3,232,113,0,545,546,3,270,132,0,546,547,3,240,117,0,547,45,
426
+ 1,0,0,0,548,549,3,238,116,0,549,550,3,232,113,0,550,551,3,280,137,0,551,
427
+ 47,1,0,0,0,552,553,3,238,116,0,553,554,3,240,117,0,554,555,3,268,131,
428
+ 0,555,556,3,236,115,0,556,49,1,0,0,0,557,558,3,238,116,0,558,559,3,240,
429
+ 117,0,559,560,3,268,131,0,560,561,3,236,115,0,561,562,3,240,117,0,562,
430
+ 563,3,258,126,0,563,564,3,238,116,0,564,565,3,248,121,0,565,566,3,258,
431
+ 126,0,566,567,3,244,119,0,567,51,1,0,0,0,568,569,3,238,116,0,569,570,
432
+ 3,248,121,0,570,571,3,268,131,0,571,572,3,270,132,0,572,573,3,248,121,
433
+ 0,573,574,3,258,126,0,574,575,3,236,115,0,575,576,3,270,132,0,576,53,
434
+ 1,0,0,0,577,578,3,240,117,0,578,579,3,254,124,0,579,580,3,268,131,0,580,
435
+ 581,3,240,117,0,581,55,1,0,0,0,582,583,3,240,117,0,583,584,3,258,126,
436
+ 0,584,585,3,238,116,0,585,57,1,0,0,0,586,587,3,240,117,0,587,588,3,278,
437
+ 136,0,588,589,3,236,115,0,589,590,3,240,117,0,590,591,3,262,128,0,591,
438
+ 592,3,270,132,0,592,59,1,0,0,0,593,594,3,240,117,0,594,595,3,278,136,
439
+ 0,595,596,3,270,132,0,596,597,3,266,130,0,597,598,3,232,113,0,598,599,
440
+ 3,236,115,0,599,600,3,270,132,0,600,61,1,0,0,0,601,602,3,242,118,0,602,
441
+ 603,3,248,121,0,603,604,3,258,126,0,604,605,3,232,113,0,605,606,3,254,
442
+ 124,0,606,63,1,0,0,0,607,608,3,242,118,0,608,609,3,248,121,0,609,610,
443
+ 3,258,126,0,610,611,3,232,113,0,611,612,3,254,124,0,612,613,3,254,124,
444
+ 0,613,614,3,280,137,0,614,65,1,0,0,0,615,616,3,242,118,0,616,617,3,248,
445
+ 121,0,617,618,3,266,130,0,618,619,3,268,131,0,619,620,3,270,132,0,620,
446
+ 67,1,0,0,0,621,622,3,242,118,0,622,623,3,258,126,0,623,69,1,0,0,0,624,
447
+ 625,3,242,118,0,625,626,3,260,127,0,626,627,3,254,124,0,627,628,3,254,
448
+ 124,0,628,629,3,260,127,0,629,630,3,276,135,0,630,631,3,248,121,0,631,
449
+ 632,3,258,126,0,632,633,3,244,119,0,633,71,1,0,0,0,634,635,3,242,118,
450
+ 0,635,636,3,260,127,0,636,637,3,266,130,0,637,73,1,0,0,0,638,639,3,242,
451
+ 118,0,639,640,3,266,130,0,640,641,3,260,127,0,641,642,3,256,125,0,642,
452
+ 75,1,0,0,0,643,644,3,242,118,0,644,645,3,272,133,0,645,646,3,254,124,
453
+ 0,646,647,3,254,124,0,647,77,1,0,0,0,648,649,3,242,118,0,649,650,3,272,
454
+ 133,0,650,651,3,258,126,0,651,79,1,0,0,0,652,653,3,244,119,0,653,654,
455
+ 3,266,130,0,654,655,3,260,127,0,655,656,3,272,133,0,656,657,3,262,128,
456
+ 0,657,81,1,0,0,0,658,659,3,246,120,0,659,660,3,232,113,0,660,661,3,274,
457
+ 134,0,661,662,3,248,121,0,662,663,3,258,126,0,663,664,3,244,119,0,664,
458
+ 83,1,0,0,0,665,666,3,246,120,0,666,667,3,260,127,0,667,668,3,272,133,
459
+ 0,668,669,3,266,130,0,669,85,1,0,0,0,670,671,3,248,121,0,671,672,3,238,
460
+ 116,0,672,87,1,0,0,0,673,674,3,248,121,0,674,675,3,242,118,0,675,89,1,
461
+ 0,0,0,676,677,3,248,121,0,677,678,3,254,124,0,678,679,3,248,121,0,679,
462
+ 680,3,252,123,0,680,681,3,240,117,0,681,91,1,0,0,0,682,683,3,248,121,
463
+ 0,683,684,3,258,126,0,684,93,1,0,0,0,685,686,3,248,121,0,686,687,3,258,
464
+ 126,0,687,688,3,242,118,0,688,699,1,0,0,0,689,690,3,248,121,0,690,691,
465
+ 3,258,126,0,691,692,3,242,118,0,692,693,3,248,121,0,693,694,3,258,126,
466
+ 0,694,695,3,248,121,0,695,696,3,270,132,0,696,697,3,280,137,0,697,699,
467
+ 1,0,0,0,698,685,1,0,0,0,698,689,1,0,0,0,699,95,1,0,0,0,700,701,3,248,
468
+ 121,0,701,702,3,258,126,0,702,703,3,258,126,0,703,704,3,240,117,0,704,
469
+ 705,3,266,130,0,705,97,1,0,0,0,706,707,3,248,121,0,707,708,3,258,126,
470
+ 0,708,709,3,270,132,0,709,710,3,240,117,0,710,711,3,266,130,0,711,712,
471
+ 3,268,131,0,712,713,3,240,117,0,713,714,3,236,115,0,714,715,3,270,132,
472
+ 0,715,99,1,0,0,0,716,717,3,248,121,0,717,718,3,258,126,0,718,719,3,270,
473
+ 132,0,719,720,3,240,117,0,720,721,3,266,130,0,721,722,3,274,134,0,722,
474
+ 723,3,232,113,0,723,724,3,254,124,0,724,101,1,0,0,0,725,726,3,248,121,
475
+ 0,726,727,3,268,131,0,727,103,1,0,0,0,728,729,3,250,122,0,729,730,3,260,
476
+ 127,0,730,731,3,248,121,0,731,732,3,258,126,0,732,105,1,0,0,0,733,734,
477
+ 3,252,123,0,734,735,3,240,117,0,735,736,3,280,137,0,736,107,1,0,0,0,737,
478
+ 738,3,254,124,0,738,739,3,232,113,0,739,740,3,268,131,0,740,741,3,270,
479
+ 132,0,741,109,1,0,0,0,742,743,3,254,124,0,743,744,3,240,117,0,744,745,
480
+ 3,232,113,0,745,746,3,238,116,0,746,747,3,248,121,0,747,748,3,258,126,
481
+ 0,748,749,3,244,119,0,749,111,1,0,0,0,750,751,3,254,124,0,751,752,3,240,
482
+ 117,0,752,753,3,242,118,0,753,754,3,270,132,0,754,113,1,0,0,0,755,756,
483
+ 3,254,124,0,756,757,3,240,117,0,757,758,3,270,132,0,758,115,1,0,0,0,759,
484
+ 760,3,254,124,0,760,761,3,248,121,0,761,762,3,252,123,0,762,763,3,240,
485
+ 117,0,763,117,1,0,0,0,764,765,3,254,124,0,765,766,3,248,121,0,766,767,
486
+ 3,256,125,0,767,768,3,248,121,0,768,769,3,270,132,0,769,119,1,0,0,0,770,
487
+ 771,3,256,125,0,771,772,3,248,121,0,772,773,3,258,126,0,773,774,3,272,
488
+ 133,0,774,775,3,270,132,0,775,776,3,240,117,0,776,121,1,0,0,0,777,778,
489
+ 3,256,125,0,778,779,3,260,127,0,779,780,3,258,126,0,780,781,3,270,132,
490
+ 0,781,782,3,246,120,0,782,123,1,0,0,0,783,784,3,258,126,0,784,785,3,232,
491
+ 113,0,785,786,3,258,126,0,786,125,1,0,0,0,787,788,3,258,126,0,788,789,
492
+ 3,260,127,0,789,790,3,270,132,0,790,127,1,0,0,0,791,792,3,258,126,0,792,
493
+ 793,3,272,133,0,793,794,3,254,124,0,794,795,3,254,124,0,795,129,1,0,0,
494
+ 0,796,797,3,258,126,0,797,798,3,272,133,0,798,799,3,254,124,0,799,800,
495
+ 3,254,124,0,800,801,3,268,131,0,801,131,1,0,0,0,802,803,3,260,127,0,803,
496
+ 804,3,242,118,0,804,805,3,242,118,0,805,806,3,268,131,0,806,807,3,240,
497
+ 117,0,807,808,3,270,132,0,808,133,1,0,0,0,809,810,3,260,127,0,810,811,
498
+ 3,258,126,0,811,135,1,0,0,0,812,813,3,260,127,0,813,814,3,266,130,0,814,
499
+ 137,1,0,0,0,815,816,3,260,127,0,816,817,3,266,130,0,817,818,3,238,116,
500
+ 0,818,819,3,240,117,0,819,820,3,266,130,0,820,139,1,0,0,0,821,822,3,260,
501
+ 127,0,822,823,3,272,133,0,823,824,3,270,132,0,824,825,3,240,117,0,825,
502
+ 826,3,266,130,0,826,141,1,0,0,0,827,828,3,260,127,0,828,829,3,274,134,
503
+ 0,829,830,3,240,117,0,830,831,3,266,130,0,831,143,1,0,0,0,832,833,3,262,
504
+ 128,0,833,834,3,232,113,0,834,835,3,266,130,0,835,836,3,270,132,0,836,
505
+ 837,3,248,121,0,837,838,3,270,132,0,838,839,3,248,121,0,839,840,3,260,
506
+ 127,0,840,841,3,258,126,0,841,145,1,0,0,0,842,843,3,262,128,0,843,844,
507
+ 3,266,130,0,844,845,3,240,117,0,845,846,3,236,115,0,846,847,3,240,117,
508
+ 0,847,848,3,238,116,0,848,849,3,248,121,0,849,850,3,258,126,0,850,851,
509
+ 3,244,119,0,851,147,1,0,0,0,852,853,3,262,128,0,853,854,3,266,130,0,854,
510
+ 855,3,240,117,0,855,856,3,276,135,0,856,857,3,246,120,0,857,858,3,240,
511
+ 117,0,858,859,3,266,130,0,859,860,3,240,117,0,860,149,1,0,0,0,861,862,
512
+ 3,264,129,0,862,863,3,272,133,0,863,864,3,232,113,0,864,865,3,266,130,
513
+ 0,865,866,3,270,132,0,866,867,3,240,117,0,867,868,3,266,130,0,868,151,
514
+ 1,0,0,0,869,870,3,266,130,0,870,871,3,232,113,0,871,872,3,258,126,0,872,
515
+ 873,3,244,119,0,873,874,3,240,117,0,874,153,1,0,0,0,875,876,3,266,130,
516
+ 0,876,877,3,240,117,0,877,878,3,270,132,0,878,879,3,272,133,0,879,880,
517
+ 3,266,130,0,880,881,3,258,126,0,881,155,1,0,0,0,882,883,3,266,130,0,883,
518
+ 884,3,248,121,0,884,885,3,244,119,0,885,886,3,246,120,0,886,887,3,270,
519
+ 132,0,887,157,1,0,0,0,888,889,3,266,130,0,889,890,3,260,127,0,890,891,
520
+ 3,254,124,0,891,892,3,254,124,0,892,893,3,272,133,0,893,894,3,262,128,
521
+ 0,894,159,1,0,0,0,895,896,3,266,130,0,896,897,3,260,127,0,897,898,3,276,
522
+ 135,0,898,161,1,0,0,0,899,900,3,266,130,0,900,901,3,260,127,0,901,902,
523
+ 3,276,135,0,902,903,3,268,131,0,903,163,1,0,0,0,904,905,3,268,131,0,905,
524
+ 906,3,232,113,0,906,907,3,256,125,0,907,908,3,262,128,0,908,909,3,254,
525
+ 124,0,909,910,3,240,117,0,910,165,1,0,0,0,911,912,3,268,131,0,912,913,
526
+ 3,240,117,0,913,914,3,236,115,0,914,915,3,260,127,0,915,916,3,258,126,
527
+ 0,916,917,3,238,116,0,917,167,1,0,0,0,918,919,3,268,131,0,919,920,3,240,
528
+ 117,0,920,921,3,254,124,0,921,922,3,240,117,0,922,923,3,236,115,0,923,
529
+ 924,3,270,132,0,924,169,1,0,0,0,925,926,3,268,131,0,926,927,3,240,117,
530
+ 0,927,928,3,256,125,0,928,929,3,248,121,0,929,171,1,0,0,0,930,931,3,268,
531
+ 131,0,931,932,3,240,117,0,932,933,3,270,132,0,933,934,3,270,132,0,934,
532
+ 935,3,248,121,0,935,936,3,258,126,0,936,937,3,244,119,0,937,938,3,268,
533
+ 131,0,938,173,1,0,0,0,939,940,3,268,131,0,940,941,3,272,133,0,941,942,
534
+ 3,234,114,0,942,943,3,268,131,0,943,944,3,270,132,0,944,945,3,266,130,
535
+ 0,945,946,3,248,121,0,946,947,3,258,126,0,947,948,3,244,119,0,948,175,
536
+ 1,0,0,0,949,950,3,270,132,0,950,951,3,246,120,0,951,952,3,240,117,0,952,
537
+ 953,3,258,126,0,953,177,1,0,0,0,954,955,3,270,132,0,955,956,3,246,120,
538
+ 0,956,957,3,266,130,0,957,958,3,260,127,0,958,959,3,276,135,0,959,179,
539
+ 1,0,0,0,960,961,3,270,132,0,961,962,3,248,121,0,962,963,3,240,117,0,963,
540
+ 964,3,268,131,0,964,181,1,0,0,0,965,966,3,270,132,0,966,967,3,248,121,
541
+ 0,967,968,3,256,125,0,968,969,3,240,117,0,969,970,3,268,131,0,970,971,
542
+ 3,270,132,0,971,972,3,232,113,0,972,973,3,256,125,0,973,974,3,262,128,
543
+ 0,974,183,1,0,0,0,975,976,3,270,132,0,976,977,3,260,127,0,977,185,1,0,
544
+ 0,0,978,979,3,270,132,0,979,980,3,260,127,0,980,981,3,262,128,0,981,187,
545
+ 1,0,0,0,982,983,3,270,132,0,983,984,3,260,127,0,984,985,3,270,132,0,985,
546
+ 986,3,232,113,0,986,987,3,254,124,0,987,988,3,268,131,0,988,189,1,0,0,
547
+ 0,989,990,3,270,132,0,990,991,3,266,130,0,991,992,3,232,113,0,992,993,
548
+ 3,248,121,0,993,994,3,254,124,0,994,995,3,248,121,0,995,996,3,258,126,
549
+ 0,996,997,3,244,119,0,997,191,1,0,0,0,998,999,3,270,132,0,999,1000,3,
550
+ 266,130,0,1000,1001,3,248,121,0,1001,1002,3,256,125,0,1002,193,1,0,0,
551
+ 0,1003,1004,3,270,132,0,1004,1005,3,266,130,0,1005,1006,3,272,133,0,1006,
552
+ 1007,3,258,126,0,1007,1008,3,236,115,0,1008,1009,3,232,113,0,1009,1010,
553
+ 3,270,132,0,1010,1011,3,240,117,0,1011,195,1,0,0,0,1012,1013,3,270,132,
554
+ 0,1013,1014,3,266,130,0,1014,1015,3,280,137,0,1015,197,1,0,0,0,1016,1017,
555
+ 3,272,133,0,1017,1018,3,258,126,0,1018,1019,3,234,114,0,1019,1020,3,260,
556
+ 127,0,1020,1021,3,272,133,0,1021,1022,3,258,126,0,1022,1023,3,238,116,
557
+ 0,1023,1024,3,240,117,0,1024,1025,3,238,116,0,1025,199,1,0,0,0,1026,1027,
558
+ 3,272,133,0,1027,1028,3,258,126,0,1028,1029,3,248,121,0,1029,1030,3,260,
559
+ 127,0,1030,1031,3,258,126,0,1031,201,1,0,0,0,1032,1033,3,272,133,0,1033,
560
+ 1034,3,268,131,0,1034,1035,3,248,121,0,1035,1036,3,258,126,0,1036,1037,
561
+ 3,244,119,0,1037,203,1,0,0,0,1038,1039,3,276,135,0,1039,1040,3,240,117,
562
+ 0,1040,1041,3,240,117,0,1041,1042,3,252,123,0,1042,205,1,0,0,0,1043,1044,
563
+ 3,276,135,0,1044,1045,3,246,120,0,1045,1046,3,240,117,0,1046,1047,3,258,
564
+ 126,0,1047,207,1,0,0,0,1048,1049,3,276,135,0,1049,1050,3,246,120,0,1050,
565
+ 1051,3,240,117,0,1051,1052,3,266,130,0,1052,1053,3,240,117,0,1053,209,
566
+ 1,0,0,0,1054,1055,3,276,135,0,1055,1056,3,246,120,0,1056,1057,3,248,121,
567
+ 0,1057,1058,3,254,124,0,1058,1059,3,240,117,0,1059,211,1,0,0,0,1060,1061,
568
+ 3,276,135,0,1061,1062,3,248,121,0,1062,1063,3,258,126,0,1063,1064,3,238,
569
+ 116,0,1064,1065,3,260,127,0,1065,1066,3,276,135,0,1066,213,1,0,0,0,1067,
570
+ 1068,3,276,135,0,1068,1069,3,248,121,0,1069,1070,3,270,132,0,1070,1071,
571
+ 3,246,120,0,1071,215,1,0,0,0,1072,1073,3,280,137,0,1073,1074,3,240,117,
572
+ 0,1074,1075,3,232,113,0,1075,1076,3,266,130,0,1076,1083,1,0,0,0,1077,
573
+ 1078,3,280,137,0,1078,1079,3,280,137,0,1079,1080,3,280,137,0,1080,1081,
574
+ 3,280,137,0,1081,1083,1,0,0,0,1082,1072,1,0,0,0,1082,1077,1,0,0,0,1083,
575
+ 217,1,0,0,0,1084,1085,3,298,146,0,1085,1086,3,234,114,0,1086,1112,1,0,
576
+ 0,0,1087,1088,3,298,146,0,1088,1089,3,242,118,0,1089,1112,1,0,0,0,1090,
577
+ 1091,3,298,146,0,1091,1092,3,266,130,0,1092,1112,1,0,0,0,1093,1094,3,
578
+ 298,146,0,1094,1095,3,258,126,0,1095,1112,1,0,0,0,1096,1097,3,298,146,
579
+ 0,1097,1098,3,270,132,0,1098,1112,1,0,0,0,1099,1100,3,298,146,0,1100,
580
+ 1101,5,48,0,0,1101,1112,1,0,0,0,1102,1103,3,298,146,0,1103,1104,3,232,
581
+ 113,0,1104,1112,1,0,0,0,1105,1106,3,298,146,0,1106,1107,3,274,134,0,1107,
582
+ 1112,1,0,0,0,1108,1109,3,298,146,0,1109,1110,3,298,146,0,1110,1112,1,
583
+ 0,0,0,1111,1084,1,0,0,0,1111,1087,1,0,0,0,1111,1090,1,0,0,0,1111,1093,
584
+ 1,0,0,0,1111,1096,1,0,0,0,1111,1099,1,0,0,0,1111,1102,1,0,0,0,1111,1105,
585
+ 1,0,0,0,1111,1108,1,0,0,0,1112,219,1,0,0,0,1113,1117,3,284,139,0,1114,
586
+ 1117,3,382,188,0,1115,1117,3,308,151,0,1116,1113,1,0,0,0,1116,1114,1,
587
+ 0,0,0,1116,1115,1,0,0,0,1117,1124,1,0,0,0,1118,1123,3,284,139,0,1119,
588
+ 1123,3,382,188,0,1120,1123,3,288,141,0,1121,1123,3,308,151,0,1122,1118,
589
+ 1,0,0,0,1122,1119,1,0,0,0,1122,1120,1,0,0,0,1122,1121,1,0,0,0,1123,1126,
590
+ 1,0,0,0,1124,1122,1,0,0,0,1124,1125,1,0,0,0,1125,1160,1,0,0,0,1126,1124,
591
+ 1,0,0,0,1127,1138,3,296,145,0,1128,1137,8,0,0,0,1129,1137,3,218,106,0,
592
+ 1130,1131,3,298,146,0,1131,1132,3,364,179,0,1132,1137,1,0,0,0,1133,1134,
593
+ 3,296,145,0,1134,1135,3,296,145,0,1135,1137,1,0,0,0,1136,1128,1,0,0,0,
594
+ 1136,1129,1,0,0,0,1136,1130,1,0,0,0,1136,1133,1,0,0,0,1137,1140,1,0,0,
595
+ 0,1138,1136,1,0,0,0,1138,1139,1,0,0,0,1139,1141,1,0,0,0,1140,1138,1,0,
596
+ 0,0,1141,1142,3,296,145,0,1142,1160,1,0,0,0,1143,1154,3,358,176,0,1144,
597
+ 1153,8,1,0,0,1145,1153,3,218,106,0,1146,1147,3,298,146,0,1147,1148,3,
598
+ 358,176,0,1148,1153,1,0,0,0,1149,1150,3,358,176,0,1150,1151,3,358,176,
599
+ 0,1151,1153,1,0,0,0,1152,1144,1,0,0,0,1152,1145,1,0,0,0,1152,1146,1,0,
600
+ 0,0,1152,1149,1,0,0,0,1153,1156,1,0,0,0,1154,1152,1,0,0,0,1154,1155,1,
601
+ 0,0,0,1155,1157,1,0,0,0,1156,1154,1,0,0,0,1157,1158,3,358,176,0,1158,
602
+ 1160,1,0,0,0,1159,1116,1,0,0,0,1159,1127,1,0,0,0,1159,1143,1,0,0,0,1160,
603
+ 221,1,0,0,0,1161,1162,3,228,111,0,1162,1166,3,310,152,0,1163,1165,3,290,
604
+ 142,0,1164,1163,1,0,0,0,1165,1168,1,0,0,0,1166,1164,1,0,0,0,1166,1167,
605
+ 1,0,0,0,1167,1171,1,0,0,0,1168,1166,1,0,0,0,1169,1172,3,262,128,0,1170,
606
+ 1172,3,240,117,0,1171,1169,1,0,0,0,1171,1170,1,0,0,0,1172,1175,1,0,0,
607
+ 0,1173,1176,3,354,174,0,1174,1176,3,306,150,0,1175,1173,1,0,0,0,1175,
608
+ 1174,1,0,0,0,1175,1176,1,0,0,0,1176,1178,1,0,0,0,1177,1179,3,288,141,
609
+ 0,1178,1177,1,0,0,0,1179,1180,1,0,0,0,1180,1178,1,0,0,0,1180,1181,1,0,
610
+ 0,0,1181,1238,1,0,0,0,1182,1185,3,228,111,0,1183,1186,3,262,128,0,1184,
611
+ 1186,3,240,117,0,1185,1183,1,0,0,0,1185,1184,1,0,0,0,1186,1189,1,0,0,
612
+ 0,1187,1190,3,354,174,0,1188,1190,3,306,150,0,1189,1187,1,0,0,0,1189,
613
+ 1188,1,0,0,0,1189,1190,1,0,0,0,1190,1192,1,0,0,0,1191,1193,3,288,141,
614
+ 0,1192,1191,1,0,0,0,1193,1194,1,0,0,0,1194,1192,1,0,0,0,1194,1195,1,0,
615
+ 0,0,1195,1238,1,0,0,0,1196,1197,3,226,110,0,1197,1201,3,310,152,0,1198,
616
+ 1200,3,288,141,0,1199,1198,1,0,0,0,1200,1203,1,0,0,0,1201,1199,1,0,0,
617
+ 0,1201,1202,1,0,0,0,1202,1204,1,0,0,0,1203,1201,1,0,0,0,1204,1207,3,240,
618
+ 117,0,1205,1208,3,354,174,0,1206,1208,3,306,150,0,1207,1205,1,0,0,0,1207,
619
+ 1206,1,0,0,0,1207,1208,1,0,0,0,1208,1210,1,0,0,0,1209,1211,3,288,141,
620
+ 0,1210,1209,1,0,0,0,1211,1212,1,0,0,0,1212,1210,1,0,0,0,1212,1213,1,0,
621
+ 0,0,1213,1238,1,0,0,0,1214,1215,3,310,152,0,1215,1216,3,226,110,0,1216,
622
+ 1219,3,240,117,0,1217,1220,3,354,174,0,1218,1220,3,306,150,0,1219,1217,
623
+ 1,0,0,0,1219,1218,1,0,0,0,1219,1220,1,0,0,0,1220,1222,1,0,0,0,1221,1223,
624
+ 3,288,141,0,1222,1221,1,0,0,0,1223,1224,1,0,0,0,1224,1222,1,0,0,0,1224,
625
+ 1225,1,0,0,0,1225,1238,1,0,0,0,1226,1227,3,226,110,0,1227,1230,3,240,
626
+ 117,0,1228,1231,3,354,174,0,1229,1231,3,306,150,0,1230,1228,1,0,0,0,1230,
627
+ 1229,1,0,0,0,1230,1231,1,0,0,0,1231,1233,1,0,0,0,1232,1234,3,288,141,
628
+ 0,1233,1232,1,0,0,0,1234,1235,1,0,0,0,1235,1233,1,0,0,0,1235,1236,1,0,
629
+ 0,0,1236,1238,1,0,0,0,1237,1161,1,0,0,0,1237,1182,1,0,0,0,1237,1196,1,
630
+ 0,0,0,1237,1214,1,0,0,0,1237,1226,1,0,0,0,1238,223,1,0,0,0,1239,1241,
631
+ 5,48,0,0,1240,1242,3,286,140,0,1241,1240,1,0,0,0,1242,1243,1,0,0,0,1243,
632
+ 1241,1,0,0,0,1243,1244,1,0,0,0,1244,225,1,0,0,0,1245,1247,3,288,141,0,
633
+ 1246,1245,1,0,0,0,1247,1248,1,0,0,0,1248,1246,1,0,0,0,1248,1249,1,0,0,
634
+ 0,1249,227,1,0,0,0,1250,1251,5,48,0,0,1251,1253,3,278,136,0,1252,1254,
635
+ 3,290,142,0,1253,1252,1,0,0,0,1254,1255,1,0,0,0,1255,1253,1,0,0,0,1255,
636
+ 1256,1,0,0,0,1256,229,1,0,0,0,1257,1268,3,364,179,0,1258,1267,8,2,0,0,
637
+ 1259,1267,3,218,106,0,1260,1261,3,298,146,0,1261,1262,3,364,179,0,1262,
638
+ 1267,1,0,0,0,1263,1264,3,364,179,0,1264,1265,3,364,179,0,1265,1267,1,
639
+ 0,0,0,1266,1258,1,0,0,0,1266,1259,1,0,0,0,1266,1260,1,0,0,0,1266,1263,
640
+ 1,0,0,0,1267,1270,1,0,0,0,1268,1266,1,0,0,0,1268,1269,1,0,0,0,1269,1271,
641
+ 1,0,0,0,1270,1268,1,0,0,0,1271,1272,3,364,179,0,1272,231,1,0,0,0,1273,
642
+ 1274,7,3,0,0,1274,233,1,0,0,0,1275,1276,7,4,0,0,1276,235,1,0,0,0,1277,
643
+ 1278,7,5,0,0,1278,237,1,0,0,0,1279,1280,7,6,0,0,1280,239,1,0,0,0,1281,
644
+ 1282,7,7,0,0,1282,241,1,0,0,0,1283,1284,7,8,0,0,1284,243,1,0,0,0,1285,
645
+ 1286,7,9,0,0,1286,245,1,0,0,0,1287,1288,7,10,0,0,1288,247,1,0,0,0,1289,
646
+ 1290,7,11,0,0,1290,249,1,0,0,0,1291,1292,7,12,0,0,1292,251,1,0,0,0,1293,
647
+ 1294,7,13,0,0,1294,253,1,0,0,0,1295,1296,7,14,0,0,1296,255,1,0,0,0,1297,
648
+ 1298,7,15,0,0,1298,257,1,0,0,0,1299,1300,7,16,0,0,1300,259,1,0,0,0,1301,
649
+ 1302,7,17,0,0,1302,261,1,0,0,0,1303,1304,7,18,0,0,1304,263,1,0,0,0,1305,
650
+ 1306,7,19,0,0,1306,265,1,0,0,0,1307,1308,7,20,0,0,1308,267,1,0,0,0,1309,
651
+ 1310,7,21,0,0,1310,269,1,0,0,0,1311,1312,7,22,0,0,1312,271,1,0,0,0,1313,
652
+ 1314,7,23,0,0,1314,273,1,0,0,0,1315,1316,7,24,0,0,1316,275,1,0,0,0,1317,
653
+ 1318,7,25,0,0,1318,277,1,0,0,0,1319,1320,7,26,0,0,1320,279,1,0,0,0,1321,
654
+ 1322,7,27,0,0,1322,281,1,0,0,0,1323,1324,7,28,0,0,1324,283,1,0,0,0,1325,
655
+ 1326,7,29,0,0,1326,285,1,0,0,0,1327,1328,7,30,0,0,1328,287,1,0,0,0,1329,
656
+ 1330,7,31,0,0,1330,289,1,0,0,0,1331,1332,7,32,0,0,1332,291,1,0,0,0,1333,
657
+ 1334,5,45,0,0,1334,1335,5,62,0,0,1335,293,1,0,0,0,1336,1337,5,42,0,0,
658
+ 1337,295,1,0,0,0,1338,1339,5,96,0,0,1339,297,1,0,0,0,1340,1341,5,92,0,
659
+ 0,1341,299,1,0,0,0,1342,1343,5,58,0,0,1343,301,1,0,0,0,1344,1345,5,44,
660
+ 0,0,1345,303,1,0,0,0,1346,1347,5,124,0,0,1347,1348,5,124,0,0,1348,305,
661
+ 1,0,0,0,1349,1350,5,45,0,0,1350,307,1,0,0,0,1351,1352,5,36,0,0,1352,309,
662
+ 1,0,0,0,1353,1354,5,46,0,0,1354,311,1,0,0,0,1355,1356,5,61,0,0,1356,1357,
663
+ 5,61,0,0,1357,313,1,0,0,0,1358,1359,5,61,0,0,1359,315,1,0,0,0,1360,1361,
664
+ 5,62,0,0,1361,1362,5,61,0,0,1362,317,1,0,0,0,1363,1364,5,62,0,0,1364,
665
+ 319,1,0,0,0,1365,1366,5,35,0,0,1366,321,1,0,0,0,1367,1368,5,126,0,0,1368,
666
+ 1369,5,42,0,0,1369,323,1,0,0,0,1370,1371,5,61,0,0,1371,1372,5,126,0,0,
667
+ 1372,1373,5,42,0,0,1373,325,1,0,0,0,1374,1375,5,123,0,0,1375,1376,1,0,
668
+ 0,0,1376,1377,6,160,0,0,1377,327,1,0,0,0,1378,1379,5,91,0,0,1379,329,
669
+ 1,0,0,0,1380,1381,5,40,0,0,1381,331,1,0,0,0,1382,1383,5,60,0,0,1383,1384,
670
+ 5,61,0,0,1384,333,1,0,0,0,1385,1386,5,60,0,0,1386,1387,5,47,0,0,1387,
671
+ 1388,1,0,0,0,1388,1389,6,164,1,0,1389,1390,6,164,2,0,1390,335,1,0,0,0,
672
+ 1391,1392,5,60,0,0,1392,1393,4,165,0,0,1393,1394,1,0,0,0,1394,1395,6,
673
+ 165,3,0,1395,1396,6,165,4,0,1396,337,1,0,0,0,1397,1398,5,60,0,0,1398,
674
+ 339,1,0,0,0,1399,1400,5,60,0,0,1400,1401,5,47,0,0,1401,341,1,0,0,0,1402,
675
+ 1403,5,33,0,0,1403,1407,5,61,0,0,1404,1405,5,60,0,0,1405,1407,5,62,0,
676
+ 0,1406,1402,1,0,0,0,1406,1404,1,0,0,0,1407,343,1,0,0,0,1408,1409,5,33,
677
+ 0,0,1409,1410,5,126,0,0,1410,1411,5,42,0,0,1411,345,1,0,0,0,1412,1413,
678
+ 5,33,0,0,1413,1414,5,126,0,0,1414,347,1,0,0,0,1415,1416,5,63,0,0,1416,
679
+ 1417,5,46,0,0,1417,349,1,0,0,0,1418,1419,5,63,0,0,1419,1420,5,63,0,0,
680
+ 1420,351,1,0,0,0,1421,1422,5,37,0,0,1422,353,1,0,0,0,1423,1424,5,43,0,
681
+ 0,1424,355,1,0,0,0,1425,1426,5,63,0,0,1426,357,1,0,0,0,1427,1428,5,34,
682
+ 0,0,1428,359,1,0,0,0,1429,1430,5,102,0,0,1430,1431,5,39,0,0,1431,1432,
683
+ 1,0,0,0,1432,1433,6,177,5,0,1433,361,1,0,0,0,1434,1435,5,70,0,0,1435,
684
+ 1436,5,39,0,0,1436,1437,1,0,0,0,1437,1438,6,178,6,0,1438,363,1,0,0,0,
685
+ 1439,1440,5,39,0,0,1440,365,1,0,0,0,1441,1442,5,126,0,0,1442,367,1,0,
686
+ 0,0,1443,1444,5,61,0,0,1444,1445,5,126,0,0,1445,369,1,0,0,0,1446,1447,
687
+ 5,125,0,0,1447,1448,1,0,0,0,1448,1449,6,182,7,0,1449,371,1,0,0,0,1450,
688
+ 1451,5,93,0,0,1451,373,1,0,0,0,1452,1453,5,41,0,0,1453,375,1,0,0,0,1454,
689
+ 1455,5,59,0,0,1455,377,1,0,0,0,1456,1457,5,47,0,0,1457,379,1,0,0,0,1458,
690
+ 1459,5,47,0,0,1459,1460,5,62,0,0,1460,381,1,0,0,0,1461,1462,5,95,0,0,
691
+ 1462,383,1,0,0,0,1463,1464,5,47,0,0,1464,1465,5,42,0,0,1465,1469,1,0,
692
+ 0,0,1466,1468,9,0,0,0,1467,1466,1,0,0,0,1468,1471,1,0,0,0,1469,1470,1,
693
+ 0,0,0,1469,1467,1,0,0,0,1470,1472,1,0,0,0,1471,1469,1,0,0,0,1472,1473,
694
+ 5,42,0,0,1473,1474,5,47,0,0,1474,1475,1,0,0,0,1475,1476,6,189,8,0,1476,
695
+ 385,1,0,0,0,1477,1478,5,45,0,0,1478,1482,5,45,0,0,1479,1480,5,47,0,0,
696
+ 1480,1482,5,47,0,0,1481,1477,1,0,0,0,1481,1479,1,0,0,0,1482,1486,1,0,
697
+ 0,0,1483,1485,8,33,0,0,1484,1483,1,0,0,0,1485,1488,1,0,0,0,1486,1484,
698
+ 1,0,0,0,1486,1487,1,0,0,0,1487,1490,1,0,0,0,1488,1486,1,0,0,0,1489,1491,
699
+ 7,34,0,0,1490,1489,1,0,0,0,1491,1492,1,0,0,0,1492,1493,6,190,8,0,1493,
700
+ 387,1,0,0,0,1494,1495,7,35,0,0,1495,1496,1,0,0,0,1496,1497,6,191,9,0,
701
+ 1497,389,1,0,0,0,1498,1510,8,36,0,0,1499,1510,3,218,106,0,1500,1501,3,
702
+ 298,146,0,1501,1502,3,364,179,0,1502,1510,1,0,0,0,1503,1504,3,298,146,
703
+ 0,1504,1505,3,326,160,0,1505,1510,1,0,0,0,1506,1507,3,364,179,0,1507,
704
+ 1508,3,364,179,0,1508,1510,1,0,0,0,1509,1498,1,0,0,0,1509,1499,1,0,0,
705
+ 0,1509,1500,1,0,0,0,1509,1503,1,0,0,0,1509,1506,1,0,0,0,1510,1511,1,0,
706
+ 0,0,1511,1509,1,0,0,0,1511,1512,1,0,0,0,1512,391,1,0,0,0,1513,1514,3,
707
+ 326,160,0,1514,1515,1,0,0,0,1515,1516,6,193,0,0,1516,393,1,0,0,0,1517,
708
+ 1518,3,364,179,0,1518,1519,1,0,0,0,1519,1520,6,194,10,0,1520,1521,6,194,
709
+ 7,0,1521,395,1,0,0,0,1522,1528,8,37,0,0,1523,1528,3,218,106,0,1524,1525,
710
+ 3,298,146,0,1525,1526,3,326,160,0,1526,1528,1,0,0,0,1527,1522,1,0,0,0,
711
+ 1527,1523,1,0,0,0,1527,1524,1,0,0,0,1528,1529,1,0,0,0,1529,1527,1,0,0,
712
+ 0,1529,1530,1,0,0,0,1530,397,1,0,0,0,1531,1532,3,326,160,0,1532,1533,
713
+ 1,0,0,0,1533,1534,6,196,0,0,1534,399,1,0,0,0,1535,1536,5,47,0,0,1536,
714
+ 1537,5,62,0,0,1537,1538,1,0,0,0,1538,1539,6,197,11,0,1539,1540,6,197,
715
+ 7,0,1540,401,1,0,0,0,1541,1542,5,62,0,0,1542,1543,1,0,0,0,1543,1544,6,
716
+ 198,12,0,1544,1545,6,198,7,0,1545,1546,6,198,13,0,1546,403,1,0,0,0,1547,
717
+ 1551,7,38,0,0,1548,1550,7,39,0,0,1549,1548,1,0,0,0,1550,1553,1,0,0,0,
718
+ 1551,1549,1,0,0,0,1551,1552,1,0,0,0,1552,1554,1,0,0,0,1553,1551,1,0,0,
719
+ 0,1554,1555,6,199,14,0,1555,405,1,0,0,0,1556,1557,5,61,0,0,1557,1558,
720
+ 1,0,0,0,1558,1559,6,200,15,0,1559,407,1,0,0,0,1560,1561,3,230,112,0,1561,
721
+ 1562,1,0,0,0,1562,1563,6,201,16,0,1563,409,1,0,0,0,1564,1566,7,40,0,0,
722
+ 1565,1564,1,0,0,0,1566,1567,1,0,0,0,1567,1565,1,0,0,0,1567,1568,1,0,0,
723
+ 0,1568,1569,1,0,0,0,1569,1570,6,202,9,0,1570,411,1,0,0,0,1571,1572,5,
724
+ 123,0,0,1572,1573,1,0,0,0,1573,1574,6,203,17,0,1574,1575,6,203,0,0,1575,
725
+ 413,1,0,0,0,1576,1577,5,62,0,0,1577,1578,1,0,0,0,1578,1579,6,204,12,0,
726
+ 1579,1580,6,204,7,0,1580,415,1,0,0,0,1581,1585,7,38,0,0,1582,1584,7,39,
727
+ 0,0,1583,1582,1,0,0,0,1584,1587,1,0,0,0,1585,1583,1,0,0,0,1585,1586,1,
728
+ 0,0,0,1586,1588,1,0,0,0,1587,1585,1,0,0,0,1588,1589,6,205,14,0,1589,417,
729
+ 1,0,0,0,1590,1592,7,40,0,0,1591,1590,1,0,0,0,1592,1593,1,0,0,0,1593,1591,
730
+ 1,0,0,0,1593,1594,1,0,0,0,1594,1595,1,0,0,0,1595,1596,6,206,9,0,1596,
731
+ 419,1,0,0,0,1597,1599,8,41,0,0,1598,1597,1,0,0,0,1599,1600,1,0,0,0,1600,
732
+ 1598,1,0,0,0,1600,1601,1,0,0,0,1601,421,1,0,0,0,1602,1603,5,123,0,0,1603,
733
+ 1604,1,0,0,0,1604,1605,6,208,17,0,1605,1606,6,208,0,0,1606,423,1,0,0,
734
+ 0,1607,1608,5,60,0,0,1608,1609,5,47,0,0,1609,1610,1,0,0,0,1610,1611,6,
735
+ 209,1,0,1611,1612,6,209,7,0,1612,1613,6,209,2,0,1613,425,1,0,0,0,1614,
736
+ 1615,5,60,0,0,1615,1616,1,0,0,0,1616,1617,6,210,3,0,1617,1618,6,210,4,
737
+ 0,1618,427,1,0,0,0,1619,1621,7,40,0,0,1620,1619,1,0,0,0,1621,1622,1,0,
738
+ 0,0,1622,1620,1,0,0,0,1622,1623,1,0,0,0,1623,1624,1,0,0,0,1624,1625,6,
739
+ 211,9,0,1625,429,1,0,0,0,53,0,1,2,3,4,5,470,698,1082,1111,1116,1122,1124,
740
+ 1136,1138,1152,1154,1159,1166,1171,1175,1180,1185,1189,1194,1201,1207,
741
+ 1212,1219,1224,1230,1235,1237,1243,1248,1255,1266,1268,1406,1469,1481,
742
+ 1486,1490,1509,1511,1527,1529,1551,1567,1585,1593,1600,1622,18,5,0,0,
743
+ 7,136,0,5,4,0,7,135,0,5,3,0,5,1,0,5,2,0,4,0,0,6,0,0,0,1,0,7,148,0,7,156,
744
+ 0,7,127,0,5,5,0,7,108,0,7,125,0,7,113,0,7,131,0
745
+ };
746
+ staticData->serializedATN = antlr4::atn::SerializedATNView(serializedATNSegment, sizeof(serializedATNSegment) / sizeof(serializedATNSegment[0]));
747
+
748
+ antlr4::atn::ATNDeserializer deserializer;
749
+ staticData->atn = deserializer.deserialize(staticData->serializedATN);
750
+
751
+ const size_t count = staticData->atn->getNumberOfDecisions();
752
+ staticData->decisionToDFA.reserve(count);
753
+ for (size_t i = 0; i < count; i++) {
754
+ staticData->decisionToDFA.emplace_back(staticData->atn->getDecisionState(i), i);
755
+ }
756
+ hogqllexerLexerStaticData = std::move(staticData);
757
+ }
758
+
759
+ }
760
+
761
+ HogQLLexer::HogQLLexer(CharStream *input) : Lexer(input) {
762
+ HogQLLexer::initialize();
763
+ _interpreter = new atn::LexerATNSimulator(this, *hogqllexerLexerStaticData->atn, hogqllexerLexerStaticData->decisionToDFA, hogqllexerLexerStaticData->sharedContextCache);
764
+ }
765
+
766
+ HogQLLexer::~HogQLLexer() {
767
+ delete _interpreter;
768
+ }
769
+
770
+ std::string HogQLLexer::getGrammarFileName() const {
771
+ return "HogQLLexer.g4";
772
+ }
773
+
774
+ const std::vector<std::string>& HogQLLexer::getRuleNames() const {
775
+ return hogqllexerLexerStaticData->ruleNames;
776
+ }
777
+
778
+ const std::vector<std::string>& HogQLLexer::getChannelNames() const {
779
+ return hogqllexerLexerStaticData->channelNames;
780
+ }
781
+
782
+ const std::vector<std::string>& HogQLLexer::getModeNames() const {
783
+ return hogqllexerLexerStaticData->modeNames;
784
+ }
785
+
786
+ const dfa::Vocabulary& HogQLLexer::getVocabulary() const {
787
+ return hogqllexerLexerStaticData->vocabulary;
788
+ }
789
+
790
+ antlr4::atn::SerializedATNView HogQLLexer::getSerializedATN() const {
791
+ return hogqllexerLexerStaticData->serializedATN;
792
+ }
793
+
794
+ const atn::ATN& HogQLLexer::getATN() const {
795
+ return *hogqllexerLexerStaticData->atn;
796
+ }
797
+
798
+
799
+ bool HogQLLexer::sempred(RuleContext *context, size_t ruleIndex, size_t predicateIndex) {
800
+ switch (ruleIndex) {
801
+ case 165: return TAG_LT_OPENSempred(antlrcpp::downCast<antlr4::RuleContext *>(context), predicateIndex);
802
+
803
+ default:
804
+ break;
805
+ }
806
+ return true;
807
+ }
808
+
809
+
810
+ bool HogQLLexer::TAG_LT_OPENSempred(antlr4::RuleContext *_localctx, size_t predicateIndex) {
811
+ switch (predicateIndex) {
812
+ case 0: return isOpeningTag();
813
+
814
+ default:
815
+ break;
816
+ }
817
+ return true;
818
+ }
819
+
820
+
821
+ void HogQLLexer::initialize() {
822
+ #if ANTLR4_USE_THREAD_LOCAL_CACHE
823
+ hogqllexerLexerInitialize();
824
+ #else
825
+ ::antlr4::internal::call_once(hogqllexerLexerOnceFlag, hogqllexerLexerInitialize);
826
+ #endif
827
+ }