@hoox-sh/pynets 0.1.0

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.
Files changed (48) hide show
  1. package/CHANGELOG.md +30 -0
  2. package/LICENSE +661 -0
  3. package/NOTICE +46 -0
  4. package/README.md +327 -0
  5. package/dist/browser.js +44 -0
  6. package/dist/index.d.ts +348 -0
  7. package/dist/index.js +41741 -0
  8. package/package.json +77 -0
  9. package/src/ast/builder.ts +1002 -0
  10. package/src/ast/dump.ts +43 -0
  11. package/src/ast/helper.ts +77 -0
  12. package/src/ast/nodes.ts +570 -0
  13. package/src/ast/unparse.ts +360 -0
  14. package/src/cli/rich.ts +378 -0
  15. package/src/cli.ts +627 -0
  16. package/src/generated/PinescriptLexer.interp +267 -0
  17. package/src/generated/PinescriptLexer.tokens +131 -0
  18. package/src/generated/PinescriptLexer.ts +673 -0
  19. package/src/generated/PinescriptLexerBase.ts +395 -0
  20. package/src/generated/PinescriptParser.interp +267 -0
  21. package/src/generated/PinescriptParser.tokens +131 -0
  22. package/src/generated/PinescriptParser.ts +8863 -0
  23. package/src/generated/PinescriptParserBase.ts +21 -0
  24. package/src/generated/PinescriptParserVisitor.ts +840 -0
  25. package/src/index.ts +55 -0
  26. package/src/parser/LexerBase.ts +395 -0
  27. package/src/parser/ParserBase.ts +21 -0
  28. package/src/parser/error.ts +33 -0
  29. package/src/runtime/array.ts +486 -0
  30. package/src/runtime/color.ts +164 -0
  31. package/src/runtime/drawings.ts +510 -0
  32. package/src/runtime/input.ts +102 -0
  33. package/src/runtime/interpret.ts +3897 -0
  34. package/src/runtime/library.ts +282 -0
  35. package/src/runtime/log.ts +69 -0
  36. package/src/runtime/map.ts +85 -0
  37. package/src/runtime/math.ts +231 -0
  38. package/src/runtime/matrix.ts +1154 -0
  39. package/src/runtime/provider.ts +232 -0
  40. package/src/runtime/request.ts +372 -0
  41. package/src/runtime/series.ts +44 -0
  42. package/src/runtime/str.ts +433 -0
  43. package/src/runtime/strategy.ts +1105 -0
  44. package/src/runtime/ta.ts +2093 -0
  45. package/src/runtime/ticker.ts +81 -0
  46. package/src/runtime/time.ts +439 -0
  47. package/src/runtime/timeframe.ts +85 -0
  48. package/src/runtime/udt.ts +119 -0
@@ -0,0 +1,673 @@
1
+ // Generated from /mnt/data/home/jango/Git/pynescript/src/pynescript/ast/grammar/antlr4/resource/PinescriptLexer.g4 by ANTLR 4.13.2
2
+ // noinspection ES6UnusedImports,JSUnusedGlobalSymbols,JSUnusedLocalSymbols
3
+ import {
4
+ ATN,
5
+ ATNDeserializer,
6
+ CharStream,
7
+ DecisionState, DFA,
8
+ Lexer,
9
+ LexerATNSimulator,
10
+ RuleContext,
11
+ PredictionContextCache,
12
+ Token
13
+ } from "antlr4";
14
+ import PinescriptLexerBase from './PinescriptLexerBase.ts';
15
+
16
+ export default class PinescriptLexer extends PinescriptLexerBase {
17
+ public static readonly INDENT = 1;
18
+ public static readonly DEDENT = 2;
19
+ public static readonly AND = 3;
20
+ public static readonly AS = 4;
21
+ public static readonly BREAK = 5;
22
+ public static readonly BY = 6;
23
+ public static readonly CONST = 7;
24
+ public static readonly CONTINUE = 8;
25
+ public static readonly ELSE = 9;
26
+ public static readonly ENUM = 10;
27
+ public static readonly EXPORT = 11;
28
+ public static readonly FALSE = 12;
29
+ public static readonly FOR = 13;
30
+ public static readonly IF = 14;
31
+ public static readonly IMPORT = 15;
32
+ public static readonly IN = 16;
33
+ public static readonly INPUT = 17;
34
+ public static readonly METHOD = 18;
35
+ public static readonly NOT = 19;
36
+ public static readonly OR = 20;
37
+ public static readonly SERIES = 21;
38
+ public static readonly SIMPLE = 22;
39
+ public static readonly SWITCH = 23;
40
+ public static readonly TO = 24;
41
+ public static readonly TYPE = 25;
42
+ public static readonly TRUE = 26;
43
+ public static readonly VAR = 27;
44
+ public static readonly VARIP = 28;
45
+ public static readonly WHILE = 29;
46
+ public static readonly LPAR = 30;
47
+ public static readonly RPAR = 31;
48
+ public static readonly LSQB = 32;
49
+ public static readonly RSQB = 33;
50
+ public static readonly LSHIFT = 34;
51
+ public static readonly RSHIFT = 35;
52
+ public static readonly LESSEQUAL = 36;
53
+ public static readonly GREATEREQUAL = 37;
54
+ public static readonly EQEQUAL = 38;
55
+ public static readonly NOTEQUAL = 39;
56
+ public static readonly LESS = 40;
57
+ public static readonly GREATER = 41;
58
+ public static readonly EQUAL = 42;
59
+ public static readonly RARROW = 43;
60
+ public static readonly DOT = 44;
61
+ public static readonly COMMA = 45;
62
+ public static readonly COLON = 46;
63
+ public static readonly QUESTION = 47;
64
+ public static readonly TILDE = 48;
65
+ public static readonly AMP = 49;
66
+ public static readonly PIPE = 50;
67
+ public static readonly CARET = 51;
68
+ public static readonly PLUS = 52;
69
+ public static readonly MINUS = 53;
70
+ public static readonly STAR = 54;
71
+ public static readonly SLASH = 55;
72
+ public static readonly PERCENT = 56;
73
+ public static readonly PLUSEQUAL = 57;
74
+ public static readonly MINEQUAL = 58;
75
+ public static readonly STAREQUAL = 59;
76
+ public static readonly SLASHEQUAL = 60;
77
+ public static readonly PERCENTEQUAL = 61;
78
+ public static readonly COLONEQUAL = 62;
79
+ public static readonly NAME = 63;
80
+ public static readonly NUMBER = 64;
81
+ public static readonly STRING = 65;
82
+ public static readonly COLOR = 66;
83
+ public static readonly NEWLINE = 67;
84
+ public static readonly WS = 68;
85
+ public static readonly COMMENT = 69;
86
+ public static readonly UNICODE_NOISE = 70;
87
+ public static readonly ERROR_TOKEN = 71;
88
+ public static readonly EOF = Token.EOF;
89
+ public static readonly COMMENT_CHANNEL = 2;
90
+
91
+ public static readonly channelNames: string[] = [ "DEFAULT_TOKEN_CHANNEL", "HIDDEN",
92
+ "COMMENT_CHANNEL" ];
93
+ public static readonly literalNames: (string | null)[] = [ null, null,
94
+ null, "'and'",
95
+ "'as'", "'break'",
96
+ "'by'", "'const'",
97
+ "'continue'",
98
+ "'else'", "'enum'",
99
+ "'export'",
100
+ "'false'", "'for'",
101
+ "'if'", "'import'",
102
+ "'in'", "'input'",
103
+ "'method'",
104
+ "'not'", "'or'",
105
+ "'series'",
106
+ "'simple'",
107
+ "'switch'",
108
+ "'to'", "'type'",
109
+ "'true'", "'var'",
110
+ "'varip'", "'while'",
111
+ "'('", "')'",
112
+ "'['", "']'",
113
+ "'<<'", "'>>'",
114
+ "'<='", "'>='",
115
+ "'=='", "'!='",
116
+ "'<'", "'>'",
117
+ "'='", "'=>'",
118
+ "'.'", "','",
119
+ "':'", "'?'",
120
+ "'~'", "'&'",
121
+ "'|'", "'^'",
122
+ "'+'", "'-'",
123
+ "'*'", "'/'",
124
+ "'%'", "'+='",
125
+ "'-='", "'*='",
126
+ "'/='", "'%='",
127
+ "':='" ];
128
+ public static readonly symbolicNames: (string | null)[] = [ null, "INDENT",
129
+ "DEDENT", "AND",
130
+ "AS", "BREAK",
131
+ "BY", "CONST",
132
+ "CONTINUE",
133
+ "ELSE", "ENUM",
134
+ "EXPORT", "FALSE",
135
+ "FOR", "IF",
136
+ "IMPORT", "IN",
137
+ "INPUT", "METHOD",
138
+ "NOT", "OR",
139
+ "SERIES", "SIMPLE",
140
+ "SWITCH", "TO",
141
+ "TYPE", "TRUE",
142
+ "VAR", "VARIP",
143
+ "WHILE", "LPAR",
144
+ "RPAR", "LSQB",
145
+ "RSQB", "LSHIFT",
146
+ "RSHIFT", "LESSEQUAL",
147
+ "GREATEREQUAL",
148
+ "EQEQUAL",
149
+ "NOTEQUAL",
150
+ "LESS", "GREATER",
151
+ "EQUAL", "RARROW",
152
+ "DOT", "COMMA",
153
+ "COLON", "QUESTION",
154
+ "TILDE", "AMP",
155
+ "PIPE", "CARET",
156
+ "PLUS", "MINUS",
157
+ "STAR", "SLASH",
158
+ "PERCENT",
159
+ "PLUSEQUAL",
160
+ "MINEQUAL",
161
+ "STAREQUAL",
162
+ "SLASHEQUAL",
163
+ "PERCENTEQUAL",
164
+ "COLONEQUAL",
165
+ "NAME", "NUMBER",
166
+ "STRING", "COLOR",
167
+ "NEWLINE",
168
+ "WS", "COMMENT",
169
+ "UNICODE_NOISE",
170
+ "ERROR_TOKEN" ];
171
+ public static readonly modeNames: string[] = [ "DEFAULT_MODE", ];
172
+
173
+ public static readonly ruleNames: string[] = [
174
+ "AND", "AS", "BREAK", "BY", "CONST", "CONTINUE", "ELSE", "ENUM", "EXPORT",
175
+ "FALSE", "FOR", "IF", "IMPORT", "IN", "INPUT", "METHOD", "NOT", "OR",
176
+ "SERIES", "SIMPLE", "SWITCH", "TO", "TYPE", "TRUE", "VAR", "VARIP", "WHILE",
177
+ "LPAR", "RPAR", "LSQB", "RSQB", "LSHIFT", "RSHIFT", "LESSEQUAL", "GREATEREQUAL",
178
+ "EQEQUAL", "NOTEQUAL", "LESS", "GREATER", "EQUAL", "RARROW", "DOT", "COMMA",
179
+ "COLON", "QUESTION", "TILDE", "AMP", "PIPE", "CARET", "PLUS", "MINUS",
180
+ "STAR", "SLASH", "PERCENT", "PLUSEQUAL", "MINEQUAL", "STAREQUAL", "SLASHEQUAL",
181
+ "PERCENTEQUAL", "COLONEQUAL", "NAME", "NUMBER", "STRING", "COLOR", "NEWLINE",
182
+ "WS", "COMMENT", "HASH_COMMENT", "BACKTICKS", "UNICODE_NOISE", "ERROR_TOKEN",
183
+ "TRIPLE_DQ_STRING", "TRIPLE_SQ_STRING", "STRING_LITERAL", "SINGLE_QUOTED_STRING",
184
+ "DOUBLE_QUOTED_STRING", "STRING_ITEM_FOR_SINGLE_QUOTE", "STRING_ITEM_FOR_DOUBLE_QUOTE",
185
+ "STRING_CHAR_NO_SINGLE_QUOTE", "STRING_CHAR_NO_DOUBLE_QUOTE", "STRING_ESCAPE_SEQ",
186
+ "COLOR_LITERAL", "COLOR_LITERAL_RGBA", "COLOR_LITERAL_RGB", "NUMBER_LITERAL",
187
+ "INTEGER", "DEC_INTEGER", "BIN_INTEGER", "OCT_INTEGER", "HEX_INTEGER",
188
+ "NON_ZERO_DIGIT", "DIGIT", "BIN_DIGIT", "OCT_DIGIT", "HEX_DIGIT", "FLOAT_NUMBER",
189
+ "POINT_FLOAT", "EXPONENT_FLOAT", "DIGIT_PART", "FRACTION", "EXPONENT",
190
+ "IMAG_NUMBER", "OS_INDEPENDENT_NL", "ID_START", "ID_CONTINUE",
191
+ ];
192
+
193
+
194
+ constructor(input: CharStream) {
195
+ super(input);
196
+ this._interp = new LexerATNSimulator(this, PinescriptLexer._ATN, PinescriptLexer.DecisionsToDFA, new PredictionContextCache());
197
+ }
198
+
199
+ public get grammarFileName(): string { return "PinescriptLexer.g4"; }
200
+
201
+ public get literalNames(): (string | null)[] { return PinescriptLexer.literalNames; }
202
+ public get symbolicNames(): (string | null)[] { return PinescriptLexer.symbolicNames; }
203
+ public get ruleNames(): string[] { return PinescriptLexer.ruleNames; }
204
+
205
+ public get serializedATN(): number[] { return PinescriptLexer._serializedATN; }
206
+
207
+ public get channelNames(): string[] { return PinescriptLexer.channelNames; }
208
+
209
+ public get modeNames(): string[] { return PinescriptLexer.modeNames; }
210
+
211
+ public static readonly _serializedATN: number[] = [4,0,71,729,6,-1,2,0,
212
+ 7,0,2,1,7,1,2,2,7,2,2,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,
213
+ 7,9,2,10,7,10,2,11,7,11,2,12,7,12,2,13,7,13,2,14,7,14,2,15,7,15,2,16,7,
214
+ 16,2,17,7,17,2,18,7,18,2,19,7,19,2,20,7,20,2,21,7,21,2,22,7,22,2,23,7,23,
215
+ 2,24,7,24,2,25,7,25,2,26,7,26,2,27,7,27,2,28,7,28,2,29,7,29,2,30,7,30,2,
216
+ 31,7,31,2,32,7,32,2,33,7,33,2,34,7,34,2,35,7,35,2,36,7,36,2,37,7,37,2,38,
217
+ 7,38,2,39,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,
218
+ 45,2,46,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,
219
+ 2,53,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,
220
+ 60,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,
221
+ 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,7,
222
+ 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,7,81,
223
+ 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,7,88,2,
224
+ 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,7,95,2,96,
225
+ 7,96,2,97,7,97,2,98,7,98,2,99,7,99,2,100,7,100,2,101,7,101,2,102,7,102,
226
+ 2,103,7,103,2,104,7,104,1,0,1,0,1,0,1,0,1,1,1,1,1,1,1,2,1,2,1,2,1,2,1,2,
227
+ 1,2,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,5,1,5,1,5,1,5,1,5,
228
+ 1,5,1,6,1,6,1,6,1,6,1,6,1,7,1,7,1,7,1,7,1,7,1,8,1,8,1,8,1,8,1,8,1,8,1,8,
229
+ 1,9,1,9,1,9,1,9,1,9,1,9,1,10,1,10,1,10,1,10,1,11,1,11,1,11,1,12,1,12,1,
230
+ 12,1,12,1,12,1,12,1,12,1,13,1,13,1,13,1,14,1,14,1,14,1,14,1,14,1,14,1,15,
231
+ 1,15,1,15,1,15,1,15,1,15,1,15,1,16,1,16,1,16,1,16,1,17,1,17,1,17,1,18,1,
232
+ 18,1,18,1,18,1,18,1,18,1,18,1,19,1,19,1,19,1,19,1,19,1,19,1,19,1,20,1,20,
233
+ 1,20,1,20,1,20,1,20,1,20,1,21,1,21,1,21,1,22,1,22,1,22,1,22,1,22,1,23,1,
234
+ 23,1,23,1,23,1,23,1,24,1,24,1,24,1,24,1,25,1,25,1,25,1,25,1,25,1,25,1,26,
235
+ 1,26,1,26,1,26,1,26,1,26,1,27,1,27,1,28,1,28,1,29,1,29,1,30,1,30,1,31,1,
236
+ 31,1,31,1,32,1,32,1,32,1,33,1,33,1,33,1,34,1,34,1,34,1,35,1,35,1,35,1,36,
237
+ 1,36,1,36,1,37,1,37,1,38,1,38,1,39,1,39,1,40,1,40,1,40,1,41,1,41,1,42,1,
238
+ 42,1,43,1,43,1,44,1,44,1,45,1,45,1,46,1,46,1,47,1,47,1,48,1,48,1,49,1,49,
239
+ 1,50,1,50,1,51,1,51,1,52,1,52,1,53,1,53,1,54,1,54,1,54,1,55,1,55,1,55,1,
240
+ 56,1,56,1,56,1,57,1,57,1,57,1,58,1,58,1,58,1,59,1,59,1,59,1,60,1,60,5,60,
241
+ 434,8,60,10,60,12,60,437,9,60,1,61,1,61,1,62,1,62,1,63,1,63,1,64,1,64,1,
242
+ 65,4,65,448,8,65,11,65,12,65,449,1,65,1,65,1,66,1,66,1,66,1,66,5,66,458,
243
+ 8,66,10,66,12,66,461,9,66,1,66,1,66,1,67,1,67,1,67,5,67,468,8,67,10,67,
244
+ 12,67,471,9,67,1,67,1,67,5,67,475,8,67,10,67,12,67,478,9,67,3,67,480,8,
245
+ 67,1,67,1,67,1,67,1,68,4,68,486,8,68,11,68,12,68,487,1,68,1,68,1,68,1,69,
246
+ 1,69,1,69,1,69,1,70,1,70,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,
247
+ 71,1,71,5,71,510,8,71,10,71,12,71,513,9,71,1,71,1,71,1,71,1,71,1,71,1,71,
248
+ 1,72,1,72,1,72,1,72,1,72,1,72,1,72,1,72,1,72,1,72,1,72,5,72,532,8,72,10,
249
+ 72,12,72,535,9,72,1,72,1,72,1,72,1,72,1,72,1,72,1,73,1,73,3,73,545,8,73,
250
+ 1,74,1,74,5,74,549,8,74,10,74,12,74,552,9,74,1,74,1,74,1,75,1,75,5,75,558,
251
+ 8,75,10,75,12,75,561,9,75,1,75,1,75,1,76,1,76,3,76,567,8,76,1,77,1,77,3,
252
+ 77,571,8,77,1,78,1,78,1,79,1,79,1,80,1,80,1,80,1,81,1,81,3,81,582,8,81,
253
+ 1,82,1,82,1,82,1,82,1,82,1,82,1,82,1,82,1,82,1,82,1,83,1,83,1,83,1,83,1,
254
+ 83,1,83,1,83,1,83,1,84,1,84,1,84,3,84,605,8,84,1,85,1,85,1,85,1,85,3,85,
255
+ 611,8,85,1,86,1,86,3,86,615,8,86,1,86,5,86,618,8,86,10,86,12,86,621,9,86,
256
+ 1,86,1,86,3,86,625,8,86,1,86,5,86,628,8,86,10,86,12,86,631,9,86,3,86,633,
257
+ 8,86,1,87,1,87,1,87,3,87,638,8,87,1,87,4,87,641,8,87,11,87,12,87,642,1,
258
+ 88,1,88,1,88,3,88,648,8,88,1,88,4,88,651,8,88,11,88,12,88,652,1,89,1,89,
259
+ 1,89,3,89,658,8,89,1,89,4,89,661,8,89,11,89,12,89,662,1,90,1,90,1,91,1,
260
+ 91,1,92,1,92,1,93,1,93,1,94,1,94,3,94,675,8,94,1,95,1,95,3,95,679,8,95,
261
+ 1,96,3,96,682,8,96,1,96,1,96,1,96,1,96,3,96,688,8,96,1,97,1,97,3,97,692,
262
+ 8,97,1,97,1,97,1,98,1,98,3,98,698,8,98,1,98,5,98,701,8,98,10,98,12,98,704,
263
+ 9,98,1,99,1,99,1,99,1,100,1,100,3,100,711,8,100,1,100,1,100,1,101,1,101,
264
+ 3,101,717,8,101,1,101,1,101,1,102,3,102,722,8,102,1,102,1,102,1,103,1,103,
265
+ 1,104,1,104,0,0,105,1,3,3,4,5,5,7,6,9,7,11,8,13,9,15,10,17,11,19,12,21,
266
+ 13,23,14,25,15,27,16,29,17,31,18,33,19,35,20,37,21,39,22,41,23,43,24,45,
267
+ 25,47,26,49,27,51,28,53,29,55,30,57,31,59,32,61,33,63,34,65,35,67,36,69,
268
+ 37,71,38,73,39,75,40,77,41,79,42,81,43,83,44,85,45,87,46,89,47,91,48,93,
269
+ 49,95,50,97,51,99,52,101,53,103,54,105,55,107,56,109,57,111,58,113,59,115,
270
+ 60,117,61,119,62,121,63,123,64,125,65,127,66,129,67,131,68,133,69,135,0,
271
+ 137,0,139,70,141,71,143,0,145,0,147,0,149,0,151,0,153,0,155,0,157,0,159,
272
+ 0,161,0,163,0,165,0,167,0,169,0,171,0,173,0,175,0,177,0,179,0,181,0,183,
273
+ 0,185,0,187,0,189,0,191,0,193,0,195,0,197,0,199,0,201,0,203,0,205,0,207,
274
+ 0,209,0,1,0,20,3,0,9,9,12,12,32,32,2,0,10,10,13,13,5,0,10,10,13,13,48,57,
275
+ 65,70,97,102,7,0,183,183,8211,8212,8216,8217,8220,8221,8226,8226,8592,8595,
276
+ 8656,8659,1,0,34,34,1,0,39,39,2,0,39,39,92,92,2,0,34,34,92,92,2,0,66,66,
277
+ 98,98,2,0,79,79,111,111,2,0,88,88,120,120,1,0,49,57,1,0,48,57,1,0,48,55,
278
+ 2,0,65,70,97,102,2,0,69,69,101,101,2,0,43,43,45,45,2,0,74,74,106,106,660,
279
+ 0,65,90,95,95,97,122,170,170,181,181,186,186,192,214,216,246,248,705,710,
280
+ 721,736,740,748,748,750,750,880,884,886,887,890,893,895,895,902,902,904,
281
+ 906,908,908,910,929,931,1013,1015,1153,1162,1327,1329,1366,1369,1369,1376,
282
+ 1416,1488,1514,1519,1522,1568,1610,1646,1647,1649,1747,1749,1749,1765,1766,
283
+ 1774,1775,1786,1788,1791,1791,1808,1808,1810,1839,1869,1957,1969,1969,1994,
284
+ 2026,2036,2037,2042,2042,2048,2069,2074,2074,2084,2084,2088,2088,2112,2136,
285
+ 2144,2154,2160,2183,2185,2190,2208,2249,2308,2361,2365,2365,2384,2384,2392,
286
+ 2401,2417,2432,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,
287
+ 2493,2493,2510,2510,2524,2525,2527,2529,2544,2545,2556,2556,2565,2570,2575,
288
+ 2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2649,2652,2654,2654,
289
+ 2674,2676,2693,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2749,
290
+ 2749,2768,2768,2784,2785,2809,2809,2821,2828,2831,2832,2835,2856,2858,2864,
291
+ 2866,2867,2869,2873,2877,2877,2908,2909,2911,2913,2929,2929,2947,2947,2949,
292
+ 2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,
293
+ 2990,3001,3024,3024,3077,3084,3086,3088,3090,3112,3114,3129,3133,3133,3160,
294
+ 3162,3165,3165,3168,3169,3200,3200,3205,3212,3214,3216,3218,3240,3242,3251,
295
+ 3253,3257,3261,3261,3293,3294,3296,3297,3313,3314,3332,3340,3342,3344,3346,
296
+ 3386,3389,3389,3406,3406,3412,3414,3423,3425,3450,3455,3461,3478,3482,3505,
297
+ 3507,3515,3517,3517,3520,3526,3585,3632,3634,3635,3648,3654,3713,3714,3716,
298
+ 3716,3718,3722,3724,3747,3749,3749,3751,3760,3762,3763,3773,3773,3776,3780,
299
+ 3782,3782,3804,3807,3840,3840,3904,3911,3913,3948,3976,3980,4096,4138,4159,
300
+ 4159,4176,4181,4186,4189,4193,4193,4197,4198,4206,4208,4213,4225,4238,4238,
301
+ 4256,4293,4295,4295,4301,4301,4304,4346,4348,4680,4682,4685,4688,4694,4696,
302
+ 4696,4698,4701,4704,4744,4746,4749,4752,4784,4786,4789,4792,4798,4800,4800,
303
+ 4802,4805,4808,4822,4824,4880,4882,4885,4888,4954,4992,5007,5024,5109,5112,
304
+ 5117,5121,5740,5743,5759,5761,5786,5792,5866,5873,5880,5888,5905,5919,5937,
305
+ 5952,5969,5984,5996,5998,6000,6016,6067,6103,6103,6108,6108,6176,6264,6272,
306
+ 6276,6279,6312,6314,6314,6320,6389,6400,6430,6480,6509,6512,6516,6528,6571,
307
+ 6576,6601,6656,6678,6688,6740,6823,6823,6917,6963,6981,6988,7043,7072,7086,
308
+ 7087,7098,7141,7168,7203,7245,7247,7258,7293,7296,7304,7312,7354,7357,7359,
309
+ 7401,7404,7406,7411,7413,7414,7418,7418,7424,7615,7680,7957,7960,7965,7968,
310
+ 8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,
311
+ 8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,
312
+ 8180,8182,8188,8305,8305,8319,8319,8336,8348,8450,8450,8455,8455,8458,8467,
313
+ 8469,8469,8473,8477,8484,8484,8486,8486,8488,8488,8490,8493,8495,8505,8508,
314
+ 8511,8517,8521,8526,8526,8579,8580,11264,11492,11499,11502,11506,11507,
315
+ 11520,11557,11559,11559,11565,11565,11568,11623,11631,11631,11648,11670,
316
+ 11680,11686,11688,11694,11696,11702,11704,11710,11712,11718,11720,11726,
317
+ 11728,11734,11736,11742,11823,11823,12293,12294,12337,12341,12347,12348,
318
+ 12353,12438,12445,12447,12449,12538,12540,12543,12549,12591,12593,12686,
319
+ 12704,12735,12784,12799,13312,19903,19968,42124,42192,42237,42240,42508,
320
+ 42512,42527,42538,42539,42560,42606,42623,42653,42656,42725,42775,42783,
321
+ 42786,42888,42891,42954,42960,42961,42963,42963,42965,42969,42994,43009,
322
+ 43011,43013,43015,43018,43020,43042,43072,43123,43138,43187,43250,43255,
323
+ 43259,43259,43261,43262,43274,43301,43312,43334,43360,43388,43396,43442,
324
+ 43471,43471,43488,43492,43494,43503,43514,43518,43520,43560,43584,43586,
325
+ 43588,43595,43616,43638,43642,43642,43646,43695,43697,43697,43701,43702,
326
+ 43705,43709,43712,43712,43714,43714,43739,43741,43744,43754,43762,43764,
327
+ 43777,43782,43785,43790,43793,43798,43808,43814,43816,43822,43824,43866,
328
+ 43868,43881,43888,44002,44032,55203,55216,55238,55243,55291,63744,64109,
329
+ 64112,64217,64256,64262,64275,64279,64285,64285,64287,64296,64298,64310,
330
+ 64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,
331
+ 64848,64911,64914,64967,65008,65019,65136,65140,65142,65276,65313,65338,
332
+ 65345,65370,65382,65470,65474,65479,65482,65487,65490,65495,65498,65500,
333
+ 65536,65547,65549,65574,65576,65594,65596,65597,65599,65613,65616,65629,
334
+ 65664,65786,66176,66204,66208,66256,66304,66335,66349,66368,66370,66377,
335
+ 66384,66421,66432,66461,66464,66499,66504,66511,66560,66717,66736,66771,
336
+ 66776,66811,66816,66855,66864,66915,66928,66938,66940,66954,66956,66962,
337
+ 66964,66965,66967,66977,66979,66993,66995,67001,67003,67004,67072,67382,
338
+ 67392,67413,67424,67431,67456,67461,67463,67504,67506,67514,67584,67589,
339
+ 67592,67592,67594,67637,67639,67640,67644,67644,67647,67669,67680,67702,
340
+ 67712,67742,67808,67826,67828,67829,67840,67861,67872,67897,67968,68023,
341
+ 68030,68031,68096,68096,68112,68115,68117,68119,68121,68149,68192,68220,
342
+ 68224,68252,68288,68295,68297,68324,68352,68405,68416,68437,68448,68466,
343
+ 68480,68497,68608,68680,68736,68786,68800,68850,68864,68899,69248,69289,
344
+ 69296,69297,69376,69404,69415,69415,69424,69445,69488,69505,69552,69572,
345
+ 69600,69622,69635,69687,69745,69746,69749,69749,69763,69807,69840,69864,
346
+ 69891,69926,69956,69956,69959,69959,69968,70002,70006,70006,70019,70066,
347
+ 70081,70084,70106,70106,70108,70108,70144,70161,70163,70187,70207,70208,
348
+ 70272,70278,70280,70280,70282,70285,70287,70301,70303,70312,70320,70366,
349
+ 70405,70412,70415,70416,70419,70440,70442,70448,70450,70451,70453,70457,
350
+ 70461,70461,70480,70480,70493,70497,70656,70708,70727,70730,70751,70753,
351
+ 70784,70831,70852,70853,70855,70855,71040,71086,71128,71131,71168,71215,
352
+ 71236,71236,71296,71338,71352,71352,71424,71450,71488,71494,71680,71723,
353
+ 71840,71903,71935,71942,71945,71945,71948,71955,71957,71958,71960,71983,
354
+ 71999,71999,72001,72001,72096,72103,72106,72144,72161,72161,72163,72163,
355
+ 72192,72192,72203,72242,72250,72250,72272,72272,72284,72329,72349,72349,
356
+ 72368,72440,72704,72712,72714,72750,72768,72768,72818,72847,72960,72966,
357
+ 72968,72969,72971,73008,73030,73030,73056,73061,73063,73064,73066,73097,
358
+ 73112,73112,73440,73458,73474,73474,73476,73488,73490,73523,73648,73648,
359
+ 73728,74649,74880,75075,77712,77808,77824,78895,78913,78918,82944,83526,
360
+ 92160,92728,92736,92766,92784,92862,92880,92909,92928,92975,92992,92995,
361
+ 93027,93047,93053,93071,93760,93823,93952,94026,94032,94032,94099,94111,
362
+ 94176,94177,94179,94179,94208,100343,100352,101589,101632,101640,110576,
363
+ 110579,110581,110587,110589,110590,110592,110882,110898,110898,110928,110930,
364
+ 110933,110933,110948,110951,110960,111355,113664,113770,113776,113788,113792,
365
+ 113800,113808,113817,119808,119892,119894,119964,119966,119967,119970,119970,
366
+ 119973,119974,119977,119980,119982,119993,119995,119995,119997,120003,120005,
367
+ 120069,120071,120074,120077,120084,120086,120092,120094,120121,120123,120126,
368
+ 120128,120132,120134,120134,120138,120144,120146,120485,120488,120512,120514,
369
+ 120538,120540,120570,120572,120596,120598,120628,120630,120654,120656,120686,
370
+ 120688,120712,120714,120744,120746,120770,120772,120779,122624,122654,122661,
371
+ 122666,122928,122989,123136,123180,123191,123197,123214,123214,123536,123565,
372
+ 123584,123627,124112,124139,124896,124902,124904,124907,124909,124910,124912,
373
+ 124926,124928,125124,125184,125251,125259,125259,126464,126467,126469,126495,
374
+ 126497,126498,126500,126500,126503,126503,126505,126514,126516,126519,126521,
375
+ 126521,126523,126523,126530,126530,126535,126535,126537,126537,126539,126539,
376
+ 126541,126543,126545,126546,126548,126548,126551,126551,126553,126553,126555,
377
+ 126555,126557,126557,126559,126559,126561,126562,126564,126564,126567,126570,
378
+ 126572,126578,126580,126583,126585,126588,126590,126590,126592,126601,126603,
379
+ 126619,126625,126627,126629,126633,126635,126651,131072,173791,173824,177977,
380
+ 177984,178205,178208,183969,183984,191456,194560,195101,196608,201546,201552,
381
+ 205743,706,0,48,57,65,90,95,95,97,122,170,170,181,181,186,186,192,214,216,
382
+ 246,248,705,710,721,736,740,748,748,750,750,880,884,886,887,890,893,895,
383
+ 895,902,902,904,906,908,908,910,929,931,1013,1015,1153,1162,1327,1329,1366,
384
+ 1369,1369,1376,1416,1488,1514,1519,1522,1568,1610,1632,1641,1646,1647,1649,
385
+ 1747,1749,1749,1765,1766,1774,1788,1791,1791,1808,1808,1810,1839,1869,1957,
386
+ 1969,1969,1984,2026,2036,2037,2042,2042,2048,2069,2074,2074,2084,2084,2088,
387
+ 2088,2112,2136,2144,2154,2160,2183,2185,2190,2208,2249,2308,2361,2365,2365,
388
+ 2384,2384,2392,2401,2406,2415,2417,2432,2437,2444,2447,2448,2451,2472,2474,
389
+ 2480,2482,2482,2486,2489,2493,2493,2510,2510,2524,2525,2527,2529,2534,2545,
390
+ 2556,2556,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,
391
+ 2617,2649,2652,2654,2654,2662,2671,2674,2676,2693,2701,2703,2705,2707,2728,
392
+ 2730,2736,2738,2739,2741,2745,2749,2749,2768,2768,2784,2785,2790,2799,2809,
393
+ 2809,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2869,2873,2877,2877,
394
+ 2908,2909,2911,2913,2918,2927,2929,2929,2947,2947,2949,2954,2958,2960,2962,
395
+ 2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,3001,3024,3024,
396
+ 3046,3055,3077,3084,3086,3088,3090,3112,3114,3129,3133,3133,3160,3162,3165,
397
+ 3165,3168,3169,3174,3183,3200,3200,3205,3212,3214,3216,3218,3240,3242,3251,
398
+ 3253,3257,3261,3261,3293,3294,3296,3297,3302,3311,3313,3314,3332,3340,3342,
399
+ 3344,3346,3386,3389,3389,3406,3406,3412,3414,3423,3425,3430,3439,3450,3455,
400
+ 3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3558,3567,3585,3632,3634,
401
+ 3635,3648,3654,3664,3673,3713,3714,3716,3716,3718,3722,3724,3747,3749,3749,
402
+ 3751,3760,3762,3763,3773,3773,3776,3780,3782,3782,3792,3801,3804,3807,3840,
403
+ 3840,3872,3881,3904,3911,3913,3948,3976,3980,4096,4138,4159,4169,4176,4181,
404
+ 4186,4189,4193,4193,4197,4198,4206,4208,4213,4225,4238,4238,4240,4249,4256,
405
+ 4293,4295,4295,4301,4301,4304,4346,4348,4680,4682,4685,4688,4694,4696,4696,
406
+ 4698,4701,4704,4744,4746,4749,4752,4784,4786,4789,4792,4798,4800,4800,4802,
407
+ 4805,4808,4822,4824,4880,4882,4885,4888,4954,4992,5007,5024,5109,5112,5117,
408
+ 5121,5740,5743,5759,5761,5786,5792,5866,5873,5880,5888,5905,5919,5937,5952,
409
+ 5969,5984,5996,5998,6000,6016,6067,6103,6103,6108,6108,6112,6121,6160,6169,
410
+ 6176,6264,6272,6276,6279,6312,6314,6314,6320,6389,6400,6430,6470,6509,6512,
411
+ 6516,6528,6571,6576,6601,6608,6617,6656,6678,6688,6740,6784,6793,6800,6809,
412
+ 6823,6823,6917,6963,6981,6988,6992,7001,7043,7072,7086,7141,7168,7203,7232,
413
+ 7241,7245,7293,7296,7304,7312,7354,7357,7359,7401,7404,7406,7411,7413,7414,
414
+ 7418,7418,7424,7615,7680,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,
415
+ 8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,
416
+ 8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8305,8305,8319,
417
+ 8319,8336,8348,8450,8450,8455,8455,8458,8467,8469,8469,8473,8477,8484,8484,
418
+ 8486,8486,8488,8488,8490,8493,8495,8505,8508,8511,8517,8521,8526,8526,8579,
419
+ 8580,11264,11492,11499,11502,11506,11507,11520,11557,11559,11559,11565,
420
+ 11565,11568,11623,11631,11631,11648,11670,11680,11686,11688,11694,11696,
421
+ 11702,11704,11710,11712,11718,11720,11726,11728,11734,11736,11742,11823,
422
+ 11823,12293,12294,12337,12341,12347,12348,12353,12438,12445,12447,12449,
423
+ 12538,12540,12543,12549,12591,12593,12686,12704,12735,12784,12799,13312,
424
+ 19903,19968,42124,42192,42237,42240,42508,42512,42539,42560,42606,42623,
425
+ 42653,42656,42725,42775,42783,42786,42888,42891,42954,42960,42961,42963,
426
+ 42963,42965,42969,42994,43009,43011,43013,43015,43018,43020,43042,43072,
427
+ 43123,43138,43187,43216,43225,43250,43255,43259,43259,43261,43262,43264,
428
+ 43301,43312,43334,43360,43388,43396,43442,43471,43481,43488,43492,43494,
429
+ 43518,43520,43560,43584,43586,43588,43595,43600,43609,43616,43638,43642,
430
+ 43642,43646,43695,43697,43697,43701,43702,43705,43709,43712,43712,43714,
431
+ 43714,43739,43741,43744,43754,43762,43764,43777,43782,43785,43790,43793,
432
+ 43798,43808,43814,43816,43822,43824,43866,43868,43881,43888,44002,44016,
433
+ 44025,44032,55203,55216,55238,55243,55291,63744,64109,64112,64217,64256,
434
+ 64262,64275,64279,64285,64285,64287,64296,64298,64310,64312,64316,64318,
435
+ 64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,
436
+ 64967,65008,65019,65136,65140,65142,65276,65296,65305,65313,65338,65345,
437
+ 65370,65382,65470,65474,65479,65482,65487,65490,65495,65498,65500,65536,
438
+ 65547,65549,65574,65576,65594,65596,65597,65599,65613,65616,65629,65664,
439
+ 65786,66176,66204,66208,66256,66304,66335,66349,66368,66370,66377,66384,
440
+ 66421,66432,66461,66464,66499,66504,66511,66560,66717,66720,66729,66736,
441
+ 66771,66776,66811,66816,66855,66864,66915,66928,66938,66940,66954,66956,
442
+ 66962,66964,66965,66967,66977,66979,66993,66995,67001,67003,67004,67072,
443
+ 67382,67392,67413,67424,67431,67456,67461,67463,67504,67506,67514,67584,
444
+ 67589,67592,67592,67594,67637,67639,67640,67644,67644,67647,67669,67680,
445
+ 67702,67712,67742,67808,67826,67828,67829,67840,67861,67872,67897,67968,
446
+ 68023,68030,68031,68096,68096,68112,68115,68117,68119,68121,68149,68192,
447
+ 68220,68224,68252,68288,68295,68297,68324,68352,68405,68416,68437,68448,
448
+ 68466,68480,68497,68608,68680,68736,68786,68800,68850,68864,68899,68912,
449
+ 68921,69248,69289,69296,69297,69376,69404,69415,69415,69424,69445,69488,
450
+ 69505,69552,69572,69600,69622,69635,69687,69734,69743,69745,69746,69749,
451
+ 69749,69763,69807,69840,69864,69872,69881,69891,69926,69942,69951,69956,
452
+ 69956,69959,69959,69968,70002,70006,70006,70019,70066,70081,70084,70096,
453
+ 70106,70108,70108,70144,70161,70163,70187,70207,70208,70272,70278,70280,
454
+ 70280,70282,70285,70287,70301,70303,70312,70320,70366,70384,70393,70405,
455
+ 70412,70415,70416,70419,70440,70442,70448,70450,70451,70453,70457,70461,
456
+ 70461,70480,70480,70493,70497,70656,70708,70727,70730,70736,70745,70751,
457
+ 70753,70784,70831,70852,70853,70855,70855,70864,70873,71040,71086,71128,
458
+ 71131,71168,71215,71236,71236,71248,71257,71296,71338,71352,71352,71360,
459
+ 71369,71424,71450,71472,71481,71488,71494,71680,71723,71840,71913,71935,
460
+ 71942,71945,71945,71948,71955,71957,71958,71960,71983,71999,71999,72001,
461
+ 72001,72016,72025,72096,72103,72106,72144,72161,72161,72163,72163,72192,
462
+ 72192,72203,72242,72250,72250,72272,72272,72284,72329,72349,72349,72368,
463
+ 72440,72704,72712,72714,72750,72768,72768,72784,72793,72818,72847,72960,
464
+ 72966,72968,72969,72971,73008,73030,73030,73040,73049,73056,73061,73063,
465
+ 73064,73066,73097,73112,73112,73120,73129,73440,73458,73474,73474,73476,
466
+ 73488,73490,73523,73552,73561,73648,73648,73728,74649,74880,75075,77712,
467
+ 77808,77824,78895,78913,78918,82944,83526,92160,92728,92736,92766,92768,
468
+ 92777,92784,92862,92864,92873,92880,92909,92928,92975,92992,92995,93008,
469
+ 93017,93027,93047,93053,93071,93760,93823,93952,94026,94032,94032,94099,
470
+ 94111,94176,94177,94179,94179,94208,100343,100352,101589,101632,101640,
471
+ 110576,110579,110581,110587,110589,110590,110592,110882,110898,110898,110928,
472
+ 110930,110933,110933,110948,110951,110960,111355,113664,113770,113776,113788,
473
+ 113792,113800,113808,113817,119808,119892,119894,119964,119966,119967,119970,
474
+ 119970,119973,119974,119977,119980,119982,119993,119995,119995,119997,120003,
475
+ 120005,120069,120071,120074,120077,120084,120086,120092,120094,120121,120123,
476
+ 120126,120128,120132,120134,120134,120138,120144,120146,120485,120488,120512,
477
+ 120514,120538,120540,120570,120572,120596,120598,120628,120630,120654,120656,
478
+ 120686,120688,120712,120714,120744,120746,120770,120772,120779,120782,120831,
479
+ 122624,122654,122661,122666,122928,122989,123136,123180,123191,123197,123200,
480
+ 123209,123214,123214,123536,123565,123584,123627,123632,123641,124112,124139,
481
+ 124144,124153,124896,124902,124904,124907,124909,124910,124912,124926,124928,
482
+ 125124,125184,125251,125259,125259,125264,125273,126464,126467,126469,126495,
483
+ 126497,126498,126500,126500,126503,126503,126505,126514,126516,126519,126521,
484
+ 126521,126523,126523,126530,126530,126535,126535,126537,126537,126539,126539,
485
+ 126541,126543,126545,126546,126548,126548,126551,126551,126553,126553,126555,
486
+ 126555,126557,126557,126559,126559,126561,126562,126564,126564,126567,126570,
487
+ 126572,126578,126580,126583,126585,126588,126590,126590,126592,126601,126603,
488
+ 126619,126625,126627,126629,126633,126635,126651,130032,130041,131072,173791,
489
+ 173824,177977,177984,178205,178208,183969,183984,191456,194560,195101,196608,
490
+ 201546,201552,205743,741,0,1,1,0,0,0,0,3,1,0,0,0,0,5,1,0,0,0,0,7,1,0,0,
491
+ 0,0,9,1,0,0,0,0,11,1,0,0,0,0,13,1,0,0,0,0,15,1,0,0,0,0,17,1,0,0,0,0,19,
492
+ 1,0,0,0,0,21,1,0,0,0,0,23,1,0,0,0,0,25,1,0,0,0,0,27,1,0,0,0,0,29,1,0,0,
493
+ 0,0,31,1,0,0,0,0,33,1,0,0,0,0,35,1,0,0,0,0,37,1,0,0,0,0,39,1,0,0,0,0,41,
494
+ 1,0,0,0,0,43,1,0,0,0,0,45,1,0,0,0,0,47,1,0,0,0,0,49,1,0,0,0,0,51,1,0,0,
495
+ 0,0,53,1,0,0,0,0,55,1,0,0,0,0,57,1,0,0,0,0,59,1,0,0,0,0,61,1,0,0,0,0,63,
496
+ 1,0,0,0,0,65,1,0,0,0,0,67,1,0,0,0,0,69,1,0,0,0,0,71,1,0,0,0,0,73,1,0,0,
497
+ 0,0,75,1,0,0,0,0,77,1,0,0,0,0,79,1,0,0,0,0,81,1,0,0,0,0,83,1,0,0,0,0,85,
498
+ 1,0,0,0,0,87,1,0,0,0,0,89,1,0,0,0,0,91,1,0,0,0,0,93,1,0,0,0,0,95,1,0,0,
499
+ 0,0,97,1,0,0,0,0,99,1,0,0,0,0,101,1,0,0,0,0,103,1,0,0,0,0,105,1,0,0,0,0,
500
+ 107,1,0,0,0,0,109,1,0,0,0,0,111,1,0,0,0,0,113,1,0,0,0,0,115,1,0,0,0,0,117,
501
+ 1,0,0,0,0,119,1,0,0,0,0,121,1,0,0,0,0,123,1,0,0,0,0,125,1,0,0,0,0,127,1,
502
+ 0,0,0,0,129,1,0,0,0,0,131,1,0,0,0,0,133,1,0,0,0,0,135,1,0,0,0,0,137,1,0,
503
+ 0,0,0,139,1,0,0,0,0,141,1,0,0,0,0,143,1,0,0,0,0,145,1,0,0,0,1,211,1,0,0,
504
+ 0,3,215,1,0,0,0,5,218,1,0,0,0,7,224,1,0,0,0,9,227,1,0,0,0,11,233,1,0,0,
505
+ 0,13,242,1,0,0,0,15,247,1,0,0,0,17,252,1,0,0,0,19,259,1,0,0,0,21,265,1,
506
+ 0,0,0,23,269,1,0,0,0,25,272,1,0,0,0,27,279,1,0,0,0,29,282,1,0,0,0,31,288,
507
+ 1,0,0,0,33,295,1,0,0,0,35,299,1,0,0,0,37,302,1,0,0,0,39,309,1,0,0,0,41,
508
+ 316,1,0,0,0,43,323,1,0,0,0,45,326,1,0,0,0,47,331,1,0,0,0,49,336,1,0,0,0,
509
+ 51,340,1,0,0,0,53,346,1,0,0,0,55,352,1,0,0,0,57,354,1,0,0,0,59,356,1,0,
510
+ 0,0,61,358,1,0,0,0,63,360,1,0,0,0,65,363,1,0,0,0,67,366,1,0,0,0,69,369,
511
+ 1,0,0,0,71,372,1,0,0,0,73,375,1,0,0,0,75,378,1,0,0,0,77,380,1,0,0,0,79,
512
+ 382,1,0,0,0,81,384,1,0,0,0,83,387,1,0,0,0,85,389,1,0,0,0,87,391,1,0,0,0,
513
+ 89,393,1,0,0,0,91,395,1,0,0,0,93,397,1,0,0,0,95,399,1,0,0,0,97,401,1,0,
514
+ 0,0,99,403,1,0,0,0,101,405,1,0,0,0,103,407,1,0,0,0,105,409,1,0,0,0,107,
515
+ 411,1,0,0,0,109,413,1,0,0,0,111,416,1,0,0,0,113,419,1,0,0,0,115,422,1,0,
516
+ 0,0,117,425,1,0,0,0,119,428,1,0,0,0,121,431,1,0,0,0,123,438,1,0,0,0,125,
517
+ 440,1,0,0,0,127,442,1,0,0,0,129,444,1,0,0,0,131,447,1,0,0,0,133,453,1,0,
518
+ 0,0,135,464,1,0,0,0,137,485,1,0,0,0,139,492,1,0,0,0,141,496,1,0,0,0,143,
519
+ 498,1,0,0,0,145,520,1,0,0,0,147,544,1,0,0,0,149,546,1,0,0,0,151,555,1,0,
520
+ 0,0,153,566,1,0,0,0,155,570,1,0,0,0,157,572,1,0,0,0,159,574,1,0,0,0,161,
521
+ 576,1,0,0,0,163,581,1,0,0,0,165,583,1,0,0,0,167,593,1,0,0,0,169,604,1,0,
522
+ 0,0,171,610,1,0,0,0,173,632,1,0,0,0,175,634,1,0,0,0,177,644,1,0,0,0,179,
523
+ 654,1,0,0,0,181,664,1,0,0,0,183,666,1,0,0,0,185,668,1,0,0,0,187,670,1,0,
524
+ 0,0,189,674,1,0,0,0,191,678,1,0,0,0,193,687,1,0,0,0,195,691,1,0,0,0,197,
525
+ 695,1,0,0,0,199,705,1,0,0,0,201,708,1,0,0,0,203,716,1,0,0,0,205,721,1,0,
526
+ 0,0,207,725,1,0,0,0,209,727,1,0,0,0,211,212,5,97,0,0,212,213,5,110,0,0,
527
+ 213,214,5,100,0,0,214,2,1,0,0,0,215,216,5,97,0,0,216,217,5,115,0,0,217,
528
+ 4,1,0,0,0,218,219,5,98,0,0,219,220,5,114,0,0,220,221,5,101,0,0,221,222,
529
+ 5,97,0,0,222,223,5,107,0,0,223,6,1,0,0,0,224,225,5,98,0,0,225,226,5,121,
530
+ 0,0,226,8,1,0,0,0,227,228,5,99,0,0,228,229,5,111,0,0,229,230,5,110,0,0,
531
+ 230,231,5,115,0,0,231,232,5,116,0,0,232,10,1,0,0,0,233,234,5,99,0,0,234,
532
+ 235,5,111,0,0,235,236,5,110,0,0,236,237,5,116,0,0,237,238,5,105,0,0,238,
533
+ 239,5,110,0,0,239,240,5,117,0,0,240,241,5,101,0,0,241,12,1,0,0,0,242,243,
534
+ 5,101,0,0,243,244,5,108,0,0,244,245,5,115,0,0,245,246,5,101,0,0,246,14,
535
+ 1,0,0,0,247,248,5,101,0,0,248,249,5,110,0,0,249,250,5,117,0,0,250,251,5,
536
+ 109,0,0,251,16,1,0,0,0,252,253,5,101,0,0,253,254,5,120,0,0,254,255,5,112,
537
+ 0,0,255,256,5,111,0,0,256,257,5,114,0,0,257,258,5,116,0,0,258,18,1,0,0,
538
+ 0,259,260,5,102,0,0,260,261,5,97,0,0,261,262,5,108,0,0,262,263,5,115,0,
539
+ 0,263,264,5,101,0,0,264,20,1,0,0,0,265,266,5,102,0,0,266,267,5,111,0,0,
540
+ 267,268,5,114,0,0,268,22,1,0,0,0,269,270,5,105,0,0,270,271,5,102,0,0,271,
541
+ 24,1,0,0,0,272,273,5,105,0,0,273,274,5,109,0,0,274,275,5,112,0,0,275,276,
542
+ 5,111,0,0,276,277,5,114,0,0,277,278,5,116,0,0,278,26,1,0,0,0,279,280,5,
543
+ 105,0,0,280,281,5,110,0,0,281,28,1,0,0,0,282,283,5,105,0,0,283,284,5,110,
544
+ 0,0,284,285,5,112,0,0,285,286,5,117,0,0,286,287,5,116,0,0,287,30,1,0,0,
545
+ 0,288,289,5,109,0,0,289,290,5,101,0,0,290,291,5,116,0,0,291,292,5,104,0,
546
+ 0,292,293,5,111,0,0,293,294,5,100,0,0,294,32,1,0,0,0,295,296,5,110,0,0,
547
+ 296,297,5,111,0,0,297,298,5,116,0,0,298,34,1,0,0,0,299,300,5,111,0,0,300,
548
+ 301,5,114,0,0,301,36,1,0,0,0,302,303,5,115,0,0,303,304,5,101,0,0,304,305,
549
+ 5,114,0,0,305,306,5,105,0,0,306,307,5,101,0,0,307,308,5,115,0,0,308,38,
550
+ 1,0,0,0,309,310,5,115,0,0,310,311,5,105,0,0,311,312,5,109,0,0,312,313,5,
551
+ 112,0,0,313,314,5,108,0,0,314,315,5,101,0,0,315,40,1,0,0,0,316,317,5,115,
552
+ 0,0,317,318,5,119,0,0,318,319,5,105,0,0,319,320,5,116,0,0,320,321,5,99,
553
+ 0,0,321,322,5,104,0,0,322,42,1,0,0,0,323,324,5,116,0,0,324,325,5,111,0,
554
+ 0,325,44,1,0,0,0,326,327,5,116,0,0,327,328,5,121,0,0,328,329,5,112,0,0,
555
+ 329,330,5,101,0,0,330,46,1,0,0,0,331,332,5,116,0,0,332,333,5,114,0,0,333,
556
+ 334,5,117,0,0,334,335,5,101,0,0,335,48,1,0,0,0,336,337,5,118,0,0,337,338,
557
+ 5,97,0,0,338,339,5,114,0,0,339,50,1,0,0,0,340,341,5,118,0,0,341,342,5,97,
558
+ 0,0,342,343,5,114,0,0,343,344,5,105,0,0,344,345,5,112,0,0,345,52,1,0,0,
559
+ 0,346,347,5,119,0,0,347,348,5,104,0,0,348,349,5,105,0,0,349,350,5,108,0,
560
+ 0,350,351,5,101,0,0,351,54,1,0,0,0,352,353,5,40,0,0,353,56,1,0,0,0,354,
561
+ 355,5,41,0,0,355,58,1,0,0,0,356,357,5,91,0,0,357,60,1,0,0,0,358,359,5,93,
562
+ 0,0,359,62,1,0,0,0,360,361,5,60,0,0,361,362,5,60,0,0,362,64,1,0,0,0,363,
563
+ 364,5,62,0,0,364,365,5,62,0,0,365,66,1,0,0,0,366,367,5,60,0,0,367,368,5,
564
+ 61,0,0,368,68,1,0,0,0,369,370,5,62,0,0,370,371,5,61,0,0,371,70,1,0,0,0,
565
+ 372,373,5,61,0,0,373,374,5,61,0,0,374,72,1,0,0,0,375,376,5,33,0,0,376,377,
566
+ 5,61,0,0,377,74,1,0,0,0,378,379,5,60,0,0,379,76,1,0,0,0,380,381,5,62,0,
567
+ 0,381,78,1,0,0,0,382,383,5,61,0,0,383,80,1,0,0,0,384,385,5,61,0,0,385,386,
568
+ 5,62,0,0,386,82,1,0,0,0,387,388,5,46,0,0,388,84,1,0,0,0,389,390,5,44,0,
569
+ 0,390,86,1,0,0,0,391,392,5,58,0,0,392,88,1,0,0,0,393,394,5,63,0,0,394,90,
570
+ 1,0,0,0,395,396,5,126,0,0,396,92,1,0,0,0,397,398,5,38,0,0,398,94,1,0,0,
571
+ 0,399,400,5,124,0,0,400,96,1,0,0,0,401,402,5,94,0,0,402,98,1,0,0,0,403,
572
+ 404,5,43,0,0,404,100,1,0,0,0,405,406,5,45,0,0,406,102,1,0,0,0,407,408,5,
573
+ 42,0,0,408,104,1,0,0,0,409,410,5,47,0,0,410,106,1,0,0,0,411,412,5,37,0,
574
+ 0,412,108,1,0,0,0,413,414,5,43,0,0,414,415,5,61,0,0,415,110,1,0,0,0,416,
575
+ 417,5,45,0,0,417,418,5,61,0,0,418,112,1,0,0,0,419,420,5,42,0,0,420,421,
576
+ 5,61,0,0,421,114,1,0,0,0,422,423,5,47,0,0,423,424,5,61,0,0,424,116,1,0,
577
+ 0,0,425,426,5,37,0,0,426,427,5,61,0,0,427,118,1,0,0,0,428,429,5,58,0,0,
578
+ 429,430,5,61,0,0,430,120,1,0,0,0,431,435,3,207,103,0,432,434,3,209,104,
579
+ 0,433,432,1,0,0,0,434,437,1,0,0,0,435,433,1,0,0,0,435,436,1,0,0,0,436,122,
580
+ 1,0,0,0,437,435,1,0,0,0,438,439,3,169,84,0,439,124,1,0,0,0,440,441,3,147,
581
+ 73,0,441,126,1,0,0,0,442,443,3,163,81,0,443,128,1,0,0,0,444,445,3,205,102,
582
+ 0,445,130,1,0,0,0,446,448,7,0,0,0,447,446,1,0,0,0,448,449,1,0,0,0,449,447,
583
+ 1,0,0,0,449,450,1,0,0,0,450,451,1,0,0,0,451,452,6,65,0,0,452,132,1,0,0,
584
+ 0,453,454,5,47,0,0,454,455,5,47,0,0,455,459,1,0,0,0,456,458,8,1,0,0,457,
585
+ 456,1,0,0,0,458,461,1,0,0,0,459,457,1,0,0,0,459,460,1,0,0,0,460,462,1,0,
586
+ 0,0,461,459,1,0,0,0,462,463,6,66,1,0,463,134,1,0,0,0,464,479,5,35,0,0,465,
587
+ 469,7,0,0,0,466,468,8,1,0,0,467,466,1,0,0,0,468,471,1,0,0,0,469,467,1,0,
588
+ 0,0,469,470,1,0,0,0,470,480,1,0,0,0,471,469,1,0,0,0,472,476,8,2,0,0,473,
589
+ 475,8,1,0,0,474,473,1,0,0,0,475,478,1,0,0,0,476,474,1,0,0,0,476,477,1,0,
590
+ 0,0,477,480,1,0,0,0,478,476,1,0,0,0,479,465,1,0,0,0,479,472,1,0,0,0,480,
591
+ 481,1,0,0,0,481,482,6,67,2,0,482,483,6,67,1,0,483,136,1,0,0,0,484,486,5,
592
+ 96,0,0,485,484,1,0,0,0,486,487,1,0,0,0,487,485,1,0,0,0,487,488,1,0,0,0,
593
+ 488,489,1,0,0,0,489,490,6,68,2,0,490,491,6,68,1,0,491,138,1,0,0,0,492,493,
594
+ 7,3,0,0,493,494,1,0,0,0,494,495,6,69,0,0,495,140,1,0,0,0,496,497,9,0,0,
595
+ 0,497,142,1,0,0,0,498,499,5,34,0,0,499,500,5,34,0,0,500,501,5,34,0,0,501,
596
+ 511,1,0,0,0,502,510,8,4,0,0,503,504,5,34,0,0,504,510,8,4,0,0,505,506,5,
597
+ 34,0,0,506,507,5,34,0,0,507,508,1,0,0,0,508,510,8,4,0,0,509,502,1,0,0,0,
598
+ 509,503,1,0,0,0,509,505,1,0,0,0,510,513,1,0,0,0,511,509,1,0,0,0,511,512,
599
+ 1,0,0,0,512,514,1,0,0,0,513,511,1,0,0,0,514,515,5,34,0,0,515,516,5,34,0,
600
+ 0,516,517,5,34,0,0,517,518,1,0,0,0,518,519,6,71,3,0,519,144,1,0,0,0,520,
601
+ 521,5,39,0,0,521,522,5,39,0,0,522,523,5,39,0,0,523,533,1,0,0,0,524,532,
602
+ 8,5,0,0,525,526,5,39,0,0,526,532,8,5,0,0,527,528,5,39,0,0,528,529,5,39,
603
+ 0,0,529,530,1,0,0,0,530,532,8,5,0,0,531,524,1,0,0,0,531,525,1,0,0,0,531,
604
+ 527,1,0,0,0,532,535,1,0,0,0,533,531,1,0,0,0,533,534,1,0,0,0,534,536,1,0,
605
+ 0,0,535,533,1,0,0,0,536,537,5,39,0,0,537,538,5,39,0,0,538,539,5,39,0,0,
606
+ 539,540,1,0,0,0,540,541,6,72,3,0,541,146,1,0,0,0,542,545,3,149,74,0,543,
607
+ 545,3,151,75,0,544,542,1,0,0,0,544,543,1,0,0,0,545,148,1,0,0,0,546,550,
608
+ 5,39,0,0,547,549,3,153,76,0,548,547,1,0,0,0,549,552,1,0,0,0,550,548,1,0,
609
+ 0,0,550,551,1,0,0,0,551,553,1,0,0,0,552,550,1,0,0,0,553,554,5,39,0,0,554,
610
+ 150,1,0,0,0,555,559,5,34,0,0,556,558,3,155,77,0,557,556,1,0,0,0,558,561,
611
+ 1,0,0,0,559,557,1,0,0,0,559,560,1,0,0,0,560,562,1,0,0,0,561,559,1,0,0,0,
612
+ 562,563,5,34,0,0,563,152,1,0,0,0,564,567,3,157,78,0,565,567,3,161,80,0,
613
+ 566,564,1,0,0,0,566,565,1,0,0,0,567,154,1,0,0,0,568,571,3,159,79,0,569,
614
+ 571,3,161,80,0,570,568,1,0,0,0,570,569,1,0,0,0,571,156,1,0,0,0,572,573,
615
+ 8,6,0,0,573,158,1,0,0,0,574,575,8,7,0,0,575,160,1,0,0,0,576,577,5,92,0,
616
+ 0,577,578,9,0,0,0,578,162,1,0,0,0,579,582,3,165,82,0,580,582,3,167,83,0,
617
+ 581,579,1,0,0,0,581,580,1,0,0,0,582,164,1,0,0,0,583,584,5,35,0,0,584,585,
618
+ 3,189,94,0,585,586,3,189,94,0,586,587,3,189,94,0,587,588,3,189,94,0,588,
619
+ 589,3,189,94,0,589,590,3,189,94,0,590,591,3,189,94,0,591,592,3,189,94,0,
620
+ 592,166,1,0,0,0,593,594,5,35,0,0,594,595,3,189,94,0,595,596,3,189,94,0,
621
+ 596,597,3,189,94,0,597,598,3,189,94,0,598,599,3,189,94,0,599,600,3,189,
622
+ 94,0,600,168,1,0,0,0,601,605,3,171,85,0,602,605,3,191,95,0,603,605,3,203,
623
+ 101,0,604,601,1,0,0,0,604,602,1,0,0,0,604,603,1,0,0,0,605,170,1,0,0,0,606,
624
+ 611,3,173,86,0,607,611,3,175,87,0,608,611,3,177,88,0,609,611,3,179,89,0,
625
+ 610,606,1,0,0,0,610,607,1,0,0,0,610,608,1,0,0,0,610,609,1,0,0,0,611,172,
626
+ 1,0,0,0,612,619,3,181,90,0,613,615,5,95,0,0,614,613,1,0,0,0,614,615,1,0,
627
+ 0,0,615,616,1,0,0,0,616,618,3,183,91,0,617,614,1,0,0,0,618,621,1,0,0,0,
628
+ 619,617,1,0,0,0,619,620,1,0,0,0,620,633,1,0,0,0,621,619,1,0,0,0,622,629,
629
+ 5,48,0,0,623,625,5,95,0,0,624,623,1,0,0,0,624,625,1,0,0,0,625,626,1,0,0,
630
+ 0,626,628,3,183,91,0,627,624,1,0,0,0,628,631,1,0,0,0,629,627,1,0,0,0,629,
631
+ 630,1,0,0,0,630,633,1,0,0,0,631,629,1,0,0,0,632,612,1,0,0,0,632,622,1,0,
632
+ 0,0,633,174,1,0,0,0,634,635,5,48,0,0,635,640,7,8,0,0,636,638,5,95,0,0,637,
633
+ 636,1,0,0,0,637,638,1,0,0,0,638,639,1,0,0,0,639,641,3,185,92,0,640,637,
634
+ 1,0,0,0,641,642,1,0,0,0,642,640,1,0,0,0,642,643,1,0,0,0,643,176,1,0,0,0,
635
+ 644,645,5,48,0,0,645,650,7,9,0,0,646,648,5,95,0,0,647,646,1,0,0,0,647,648,
636
+ 1,0,0,0,648,649,1,0,0,0,649,651,3,187,93,0,650,647,1,0,0,0,651,652,1,0,
637
+ 0,0,652,650,1,0,0,0,652,653,1,0,0,0,653,178,1,0,0,0,654,655,5,48,0,0,655,
638
+ 660,7,10,0,0,656,658,5,95,0,0,657,656,1,0,0,0,657,658,1,0,0,0,658,659,1,
639
+ 0,0,0,659,661,3,189,94,0,660,657,1,0,0,0,661,662,1,0,0,0,662,660,1,0,0,
640
+ 0,662,663,1,0,0,0,663,180,1,0,0,0,664,665,7,11,0,0,665,182,1,0,0,0,666,
641
+ 667,7,12,0,0,667,184,1,0,0,0,668,669,2,48,49,0,669,186,1,0,0,0,670,671,
642
+ 7,13,0,0,671,188,1,0,0,0,672,675,3,183,91,0,673,675,7,14,0,0,674,672,1,
643
+ 0,0,0,674,673,1,0,0,0,675,190,1,0,0,0,676,679,3,193,96,0,677,679,3,195,
644
+ 97,0,678,676,1,0,0,0,678,677,1,0,0,0,679,192,1,0,0,0,680,682,3,197,98,0,
645
+ 681,680,1,0,0,0,681,682,1,0,0,0,682,683,1,0,0,0,683,688,3,199,99,0,684,
646
+ 685,3,197,98,0,685,686,5,46,0,0,686,688,1,0,0,0,687,681,1,0,0,0,687,684,
647
+ 1,0,0,0,688,194,1,0,0,0,689,692,3,197,98,0,690,692,3,193,96,0,691,689,1,
648
+ 0,0,0,691,690,1,0,0,0,692,693,1,0,0,0,693,694,3,201,100,0,694,196,1,0,0,
649
+ 0,695,702,3,183,91,0,696,698,5,95,0,0,697,696,1,0,0,0,697,698,1,0,0,0,698,
650
+ 699,1,0,0,0,699,701,3,183,91,0,700,697,1,0,0,0,701,704,1,0,0,0,702,700,
651
+ 1,0,0,0,702,703,1,0,0,0,703,198,1,0,0,0,704,702,1,0,0,0,705,706,5,46,0,
652
+ 0,706,707,3,197,98,0,707,200,1,0,0,0,708,710,7,15,0,0,709,711,7,16,0,0,
653
+ 710,709,1,0,0,0,710,711,1,0,0,0,711,712,1,0,0,0,712,713,3,197,98,0,713,
654
+ 202,1,0,0,0,714,717,3,191,95,0,715,717,3,197,98,0,716,714,1,0,0,0,716,715,
655
+ 1,0,0,0,717,718,1,0,0,0,718,719,7,17,0,0,719,204,1,0,0,0,720,722,5,13,0,
656
+ 0,721,720,1,0,0,0,721,722,1,0,0,0,722,723,1,0,0,0,723,724,5,10,0,0,724,
657
+ 206,1,0,0,0,725,726,7,18,0,0,726,208,1,0,0,0,727,728,7,19,0,0,728,210,1,
658
+ 0,0,0,41,0,435,449,459,469,476,479,487,509,511,531,533,544,550,559,566,
659
+ 570,581,604,610,614,619,624,629,632,637,642,647,652,657,662,674,678,681,
660
+ 687,691,697,702,710,716,721,4,0,1,0,0,2,0,7,69,0,7,65,0];
661
+
662
+ private static __ATN: ATN;
663
+ public static get _ATN(): ATN {
664
+ if (!PinescriptLexer.__ATN) {
665
+ PinescriptLexer.__ATN = new ATNDeserializer().deserialize(PinescriptLexer._serializedATN);
666
+ }
667
+
668
+ return PinescriptLexer.__ATN;
669
+ }
670
+
671
+
672
+ static DecisionsToDFA = PinescriptLexer._ATN.decisionToState.map( (ds: DecisionState, index: number) => new DFA(ds, index) );
673
+ }