Files
mcDandy-more_math/more_math/Parser/MathExprLexer.py
T

4595 lines
54 KiB
Python

# Generated from ./MathExpr.g4 by ANTLR 4.13.2
from antlr4 import *
import sys
if sys.version_info[1] > 5:
from typing import TextIO
else:
from typing.io import TextIO
def serializedATN():
return [
4,
0,
73,
502,
6,
-1,
2,
0,
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,
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,
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,
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,
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,
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,
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,
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,
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,
7,
67,
2,
68,
7,
68,
2,
69,
7,
69,
2,
70,
7,
70,
2,
71,
7,
71,
2,
72,
7,
72,
1,
0,
1,
0,
1,
1,
1,
1,
1,
2,
1,
2,
1,
3,
1,
3,
1,
4,
1,
4,
1,
5,
1,
5,
1,
5,
1,
5,
1,
6,
1,
6,
1,
6,
1,
6,
1,
7,
1,
7,
1,
7,
1,
7,
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,
10,
1,
10,
1,
10,
1,
11,
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,
13,
1,
13,
1,
14,
1,
14,
1,
14,
1,
14,
1,
14,
1,
15,
1,
15,
1,
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,
17,
1,
17,
1,
18,
1,
18,
1,
18,
1,
18,
1,
19,
1,
19,
1,
19,
1,
19,
1,
19,
1,
20,
1,
20,
1,
20,
1,
21,
1,
21,
1,
21,
1,
21,
1,
22,
1,
22,
1,
22,
1,
22,
1,
23,
1,
23,
1,
23,
1,
23,
1,
23,
1,
24,
1,
24,
1,
24,
1,
24,
1,
24,
1,
25,
1,
25,
1,
25,
1,
25,
1,
25,
1,
26,
1,
26,
1,
26,
1,
26,
1,
26,
1,
27,
1,
27,
1,
27,
1,
27,
1,
27,
1,
27,
1,
28,
1,
28,
1,
28,
1,
28,
1,
28,
1,
28,
1,
29,
1,
29,
1,
29,
1,
29,
1,
29,
1,
29,
1,
30,
1,
30,
1,
30,
1,
30,
1,
30,
1,
31,
1,
31,
1,
31,
1,
31,
1,
31,
1,
31,
1,
32,
1,
32,
1,
32,
1,
32,
1,
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,
35,
1,
35,
1,
35,
1,
36,
1,
36,
1,
36,
1,
36,
1,
37,
1,
37,
1,
37,
1,
37,
1,
37,
1,
38,
1,
38,
1,
38,
1,
38,
1,
38,
1,
38,
1,
39,
1,
39,
1,
39,
1,
39,
1,
39,
1,
39,
1,
40,
1,
40,
1,
40,
1,
40,
1,
40,
1,
40,
1,
40,
1,
40,
1,
40,
1,
40,
1,
40,
1,
40,
1,
41,
1,
41,
1,
41,
1,
41,
1,
41,
1,
42,
1,
42,
1,
42,
1,
42,
1,
42,
1,
43,
1,
43,
1,
43,
1,
43,
1,
43,
1,
44,
1,
44,
1,
44,
1,
44,
1,
44,
1,
44,
1,
44,
1,
44,
1,
44,
1,
44,
1,
44,
1,
45,
1,
45,
1,
45,
1,
45,
1,
45,
1,
45,
1,
46,
1,
46,
1,
46,
1,
46,
1,
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,
48,
1,
48,
1,
49,
1,
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,
52,
1,
52,
1,
52,
1,
52,
1,
53,
1,
53,
1,
53,
1,
53,
1,
53,
1,
53,
1,
53,
1,
53,
1,
54,
1,
54,
1,
54,
1,
54,
1,
54,
1,
54,
1,
54,
1,
54,
1,
55,
1,
55,
1,
55,
1,
55,
1,
55,
1,
55,
1,
56,
1,
56,
1,
57,
1,
57,
1,
58,
1,
58,
1,
59,
1,
59,
1,
60,
1,
60,
1,
61,
1,
61,
1,
62,
1,
62,
1,
62,
1,
63,
1,
63,
1,
64,
1,
64,
1,
64,
1,
65,
1,
65,
1,
66,
1,
66,
1,
66,
1,
67,
1,
67,
1,
67,
1,
68,
1,
68,
1,
69,
1,
69,
1,
69,
1,
69,
1,
69,
3,
69,
474,
8,
69,
1,
70,
4,
70,
477,
8,
70,
11,
70,
12,
70,
478,
1,
70,
1,
70,
4,
70,
483,
8,
70,
11,
70,
12,
70,
484,
3,
70,
487,
8,
70,
1,
71,
1,
71,
5,
71,
491,
8,
71,
10,
71,
12,
71,
494,
9,
71,
1,
72,
4,
72,
497,
8,
72,
11,
72,
12,
72,
498,
1,
72,
1,
72,
0,
0,
73,
1,
1,
3,
2,
5,
3,
7,
4,
9,
5,
11,
6,
13,
7,
15,
8,
17,
9,
19,
10,
21,
11,
23,
12,
25,
13,
27,
14,
29,
15,
31,
16,
33,
17,
35,
18,
37,
19,
39,
20,
41,
21,
43,
22,
45,
23,
47,
24,
49,
25,
51,
26,
53,
27,
55,
28,
57,
29,
59,
30,
61,
31,
63,
32,
65,
33,
67,
34,
69,
35,
71,
36,
73,
37,
75,
38,
77,
39,
79,
40,
81,
41,
83,
42,
85,
43,
87,
44,
89,
45,
91,
46,
93,
47,
95,
48,
97,
49,
99,
50,
101,
51,
103,
52,
105,
53,
107,
54,
109,
55,
111,
56,
113,
57,
115,
58,
117,
59,
119,
60,
121,
61,
123,
62,
125,
63,
127,
64,
129,
65,
131,
66,
133,
67,
135,
68,
137,
69,
139,
70,
141,
71,
143,
72,
145,
73,
1,
0,
5,
2,
0,
69,
69,
101,
101,
1,
0,
48,
57,
3,
0,
65,
90,
95,
95,
97,
122,
4,
0,
48,
57,
65,
90,
95,
95,
97,
122,
3,
0,
9,
10,
13,
13,
32,
32,
508,
0,
1,
1,
0,
0,
0,
0,
3,
1,
0,
0,
0,
0,
5,
1,
0,
0,
0,
0,
7,
1,
0,
0,
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,
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,
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,
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,
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,
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,
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,
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,
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,
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,
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,
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,
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,
147,
1,
0,
0,
0,
3,
149,
1,
0,
0,
0,
5,
151,
1,
0,
0,
0,
7,
153,
1,
0,
0,
0,
9,
155,
1,
0,
0,
0,
11,
157,
1,
0,
0,
0,
13,
161,
1,
0,
0,
0,
15,
165,
1,
0,
0,
0,
17,
169,
1,
0,
0,
0,
19,
174,
1,
0,
0,
0,
21,
179,
1,
0,
0,
0,
23,
184,
1,
0,
0,
0,
25,
190,
1,
0,
0,
0,
27,
195,
1,
0,
0,
0,
29,
200,
1,
0,
0,
0,
31,
205,
1,
0,
0,
0,
33,
211,
1,
0,
0,
0,
35,
217,
1,
0,
0,
0,
37,
223,
1,
0,
0,
0,
39,
227,
1,
0,
0,
0,
41,
232,
1,
0,
0,
0,
43,
235,
1,
0,
0,
0,
45,
239,
1,
0,
0,
0,
47,
243,
1,
0,
0,
0,
49,
248,
1,
0,
0,
0,
51,
253,
1,
0,
0,
0,
53,
258,
1,
0,
0,
0,
55,
263,
1,
0,
0,
0,
57,
269,
1,
0,
0,
0,
59,
275,
1,
0,
0,
0,
61,
281,
1,
0,
0,
0,
63,
286,
1,
0,
0,
0,
65,
292,
1,
0,
0,
0,
67,
298,
1,
0,
0,
0,
69,
302,
1,
0,
0,
0,
71,
307,
1,
0,
0,
0,
73,
313,
1,
0,
0,
0,
75,
317,
1,
0,
0,
0,
77,
322,
1,
0,
0,
0,
79,
328,
1,
0,
0,
0,
81,
334,
1,
0,
0,
0,
83,
346,
1,
0,
0,
0,
85,
351,
1,
0,
0,
0,
87,
356,
1,
0,
0,
0,
89,
361,
1,
0,
0,
0,
91,
372,
1,
0,
0,
0,
93,
378,
1,
0,
0,
0,
95,
383,
1,
0,
0,
0,
97,
392,
1,
0,
0,
0,
99,
397,
1,
0,
0,
0,
101,
402,
1,
0,
0,
0,
103,
406,
1,
0,
0,
0,
105,
411,
1,
0,
0,
0,
107,
416,
1,
0,
0,
0,
109,
424,
1,
0,
0,
0,
111,
432,
1,
0,
0,
0,
113,
438,
1,
0,
0,
0,
115,
440,
1,
0,
0,
0,
117,
442,
1,
0,
0,
0,
119,
444,
1,
0,
0,
0,
121,
446,
1,
0,
0,
0,
123,
448,
1,
0,
0,
0,
125,
450,
1,
0,
0,
0,
127,
453,
1,
0,
0,
0,
129,
455,
1,
0,
0,
0,
131,
458,
1,
0,
0,
0,
133,
460,
1,
0,
0,
0,
135,
463,
1,
0,
0,
0,
137,
466,
1,
0,
0,
0,
139,
473,
1,
0,
0,
0,
141,
476,
1,
0,
0,
0,
143,
488,
1,
0,
0,
0,
145,
496,
1,
0,
0,
0,
147,
148,
5,
40,
0,
0,
148,
2,
1,
0,
0,
0,
149,
150,
5,
41,
0,
0,
150,
4,
1,
0,
0,
0,
151,
152,
5,
91,
0,
0,
152,
6,
1,
0,
0,
0,
153,
154,
5,
44,
0,
0,
154,
8,
1,
0,
0,
0,
155,
156,
5,
93,
0,
0,
156,
10,
1,
0,
0,
0,
157,
158,
5,
115,
0,
0,
158,
159,
5,
105,
0,
0,
159,
160,
5,
110,
0,
0,
160,
12,
1,
0,
0,
0,
161,
162,
5,
99,
0,
0,
162,
163,
5,
111,
0,
0,
163,
164,
5,
115,
0,
0,
164,
14,
1,
0,
0,
0,
165,
166,
5,
116,
0,
0,
166,
167,
5,
97,
0,
0,
167,
168,
5,
110,
0,
0,
168,
16,
1,
0,
0,
0,
169,
170,
5,
97,
0,
0,
170,
171,
5,
115,
0,
0,
171,
172,
5,
105,
0,
0,
172,
173,
5,
110,
0,
0,
173,
18,
1,
0,
0,
0,
174,
175,
5,
97,
0,
0,
175,
176,
5,
99,
0,
0,
176,
177,
5,
111,
0,
0,
177,
178,
5,
115,
0,
0,
178,
20,
1,
0,
0,
0,
179,
180,
5,
97,
0,
0,
180,
181,
5,
116,
0,
0,
181,
182,
5,
97,
0,
0,
182,
183,
5,
110,
0,
0,
183,
22,
1,
0,
0,
0,
184,
185,
5,
97,
0,
0,
185,
186,
5,
116,
0,
0,
186,
187,
5,
97,
0,
0,
187,
188,
5,
110,
0,
0,
188,
189,
5,
50,
0,
0,
189,
24,
1,
0,
0,
0,
190,
191,
5,
115,
0,
0,
191,
192,
5,
105,
0,
0,
192,
193,
5,
110,
0,
0,
193,
194,
5,
104,
0,
0,
194,
26,
1,
0,
0,
0,
195,
196,
5,
99,
0,
0,
196,
197,
5,
111,
0,
0,
197,
198,
5,
115,
0,
0,
198,
199,
5,
104,
0,
0,
199,
28,
1,
0,
0,
0,
200,
201,
5,
116,
0,
0,
201,
202,
5,
97,
0,
0,
202,
203,
5,
110,
0,
0,
203,
204,
5,
104,
0,
0,
204,
30,
1,
0,
0,
0,
205,
206,
5,
97,
0,
0,
206,
207,
5,
115,
0,
0,
207,
208,
5,
105,
0,
0,
208,
209,
5,
110,
0,
0,
209,
210,
5,
104,
0,
0,
210,
32,
1,
0,
0,
0,
211,
212,
5,
97,
0,
0,
212,
213,
5,
99,
0,
0,
213,
214,
5,
111,
0,
0,
214,
215,
5,
115,
0,
0,
215,
216,
5,
104,
0,
0,
216,
34,
1,
0,
0,
0,
217,
218,
5,
97,
0,
0,
218,
219,
5,
116,
0,
0,
219,
220,
5,
97,
0,
0,
220,
221,
5,
110,
0,
0,
221,
222,
5,
104,
0,
0,
222,
36,
1,
0,
0,
0,
223,
224,
5,
97,
0,
0,
224,
225,
5,
98,
0,
0,
225,
226,
5,
115,
0,
0,
226,
38,
1,
0,
0,
0,
227,
228,
5,
115,
0,
0,
228,
229,
5,
113,
0,
0,
229,
230,
5,
114,
0,
0,
230,
231,
5,
116,
0,
0,
231,
40,
1,
0,
0,
0,
232,
233,
5,
108,
0,
0,
233,
234,
5,
110,
0,
0,
234,
42,
1,
0,
0,
0,
235,
236,
5,
108,
0,
0,
236,
237,
5,
111,
0,
0,
237,
238,
5,
103,
0,
0,
238,
44,
1,
0,
0,
0,
239,
240,
5,
101,
0,
0,
240,
241,
5,
120,
0,
0,
241,
242,
5,
112,
0,
0,
242,
46,
1,
0,
0,
0,
243,
244,
5,
115,
0,
0,
244,
245,
5,
109,
0,
0,
245,
246,
5,
105,
0,
0,
246,
247,
5,
110,
0,
0,
247,
48,
1,
0,
0,
0,
248,
249,
5,
115,
0,
0,
249,
250,
5,
109,
0,
0,
250,
251,
5,
97,
0,
0,
251,
252,
5,
120,
0,
0,
252,
50,
1,
0,
0,
0,
253,
254,
5,
116,
0,
0,
254,
255,
5,
109,
0,
0,
255,
256,
5,
105,
0,
0,
256,
257,
5,
110,
0,
0,
257,
52,
1,
0,
0,
0,
258,
259,
5,
116,
0,
0,
259,
260,
5,
109,
0,
0,
260,
261,
5,
97,
0,
0,
261,
262,
5,
120,
0,
0,
262,
54,
1,
0,
0,
0,
263,
264,
5,
116,
0,
0,
264,
265,
5,
110,
0,
0,
265,
266,
5,
111,
0,
0,
266,
267,
5,
114,
0,
0,
267,
268,
5,
109,
0,
0,
268,
56,
1,
0,
0,
0,
269,
270,
5,
115,
0,
0,
270,
271,
5,
110,
0,
0,
271,
272,
5,
111,
0,
0,
272,
273,
5,
114,
0,
0,
273,
274,
5,
109,
0,
0,
274,
58,
1,
0,
0,
0,
275,
276,
5,
102,
0,
0,
276,
277,
5,
108,
0,
0,
277,
278,
5,
111,
0,
0,
278,
279,
5,
111,
0,
0,
279,
280,
5,
114,
0,
0,
280,
60,
1,
0,
0,
0,
281,
282,
5,
99,
0,
0,
282,
283,
5,
101,
0,
0,
283,
284,
5,
105,
0,
0,
284,
285,
5,
108,
0,
0,
285,
62,
1,
0,
0,
0,
286,
287,
5,
114,
0,
0,
287,
288,
5,
111,
0,
0,
288,
289,
5,
117,
0,
0,
289,
290,
5,
110,
0,
0,
290,
291,
5,
100,
0,
0,
291,
64,
1,
0,
0,
0,
292,
293,
5,
103,
0,
0,
293,
294,
5,
97,
0,
0,
294,
295,
5,
109,
0,
0,
295,
296,
5,
109,
0,
0,
296,
297,
5,
97,
0,
0,
297,
66,
1,
0,
0,
0,
298,
299,
5,
112,
0,
0,
299,
300,
5,
111,
0,
0,
300,
301,
5,
119,
0,
0,
301,
68,
1,
0,
0,
0,
302,
303,
5,
115,
0,
0,
303,
304,
5,
105,
0,
0,
304,
305,
5,
103,
0,
0,
305,
306,
5,
109,
0,
0,
306,
70,
1,
0,
0,
0,
307,
308,
5,
99,
0,
0,
308,
309,
5,
108,
0,
0,
309,
310,
5,
97,
0,
0,
310,
311,
5,
109,
0,
0,
311,
312,
5,
112,
0,
0,
312,
72,
1,
0,
0,
0,
313,
314,
5,
102,
0,
0,
314,
315,
5,
102,
0,
0,
315,
316,
5,
116,
0,
0,
316,
74,
1,
0,
0,
0,
317,
318,
5,
105,
0,
0,
318,
319,
5,
102,
0,
0,
319,
320,
5,
102,
0,
0,
320,
321,
5,
116,
0,
0,
321,
76,
1,
0,
0,
0,
322,
323,
5,
97,
0,
0,
323,
324,
5,
110,
0,
0,
324,
325,
5,
103,
0,
0,
325,
326,
5,
108,
0,
0,
326,
327,
5,
101,
0,
0,
327,
78,
1,
0,
0,
0,
328,
329,
5,
112,
0,
0,
329,
330,
5,
114,
0,
0,
330,
331,
5,
105,
0,
0,
331,
332,
5,
110,
0,
0,
332,
333,
5,
116,
0,
0,
333,
80,
1,
0,
0,
0,
334,
335,
5,
112,
0,
0,
335,
336,
5,
114,
0,
0,
336,
337,
5,
105,
0,
0,
337,
338,
5,
110,
0,
0,
338,
339,
5,
116,
0,
0,
339,
340,
5,
95,
0,
0,
340,
341,
5,
115,
0,
0,
341,
342,
5,
104,
0,
0,
342,
343,
5,
97,
0,
0,
343,
344,
5,
112,
0,
0,
344,
345,
5,
101,
0,
0,
345,
82,
1,
0,
0,
0,
346,
347,
5,
112,
0,
0,
347,
348,
5,
115,
0,
0,
348,
349,
5,
104,
0,
0,
349,
350,
5,
112,
0,
0,
350,
84,
1,
0,
0,
0,
351,
352,
5,
108,
0,
0,
352,
353,
5,
101,
0,
0,
353,
354,
5,
114,
0,
0,
354,
355,
5,
112,
0,
0,
355,
86,
1,
0,
0,
0,
356,
357,
5,
115,
0,
0,
357,
358,
5,
116,
0,
0,
358,
359,
5,
101,
0,
0,
359,
360,
5,
112,
0,
0,
360,
88,
1,
0,
0,
0,
361,
362,
5,
115,
0,
0,
362,
363,
5,
109,
0,
0,
363,
364,
5,
111,
0,
0,
364,
365,
5,
111,
0,
0,
365,
366,
5,
116,
0,
0,
366,
367,
5,
104,
0,
0,
367,
368,
5,
115,
0,
0,
368,
369,
5,
116,
0,
0,
369,
370,
5,
101,
0,
0,
370,
371,
5,
112,
0,
0,
371,
90,
1,
0,
0,
0,
372,
373,
5,
102,
0,
0,
373,
374,
5,
114,
0,
0,
374,
375,
5,
97,
0,
0,
375,
376,
5,
99,
0,
0,
376,
377,
5,
116,
0,
0,
377,
92,
1,
0,
0,
0,
378,
379,
5,
114,
0,
0,
379,
380,
5,
101,
0,
0,
380,
381,
5,
108,
0,
0,
381,
382,
5,
117,
0,
0,
382,
94,
1,
0,
0,
0,
383,
384,
5,
115,
0,
0,
384,
385,
5,
111,
0,
0,
385,
386,
5,
102,
0,
0,
386,
387,
5,
116,
0,
0,
387,
388,
5,
112,
0,
0,
388,
389,
5,
108,
0,
0,
389,
390,
5,
117,
0,
0,
390,
391,
5,
115,
0,
0,
391,
96,
1,
0,
0,
0,
392,
393,
5,
103,
0,
0,
393,
394,
5,
101,
0,
0,
394,
395,
5,
108,
0,
0,
395,
396,
5,
117,
0,
0,
396,
98,
1,
0,
0,
0,
397,
398,
5,
115,
0,
0,
398,
399,
5,
105,
0,
0,
399,
400,
5,
103,
0,
0,
400,
401,
5,
110,
0,
0,
401,
100,
1,
0,
0,
0,
402,
403,
5,
109,
0,
0,
403,
404,
5,
97,
0,
0,
404,
405,
5,
112,
0,
0,
405,
102,
1,
0,
0,
0,
406,
407,
5,
99,
0,
0,
407,
408,
5,
111,
0,
0,
408,
409,
5,
110,
0,
0,
409,
410,
5,
118,
0,
0,
410,
104,
1,
0,
0,
0,
411,
412,
5,
115,
0,
0,
412,
413,
5,
119,
0,
0,
413,
414,
5,
97,
0,
0,
414,
415,
5,
112,
0,
0,
415,
106,
1,
0,
0,
0,
416,
417,
5,
112,
0,
0,
417,
418,
5,
101,
0,
0,
418,
419,
5,
114,
0,
0,
419,
420,
5,
109,
0,
0,
420,
421,
5,
117,
0,
0,
421,
422,
5,
116,
0,
0,
422,
423,
5,
101,
0,
0,
423,
108,
1,
0,
0,
0,
424,
425,
5,
114,
0,
0,
425,
426,
5,
101,
0,
0,
426,
427,
5,
115,
0,
0,
427,
428,
5,
104,
0,
0,
428,
429,
5,
97,
0,
0,
429,
430,
5,
112,
0,
0,
430,
431,
5,
101,
0,
0,
431,
110,
1,
0,
0,
0,
432,
433,
5,
114,
0,
0,
433,
434,
5,
97,
0,
0,
434,
435,
5,
110,
0,
0,
435,
436,
5,
103,
0,
0,
436,
437,
5,
101,
0,
0,
437,
112,
1,
0,
0,
0,
438,
439,
5,
43,
0,
0,
439,
114,
1,
0,
0,
0,
440,
441,
5,
45,
0,
0,
441,
116,
1,
0,
0,
0,
442,
443,
5,
42,
0,
0,
443,
118,
1,
0,
0,
0,
444,
445,
5,
47,
0,
0,
445,
120,
1,
0,
0,
0,
446,
447,
5,
37,
0,
0,
447,
122,
1,
0,
0,
0,
448,
449,
5,
94,
0,
0,
449,
124,
1,
0,
0,
0,
450,
451,
5,
62,
0,
0,
451,
452,
5,
61,
0,
0,
452,
126,
1,
0,
0,
0,
453,
454,
5,
62,
0,
0,
454,
128,
1,
0,
0,
0,
455,
456,
5,
60,
0,
0,
456,
457,
5,
61,
0,
0,
457,
130,
1,
0,
0,
0,
458,
459,
5,
60,
0,
0,
459,
132,
1,
0,
0,
0,
460,
461,
5,
61,
0,
0,
461,
462,
5,
61,
0,
0,
462,
134,
1,
0,
0,
0,
463,
464,
5,
33,
0,
0,
464,
465,
5,
61,
0,
0,
465,
136,
1,
0,
0,
0,
466,
467,
5,
124,
0,
0,
467,
138,
1,
0,
0,
0,
468,
469,
5,
112,
0,
0,
469,
474,
5,
105,
0,
0,
470,
471,
5,
80,
0,
0,
471,
474,
5,
73,
0,
0,
472,
474,
7,
0,
0,
0,
473,
468,
1,
0,
0,
0,
473,
470,
1,
0,
0,
0,
473,
472,
1,
0,
0,
0,
474,
140,
1,
0,
0,
0,
475,
477,
7,
1,
0,
0,
476,
475,
1,
0,
0,
0,
477,
478,
1,
0,
0,
0,
478,
476,
1,
0,
0,
0,
478,
479,
1,
0,
0,
0,
479,
486,
1,
0,
0,
0,
480,
482,
5,
46,
0,
0,
481,
483,
7,
1,
0,
0,
482,
481,
1,
0,
0,
0,
483,
484,
1,
0,
0,
0,
484,
482,
1,
0,
0,
0,
484,
485,
1,
0,
0,
0,
485,
487,
1,
0,
0,
0,
486,
480,
1,
0,
0,
0,
486,
487,
1,
0,
0,
0,
487,
142,
1,
0,
0,
0,
488,
492,
7,
2,
0,
0,
489,
491,
7,
3,
0,
0,
490,
489,
1,
0,
0,
0,
491,
494,
1,
0,
0,
0,
492,
490,
1,
0,
0,
0,
492,
493,
1,
0,
0,
0,
493,
144,
1,
0,
0,
0,
494,
492,
1,
0,
0,
0,
495,
497,
7,
4,
0,
0,
496,
495,
1,
0,
0,
0,
497,
498,
1,
0,
0,
0,
498,
496,
1,
0,
0,
0,
498,
499,
1,
0,
0,
0,
499,
500,
1,
0,
0,
0,
500,
501,
6,
72,
0,
0,
501,
146,
1,
0,
0,
0,
7,
0,
473,
478,
484,
486,
492,
498,
1,
6,
0,
0,
]
class MathExprLexer(Lexer):
atn = ATNDeserializer().deserialize(serializedATN())
decisionsToDFA = [DFA(ds, i) for i, ds in enumerate(atn.decisionToState)]
T__0 = 1
T__1 = 2
T__2 = 3
T__3 = 4
T__4 = 5
SIN = 6
COS = 7
TAN = 8
ASIN = 9
ACOS = 10
ATAN = 11
ATAN2 = 12
SINH = 13
COSH = 14
TANH = 15
ASINH = 16
ACOSH = 17
ATANH = 18
ABS = 19
SQRT = 20
LN = 21
LOG = 22
EXP = 23
SMIN = 24
SMAX = 25
TMIN = 26
TMAX = 27
TNORM = 28
SNORM = 29
FLOOR = 30
CEIL = 31
ROUND = 32
GAMMA = 33
POWE = 34
SIGM = 35
CLAMP = 36
SFFT = 37
SIFFT = 38
ANGL = 39
PRNT = 40
PRINT_SHAPE_L = 41
PRINT_SHAPE = 42
LERP = 43
STEP = 44
SMOOTHSTEP = 45
FRACT = 46
RELU = 47
SOFTPLUS = 48
GELU = 49
SIGN = 50
MAP = 51
CONV = 52
SWAP = 53
PERM = 54
RESHAPE = 55
RANGE = 56
PLUS = 57
MINUS = 58
MULT = 59
DIV = 60
MOD = 61
POW = 62
GE = 63
GT = 64
LE = 65
LT = 66
EQ = 67
NE = 68
PIPE = 69
CONSTANT = 70
NUMBER = 71
VARIABLE = 72
WS = 73
channelNames = ["DEFAULT_TOKEN_CHANNEL", "HIDDEN"]
modeNames = ["DEFAULT_MODE"]
literalNames = [
"<INVALID>",
"'('",
"')'",
"'['",
"','",
"']'",
"'sin'",
"'cos'",
"'tan'",
"'asin'",
"'acos'",
"'atan'",
"'atan2'",
"'sinh'",
"'cosh'",
"'tanh'",
"'asinh'",
"'acosh'",
"'atanh'",
"'abs'",
"'sqrt'",
"'ln'",
"'log'",
"'exp'",
"'smin'",
"'smax'",
"'tmin'",
"'tmax'",
"'tnorm'",
"'snorm'",
"'floor'",
"'ceil'",
"'round'",
"'gamma'",
"'pow'",
"'sigm'",
"'clamp'",
"'fft'",
"'ifft'",
"'angle'",
"'print'",
"'print_shape'",
"'pshp'",
"'lerp'",
"'step'",
"'smoothstep'",
"'fract'",
"'relu'",
"'softplus'",
"'gelu'",
"'sign'",
"'map'",
"'conv'",
"'swap'",
"'permute'",
"'reshape'",
"'range'",
"'+'",
"'-'",
"'*'",
"'/'",
"'%'",
"'^'",
"'>='",
"'>'",
"'<='",
"'<'",
"'=='",
"'!='",
"'|'",
]
symbolicNames = [
"<INVALID>",
"SIN",
"COS",
"TAN",
"ASIN",
"ACOS",
"ATAN",
"ATAN2",
"SINH",
"COSH",
"TANH",
"ASINH",
"ACOSH",
"ATANH",
"ABS",
"SQRT",
"LN",
"LOG",
"EXP",
"SMIN",
"SMAX",
"TMIN",
"TMAX",
"TNORM",
"SNORM",
"FLOOR",
"CEIL",
"ROUND",
"GAMMA",
"POWE",
"SIGM",
"CLAMP",
"SFFT",
"SIFFT",
"ANGL",
"PRNT",
"PRINT_SHAPE_L",
"PRINT_SHAPE",
"LERP",
"STEP",
"SMOOTHSTEP",
"FRACT",
"RELU",
"SOFTPLUS",
"GELU",
"SIGN",
"MAP",
"CONV",
"SWAP",
"PERM",
"RESHAPE",
"RANGE",
"PLUS",
"MINUS",
"MULT",
"DIV",
"MOD",
"POW",
"GE",
"GT",
"LE",
"LT",
"EQ",
"NE",
"PIPE",
"CONSTANT",
"NUMBER",
"VARIABLE",
"WS",
]
ruleNames = [
"T__0",
"T__1",
"T__2",
"T__3",
"T__4",
"SIN",
"COS",
"TAN",
"ASIN",
"ACOS",
"ATAN",
"ATAN2",
"SINH",
"COSH",
"TANH",
"ASINH",
"ACOSH",
"ATANH",
"ABS",
"SQRT",
"LN",
"LOG",
"EXP",
"SMIN",
"SMAX",
"TMIN",
"TMAX",
"TNORM",
"SNORM",
"FLOOR",
"CEIL",
"ROUND",
"GAMMA",
"POWE",
"SIGM",
"CLAMP",
"SFFT",
"SIFFT",
"ANGL",
"PRNT",
"PRINT_SHAPE_L",
"PRINT_SHAPE",
"LERP",
"STEP",
"SMOOTHSTEP",
"FRACT",
"RELU",
"SOFTPLUS",
"GELU",
"SIGN",
"MAP",
"CONV",
"SWAP",
"PERM",
"RESHAPE",
"RANGE",
"PLUS",
"MINUS",
"MULT",
"DIV",
"MOD",
"POW",
"GE",
"GT",
"LE",
"LT",
"EQ",
"NE",
"PIPE",
"CONSTANT",
"NUMBER",
"VARIABLE",
"WS",
]
grammarFileName = "MathExpr.g4"
def __init__(self, input=None, output: TextIO = sys.stdout):
super().__init__(input, output)
self.checkVersion("4.13.2")
self._interp = LexerATNSimulator(self, self.atn, self.decisionsToDFA, PredictionContextCache())
self._actions = None
self._predicates = None