@lbdudc/gp-gis-dsl 0.3.2 → 0.3.3

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.
@@ -1,4 +1,4 @@
1
- // Generated from grammar/GISGrammar.g4 by ANTLR 4.13.1
1
+ // Generated from grammar/GISGrammar.g4 by ANTLR 4.13.2
2
2
  // jshint ignore: start
3
3
  import antlr4 from 'antlr4';
4
4
 
@@ -73,7 +73,7 @@ const serializedATN = [4,0,63,880,6,-1,2,0,7,0,2,1,7,1,2,2,7,2,2,3,7,3,2,
73
73
  129,30,131,31,133,32,135,33,137,34,139,35,141,36,143,37,145,38,147,39,149,
74
74
  40,151,41,153,42,155,43,157,44,159,45,161,46,163,47,165,48,167,49,169,50,
75
75
  171,51,173,52,175,53,177,54,179,55,181,56,183,57,185,58,187,59,189,60,191,
76
- 61,193,62,195,63,1,0,33,2,0,65,65,97,97,2,0,66,66,98,98,2,0,67,67,99,99,
76
+ 61,193,62,195,63,1,0,34,2,0,65,65,97,97,2,0,66,66,98,98,2,0,67,67,99,99,
77
77
  2,0,68,68,100,100,2,0,69,69,101,101,2,0,70,70,102,102,2,0,71,71,103,103,
78
78
  2,0,72,72,104,104,2,0,73,73,105,105,2,0,74,74,106,106,2,0,75,75,107,107,
79
79
  2,0,76,76,108,108,2,0,77,77,109,109,2,0,78,78,110,110,2,0,79,79,111,111,
@@ -81,206 +81,206 @@ const serializedATN = [4,0,63,880,6,-1,2,0,7,0,2,1,7,1,2,2,7,2,2,3,7,3,2,
81
81
  2,0,84,84,116,116,2,0,85,85,117,117,2,0,86,86,118,118,2,0,87,87,119,119,
82
82
  2,0,88,88,120,120,2,0,89,89,121,121,2,0,90,90,122,122,1,0,48,57,3,0,48,57,
83
83
  65,70,97,102,5,0,36,36,65,90,95,95,97,122,128,65535,7,0,36,36,65,68,70,90,
84
- 95,95,97,100,102,122,128,65535,2,0,10,10,13,13,3,0,9,10,12,13,32,32,3,0,
85
- 10,10,13,13,34,34,871,0,71,1,0,0,0,0,73,1,0,0,0,0,75,1,0,0,0,0,77,1,0,0,
86
- 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,
87
- 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,
88
- 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,
89
- 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,
90
- 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,
91
- 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,
92
- 0,0,0,143,1,0,0,0,0,145,1,0,0,0,0,147,1,0,0,0,0,149,1,0,0,0,0,151,1,0,0,
93
- 0,0,153,1,0,0,0,0,155,1,0,0,0,0,157,1,0,0,0,0,159,1,0,0,0,0,161,1,0,0,0,
94
- 0,163,1,0,0,0,0,165,1,0,0,0,0,167,1,0,0,0,0,169,1,0,0,0,0,171,1,0,0,0,0,
95
- 173,1,0,0,0,0,175,1,0,0,0,0,177,1,0,0,0,0,179,1,0,0,0,0,181,1,0,0,0,0,183,
96
- 1,0,0,0,0,185,1,0,0,0,0,187,1,0,0,0,0,189,1,0,0,0,0,191,1,0,0,0,0,193,1,
97
- 0,0,0,0,195,1,0,0,0,1,197,1,0,0,0,3,199,1,0,0,0,5,201,1,0,0,0,7,203,1,0,
98
- 0,0,9,205,1,0,0,0,11,207,1,0,0,0,13,209,1,0,0,0,15,211,1,0,0,0,17,213,1,
99
- 0,0,0,19,215,1,0,0,0,21,217,1,0,0,0,23,219,1,0,0,0,25,221,1,0,0,0,27,223,
100
- 1,0,0,0,29,225,1,0,0,0,31,227,1,0,0,0,33,229,1,0,0,0,35,231,1,0,0,0,37,233,
101
- 1,0,0,0,39,235,1,0,0,0,41,237,1,0,0,0,43,239,1,0,0,0,45,241,1,0,0,0,47,243,
102
- 1,0,0,0,49,245,1,0,0,0,51,247,1,0,0,0,53,249,1,0,0,0,55,252,1,0,0,0,57,256,
103
- 1,0,0,0,59,258,1,0,0,0,61,262,1,0,0,0,63,264,1,0,0,0,65,266,1,0,0,0,67,268,
104
- 1,0,0,0,69,270,1,0,0,0,71,272,1,0,0,0,73,279,1,0,0,0,75,283,1,0,0,0,77,290,
105
- 1,0,0,0,79,296,1,0,0,0,81,300,1,0,0,0,83,309,1,0,0,0,85,320,1,0,0,0,87,333,
106
- 1,0,0,0,89,348,1,0,0,0,91,357,1,0,0,0,93,364,1,0,0,0,95,378,1,0,0,0,97,388,
107
- 1,0,0,0,99,394,1,0,0,0,101,399,1,0,0,0,103,407,1,0,0,0,105,420,1,0,0,0,107,
108
- 423,1,0,0,0,109,427,1,0,0,0,111,448,1,0,0,0,113,457,1,0,0,0,115,467,1,0,
109
- 0,0,117,479,1,0,0,0,119,491,1,0,0,0,121,505,1,0,0,0,123,509,1,0,0,0,125,
110
- 515,1,0,0,0,127,529,1,0,0,0,129,536,1,0,0,0,131,545,1,0,0,0,133,549,1,0,
111
- 0,0,135,553,1,0,0,0,137,564,1,0,0,0,139,571,1,0,0,0,141,581,1,0,0,0,143,
112
- 588,1,0,0,0,145,592,1,0,0,0,147,600,1,0,0,0,149,605,1,0,0,0,151,610,1,0,
113
- 0,0,153,615,1,0,0,0,155,620,1,0,0,0,157,630,1,0,0,0,159,642,1,0,0,0,161,
114
- 650,1,0,0,0,163,655,1,0,0,0,165,660,1,0,0,0,167,665,1,0,0,0,169,785,1,0,
115
- 0,0,171,787,1,0,0,0,173,789,1,0,0,0,175,791,1,0,0,0,177,793,1,0,0,0,179,
116
- 795,1,0,0,0,181,797,1,0,0,0,183,799,1,0,0,0,185,807,1,0,0,0,187,810,1,0,
117
- 0,0,189,820,1,0,0,0,191,831,1,0,0,0,193,869,1,0,0,0,195,871,1,0,0,0,197,
118
- 198,7,0,0,0,198,2,1,0,0,0,199,200,7,1,0,0,200,4,1,0,0,0,201,202,7,2,0,0,
119
- 202,6,1,0,0,0,203,204,7,3,0,0,204,8,1,0,0,0,205,206,7,4,0,0,206,10,1,0,0,
120
- 0,207,208,7,5,0,0,208,12,1,0,0,0,209,210,7,6,0,0,210,14,1,0,0,0,211,212,
121
- 7,7,0,0,212,16,1,0,0,0,213,214,7,8,0,0,214,18,1,0,0,0,215,216,7,9,0,0,216,
122
- 20,1,0,0,0,217,218,7,10,0,0,218,22,1,0,0,0,219,220,7,11,0,0,220,24,1,0,0,
123
- 0,221,222,7,12,0,0,222,26,1,0,0,0,223,224,7,13,0,0,224,28,1,0,0,0,225,226,
124
- 7,14,0,0,226,30,1,0,0,0,227,228,7,15,0,0,228,32,1,0,0,0,229,230,7,16,0,0,
125
- 230,34,1,0,0,0,231,232,7,17,0,0,232,36,1,0,0,0,233,234,7,18,0,0,234,38,1,
126
- 0,0,0,235,236,7,19,0,0,236,40,1,0,0,0,237,238,7,20,0,0,238,42,1,0,0,0,239,
127
- 240,7,21,0,0,240,44,1,0,0,0,241,242,7,22,0,0,242,46,1,0,0,0,243,244,7,23,
128
- 0,0,244,48,1,0,0,0,245,246,7,24,0,0,246,50,1,0,0,0,247,248,7,25,0,0,248,
129
- 52,1,0,0,0,249,250,7,26,0,0,250,54,1,0,0,0,251,253,3,53,26,0,252,251,1,0,
130
- 0,0,253,254,1,0,0,0,254,252,1,0,0,0,254,255,1,0,0,0,255,56,1,0,0,0,256,257,
131
- 7,27,0,0,257,58,1,0,0,0,258,259,7,28,0,0,259,60,1,0,0,0,260,263,3,53,26,
132
- 0,261,263,3,59,29,0,262,260,1,0,0,0,262,261,1,0,0,0,263,62,1,0,0,0,264,265,
133
- 7,29,0,0,265,64,1,0,0,0,266,267,5,95,0,0,267,66,1,0,0,0,268,269,5,34,0,0,
134
- 269,68,1,0,0,0,270,271,5,45,0,0,271,70,1,0,0,0,272,273,3,5,2,0,273,274,3,
135
- 35,17,0,274,275,3,9,4,0,275,276,3,1,0,0,276,277,3,39,19,0,277,278,3,9,4,
136
- 0,278,72,1,0,0,0,279,280,3,13,6,0,280,281,3,17,8,0,281,282,3,37,18,0,282,
137
- 74,1,0,0,0,283,284,3,9,4,0,284,285,3,27,13,0,285,286,3,39,19,0,286,287,3,
138
- 17,8,0,287,288,3,39,19,0,288,289,3,49,24,0,289,76,1,0,0,0,290,291,3,41,20,
139
- 0,291,292,3,37,18,0,292,293,3,17,8,0,293,294,3,27,13,0,294,295,3,13,6,0,
140
- 295,78,1,0,0,0,296,297,3,41,20,0,297,298,3,37,18,0,298,299,3,9,4,0,299,80,
141
- 1,0,0,0,300,301,3,13,6,0,301,302,3,9,4,0,302,303,3,27,13,0,303,304,3,9,4,
142
- 0,304,305,3,35,17,0,305,306,3,1,0,0,306,307,3,39,19,0,307,308,3,9,4,0,308,
143
- 82,1,0,0,0,309,310,3,17,8,0,310,311,3,7,3,0,311,312,3,9,4,0,312,313,3,27,
144
- 13,0,313,314,3,39,19,0,314,315,3,17,8,0,315,316,3,11,5,0,316,317,3,17,8,
145
- 0,317,318,3,9,4,0,318,319,3,35,17,0,319,84,1,0,0,0,320,321,3,35,17,0,321,
146
- 322,3,9,4,0,322,323,3,23,11,0,323,324,3,1,0,0,324,325,3,39,19,0,325,326,
147
- 3,17,8,0,326,327,3,29,14,0,327,328,3,27,13,0,328,329,3,37,18,0,329,330,3,
148
- 15,7,0,330,331,3,17,8,0,331,332,3,31,15,0,332,86,1,0,0,0,333,334,3,7,3,0,
149
- 334,335,3,17,8,0,335,336,3,37,18,0,336,337,3,31,15,0,337,338,3,23,11,0,338,
150
- 339,3,1,0,0,339,340,3,49,24,0,340,341,3,65,32,0,341,342,3,37,18,0,342,343,
151
- 3,39,19,0,343,344,3,35,17,0,344,345,3,17,8,0,345,346,3,27,13,0,346,347,3,
152
- 13,6,0,347,88,1,0,0,0,348,349,3,35,17,0,349,350,3,9,4,0,350,351,3,33,16,
153
- 0,351,352,3,41,20,0,352,353,3,17,8,0,353,354,3,35,17,0,354,355,3,9,4,0,355,
154
- 356,3,7,3,0,356,90,1,0,0,0,357,358,3,41,20,0,358,359,3,27,13,0,359,360,3,
155
- 17,8,0,360,361,3,33,16,0,361,362,3,41,20,0,362,363,3,9,4,0,363,92,1,0,0,
156
- 0,364,365,3,3,1,0,365,366,3,17,8,0,366,367,3,7,3,0,367,368,3,17,8,0,368,
157
- 369,3,35,17,0,369,370,3,9,4,0,370,371,3,5,2,0,371,372,3,39,19,0,372,373,
158
- 3,17,8,0,373,374,3,29,14,0,374,375,3,27,13,0,375,376,3,1,0,0,376,377,3,23,
159
- 11,0,377,94,1,0,0,0,378,379,3,25,12,0,379,380,3,1,0,0,380,381,3,31,15,0,
160
- 381,382,3,31,15,0,382,383,3,9,4,0,383,384,3,7,3,0,384,385,3,65,32,0,385,
161
- 386,3,3,1,0,386,387,3,49,24,0,387,96,1,0,0,0,388,389,3,23,11,0,389,390,3,
162
- 1,0,0,390,391,3,49,24,0,391,392,3,9,4,0,392,393,3,35,17,0,393,98,1,0,0,0,
163
- 394,395,3,39,19,0,395,396,3,17,8,0,396,397,3,23,11,0,397,398,3,9,4,0,398,
164
- 100,1,0,0,0,399,400,3,13,6,0,400,401,3,9,4,0,401,402,3,29,14,0,402,403,3,
165
- 19,9,0,403,404,3,37,18,0,404,405,3,29,14,0,405,406,3,27,13,0,406,102,1,0,
166
- 0,0,407,408,3,13,6,0,408,409,3,9,4,0,409,410,3,29,14,0,410,411,3,25,12,0,
167
- 411,412,3,9,4,0,412,413,3,39,19,0,413,414,3,35,17,0,414,415,3,49,24,0,415,
168
- 416,3,39,19,0,416,417,3,49,24,0,417,418,3,31,15,0,418,419,3,9,4,0,419,104,
169
- 1,0,0,0,420,421,3,1,0,0,421,422,3,37,18,0,422,106,1,0,0,0,423,424,3,41,20,
170
- 0,424,425,3,35,17,0,425,426,3,23,11,0,426,108,1,0,0,0,427,428,3,37,18,0,
171
- 428,429,3,39,19,0,429,430,3,49,24,0,430,431,3,23,11,0,431,432,3,9,4,0,432,
172
- 433,3,23,11,0,433,434,3,1,0,0,434,435,3,49,24,0,435,436,3,9,4,0,436,437,
173
- 3,35,17,0,437,438,3,7,3,0,438,439,3,9,4,0,439,440,3,37,18,0,440,441,3,5,
174
- 2,0,441,442,3,35,17,0,442,443,3,17,8,0,443,444,3,31,15,0,444,445,3,39,19,
175
- 0,445,446,3,29,14,0,446,447,3,35,17,0,447,110,1,0,0,0,448,449,3,9,4,0,449,
176
- 450,3,7,3,0,450,451,3,17,8,0,451,452,3,39,19,0,452,453,3,1,0,0,453,454,3,
177
- 3,1,0,454,455,3,23,11,0,455,456,3,9,4,0,456,112,1,0,0,0,457,458,3,11,5,0,
178
- 458,459,3,17,8,0,459,460,3,23,11,0,460,461,3,23,11,0,461,462,3,5,2,0,462,
179
- 463,3,29,14,0,463,464,3,23,11,0,464,465,3,29,14,0,465,466,3,35,17,0,466,
180
- 114,1,0,0,0,467,468,3,37,18,0,468,469,3,39,19,0,469,470,3,35,17,0,470,471,
181
- 3,29,14,0,471,472,3,21,10,0,472,473,3,9,4,0,473,474,3,5,2,0,474,475,3,29,
182
- 14,0,475,476,3,23,11,0,476,477,3,29,14,0,477,478,3,35,17,0,478,116,1,0,0,
183
- 0,479,480,3,11,5,0,480,481,3,17,8,0,481,482,3,23,11,0,482,483,3,23,11,0,
184
- 483,484,3,29,14,0,484,485,3,31,15,0,485,486,3,1,0,0,486,487,3,5,2,0,487,
185
- 488,3,17,8,0,488,489,3,39,19,0,489,490,3,49,24,0,490,118,1,0,0,0,491,492,
186
- 3,37,18,0,492,493,3,39,19,0,493,494,3,35,17,0,494,495,3,29,14,0,495,496,
187
- 3,21,10,0,496,497,3,9,4,0,497,498,3,29,14,0,498,499,3,31,15,0,499,500,3,
188
- 1,0,0,500,501,3,5,2,0,501,502,3,17,8,0,502,503,3,39,19,0,503,504,3,49,24,
189
- 0,504,120,1,0,0,0,505,506,3,45,22,0,506,507,3,25,12,0,507,508,3,37,18,0,
190
- 508,122,1,0,0,0,509,510,3,37,18,0,510,511,3,39,19,0,511,512,3,49,24,0,512,
191
- 513,3,23,11,0,513,514,3,9,4,0,514,124,1,0,0,0,515,516,3,17,8,0,516,517,3,
192
- 37,18,0,517,518,3,65,32,0,518,519,3,3,1,0,519,520,3,1,0,0,520,521,3,37,18,
193
- 0,521,522,3,9,4,0,522,523,3,65,32,0,523,524,3,23,11,0,524,525,3,1,0,0,525,
194
- 526,3,49,24,0,526,527,3,9,4,0,527,528,3,35,17,0,528,126,1,0,0,0,529,530,
195
- 3,15,7,0,530,531,3,17,8,0,531,532,3,7,3,0,532,533,3,7,3,0,533,534,3,9,4,
196
- 0,534,535,3,27,13,0,535,128,1,0,0,0,536,537,3,37,18,0,537,538,3,29,14,0,
197
- 538,539,3,35,17,0,539,540,3,39,19,0,540,541,3,1,0,0,541,542,3,3,1,0,542,
198
- 543,3,23,11,0,543,544,3,9,4,0,544,130,1,0,0,0,545,546,3,25,12,0,546,547,
199
- 3,1,0,0,547,548,3,31,15,0,548,132,1,0,0,0,549,550,3,37,18,0,550,551,3,9,
200
- 4,0,551,552,3,39,19,0,552,134,1,0,0,0,553,554,3,7,3,0,554,555,3,9,4,0,555,
201
- 556,3,31,15,0,556,557,3,23,11,0,557,558,3,29,14,0,558,559,3,49,24,0,559,
202
- 560,3,25,12,0,560,561,3,9,4,0,561,562,3,27,13,0,562,563,3,39,19,0,563,136,
203
- 1,0,0,0,564,565,3,41,20,0,565,566,3,35,17,0,566,567,3,23,11,0,567,568,3,
204
- 45,22,0,568,569,3,25,12,0,569,570,3,37,18,0,570,138,1,0,0,0,571,572,3,23,
205
- 11,0,572,573,3,1,0,0,573,574,3,49,24,0,574,575,3,9,4,0,575,576,3,35,17,0,
206
- 576,577,3,27,13,0,577,578,3,1,0,0,578,579,3,25,12,0,579,580,3,9,4,0,580,
207
- 140,1,0,0,0,581,582,3,11,5,0,582,583,3,29,14,0,583,584,3,35,17,0,584,585,
208
- 3,25,12,0,585,586,3,1,0,0,586,587,3,39,19,0,587,142,1,0,0,0,588,589,3,5,
209
- 2,0,589,590,3,35,17,0,590,591,3,37,18,0,591,144,1,0,0,0,592,593,3,3,1,0,
210
- 593,594,3,3,1,0,594,595,3,29,14,0,595,596,3,47,23,0,596,597,3,5,2,0,597,
211
- 598,3,35,17,0,598,599,3,37,18,0,599,146,1,0,0,0,600,601,3,25,12,0,601,602,
212
- 3,17,8,0,602,603,3,27,13,0,603,604,3,47,23,0,604,148,1,0,0,0,605,606,3,25,
213
- 12,0,606,607,3,17,8,0,607,608,3,27,13,0,608,609,3,49,24,0,609,150,1,0,0,
214
- 0,610,611,3,25,12,0,611,612,3,1,0,0,612,613,3,47,23,0,613,614,3,47,23,0,
215
- 614,152,1,0,0,0,615,616,3,25,12,0,616,617,3,1,0,0,617,618,3,47,23,0,618,
216
- 619,3,49,24,0,619,154,1,0,0,0,620,621,3,33,16,0,621,622,3,41,20,0,622,623,
217
- 3,9,4,0,623,624,3,35,17,0,624,625,3,49,24,0,625,626,3,1,0,0,626,627,3,3,
218
- 1,0,627,628,3,23,11,0,628,629,3,9,4,0,629,156,1,0,0,0,630,631,3,1,0,0,631,
219
- 632,3,39,19,0,632,633,3,39,19,0,633,634,3,35,17,0,634,635,3,17,8,0,635,636,
220
- 3,3,1,0,636,637,3,41,20,0,637,638,3,39,19,0,638,639,3,17,8,0,639,640,3,29,
221
- 14,0,640,641,3,27,13,0,641,158,1,0,0,0,642,643,3,43,21,0,643,644,3,9,4,0,
222
- 644,645,3,35,17,0,645,646,3,37,18,0,646,647,3,17,8,0,647,648,3,29,14,0,648,
223
- 649,3,27,13,0,649,160,1,0,0,0,650,651,5,48,0,0,651,652,5,46,0,0,652,653,
224
- 5,46,0,0,653,654,5,49,0,0,654,162,1,0,0,0,655,656,5,49,0,0,656,657,5,46,
225
- 0,0,657,658,5,46,0,0,658,659,5,49,0,0,659,164,1,0,0,0,660,661,5,48,0,0,661,
226
- 662,5,46,0,0,662,663,5,46,0,0,663,664,5,42,0,0,664,166,1,0,0,0,665,666,5,
227
- 49,0,0,666,667,5,46,0,0,667,668,5,46,0,0,668,669,5,42,0,0,669,168,1,0,0,
228
- 0,670,671,3,23,11,0,671,672,3,29,14,0,672,673,3,27,13,0,673,674,3,13,6,0,
229
- 674,786,1,0,0,0,675,676,3,3,1,0,676,677,3,29,14,0,677,678,3,29,14,0,678,
230
- 679,3,23,11,0,679,680,3,9,4,0,680,681,3,1,0,0,681,682,3,27,13,0,682,786,
231
- 1,0,0,0,683,684,3,17,8,0,684,685,3,27,13,0,685,686,3,39,19,0,686,687,3,9,
232
- 4,0,687,688,3,13,6,0,688,689,3,9,4,0,689,690,3,35,17,0,690,786,1,0,0,0,691,
233
- 692,3,7,3,0,692,693,3,29,14,0,693,694,3,41,20,0,694,695,3,3,1,0,695,696,
234
- 3,23,11,0,696,697,3,9,4,0,697,786,1,0,0,0,698,699,3,23,11,0,699,700,3,29,
235
- 14,0,700,701,3,5,2,0,701,702,3,1,0,0,702,703,3,23,11,0,703,704,3,7,3,0,704,
236
- 705,3,1,0,0,705,706,3,39,19,0,706,707,3,9,4,0,707,786,1,0,0,0,708,709,3,
237
- 37,18,0,709,710,3,39,19,0,710,711,3,35,17,0,711,712,3,17,8,0,712,713,3,27,
238
- 13,0,713,714,3,13,6,0,714,786,1,0,0,0,715,716,3,23,11,0,716,717,3,17,8,0,
239
- 717,718,3,27,13,0,718,719,3,9,4,0,719,720,3,37,18,0,720,721,3,39,19,0,721,
240
- 722,3,35,17,0,722,723,3,17,8,0,723,724,3,27,13,0,724,725,3,13,6,0,725,786,
241
- 1,0,0,0,726,727,3,23,11,0,727,728,3,17,8,0,728,729,3,27,13,0,729,730,3,9,
242
- 4,0,730,786,1,0,0,0,731,732,3,25,12,0,732,733,3,41,20,0,733,734,3,23,11,
243
- 0,734,735,3,39,19,0,735,736,3,17,8,0,736,737,3,23,11,0,737,738,3,17,8,0,
244
- 738,739,3,27,13,0,739,740,3,9,4,0,740,741,3,37,18,0,741,742,3,39,19,0,742,
245
- 743,3,35,17,0,743,744,3,17,8,0,744,745,3,27,13,0,745,746,3,13,6,0,746,786,
246
- 1,0,0,0,747,748,3,31,15,0,748,749,3,29,14,0,749,750,3,23,11,0,750,751,3,
247
- 49,24,0,751,752,3,13,6,0,752,753,3,29,14,0,753,754,3,27,13,0,754,786,1,0,
248
- 0,0,755,756,3,25,12,0,756,757,3,41,20,0,757,758,3,23,11,0,758,759,3,39,19,
249
- 0,759,760,3,17,8,0,760,761,3,31,15,0,761,762,3,29,14,0,762,763,3,23,11,0,
250
- 763,764,3,49,24,0,764,765,3,13,6,0,765,766,3,29,14,0,766,767,3,27,13,0,767,
251
- 786,1,0,0,0,768,769,3,31,15,0,769,770,3,29,14,0,770,771,3,17,8,0,771,772,
252
- 3,27,13,0,772,773,3,39,19,0,773,786,1,0,0,0,774,775,3,25,12,0,775,776,3,
253
- 41,20,0,776,777,3,23,11,0,777,778,3,39,19,0,778,779,3,17,8,0,779,780,3,31,
254
- 15,0,780,781,3,29,14,0,781,782,3,17,8,0,782,783,3,27,13,0,783,784,3,39,19,
255
- 0,784,786,1,0,0,0,785,670,1,0,0,0,785,675,1,0,0,0,785,683,1,0,0,0,785,691,
256
- 1,0,0,0,785,698,1,0,0,0,785,708,1,0,0,0,785,715,1,0,0,0,785,726,1,0,0,0,
257
- 785,731,1,0,0,0,785,747,1,0,0,0,785,755,1,0,0,0,785,768,1,0,0,0,785,774,
258
- 1,0,0,0,786,170,1,0,0,0,787,788,5,35,0,0,788,172,1,0,0,0,789,790,5,46,0,
259
- 0,790,174,1,0,0,0,791,792,5,40,0,0,792,176,1,0,0,0,793,794,5,41,0,0,794,
260
- 178,1,0,0,0,795,796,5,44,0,0,796,180,1,0,0,0,797,798,5,59,0,0,798,182,1,
261
- 0,0,0,799,800,3,171,85,0,800,801,3,57,28,0,801,802,3,57,28,0,802,803,3,57,
262
- 28,0,803,804,3,57,28,0,804,805,3,57,28,0,805,806,3,57,28,0,806,184,1,0,0,
263
- 0,807,808,3,55,27,0,808,186,1,0,0,0,809,811,3,69,34,0,810,809,1,0,0,0,810,
264
- 811,1,0,0,0,811,816,1,0,0,0,812,814,3,55,27,0,813,812,1,0,0,0,813,814,1,
265
- 0,0,0,814,815,1,0,0,0,815,817,3,173,86,0,816,813,1,0,0,0,816,817,1,0,0,0,
266
- 817,818,1,0,0,0,818,819,3,55,27,0,819,188,1,0,0,0,820,821,5,47,0,0,821,822,
267
- 5,47,0,0,822,826,1,0,0,0,823,825,8,30,0,0,824,823,1,0,0,0,825,828,1,0,0,
268
- 0,826,824,1,0,0,0,826,827,1,0,0,0,827,829,1,0,0,0,828,826,1,0,0,0,829,830,
269
- 6,94,0,0,830,190,1,0,0,0,831,832,7,31,0,0,832,833,1,0,0,0,833,834,6,95,1,
270
- 0,834,192,1,0,0,0,835,837,3,55,27,0,836,835,1,0,0,0,837,838,1,0,0,0,838,
271
- 836,1,0,0,0,838,839,1,0,0,0,839,840,1,0,0,0,840,848,7,4,0,0,841,845,3,59,
272
- 29,0,842,844,3,61,30,0,843,842,1,0,0,0,844,847,1,0,0,0,845,843,1,0,0,0,845,
273
- 846,1,0,0,0,846,849,1,0,0,0,847,845,1,0,0,0,848,841,1,0,0,0,848,849,1,0,
274
- 0,0,849,870,1,0,0,0,850,852,3,55,27,0,851,850,1,0,0,0,852,853,1,0,0,0,853,
275
- 851,1,0,0,0,853,854,1,0,0,0,854,855,1,0,0,0,855,859,3,63,31,0,856,858,3,
276
- 61,30,0,857,856,1,0,0,0,858,861,1,0,0,0,859,857,1,0,0,0,859,860,1,0,0,0,
277
- 860,870,1,0,0,0,861,859,1,0,0,0,862,866,3,59,29,0,863,865,3,61,30,0,864,
278
- 863,1,0,0,0,865,868,1,0,0,0,866,864,1,0,0,0,866,867,1,0,0,0,867,870,1,0,
279
- 0,0,868,866,1,0,0,0,869,836,1,0,0,0,869,851,1,0,0,0,869,862,1,0,0,0,870,
280
- 194,1,0,0,0,871,875,3,67,33,0,872,874,8,32,0,0,873,872,1,0,0,0,874,877,1,
281
- 0,0,0,875,873,1,0,0,0,875,876,1,0,0,0,876,878,1,0,0,0,877,875,1,0,0,0,878,
282
- 879,3,67,33,0,879,196,1,0,0,0,16,0,254,262,785,810,813,816,826,838,845,848,
283
- 853,859,866,869,875,2,6,0,0,0,1,0];
84
+ 95,95,97,100,102,122,128,65535,2,0,34,34,39,39,2,0,10,10,13,13,3,0,9,10,
85
+ 12,13,32,32,3,0,10,10,13,13,34,34,871,0,71,1,0,0,0,0,73,1,0,0,0,0,75,1,0,
86
+ 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,
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,
88
+ 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,
89
+ 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,
90
+ 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,
91
+ 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,
92
+ 0,0,141,1,0,0,0,0,143,1,0,0,0,0,145,1,0,0,0,0,147,1,0,0,0,0,149,1,0,0,0,
93
+ 0,151,1,0,0,0,0,153,1,0,0,0,0,155,1,0,0,0,0,157,1,0,0,0,0,159,1,0,0,0,0,
94
+ 161,1,0,0,0,0,163,1,0,0,0,0,165,1,0,0,0,0,167,1,0,0,0,0,169,1,0,0,0,0,171,
95
+ 1,0,0,0,0,173,1,0,0,0,0,175,1,0,0,0,0,177,1,0,0,0,0,179,1,0,0,0,0,181,1,
96
+ 0,0,0,0,183,1,0,0,0,0,185,1,0,0,0,0,187,1,0,0,0,0,189,1,0,0,0,0,191,1,0,
97
+ 0,0,0,193,1,0,0,0,0,195,1,0,0,0,1,197,1,0,0,0,3,199,1,0,0,0,5,201,1,0,0,
98
+ 0,7,203,1,0,0,0,9,205,1,0,0,0,11,207,1,0,0,0,13,209,1,0,0,0,15,211,1,0,0,
99
+ 0,17,213,1,0,0,0,19,215,1,0,0,0,21,217,1,0,0,0,23,219,1,0,0,0,25,221,1,0,
100
+ 0,0,27,223,1,0,0,0,29,225,1,0,0,0,31,227,1,0,0,0,33,229,1,0,0,0,35,231,1,
101
+ 0,0,0,37,233,1,0,0,0,39,235,1,0,0,0,41,237,1,0,0,0,43,239,1,0,0,0,45,241,
102
+ 1,0,0,0,47,243,1,0,0,0,49,245,1,0,0,0,51,247,1,0,0,0,53,249,1,0,0,0,55,252,
103
+ 1,0,0,0,57,256,1,0,0,0,59,258,1,0,0,0,61,262,1,0,0,0,63,264,1,0,0,0,65,266,
104
+ 1,0,0,0,67,268,1,0,0,0,69,270,1,0,0,0,71,272,1,0,0,0,73,279,1,0,0,0,75,283,
105
+ 1,0,0,0,77,290,1,0,0,0,79,296,1,0,0,0,81,300,1,0,0,0,83,309,1,0,0,0,85,320,
106
+ 1,0,0,0,87,333,1,0,0,0,89,348,1,0,0,0,91,357,1,0,0,0,93,364,1,0,0,0,95,378,
107
+ 1,0,0,0,97,388,1,0,0,0,99,394,1,0,0,0,101,399,1,0,0,0,103,407,1,0,0,0,105,
108
+ 420,1,0,0,0,107,423,1,0,0,0,109,427,1,0,0,0,111,448,1,0,0,0,113,457,1,0,
109
+ 0,0,115,467,1,0,0,0,117,479,1,0,0,0,119,491,1,0,0,0,121,505,1,0,0,0,123,
110
+ 509,1,0,0,0,125,515,1,0,0,0,127,529,1,0,0,0,129,536,1,0,0,0,131,545,1,0,
111
+ 0,0,133,549,1,0,0,0,135,553,1,0,0,0,137,564,1,0,0,0,139,571,1,0,0,0,141,
112
+ 581,1,0,0,0,143,588,1,0,0,0,145,592,1,0,0,0,147,600,1,0,0,0,149,605,1,0,
113
+ 0,0,151,610,1,0,0,0,153,615,1,0,0,0,155,620,1,0,0,0,157,630,1,0,0,0,159,
114
+ 642,1,0,0,0,161,650,1,0,0,0,163,655,1,0,0,0,165,660,1,0,0,0,167,665,1,0,
115
+ 0,0,169,785,1,0,0,0,171,787,1,0,0,0,173,789,1,0,0,0,175,791,1,0,0,0,177,
116
+ 793,1,0,0,0,179,795,1,0,0,0,181,797,1,0,0,0,183,799,1,0,0,0,185,807,1,0,
117
+ 0,0,187,810,1,0,0,0,189,820,1,0,0,0,191,831,1,0,0,0,193,869,1,0,0,0,195,
118
+ 871,1,0,0,0,197,198,7,0,0,0,198,2,1,0,0,0,199,200,7,1,0,0,200,4,1,0,0,0,
119
+ 201,202,7,2,0,0,202,6,1,0,0,0,203,204,7,3,0,0,204,8,1,0,0,0,205,206,7,4,
120
+ 0,0,206,10,1,0,0,0,207,208,7,5,0,0,208,12,1,0,0,0,209,210,7,6,0,0,210,14,
121
+ 1,0,0,0,211,212,7,7,0,0,212,16,1,0,0,0,213,214,7,8,0,0,214,18,1,0,0,0,215,
122
+ 216,7,9,0,0,216,20,1,0,0,0,217,218,7,10,0,0,218,22,1,0,0,0,219,220,7,11,
123
+ 0,0,220,24,1,0,0,0,221,222,7,12,0,0,222,26,1,0,0,0,223,224,7,13,0,0,224,
124
+ 28,1,0,0,0,225,226,7,14,0,0,226,30,1,0,0,0,227,228,7,15,0,0,228,32,1,0,0,
125
+ 0,229,230,7,16,0,0,230,34,1,0,0,0,231,232,7,17,0,0,232,36,1,0,0,0,233,234,
126
+ 7,18,0,0,234,38,1,0,0,0,235,236,7,19,0,0,236,40,1,0,0,0,237,238,7,20,0,0,
127
+ 238,42,1,0,0,0,239,240,7,21,0,0,240,44,1,0,0,0,241,242,7,22,0,0,242,46,1,
128
+ 0,0,0,243,244,7,23,0,0,244,48,1,0,0,0,245,246,7,24,0,0,246,50,1,0,0,0,247,
129
+ 248,7,25,0,0,248,52,1,0,0,0,249,250,7,26,0,0,250,54,1,0,0,0,251,253,3,53,
130
+ 26,0,252,251,1,0,0,0,253,254,1,0,0,0,254,252,1,0,0,0,254,255,1,0,0,0,255,
131
+ 56,1,0,0,0,256,257,7,27,0,0,257,58,1,0,0,0,258,259,7,28,0,0,259,60,1,0,0,
132
+ 0,260,263,3,53,26,0,261,263,3,59,29,0,262,260,1,0,0,0,262,261,1,0,0,0,263,
133
+ 62,1,0,0,0,264,265,7,29,0,0,265,64,1,0,0,0,266,267,5,95,0,0,267,66,1,0,0,
134
+ 0,268,269,7,30,0,0,269,68,1,0,0,0,270,271,5,45,0,0,271,70,1,0,0,0,272,273,
135
+ 3,5,2,0,273,274,3,35,17,0,274,275,3,9,4,0,275,276,3,1,0,0,276,277,3,39,19,
136
+ 0,277,278,3,9,4,0,278,72,1,0,0,0,279,280,3,13,6,0,280,281,3,17,8,0,281,282,
137
+ 3,37,18,0,282,74,1,0,0,0,283,284,3,9,4,0,284,285,3,27,13,0,285,286,3,39,
138
+ 19,0,286,287,3,17,8,0,287,288,3,39,19,0,288,289,3,49,24,0,289,76,1,0,0,0,
139
+ 290,291,3,41,20,0,291,292,3,37,18,0,292,293,3,17,8,0,293,294,3,27,13,0,294,
140
+ 295,3,13,6,0,295,78,1,0,0,0,296,297,3,41,20,0,297,298,3,37,18,0,298,299,
141
+ 3,9,4,0,299,80,1,0,0,0,300,301,3,13,6,0,301,302,3,9,4,0,302,303,3,27,13,
142
+ 0,303,304,3,9,4,0,304,305,3,35,17,0,305,306,3,1,0,0,306,307,3,39,19,0,307,
143
+ 308,3,9,4,0,308,82,1,0,0,0,309,310,3,17,8,0,310,311,3,7,3,0,311,312,3,9,
144
+ 4,0,312,313,3,27,13,0,313,314,3,39,19,0,314,315,3,17,8,0,315,316,3,11,5,
145
+ 0,316,317,3,17,8,0,317,318,3,9,4,0,318,319,3,35,17,0,319,84,1,0,0,0,320,
146
+ 321,3,35,17,0,321,322,3,9,4,0,322,323,3,23,11,0,323,324,3,1,0,0,324,325,
147
+ 3,39,19,0,325,326,3,17,8,0,326,327,3,29,14,0,327,328,3,27,13,0,328,329,3,
148
+ 37,18,0,329,330,3,15,7,0,330,331,3,17,8,0,331,332,3,31,15,0,332,86,1,0,0,
149
+ 0,333,334,3,7,3,0,334,335,3,17,8,0,335,336,3,37,18,0,336,337,3,31,15,0,337,
150
+ 338,3,23,11,0,338,339,3,1,0,0,339,340,3,49,24,0,340,341,3,65,32,0,341,342,
151
+ 3,37,18,0,342,343,3,39,19,0,343,344,3,35,17,0,344,345,3,17,8,0,345,346,3,
152
+ 27,13,0,346,347,3,13,6,0,347,88,1,0,0,0,348,349,3,35,17,0,349,350,3,9,4,
153
+ 0,350,351,3,33,16,0,351,352,3,41,20,0,352,353,3,17,8,0,353,354,3,35,17,0,
154
+ 354,355,3,9,4,0,355,356,3,7,3,0,356,90,1,0,0,0,357,358,3,41,20,0,358,359,
155
+ 3,27,13,0,359,360,3,17,8,0,360,361,3,33,16,0,361,362,3,41,20,0,362,363,3,
156
+ 9,4,0,363,92,1,0,0,0,364,365,3,3,1,0,365,366,3,17,8,0,366,367,3,7,3,0,367,
157
+ 368,3,17,8,0,368,369,3,35,17,0,369,370,3,9,4,0,370,371,3,5,2,0,371,372,3,
158
+ 39,19,0,372,373,3,17,8,0,373,374,3,29,14,0,374,375,3,27,13,0,375,376,3,1,
159
+ 0,0,376,377,3,23,11,0,377,94,1,0,0,0,378,379,3,25,12,0,379,380,3,1,0,0,380,
160
+ 381,3,31,15,0,381,382,3,31,15,0,382,383,3,9,4,0,383,384,3,7,3,0,384,385,
161
+ 3,65,32,0,385,386,3,3,1,0,386,387,3,49,24,0,387,96,1,0,0,0,388,389,3,23,
162
+ 11,0,389,390,3,1,0,0,390,391,3,49,24,0,391,392,3,9,4,0,392,393,3,35,17,0,
163
+ 393,98,1,0,0,0,394,395,3,39,19,0,395,396,3,17,8,0,396,397,3,23,11,0,397,
164
+ 398,3,9,4,0,398,100,1,0,0,0,399,400,3,13,6,0,400,401,3,9,4,0,401,402,3,29,
165
+ 14,0,402,403,3,19,9,0,403,404,3,37,18,0,404,405,3,29,14,0,405,406,3,27,13,
166
+ 0,406,102,1,0,0,0,407,408,3,13,6,0,408,409,3,9,4,0,409,410,3,29,14,0,410,
167
+ 411,3,25,12,0,411,412,3,9,4,0,412,413,3,39,19,0,413,414,3,35,17,0,414,415,
168
+ 3,49,24,0,415,416,3,39,19,0,416,417,3,49,24,0,417,418,3,31,15,0,418,419,
169
+ 3,9,4,0,419,104,1,0,0,0,420,421,3,1,0,0,421,422,3,37,18,0,422,106,1,0,0,
170
+ 0,423,424,3,41,20,0,424,425,3,35,17,0,425,426,3,23,11,0,426,108,1,0,0,0,
171
+ 427,428,3,37,18,0,428,429,3,39,19,0,429,430,3,49,24,0,430,431,3,23,11,0,
172
+ 431,432,3,9,4,0,432,433,3,23,11,0,433,434,3,1,0,0,434,435,3,49,24,0,435,
173
+ 436,3,9,4,0,436,437,3,35,17,0,437,438,3,7,3,0,438,439,3,9,4,0,439,440,3,
174
+ 37,18,0,440,441,3,5,2,0,441,442,3,35,17,0,442,443,3,17,8,0,443,444,3,31,
175
+ 15,0,444,445,3,39,19,0,445,446,3,29,14,0,446,447,3,35,17,0,447,110,1,0,0,
176
+ 0,448,449,3,9,4,0,449,450,3,7,3,0,450,451,3,17,8,0,451,452,3,39,19,0,452,
177
+ 453,3,1,0,0,453,454,3,3,1,0,454,455,3,23,11,0,455,456,3,9,4,0,456,112,1,
178
+ 0,0,0,457,458,3,11,5,0,458,459,3,17,8,0,459,460,3,23,11,0,460,461,3,23,11,
179
+ 0,461,462,3,5,2,0,462,463,3,29,14,0,463,464,3,23,11,0,464,465,3,29,14,0,
180
+ 465,466,3,35,17,0,466,114,1,0,0,0,467,468,3,37,18,0,468,469,3,39,19,0,469,
181
+ 470,3,35,17,0,470,471,3,29,14,0,471,472,3,21,10,0,472,473,3,9,4,0,473,474,
182
+ 3,5,2,0,474,475,3,29,14,0,475,476,3,23,11,0,476,477,3,29,14,0,477,478,3,
183
+ 35,17,0,478,116,1,0,0,0,479,480,3,11,5,0,480,481,3,17,8,0,481,482,3,23,11,
184
+ 0,482,483,3,23,11,0,483,484,3,29,14,0,484,485,3,31,15,0,485,486,3,1,0,0,
185
+ 486,487,3,5,2,0,487,488,3,17,8,0,488,489,3,39,19,0,489,490,3,49,24,0,490,
186
+ 118,1,0,0,0,491,492,3,37,18,0,492,493,3,39,19,0,493,494,3,35,17,0,494,495,
187
+ 3,29,14,0,495,496,3,21,10,0,496,497,3,9,4,0,497,498,3,29,14,0,498,499,3,
188
+ 31,15,0,499,500,3,1,0,0,500,501,3,5,2,0,501,502,3,17,8,0,502,503,3,39,19,
189
+ 0,503,504,3,49,24,0,504,120,1,0,0,0,505,506,3,45,22,0,506,507,3,25,12,0,
190
+ 507,508,3,37,18,0,508,122,1,0,0,0,509,510,3,37,18,0,510,511,3,39,19,0,511,
191
+ 512,3,49,24,0,512,513,3,23,11,0,513,514,3,9,4,0,514,124,1,0,0,0,515,516,
192
+ 3,17,8,0,516,517,3,37,18,0,517,518,3,65,32,0,518,519,3,3,1,0,519,520,3,1,
193
+ 0,0,520,521,3,37,18,0,521,522,3,9,4,0,522,523,3,65,32,0,523,524,3,23,11,
194
+ 0,524,525,3,1,0,0,525,526,3,49,24,0,526,527,3,9,4,0,527,528,3,35,17,0,528,
195
+ 126,1,0,0,0,529,530,3,15,7,0,530,531,3,17,8,0,531,532,3,7,3,0,532,533,3,
196
+ 7,3,0,533,534,3,9,4,0,534,535,3,27,13,0,535,128,1,0,0,0,536,537,3,37,18,
197
+ 0,537,538,3,29,14,0,538,539,3,35,17,0,539,540,3,39,19,0,540,541,3,1,0,0,
198
+ 541,542,3,3,1,0,542,543,3,23,11,0,543,544,3,9,4,0,544,130,1,0,0,0,545,546,
199
+ 3,25,12,0,546,547,3,1,0,0,547,548,3,31,15,0,548,132,1,0,0,0,549,550,3,37,
200
+ 18,0,550,551,3,9,4,0,551,552,3,39,19,0,552,134,1,0,0,0,553,554,3,7,3,0,554,
201
+ 555,3,9,4,0,555,556,3,31,15,0,556,557,3,23,11,0,557,558,3,29,14,0,558,559,
202
+ 3,49,24,0,559,560,3,25,12,0,560,561,3,9,4,0,561,562,3,27,13,0,562,563,3,
203
+ 39,19,0,563,136,1,0,0,0,564,565,3,41,20,0,565,566,3,35,17,0,566,567,3,23,
204
+ 11,0,567,568,3,45,22,0,568,569,3,25,12,0,569,570,3,37,18,0,570,138,1,0,0,
205
+ 0,571,572,3,23,11,0,572,573,3,1,0,0,573,574,3,49,24,0,574,575,3,9,4,0,575,
206
+ 576,3,35,17,0,576,577,3,27,13,0,577,578,3,1,0,0,578,579,3,25,12,0,579,580,
207
+ 3,9,4,0,580,140,1,0,0,0,581,582,3,11,5,0,582,583,3,29,14,0,583,584,3,35,
208
+ 17,0,584,585,3,25,12,0,585,586,3,1,0,0,586,587,3,39,19,0,587,142,1,0,0,0,
209
+ 588,589,3,5,2,0,589,590,3,35,17,0,590,591,3,37,18,0,591,144,1,0,0,0,592,
210
+ 593,3,3,1,0,593,594,3,3,1,0,594,595,3,29,14,0,595,596,3,47,23,0,596,597,
211
+ 3,5,2,0,597,598,3,35,17,0,598,599,3,37,18,0,599,146,1,0,0,0,600,601,3,25,
212
+ 12,0,601,602,3,17,8,0,602,603,3,27,13,0,603,604,3,47,23,0,604,148,1,0,0,
213
+ 0,605,606,3,25,12,0,606,607,3,17,8,0,607,608,3,27,13,0,608,609,3,49,24,0,
214
+ 609,150,1,0,0,0,610,611,3,25,12,0,611,612,3,1,0,0,612,613,3,47,23,0,613,
215
+ 614,3,47,23,0,614,152,1,0,0,0,615,616,3,25,12,0,616,617,3,1,0,0,617,618,
216
+ 3,47,23,0,618,619,3,49,24,0,619,154,1,0,0,0,620,621,3,33,16,0,621,622,3,
217
+ 41,20,0,622,623,3,9,4,0,623,624,3,35,17,0,624,625,3,49,24,0,625,626,3,1,
218
+ 0,0,626,627,3,3,1,0,627,628,3,23,11,0,628,629,3,9,4,0,629,156,1,0,0,0,630,
219
+ 631,3,1,0,0,631,632,3,39,19,0,632,633,3,39,19,0,633,634,3,35,17,0,634,635,
220
+ 3,17,8,0,635,636,3,3,1,0,636,637,3,41,20,0,637,638,3,39,19,0,638,639,3,17,
221
+ 8,0,639,640,3,29,14,0,640,641,3,27,13,0,641,158,1,0,0,0,642,643,3,43,21,
222
+ 0,643,644,3,9,4,0,644,645,3,35,17,0,645,646,3,37,18,0,646,647,3,17,8,0,647,
223
+ 648,3,29,14,0,648,649,3,27,13,0,649,160,1,0,0,0,650,651,5,48,0,0,651,652,
224
+ 5,46,0,0,652,653,5,46,0,0,653,654,5,49,0,0,654,162,1,0,0,0,655,656,5,49,
225
+ 0,0,656,657,5,46,0,0,657,658,5,46,0,0,658,659,5,49,0,0,659,164,1,0,0,0,660,
226
+ 661,5,48,0,0,661,662,5,46,0,0,662,663,5,46,0,0,663,664,5,42,0,0,664,166,
227
+ 1,0,0,0,665,666,5,49,0,0,666,667,5,46,0,0,667,668,5,46,0,0,668,669,5,42,
228
+ 0,0,669,168,1,0,0,0,670,671,3,23,11,0,671,672,3,29,14,0,672,673,3,27,13,
229
+ 0,673,674,3,13,6,0,674,786,1,0,0,0,675,676,3,3,1,0,676,677,3,29,14,0,677,
230
+ 678,3,29,14,0,678,679,3,23,11,0,679,680,3,9,4,0,680,681,3,1,0,0,681,682,
231
+ 3,27,13,0,682,786,1,0,0,0,683,684,3,17,8,0,684,685,3,27,13,0,685,686,3,39,
232
+ 19,0,686,687,3,9,4,0,687,688,3,13,6,0,688,689,3,9,4,0,689,690,3,35,17,0,
233
+ 690,786,1,0,0,0,691,692,3,7,3,0,692,693,3,29,14,0,693,694,3,41,20,0,694,
234
+ 695,3,3,1,0,695,696,3,23,11,0,696,697,3,9,4,0,697,786,1,0,0,0,698,699,3,
235
+ 23,11,0,699,700,3,29,14,0,700,701,3,5,2,0,701,702,3,1,0,0,702,703,3,23,11,
236
+ 0,703,704,3,7,3,0,704,705,3,1,0,0,705,706,3,39,19,0,706,707,3,9,4,0,707,
237
+ 786,1,0,0,0,708,709,3,37,18,0,709,710,3,39,19,0,710,711,3,35,17,0,711,712,
238
+ 3,17,8,0,712,713,3,27,13,0,713,714,3,13,6,0,714,786,1,0,0,0,715,716,3,23,
239
+ 11,0,716,717,3,17,8,0,717,718,3,27,13,0,718,719,3,9,4,0,719,720,3,37,18,
240
+ 0,720,721,3,39,19,0,721,722,3,35,17,0,722,723,3,17,8,0,723,724,3,27,13,0,
241
+ 724,725,3,13,6,0,725,786,1,0,0,0,726,727,3,23,11,0,727,728,3,17,8,0,728,
242
+ 729,3,27,13,0,729,730,3,9,4,0,730,786,1,0,0,0,731,732,3,25,12,0,732,733,
243
+ 3,41,20,0,733,734,3,23,11,0,734,735,3,39,19,0,735,736,3,17,8,0,736,737,3,
244
+ 23,11,0,737,738,3,17,8,0,738,739,3,27,13,0,739,740,3,9,4,0,740,741,3,37,
245
+ 18,0,741,742,3,39,19,0,742,743,3,35,17,0,743,744,3,17,8,0,744,745,3,27,13,
246
+ 0,745,746,3,13,6,0,746,786,1,0,0,0,747,748,3,31,15,0,748,749,3,29,14,0,749,
247
+ 750,3,23,11,0,750,751,3,49,24,0,751,752,3,13,6,0,752,753,3,29,14,0,753,754,
248
+ 3,27,13,0,754,786,1,0,0,0,755,756,3,25,12,0,756,757,3,41,20,0,757,758,3,
249
+ 23,11,0,758,759,3,39,19,0,759,760,3,17,8,0,760,761,3,31,15,0,761,762,3,29,
250
+ 14,0,762,763,3,23,11,0,763,764,3,49,24,0,764,765,3,13,6,0,765,766,3,29,14,
251
+ 0,766,767,3,27,13,0,767,786,1,0,0,0,768,769,3,31,15,0,769,770,3,29,14,0,
252
+ 770,771,3,17,8,0,771,772,3,27,13,0,772,773,3,39,19,0,773,786,1,0,0,0,774,
253
+ 775,3,25,12,0,775,776,3,41,20,0,776,777,3,23,11,0,777,778,3,39,19,0,778,
254
+ 779,3,17,8,0,779,780,3,31,15,0,780,781,3,29,14,0,781,782,3,17,8,0,782,783,
255
+ 3,27,13,0,783,784,3,39,19,0,784,786,1,0,0,0,785,670,1,0,0,0,785,675,1,0,
256
+ 0,0,785,683,1,0,0,0,785,691,1,0,0,0,785,698,1,0,0,0,785,708,1,0,0,0,785,
257
+ 715,1,0,0,0,785,726,1,0,0,0,785,731,1,0,0,0,785,747,1,0,0,0,785,755,1,0,
258
+ 0,0,785,768,1,0,0,0,785,774,1,0,0,0,786,170,1,0,0,0,787,788,5,35,0,0,788,
259
+ 172,1,0,0,0,789,790,5,46,0,0,790,174,1,0,0,0,791,792,5,40,0,0,792,176,1,
260
+ 0,0,0,793,794,5,41,0,0,794,178,1,0,0,0,795,796,5,44,0,0,796,180,1,0,0,0,
261
+ 797,798,5,59,0,0,798,182,1,0,0,0,799,800,3,171,85,0,800,801,3,57,28,0,801,
262
+ 802,3,57,28,0,802,803,3,57,28,0,803,804,3,57,28,0,804,805,3,57,28,0,805,
263
+ 806,3,57,28,0,806,184,1,0,0,0,807,808,3,55,27,0,808,186,1,0,0,0,809,811,
264
+ 3,69,34,0,810,809,1,0,0,0,810,811,1,0,0,0,811,816,1,0,0,0,812,814,3,55,27,
265
+ 0,813,812,1,0,0,0,813,814,1,0,0,0,814,815,1,0,0,0,815,817,3,173,86,0,816,
266
+ 813,1,0,0,0,816,817,1,0,0,0,817,818,1,0,0,0,818,819,3,55,27,0,819,188,1,
267
+ 0,0,0,820,821,5,47,0,0,821,822,5,47,0,0,822,826,1,0,0,0,823,825,8,31,0,0,
268
+ 824,823,1,0,0,0,825,828,1,0,0,0,826,824,1,0,0,0,826,827,1,0,0,0,827,829,
269
+ 1,0,0,0,828,826,1,0,0,0,829,830,6,94,0,0,830,190,1,0,0,0,831,832,7,32,0,
270
+ 0,832,833,1,0,0,0,833,834,6,95,1,0,834,192,1,0,0,0,835,837,3,55,27,0,836,
271
+ 835,1,0,0,0,837,838,1,0,0,0,838,836,1,0,0,0,838,839,1,0,0,0,839,840,1,0,
272
+ 0,0,840,848,7,4,0,0,841,845,3,59,29,0,842,844,3,61,30,0,843,842,1,0,0,0,
273
+ 844,847,1,0,0,0,845,843,1,0,0,0,845,846,1,0,0,0,846,849,1,0,0,0,847,845,
274
+ 1,0,0,0,848,841,1,0,0,0,848,849,1,0,0,0,849,870,1,0,0,0,850,852,3,55,27,
275
+ 0,851,850,1,0,0,0,852,853,1,0,0,0,853,851,1,0,0,0,853,854,1,0,0,0,854,855,
276
+ 1,0,0,0,855,859,3,63,31,0,856,858,3,61,30,0,857,856,1,0,0,0,858,861,1,0,
277
+ 0,0,859,857,1,0,0,0,859,860,1,0,0,0,860,870,1,0,0,0,861,859,1,0,0,0,862,
278
+ 866,3,59,29,0,863,865,3,61,30,0,864,863,1,0,0,0,865,868,1,0,0,0,866,864,
279
+ 1,0,0,0,866,867,1,0,0,0,867,870,1,0,0,0,868,866,1,0,0,0,869,836,1,0,0,0,
280
+ 869,851,1,0,0,0,869,862,1,0,0,0,870,194,1,0,0,0,871,875,3,67,33,0,872,874,
281
+ 8,33,0,0,873,872,1,0,0,0,874,877,1,0,0,0,875,873,1,0,0,0,875,876,1,0,0,0,
282
+ 876,878,1,0,0,0,877,875,1,0,0,0,878,879,3,67,33,0,879,196,1,0,0,0,16,0,254,
283
+ 262,785,810,813,816,826,838,845,848,853,859,866,869,875,2,6,0,0,0,1,0];
284
284
 
285
285
 
286
286
  const atn = new antlr4.atn.ATNDeserializer().deserialize(serializedATN);
@@ -1,4 +1,4 @@
1
- // Generated from grammar/GISGrammar.g4 by ANTLR 4.13.1
1
+ // Generated from grammar/GISGrammar.g4 by ANTLR 4.13.2
2
2
  // jshint ignore: start
3
3
  import antlr4 from 'antlr4';
4
4
 
@@ -1,4 +1,4 @@
1
- // Generated from grammar/GISGrammar.g4 by ANTLR 4.13.1
1
+ // Generated from grammar/GISGrammar.g4 by ANTLR 4.13.2
2
2
  // jshint ignore: start
3
3
  import antlr4 from 'antlr4';
4
4
  import GISGrammarListener from './GISGrammarListener.js';
@@ -1,4 +1,4 @@
1
- // Generated from grammar/GISGrammar.g4 by ANTLR 4.13.1
1
+ // Generated from grammar/GISGrammar.g4 by ANTLR 4.13.2
2
2
  // jshint ignore: start
3
3
  import antlr4 from 'antlr4';
4
4
 
@@ -0,0 +1,120 @@
1
+ import fs from 'fs';
2
+ import path from 'path';
3
+ import { fileURLToPath } from 'url';
4
+ import parse from './src/index.js';
5
+
6
+ const __filename = fileURLToPath(import.meta.url);
7
+ const __dirname = path.dirname(__filename);
8
+
9
+ const examplesDir = path.join(__dirname, 'examples');
10
+
11
+ // ANSI color codes for console output
12
+ const colors = {
13
+ reset: '\x1b[0m',
14
+ green: '\x1b[32m',
15
+ red: '\x1b[31m',
16
+ yellow: '\x1b[33m',
17
+ cyan: '\x1b[36m',
18
+ bold: '\x1b[1m'
19
+ };
20
+
21
+ function testExample(filePath, fileName) {
22
+ console.log(`\n${colors.cyan}${colors.bold}Testing: ${fileName}${colors.reset}`);
23
+ console.log('='.repeat(60));
24
+
25
+ try {
26
+ // Read the file
27
+ const content = fs.readFileSync(filePath, 'utf8');
28
+ console.log(`${colors.yellow}File size: ${content.length} characters${colors.reset}`);
29
+
30
+ // Parse the content
31
+ const result = parse(content, false);
32
+
33
+ // Check if parsing was successful
34
+ if (result) {
35
+ console.log(`${colors.green}✓ PASSED${colors.reset} - Successfully parsed and generated product`);
36
+
37
+ // Display some basic info about the result if available
38
+ if (result.name) {
39
+ console.log(` Product name: ${result.name}`);
40
+ }
41
+ if (result.entities && result.entities.length > 0) {
42
+ console.log(` Entities: ${result.entities.length}`);
43
+ }
44
+ if (result.layers && result.layers.length > 0) {
45
+ console.log(` Layers: ${result.layers.length}`);
46
+ }
47
+ if (result.maps && result.maps.length > 0) {
48
+ console.log(` Maps: ${result.maps.length}`);
49
+ }
50
+
51
+ fs.writeFileSync(path.join(__dirname, 'test-output', `${fileName.replace('.txt', '.json')}`), JSON.stringify(result, null, 2));
52
+
53
+ return { success: true, fileName };
54
+ } else {
55
+ console.log(`${colors.yellow}⚠ WARNING${colors.reset} - Parsed but no product generated`);
56
+ return { success: true, fileName, warning: true };
57
+ }
58
+ } catch (error) {
59
+ console.log(`${colors.red}✗ FAILED${colors.reset} - Error during parsing`);
60
+ console.log(` Error: ${error.message}`);
61
+ if (error.stack) {
62
+ console.log(` Stack trace:\n${error.stack.split('\n').slice(0, 5).join('\n')}`);
63
+ }
64
+ return { success: false, fileName, error: error.message };
65
+ }
66
+ }
67
+
68
+ function main() {
69
+ console.log(`${colors.bold}${colors.cyan}\n╔════════════════════════════════════════════════════════════╗`);
70
+ console.log(`║ GIS DSL Example Validation Test Suite ║`);
71
+ console.log(`╚════════════════════════════════════════════════════════════╝${colors.reset}\n`);
72
+
73
+ // Get all .txt files in the examples directory
74
+ const files = fs.readdirSync(examplesDir)
75
+ .filter(file => file.endsWith('.txt'))
76
+ .sort();
77
+
78
+ console.log(`Found ${files.length} example file(s) to test\n`);
79
+
80
+ const results = [];
81
+
82
+ // Test each file
83
+ for (const file of files) {
84
+ const filePath = path.join(examplesDir, file);
85
+ const result = testExample(filePath, file);
86
+ results.push(result);
87
+ }
88
+
89
+ // Summary
90
+ console.log(`\n${colors.bold}${colors.cyan}${'='.repeat(60)}`);
91
+ console.log('TEST SUMMARY');
92
+ console.log(`${'='.repeat(60)}${colors.reset}\n`);
93
+
94
+ const passed = results.filter(r => r.success && !r.warning).length;
95
+ const warnings = results.filter(r => r.success && r.warning).length;
96
+ const failed = results.filter(r => !r.success).length;
97
+
98
+ console.log(`${colors.green}Passed: ${passed}${colors.reset}`);
99
+ if (warnings > 0) {
100
+ console.log(`${colors.yellow}Warnings: ${warnings}${colors.reset}`);
101
+ }
102
+ if (failed > 0) {
103
+ console.log(`${colors.red}Failed: ${failed}${colors.reset}`);
104
+ }
105
+ console.log(`Total: ${results.length}\n`);
106
+
107
+ // List failed tests if any
108
+ if (failed > 0) {
109
+ console.log(`${colors.red}${colors.bold}Failed tests:${colors.reset}`);
110
+ results.filter(r => !r.success).forEach(r => {
111
+ console.log(` ${colors.red}✗${colors.reset} ${r.fileName}: ${r.error}`);
112
+ });
113
+ console.log();
114
+ }
115
+
116
+ // Exit with appropriate code
117
+ process.exit(failed > 0 ? 1 : 0);
118
+ }
119
+
120
+ main();