[shell changes from patch from perl5.003_23 to perl5.003_24]
[p5sagit/p5-mst-13.2.git] / x2p / a2p.c
CommitLineData
9c8d0b29 1#ifndef lint
748a9306 2static char yysccsid[] = "@(#)yaccpar 1.8 (Berkeley) 01/20/91";
9c8d0b29 3#endif
4#define YYBYACC 1
9c8d0b29 5#line 2 "a2p.y"
6/* $RCSfile: a2p.y,v $$Revision: 4.1 $$Date: 92/08/07 18:29:12 $
7 *
8 * Copyright (c) 1991, Larry Wall
9 *
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.
12 *
13 * $Log: a2p.y,v $
14 */
15
16#include "INTERN.h"
17#include "a2p.h"
18
19int root;
20int begins = Nullop;
21int ends = Nullop;
22
748a9306 23#line 24 "y.tab.c"
9c8d0b29 24#define BEGIN 257
25#define END 258
26#define REGEX 259
27#define SEMINEW 260
28#define NEWLINE 261
29#define COMMENT 262
30#define FUN1 263
31#define FUNN 264
32#define GRGR 265
33#define PRINT 266
34#define PRINTF 267
35#define SPRINTF 268
36#define SPLIT 269
37#define IF 270
38#define ELSE 271
39#define WHILE 272
40#define FOR 273
41#define IN 274
42#define EXIT 275
43#define NEXT 276
44#define BREAK 277
45#define CONTINUE 278
46#define RET 279
47#define GETLINE 280
48#define DO 281
49#define SUB 282
50#define GSUB 283
51#define MATCH 284
52#define FUNCTION 285
53#define USERFUN 286
54#define DELETE 287
55#define ASGNOP 288
56#define OROR 289
57#define ANDAND 290
58#define NUMBER 291
59#define VAR 292
60#define SUBSTR 293
61#define INDEX 294
62#define MATCHOP 295
63#define RELOP 296
64#define OR 297
65#define STRING 298
66#define UMINUS 299
67#define NOT 300
68#define INCR 301
69#define DECR 302
70#define FIELD 303
71#define VFIELD 304
72#define YYERRCODE 256
73short yylhs[] = { -1,
74 0, 3, 6, 6, 2, 2, 7, 7, 7, 7,
75 7, 7, 9, 8, 8, 11, 11, 11, 11, 11,
76 15, 15, 15, 15, 14, 14, 14, 14, 13, 13,
c822f08a 77 13, 13, 12, 12, 12, 12, 16, 16, 16, 16,
9c8d0b29 78 16, 16, 16, 16, 16, 16, 16, 16, 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, 17, 17, 17, 17, 10, 10, 10, 18, 18,
83 18, 1, 1, 19, 19, 19, 19, 4, 4, 20,
84 20, 21, 21, 21, 21, 5, 5, 22, 22, 22,
85 22, 25, 25, 23, 23, 23, 23, 23, 23, 23,
86 23, 23, 23, 23, 23, 23, 26, 26, 26, 24,
87 24, 24, 24, 24, 24, 24, 24,
88};
89short yylen[] = { 2,
90 2, 6, 5, 2, 3, 0, 1, 5, 10, 4,
91 1, 1, 1, 1, 3, 1, 1, 1, 1, 5,
92 3, 4, 4, 2, 3, 3, 3, 3, 3, 3,
c822f08a 93 1, 3, 1, 2, 5, 3, 1, 1, 1, 3,
94 3, 3, 3, 3, 3, 3, 2, 2, 2, 2,
9c8d0b29 95 2, 2, 3, 1, 2, 3, 4, 3, 4, 1,
96 3, 4, 4, 4, 2, 8, 6, 8, 8, 6,
97 6, 6, 6, 6, 6, 6, 6, 8, 8, 8,
98 8, 1, 4, 1, 2, 1, 1, 0, 4, 4,
99 3, 2, 0, 1, 1, 1, 1, 2, 0, 1,
100 1, 2, 2, 2, 2, 2, 0, 3, 2, 2,
101 1, 1, 0, 1, 4, 2, 4, 2, 1, 1,
102 1, 2, 1, 1, 2, 5, 1, 1, 1, 6,
103 9, 6, 7, 10, 9, 6, 5,
104};
105short yydefred[] = { 93,
106 0, 0, 95, 96, 97, 94, 0, 92, 0, 0,
107 31, 0, 0, 0, 0, 0, 0, 0, 0, 0,
c822f08a 108 0, 38, 0, 0, 0, 39, 0, 0, 0, 0,
9c8d0b29 109 0, 84, 0, 99, 0, 11, 0, 93, 0, 0,
110 0, 17, 18, 19, 0, 0, 99, 99, 0, 0,
111 0, 65, 0, 0, 0, 0, 0, 0, 0, 0,
c822f08a 112 0, 0, 0, 0, 0, 0, 0, 0, 0, 24,
113 49, 50, 0, 0, 0, 0, 0, 0, 4, 0,
114 99, 0, 99, 99, 0, 0, 0, 0, 0, 0,
115 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
116 47, 48, 0, 0, 61, 0, 0, 0, 0, 0,
117 99, 99, 0, 0, 0, 0, 0, 0, 0, 0,
118 0, 0, 0, 0, 0, 100, 101, 0, 98, 53,
119 32, 28, 21, 0, 0, 0, 0, 0, 0, 30,
120 0, 0, 0, 0, 46, 0, 0, 0, 0, 0,
121 0, 0, 0, 0, 0, 62, 63, 91, 0, 0,
122 0, 0, 0, 0, 0, 0, 0, 0, 13, 64,
123 83, 0, 0, 99, 0, 0, 0, 0, 0, 0,
124 120, 119, 123, 0, 99, 0, 99, 10, 99, 0,
125 106, 0, 111, 0, 0, 0, 22, 0, 59, 93,
126 3, 0, 0, 0, 0, 0, 0, 0, 0, 0,
127 99, 0, 0, 0, 0, 0, 0, 0, 0, 0,
128 0, 0, 0, 0, 0, 99, 99, 99, 99, 99,
129 8, 0, 0, 0, 70, 0, 75, 0, 74, 0,
130 77, 0, 76, 0, 72, 73, 0, 67, 0, 71,
131 128, 127, 129, 0, 0, 0, 0, 0, 112, 0,
132 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
133 0, 0, 0, 0, 99, 0, 0, 0, 99, 99,
134 99, 0, 0, 0, 99, 69, 68, 79, 78, 81,
135 80, 0, 66, 0, 0, 0, 0, 0, 0, 126,
136 0, 0, 0, 132, 136, 0, 0, 0, 9, 99,
137 99, 0, 133, 0, 0, 99, 131, 135, 0, 134,
9c8d0b29 138};
139short yydgoto[] = { 1,
c822f08a 140 2, 7, 36, 74, 128, 37, 38, 39, 168, 52,
141 75, 190, 42, 43, 44, 45, 46, 54, 8, 129,
142 230, 191, 192, 193, 260, 254,
9c8d0b29 143};
144short yysindex[] = { 0,
c822f08a 145 0, -50, 0, 0, 0, 0, 4775, 0, -91, -38,
146 0, 34, 41, 7201, 42, 6, 46, 48, 50, -184,
147 70, 0, 16, 77, 80, 0, 7255, 7255, 5051, -220,
148 -220, 0, 7255, 0, 5051, 0, -140, 0, 5, -13,
149 5693, 0, 0, 0, -32, -233, 0, 0, 4619, 7201,
150 5962, 0, 6006, 79, 7255, 7255, 71, 6890, 6936, 7255,
151 87, 7201, 7201, 7255, 7255, 5051, -42, -244, -42, 0,
152 0, 0, 20, -183, -41, 89, 92, 93, 0, -50,
153 0, 7255, 0, 0, 5051, 7255, 6990, 7255, 7255, 7255,
154 -32, -157, 7255, 7255, 7255, 7255, 7255, 7255, -144, 5051,
155 0, 0, -183, -183, 0, 3590, 96, 5962, 5577, 10,
156 0, 0, 6049, 1522, 7255, 94, 6107, 95, 6153, 6195,
157 7201, 99, 51, 6238, 6281, 0, 0, 4886, 0, 0,
158 0, 0, 0, -183, 6323, 1605, 1605, -60, 6380, 0,
159 1522, 1522, 1522, 1522, 0, -7, -7, -42, -42, -42,
160 -42, -220, -60, 4931, 4977, 0, 0, 0, 6425, 6425,
161 -151, 1522, 7255, 7255, 7255, 7255, 7052, 102, 0, 0,
162 0, 7255, 7255, 0, 7201, 7201, 115, 119, 121, 7255,
163 0, 0, 0, 7255, 0, -130, 0, 0, 0, 7112,
164 0, 18, 0, 5242, 7255, -126, 0, 7255, 0, 0,
165 0, 7112, 7112, 32, 2427, 2474, 5735, 5779, 126, 6470,
166 0, 5842, 6513, -183, -33, -33, 5051, 5051, 5428, 7112,
167 7112, 4046, 81, -183, -183, 0, 0, 0, 0, 0,
168 0, 7112, 7112, -50, 0, 7158, 0, 7255, 0, 7255,
169 0, 7255, 0, 7255, 0, 0, -96, 0, 7255, 0,
170 0, 0, 0, 7255, 7255, -39, -37, 6555, 0, 116,
171 -95, 7201, 5287, -183, -183, -183, -183, -183, 135, 6612,
172 6657, 6702, 6745, 6787, 0, 6844, 7112, 7112, 0, 0,
173 0, 5908, 144, 97, 0, 0, 0, 0, 0, 0,
174 0, -183, 0, 4046, 4046, 4046, 5428, -51, 5051, 0,
175 -183, 5332, -85, 0, 0, 146, 5428, -35, 0, 0,
176 0, 147, 0, 4046, 4046, 0, 0, 0, 4046, 0,
9c8d0b29 177};
178short yyrindex[] = { 0,
c822f08a 179 0, 2000, 0, 0, 0, 0, 189, 0, 0, 0,
180 0, 56, 0, 3312, 0, 2591, 0, 0, 0, 0,
9c8d0b29 181 0, 0, 1, 0, 0, 0, 0, 0, 0, 0,
c822f08a 182 0, 0, 0, 0, 0, 0, 2138, 0, 1930, 1209,
183 3755, 0, 0, 0, 1818, 1394, 0, 0, 0, 151,
184 0, 0, 3707, 111, 0, 0, 381, 0, 0, 0,
185 0, 151, 100, 0, 0, 0, 564, 834, 889, 0,
186 0, 0, 436, 5378, 0, -49, -46, -43, 0, 2195,
187 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
188 2084, 0, 0, 0, 0, 0, 0, 0, 0, 0,
189 0, 0, 5378, 5378, 0, 0, 0, 0, -22, 0,
190 0, 0, 0, 2639, 0, 0, 0, 0, 0, 0,
191 151, 0, 0, 0, 0, 0, 0, 0, 0, 0,
192 0, 0, 0, 5378, 0, 0, 0, 1872, 0, 0,
193 2878, 2923, 2968, 3037, 0, 1719, 1770, 943, 1016, 1286,
194 1340, 2536, 1664, 0, 0, 0, 0, 0, 0, 0,
195 0, 3245, 0, 0, 0, 0, 0, 0, 0, 0,
196 0, 0, 0, 0, 67, 67, 0, 0, 0, -34,
197 0, 0, 0, 12, 0, 0, 0, 0, 0, 101,
198 0, 0, 0, 0, 0, 491, 0, 0, 0, 0,
199 0, 3360, 3432, 0, 0, 0, 0, 0, 0, 0,
200 0, 0, 0, 4091, 104, 172, 0, 0, 136, 241,
201 247, 0, 0, 5378, 4146, 0, 0, 0, 0, 0,
202 0, 3520, 3640, 2266, 0, 0, 0, 0, 0, 0,
203 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
204 0, 0, 0, 0, 0, 0, 0, 137, 0, 0,
205 0, 100, 0, 4220, 4411, 4485, 4530, 4576, 0, 0,
206 0, 0, 0, 0, 0, 0, 296, 357, 0, 0,
207 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
208 0, 5378, 0, 0, 0, 0, 153, 0, 0, 0,
209 4841, 0, 5643, 0, 0, 0, 153, 0, 0, 0,
210 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
9c8d0b29 211};
212short yygindex[] = { 0,
c822f08a 213 -15, 0, 0, 3236, -67, 0, 0, 0, 0, -29,
214 171, 4012, -19, 4, 14, 7669, 7480, -4, 0, 0,
215 0, -113, -201, 0, -232, -18,
9c8d0b29 216};
c822f08a 217#define YYTABLESIZE 7947
218short yytable[] = { 130,
219 82, 279, 82, 280, 97, 313, 121, 307, 6, 95,
220 93, 82, 94, 17, 96, 76, 18, 259, 16, 19,
221 107, 82, 80, 82, 121, 82, 275, 82, 252, 97,
222 85, 47, 122, 123, 95, 154, 155, 82, 77, 96,
223 82, 82, 82, 82, 82, 82, 110, 82, 78, 82,
224 158, 98, 124, 112, 100, 60, 101, 102, 82, 82,
225 82, 98, 82, 82, 306, 56, 194, 101, 102, 99,
226 124, 23, 235, 49, 312, 236, 229, 126, 127, 99,
227 50, 55, 32, 33, 48, 58, 98, 59, 76, 60,
228 253, 169, 60, 82, 82, 259, 60, 60, 60, 60,
229 60, 61, 60, 110, 99, 259, 63, 88, 261, 62,
230 87, 77, 82, 60, 60, 60, 64, 60, 60, 65,
231 79, 78, 112, 82, 82, 88, 121, 81, 88, 131,
232 115, 99, 132, 133, 145, 152, 157, 163, 165, 170,
233 204, 114, 211, 171, 116, 215, 216, 87, 60, 60,
234 87, 87, 87, 87, 217, 87, 263, 87, 218, 114,
235 219, 223, 116, 84, 126, 127, 245, 60, 87, 87,
236 87, 262, 87, 87, 282, 286, 283, 40, 60, 60,
237 303, 304, 305, 299, 234, 310, 311, 316, 1, 300,
238 88, 88, 88, 113, 113, 114, 0, 255, 0, 70,
239 317, 318, 0, 87, 87, 320, 0, 0, 0, 3,
240 4, 5, 118, 0, 0, 0, 0, 0, 0, 0,
241 0, 0, 87, 0, 302, 121, 121, 121, 83, 84,
242 118, 251, 284, 87, 87, 0, 0, 83, 84, 17,
243 17, 92, 18, 18, 0, 19, 19, 83, 84, 83,
244 84, 83, 84, 83, 84, 138, 0, 82, 82, 82,
245 82, 82, 82, 82, 82, 82, 16, 16, 82, 82,
246 153, 124, 124, 124, 82, 83, 84, 226, 227, 228,
247 82, 122, 82, 82, 82, 82, 82, 125, 82, 82,
248 82, 82, 82, 82, 82, 82, 82, 23, 82, 122,
249 82, 82, 82, 82, 82, 125, 196, 197, 32, 33,
250 0, 0, 60, 60, 60, 60, 60, 60, 60, 60,
251 60, 0, 0, 60, 60, 0, 88, 88, 88, 60,
252 0, 88, 0, 0, 0, 60, 115, 60, 60, 60,
9c8d0b29 253 60, 60, 0, 60, 60, 60, 60, 60, 60, 60,
c822f08a 254 60, 60, 0, 60, 115, 60, 60, 60, 60, 60,
255 114, 114, 114, 116, 116, 116, 0, 87, 87, 87,
9c8d0b29 256 87, 87, 87, 87, 87, 87, 0, 0, 87, 87,
c822f08a 257 55, 0, 0, 0, 87, 0, 0, 256, 257, 0,
258 87, 0, 87, 87, 87, 87, 87, 117, 87, 87,
9c8d0b29 259 87, 87, 87, 87, 87, 87, 87, 0, 87, 0,
c822f08a 260 87, 87, 87, 87, 87, 117, 0, 55, 0, 0,
261 55, 55, 55, 55, 55, 55, 0, 55, 0, 0,
262 0, 118, 118, 118, 0, 85, 0, 0, 55, 55,
263 0, 0, 55, 55, 0, 0, 0, 0, 0, 0,
264 0, 0, 298, 0, 0, 0, 0, 0, 0, 0,
265 0, 0, 0, 0, 0, 0, 0, 0, 0, 308,
266 0, 0, 85, 55, 55, 85, 85, 85, 85, 85,
267 85, 0, 85, 0, 0, 0, 0, 0, 0, 0,
268 23, 0, 55, 85, 85, 85, 0, 85, 85, 0,
269 122, 122, 122, 55, 55, 0, 125, 125, 125, 0,
270 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
271 0, 0, 0, 0, 0, 0, 0, 23, 85, 85,
272 23, 23, 23, 23, 23, 23, 0, 23, 0, 0,
273 0, 0, 0, 0, 0, 0, 0, 0, 23, 23,
274 23, 0, 23, 23, 0, 115, 115, 115, 85, 85,
275 0, 0, 0, 52, 0, 0, 0, 0, 0, 0,
276 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
9c8d0b29 277 0, 0, 0, 23, 23, 0, 0, 0, 0, 0,
c822f08a 278 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
279 52, 0, 23, 52, 52, 52, 52, 52, 52, 0,
280 52, 0, 0, 23, 23, 0, 117, 117, 117, 0,
281 0, 52, 52, 52, 0, 52, 52, 0, 0, 0,
9c8d0b29 282 0, 0, 0, 0, 0, 0, 0, 55, 55, 55,
283 55, 55, 55, 55, 55, 55, 0, 0, 55, 55,
284 0, 0, 0, 0, 55, 0, 52, 0, 0, 0,
c822f08a 285 55, 0, 55, 55, 55, 55, 55, 0, 55, 55,
9c8d0b29 286 55, 55, 55, 55, 55, 55, 55, 0, 55, 0,
287 55, 55, 55, 55, 55, 0, 52, 52, 0, 0,
c822f08a 288 0, 0, 85, 85, 85, 85, 85, 85, 85, 85,
289 85, 0, 0, 85, 85, 0, 0, 0, 0, 85,
290 0, 0, 0, 0, 0, 85, 0, 85, 85, 85,
291 85, 85, 0, 85, 85, 85, 85, 85, 85, 85,
292 85, 85, 0, 85, 0, 85, 85, 85, 85, 85,
9c8d0b29 293 0, 0, 0, 0, 0, 0, 0, 23, 23, 23,
294 23, 23, 23, 23, 23, 23, 0, 0, 23, 23,
c822f08a 295 0, 0, 0, 0, 23, 0, 0, 0, 0, 0,
9c8d0b29 296 23, 0, 23, 23, 23, 23, 23, 0, 23, 23,
297 0, 23, 23, 23, 23, 23, 23, 0, 23, 0,
c822f08a 298 23, 23, 23, 23, 23, 0, 0, 0, 0, 0,
299 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
300 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
301 52, 52, 52, 52, 52, 52, 52, 52, 52, 0,
302 0, 52, 52, 37, 0, 0, 0, 52, 0, 0,
303 0, 0, 0, 52, 0, 52, 52, 52, 52, 52,
304 0, 52, 52, 52, 52, 52, 52, 52, 52, 52,
305 0, 52, 0, 52, 52, 52, 52, 52, 0, 0,
306 37, 0, 0, 37, 37, 37, 37, 37, 37, 0,
307 37, 0, 0, 0, 0, 0, 0, 0, 51, 0,
308 0, 37, 37, 37, 0, 37, 37, 0, 0, 0,
309 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
310 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
311 0, 0, 0, 0, 0, 51, 37, 37, 51, 51,
312 51, 51, 51, 51, 0, 51, 0, 0, 0, 0,
313 0, 0, 42, 0, 0, 37, 51, 51, 51, 0,
314 51, 51, 0, 0, 0, 0, 37, 37, 0, 0,
315 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
9c8d0b29 316 0, 0, 0, 0, 0, 0, 0, 0, 0, 42,
c822f08a 317 0, 51, 42, 42, 42, 42, 42, 42, 0, 42,
318 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
319 42, 42, 42, 0, 42, 42, 0, 0, 0, 0,
320 0, 51, 51, 0, 0, 43, 0, 0, 0, 0,
321 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
322 0, 0, 0, 0, 0, 42, 0, 0, 0, 0,
323 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
324 0, 0, 43, 0, 0, 43, 43, 43, 43, 43,
325 43, 0, 43, 0, 0, 42, 42, 0, 0, 0,
326 0, 0, 0, 43, 43, 43, 0, 43, 43, 0,
327 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
328 37, 37, 37, 37, 37, 37, 37, 37, 37, 0,
329 0, 37, 37, 0, 0, 0, 0, 37, 43, 0,
330 0, 0, 0, 37, 0, 37, 37, 37, 37, 37,
331 0, 37, 37, 37, 37, 37, 37, 37, 37, 37,
332 0, 37, 0, 37, 0, 0, 37, 37, 43, 43,
333 0, 0, 0, 0, 0, 51, 51, 51, 51, 51,
334 51, 51, 51, 51, 0, 0, 51, 51, 0, 0,
335 0, 0, 51, 0, 0, 0, 0, 0, 51, 0,
336 51, 51, 51, 51, 51, 0, 51, 51, 51, 51,
337 51, 51, 51, 51, 51, 0, 51, 0, 51, 51,
338 51, 51, 51, 0, 0, 0, 0, 0, 0, 42,
339 42, 42, 42, 42, 42, 42, 42, 42, 14, 0,
340 42, 42, 0, 0, 0, 0, 42, 0, 0, 0,
341 0, 0, 42, 0, 42, 42, 42, 42, 42, 0,
342 42, 42, 42, 42, 42, 42, 42, 42, 42, 0,
343 42, 0, 42, 42, 42, 42, 42, 0, 14, 0,
344 0, 14, 0, 14, 0, 0, 0, 0, 0, 0,
345 0, 0, 0, 0, 0, 0, 0, 14, 0, 0,
346 0, 0, 43, 43, 43, 43, 43, 43, 43, 43,
347 43, 0, 0, 43, 43, 44, 0, 0, 0, 43,
348 0, 0, 0, 0, 0, 43, 0, 43, 43, 43,
349 43, 43, 0, 43, 43, 43, 43, 43, 43, 43,
350 43, 43, 0, 43, 0, 43, 43, 43, 43, 43,
351 0, 0, 44, 0, 0, 44, 44, 44, 44, 44,
352 44, 14, 44, 0, 0, 0, 0, 0, 0, 45,
353 0, 0, 0, 44, 44, 44, 0, 44, 44, 0,
354 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
355 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
356 0, 0, 0, 0, 0, 0, 45, 0, 44, 45,
357 45, 45, 45, 45, 45, 0, 45, 0, 0, 0,
358 0, 0, 0, 37, 0, 0, 0, 45, 45, 45,
359 0, 45, 45, 0, 0, 0, 0, 0, 44, 44,
360 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
361 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
362 37, 0, 45, 37, 37, 37, 37, 37, 37, 0,
363 37, 0, 0, 0, 0, 0, 0, 0, 0, 0,
364 0, 37, 37, 37, 0, 37, 37, 0, 0, 0,
365 0, 0, 45, 45, 0, 14, 14, 14, 14, 14,
366 14, 14, 14, 0, 0, 0, 14, 14, 0, 0,
367 0, 0, 0, 0, 0, 0, 37, 37, 14, 0,
368 14, 14, 14, 14, 14, 0, 0, 0, 0, 14,
369 14, 14, 14, 0, 0, 37, 14, 0, 14, 14,
370 14, 14, 14, 0, 0, 0, 37, 37, 0, 0,
371 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
372 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
373 0, 0, 44, 44, 44, 44, 44, 44, 44, 44,
374 44, 0, 0, 44, 44, 0, 0, 0, 0, 44,
375 0, 66, 0, 0, 27, 44, 28, 44, 44, 44,
376 44, 44, 0, 44, 44, 44, 44, 44, 44, 44,
377 44, 44, 0, 44, 0, 44, 44, 44, 44, 44,
378 0, 0, 0, 0, 0, 0, 45, 45, 45, 45,
379 45, 45, 45, 45, 45, 0, 0, 45, 45, 0,
380 0, 0, 0, 45, 0, 0, 0, 0, 0, 45,
381 0, 45, 45, 45, 45, 45, 0, 45, 45, 45,
382 45, 45, 45, 45, 45, 45, 0, 45, 0, 45,
383 45, 45, 45, 45, 35, 0, 0, 27, 0, 28,
384 37, 37, 37, 37, 37, 37, 37, 37, 37, 0,
385 0, 37, 37, 36, 0, 0, 0, 37, 0, 0,
386 0, 0, 0, 37, 0, 37, 37, 37, 37, 37,
387 0, 0, 37, 37, 37, 37, 37, 37, 37, 37,
388 0, 37, 0, 37, 0, 0, 37, 37, 0, 0,
389 36, 0, 0, 36, 36, 36, 36, 36, 36, 0,
390 36, 0, 0, 0, 0, 0, 0, 0, 40, 0,
391 0, 36, 36, 36, 0, 36, 0, 0, 0, 0,
392 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
393 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
394 0, 0, 0, 0, 0, 0, 36, 36, 40, 40,
395 0, 40, 40, 40, 0, 0, 0, 0, 0, 41,
396 0, 0, 0, 0, 0, 36, 40, 40, 40, 0,
397 40, 40, 0, 0, 12, 13, 36, 36, 0, 14,
9c8d0b29 398 15, 0, 0, 0, 0, 0, 0, 0, 0, 0,
c822f08a 399 0, 16, 0, 17, 18, 19, 0, 21, 0, 41,
400 41, 40, 41, 41, 41, 0, 0, 33, 0, 26,
401 0, 0, 30, 31, 32, 33, 0, 41, 41, 41,
402 0, 41, 41, 0, 0, 0, 0, 0, 0, 0,
403 0, 40, 40, 0, 0, 0, 0, 0, 0, 0,
404 0, 0, 0, 0, 0, 0, 0, 33, 33, 0,
405 0, 33, 41, 11, 0, 126, 127, 12, 13, 0,
406 0, 15, 14, 15, 0, 33, 33, 33, 0, 33,
407 33, 0, 0, 0, 16, 0, 17, 18, 19, 0,
408 21, 0, 41, 41, 0, 22, 23, 24, 25, 0,
409 0, 0, 26, 0, 29, 30, 31, 32, 33, 0,
410 33, 15, 0, 0, 15, 0, 15, 0, 0, 0,
411 36, 36, 36, 36, 36, 36, 36, 36, 36, 7,
412 15, 36, 36, 0, 0, 0, 0, 36, 0, 0,
413 33, 33, 0, 36, 0, 36, 36, 36, 36, 36,
414 0, 36, 0, 0, 36, 36, 36, 36, 36, 36,
415 0, 36, 0, 36, 36, 36, 36, 36, 0, 7,
416 0, 0, 7, 0, 7, 40, 40, 40, 40, 40,
417 40, 40, 40, 40, 0, 0, 40, 40, 7, 0,
418 0, 0, 40, 0, 15, 0, 0, 0, 40, 6,
419 40, 40, 40, 40, 40, 0, 40, 40, 40, 40,
420 40, 40, 40, 40, 40, 0, 40, 0, 40, 40,
421 40, 40, 40, 0, 0, 0, 41, 41, 41, 41,
422 41, 41, 41, 41, 41, 0, 0, 41, 41, 6,
423 0, 0, 6, 41, 6, 0, 0, 0, 0, 41,
424 0, 41, 41, 41, 41, 41, 0, 41, 41, 41,
425 41, 41, 41, 41, 41, 41, 0, 41, 0, 41,
426 41, 41, 41, 41, 33, 33, 33, 33, 33, 33,
427 33, 33, 33, 34, 0, 33, 33, 0, 0, 0,
428 0, 0, 0, 0, 0, 0, 0, 33, 0, 33,
429 33, 33, 33, 33, 0, 33, 33, 33, 33, 33,
430 33, 33, 33, 33, 0, 33, 0, 33, 33, 33,
431 33, 33, 6, 34, 34, 0, 0, 34, 15, 15,
432 15, 15, 15, 15, 15, 15, 0, 12, 0, 15,
433 15, 34, 34, 34, 0, 34, 34, 0, 0, 0,
9c8d0b29 434 0, 15, 0, 15, 15, 15, 15, 15, 0, 0,
435 0, 0, 15, 15, 15, 15, 0, 0, 0, 15,
c822f08a 436 0, 15, 15, 15, 15, 15, 34, 12, 0, 0,
437 12, 0, 12, 0, 0, 0, 7, 7, 7, 7,
438 7, 7, 7, 7, 5, 0, 12, 7, 7, 0,
439 0, 0, 0, 0, 0, 0, 34, 34, 0, 7,
440 0, 7, 7, 7, 7, 7, 0, 0, 0, 0,
441 7, 7, 7, 7, 0, 0, 0, 7, 0, 7,
442 7, 7, 7, 7, 5, 0, 0, 5, 0, 5,
443 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
444 0, 0, 0, 0, 0, 0, 6, 6, 6, 0,
445 12, 0, 6, 6, 0, 2, 0, 6, 6, 0,
446 0, 0, 0, 0, 0, 0, 0, 0, 0, 6,
447 0, 6, 6, 6, 6, 6, 0, 0, 0, 0,
448 6, 6, 6, 6, 0, 0, 0, 6, 0, 6,
449 6, 6, 6, 6, 0, 2, 0, 0, 2, 0,
450 2, 0, 0, 0, 0, 0, 0, 5, 0, 0,
451 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
452 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
453 34, 34, 34, 34, 34, 34, 34, 34, 34, 0,
454 0, 34, 34, 0, 0, 0, 0, 0, 0, 0,
455 0, 0, 0, 34, 0, 34, 34, 34, 34, 34,
456 0, 34, 34, 34, 34, 34, 34, 34, 34, 34,
457 0, 34, 0, 34, 34, 34, 34, 34, 2, 0,
458 0, 0, 0, 0, 12, 12, 12, 12, 0, 12,
459 12, 12, 0, 0, 0, 12, 12, 0, 0, 0,
460 0, 0, 0, 0, 0, 0, 0, 12, 0, 12,
461 12, 12, 12, 12, 0, 0, 0, 0, 12, 12,
462 12, 12, 0, 0, 0, 12, 0, 12, 12, 12,
463 12, 12, 0, 0, 0, 0, 0, 0, 0, 0,
9c8d0b29 464 0, 5, 5, 5, 0, 0, 0, 5, 5, 0,
c822f08a 465 0, 0, 5, 5, 0, 0, 66, 237, 0, 27,
466 238, 28, 0, 0, 5, 0, 5, 5, 5, 5,
467 5, 0, 0, 0, 0, 5, 5, 5, 5, 86,
9c8d0b29 468 0, 0, 5, 0, 5, 5, 5, 5, 5, 0,
c822f08a 469 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
470 0, 0, 0, 66, 239, 0, 27, 240, 28, 0,
471 0, 0, 2, 2, 2, 0, 0, 0, 2, 2,
472 0, 0, 0, 2, 2, 58, 86, 0, 0, 0,
473 0, 0, 0, 0, 0, 2, 0, 2, 2, 2,
474 2, 2, 0, 0, 0, 0, 2, 2, 2, 2,
9c8d0b29 475 0, 0, 0, 2, 0, 2, 2, 2, 2, 2,
c822f08a 476 0, 0, 58, 0, 0, 58, 58, 58, 58, 58,
477 58, 0, 58, 0, 0, 0, 0, 0, 0, 0,
478 54, 0, 0, 58, 58, 58, 0, 58, 58, 0,
479 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
480 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
481 0, 0, 0, 0, 0, 0, 0, 54, 58, 58,
482 54, 54, 54, 54, 54, 54, 0, 54, 56, 0,
483 0, 0, 0, 0, 0, 0, 0, 58, 54, 54,
484 0, 0, 54, 54, 0, 0, 0, 0, 58, 58,
485 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
486 0, 0, 0, 0, 0, 56, 0, 0, 0, 56,
487 56, 0, 56, 54, 54, 56, 0, 0, 0, 12,
488 13, 0, 0, 0, 14, 15, 56, 56, 56, 0,
489 56, 56, 54, 0, 0, 0, 16, 0, 17, 18,
490 19, 0, 21, 54, 54, 0, 0, 22, 23, 24,
491 25, 0, 0, 0, 26, 0, 0, 30, 31, 32,
492 33, 56, 56, 0, 0, 0, 12, 13, 0, 0,
493 0, 14, 15, 0, 0, 0, 0, 0, 0, 0,
494 56, 0, 0, 16, 0, 17, 18, 19, 0, 21,
495 0, 56, 56, 0, 22, 23, 24, 25, 0, 0,
496 0, 26, 0, 0, 30, 31, 32, 33, 0, 0,
497 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
498 0, 0, 58, 58, 58, 58, 58, 58, 58, 58,
499 58, 0, 0, 58, 58, 0, 0, 0, 0, 58,
500 0, 0, 0, 0, 0, 58, 0, 58, 58, 58,
501 58, 58, 0, 58, 58, 58, 58, 0, 58, 58,
502 58, 58, 0, 58, 0, 58, 58, 58, 0, 0,
503 0, 0, 0, 0, 0, 0, 0, 54, 54, 54,
504 54, 54, 54, 54, 54, 54, 0, 0, 54, 54,
505 0, 0, 0, 0, 54, 0, 0, 0, 0, 0,
506 54, 0, 54, 54, 54, 54, 54, 29, 54, 54,
507 54, 54, 0, 54, 54, 54, 54, 0, 54, 0,
508 54, 54, 54, 0, 0, 56, 56, 56, 56, 56,
509 56, 0, 0, 56, 0, 0, 0, 0, 0, 0,
510 0, 0, 56, 0, 29, 0, 0, 0, 29, 29,
511 0, 29, 25, 56, 29, 0, 56, 56, 56, 56,
512 56, 56, 56, 56, 56, 29, 29, 29, 56, 29,
513 29, 0, 0, 0, 0, 0, 0, 0, 0, 0,
514 0, 0, 0, 0, 0, 0, 0, 0, 0, 25,
515 0, 0, 0, 25, 25, 0, 25, 27, 0, 25,
516 29, 29, 0, 0, 0, 0, 0, 0, 0, 0,
517 25, 25, 25, 0, 25, 25, 0, 0, 0, 29,
518 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
519 29, 29, 0, 0, 27, 0, 0, 0, 27, 27,
520 0, 27, 0, 0, 27, 25, 25, 0, 0, 0,
521 0, 0, 0, 0, 0, 27, 27, 27, 0, 27,
522 27, 0, 0, 0, 25, 0, 26, 0, 0, 0,
523 0, 0, 0, 0, 0, 25, 25, 0, 0, 0,
524 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
525 27, 27, 0, 0, 0, 0, 0, 0, 0, 0,
526 0, 0, 0, 26, 0, 0, 0, 26, 26, 27,
527 26, 0, 0, 26, 0, 0, 0, 0, 0, 0,
528 27, 27, 0, 0, 26, 26, 26, 0, 26, 26,
529 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
530 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
531 0, 0, 0, 0, 0, 0, 0, 0, 0, 26,
532 26, 0, 0, 0, 29, 29, 29, 29, 29, 29,
533 0, 0, 29, 0, 0, 0, 0, 0, 26, 0,
534 0, 29, 0, 0, 0, 0, 0, 0, 0, 26,
535 26, 0, 29, 0, 0, 29, 29, 29, 29, 29,
536 29, 29, 29, 29, 0, 0, 0, 29, 0, 25,
537 25, 25, 25, 25, 25, 0, 0, 25, 0, 0,
538 0, 0, 0, 0, 0, 0, 25, 0, 0, 0,
539 0, 0, 0, 0, 0, 0, 0, 25, 0, 0,
540 25, 25, 25, 25, 25, 25, 25, 25, 25, 0,
541 0, 0, 25, 0, 27, 27, 27, 27, 27, 27,
542 0, 0, 27, 0, 0, 0, 0, 0, 0, 0,
543 0, 27, 0, 0, 57, 0, 0, 0, 0, 0,
544 0, 0, 27, 0, 0, 27, 27, 27, 27, 27,
545 27, 27, 27, 27, 0, 0, 0, 27, 0, 0,
546 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
547 0, 57, 103, 104, 0, 57, 57, 0, 57, 0,
548 0, 57, 0, 26, 26, 26, 26, 26, 26, 0,
549 0, 26, 57, 57, 57, 0, 57, 57, 0, 0,
550 26, 88, 0, 0, 0, 0, 134, 0, 136, 137,
551 0, 26, 0, 0, 26, 26, 26, 26, 26, 26,
552 26, 26, 26, 0, 0, 0, 26, 57, 57, 0,
553 0, 0, 0, 0, 0, 0, 159, 160, 88, 0,
554 0, 0, 88, 88, 0, 88, 57, 0, 88, 89,
555 0, 0, 0, 0, 0, 0, 0, 57, 57, 88,
556 88, 88, 0, 88, 88, 0, 0, 0, 0, 0,
557 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
558 0, 0, 0, 0, 0, 0, 89, 0, 0, 0,
559 89, 89, 0, 89, 88, 88, 89, 0, 0, 214,
560 0, 0, 0, 0, 0, 0, 0, 89, 89, 89,
561 222, 89, 224, 88, 225, 0, 0, 0, 0, 0,
562 0, 90, 0, 0, 88, 88, 0, 0, 0, 0,
563 0, 0, 0, 0, 0, 0, 247, 0, 0, 0,
564 0, 0, 89, 89, 0, 0, 0, 0, 0, 0,
565 0, 264, 265, 266, 267, 268, 0, 0, 90, 0,
566 0, 89, 90, 90, 0, 90, 0, 0, 90, 0,
567 0, 0, 89, 89, 0, 0, 0, 0, 0, 90,
568 90, 90, 0, 90, 0, 0, 0, 0, 0, 0,
569 0, 57, 57, 57, 57, 57, 57, 0, 0, 57,
570 292, 0, 0, 0, 294, 295, 296, 0, 57, 20,
571 301, 0, 0, 0, 90, 90, 0, 0, 0, 57,
572 0, 0, 57, 57, 57, 57, 57, 57, 57, 57,
573 57, 0, 0, 90, 57, 314, 315, 0, 0, 0,
574 0, 319, 0, 0, 90, 90, 20, 0, 0, 0,
575 20, 20, 0, 20, 0, 0, 20, 0, 88, 88,
576 88, 88, 88, 88, 0, 0, 88, 20, 20, 20,
577 0, 20, 0, 0, 0, 88, 0, 0, 0, 0,
578 0, 0, 0, 0, 0, 0, 88, 0, 0, 88,
579 88, 88, 0, 0, 0, 0, 88, 88, 0, 0,
580 0, 88, 20, 20, 0, 0, 89, 89, 89, 89,
581 89, 89, 0, 0, 89, 0, 0, 0, 0, 66,
582 156, 20, 27, 89, 28, 0, 0, 0, 0, 35,
583 0, 0, 20, 20, 89, 0, 0, 89, 89, 89,
584 0, 0, 86, 0, 89, 89, 0, 0, 0, 89,
585 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
586 0, 0, 0, 0, 0, 0, 35, 0, 0, 0,
587 35, 35, 0, 35, 0, 0, 35, 0, 90, 90,
588 90, 90, 90, 90, 0, 0, 90, 35, 35, 35,
589 0, 35, 0, 0, 0, 90, 86, 0, 0, 0,
590 0, 0, 0, 0, 0, 0, 90, 0, 0, 90,
591 90, 90, 0, 0, 0, 0, 90, 90, 0, 0,
592 0, 90, 35, 35, 0, 0, 0, 0, 0, 0,
593 0, 0, 0, 86, 0, 0, 0, 86, 86, 0,
594 0, 35, 0, 86, 16, 0, 0, 0, 0, 0,
595 0, 0, 35, 35, 86, 86, 86, 0, 86, 0,
596 0, 0, 0, 0, 0, 0, 20, 20, 20, 20,
597 20, 20, 0, 0, 20, 0, 0, 0, 0, 0,
598 0, 16, 0, 20, 0, 16, 16, 0, 16, 86,
599 86, 16, 0, 0, 20, 0, 0, 20, 20, 20,
600 0, 0, 16, 16, 20, 20, 0, 0, 86, 20,
601 0, 0, 0, 0, 0, 0, 0, 0, 0, 86,
602 86, 0, 0, 0, 0, 0, 0, 0, 0, 0,
603 0, 0, 0, 0, 0, 0, 0, 16, 16, 0,
9c8d0b29 604 0, 0, 12, 13, 0, 0, 0, 14, 15, 0,
c822f08a 605 0, 0, 0, 0, 0, 0, 16, 0, 0, 16,
606 0, 17, 18, 19, 0, 21, 0, 16, 16, 0,
607 22, 23, 24, 25, 0, 0, 0, 26, 0, 0,
608 30, 31, 32, 33, 0, 0, 35, 35, 35, 35,
609 35, 35, 0, 0, 35, 0, 0, 0, 0, 0,
610 0, 0, 0, 35, 0, 0, 0, 0, 0, 0,
611 0, 0, 0, 0, 35, 0, 0, 35, 35, 35,
612 0, 0, 0, 0, 35, 35, 0, 0, 0, 35,
613 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
614 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
615 0, 0, 0, 86, 86, 86, 86, 86, 86, 0,
616 0, 86, 0, 0, 0, 0, 0, 0, 0, 0,
9c8d0b29 617 86, 0, 0, 0, 0, 0, 0, 0, 0, 0,
c822f08a 618 0, 86, 0, 0, 86, 86, 86, 0, 0, 0,
619 0, 86, 86, 0, 0, 0, 86, 0, 0, 0,
620 0, 16, 16, 16, 16, 16, 16, 0, 41, 16,
621 0, 0, 0, 0, 0, 53, 0, 0, 16, 0,
622 0, 0, 0, 0, 0, 0, 0, 0, 0, 16,
623 41, 0, 16, 16, 16, 0, 41, 0, 0, 0,
624 0, 0, 0, 0, 16, 0, 0, 0, 0, 0,
625 106, 53, 109, 0, 0, 0, 113, 114, 0, 117,
626 119, 120, 0, 53, 53, 124, 125, 41, 0, 0,
627 0, 0, 0, 0, 0, 66, 0, 0, 27, 0,
628 28, 0, 0, 135, 0, 0, 41, 139, 141, 142,
629 143, 144, 0, 0, 189, 0, 0, 0, 0, 0,
630 0, 41, 0, 0, 0, 0, 0, 0, 0, 109,
631 0, 0, 0, 0, 0, 0, 162, 0, 0, 0,
632 110, 0, 53, 110, 0, 110, 0, 0, 0, 0,
633 0, 0, 0, 0, 0, 0, 0, 41, 41, 110,
634 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
635 0, 0, 0, 0, 0, 0, 0, 0, 187, 0,
636 202, 203, 0, 0, 205, 206, 207, 208, 210, 0,
637 0, 0, 0, 212, 213, 109, 53, 53, 109, 0,
638 109, 220, 0, 0, 0, 221, 0, 0, 0, 0,
639 0, 0, 0, 0, 109, 0, 232, 0, 0, 233,
640 0, 0, 0, 110, 0, 110, 0, 0, 0, 0,
641 0, 0, 0, 0, 0, 0, 0, 0, 41, 41,
642 258, 0, 0, 0, 0, 0, 0, 0, 0, 0,
643 0, 0, 0, 0, 0, 0, 0, 270, 0, 271,
644 0, 272, 0, 273, 0, 274, 0, 0, 0, 103,
645 276, 0, 103, 0, 103, 277, 278, 0, 109, 0,
646 109, 0, 0, 53, 0, 0, 0, 0, 103, 0,
647 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
648 0, 0, 0, 41, 0, 0, 0, 0, 0, 0,
649 0, 0, 0, 0, 0, 174, 126, 127, 12, 13,
650 41, 175, 176, 14, 15, 177, 0, 178, 179, 0,
651 180, 181, 182, 183, 184, 16, 185, 17, 18, 19,
652 0, 21, 186, 0, 0, 0, 22, 23, 24, 25,
653 0, 0, 103, 26, 103, 0, 30, 31, 32, 33,
654 110, 0, 0, 110, 110, 0, 110, 110, 110, 110,
655 110, 110, 110, 110, 0, 110, 110, 110, 110, 110,
656 110, 110, 110, 110, 110, 0, 110, 110, 0, 0,
657 0, 110, 110, 110, 110, 0, 0, 0, 110, 0,
658 0, 110, 110, 110, 110, 0, 0, 0, 0, 0,
659 0, 0, 0, 0, 0, 109, 0, 0, 109, 109,
660 0, 109, 109, 109, 109, 109, 109, 109, 109, 0,
661 109, 109, 109, 109, 109, 109, 109, 109, 109, 109,
662 0, 109, 109, 0, 0, 0, 109, 109, 109, 109,
663 0, 0, 0, 109, 0, 0, 109, 109, 109, 109,
664 104, 0, 0, 104, 0, 104, 0, 0, 0, 0,
665 0, 0, 0, 0, 0, 0, 0, 0, 0, 104,
666 0, 0, 0, 0, 0, 0, 0, 0, 0, 103,
667 0, 0, 103, 103, 0, 103, 103, 103, 103, 103,
668 103, 103, 103, 0, 103, 103, 103, 103, 103, 103,
669 103, 103, 103, 103, 0, 103, 103, 0, 0, 0,
670 103, 103, 103, 103, 0, 0, 0, 103, 0, 0,
671 103, 103, 103, 103, 105, 0, 0, 105, 0, 105,
672 0, 0, 0, 104, 0, 104, 0, 0, 0, 0,
673 0, 0, 0, 105, 0, 0, 0, 0, 0, 0,
674 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
675 0, 0, 0, 0, 0, 0, 0, 0, 0, 102,
676 0, 0, 102, 0, 102, 0, 0, 0, 0, 0,
677 0, 0, 0, 0, 0, 0, 0, 0, 102, 0,
678 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
679 0, 0, 0, 0, 0, 0, 0, 105, 0, 105,
680 0, 0, 0, 0, 0, 108, 0, 0, 108, 0,
681 108, 0, 0, 0, 0, 0, 0, 0, 0, 0,
682 0, 0, 0, 0, 108, 0, 0, 0, 0, 0,
683 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
684 0, 0, 102, 0, 102, 0, 0, 0, 66, 105,
685 0, 27, 0, 28, 0, 0, 0, 0, 0, 0,
686 104, 0, 0, 104, 104, 0, 104, 104, 104, 104,
687 104, 104, 104, 104, 0, 104, 104, 104, 104, 104,
688 104, 104, 104, 104, 104, 0, 104, 104, 108, 0,
689 108, 104, 104, 104, 104, 0, 0, 0, 104, 0,
690 0, 104, 104, 104, 104, 0, 0, 0, 0, 0,
691 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
692 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
693 0, 0, 0, 0, 105, 0, 0, 105, 105, 0,
9c8d0b29 694 105, 105, 105, 105, 105, 105, 105, 105, 0, 105,
695 105, 105, 105, 105, 105, 105, 105, 105, 105, 0,
c822f08a 696 105, 105, 0, 0, 0, 105, 105, 105, 105, 0,
697 0, 0, 105, 0, 0, 105, 105, 105, 105, 102,
698 0, 0, 102, 102, 0, 102, 102, 102, 102, 102,
699 102, 102, 102, 0, 102, 102, 102, 102, 102, 102,
700 102, 102, 102, 102, 35, 102, 102, 27, 0, 28,
701 102, 102, 102, 102, 0, 0, 0, 102, 0, 0,
702 102, 102, 102, 102, 0, 108, 0, 0, 108, 108,
703 0, 108, 108, 108, 108, 108, 108, 108, 108, 0,
704 108, 108, 108, 108, 108, 108, 108, 108, 108, 108,
705 0, 108, 108, 0, 0, 0, 108, 108, 108, 108,
706 0, 0, 0, 108, 0, 0, 108, 108, 108, 108,
707 137, 12, 13, 137, 0, 137, 14, 15, 0, 0,
708 0, 0, 0, 0, 0, 0, 0, 34, 16, 137,
709 17, 18, 19, 0, 21, 0, 0, 0, 0, 22,
710 23, 24, 25, 0, 0, 0, 26, 0, 0, 30,
711 31, 32, 33, 0, 0, 66, 0, 0, 27, 0,
712 28, 0, 0, 0, 0, 0, 0, 0, 0, 0,
713 0, 0, 0, 0, 189, 0, 0, 0, 0, 0,
714 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
715 0, 0, 0, 137, 0, 137, 0, 0, 0, 0,
716 66, 0, 0, 27, 0, 28, 0, 0, 0, 0,
717 0, 0, 0, 0, 0, 0, 0, 0, 0, 189,
718 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
719 0, 0, 0, 0, 0, 0, 0, 0, 187, 0,
720 188, 0, 0, 0, 0, 0, 66, 0, 0, 27,
721 0, 28, 0, 0, 0, 0, 0, 0, 0, 0,
722 0, 9, 10, 11, 0, 189, 0, 12, 13, 0,
723 0, 0, 14, 15, 0, 0, 0, 0, 0, 0,
724 0, 0, 0, 187, 16, 200, 17, 18, 19, 20,
725 21, 0, 0, 0, 0, 22, 23, 24, 25, 0,
726 0, 0, 26, 0, 29, 30, 31, 32, 33, 0,
727 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
728 35, 0, 0, 27, 0, 28, 0, 0, 0, 187,
729 137, 201, 0, 137, 137, 0, 137, 137, 137, 137,
730 137, 137, 137, 137, 0, 137, 137, 137, 137, 137,
731 137, 137, 137, 137, 137, 0, 137, 137, 0, 0,
732 0, 137, 137, 137, 137, 0, 0, 0, 137, 0,
733 0, 137, 137, 137, 137, 174, 0, 0, 12, 13,
734 0, 175, 176, 14, 15, 177, 0, 178, 179, 0,
735 180, 181, 182, 183, 184, 16, 185, 17, 18, 19,
736 0, 21, 186, 0, 0, 0, 22, 23, 24, 25,
737 0, 0, 0, 26, 0, 0, 30, 31, 32, 33,
738 174, 0, 0, 12, 13, 0, 175, 176, 14, 15,
739 177, 0, 178, 179, 0, 180, 181, 182, 183, 184,
740 16, 185, 17, 18, 19, 0, 21, 186, 0, 0,
9c8d0b29 741 0, 22, 23, 24, 25, 0, 0, 0, 26, 0,
c822f08a 742 0, 30, 31, 32, 33, 0, 174, 0, 0, 12,
743 13, 0, 175, 176, 14, 15, 177, 0, 178, 179,
744 0, 180, 181, 182, 183, 184, 16, 185, 17, 18,
745 19, 0, 21, 186, 0, 0, 0, 22, 23, 24,
746 25, 0, 0, 0, 26, 0, 0, 30, 31, 32,
747 33, 66, 0, 0, 27, 0, 28, 0, 0, 0,
748 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
749 189, 0, 0, 0, 0, 0, 0, 0, 0, 11,
750 0, 0, 0, 12, 13, 0, 0, 0, 14, 15,
751 0, 0, 0, 0, 0, 0, 66, 0, 0, 27,
752 16, 28, 17, 18, 19, 0, 21, 0, 0, 0,
753 0, 22, 23, 24, 25, 189, 0, 0, 26, 0,
754 29, 30, 31, 32, 33, 0, 0, 0, 0, 0,
755 0, 0, 0, 0, 187, 0, 231, 0, 0, 0,
756 0, 66, 0, 0, 27, 0, 28, 0, 0, 0,
9c8d0b29 757 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
c822f08a 758 189, 0, 0, 0, 0, 0, 0, 0, 0, 0,
759 0, 0, 0, 0, 0, 0, 0, 0, 0, 187,
760 0, 285, 0, 0, 0, 0, 0, 107, 0, 0,
761 107, 0, 107, 0, 0, 0, 0, 0, 0, 0,
762 0, 0, 0, 0, 0, 0, 107, 0, 0, 0,
9c8d0b29 763 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
c822f08a 764 0, 0, 0, 0, 187, 0, 309, 0, 0, 0,
765 0, 0, 0, 0, 0, 0, 0, 66, 0, 0,
766 27, 0, 28, 0, 0, 0, 0, 0, 0, 0,
9c8d0b29 767 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
9c8d0b29 768 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
c822f08a 769 107, 174, 107, 0, 12, 13, 0, 175, 176, 14,
770 15, 177, 0, 178, 179, 0, 180, 181, 182, 183,
771 184, 16, 185, 17, 18, 19, 0, 21, 186, 0,
772 0, 0, 22, 23, 24, 25, 0, 0, 0, 26,
773 0, 0, 30, 31, 32, 33, 174, 0, 0, 12,
774 13, 0, 175, 176, 14, 15, 177, 0, 178, 179,
775 0, 180, 181, 182, 183, 184, 16, 185, 17, 18,
776 19, 0, 21, 186, 0, 0, 0, 22, 23, 24,
777 25, 0, 0, 0, 26, 0, 0, 30, 31, 32,
778 33, 174, 0, 0, 12, 13, 0, 175, 176, 14,
779 15, 177, 0, 178, 179, 0, 180, 181, 182, 183,
780 184, 16, 185, 17, 18, 19, 66, 21, 186, 27,
781 111, 28, 22, 23, 24, 25, 0, 0, 0, 26,
782 0, 0, 30, 31, 32, 33, 89, 107, 90, 86,
783 107, 107, 0, 107, 107, 107, 107, 107, 0, 107,
784 107, 0, 107, 107, 107, 107, 107, 107, 107, 107,
785 107, 107, 0, 107, 107, 0, 0, 0, 107, 107,
786 107, 107, 0, 0, 0, 107, 0, 0, 107, 107,
787 107, 107, 130, 0, 0, 130, 0, 130, 0, 0,
788 12, 13, 0, 175, 176, 14, 15, 0, 0, 0,
789 0, 130, 180, 181, 182, 183, 184, 16, 0, 17,
790 18, 19, 0, 21, 186, 0, 0, 0, 22, 23,
791 24, 25, 0, 0, 0, 26, 0, 0, 30, 31,
792 32, 33, 66, 0, 0, 27, 0, 28, 0, 0,
793 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
794 0, 0, 89, 0, 90, 86, 0, 0, 0, 0,
795 0, 0, 0, 0, 0, 130, 0, 130, 0, 0,
796 0, 0, 0, 0, 66, 241, 0, 27, 242, 28,
797 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
798 0, 0, 0, 0, 0, 0, 0, 86, 0, 0,
799 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
800 0, 0, 0, 0, 0, 0, 0, 0, 66, 243,
801 0, 27, 244, 28, 0, 0, 0, 0, 0, 0,
802 0, 0, 0, 0, 0, 0, 0, 0, 0, 12,
803 13, 86, 0, 0, 14, 15, 0, 0, 0, 0,
804 0, 0, 0, 0, 0, 0, 16, 0, 17, 18,
805 19, 0, 21, 0, 0, 0, 0, 22, 23, 24,
806 25, 87, 88, 0, 26, 0, 0, 30, 31, 32,
807 33, 66, 248, 0, 27, 249, 28, 0, 0, 0,
808 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
809 0, 0, 130, 0, 86, 130, 130, 0, 130, 130,
810 130, 130, 130, 0, 130, 130, 0, 130, 130, 130,
811 130, 130, 130, 130, 130, 130, 130, 0, 130, 130,
812 0, 0, 0, 130, 130, 130, 130, 0, 0, 0,
813 130, 0, 0, 130, 130, 130, 130, 35, 0, 0,
814 27, 0, 28, 0, 0, 12, 13, 0, 0, 0,
815 14, 15, 0, 0, 0, 0, 297, 0, 0, 0,
816 0, 0, 16, 0, 17, 18, 19, 0, 21, 0,
817 0, 0, 0, 22, 23, 24, 25, 87, 88, 0,
818 26, 0, 0, 30, 31, 32, 33, 12, 13, 0,
819 0, 108, 14, 15, 27, 0, 28, 0, 0, 0,
9c8d0b29 820 0, 0, 0, 0, 16, 0, 17, 18, 19, 0,
c822f08a 821 21, 0, 0, 0, 0, 22, 23, 24, 25, 0,
822 0, 0, 26, 0, 0, 30, 31, 32, 33, 0,
823 0, 12, 13, 0, 0, 66, 14, 15, 27, 111,
824 28, 0, 0, 0, 0, 0, 0, 0, 16, 0,
825 17, 18, 19, 0, 21, 0, 0, 0, 86, 22,
826 23, 24, 25, 0, 0, 0, 26, 0, 0, 30,
827 31, 32, 33, 0, 0, 0, 0, 0, 66, 0,
828 0, 27, 161, 28, 0, 0, 0, 0, 0, 0,
829 0, 0, 0, 0, 12, 13, 0, 0, 0, 14,
830 15, 86, 0, 0, 0, 0, 0, 0, 0, 0,
831 0, 16, 0, 17, 18, 19, 0, 21, 0, 0,
832 0, 0, 22, 23, 24, 25, 0, 0, 0, 26,
833 0, 0, 30, 31, 32, 33, 66, 0, 0, 27,
834 164, 28, 0, 0, 0, 0, 0, 0, 0, 0,
835 0, 0, 0, 0, 0, 0, 11, 0, 0, 86,
9c8d0b29 836 12, 13, 0, 0, 0, 14, 15, 0, 0, 0,
837 0, 0, 0, 0, 0, 0, 0, 16, 0, 17,
c822f08a 838 18, 19, 66, 21, 0, 27, 166, 28, 22, 23,
839 24, 25, 0, 0, 0, 26, 0, 29, 30, 31,
840 32, 33, 0, 0, 0, 86, 0, 0, 0, 0,
9c8d0b29 841 11, 0, 0, 0, 12, 13, 0, 0, 0, 14,
c822f08a 842 15, 0, 0, 0, 66, 0, 0, 27, 167, 28,
9c8d0b29 843 0, 16, 0, 17, 18, 19, 0, 21, 0, 0,
c822f08a 844 0, 0, 22, 23, 24, 25, 0, 86, 0, 26,
845 0, 29, 30, 31, 32, 33, 0, 0, 12, 13,
846 0, 0, 0, 14, 15, 0, 0, 66, 0, 0,
847 27, 172, 28, 0, 0, 16, 0, 17, 18, 19,
848 0, 21, 0, 0, 0, 0, 22, 23, 24, 25,
849 86, 0, 0, 26, 0, 0, 30, 31, 32, 33,
850 0, 12, 13, 0, 0, 0, 14, 15, 0, 0,
851 66, 0, 0, 27, 173, 28, 0, 0, 16, 0,
852 17, 18, 19, 0, 21, 0, 0, 0, 0, 22,
853 23, 24, 25, 86, 0, 0, 26, 0, 0, 30,
854 31, 32, 33, 0, 0, 0, 0, 0, 0, 0,
855 0, 0, 66, 0, 0, 27, 0, 28, 0, 12,
856 13, 0, 0, 0, 14, 15, 0, 0, 0, 0,
857 195, 0, 0, 0, 0, 86, 16, 0, 17, 18,
858 19, 0, 21, 0, 0, 0, 0, 22, 23, 24,
859 25, 0, 0, 0, 26, 0, 0, 30, 31, 32,
860 33, 0, 0, 0, 0, 12, 13, 0, 0, 66,
861 14, 15, 27, 0, 28, 0, 0, 0, 0, 0,
862 0, 0, 16, 0, 17, 18, 19, 198, 21, 0,
863 0, 0, 86, 22, 23, 24, 25, 0, 0, 0,
864 26, 0, 0, 30, 31, 32, 33, 12, 13, 0,
865 0, 0, 14, 15, 66, 0, 0, 27, 0, 28,
866 0, 0, 0, 0, 16, 0, 17, 18, 19, 0,
867 21, 0, 0, 0, 0, 22, 23, 24, 25, 0,
868 0, 0, 26, 0, 0, 30, 31, 32, 33, 0,
869 12, 13, 0, 0, 0, 14, 15, 0, 0, 66,
870 246, 0, 27, 0, 28, 0, 0, 16, 0, 17,
9c8d0b29 871 18, 19, 0, 21, 0, 0, 0, 0, 22, 23,
c822f08a 872 24, 25, 86, 0, 0, 26, 0, 0, 30, 31,
873 32, 33, 0, 12, 13, 0, 0, 0, 14, 15,
874 0, 0, 66, 250, 0, 27, 0, 28, 0, 0,
875 16, 0, 17, 18, 19, 0, 21, 0, 0, 0,
876 0, 22, 23, 24, 25, 86, 0, 0, 26, 0,
877 0, 30, 31, 32, 33, 12, 13, 0, 0, 0,
878 14, 15, 0, 0, 66, 281, 0, 27, 0, 28,
9c8d0b29 879 0, 0, 16, 0, 17, 18, 19, 0, 21, 0,
c822f08a 880 0, 0, 0, 22, 23, 24, 25, 86, 0, 0,
881 26, 0, 0, 30, 31, 32, 33, 0, 0, 0,
9c8d0b29 882 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
c822f08a 883 0, 0, 12, 13, 0, 0, 0, 14, 15, 0,
884 0, 66, 287, 0, 27, 0, 28, 0, 0, 16,
885 0, 17, 18, 19, 0, 21, 0, 0, 0, 0,
886 22, 23, 24, 25, 86, 0, 0, 26, 0, 0,
887 30, 31, 32, 33, 0, 126, 127, 12, 13, 0,
888 0, 0, 14, 15, 0, 0, 66, 288, 0, 27,
889 0, 28, 0, 0, 16, 0, 17, 18, 19, 0,
890 21, 0, 0, 0, 0, 22, 23, 24, 25, 86,
891 0, 0, 26, 0, 0, 30, 31, 32, 33, 0,
892 0, 0, 12, 13, 0, 0, 0, 14, 15, 0,
893 0, 66, 289, 0, 27, 0, 28, 0, 0, 16,
894 0, 17, 18, 19, 0, 21, 0, 0, 0, 0,
895 22, 23, 24, 25, 86, 0, 0, 26, 0, 0,
896 30, 31, 32, 33, 0, 12, 13, 0, 0, 0,
897 14, 15, 0, 0, 66, 290, 0, 27, 0, 28,
9c8d0b29 898 0, 0, 16, 0, 17, 18, 19, 0, 21, 0,
c822f08a 899 0, 0, 0, 22, 23, 24, 25, 86, 0, 0,
900 26, 0, 0, 30, 31, 32, 33, 12, 13, 0,
901 0, 0, 14, 15, 0, 0, 66, 291, 0, 27,
902 0, 28, 0, 0, 16, 0, 17, 18, 19, 0,
903 21, 0, 0, 0, 0, 22, 23, 24, 25, 86,
904 0, 0, 26, 0, 0, 30, 31, 32, 33, 0,
905 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
906 0, 0, 0, 0, 12, 13, 0, 0, 0, 14,
907 15, 0, 0, 66, 293, 0, 27, 0, 28, 0,
908 0, 16, 0, 17, 18, 19, 0, 21, 0, 0,
909 0, 0, 22, 23, 24, 25, 86, 0, 0, 26,
910 0, 0, 30, 31, 32, 33, 0, 0, 0, 12,
911 13, 0, 0, 0, 14, 15, 0, 0, 0, 66,
912 0, 0, 27, 0, 28, 0, 16, 0, 17, 18,
913 19, 0, 21, 0, 0, 0, 0, 22, 23, 24,
914 25, 0, 0, 0, 26, 0, 0, 30, 31, 32,
915 33, 0, 0, 0, 12, 13, 0, 0, 0, 14,
916 15, 0, 0, 0, 0, 66, 0, 0, 27, 0,
917 28, 16, 0, 17, 18, 19, 0, 21, 0, 0,
918 0, 0, 22, 23, 24, 25, 0, 0, 0, 26,
919 0, 0, 30, 31, 32, 33, 0, 12, 13, 0,
9c8d0b29 920 0, 0, 14, 15, 0, 0, 0, 0, 0, 0,
c822f08a 921 0, 0, 0, 0, 16, 0, 17, 18, 19, 66,
922 21, 0, 27, 0, 28, 22, 23, 24, 25, 0,
923 0, 0, 26, 0, 0, 30, 31, 32, 33, 12,
924 13, 0, 0, 0, 14, 15, 0, 0, 0, 0,
925 0, 0, 0, 0, 0, 0, 16, 0, 17, 18,
926 19, 0, 21, 0, 0, 0, 0, 22, 23, 24,
927 25, 0, 0, 0, 26, 0, 0, 30, 31, 32,
928 33, 66, 0, 0, 27, 0, 28, 0, 0, 0,
929 0, 0, 0, 0, 0, 0, 12, 13, 0, 0,
9c8d0b29 930 0, 14, 15, 0, 0, 0, 0, 0, 0, 0,
931 0, 0, 0, 16, 0, 17, 18, 19, 0, 21,
c822f08a 932 0, 0, 0, 0, 22, 23, 24, 25, 0, 0,
933 0, 26, 0, 0, 30, 31, 32, 33, 116, 0,
934 0, 66, 12, 13, 27, 0, 28, 14, 15, 0,
9c8d0b29 935 0, 0, 0, 0, 0, 0, 0, 0, 0, 16,
c822f08a 936 0, 17, 18, 19, 86, 21, 0, 0, 0, 0,
937 22, 23, 24, 25, 0, 0, 0, 26, 0, 0,
938 30, 31, 32, 33, 118, 0, 0, 66, 12, 13,
939 27, 0, 28, 14, 15, 0, 0, 0, 0, 0,
940 0, 0, 0, 0, 0, 16, 0, 17, 18, 19,
941 0, 21, 0, 0, 0, 0, 22, 23, 24, 25,
942 0, 0, 0, 26, 0, 0, 30, 31, 32, 33,
943 51, 0, 0, 27, 0, 28, 0, 0, 140, 0,
9c8d0b29 944 0, 0, 12, 13, 0, 0, 0, 14, 15, 0,
945 0, 0, 0, 0, 0, 0, 0, 0, 0, 16,
946 0, 17, 18, 19, 0, 21, 0, 0, 0, 0,
c822f08a 947 22, 23, 24, 25, 0, 0, 0, 26, 0, 0,
948 30, 31, 32, 33, 66, 0, 0, 27, 0, 28,
949 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
950 209, 0, 0, 0, 12, 13, 0, 0, 0, 14,
951 15, 0, 0, 0, 0, 0, 0, 0, 0, 0,
952 0, 16, 0, 17, 18, 19, 0, 21, 0, 0,
953 0, 0, 22, 23, 24, 25, 0, 0, 0, 26,
954 0, 0, 30, 31, 32, 33, 0, 0, 0, 0,
955 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
956 0, 0, 0, 0, 12, 13, 0, 0, 0, 14,
957 15, 0, 0, 0, 0, 0, 0, 0, 0, 0,
958 0, 16, 0, 17, 18, 19, 0, 21, 0, 0,
959 0, 0, 22, 23, 24, 25, 0, 0, 0, 26,
960 0, 0, 30, 31, 32, 33, 269, 0, 0, 0,
961 12, 13, 0, 0, 0, 14, 15, 0, 0, 0,
962 0, 0, 0, 0, 0, 0, 0, 16, 0, 17,
963 18, 19, 0, 21, 0, 0, 0, 0, 22, 23,
964 24, 25, 0, 0, 0, 26, 0, 0, 30, 31,
965 32, 33, 0, 12, 13, 0, 0, 0, 14, 15,
966 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
967 16, 0, 17, 18, 19, 0, 21, 0, 0, 0,
968 0, 22, 23, 24, 25, 57, 0, 0, 26, 0,
969 0, 30, 31, 32, 33, 0, 68, 68, 0, 71,
970 72, 0, 68, 0, 0, 0, 0, 12, 13, 0,
971 68, 0, 14, 15, 0, 0, 0, 0, 0, 0,
972 0, 0, 68, 0, 16, 0, 17, 18, 19, 0,
973 21, 0, 0, 0, 0, 22, 23, 24, 25, 0,
974 0, 0, 26, 0, 0, 30, 31, 32, 33, 0,
975 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
976 0, 0, 68, 68, 68, 68, 68, 68, 0, 0,
977 0, 0, 0, 0, 0, 68, 0, 0, 68, 0,
978 0, 0, 68, 68, 0, 0, 68, 0, 68, 68,
979 0, 0, 0, 68, 68, 0, 0, 0, 0, 0,
980 0, 0, 0, 0, 68, 0, 0, 0, 68, 0,
981 68, 68, 68, 68, 0, 0, 0, 0, 0, 0,
982 0, 199, 0, 0, 0, 0, 0, 0, 0, 0,
983 0, 68, 0, 0, 0, 0, 0, 0, 0, 0,
984 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
985 0, 0, 0, 0, 0, 0, 0, 0, 0, 68,
986 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
987 0, 68, 68, 0, 68, 68, 68, 68, 0, 68,
988 0, 68, 68, 0, 0, 67, 69, 0, 0, 68,
989 68, 73, 0, 0, 0, 0, 0, 0, 0, 91,
990 0, 68, 68, 0, 0, 0, 0, 0, 0, 0,
991 0, 91, 0, 0, 0, 0, 0, 0, 0, 0,
992 0, 0, 0, 0, 0, 0, 0, 68, 0, 0,
993 0, 0, 0, 0, 0, 0, 0, 0, 0, 68,
994 68, 68, 68, 68, 0, 68, 68, 68, 0, 0,
995 0, 146, 147, 148, 149, 150, 151, 0, 0, 0,
996 0, 0, 0, 0, 91, 0, 0, 91, 0, 0,
997 0, 91, 91, 0, 0, 91, 0, 91, 91, 0,
998 0, 0, 91, 91, 0, 0, 0, 0, 0, 0,
999 0, 0, 0, 91, 0, 0, 0, 91, 0, 91,
1000 91, 91, 91, 0, 0, 0, 0, 0, 0, 0,
1001 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1002 91, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1003 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1004 0, 0, 0, 0, 0, 0, 0, 0, 91, 0,
1005 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1006 91, 91, 0, 91, 91, 91, 91, 0, 91, 0,
1007 91, 91, 0, 0, 0, 0, 0, 0, 91, 91,
1008 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1009 91, 91, 0, 0, 0, 0, 0, 0, 0, 0,
1010 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1011 0, 0, 0, 0, 0, 0, 91, 0, 0, 0,
1012 0, 0, 0, 0, 0, 0, 0, 0, 91, 91,
1013 91, 91, 91, 0, 91, 91, 91,
9c8d0b29 1014};
1015short yycheck[] = { 41,
c822f08a 1016 0, 41, 63, 41, 37, 41, 41, 59, 59, 42,
1017 43, 63, 45, 63, 47, 35, 63, 219, 41, 63,
1018 50, 63, 38, 63, 59, 63, 123, 63, 62, 37,
1019 44, 123, 62, 63, 42, 103, 104, 37, 35, 47,
1020 40, 41, 42, 43, 44, 45, 51, 47, 35, 63,
1021 41, 94, 41, 44, 288, 0, 301, 302, 58, 59,
1022 60, 94, 62, 63, 297, 60, 134, 301, 302, 112,
1023 59, 292, 41, 40, 307, 44, 59, 261, 262, 112,
1024 40, 40, 303, 304, 123, 40, 94, 40, 108, 40,
1025 124, 121, 37, 93, 94, 297, 41, 42, 43, 44,
1026 45, 286, 47, 108, 112, 307, 91, 41, 222, 40,
1027 0, 108, 112, 58, 59, 60, 40, 62, 63, 40,
1028 261, 108, 44, 123, 124, 59, 40, 123, 62, 41,
1029 60, 112, 41, 41, 292, 280, 41, 44, 44, 41,
1030 292, 41, 41, 93, 41, 175, 176, 37, 93, 94,
1031 40, 41, 42, 43, 40, 45, 224, 47, 40, 59,
1032 40, 292, 59, 290, 261, 262, 41, 112, 58, 59,
1033 60, 91, 62, 63, 59, 41, 272, 7, 123, 124,
1034 294, 295, 296, 40, 200, 271, 41, 41, 0, 93,
1035 124, 41, 93, 41, 59, 59, -1, 216, -1, 29,
1036 314, 315, -1, 93, 94, 319, -1, -1, -1, 260,
1037 261, 262, 41, -1, -1, -1, -1, -1, -1, -1,
1038 -1, -1, 112, -1, 292, 260, 261, 262, 289, 290,
1039 59, 265, 262, 123, 124, -1, -1, 289, 290, 289,
1040 290, 274, 289, 290, -1, 289, 290, 289, 290, 289,
1041 290, 289, 290, 289, 290, 85, -1, 257, 258, 259,
1042 260, 261, 262, 263, 264, 265, 289, 290, 268, 269,
1043 100, 260, 261, 262, 274, 289, 290, 260, 261, 262,
1044 280, 41, 282, 283, 284, 285, 286, 41, 288, 289,
1045 290, 291, 292, 293, 294, 295, 296, 292, 298, 59,
1046 300, 301, 302, 303, 304, 59, 136, 137, 303, 304,
1047 -1, -1, 257, 258, 259, 260, 261, 262, 263, 264,
1048 265, -1, -1, 268, 269, -1, 260, 261, 262, 274,
1049 -1, 265, -1, -1, -1, 280, 41, 282, 283, 284,
9c8d0b29 1050 285, 286, -1, 288, 289, 290, 291, 292, 293, 294,
1051 295, 296, -1, 298, 59, 300, 301, 302, 303, 304,
c822f08a 1052 260, 261, 262, 260, 261, 262, -1, 257, 258, 259,
9c8d0b29 1053 260, 261, 262, 263, 264, 265, -1, -1, 268, 269,
c822f08a 1054 0, -1, -1, -1, 274, -1, -1, 217, 218, -1,
9c8d0b29 1055 280, -1, 282, 283, 284, 285, 286, 41, 288, 289,
1056 290, 291, 292, 293, 294, 295, 296, -1, 298, -1,
1057 300, 301, 302, 303, 304, 59, -1, 37, -1, -1,
c822f08a 1058 40, 41, 42, 43, 44, 45, -1, 47, -1, -1,
1059 -1, 260, 261, 262, -1, 0, -1, -1, 58, 59,
1060 -1, -1, 62, 63, -1, -1, -1, -1, -1, -1,
1061 -1, -1, 282, -1, -1, -1, -1, -1, -1, -1,
1062 -1, -1, -1, -1, -1, -1, -1, -1, -1, 299,
1063 -1, -1, 37, 93, 94, 40, 41, 42, 43, 44,
1064 45, -1, 47, -1, -1, -1, -1, -1, -1, -1,
9c8d0b29 1065 0, -1, 112, 58, 59, 60, -1, 62, 63, -1,
c822f08a 1066 260, 261, 262, 123, 124, -1, 260, 261, 262, -1,
1067 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1068 -1, -1, -1, -1, -1, -1, -1, 37, 93, 94,
1069 40, 41, 42, 43, 44, 45, -1, 47, -1, -1,
1070 -1, -1, -1, -1, -1, -1, -1, -1, 58, 59,
9c8d0b29 1071 60, -1, 62, 63, -1, 260, 261, 262, 123, 124,
c822f08a 1072 -1, -1, -1, 0, -1, -1, -1, -1, -1, -1,
1073 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
9c8d0b29 1074 -1, -1, -1, 93, 94, -1, -1, -1, -1, -1,
c822f08a 1075 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
9c8d0b29 1076 37, -1, 112, 40, 41, 42, 43, 44, 45, -1,
c822f08a 1077 47, -1, -1, 123, 124, -1, 260, 261, 262, -1,
9c8d0b29 1078 -1, 58, 59, 60, -1, 62, 63, -1, -1, -1,
1079 -1, -1, -1, -1, -1, -1, -1, 257, 258, 259,
1080 260, 261, 262, 263, 264, 265, -1, -1, 268, 269,
1081 -1, -1, -1, -1, 274, -1, 93, -1, -1, -1,
c822f08a 1082 280, -1, 282, 283, 284, 285, 286, -1, 288, 289,
9c8d0b29 1083 290, 291, 292, 293, 294, 295, 296, -1, 298, -1,
1084 300, 301, 302, 303, 304, -1, 123, 124, -1, -1,
1085 -1, -1, 257, 258, 259, 260, 261, 262, 263, 264,
1086 265, -1, -1, 268, 269, -1, -1, -1, -1, 274,
1087 -1, -1, -1, -1, -1, 280, -1, 282, 283, 284,
1088 285, 286, -1, 288, 289, 290, 291, 292, 293, 294,
1089 295, 296, -1, 298, -1, 300, 301, 302, 303, 304,
1090 -1, -1, -1, -1, -1, -1, -1, 257, 258, 259,
1091 260, 261, 262, 263, 264, 265, -1, -1, 268, 269,
c822f08a 1092 -1, -1, -1, -1, 274, -1, -1, -1, -1, -1,
9c8d0b29 1093 280, -1, 282, 283, 284, 285, 286, -1, 288, 289,
1094 -1, 291, 292, 293, 294, 295, 296, -1, 298, -1,
c822f08a 1095 300, 301, 302, 303, 304, -1, -1, -1, -1, -1,
1096 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1097 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
9c8d0b29 1098 257, 258, 259, 260, 261, 262, 263, 264, 265, -1,
1099 -1, 268, 269, 0, -1, -1, -1, 274, -1, -1,
c822f08a 1100 -1, -1, -1, 280, -1, 282, 283, 284, 285, 286,
9c8d0b29 1101 -1, 288, 289, 290, 291, 292, 293, 294, 295, 296,
1102 -1, 298, -1, 300, 301, 302, 303, 304, -1, -1,
1103 37, -1, -1, 40, 41, 42, 43, 44, 45, -1,
c822f08a 1104 47, -1, -1, -1, -1, -1, -1, -1, 0, -1,
9c8d0b29 1105 -1, 58, 59, 60, -1, 62, 63, -1, -1, -1,
1106 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1107 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
c822f08a 1108 -1, -1, -1, -1, -1, 37, 93, 94, 40, 41,
1109 42, 43, 44, 45, -1, 47, -1, -1, -1, -1,
1110 -1, -1, 0, -1, -1, 112, 58, 59, 60, -1,
1111 62, 63, -1, -1, -1, -1, 123, 124, -1, -1,
1112 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1113 -1, -1, -1, -1, -1, -1, -1, -1, -1, 37,
1114 -1, 93, 40, 41, 42, 43, 44, 45, -1, 47,
9c8d0b29 1115 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
c822f08a 1116 58, 59, 60, -1, 62, 63, -1, -1, -1, -1,
1117 -1, 123, 124, -1, -1, 0, -1, -1, -1, -1,
9c8d0b29 1118 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
c822f08a 1119 -1, -1, -1, -1, -1, 93, -1, -1, -1, -1,
9c8d0b29 1120 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1121 -1, -1, 37, -1, -1, 40, 41, 42, 43, 44,
c822f08a 1122 45, -1, 47, -1, -1, 123, 124, -1, -1, -1,
9c8d0b29 1123 -1, -1, -1, 58, 59, 60, -1, 62, 63, -1,
1124 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1125 257, 258, 259, 260, 261, 262, 263, 264, 265, -1,
1126 -1, 268, 269, -1, -1, -1, -1, 274, 93, -1,
1127 -1, -1, -1, 280, -1, 282, 283, 284, 285, 286,
1128 -1, 288, 289, 290, 291, 292, 293, 294, 295, 296,
c822f08a 1129 -1, 298, -1, 300, -1, -1, 303, 304, 123, 124,
1130 -1, -1, -1, -1, -1, 257, 258, 259, 260, 261,
1131 262, 263, 264, 265, -1, -1, 268, 269, -1, -1,
1132 -1, -1, 274, -1, -1, -1, -1, -1, 280, -1,
1133 282, 283, 284, 285, 286, -1, 288, 289, 290, 291,
1134 292, 293, 294, 295, 296, -1, 298, -1, 300, 301,
1135 302, 303, 304, -1, -1, -1, -1, -1, -1, 257,
1136 258, 259, 260, 261, 262, 263, 264, 265, 0, -1,
1137 268, 269, -1, -1, -1, -1, 274, -1, -1, -1,
1138 -1, -1, 280, -1, 282, 283, 284, 285, 286, -1,
1139 288, 289, 290, 291, 292, 293, 294, 295, 296, -1,
1140 298, -1, 300, 301, 302, 303, 304, -1, 40, -1,
1141 -1, 43, -1, 45, -1, -1, -1, -1, -1, -1,
1142 -1, -1, -1, -1, -1, -1, -1, 59, -1, -1,
9c8d0b29 1143 -1, -1, 257, 258, 259, 260, 261, 262, 263, 264,
1144 265, -1, -1, 268, 269, 0, -1, -1, -1, 274,
1145 -1, -1, -1, -1, -1, 280, -1, 282, 283, 284,
1146 285, 286, -1, 288, 289, 290, 291, 292, 293, 294,
1147 295, 296, -1, 298, -1, 300, 301, 302, 303, 304,
1148 -1, -1, 37, -1, -1, 40, 41, 42, 43, 44,
c822f08a 1149 45, 123, 47, -1, -1, -1, -1, -1, -1, 0,
9c8d0b29 1150 -1, -1, -1, 58, 59, 60, -1, 62, 63, -1,
1151 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1152 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1153 -1, -1, -1, -1, -1, -1, 37, -1, 93, 40,
1154 41, 42, 43, 44, 45, -1, 47, -1, -1, -1,
c822f08a 1155 -1, -1, -1, 0, -1, -1, -1, 58, 59, 60,
9c8d0b29 1156 -1, 62, 63, -1, -1, -1, -1, -1, 123, 124,
1157 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1158 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
c822f08a 1159 37, -1, 93, 40, 41, 42, 43, 44, 45, -1,
1160 47, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1161 -1, 58, 59, 60, -1, 62, 63, -1, -1, -1,
1162 -1, -1, 123, 124, -1, 257, 258, 259, 260, 261,
1163 262, 263, 264, -1, -1, -1, 268, 269, -1, -1,
1164 -1, -1, -1, -1, -1, -1, 93, 94, 280, -1,
1165 282, 283, 284, 285, 286, -1, -1, -1, -1, 291,
1166 292, 293, 294, -1, -1, 112, 298, -1, 300, 301,
1167 302, 303, 304, -1, -1, -1, 123, 124, -1, -1,
9c8d0b29 1168 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
9c8d0b29 1169 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
9c8d0b29 1170 -1, -1, 257, 258, 259, 260, 261, 262, 263, 264,
1171 265, -1, -1, 268, 269, -1, -1, -1, -1, 274,
c822f08a 1172 -1, 40, -1, -1, 43, 280, 45, 282, 283, 284,
9c8d0b29 1173 285, 286, -1, 288, 289, 290, 291, 292, 293, 294,
1174 295, 296, -1, 298, -1, 300, 301, 302, 303, 304,
c822f08a 1175 -1, -1, -1, -1, -1, -1, 257, 258, 259, 260,
9c8d0b29 1176 261, 262, 263, 264, 265, -1, -1, 268, 269, -1,
1177 -1, -1, -1, 274, -1, -1, -1, -1, -1, 280,
c822f08a 1178 -1, 282, 283, 284, 285, 286, -1, 288, 289, 290,
9c8d0b29 1179 291, 292, 293, 294, 295, 296, -1, 298, -1, 300,
c822f08a 1180 301, 302, 303, 304, 40, -1, -1, 43, -1, 45,
1181 257, 258, 259, 260, 261, 262, 263, 264, 265, -1,
1182 -1, 268, 269, 0, -1, -1, -1, 274, -1, -1,
1183 -1, -1, -1, 280, -1, 282, 283, 284, 285, 286,
1184 -1, -1, 289, 290, 291, 292, 293, 294, 295, 296,
1185 -1, 298, -1, 300, -1, -1, 303, 304, -1, -1,
1186 37, -1, -1, 40, 41, 42, 43, 44, 45, -1,
1187 47, -1, -1, -1, -1, -1, -1, -1, 0, -1,
1188 -1, 58, 59, 60, -1, 62, -1, -1, -1, -1,
9c8d0b29 1189 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1190 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
c822f08a 1191 -1, -1, -1, -1, -1, -1, 93, 94, 40, 41,
1192 -1, 43, 44, 45, -1, -1, -1, -1, -1, 0,
1193 -1, -1, -1, -1, -1, 112, 58, 59, 60, -1,
1194 62, 63, -1, -1, 263, 264, 123, 124, -1, 268,
1195 269, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1196 -1, 280, -1, 282, 283, 284, -1, 286, -1, 40,
1197 41, 93, 43, 44, 45, -1, -1, 0, -1, 298,
1198 -1, -1, 301, 302, 303, 304, -1, 58, 59, 60,
9c8d0b29 1199 -1, 62, 63, -1, -1, -1, -1, -1, -1, -1,
c822f08a 1200 -1, 123, 124, -1, -1, -1, -1, -1, -1, -1,
1201 -1, -1, -1, -1, -1, -1, -1, 40, 41, -1,
1202 -1, 44, 93, 259, -1, 261, 262, 263, 264, -1,
1203 -1, 0, 268, 269, -1, 58, 59, 60, -1, 62,
1204 63, -1, -1, -1, 280, -1, 282, 283, 284, -1,
1205 286, -1, 123, 124, -1, 291, 292, 293, 294, -1,
1206 -1, -1, 298, -1, 300, 301, 302, 303, 304, -1,
1207 93, 40, -1, -1, 43, -1, 45, -1, -1, -1,
1208 257, 258, 259, 260, 261, 262, 263, 264, 265, 0,
1209 59, 268, 269, -1, -1, -1, -1, 274, -1, -1,
1210 123, 124, -1, 280, -1, 282, 283, 284, 285, 286,
1211 -1, 288, -1, -1, 291, 292, 293, 294, 295, 296,
1212 -1, 298, -1, 300, 301, 302, 303, 304, -1, 40,
1213 -1, -1, 43, -1, 45, 257, 258, 259, 260, 261,
1214 262, 263, 264, 265, -1, -1, 268, 269, 59, -1,
1215 -1, -1, 274, -1, 123, -1, -1, -1, 280, 0,
1216 282, 283, 284, 285, 286, -1, 288, 289, 290, 291,
1217 292, 293, 294, 295, 296, -1, 298, -1, 300, 301,
1218 302, 303, 304, -1, -1, -1, 257, 258, 259, 260,
1219 261, 262, 263, 264, 265, -1, -1, 268, 269, 40,
1220 -1, -1, 43, 274, 45, -1, -1, -1, -1, 280,
9c8d0b29 1221 -1, 282, 283, 284, 285, 286, -1, 288, 289, 290,
1222 291, 292, 293, 294, 295, 296, -1, 298, -1, 300,
c822f08a 1223 301, 302, 303, 304, 257, 258, 259, 260, 261, 262,
1224 263, 264, 265, 0, -1, 268, 269, -1, -1, -1,
1225 -1, -1, -1, -1, -1, -1, -1, 280, -1, 282,
1226 283, 284, 285, 286, -1, 288, 289, 290, 291, 292,
1227 293, 294, 295, 296, -1, 298, -1, 300, 301, 302,
1228 303, 304, 123, 40, 41, -1, -1, 44, 257, 258,
1229 259, 260, 261, 262, 263, 264, -1, 0, -1, 268,
1230 269, 58, 59, 60, -1, 62, 63, -1, -1, -1,
9c8d0b29 1231 -1, 280, -1, 282, 283, 284, 285, 286, -1, -1,
1232 -1, -1, 291, 292, 293, 294, -1, -1, -1, 298,
c822f08a 1233 -1, 300, 301, 302, 303, 304, 93, 40, -1, -1,
1234 43, -1, 45, -1, -1, -1, 257, 258, 259, 260,
1235 261, 262, 263, 264, 0, -1, 59, 268, 269, -1,
1236 -1, -1, -1, -1, -1, -1, 123, 124, -1, 280,
1237 -1, 282, 283, 284, 285, 286, -1, -1, -1, -1,
1238 291, 292, 293, 294, -1, -1, -1, 298, -1, 300,
1239 301, 302, 303, 304, 40, -1, -1, 43, -1, 45,
9c8d0b29 1240 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
c822f08a 1241 -1, -1, -1, -1, -1, -1, 257, 258, 259, -1,
1242 123, -1, 263, 264, -1, 0, -1, 268, 269, -1,
1243 -1, -1, -1, -1, -1, -1, -1, -1, -1, 280,
1244 -1, 282, 283, 284, 285, 286, -1, -1, -1, -1,
1245 291, 292, 293, 294, -1, -1, -1, 298, -1, 300,
1246 301, 302, 303, 304, -1, 40, -1, -1, 43, -1,
1247 45, -1, -1, -1, -1, -1, -1, 123, -1, -1,
9c8d0b29 1248 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1249 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
c822f08a 1250 257, 258, 259, 260, 261, 262, 263, 264, 265, -1,
1251 -1, 268, 269, -1, -1, -1, -1, -1, -1, -1,
1252 -1, -1, -1, 280, -1, 282, 283, 284, 285, 286,
1253 -1, 288, 289, 290, 291, 292, 293, 294, 295, 296,
1254 -1, 298, -1, 300, 301, 302, 303, 304, 123, -1,
1255 -1, -1, -1, -1, 257, 258, 259, 260, -1, 262,
1256 263, 264, -1, -1, -1, 268, 269, -1, -1, -1,
1257 -1, -1, -1, -1, -1, -1, -1, 280, -1, 282,
1258 283, 284, 285, 286, -1, -1, -1, -1, 291, 292,
1259 293, 294, -1, -1, -1, 298, -1, 300, 301, 302,
1260 303, 304, -1, -1, -1, -1, -1, -1, -1, -1,
9c8d0b29 1261 -1, 257, 258, 259, -1, -1, -1, 263, 264, -1,
c822f08a 1262 -1, -1, 268, 269, -1, -1, 40, 41, -1, 43,
1263 44, 45, -1, -1, 280, -1, 282, 283, 284, 285,
1264 286, -1, -1, -1, -1, 291, 292, 293, 294, 63,
9c8d0b29 1265 -1, -1, 298, -1, 300, 301, 302, 303, 304, -1,
9c8d0b29 1266 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
c822f08a 1267 -1, -1, -1, 40, 41, -1, 43, 44, 45, -1,
1268 -1, -1, 257, 258, 259, -1, -1, -1, 263, 264,
1269 -1, -1, -1, 268, 269, 0, 63, -1, -1, -1,
1270 -1, -1, -1, -1, -1, 280, -1, 282, 283, 284,
1271 285, 286, -1, -1, -1, -1, 291, 292, 293, 294,
1272 -1, -1, -1, 298, -1, 300, 301, 302, 303, 304,
1273 -1, -1, 37, -1, -1, 40, 41, 42, 43, 44,
1274 45, -1, 47, -1, -1, -1, -1, -1, -1, -1,
1275 0, -1, -1, 58, 59, 60, -1, 62, 63, -1,
1276 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1277 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1278 -1, -1, -1, -1, -1, -1, -1, 37, 93, 94,
1279 40, 41, 42, 43, 44, 45, -1, 47, 0, -1,
1280 -1, -1, -1, -1, -1, -1, -1, 112, 58, 59,
1281 -1, -1, 62, 63, -1, -1, -1, -1, 123, 124,
1282 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1283 -1, -1, -1, -1, -1, 37, -1, -1, -1, 41,
1284 42, -1, 44, 93, 94, 47, -1, -1, -1, 263,
1285 264, -1, -1, -1, 268, 269, 58, 59, 60, -1,
1286 62, 63, 112, -1, -1, -1, 280, -1, 282, 283,
1287 284, -1, 286, 123, 124, -1, -1, 291, 292, 293,
1288 294, -1, -1, -1, 298, -1, -1, 301, 302, 303,
1289 304, 93, 94, -1, -1, -1, 263, 264, -1, -1,
1290 -1, 268, 269, -1, -1, -1, -1, -1, -1, -1,
1291 112, -1, -1, 280, -1, 282, 283, 284, -1, 286,
1292 -1, 123, 124, -1, 291, 292, 293, 294, -1, -1,
1293 -1, 298, -1, -1, 301, 302, 303, 304, -1, -1,
9c8d0b29 1294 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
c822f08a 1295 -1, -1, 257, 258, 259, 260, 261, 262, 263, 264,
1296 265, -1, -1, 268, 269, -1, -1, -1, -1, 274,
1297 -1, -1, -1, -1, -1, 280, -1, 282, 283, 284,
1298 285, 286, -1, 288, 289, 290, 291, -1, 293, 294,
1299 295, 296, -1, 298, -1, 300, 301, 302, -1, -1,
1300 -1, -1, -1, -1, -1, -1, -1, 257, 258, 259,
1301 260, 261, 262, 263, 264, 265, -1, -1, 268, 269,
1302 -1, -1, -1, -1, 274, -1, -1, -1, -1, -1,
1303 280, -1, 282, 283, 284, 285, 286, 0, 288, 289,
1304 290, 291, -1, 293, 294, 295, 296, -1, 298, -1,
1305 300, 301, 302, -1, -1, 257, 258, 259, 260, 261,
1306 262, -1, -1, 265, -1, -1, -1, -1, -1, -1,
1307 -1, -1, 274, -1, 37, -1, -1, -1, 41, 42,
1308 -1, 44, 0, 285, 47, -1, 288, 289, 290, 291,
1309 292, 293, 294, 295, 296, 58, 59, 60, 300, 62,
9c8d0b29 1310 63, -1, -1, -1, -1, -1, -1, -1, -1, -1,
c822f08a 1311 -1, -1, -1, -1, -1, -1, -1, -1, -1, 37,
1312 -1, -1, -1, 41, 42, -1, 44, 0, -1, 47,
1313 93, 94, -1, -1, -1, -1, -1, -1, -1, -1,
1314 58, 59, 60, -1, 62, 63, -1, -1, -1, 112,
9c8d0b29 1315 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
c822f08a 1316 123, 124, -1, -1, 37, -1, -1, -1, 41, 42,
1317 -1, 44, -1, -1, 47, 93, 94, -1, -1, -1,
1318 -1, -1, -1, -1, -1, 58, 59, 60, -1, 62,
1319 63, -1, -1, -1, 112, -1, 0, -1, -1, -1,
1320 -1, -1, -1, -1, -1, 123, 124, -1, -1, -1,
9c8d0b29 1321 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1322 93, 94, -1, -1, -1, -1, -1, -1, -1, -1,
c822f08a 1323 -1, -1, -1, 37, -1, -1, -1, 41, 42, 112,
1324 44, -1, -1, 47, -1, -1, -1, -1, -1, -1,
1325 123, 124, -1, -1, 58, 59, 60, -1, 62, 63,
1326 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1327 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1328 -1, -1, -1, -1, -1, -1, -1, -1, -1, 93,
1329 94, -1, -1, -1, 257, 258, 259, 260, 261, 262,
1330 -1, -1, 265, -1, -1, -1, -1, -1, 112, -1,
1331 -1, 274, -1, -1, -1, -1, -1, -1, -1, 123,
1332 124, -1, 285, -1, -1, 288, 289, 290, 291, 292,
1333 293, 294, 295, 296, -1, -1, -1, 300, -1, 257,
1334 258, 259, 260, 261, 262, -1, -1, 265, -1, -1,
1335 -1, -1, -1, -1, -1, -1, 274, -1, -1, -1,
1336 -1, -1, -1, -1, -1, -1, -1, 285, -1, -1,
1337 288, 289, 290, 291, 292, 293, 294, 295, 296, -1,
1338 -1, -1, 300, -1, 257, 258, 259, 260, 261, 262,
1339 -1, -1, 265, -1, -1, -1, -1, -1, -1, -1,
1340 -1, 274, -1, -1, 0, -1, -1, -1, -1, -1,
9c8d0b29 1341 -1, -1, 285, -1, -1, 288, 289, 290, 291, 292,
c822f08a 1342 293, 294, 295, 296, -1, -1, -1, 300, -1, -1,
1343 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1344 -1, 37, 47, 48, -1, 41, 42, -1, 44, -1,
1345 -1, 47, -1, 257, 258, 259, 260, 261, 262, -1,
1346 -1, 265, 58, 59, 60, -1, 62, 63, -1, -1,
1347 274, 0, -1, -1, -1, -1, 81, -1, 83, 84,
9c8d0b29 1348 -1, 285, -1, -1, 288, 289, 290, 291, 292, 293,
c822f08a 1349 294, 295, 296, -1, -1, -1, 300, 93, 94, -1,
1350 -1, -1, -1, -1, -1, -1, 111, 112, 37, -1,
1351 -1, -1, 41, 42, -1, 44, 112, -1, 47, 0,
1352 -1, -1, -1, -1, -1, -1, -1, 123, 124, 58,
1353 59, 60, -1, 62, 63, -1, -1, -1, -1, -1,
1354 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1355 -1, -1, -1, -1, -1, -1, 37, -1, -1, -1,
1356 41, 42, -1, 44, 93, 94, 47, -1, -1, 174,
1357 -1, -1, -1, -1, -1, -1, -1, 58, 59, 60,
1358 185, 62, 187, 112, 189, -1, -1, -1, -1, -1,
1359 -1, 0, -1, -1, 123, 124, -1, -1, -1, -1,
1360 -1, -1, -1, -1, -1, -1, 211, -1, -1, -1,
1361 -1, -1, 93, 94, -1, -1, -1, -1, -1, -1,
1362 -1, 226, 227, 228, 229, 230, -1, -1, 37, -1,
1363 -1, 112, 41, 42, -1, 44, -1, -1, 47, -1,
1364 -1, -1, 123, 124, -1, -1, -1, -1, -1, 58,
1365 59, 60, -1, 62, -1, -1, -1, -1, -1, -1,
1366 -1, 257, 258, 259, 260, 261, 262, -1, -1, 265,
1367 275, -1, -1, -1, 279, 280, 281, -1, 274, 0,
1368 285, -1, -1, -1, 93, 94, -1, -1, -1, 285,
9c8d0b29 1369 -1, -1, 288, 289, 290, 291, 292, 293, 294, 295,
c822f08a 1370 296, -1, -1, 112, 300, 310, 311, -1, -1, -1,
1371 -1, 316, -1, -1, 123, 124, 37, -1, -1, -1,
1372 41, 42, -1, 44, -1, -1, 47, -1, 257, 258,
1373 259, 260, 261, 262, -1, -1, 265, 58, 59, 60,
1374 -1, 62, -1, -1, -1, 274, -1, -1, -1, -1,
1375 -1, -1, -1, -1, -1, -1, 285, -1, -1, 288,
1376 289, 290, -1, -1, -1, -1, 295, 296, -1, -1,
1377 -1, 300, 93, 94, -1, -1, 257, 258, 259, 260,
1378 261, 262, -1, -1, 265, -1, -1, -1, -1, 40,
1379 41, 112, 43, 274, 45, -1, -1, -1, -1, 0,
1380 -1, -1, 123, 124, 285, -1, -1, 288, 289, 290,
1381 -1, -1, 63, -1, 295, 296, -1, -1, -1, 300,
1382 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1383 -1, -1, -1, -1, -1, -1, 37, -1, -1, -1,
1384 41, 42, -1, 44, -1, -1, 47, -1, 257, 258,
1385 259, 260, 261, 262, -1, -1, 265, 58, 59, 60,
1386 -1, 62, -1, -1, -1, 274, 0, -1, -1, -1,
1387 -1, -1, -1, -1, -1, -1, 285, -1, -1, 288,
1388 289, 290, -1, -1, -1, -1, 295, 296, -1, -1,
1389 -1, 300, 93, 94, -1, -1, -1, -1, -1, -1,
1390 -1, -1, -1, 37, -1, -1, -1, 41, 42, -1,
1391 -1, 112, -1, 47, 0, -1, -1, -1, -1, -1,
1392 -1, -1, 123, 124, 58, 59, 60, -1, 62, -1,
1393 -1, -1, -1, -1, -1, -1, 257, 258, 259, 260,
1394 261, 262, -1, -1, 265, -1, -1, -1, -1, -1,
1395 -1, 37, -1, 274, -1, 41, 42, -1, 44, 93,
1396 94, 47, -1, -1, 285, -1, -1, 288, 289, 290,
1397 -1, -1, 58, 59, 295, 296, -1, -1, 112, 300,
1398 -1, -1, -1, -1, -1, -1, -1, -1, -1, 123,
1399 124, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1400 -1, -1, -1, -1, -1, -1, -1, 93, 94, -1,
9c8d0b29 1401 -1, -1, 263, 264, -1, -1, -1, 268, 269, -1,
c822f08a 1402 -1, -1, -1, -1, -1, -1, 112, -1, -1, 280,
1403 -1, 282, 283, 284, -1, 286, -1, 123, 124, -1,
1404 291, 292, 293, 294, -1, -1, -1, 298, -1, -1,
1405 301, 302, 303, 304, -1, -1, 257, 258, 259, 260,
1406 261, 262, -1, -1, 265, -1, -1, -1, -1, -1,
1407 -1, -1, -1, 274, -1, -1, -1, -1, -1, -1,
1408 -1, -1, -1, -1, 285, -1, -1, 288, 289, 290,
1409 -1, -1, -1, -1, 295, 296, -1, -1, -1, 300,
9c8d0b29 1410 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
c822f08a 1411 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1412 -1, -1, -1, 257, 258, 259, 260, 261, 262, -1,
1413 -1, 265, -1, -1, -1, -1, -1, -1, -1, -1,
1414 274, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1415 -1, 285, -1, -1, 288, 289, 290, -1, -1, -1,
1416 -1, 295, 296, -1, -1, -1, 300, -1, -1, -1,
1417 -1, 257, 258, 259, 260, 261, 262, -1, 7, 265,
1418 -1, -1, -1, -1, -1, 14, -1, -1, 274, -1,
1419 -1, -1, -1, -1, -1, -1, -1, -1, -1, 285,
1420 29, -1, 288, 289, 290, -1, 35, -1, -1, -1,
1421 -1, -1, -1, -1, 300, -1, -1, -1, -1, -1,
1422 49, 50, 51, -1, -1, -1, 55, 56, -1, 58,
1423 59, 60, -1, 62, 63, 64, 65, 66, -1, -1,
1424 -1, -1, -1, -1, -1, 40, -1, -1, 43, -1,
1425 45, -1, -1, 82, -1, -1, 85, 86, 87, 88,
1426 89, 90, -1, -1, 59, -1, -1, -1, -1, -1,
1427 -1, 100, -1, -1, -1, -1, -1, -1, -1, 108,
1428 -1, -1, -1, -1, -1, -1, 115, -1, -1, -1,
1429 40, -1, 121, 43, -1, 45, -1, -1, -1, -1,
1430 -1, -1, -1, -1, -1, -1, -1, 136, 137, 59,
1431 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1432 -1, -1, -1, -1, -1, -1, -1, -1, 123, -1,
1433 159, 160, -1, -1, 163, 164, 165, 166, 167, -1,
1434 -1, -1, -1, 172, 173, 40, 175, 176, 43, -1,
1435 45, 180, -1, -1, -1, 184, -1, -1, -1, -1,
1436 -1, -1, -1, -1, 59, -1, 195, -1, -1, 198,
1437 -1, -1, -1, 123, -1, 125, -1, -1, -1, -1,
1438 -1, -1, -1, -1, -1, -1, -1, -1, 217, 218,
1439 219, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1440 -1, -1, -1, -1, -1, -1, -1, 236, -1, 238,
1441 -1, 240, -1, 242, -1, 244, -1, -1, -1, 40,
1442 249, -1, 43, -1, 45, 254, 255, -1, 123, -1,
1443 125, -1, -1, 262, -1, -1, -1, -1, 59, -1,
1444 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1445 -1, -1, -1, 282, -1, -1, -1, -1, -1, -1,
1446 -1, -1, -1, -1, -1, 260, 261, 262, 263, 264,
1447 299, 266, 267, 268, 269, 270, -1, 272, 273, -1,
1448 275, 276, 277, 278, 279, 280, 281, 282, 283, 284,
1449 -1, 286, 287, -1, -1, -1, 291, 292, 293, 294,
1450 -1, -1, 123, 298, 125, -1, 301, 302, 303, 304,
1451 260, -1, -1, 263, 264, -1, 266, 267, 268, 269,
1452 270, 271, 272, 273, -1, 275, 276, 277, 278, 279,
1453 280, 281, 282, 283, 284, -1, 286, 287, -1, -1,
1454 -1, 291, 292, 293, 294, -1, -1, -1, 298, -1,
1455 -1, 301, 302, 303, 304, -1, -1, -1, -1, -1,
1456 -1, -1, -1, -1, -1, 260, -1, -1, 263, 264,
9c8d0b29 1457 -1, 266, 267, 268, 269, 270, 271, 272, 273, -1,
1458 275, 276, 277, 278, 279, 280, 281, 282, 283, 284,
1459 -1, 286, 287, -1, -1, -1, 291, 292, 293, 294,
c822f08a 1460 -1, -1, -1, 298, -1, -1, 301, 302, 303, 304,
1461 40, -1, -1, 43, -1, 45, -1, -1, -1, -1,
1462 -1, -1, -1, -1, -1, -1, -1, -1, -1, 59,
1463 -1, -1, -1, -1, -1, -1, -1, -1, -1, 260,
9c8d0b29 1464 -1, -1, 263, 264, -1, 266, 267, 268, 269, 270,
1465 271, 272, 273, -1, 275, 276, 277, 278, 279, 280,
c822f08a 1466 281, 282, 283, 284, -1, 286, 287, -1, -1, -1,
1467 291, 292, 293, 294, -1, -1, -1, 298, -1, -1,
9c8d0b29 1468 301, 302, 303, 304, 40, -1, -1, 43, -1, 45,
c822f08a 1469 -1, -1, -1, 123, -1, 125, -1, -1, -1, -1,
1470 -1, -1, -1, 59, -1, -1, -1, -1, -1, -1,
9c8d0b29 1471 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
c822f08a 1472 -1, -1, -1, -1, -1, -1, -1, -1, -1, 40,
9c8d0b29 1473 -1, -1, 43, -1, 45, -1, -1, -1, -1, -1,
1474 -1, -1, -1, -1, -1, -1, -1, -1, 59, -1,
9c8d0b29 1475 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
c822f08a 1476 -1, -1, -1, -1, -1, -1, -1, 123, -1, 125,
1477 -1, -1, -1, -1, -1, 40, -1, -1, 43, -1,
1478 45, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1479 -1, -1, -1, -1, 59, -1, -1, -1, -1, -1,
9c8d0b29 1480 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
c822f08a 1481 -1, -1, 123, -1, 125, -1, -1, -1, 40, 41,
1482 -1, 43, -1, 45, -1, -1, -1, -1, -1, -1,
1483 260, -1, -1, 263, 264, -1, 266, 267, 268, 269,
1484 270, 271, 272, 273, -1, 275, 276, 277, 278, 279,
1485 280, 281, 282, 283, 284, -1, 286, 287, 123, -1,
1486 125, 291, 292, 293, 294, -1, -1, -1, 298, -1,
1487 -1, 301, 302, 303, 304, -1, -1, -1, -1, -1,
9c8d0b29 1488 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1489 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
c822f08a 1490 -1, -1, -1, -1, 260, -1, -1, 263, 264, -1,
1491 266, 267, 268, 269, 270, 271, 272, 273, -1, 275,
9c8d0b29 1492 276, 277, 278, 279, 280, 281, 282, 283, 284, -1,
c822f08a 1493 286, 287, -1, -1, -1, 291, 292, 293, 294, -1,
1494 -1, -1, 298, -1, -1, 301, 302, 303, 304, 260,
1495 -1, -1, 263, 264, -1, 266, 267, 268, 269, 270,
1496 271, 272, 273, -1, 275, 276, 277, 278, 279, 280,
1497 281, 282, 283, 284, 40, 286, 287, 43, -1, 45,
1498 291, 292, 293, 294, -1, -1, -1, 298, -1, -1,
1499 301, 302, 303, 304, -1, 260, -1, -1, 263, 264,
1500 -1, 266, 267, 268, 269, 270, 271, 272, 273, -1,
1501 275, 276, 277, 278, 279, 280, 281, 282, 283, 284,
1502 -1, 286, 287, -1, -1, -1, 291, 292, 293, 294,
1503 -1, -1, -1, 298, -1, -1, 301, 302, 303, 304,
1504 40, 263, 264, 43, -1, 45, 268, 269, -1, -1,
1505 -1, -1, -1, -1, -1, -1, -1, 123, 280, 59,
1506 282, 283, 284, -1, 286, -1, -1, -1, -1, 291,
1507 292, 293, 294, -1, -1, -1, 298, -1, -1, 301,
1508 302, 303, 304, -1, -1, 40, -1, -1, 43, -1,
1509 45, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1510 -1, -1, -1, -1, 59, -1, -1, -1, -1, -1,
1511 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1512 -1, -1, -1, 123, -1, 125, -1, -1, -1, -1,
1513 40, -1, -1, 43, -1, 45, -1, -1, -1, -1,
1514 -1, -1, -1, -1, -1, -1, -1, -1, -1, 59,
1515 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1516 -1, -1, -1, -1, -1, -1, -1, -1, 123, -1,
1517 125, -1, -1, -1, -1, -1, 40, -1, -1, 43,
1518 -1, 45, -1, -1, -1, -1, -1, -1, -1, -1,
1519 -1, 257, 258, 259, -1, 59, -1, 263, 264, -1,
1520 -1, -1, 268, 269, -1, -1, -1, -1, -1, -1,
1521 -1, -1, -1, 123, 280, 125, 282, 283, 284, 285,
1522 286, -1, -1, -1, -1, 291, 292, 293, 294, -1,
1523 -1, -1, 298, -1, 300, 301, 302, 303, 304, -1,
1524 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1525 40, -1, -1, 43, -1, 45, -1, -1, -1, 123,
1526 260, 125, -1, 263, 264, -1, 266, 267, 268, 269,
1527 270, 271, 272, 273, -1, 275, 276, 277, 278, 279,
1528 280, 281, 282, 283, 284, -1, 286, 287, -1, -1,
1529 -1, 291, 292, 293, 294, -1, -1, -1, 298, -1,
1530 -1, 301, 302, 303, 304, 260, -1, -1, 263, 264,
1531 -1, 266, 267, 268, 269, 270, -1, 272, 273, -1,
1532 275, 276, 277, 278, 279, 280, 281, 282, 283, 284,
1533 -1, 286, 287, -1, -1, -1, 291, 292, 293, 294,
1534 -1, -1, -1, 298, -1, -1, 301, 302, 303, 304,
1535 260, -1, -1, 263, 264, -1, 266, 267, 268, 269,
1536 270, -1, 272, 273, -1, 275, 276, 277, 278, 279,
1537 280, 281, 282, 283, 284, -1, 286, 287, -1, -1,
1538 -1, 291, 292, 293, 294, -1, -1, -1, 298, -1,
1539 -1, 301, 302, 303, 304, -1, 260, -1, -1, 263,
9c8d0b29 1540 264, -1, 266, 267, 268, 269, 270, -1, 272, 273,
1541 -1, 275, 276, 277, 278, 279, 280, 281, 282, 283,
1542 284, -1, 286, 287, -1, -1, -1, 291, 292, 293,
c822f08a 1543 294, -1, -1, -1, 298, -1, -1, 301, 302, 303,
9c8d0b29 1544 304, 40, -1, -1, 43, -1, 45, -1, -1, -1,
9c8d0b29 1545 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
c822f08a 1546 59, -1, -1, -1, -1, -1, -1, -1, -1, 259,
1547 -1, -1, -1, 263, 264, -1, -1, -1, 268, 269,
1548 -1, -1, -1, -1, -1, -1, 40, -1, -1, 43,
1549 280, 45, 282, 283, 284, -1, 286, -1, -1, -1,
1550 -1, 291, 292, 293, 294, 59, -1, -1, 298, -1,
1551 300, 301, 302, 303, 304, -1, -1, -1, -1, -1,
1552 -1, -1, -1, -1, 123, -1, 125, -1, -1, -1,
1553 -1, 40, -1, -1, 43, -1, 45, -1, -1, -1,
9c8d0b29 1554 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
c822f08a 1555 59, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1556 -1, -1, -1, -1, -1, -1, -1, -1, -1, 123,
1557 -1, 125, -1, -1, -1, -1, -1, 40, -1, -1,
1558 43, -1, 45, -1, -1, -1, -1, -1, -1, -1,
1559 -1, -1, -1, -1, -1, -1, 59, -1, -1, -1,
9c8d0b29 1560 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
c822f08a 1561 -1, -1, -1, -1, 123, -1, 125, -1, -1, -1,
1562 -1, -1, -1, -1, -1, -1, -1, 40, -1, -1,
1563 43, -1, 45, -1, -1, -1, -1, -1, -1, -1,
9c8d0b29 1564 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
9c8d0b29 1565 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
c822f08a 1566 123, 260, 125, -1, 263, 264, -1, 266, 267, 268,
9c8d0b29 1567 269, 270, -1, 272, 273, -1, 275, 276, 277, 278,
1568 279, 280, 281, 282, 283, 284, -1, 286, 287, -1,
1569 -1, -1, 291, 292, 293, 294, -1, -1, -1, 298,
c822f08a 1570 -1, -1, 301, 302, 303, 304, 260, -1, -1, 263,
1571 264, -1, 266, 267, 268, 269, 270, -1, 272, 273,
1572 -1, 275, 276, 277, 278, 279, 280, 281, 282, 283,
1573 284, -1, 286, 287, -1, -1, -1, 291, 292, 293,
1574 294, -1, -1, -1, 298, -1, -1, 301, 302, 303,
1575 304, 260, -1, -1, 263, 264, -1, 266, 267, 268,
1576 269, 270, -1, 272, 273, -1, 275, 276, 277, 278,
1577 279, 280, 281, 282, 283, 284, 40, 286, 287, 43,
1578 44, 45, 291, 292, 293, 294, -1, -1, -1, 298,
1579 -1, -1, 301, 302, 303, 304, 60, 260, 62, 63,
1580 263, 264, -1, 266, 267, 268, 269, 270, -1, 272,
1581 273, -1, 275, 276, 277, 278, 279, 280, 281, 282,
1582 283, 284, -1, 286, 287, -1, -1, -1, 291, 292,
1583 293, 294, -1, -1, -1, 298, -1, -1, 301, 302,
1584 303, 304, 40, -1, -1, 43, -1, 45, -1, -1,
1585 263, 264, -1, 266, 267, 268, 269, -1, -1, -1,
1586 -1, 59, 275, 276, 277, 278, 279, 280, -1, 282,
1587 283, 284, -1, 286, 287, -1, -1, -1, 291, 292,
1588 293, 294, -1, -1, -1, 298, -1, -1, 301, 302,
1589 303, 304, 40, -1, -1, 43, -1, 45, -1, -1,
9c8d0b29 1590 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
c822f08a 1591 -1, -1, 60, -1, 62, 63, -1, -1, -1, -1,
1592 -1, -1, -1, -1, -1, 123, -1, 125, -1, -1,
1593 -1, -1, -1, -1, 40, 41, -1, 43, 44, 45,
9c8d0b29 1594 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
c822f08a 1595 -1, -1, -1, -1, -1, -1, -1, 63, -1, -1,
9c8d0b29 1596 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
c822f08a 1597 -1, -1, -1, -1, -1, -1, -1, -1, 40, 41,
1598 -1, 43, 44, 45, -1, -1, -1, -1, -1, -1,
1599 -1, -1, -1, -1, -1, -1, -1, -1, -1, 263,
1600 264, 63, -1, -1, 268, 269, -1, -1, -1, -1,
1601 -1, -1, -1, -1, -1, -1, 280, -1, 282, 283,
1602 284, -1, 286, -1, -1, -1, -1, 291, 292, 293,
1603 294, 295, 296, -1, 298, -1, -1, 301, 302, 303,
1604 304, 40, 41, -1, 43, 44, 45, -1, -1, -1,
9c8d0b29 1605 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
c822f08a 1606 -1, -1, 260, -1, 63, 263, 264, -1, 266, 267,
1607 268, 269, 270, -1, 272, 273, -1, 275, 276, 277,
1608 278, 279, 280, 281, 282, 283, 284, -1, 286, 287,
1609 -1, -1, -1, 291, 292, 293, 294, -1, -1, -1,
1610 298, -1, -1, 301, 302, 303, 304, 40, -1, -1,
1611 43, -1, 45, -1, -1, 263, 264, -1, -1, -1,
1612 268, 269, -1, -1, -1, -1, 59, -1, -1, -1,
1613 -1, -1, 280, -1, 282, 283, 284, -1, 286, -1,
1614 -1, -1, -1, 291, 292, 293, 294, 295, 296, -1,
1615 298, -1, -1, 301, 302, 303, 304, 263, 264, -1,
9c8d0b29 1616 -1, 40, 268, 269, 43, -1, 45, -1, -1, -1,
9c8d0b29 1617 -1, -1, -1, -1, 280, -1, 282, 283, 284, -1,
c822f08a 1618 286, -1, -1, -1, -1, 291, 292, 293, 294, -1,
1619 -1, -1, 298, -1, -1, 301, 302, 303, 304, -1,
1620 -1, 263, 264, -1, -1, 40, 268, 269, 43, 44,
1621 45, -1, -1, -1, -1, -1, -1, -1, 280, -1,
1622 282, 283, 284, -1, 286, -1, -1, -1, 63, 291,
1623 292, 293, 294, -1, -1, -1, 298, -1, -1, 301,
1624 302, 303, 304, -1, -1, -1, -1, -1, 40, -1,
1625 -1, 43, 44, 45, -1, -1, -1, -1, -1, -1,
1626 -1, -1, -1, -1, 263, 264, -1, -1, -1, 268,
1627 269, 63, -1, -1, -1, -1, -1, -1, -1, -1,
1628 -1, 280, -1, 282, 283, 284, -1, 286, -1, -1,
1629 -1, -1, 291, 292, 293, 294, -1, -1, -1, 298,
1630 -1, -1, 301, 302, 303, 304, 40, -1, -1, 43,
1631 44, 45, -1, -1, -1, -1, -1, -1, -1, -1,
1632 -1, -1, -1, -1, -1, -1, 259, -1, -1, 63,
9c8d0b29 1633 263, 264, -1, -1, -1, 268, 269, -1, -1, -1,
1634 -1, -1, -1, -1, -1, -1, -1, 280, -1, 282,
c822f08a 1635 283, 284, 40, 286, -1, 43, 44, 45, 291, 292,
1636 293, 294, -1, -1, -1, 298, -1, 300, 301, 302,
1637 303, 304, -1, -1, -1, 63, -1, -1, -1, -1,
9c8d0b29 1638 259, -1, -1, -1, 263, 264, -1, -1, -1, 268,
c822f08a 1639 269, -1, -1, -1, 40, -1, -1, 43, 44, 45,
9c8d0b29 1640 -1, 280, -1, 282, 283, 284, -1, 286, -1, -1,
c822f08a 1641 -1, -1, 291, 292, 293, 294, -1, 63, -1, 298,
1642 -1, 300, 301, 302, 303, 304, -1, -1, 263, 264,
1643 -1, -1, -1, 268, 269, -1, -1, 40, -1, -1,
1644 43, 44, 45, -1, -1, 280, -1, 282, 283, 284,
1645 -1, 286, -1, -1, -1, -1, 291, 292, 293, 294,
1646 63, -1, -1, 298, -1, -1, 301, 302, 303, 304,
1647 -1, 263, 264, -1, -1, -1, 268, 269, -1, -1,
1648 40, -1, -1, 43, 44, 45, -1, -1, 280, -1,
1649 282, 283, 284, -1, 286, -1, -1, -1, -1, 291,
1650 292, 293, 294, 63, -1, -1, 298, -1, -1, 301,
1651 302, 303, 304, -1, -1, -1, -1, -1, -1, -1,
1652 -1, -1, 40, -1, -1, 43, -1, 45, -1, 263,
1653 264, -1, -1, -1, 268, 269, -1, -1, -1, -1,
1654 58, -1, -1, -1, -1, 63, 280, -1, 282, 283,
1655 284, -1, 286, -1, -1, -1, -1, 291, 292, 293,
1656 294, -1, -1, -1, 298, -1, -1, 301, 302, 303,
1657 304, -1, -1, -1, -1, 263, 264, -1, -1, 40,
1658 268, 269, 43, -1, 45, -1, -1, -1, -1, -1,
1659 -1, -1, 280, -1, 282, 283, 284, 58, 286, -1,
1660 -1, -1, 63, 291, 292, 293, 294, -1, -1, -1,
1661 298, -1, -1, 301, 302, 303, 304, 263, 264, -1,
1662 -1, -1, 268, 269, 40, -1, -1, 43, -1, 45,
1663 -1, -1, -1, -1, 280, -1, 282, 283, 284, -1,
1664 286, -1, -1, -1, -1, 291, 292, 293, 294, -1,
1665 -1, -1, 298, -1, -1, 301, 302, 303, 304, -1,
1666 263, 264, -1, -1, -1, 268, 269, -1, -1, 40,
1667 41, -1, 43, -1, 45, -1, -1, 280, -1, 282,
9c8d0b29 1668 283, 284, -1, 286, -1, -1, -1, -1, 291, 292,
c822f08a 1669 293, 294, 63, -1, -1, 298, -1, -1, 301, 302,
1670 303, 304, -1, 263, 264, -1, -1, -1, 268, 269,
1671 -1, -1, 40, 41, -1, 43, -1, 45, -1, -1,
1672 280, -1, 282, 283, 284, -1, 286, -1, -1, -1,
1673 -1, 291, 292, 293, 294, 63, -1, -1, 298, -1,
1674 -1, 301, 302, 303, 304, 263, 264, -1, -1, -1,
1675 268, 269, -1, -1, 40, 41, -1, 43, -1, 45,
9c8d0b29 1676 -1, -1, 280, -1, 282, 283, 284, -1, 286, -1,
c822f08a 1677 -1, -1, -1, 291, 292, 293, 294, 63, -1, -1,
1678 298, -1, -1, 301, 302, 303, 304, -1, -1, -1,
9c8d0b29 1679 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
c822f08a 1680 -1, -1, 263, 264, -1, -1, -1, 268, 269, -1,
1681 -1, 40, 41, -1, 43, -1, 45, -1, -1, 280,
1682 -1, 282, 283, 284, -1, 286, -1, -1, -1, -1,
1683 291, 292, 293, 294, 63, -1, -1, 298, -1, -1,
1684 301, 302, 303, 304, -1, 261, 262, 263, 264, -1,
1685 -1, -1, 268, 269, -1, -1, 40, 41, -1, 43,
1686 -1, 45, -1, -1, 280, -1, 282, 283, 284, -1,
1687 286, -1, -1, -1, -1, 291, 292, 293, 294, 63,
1688 -1, -1, 298, -1, -1, 301, 302, 303, 304, -1,
1689 -1, -1, 263, 264, -1, -1, -1, 268, 269, -1,
1690 -1, 40, 41, -1, 43, -1, 45, -1, -1, 280,
1691 -1, 282, 283, 284, -1, 286, -1, -1, -1, -1,
1692 291, 292, 293, 294, 63, -1, -1, 298, -1, -1,
1693 301, 302, 303, 304, -1, 263, 264, -1, -1, -1,
1694 268, 269, -1, -1, 40, 41, -1, 43, -1, 45,
9c8d0b29 1695 -1, -1, 280, -1, 282, 283, 284, -1, 286, -1,
c822f08a 1696 -1, -1, -1, 291, 292, 293, 294, 63, -1, -1,
1697 298, -1, -1, 301, 302, 303, 304, 263, 264, -1,
1698 -1, -1, 268, 269, -1, -1, 40, 41, -1, 43,
1699 -1, 45, -1, -1, 280, -1, 282, 283, 284, -1,
1700 286, -1, -1, -1, -1, 291, 292, 293, 294, 63,
1701 -1, -1, 298, -1, -1, 301, 302, 303, 304, -1,
1702 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1703 -1, -1, -1, -1, 263, 264, -1, -1, -1, 268,
1704 269, -1, -1, 40, 41, -1, 43, -1, 45, -1,
1705 -1, 280, -1, 282, 283, 284, -1, 286, -1, -1,
1706 -1, -1, 291, 292, 293, 294, 63, -1, -1, 298,
1707 -1, -1, 301, 302, 303, 304, -1, -1, -1, 263,
1708 264, -1, -1, -1, 268, 269, -1, -1, -1, 40,
1709 -1, -1, 43, -1, 45, -1, 280, -1, 282, 283,
1710 284, -1, 286, -1, -1, -1, -1, 291, 292, 293,
1711 294, -1, -1, -1, 298, -1, -1, 301, 302, 303,
1712 304, -1, -1, -1, 263, 264, -1, -1, -1, 268,
1713 269, -1, -1, -1, -1, 40, -1, -1, 43, -1,
1714 45, 280, -1, 282, 283, 284, -1, 286, -1, -1,
1715 -1, -1, 291, 292, 293, 294, -1, -1, -1, 298,
1716 -1, -1, 301, 302, 303, 304, -1, 263, 264, -1,
9c8d0b29 1717 -1, -1, 268, 269, -1, -1, -1, -1, -1, -1,
c822f08a 1718 -1, -1, -1, -1, 280, -1, 282, 283, 284, 40,
1719 286, -1, 43, -1, 45, 291, 292, 293, 294, -1,
1720 -1, -1, 298, -1, -1, 301, 302, 303, 304, 263,
1721 264, -1, -1, -1, 268, 269, -1, -1, -1, -1,
1722 -1, -1, -1, -1, -1, -1, 280, -1, 282, 283,
1723 284, -1, 286, -1, -1, -1, -1, 291, 292, 293,
1724 294, -1, -1, -1, 298, -1, -1, 301, 302, 303,
1725 304, 40, -1, -1, 43, -1, 45, -1, -1, -1,
1726 -1, -1, -1, -1, -1, -1, 263, 264, -1, -1,
9c8d0b29 1727 -1, 268, 269, -1, -1, -1, -1, -1, -1, -1,
1728 -1, -1, -1, 280, -1, 282, 283, 284, -1, 286,
c822f08a 1729 -1, -1, -1, -1, 291, 292, 293, 294, -1, -1,
1730 -1, 298, -1, -1, 301, 302, 303, 304, 259, -1,
1731 -1, 40, 263, 264, 43, -1, 45, 268, 269, -1,
9c8d0b29 1732 -1, -1, -1, -1, -1, -1, -1, -1, -1, 280,
c822f08a 1733 -1, 282, 283, 284, 63, 286, -1, -1, -1, -1,
1734 291, 292, 293, 294, -1, -1, -1, 298, -1, -1,
1735 301, 302, 303, 304, 259, -1, -1, 40, 263, 264,
1736 43, -1, 45, 268, 269, -1, -1, -1, -1, -1,
1737 -1, -1, -1, -1, -1, 280, -1, 282, 283, 284,
1738 -1, 286, -1, -1, -1, -1, 291, 292, 293, 294,
1739 -1, -1, -1, 298, -1, -1, 301, 302, 303, 304,
1740 40, -1, -1, 43, -1, 45, -1, -1, 259, -1,
9c8d0b29 1741 -1, -1, 263, 264, -1, -1, -1, 268, 269, -1,
1742 -1, -1, -1, -1, -1, -1, -1, -1, -1, 280,
1743 -1, 282, 283, 284, -1, 286, -1, -1, -1, -1,
c822f08a 1744 291, 292, 293, 294, -1, -1, -1, 298, -1, -1,
1745 301, 302, 303, 304, 40, -1, -1, 43, -1, 45,
1746 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1747 259, -1, -1, -1, 263, 264, -1, -1, -1, 268,
1748 269, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1749 -1, 280, -1, 282, 283, 284, -1, 286, -1, -1,
1750 -1, -1, 291, 292, 293, 294, -1, -1, -1, 298,
1751 -1, -1, 301, 302, 303, 304, -1, -1, -1, -1,
1752 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1753 -1, -1, -1, -1, 263, 264, -1, -1, -1, 268,
1754 269, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1755 -1, 280, -1, 282, 283, 284, -1, 286, -1, -1,
1756 -1, -1, 291, 292, 293, 294, -1, -1, -1, 298,
1757 -1, -1, 301, 302, 303, 304, 259, -1, -1, -1,
1758 263, 264, -1, -1, -1, 268, 269, -1, -1, -1,
1759 -1, -1, -1, -1, -1, -1, -1, 280, -1, 282,
1760 283, 284, -1, 286, -1, -1, -1, -1, 291, 292,
1761 293, 294, -1, -1, -1, 298, -1, -1, 301, 302,
1762 303, 304, -1, 263, 264, -1, -1, -1, 268, 269,
1763 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1764 280, -1, 282, 283, 284, -1, 286, -1, -1, -1,
1765 -1, 291, 292, 293, 294, 16, -1, -1, 298, -1,
1766 -1, 301, 302, 303, 304, -1, 27, 28, -1, 30,
1767 31, -1, 33, -1, -1, -1, -1, 263, 264, -1,
1768 41, -1, 268, 269, -1, -1, -1, -1, -1, -1,
1769 -1, -1, 53, -1, 280, -1, 282, 283, 284, -1,
1770 286, -1, -1, -1, -1, 291, 292, 293, 294, -1,
1771 -1, -1, 298, -1, -1, 301, 302, 303, 304, -1,
1772 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1773 -1, -1, 93, 94, 95, 96, 97, 98, -1, -1,
1774 -1, -1, -1, -1, -1, 106, -1, -1, 109, -1,
1775 -1, -1, 113, 114, -1, -1, 117, -1, 119, 120,
1776 -1, -1, -1, 124, 125, -1, -1, -1, -1, -1,
1777 -1, -1, -1, -1, 135, -1, -1, -1, 139, -1,
1778 141, 142, 143, 144, -1, -1, -1, -1, -1, -1,
1779 -1, 152, -1, -1, -1, -1, -1, -1, -1, -1,
1780 -1, 162, -1, -1, -1, -1, -1, -1, -1, -1,
1781 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1782 -1, -1, -1, -1, -1, -1, -1, -1, -1, 190,
1783 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1784 -1, 202, 203, -1, 205, 206, 207, 208, -1, 210,
1785 -1, 212, 213, -1, -1, 27, 28, -1, -1, 220,
1786 221, 33, -1, -1, -1, -1, -1, -1, -1, 41,
1787 -1, 232, 233, -1, -1, -1, -1, -1, -1, -1,
1788 -1, 53, -1, -1, -1, -1, -1, -1, -1, -1,
1789 -1, -1, -1, -1, -1, -1, -1, 258, -1, -1,
1790 -1, -1, -1, -1, -1, -1, -1, -1, -1, 270,
1791 271, 272, 273, 274, -1, 276, 277, 278, -1, -1,
1792 -1, 93, 94, 95, 96, 97, 98, -1, -1, -1,
1793 -1, -1, -1, -1, 106, -1, -1, 109, -1, -1,
1794 -1, 113, 114, -1, -1, 117, -1, 119, 120, -1,
1795 -1, -1, 124, 125, -1, -1, -1, -1, -1, -1,
1796 -1, -1, -1, 135, -1, -1, -1, 139, -1, 141,
1797 142, 143, 144, -1, -1, -1, -1, -1, -1, -1,
1798 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1799 162, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1800 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1801 -1, -1, -1, -1, -1, -1, -1, -1, 190, -1,
1802 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1803 202, 203, -1, 205, 206, 207, 208, -1, 210, -1,
1804 212, 213, -1, -1, -1, -1, -1, -1, 220, 221,
1805 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1806 232, 233, -1, -1, -1, -1, -1, -1, -1, -1,
1807 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1808 -1, -1, -1, -1, -1, -1, 258, -1, -1, -1,
1809 -1, -1, -1, -1, -1, -1, -1, -1, 270, 271,
1810 272, 273, 274, -1, 276, 277, 278,
9c8d0b29 1811};
1812#define YYFINAL 1
1813#ifndef YYDEBUG
1814#define YYDEBUG 0
1815#endif
1816#define YYMAXTOKEN 304
1817#if YYDEBUG
1818char *yyname[] = {
1819"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,
18200,0,0,"'%'",0,0,"'('","')'","'*'","'+'","','","'-'",0,"'/'",0,0,0,0,0,0,0,0,0,0,
1821"':'","';'","'<'",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,
18220,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,
18230,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,
18240,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,
18250,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,
18260,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",
1827"NEWLINE","COMMENT","FUN1","FUNN","GRGR","PRINT","PRINTF","SPRINTF","SPLIT",
1828"IF","ELSE","WHILE","FOR","IN","EXIT","NEXT","BREAK","CONTINUE","RET","GETLINE",
1829"DO","SUB","GSUB","MATCH","FUNCTION","USERFUN","DELETE","ASGNOP","OROR",
1830"ANDAND","NUMBER","VAR","SUBSTR","INDEX","MATCHOP","RELOP","OR","STRING",
1831"UMINUS","NOT","INCR","DECR","FIELD","VFIELD",
1832};
1833char *yyrule[] = {
1834"$accept : program",
1835"program : junk hunks",
1836"begin : BEGIN '{' maybe states '}' junk",
1837"end : END '{' maybe states '}'",
1838"end : end NEWLINE",
1839"hunks : hunks hunk junk",
1840"hunks :",
1841"hunk : patpat",
1842"hunk : patpat '{' maybe states '}'",
1843"hunk : FUNCTION USERFUN '(' arg_list ')' maybe '{' maybe states '}'",
1844"hunk : '{' maybe states '}'",
1845"hunk : begin",
1846"hunk : end",
1847"arg_list : expr_list",
1848"patpat : cond",
1849"patpat : cond ',' cond",
1850"cond : expr",
1851"cond : match",
1852"cond : rel",
1853"cond : compound_cond",
1854"cond : cond '?' expr ':' expr",
1855"compound_cond : '(' compound_cond ')'",
1856"compound_cond : cond ANDAND maybe cond",
1857"compound_cond : cond OROR maybe cond",
1858"compound_cond : NOT cond",
1859"rel : expr RELOP expr",
1860"rel : expr '>' expr",
1861"rel : expr '<' expr",
1862"rel : '(' rel ')'",
1863"match : expr MATCHOP expr",
1864"match : expr MATCHOP REGEX",
1865"match : REGEX",
1866"match : '(' match ')'",
1867"expr : term",
1868"expr : expr term",
c822f08a 1869"expr : expr '?' expr ':' expr",
9c8d0b29 1870"expr : variable ASGNOP cond",
1871"term : variable",
1872"term : NUMBER",
1873"term : STRING",
1874"term : term '+' term",
1875"term : term '-' term",
1876"term : term '*' term",
1877"term : term '/' term",
1878"term : term '%' term",
1879"term : term '^' term",
1880"term : term IN VAR",
9c8d0b29 1881"term : variable INCR",
1882"term : variable DECR",
1883"term : INCR variable",
1884"term : DECR variable",
1885"term : '-' term",
1886"term : '+' term",
1887"term : '(' cond ')'",
1888"term : GETLINE",
1889"term : GETLINE variable",
1890"term : GETLINE '<' expr",
1891"term : GETLINE variable '<' expr",
1892"term : term 'p' GETLINE",
1893"term : term 'p' GETLINE variable",
1894"term : FUN1",
1895"term : FUN1 '(' ')'",
1896"term : FUN1 '(' expr ')'",
1897"term : FUNN '(' expr_list ')'",
1898"term : USERFUN '(' expr_list ')'",
1899"term : SPRINTF expr_list",
1900"term : SUBSTR '(' expr ',' expr ',' expr ')'",
1901"term : SUBSTR '(' expr ',' expr ')'",
1902"term : SPLIT '(' expr ',' VAR ',' expr ')'",
1903"term : SPLIT '(' expr ',' VAR ',' REGEX ')'",
1904"term : SPLIT '(' expr ',' VAR ')'",
1905"term : INDEX '(' expr ',' expr ')'",
1906"term : MATCH '(' expr ',' REGEX ')'",
1907"term : MATCH '(' expr ',' expr ')'",
1908"term : SUB '(' expr ',' expr ')'",
1909"term : SUB '(' REGEX ',' expr ')'",
1910"term : GSUB '(' expr ',' expr ')'",
1911"term : GSUB '(' REGEX ',' expr ')'",
1912"term : SUB '(' expr ',' expr ',' expr ')'",
1913"term : SUB '(' REGEX ',' expr ',' expr ')'",
1914"term : GSUB '(' expr ',' expr ',' expr ')'",
1915"term : GSUB '(' REGEX ',' expr ',' expr ')'",
1916"variable : VAR",
1917"variable : VAR '[' expr_list ']'",
1918"variable : FIELD",
1919"variable : VFIELD term",
1920"expr_list : expr",
1921"expr_list : clist",
1922"expr_list :",
1923"clist : expr ',' maybe expr",
1924"clist : clist ',' maybe expr",
1925"clist : '(' clist ')'",
1926"junk : junk hunksep",
1927"junk :",
1928"hunksep : ';'",
1929"hunksep : SEMINEW",
1930"hunksep : NEWLINE",
1931"hunksep : COMMENT",
1932"maybe : maybe nlstuff",
1933"maybe :",
1934"nlstuff : NEWLINE",
1935"nlstuff : COMMENT",
1936"separator : ';' maybe",
1937"separator : SEMINEW maybe",
1938"separator : NEWLINE maybe",
1939"separator : COMMENT maybe",
1940"states : states statement",
1941"states :",
1942"statement : simple separator maybe",
1943"statement : ';' maybe",
1944"statement : SEMINEW maybe",
1945"statement : compound",
1946"simpnull : simple",
1947"simpnull :",
1948"simple : expr",
1949"simple : PRINT expr_list redir expr",
1950"simple : PRINT expr_list",
1951"simple : PRINTF expr_list redir expr",
1952"simple : PRINTF expr_list",
1953"simple : BREAK",
1954"simple : NEXT",
1955"simple : EXIT",
1956"simple : EXIT expr",
1957"simple : CONTINUE",
1958"simple : RET",
1959"simple : RET expr",
1960"simple : DELETE VAR '[' expr_list ']'",
1961"redir : '>'",
1962"redir : GRGR",
1963"redir : '|'",
1964"compound : IF '(' cond ')' maybe statement",
1965"compound : IF '(' cond ')' maybe statement ELSE maybe statement",
1966"compound : WHILE '(' cond ')' maybe statement",
1967"compound : DO maybe statement WHILE '(' cond ')'",
1968"compound : FOR '(' simpnull ';' cond ';' simpnull ')' maybe statement",
1969"compound : FOR '(' simpnull ';' ';' simpnull ')' maybe statement",
1970"compound : FOR '(' expr ')' maybe statement",
1971"compound : '{' maybe states '}' maybe",
1972};
1973#endif
1974#ifndef YYSTYPE
1975typedef int YYSTYPE;
1976#endif
748a9306 1977#define yyclearin (yychar=(-1))
1978#define yyerrok (yyerrflag=0)
9c8d0b29 1979#ifdef YYSTACKSIZE
748a9306 1980#ifndef YYMAXDEPTH
9c8d0b29 1981#define YYMAXDEPTH YYSTACKSIZE
748a9306 1982#endif
9c8d0b29 1983#else
1984#ifdef YYMAXDEPTH
1985#define YYSTACKSIZE YYMAXDEPTH
1986#else
1987#define YYSTACKSIZE 500
1988#define YYMAXDEPTH 500
1989#endif
1990#endif
1991int yydebug;
1992int yynerrs;
1993int yyerrflag;
1994int yychar;
1995short *yyssp;
1996YYSTYPE *yyvsp;
1997YYSTYPE yyval;
1998YYSTYPE yylval;
1999short yyss[YYSTACKSIZE];
2000YYSTYPE yyvs[YYSTACKSIZE];
2001#define yystacksize YYSTACKSIZE
2002#line 396 "a2p.y"
2003#include "a2py.c"
c822f08a 2004#line 2005 "y.tab.c"
9c8d0b29 2005#define YYABORT goto yyabort
9c8d0b29 2006#define YYACCEPT goto yyaccept
2007#define YYERROR goto yyerrlab
2008int
2009yyparse()
2010{
2011 register int yym, yyn, yystate;
2012#if YYDEBUG
2013 register char *yys;
2014 extern char *getenv();
2015
2016 if (yys = getenv("YYDEBUG"))
2017 {
2018 yyn = *yys;
2019 if (yyn >= '0' && yyn <= '9')
2020 yydebug = yyn - '0';
2021 }
2022#endif
2023
2024 yynerrs = 0;
2025 yyerrflag = 0;
2026 yychar = (-1);
2027
2028 yyssp = yyss;
2029 yyvsp = yyvs;
2030 *yyssp = yystate = 0;
2031
2032yyloop:
2033 if (yyn = yydefred[yystate]) goto yyreduce;
2034 if (yychar < 0)
2035 {
2036 if ((yychar = yylex()) < 0) yychar = 0;
2037#if YYDEBUG
2038 if (yydebug)
2039 {
2040 yys = 0;
2041 if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
2042 if (!yys) yys = "illegal-symbol";
748a9306 2043 printf("yydebug: state %d, reading %d (%s)\n", yystate,
2044 yychar, yys);
9c8d0b29 2045 }
2046#endif
2047 }
2048 if ((yyn = yysindex[yystate]) && (yyn += yychar) >= 0 &&
2049 yyn <= YYTABLESIZE && yycheck[yyn] == yychar)
2050 {
2051#if YYDEBUG
2052 if (yydebug)
748a9306 2053 printf("yydebug: state %d, shifting to state %d\n",
2054 yystate, yytable[yyn]);
9c8d0b29 2055#endif
2056 if (yyssp >= yyss + yystacksize - 1)
2057 {
2058 goto yyoverflow;
2059 }
2060 *++yyssp = yystate = yytable[yyn];
2061 *++yyvsp = yylval;
2062 yychar = (-1);
2063 if (yyerrflag > 0) --yyerrflag;
2064 goto yyloop;
2065 }
2066 if ((yyn = yyrindex[yystate]) && (yyn += yychar) >= 0 &&
2067 yyn <= YYTABLESIZE && yycheck[yyn] == yychar)
2068 {
2069 yyn = yytable[yyn];
2070 goto yyreduce;
2071 }
2072 if (yyerrflag) goto yyinrecovery;
2073#ifdef lint
2074 goto yynewerror;
2075#endif
2076yynewerror:
2077 yyerror("syntax error");
2078#ifdef lint
2079 goto yyerrlab;
2080#endif
2081yyerrlab:
2082 ++yynerrs;
2083yyinrecovery:
2084 if (yyerrflag < 3)
2085 {
2086 yyerrflag = 3;
2087 for (;;)
2088 {
2089 if ((yyn = yysindex[*yyssp]) && (yyn += YYERRCODE) >= 0 &&
2090 yyn <= YYTABLESIZE && yycheck[yyn] == YYERRCODE)
2091 {
2092#if YYDEBUG
2093 if (yydebug)
748a9306 2094 printf("yydebug: state %d, error recovery shifting\
2095 to state %d\n", *yyssp, yytable[yyn]);
9c8d0b29 2096#endif
2097 if (yyssp >= yyss + yystacksize - 1)
2098 {
2099 goto yyoverflow;
2100 }
2101 *++yyssp = yystate = yytable[yyn];
2102 *++yyvsp = yylval;
2103 goto yyloop;
2104 }
2105 else
2106 {
2107#if YYDEBUG
2108 if (yydebug)
748a9306 2109 printf("yydebug: error recovery discarding state %d\n",
2110 *yyssp);
9c8d0b29 2111#endif
2112 if (yyssp <= yyss) goto yyabort;
2113 --yyssp;
2114 --yyvsp;
2115 }
2116 }
2117 }
2118 else
2119 {
2120 if (yychar == 0) goto yyabort;
2121#if YYDEBUG
2122 if (yydebug)
2123 {
2124 yys = 0;
2125 if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
2126 if (!yys) yys = "illegal-symbol";
748a9306 2127 printf("yydebug: state %d, error recovery discards token %d (%s)\n",
2128 yystate, yychar, yys);
9c8d0b29 2129 }
2130#endif
2131 yychar = (-1);
2132 goto yyloop;
2133 }
2134yyreduce:
2135#if YYDEBUG
2136 if (yydebug)
748a9306 2137 printf("yydebug: state %d, reducing by rule %d (%s)\n",
2138 yystate, yyn, yyrule[yyn]);
9c8d0b29 2139#endif
2140 yym = yylen[yyn];
2141 yyval = yyvsp[1-yym];
2142 switch (yyn)
2143 {
2144case 1:
2145#line 51 "a2p.y"
2146{ root = oper4(OPROG,yyvsp[-1],begins,yyvsp[0],ends); }
2147break;
2148case 2:
2149#line 55 "a2p.y"
2150{ begins = oper4(OJUNK,begins,yyvsp[-3],yyvsp[-2],yyvsp[0]); in_begin = FALSE;
2151 yyval = Nullop; }
2152break;
2153case 3:
2154#line 60 "a2p.y"
2155{ ends = oper3(OJUNK,ends,yyvsp[-2],yyvsp[-1]); yyval = Nullop; }
2156break;
2157case 4:
2158#line 62 "a2p.y"
2159{ yyval = yyvsp[-1]; }
2160break;
2161case 5:
2162#line 66 "a2p.y"
2163{ yyval = oper3(OHUNKS,yyvsp[-2],yyvsp[-1],yyvsp[0]); }
2164break;
2165case 6:
2166#line 68 "a2p.y"
2167{ yyval = Nullop; }
2168break;
2169case 7:
2170#line 72 "a2p.y"
2171{ yyval = oper1(OHUNK,yyvsp[0]); need_entire = TRUE; }
2172break;
2173case 8:
2174#line 74 "a2p.y"
2175{ yyval = oper2(OHUNK,yyvsp[-4],oper2(OJUNK,yyvsp[-2],yyvsp[-1])); }
2176break;
2177case 9:
2178#line 76 "a2p.y"
2179{ fixfargs(yyvsp[-8],yyvsp[-6],0); yyval = oper5(OUSERDEF,yyvsp[-8],yyvsp[-6],yyvsp[-4],yyvsp[-2],yyvsp[-1]); }
2180break;
2181case 10:
2182#line 78 "a2p.y"
2183{ yyval = oper2(OHUNK,Nullop,oper2(OJUNK,yyvsp[-2],yyvsp[-1])); }
2184break;
2185case 13:
2186#line 84 "a2p.y"
2187{ yyval = rememberargs(yyval); }
2188break;
2189case 14:
2190#line 88 "a2p.y"
2191{ yyval = oper1(OPAT,yyvsp[0]); }
2192break;
2193case 15:
2194#line 90 "a2p.y"
2195{ yyval = oper2(ORANGE,yyvsp[-2],yyvsp[0]); }
2196break;
2197case 20:
2198#line 98 "a2p.y"
2199{ yyval = oper3(OCOND,yyvsp[-4],yyvsp[-2],yyvsp[0]); }
2200break;
2201case 21:
2202#line 103 "a2p.y"
2203{ yyval = oper1(OCPAREN,yyvsp[-1]); }
2204break;
2205case 22:
2206#line 105 "a2p.y"
2207{ yyval = oper3(OCANDAND,yyvsp[-3],yyvsp[-1],yyvsp[0]); }
2208break;
2209case 23:
2210#line 107 "a2p.y"
2211{ yyval = oper3(OCOROR,yyvsp[-3],yyvsp[-1],yyvsp[0]); }
2212break;
2213case 24:
2214#line 109 "a2p.y"
2215{ yyval = oper1(OCNOT,yyvsp[0]); }
2216break;
2217case 25:
2218#line 113 "a2p.y"
2219{ yyval = oper3(ORELOP,yyvsp[-1],yyvsp[-2],yyvsp[0]); }
2220break;
2221case 26:
2222#line 115 "a2p.y"
2223{ yyval = oper3(ORELOP,string(">",1),yyvsp[-2],yyvsp[0]); }
2224break;
2225case 27:
2226#line 117 "a2p.y"
2227{ yyval = oper3(ORELOP,string("<",1),yyvsp[-2],yyvsp[0]); }
2228break;
2229case 28:
2230#line 119 "a2p.y"
2231{ yyval = oper1(ORPAREN,yyvsp[-1]); }
2232break;
2233case 29:
2234#line 123 "a2p.y"
2235{ yyval = oper3(OMATCHOP,yyvsp[-1],yyvsp[-2],yyvsp[0]); }
2236break;
2237case 30:
2238#line 125 "a2p.y"
2239{ yyval = oper3(OMATCHOP,yyvsp[-1],yyvsp[-2],oper1(OREGEX,yyvsp[0])); }
2240break;
2241case 31:
2242#line 127 "a2p.y"
2243{ yyval = oper1(OREGEX,yyvsp[0]); }
2244break;
2245case 32:
2246#line 129 "a2p.y"
2247{ yyval = oper1(OMPAREN,yyvsp[-1]); }
2248break;
2249case 33:
2250#line 133 "a2p.y"
2251{ yyval = yyvsp[0]; }
2252break;
2253case 34:
2254#line 135 "a2p.y"
2255{ yyval = oper2(OCONCAT,yyvsp[-1],yyvsp[0]); }
2256break;
2257case 35:
2258#line 137 "a2p.y"
c822f08a 2259{ yyval = oper3(OCOND,yyvsp[-4],yyvsp[-2],yyvsp[0]); }
2260break;
2261case 36:
2262#line 139 "a2p.y"
9c8d0b29 2263{ yyval = oper3(OASSIGN,yyvsp[-1],yyvsp[-2],yyvsp[0]);
2264 if ((ops[yyvsp[-2]].ival & 255) == OFLD)
2265 lval_field = TRUE;
2266 if ((ops[yyvsp[-2]].ival & 255) == OVFLD)
2267 lval_field = TRUE;
2268 }
2269break;
9c8d0b29 2270case 37:
2271#line 148 "a2p.y"
c822f08a 2272{ yyval = yyvsp[0]; }
9c8d0b29 2273break;
2274case 38:
2275#line 150 "a2p.y"
c822f08a 2276{ yyval = oper1(ONUM,yyvsp[0]); }
9c8d0b29 2277break;
2278case 39:
2279#line 152 "a2p.y"
c822f08a 2280{ yyval = oper1(OSTR,yyvsp[0]); }
9c8d0b29 2281break;
2282case 40:
2283#line 154 "a2p.y"
c822f08a 2284{ yyval = oper2(OADD,yyvsp[-2],yyvsp[0]); }
9c8d0b29 2285break;
2286case 41:
2287#line 156 "a2p.y"
c822f08a 2288{ yyval = oper2(OSUBTRACT,yyvsp[-2],yyvsp[0]); }
9c8d0b29 2289break;
2290case 42:
2291#line 158 "a2p.y"
c822f08a 2292{ yyval = oper2(OMULT,yyvsp[-2],yyvsp[0]); }
9c8d0b29 2293break;
2294case 43:
2295#line 160 "a2p.y"
c822f08a 2296{ yyval = oper2(ODIV,yyvsp[-2],yyvsp[0]); }
9c8d0b29 2297break;
2298case 44:
2299#line 162 "a2p.y"
c822f08a 2300{ yyval = oper2(OMOD,yyvsp[-2],yyvsp[0]); }
9c8d0b29 2301break;
2302case 45:
2303#line 164 "a2p.y"
c822f08a 2304{ yyval = oper2(OPOW,yyvsp[-2],yyvsp[0]); }
9c8d0b29 2305break;
2306case 46:
2307#line 166 "a2p.y"
c822f08a 2308{ yyval = oper2(ODEFINED,aryrefarg(yyvsp[0]),yyvsp[-2]); }
9c8d0b29 2309break;
2310case 47:
2311#line 168 "a2p.y"
2312{ yyval = oper1(OPOSTINCR,yyvsp[-1]); }
2313break;
2314case 48:
2315#line 170 "a2p.y"
2316{ yyval = oper1(OPOSTDECR,yyvsp[-1]); }
2317break;
2318case 49:
2319#line 172 "a2p.y"
2320{ yyval = oper1(OPREINCR,yyvsp[0]); }
2321break;
2322case 50:
2323#line 174 "a2p.y"
2324{ yyval = oper1(OPREDECR,yyvsp[0]); }
2325break;
2326case 51:
2327#line 176 "a2p.y"
2328{ yyval = oper1(OUMINUS,yyvsp[0]); }
2329break;
2330case 52:
2331#line 178 "a2p.y"
2332{ yyval = oper1(OUPLUS,yyvsp[0]); }
2333break;
2334case 53:
2335#line 180 "a2p.y"
2336{ yyval = oper1(OPAREN,yyvsp[-1]); }
2337break;
2338case 54:
2339#line 182 "a2p.y"
2340{ yyval = oper0(OGETLINE); }
2341break;
2342case 55:
2343#line 184 "a2p.y"
2344{ yyval = oper1(OGETLINE,yyvsp[0]); }
2345break;
2346case 56:
2347#line 186 "a2p.y"
2348{ yyval = oper3(OGETLINE,Nullop,string("<",1),yyvsp[0]);
2349 if (ops[yyvsp[0]].ival != OSTR + (1<<8)) do_fancy_opens = TRUE; }
2350break;
2351case 57:
2352#line 189 "a2p.y"
2353{ yyval = oper3(OGETLINE,yyvsp[-2],string("<",1),yyvsp[0]);
2354 if (ops[yyvsp[0]].ival != OSTR + (1<<8)) do_fancy_opens = TRUE; }
2355break;
2356case 58:
2357#line 192 "a2p.y"
2358{ yyval = oper3(OGETLINE,Nullop,string("|",1),yyvsp[-2]);
2359 if (ops[yyvsp[-2]].ival != OSTR + (1<<8)) do_fancy_opens = TRUE; }
2360break;
2361case 59:
2362#line 195 "a2p.y"
2363{ yyval = oper3(OGETLINE,yyvsp[0],string("|",1),yyvsp[-3]);
2364 if (ops[yyvsp[-3]].ival != OSTR + (1<<8)) do_fancy_opens = TRUE; }
2365break;
2366case 60:
2367#line 198 "a2p.y"
2368{ yyval = oper0(yyvsp[0]); need_entire = do_chop = TRUE; }
2369break;
2370case 61:
2371#line 200 "a2p.y"
2372{ yyval = oper1(yyvsp[-2],Nullop); need_entire = do_chop = TRUE; }
2373break;
2374case 62:
2375#line 202 "a2p.y"
2376{ yyval = oper1(yyvsp[-3],yyvsp[-1]); }
2377break;
2378case 63:
2379#line 204 "a2p.y"
2380{ yyval = oper1(yyvsp[-3],yyvsp[-1]); }
2381break;
2382case 64:
2383#line 206 "a2p.y"
2384{ yyval = oper2(OUSERFUN,yyvsp[-3],yyvsp[-1]); }
2385break;
2386case 65:
2387#line 208 "a2p.y"
2388{ yyval = oper1(OSPRINTF,yyvsp[0]); }
2389break;
2390case 66:
2391#line 210 "a2p.y"
2392{ yyval = oper3(OSUBSTR,yyvsp[-5],yyvsp[-3],yyvsp[-1]); }
2393break;
2394case 67:
2395#line 212 "a2p.y"
2396{ yyval = oper2(OSUBSTR,yyvsp[-3],yyvsp[-1]); }
2397break;
2398case 68:
2399#line 214 "a2p.y"
2400{ yyval = oper3(OSPLIT,yyvsp[-5],aryrefarg(numary(yyvsp[-3])),yyvsp[-1]); }
2401break;
2402case 69:
2403#line 216 "a2p.y"
2404{ yyval = oper3(OSPLIT,yyvsp[-5],aryrefarg(numary(yyvsp[-3])),oper1(OREGEX,yyvsp[-1]));}
2405break;
2406case 70:
2407#line 218 "a2p.y"
2408{ yyval = oper2(OSPLIT,yyvsp[-3],aryrefarg(numary(yyvsp[-1]))); }
2409break;
2410case 71:
2411#line 220 "a2p.y"
2412{ yyval = oper2(OINDEX,yyvsp[-3],yyvsp[-1]); }
2413break;
2414case 72:
2415#line 222 "a2p.y"
2416{ yyval = oper2(OMATCH,yyvsp[-3],oper1(OREGEX,yyvsp[-1])); }
2417break;
2418case 73:
2419#line 224 "a2p.y"
2420{ yyval = oper2(OMATCH,yyvsp[-3],yyvsp[-1]); }
2421break;
2422case 74:
2423#line 226 "a2p.y"
2424{ yyval = oper2(OSUB,yyvsp[-3],yyvsp[-1]); }
2425break;
2426case 75:
2427#line 228 "a2p.y"
2428{ yyval = oper2(OSUB,oper1(OREGEX,yyvsp[-3]),yyvsp[-1]); }
2429break;
2430case 76:
2431#line 230 "a2p.y"
2432{ yyval = oper2(OGSUB,yyvsp[-3],yyvsp[-1]); }
2433break;
2434case 77:
2435#line 232 "a2p.y"
2436{ yyval = oper2(OGSUB,oper1(OREGEX,yyvsp[-3]),yyvsp[-1]); }
2437break;
2438case 78:
2439#line 234 "a2p.y"
2440{ yyval = oper3(OSUB,yyvsp[-5],yyvsp[-3],yyvsp[-1]); }
2441break;
2442case 79:
2443#line 236 "a2p.y"
2444{ yyval = oper3(OSUB,oper1(OREGEX,yyvsp[-5]),yyvsp[-3],yyvsp[-1]); }
2445break;
2446case 80:
2447#line 238 "a2p.y"
2448{ yyval = oper3(OGSUB,yyvsp[-5],yyvsp[-3],yyvsp[-1]); }
2449break;
2450case 81:
2451#line 240 "a2p.y"
2452{ yyval = oper3(OGSUB,oper1(OREGEX,yyvsp[-5]),yyvsp[-3],yyvsp[-1]); }
2453break;
2454case 82:
2455#line 244 "a2p.y"
2456{ yyval = oper1(OVAR,yyvsp[0]); }
2457break;
2458case 83:
2459#line 246 "a2p.y"
2460{ yyval = oper2(OVAR,aryrefarg(yyvsp[-3]),yyvsp[-1]); }
2461break;
2462case 84:
2463#line 248 "a2p.y"
2464{ yyval = oper1(OFLD,yyvsp[0]); }
2465break;
2466case 85:
2467#line 250 "a2p.y"
2468{ yyval = oper1(OVFLD,yyvsp[0]); }
2469break;
2470case 88:
2471#line 257 "a2p.y"
2472{ yyval = Nullop; }
2473break;
2474case 89:
2475#line 261 "a2p.y"
2476{ yyval = oper3(OCOMMA,yyvsp[-3],yyvsp[-1],yyvsp[0]); }
2477break;
2478case 90:
2479#line 263 "a2p.y"
2480{ yyval = oper3(OCOMMA,yyvsp[-3],yyvsp[-1],yyvsp[0]); }
2481break;
2482case 91:
2483#line 265 "a2p.y"
2484{ yyval = yyvsp[-1]; }
2485break;
2486case 92:
2487#line 269 "a2p.y"
2488{ yyval = oper2(OJUNK,yyvsp[-1],yyvsp[0]); }
2489break;
2490case 93:
2491#line 271 "a2p.y"
2492{ yyval = Nullop; }
2493break;
2494case 94:
2495#line 275 "a2p.y"
2496{ yyval = oper2(OJUNK,oper0(OSEMICOLON),oper0(ONEWLINE)); }
2497break;
2498case 95:
2499#line 277 "a2p.y"
2500{ yyval = oper2(OJUNK,oper0(OSEMICOLON),oper0(ONEWLINE)); }
2501break;
2502case 96:
2503#line 279 "a2p.y"
2504{ yyval = oper0(ONEWLINE); }
2505break;
2506case 97:
2507#line 281 "a2p.y"
2508{ yyval = oper1(OCOMMENT,yyvsp[0]); }
2509break;
2510case 98:
2511#line 285 "a2p.y"
2512{ yyval = oper2(OJUNK,yyvsp[-1],yyvsp[0]); }
2513break;
2514case 99:
2515#line 287 "a2p.y"
2516{ yyval = Nullop; }
2517break;
2518case 100:
2519#line 291 "a2p.y"
2520{ yyval = oper0(ONEWLINE); }
2521break;
2522case 101:
2523#line 293 "a2p.y"
2524{ yyval = oper1(OCOMMENT,yyvsp[0]); }
2525break;
2526case 102:
2527#line 298 "a2p.y"
2528{ yyval = oper2(OJUNK,oper0(OSEMICOLON),yyvsp[0]); }
2529break;
2530case 103:
2531#line 300 "a2p.y"
2532{ yyval = oper2(OJUNK,oper0(OSNEWLINE),yyvsp[0]); }
2533break;
2534case 104:
2535#line 302 "a2p.y"
2536{ yyval = oper2(OJUNK,oper0(OSNEWLINE),yyvsp[0]); }
2537break;
2538case 105:
2539#line 304 "a2p.y"
2540{ yyval = oper2(OJUNK,oper1(OSCOMMENT,yyvsp[-1]),yyvsp[0]); }
2541break;
2542case 106:
2543#line 308 "a2p.y"
2544{ yyval = oper2(OSTATES,yyvsp[-1],yyvsp[0]); }
2545break;
2546case 107:
2547#line 310 "a2p.y"
2548{ yyval = Nullop; }
2549break;
2550case 108:
2551#line 315 "a2p.y"
2552{ yyval = oper2(OJUNK,oper2(OSTATE,yyvsp[-2],yyvsp[-1]),yyvsp[0]); }
2553break;
2554case 109:
2555#line 317 "a2p.y"
2556{ yyval = oper2(OSTATE,Nullop,oper2(OJUNK,oper0(OSEMICOLON),yyvsp[0])); }
2557break;
2558case 110:
2559#line 319 "a2p.y"
2560{ yyval = oper2(OSTATE,Nullop,oper2(OJUNK,oper0(OSNEWLINE),yyvsp[0])); }
2561break;
2562case 113:
2563#line 325 "a2p.y"
2564{ yyval = Nullop; }
2565break;
2566case 115:
2567#line 331 "a2p.y"
2568{ yyval = oper3(OPRINT,yyvsp[-2],yyvsp[-1],yyvsp[0]);
2569 do_opens = TRUE;
2570 saw_ORS = saw_OFS = TRUE;
2571 if (!yyvsp[-2]) need_entire = TRUE;
2572 if (ops[yyvsp[0]].ival != OSTR + (1<<8)) do_fancy_opens = TRUE; }
2573break;
2574case 116:
2575#line 337 "a2p.y"
2576{ yyval = oper1(OPRINT,yyvsp[0]);
2577 if (!yyvsp[0]) need_entire = TRUE;
2578 saw_ORS = saw_OFS = TRUE;
2579 }
2580break;
2581case 117:
2582#line 342 "a2p.y"
2583{ yyval = oper3(OPRINTF,yyvsp[-2],yyvsp[-1],yyvsp[0]);
2584 do_opens = TRUE;
2585 if (!yyvsp[-2]) need_entire = TRUE;
2586 if (ops[yyvsp[0]].ival != OSTR + (1<<8)) do_fancy_opens = TRUE; }
2587break;
2588case 118:
2589#line 347 "a2p.y"
2590{ yyval = oper1(OPRINTF,yyvsp[0]);
2591 if (!yyvsp[0]) need_entire = TRUE;
2592 }
2593break;
2594case 119:
2595#line 351 "a2p.y"
2596{ yyval = oper0(OBREAK); }
2597break;
2598case 120:
2599#line 353 "a2p.y"
2600{ yyval = oper0(ONEXT); }
2601break;
2602case 121:
2603#line 355 "a2p.y"
2604{ yyval = oper0(OEXIT); }
2605break;
2606case 122:
2607#line 357 "a2p.y"
2608{ yyval = oper1(OEXIT,yyvsp[0]); }
2609break;
2610case 123:
2611#line 359 "a2p.y"
2612{ yyval = oper0(OCONTINUE); }
2613break;
2614case 124:
2615#line 361 "a2p.y"
2616{ yyval = oper0(ORETURN); }
2617break;
2618case 125:
2619#line 363 "a2p.y"
2620{ yyval = oper1(ORETURN,yyvsp[0]); }
2621break;
2622case 126:
2623#line 365 "a2p.y"
2624{ yyval = oper2(ODELETE,aryrefarg(yyvsp[-3]),yyvsp[-1]); }
2625break;
2626case 127:
2627#line 369 "a2p.y"
2628{ yyval = oper1(OREDIR,string(">",1)); }
2629break;
2630case 128:
2631#line 371 "a2p.y"
2632{ yyval = oper1(OREDIR,string(">>",2)); }
2633break;
2634case 129:
2635#line 373 "a2p.y"
2636{ yyval = oper1(OREDIR,string("|",1)); }
2637break;
2638case 130:
2639#line 378 "a2p.y"
2640{ yyval = oper2(OIF,yyvsp[-3],bl(yyvsp[0],yyvsp[-1])); }
2641break;
2642case 131:
2643#line 380 "a2p.y"
2644{ yyval = oper3(OIF,yyvsp[-6],bl(yyvsp[-3],yyvsp[-4]),bl(yyvsp[0],yyvsp[-1])); }
2645break;
2646case 132:
2647#line 382 "a2p.y"
2648{ yyval = oper2(OWHILE,yyvsp[-3],bl(yyvsp[0],yyvsp[-1])); }
2649break;
2650case 133:
2651#line 384 "a2p.y"
2652{ yyval = oper2(ODO,bl(yyvsp[-4],yyvsp[-5]),yyvsp[-1]); }
2653break;
2654case 134:
2655#line 386 "a2p.y"
2656{ yyval = oper4(OFOR,yyvsp[-7],yyvsp[-5],yyvsp[-3],bl(yyvsp[0],yyvsp[-1])); }
2657break;
2658case 135:
2659#line 388 "a2p.y"
2660{ yyval = oper4(OFOR,yyvsp[-6],string("",0),yyvsp[-3],bl(yyvsp[0],yyvsp[-1])); }
2661break;
2662case 136:
2663#line 390 "a2p.y"
2664{ yyval = oper2(OFORIN,yyvsp[-3],bl(yyvsp[0],yyvsp[-1])); }
2665break;
2666case 137:
2667#line 392 "a2p.y"
2668{ yyval = oper3(OBLOCK,oper2(OJUNK,yyvsp[-3],yyvsp[-2]),Nullop,yyvsp[0]); }
2669break;
c822f08a 2670#line 2671 "y.tab.c"
9c8d0b29 2671 }
2672 yyssp -= yym;
2673 yystate = *yyssp;
2674 yyvsp -= yym;
2675 yym = yylhs[yyn];
2676 if (yystate == 0 && yym == 0)
2677 {
2678#if YYDEBUG
2679 if (yydebug)
748a9306 2680 printf("yydebug: after reduction, shifting from state 0 to\
2681 state %d\n", YYFINAL);
9c8d0b29 2682#endif
2683 yystate = YYFINAL;
2684 *++yyssp = YYFINAL;
2685 *++yyvsp = yyval;
2686 if (yychar < 0)
2687 {
2688 if ((yychar = yylex()) < 0) yychar = 0;
2689#if YYDEBUG
2690 if (yydebug)
2691 {
2692 yys = 0;
2693 if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
2694 if (!yys) yys = "illegal-symbol";
748a9306 2695 printf("yydebug: state %d, reading %d (%s)\n",
2696 YYFINAL, yychar, yys);
9c8d0b29 2697 }
2698#endif
2699 }
2700 if (yychar == 0) goto yyaccept;
2701 goto yyloop;
2702 }
2703 if ((yyn = yygindex[yym]) && (yyn += yystate) >= 0 &&
2704 yyn <= YYTABLESIZE && yycheck[yyn] == yystate)
2705 yystate = yytable[yyn];
2706 else
2707 yystate = yydgoto[yym];
2708#if YYDEBUG
2709 if (yydebug)
748a9306 2710 printf("yydebug: after reduction, shifting from state %d \
2711to state %d\n", *yyssp, yystate);
9c8d0b29 2712#endif
2713 if (yyssp >= yyss + yystacksize - 1)
2714 {
2715 goto yyoverflow;
2716 }
2717 *++yyssp = yystate;
2718 *++yyvsp = yyval;
2719 goto yyloop;
2720yyoverflow:
2721 yyerror("yacc stack overflow");
2722yyabort:
2723 return (1);
2724yyaccept:
2725 return (0);
2726}