2 static char yysccsid[] = "@(#)yaccpar 1.8 (Berkeley) 01/20/91";
12 deprecate("\"do\" to call subroutines");
18 45, 0, 9, 7, 10, 8, 11, 11, 11, 12,
19 12, 12, 12, 24, 24, 24, 24, 24, 24, 15,
20 15, 15, 14, 14, 42, 42, 13, 13, 13, 13,
21 13, 13, 13, 26, 26, 27, 27, 28, 29, 30,
22 31, 32, 44, 44, 1, 1, 1, 1, 3, 38,
23 38, 46, 4, 5, 6, 39, 40, 40, 41, 41,
24 47, 47, 49, 48, 16, 16, 16, 25, 25, 25,
25 36, 36, 36, 36, 36, 36, 36, 50, 36, 37,
26 37, 17, 17, 17, 17, 17, 17, 17, 17, 17,
27 17, 17, 17, 17, 17, 17, 17, 17, 17, 17,
28 17, 17, 17, 17, 17, 17, 17, 17, 17, 17,
29 17, 17, 17, 17, 17, 17, 17, 17, 17, 17,
30 17, 17, 17, 17, 17, 17, 17, 17, 17, 17,
31 17, 17, 17, 17, 17, 17, 17, 17, 17, 17,
32 17, 17, 17, 17, 17, 17, 17, 17, 17, 17,
33 17, 17, 17, 17, 17, 17, 17, 33, 33, 34,
34 34, 34, 2, 2, 43, 23, 18, 19, 20, 21,
38 0, 2, 4, 0, 4, 0, 0, 2, 2, 2,
39 1, 2, 3, 1, 1, 3, 3, 3, 3, 0,
40 2, 6, 7, 7, 0, 2, 8, 8, 10, 9,
41 8, 11, 3, 0, 1, 0, 1, 1, 1, 1,
42 1, 1, 0, 1, 1, 1, 1, 1, 4, 1,
43 0, 5, 0, 0, 0, 1, 0, 1, 1, 1,
44 3, 2, 0, 7, 3, 3, 1, 2, 3, 1,
45 3, 5, 6, 3, 5, 2, 4, 0, 5, 1,
46 1, 3, 3, 3, 3, 3, 3, 3, 3, 3,
47 3, 3, 3, 5, 3, 2, 2, 2, 2, 2,
48 2, 2, 2, 2, 2, 3, 2, 3, 2, 4,
49 3, 4, 1, 5, 1, 4, 5, 4, 1, 1,
50 1, 5, 6, 5, 6, 5, 4, 5, 1, 1,
51 3, 4, 3, 2, 2, 4, 5, 4, 5, 4,
52 5, 1, 2, 2, 1, 2, 2, 2, 1, 3,
53 1, 3, 4, 4, 6, 1, 1, 0, 1, 0,
54 1, 2, 1, 1, 1, 2, 2, 2, 2, 2,
57 short yydefred[] = { 1,
58 0, 7, 0, 44, 55, 53, 0, 53, 8, 45,
59 9, 11, 0, 46, 47, 48, 0, 0, 0, 62,
60 63, 14, 4, 156, 0, 0, 129, 0, 151, 0,
61 54, 54, 0, 0, 0, 0, 0, 0, 0, 0,
62 0, 0, 0, 0, 0, 0, 0, 163, 164, 0,
63 0, 0, 0, 0, 0, 0, 0, 12, 0, 0,
64 0, 0, 0, 0, 0, 0, 0, 10, 0, 0,
65 0, 0, 119, 121, 0, 0, 0, 0, 157, 50,
66 0, 56, 0, 61, 0, 7, 172, 175, 174, 173,
67 0, 0, 0, 0, 0, 0, 4, 4, 4, 4,
68 4, 4, 0, 0, 0, 0, 0, 146, 0, 0,
69 0, 0, 76, 0, 170, 0, 135, 0, 0, 0,
70 0, 0, 166, 0, 0, 0, 0, 0, 0, 0,
71 0, 0, 0, 109, 0, 167, 168, 169, 171, 0,
72 0, 33, 0, 0, 0, 0, 0, 0, 0, 0,
73 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
74 0, 0, 0, 101, 102, 0, 0, 0, 0, 0,
75 0, 0, 0, 13, 0, 49, 58, 0, 0, 0,
76 74, 0, 0, 78, 0, 0, 0, 0, 0, 0,
77 0, 4, 150, 152, 0, 0, 0, 0, 0, 0,
78 0, 111, 0, 133, 0, 0, 108, 26, 0, 0,
79 19, 0, 0, 0, 65, 0, 0, 0, 0, 0,
80 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
81 0, 80, 0, 0, 81, 0, 0, 0, 0, 0,
82 0, 0, 131, 0, 0, 60, 59, 52, 0, 3,
83 0, 154, 0, 0, 112, 0, 41, 0, 42, 0,
84 0, 0, 0, 165, 0, 0, 35, 40, 0, 0,
85 0, 153, 162, 77, 0, 136, 0, 138, 0, 110,
86 0, 0, 0, 0, 0, 140, 0, 0, 0, 118,
87 0, 116, 0, 127, 0, 132, 0, 75, 0, 79,
88 0, 0, 0, 0, 0, 0, 0, 0, 72, 137,
89 139, 126, 0, 124, 0, 0, 141, 117, 0, 122,
90 128, 114, 64, 155, 6, 0, 0, 0, 0, 0,
91 0, 0, 0, 125, 123, 73, 7, 27, 28, 0,
92 0, 23, 24, 0, 31, 0, 0, 0, 21, 0,
93 0, 0, 30, 5, 0, 29, 0, 0, 32, 0,
96 short yydgoto[] = { 1,
97 9, 66, 10, 18, 95, 17, 86, 337, 89, 326,
98 3, 11, 12, 68, 342, 261, 70, 71, 72, 73,
99 74, 75, 76, 267, 78, 268, 257, 259, 262, 270,
100 258, 260, 113, 197, 91, 79, 236, 81, 83, 178,
101 248, 142, 265, 13, 2, 14, 15, 16, 85, 254,
103 short yysindex[] = { 0,
104 0, 0, -120, 0, 0, 0, -50, 0, 0, 0,
105 0, 0, 661, 0, 0, 0, -240, -238, -29, 0,
106 0, 0, 0, 0, -32, -32, 0, -8, 0, 2115,
107 0, 0, -4, 31, 32, 35, -35, 2115, 56, 57,
108 61, 1037, 981, -32, 1100, 1364, -218, 0, 0, -32,
109 2115, 2115, 2115, 2115, 2115, 2115, 1420, 0, 2115, 2115,
110 1476, -32, -32, -32, -32, 2115, -205, 0, 201, 306,
111 -63, -62, 0, 0, -24, 67, 45, 65, 0, 0,
112 -15, 0, -149, 0, -144, 0, 0, 0, 0, 0,
113 2115, 80, 2115, 841, -15, -149, 0, 0, 0, 0,
114 0, 0, 85, 306, 86, 1535, 981, 0, 841, 0,
115 -63, 65, 0, 2115, 0, 88, 0, 841, -28, 4,
116 -51, 2115, 0, 65, 340, 340, 340, -76, -76, 49,
117 -31, 340, 340, 0, -82, 0, 0, 0, 0, 841,
118 -15, 0, 2115, 2115, 2115, 2115, 2115, 2115, 2115, 2115,
119 2115, 2115, 2115, 2115, 2115, 2115, 2115, 2115, 2115, 2115,
120 2115, 2115, 2115, 0, 0, 48, 2115, 2115, 2115, 2115,
121 2115, 2115, 1710, 0, 2115, 0, 0, -43, -116, 241,
122 0, 2115, 1193, 0, -15, 2115, 2115, 2115, 2115, 106,
123 1769, 0, 0, 0, -23, 20, 104, 2115, 65, 1825,
124 1881, 0, 36, 0, 2115, 62, 0, 0, -232, -232,
125 0, -232, -232, -134, 0, -46, 1131, 841, 689, 316,
126 859, 306, 3778, 1980, 3652, 1299, 480, 396, 340, 340,
127 2115, 0, 1944, 2115, 0, 128, -58, 22, -56, 24,
128 33, 28, 0, -19, 306, 0, 0, 0, 2115, 0,
129 134, 0, 2115, 2115, 0, -232, 0, 142, 0, 148,
130 -232, 149, 150, 0, 153, 201, 0, 0, 154, 138,
131 2115, 0, 0, 0, -7, 0, 2, 0, 16, 0,
132 70, 2115, 73, 2115, 30, 0, 18, 101, 2115, 0,
133 75, 0, 78, 0, 81, 0, 151, 0, 1247, 0,
134 90, 90, 90, 90, 2115, 90, 2115, 167, 0, 0,
135 0, 0, 103, 0, 3869, 84, 0, 0, 170, 0,
136 0, 0, 0, 0, 0, -205, -205, -207, -207, 176,
137 -205, 168, 90, 0, 0, 0, 0, 0, 0, 90,
138 192, 0, 0, 90, 0, 1769, -205, 402, 0, 2115,
139 -205, 207, 0, 0, 208, 0, 90, 90, 0, -207,
142 short yyrindex[] = { 0,
143 0, 0, 265, 0, 0, 0, 0, 0, 0, 0,
144 0, 0, 0, 0, 0, 0, 131, 0, 0, 0,
145 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
146 0, 0, 0, 0, 0, 0, 0, 2156, -17, 0,
147 0, 2675, 2720, 0, 0, 0, 0, 0, 0, 0,
148 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
149 0, 0, 0, 0, 0, 0, 79, 0, -3, 108,
150 2774, 2860, 0, 0, 2034, 121, 0, 140, 0, 0,
151 0, 0, -33, 0, 0, 0, 0, 0, 0, 0,
152 2203, 0, 0, 3504, 0, 145, 0, 0, 0, 0,
153 0, 0, 0, 3772, 0, 0, 252, 0, 3551, 541,
154 602, 2270, 0, 0, 0, 442, 0, 3587, 2774, 0,
155 0, 2203, 0, 2324, 3010, 3049, 3096, 2911, 2972, 2439,
156 0, 3147, 3193, 0, 0, 0, 0, 0, 0, 3633,
157 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
158 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
159 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
160 0, 0, 0, 0, 2522, 0, 0, 0, 0, 925,
161 0, 252, 0, 0, 0, 263, 0, 0, 0, 0,
162 223, 0, 0, 0, 0, 282, 0, 0, 2576, 0,
163 0, 0, 0, 0, 0, 2624, 0, 0, -1, 26,
164 0, 27, 51, 718, 0, 0, 3752, 1576, 1632, 3368,
165 3413, 3799, 0, -38, 3710, 3678, 3060, 3459, 3285, 3332,
166 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
167 0, 0, 0, 0, 3835, 0, 0, 0, 273, 0,
168 0, 0, 0, 2203, 0, 59, 0, 0, 0, 0,
169 293, 0, 0, 0, 0, 64, 0, 0, 0, 0,
170 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
171 0, 0, 0, 0, 0, 0, 0, 0, 252, 0,
172 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
173 0, 0, 0, 0, 0, 0, 296, 0, 0, 0,
174 0, 0, 0, 0, 2380, 0, 0, 0, 0, 0,
175 0, 0, 0, 0, 0, 79, 79, 186, 186, 0,
176 79, 0, 0, 0, 0, 0, 0, 0, 0, 0,
177 0, 0, 0, 0, 0, 300, 79, 925, 0, 0,
178 79, 0, 0, 0, 0, 0, 0, 0, 0, 186,
181 short yygindex[] = { 0,
182 0, 0, 0, 349, 328, 0, -48, 0, 679, 378,
183 -84, 0, 0, 0, -298, -13, 4075, 2485, 0, 0,
184 0, 0, 0, 363, 908, 0, 0, 233, -168, 38,
185 72, 196, -77, -175, 999, 0, 0, 0, 0, 290,
186 0, -249, 0, 0, 0, 0, 0, 0, 0, 0,
188 #define YYTABLESIZE 4359
189 short yytable[] = { 69,
190 62, 180, 93, 62, 102, 93, 251, 203, 20, 206,
191 207, 201, 283, 181, 167, 246, 80, 272, 82, 93,
192 93, 296, 269, 149, 93, 57, 149, 169, 171, 84,
193 343, 93, 121, 309, 290, 97, 292, 15, 122, 18,
194 149, 149, 310, 131, 204, 149, 149, 135, 186, 187,
195 188, 189, 190, 191, 93, 15, 311, 18, 317, 168,
196 170, 361, 169, 273, 147, 148, 38, 16, 340, 341,
197 98, 99, 141, 149, 100, 149, 338, 339, 25, 23,
198 291, 345, 293, 62, 38, 16, 295, 233, 316, 57,
199 23, 17, 195, 196, 168, 105, 106, 353, 172, 37,
200 107, 356, 308, 174, 39, 149, 173, 23, 175, 17,
201 177, 25, 179, 319, 25, 25, 25, 37, 25, 182,
202 25, 25, 15, 25, 192, 294, 193, 200, 202, 209,
203 210, 212, 213, 214, 215, 216, 330, 25, 234, 205,
204 249, 62, 25, 271, 274, 4, 5, 6, 70, 7,
205 8, 70, 282, 237, 238, 239, 240, 241, 242, 244,
206 280, 130, 312, 148, 130, 70, 70, 289, 196, 25,
207 231, 297, 256, 210, 298, 210, 300, 266, 130, 130,
208 67, 355, 301, 130, 275, 20, 277, 279, 302, 303,
209 304, 281, 305, 318, 306, 334, 307, 314, 67, 320,
210 70, 25, 321, 25, 25, 322, 19, 333, 335, 323,
211 336, 130, 325, 130, 147, 148, 344, 285, 20, 287,
212 288, 20, 20, 20, 87, 20, 346, 20, 20, 88,
213 20, 350, 67, 93, 93, 93, 93, 166, 147, 148,
214 147, 148, 93, 130, 20, 147, 148, 357, 358, 20,
215 147, 148, 348, 51, 149, 149, 149, 149, 93, 93,
216 101, 93, 93, 149, 2, 147, 148, 57, 313, 149,
217 149, 149, 149, 147, 148, 196, 20, 147, 148, 149,
218 149, 34, 149, 149, 149, 149, 149, 149, 149, 147,
219 148, 149, 160, 256, 149, 149, 149, 43, 147, 148,
220 43, 43, 43, 36, 43, 232, 43, 43, 20, 43,
221 20, 20, 147, 148, 147, 148, 147, 148, 147, 148,
222 147, 148, 161, 43, 147, 148, 147, 148, 43, 147,
223 148, 158, 69, 39, 25, 25, 25, 25, 25, 25,
224 34, 25, 25, 25, 25, 25, 25, 25, 25, 25,
225 25, 25, 25, 25, 36, 43, 21, 25, 25, 96,
226 25, 25, 25, 25, 25, 250, 147, 148, 156, 25,
227 25, 25, 25, 25, 25, 77, 211, 25, 332, 70,
228 70, 70, 70, 352, 263, 185, 25, 43, 25, 25,
229 43, 0, 130, 130, 130, 130, 167, 147, 148, 147,
230 148, 130, 0, 0, 70, 70, 167, 130, 130, 130,
231 130, 67, 67, 67, 67, 0, 0, 130, 130, 0,
232 130, 130, 130, 130, 130, 130, 130, 0, 149, 130,
233 167, 0, 130, 130, 130, 0, 67, 67, 149, 0,
234 0, 20, 20, 20, 20, 20, 20, 0, 20, 20,
235 20, 20, 20, 20, 20, 20, 20, 20, 20, 20,
236 20, 0, 149, 0, 20, 20, 0, 20, 20, 20,
237 20, 20, 143, 144, 145, 146, 20, 20, 20, 20,
238 20, 20, 156, 0, 20, 156, 167, 0, 0, 0,
239 0, 0, 0, 20, 0, 20, 20, 147, 148, 156,
240 156, 0, 0, 0, 156, 0, 4, 5, 6, 0,
241 7, 8, 0, 0, 0, 0, 0, 0, 149, 0,
242 43, 43, 43, 43, 43, 43, 354, 43, 43, 43,
243 0, 0, 156, 43, 156, 0, 43, 43, 43, 43,
244 0, 0, 0, 43, 43, 0, 43, 43, 43, 43,
245 43, 0, 0, 0, 0, 43, 43, 43, 43, 43,
246 43, 0, 0, 43, 156, 0, 0, 0, 0, 0,
247 167, 0, 43, 172, 43, 43, 172, 172, 172, 0,
248 172, 156, 172, 172, 156, 172, 150, 0, 0, 0,
249 0, 0, 151, 152, 153, 154, 0, 0, 156, 156,
250 0, 0, 149, 156, 172, 155, 157, 158, 159, 160,
251 161, 162, 0, 0, 163, 0, 0, 164, 165, 166,
252 0, 162, 0, 0, 163, 0, 0, 164, 165, 166,
253 0, 156, 0, 156, 173, 0, 0, 173, 173, 173,
254 0, 173, 113, 173, 173, 113, 173, 0, 163, 0,
255 0, 164, 165, 166, 0, 0, 0, 0, 0, 113,
256 113, 0, 0, 156, 113, 173, 172, 4, 5, 6,
257 0, 7, 8, 0, 0, 0, 0, 0, 0, 327,
258 328, 329, 0, 331, 153, 154, 0, 0, 0, 0,
259 0, 67, 0, 52, 113, 0, 62, 64, 50, 0,
260 57, 162, 65, 60, 163, 59, 0, 164, 165, 166,
261 347, 0, 0, 156, 156, 156, 156, 349, 0, 58,
262 108, 351, 156, 117, 63, 0, 0, 173, 156, 156,
263 156, 156, 0, 0, 359, 360, 0, 0, 156, 156,
264 0, 156, 156, 156, 156, 156, 156, 156, 0, 0,
265 156, 61, 0, 156, 156, 156, 0, 0, 66, 176,
266 0, 66, 0, 0, 0, 0, 151, 152, 153, 154,
267 0, 0, 0, 184, 0, 0, 66, 0, 0, 167,
268 0, 0, 0, 23, 161, 162, 53, 0, 163, 0,
269 0, 164, 165, 166, 0, 0, 0, 172, 172, 172,
270 172, 172, 0, 172, 172, 172, 0, 0, 0, 172,
271 66, 149, 156, 156, 156, 156, 0, 0, 0, 208,
272 172, 156, 172, 172, 172, 172, 172, 156, 156, 156,
273 156, 172, 172, 172, 172, 172, 172, 156, 156, 172,
274 156, 156, 156, 156, 156, 156, 156, 0, 172, 156,
275 172, 172, 156, 156, 156, 0, 247, 0, 173, 173,
276 173, 173, 173, 255, 173, 173, 173, 0, 0, 0,
277 173, 0, 0, 113, 113, 113, 113, 0, 0, 0,
278 0, 173, 113, 173, 173, 173, 173, 173, 113, 113,
279 113, 113, 173, 173, 173, 173, 173, 173, 113, 113,
280 173, 113, 113, 113, 113, 113, 113, 113, 0, 173,
281 113, 173, 173, 113, 113, 113, 22, 24, 25, 26,
282 27, 28, 0, 29, 30, 31, 0, 0, 0, 32,
283 0, 167, 33, 34, 35, 36, 0, 0, 0, 37,
284 38, 0, 39, 40, 41, 42, 43, 0, 0, 167,
285 112, 44, 45, 46, 47, 48, 49, 43, 124, 51,
286 43, 43, 43, 149, 43, 0, 43, 43, 54, 43,
287 55, 56, 0, 0, 0, 151, 0, 153, 154, 0,
288 0, 149, 0, 43, 0, 0, 0, 0, 43, 66,
289 66, 66, 66, 161, 162, 0, 0, 163, 112, 0,
290 164, 165, 166, 0, 0, 0, 0, 0, 0, 0,
291 0, 0, 0, 52, 66, 43, 62, 64, 50, 0,
292 57, 199, 65, 60, 92, 59, 0, 0, 0, 112,
293 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
294 0, 114, 115, 0, 63, 0, 0, 43, 123, 0,
295 43, 0, 0, 0, 0, 0, 0, 0, 0, 0,
296 136, 137, 138, 139, 0, 0, 0, 0, 0, 52,
297 0, 61, 62, 64, 50, 0, 57, 0, 65, 60,
298 0, 59, 0, 0, 0, 0, 0, 0, 0, 0,
299 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
300 63, 0, 0, 23, 0, 198, 53, 0, 0, 0,
301 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
302 0, 0, 0, 0, 0, 0, 0, 61, 0, 153,
303 154, 0, 52, 0, 0, 62, 64, 50, 0, 57,
304 0, 65, 60, 0, 59, 161, 162, 153, 0, 163,
305 0, 0, 164, 165, 166, 0, 112, 0, 0, 23,
306 0, 112, 53, 63, 162, 0, 0, 163, 0, 0,
307 164, 165, 166, 0, 0, 0, 0, 0, 0, 0,
308 43, 43, 43, 43, 43, 43, 0, 43, 43, 43,
309 61, 0, 0, 43, 0, 0, 43, 43, 43, 43,
310 0, 0, 0, 43, 43, 0, 43, 43, 43, 43,
311 43, 0, 0, 0, 0, 43, 43, 43, 43, 43,
312 43, 167, 23, 43, 0, 53, 0, 0, 0, 0,
313 0, 0, 43, 252, 43, 43, 253, 110, 25, 26,
314 27, 28, 88, 29, 30, 31, 0, 0, 0, 32,
315 0, 0, 0, 149, 0, 156, 0, 0, 0, 0,
316 38, 0, 39, 40, 41, 42, 43, 0, 0, 0,
317 0, 44, 45, 46, 47, 48, 49, 0, 0, 51,
318 0, 0, 0, 167, 0, 0, 0, 324, 54, 0,
319 55, 56, 0, 24, 25, 26, 27, 28, 0, 29,
320 30, 31, 0, 0, 0, 32, 0, 0, 0, 156,
321 0, 0, 0, 0, 0, 149, 38, 0, 39, 40,
322 41, 42, 43, 0, 0, 0, 0, 44, 45, 46,
323 47, 48, 49, 0, 0, 51, 0, 167, 0, 0,
324 0, 0, 0, 0, 54, 0, 55, 56, 0, 0,
325 0, 0, 0, 0, 0, 0, 116, 25, 26, 27,
326 28, 0, 29, 30, 31, 0, 0, 0, 32, 149,
327 0, 0, 0, 0, 0, 0, 0, 0, 0, 38,
328 0, 39, 40, 41, 42, 43, 0, 0, 0, 167,
329 44, 45, 46, 47, 48, 49, 52, 0, 51, 62,
330 64, 50, 0, 57, 0, 65, 60, 54, 59, 55,
331 56, 0, 0, 0, 0, 0, 0, 151, 152, 153,
332 154, 149, 120, 0, 0, 0, 0, 63, 0, 0,
333 0, 157, 158, 159, 160, 161, 162, 0, 0, 163,
334 0, 0, 164, 165, 166, 0, 0, 0, 0, 0,
335 0, 0, 52, 0, 61, 62, 64, 50, 0, 57,
336 130, 65, 60, 0, 59, 0, 0, 0, 0, 0,
337 0, 0, 0, 150, 0, 0, 0, 0, 0, 151,
338 152, 153, 154, 63, 0, 0, 0, 0, 0, 53,
339 0, 0, 155, 157, 158, 159, 160, 161, 162, 0,
340 0, 163, 0, 0, 164, 165, 166, 0, 52, 0,
341 61, 62, 64, 50, 0, 57, 0, 65, 60, 0,
342 59, 0, 0, 0, 0, 0, 0, 150, 0, 0,
343 0, 0, 0, 151, 152, 153, 154, 0, 0, 63,
344 0, 0, 0, 0, 0, 53, 155, 157, 158, 159,
345 160, 161, 162, 0, 0, 163, 0, 0, 164, 165,
346 166, 0, 0, 0, 0, 0, 61, 52, 134, 0,
347 62, 64, 50, 0, 57, 194, 65, 60, 0, 59,
348 0, 0, 0, 0, 0, 151, 152, 153, 154, 0,
349 0, 0, 0, 0, 0, 0, 0, 0, 63, 0,
350 0, 53, 160, 161, 162, 0, 0, 163, 0, 0,
351 164, 165, 166, 0, 0, 0, 87, 0, 0, 87,
352 24, 25, 26, 27, 28, 61, 29, 30, 31, 0,
353 0, 0, 32, 87, 87, 0, 0, 0, 87, 0,
354 0, 0, 0, 38, 0, 39, 40, 41, 42, 43,
355 0, 0, 0, 0, 44, 45, 46, 47, 48, 49,
356 53, 0, 51, 0, 0, 0, 0, 0, 87, 0,
357 0, 54, 88, 55, 56, 88, 24, 25, 26, 27,
358 28, 0, 29, 30, 31, 0, 0, 0, 32, 88,
359 88, 0, 0, 0, 88, 0, 0, 0, 0, 38,
360 0, 39, 40, 41, 42, 43, 0, 0, 0, 0,
361 44, 45, 46, 47, 48, 49, 0, 0, 51, 0,
362 0, 0, 0, 0, 88, 0, 0, 54, 0, 55,
363 56, 0, 24, 25, 26, 27, 28, 0, 29, 30,
364 31, 0, 52, 0, 32, 62, 64, 50, 0, 57,
365 243, 65, 60, 0, 59, 38, 0, 39, 40, 41,
366 42, 43, 0, 0, 0, 0, 44, 45, 46, 47,
367 48, 49, 0, 63, 51, 0, 0, 0, 0, 0,
368 0, 0, 0, 54, 0, 55, 56, 0, 0, 0,
369 0, 24, 25, 26, 27, 28, 0, 29, 30, 31,
370 61, 52, 0, 32, 62, 64, 50, 0, 57, 0,
371 65, 60, 0, 59, 38, 0, 39, 40, 41, 42,
372 43, 0, 0, 0, 0, 44, 45, 46, 47, 48,
373 49, 0, 63, 51, 0, 53, 0, 0, 0, 0,
374 0, 0, 54, 0, 55, 56, 0, 87, 87, 87,
375 87, 0, 0, 0, 0, 0, 87, 52, 0, 61,
376 62, 64, 50, 87, 57, 276, 65, 60, 0, 59,
377 0, 0, 87, 87, 0, 87, 87, 87, 87, 87,
378 0, 0, 0, 0, 0, 0, 0, 0, 63, 0,
379 0, 0, 0, 0, 53, 0, 0, 0, 0, 0,
380 0, 0, 0, 88, 88, 88, 88, 0, 0, 0,
381 0, 0, 88, 52, 0, 61, 62, 64, 50, 0,
382 57, 278, 65, 60, 0, 59, 0, 0, 88, 88,
383 0, 88, 88, 88, 88, 88, 0, 0, 0, 0,
384 0, 0, 0, 0, 63, 0, 0, 0, 0, 0,
385 53, 0, 0, 0, 0, 0, 0, 0, 0, 0,
386 0, 0, 0, 0, 0, 0, 24, 25, 26, 27,
387 28, 61, 29, 30, 31, 0, 52, 0, 32, 62,
388 64, 50, 0, 57, 286, 65, 60, 0, 59, 38,
389 0, 39, 40, 41, 42, 43, 0, 0, 0, 0,
390 44, 45, 46, 47, 48, 49, 53, 63, 51, 0,
391 0, 0, 0, 0, 0, 0, 0, 54, 0, 55,
392 56, 0, 0, 0, 22, 24, 25, 26, 27, 28,
393 0, 29, 30, 31, 61, 0, 0, 32, 0, 0,
394 0, 0, 0, 0, 0, 0, 0, 0, 38, 0,
395 39, 40, 41, 42, 43, 0, 0, 0, 0, 44,
396 45, 46, 47, 48, 49, 0, 0, 51, 0, 53,
397 167, 0, 0, 0, 115, 0, 54, 115, 55, 56,
398 0, 24, 25, 26, 27, 28, 0, 29, 30, 31,
399 0, 115, 115, 32, 0, 0, 115, 0, 0, 0,
400 0, 0, 149, 0, 38, 0, 39, 40, 41, 42,
401 43, 0, 0, 0, 0, 44, 45, 46, 47, 48,
402 49, 0, 0, 51, 115, 0, 115, 0, 0, 0,
403 0, 0, 54, 0, 55, 56, 0, 24, 25, 26,
404 27, 28, 0, 29, 30, 31, 0, 52, 0, 32,
405 62, 64, 50, 0, 57, 0, 65, 60, 0, 59,
406 38, 0, 39, 40, 41, 42, 43, 0, 0, 0,
407 0, 44, 45, 46, 47, 48, 49, 0, 63, 51,
408 0, 0, 0, 0, 0, 0, 0, 0, 54, 0,
409 55, 56, 0, 0, 0, 0, 142, 0, 0, 142,
410 24, 25, 26, 27, 28, 61, 29, 30, 31, 0,
411 0, 0, 32, 142, 142, 0, 0, 0, 142, 0,
412 0, 0, 0, 38, 0, 39, 40, 41, 42, 43,
413 0, 0, 0, 0, 44, 45, 46, 47, 48, 49,
414 53, 0, 51, 158, 0, 0, 158, 0, 142, 0,
415 0, 54, 0, 55, 56, 0, 0, 0, 0, 0,
416 158, 158, 0, 0, 0, 158, 151, 152, 153, 154,
417 0, 0, 0, 0, 0, 0, 0, 0, 142, 0,
418 0, 158, 159, 160, 161, 162, 0, 0, 163, 0,
419 0, 164, 165, 166, 0, 158, 0, 0, 0, 0,
420 0, 0, 0, 0, 0, 115, 115, 115, 115, 0,
421 159, 0, 0, 0, 115, 0, 0, 0, 0, 0,
422 115, 115, 115, 115, 0, 158, 0, 159, 159, 0,
423 115, 115, 159, 115, 115, 115, 115, 115, 115, 115,
424 0, 0, 115, 0, 0, 115, 115, 115, 0, 0,
425 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
426 159, 0, 159, 0, 144, 0, 0, 0, 0, 0,
427 0, 24, 25, 26, 27, 28, 0, 29, 30, 31,
428 0, 144, 144, 32, 0, 0, 144, 0, 0, 0,
429 0, 0, 159, 0, 38, 0, 39, 40, 41, 42,
430 43, 0, 0, 0, 0, 44, 45, 46, 47, 48,
431 49, 0, 0, 51, 144, 0, 144, 0, 0, 0,
432 94, 0, 54, 94, 55, 56, 0, 142, 142, 142,
433 142, 0, 0, 0, 0, 0, 142, 94, 94, 0,
434 0, 0, 142, 142, 142, 142, 144, 0, 0, 0,
435 0, 0, 142, 142, 0, 142, 142, 142, 142, 142,
436 142, 142, 0, 0, 142, 0, 0, 142, 142, 142,
437 0, 0, 94, 0, 158, 158, 158, 158, 0, 107,
438 0, 0, 107, 158, 0, 0, 0, 0, 0, 158,
439 158, 158, 158, 0, 0, 0, 107, 107, 0, 158,
440 158, 107, 158, 158, 158, 158, 158, 158, 158, 90,
441 90, 158, 0, 0, 158, 158, 158, 0, 0, 0,
442 0, 103, 0, 0, 0, 0, 0, 111, 90, 119,
443 0, 107, 0, 0, 90, 0, 0, 0, 0, 0,
444 0, 159, 159, 159, 159, 0, 90, 90, 90, 90,
445 159, 0, 0, 0, 0, 0, 159, 159, 159, 159,
446 0, 107, 68, 0, 0, 68, 159, 159, 0, 159,
447 159, 159, 159, 159, 159, 159, 0, 0, 159, 68,
448 68, 159, 159, 159, 68, 0, 0, 0, 0, 0,
449 0, 111, 0, 0, 0, 144, 144, 144, 144, 0,
450 0, 0, 0, 0, 144, 0, 0, 0, 0, 0,
451 144, 144, 144, 144, 68, 0, 71, 0, 0, 0,
452 144, 144, 0, 144, 144, 144, 144, 144, 144, 144,
453 0, 0, 144, 71, 71, 144, 144, 144, 71, 0,
454 0, 0, 0, 0, 68, 0, 0, 0, 0, 0,
455 235, 94, 94, 94, 94, 0, 0, 0, 0, 0,
456 0, 0, 0, 0, 106, 0, 71, 106, 71, 0,
457 0, 0, 0, 0, 264, 0, 94, 94, 0, 94,
458 0, 106, 106, 0, 0, 0, 106, 0, 0, 0,
459 0, 0, 0, 0, 0, 0, 0, 0, 71, 0,
460 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
461 107, 107, 107, 107, 0, 145, 106, 0, 145, 107,
462 0, 0, 0, 0, 0, 107, 107, 107, 107, 0,
463 0, 0, 145, 145, 0, 107, 107, 145, 107, 107,
464 107, 107, 107, 107, 107, 0, 106, 107, 0, 0,
465 107, 107, 107, 0, 0, 0, 0, 0, 0, 0,
466 158, 0, 0, 158, 0, 0, 0, 145, 0, 0,
467 0, 0, 0, 0, 0, 0, 0, 158, 158, 0,
468 0, 0, 158, 0, 0, 0, 0, 0, 0, 0,
469 0, 0, 0, 68, 68, 68, 68, 0, 0, 0,
470 0, 0, 68, 0, 0, 0, 0, 0, 68, 68,
471 68, 68, 158, 0, 113, 0, 0, 113, 68, 68,
472 0, 68, 68, 68, 68, 68, 68, 68, 0, 0,
473 68, 113, 113, 68, 68, 68, 113, 0, 0, 0,
474 0, 0, 0, 0, 0, 0, 0, 71, 71, 71,
475 71, 0, 0, 0, 0, 0, 71, 0, 0, 0,
476 0, 0, 71, 71, 71, 71, 113, 0, 0, 0,
477 0, 0, 71, 71, 0, 71, 71, 71, 71, 71,
478 71, 71, 0, 0, 71, 0, 0, 71, 71, 71,
479 0, 0, 0, 0, 0, 106, 106, 106, 106, 0,
480 120, 0, 0, 120, 106, 0, 0, 0, 0, 0,
481 106, 106, 106, 106, 0, 0, 0, 120, 120, 0,
482 106, 106, 120, 106, 106, 106, 106, 106, 106, 106,
483 0, 0, 106, 0, 0, 106, 106, 106, 0, 0,
484 0, 0, 0, 0, 0, 0, 145, 145, 145, 145,
485 0, 103, 120, 0, 103, 145, 0, 0, 0, 0,
486 0, 145, 145, 145, 145, 0, 0, 0, 103, 103,
487 0, 145, 145, 103, 145, 145, 145, 145, 145, 145,
488 145, 0, 0, 145, 0, 0, 145, 145, 145, 0,
489 0, 158, 158, 158, 158, 0, 0, 0, 0, 0,
490 158, 0, 0, 103, 0, 0, 158, 158, 158, 158,
491 0, 0, 104, 0, 0, 104, 158, 158, 0, 158,
492 158, 158, 158, 158, 158, 158, 0, 0, 158, 104,
493 104, 158, 158, 158, 104, 0, 0, 0, 0, 0,
494 0, 0, 0, 0, 0, 113, 113, 113, 113, 0,
495 98, 0, 0, 98, 113, 0, 0, 0, 0, 0,
496 113, 113, 113, 113, 104, 0, 0, 98, 98, 0,
497 113, 113, 98, 113, 113, 113, 113, 113, 113, 113,
498 0, 0, 113, 0, 0, 113, 113, 113, 0, 99,
499 0, 0, 99, 0, 0, 0, 0, 0, 0, 0,
500 89, 0, 98, 89, 0, 0, 99, 99, 0, 0,
501 0, 99, 0, 0, 0, 0, 0, 89, 89, 0,
502 0, 0, 89, 0, 0, 0, 0, 0, 0, 0,
503 0, 120, 120, 120, 120, 0, 100, 0, 0, 100,
504 120, 99, 0, 0, 0, 0, 120, 120, 120, 120,
505 0, 0, 89, 100, 100, 0, 120, 120, 100, 120,
506 120, 120, 120, 120, 120, 120, 0, 0, 120, 0,
507 0, 120, 120, 120, 0, 0, 0, 0, 0, 0,
508 0, 0, 103, 103, 103, 103, 0, 96, 100, 0,
509 96, 103, 0, 0, 0, 0, 0, 103, 103, 103,
510 103, 0, 0, 0, 96, 96, 0, 103, 103, 96,
511 103, 103, 103, 103, 103, 103, 103, 0, 0, 103,
512 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
513 0, 0, 0, 97, 0, 0, 97, 0, 0, 96,
514 0, 0, 0, 104, 104, 104, 104, 0, 0, 0,
515 97, 97, 104, 0, 0, 97, 0, 0, 104, 104,
516 104, 104, 0, 0, 0, 0, 0, 0, 104, 104,
517 0, 104, 104, 104, 104, 104, 104, 104, 0, 0,
518 104, 98, 98, 98, 98, 97, 0, 0, 0, 0,
519 98, 0, 0, 0, 0, 0, 98, 98, 98, 98,
520 0, 0, 0, 0, 0, 0, 98, 98, 0, 98,
521 98, 98, 98, 98, 98, 98, 0, 0, 0, 0,
522 99, 99, 99, 99, 0, 95, 0, 0, 95, 99,
523 0, 89, 89, 89, 89, 99, 99, 99, 99, 0,
524 89, 0, 95, 95, 0, 99, 99, 95, 99, 99,
525 99, 99, 99, 99, 99, 0, 89, 89, 0, 89,
526 89, 89, 89, 89, 0, 0, 0, 100, 100, 100,
527 100, 0, 83, 0, 0, 83, 100, 95, 0, 0,
528 0, 0, 100, 100, 100, 100, 0, 0, 0, 83,
529 83, 0, 100, 100, 83, 100, 100, 100, 100, 100,
530 100, 100, 0, 0, 0, 0, 0, 0, 84, 0,
531 0, 84, 0, 0, 0, 0, 0, 0, 96, 96,
532 96, 96, 0, 0, 83, 84, 84, 96, 0, 0,
533 84, 0, 0, 96, 96, 96, 96, 0, 0, 0,
534 0, 0, 0, 96, 96, 0, 96, 96, 96, 96,
535 96, 96, 96, 85, 0, 0, 85, 0, 0, 0,
536 84, 0, 0, 0, 97, 97, 97, 97, 0, 0,
537 85, 85, 0, 97, 0, 85, 0, 0, 0, 97,
538 97, 97, 97, 0, 0, 0, 0, 0, 0, 97,
539 97, 0, 97, 97, 97, 97, 97, 97, 97, 86,
540 0, 0, 86, 0, 0, 85, 0, 0, 0, 0,
541 0, 0, 0, 0, 0, 0, 86, 86, 0, 0,
542 0, 86, 0, 0, 0, 0, 0, 0, 0, 0,
543 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
544 0, 0, 0, 0, 148, 0, 0, 148, 0, 0,
545 0, 86, 0, 0, 0, 0, 95, 95, 95, 95,
546 0, 148, 148, 0, 0, 95, 148, 0, 0, 0,
547 0, 95, 95, 95, 95, 0, 0, 0, 0, 0,
548 0, 95, 95, 0, 95, 95, 95, 95, 95, 95,
549 95, 147, 0, 0, 147, 0, 148, 0, 0, 0,
550 0, 0, 0, 83, 83, 83, 83, 0, 147, 147,
551 0, 0, 83, 147, 0, 0, 0, 0, 83, 83,
552 83, 83, 0, 0, 0, 0, 0, 134, 83, 83,
553 134, 83, 83, 83, 83, 83, 83, 83, 0, 84,
554 84, 84, 84, 147, 134, 134, 0, 0, 84, 134,
555 0, 0, 0, 0, 84, 84, 84, 84, 0, 0,
556 0, 0, 0, 0, 84, 84, 0, 84, 84, 84,
557 84, 84, 84, 105, 0, 0, 105, 0, 0, 134,
558 0, 0, 0, 0, 85, 85, 85, 85, 0, 0,
559 105, 105, 0, 85, 0, 105, 0, 0, 0, 85,
560 85, 0, 85, 0, 0, 0, 0, 0, 0, 85,
561 85, 0, 85, 85, 85, 85, 85, 85, 90, 0,
562 0, 90, 0, 0, 0, 105, 0, 0, 0, 0,
563 86, 86, 86, 86, 0, 90, 90, 0, 0, 86,
564 90, 0, 167, 0, 0, 86, 86, 0, 0, 0,
565 92, 0, 0, 92, 0, 86, 86, 0, 86, 86,
566 86, 86, 86, 86, 0, 0, 0, 92, 92, 0,
567 90, 0, 92, 0, 149, 148, 148, 148, 148, 0,
568 0, 0, 0, 0, 148, 0, 0, 0, 0, 0,
569 148, 148, 91, 0, 0, 91, 0, 0, 0, 0,
570 148, 148, 92, 148, 148, 148, 148, 148, 0, 91,
571 91, 0, 143, 0, 91, 143, 0, 0, 0, 0,
572 0, 0, 147, 147, 147, 147, 0, 0, 0, 143,
573 143, 147, 0, 0, 0, 284, 0, 147, 147, 82,
574 156, 0, 82, 0, 91, 0, 0, 147, 147, 0,
575 147, 147, 147, 147, 147, 0, 82, 82, 134, 134,
576 134, 134, 0, 0, 143, 0, 0, 134, 167, 0,
577 0, 0, 0, 134, 134, 69, 0, 0, 69, 0,
578 0, 0, 0, 134, 134, 0, 134, 134, 134, 134,
579 134, 82, 69, 69, 0, 0, 0, 0, 0, 0,
580 149, 0, 0, 0, 105, 105, 105, 105, 0, 0,
581 0, 0, 0, 105, 0, 0, 0, 0, 0, 105,
582 105, 0, 0, 0, 0, 0, 0, 69, 0, 105,
583 105, 156, 105, 105, 105, 105, 105, 0, 151, 152,
584 153, 154, 0, 0, 0, 0, 0, 0, 0, 90,
585 90, 90, 90, 0, 159, 160, 161, 162, 90, 167,
586 163, 0, 0, 164, 165, 166, 0, 0, 0, 0,
587 0, 0, 0, 0, 90, 90, 0, 90, 90, 90,
588 90, 92, 92, 92, 92, 0, 0, 0, 0, 0,
589 92, 149, 0, 0, 0, 0, 0, 0, 0, 0,
590 0, 0, 0, 0, 0, 0, 92, 92, 0, 92,
591 92, 92, 0, 0, 0, 0, 0, 0, 0, 0,
592 0, 0, 0, 91, 91, 91, 91, 0, 0, 0,
593 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
594 0, 0, 0, 143, 143, 143, 143, 0, 91, 91,
595 0, 91, 0, 0, 0, 0, 0, 0, 150, 0,
596 0, 0, 0, 0, 151, 152, 153, 154, 143, 143,
597 82, 82, 82, 82, 0, 0, 0, 155, 157, 158,
598 159, 160, 161, 162, 0, 0, 163, 0, 0, 164,
599 165, 166, 0, 0, 0, 82, 82, 0, 0, 0,
600 0, 0, 0, 0, 94, 0, 69, 69, 69, 69,
601 0, 0, 104, 0, 0, 0, 109, 0, 0, 118,
602 0, 0, 0, 0, 0, 0, 125, 126, 127, 128,
603 129, 69, 69, 132, 133, 0, 0, 0, 0, 0,
604 140, 0, 0, 0, 0, 0, 0, 0, 0, 150,
605 0, 0, 0, 0, 0, 151, 152, 153, 154, 0,
606 0, 0, 0, 0, 0, 0, 0, 183, 0, 157,
607 158, 159, 160, 161, 162, 0, 0, 163, 0, 0,
608 164, 165, 166, 0, 0, 0, 0, 0, 0, 0,
609 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
610 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
611 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
612 0, 0, 0, 0, 217, 218, 219, 220, 221, 222,
613 223, 224, 225, 226, 227, 228, 229, 230, 0, 0,
614 0, 0, 0, 0, 0, 0, 0, 0, 0, 245,
615 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
616 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
617 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
618 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
619 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
620 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
621 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
622 0, 0, 0, 0, 0, 0, 0, 299, 0, 0,
623 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
624 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
625 0, 0, 0, 0, 0, 0, 0, 0, 315,
627 short yycheck[] = { 13,
628 36, 86, 41, 36, 40, 44, 182, 59, 59, 41,
629 93, 40, 59, 91, 91, 59, 257, 41, 257, 58,
630 59, 41, 191, 41, 63, 59, 44, 91, 91, 59,
631 329, 40, 46, 41, 93, 40, 93, 41, 257, 41,
632 58, 59, 41, 57, 122, 63, 123, 61, 97, 98,
633 99, 100, 101, 102, 93, 59, 41, 59, 41, 123,
634 123, 360, 91, 44, 297, 298, 41, 41, 276, 277,
635 40, 40, 278, 91, 40, 93, 326, 327, 0, 123,
636 59, 331, 59, 36, 59, 59, 59, 40, 59, 123,
637 123, 41, 106, 107, 123, 40, 40, 347, 123, 41,
638 40, 351, 271, 59, 41, 123, 40, 123, 44, 59,
639 260, 33, 257, 289, 36, 37, 38, 59, 40, 40,
640 42, 43, 59, 45, 40, 93, 41, 40, 125, 143,
641 144, 145, 146, 147, 148, 149, 305, 59, 91, 91,
642 257, 36, 64, 192, 41, 266, 267, 268, 41, 270,
643 271, 44, 91, 167, 168, 169, 170, 171, 172, 173,
644 125, 41, 93, 298, 44, 58, 59, 40, 182, 91,
645 123, 249, 186, 187, 41, 189, 254, 191, 58, 59,
646 41, 350, 41, 63, 198, 0, 200, 201, 41, 41,
647 41, 205, 40, 93, 41, 93, 59, 125, 59, 125,
648 93, 123, 125, 125, 126, 125, 257, 41, 125, 59,
649 41, 91, 123, 93, 297, 298, 41, 231, 33, 233,
650 234, 36, 37, 38, 257, 40, 59, 42, 43, 262,
651 45, 40, 93, 272, 273, 274, 275, 314, 297, 298,
652 297, 298, 281, 123, 59, 297, 298, 41, 41, 64,
653 297, 298, 337, 123, 272, 273, 274, 275, 297, 298,
654 296, 300, 301, 281, 0, 297, 298, 123, 282, 287,
655 288, 289, 290, 297, 298, 289, 91, 297, 298, 297,
656 298, 59, 300, 301, 302, 303, 304, 305, 306, 297,
657 298, 309, 41, 307, 312, 313, 314, 33, 297, 298,
658 36, 37, 38, 41, 40, 258, 42, 43, 123, 45,
659 125, 126, 297, 298, 297, 298, 297, 298, 297, 298,
660 297, 298, 41, 59, 297, 298, 297, 298, 64, 297,
661 298, 59, 346, 41, 256, 257, 258, 259, 260, 261,
662 41, 263, 264, 265, 266, 267, 268, 269, 270, 271,
663 272, 273, 274, 275, 59, 91, 8, 279, 280, 32,
664 282, 283, 284, 285, 286, 125, 297, 298, 63, 291,
665 292, 293, 294, 295, 296, 13, 144, 299, 307, 272,
666 273, 274, 275, 346, 189, 96, 308, 123, 310, 311,
667 126, -1, 272, 273, 274, 275, 91, 297, 298, 297,
668 298, 281, -1, -1, 297, 298, 91, 287, 288, 289,
669 290, 272, 273, 274, 275, -1, -1, 297, 298, -1,
670 300, 301, 302, 303, 304, 305, 306, -1, 123, 309,
671 91, -1, 312, 313, 314, -1, 297, 298, 123, -1,
672 -1, 256, 257, 258, 259, 260, 261, -1, 263, 264,
673 265, 266, 267, 268, 269, 270, 271, 272, 273, 274,
674 275, -1, 123, -1, 279, 280, -1, 282, 283, 284,
675 285, 286, 272, 273, 274, 275, 291, 292, 293, 294,
676 295, 296, 41, -1, 299, 44, 91, -1, -1, -1,
677 -1, -1, -1, 308, -1, 310, 311, 297, 298, 58,
678 59, -1, -1, -1, 63, -1, 266, 267, 268, -1,
679 270, 271, -1, -1, -1, -1, -1, -1, 123, -1,
680 256, 257, 258, 259, 260, 261, 125, 263, 264, 265,
681 -1, -1, 91, 269, 93, -1, 272, 273, 274, 275,
682 -1, -1, -1, 279, 280, -1, 282, 283, 284, 285,
683 286, -1, -1, -1, -1, 291, 292, 293, 294, 295,
684 296, -1, -1, 299, 123, -1, -1, -1, -1, -1,
685 91, -1, 308, 33, 310, 311, 36, 37, 38, -1,
686 40, 41, 42, 43, 44, 45, 281, -1, -1, -1,
687 -1, -1, 287, 288, 289, 290, -1, -1, 58, 59,
688 -1, -1, 123, 63, 64, 300, 301, 302, 303, 304,
689 305, 306, -1, -1, 309, -1, -1, 312, 313, 314,
690 -1, 306, -1, -1, 309, -1, -1, 312, 313, 314,
691 -1, 91, -1, 93, 33, -1, -1, 36, 37, 38,
692 -1, 40, 41, 42, 43, 44, 45, -1, 309, -1,
693 -1, 312, 313, 314, -1, -1, -1, -1, -1, 58,
694 59, -1, -1, 123, 63, 64, 126, 266, 267, 268,
695 -1, 270, 271, -1, -1, -1, -1, -1, -1, 302,
696 303, 304, -1, 306, 289, 290, -1, -1, -1, -1,
697 -1, 13, -1, 33, 93, -1, 36, 37, 38, -1,
698 40, 306, 42, 43, 309, 45, -1, 312, 313, 314,
699 333, -1, -1, 272, 273, 274, 275, 340, -1, 59,
700 42, 344, 281, 45, 64, -1, -1, 126, 287, 288,
701 289, 290, -1, -1, 357, 358, -1, -1, 297, 298,
702 -1, 300, 301, 302, 303, 304, 305, 306, -1, -1,
703 309, 91, -1, 312, 313, 314, -1, -1, 41, 81,
704 -1, 44, -1, -1, -1, -1, 287, 288, 289, 290,
705 -1, -1, -1, 95, -1, -1, 59, -1, -1, 91,
706 -1, -1, -1, 123, 305, 306, 126, -1, 309, -1,
707 -1, 312, 313, 314, -1, -1, -1, 257, 258, 259,
708 260, 261, -1, 263, 264, 265, -1, -1, -1, 269,
709 93, 123, 272, 273, 274, 275, -1, -1, -1, 141,
710 280, 281, 282, 283, 284, 285, 286, 287, 288, 289,
711 290, 291, 292, 293, 294, 295, 296, 297, 298, 299,
712 300, 301, 302, 303, 304, 305, 306, -1, 308, 309,
713 310, 311, 312, 313, 314, -1, 178, -1, 257, 258,
714 259, 260, 261, 185, 263, 264, 265, -1, -1, -1,
715 269, -1, -1, 272, 273, 274, 275, -1, -1, -1,
716 -1, 280, 281, 282, 283, 284, 285, 286, 287, 288,
717 289, 290, 291, 292, 293, 294, 295, 296, 297, 298,
718 299, 300, 301, 302, 303, 304, 305, 306, -1, 308,
719 309, 310, 311, 312, 313, 314, 256, 257, 258, 259,
720 260, 261, -1, 263, 264, 265, -1, -1, -1, 269,
721 -1, 91, 272, 273, 274, 275, -1, -1, -1, 279,
722 280, -1, 282, 283, 284, 285, 286, -1, -1, 91,
723 43, 291, 292, 293, 294, 295, 296, 33, 51, 299,
724 36, 37, 38, 123, 40, -1, 42, 43, 308, 45,
725 310, 311, -1, -1, -1, 287, -1, 289, 290, -1,
726 -1, 123, -1, 59, -1, -1, -1, -1, 64, 272,
727 273, 274, 275, 305, 306, -1, -1, 309, 91, -1,
728 312, 313, 314, -1, -1, -1, -1, -1, -1, -1,
729 -1, -1, -1, 33, 297, 91, 36, 37, 38, -1,
730 40, 114, 42, 43, 26, 45, -1, -1, -1, 122,
731 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
732 -1, 43, 44, -1, 64, -1, -1, 123, 50, -1,
733 126, -1, -1, -1, -1, -1, -1, -1, -1, -1,
734 62, 63, 64, 65, -1, -1, -1, -1, -1, 33,
735 -1, 91, 36, 37, 38, -1, 40, -1, 42, 43,
736 -1, 45, -1, -1, -1, -1, -1, -1, -1, -1,
737 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
738 64, -1, -1, 123, -1, 107, 126, -1, -1, -1,
739 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
740 -1, -1, -1, -1, -1, -1, -1, 91, -1, 289,
741 290, -1, 33, -1, -1, 36, 37, 38, -1, 40,
742 -1, 42, 43, -1, 45, 305, 306, 289, -1, 309,
743 -1, -1, 312, 313, 314, -1, 249, -1, -1, 123,
744 -1, 254, 126, 64, 306, -1, -1, 309, -1, -1,
745 312, 313, 314, -1, -1, -1, -1, -1, -1, -1,
746 256, 257, 258, 259, 260, 261, -1, 263, 264, 265,
747 91, -1, -1, 269, -1, -1, 272, 273, 274, 275,
748 -1, -1, -1, 279, 280, -1, 282, 283, 284, 285,
749 286, -1, -1, -1, -1, 291, 292, 293, 294, 295,
750 296, 91, 123, 299, -1, 126, -1, -1, -1, -1,
751 -1, -1, 308, 41, 310, 311, 44, 257, 258, 259,
752 260, 261, 262, 263, 264, 265, -1, -1, -1, 269,
753 -1, -1, -1, 123, -1, 63, -1, -1, -1, -1,
754 280, -1, 282, 283, 284, 285, 286, -1, -1, -1,
755 -1, 291, 292, 293, 294, 295, 296, -1, -1, 299,
756 -1, -1, -1, 91, -1, -1, -1, 41, 308, -1,
757 310, 311, -1, 257, 258, 259, 260, 261, -1, 263,
758 264, 265, -1, -1, -1, 269, -1, -1, -1, 63,
759 -1, -1, -1, -1, -1, 123, 280, -1, 282, 283,
760 284, 285, 286, -1, -1, -1, -1, 291, 292, 293,
761 294, 295, 296, -1, -1, 299, -1, 91, -1, -1,
762 -1, -1, -1, -1, 308, -1, 310, 311, -1, -1,
763 -1, -1, -1, -1, -1, -1, 257, 258, 259, 260,
764 261, -1, 263, 264, 265, -1, -1, -1, 269, 123,
765 -1, -1, -1, -1, -1, -1, -1, -1, -1, 280,
766 -1, 282, 283, 284, 285, 286, -1, -1, -1, 91,
767 291, 292, 293, 294, 295, 296, 33, -1, 299, 36,
768 37, 38, -1, 40, -1, 42, 43, 308, 45, 310,
769 311, -1, -1, -1, -1, -1, -1, 287, 288, 289,
770 290, 123, 59, -1, -1, -1, -1, 64, -1, -1,
771 -1, 301, 302, 303, 304, 305, 306, -1, -1, 309,
772 -1, -1, 312, 313, 314, -1, -1, -1, -1, -1,
773 -1, -1, 33, -1, 91, 36, 37, 38, -1, 40,
774 41, 42, 43, -1, 45, -1, -1, -1, -1, -1,
775 -1, -1, -1, 281, -1, -1, -1, -1, -1, 287,
776 288, 289, 290, 64, -1, -1, -1, -1, -1, 126,
777 -1, -1, 300, 301, 302, 303, 304, 305, 306, -1,
778 -1, 309, -1, -1, 312, 313, 314, -1, 33, -1,
779 91, 36, 37, 38, -1, 40, -1, 42, 43, -1,
780 45, -1, -1, -1, -1, -1, -1, 281, -1, -1,
781 -1, -1, -1, 287, 288, 289, 290, -1, -1, 64,
782 -1, -1, -1, -1, -1, 126, 300, 301, 302, 303,
783 304, 305, 306, -1, -1, 309, -1, -1, 312, 313,
784 314, -1, -1, -1, -1, -1, 91, 33, 93, -1,
785 36, 37, 38, -1, 40, 41, 42, 43, -1, 45,
786 -1, -1, -1, -1, -1, 287, 288, 289, 290, -1,
787 -1, -1, -1, -1, -1, -1, -1, -1, 64, -1,
788 -1, 126, 304, 305, 306, -1, -1, 309, -1, -1,
789 312, 313, 314, -1, -1, -1, 41, -1, -1, 44,
790 257, 258, 259, 260, 261, 91, 263, 264, 265, -1,
791 -1, -1, 269, 58, 59, -1, -1, -1, 63, -1,
792 -1, -1, -1, 280, -1, 282, 283, 284, 285, 286,
793 -1, -1, -1, -1, 291, 292, 293, 294, 295, 296,
794 126, -1, 299, -1, -1, -1, -1, -1, 93, -1,
795 -1, 308, 41, 310, 311, 44, 257, 258, 259, 260,
796 261, -1, 263, 264, 265, -1, -1, -1, 269, 58,
797 59, -1, -1, -1, 63, -1, -1, -1, -1, 280,
798 -1, 282, 283, 284, 285, 286, -1, -1, -1, -1,
799 291, 292, 293, 294, 295, 296, -1, -1, 299, -1,
800 -1, -1, -1, -1, 93, -1, -1, 308, -1, 310,
801 311, -1, 257, 258, 259, 260, 261, -1, 263, 264,
802 265, -1, 33, -1, 269, 36, 37, 38, -1, 40,
803 41, 42, 43, -1, 45, 280, -1, 282, 283, 284,
804 285, 286, -1, -1, -1, -1, 291, 292, 293, 294,
805 295, 296, -1, 64, 299, -1, -1, -1, -1, -1,
806 -1, -1, -1, 308, -1, 310, 311, -1, -1, -1,
807 -1, 257, 258, 259, 260, 261, -1, 263, 264, 265,
808 91, 33, -1, 269, 36, 37, 38, -1, 40, -1,
809 42, 43, -1, 45, 280, -1, 282, 283, 284, 285,
810 286, -1, -1, -1, -1, 291, 292, 293, 294, 295,
811 296, -1, 64, 299, -1, 126, -1, -1, -1, -1,
812 -1, -1, 308, -1, 310, 311, -1, 272, 273, 274,
813 275, -1, -1, -1, -1, -1, 281, 33, -1, 91,
814 36, 37, 38, 288, 40, 41, 42, 43, -1, 45,
815 -1, -1, 297, 298, -1, 300, 301, 302, 303, 304,
816 -1, -1, -1, -1, -1, -1, -1, -1, 64, -1,
817 -1, -1, -1, -1, 126, -1, -1, -1, -1, -1,
818 -1, -1, -1, 272, 273, 274, 275, -1, -1, -1,
819 -1, -1, 281, 33, -1, 91, 36, 37, 38, -1,
820 40, 41, 42, 43, -1, 45, -1, -1, 297, 298,
821 -1, 300, 301, 302, 303, 304, -1, -1, -1, -1,
822 -1, -1, -1, -1, 64, -1, -1, -1, -1, -1,
823 126, -1, -1, -1, -1, -1, -1, -1, -1, -1,
824 -1, -1, -1, -1, -1, -1, 257, 258, 259, 260,
825 261, 91, 263, 264, 265, -1, 33, -1, 269, 36,
826 37, 38, -1, 40, 41, 42, 43, -1, 45, 280,
827 -1, 282, 283, 284, 285, 286, -1, -1, -1, -1,
828 291, 292, 293, 294, 295, 296, 126, 64, 299, -1,
829 -1, -1, -1, -1, -1, -1, -1, 308, -1, 310,
830 311, -1, -1, -1, 256, 257, 258, 259, 260, 261,
831 -1, 263, 264, 265, 91, -1, -1, 269, -1, -1,
832 -1, -1, -1, -1, -1, -1, -1, -1, 280, -1,
833 282, 283, 284, 285, 286, -1, -1, -1, -1, 291,
834 292, 293, 294, 295, 296, -1, -1, 299, -1, 126,
835 91, -1, -1, -1, 41, -1, 308, 44, 310, 311,
836 -1, 257, 258, 259, 260, 261, -1, 263, 264, 265,
837 -1, 58, 59, 269, -1, -1, 63, -1, -1, -1,
838 -1, -1, 123, -1, 280, -1, 282, 283, 284, 285,
839 286, -1, -1, -1, -1, 291, 292, 293, 294, 295,
840 296, -1, -1, 299, 91, -1, 93, -1, -1, -1,
841 -1, -1, 308, -1, 310, 311, -1, 257, 258, 259,
842 260, 261, -1, 263, 264, 265, -1, 33, -1, 269,
843 36, 37, 38, -1, 40, -1, 42, 43, -1, 45,
844 280, -1, 282, 283, 284, 285, 286, -1, -1, -1,
845 -1, 291, 292, 293, 294, 295, 296, -1, 64, 299,
846 -1, -1, -1, -1, -1, -1, -1, -1, 308, -1,
847 310, 311, -1, -1, -1, -1, 41, -1, -1, 44,
848 257, 258, 259, 260, 261, 91, 263, 264, 265, -1,
849 -1, -1, 269, 58, 59, -1, -1, -1, 63, -1,
850 -1, -1, -1, 280, -1, 282, 283, 284, 285, 286,
851 -1, -1, -1, -1, 291, 292, 293, 294, 295, 296,
852 126, -1, 299, 41, -1, -1, 44, -1, 93, -1,
853 -1, 308, -1, 310, 311, -1, -1, -1, -1, -1,
854 58, 59, -1, -1, -1, 63, 287, 288, 289, 290,
855 -1, -1, -1, -1, -1, -1, -1, -1, 123, -1,
856 -1, 302, 303, 304, 305, 306, -1, -1, 309, -1,
857 -1, 312, 313, 314, -1, 93, -1, -1, -1, -1,
858 -1, -1, -1, -1, -1, 272, 273, 274, 275, -1,
859 41, -1, -1, -1, 281, -1, -1, -1, -1, -1,
860 287, 288, 289, 290, -1, 123, -1, 58, 59, -1,
861 297, 298, 63, 300, 301, 302, 303, 304, 305, 306,
862 -1, -1, 309, -1, -1, 312, 313, 314, -1, -1,
863 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
864 91, -1, 93, -1, 41, -1, -1, -1, -1, -1,
865 -1, 257, 258, 259, 260, 261, -1, 263, 264, 265,
866 -1, 58, 59, 269, -1, -1, 63, -1, -1, -1,
867 -1, -1, 123, -1, 280, -1, 282, 283, 284, 285,
868 286, -1, -1, -1, -1, 291, 292, 293, 294, 295,
869 296, -1, -1, 299, 91, -1, 93, -1, -1, -1,
870 41, -1, 308, 44, 310, 311, -1, 272, 273, 274,
871 275, -1, -1, -1, -1, -1, 281, 58, 59, -1,
872 -1, -1, 287, 288, 289, 290, 123, -1, -1, -1,
873 -1, -1, 297, 298, -1, 300, 301, 302, 303, 304,
874 305, 306, -1, -1, 309, -1, -1, 312, 313, 314,
875 -1, -1, 93, -1, 272, 273, 274, 275, -1, 41,
876 -1, -1, 44, 281, -1, -1, -1, -1, -1, 287,
877 288, 289, 290, -1, -1, -1, 58, 59, -1, 297,
878 298, 63, 300, 301, 302, 303, 304, 305, 306, 25,
879 26, 309, -1, -1, 312, 313, 314, -1, -1, -1,
880 -1, 37, -1, -1, -1, -1, -1, 43, 44, 45,
881 -1, 93, -1, -1, 50, -1, -1, -1, -1, -1,
882 -1, 272, 273, 274, 275, -1, 62, 63, 64, 65,
883 281, -1, -1, -1, -1, -1, 287, 288, 289, 290,
884 -1, 123, 41, -1, -1, 44, 297, 298, -1, 300,
885 301, 302, 303, 304, 305, 306, -1, -1, 309, 58,
886 59, 312, 313, 314, 63, -1, -1, -1, -1, -1,
887 -1, 107, -1, -1, -1, 272, 273, 274, 275, -1,
888 -1, -1, -1, -1, 281, -1, -1, -1, -1, -1,
889 287, 288, 289, 290, 93, -1, 41, -1, -1, -1,
890 297, 298, -1, 300, 301, 302, 303, 304, 305, 306,
891 -1, -1, 309, 58, 59, 312, 313, 314, 63, -1,
892 -1, -1, -1, -1, 123, -1, -1, -1, -1, -1,
893 166, 272, 273, 274, 275, -1, -1, -1, -1, -1,
894 -1, -1, -1, -1, 41, -1, 91, 44, 93, -1,
895 -1, -1, -1, -1, 190, -1, 297, 298, -1, 300,
896 -1, 58, 59, -1, -1, -1, 63, -1, -1, -1,
897 -1, -1, -1, -1, -1, -1, -1, -1, 123, -1,
898 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
899 272, 273, 274, 275, -1, 41, 93, -1, 44, 281,
900 -1, -1, -1, -1, -1, 287, 288, 289, 290, -1,
901 -1, -1, 58, 59, -1, 297, 298, 63, 300, 301,
902 302, 303, 304, 305, 306, -1, 123, 309, -1, -1,
903 312, 313, 314, -1, -1, -1, -1, -1, -1, -1,
904 41, -1, -1, 44, -1, -1, -1, 93, -1, -1,
905 -1, -1, -1, -1, -1, -1, -1, 58, 59, -1,
906 -1, -1, 63, -1, -1, -1, -1, -1, -1, -1,
907 -1, -1, -1, 272, 273, 274, 275, -1, -1, -1,
908 -1, -1, 281, -1, -1, -1, -1, -1, 287, 288,
909 289, 290, 93, -1, 41, -1, -1, 44, 297, 298,
910 -1, 300, 301, 302, 303, 304, 305, 306, -1, -1,
911 309, 58, 59, 312, 313, 314, 63, -1, -1, -1,
912 -1, -1, -1, -1, -1, -1, -1, 272, 273, 274,
913 275, -1, -1, -1, -1, -1, 281, -1, -1, -1,
914 -1, -1, 287, 288, 289, 290, 93, -1, -1, -1,
915 -1, -1, 297, 298, -1, 300, 301, 302, 303, 304,
916 305, 306, -1, -1, 309, -1, -1, 312, 313, 314,
917 -1, -1, -1, -1, -1, 272, 273, 274, 275, -1,
918 41, -1, -1, 44, 281, -1, -1, -1, -1, -1,
919 287, 288, 289, 290, -1, -1, -1, 58, 59, -1,
920 297, 298, 63, 300, 301, 302, 303, 304, 305, 306,
921 -1, -1, 309, -1, -1, 312, 313, 314, -1, -1,
922 -1, -1, -1, -1, -1, -1, 272, 273, 274, 275,
923 -1, 41, 93, -1, 44, 281, -1, -1, -1, -1,
924 -1, 287, 288, 289, 290, -1, -1, -1, 58, 59,
925 -1, 297, 298, 63, 300, 301, 302, 303, 304, 305,
926 306, -1, -1, 309, -1, -1, 312, 313, 314, -1,
927 -1, 272, 273, 274, 275, -1, -1, -1, -1, -1,
928 281, -1, -1, 93, -1, -1, 287, 288, 289, 290,
929 -1, -1, 41, -1, -1, 44, 297, 298, -1, 300,
930 301, 302, 303, 304, 305, 306, -1, -1, 309, 58,
931 59, 312, 313, 314, 63, -1, -1, -1, -1, -1,
932 -1, -1, -1, -1, -1, 272, 273, 274, 275, -1,
933 41, -1, -1, 44, 281, -1, -1, -1, -1, -1,
934 287, 288, 289, 290, 93, -1, -1, 58, 59, -1,
935 297, 298, 63, 300, 301, 302, 303, 304, 305, 306,
936 -1, -1, 309, -1, -1, 312, 313, 314, -1, 41,
937 -1, -1, 44, -1, -1, -1, -1, -1, -1, -1,
938 41, -1, 93, 44, -1, -1, 58, 59, -1, -1,
939 -1, 63, -1, -1, -1, -1, -1, 58, 59, -1,
940 -1, -1, 63, -1, -1, -1, -1, -1, -1, -1,
941 -1, 272, 273, 274, 275, -1, 41, -1, -1, 44,
942 281, 93, -1, -1, -1, -1, 287, 288, 289, 290,
943 -1, -1, 93, 58, 59, -1, 297, 298, 63, 300,
944 301, 302, 303, 304, 305, 306, -1, -1, 309, -1,
945 -1, 312, 313, 314, -1, -1, -1, -1, -1, -1,
946 -1, -1, 272, 273, 274, 275, -1, 41, 93, -1,
947 44, 281, -1, -1, -1, -1, -1, 287, 288, 289,
948 290, -1, -1, -1, 58, 59, -1, 297, 298, 63,
949 300, 301, 302, 303, 304, 305, 306, -1, -1, 309,
950 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
951 -1, -1, -1, 41, -1, -1, 44, -1, -1, 93,
952 -1, -1, -1, 272, 273, 274, 275, -1, -1, -1,
953 58, 59, 281, -1, -1, 63, -1, -1, 287, 288,
954 289, 290, -1, -1, -1, -1, -1, -1, 297, 298,
955 -1, 300, 301, 302, 303, 304, 305, 306, -1, -1,
956 309, 272, 273, 274, 275, 93, -1, -1, -1, -1,
957 281, -1, -1, -1, -1, -1, 287, 288, 289, 290,
958 -1, -1, -1, -1, -1, -1, 297, 298, -1, 300,
959 301, 302, 303, 304, 305, 306, -1, -1, -1, -1,
960 272, 273, 274, 275, -1, 41, -1, -1, 44, 281,
961 -1, 272, 273, 274, 275, 287, 288, 289, 290, -1,
962 281, -1, 58, 59, -1, 297, 298, 63, 300, 301,
963 302, 303, 304, 305, 306, -1, 297, 298, -1, 300,
964 301, 302, 303, 304, -1, -1, -1, 272, 273, 274,
965 275, -1, 41, -1, -1, 44, 281, 93, -1, -1,
966 -1, -1, 287, 288, 289, 290, -1, -1, -1, 58,
967 59, -1, 297, 298, 63, 300, 301, 302, 303, 304,
968 305, 306, -1, -1, -1, -1, -1, -1, 41, -1,
969 -1, 44, -1, -1, -1, -1, -1, -1, 272, 273,
970 274, 275, -1, -1, 93, 58, 59, 281, -1, -1,
971 63, -1, -1, 287, 288, 289, 290, -1, -1, -1,
972 -1, -1, -1, 297, 298, -1, 300, 301, 302, 303,
973 304, 305, 306, 41, -1, -1, 44, -1, -1, -1,
974 93, -1, -1, -1, 272, 273, 274, 275, -1, -1,
975 58, 59, -1, 281, -1, 63, -1, -1, -1, 287,
976 288, 289, 290, -1, -1, -1, -1, -1, -1, 297,
977 298, -1, 300, 301, 302, 303, 304, 305, 306, 41,
978 -1, -1, 44, -1, -1, 93, -1, -1, -1, -1,
979 -1, -1, -1, -1, -1, -1, 58, 59, -1, -1,
980 -1, 63, -1, -1, -1, -1, -1, -1, -1, -1,
981 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
982 -1, -1, -1, -1, 41, -1, -1, 44, -1, -1,
983 -1, 93, -1, -1, -1, -1, 272, 273, 274, 275,
984 -1, 58, 59, -1, -1, 281, 63, -1, -1, -1,
985 -1, 287, 288, 289, 290, -1, -1, -1, -1, -1,
986 -1, 297, 298, -1, 300, 301, 302, 303, 304, 305,
987 306, 41, -1, -1, 44, -1, 93, -1, -1, -1,
988 -1, -1, -1, 272, 273, 274, 275, -1, 58, 59,
989 -1, -1, 281, 63, -1, -1, -1, -1, 287, 288,
990 289, 290, -1, -1, -1, -1, -1, 41, 297, 298,
991 44, 300, 301, 302, 303, 304, 305, 306, -1, 272,
992 273, 274, 275, 93, 58, 59, -1, -1, 281, 63,
993 -1, -1, -1, -1, 287, 288, 289, 290, -1, -1,
994 -1, -1, -1, -1, 297, 298, -1, 300, 301, 302,
995 303, 304, 305, 41, -1, -1, 44, -1, -1, 93,
996 -1, -1, -1, -1, 272, 273, 274, 275, -1, -1,
997 58, 59, -1, 281, -1, 63, -1, -1, -1, 287,
998 288, -1, 290, -1, -1, -1, -1, -1, -1, 297,
999 298, -1, 300, 301, 302, 303, 304, 305, 41, -1,
1000 -1, 44, -1, -1, -1, 93, -1, -1, -1, -1,
1001 272, 273, 274, 275, -1, 58, 59, -1, -1, 281,
1002 63, -1, 91, -1, -1, 287, 288, -1, -1, -1,
1003 41, -1, -1, 44, -1, 297, 298, -1, 300, 301,
1004 302, 303, 304, 305, -1, -1, -1, 58, 59, -1,
1005 93, -1, 63, -1, 123, 272, 273, 274, 275, -1,
1006 -1, -1, -1, -1, 281, -1, -1, -1, -1, -1,
1007 287, 288, 41, -1, -1, 44, -1, -1, -1, -1,
1008 297, 298, 93, 300, 301, 302, 303, 304, -1, 58,
1009 59, -1, 41, -1, 63, 44, -1, -1, -1, -1,
1010 -1, -1, 272, 273, 274, 275, -1, -1, -1, 58,
1011 59, 281, -1, -1, -1, 58, -1, 287, 288, 41,
1012 63, -1, 44, -1, 93, -1, -1, 297, 298, -1,
1013 300, 301, 302, 303, 304, -1, 58, 59, 272, 273,
1014 274, 275, -1, -1, 93, -1, -1, 281, 91, -1,
1015 -1, -1, -1, 287, 288, 41, -1, -1, 44, -1,
1016 -1, -1, -1, 297, 298, -1, 300, 301, 302, 303,
1017 304, 93, 58, 59, -1, -1, -1, -1, -1, -1,
1018 123, -1, -1, -1, 272, 273, 274, 275, -1, -1,
1019 -1, -1, -1, 281, -1, -1, -1, -1, -1, 287,
1020 288, -1, -1, -1, -1, -1, -1, 93, -1, 297,
1021 298, 63, 300, 301, 302, 303, 304, -1, 287, 288,
1022 289, 290, -1, -1, -1, -1, -1, -1, -1, 272,
1023 273, 274, 275, -1, 303, 304, 305, 306, 281, 91,
1024 309, -1, -1, 312, 313, 314, -1, -1, -1, -1,
1025 -1, -1, -1, -1, 297, 298, -1, 300, 301, 302,
1026 303, 272, 273, 274, 275, -1, -1, -1, -1, -1,
1027 281, 123, -1, -1, -1, -1, -1, -1, -1, -1,
1028 -1, -1, -1, -1, -1, -1, 297, 298, -1, 300,
1029 301, 302, -1, -1, -1, -1, -1, -1, -1, -1,
1030 -1, -1, -1, 272, 273, 274, 275, -1, -1, -1,
1031 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1032 -1, -1, -1, 272, 273, 274, 275, -1, 297, 298,
1033 -1, 300, -1, -1, -1, -1, -1, -1, 281, -1,
1034 -1, -1, -1, -1, 287, 288, 289, 290, 297, 298,
1035 272, 273, 274, 275, -1, -1, -1, 300, 301, 302,
1036 303, 304, 305, 306, -1, -1, 309, -1, -1, 312,
1037 313, 314, -1, -1, -1, 297, 298, -1, -1, -1,
1038 -1, -1, -1, -1, 30, -1, 272, 273, 274, 275,
1039 -1, -1, 38, -1, -1, -1, 42, -1, -1, 45,
1040 -1, -1, -1, -1, -1, -1, 52, 53, 54, 55,
1041 56, 297, 298, 59, 60, -1, -1, -1, -1, -1,
1042 66, -1, -1, -1, -1, -1, -1, -1, -1, 281,
1043 -1, -1, -1, -1, -1, 287, 288, 289, 290, -1,
1044 -1, -1, -1, -1, -1, -1, -1, 93, -1, 301,
1045 302, 303, 304, 305, 306, -1, -1, 309, -1, -1,
1046 312, 313, 314, -1, -1, -1, -1, -1, -1, -1,
1047 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1048 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1049 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1050 -1, -1, -1, -1, 150, 151, 152, 153, 154, 155,
1051 156, 157, 158, 159, 160, 161, 162, 163, -1, -1,
1052 -1, -1, -1, -1, -1, -1, -1, -1, -1, 175,
1053 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1054 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1055 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1056 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1057 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1058 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1059 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1060 -1, -1, -1, -1, -1, -1, -1, 253, -1, -1,
1061 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1062 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1063 -1, -1, -1, -1, -1, -1, -1, -1, 284,
1069 #define YYMAXTOKEN 314
1072 "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,
1073 "'!'",0,0,"'$'","'%'","'&'",0,"'('","')'","'*'","'+'","','","'-'",0,0,0,0,0,0,0,
1074 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,
1075 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,
1076 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,
1077 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1078 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1079 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"WORD","METHOD","FUNCMETH","THING",
1080 "PMFUNC","PRIVATEREF","FUNC0SUB","UNIOPSUB","LSTOPSUB","LABEL","FORMAT","SUB",
1081 "ANONSUB","PACKAGE","USE","WHILE","UNTIL","IF","UNLESS","ELSE","ELSIF",
1082 "CONTINUE","FOR","LOOPEX","DOTDOT","FUNC0","FUNC1","FUNC","UNIOP","LSTOP",
1083 "RELOP","EQOP","MULOP","ADDOP","DOLSHARP","DO","HASHBRACK","NOAMP","LOCAL","MY",
1084 "OROP","ANDOP","NOTOP","ASSIGNOP","OROR","ANDAND","BITOROP","BITANDOP",
1085 "SHIFTOP","MATCHOP","UMINUS","REFGEN","POWOP","PREINC","PREDEC","POSTINC",
1091 "prog : $$1 lineseq",
1092 "block : '{' remember lineseq '}'",
1094 "mblock : '{' mremember lineseq '}'",
1097 "lineseq : lineseq decl",
1098 "lineseq : lineseq line",
1099 "line : label cond",
1102 "line : label sideff ';'",
1105 "sideff : expr IF expr",
1106 "sideff : expr UNLESS expr",
1107 "sideff : expr WHILE expr",
1108 "sideff : expr UNTIL iexpr",
1110 "else : ELSE mblock",
1111 "else : ELSIF '(' mexpr ')' mblock else",
1112 "cond : IF '(' remember mexpr ')' mblock else",
1113 "cond : UNLESS '(' remember miexpr ')' mblock else",
1115 "cont : CONTINUE block",
1116 "loop : label WHILE '(' remember mtexpr ')' mblock cont",
1117 "loop : label UNTIL '(' remember miexpr ')' mblock cont",
1118 "loop : label FOR MY remember my_scalar '(' mexpr ')' mblock cont",
1119 "loop : label FOR scalar '(' remember mexpr ')' mblock cont",
1120 "loop : label FOR '(' remember mexpr ')' mblock cont",
1121 "loop : label FOR '(' remember mnexpr ';' mtexpr ';' mnexpr ')' mblock",
1122 "loop : label block cont",
1138 "format : FORMAT startformsub formname block",
1141 "subrout : SUB startsub subname proto subbody",
1150 "package : PACKAGE WORD ';'",
1151 "package : PACKAGE ';'",
1153 "use : USE startsub $$2 WORD WORD listexpr ';'",
1154 "expr : expr ANDOP expr",
1155 "expr : expr OROP expr",
1157 "argexpr : argexpr ','",
1158 "argexpr : argexpr ',' term",
1160 "listop : LSTOP indirob argexpr",
1161 "listop : FUNC '(' indirob expr ')'",
1162 "listop : term ARROW method '(' listexprcom ')'",
1163 "listop : METHOD indirob listexpr",
1164 "listop : FUNCMETH indirob '(' listexprcom ')'",
1165 "listop : LSTOP listexpr",
1166 "listop : FUNC '(' listexprcom ')'",
1168 "listop : LSTOPSUB startanonsub block $$3 listexpr",
1171 "term : term ASSIGNOP term",
1172 "term : term POWOP term",
1173 "term : term MULOP term",
1174 "term : term ADDOP term",
1175 "term : term SHIFTOP term",
1176 "term : term RELOP term",
1177 "term : term EQOP term",
1178 "term : term BITANDOP term",
1179 "term : term BITOROP term",
1180 "term : term DOTDOT term",
1181 "term : term ANDAND term",
1182 "term : term OROR term",
1183 "term : term '?' term ':' term",
1184 "term : term MATCHOP term",
1189 "term : REFGEN term",
1190 "term : term POSTINC",
1191 "term : term POSTDEC",
1192 "term : PREINC term",
1193 "term : PREDEC term",
1194 "term : local term",
1195 "term : '(' expr ')'",
1197 "term : '[' expr ']'",
1199 "term : HASHBRACK expr ';' '}'",
1200 "term : HASHBRACK ';' '}'",
1201 "term : ANONSUB startanonsub proto block",
1203 "term : star '{' expr ';' '}'",
1205 "term : scalar '[' expr ']'",
1206 "term : term ARROW '[' expr ']'",
1207 "term : term '[' expr ']'",
1211 "term : scalar '{' expr ';' '}'",
1212 "term : term ARROW '{' expr ';' '}'",
1213 "term : term '{' expr ';' '}'",
1214 "term : '(' expr ')' '[' expr ']'",
1215 "term : '(' ')' '[' expr ']'",
1216 "term : ary '[' expr ']'",
1217 "term : ary '{' expr ';' '}'",
1220 "term : amper '(' ')'",
1221 "term : amper '(' expr ')'",
1222 "term : NOAMP WORD listexpr",
1225 "term : DO WORD '(' ')'",
1226 "term : DO WORD '(' expr ')'",
1227 "term : DO scalar '(' ')'",
1228 "term : DO scalar '(' expr ')'",
1229 "term : term ARROW '(' ')'",
1230 "term : term ARROW '(' expr ')'",
1232 "term : LOOPEX term",
1233 "term : NOTOP argexpr",
1235 "term : UNIOP block",
1236 "term : UNIOP term",
1237 "term : UNIOPSUB term",
1239 "term : FUNC0 '(' ')'",
1241 "term : FUNC1 '(' ')'",
1242 "term : FUNC1 '(' expr ')'",
1243 "term : PMFUNC '(' term ')'",
1244 "term : PMFUNC '(' term ',' term ')'",
1248 "listexpr : argexpr",
1250 "listexprcom : expr",
1251 "listexprcom : expr ','",
1254 "my_scalar : scalar",
1255 "amper : '&' indirob",
1256 "scalar : '$' indirob",
1257 "ary : '@' indirob",
1258 "hsh : '%' indirob",
1259 "arylen : DOLSHARP indirob",
1260 "star : '*' indirob",
1264 "indirob : PRIVATEREF",
1267 #define yyclearin (yychar=(-1))
1268 #define yyerrok (yyerrflag=0)
1271 #define YYMAXDEPTH YYSTACKSIZE
1275 #define YYSTACKSIZE YYMAXDEPTH
1277 #define YYSTACKSIZE 500
1278 #define YYMAXDEPTH 500
1289 #line 1360 "perly.c"
1290 #define YYABORT goto yyabort
1291 #define YYACCEPT goto yyaccept
1292 #define YYERROR goto yyerrlab
1306 yydestruct(void *ptr)
1308 struct ysv* ysave = (struct ysv*)ptr;
1309 if (ysave->yyss) Safefree(ysave->yyss);
1310 if (ysave->yyvs) Safefree(ysave->yyvs);
1311 yydebug = ysave->oldyydebug;
1312 yynerrs = ysave->oldyynerrs;
1313 yyerrflag = ysave->oldyyerrflag;
1314 yychar = ysave->oldyychar;
1315 yyval = ysave->oldyyval;
1316 yylval = ysave->oldyylval;
1323 register int yym, yyn, yystate;
1324 register short *yyssp;
1325 register YYSTYPE *yyvsp;
1328 unsigned yystacksize = YYSTACKSIZE;
1333 extern char *getenv();
1337 struct ysv *ysave = (struct ysv*)safemalloc(sizeof(struct ysv));
1338 SAVEDESTRUCTOR(yydestruct, ysave);
1339 ysave->oldyydebug = yydebug;
1340 ysave->oldyynerrs = yynerrs;
1341 ysave->oldyyerrflag = yyerrflag;
1342 ysave->oldyychar = yychar;
1343 ysave->oldyyval = yyval;
1344 ysave->oldyylval = yylval;
1347 if (yys = getenv("YYDEBUG"))
1350 if (yyn >= '0' && yyn <= '9')
1351 yydebug = yyn - '0';
1360 ** Initialize private stacks (yyparse may be called from an action)
1362 ysave->yyss = yyss = (short*)safemalloc(yystacksize*sizeof(short));
1363 ysave->yyvs = yyvs = (YYSTYPE*)safemalloc(yystacksize*sizeof(YYSTYPE));
1369 *yyssp = yystate = 0;
1372 if (yyn = yydefred[yystate]) goto yyreduce;
1375 if ((yychar = yylex()) < 0) yychar = 0;
1380 if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
1381 if (!yys) yys = "illegal-symbol";
1382 PerlIO_printf(Perl_debug_log, "yydebug: state %d, reading %d (%s)\n", yystate,
1387 if ((yyn = yysindex[yystate]) && (yyn += yychar) >= 0 &&
1388 yyn <= YYTABLESIZE && yycheck[yyn] == yychar)
1392 PerlIO_printf(Perl_debug_log, "yydebug: state %d, shifting to state %d\n",
1393 yystate, yytable[yyn]);
1395 if (yyssp >= yyss + yystacksize - 1)
1398 ** reallocate and recover. Note that pointers
1399 ** have to be reset, or bad things will happen
1401 int yyps_index = (yyssp - yyss);
1402 int yypv_index = (yyvsp - yyvs);
1403 yystacksize += YYSTACKSIZE;
1404 ysave->yyvs = yyvs =
1405 (YYSTYPE*)realloc((char*)yyvs,yystacksize * sizeof(YYSTYPE));
1406 ysave->yyss = yyss =
1407 (short*)realloc((char*)yyss,yystacksize * sizeof(short));
1410 yyssp = yyss + yyps_index;
1411 yyvsp = yyvs + yypv_index;
1413 *++yyssp = yystate = yytable[yyn];
1416 if (yyerrflag > 0) --yyerrflag;
1419 if ((yyn = yyrindex[yystate]) && (yyn += yychar) >= 0 &&
1420 yyn <= YYTABLESIZE && yycheck[yyn] == yychar)
1425 if (yyerrflag) goto yyinrecovery;
1430 yyerror("syntax error");
1442 if ((yyn = yysindex[*yyssp]) && (yyn += YYERRCODE) >= 0 &&
1443 yyn <= YYTABLESIZE && yycheck[yyn] == YYERRCODE)
1447 PerlIO_printf(Perl_debug_log,
1448 "yydebug: state %d, error recovery shifting to state %d\n",
1449 *yyssp, yytable[yyn]);
1451 if (yyssp >= yyss + yystacksize - 1)
1454 ** reallocate and recover. Note that pointers
1455 ** have to be reset, or bad things will happen
1457 int yyps_index = (yyssp - yyss);
1458 int yypv_index = (yyvsp - yyvs);
1459 yystacksize += YYSTACKSIZE;
1460 ysave->yyvs = yyvs = (YYSTYPE*)realloc((char*)yyvs,
1461 yystacksize * sizeof(YYSTYPE));
1462 ysave->yyss = yyss = (short*)realloc((char*)yyss,
1463 yystacksize * sizeof(short));
1466 yyssp = yyss + yyps_index;
1467 yyvsp = yyvs + yypv_index;
1469 *++yyssp = yystate = yytable[yyn];
1477 PerlIO_printf(Perl_debug_log,
1478 "yydebug: error recovery discarding state %d\n",
1481 if (yyssp <= yyss) goto yyabort;
1489 if (yychar == 0) goto yyabort;
1494 if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
1495 if (!yys) yys = "illegal-symbol";
1496 PerlIO_printf(Perl_debug_log,
1497 "yydebug: state %d, error recovery discards token %d (%s)\n",
1498 yystate, yychar, yys);
1507 PerlIO_printf(Perl_debug_log, "yydebug: state %d, reducing by rule %d (%s)\n",
1508 yystate, yyn, yyrule[yyn]);
1511 yyval = yyvsp[1-yym];
1517 #if defined(YYDEBUG) && defined(DEBUGGING)
1518 yydebug = (debug & 1);
1525 { newPROG(yyvsp[0].opval); }
1529 { if (copline > (line_t)yyvsp[-3].ival)
1530 copline = yyvsp[-3].ival;
1531 yyval.opval = block_end(yyvsp[-2].ival, yyvsp[-1].opval); }
1535 { yyval.ival = block_start(TRUE); }
1539 { if (copline > (line_t)yyvsp[-3].ival)
1540 copline = yyvsp[-3].ival;
1541 yyval.opval = block_end(yyvsp[-2].ival, yyvsp[-1].opval); }
1545 { yyval.ival = block_start(FALSE); }
1549 { yyval.opval = Nullop; }
1553 { yyval.opval = yyvsp[-1].opval; }
1557 { yyval.opval = append_list(OP_LINESEQ,
1558 (LISTOP*)yyvsp[-1].opval, (LISTOP*)yyvsp[0].opval);
1559 pad_reset_pending = TRUE;
1560 if (yyvsp[-1].opval && yyvsp[0].opval) hints |= HINT_BLOCK_SCOPE; }
1564 { yyval.opval = newSTATEOP(0, yyvsp[-1].pval, yyvsp[0].opval); }
1568 { if (yyvsp[-1].pval != Nullch) {
1569 yyval.opval = newSTATEOP(0, yyvsp[-1].pval, newOP(OP_NULL, 0));
1572 yyval.opval = Nullop;
1579 { yyval.opval = newSTATEOP(0, yyvsp[-2].pval, yyvsp[-1].opval);
1584 { yyval.opval = Nullop; }
1588 { yyval.opval = yyvsp[0].opval; }
1592 { yyval.opval = newLOGOP(OP_AND, 0, yyvsp[0].opval, yyvsp[-2].opval); }
1596 { yyval.opval = newLOGOP(OP_OR, 0, yyvsp[0].opval, yyvsp[-2].opval); }
1600 { yyval.opval = newLOOPOP(OPf_PARENS, 1, scalar(yyvsp[0].opval), yyvsp[-2].opval); }
1604 { yyval.opval = newLOOPOP(OPf_PARENS, 1, yyvsp[0].opval, yyvsp[-2].opval);}
1608 { yyval.opval = Nullop; }
1612 { yyval.opval = scope(yyvsp[0].opval); }
1616 { copline = yyvsp[-5].ival;
1617 yyval.opval = newSTATEOP(0, Nullch,
1618 newCONDOP(0, yyvsp[-3].opval, scope(yyvsp[-1].opval), yyvsp[0].opval));
1619 hints |= HINT_BLOCK_SCOPE; }
1623 { copline = yyvsp[-6].ival;
1624 yyval.opval = block_end(yyvsp[-4].ival,
1625 newCONDOP(0, yyvsp[-3].opval, scope(yyvsp[-1].opval), yyvsp[0].opval)); }
1629 { copline = yyvsp[-6].ival;
1630 yyval.opval = block_end(yyvsp[-4].ival,
1631 newCONDOP(0, yyvsp[-3].opval, scope(yyvsp[-1].opval), yyvsp[0].opval)); }
1635 { yyval.opval = Nullop; }
1639 { yyval.opval = scope(yyvsp[0].opval); }
1643 { copline = yyvsp[-6].ival;
1644 yyval.opval = block_end(yyvsp[-4].ival,
1645 newSTATEOP(0, yyvsp[-7].pval,
1646 newWHILEOP(0, 1, (LOOP*)Nullop,
1647 yyvsp[-6].ival, yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval))); }
1651 { copline = yyvsp[-6].ival;
1652 yyval.opval = block_end(yyvsp[-4].ival,
1653 newSTATEOP(0, yyvsp[-7].pval,
1654 newWHILEOP(0, 1, (LOOP*)Nullop,
1655 yyvsp[-6].ival, yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval))); }
1659 { yyval.opval = block_end(yyvsp[-6].ival,
1660 newFOROP(0, yyvsp[-9].pval, yyvsp[-8].ival, yyvsp[-5].opval, yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval)); }
1664 { yyval.opval = block_end(yyvsp[-4].ival,
1665 newFOROP(0, yyvsp[-8].pval, yyvsp[-7].ival, mod(yyvsp[-6].opval, OP_ENTERLOOP),
1666 yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval)); }
1670 { yyval.opval = block_end(yyvsp[-4].ival,
1671 newFOROP(0, yyvsp[-7].pval, yyvsp[-6].ival, Nullop, yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval)); }
1675 { OP *forop = append_elem(OP_LINESEQ,
1676 scalar(yyvsp[-6].opval),
1677 newWHILEOP(0, 1, (LOOP*)Nullop,
1678 yyvsp[-9].ival, scalar(yyvsp[-4].opval),
1679 yyvsp[0].opval, scalar(yyvsp[-2].opval)));
1680 copline = yyvsp[-9].ival;
1681 yyval.opval = block_end(yyvsp[-7].ival, newSTATEOP(0, yyvsp[-10].pval, forop)); }
1685 { yyval.opval = newSTATEOP(0, yyvsp[-2].pval,
1686 newWHILEOP(0, 1, (LOOP*)Nullop,
1687 NOLINE, Nullop, yyvsp[-1].opval, yyvsp[0].opval)); }
1691 { yyval.opval = Nullop; }
1695 { (void)scan_num("1"); yyval.opval = yylval.opval; }
1699 { yyval.opval = invert(scalar(yyvsp[0].opval)); }
1703 { yyval.opval = yyvsp[0].opval; intro_my(); }
1707 { yyval.opval = yyvsp[0].opval; intro_my(); }
1711 { yyval.opval = yyvsp[0].opval; intro_my(); }
1715 { yyval.opval = yyvsp[0].opval; intro_my(); }
1719 { yyval.pval = Nullch; }
1739 { newFORM(yyvsp[-2].ival, yyvsp[-1].opval, yyvsp[0].opval); }
1743 { yyval.opval = yyvsp[0].opval; }
1747 { yyval.opval = Nullop; }
1751 { newSUB(yyvsp[-3].ival, yyvsp[-2].opval, yyvsp[-1].opval, yyvsp[0].opval); }
1755 { yyval.ival = start_subparse(FALSE, 0); }
1759 { yyval.ival = start_subparse(FALSE, CVf_ANON); }
1763 { yyval.ival = start_subparse(TRUE, 0); }
1767 { char *name = SvPV(((SVOP*)yyvsp[0].opval)->op_sv, na);
1768 if (strEQ(name, "BEGIN") || strEQ(name, "END")
1769 || strEQ(name, "INIT"))
1770 CvUNIQUE_on(compcv);
1771 yyval.opval = yyvsp[0].opval; }
1775 { yyval.opval = Nullop; }
1779 { yyval.opval = yyvsp[0].opval; }
1783 { yyval.opval = Nullop; expect = XSTATE; }
1787 { package(yyvsp[-1].opval); }
1791 { package(Nullop); }
1795 { CvUNIQUE_on(compcv); /* It's a BEGIN {} */ }
1799 { utilize(yyvsp[-6].ival, yyvsp[-5].ival, yyvsp[-3].opval, yyvsp[-2].opval, yyvsp[-1].opval); }
1803 { yyval.opval = newLOGOP(OP_AND, 0, yyvsp[-2].opval, yyvsp[0].opval); }
1807 { yyval.opval = newLOGOP(yyvsp[-1].ival, 0, yyvsp[-2].opval, yyvsp[0].opval); }
1811 { yyval.opval = yyvsp[-1].opval; }
1815 { yyval.opval = append_elem(OP_LIST, yyvsp[-2].opval, yyvsp[0].opval); }
1819 { yyval.opval = convert(yyvsp[-2].ival, OPf_STACKED,
1820 prepend_elem(OP_LIST, newGVREF(yyvsp[-2].ival,yyvsp[-1].opval), yyvsp[0].opval) ); }
1824 { yyval.opval = convert(yyvsp[-4].ival, OPf_STACKED,
1825 prepend_elem(OP_LIST, newGVREF(yyvsp[-4].ival,yyvsp[-2].opval), yyvsp[-1].opval) ); }
1829 { yyval.opval = convert(OP_ENTERSUB, OPf_STACKED,
1830 append_elem(OP_LIST,
1831 prepend_elem(OP_LIST, scalar(yyvsp[-5].opval), yyvsp[-1].opval),
1832 newUNOP(OP_METHOD, 0, yyvsp[-3].opval))); }
1836 { yyval.opval = convert(OP_ENTERSUB, OPf_STACKED,
1837 append_elem(OP_LIST,
1838 prepend_elem(OP_LIST, yyvsp[-1].opval, yyvsp[0].opval),
1839 newUNOP(OP_METHOD, 0, yyvsp[-2].opval))); }
1843 { yyval.opval = convert(OP_ENTERSUB, OPf_STACKED,
1844 append_elem(OP_LIST,
1845 prepend_elem(OP_LIST, yyvsp[-3].opval, yyvsp[-1].opval),
1846 newUNOP(OP_METHOD, 0, yyvsp[-4].opval))); }
1850 { yyval.opval = convert(yyvsp[-1].ival, 0, yyvsp[0].opval); }
1854 { yyval.opval = convert(yyvsp[-3].ival, 0, yyvsp[-1].opval); }
1858 { yyvsp[0].opval = newANONSUB(yyvsp[-1].ival, 0, yyvsp[0].opval); }
1862 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
1863 append_elem(OP_LIST,
1864 prepend_elem(OP_LIST, yyvsp[-2].opval, yyvsp[0].opval), yyvsp[-4].opval)); }
1868 { yyval.opval = newASSIGNOP(OPf_STACKED, yyvsp[-2].opval, yyvsp[-1].ival, yyvsp[0].opval); }
1872 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1876 { if (yyvsp[-1].ival != OP_REPEAT)
1877 scalar(yyvsp[-2].opval);
1878 yyval.opval = newBINOP(yyvsp[-1].ival, 0, yyvsp[-2].opval, scalar(yyvsp[0].opval)); }
1882 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1886 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1890 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1894 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1898 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1902 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1906 { yyval.opval = newRANGE(yyvsp[-1].ival, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval));}
1910 { yyval.opval = newLOGOP(OP_AND, 0, yyvsp[-2].opval, yyvsp[0].opval); }
1914 { yyval.opval = newLOGOP(OP_OR, 0, yyvsp[-2].opval, yyvsp[0].opval); }
1918 { yyval.opval = newCONDOP(0, yyvsp[-4].opval, yyvsp[-2].opval, yyvsp[0].opval); }
1922 { yyval.opval = bind_match(yyvsp[-1].ival, yyvsp[-2].opval, yyvsp[0].opval); }
1926 { yyval.opval = newUNOP(OP_NEGATE, 0, scalar(yyvsp[0].opval)); }
1930 { yyval.opval = yyvsp[0].opval; }
1934 { yyval.opval = newUNOP(OP_NOT, 0, scalar(yyvsp[0].opval)); }
1938 { yyval.opval = newUNOP(OP_COMPLEMENT, 0, scalar(yyvsp[0].opval));}
1942 { yyval.opval = newUNOP(OP_REFGEN, 0, mod(yyvsp[0].opval,OP_REFGEN)); }
1946 { yyval.opval = newUNOP(OP_POSTINC, 0,
1947 mod(scalar(yyvsp[-1].opval), OP_POSTINC)); }
1951 { yyval.opval = newUNOP(OP_POSTDEC, 0,
1952 mod(scalar(yyvsp[-1].opval), OP_POSTDEC)); }
1956 { yyval.opval = newUNOP(OP_PREINC, 0,
1957 mod(scalar(yyvsp[0].opval), OP_PREINC)); }
1961 { yyval.opval = newUNOP(OP_PREDEC, 0,
1962 mod(scalar(yyvsp[0].opval), OP_PREDEC)); }
1966 { yyval.opval = localize(yyvsp[0].opval,yyvsp[-1].ival); }
1970 { yyval.opval = sawparens(yyvsp[-1].opval); }
1974 { yyval.opval = sawparens(newNULLLIST()); }
1978 { yyval.opval = newANONLIST(yyvsp[-1].opval); }
1982 { yyval.opval = newANONLIST(Nullop); }
1986 { yyval.opval = newANONHASH(yyvsp[-2].opval); }
1990 { yyval.opval = newANONHASH(Nullop); }
1994 { yyval.opval = newANONSUB(yyvsp[-2].ival, yyvsp[-1].opval, yyvsp[0].opval); }
1998 { yyval.opval = yyvsp[0].opval; }
2002 { yyval.opval = newBINOP(OP_GELEM, 0, newGVREF(0,yyvsp[-4].opval), yyvsp[-2].opval); }
2006 { yyval.opval = yyvsp[0].opval; }
2010 { yyval.opval = newBINOP(OP_AELEM, 0, oopsAV(yyvsp[-3].opval), scalar(yyvsp[-1].opval)); }
2014 { yyval.opval = newBINOP(OP_AELEM, 0,
2015 ref(newAVREF(yyvsp[-4].opval),OP_RV2AV),
2016 scalar(yyvsp[-1].opval));}
2020 { assertref(yyvsp[-3].opval); yyval.opval = newBINOP(OP_AELEM, 0,
2021 ref(newAVREF(yyvsp[-3].opval),OP_RV2AV),
2022 scalar(yyvsp[-1].opval));}
2026 { yyval.opval = yyvsp[0].opval; }
2030 { yyval.opval = yyvsp[0].opval; }
2034 { yyval.opval = newUNOP(OP_AV2ARYLEN, 0, ref(yyvsp[0].opval, OP_AV2ARYLEN));}
2038 { yyval.opval = newBINOP(OP_HELEM, 0, oopsHV(yyvsp[-4].opval), jmaybe(yyvsp[-2].opval));
2039 expect = XOPERATOR; }
2043 { yyval.opval = newBINOP(OP_HELEM, 0,
2044 ref(newHVREF(yyvsp[-5].opval),OP_RV2HV),
2045 jmaybe(yyvsp[-2].opval));
2046 expect = XOPERATOR; }
2050 { assertref(yyvsp[-4].opval); yyval.opval = newBINOP(OP_HELEM, 0,
2051 ref(newHVREF(yyvsp[-4].opval),OP_RV2HV),
2052 jmaybe(yyvsp[-2].opval));
2053 expect = XOPERATOR; }
2057 { yyval.opval = newSLICEOP(0, yyvsp[-1].opval, yyvsp[-4].opval); }
2061 { yyval.opval = newSLICEOP(0, yyvsp[-1].opval, Nullop); }
2065 { yyval.opval = prepend_elem(OP_ASLICE,
2066 newOP(OP_PUSHMARK, 0),
2067 newLISTOP(OP_ASLICE, 0,
2068 list(yyvsp[-1].opval),
2069 ref(yyvsp[-3].opval, OP_ASLICE))); }
2073 { yyval.opval = prepend_elem(OP_HSLICE,
2074 newOP(OP_PUSHMARK, 0),
2075 newLISTOP(OP_HSLICE, 0,
2076 list(yyvsp[-2].opval),
2077 ref(oopsHV(yyvsp[-4].opval), OP_HSLICE)));
2078 expect = XOPERATOR; }
2082 { yyval.opval = yyvsp[0].opval; }
2086 { yyval.opval = newUNOP(OP_ENTERSUB, 0, scalar(yyvsp[0].opval)); }
2090 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED, scalar(yyvsp[-2].opval)); }
2094 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2095 append_elem(OP_LIST, yyvsp[-1].opval, scalar(yyvsp[-3].opval))); }
2099 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2100 append_elem(OP_LIST, yyvsp[0].opval, scalar(yyvsp[-1].opval))); }
2104 { yyval.opval = newUNOP(OP_DOFILE, 0, scalar(yyvsp[0].opval)); }
2108 { yyval.opval = newUNOP(OP_NULL, OPf_SPECIAL, scope(yyvsp[0].opval)); }
2112 { yyval.opval = newUNOP(OP_ENTERSUB,
2113 OPf_SPECIAL|OPf_STACKED,
2114 prepend_elem(OP_LIST,
2116 (OPpENTERSUB_AMPER<<8),
2117 scalar(yyvsp[-2].opval)
2118 )),Nullop)); dep();}
2122 { yyval.opval = newUNOP(OP_ENTERSUB,
2123 OPf_SPECIAL|OPf_STACKED,
2124 append_elem(OP_LIST,
2127 (OPpENTERSUB_AMPER<<8),
2128 scalar(yyvsp[-3].opval)
2133 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_SPECIAL|OPf_STACKED,
2134 prepend_elem(OP_LIST,
2135 scalar(newCVREF(0,scalar(yyvsp[-2].opval))), Nullop)); dep();}
2139 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_SPECIAL|OPf_STACKED,
2140 prepend_elem(OP_LIST,
2142 scalar(newCVREF(0,scalar(yyvsp[-3].opval))))); dep();}
2146 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2147 newCVREF(0, scalar(yyvsp[-3].opval))); }
2151 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2152 append_elem(OP_LIST, yyvsp[-1].opval,
2153 newCVREF(0, scalar(yyvsp[-4].opval)))); }
2157 { yyval.opval = newOP(yyvsp[0].ival, OPf_SPECIAL);
2158 hints |= HINT_BLOCK_SCOPE; }
2162 { yyval.opval = newLOOPEX(yyvsp[-1].ival,yyvsp[0].opval); }
2166 { yyval.opval = newUNOP(OP_NOT, 0, scalar(yyvsp[0].opval)); }
2170 { yyval.opval = newOP(yyvsp[0].ival, 0); }
2174 { yyval.opval = newUNOP(yyvsp[-1].ival, 0, yyvsp[0].opval); }
2178 { yyval.opval = newUNOP(yyvsp[-1].ival, 0, yyvsp[0].opval); }
2182 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2183 append_elem(OP_LIST, yyvsp[0].opval, scalar(yyvsp[-1].opval))); }
2187 { yyval.opval = newOP(yyvsp[0].ival, 0); }
2191 { yyval.opval = newOP(yyvsp[-2].ival, 0); }
2195 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2196 scalar(yyvsp[0].opval)); }
2200 { yyval.opval = newOP(yyvsp[-2].ival, OPf_SPECIAL); }
2204 { yyval.opval = newUNOP(yyvsp[-3].ival, 0, yyvsp[-1].opval); }
2208 { yyval.opval = pmruntime(yyvsp[-3].opval, yyvsp[-1].opval, Nullop); }
2212 { yyval.opval = pmruntime(yyvsp[-5].opval, yyvsp[-3].opval, yyvsp[-1].opval); }
2216 { yyval.opval = Nullop; }
2220 { yyval.opval = yyvsp[0].opval; }
2224 { yyval.opval = Nullop; }
2228 { yyval.opval = yyvsp[0].opval; }
2232 { yyval.opval = yyvsp[-1].opval; }
2244 { in_my = 0; yyval.opval = my(yyvsp[0].opval); }
2248 { yyval.opval = newCVREF(yyvsp[-1].ival,yyvsp[0].opval); }
2252 { yyval.opval = newSVREF(yyvsp[0].opval); }
2256 { yyval.opval = newAVREF(yyvsp[0].opval); }
2260 { yyval.opval = newHVREF(yyvsp[0].opval); }
2264 { yyval.opval = newAVREF(yyvsp[0].opval); }
2268 { yyval.opval = newGVREF(0,yyvsp[0].opval); }
2272 { yyval.opval = scalar(yyvsp[0].opval); }
2276 { yyval.opval = scalar(yyvsp[0].opval); }
2280 { yyval.opval = scope(yyvsp[0].opval); }
2284 { yyval.opval = yyvsp[0].opval; }
2286 #line 2272 "perly.c"
2292 if (yystate == 0 && yym == 0)
2296 PerlIO_printf(Perl_debug_log,
2297 "yydebug: after reduction, shifting from state 0 to state %d\n",
2305 if ((yychar = yylex()) < 0) yychar = 0;
2310 if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
2311 if (!yys) yys = "illegal-symbol";
2312 PerlIO_printf(Perl_debug_log, "yydebug: state %d, reading %d (%s)\n",
2313 YYFINAL, yychar, yys);
2317 if (yychar == 0) goto yyaccept;
2320 if ((yyn = yygindex[yym]) && (yyn += yystate) >= 0 &&
2321 yyn <= YYTABLESIZE && yycheck[yyn] == yystate)
2322 yystate = yytable[yyn];
2324 yystate = yydgoto[yym];
2327 PerlIO_printf(Perl_debug_log,
2328 "yydebug: after reduction, shifting from state %d to state %d\n",
2331 if (yyssp >= yyss + yystacksize - 1)
2334 ** reallocate and recover. Note that pointers
2335 ** have to be reset, or bad things will happen
2337 int yyps_index = (yyssp - yyss);
2338 int yypv_index = (yyvsp - yyvs);
2339 yystacksize += YYSTACKSIZE;
2340 ysave->yyvs = yyvs =
2341 (YYSTYPE*)realloc((char*)yyvs,yystacksize * sizeof(YYSTYPE));
2342 ysave->yyss = yyss =
2343 (short*)realloc((char*)yyss,yystacksize * sizeof(short));
2346 yyssp = yyss + yyps_index;
2347 yyvsp = yyvs + yypv_index;
2353 yyerror("Out of memory for yacc stack");