2 static char yysccsid[] = "@(#)yaccpar 1.8 (Berkeley) 01/20/91";
6 /* $RCSfile: a2p.y,v $$Revision: 4.1 $$Date: 92/08/07 18:29:12 $
8 * Copyright (c) 1991-1997, Larry Wall
10 * You may distribute under the terms of either the GNU General Public
11 * License or the Artistic License, as specified in the README file.
35 #define SPRINTF_OLD 268
36 #define SPRINTF_NEW 269
75 0, 3, 6, 6, 2, 2, 7, 7, 7, 7,
76 7, 7, 9, 8, 8, 11, 11, 11, 11, 11,
77 15, 15, 15, 15, 14, 14, 14, 14, 13, 13,
78 13, 13, 12, 12, 12, 12, 18, 18, 16, 16,
79 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
80 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
81 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
82 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
83 16, 16, 16, 16, 17, 17, 17, 17, 10, 10,
84 10, 19, 19, 19, 1, 1, 20, 20, 20, 20,
85 4, 4, 21, 21, 22, 22, 22, 22, 5, 5,
86 23, 23, 23, 23, 26, 26, 24, 24, 24, 24,
87 24, 24, 24, 24, 24, 24, 24, 24, 24, 27,
88 27, 27, 25, 25, 25, 25, 25, 25, 25, 25,
91 2, 6, 5, 2, 3, 0, 1, 5, 10, 4,
92 1, 1, 1, 1, 3, 1, 1, 1, 1, 5,
93 3, 4, 4, 2, 3, 3, 3, 3, 3, 3,
94 1, 3, 1, 2, 5, 3, 1, 1, 1, 1,
95 1, 3, 3, 3, 3, 3, 3, 3, 2, 2,
96 2, 2, 2, 2, 3, 1, 2, 3, 4, 3,
97 4, 1, 3, 4, 4, 4, 4, 2, 8, 6,
98 8, 8, 6, 6, 6, 6, 6, 6, 6, 6,
99 8, 8, 8, 8, 1, 4, 1, 2, 1, 1,
100 0, 4, 4, 3, 2, 0, 1, 1, 1, 1,
101 2, 0, 1, 1, 2, 2, 2, 2, 2, 0,
102 3, 2, 2, 1, 1, 0, 1, 4, 2, 4,
103 2, 1, 1, 1, 2, 1, 1, 2, 5, 1,
104 1, 1, 6, 9, 6, 7, 10, 9, 6, 5,
106 short yydefred[] = { 96,
107 0, 0, 98, 99, 100, 97, 0, 95, 0, 0,
108 31, 0, 0, 38, 0, 0, 0, 0, 0, 0,
109 0, 0, 40, 0, 0, 0, 41, 0, 0, 0,
110 0, 0, 87, 0, 102, 0, 11, 0, 96, 0,
111 0, 0, 17, 18, 19, 0, 0, 0, 102, 102,
112 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
113 0, 0, 0, 0, 0, 0, 0, 0, 24, 51,
114 52, 0, 0, 0, 0, 0, 0, 4, 0, 102,
115 0, 102, 102, 0, 0, 0, 0, 0, 0, 0,
116 0, 0, 0, 0, 0, 0, 0, 0, 0, 49,
117 50, 0, 68, 0, 0, 0, 0, 63, 0, 0,
118 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
119 0, 0, 0, 0, 103, 104, 0, 101, 55, 32,
120 28, 21, 0, 0, 0, 0, 0, 0, 30, 0,
121 0, 0, 0, 48, 0, 0, 0, 0, 0, 0,
122 0, 0, 0, 0, 0, 102, 102, 0, 0, 64,
123 65, 67, 0, 0, 0, 0, 0, 0, 0, 0,
124 13, 66, 86, 0, 0, 102, 0, 0, 0, 0,
125 0, 0, 123, 122, 126, 0, 102, 0, 102, 10,
126 102, 0, 109, 0, 114, 0, 0, 0, 22, 0,
127 61, 94, 0, 0, 96, 3, 0, 0, 0, 0,
128 0, 0, 0, 102, 0, 0, 0, 0, 0, 0,
129 0, 0, 0, 0, 0, 0, 0, 0, 102, 102,
130 102, 102, 102, 8, 0, 0, 0, 0, 0, 73,
131 0, 78, 0, 77, 0, 80, 0, 79, 0, 75,
132 76, 0, 70, 0, 74, 131, 130, 132, 0, 0,
133 0, 0, 0, 115, 0, 0, 0, 0, 0, 0,
134 0, 0, 0, 0, 0, 0, 0, 0, 0, 102,
135 0, 0, 0, 102, 102, 102, 0, 0, 0, 102,
136 72, 71, 82, 81, 84, 83, 0, 69, 0, 0,
137 0, 0, 0, 0, 129, 0, 0, 0, 135, 139,
138 0, 0, 0, 9, 102, 102, 0, 136, 0, 0,
139 102, 134, 138, 0, 137,
141 short yydgoto[] = { 1,
142 2, 7, 37, 73, 127, 38, 39, 40, 170, 103,
143 74, 192, 43, 44, 45, 46, 47, 48, 105, 8,
144 128, 233, 193, 194, 195, 265, 259,
146 short yysindex[] = { 0,
147 0, -52, 0, 0, 0, 0, 2796, 0, -90, -86,
148 0, 17, 25, 0, 38, 44, -57, 45, 47, 48,
149 -219, 49, 0, -1, 51, 52, 0, 7708, 7708, 6350,
150 -238, -238, 0, 7708, 0, 6350, 0, -165, 0, -21,
151 -12, 5968, 0, 0, 0, -32, -253, 7759, 0, 0,
152 7372, 7759, 7759, 7708, 7708, 46, 7419, 7473, 7708, 65,
153 7759, 7759, 7708, 7708, 6350, -54, -228, -54, 0, 0,
154 0, -5, -185, -41, 71, 76, 80, 0, -52, 0,
155 7708, 0, 0, 6350, 7708, 7528, 7708, 7708, 7708, -32,
156 -171, 7708, 7708, 7708, 7708, 7708, 7708, -152, 6350, 0,
157 0, 6397, 0, 6481, 86, -185, -185, 0, 6528, 90,
158 91, 6583, 184, 7708, 89, 6630, 93, 6673, 6716, 7759,
159 94, 41, 6761, 6816, 0, 0, 5228, 0, 0, 0,
160 0, 0, -185, 6863, 6015, 6015, -49, 6906, 0, 184,
161 184, 184, 184, 0, -8, -8, -54, -54, -54, -54,
162 -238, -49, 6397, 5924, 28, 0, 0, 5320, 5411, 0,
163 0, 0, -154, 184, 7708, 7708, 7708, 7708, 7575, 100,
164 0, 0, 0, 7708, 7708, 0, 7759, 7759, 104, 105,
165 117, 7708, 0, 0, 0, 7708, 0, -151, 0, 0,
166 0, 7618, 0, -43, 0, 5495, 7708, -129, 0, 7708,
167 0, 0, 3816, 3816, 0, 0, 29, 6062, 6119, 6203,
168 6248, 122, 6949, 0, 6295, 6994, -185, -45, -45, 6350,
169 6350, 4306, 7618, 7618, 4429, 81, -185, -185, 0, 0,
170 0, 0, 0, 0, 7618, 7618, 7618, 7618, -52, 0,
171 7665, 0, 7708, 0, 7708, 0, 7708, 0, 7708, 0,
172 0, -96, 0, 7708, 0, 0, 0, 0, 7708, 7708,
173 -39, -37, 7049, 0, 108, -97, 7759, 5586, -185, -185,
174 -185, -185, -185, 136, 7096, 7139, 7182, 7227, 7282, 0,
175 7329, 7618, 7618, 0, 0, 0, 3890, 138, 88, 0,
176 0, 0, 0, 0, 0, 0, -185, 0, 4429, 4429,
177 4429, 4306, -51, 6350, 0, -185, 5678, -89, 0, 0,
178 141, 4306, -35, 0, 0, 0, 143, 0, 4429, 4429,
181 short yyrindex[] = { 0,
182 0, 2452, 0, 0, 0, 0, 185, 0, 0, 0,
183 0, 56, 0, 0, 111, 0, 2886, 0, 0, 0,
184 0, 0, 0, 1, 0, 0, 0, 0, 0, 0,
185 0, 0, 0, 0, 0, 0, 0, 2279, 0, 2328,
186 2048, 4023, 0, 0, 0, 2120, 1671, 3590, 0, 0,
187 0, 145, 145, 0, 0, 382, 0, 0, 0, 0,
188 145, 95, 0, 0, 0, 818, 872, 946, 0, 0,
189 0, 437, 5769, 0, -16, -10, 18, 0, 2511, 0,
190 0, 0, 0, 0, 0, 0, 0, 0, 0, 2170,
191 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
192 0, 0, 0, 3951, 492, 5769, 5769, 0, 0, 0,
193 0, 0, 2934, 0, 0, 0, 0, 0, 0, 145,
194 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
195 0, 0, 5769, 0, 0, 0, 2221, 0, 0, 2982,
196 3222, 3267, 3312, 0, 1781, 1854, 1217, 1271, 1325, 1400,
197 2619, 1726, 0, -23, 0, 0, 0, 0, 0, 0,
198 0, 0, 0, 3381, 0, 0, 0, 0, 0, 0,
199 0, 0, 0, 0, 0, 0, 102, 102, 0, 0,
200 0, 171, 0, 0, 0, 174, 0, 0, 0, 0,
201 0, 242, 0, 0, 0, 0, 0, 763, 0, 0,
202 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
203 0, 0, 0, 0, 0, 0, 4508, 248, 297, 0,
204 0, 128, 350, 358, 0, 0, 5769, 4604, 0, 0,
205 0, 0, 0, 0, 3657, 3705, 3760, 3866, 2561, 0,
206 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
207 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
208 0, 0, 130, 0, 0, 0, 95, 0, 4695, 4779,
209 4870, 4962, 5053, 0, 0, 0, 0, 0, 0, 0,
210 0, 398, 431, 0, 0, 0, 0, 0, 0, 0,
211 0, 0, 0, 0, 0, 0, 5769, 0, 0, 0,
212 0, 149, 0, 0, 0, 5137, 0, 5853, 0, 0,
213 0, 149, 0, 0, 0, 0, 0, 0, 0, 0,
216 short yygindex[] = { 0,
217 -30, 0, 0, 4250, -24, 0, 0, 0, 0, 397,
218 24, 4208, -17, -15, -13, 7990, 4404, 0, -82, 0,
219 0, 0, -173, -192, 0, -277, -28,
221 #define YYTABLESIZE 8273
222 short yytable[] = { 129,
223 85, 284, 55, 285, 96, 318, 6, 312, 79, 94,
224 92, 81, 93, 81, 95, 232, 257, 16, 75, 155,
225 76, 81, 77, 81, 311, 81, 280, 81, 96, 264,
226 41, 84, 49, 94, 317, 99, 50, 85, 95, 97,
227 85, 85, 85, 85, 85, 85, 17, 85, 100, 101,
228 81, 266, 18, 69, 24, 62, 51, 98, 85, 85,
229 85, 97, 85, 85, 52, 33, 34, 60, 202, 240,
230 155, 157, 241, 100, 101, 125, 126, 53, 258, 98,
231 19, 158, 159, 54, 57, 97, 58, 59, 61, 62,
232 63, 64, 62, 85, 85, 78, 62, 62, 62, 62,
233 62, 80, 62, 98, 120, 114, 98, 137, 196, 264,
234 37, 130, 85, 62, 62, 62, 131, 62, 62, 264,
235 132, 144, 152, 85, 85, 308, 309, 310, 151, 157,
236 161, 162, 165, 173, 172, 75, 167, 76, 207, 77,
237 214, 226, 91, 220, 221, 322, 323, 37, 62, 62,
238 325, 37, 37, 37, 37, 37, 222, 37, 198, 199,
239 91, 83, 250, 91, 125, 126, 287, 62, 37, 37,
240 37, 267, 37, 37, 239, 288, 291, 304, 62, 62,
241 305, 316, 315, 321, 1, 91, 116, 91, 117, 116,
242 260, 0, 0, 0, 0, 0, 0, 0, 0, 0,
243 0, 0, 268, 37, 37, 0, 0, 3, 4, 5,
244 0, 124, 0, 0, 127, 0, 229, 230, 231, 256,
245 0, 0, 37, 65, 0, 91, 28, 0, 29, 124,
246 0, 0, 127, 37, 37, 24, 0, 0, 82, 83,
247 82, 83, 91, 261, 262, 0, 33, 34, 82, 83,
248 82, 83, 82, 83, 82, 83, 0, 85, 85, 85,
249 85, 85, 85, 85, 85, 85, 16, 16, 85, 85,
250 85, 0, 307, 17, 17, 85, 0, 82, 83, 18,
251 18, 85, 117, 85, 85, 85, 85, 85, 119, 85,
252 85, 85, 85, 85, 85, 85, 85, 85, 0, 85,
253 117, 85, 85, 85, 85, 85, 119, 19, 19, 0,
254 303, 0, 62, 62, 62, 62, 62, 62, 62, 62,
255 62, 0, 0, 62, 62, 62, 0, 313, 0, 0,
256 62, 0, 0, 0, 0, 0, 62, 121, 62, 62,
257 62, 62, 62, 0, 62, 62, 62, 62, 62, 62,
258 62, 62, 62, 0, 62, 121, 62, 62, 62, 62,
259 62, 91, 91, 91, 0, 0, 91, 37, 37, 37,
260 37, 37, 37, 37, 37, 37, 0, 0, 37, 37,
261 37, 57, 0, 0, 0, 37, 0, 0, 0, 0,
262 125, 37, 0, 37, 37, 37, 37, 37, 128, 37,
263 37, 37, 37, 37, 37, 37, 37, 37, 125, 37,
264 0, 37, 37, 37, 37, 37, 128, 0, 57, 0,
265 0, 57, 57, 57, 57, 57, 57, 0, 57, 0,
266 124, 124, 124, 127, 127, 127, 88, 0, 118, 57,
267 57, 0, 0, 57, 57, 0, 12, 13, 110, 111,
268 0, 14, 15, 16, 0, 0, 118, 121, 122, 0,
269 0, 0, 0, 0, 17, 0, 18, 19, 20, 0,
270 22, 120, 0, 88, 57, 57, 88, 88, 88, 88,
271 88, 88, 27, 88, 0, 31, 32, 33, 34, 120,
272 0, 90, 0, 57, 88, 88, 88, 0, 88, 88,
273 0, 117, 117, 117, 57, 57, 0, 119, 119, 119,
274 0, 0, 0, 0, 0, 0, 171, 0, 0, 0,
275 0, 0, 0, 0, 0, 0, 0, 0, 90, 88,
276 88, 90, 90, 90, 90, 0, 90, 0, 90, 0,
277 0, 0, 0, 0, 0, 0, 0, 0, 0, 90,
278 90, 90, 0, 90, 90, 0, 121, 121, 121, 88,
279 88, 0, 0, 0, 0, 0, 0, 0, 0, 0,
280 0, 0, 0, 218, 219, 0, 0, 0, 0, 0,
281 0, 0, 0, 0, 90, 90, 0, 0, 0, 0,
282 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
283 0, 0, 0, 90, 0, 0, 0, 0, 0, 125,
284 125, 125, 0, 0, 90, 90, 0, 128, 128, 128,
285 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
286 0, 0, 0, 0, 0, 0, 0, 0, 57, 57,
287 57, 57, 57, 57, 57, 57, 57, 0, 0, 57,
288 57, 57, 0, 0, 0, 0, 57, 118, 118, 118,
289 0, 0, 57, 289, 57, 57, 57, 57, 57, 0,
290 57, 57, 57, 57, 57, 57, 57, 57, 57, 0,
291 57, 0, 57, 57, 57, 57, 57, 0, 0, 0,
292 120, 120, 120, 88, 88, 88, 88, 88, 88, 88,
293 88, 88, 0, 0, 88, 88, 88, 0, 0, 0,
294 0, 88, 0, 0, 0, 0, 0, 88, 0, 88,
295 88, 88, 88, 88, 0, 88, 88, 88, 88, 88,
296 88, 88, 88, 88, 0, 88, 0, 88, 88, 88,
297 88, 88, 0, 0, 0, 0, 0, 0, 90, 90,
298 90, 90, 90, 90, 90, 90, 90, 0, 0, 90,
299 90, 90, 23, 0, 0, 0, 90, 0, 0, 0,
300 0, 0, 90, 0, 90, 90, 90, 90, 90, 0,
301 90, 90, 90, 90, 90, 90, 90, 90, 90, 0,
302 90, 0, 90, 90, 90, 90, 90, 0, 0, 23,
303 0, 0, 23, 23, 23, 23, 23, 23, 0, 23,
304 0, 0, 0, 0, 0, 0, 0, 54, 0, 0,
305 23, 23, 23, 0, 23, 23, 0, 0, 0, 0,
306 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
307 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
308 0, 0, 0, 0, 54, 23, 23, 54, 54, 54,
309 54, 54, 54, 0, 54, 0, 0, 0, 0, 0,
310 0, 39, 0, 0, 23, 54, 54, 54, 0, 54,
311 54, 0, 0, 0, 0, 23, 23, 0, 0, 0,
312 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
313 0, 0, 0, 0, 0, 0, 0, 0, 39, 0,
314 54, 39, 39, 39, 39, 39, 39, 0, 39, 0,
315 0, 0, 0, 0, 0, 0, 0, 0, 0, 39,
316 39, 39, 0, 39, 39, 0, 0, 0, 0, 0,
317 54, 54, 0, 0, 0, 53, 0, 0, 0, 0,
318 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
319 0, 0, 0, 0, 39, 39, 0, 0, 0, 0,
320 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
321 0, 0, 53, 39, 0, 53, 53, 53, 53, 53,
322 53, 0, 53, 0, 39, 39, 0, 0, 0, 0,
323 0, 0, 0, 53, 53, 53, 0, 53, 53, 0,
324 0, 0, 0, 0, 0, 0, 0, 0, 0, 23,
325 23, 23, 23, 23, 23, 23, 23, 23, 0, 0,
326 23, 23, 23, 0, 0, 0, 0, 23, 53, 0,
327 0, 0, 0, 23, 0, 23, 23, 23, 23, 23,
328 0, 23, 23, 0, 23, 23, 23, 23, 23, 23,
329 0, 23, 0, 23, 23, 23, 23, 23, 53, 53,
330 0, 0, 0, 0, 54, 54, 54, 54, 54, 54,
331 54, 54, 54, 0, 0, 54, 54, 54, 0, 0,
332 0, 0, 54, 0, 0, 0, 0, 0, 54, 0,
333 54, 54, 54, 54, 54, 0, 54, 54, 54, 54,
334 54, 54, 54, 54, 54, 0, 54, 0, 54, 54,
335 54, 54, 54, 0, 0, 0, 0, 0, 39, 39,
336 39, 39, 39, 39, 39, 39, 39, 0, 0, 39,
337 39, 39, 0, 0, 0, 0, 39, 0, 0, 0,
338 0, 0, 39, 0, 39, 39, 39, 39, 39, 0,
339 39, 39, 39, 39, 39, 39, 39, 39, 39, 0,
340 39, 0, 39, 0, 0, 39, 39, 0, 0, 0,
341 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
342 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
343 0, 0, 53, 53, 53, 53, 53, 53, 53, 53,
344 53, 0, 0, 53, 53, 53, 44, 0, 0, 0,
345 53, 0, 0, 0, 0, 0, 53, 0, 53, 53,
346 53, 53, 53, 0, 53, 53, 53, 53, 53, 53,
347 53, 53, 53, 0, 53, 0, 53, 53, 53, 53,
348 53, 0, 0, 44, 0, 0, 44, 44, 44, 44,
349 44, 44, 0, 44, 0, 0, 0, 0, 0, 0,
350 45, 0, 0, 0, 44, 44, 44, 0, 44, 44,
351 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
352 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
353 0, 0, 0, 0, 0, 0, 0, 45, 0, 44,
354 45, 45, 45, 45, 45, 45, 0, 45, 0, 0,
355 0, 0, 0, 0, 46, 0, 0, 0, 45, 45,
356 45, 0, 45, 45, 0, 0, 0, 0, 0, 44,
357 44, 0, 0, 0, 0, 0, 0, 0, 0, 0,
358 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
359 0, 46, 0, 45, 46, 46, 46, 46, 46, 46,
360 0, 46, 0, 0, 0, 0, 0, 0, 0, 0,
361 0, 0, 46, 46, 46, 0, 46, 46, 0, 0,
362 0, 0, 0, 45, 45, 0, 0, 0, 0, 47,
363 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
364 0, 0, 0, 0, 0, 0, 0, 46, 0, 0,
365 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
366 0, 0, 0, 0, 0, 0, 47, 0, 0, 47,
367 47, 47, 47, 47, 47, 0, 47, 46, 46, 0,
368 0, 0, 0, 0, 0, 0, 0, 47, 47, 47,
369 0, 47, 47, 0, 0, 0, 0, 0, 0, 0,
370 0, 0, 0, 44, 44, 44, 44, 44, 44, 44,
371 44, 44, 0, 0, 44, 44, 44, 0, 0, 0,
372 0, 44, 47, 0, 0, 0, 0, 44, 0, 44,
373 44, 44, 44, 44, 0, 44, 44, 44, 44, 44,
374 44, 44, 44, 44, 0, 44, 0, 44, 44, 44,
375 44, 44, 47, 47, 0, 0, 0, 45, 45, 45,
376 45, 45, 45, 45, 45, 45, 0, 0, 45, 45,
377 45, 0, 0, 0, 0, 45, 0, 0, 0, 0,
378 0, 45, 0, 45, 45, 45, 45, 45, 0, 45,
379 45, 45, 45, 45, 45, 45, 45, 45, 0, 45,
380 0, 45, 45, 45, 45, 45, 0, 0, 0, 0,
381 0, 46, 46, 46, 46, 46, 46, 46, 46, 46,
382 0, 0, 46, 46, 46, 0, 0, 0, 0, 46,
383 0, 0, 0, 0, 0, 46, 0, 46, 46, 46,
384 46, 46, 0, 46, 46, 46, 46, 46, 46, 46,
385 46, 46, 0, 46, 0, 46, 46, 46, 46, 46,
386 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
387 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
388 0, 0, 0, 0, 0, 0, 47, 47, 47, 47,
389 47, 47, 47, 47, 47, 0, 0, 47, 47, 47,
390 39, 0, 0, 0, 47, 0, 0, 0, 0, 0,
391 47, 0, 47, 47, 47, 47, 47, 0, 47, 47,
392 47, 47, 47, 47, 47, 47, 47, 0, 47, 0,
393 47, 47, 47, 47, 47, 0, 0, 39, 0, 0,
394 39, 39, 39, 39, 39, 39, 0, 39, 0, 0,
395 0, 0, 0, 0, 0, 36, 0, 0, 39, 39,
396 39, 0, 39, 39, 0, 0, 0, 0, 0, 0,
397 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
398 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
399 0, 0, 36, 39, 39, 36, 36, 36, 36, 36,
400 36, 0, 36, 0, 0, 0, 0, 0, 0, 0,
401 42, 0, 39, 36, 36, 36, 0, 36, 0, 0,
402 0, 0, 0, 39, 39, 0, 0, 0, 0, 0,
403 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
404 0, 0, 0, 0, 0, 0, 0, 0, 36, 36,
405 42, 42, 0, 42, 42, 42, 0, 0, 0, 0,
406 0, 0, 0, 0, 0, 0, 0, 36, 42, 42,
407 42, 0, 42, 42, 0, 0, 0, 0, 36, 36,
408 0, 0, 0, 43, 0, 0, 0, 0, 0, 0,
409 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
410 0, 0, 0, 42, 0, 0, 0, 0, 0, 0,
411 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
412 0, 0, 0, 43, 43, 0, 43, 43, 43, 0,
413 0, 0, 0, 42, 42, 0, 0, 0, 0, 0,
414 0, 43, 43, 43, 0, 43, 43, 0, 0, 0,
415 0, 0, 0, 0, 0, 0, 0, 39, 39, 39,
416 39, 39, 39, 39, 39, 39, 0, 0, 39, 39,
417 39, 0, 0, 0, 0, 39, 43, 0, 0, 0,
418 0, 39, 0, 39, 39, 39, 39, 39, 0, 0,
419 39, 39, 39, 39, 39, 39, 39, 39, 0, 39,
420 0, 39, 0, 0, 39, 39, 43, 43, 0, 0,
421 0, 0, 36, 36, 36, 36, 36, 36, 36, 36,
422 36, 0, 0, 36, 36, 36, 0, 0, 0, 0,
423 36, 0, 0, 0, 0, 0, 36, 0, 36, 36,
424 36, 36, 36, 0, 36, 0, 0, 36, 36, 36,
425 36, 36, 36, 0, 36, 0, 36, 36, 36, 36,
426 36, 0, 0, 0, 0, 0, 0, 42, 42, 42,
427 42, 42, 42, 42, 42, 42, 0, 14, 42, 42,
428 42, 0, 0, 0, 0, 42, 0, 0, 0, 0,
429 0, 42, 0, 42, 42, 42, 42, 42, 0, 42,
430 42, 42, 42, 42, 42, 42, 42, 42, 0, 42,
431 0, 42, 42, 42, 42, 42, 0, 14, 0, 0,
432 14, 0, 14, 0, 0, 0, 0, 0, 0, 0,
433 0, 0, 0, 0, 0, 0, 14, 0, 0, 0,
434 43, 43, 43, 43, 43, 43, 43, 43, 43, 33,
435 0, 43, 43, 43, 0, 0, 0, 0, 43, 0,
436 0, 0, 0, 0, 43, 0, 43, 43, 43, 43,
437 43, 0, 43, 43, 43, 43, 43, 43, 43, 43,
438 43, 0, 43, 0, 43, 43, 43, 43, 43, 33,
439 33, 0, 0, 33, 0, 0, 0, 0, 0, 34,
440 14, 0, 0, 0, 0, 0, 0, 33, 33, 33,
441 0, 33, 33, 0, 0, 0, 0, 0, 0, 0,
442 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
443 0, 0, 0, 0, 0, 0, 0, 0, 0, 34,
444 34, 0, 33, 34, 0, 0, 0, 0, 0, 0,
445 15, 0, 0, 0, 0, 0, 0, 34, 34, 34,
446 0, 34, 34, 0, 0, 0, 0, 0, 0, 0,
447 0, 0, 33, 33, 0, 0, 0, 0, 0, 0,
448 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
449 15, 0, 34, 15, 0, 15, 0, 0, 0, 0,
450 0, 0, 0, 0, 0, 0, 0, 0, 12, 15,
451 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
452 0, 0, 34, 34, 0, 0, 0, 0, 0, 0,
453 0, 0, 0, 0, 14, 14, 14, 14, 14, 14,
454 14, 14, 0, 0, 0, 14, 14, 14, 12, 0,
455 0, 12, 0, 12, 0, 0, 0, 7, 14, 0,
456 14, 14, 14, 14, 14, 0, 0, 12, 0, 14,
457 14, 14, 14, 15, 0, 0, 14, 0, 14, 14,
458 14, 14, 14, 0, 0, 0, 0, 0, 0, 0,
459 0, 0, 0, 0, 0, 0, 0, 7, 0, 0,
460 7, 0, 7, 0, 0, 0, 33, 33, 33, 33,
461 33, 33, 33, 33, 33, 0, 7, 33, 33, 33,
462 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
463 33, 12, 33, 33, 33, 33, 33, 0, 33, 33,
464 33, 33, 33, 33, 33, 33, 33, 0, 33, 0,
465 33, 33, 33, 33, 33, 0, 34, 34, 34, 34,
466 34, 34, 34, 34, 34, 0, 0, 34, 34, 34,
467 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
468 34, 6, 34, 34, 34, 34, 34, 0, 34, 34,
469 34, 34, 34, 34, 34, 34, 34, 0, 34, 0,
470 34, 34, 34, 34, 34, 0, 0, 15, 15, 15,
471 15, 15, 15, 15, 15, 0, 0, 0, 15, 15,
472 15, 6, 0, 0, 6, 0, 6, 0, 0, 0,
473 0, 15, 0, 15, 15, 15, 15, 15, 0, 0,
474 5, 0, 15, 15, 15, 15, 0, 0, 0, 15,
475 0, 15, 15, 15, 15, 15, 0, 0, 0, 0,
476 0, 0, 0, 0, 0, 12, 12, 12, 12, 0,
477 12, 12, 12, 0, 0, 0, 12, 12, 12, 0,
478 5, 0, 0, 5, 0, 5, 0, 0, 0, 12,
479 2, 12, 12, 12, 12, 12, 0, 0, 0, 0,
480 12, 12, 12, 12, 6, 0, 0, 12, 0, 12,
481 12, 12, 12, 12, 7, 7, 7, 7, 7, 7,
482 7, 7, 0, 0, 0, 7, 7, 7, 0, 0,
483 2, 0, 0, 2, 0, 2, 0, 0, 7, 0,
484 7, 7, 7, 7, 7, 0, 0, 0, 60, 7,
485 7, 7, 7, 0, 0, 0, 7, 0, 7, 7,
486 7, 7, 7, 5, 0, 0, 0, 0, 0, 0,
487 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
488 0, 0, 0, 0, 0, 60, 0, 0, 60, 60,
489 60, 60, 60, 60, 0, 60, 0, 0, 0, 0,
490 0, 0, 0, 0, 0, 0, 60, 60, 60, 0,
491 60, 60, 0, 2, 0, 0, 0, 0, 0, 0,
492 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
493 0, 0, 0, 0, 0, 0, 0, 0, 6, 6,
494 6, 60, 60, 0, 6, 6, 0, 0, 0, 6,
495 6, 6, 0, 0, 0, 0, 0, 0, 0, 0,
496 60, 0, 6, 0, 6, 6, 6, 6, 6, 0,
497 0, 60, 60, 6, 6, 6, 6, 0, 0, 0,
498 6, 0, 6, 6, 6, 6, 6, 0, 0, 0,
499 0, 0, 0, 0, 0, 0, 0, 5, 5, 5,
500 0, 0, 0, 5, 5, 0, 0, 0, 5, 5,
501 5, 0, 0, 0, 0, 0, 0, 0, 0, 0,
502 0, 5, 0, 5, 5, 5, 5, 5, 0, 0,
503 0, 0, 5, 5, 5, 5, 0, 0, 0, 5,
504 0, 5, 5, 5, 5, 5, 0, 2, 2, 2,
505 0, 0, 0, 2, 2, 0, 0, 0, 2, 2,
506 2, 0, 0, 0, 0, 36, 0, 0, 28, 0,
507 29, 2, 0, 2, 2, 2, 2, 2, 0, 0,
508 0, 0, 2, 2, 2, 2, 0, 0, 0, 2,
509 0, 2, 2, 2, 2, 2, 0, 0, 0, 0,
510 0, 0, 0, 0, 0, 60, 60, 60, 60, 60,
511 60, 60, 60, 60, 0, 56, 60, 60, 60, 0,
512 0, 0, 0, 60, 0, 0, 0, 0, 0, 60,
513 0, 60, 60, 60, 60, 60, 0, 60, 60, 60,
514 60, 0, 60, 60, 60, 60, 0, 60, 35, 60,
515 60, 60, 56, 0, 0, 56, 56, 56, 56, 56,
516 56, 0, 56, 58, 0, 0, 0, 0, 0, 0,
517 0, 0, 0, 56, 56, 0, 0, 56, 56, 0,
518 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
519 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
520 58, 0, 0, 0, 58, 58, 0, 58, 56, 56,
521 58, 29, 0, 0, 0, 0, 0, 0, 0, 0,
522 0, 58, 58, 58, 0, 58, 58, 56, 0, 0,
523 0, 0, 0, 0, 0, 0, 0, 0, 56, 56,
524 0, 0, 0, 0, 0, 0, 0, 0, 29, 0,
525 0, 0, 29, 29, 0, 29, 58, 58, 29, 0,
526 0, 0, 0, 0, 0, 0, 0, 0, 0, 29,
527 29, 29, 0, 29, 29, 58, 0, 0, 0, 0,
528 0, 0, 9, 10, 11, 0, 58, 58, 12, 13,
529 0, 0, 0, 14, 15, 16, 0, 0, 0, 0,
530 0, 0, 0, 0, 29, 29, 17, 0, 18, 19,
531 20, 21, 22, 0, 0, 0, 0, 23, 24, 25,
532 26, 0, 0, 29, 27, 0, 30, 31, 32, 33,
533 34, 0, 0, 0, 29, 29, 0, 0, 0, 0,
534 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
535 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
536 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
537 0, 0, 56, 56, 56, 56, 56, 56, 56, 56,
538 56, 0, 0, 56, 56, 56, 0, 0, 0, 0,
539 56, 0, 0, 0, 0, 0, 56, 0, 56, 56,
540 56, 56, 56, 0, 56, 56, 56, 56, 0, 56,
541 56, 56, 56, 0, 56, 0, 56, 56, 56, 0,
542 58, 58, 58, 58, 58, 58, 0, 0, 58, 0,
543 0, 0, 0, 0, 0, 0, 0, 0, 58, 0,
544 0, 0, 0, 0, 0, 0, 0, 0, 0, 58,
545 0, 25, 58, 58, 58, 58, 58, 58, 58, 58,
546 58, 0, 0, 0, 58, 0, 0, 0, 29, 29,
547 29, 29, 29, 29, 0, 0, 29, 0, 0, 0,
548 0, 0, 0, 0, 0, 0, 29, 0, 25, 0,
549 0, 0, 25, 25, 0, 25, 27, 29, 25, 0,
550 29, 29, 29, 29, 29, 29, 29, 29, 29, 25,
551 25, 25, 29, 25, 25, 0, 0, 0, 0, 0,
552 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
553 0, 0, 0, 27, 0, 0, 0, 27, 27, 0,
554 27, 26, 0, 27, 25, 25, 0, 0, 0, 0,
555 0, 0, 0, 0, 27, 27, 27, 0, 27, 27,
556 0, 0, 0, 25, 0, 0, 0, 0, 0, 0,
557 0, 0, 0, 0, 25, 25, 0, 0, 26, 0,
558 0, 0, 26, 26, 0, 26, 0, 0, 26, 27,
559 27, 0, 0, 0, 0, 0, 0, 0, 0, 26,
560 26, 26, 0, 26, 26, 0, 0, 0, 27, 0,
561 59, 0, 0, 0, 0, 0, 0, 0, 0, 27,
562 27, 0, 0, 0, 0, 0, 0, 0, 0, 0,
563 0, 0, 0, 0, 26, 26, 0, 0, 0, 0,
564 0, 0, 0, 0, 0, 0, 0, 59, 0, 0,
565 0, 59, 59, 26, 59, 0, 0, 59, 0, 0,
566 0, 0, 0, 0, 26, 26, 0, 0, 59, 59,
567 59, 0, 59, 59, 0, 0, 0, 0, 0, 0,
568 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
569 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
570 0, 0, 0, 59, 59, 0, 0, 0, 25, 25,
571 25, 25, 25, 25, 0, 0, 25, 0, 0, 0,
572 0, 0, 59, 0, 0, 0, 25, 0, 0, 0,
573 0, 0, 0, 59, 59, 0, 0, 25, 0, 0,
574 25, 25, 25, 25, 25, 25, 25, 25, 25, 0,
575 0, 0, 25, 27, 27, 27, 27, 27, 27, 0,
576 0, 27, 0, 0, 0, 0, 0, 0, 0, 0,
577 0, 27, 0, 0, 0, 0, 0, 0, 0, 0,
578 0, 0, 27, 0, 0, 27, 27, 27, 27, 27,
579 27, 27, 27, 27, 0, 0, 0, 27, 26, 26,
580 26, 26, 26, 26, 0, 0, 26, 0, 0, 0,
581 0, 0, 0, 0, 0, 0, 26, 0, 0, 91,
582 0, 0, 0, 0, 0, 0, 0, 26, 0, 0,
583 26, 26, 26, 26, 26, 26, 26, 26, 26, 0,
584 0, 0, 26, 0, 0, 0, 0, 0, 0, 0,
585 0, 0, 0, 0, 0, 0, 91, 0, 0, 0,
586 91, 91, 0, 91, 0, 0, 91, 59, 59, 59,
587 59, 59, 59, 0, 0, 59, 0, 91, 91, 91,
588 0, 91, 91, 0, 0, 59, 20, 0, 0, 0,
589 0, 0, 0, 0, 0, 0, 59, 0, 0, 59,
590 59, 59, 59, 59, 59, 59, 59, 59, 0, 0,
591 0, 59, 91, 91, 0, 0, 0, 0, 0, 0,
592 0, 0, 0, 20, 0, 0, 0, 20, 20, 0,
593 20, 91, 0, 20, 35, 0, 0, 0, 0, 0,
594 0, 0, 91, 91, 20, 20, 20, 0, 20, 0,
595 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
596 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
597 0, 35, 0, 0, 0, 35, 35, 0, 35, 20,
598 20, 35, 0, 0, 0, 0, 0, 0, 0, 92,
599 0, 0, 35, 35, 35, 0, 35, 0, 20, 0,
600 0, 0, 0, 0, 0, 0, 0, 0, 0, 20,
601 20, 0, 0, 0, 0, 0, 0, 0, 0, 0,
602 0, 0, 0, 0, 0, 0, 92, 35, 35, 0,
603 92, 92, 0, 92, 0, 0, 92, 0, 0, 0,
604 0, 0, 0, 0, 0, 0, 35, 92, 92, 92,
605 0, 92, 0, 0, 0, 0, 0, 35, 35, 0,
606 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
607 0, 0, 0, 0, 0, 0, 91, 91, 91, 91,
608 91, 91, 92, 92, 91, 65, 0, 0, 28, 0,
609 29, 0, 0, 0, 91, 93, 0, 0, 0, 0,
610 0, 92, 0, 0, 0, 91, 0, 0, 91, 91,
611 91, 0, 92, 92, 0, 91, 91, 0, 0, 0,
612 91, 0, 0, 0, 0, 0, 0, 0, 0, 0,
613 0, 0, 93, 0, 0, 0, 93, 93, 0, 93,
614 0, 0, 93, 20, 20, 20, 20, 20, 20, 0,
615 0, 20, 0, 93, 93, 93, 0, 93, 0, 36,
616 0, 20, 28, 0, 29, 0, 0, 0, 0, 0,
617 0, 0, 20, 0, 0, 20, 20, 20, 302, 0,
618 89, 0, 20, 20, 0, 0, 0, 20, 93, 93,
619 0, 35, 35, 35, 35, 35, 35, 0, 0, 35,
620 0, 0, 0, 0, 0, 0, 0, 93, 0, 35,
621 0, 0, 0, 0, 0, 0, 0, 89, 93, 93,
622 35, 89, 89, 35, 35, 35, 0, 89, 0, 0,
623 35, 35, 0, 0, 0, 35, 0, 0, 89, 89,
624 89, 0, 89, 0, 0, 0, 92, 92, 92, 92,
625 92, 92, 16, 0, 92, 0, 0, 0, 0, 0,
626 0, 0, 0, 0, 92, 0, 0, 0, 0, 0,
627 0, 0, 0, 89, 89, 92, 0, 0, 92, 92,
628 92, 0, 0, 0, 0, 92, 92, 0, 0, 16,
629 92, 0, 89, 16, 16, 0, 16, 0, 0, 16,
630 0, 0, 0, 89, 89, 0, 125, 126, 12, 13,
631 16, 16, 0, 14, 15, 16, 0, 0, 0, 0,
632 0, 0, 0, 0, 0, 0, 17, 0, 18, 19,
633 20, 0, 22, 0, 0, 0, 0, 23, 24, 25,
634 26, 0, 0, 0, 27, 16, 16, 31, 32, 33,
635 34, 0, 93, 93, 93, 93, 93, 93, 0, 0,
636 93, 0, 0, 0, 16, 0, 0, 0, 0, 0,
637 93, 0, 0, 0, 0, 16, 16, 0, 11, 0,
638 0, 93, 12, 13, 93, 93, 93, 14, 15, 16,
639 0, 93, 93, 0, 0, 0, 93, 0, 0, 0,
640 17, 0, 18, 19, 20, 0, 22, 0, 0, 0,
641 0, 23, 24, 25, 26, 0, 0, 0, 27, 0,
642 30, 31, 32, 33, 34, 0, 0, 0, 0, 0,
643 0, 0, 0, 0, 0, 0, 0, 89, 89, 89,
644 89, 89, 89, 0, 42, 89, 0, 0, 0, 0,
645 0, 0, 0, 0, 0, 89, 0, 0, 0, 0,
646 0, 0, 0, 0, 0, 0, 89, 42, 0, 89,
647 89, 89, 0, 42, 0, 0, 89, 89, 0, 0,
648 0, 89, 0, 0, 0, 104, 0, 0, 109, 104,
649 104, 112, 113, 0, 116, 118, 119, 0, 104, 104,
650 123, 124, 42, 0, 0, 0, 0, 0, 0, 16,
651 16, 16, 16, 16, 16, 0, 0, 16, 134, 0,
652 0, 42, 138, 140, 141, 142, 143, 16, 106, 107,
653 0, 0, 0, 0, 0, 0, 42, 0, 16, 154,
654 0, 16, 16, 16, 0, 0, 0, 0, 0, 0,
655 0, 164, 0, 16, 0, 0, 0, 104, 0, 133,
656 0, 135, 136, 0, 0, 0, 0, 0, 0, 0,
657 0, 0, 42, 42, 0, 65, 0, 0, 28, 0,
658 29, 0, 0, 0, 0, 0, 0, 0, 0, 0,
659 154, 0, 0, 0, 0, 0, 0, 0, 0, 0,
660 0, 0, 208, 209, 210, 211, 213, 0, 0, 0,
661 0, 215, 216, 0, 104, 104, 0, 0, 0, 223,
662 0, 0, 0, 224, 0, 0, 0, 0, 0, 0,
663 0, 0, 0, 0, 235, 203, 204, 236, 0, 0,
664 237, 238, 0, 0, 0, 0, 0, 0, 0, 0,
665 56, 0, 0, 0, 0, 217, 0, 42, 42, 263,
666 0, 67, 67, 0, 70, 71, 225, 67, 227, 0,
667 228, 0, 0, 0, 0, 67, 0, 0, 275, 0,
668 276, 0, 277, 0, 278, 0, 279, 0, 0, 0,
669 0, 281, 0, 252, 0, 0, 282, 283, 65, 0,
670 0, 28, 0, 29, 104, 0, 0, 0, 269, 270,
671 271, 272, 273, 0, 0, 0, 0, 191, 0, 0,
672 0, 0, 0, 0, 42, 67, 67, 67, 67, 67,
673 67, 0, 0, 0, 0, 0, 0, 67, 0, 0,
674 0, 42, 67, 0, 0, 67, 67, 0, 0, 67,
675 0, 67, 67, 0, 0, 0, 67, 67, 0, 297,
676 0, 0, 0, 299, 300, 301, 0, 67, 0, 306,
677 0, 67, 0, 67, 67, 67, 67, 113, 0, 0,
678 113, 189, 113, 0, 201, 0, 0, 67, 0, 0,
679 0, 0, 0, 0, 319, 320, 113, 67, 12, 13,
680 324, 177, 178, 14, 15, 16, 0, 0, 0, 0,
681 0, 182, 183, 184, 185, 186, 17, 0, 18, 19,
682 20, 0, 22, 188, 0, 67, 0, 23, 24, 25,
683 26, 0, 0, 0, 27, 0, 0, 31, 32, 33,
684 34, 67, 67, 67, 67, 0, 67, 0, 67, 67,
685 0, 0, 0, 0, 0, 0, 67, 67, 0, 0,
686 113, 0, 113, 0, 0, 0, 0, 0, 67, 67,
687 67, 67, 0, 112, 0, 0, 112, 0, 112, 0,
688 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
689 0, 0, 112, 0, 0, 0, 67, 0, 0, 0,
690 0, 0, 0, 0, 0, 0, 0, 0, 67, 67,
691 67, 67, 67, 0, 67, 67, 67, 0, 176, 125,
692 126, 12, 13, 0, 177, 178, 14, 15, 16, 179,
693 0, 180, 181, 0, 182, 183, 184, 185, 186, 17,
694 187, 18, 19, 20, 0, 22, 188, 0, 0, 0,
695 23, 24, 25, 26, 0, 0, 112, 27, 112, 0,
696 31, 32, 33, 34, 106, 0, 0, 106, 0, 106,
697 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
698 0, 0, 0, 106, 0, 0, 0, 0, 0, 0,
699 0, 0, 0, 0, 0, 0, 0, 113, 0, 0,
700 113, 113, 0, 113, 113, 113, 113, 113, 113, 113,
701 113, 113, 0, 113, 113, 113, 113, 113, 113, 113,
702 113, 113, 113, 0, 113, 113, 0, 0, 0, 113,
703 113, 113, 113, 0, 0, 0, 113, 0, 0, 113,
704 113, 113, 113, 0, 0, 0, 0, 106, 107, 106,
705 0, 107, 0, 107, 0, 0, 0, 0, 0, 0,
706 0, 0, 0, 0, 0, 0, 0, 107, 0, 0,
707 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
708 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
709 0, 0, 0, 112, 0, 0, 112, 112, 0, 112,
710 112, 112, 112, 112, 112, 112, 112, 112, 0, 112,
711 112, 112, 112, 112, 112, 112, 112, 112, 112, 0,
712 112, 112, 0, 0, 0, 112, 112, 112, 112, 0,
713 0, 107, 112, 107, 0, 112, 112, 112, 112, 108,
714 0, 0, 108, 0, 108, 0, 0, 0, 0, 0,
715 0, 0, 0, 0, 0, 0, 0, 0, 108, 0,
716 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
717 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
718 0, 0, 0, 0, 106, 0, 0, 106, 106, 0,
719 106, 106, 106, 106, 106, 106, 106, 106, 106, 0,
720 106, 106, 106, 106, 106, 106, 106, 106, 106, 106,
721 0, 106, 106, 0, 0, 0, 106, 106, 106, 106,
722 0, 0, 108, 106, 108, 0, 106, 106, 106, 106,
723 0, 105, 0, 0, 105, 0, 105, 0, 0, 0,
724 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
725 105, 0, 0, 0, 0, 0, 0, 0, 0, 0,
726 0, 0, 0, 0, 0, 0, 0, 0, 107, 0,
727 0, 107, 107, 0, 107, 107, 107, 107, 107, 107,
728 107, 107, 107, 0, 107, 107, 107, 107, 107, 107,
729 107, 107, 107, 107, 0, 107, 107, 0, 0, 0,
730 107, 107, 107, 107, 0, 0, 0, 107, 0, 0,
731 107, 107, 107, 107, 105, 0, 105, 0, 0, 0,
732 0, 0, 111, 0, 0, 111, 0, 111, 0, 0,
733 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
734 0, 111, 0, 0, 0, 0, 0, 0, 0, 0,
735 0, 0, 0, 0, 0, 0, 0, 0, 0, 108,
736 0, 0, 108, 108, 0, 108, 108, 108, 108, 108,
737 108, 108, 108, 108, 0, 108, 108, 108, 108, 108,
738 108, 108, 108, 108, 108, 0, 108, 108, 0, 0,
739 0, 108, 108, 108, 108, 0, 0, 0, 108, 0,
740 0, 108, 108, 108, 108, 111, 140, 111, 0, 140,
741 0, 140, 0, 0, 0, 0, 0, 0, 0, 0,
742 0, 0, 0, 0, 0, 140, 0, 0, 0, 0,
743 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
744 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
745 0, 105, 0, 0, 105, 105, 0, 105, 105, 105,
746 105, 105, 105, 105, 105, 105, 0, 105, 105, 105,
747 105, 105, 105, 105, 105, 105, 105, 0, 105, 105,
748 0, 0, 0, 105, 105, 105, 105, 0, 0, 140,
749 105, 140, 0, 105, 105, 105, 105, 65, 0, 0,
750 28, 0, 29, 0, 0, 0, 0, 0, 0, 0,
751 0, 0, 0, 0, 0, 0, 191, 0, 0, 0,
752 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
753 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
754 0, 0, 111, 0, 0, 111, 111, 0, 111, 111,
755 111, 111, 111, 111, 111, 111, 111, 0, 111, 111,
756 111, 111, 111, 111, 111, 111, 111, 111, 0, 111,
757 111, 0, 0, 0, 111, 111, 111, 111, 0, 0,
758 189, 111, 190, 0, 111, 111, 111, 111, 0, 65,
759 0, 0, 28, 0, 29, 0, 0, 0, 0, 0,
760 0, 0, 0, 0, 0, 0, 0, 0, 191, 0,
761 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
762 0, 0, 0, 0, 0, 0, 140, 0, 0, 140,
763 140, 0, 140, 140, 140, 140, 140, 140, 140, 140,
764 140, 0, 140, 140, 140, 140, 140, 140, 140, 140,
765 140, 140, 0, 140, 140, 0, 0, 0, 140, 140,
766 140, 140, 0, 0, 0, 140, 0, 0, 140, 140,
767 140, 140, 189, 0, 205, 0, 0, 0, 0, 0,
768 65, 0, 0, 28, 0, 29, 0, 0, 0, 0,
769 0, 0, 0, 0, 0, 0, 0, 0, 0, 191,
770 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
771 0, 0, 0, 0, 0, 0, 0, 176, 0, 0,
772 12, 13, 0, 177, 178, 14, 15, 16, 179, 0,
773 180, 181, 0, 182, 183, 184, 185, 186, 17, 187,
774 18, 19, 20, 0, 22, 188, 0, 0, 0, 23,
775 24, 25, 26, 0, 0, 0, 27, 0, 0, 31,
776 32, 33, 34, 189, 65, 206, 0, 28, 0, 29,
777 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
778 0, 0, 0, 191, 0, 0, 0, 0, 0, 0,
779 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
780 0, 0, 0, 0, 0, 0, 0, 0, 0, 176,
781 0, 0, 12, 13, 0, 177, 178, 14, 15, 16,
782 179, 0, 180, 181, 0, 182, 183, 184, 185, 186,
783 17, 187, 18, 19, 20, 0, 22, 188, 0, 0,
784 0, 23, 24, 25, 26, 0, 0, 189, 27, 234,
785 0, 31, 32, 33, 34, 65, 0, 0, 28, 0,
786 29, 0, 0, 0, 0, 0, 0, 0, 0, 0,
787 0, 0, 0, 0, 191, 0, 0, 0, 0, 0,
788 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
789 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
790 176, 0, 0, 12, 13, 0, 177, 178, 14, 15,
791 16, 179, 0, 180, 181, 0, 182, 183, 184, 185,
792 186, 17, 187, 18, 19, 20, 0, 22, 188, 0,
793 0, 0, 23, 24, 25, 26, 0, 0, 189, 27,
794 290, 0, 31, 32, 33, 34, 0, 65, 0, 0,
795 28, 0, 29, 0, 0, 0, 0, 0, 0, 0,
796 0, 0, 0, 0, 0, 0, 191, 0, 0, 0,
797 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
798 0, 0, 0, 0, 176, 0, 0, 12, 13, 0,
799 177, 178, 14, 15, 16, 179, 0, 180, 181, 0,
800 182, 183, 184, 185, 186, 17, 187, 18, 19, 20,
801 0, 22, 188, 0, 0, 0, 23, 24, 25, 26,
802 0, 0, 0, 27, 0, 0, 31, 32, 33, 34,
803 189, 0, 314, 0, 0, 0, 0, 0, 110, 0,
804 0, 110, 0, 110, 0, 0, 0, 0, 0, 0,
805 0, 0, 0, 0, 0, 0, 0, 110, 0, 0,
806 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
807 0, 0, 0, 0, 0, 176, 0, 0, 12, 13,
808 0, 177, 178, 14, 15, 16, 179, 0, 180, 181,
809 0, 182, 183, 184, 185, 186, 17, 187, 18, 19,
810 20, 0, 22, 188, 0, 0, 0, 23, 24, 25,
811 26, 0, 0, 0, 27, 0, 0, 31, 32, 33,
812 34, 110, 133, 110, 0, 133, 0, 133, 0, 0,
813 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
814 0, 133, 0, 0, 0, 0, 0, 0, 0, 0,
815 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
816 0, 0, 0, 0, 0, 0, 0, 176, 0, 0,
817 12, 13, 0, 177, 178, 14, 15, 16, 179, 0,
818 180, 181, 0, 182, 183, 184, 185, 186, 17, 187,
819 18, 19, 20, 65, 22, 188, 28, 156, 29, 23,
820 24, 25, 26, 0, 0, 133, 27, 133, 0, 31,
821 32, 33, 34, 88, 0, 89, 85, 0, 0, 0,
822 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
823 0, 0, 0, 0, 0, 0, 0, 65, 0, 0,
824 28, 0, 29, 0, 0, 0, 0, 0, 0, 0,
825 0, 0, 0, 0, 0, 0, 0, 88, 110, 89,
826 85, 110, 110, 0, 110, 110, 110, 110, 110, 110,
827 0, 110, 110, 0, 110, 110, 110, 110, 110, 110,
828 110, 110, 110, 110, 36, 110, 110, 28, 0, 29,
829 110, 110, 110, 110, 0, 0, 0, 110, 0, 0,
830 110, 110, 110, 110, 0, 0, 0, 0, 0, 0,
831 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
832 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
833 0, 65, 242, 0, 28, 243, 29, 0, 0, 0,
834 0, 0, 133, 0, 0, 133, 133, 0, 133, 133,
835 133, 133, 133, 133, 85, 133, 133, 0, 133, 133,
836 133, 133, 133, 133, 133, 133, 133, 133, 0, 133,
837 133, 0, 0, 0, 133, 133, 133, 133, 0, 0,
838 0, 133, 0, 0, 133, 133, 133, 133, 65, 244,
839 0, 28, 245, 29, 0, 0, 0, 0, 0, 0,
840 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
841 0, 85, 0, 0, 0, 0, 12, 13, 0, 0,
842 0, 14, 15, 16, 0, 0, 0, 0, 0, 0,
843 0, 0, 0, 0, 17, 0, 18, 19, 20, 0,
844 22, 0, 0, 0, 0, 23, 24, 25, 26, 86,
845 87, 0, 27, 0, 0, 31, 32, 33, 34, 0,
846 12, 13, 0, 0, 0, 14, 15, 16, 0, 0,
847 0, 0, 65, 246, 0, 28, 247, 29, 17, 0,
848 18, 19, 20, 0, 22, 0, 0, 0, 0, 23,
849 24, 25, 26, 86, 87, 85, 27, 0, 0, 31,
850 32, 33, 34, 11, 0, 125, 126, 12, 13, 0,
851 0, 0, 14, 15, 16, 0, 0, 65, 248, 0,
852 28, 249, 29, 0, 0, 17, 0, 18, 19, 20,
853 0, 22, 0, 0, 0, 0, 23, 24, 25, 26,
854 85, 0, 0, 27, 0, 30, 31, 32, 33, 34,
855 0, 0, 0, 0, 12, 13, 0, 0, 0, 14,
856 15, 16, 0, 0, 65, 253, 0, 28, 254, 29,
857 0, 0, 17, 0, 18, 19, 20, 0, 22, 0,
858 0, 0, 0, 23, 24, 25, 26, 85, 0, 0,
859 27, 0, 0, 31, 32, 33, 34, 0, 0, 0,
860 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
861 0, 12, 13, 0, 0, 0, 14, 15, 16, 36,
862 0, 0, 28, 0, 29, 0, 0, 0, 0, 17,
863 0, 18, 19, 20, 0, 22, 0, 0, 0, 0,
864 23, 24, 25, 26, 0, 0, 0, 27, 0, 0,
865 31, 32, 33, 34, 0, 0, 0, 0, 0, 0,
866 0, 0, 0, 0, 0, 0, 153, 0, 0, 28,
867 0, 29, 0, 0, 0, 0, 0, 0, 0, 0,
868 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
869 0, 0, 0, 0, 0, 12, 13, 0, 0, 0,
870 14, 15, 16, 0, 0, 0, 0, 0, 0, 0,
871 0, 0, 0, 17, 0, 18, 19, 20, 0, 22,
872 0, 0, 0, 0, 23, 24, 25, 26, 0, 0,
873 0, 27, 0, 0, 31, 32, 33, 34, 0, 0,
874 12, 13, 0, 0, 0, 14, 15, 16, 0, 0,
875 65, 0, 0, 28, 156, 29, 0, 0, 17, 0,
876 18, 19, 20, 0, 22, 0, 0, 0, 0, 23,
877 24, 25, 26, 85, 0, 0, 27, 0, 0, 31,
878 32, 33, 34, 0, 0, 0, 0, 12, 13, 0,
879 0, 0, 14, 15, 16, 0, 0, 65, 160, 0,
880 28, 0, 29, 0, 0, 17, 0, 18, 19, 20,
881 0, 22, 0, 0, 0, 0, 23, 24, 25, 26,
882 85, 0, 0, 27, 0, 0, 31, 32, 33, 34,
883 0, 0, 0, 0, 0, 0, 0, 0, 11, 0,
884 0, 0, 12, 13, 0, 0, 0, 14, 15, 16,
885 0, 0, 65, 0, 0, 28, 163, 29, 0, 0,
886 17, 0, 18, 19, 20, 0, 22, 0, 0, 0,
887 0, 23, 24, 25, 26, 85, 0, 0, 27, 0,
888 30, 31, 32, 33, 34, 11, 0, 0, 0, 12,
889 13, 0, 0, 0, 14, 15, 16, 0, 0, 65,
890 0, 0, 28, 166, 29, 0, 0, 17, 0, 18,
891 19, 20, 0, 22, 0, 0, 0, 0, 23, 24,
892 25, 26, 85, 0, 0, 27, 0, 30, 31, 32,
893 33, 34, 0, 0, 0, 0, 0, 0, 0, 0,
894 0, 0, 65, 0, 0, 28, 168, 29, 0, 0,
895 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
896 0, 0, 0, 0, 0, 85, 0, 0, 0, 0,
897 0, 0, 0, 12, 13, 0, 0, 0, 14, 15,
898 16, 0, 0, 0, 0, 65, 0, 0, 28, 169,
899 29, 17, 0, 18, 19, 20, 0, 22, 0, 0,
900 0, 0, 23, 24, 25, 26, 0, 0, 85, 27,
901 0, 0, 31, 32, 33, 34, 0, 0, 0, 0,
902 12, 13, 0, 0, 0, 14, 15, 16, 0, 0,
903 65, 0, 0, 28, 174, 29, 0, 0, 17, 0,
904 18, 19, 20, 0, 22, 0, 0, 0, 0, 23,
905 24, 25, 26, 85, 0, 0, 27, 0, 0, 31,
906 32, 33, 34, 0, 0, 0, 0, 0, 0, 0,
907 0, 0, 0, 0, 0, 12, 13, 0, 0, 0,
908 14, 15, 16, 0, 0, 65, 0, 0, 28, 175,
909 29, 0, 0, 17, 0, 18, 19, 20, 0, 22,
910 0, 0, 0, 0, 23, 24, 25, 26, 85, 0,
911 0, 27, 0, 0, 31, 32, 33, 34, 0, 0,
912 0, 0, 12, 13, 0, 0, 0, 14, 15, 16,
913 0, 0, 65, 0, 0, 28, 0, 29, 0, 0,
914 17, 0, 18, 19, 20, 0, 22, 0, 0, 0,
915 197, 23, 24, 25, 26, 85, 0, 0, 27, 0,
916 0, 31, 32, 33, 34, 12, 13, 0, 0, 0,
917 14, 15, 16, 0, 0, 65, 0, 0, 28, 0,
918 29, 0, 0, 17, 0, 18, 19, 20, 0, 22,
919 0, 0, 0, 200, 23, 24, 25, 26, 85, 0,
920 0, 27, 0, 0, 31, 32, 33, 34, 12, 13,
921 0, 0, 0, 14, 15, 16, 0, 0, 65, 251,
922 0, 28, 0, 29, 0, 0, 17, 0, 18, 19,
923 20, 0, 22, 0, 0, 0, 0, 23, 24, 25,
924 26, 85, 0, 0, 27, 0, 0, 31, 32, 33,
925 34, 0, 0, 12, 13, 0, 0, 0, 14, 15,
926 16, 0, 0, 65, 255, 0, 28, 0, 29, 0,
927 0, 17, 0, 18, 19, 20, 0, 22, 0, 0,
928 0, 0, 23, 24, 25, 26, 85, 0, 0, 27,
929 0, 0, 31, 32, 33, 34, 0, 0, 0, 0,
930 0, 0, 0, 0, 0, 0, 0, 0, 12, 13,
931 0, 0, 0, 14, 15, 16, 0, 0, 65, 286,
932 0, 28, 0, 29, 0, 0, 17, 0, 18, 19,
933 20, 0, 22, 0, 0, 0, 0, 23, 24, 25,
934 26, 85, 0, 0, 27, 0, 0, 31, 32, 33,
935 34, 0, 0, 0, 0, 12, 13, 0, 0, 0,
936 14, 15, 16, 0, 0, 65, 292, 0, 28, 0,
937 29, 0, 0, 17, 0, 18, 19, 20, 0, 22,
938 0, 0, 0, 0, 23, 24, 25, 26, 85, 0,
939 0, 27, 0, 0, 31, 32, 33, 34, 12, 13,
940 0, 0, 0, 14, 15, 16, 0, 0, 65, 293,
941 0, 28, 0, 29, 0, 0, 17, 0, 18, 19,
942 20, 0, 22, 0, 0, 0, 0, 23, 24, 25,
943 26, 85, 0, 0, 27, 0, 0, 31, 32, 33,
944 34, 12, 13, 0, 0, 0, 14, 15, 16, 0,
945 0, 65, 294, 0, 28, 0, 29, 0, 0, 17,
946 0, 18, 19, 20, 0, 22, 0, 0, 0, 0,
947 23, 24, 25, 26, 85, 0, 0, 27, 0, 0,
948 31, 32, 33, 34, 0, 0, 12, 13, 0, 0,
949 0, 14, 15, 16, 0, 0, 65, 295, 0, 28,
950 0, 29, 0, 0, 17, 0, 18, 19, 20, 0,
951 22, 0, 0, 0, 0, 23, 24, 25, 26, 85,
952 0, 0, 27, 0, 0, 31, 32, 33, 34, 0,
953 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
954 0, 12, 13, 0, 0, 0, 14, 15, 16, 0,
955 0, 65, 296, 0, 28, 0, 29, 0, 0, 17,
956 0, 18, 19, 20, 0, 22, 0, 0, 0, 0,
957 23, 24, 25, 26, 85, 0, 0, 27, 0, 0,
958 31, 32, 33, 34, 0, 0, 0, 0, 12, 13,
959 0, 0, 0, 14, 15, 16, 0, 0, 65, 298,
960 0, 28, 0, 29, 0, 0, 17, 0, 18, 19,
961 20, 0, 22, 0, 0, 0, 0, 23, 24, 25,
962 26, 85, 0, 0, 27, 0, 0, 31, 32, 33,
963 34, 12, 13, 0, 0, 0, 14, 15, 16, 0,
964 0, 65, 108, 0, 28, 0, 29, 0, 0, 17,
965 0, 18, 19, 20, 0, 22, 0, 0, 0, 0,
966 23, 24, 25, 26, 0, 0, 0, 27, 0, 0,
967 31, 32, 33, 34, 12, 13, 0, 0, 0, 14,
968 15, 16, 0, 0, 0, 0, 0, 0, 65, 0,
969 0, 28, 17, 29, 18, 19, 20, 0, 22, 0,
970 0, 0, 0, 23, 24, 25, 26, 0, 0, 0,
971 27, 0, 0, 31, 32, 33, 34, 0, 0, 12,
972 13, 0, 0, 0, 14, 15, 16, 0, 0, 0,
973 0, 0, 0, 0, 0, 0, 0, 17, 0, 18,
974 19, 20, 65, 22, 0, 28, 0, 29, 23, 24,
975 25, 26, 0, 0, 0, 27, 0, 0, 31, 32,
976 33, 34, 0, 0, 0, 0, 0, 0, 0, 0,
977 0, 0, 0, 0, 12, 13, 0, 0, 0, 14,
978 15, 16, 0, 0, 0, 0, 0, 0, 0, 0,
979 0, 0, 17, 0, 18, 19, 20, 65, 22, 0,
980 28, 0, 29, 23, 24, 25, 26, 0, 0, 0,
981 27, 0, 0, 31, 32, 33, 34, 0, 0, 0,
982 0, 12, 13, 0, 0, 0, 14, 15, 16, 0,
983 0, 0, 0, 0, 0, 0, 0, 0, 0, 17,
984 0, 18, 19, 20, 65, 22, 0, 28, 0, 29,
985 23, 24, 25, 26, 0, 0, 0, 27, 0, 0,
986 31, 32, 33, 34, 12, 13, 0, 0, 0, 14,
987 15, 16, 0, 0, 0, 0, 0, 0, 0, 0,
988 0, 0, 17, 0, 18, 19, 20, 65, 22, 0,
989 28, 0, 29, 23, 24, 25, 26, 0, 0, 0,
990 27, 0, 0, 31, 32, 33, 34, 115, 0, 0,
991 85, 12, 13, 0, 0, 0, 14, 15, 16, 0,
992 0, 0, 0, 0, 0, 0, 0, 0, 0, 17,
993 0, 18, 19, 20, 65, 22, 0, 28, 0, 29,
994 23, 24, 25, 26, 0, 0, 0, 27, 0, 0,
995 31, 32, 33, 34, 0, 0, 0, 0, 0, 0,
996 0, 117, 0, 0, 0, 12, 13, 0, 0, 0,
997 14, 15, 16, 0, 0, 0, 0, 65, 0, 0,
998 28, 0, 29, 17, 0, 18, 19, 20, 0, 22,
999 0, 0, 0, 0, 23, 24, 25, 26, 0, 0,
1000 0, 27, 0, 0, 31, 32, 33, 34, 0, 0,
1001 0, 0, 0, 0, 0, 0, 139, 0, 0, 0,
1002 12, 13, 0, 0, 0, 14, 15, 16, 102, 0,
1003 0, 28, 0, 29, 0, 0, 0, 0, 17, 0,
1004 18, 19, 20, 0, 22, 0, 0, 0, 0, 23,
1005 24, 25, 26, 0, 0, 0, 27, 0, 0, 31,
1006 32, 33, 34, 212, 0, 0, 0, 12, 13, 0,
1007 0, 0, 14, 15, 16, 0, 0, 0, 0, 0,
1008 0, 0, 0, 0, 0, 17, 0, 18, 19, 20,
1009 0, 22, 0, 0, 0, 0, 23, 24, 25, 26,
1010 0, 0, 0, 27, 0, 0, 31, 32, 33, 34,
1011 12, 13, 0, 0, 0, 14, 15, 16, 0, 0,
1012 0, 0, 0, 0, 0, 0, 0, 0, 17, 0,
1013 18, 19, 20, 0, 22, 0, 0, 0, 0, 23,
1014 24, 25, 26, 0, 0, 0, 27, 0, 0, 31,
1015 32, 33, 34, 274, 0, 0, 0, 12, 13, 0,
1016 0, 0, 14, 15, 16, 0, 0, 0, 0, 0,
1017 0, 0, 0, 0, 0, 17, 0, 18, 19, 20,
1018 0, 22, 0, 0, 0, 0, 23, 24, 25, 26,
1019 0, 0, 0, 27, 0, 0, 31, 32, 33, 34,
1020 12, 13, 0, 0, 0, 14, 15, 16, 0, 0,
1021 0, 0, 0, 0, 0, 0, 0, 0, 17, 0,
1022 18, 19, 20, 0, 22, 0, 0, 0, 0, 23,
1023 24, 25, 26, 0, 0, 0, 27, 0, 0, 31,
1024 32, 33, 34, 0, 0, 0, 0, 66, 68, 0,
1025 0, 12, 13, 72, 0, 0, 14, 15, 16, 0,
1026 0, 90, 0, 0, 0, 0, 0, 0, 0, 17,
1027 0, 18, 19, 20, 0, 22, 0, 0, 0, 0,
1028 23, 24, 25, 26, 0, 0, 0, 27, 0, 0,
1029 31, 32, 33, 34, 0, 0, 0, 0, 0, 0,
1030 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1031 0, 145, 146, 147, 148, 149, 150, 0, 0, 0,
1032 0, 0, 0, 90, 0, 0, 0, 0, 90, 0,
1033 0, 90, 90, 0, 0, 90, 0, 90, 90, 0,
1034 0, 0, 90, 90, 0, 0, 0, 0, 0, 0,
1035 0, 0, 0, 90, 0, 0, 0, 90, 0, 90,
1036 90, 90, 90, 0, 0, 0, 0, 0, 0, 0,
1037 0, 0, 0, 90, 0, 0, 0, 0, 0, 0,
1038 0, 0, 0, 90, 0, 0, 0, 0, 0, 0,
1039 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1040 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1041 0, 90, 0, 0, 0, 0, 0, 0, 0, 0,
1042 0, 0, 0, 0, 0, 0, 0, 90, 90, 90,
1043 90, 0, 90, 0, 90, 90, 0, 0, 0, 0,
1044 0, 0, 90, 90, 0, 0, 0, 0, 0, 0,
1045 0, 0, 0, 0, 90, 90, 90, 90, 0, 0,
1046 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1047 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1048 0, 0, 90, 0, 0, 0, 0, 0, 0, 0,
1049 0, 0, 0, 0, 90, 90, 90, 90, 90, 0,
1052 short yycheck[] = { 41,
1053 0, 41, 60, 41, 37, 41, 59, 59, 39, 42,
1054 43, 63, 45, 63, 47, 59, 62, 41, 36, 102,
1055 36, 63, 36, 63, 302, 63, 123, 63, 37, 222,
1056 7, 44, 123, 42, 312, 289, 123, 37, 47, 94,
1057 40, 41, 42, 43, 44, 45, 63, 47, 302, 303,
1058 63, 225, 63, 30, 293, 0, 40, 112, 58, 59,
1059 60, 94, 62, 63, 40, 304, 305, 287, 41, 41,
1060 153, 44, 44, 302, 303, 261, 262, 40, 124, 112,
1061 63, 106, 107, 40, 40, 94, 40, 40, 40, 91,
1062 40, 40, 37, 93, 94, 261, 41, 42, 43, 44,
1063 45, 123, 47, 112, 40, 60, 112, 84, 133, 302,
1064 0, 41, 112, 58, 59, 60, 41, 62, 63, 312,
1065 41, 293, 99, 123, 124, 299, 300, 301, 281, 44,
1066 41, 41, 44, 93, 41, 153, 44, 153, 293, 153,
1067 41, 293, 41, 40, 40, 319, 320, 37, 93, 94,
1068 324, 41, 42, 43, 44, 45, 40, 47, 135, 136,
1069 59, 291, 41, 62, 261, 262, 59, 112, 58, 59,
1070 60, 91, 62, 63, 205, 273, 41, 40, 123, 124,
1071 93, 41, 272, 41, 0, 41, 59, 93, 59, 41,
1072 219, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1073 -1, -1, 227, 93, 94, -1, -1, 260, 261, 262,
1074 -1, 41, -1, -1, 41, -1, 260, 261, 262, 265,
1075 -1, -1, 112, 40, -1, 124, 43, -1, 45, 59,
1076 -1, -1, 59, 123, 124, 293, -1, -1, 290, 291,
1077 290, 291, 275, 220, 221, -1, 304, 305, 290, 291,
1078 290, 291, 290, 291, 290, 291, -1, 257, 258, 259,
1079 260, 261, 262, 263, 264, 265, 290, 291, 268, 269,
1080 270, -1, 297, 290, 291, 275, -1, 290, 291, 290,
1081 291, 281, 41, 283, 284, 285, 286, 287, 41, 289,
1082 290, 291, 292, 293, 294, 295, 296, 297, -1, 299,
1083 59, 301, 302, 303, 304, 305, 59, 290, 291, -1,
1084 287, -1, 257, 258, 259, 260, 261, 262, 263, 264,
1085 265, -1, -1, 268, 269, 270, -1, 304, -1, -1,
1086 275, -1, -1, -1, -1, -1, 281, 41, 283, 284,
1087 285, 286, 287, -1, 289, 290, 291, 292, 293, 294,
1088 295, 296, 297, -1, 299, 59, 301, 302, 303, 304,
1089 305, 260, 261, 262, -1, -1, 265, 257, 258, 259,
1090 260, 261, 262, 263, 264, 265, -1, -1, 268, 269,
1091 270, 0, -1, -1, -1, 275, -1, -1, -1, -1,
1092 41, 281, -1, 283, 284, 285, 286, 287, 41, 289,
1093 290, 291, 292, 293, 294, 295, 296, 297, 59, 299,
1094 -1, 301, 302, 303, 304, 305, 59, -1, 37, -1,
1095 -1, 40, 41, 42, 43, 44, 45, -1, 47, -1,
1096 260, 261, 262, 260, 261, 262, 0, -1, 41, 58,
1097 59, -1, -1, 62, 63, -1, 263, 264, 52, 53,
1098 -1, 268, 269, 270, -1, -1, 59, 61, 62, -1,
1099 -1, -1, -1, -1, 281, -1, 283, 284, 285, -1,
1100 287, 41, -1, 37, 93, 94, 40, 41, 42, 43,
1101 44, 45, 299, 47, -1, 302, 303, 304, 305, 59,
1102 -1, 0, -1, 112, 58, 59, 60, -1, 62, 63,
1103 -1, 260, 261, 262, 123, 124, -1, 260, 261, 262,
1104 -1, -1, -1, -1, -1, -1, 120, -1, -1, -1,
1105 -1, -1, -1, -1, -1, -1, -1, -1, 37, 93,
1106 94, 40, 41, 42, 43, -1, 45, -1, 47, -1,
1107 -1, -1, -1, -1, -1, -1, -1, -1, -1, 58,
1108 59, 60, -1, 62, 63, -1, 260, 261, 262, 123,
1109 124, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1110 -1, -1, -1, 177, 178, -1, -1, -1, -1, -1,
1111 -1, -1, -1, -1, 93, 94, -1, -1, -1, -1,
1112 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1113 -1, -1, -1, 112, -1, -1, -1, -1, -1, 260,
1114 261, 262, -1, -1, 123, 124, -1, 260, 261, 262,
1115 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1116 -1, -1, -1, -1, -1, -1, -1, -1, 257, 258,
1117 259, 260, 261, 262, 263, 264, 265, -1, -1, 268,
1118 269, 270, -1, -1, -1, -1, 275, 260, 261, 262,
1119 -1, -1, 281, 267, 283, 284, 285, 286, 287, -1,
1120 289, 290, 291, 292, 293, 294, 295, 296, 297, -1,
1121 299, -1, 301, 302, 303, 304, 305, -1, -1, -1,
1122 260, 261, 262, 257, 258, 259, 260, 261, 262, 263,
1123 264, 265, -1, -1, 268, 269, 270, -1, -1, -1,
1124 -1, 275, -1, -1, -1, -1, -1, 281, -1, 283,
1125 284, 285, 286, 287, -1, 289, 290, 291, 292, 293,
1126 294, 295, 296, 297, -1, 299, -1, 301, 302, 303,
1127 304, 305, -1, -1, -1, -1, -1, -1, 257, 258,
1128 259, 260, 261, 262, 263, 264, 265, -1, -1, 268,
1129 269, 270, 0, -1, -1, -1, 275, -1, -1, -1,
1130 -1, -1, 281, -1, 283, 284, 285, 286, 287, -1,
1131 289, 290, 291, 292, 293, 294, 295, 296, 297, -1,
1132 299, -1, 301, 302, 303, 304, 305, -1, -1, 37,
1133 -1, -1, 40, 41, 42, 43, 44, 45, -1, 47,
1134 -1, -1, -1, -1, -1, -1, -1, 0, -1, -1,
1135 58, 59, 60, -1, 62, 63, -1, -1, -1, -1,
1136 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1137 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1138 -1, -1, -1, -1, 37, 93, 94, 40, 41, 42,
1139 43, 44, 45, -1, 47, -1, -1, -1, -1, -1,
1140 -1, 0, -1, -1, 112, 58, 59, 60, -1, 62,
1141 63, -1, -1, -1, -1, 123, 124, -1, -1, -1,
1142 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1143 -1, -1, -1, -1, -1, -1, -1, -1, 37, -1,
1144 93, 40, 41, 42, 43, 44, 45, -1, 47, -1,
1145 -1, -1, -1, -1, -1, -1, -1, -1, -1, 58,
1146 59, 60, -1, 62, 63, -1, -1, -1, -1, -1,
1147 123, 124, -1, -1, -1, 0, -1, -1, -1, -1,
1148 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1149 -1, -1, -1, -1, 93, 94, -1, -1, -1, -1,
1150 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1151 -1, -1, 37, 112, -1, 40, 41, 42, 43, 44,
1152 45, -1, 47, -1, 123, 124, -1, -1, -1, -1,
1153 -1, -1, -1, 58, 59, 60, -1, 62, 63, -1,
1154 -1, -1, -1, -1, -1, -1, -1, -1, -1, 257,
1155 258, 259, 260, 261, 262, 263, 264, 265, -1, -1,
1156 268, 269, 270, -1, -1, -1, -1, 275, 93, -1,
1157 -1, -1, -1, 281, -1, 283, 284, 285, 286, 287,
1158 -1, 289, 290, -1, 292, 293, 294, 295, 296, 297,
1159 -1, 299, -1, 301, 302, 303, 304, 305, 123, 124,
1160 -1, -1, -1, -1, 257, 258, 259, 260, 261, 262,
1161 263, 264, 265, -1, -1, 268, 269, 270, -1, -1,
1162 -1, -1, 275, -1, -1, -1, -1, -1, 281, -1,
1163 283, 284, 285, 286, 287, -1, 289, 290, 291, 292,
1164 293, 294, 295, 296, 297, -1, 299, -1, 301, 302,
1165 303, 304, 305, -1, -1, -1, -1, -1, 257, 258,
1166 259, 260, 261, 262, 263, 264, 265, -1, -1, 268,
1167 269, 270, -1, -1, -1, -1, 275, -1, -1, -1,
1168 -1, -1, 281, -1, 283, 284, 285, 286, 287, -1,
1169 289, 290, 291, 292, 293, 294, 295, 296, 297, -1,
1170 299, -1, 301, -1, -1, 304, 305, -1, -1, -1,
1171 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1172 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1173 -1, -1, 257, 258, 259, 260, 261, 262, 263, 264,
1174 265, -1, -1, 268, 269, 270, 0, -1, -1, -1,
1175 275, -1, -1, -1, -1, -1, 281, -1, 283, 284,
1176 285, 286, 287, -1, 289, 290, 291, 292, 293, 294,
1177 295, 296, 297, -1, 299, -1, 301, 302, 303, 304,
1178 305, -1, -1, 37, -1, -1, 40, 41, 42, 43,
1179 44, 45, -1, 47, -1, -1, -1, -1, -1, -1,
1180 0, -1, -1, -1, 58, 59, 60, -1, 62, 63,
1181 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1182 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1183 -1, -1, -1, -1, -1, -1, -1, 37, -1, 93,
1184 40, 41, 42, 43, 44, 45, -1, 47, -1, -1,
1185 -1, -1, -1, -1, 0, -1, -1, -1, 58, 59,
1186 60, -1, 62, 63, -1, -1, -1, -1, -1, 123,
1187 124, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1188 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1189 -1, 37, -1, 93, 40, 41, 42, 43, 44, 45,
1190 -1, 47, -1, -1, -1, -1, -1, -1, -1, -1,
1191 -1, -1, 58, 59, 60, -1, 62, 63, -1, -1,
1192 -1, -1, -1, 123, 124, -1, -1, -1, -1, 0,
1193 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1194 -1, -1, -1, -1, -1, -1, -1, 93, -1, -1,
1195 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1196 -1, -1, -1, -1, -1, -1, 37, -1, -1, 40,
1197 41, 42, 43, 44, 45, -1, 47, 123, 124, -1,
1198 -1, -1, -1, -1, -1, -1, -1, 58, 59, 60,
1199 -1, 62, 63, -1, -1, -1, -1, -1, -1, -1,
1200 -1, -1, -1, 257, 258, 259, 260, 261, 262, 263,
1201 264, 265, -1, -1, 268, 269, 270, -1, -1, -1,
1202 -1, 275, 93, -1, -1, -1, -1, 281, -1, 283,
1203 284, 285, 286, 287, -1, 289, 290, 291, 292, 293,
1204 294, 295, 296, 297, -1, 299, -1, 301, 302, 303,
1205 304, 305, 123, 124, -1, -1, -1, 257, 258, 259,
1206 260, 261, 262, 263, 264, 265, -1, -1, 268, 269,
1207 270, -1, -1, -1, -1, 275, -1, -1, -1, -1,
1208 -1, 281, -1, 283, 284, 285, 286, 287, -1, 289,
1209 290, 291, 292, 293, 294, 295, 296, 297, -1, 299,
1210 -1, 301, 302, 303, 304, 305, -1, -1, -1, -1,
1211 -1, 257, 258, 259, 260, 261, 262, 263, 264, 265,
1212 -1, -1, 268, 269, 270, -1, -1, -1, -1, 275,
1213 -1, -1, -1, -1, -1, 281, -1, 283, 284, 285,
1214 286, 287, -1, 289, 290, 291, 292, 293, 294, 295,
1215 296, 297, -1, 299, -1, 301, 302, 303, 304, 305,
1216 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1217 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1218 -1, -1, -1, -1, -1, -1, 257, 258, 259, 260,
1219 261, 262, 263, 264, 265, -1, -1, 268, 269, 270,
1220 0, -1, -1, -1, 275, -1, -1, -1, -1, -1,
1221 281, -1, 283, 284, 285, 286, 287, -1, 289, 290,
1222 291, 292, 293, 294, 295, 296, 297, -1, 299, -1,
1223 301, 302, 303, 304, 305, -1, -1, 37, -1, -1,
1224 40, 41, 42, 43, 44, 45, -1, 47, -1, -1,
1225 -1, -1, -1, -1, -1, 0, -1, -1, 58, 59,
1226 60, -1, 62, 63, -1, -1, -1, -1, -1, -1,
1227 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1228 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1229 -1, -1, 37, 93, 94, 40, 41, 42, 43, 44,
1230 45, -1, 47, -1, -1, -1, -1, -1, -1, -1,
1231 0, -1, 112, 58, 59, 60, -1, 62, -1, -1,
1232 -1, -1, -1, 123, 124, -1, -1, -1, -1, -1,
1233 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1234 -1, -1, -1, -1, -1, -1, -1, -1, 93, 94,
1235 40, 41, -1, 43, 44, 45, -1, -1, -1, -1,
1236 -1, -1, -1, -1, -1, -1, -1, 112, 58, 59,
1237 60, -1, 62, 63, -1, -1, -1, -1, 123, 124,
1238 -1, -1, -1, 0, -1, -1, -1, -1, -1, -1,
1239 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1240 -1, -1, -1, 93, -1, -1, -1, -1, -1, -1,
1241 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1242 -1, -1, -1, 40, 41, -1, 43, 44, 45, -1,
1243 -1, -1, -1, 123, 124, -1, -1, -1, -1, -1,
1244 -1, 58, 59, 60, -1, 62, 63, -1, -1, -1,
1245 -1, -1, -1, -1, -1, -1, -1, 257, 258, 259,
1246 260, 261, 262, 263, 264, 265, -1, -1, 268, 269,
1247 270, -1, -1, -1, -1, 275, 93, -1, -1, -1,
1248 -1, 281, -1, 283, 284, 285, 286, 287, -1, -1,
1249 290, 291, 292, 293, 294, 295, 296, 297, -1, 299,
1250 -1, 301, -1, -1, 304, 305, 123, 124, -1, -1,
1251 -1, -1, 257, 258, 259, 260, 261, 262, 263, 264,
1252 265, -1, -1, 268, 269, 270, -1, -1, -1, -1,
1253 275, -1, -1, -1, -1, -1, 281, -1, 283, 284,
1254 285, 286, 287, -1, 289, -1, -1, 292, 293, 294,
1255 295, 296, 297, -1, 299, -1, 301, 302, 303, 304,
1256 305, -1, -1, -1, -1, -1, -1, 257, 258, 259,
1257 260, 261, 262, 263, 264, 265, -1, 0, 268, 269,
1258 270, -1, -1, -1, -1, 275, -1, -1, -1, -1,
1259 -1, 281, -1, 283, 284, 285, 286, 287, -1, 289,
1260 290, 291, 292, 293, 294, 295, 296, 297, -1, 299,
1261 -1, 301, 302, 303, 304, 305, -1, 40, -1, -1,
1262 43, -1, 45, -1, -1, -1, -1, -1, -1, -1,
1263 -1, -1, -1, -1, -1, -1, 59, -1, -1, -1,
1264 257, 258, 259, 260, 261, 262, 263, 264, 265, 0,
1265 -1, 268, 269, 270, -1, -1, -1, -1, 275, -1,
1266 -1, -1, -1, -1, 281, -1, 283, 284, 285, 286,
1267 287, -1, 289, 290, 291, 292, 293, 294, 295, 296,
1268 297, -1, 299, -1, 301, 302, 303, 304, 305, 40,
1269 41, -1, -1, 44, -1, -1, -1, -1, -1, 0,
1270 123, -1, -1, -1, -1, -1, -1, 58, 59, 60,
1271 -1, 62, 63, -1, -1, -1, -1, -1, -1, -1,
1272 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1273 -1, -1, -1, -1, -1, -1, -1, -1, -1, 40,
1274 41, -1, 93, 44, -1, -1, -1, -1, -1, -1,
1275 0, -1, -1, -1, -1, -1, -1, 58, 59, 60,
1276 -1, 62, 63, -1, -1, -1, -1, -1, -1, -1,
1277 -1, -1, 123, 124, -1, -1, -1, -1, -1, -1,
1278 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1279 40, -1, 93, 43, -1, 45, -1, -1, -1, -1,
1280 -1, -1, -1, -1, -1, -1, -1, -1, 0, 59,
1281 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1282 -1, -1, 123, 124, -1, -1, -1, -1, -1, -1,
1283 -1, -1, -1, -1, 257, 258, 259, 260, 261, 262,
1284 263, 264, -1, -1, -1, 268, 269, 270, 40, -1,
1285 -1, 43, -1, 45, -1, -1, -1, 0, 281, -1,
1286 283, 284, 285, 286, 287, -1, -1, 59, -1, 292,
1287 293, 294, 295, 123, -1, -1, 299, -1, 301, 302,
1288 303, 304, 305, -1, -1, -1, -1, -1, -1, -1,
1289 -1, -1, -1, -1, -1, -1, -1, 40, -1, -1,
1290 43, -1, 45, -1, -1, -1, 257, 258, 259, 260,
1291 261, 262, 263, 264, 265, -1, 59, 268, 269, 270,
1292 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1293 281, 123, 283, 284, 285, 286, 287, -1, 289, 290,
1294 291, 292, 293, 294, 295, 296, 297, -1, 299, -1,
1295 301, 302, 303, 304, 305, -1, 257, 258, 259, 260,
1296 261, 262, 263, 264, 265, -1, -1, 268, 269, 270,
1297 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1298 281, 0, 283, 284, 285, 286, 287, -1, 289, 290,
1299 291, 292, 293, 294, 295, 296, 297, -1, 299, -1,
1300 301, 302, 303, 304, 305, -1, -1, 257, 258, 259,
1301 260, 261, 262, 263, 264, -1, -1, -1, 268, 269,
1302 270, 40, -1, -1, 43, -1, 45, -1, -1, -1,
1303 -1, 281, -1, 283, 284, 285, 286, 287, -1, -1,
1304 0, -1, 292, 293, 294, 295, -1, -1, -1, 299,
1305 -1, 301, 302, 303, 304, 305, -1, -1, -1, -1,
1306 -1, -1, -1, -1, -1, 257, 258, 259, 260, -1,
1307 262, 263, 264, -1, -1, -1, 268, 269, 270, -1,
1308 40, -1, -1, 43, -1, 45, -1, -1, -1, 281,
1309 0, 283, 284, 285, 286, 287, -1, -1, -1, -1,
1310 292, 293, 294, 295, 123, -1, -1, 299, -1, 301,
1311 302, 303, 304, 305, 257, 258, 259, 260, 261, 262,
1312 263, 264, -1, -1, -1, 268, 269, 270, -1, -1,
1313 40, -1, -1, 43, -1, 45, -1, -1, 281, -1,
1314 283, 284, 285, 286, 287, -1, -1, -1, 0, 292,
1315 293, 294, 295, -1, -1, -1, 299, -1, 301, 302,
1316 303, 304, 305, 123, -1, -1, -1, -1, -1, -1,
1317 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1318 -1, -1, -1, -1, -1, 37, -1, -1, 40, 41,
1319 42, 43, 44, 45, -1, 47, -1, -1, -1, -1,
1320 -1, -1, -1, -1, -1, -1, 58, 59, 60, -1,
1321 62, 63, -1, 123, -1, -1, -1, -1, -1, -1,
1322 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1323 -1, -1, -1, -1, -1, -1, -1, -1, 257, 258,
1324 259, 93, 94, -1, 263, 264, -1, -1, -1, 268,
1325 269, 270, -1, -1, -1, -1, -1, -1, -1, -1,
1326 112, -1, 281, -1, 283, 284, 285, 286, 287, -1,
1327 -1, 123, 124, 292, 293, 294, 295, -1, -1, -1,
1328 299, -1, 301, 302, 303, 304, 305, -1, -1, -1,
1329 -1, -1, -1, -1, -1, -1, -1, 257, 258, 259,
1330 -1, -1, -1, 263, 264, -1, -1, -1, 268, 269,
1331 270, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1332 -1, 281, -1, 283, 284, 285, 286, 287, -1, -1,
1333 -1, -1, 292, 293, 294, 295, -1, -1, -1, 299,
1334 -1, 301, 302, 303, 304, 305, -1, 257, 258, 259,
1335 -1, -1, -1, 263, 264, -1, -1, -1, 268, 269,
1336 270, -1, -1, -1, -1, 40, -1, -1, 43, -1,
1337 45, 281, -1, 283, 284, 285, 286, 287, -1, -1,
1338 -1, -1, 292, 293, 294, 295, -1, -1, -1, 299,
1339 -1, 301, 302, 303, 304, 305, -1, -1, -1, -1,
1340 -1, -1, -1, -1, -1, 257, 258, 259, 260, 261,
1341 262, 263, 264, 265, -1, 0, 268, 269, 270, -1,
1342 -1, -1, -1, 275, -1, -1, -1, -1, -1, 281,
1343 -1, 283, 284, 285, 286, 287, -1, 289, 290, 291,
1344 292, -1, 294, 295, 296, 297, -1, 299, 123, 301,
1345 302, 303, 37, -1, -1, 40, 41, 42, 43, 44,
1346 45, -1, 47, 0, -1, -1, -1, -1, -1, -1,
1347 -1, -1, -1, 58, 59, -1, -1, 62, 63, -1,
1348 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1349 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1350 37, -1, -1, -1, 41, 42, -1, 44, 93, 94,
1351 47, 0, -1, -1, -1, -1, -1, -1, -1, -1,
1352 -1, 58, 59, 60, -1, 62, 63, 112, -1, -1,
1353 -1, -1, -1, -1, -1, -1, -1, -1, 123, 124,
1354 -1, -1, -1, -1, -1, -1, -1, -1, 37, -1,
1355 -1, -1, 41, 42, -1, 44, 93, 94, 47, -1,
1356 -1, -1, -1, -1, -1, -1, -1, -1, -1, 58,
1357 59, 60, -1, 62, 63, 112, -1, -1, -1, -1,
1358 -1, -1, 257, 258, 259, -1, 123, 124, 263, 264,
1359 -1, -1, -1, 268, 269, 270, -1, -1, -1, -1,
1360 -1, -1, -1, -1, 93, 94, 281, -1, 283, 284,
1361 285, 286, 287, -1, -1, -1, -1, 292, 293, 294,
1362 295, -1, -1, 112, 299, -1, 301, 302, 303, 304,
1363 305, -1, -1, -1, 123, 124, -1, -1, -1, -1,
1364 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1365 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1366 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1367 -1, -1, 257, 258, 259, 260, 261, 262, 263, 264,
1368 265, -1, -1, 268, 269, 270, -1, -1, -1, -1,
1369 275, -1, -1, -1, -1, -1, 281, -1, 283, 284,
1370 285, 286, 287, -1, 289, 290, 291, 292, -1, 294,
1371 295, 296, 297, -1, 299, -1, 301, 302, 303, -1,
1372 257, 258, 259, 260, 261, 262, -1, -1, 265, -1,
1373 -1, -1, -1, -1, -1, -1, -1, -1, 275, -1,
1374 -1, -1, -1, -1, -1, -1, -1, -1, -1, 286,
1375 -1, 0, 289, 290, 291, 292, 293, 294, 295, 296,
1376 297, -1, -1, -1, 301, -1, -1, -1, 257, 258,
1377 259, 260, 261, 262, -1, -1, 265, -1, -1, -1,
1378 -1, -1, -1, -1, -1, -1, 275, -1, 37, -1,
1379 -1, -1, 41, 42, -1, 44, 0, 286, 47, -1,
1380 289, 290, 291, 292, 293, 294, 295, 296, 297, 58,
1381 59, 60, 301, 62, 63, -1, -1, -1, -1, -1,
1382 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1383 -1, -1, -1, 37, -1, -1, -1, 41, 42, -1,
1384 44, 0, -1, 47, 93, 94, -1, -1, -1, -1,
1385 -1, -1, -1, -1, 58, 59, 60, -1, 62, 63,
1386 -1, -1, -1, 112, -1, -1, -1, -1, -1, -1,
1387 -1, -1, -1, -1, 123, 124, -1, -1, 37, -1,
1388 -1, -1, 41, 42, -1, 44, -1, -1, 47, 93,
1389 94, -1, -1, -1, -1, -1, -1, -1, -1, 58,
1390 59, 60, -1, 62, 63, -1, -1, -1, 112, -1,
1391 0, -1, -1, -1, -1, -1, -1, -1, -1, 123,
1392 124, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1393 -1, -1, -1, -1, 93, 94, -1, -1, -1, -1,
1394 -1, -1, -1, -1, -1, -1, -1, 37, -1, -1,
1395 -1, 41, 42, 112, 44, -1, -1, 47, -1, -1,
1396 -1, -1, -1, -1, 123, 124, -1, -1, 58, 59,
1397 60, -1, 62, 63, -1, -1, -1, -1, -1, -1,
1398 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1399 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1400 -1, -1, -1, 93, 94, -1, -1, -1, 257, 258,
1401 259, 260, 261, 262, -1, -1, 265, -1, -1, -1,
1402 -1, -1, 112, -1, -1, -1, 275, -1, -1, -1,
1403 -1, -1, -1, 123, 124, -1, -1, 286, -1, -1,
1404 289, 290, 291, 292, 293, 294, 295, 296, 297, -1,
1405 -1, -1, 301, 257, 258, 259, 260, 261, 262, -1,
1406 -1, 265, -1, -1, -1, -1, -1, -1, -1, -1,
1407 -1, 275, -1, -1, -1, -1, -1, -1, -1, -1,
1408 -1, -1, 286, -1, -1, 289, 290, 291, 292, 293,
1409 294, 295, 296, 297, -1, -1, -1, 301, 257, 258,
1410 259, 260, 261, 262, -1, -1, 265, -1, -1, -1,
1411 -1, -1, -1, -1, -1, -1, 275, -1, -1, 0,
1412 -1, -1, -1, -1, -1, -1, -1, 286, -1, -1,
1413 289, 290, 291, 292, 293, 294, 295, 296, 297, -1,
1414 -1, -1, 301, -1, -1, -1, -1, -1, -1, -1,
1415 -1, -1, -1, -1, -1, -1, 37, -1, -1, -1,
1416 41, 42, -1, 44, -1, -1, 47, 257, 258, 259,
1417 260, 261, 262, -1, -1, 265, -1, 58, 59, 60,
1418 -1, 62, 63, -1, -1, 275, 0, -1, -1, -1,
1419 -1, -1, -1, -1, -1, -1, 286, -1, -1, 289,
1420 290, 291, 292, 293, 294, 295, 296, 297, -1, -1,
1421 -1, 301, 93, 94, -1, -1, -1, -1, -1, -1,
1422 -1, -1, -1, 37, -1, -1, -1, 41, 42, -1,
1423 44, 112, -1, 47, 0, -1, -1, -1, -1, -1,
1424 -1, -1, 123, 124, 58, 59, 60, -1, 62, -1,
1425 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1426 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1427 -1, 37, -1, -1, -1, 41, 42, -1, 44, 93,
1428 94, 47, -1, -1, -1, -1, -1, -1, -1, 0,
1429 -1, -1, 58, 59, 60, -1, 62, -1, 112, -1,
1430 -1, -1, -1, -1, -1, -1, -1, -1, -1, 123,
1431 124, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1432 -1, -1, -1, -1, -1, -1, 37, 93, 94, -1,
1433 41, 42, -1, 44, -1, -1, 47, -1, -1, -1,
1434 -1, -1, -1, -1, -1, -1, 112, 58, 59, 60,
1435 -1, 62, -1, -1, -1, -1, -1, 123, 124, -1,
1436 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1437 -1, -1, -1, -1, -1, -1, 257, 258, 259, 260,
1438 261, 262, 93, 94, 265, 40, -1, -1, 43, -1,
1439 45, -1, -1, -1, 275, 0, -1, -1, -1, -1,
1440 -1, 112, -1, -1, -1, 286, -1, -1, 289, 290,
1441 291, -1, 123, 124, -1, 296, 297, -1, -1, -1,
1442 301, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1443 -1, -1, 37, -1, -1, -1, 41, 42, -1, 44,
1444 -1, -1, 47, 257, 258, 259, 260, 261, 262, -1,
1445 -1, 265, -1, 58, 59, 60, -1, 62, -1, 40,
1446 -1, 275, 43, -1, 45, -1, -1, -1, -1, -1,
1447 -1, -1, 286, -1, -1, 289, 290, 291, 59, -1,
1448 0, -1, 296, 297, -1, -1, -1, 301, 93, 94,
1449 -1, 257, 258, 259, 260, 261, 262, -1, -1, 265,
1450 -1, -1, -1, -1, -1, -1, -1, 112, -1, 275,
1451 -1, -1, -1, -1, -1, -1, -1, 37, 123, 124,
1452 286, 41, 42, 289, 290, 291, -1, 47, -1, -1,
1453 296, 297, -1, -1, -1, 301, -1, -1, 58, 59,
1454 60, -1, 62, -1, -1, -1, 257, 258, 259, 260,
1455 261, 262, 0, -1, 265, -1, -1, -1, -1, -1,
1456 -1, -1, -1, -1, 275, -1, -1, -1, -1, -1,
1457 -1, -1, -1, 93, 94, 286, -1, -1, 289, 290,
1458 291, -1, -1, -1, -1, 296, 297, -1, -1, 37,
1459 301, -1, 112, 41, 42, -1, 44, -1, -1, 47,
1460 -1, -1, -1, 123, 124, -1, 261, 262, 263, 264,
1461 58, 59, -1, 268, 269, 270, -1, -1, -1, -1,
1462 -1, -1, -1, -1, -1, -1, 281, -1, 283, 284,
1463 285, -1, 287, -1, -1, -1, -1, 292, 293, 294,
1464 295, -1, -1, -1, 299, 93, 94, 302, 303, 304,
1465 305, -1, 257, 258, 259, 260, 261, 262, -1, -1,
1466 265, -1, -1, -1, 112, -1, -1, -1, -1, -1,
1467 275, -1, -1, -1, -1, 123, 124, -1, 259, -1,
1468 -1, 286, 263, 264, 289, 290, 291, 268, 269, 270,
1469 -1, 296, 297, -1, -1, -1, 301, -1, -1, -1,
1470 281, -1, 283, 284, 285, -1, 287, -1, -1, -1,
1471 -1, 292, 293, 294, 295, -1, -1, -1, 299, -1,
1472 301, 302, 303, 304, 305, -1, -1, -1, -1, -1,
1473 -1, -1, -1, -1, -1, -1, -1, 257, 258, 259,
1474 260, 261, 262, -1, 7, 265, -1, -1, -1, -1,
1475 -1, -1, -1, -1, -1, 275, -1, -1, -1, -1,
1476 -1, -1, -1, -1, -1, -1, 286, 30, -1, 289,
1477 290, 291, -1, 36, -1, -1, 296, 297, -1, -1,
1478 -1, 301, -1, -1, -1, 48, -1, -1, 51, 52,
1479 53, 54, 55, -1, 57, 58, 59, -1, 61, 62,
1480 63, 64, 65, -1, -1, -1, -1, -1, -1, 257,
1481 258, 259, 260, 261, 262, -1, -1, 265, 81, -1,
1482 -1, 84, 85, 86, 87, 88, 89, 275, 49, 50,
1483 -1, -1, -1, -1, -1, -1, 99, -1, 286, 102,
1484 -1, 289, 290, 291, -1, -1, -1, -1, -1, -1,
1485 -1, 114, -1, 301, -1, -1, -1, 120, -1, 80,
1486 -1, 82, 83, -1, -1, -1, -1, -1, -1, -1,
1487 -1, -1, 135, 136, -1, 40, -1, -1, 43, -1,
1488 45, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1489 153, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1490 -1, -1, 165, 166, 167, 168, 169, -1, -1, -1,
1491 -1, 174, 175, -1, 177, 178, -1, -1, -1, 182,
1492 -1, -1, -1, 186, -1, -1, -1, -1, -1, -1,
1493 -1, -1, -1, -1, 197, 156, 157, 200, -1, -1,
1494 203, 204, -1, -1, -1, -1, -1, -1, -1, -1,
1495 17, -1, -1, -1, -1, 176, -1, 220, 221, 222,
1496 -1, 28, 29, -1, 31, 32, 187, 34, 189, -1,
1497 191, -1, -1, -1, -1, 42, -1, -1, 241, -1,
1498 243, -1, 245, -1, 247, -1, 249, -1, -1, -1,
1499 -1, 254, -1, 214, -1, -1, 259, 260, 40, -1,
1500 -1, 43, -1, 45, 267, -1, -1, -1, 229, 230,
1501 231, 232, 233, -1, -1, -1, -1, 59, -1, -1,
1502 -1, -1, -1, -1, 287, 92, 93, 94, 95, 96,
1503 97, -1, -1, -1, -1, -1, -1, 104, -1, -1,
1504 -1, 304, 109, -1, -1, 112, 113, -1, -1, 116,
1505 -1, 118, 119, -1, -1, -1, 123, 124, -1, 280,
1506 -1, -1, -1, 284, 285, 286, -1, 134, -1, 290,
1507 -1, 138, -1, 140, 141, 142, 143, 40, -1, -1,
1508 43, 123, 45, -1, 151, -1, -1, 154, -1, -1,
1509 -1, -1, -1, -1, 315, 316, 59, 164, 263, 264,
1510 321, 266, 267, 268, 269, 270, -1, -1, -1, -1,
1511 -1, 276, 277, 278, 279, 280, 281, -1, 283, 284,
1512 285, -1, 287, 288, -1, 192, -1, 292, 293, 294,
1513 295, -1, -1, -1, 299, -1, -1, 302, 303, 304,
1514 305, 208, 209, 210, 211, -1, 213, -1, 215, 216,
1515 -1, -1, -1, -1, -1, -1, 223, 224, -1, -1,
1516 123, -1, 125, -1, -1, -1, -1, -1, 235, 236,
1517 237, 238, -1, 40, -1, -1, 43, -1, 45, -1,
1518 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1519 -1, -1, 59, -1, -1, -1, 263, -1, -1, -1,
1520 -1, -1, -1, -1, -1, -1, -1, -1, 275, 276,
1521 277, 278, 279, -1, 281, 282, 283, -1, 260, 261,
1522 262, 263, 264, -1, 266, 267, 268, 269, 270, 271,
1523 -1, 273, 274, -1, 276, 277, 278, 279, 280, 281,
1524 282, 283, 284, 285, -1, 287, 288, -1, -1, -1,
1525 292, 293, 294, 295, -1, -1, 123, 299, 125, -1,
1526 302, 303, 304, 305, 40, -1, -1, 43, -1, 45,
1527 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1528 -1, -1, -1, 59, -1, -1, -1, -1, -1, -1,
1529 -1, -1, -1, -1, -1, -1, -1, 260, -1, -1,
1530 263, 264, -1, 266, 267, 268, 269, 270, 271, 272,
1531 273, 274, -1, 276, 277, 278, 279, 280, 281, 282,
1532 283, 284, 285, -1, 287, 288, -1, -1, -1, 292,
1533 293, 294, 295, -1, -1, -1, 299, -1, -1, 302,
1534 303, 304, 305, -1, -1, -1, -1, 123, 40, 125,
1535 -1, 43, -1, 45, -1, -1, -1, -1, -1, -1,
1536 -1, -1, -1, -1, -1, -1, -1, 59, -1, -1,
1537 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1538 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1539 -1, -1, -1, 260, -1, -1, 263, 264, -1, 266,
1540 267, 268, 269, 270, 271, 272, 273, 274, -1, 276,
1541 277, 278, 279, 280, 281, 282, 283, 284, 285, -1,
1542 287, 288, -1, -1, -1, 292, 293, 294, 295, -1,
1543 -1, 123, 299, 125, -1, 302, 303, 304, 305, 40,
1544 -1, -1, 43, -1, 45, -1, -1, -1, -1, -1,
1545 -1, -1, -1, -1, -1, -1, -1, -1, 59, -1,
1546 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1547 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1548 -1, -1, -1, -1, 260, -1, -1, 263, 264, -1,
1549 266, 267, 268, 269, 270, 271, 272, 273, 274, -1,
1550 276, 277, 278, 279, 280, 281, 282, 283, 284, 285,
1551 -1, 287, 288, -1, -1, -1, 292, 293, 294, 295,
1552 -1, -1, 123, 299, 125, -1, 302, 303, 304, 305,
1553 -1, 40, -1, -1, 43, -1, 45, -1, -1, -1,
1554 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1555 59, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1556 -1, -1, -1, -1, -1, -1, -1, -1, 260, -1,
1557 -1, 263, 264, -1, 266, 267, 268, 269, 270, 271,
1558 272, 273, 274, -1, 276, 277, 278, 279, 280, 281,
1559 282, 283, 284, 285, -1, 287, 288, -1, -1, -1,
1560 292, 293, 294, 295, -1, -1, -1, 299, -1, -1,
1561 302, 303, 304, 305, 123, -1, 125, -1, -1, -1,
1562 -1, -1, 40, -1, -1, 43, -1, 45, -1, -1,
1563 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1564 -1, 59, -1, -1, -1, -1, -1, -1, -1, -1,
1565 -1, -1, -1, -1, -1, -1, -1, -1, -1, 260,
1566 -1, -1, 263, 264, -1, 266, 267, 268, 269, 270,
1567 271, 272, 273, 274, -1, 276, 277, 278, 279, 280,
1568 281, 282, 283, 284, 285, -1, 287, 288, -1, -1,
1569 -1, 292, 293, 294, 295, -1, -1, -1, 299, -1,
1570 -1, 302, 303, 304, 305, 123, 40, 125, -1, 43,
1571 -1, 45, -1, -1, -1, -1, -1, -1, -1, -1,
1572 -1, -1, -1, -1, -1, 59, -1, -1, -1, -1,
1573 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1574 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1575 -1, 260, -1, -1, 263, 264, -1, 266, 267, 268,
1576 269, 270, 271, 272, 273, 274, -1, 276, 277, 278,
1577 279, 280, 281, 282, 283, 284, 285, -1, 287, 288,
1578 -1, -1, -1, 292, 293, 294, 295, -1, -1, 123,
1579 299, 125, -1, 302, 303, 304, 305, 40, -1, -1,
1580 43, -1, 45, -1, -1, -1, -1, -1, -1, -1,
1581 -1, -1, -1, -1, -1, -1, 59, -1, -1, -1,
1582 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1583 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1584 -1, -1, 260, -1, -1, 263, 264, -1, 266, 267,
1585 268, 269, 270, 271, 272, 273, 274, -1, 276, 277,
1586 278, 279, 280, 281, 282, 283, 284, 285, -1, 287,
1587 288, -1, -1, -1, 292, 293, 294, 295, -1, -1,
1588 123, 299, 125, -1, 302, 303, 304, 305, -1, 40,
1589 -1, -1, 43, -1, 45, -1, -1, -1, -1, -1,
1590 -1, -1, -1, -1, -1, -1, -1, -1, 59, -1,
1591 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1592 -1, -1, -1, -1, -1, -1, 260, -1, -1, 263,
1593 264, -1, 266, 267, 268, 269, 270, 271, 272, 273,
1594 274, -1, 276, 277, 278, 279, 280, 281, 282, 283,
1595 284, 285, -1, 287, 288, -1, -1, -1, 292, 293,
1596 294, 295, -1, -1, -1, 299, -1, -1, 302, 303,
1597 304, 305, 123, -1, 125, -1, -1, -1, -1, -1,
1598 40, -1, -1, 43, -1, 45, -1, -1, -1, -1,
1599 -1, -1, -1, -1, -1, -1, -1, -1, -1, 59,
1600 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1601 -1, -1, -1, -1, -1, -1, -1, 260, -1, -1,
1602 263, 264, -1, 266, 267, 268, 269, 270, 271, -1,
1603 273, 274, -1, 276, 277, 278, 279, 280, 281, 282,
1604 283, 284, 285, -1, 287, 288, -1, -1, -1, 292,
1605 293, 294, 295, -1, -1, -1, 299, -1, -1, 302,
1606 303, 304, 305, 123, 40, 125, -1, 43, -1, 45,
1607 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1608 -1, -1, -1, 59, -1, -1, -1, -1, -1, -1,
1609 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1610 -1, -1, -1, -1, -1, -1, -1, -1, -1, 260,
1611 -1, -1, 263, 264, -1, 266, 267, 268, 269, 270,
1612 271, -1, 273, 274, -1, 276, 277, 278, 279, 280,
1613 281, 282, 283, 284, 285, -1, 287, 288, -1, -1,
1614 -1, 292, 293, 294, 295, -1, -1, 123, 299, 125,
1615 -1, 302, 303, 304, 305, 40, -1, -1, 43, -1,
1616 45, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1617 -1, -1, -1, -1, 59, -1, -1, -1, -1, -1,
1618 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1619 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1620 260, -1, -1, 263, 264, -1, 266, 267, 268, 269,
1621 270, 271, -1, 273, 274, -1, 276, 277, 278, 279,
1622 280, 281, 282, 283, 284, 285, -1, 287, 288, -1,
1623 -1, -1, 292, 293, 294, 295, -1, -1, 123, 299,
1624 125, -1, 302, 303, 304, 305, -1, 40, -1, -1,
1625 43, -1, 45, -1, -1, -1, -1, -1, -1, -1,
1626 -1, -1, -1, -1, -1, -1, 59, -1, -1, -1,
1627 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1628 -1, -1, -1, -1, 260, -1, -1, 263, 264, -1,
1629 266, 267, 268, 269, 270, 271, -1, 273, 274, -1,
1630 276, 277, 278, 279, 280, 281, 282, 283, 284, 285,
1631 -1, 287, 288, -1, -1, -1, 292, 293, 294, 295,
1632 -1, -1, -1, 299, -1, -1, 302, 303, 304, 305,
1633 123, -1, 125, -1, -1, -1, -1, -1, 40, -1,
1634 -1, 43, -1, 45, -1, -1, -1, -1, -1, -1,
1635 -1, -1, -1, -1, -1, -1, -1, 59, -1, -1,
1636 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1637 -1, -1, -1, -1, -1, 260, -1, -1, 263, 264,
1638 -1, 266, 267, 268, 269, 270, 271, -1, 273, 274,
1639 -1, 276, 277, 278, 279, 280, 281, 282, 283, 284,
1640 285, -1, 287, 288, -1, -1, -1, 292, 293, 294,
1641 295, -1, -1, -1, 299, -1, -1, 302, 303, 304,
1642 305, 123, 40, 125, -1, 43, -1, 45, -1, -1,
1643 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1644 -1, 59, -1, -1, -1, -1, -1, -1, -1, -1,
1645 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1646 -1, -1, -1, -1, -1, -1, -1, 260, -1, -1,
1647 263, 264, -1, 266, 267, 268, 269, 270, 271, -1,
1648 273, 274, -1, 276, 277, 278, 279, 280, 281, 282,
1649 283, 284, 285, 40, 287, 288, 43, 44, 45, 292,
1650 293, 294, 295, -1, -1, 123, 299, 125, -1, 302,
1651 303, 304, 305, 60, -1, 62, 63, -1, -1, -1,
1652 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1653 -1, -1, -1, -1, -1, -1, -1, 40, -1, -1,
1654 43, -1, 45, -1, -1, -1, -1, -1, -1, -1,
1655 -1, -1, -1, -1, -1, -1, -1, 60, 260, 62,
1656 63, 263, 264, -1, 266, 267, 268, 269, 270, 271,
1657 -1, 273, 274, -1, 276, 277, 278, 279, 280, 281,
1658 282, 283, 284, 285, 40, 287, 288, 43, -1, 45,
1659 292, 293, 294, 295, -1, -1, -1, 299, -1, -1,
1660 302, 303, 304, 305, -1, -1, -1, -1, -1, -1,
1661 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1662 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1663 -1, 40, 41, -1, 43, 44, 45, -1, -1, -1,
1664 -1, -1, 260, -1, -1, 263, 264, -1, 266, 267,
1665 268, 269, 270, 271, 63, 273, 274, -1, 276, 277,
1666 278, 279, 280, 281, 282, 283, 284, 285, -1, 287,
1667 288, -1, -1, -1, 292, 293, 294, 295, -1, -1,
1668 -1, 299, -1, -1, 302, 303, 304, 305, 40, 41,
1669 -1, 43, 44, 45, -1, -1, -1, -1, -1, -1,
1670 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1671 -1, 63, -1, -1, -1, -1, 263, 264, -1, -1,
1672 -1, 268, 269, 270, -1, -1, -1, -1, -1, -1,
1673 -1, -1, -1, -1, 281, -1, 283, 284, 285, -1,
1674 287, -1, -1, -1, -1, 292, 293, 294, 295, 296,
1675 297, -1, 299, -1, -1, 302, 303, 304, 305, -1,
1676 263, 264, -1, -1, -1, 268, 269, 270, -1, -1,
1677 -1, -1, 40, 41, -1, 43, 44, 45, 281, -1,
1678 283, 284, 285, -1, 287, -1, -1, -1, -1, 292,
1679 293, 294, 295, 296, 297, 63, 299, -1, -1, 302,
1680 303, 304, 305, 259, -1, 261, 262, 263, 264, -1,
1681 -1, -1, 268, 269, 270, -1, -1, 40, 41, -1,
1682 43, 44, 45, -1, -1, 281, -1, 283, 284, 285,
1683 -1, 287, -1, -1, -1, -1, 292, 293, 294, 295,
1684 63, -1, -1, 299, -1, 301, 302, 303, 304, 305,
1685 -1, -1, -1, -1, 263, 264, -1, -1, -1, 268,
1686 269, 270, -1, -1, 40, 41, -1, 43, 44, 45,
1687 -1, -1, 281, -1, 283, 284, 285, -1, 287, -1,
1688 -1, -1, -1, 292, 293, 294, 295, 63, -1, -1,
1689 299, -1, -1, 302, 303, 304, 305, -1, -1, -1,
1690 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1691 -1, 263, 264, -1, -1, -1, 268, 269, 270, 40,
1692 -1, -1, 43, -1, 45, -1, -1, -1, -1, 281,
1693 -1, 283, 284, 285, -1, 287, -1, -1, -1, -1,
1694 292, 293, 294, 295, -1, -1, -1, 299, -1, -1,
1695 302, 303, 304, 305, -1, -1, -1, -1, -1, -1,
1696 -1, -1, -1, -1, -1, -1, 40, -1, -1, 43,
1697 -1, 45, -1, -1, -1, -1, -1, -1, -1, -1,
1698 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1699 -1, -1, -1, -1, -1, 263, 264, -1, -1, -1,
1700 268, 269, 270, -1, -1, -1, -1, -1, -1, -1,
1701 -1, -1, -1, 281, -1, 283, 284, 285, -1, 287,
1702 -1, -1, -1, -1, 292, 293, 294, 295, -1, -1,
1703 -1, 299, -1, -1, 302, 303, 304, 305, -1, -1,
1704 263, 264, -1, -1, -1, 268, 269, 270, -1, -1,
1705 40, -1, -1, 43, 44, 45, -1, -1, 281, -1,
1706 283, 284, 285, -1, 287, -1, -1, -1, -1, 292,
1707 293, 294, 295, 63, -1, -1, 299, -1, -1, 302,
1708 303, 304, 305, -1, -1, -1, -1, 263, 264, -1,
1709 -1, -1, 268, 269, 270, -1, -1, 40, 41, -1,
1710 43, -1, 45, -1, -1, 281, -1, 283, 284, 285,
1711 -1, 287, -1, -1, -1, -1, 292, 293, 294, 295,
1712 63, -1, -1, 299, -1, -1, 302, 303, 304, 305,
1713 -1, -1, -1, -1, -1, -1, -1, -1, 259, -1,
1714 -1, -1, 263, 264, -1, -1, -1, 268, 269, 270,
1715 -1, -1, 40, -1, -1, 43, 44, 45, -1, -1,
1716 281, -1, 283, 284, 285, -1, 287, -1, -1, -1,
1717 -1, 292, 293, 294, 295, 63, -1, -1, 299, -1,
1718 301, 302, 303, 304, 305, 259, -1, -1, -1, 263,
1719 264, -1, -1, -1, 268, 269, 270, -1, -1, 40,
1720 -1, -1, 43, 44, 45, -1, -1, 281, -1, 283,
1721 284, 285, -1, 287, -1, -1, -1, -1, 292, 293,
1722 294, 295, 63, -1, -1, 299, -1, 301, 302, 303,
1723 304, 305, -1, -1, -1, -1, -1, -1, -1, -1,
1724 -1, -1, 40, -1, -1, 43, 44, 45, -1, -1,
1725 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1726 -1, -1, -1, -1, -1, 63, -1, -1, -1, -1,
1727 -1, -1, -1, 263, 264, -1, -1, -1, 268, 269,
1728 270, -1, -1, -1, -1, 40, -1, -1, 43, 44,
1729 45, 281, -1, 283, 284, 285, -1, 287, -1, -1,
1730 -1, -1, 292, 293, 294, 295, -1, -1, 63, 299,
1731 -1, -1, 302, 303, 304, 305, -1, -1, -1, -1,
1732 263, 264, -1, -1, -1, 268, 269, 270, -1, -1,
1733 40, -1, -1, 43, 44, 45, -1, -1, 281, -1,
1734 283, 284, 285, -1, 287, -1, -1, -1, -1, 292,
1735 293, 294, 295, 63, -1, -1, 299, -1, -1, 302,
1736 303, 304, 305, -1, -1, -1, -1, -1, -1, -1,
1737 -1, -1, -1, -1, -1, 263, 264, -1, -1, -1,
1738 268, 269, 270, -1, -1, 40, -1, -1, 43, 44,
1739 45, -1, -1, 281, -1, 283, 284, 285, -1, 287,
1740 -1, -1, -1, -1, 292, 293, 294, 295, 63, -1,
1741 -1, 299, -1, -1, 302, 303, 304, 305, -1, -1,
1742 -1, -1, 263, 264, -1, -1, -1, 268, 269, 270,
1743 -1, -1, 40, -1, -1, 43, -1, 45, -1, -1,
1744 281, -1, 283, 284, 285, -1, 287, -1, -1, -1,
1745 58, 292, 293, 294, 295, 63, -1, -1, 299, -1,
1746 -1, 302, 303, 304, 305, 263, 264, -1, -1, -1,
1747 268, 269, 270, -1, -1, 40, -1, -1, 43, -1,
1748 45, -1, -1, 281, -1, 283, 284, 285, -1, 287,
1749 -1, -1, -1, 58, 292, 293, 294, 295, 63, -1,
1750 -1, 299, -1, -1, 302, 303, 304, 305, 263, 264,
1751 -1, -1, -1, 268, 269, 270, -1, -1, 40, 41,
1752 -1, 43, -1, 45, -1, -1, 281, -1, 283, 284,
1753 285, -1, 287, -1, -1, -1, -1, 292, 293, 294,
1754 295, 63, -1, -1, 299, -1, -1, 302, 303, 304,
1755 305, -1, -1, 263, 264, -1, -1, -1, 268, 269,
1756 270, -1, -1, 40, 41, -1, 43, -1, 45, -1,
1757 -1, 281, -1, 283, 284, 285, -1, 287, -1, -1,
1758 -1, -1, 292, 293, 294, 295, 63, -1, -1, 299,
1759 -1, -1, 302, 303, 304, 305, -1, -1, -1, -1,
1760 -1, -1, -1, -1, -1, -1, -1, -1, 263, 264,
1761 -1, -1, -1, 268, 269, 270, -1, -1, 40, 41,
1762 -1, 43, -1, 45, -1, -1, 281, -1, 283, 284,
1763 285, -1, 287, -1, -1, -1, -1, 292, 293, 294,
1764 295, 63, -1, -1, 299, -1, -1, 302, 303, 304,
1765 305, -1, -1, -1, -1, 263, 264, -1, -1, -1,
1766 268, 269, 270, -1, -1, 40, 41, -1, 43, -1,
1767 45, -1, -1, 281, -1, 283, 284, 285, -1, 287,
1768 -1, -1, -1, -1, 292, 293, 294, 295, 63, -1,
1769 -1, 299, -1, -1, 302, 303, 304, 305, 263, 264,
1770 -1, -1, -1, 268, 269, 270, -1, -1, 40, 41,
1771 -1, 43, -1, 45, -1, -1, 281, -1, 283, 284,
1772 285, -1, 287, -1, -1, -1, -1, 292, 293, 294,
1773 295, 63, -1, -1, 299, -1, -1, 302, 303, 304,
1774 305, 263, 264, -1, -1, -1, 268, 269, 270, -1,
1775 -1, 40, 41, -1, 43, -1, 45, -1, -1, 281,
1776 -1, 283, 284, 285, -1, 287, -1, -1, -1, -1,
1777 292, 293, 294, 295, 63, -1, -1, 299, -1, -1,
1778 302, 303, 304, 305, -1, -1, 263, 264, -1, -1,
1779 -1, 268, 269, 270, -1, -1, 40, 41, -1, 43,
1780 -1, 45, -1, -1, 281, -1, 283, 284, 285, -1,
1781 287, -1, -1, -1, -1, 292, 293, 294, 295, 63,
1782 -1, -1, 299, -1, -1, 302, 303, 304, 305, -1,
1783 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1784 -1, 263, 264, -1, -1, -1, 268, 269, 270, -1,
1785 -1, 40, 41, -1, 43, -1, 45, -1, -1, 281,
1786 -1, 283, 284, 285, -1, 287, -1, -1, -1, -1,
1787 292, 293, 294, 295, 63, -1, -1, 299, -1, -1,
1788 302, 303, 304, 305, -1, -1, -1, -1, 263, 264,
1789 -1, -1, -1, 268, 269, 270, -1, -1, 40, 41,
1790 -1, 43, -1, 45, -1, -1, 281, -1, 283, 284,
1791 285, -1, 287, -1, -1, -1, -1, 292, 293, 294,
1792 295, 63, -1, -1, 299, -1, -1, 302, 303, 304,
1793 305, 263, 264, -1, -1, -1, 268, 269, 270, -1,
1794 -1, 40, 41, -1, 43, -1, 45, -1, -1, 281,
1795 -1, 283, 284, 285, -1, 287, -1, -1, -1, -1,
1796 292, 293, 294, 295, -1, -1, -1, 299, -1, -1,
1797 302, 303, 304, 305, 263, 264, -1, -1, -1, 268,
1798 269, 270, -1, -1, -1, -1, -1, -1, 40, -1,
1799 -1, 43, 281, 45, 283, 284, 285, -1, 287, -1,
1800 -1, -1, -1, 292, 293, 294, 295, -1, -1, -1,
1801 299, -1, -1, 302, 303, 304, 305, -1, -1, 263,
1802 264, -1, -1, -1, 268, 269, 270, -1, -1, -1,
1803 -1, -1, -1, -1, -1, -1, -1, 281, -1, 283,
1804 284, 285, 40, 287, -1, 43, -1, 45, 292, 293,
1805 294, 295, -1, -1, -1, 299, -1, -1, 302, 303,
1806 304, 305, -1, -1, -1, -1, -1, -1, -1, -1,
1807 -1, -1, -1, -1, 263, 264, -1, -1, -1, 268,
1808 269, 270, -1, -1, -1, -1, -1, -1, -1, -1,
1809 -1, -1, 281, -1, 283, 284, 285, 40, 287, -1,
1810 43, -1, 45, 292, 293, 294, 295, -1, -1, -1,
1811 299, -1, -1, 302, 303, 304, 305, -1, -1, -1,
1812 -1, 263, 264, -1, -1, -1, 268, 269, 270, -1,
1813 -1, -1, -1, -1, -1, -1, -1, -1, -1, 281,
1814 -1, 283, 284, 285, 40, 287, -1, 43, -1, 45,
1815 292, 293, 294, 295, -1, -1, -1, 299, -1, -1,
1816 302, 303, 304, 305, 263, 264, -1, -1, -1, 268,
1817 269, 270, -1, -1, -1, -1, -1, -1, -1, -1,
1818 -1, -1, 281, -1, 283, 284, 285, 40, 287, -1,
1819 43, -1, 45, 292, 293, 294, 295, -1, -1, -1,
1820 299, -1, -1, 302, 303, 304, 305, 259, -1, -1,
1821 63, 263, 264, -1, -1, -1, 268, 269, 270, -1,
1822 -1, -1, -1, -1, -1, -1, -1, -1, -1, 281,
1823 -1, 283, 284, 285, 40, 287, -1, 43, -1, 45,
1824 292, 293, 294, 295, -1, -1, -1, 299, -1, -1,
1825 302, 303, 304, 305, -1, -1, -1, -1, -1, -1,
1826 -1, 259, -1, -1, -1, 263, 264, -1, -1, -1,
1827 268, 269, 270, -1, -1, -1, -1, 40, -1, -1,
1828 43, -1, 45, 281, -1, 283, 284, 285, -1, 287,
1829 -1, -1, -1, -1, 292, 293, 294, 295, -1, -1,
1830 -1, 299, -1, -1, 302, 303, 304, 305, -1, -1,
1831 -1, -1, -1, -1, -1, -1, 259, -1, -1, -1,
1832 263, 264, -1, -1, -1, 268, 269, 270, 40, -1,
1833 -1, 43, -1, 45, -1, -1, -1, -1, 281, -1,
1834 283, 284, 285, -1, 287, -1, -1, -1, -1, 292,
1835 293, 294, 295, -1, -1, -1, 299, -1, -1, 302,
1836 303, 304, 305, 259, -1, -1, -1, 263, 264, -1,
1837 -1, -1, 268, 269, 270, -1, -1, -1, -1, -1,
1838 -1, -1, -1, -1, -1, 281, -1, 283, 284, 285,
1839 -1, 287, -1, -1, -1, -1, 292, 293, 294, 295,
1840 -1, -1, -1, 299, -1, -1, 302, 303, 304, 305,
1841 263, 264, -1, -1, -1, 268, 269, 270, -1, -1,
1842 -1, -1, -1, -1, -1, -1, -1, -1, 281, -1,
1843 283, 284, 285, -1, 287, -1, -1, -1, -1, 292,
1844 293, 294, 295, -1, -1, -1, 299, -1, -1, 302,
1845 303, 304, 305, 259, -1, -1, -1, 263, 264, -1,
1846 -1, -1, 268, 269, 270, -1, -1, -1, -1, -1,
1847 -1, -1, -1, -1, -1, 281, -1, 283, 284, 285,
1848 -1, 287, -1, -1, -1, -1, 292, 293, 294, 295,
1849 -1, -1, -1, 299, -1, -1, 302, 303, 304, 305,
1850 263, 264, -1, -1, -1, 268, 269, 270, -1, -1,
1851 -1, -1, -1, -1, -1, -1, -1, -1, 281, -1,
1852 283, 284, 285, -1, 287, -1, -1, -1, -1, 292,
1853 293, 294, 295, -1, -1, -1, 299, -1, -1, 302,
1854 303, 304, 305, -1, -1, -1, -1, 28, 29, -1,
1855 -1, 263, 264, 34, -1, -1, 268, 269, 270, -1,
1856 -1, 42, -1, -1, -1, -1, -1, -1, -1, 281,
1857 -1, 283, 284, 285, -1, 287, -1, -1, -1, -1,
1858 292, 293, 294, 295, -1, -1, -1, 299, -1, -1,
1859 302, 303, 304, 305, -1, -1, -1, -1, -1, -1,
1860 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1861 -1, 92, 93, 94, 95, 96, 97, -1, -1, -1,
1862 -1, -1, -1, 104, -1, -1, -1, -1, 109, -1,
1863 -1, 112, 113, -1, -1, 116, -1, 118, 119, -1,
1864 -1, -1, 123, 124, -1, -1, -1, -1, -1, -1,
1865 -1, -1, -1, 134, -1, -1, -1, 138, -1, 140,
1866 141, 142, 143, -1, -1, -1, -1, -1, -1, -1,
1867 -1, -1, -1, 154, -1, -1, -1, -1, -1, -1,
1868 -1, -1, -1, 164, -1, -1, -1, -1, -1, -1,
1869 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1870 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1871 -1, 192, -1, -1, -1, -1, -1, -1, -1, -1,
1872 -1, -1, -1, -1, -1, -1, -1, 208, 209, 210,
1873 211, -1, 213, -1, 215, 216, -1, -1, -1, -1,
1874 -1, -1, 223, 224, -1, -1, -1, -1, -1, -1,
1875 -1, -1, -1, -1, 235, 236, 237, 238, -1, -1,
1876 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1877 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1878 -1, -1, 263, -1, -1, -1, -1, -1, -1, -1,
1879 -1, -1, -1, -1, 275, 276, 277, 278, 279, -1,
1886 #define YYMAXTOKEN 305
1889 "end-of-file",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1890 0,0,0,"'%'",0,0,"'('","')'","'*'","'+'","','","'-'",0,"'/'",0,0,0,0,0,0,0,0,0,0,
1891 "':'","';'","'<'",0,"'>'","'?'",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1892 0,0,0,"'['",0,"']'","'^'",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"'p'",0,0,0,0,0,0,0,
1893 0,0,0,"'{'","'|'","'}'",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1894 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1895 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1896 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"BEGIN","END","REGEX","SEMINEW",
1897 "NEWLINE","COMMENT","FUN1","FUNN","GRGR","PRINT","PRINTF","SPRINTF_OLD",
1898 "SPRINTF_NEW","SPLIT","IF","ELSE","WHILE","FOR","IN","EXIT","NEXT","BREAK",
1899 "CONTINUE","RET","GETLINE","DO","SUB","GSUB","MATCH","FUNCTION","USERFUN",
1900 "DELETE","ASGNOP","OROR","ANDAND","NUMBER","VAR","SUBSTR","INDEX","MATCHOP",
1901 "RELOP","OR","STRING","UMINUS","NOT","INCR","DECR","FIELD","VFIELD",
1904 "$accept : program",
1905 "program : junk hunks",
1906 "begin : BEGIN '{' maybe states '}' junk",
1907 "end : END '{' maybe states '}'",
1908 "end : end NEWLINE",
1909 "hunks : hunks hunk junk",
1912 "hunk : patpat '{' maybe states '}'",
1913 "hunk : FUNCTION USERFUN '(' arg_list ')' maybe '{' maybe states '}'",
1914 "hunk : '{' maybe states '}'",
1917 "arg_list : expr_list",
1919 "patpat : cond ',' cond",
1923 "cond : compound_cond",
1924 "cond : cond '?' expr ':' expr",
1925 "compound_cond : '(' compound_cond ')'",
1926 "compound_cond : cond ANDAND maybe cond",
1927 "compound_cond : cond OROR maybe cond",
1928 "compound_cond : NOT cond",
1929 "rel : expr RELOP expr",
1930 "rel : expr '>' expr",
1931 "rel : expr '<' expr",
1932 "rel : '(' rel ')'",
1933 "match : expr MATCHOP expr",
1934 "match : expr MATCHOP REGEX",
1936 "match : '(' match ')'",
1939 "expr : expr '?' expr ':' expr",
1940 "expr : variable ASGNOP cond",
1941 "sprintf : SPRINTF_NEW",
1942 "sprintf : SPRINTF_OLD",
1946 "term : term '+' term",
1947 "term : term '-' term",
1948 "term : term '*' term",
1949 "term : term '/' term",
1950 "term : term '%' term",
1951 "term : term '^' term",
1952 "term : term IN VAR",
1953 "term : variable INCR",
1954 "term : variable DECR",
1955 "term : INCR variable",
1956 "term : DECR variable",
1959 "term : '(' cond ')'",
1961 "term : GETLINE variable",
1962 "term : GETLINE '<' expr",
1963 "term : GETLINE variable '<' expr",
1964 "term : term 'p' GETLINE",
1965 "term : term 'p' GETLINE variable",
1967 "term : FUN1 '(' ')'",
1968 "term : FUN1 '(' expr ')'",
1969 "term : FUNN '(' expr_list ')'",
1970 "term : USERFUN '(' expr_list ')'",
1971 "term : SPRINTF_NEW '(' expr_list ')'",
1972 "term : sprintf expr_list",
1973 "term : SUBSTR '(' expr ',' expr ',' expr ')'",
1974 "term : SUBSTR '(' expr ',' expr ')'",
1975 "term : SPLIT '(' expr ',' VAR ',' expr ')'",
1976 "term : SPLIT '(' expr ',' VAR ',' REGEX ')'",
1977 "term : SPLIT '(' expr ',' VAR ')'",
1978 "term : INDEX '(' expr ',' expr ')'",
1979 "term : MATCH '(' expr ',' REGEX ')'",
1980 "term : MATCH '(' expr ',' expr ')'",
1981 "term : SUB '(' expr ',' expr ')'",
1982 "term : SUB '(' REGEX ',' expr ')'",
1983 "term : GSUB '(' expr ',' expr ')'",
1984 "term : GSUB '(' REGEX ',' expr ')'",
1985 "term : SUB '(' expr ',' expr ',' expr ')'",
1986 "term : SUB '(' REGEX ',' expr ',' expr ')'",
1987 "term : GSUB '(' expr ',' expr ',' expr ')'",
1988 "term : GSUB '(' REGEX ',' expr ',' expr ')'",
1990 "variable : VAR '[' expr_list ']'",
1992 "variable : VFIELD term",
1994 "expr_list : clist",
1996 "clist : expr ',' maybe expr",
1997 "clist : clist ',' maybe expr",
1998 "clist : '(' clist ')'",
1999 "junk : junk hunksep",
2002 "hunksep : SEMINEW",
2003 "hunksep : NEWLINE",
2004 "hunksep : COMMENT",
2005 "maybe : maybe nlstuff",
2007 "nlstuff : NEWLINE",
2008 "nlstuff : COMMENT",
2009 "separator : ';' maybe",
2010 "separator : SEMINEW maybe",
2011 "separator : NEWLINE maybe",
2012 "separator : COMMENT maybe",
2013 "states : states statement",
2015 "statement : simple separator maybe",
2016 "statement : ';' maybe",
2017 "statement : SEMINEW maybe",
2018 "statement : compound",
2019 "simpnull : simple",
2022 "simple : PRINT expr_list redir expr",
2023 "simple : PRINT expr_list",
2024 "simple : PRINTF expr_list redir expr",
2025 "simple : PRINTF expr_list",
2029 "simple : EXIT expr",
2030 "simple : CONTINUE",
2032 "simple : RET expr",
2033 "simple : DELETE VAR '[' expr_list ']'",
2037 "compound : IF '(' cond ')' maybe statement",
2038 "compound : IF '(' cond ')' maybe statement ELSE maybe statement",
2039 "compound : WHILE '(' cond ')' maybe statement",
2040 "compound : DO maybe statement WHILE '(' cond ')'",
2041 "compound : FOR '(' simpnull ';' cond ';' simpnull ')' maybe statement",
2042 "compound : FOR '(' simpnull ';' ';' simpnull ')' maybe statement",
2043 "compound : FOR '(' expr ')' maybe statement",
2044 "compound : '{' maybe states '}' maybe",
2048 typedef int YYSTYPE;
2050 #define yyclearin (yychar=(-1))
2051 #define yyerrok (yyerrflag=0)
2054 #define YYMAXDEPTH YYSTACKSIZE
2058 #define YYSTACKSIZE YYMAXDEPTH
2060 #define YYSTACKSIZE 500
2061 #define YYMAXDEPTH 500
2072 short yyss[YYSTACKSIZE];
2073 YYSTYPE yyvs[YYSTACKSIZE];
2074 #define yystacksize YYSTACKSIZE
2080 #line 2081 "y.tab.c"
2081 #define YYABORT goto yyabort
2082 #define YYACCEPT goto yyaccept
2083 #define YYERROR goto yyerrlab
2087 register int yym, yyn, yystate;
2091 extern char *getenv();
2093 if (yys = getenv("YYDEBUG"))
2096 if (yyn >= '0' && yyn <= '9')
2097 yydebug = yyn - '0';
2107 *yyssp = yystate = 0;
2110 if (yyn = yydefred[yystate]) goto yyreduce;
2113 if ((yychar = yylex()) < 0) yychar = 0;
2118 if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
2119 if (!yys) yys = "illegal-symbol";
2120 printf("yydebug: state %d, reading %d (%s)\n", yystate,
2125 if ((yyn = yysindex[yystate]) && (yyn += yychar) >= 0 &&
2126 yyn <= YYTABLESIZE && yycheck[yyn] == yychar)
2130 printf("yydebug: state %d, shifting to state %d\n",
2131 yystate, yytable[yyn]);
2133 if (yyssp >= yyss + yystacksize - 1)
2137 *++yyssp = yystate = yytable[yyn];
2140 if (yyerrflag > 0) --yyerrflag;
2143 if ((yyn = yyrindex[yystate]) && (yyn += yychar) >= 0 &&
2144 yyn <= YYTABLESIZE && yycheck[yyn] == yychar)
2149 if (yyerrflag) goto yyinrecovery;
2154 yyerror("syntax error");
2166 if ((yyn = yysindex[*yyssp]) && (yyn += YYERRCODE) >= 0 &&
2167 yyn <= YYTABLESIZE && yycheck[yyn] == YYERRCODE)
2171 printf("yydebug: state %d, error recovery shifting\
2172 to state %d\n", *yyssp, yytable[yyn]);
2174 if (yyssp >= yyss + yystacksize - 1)
2178 *++yyssp = yystate = yytable[yyn];
2186 printf("yydebug: error recovery discarding state %d\n",
2189 if (yyssp <= yyss) goto yyabort;
2197 if (yychar == 0) goto yyabort;
2202 if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
2203 if (!yys) yys = "illegal-symbol";
2204 printf("yydebug: state %d, error recovery discards token %d (%s)\n",
2205 yystate, yychar, yys);
2214 printf("yydebug: state %d, reducing by rule %d (%s)\n",
2215 yystate, yyn, yyrule[yyn]);
2218 yyval = yyvsp[1-yym];
2223 { root = oper4(OPROG,yyvsp[-1],begins,yyvsp[0],ends); }
2227 { begins = oper4(OJUNK,begins,yyvsp[-3],yyvsp[-2],yyvsp[0]); in_begin = FALSE;
2232 { ends = oper3(OJUNK,ends,yyvsp[-2],yyvsp[-1]); yyval = Nullop; }
2236 { yyval = yyvsp[-1]; }
2240 { yyval = oper3(OHUNKS,yyvsp[-2],yyvsp[-1],yyvsp[0]); }
2248 { yyval = oper1(OHUNK,yyvsp[0]); need_entire = TRUE; }
2252 { yyval = oper2(OHUNK,yyvsp[-4],oper2(OJUNK,yyvsp[-2],yyvsp[-1])); }
2256 { fixfargs(yyvsp[-8],yyvsp[-6],0); yyval = oper5(OUSERDEF,yyvsp[-8],yyvsp[-6],yyvsp[-4],yyvsp[-2],yyvsp[-1]); }
2260 { yyval = oper2(OHUNK,Nullop,oper2(OJUNK,yyvsp[-2],yyvsp[-1])); }
2264 { yyval = rememberargs(yyval); }
2268 { yyval = oper1(OPAT,yyvsp[0]); }
2272 { yyval = oper2(ORANGE,yyvsp[-2],yyvsp[0]); }
2276 { yyval = oper3(OCOND,yyvsp[-4],yyvsp[-2],yyvsp[0]); }
2280 { yyval = oper1(OCPAREN,yyvsp[-1]); }
2284 { yyval = oper3(OCANDAND,yyvsp[-3],yyvsp[-1],yyvsp[0]); }
2288 { yyval = oper3(OCOROR,yyvsp[-3],yyvsp[-1],yyvsp[0]); }
2292 { yyval = oper1(OCNOT,yyvsp[0]); }
2296 { yyval = oper3(ORELOP,yyvsp[-1],yyvsp[-2],yyvsp[0]); }
2300 { yyval = oper3(ORELOP,string(">",1),yyvsp[-2],yyvsp[0]); }
2304 { yyval = oper3(ORELOP,string("<",1),yyvsp[-2],yyvsp[0]); }
2308 { yyval = oper1(ORPAREN,yyvsp[-1]); }
2312 { yyval = oper3(OMATCHOP,yyvsp[-1],yyvsp[-2],yyvsp[0]); }
2316 { yyval = oper3(OMATCHOP,yyvsp[-1],yyvsp[-2],oper1(OREGEX,yyvsp[0])); }
2320 { yyval = oper1(OREGEX,yyvsp[0]); }
2324 { yyval = oper1(OMPAREN,yyvsp[-1]); }
2328 { yyval = yyvsp[0]; }
2332 { yyval = oper2(OCONCAT,yyvsp[-1],yyvsp[0]); }
2336 { yyval = oper3(OCOND,yyvsp[-4],yyvsp[-2],yyvsp[0]); }
2340 { yyval = oper3(OASSIGN,yyvsp[-1],yyvsp[-2],yyvsp[0]);
2341 if ((ops[yyvsp[-2]].ival & 255) == OFLD)
2343 if ((ops[yyvsp[-2]].ival & 255) == OVFLD)
2349 { yyval = yyvsp[0]; }
2353 { yyval = oper1(ONUM,yyvsp[0]); }
2357 { yyval = oper1(OSTR,yyvsp[0]); }
2361 { yyval = oper2(OADD,yyvsp[-2],yyvsp[0]); }
2365 { yyval = oper2(OSUBTRACT,yyvsp[-2],yyvsp[0]); }
2369 { yyval = oper2(OMULT,yyvsp[-2],yyvsp[0]); }
2373 { yyval = oper2(ODIV,yyvsp[-2],yyvsp[0]); }
2377 { yyval = oper2(OMOD,yyvsp[-2],yyvsp[0]); }
2381 { yyval = oper2(OPOW,yyvsp[-2],yyvsp[0]); }
2385 { yyval = oper2(ODEFINED,aryrefarg(yyvsp[0]),yyvsp[-2]); }
2389 { yyval = oper1(OPOSTINCR,yyvsp[-1]); }
2393 { yyval = oper1(OPOSTDECR,yyvsp[-1]); }
2397 { yyval = oper1(OPREINCR,yyvsp[0]); }
2401 { yyval = oper1(OPREDECR,yyvsp[0]); }
2405 { yyval = oper1(OUMINUS,yyvsp[0]); }
2409 { yyval = oper1(OUPLUS,yyvsp[0]); }
2413 { yyval = oper1(OPAREN,yyvsp[-1]); }
2417 { yyval = oper0(OGETLINE); }
2421 { yyval = oper1(OGETLINE,yyvsp[0]); }
2425 { yyval = oper3(OGETLINE,Nullop,string("<",1),yyvsp[0]);
2426 if (ops[yyvsp[0]].ival != OSTR + (1<<8)) do_fancy_opens = TRUE; }
2430 { yyval = oper3(OGETLINE,yyvsp[-2],string("<",1),yyvsp[0]);
2431 if (ops[yyvsp[0]].ival != OSTR + (1<<8)) do_fancy_opens = TRUE; }
2435 { yyval = oper3(OGETLINE,Nullop,string("|",1),yyvsp[-2]);
2436 if (ops[yyvsp[-2]].ival != OSTR + (1<<8)) do_fancy_opens = TRUE; }
2440 { yyval = oper3(OGETLINE,yyvsp[0],string("|",1),yyvsp[-3]);
2441 if (ops[yyvsp[-3]].ival != OSTR + (1<<8)) do_fancy_opens = TRUE; }
2445 { yyval = oper0(yyvsp[0]); need_entire = do_chop = TRUE; }
2449 { yyval = oper1(yyvsp[-2],Nullop); need_entire = do_chop = TRUE; }
2453 { yyval = oper1(yyvsp[-3],yyvsp[-1]); }
2457 { yyval = oper1(yyvsp[-3],yyvsp[-1]); }
2461 { yyval = oper2(OUSERFUN,yyvsp[-3],yyvsp[-1]); }
2465 { yyval = oper1(OSPRINTF,yyvsp[-1]); }
2469 { yyval = oper1(OSPRINTF,yyvsp[0]); }
2473 { yyval = oper3(OSUBSTR,yyvsp[-5],yyvsp[-3],yyvsp[-1]); }
2477 { yyval = oper2(OSUBSTR,yyvsp[-3],yyvsp[-1]); }
2481 { yyval = oper3(OSPLIT,yyvsp[-5],aryrefarg(numary(yyvsp[-3])),yyvsp[-1]); }
2485 { yyval = oper3(OSPLIT,yyvsp[-5],aryrefarg(numary(yyvsp[-3])),oper1(OREGEX,yyvsp[-1]));}
2489 { yyval = oper2(OSPLIT,yyvsp[-3],aryrefarg(numary(yyvsp[-1]))); }
2493 { yyval = oper2(OINDEX,yyvsp[-3],yyvsp[-1]); }
2497 { yyval = oper2(OMATCH,yyvsp[-3],oper1(OREGEX,yyvsp[-1])); }
2501 { yyval = oper2(OMATCH,yyvsp[-3],yyvsp[-1]); }
2505 { yyval = oper2(OSUB,yyvsp[-3],yyvsp[-1]); }
2509 { yyval = oper2(OSUB,oper1(OREGEX,yyvsp[-3]),yyvsp[-1]); }
2513 { yyval = oper2(OGSUB,yyvsp[-3],yyvsp[-1]); }
2517 { yyval = oper2(OGSUB,oper1(OREGEX,yyvsp[-3]),yyvsp[-1]); }
2521 { yyval = oper3(OSUB,yyvsp[-5],yyvsp[-3],yyvsp[-1]); }
2525 { yyval = oper3(OSUB,oper1(OREGEX,yyvsp[-5]),yyvsp[-3],yyvsp[-1]); }
2529 { yyval = oper3(OGSUB,yyvsp[-5],yyvsp[-3],yyvsp[-1]); }
2533 { yyval = oper3(OGSUB,oper1(OREGEX,yyvsp[-5]),yyvsp[-3],yyvsp[-1]); }
2537 { yyval = oper1(OVAR,yyvsp[0]); }
2541 { yyval = oper2(OVAR,aryrefarg(yyvsp[-3]),yyvsp[-1]); }
2545 { yyval = oper1(OFLD,yyvsp[0]); }
2549 { yyval = oper1(OVFLD,yyvsp[0]); }
2557 { yyval = oper3(OCOMMA,yyvsp[-3],yyvsp[-1],yyvsp[0]); }
2561 { yyval = oper3(OCOMMA,yyvsp[-3],yyvsp[-1],yyvsp[0]); }
2565 { yyval = yyvsp[-1]; }
2569 { yyval = oper2(OJUNK,yyvsp[-1],yyvsp[0]); }
2577 { yyval = oper2(OJUNK,oper0(OSEMICOLON),oper0(ONEWLINE)); }
2581 { yyval = oper2(OJUNK,oper0(OSEMICOLON),oper0(ONEWLINE)); }
2585 { yyval = oper0(ONEWLINE); }
2589 { yyval = oper1(OCOMMENT,yyvsp[0]); }
2593 { yyval = oper2(OJUNK,yyvsp[-1],yyvsp[0]); }
2601 { yyval = oper0(ONEWLINE); }
2605 { yyval = oper1(OCOMMENT,yyvsp[0]); }
2609 { yyval = oper2(OJUNK,oper0(OSEMICOLON),yyvsp[0]); }
2613 { yyval = oper2(OJUNK,oper0(OSNEWLINE),yyvsp[0]); }
2617 { yyval = oper2(OJUNK,oper0(OSNEWLINE),yyvsp[0]); }
2621 { yyval = oper2(OJUNK,oper1(OSCOMMENT,yyvsp[-1]),yyvsp[0]); }
2625 { yyval = oper2(OSTATES,yyvsp[-1],yyvsp[0]); }
2633 { yyval = oper2(OJUNK,oper2(OSTATE,yyvsp[-2],yyvsp[-1]),yyvsp[0]); }
2637 { yyval = oper2(OSTATE,Nullop,oper2(OJUNK,oper0(OSEMICOLON),yyvsp[0])); }
2641 { yyval = oper2(OSTATE,Nullop,oper2(OJUNK,oper0(OSNEWLINE),yyvsp[0])); }
2649 { yyval = oper3(OPRINT,yyvsp[-2],yyvsp[-1],yyvsp[0]);
2651 saw_ORS = saw_OFS = TRUE;
2652 if (!yyvsp[-2]) need_entire = TRUE;
2653 if (ops[yyvsp[0]].ival != OSTR + (1<<8)) do_fancy_opens = TRUE; }
2657 { yyval = oper1(OPRINT,yyvsp[0]);
2658 if (!yyvsp[0]) need_entire = TRUE;
2659 saw_ORS = saw_OFS = TRUE;
2664 { yyval = oper3(OPRINTF,yyvsp[-2],yyvsp[-1],yyvsp[0]);
2666 if (!yyvsp[-2]) need_entire = TRUE;
2667 if (ops[yyvsp[0]].ival != OSTR + (1<<8)) do_fancy_opens = TRUE; }
2671 { yyval = oper1(OPRINTF,yyvsp[0]);
2672 if (!yyvsp[0]) need_entire = TRUE;
2677 { yyval = oper0(OBREAK); }
2681 { yyval = oper0(ONEXT); }
2685 { yyval = oper0(OEXIT); }
2689 { yyval = oper1(OEXIT,yyvsp[0]); }
2693 { yyval = oper0(OCONTINUE); }
2697 { yyval = oper0(ORETURN); }
2701 { yyval = oper1(ORETURN,yyvsp[0]); }
2705 { yyval = oper2(ODELETE,aryrefarg(yyvsp[-3]),yyvsp[-1]); }
2709 { yyval = oper1(OREDIR,string(">",1)); }
2713 { yyval = oper1(OREDIR,string(">>",2)); }
2717 { yyval = oper1(OREDIR,string("|",1)); }
2721 { yyval = oper2(OIF,yyvsp[-3],bl(yyvsp[0],yyvsp[-1])); }
2725 { yyval = oper3(OIF,yyvsp[-6],bl(yyvsp[-3],yyvsp[-4]),bl(yyvsp[0],yyvsp[-1])); }
2729 { yyval = oper2(OWHILE,yyvsp[-3],bl(yyvsp[0],yyvsp[-1])); }
2733 { yyval = oper2(ODO,bl(yyvsp[-4],yyvsp[-5]),yyvsp[-1]); }
2737 { yyval = oper4(OFOR,yyvsp[-7],yyvsp[-5],yyvsp[-3],bl(yyvsp[0],yyvsp[-1])); }
2741 { yyval = oper4(OFOR,yyvsp[-6],string("",0),yyvsp[-3],bl(yyvsp[0],yyvsp[-1])); }
2745 { yyval = oper2(OFORIN,yyvsp[-3],bl(yyvsp[0],yyvsp[-1])); }
2749 { yyval = oper3(OBLOCK,oper2(OJUNK,yyvsp[-3],yyvsp[-2]),Nullop,yyvsp[0]); }
2751 #line 2751 "y.tab.c"
2757 if (yystate == 0 && yym == 0)
2761 printf("yydebug: after reduction, shifting from state 0 to\
2762 state %d\n", YYFINAL);
2769 if ((yychar = yylex()) < 0) yychar = 0;
2774 if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
2775 if (!yys) yys = "illegal-symbol";
2776 printf("yydebug: state %d, reading %d (%s)\n",
2777 YYFINAL, yychar, yys);
2781 if (yychar == 0) goto yyaccept;
2784 if ((yyn = yygindex[yym]) && (yyn += yystate) >= 0 &&
2785 yyn <= YYTABLESIZE && yycheck[yyn] == yystate)
2786 yystate = yytable[yyn];
2788 yystate = yydgoto[yym];
2791 printf("yydebug: after reduction, shifting from state %d \
2792 to state %d\n", *yyssp, yystate);
2794 if (yyssp >= yyss + yystacksize - 1)
2802 yyerror("yacc stack overflow");