cariboujs 2.0.7 → 2.0.9

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 (61) hide show
  1. package/README.md +6 -4
  2. package/asm/asm8080/asm8080Lexer.js +253 -152
  3. package/asm/asm8080/asm8080Listener.js +72 -0
  4. package/asm/asm8080/asm8080Parser.js +1307 -289
  5. package/asm/asm8080/asm8080Visitor.js +48 -0
  6. package/asm/asmZ80/asmZ80Lexer.js +152 -128
  7. package/asm/asmZ80/asmZ80Listener.js +9 -0
  8. package/asm/asmZ80/asmZ80Parser.js +316 -170
  9. package/asm/asmZ80/asmZ80Visitor.js +6 -0
  10. package/c/CParser.js +1352 -1344
  11. package/clif/CLIFLexer.js +173 -0
  12. package/clif/CLIFListener.js +198 -0
  13. package/clif/CLIFParser.js +2440 -0
  14. package/clif/CLIFVisitor.js +136 -0
  15. package/cypher/CypherLexer.js +208 -205
  16. package/cypher/CypherParser.js +1180 -984
  17. package/cypher/CypherParserListener.js +18 -0
  18. package/cypher/CypherParserVisitor.js +12 -0
  19. package/javascript/javascript/JavaScriptParser.js +607 -658
  20. package/javascript/javascript/JavaScriptParserListener.js +0 -9
  21. package/javascript/javascript/JavaScriptParserVisitor.js +0 -6
  22. package/package.json +1 -1
  23. package/promql/PromQLLexer.js +147 -142
  24. package/python/python3_14/PythonLexer.js +1238 -0
  25. package/python/python3_14/PythonLexerBase.js +819 -0
  26. package/python/{python3_13 → python3_14}/PythonParser.js +4141 -3347
  27. package/python/{python3_13 → python3_14}/PythonParserListener.js +81 -0
  28. package/python/{python3_13 → python3_14}/PythonParserVisitor.js +54 -0
  29. package/sql/mysql/Oracle/MySQLParser.js +3934 -3927
  30. package/sql/plsql/PlSqlLexer.js +12212 -12202
  31. package/sql/plsql/PlSqlParser.js +45094 -39280
  32. package/sql/plsql/PlSqlParserBase.js +31 -0
  33. package/sql/plsql/PlSqlParserListener.js +76 -4
  34. package/sql/plsql/PlSqlParserVisitor.js +50 -2
  35. package/sysml-v2/SysMLv2Lexer.js +617 -605
  36. package/sysml-v2/SysMLv2Parser.js +7135 -10083
  37. package/sysml-v2/SysMLv2ParserListener.js +45 -423
  38. package/sysml-v2/SysMLv2ParserVisitor.js +30 -282
  39. package/wkt/wktLexer.js +502 -173
  40. package/wkt/wktParser.js +7220 -1311
  41. package/wkt/wktParserListener.js +756 -0
  42. package/wkt/wktParserVisitor.js +508 -0
  43. package/xpath/xpath4/XPath4Lexer.js +667 -0
  44. package/xpath/xpath4/XPath4Parser.js +17424 -0
  45. package/xpath/xpath4/XPath4ParserBase.js +34 -0
  46. package/xpath/xpath4/XPath4ParserListener.js +1521 -0
  47. package/xpath/xpath4/XPath4ParserVisitor.js +1018 -0
  48. package/xquery/xquery4/XQuery4Lexer.js +1396 -0
  49. package/xquery/xquery4/XQuery4LexerBase.js +42 -0
  50. package/xquery/xquery4/XQuery4Parser.js +27899 -0
  51. package/xquery/xquery4/XQuery4ParserBase.js +38 -0
  52. package/xquery/xquery4/XQuery4ParserListener.js +2322 -0
  53. package/xquery/xquery4/XQuery4ParserVisitor.js +1552 -0
  54. package/awk/awkLexer.js +0 -317
  55. package/awk/awkListener.js +0 -378
  56. package/awk/awkParser.js +0 -5859
  57. package/awk/awkVisitor.js +0 -256
  58. package/python/python3_13/PythonLexer.js +0 -974
  59. package/python/python3_13/PythonLexerBase.js +0 -676
  60. package/wkt/wktListener.js +0 -261
  61. package/wkt/wktVisitor.js +0 -178
package/wkt/wktLexer.js CHANGED
@@ -1,153 +1,395 @@
1
- // Generated from wkt.g4 by ANTLR 4.13.2
1
+ // Generated from wktLexer.g4 by ANTLR 4.13.2
2
2
  // jshint ignore: start
3
3
  import antlr4 from 'antlr4';
4
4
 
5
5
 
6
- const serializedATN = [4,0,31,459,6,-1,2,0,7,0,2,1,7,1,2,2,7,2,2,3,7,3,2,
7
- 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,
8
- 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,
9
- 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,
10
- 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,
11
- 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,
12
- 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,
13
- 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,
14
- 56,7,56,2,57,7,57,2,58,7,58,2,59,7,59,2,60,7,60,1,0,3,0,125,8,0,1,0,1,0,
15
- 1,0,1,0,3,0,131,8,0,1,0,3,0,134,8,0,1,1,1,1,1,1,5,1,139,8,1,10,1,12,1,142,
16
- 9,1,3,1,144,8,1,1,2,4,2,147,8,2,11,2,12,2,148,1,3,1,3,3,3,153,8,3,1,3,4,
17
- 3,156,8,3,11,3,12,3,157,1,4,1,4,3,4,162,8,4,1,5,1,5,1,6,1,6,1,7,1,7,1,8,
18
- 1,8,1,9,1,9,1,10,1,10,1,10,1,10,1,10,1,10,1,11,1,11,1,11,1,11,1,11,1,11,
19
- 1,11,1,11,1,11,1,11,1,11,1,12,1,12,1,12,1,12,1,12,1,12,1,12,1,12,1,12,1,
20
- 12,1,12,1,13,1,13,1,13,1,13,1,13,1,13,1,13,1,13,1,14,1,14,1,14,1,14,1,14,
21
- 1,14,1,14,1,14,1,14,1,15,1,15,1,15,1,15,1,15,1,15,1,15,1,15,1,15,1,15,1,
22
- 15,1,16,1,16,1,16,1,16,1,16,1,16,1,16,1,16,1,16,1,16,1,16,1,16,1,16,1,16,
23
- 1,16,1,16,1,17,1,17,1,17,1,17,1,17,1,17,1,17,1,17,1,17,1,17,1,17,1,17,1,
24
- 17,1,18,1,18,1,18,1,18,1,18,1,18,1,18,1,18,1,18,1,18,1,18,1,18,1,18,1,18,
25
- 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,19,1,19,1,
26
- 19,1,19,1,19,1,19,1,19,1,19,1,20,1,20,1,20,1,20,1,20,1,20,1,20,1,20,1,20,
27
- 1,20,1,20,1,20,1,20,1,20,1,21,1,21,1,21,1,21,1,21,1,21,1,21,1,21,1,21,1,
28
- 22,1,22,1,22,1,22,1,22,1,22,1,22,1,22,1,22,1,22,1,22,1,22,1,22,1,23,1,23,
29
- 1,23,1,23,1,23,1,23,1,23,1,23,1,23,1,23,1,23,1,24,1,24,1,24,1,24,1,24,1,
30
- 24,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,25,1,25,1,25,1,25,1,25,1,25,1,25,
31
- 1,25,1,25,1,25,1,25,1,25,1,25,1,25,1,25,1,25,1,25,1,25,1,26,1,26,1,26,1,
32
- 26,1,27,1,27,1,27,1,27,1,27,1,27,1,28,1,28,1,28,1,29,1,29,1,30,1,30,1,31,
33
- 1,31,1,31,1,31,1,32,1,32,1,32,1,32,1,32,1,33,1,33,1,33,1,33,1,34,1,34,1,
34
- 35,1,35,1,36,1,36,1,37,1,37,1,38,1,38,1,39,1,39,1,40,1,40,1,41,1,41,1,42,
35
- 1,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,
36
- 49,1,50,1,50,1,51,1,51,1,52,1,52,1,53,1,53,1,54,1,54,1,55,1,55,1,56,1,56,
37
- 1,57,1,57,1,58,1,58,1,59,1,59,1,60,4,60,454,8,60,11,60,12,60,455,1,60,1,
38
- 60,0,0,61,1,1,3,2,5,3,7,0,9,0,11,0,13,0,15,4,17,5,19,6,21,7,23,8,25,9,27,
39
- 10,29,11,31,12,33,13,35,14,37,15,39,16,41,17,43,18,45,19,47,20,49,21,51,
40
- 22,53,23,55,24,57,25,59,26,61,27,63,28,65,29,67,30,69,0,71,0,73,0,75,0,77,
41
- 0,79,0,81,0,83,0,85,0,87,0,89,0,91,0,93,0,95,0,97,0,99,0,101,0,103,0,105,
42
- 0,107,0,109,0,111,0,113,0,115,0,117,0,119,0,121,31,1,0,29,2,0,69,69,101,
43
- 101,2,0,43,43,45,45,1,0,49,57,2,0,65,65,97,97,2,0,66,66,98,98,2,0,67,67,
44
- 99,99,2,0,68,68,100,100,2,0,70,70,102,102,2,0,71,71,103,103,2,0,72,72,104,
45
- 104,2,0,73,73,105,105,2,0,74,74,106,106,2,0,75,75,107,107,2,0,76,76,108,
46
- 108,2,0,77,77,109,109,2,0,78,78,110,110,2,0,79,79,111,111,2,0,80,80,112,
47
- 112,2,0,81,81,113,113,2,0,82,82,114,114,2,0,83,83,115,115,2,0,84,84,116,
48
- 116,2,0,85,85,117,117,2,0,86,86,118,118,2,0,87,87,119,119,2,0,88,88,120,
49
- 120,2,0,89,89,121,121,2,0,90,90,122,122,3,0,9,10,13,13,32,32,438,0,1,1,0,
50
- 0,0,0,3,1,0,0,0,0,5,1,0,0,0,0,15,1,0,0,0,0,17,1,0,0,0,0,19,1,0,0,0,0,21,
51
- 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,
52
- 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,
53
- 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,
54
- 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,
55
- 0,0,0,67,1,0,0,0,0,121,1,0,0,0,1,124,1,0,0,0,3,143,1,0,0,0,5,146,1,0,0,0,
56
- 7,150,1,0,0,0,9,161,1,0,0,0,11,163,1,0,0,0,13,165,1,0,0,0,15,167,1,0,0,0,
57
- 17,169,1,0,0,0,19,171,1,0,0,0,21,173,1,0,0,0,23,179,1,0,0,0,25,190,1,0,0,
58
- 0,27,201,1,0,0,0,29,209,1,0,0,0,31,218,1,0,0,0,33,229,1,0,0,0,35,245,1,0,
59
- 0,0,37,258,1,0,0,0,39,277,1,0,0,0,41,292,1,0,0,0,43,306,1,0,0,0,45,315,1,
60
- 0,0,0,47,328,1,0,0,0,49,339,1,0,0,0,51,352,1,0,0,0,53,370,1,0,0,0,55,374,
61
- 1,0,0,0,57,380,1,0,0,0,59,383,1,0,0,0,61,385,1,0,0,0,63,387,1,0,0,0,65,391,
62
- 1,0,0,0,67,396,1,0,0,0,69,400,1,0,0,0,71,402,1,0,0,0,73,404,1,0,0,0,75,406,
63
- 1,0,0,0,77,408,1,0,0,0,79,410,1,0,0,0,81,412,1,0,0,0,83,414,1,0,0,0,85,416,
64
- 1,0,0,0,87,418,1,0,0,0,89,420,1,0,0,0,91,422,1,0,0,0,93,424,1,0,0,0,95,426,
65
- 1,0,0,0,97,428,1,0,0,0,99,430,1,0,0,0,101,432,1,0,0,0,103,434,1,0,0,0,105,
66
- 436,1,0,0,0,107,438,1,0,0,0,109,440,1,0,0,0,111,442,1,0,0,0,113,444,1,0,
67
- 0,0,115,446,1,0,0,0,117,448,1,0,0,0,119,450,1,0,0,0,121,453,1,0,0,0,123,
68
- 125,5,45,0,0,124,123,1,0,0,0,124,125,1,0,0,0,125,126,1,0,0,0,126,130,3,3,
69
- 1,0,127,128,3,13,6,0,128,129,3,5,2,0,129,131,1,0,0,0,130,127,1,0,0,0,130,
70
- 131,1,0,0,0,131,133,1,0,0,0,132,134,3,7,3,0,133,132,1,0,0,0,133,134,1,0,
71
- 0,0,134,2,1,0,0,0,135,144,5,48,0,0,136,140,3,11,5,0,137,139,3,9,4,0,138,
72
- 137,1,0,0,0,139,142,1,0,0,0,140,138,1,0,0,0,140,141,1,0,0,0,141,144,1,0,
73
- 0,0,142,140,1,0,0,0,143,135,1,0,0,0,143,136,1,0,0,0,144,4,1,0,0,0,145,147,
74
- 3,9,4,0,146,145,1,0,0,0,147,148,1,0,0,0,148,146,1,0,0,0,148,149,1,0,0,0,
75
- 149,6,1,0,0,0,150,152,7,0,0,0,151,153,7,1,0,0,152,151,1,0,0,0,152,153,1,
76
- 0,0,0,153,155,1,0,0,0,154,156,3,9,4,0,155,154,1,0,0,0,156,157,1,0,0,0,157,
77
- 155,1,0,0,0,157,158,1,0,0,0,158,8,1,0,0,0,159,162,5,48,0,0,160,162,3,11,
78
- 5,0,161,159,1,0,0,0,161,160,1,0,0,0,162,10,1,0,0,0,163,164,7,2,0,0,164,12,
79
- 1,0,0,0,165,166,5,46,0,0,166,14,1,0,0,0,167,168,5,44,0,0,168,16,1,0,0,0,
80
- 169,170,5,40,0,0,170,18,1,0,0,0,171,172,5,41,0,0,172,20,1,0,0,0,173,174,
81
- 3,99,49,0,174,175,3,97,48,0,175,176,3,85,42,0,176,177,3,95,47,0,177,178,
82
- 3,107,53,0,178,22,1,0,0,0,179,180,3,91,45,0,180,181,3,85,42,0,181,182,3,
83
- 95,47,0,182,183,3,77,38,0,183,184,3,105,52,0,184,185,3,107,53,0,185,186,
84
- 3,103,51,0,186,187,3,85,42,0,187,188,3,95,47,0,188,189,3,81,40,0,189,24,
85
- 1,0,0,0,190,191,3,91,45,0,191,192,3,85,42,0,192,193,3,95,47,0,193,194,3,
86
- 77,38,0,194,195,3,69,34,0,195,196,3,103,51,0,196,197,3,103,51,0,197,198,
87
- 3,85,42,0,198,199,3,95,47,0,199,200,3,81,40,0,200,26,1,0,0,0,201,202,3,99,
88
- 49,0,202,203,3,97,48,0,203,204,3,91,45,0,204,205,3,117,58,0,205,206,3,81,
89
- 40,0,206,207,3,97,48,0,207,208,3,95,47,0,208,28,1,0,0,0,209,210,3,107,53,
90
- 0,210,211,3,103,51,0,211,212,3,85,42,0,212,213,3,69,34,0,213,214,3,95,47,
91
- 0,214,215,3,81,40,0,215,216,3,91,45,0,216,217,3,77,38,0,217,30,1,0,0,0,218,
92
- 219,3,93,46,0,219,220,3,109,54,0,220,221,3,91,45,0,221,222,3,107,53,0,222,
93
- 223,3,85,42,0,223,224,3,99,49,0,224,225,3,97,48,0,225,226,3,85,42,0,226,
94
- 227,3,95,47,0,227,228,3,107,53,0,228,32,1,0,0,0,229,230,3,93,46,0,230,231,
95
- 3,109,54,0,231,232,3,91,45,0,232,233,3,107,53,0,233,234,3,85,42,0,234,235,
96
- 3,91,45,0,235,236,3,85,42,0,236,237,3,95,47,0,237,238,3,77,38,0,238,239,
97
- 3,105,52,0,239,240,3,107,53,0,240,241,3,103,51,0,241,242,3,85,42,0,242,243,
98
- 3,95,47,0,243,244,3,81,40,0,244,34,1,0,0,0,245,246,3,93,46,0,246,247,3,109,
99
- 54,0,247,248,3,91,45,0,248,249,3,107,53,0,249,250,3,85,42,0,250,251,3,99,
100
- 49,0,251,252,3,97,48,0,252,253,3,91,45,0,253,254,3,117,58,0,254,255,3,81,
101
- 40,0,255,256,3,97,48,0,256,257,3,95,47,0,257,36,1,0,0,0,258,259,3,81,40,
102
- 0,259,260,3,77,38,0,260,261,3,97,48,0,261,262,3,93,46,0,262,263,3,77,38,
103
- 0,263,264,3,107,53,0,264,265,3,103,51,0,265,266,3,117,58,0,266,267,3,73,
104
- 36,0,267,268,3,97,48,0,268,269,3,91,45,0,269,270,3,91,45,0,270,271,3,77,
105
- 38,0,271,272,3,73,36,0,272,273,3,107,53,0,273,274,3,85,42,0,274,275,3,97,
106
- 48,0,275,276,3,95,47,0,276,38,1,0,0,0,277,278,3,73,36,0,278,279,3,85,42,
107
- 0,279,280,3,103,51,0,280,281,3,73,36,0,281,282,3,109,54,0,282,283,3,91,45,
108
- 0,283,284,3,69,34,0,284,285,3,103,51,0,285,286,3,105,52,0,286,287,3,107,
109
- 53,0,287,288,3,103,51,0,288,289,3,85,42,0,289,290,3,95,47,0,290,291,3,81,
110
- 40,0,291,40,1,0,0,0,292,293,3,73,36,0,293,294,3,97,48,0,294,295,3,93,46,
111
- 0,295,296,3,99,49,0,296,297,3,97,48,0,297,298,3,109,54,0,298,299,3,95,47,
112
- 0,299,300,3,75,37,0,300,301,3,73,36,0,301,302,3,109,54,0,302,303,3,103,51,
113
- 0,303,304,3,111,55,0,304,305,3,77,38,0,305,42,1,0,0,0,306,307,3,73,36,0,
114
- 307,308,3,91,45,0,308,309,3,97,48,0,309,310,3,107,53,0,310,311,3,83,41,0,
115
- 311,312,3,97,48,0,312,313,3,85,42,0,313,314,3,75,37,0,314,44,1,0,0,0,315,
116
- 316,3,73,36,0,316,317,3,109,54,0,317,318,3,103,51,0,318,319,3,111,55,0,319,
117
- 320,3,77,38,0,320,321,3,99,49,0,321,322,3,97,48,0,322,323,3,91,45,0,323,
118
- 324,3,117,58,0,324,325,3,81,40,0,325,326,3,97,48,0,326,327,3,95,47,0,327,
119
- 46,1,0,0,0,328,329,3,93,46,0,329,330,3,109,54,0,330,331,3,91,45,0,331,332,
120
- 3,107,53,0,332,333,3,85,42,0,333,334,3,73,36,0,334,335,3,109,54,0,335,336,
121
- 3,103,51,0,336,337,3,111,55,0,337,338,3,77,38,0,338,48,1,0,0,0,339,340,3,
122
- 93,46,0,340,341,3,109,54,0,341,342,3,91,45,0,342,343,3,107,53,0,343,344,
123
- 3,85,42,0,344,345,3,105,52,0,345,346,3,109,54,0,346,347,3,103,51,0,347,348,
124
- 3,79,39,0,348,349,3,69,34,0,349,350,3,73,36,0,350,351,3,77,38,0,351,50,1,
125
- 0,0,0,352,353,3,99,49,0,353,354,3,97,48,0,354,355,3,91,45,0,355,356,3,117,
126
- 58,0,356,357,3,83,41,0,357,358,3,77,38,0,358,359,3,75,37,0,359,360,3,103,
127
- 51,0,360,361,3,69,34,0,361,362,3,91,45,0,362,363,3,105,52,0,363,364,3,109,
128
- 54,0,364,365,3,103,51,0,365,366,3,79,39,0,366,367,3,69,34,0,367,368,3,73,
129
- 36,0,368,369,3,77,38,0,369,52,1,0,0,0,370,371,3,107,53,0,371,372,3,85,42,
130
- 0,372,373,3,95,47,0,373,54,1,0,0,0,374,375,3,77,38,0,375,376,3,93,46,0,376,
131
- 377,3,99,49,0,377,378,3,107,53,0,378,379,3,117,58,0,379,56,1,0,0,0,380,381,
132
- 3,119,59,0,381,382,3,93,46,0,382,58,1,0,0,0,383,384,3,119,59,0,384,60,1,
133
- 0,0,0,385,386,3,93,46,0,386,62,1,0,0,0,387,388,3,95,47,0,388,389,3,69,34,
134
- 0,389,390,3,95,47,0,390,64,1,0,0,0,391,392,5,45,0,0,392,393,3,85,42,0,393,
135
- 394,3,95,47,0,394,395,3,79,39,0,395,66,1,0,0,0,396,397,3,85,42,0,397,398,
136
- 3,95,47,0,398,399,3,79,39,0,399,68,1,0,0,0,400,401,7,3,0,0,401,70,1,0,0,
137
- 0,402,403,7,4,0,0,403,72,1,0,0,0,404,405,7,5,0,0,405,74,1,0,0,0,406,407,
138
- 7,6,0,0,407,76,1,0,0,0,408,409,7,0,0,0,409,78,1,0,0,0,410,411,7,7,0,0,411,
139
- 80,1,0,0,0,412,413,7,8,0,0,413,82,1,0,0,0,414,415,7,9,0,0,415,84,1,0,0,0,
140
- 416,417,7,10,0,0,417,86,1,0,0,0,418,419,7,11,0,0,419,88,1,0,0,0,420,421,
141
- 7,12,0,0,421,90,1,0,0,0,422,423,7,13,0,0,423,92,1,0,0,0,424,425,7,14,0,0,
142
- 425,94,1,0,0,0,426,427,7,15,0,0,427,96,1,0,0,0,428,429,7,16,0,0,429,98,1,
143
- 0,0,0,430,431,7,17,0,0,431,100,1,0,0,0,432,433,7,18,0,0,433,102,1,0,0,0,
144
- 434,435,7,19,0,0,435,104,1,0,0,0,436,437,7,20,0,0,437,106,1,0,0,0,438,439,
145
- 7,21,0,0,439,108,1,0,0,0,440,441,7,22,0,0,441,110,1,0,0,0,442,443,7,23,0,
146
- 0,443,112,1,0,0,0,444,445,7,24,0,0,445,114,1,0,0,0,446,447,7,25,0,0,447,
147
- 116,1,0,0,0,448,449,7,26,0,0,449,118,1,0,0,0,450,451,7,27,0,0,451,120,1,
148
- 0,0,0,452,454,7,28,0,0,453,452,1,0,0,0,454,455,1,0,0,0,455,453,1,0,0,0,455,
149
- 456,1,0,0,0,456,457,1,0,0,0,457,458,6,60,0,0,458,122,1,0,0,0,11,0,124,130,
150
- 133,140,143,148,152,157,161,455,1,6,0,0];
6
+ const serializedATN = [4,0,87,1159,6,-1,6,-1,2,0,7,0,2,1,7,1,2,2,7,2,2,3,
7
+ 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,
8
+ 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,
9
+ 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,
10
+ 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,
11
+ 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,
12
+ 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,
13
+ 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,
14
+ 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,
15
+ 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,
16
+ 2,70,7,70,2,71,7,71,2,72,7,72,2,73,7,73,2,74,7,74,2,75,7,75,2,76,7,76,2,
17
+ 77,7,77,2,78,7,78,2,79,7,79,2,80,7,80,2,81,7,81,2,82,7,82,2,83,7,83,2,84,
18
+ 7,84,2,85,7,85,2,86,7,86,2,87,7,87,2,88,7,88,2,89,7,89,2,90,7,90,2,91,7,
19
+ 91,2,92,7,92,2,93,7,93,2,94,7,94,2,95,7,95,2,96,7,96,2,97,7,97,2,98,7,98,
20
+ 2,99,7,99,2,100,7,100,2,101,7,101,2,102,7,102,2,103,7,103,2,104,7,104,2,
21
+ 105,7,105,2,106,7,106,2,107,7,107,2,108,7,108,2,109,7,109,2,110,7,110,2,
22
+ 111,7,111,2,112,7,112,2,113,7,113,2,114,7,114,2,115,7,115,2,116,7,116,2,
23
+ 117,7,117,2,118,7,118,1,0,3,0,242,8,0,1,0,1,0,1,0,1,0,3,0,248,8,0,1,0,3,
24
+ 0,251,8,0,1,1,1,1,1,1,5,1,256,8,1,10,1,12,1,259,9,1,3,1,261,8,1,1,2,4,2,
25
+ 264,8,2,11,2,12,2,265,1,3,1,3,3,3,270,8,3,1,3,4,3,273,8,3,11,3,12,3,274,
26
+ 1,4,1,4,3,4,279,8,4,1,5,1,5,1,6,1,6,1,7,1,7,1,8,1,8,1,9,1,9,1,10,1,10,1,
27
+ 10,1,10,1,10,1,10,1,11,1,11,1,11,1,11,1,11,1,11,1,11,1,11,1,11,1,11,1,11,
28
+ 1,12,1,12,1,12,1,12,1,12,1,12,1,12,1,12,1,12,1,12,1,12,1,13,1,13,1,13,1,
29
+ 13,1,13,1,13,1,13,1,13,1,14,1,14,1,14,1,14,1,14,1,14,1,14,1,14,1,14,1,15,
30
+ 1,15,1,15,1,15,1,15,1,15,1,15,1,15,1,15,1,15,1,15,1,16,1,16,1,16,1,16,1,
31
+ 16,1,16,1,16,1,16,1,16,1,16,1,16,1,16,1,16,1,16,1,16,1,16,1,17,1,17,1,17,
32
+ 1,17,1,17,1,17,1,17,1,17,1,17,1,17,1,17,1,17,1,17,1,18,1,18,1,18,1,18,1,
33
+ 18,1,18,1,18,1,18,1,18,1,18,1,18,1,18,1,18,1,18,1,18,1,18,1,18,1,18,1,18,
34
+ 1,19,1,19,1,19,1,19,1,19,1,19,1,19,1,19,1,19,1,19,1,19,1,19,1,19,1,19,1,
35
+ 19,1,20,1,20,1,20,1,20,1,20,1,20,1,20,1,21,1,21,1,21,1,21,1,21,1,21,1,21,
36
+ 1,21,1,21,1,21,1,21,1,21,1,21,1,21,1,21,1,22,1,22,1,22,1,22,1,22,1,22,1,
37
+ 22,1,22,1,22,1,22,1,22,1,22,1,22,1,22,1,22,1,22,1,23,1,23,1,23,1,23,1,23,
38
+ 1,23,1,23,1,23,1,23,1,23,1,23,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,
39
+ 24,1,25,1,25,1,25,1,25,1,25,1,25,1,25,1,25,1,25,1,25,1,25,1,25,1,26,1,26,
40
+ 1,26,1,26,1,26,1,26,1,26,1,26,1,26,1,26,1,26,1,26,1,26,1,26,1,27,1,27,1,
41
+ 27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,28,1,28,1,28,1,28,
42
+ 1,28,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,29,1,
43
+ 29,1,29,1,29,1,29,1,29,1,29,1,30,1,30,1,30,1,30,1,30,1,30,1,30,1,30,1,30,
44
+ 1,30,1,30,1,30,1,30,1,30,1,30,1,30,1,30,1,30,1,31,1,31,1,31,1,31,1,31,1,
45
+ 31,1,31,1,31,1,31,1,31,1,31,1,31,1,31,1,31,1,31,1,31,1,32,1,32,1,32,1,32,
46
+ 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,
47
+ 34,1,34,1,34,1,34,1,34,1,34,1,34,1,34,1,34,1,34,1,34,1,34,1,34,1,34,1,35,
48
+ 1,35,1,35,1,35,1,35,1,35,1,35,1,35,1,35,1,35,1,35,1,35,1,35,1,35,1,35,1,
49
+ 35,1,36,1,36,1,36,1,36,1,36,1,36,1,36,1,36,1,36,1,37,1,37,1,37,1,37,1,37,
50
+ 1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,
51
+ 37,1,38,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,39,
52
+ 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,
53
+ 40,1,40,1,40,1,41,1,41,1,41,1,41,1,41,1,41,1,41,1,41,1,41,1,41,1,41,1,42,
54
+ 1,42,1,42,1,42,1,42,1,42,1,42,1,42,1,42,1,43,1,43,1,43,1,43,1,43,1,43,1,
55
+ 43,1,43,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,
56
+ 1,45,1,45,1,45,1,45,1,46,1,46,1,46,1,46,1,46,1,46,1,46,1,47,1,47,1,47,1,
57
+ 47,1,47,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,
58
+ 1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,49,1,49,1,49,1,49,1,49,1,49,1,49,1,
59
+ 49,1,49,1,49,1,49,1,49,1,49,1,49,1,50,1,50,1,50,1,50,1,50,1,50,1,50,1,51,
60
+ 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,
61
+ 53,1,53,1,54,1,54,1,54,1,54,1,54,1,54,1,54,1,54,1,54,1,54,1,54,1,54,1,54,
62
+ 1,55,1,55,1,55,1,55,1,55,1,55,1,55,1,55,1,55,1,55,1,55,1,55,1,56,1,56,1,
63
+ 56,1,56,1,56,1,56,1,56,1,56,1,56,1,56,1,56,1,56,1,56,1,56,1,57,1,57,1,57,
64
+ 1,57,1,57,1,57,1,57,1,57,1,57,1,57,1,57,1,57,1,58,1,58,1,58,1,58,1,58,1,
65
+ 58,1,58,1,59,1,59,1,59,1,59,1,59,1,59,1,59,1,59,1,59,1,59,1,59,1,59,1,59,
66
+ 1,59,1,59,1,60,1,60,1,60,1,60,1,60,1,60,1,60,1,60,1,60,1,60,1,60,1,60,1,
67
+ 60,1,61,1,61,1,61,1,61,1,61,1,61,1,61,1,61,1,61,1,61,1,61,1,61,1,61,1,62,
68
+ 1,62,1,62,1,62,1,62,1,62,1,62,1,63,1,63,1,63,1,63,1,63,1,64,1,64,1,64,1,
69
+ 64,1,64,1,64,1,64,1,64,1,65,1,65,1,65,1,65,1,65,1,65,1,65,1,65,1,65,1,66,
70
+ 1,66,1,66,1,66,1,66,1,66,1,66,1,66,1,66,1,66,1,66,1,66,1,66,1,66,1,67,1,
71
+ 67,1,67,1,68,1,68,1,68,1,68,1,69,1,69,1,69,1,69,1,69,1,69,1,69,1,70,1,70,
72
+ 1,70,1,70,1,70,1,70,1,70,1,70,1,70,1,70,1,71,1,71,1,71,1,71,1,71,1,71,1,
73
+ 71,1,71,1,71,1,72,1,72,1,72,1,72,1,72,1,72,1,72,1,72,1,72,1,72,1,73,1,73,
74
+ 1,73,1,73,1,73,1,73,1,73,1,73,1,73,1,73,1,74,1,74,1,74,1,74,1,74,1,74,1,
75
+ 74,1,74,1,74,1,74,1,74,1,74,1,74,1,74,1,74,1,75,1,75,1,75,1,75,1,75,1,75,
76
+ 1,75,1,75,1,75,1,75,1,76,1,76,1,76,1,76,1,76,1,76,1,76,1,76,1,76,1,76,1,
77
+ 77,1,77,1,77,1,77,1,77,1,78,1,78,1,78,1,78,1,78,1,79,1,79,1,79,1,79,1,79,
78
+ 1,79,1,79,1,79,1,79,1,80,1,80,4,80,1039,8,80,11,80,12,80,1040,1,80,1,80,
79
+ 1,81,1,81,1,82,1,82,1,82,1,82,1,82,1,82,1,83,1,83,1,83,1,84,1,84,1,85,1,
80
+ 85,1,86,1,86,1,86,1,86,1,87,1,87,1,87,1,87,1,87,1,88,1,88,1,88,1,88,1,89,
81
+ 1,89,1,90,1,90,1,91,1,91,1,92,1,92,1,93,1,93,1,94,1,94,1,95,1,95,1,96,1,
82
+ 96,1,97,1,97,1,98,1,98,1,99,1,99,1,100,1,100,1,101,1,101,1,102,1,102,1,103,
83
+ 1,103,1,104,1,104,1,105,1,105,1,106,1,106,1,107,1,107,1,108,1,108,1,109,
84
+ 1,109,1,110,1,110,1,111,1,111,1,112,1,112,1,113,1,113,1,114,1,114,1,115,
85
+ 4,115,1126,8,115,11,115,12,115,1127,1,115,1,115,1,116,4,116,1133,8,116,11,
86
+ 116,12,116,1134,1,116,1,116,1,117,1,117,1,117,1,117,1,117,1,117,1,117,1,
87
+ 117,1,117,1,118,1,118,5,118,1150,8,118,10,118,12,118,1153,9,118,1,118,3,
88
+ 118,1156,8,118,1,118,1,118,0,0,119,2,1,4,2,6,3,8,0,10,0,12,0,14,0,16,4,18,
89
+ 5,20,6,22,7,24,8,26,9,28,10,30,11,32,12,34,13,36,14,38,15,40,16,42,17,44,
90
+ 18,46,19,48,20,50,21,52,22,54,23,56,24,58,25,60,26,62,27,64,28,66,29,68,
91
+ 30,70,31,72,32,74,33,76,34,78,35,80,36,82,37,84,38,86,39,88,40,90,41,92,
92
+ 42,94,43,96,44,98,45,100,46,102,47,104,48,106,49,108,50,110,51,112,52,114,
93
+ 53,116,54,118,55,120,56,122,57,124,58,126,59,128,60,130,61,132,62,134,63,
94
+ 136,64,138,65,140,66,142,67,144,68,146,69,148,70,150,71,152,72,154,73,156,
95
+ 74,158,75,160,76,162,77,164,0,166,78,168,79,170,80,172,81,174,82,176,83,
96
+ 178,84,180,0,182,0,184,0,186,0,188,0,190,0,192,0,194,0,196,0,198,0,200,0,
97
+ 202,0,204,0,206,0,208,0,210,0,212,0,214,0,216,0,218,0,220,0,222,0,224,0,
98
+ 226,0,228,0,230,0,232,85,234,86,236,0,238,87,2,0,1,32,2,0,69,69,101,101,
99
+ 2,0,43,43,45,45,1,0,49,57,7,0,32,32,39,41,45,46,48,57,65,90,95,95,97,122,
100
+ 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,70,
101
+ 70,102,102,2,0,71,71,103,103,2,0,72,72,104,104,2,0,73,73,105,105,2,0,74,
102
+ 74,106,106,2,0,75,75,107,107,2,0,76,76,108,108,2,0,77,77,109,109,2,0,78,
103
+ 78,110,110,2,0,79,79,111,111,2,0,80,80,112,112,2,0,81,81,113,113,2,0,82,
104
+ 82,114,114,2,0,83,83,115,115,2,0,84,84,116,116,2,0,85,85,117,117,2,0,86,
105
+ 86,118,118,2,0,87,87,119,119,2,0,88,88,120,120,2,0,89,89,121,121,2,0,90,
106
+ 90,122,122,3,0,9,10,13,13,32,32,5,0,9,10,13,13,32,32,40,41,44,44,2,0,40,
107
+ 41,44,44,1140,0,2,1,0,0,0,0,4,1,0,0,0,0,6,1,0,0,0,0,16,1,0,0,0,0,18,1,0,
108
+ 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,0,0,28,1,0,0,0,0,30,
109
+ 1,0,0,0,0,32,1,0,0,0,0,34,1,0,0,0,0,36,1,0,0,0,0,38,1,0,0,0,0,40,1,0,0,0,
110
+ 0,42,1,0,0,0,0,44,1,0,0,0,0,46,1,0,0,0,0,48,1,0,0,0,0,50,1,0,0,0,0,52,1,
111
+ 0,0,0,0,54,1,0,0,0,0,56,1,0,0,0,0,58,1,0,0,0,0,60,1,0,0,0,0,62,1,0,0,0,0,
112
+ 64,1,0,0,0,0,66,1,0,0,0,0,68,1,0,0,0,0,70,1,0,0,0,0,72,1,0,0,0,0,74,1,0,
113
+ 0,0,0,76,1,0,0,0,0,78,1,0,0,0,0,80,1,0,0,0,0,82,1,0,0,0,0,84,1,0,0,0,0,86,
114
+ 1,0,0,0,0,88,1,0,0,0,0,90,1,0,0,0,0,92,1,0,0,0,0,94,1,0,0,0,0,96,1,0,0,0,
115
+ 0,98,1,0,0,0,0,100,1,0,0,0,0,102,1,0,0,0,0,104,1,0,0,0,0,106,1,0,0,0,0,108,
116
+ 1,0,0,0,0,110,1,0,0,0,0,112,1,0,0,0,0,114,1,0,0,0,0,116,1,0,0,0,0,118,1,
117
+ 0,0,0,0,120,1,0,0,0,0,122,1,0,0,0,0,124,1,0,0,0,0,126,1,0,0,0,0,128,1,0,
118
+ 0,0,0,130,1,0,0,0,0,132,1,0,0,0,0,134,1,0,0,0,0,136,1,0,0,0,0,138,1,0,0,
119
+ 0,0,140,1,0,0,0,0,142,1,0,0,0,0,144,1,0,0,0,0,146,1,0,0,0,0,148,1,0,0,0,
120
+ 0,150,1,0,0,0,0,152,1,0,0,0,0,154,1,0,0,0,0,156,1,0,0,0,0,158,1,0,0,0,0,
121
+ 160,1,0,0,0,0,162,1,0,0,0,0,166,1,0,0,0,0,168,1,0,0,0,0,170,1,0,0,0,0,172,
122
+ 1,0,0,0,0,174,1,0,0,0,0,176,1,0,0,0,0,178,1,0,0,0,0,232,1,0,0,0,1,234,1,
123
+ 0,0,0,1,236,1,0,0,0,1,238,1,0,0,0,2,241,1,0,0,0,4,260,1,0,0,0,6,263,1,0,
124
+ 0,0,8,267,1,0,0,0,10,278,1,0,0,0,12,280,1,0,0,0,14,282,1,0,0,0,16,284,1,
125
+ 0,0,0,18,286,1,0,0,0,20,288,1,0,0,0,22,290,1,0,0,0,24,296,1,0,0,0,26,307,
126
+ 1,0,0,0,28,318,1,0,0,0,30,326,1,0,0,0,32,335,1,0,0,0,34,346,1,0,0,0,36,362,
127
+ 1,0,0,0,38,375,1,0,0,0,40,394,1,0,0,0,42,409,1,0,0,0,44,416,1,0,0,0,46,431,
128
+ 1,0,0,0,48,447,1,0,0,0,50,458,1,0,0,0,52,467,1,0,0,0,54,479,1,0,0,0,56,493,
129
+ 1,0,0,0,58,506,1,0,0,0,60,517,1,0,0,0,62,530,1,0,0,0,64,548,1,0,0,0,66,564,
130
+ 1,0,0,0,68,574,1,0,0,0,70,578,1,0,0,0,72,596,1,0,0,0,74,612,1,0,0,0,76,621,
131
+ 1,0,0,0,78,641,1,0,0,0,80,648,1,0,0,0,82,660,1,0,0,0,84,672,1,0,0,0,86,683,
132
+ 1,0,0,0,88,692,1,0,0,0,90,700,1,0,0,0,92,709,1,0,0,0,94,717,1,0,0,0,96,724,
133
+ 1,0,0,0,98,738,1,0,0,0,100,749,1,0,0,0,102,763,1,0,0,0,104,770,1,0,0,0,106,
134
+ 776,1,0,0,0,108,781,1,0,0,0,110,787,1,0,0,0,112,800,1,0,0,0,114,812,1,0,
135
+ 0,0,116,826,1,0,0,0,118,838,1,0,0,0,120,845,1,0,0,0,122,860,1,0,0,0,124,
136
+ 873,1,0,0,0,126,886,1,0,0,0,128,893,1,0,0,0,130,898,1,0,0,0,132,906,1,0,
137
+ 0,0,134,915,1,0,0,0,136,929,1,0,0,0,138,932,1,0,0,0,140,936,1,0,0,0,142,
138
+ 943,1,0,0,0,144,953,1,0,0,0,146,962,1,0,0,0,148,972,1,0,0,0,150,982,1,0,
139
+ 0,0,152,997,1,0,0,0,154,1007,1,0,0,0,156,1017,1,0,0,0,158,1022,1,0,0,0,160,
140
+ 1027,1,0,0,0,162,1036,1,0,0,0,164,1044,1,0,0,0,166,1046,1,0,0,0,168,1052,
141
+ 1,0,0,0,170,1055,1,0,0,0,172,1057,1,0,0,0,174,1059,1,0,0,0,176,1063,1,0,
142
+ 0,0,178,1068,1,0,0,0,180,1072,1,0,0,0,182,1074,1,0,0,0,184,1076,1,0,0,0,
143
+ 186,1078,1,0,0,0,188,1080,1,0,0,0,190,1082,1,0,0,0,192,1084,1,0,0,0,194,
144
+ 1086,1,0,0,0,196,1088,1,0,0,0,198,1090,1,0,0,0,200,1092,1,0,0,0,202,1094,
145
+ 1,0,0,0,204,1096,1,0,0,0,206,1098,1,0,0,0,208,1100,1,0,0,0,210,1102,1,0,
146
+ 0,0,212,1104,1,0,0,0,214,1106,1,0,0,0,216,1108,1,0,0,0,218,1110,1,0,0,0,
147
+ 220,1112,1,0,0,0,222,1114,1,0,0,0,224,1116,1,0,0,0,226,1118,1,0,0,0,228,
148
+ 1120,1,0,0,0,230,1122,1,0,0,0,232,1125,1,0,0,0,234,1132,1,0,0,0,236,1138,
149
+ 1,0,0,0,238,1147,1,0,0,0,240,242,5,45,0,0,241,240,1,0,0,0,241,242,1,0,0,
150
+ 0,242,243,1,0,0,0,243,247,3,4,1,0,244,245,3,14,6,0,245,246,3,6,2,0,246,248,
151
+ 1,0,0,0,247,244,1,0,0,0,247,248,1,0,0,0,248,250,1,0,0,0,249,251,3,8,3,0,
152
+ 250,249,1,0,0,0,250,251,1,0,0,0,251,3,1,0,0,0,252,261,5,48,0,0,253,257,3,
153
+ 12,5,0,254,256,3,10,4,0,255,254,1,0,0,0,256,259,1,0,0,0,257,255,1,0,0,0,
154
+ 257,258,1,0,0,0,258,261,1,0,0,0,259,257,1,0,0,0,260,252,1,0,0,0,260,253,
155
+ 1,0,0,0,261,5,1,0,0,0,262,264,3,10,4,0,263,262,1,0,0,0,264,265,1,0,0,0,265,
156
+ 263,1,0,0,0,265,266,1,0,0,0,266,7,1,0,0,0,267,269,7,0,0,0,268,270,7,1,0,
157
+ 0,269,268,1,0,0,0,269,270,1,0,0,0,270,272,1,0,0,0,271,273,3,10,4,0,272,271,
158
+ 1,0,0,0,273,274,1,0,0,0,274,272,1,0,0,0,274,275,1,0,0,0,275,9,1,0,0,0,276,
159
+ 279,5,48,0,0,277,279,3,12,5,0,278,276,1,0,0,0,278,277,1,0,0,0,279,11,1,0,
160
+ 0,0,280,281,7,2,0,0,281,13,1,0,0,0,282,283,5,46,0,0,283,15,1,0,0,0,284,285,
161
+ 5,44,0,0,285,17,1,0,0,0,286,287,5,40,0,0,287,19,1,0,0,0,288,289,5,41,0,0,
162
+ 289,21,1,0,0,0,290,291,3,210,104,0,291,292,3,208,103,0,292,293,3,196,97,
163
+ 0,293,294,3,206,102,0,294,295,3,218,108,0,295,23,1,0,0,0,296,297,3,202,100,
164
+ 0,297,298,3,196,97,0,298,299,3,206,102,0,299,300,3,188,93,0,300,301,3,216,
165
+ 107,0,301,302,3,218,108,0,302,303,3,214,106,0,303,304,3,196,97,0,304,305,
166
+ 3,206,102,0,305,306,3,192,95,0,306,25,1,0,0,0,307,308,3,202,100,0,308,309,
167
+ 3,196,97,0,309,310,3,206,102,0,310,311,3,188,93,0,311,312,3,180,89,0,312,
168
+ 313,3,214,106,0,313,314,3,214,106,0,314,315,3,196,97,0,315,316,3,206,102,
169
+ 0,316,317,3,192,95,0,317,27,1,0,0,0,318,319,3,210,104,0,319,320,3,208,103,
170
+ 0,320,321,3,202,100,0,321,322,3,228,113,0,322,323,3,192,95,0,323,324,3,208,
171
+ 103,0,324,325,3,206,102,0,325,29,1,0,0,0,326,327,3,218,108,0,327,328,3,214,
172
+ 106,0,328,329,3,196,97,0,329,330,3,180,89,0,330,331,3,206,102,0,331,332,
173
+ 3,192,95,0,332,333,3,202,100,0,333,334,3,188,93,0,334,31,1,0,0,0,335,336,
174
+ 3,204,101,0,336,337,3,220,109,0,337,338,3,202,100,0,338,339,3,218,108,0,
175
+ 339,340,3,196,97,0,340,341,3,210,104,0,341,342,3,208,103,0,342,343,3,196,
176
+ 97,0,343,344,3,206,102,0,344,345,3,218,108,0,345,33,1,0,0,0,346,347,3,204,
177
+ 101,0,347,348,3,220,109,0,348,349,3,202,100,0,349,350,3,218,108,0,350,351,
178
+ 3,196,97,0,351,352,3,202,100,0,352,353,3,196,97,0,353,354,3,206,102,0,354,
179
+ 355,3,188,93,0,355,356,3,216,107,0,356,357,3,218,108,0,357,358,3,214,106,
180
+ 0,358,359,3,196,97,0,359,360,3,206,102,0,360,361,3,192,95,0,361,35,1,0,0,
181
+ 0,362,363,3,204,101,0,363,364,3,220,109,0,364,365,3,202,100,0,365,366,3,
182
+ 218,108,0,366,367,3,196,97,0,367,368,3,210,104,0,368,369,3,208,103,0,369,
183
+ 370,3,202,100,0,370,371,3,228,113,0,371,372,3,192,95,0,372,373,3,208,103,
184
+ 0,373,374,3,206,102,0,374,37,1,0,0,0,375,376,3,192,95,0,376,377,3,188,93,
185
+ 0,377,378,3,208,103,0,378,379,3,204,101,0,379,380,3,188,93,0,380,381,3,218,
186
+ 108,0,381,382,3,214,106,0,382,383,3,228,113,0,383,384,3,184,91,0,384,385,
187
+ 3,208,103,0,385,386,3,202,100,0,386,387,3,202,100,0,387,388,3,188,93,0,388,
188
+ 389,3,184,91,0,389,390,3,218,108,0,390,391,3,196,97,0,391,392,3,208,103,
189
+ 0,392,393,3,206,102,0,393,39,1,0,0,0,394,395,3,184,91,0,395,396,3,196,97,
190
+ 0,396,397,3,214,106,0,397,398,3,184,91,0,398,399,3,220,109,0,399,400,3,202,
191
+ 100,0,400,401,3,180,89,0,401,402,3,214,106,0,402,403,3,216,107,0,403,404,
192
+ 3,218,108,0,404,405,3,214,106,0,405,406,3,196,97,0,406,407,3,206,102,0,407,
193
+ 408,3,192,95,0,408,41,1,0,0,0,409,410,3,184,91,0,410,411,3,196,97,0,411,
194
+ 412,3,214,106,0,412,413,3,184,91,0,413,414,3,202,100,0,414,415,3,188,93,
195
+ 0,415,43,1,0,0,0,416,417,3,192,95,0,417,418,3,188,93,0,418,419,3,208,103,
196
+ 0,419,420,3,186,92,0,420,421,3,188,93,0,421,422,3,216,107,0,422,423,3,196,
197
+ 97,0,423,424,3,184,91,0,424,425,3,216,107,0,425,426,3,218,108,0,426,427,
198
+ 3,214,106,0,427,428,3,196,97,0,428,429,3,206,102,0,429,430,3,192,95,0,430,
199
+ 45,1,0,0,0,431,432,3,188,93,0,432,433,3,202,100,0,433,434,3,202,100,0,434,
200
+ 435,3,196,97,0,435,436,3,210,104,0,436,437,3,218,108,0,437,438,3,196,97,
201
+ 0,438,439,3,184,91,0,439,440,3,180,89,0,440,441,3,202,100,0,441,442,3,184,
202
+ 91,0,442,443,3,220,109,0,443,444,3,214,106,0,444,445,3,222,110,0,445,446,
203
+ 3,188,93,0,446,47,1,0,0,0,447,448,3,206,102,0,448,449,3,220,109,0,449,450,
204
+ 3,214,106,0,450,451,3,182,90,0,451,452,3,216,107,0,452,453,3,184,91,0,453,
205
+ 454,3,220,109,0,454,455,3,214,106,0,455,456,3,222,110,0,456,457,3,188,93,
206
+ 0,457,49,1,0,0,0,458,459,3,184,91,0,459,460,3,202,100,0,460,461,3,208,103,
207
+ 0,461,462,3,218,108,0,462,463,3,194,96,0,463,464,3,208,103,0,464,465,3,196,
208
+ 97,0,465,466,3,186,92,0,466,51,1,0,0,0,467,468,3,216,107,0,468,469,3,210,
209
+ 104,0,469,470,3,196,97,0,470,471,3,214,106,0,471,472,3,180,89,0,472,473,
210
+ 3,202,100,0,473,474,3,184,91,0,474,475,3,220,109,0,475,476,3,214,106,0,476,
211
+ 477,3,222,110,0,477,478,3,188,93,0,478,53,1,0,0,0,479,480,3,184,91,0,480,
212
+ 481,3,208,103,0,481,482,3,204,101,0,482,483,3,210,104,0,483,484,3,208,103,
213
+ 0,484,485,3,220,109,0,485,486,3,206,102,0,486,487,3,186,92,0,487,488,3,184,
214
+ 91,0,488,489,3,220,109,0,489,490,3,214,106,0,490,491,3,222,110,0,491,492,
215
+ 3,188,93,0,492,55,1,0,0,0,493,494,3,184,91,0,494,495,3,220,109,0,495,496,
216
+ 3,214,106,0,496,497,3,222,110,0,497,498,3,188,93,0,498,499,3,210,104,0,499,
217
+ 500,3,208,103,0,500,501,3,202,100,0,501,502,3,228,113,0,502,503,3,192,95,
218
+ 0,503,504,3,208,103,0,504,505,3,206,102,0,505,57,1,0,0,0,506,507,3,204,101,
219
+ 0,507,508,3,220,109,0,508,509,3,202,100,0,509,510,3,218,108,0,510,511,3,
220
+ 196,97,0,511,512,3,184,91,0,512,513,3,220,109,0,513,514,3,214,106,0,514,
221
+ 515,3,222,110,0,515,516,3,188,93,0,516,59,1,0,0,0,517,518,3,204,101,0,518,
222
+ 519,3,220,109,0,519,520,3,202,100,0,520,521,3,218,108,0,521,522,3,196,97,
223
+ 0,522,523,3,216,107,0,523,524,3,220,109,0,524,525,3,214,106,0,525,526,3,
224
+ 190,94,0,526,527,3,180,89,0,527,528,3,184,91,0,528,529,3,188,93,0,529,61,
225
+ 1,0,0,0,530,531,3,210,104,0,531,532,3,208,103,0,532,533,3,202,100,0,533,
226
+ 534,3,228,113,0,534,535,3,194,96,0,535,536,3,188,93,0,536,537,3,186,92,0,
227
+ 537,538,3,214,106,0,538,539,3,180,89,0,539,540,3,202,100,0,540,541,3,216,
228
+ 107,0,541,542,3,220,109,0,542,543,3,214,106,0,543,544,3,190,94,0,544,545,
229
+ 3,180,89,0,545,546,3,184,91,0,546,547,3,188,93,0,547,63,1,0,0,0,548,549,
230
+ 3,184,91,0,549,550,3,208,103,0,550,551,3,204,101,0,551,552,3,210,104,0,552,
231
+ 553,3,208,103,0,553,554,3,220,109,0,554,555,3,206,102,0,555,556,3,186,92,
232
+ 0,556,557,3,216,107,0,557,558,3,220,109,0,558,559,3,214,106,0,559,560,3,
233
+ 190,94,0,560,561,3,180,89,0,561,562,3,184,91,0,562,563,3,188,93,0,563,65,
234
+ 1,0,0,0,564,565,3,182,90,0,565,566,3,214,106,0,566,567,3,188,93,0,567,568,
235
+ 3,210,104,0,568,569,3,216,107,0,569,570,3,208,103,0,570,571,3,202,100,0,
236
+ 571,572,3,196,97,0,572,573,3,186,92,0,573,67,1,0,0,0,574,575,3,218,108,0,
237
+ 575,576,3,196,97,0,576,577,3,206,102,0,577,69,1,0,0,0,578,579,3,214,106,
238
+ 0,579,580,3,188,93,0,580,581,3,190,94,0,581,582,3,188,93,0,582,583,3,214,
239
+ 106,0,583,584,3,188,93,0,584,585,3,206,102,0,585,586,3,184,91,0,586,587,
240
+ 3,188,93,0,587,588,3,202,100,0,588,589,3,208,103,0,589,590,3,184,91,0,590,
241
+ 591,3,180,89,0,591,592,3,218,108,0,592,593,3,196,97,0,593,594,3,208,103,
242
+ 0,594,595,3,206,102,0,595,71,1,0,0,0,596,597,3,180,89,0,597,598,3,190,94,
243
+ 0,598,599,3,190,94,0,599,600,3,196,97,0,600,601,3,206,102,0,601,602,3,188,
244
+ 93,0,602,603,3,210,104,0,603,604,3,202,100,0,604,605,3,180,89,0,605,606,
245
+ 3,184,91,0,606,607,3,188,93,0,607,608,3,204,101,0,608,609,3,188,93,0,609,
246
+ 610,3,206,102,0,610,611,3,218,108,0,611,73,1,0,0,0,612,613,3,202,100,0,613,
247
+ 614,3,208,103,0,614,615,3,184,91,0,615,616,3,180,89,0,616,617,3,218,108,
248
+ 0,617,618,3,196,97,0,618,619,3,208,103,0,619,620,3,206,102,0,620,75,1,0,
249
+ 0,0,621,622,3,214,106,0,622,623,3,188,93,0,623,624,3,190,94,0,624,625,3,
250
+ 188,93,0,625,626,3,214,106,0,626,627,3,188,93,0,627,628,3,206,102,0,628,
251
+ 629,3,184,91,0,629,630,3,188,93,0,630,631,3,186,92,0,631,632,3,196,97,0,
252
+ 632,633,3,214,106,0,633,634,3,188,93,0,634,635,3,184,91,0,635,636,3,218,
253
+ 108,0,636,637,3,196,97,0,637,638,3,208,103,0,638,639,3,206,102,0,639,640,
254
+ 3,216,107,0,640,77,1,0,0,0,641,642,3,222,110,0,642,643,3,188,93,0,643,644,
255
+ 3,184,91,0,644,645,3,218,108,0,645,646,3,208,103,0,646,647,3,214,106,0,647,
256
+ 79,1,0,0,0,648,649,3,220,109,0,649,650,3,180,89,0,650,651,3,226,112,0,651,
257
+ 652,3,196,97,0,652,653,3,216,107,0,653,654,3,202,100,0,654,655,3,188,93,
258
+ 0,655,656,3,206,102,0,656,657,3,192,95,0,657,658,3,218,108,0,658,659,3,194,
259
+ 96,0,659,81,1,0,0,0,660,661,3,222,110,0,661,662,3,180,89,0,662,663,3,226,
260
+ 112,0,663,664,3,196,97,0,664,665,3,216,107,0,665,666,3,202,100,0,666,667,
261
+ 3,188,93,0,667,668,3,206,102,0,668,669,3,192,95,0,669,670,3,218,108,0,670,
262
+ 671,3,194,96,0,671,83,1,0,0,0,672,673,3,216,107,0,673,674,3,218,108,0,674,
263
+ 675,3,180,89,0,675,676,3,214,106,0,676,677,3,218,108,0,677,678,3,180,89,
264
+ 0,678,679,3,206,102,0,679,680,3,192,95,0,680,681,3,202,100,0,681,682,3,188,
265
+ 93,0,682,85,1,0,0,0,683,684,3,188,93,0,684,685,3,206,102,0,685,686,3,186,
266
+ 92,0,686,687,3,180,89,0,687,688,3,206,102,0,688,689,3,192,95,0,689,690,3,
267
+ 202,100,0,690,691,3,188,93,0,691,87,1,0,0,0,692,693,3,186,92,0,693,694,3,
268
+ 188,93,0,694,695,3,192,95,0,695,696,3,214,106,0,696,697,3,188,93,0,697,698,
269
+ 3,188,93,0,698,699,3,216,107,0,699,89,1,0,0,0,700,701,3,192,95,0,701,702,
270
+ 3,214,106,0,702,703,3,180,89,0,703,704,3,186,92,0,704,705,3,196,97,0,705,
271
+ 706,3,180,89,0,706,707,3,206,102,0,707,708,3,216,107,0,708,91,1,0,0,0,709,
272
+ 710,3,214,106,0,710,711,3,180,89,0,711,712,3,186,92,0,712,713,3,196,97,0,
273
+ 713,714,3,180,89,0,714,715,3,206,102,0,715,716,3,216,107,0,716,93,1,0,0,
274
+ 0,717,718,3,186,92,0,718,719,3,188,93,0,719,720,3,192,95,0,720,721,3,214,
275
+ 106,0,721,722,3,188,93,0,722,723,3,188,93,0,723,95,1,0,0,0,724,725,3,184,
276
+ 91,0,725,726,3,208,103,0,726,727,3,206,102,0,727,728,3,218,108,0,728,729,
277
+ 3,214,106,0,729,730,3,208,103,0,730,731,3,202,100,0,731,732,3,210,104,0,
278
+ 732,733,3,208,103,0,733,734,3,196,97,0,734,735,3,206,102,0,735,736,3,218,
279
+ 108,0,736,737,3,216,107,0,737,97,1,0,0,0,738,739,3,206,102,0,739,740,3,220,
280
+ 109,0,740,741,3,214,106,0,741,742,3,182,90,0,742,743,3,216,107,0,743,744,
281
+ 3,210,104,0,744,745,3,208,103,0,745,746,3,196,97,0,746,747,3,206,102,0,747,
282
+ 748,3,218,108,0,748,99,1,0,0,0,749,750,3,224,111,0,750,751,3,188,93,0,751,
283
+ 752,3,196,97,0,752,753,3,192,95,0,753,754,3,194,96,0,754,755,3,218,108,0,
284
+ 755,756,3,188,93,0,756,757,3,186,92,0,757,758,3,210,104,0,758,759,3,208,
285
+ 103,0,759,760,3,196,97,0,760,761,3,206,102,0,761,762,3,218,108,0,762,101,
286
+ 1,0,0,0,763,764,3,224,111,0,764,765,3,188,93,0,765,766,3,196,97,0,766,767,
287
+ 3,192,95,0,767,768,3,194,96,0,768,769,3,218,108,0,769,103,1,0,0,0,770,771,
288
+ 3,200,99,0,771,772,3,206,102,0,772,773,3,208,103,0,773,774,3,218,108,0,774,
289
+ 775,3,216,107,0,775,105,1,0,0,0,776,777,3,200,99,0,777,778,3,206,102,0,778,
290
+ 779,3,208,103,0,779,780,3,218,108,0,780,107,1,0,0,0,781,782,3,222,110,0,
291
+ 782,783,3,180,89,0,783,784,3,202,100,0,784,785,3,220,109,0,785,786,3,188,
292
+ 93,0,786,109,1,0,0,0,787,788,3,204,101,0,788,789,3,220,109,0,789,790,3,202,
293
+ 100,0,790,791,3,218,108,0,791,792,3,196,97,0,792,793,3,210,104,0,793,794,
294
+ 3,202,100,0,794,795,3,196,97,0,795,796,3,184,91,0,796,797,3,196,97,0,797,
295
+ 798,3,218,108,0,798,799,3,228,113,0,799,111,1,0,0,0,800,801,3,216,107,0,
296
+ 801,802,3,184,91,0,802,803,3,180,89,0,803,804,3,202,100,0,804,805,3,188,
297
+ 93,0,805,806,3,190,94,0,806,807,3,180,89,0,807,808,3,184,91,0,808,809,3,
298
+ 218,108,0,809,810,3,208,103,0,810,811,3,214,106,0,811,113,1,0,0,0,812,813,
299
+ 3,216,107,0,813,814,3,218,108,0,814,815,3,180,89,0,815,816,3,214,106,0,816,
300
+ 817,3,218,108,0,817,818,3,186,92,0,818,819,3,196,97,0,819,820,3,216,107,
301
+ 0,820,821,3,218,108,0,821,822,3,180,89,0,822,823,3,206,102,0,823,824,3,184,
302
+ 91,0,824,825,3,188,93,0,825,115,1,0,0,0,826,827,3,188,93,0,827,828,3,206,
303
+ 102,0,828,829,3,186,92,0,829,830,3,186,92,0,830,831,3,196,97,0,831,832,3,
304
+ 216,107,0,832,833,3,218,108,0,833,834,3,180,89,0,834,835,3,206,102,0,835,
305
+ 836,3,184,91,0,836,837,3,188,93,0,837,117,1,0,0,0,838,839,3,202,100,0,839,
306
+ 840,3,188,93,0,840,841,3,206,102,0,841,842,3,192,95,0,842,843,3,218,108,
307
+ 0,843,844,3,194,96,0,844,119,1,0,0,0,845,846,3,216,107,0,846,847,3,218,108,
308
+ 0,847,848,3,180,89,0,848,849,3,214,106,0,849,850,3,218,108,0,850,851,3,184,
309
+ 91,0,851,852,3,220,109,0,852,853,3,214,106,0,853,854,3,222,110,0,854,855,
310
+ 3,180,89,0,855,856,3,218,108,0,856,857,3,220,109,0,857,858,3,214,106,0,858,
311
+ 859,3,188,93,0,859,121,1,0,0,0,860,861,3,188,93,0,861,862,3,206,102,0,862,
312
+ 863,3,186,92,0,863,864,3,184,91,0,864,865,3,220,109,0,865,866,3,214,106,
313
+ 0,866,867,3,222,110,0,867,868,3,180,89,0,868,869,3,218,108,0,869,870,3,220,
314
+ 109,0,870,871,3,214,106,0,871,872,3,188,93,0,872,123,1,0,0,0,873,874,3,216,
315
+ 107,0,874,875,3,210,104,0,875,876,3,196,97,0,876,877,3,214,106,0,877,878,
316
+ 3,180,89,0,878,879,3,202,100,0,879,880,3,218,108,0,880,881,3,228,113,0,881,
317
+ 882,3,210,104,0,882,883,3,188,93,0,883,884,1,0,0,0,884,885,6,61,0,0,885,
318
+ 125,1,0,0,0,886,887,3,216,107,0,887,888,3,218,108,0,888,889,3,180,89,0,889,
319
+ 890,3,214,106,0,890,891,3,218,108,0,891,892,3,204,101,0,892,127,1,0,0,0,
320
+ 893,894,3,188,93,0,894,895,3,206,102,0,895,896,3,186,92,0,896,897,3,204,
321
+ 101,0,897,129,1,0,0,0,898,899,3,210,104,0,899,900,3,180,89,0,900,901,3,218,
322
+ 108,0,901,902,3,184,91,0,902,903,3,194,96,0,903,904,3,188,93,0,904,905,3,
323
+ 216,107,0,905,131,1,0,0,0,906,907,3,188,93,0,907,908,3,202,100,0,908,909,
324
+ 3,188,93,0,909,910,3,204,101,0,910,911,3,188,93,0,911,912,3,206,102,0,912,
325
+ 913,3,218,108,0,913,914,3,216,107,0,914,133,1,0,0,0,915,916,3,204,101,0,
326
+ 916,917,3,180,89,0,917,918,3,226,112,0,918,919,3,216,107,0,919,920,3,196,
327
+ 97,0,920,921,3,186,92,0,921,922,3,188,93,0,922,923,3,202,100,0,923,924,3,
328
+ 188,93,0,924,925,3,206,102,0,925,926,3,192,95,0,926,927,3,218,108,0,927,
329
+ 928,3,194,96,0,928,135,1,0,0,0,929,930,3,196,97,0,930,931,3,186,92,0,931,
330
+ 137,1,0,0,0,932,933,3,218,108,0,933,934,3,180,89,0,934,935,3,192,95,0,935,
331
+ 139,1,0,0,0,936,937,3,210,104,0,937,938,3,208,103,0,938,939,3,196,97,0,939,
332
+ 940,3,206,102,0,940,941,3,218,108,0,941,942,3,216,107,0,942,141,1,0,0,0,
333
+ 943,944,3,192,95,0,944,945,3,214,106,0,945,946,3,208,103,0,946,947,3,220,
334
+ 109,0,947,948,3,210,104,0,948,949,3,216,107,0,949,950,3,210,104,0,950,951,
335
+ 3,208,103,0,951,952,3,218,108,0,952,143,1,0,0,0,953,954,3,182,90,0,954,955,
336
+ 3,208,103,0,955,956,3,220,109,0,956,957,3,206,102,0,957,958,3,186,92,0,958,
337
+ 959,3,180,89,0,959,960,3,214,106,0,960,961,3,228,113,0,961,145,1,0,0,0,962,
338
+ 963,3,182,90,0,963,964,3,214,106,0,964,965,3,188,93,0,965,966,3,180,89,0,
339
+ 966,967,3,200,99,0,967,968,3,202,100,0,968,969,3,196,97,0,969,970,3,206,
340
+ 102,0,970,971,3,188,93,0,971,147,1,0,0,0,972,973,3,216,107,0,973,974,3,208,
341
+ 103,0,974,975,3,190,94,0,975,976,3,218,108,0,976,977,3,182,90,0,977,978,
342
+ 3,214,106,0,978,979,3,188,93,0,979,980,3,180,89,0,980,981,3,200,99,0,981,
343
+ 149,1,0,0,0,982,983,3,184,91,0,983,984,3,208,103,0,984,985,3,206,102,0,985,
344
+ 986,3,218,108,0,986,987,3,214,106,0,987,988,3,208,103,0,988,989,3,202,100,
345
+ 0,989,990,3,184,91,0,990,991,3,208,103,0,991,992,3,206,102,0,992,993,3,218,
346
+ 108,0,993,994,3,208,103,0,994,995,3,220,109,0,995,996,3,214,106,0,996,151,
347
+ 1,0,0,0,997,998,3,182,90,0,998,999,3,214,106,0,999,1000,3,188,93,0,1000,
348
+ 1001,3,180,89,0,1001,1002,3,200,99,0,1002,1003,3,222,110,0,1003,1004,3,208,
349
+ 103,0,1004,1005,3,196,97,0,1005,1006,3,186,92,0,1006,153,1,0,0,0,1007,1008,
350
+ 3,186,92,0,1008,1009,3,214,106,0,1009,1010,3,180,89,0,1010,1011,3,210,104,
351
+ 0,1011,1012,3,188,93,0,1012,1013,3,222,110,0,1013,1014,3,208,103,0,1014,
352
+ 1015,3,196,97,0,1015,1016,3,186,92,0,1016,155,1,0,0,0,1017,1018,3,222,110,
353
+ 0,1018,1019,3,208,103,0,1019,1020,3,196,97,0,1020,1021,3,186,92,0,1021,157,
354
+ 1,0,0,0,1022,1023,3,194,96,0,1023,1024,3,208,103,0,1024,1025,3,202,100,0,
355
+ 1025,1026,3,188,93,0,1026,159,1,0,0,0,1027,1028,3,216,107,0,1028,1029,3,
356
+ 218,108,0,1029,1030,3,208,103,0,1030,1031,3,210,104,0,1031,1032,3,202,100,
357
+ 0,1032,1033,3,196,97,0,1033,1034,3,206,102,0,1034,1035,3,188,93,0,1035,161,
358
+ 1,0,0,0,1036,1038,5,34,0,0,1037,1039,3,164,81,0,1038,1037,1,0,0,0,1039,1040,
359
+ 1,0,0,0,1040,1038,1,0,0,0,1040,1041,1,0,0,0,1041,1042,1,0,0,0,1042,1043,
360
+ 5,34,0,0,1043,163,1,0,0,0,1044,1045,7,3,0,0,1045,165,1,0,0,0,1046,1047,3,
361
+ 188,93,0,1047,1048,3,204,101,0,1048,1049,3,210,104,0,1049,1050,3,218,108,
362
+ 0,1050,1051,3,228,113,0,1051,167,1,0,0,0,1052,1053,3,230,114,0,1053,1054,
363
+ 3,204,101,0,1054,169,1,0,0,0,1055,1056,3,230,114,0,1056,171,1,0,0,0,1057,
364
+ 1058,3,204,101,0,1058,173,1,0,0,0,1059,1060,3,206,102,0,1060,1061,3,180,
365
+ 89,0,1061,1062,3,206,102,0,1062,175,1,0,0,0,1063,1064,5,45,0,0,1064,1065,
366
+ 3,196,97,0,1065,1066,3,206,102,0,1066,1067,3,190,94,0,1067,177,1,0,0,0,1068,
367
+ 1069,3,196,97,0,1069,1070,3,206,102,0,1070,1071,3,190,94,0,1071,179,1,0,
368
+ 0,0,1072,1073,7,4,0,0,1073,181,1,0,0,0,1074,1075,7,5,0,0,1075,183,1,0,0,
369
+ 0,1076,1077,7,6,0,0,1077,185,1,0,0,0,1078,1079,7,7,0,0,1079,187,1,0,0,0,
370
+ 1080,1081,7,0,0,0,1081,189,1,0,0,0,1082,1083,7,8,0,0,1083,191,1,0,0,0,1084,
371
+ 1085,7,9,0,0,1085,193,1,0,0,0,1086,1087,7,10,0,0,1087,195,1,0,0,0,1088,1089,
372
+ 7,11,0,0,1089,197,1,0,0,0,1090,1091,7,12,0,0,1091,199,1,0,0,0,1092,1093,
373
+ 7,13,0,0,1093,201,1,0,0,0,1094,1095,7,14,0,0,1095,203,1,0,0,0,1096,1097,
374
+ 7,15,0,0,1097,205,1,0,0,0,1098,1099,7,16,0,0,1099,207,1,0,0,0,1100,1101,
375
+ 7,17,0,0,1101,209,1,0,0,0,1102,1103,7,18,0,0,1103,211,1,0,0,0,1104,1105,
376
+ 7,19,0,0,1105,213,1,0,0,0,1106,1107,7,20,0,0,1107,215,1,0,0,0,1108,1109,
377
+ 7,21,0,0,1109,217,1,0,0,0,1110,1111,7,22,0,0,1111,219,1,0,0,0,1112,1113,
378
+ 7,23,0,0,1113,221,1,0,0,0,1114,1115,7,24,0,0,1115,223,1,0,0,0,1116,1117,
379
+ 7,25,0,0,1117,225,1,0,0,0,1118,1119,7,26,0,0,1119,227,1,0,0,0,1120,1121,
380
+ 7,27,0,0,1121,229,1,0,0,0,1122,1123,7,28,0,0,1123,231,1,0,0,0,1124,1126,
381
+ 7,29,0,0,1125,1124,1,0,0,0,1126,1127,1,0,0,0,1127,1125,1,0,0,0,1127,1128,
382
+ 1,0,0,0,1128,1129,1,0,0,0,1129,1130,6,115,1,0,1130,233,1,0,0,0,1131,1133,
383
+ 7,29,0,0,1132,1131,1,0,0,0,1133,1134,1,0,0,0,1134,1132,1,0,0,0,1134,1135,
384
+ 1,0,0,0,1135,1136,1,0,0,0,1136,1137,6,116,1,0,1137,235,1,0,0,0,1138,1139,
385
+ 3,188,93,0,1139,1140,3,204,101,0,1140,1141,3,210,104,0,1141,1142,3,218,108,
386
+ 0,1142,1143,3,228,113,0,1143,1144,1,0,0,0,1144,1145,6,117,2,0,1145,1146,
387
+ 6,117,3,0,1146,237,1,0,0,0,1147,1155,8,30,0,0,1148,1150,8,31,0,0,1149,1148,
388
+ 1,0,0,0,1150,1153,1,0,0,0,1151,1149,1,0,0,0,1151,1152,1,0,0,0,1152,1154,
389
+ 1,0,0,0,1153,1151,1,0,0,0,1154,1156,8,30,0,0,1155,1151,1,0,0,0,1155,1156,
390
+ 1,0,0,0,1156,1157,1,0,0,0,1157,1158,6,118,3,0,1158,239,1,0,0,0,16,0,1,241,
391
+ 247,250,257,260,265,269,274,278,1040,1127,1134,1151,1155,4,5,1,0,6,0,0,7,
392
+ 78,0,4,0,0];
151
393
 
152
394
 
153
395
  const atn = new antlr4.atn.ATNDeserializer().deserialize(serializedATN);
@@ -156,28 +398,56 @@ const decisionsToDFA = atn.decisionToState.map( (ds, index) => new antlr4.dfa.DF
156
398
 
157
399
  export default class wktLexer extends antlr4.Lexer {
158
400
 
159
- static grammarFileName = "wkt.g4";
401
+ static grammarFileName = "wktLexer.g4";
160
402
  static channelNames = [ "DEFAULT_TOKEN_CHANNEL", "HIDDEN" ];
161
- static modeNames = [ "DEFAULT_MODE" ];
403
+ static modeNames = [ "DEFAULT_MODE", "SPIRAL_TYPE_MODE" ];
162
404
  static literalNames = [ null, null, null, null, "','", "'('", "')'" ];
163
405
  static symbolicNames = [ null, "DECIMAL", "INTEGERPART", "DECIMALPART",
164
406
  "COMMA", "LPAR", "RPAR", "POINT", "LINESTRING",
165
407
  "LINEARRING", "POLYGON", "TRIANGLE", "MULTIPOINT",
166
408
  "MULTILINESTRING", "MULTIPOLYGON", "GEOMETRYCOLLECTION",
167
- "CIRCULARSTRING", "COMPOUNDCURVE", "CLOTHOID",
168
- "CURVEPOLYGON", "MULTICURVE", "MULTISURFACE",
169
- "POLYHEDRALSURFACE", "TIN", "EMPTY_", "ZM_", "Z_",
170
- "M_", "NAN_", "NEG_INF_", "INF_", "WS" ];
409
+ "CIRCULARSTRING", "CIRCLE", "GEODESICSTRING",
410
+ "ELLIPTICALCURVE", "NURBSCURVE", "CLOTHOID", "SPIRALCURVE",
411
+ "COMPOUNDCURVE", "CURVEPOLYGON", "MULTICURVE",
412
+ "MULTISURFACE", "POLYHEDRALSURFACE", "COMPOUNDSURFACE",
413
+ "BREPSOLID", "TIN", "REFERENCELOCATION", "AFFINEPLACEMENT",
414
+ "LOCATION", "REFERENCEDIRECTIONS", "VECTOR", "UAXISLENGTH",
415
+ "VAXISLENGTH", "STARTANGLE", "ENDANGLE", "DEGREES",
416
+ "GRADIANS", "RADIANS", "DEGREE", "CONTROLPOINTS",
417
+ "NURBSPOINT", "WEIGHTEDPOINT", "WEIGHT", "KNOTS",
418
+ "KNOT", "VALUE", "MULTIPLICITY", "SCALEFACTOR",
419
+ "STARTDISTANCE", "ENDDISTANCE", "LENGTH", "STARTCURVATURE",
420
+ "ENDCURVATURE", "SPIRALTYPE", "STARTM", "ENDM",
421
+ "PATCHES", "ELEMENTS", "MAXSIDELENGTH", "ID",
422
+ "TAG", "POINTS", "GROUPSPOT", "BOUNDARY", "BREAKLINE",
423
+ "SOFTBREAK", "CONTROLCONTOUR", "BREAKVOID", "DRAPEVOID",
424
+ "VOID", "HOLE", "STOPLINE", "QUOTED_LETTERS",
425
+ "EMPTY_", "ZM_", "Z_", "M_", "NAN_", "NEG_INF_",
426
+ "INF_", "WS", "SPIRAL_TYPE_WS", "SPIRAL_TYPE_NAME" ];
171
427
  static ruleNames = [ "DECIMAL", "INTEGERPART", "DECIMALPART", "EXPONENT",
172
428
  "DIGIT", "NONZERODIGIT", "DOT", "COMMA", "LPAR", "RPAR",
173
429
  "POINT", "LINESTRING", "LINEARRING", "POLYGON", "TRIANGLE",
174
430
  "MULTIPOINT", "MULTILINESTRING", "MULTIPOLYGON", "GEOMETRYCOLLECTION",
175
- "CIRCULARSTRING", "COMPOUNDCURVE", "CLOTHOID", "CURVEPOLYGON",
176
- "MULTICURVE", "MULTISURFACE", "POLYHEDRALSURFACE",
177
- "TIN", "EMPTY_", "ZM_", "Z_", "M_", "NAN_", "NEG_INF_",
178
- "INF_", "A", "B", "C", "D", "E", "F", "G", "H", "I",
179
- "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S",
180
- "T", "U", "V", "W", "X", "Y", "Z", "WS" ];
431
+ "CIRCULARSTRING", "CIRCLE", "GEODESICSTRING", "ELLIPTICALCURVE",
432
+ "NURBSCURVE", "CLOTHOID", "SPIRALCURVE", "COMPOUNDCURVE",
433
+ "CURVEPOLYGON", "MULTICURVE", "MULTISURFACE", "POLYHEDRALSURFACE",
434
+ "COMPOUNDSURFACE", "BREPSOLID", "TIN", "REFERENCELOCATION",
435
+ "AFFINEPLACEMENT", "LOCATION", "REFERENCEDIRECTIONS",
436
+ "VECTOR", "UAXISLENGTH", "VAXISLENGTH", "STARTANGLE",
437
+ "ENDANGLE", "DEGREES", "GRADIANS", "RADIANS", "DEGREE",
438
+ "CONTROLPOINTS", "NURBSPOINT", "WEIGHTEDPOINT", "WEIGHT",
439
+ "KNOTS", "KNOT", "VALUE", "MULTIPLICITY", "SCALEFACTOR",
440
+ "STARTDISTANCE", "ENDDISTANCE", "LENGTH", "STARTCURVATURE",
441
+ "ENDCURVATURE", "SPIRALTYPE", "STARTM", "ENDM", "PATCHES",
442
+ "ELEMENTS", "MAXSIDELENGTH", "ID", "TAG", "POINTS",
443
+ "GROUPSPOT", "BOUNDARY", "BREAKLINE", "SOFTBREAK",
444
+ "CONTROLCONTOUR", "BREAKVOID", "DRAPEVOID", "VOID",
445
+ "HOLE", "STOPLINE", "QUOTED_LETTERS", "LETTER", "EMPTY_",
446
+ "ZM_", "Z_", "M_", "NAN_", "NEG_INF_", "INF_", "A",
447
+ "B", "C", "D", "E", "F", "G", "H", "I", "J", "K",
448
+ "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U",
449
+ "V", "W", "X", "Y", "Z", "WS", "SPIRAL_TYPE_WS", "SPIRAL_TYPE_EMPTY",
450
+ "SPIRAL_TYPE_NAME" ];
181
451
 
182
452
  constructor(input) {
183
453
  super(input)
@@ -202,21 +472,80 @@ wktLexer.MULTILINESTRING = 13;
202
472
  wktLexer.MULTIPOLYGON = 14;
203
473
  wktLexer.GEOMETRYCOLLECTION = 15;
204
474
  wktLexer.CIRCULARSTRING = 16;
205
- wktLexer.COMPOUNDCURVE = 17;
206
- wktLexer.CLOTHOID = 18;
207
- wktLexer.CURVEPOLYGON = 19;
208
- wktLexer.MULTICURVE = 20;
209
- wktLexer.MULTISURFACE = 21;
210
- wktLexer.POLYHEDRALSURFACE = 22;
211
- wktLexer.TIN = 23;
212
- wktLexer.EMPTY_ = 24;
213
- wktLexer.ZM_ = 25;
214
- wktLexer.Z_ = 26;
215
- wktLexer.M_ = 27;
216
- wktLexer.NAN_ = 28;
217
- wktLexer.NEG_INF_ = 29;
218
- wktLexer.INF_ = 30;
219
- wktLexer.WS = 31;
475
+ wktLexer.CIRCLE = 17;
476
+ wktLexer.GEODESICSTRING = 18;
477
+ wktLexer.ELLIPTICALCURVE = 19;
478
+ wktLexer.NURBSCURVE = 20;
479
+ wktLexer.CLOTHOID = 21;
480
+ wktLexer.SPIRALCURVE = 22;
481
+ wktLexer.COMPOUNDCURVE = 23;
482
+ wktLexer.CURVEPOLYGON = 24;
483
+ wktLexer.MULTICURVE = 25;
484
+ wktLexer.MULTISURFACE = 26;
485
+ wktLexer.POLYHEDRALSURFACE = 27;
486
+ wktLexer.COMPOUNDSURFACE = 28;
487
+ wktLexer.BREPSOLID = 29;
488
+ wktLexer.TIN = 30;
489
+ wktLexer.REFERENCELOCATION = 31;
490
+ wktLexer.AFFINEPLACEMENT = 32;
491
+ wktLexer.LOCATION = 33;
492
+ wktLexer.REFERENCEDIRECTIONS = 34;
493
+ wktLexer.VECTOR = 35;
494
+ wktLexer.UAXISLENGTH = 36;
495
+ wktLexer.VAXISLENGTH = 37;
496
+ wktLexer.STARTANGLE = 38;
497
+ wktLexer.ENDANGLE = 39;
498
+ wktLexer.DEGREES = 40;
499
+ wktLexer.GRADIANS = 41;
500
+ wktLexer.RADIANS = 42;
501
+ wktLexer.DEGREE = 43;
502
+ wktLexer.CONTROLPOINTS = 44;
503
+ wktLexer.NURBSPOINT = 45;
504
+ wktLexer.WEIGHTEDPOINT = 46;
505
+ wktLexer.WEIGHT = 47;
506
+ wktLexer.KNOTS = 48;
507
+ wktLexer.KNOT = 49;
508
+ wktLexer.VALUE = 50;
509
+ wktLexer.MULTIPLICITY = 51;
510
+ wktLexer.SCALEFACTOR = 52;
511
+ wktLexer.STARTDISTANCE = 53;
512
+ wktLexer.ENDDISTANCE = 54;
513
+ wktLexer.LENGTH = 55;
514
+ wktLexer.STARTCURVATURE = 56;
515
+ wktLexer.ENDCURVATURE = 57;
516
+ wktLexer.SPIRALTYPE = 58;
517
+ wktLexer.STARTM = 59;
518
+ wktLexer.ENDM = 60;
519
+ wktLexer.PATCHES = 61;
520
+ wktLexer.ELEMENTS = 62;
521
+ wktLexer.MAXSIDELENGTH = 63;
522
+ wktLexer.ID = 64;
523
+ wktLexer.TAG = 65;
524
+ wktLexer.POINTS = 66;
525
+ wktLexer.GROUPSPOT = 67;
526
+ wktLexer.BOUNDARY = 68;
527
+ wktLexer.BREAKLINE = 69;
528
+ wktLexer.SOFTBREAK = 70;
529
+ wktLexer.CONTROLCONTOUR = 71;
530
+ wktLexer.BREAKVOID = 72;
531
+ wktLexer.DRAPEVOID = 73;
532
+ wktLexer.VOID = 74;
533
+ wktLexer.HOLE = 75;
534
+ wktLexer.STOPLINE = 76;
535
+ wktLexer.QUOTED_LETTERS = 77;
536
+ wktLexer.EMPTY_ = 78;
537
+ wktLexer.ZM_ = 79;
538
+ wktLexer.Z_ = 80;
539
+ wktLexer.M_ = 81;
540
+ wktLexer.NAN_ = 82;
541
+ wktLexer.NEG_INF_ = 83;
542
+ wktLexer.INF_ = 84;
543
+ wktLexer.WS = 85;
544
+ wktLexer.SPIRAL_TYPE_WS = 86;
545
+ wktLexer.SPIRAL_TYPE_NAME = 87;
546
+
547
+ wktLexer.SPIRAL_TYPE_MODE = 1;
548
+
220
549
 
221
550
 
222
551