1 /* Postprocessed by vms_yfix.pl 1.11 to add VMS declarations of globals */
3 /* static char yysccsid[] = "@(#)yaccpar 1.8 (Berkeley) 01/20/91"; */
8 #define PERL_IN_PERLY_C
13 #define dep() deprecate_old("\"do\" to call subroutines")
15 /* stuff included here to make perly_c.diff apply better */
17 #define yydebug PL_yydebug
18 #define yynerrs PL_yynerrs
19 #define yyerrflag PL_yyerrflag
20 #define yychar PL_yychar
21 #define yyval PL_yyval
22 #define yylval PL_yylval
35 static void yydestruct(pTHX_ void *ptr);
38 #if 0 /* get this from perly.h instead */
50 #define YYLEX_PARAM (&yychar)
56 static short yylhs[] = { -1,
57 0, 9, 7, 6, 10, 8, 11, 11, 11, 12,
58 12, 12, 12, 25, 25, 25, 25, 25, 25, 25,
59 15, 15, 15, 14, 14, 43, 43, 13, 13, 13,
60 13, 13, 13, 13, 27, 27, 28, 28, 29, 30,
61 31, 32, 33, 54, 54, 1, 1, 1, 1, 1,
62 2, 39, 39, 47, 55, 3, 4, 5, 40, 41,
63 41, 45, 45, 45, 46, 46, 42, 42, 56, 56,
64 58, 57, 16, 16, 16, 26, 26, 26, 37, 37,
65 37, 37, 37, 37, 37, 37, 59, 37, 38, 38,
66 18, 18, 18, 18, 18, 18, 18, 18, 18, 18,
67 18, 50, 50, 50, 50, 50, 50, 50, 50, 50,
68 50, 50, 50, 50, 51, 51, 51, 51, 51, 51,
69 51, 51, 52, 52, 52, 52, 52, 53, 53, 53,
70 53, 53, 53, 17, 17, 17, 17, 17, 17, 17,
71 17, 17, 17, 17, 17, 17, 17, 17, 17, 17,
72 17, 17, 17, 17, 17, 17, 17, 17, 17, 17,
73 17, 17, 17, 17, 17, 17, 17, 17, 17, 17,
74 17, 17, 17, 17, 48, 48, 49, 49, 49, 49,
75 49, 34, 34, 35, 35, 35, 44, 24, 19, 20,
76 21, 22, 23, 36, 36, 36, 36,
78 static short yylen[] = { 2,
79 2, 4, 0, 0, 4, 0, 0, 2, 2, 2,
80 1, 2, 3, 1, 1, 3, 3, 3, 3, 3,
81 0, 2, 6, 7, 7, 0, 2, 8, 8, 10,
82 9, 8, 11, 3, 0, 1, 0, 1, 1, 1,
83 1, 1, 1, 0, 1, 1, 1, 1, 1, 1,
84 4, 1, 0, 6, 6, 0, 0, 0, 1, 0,
85 1, 0, 2, 1, 2, 1, 1, 1, 3, 2,
86 0, 7, 3, 3, 1, 2, 3, 1, 3, 5,
87 6, 3, 3, 5, 2, 4, 0, 5, 1, 1,
88 5, 4, 5, 4, 5, 6, 5, 4, 5, 4,
89 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
90 3, 3, 3, 3, 2, 2, 2, 2, 2, 2,
91 2, 2, 3, 2, 4, 3, 5, 2, 2, 4,
92 5, 4, 5, 1, 1, 1, 1, 5, 2, 1,
93 2, 3, 2, 1, 1, 1, 1, 1, 1, 6,
94 5, 4, 5, 1, 1, 3, 4, 3, 1, 2,
95 2, 1, 2, 2, 2, 1, 3, 1, 3, 4,
96 4, 6, 1, 1, 3, 2, 3, 2, 1, 1,
97 1, 0, 1, 0, 1, 2, 1, 2, 2, 2,
100 static short yydefred[] = { 4,
101 0, 7, 0, 45, 58, 56, 0, 56, 56, 8,
102 46, 9, 11, 48, 0, 47, 49, 50, 0, 0,
103 0, 70, 71, 0, 14, 3, 173, 0, 0, 154,
104 0, 168, 0, 57, 57, 0, 0, 0, 0, 0,
105 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
106 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
107 0, 12, 0, 0, 0, 0, 0, 0, 0, 10,
108 0, 0, 0, 0, 0, 146, 148, 0, 0, 0,
109 0, 174, 140, 134, 135, 136, 137, 52, 0, 59,
110 0, 69, 0, 0, 7, 194, 197, 196, 195, 0,
111 0, 0, 0, 0, 0, 3, 3, 3, 3, 3,
112 3, 0, 0, 0, 0, 0, 163, 0, 0, 0,
113 0, 85, 0, 192, 0, 129, 0, 0, 0, 0,
114 0, 0, 0, 179, 181, 180, 0, 188, 0, 0,
115 0, 0, 0, 0, 0, 0, 124, 0, 0, 0,
116 189, 190, 191, 193, 0, 34, 0, 0, 0, 0,
117 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
118 0, 0, 0, 0, 0, 0, 0, 119, 120, 0,
119 0, 0, 0, 0, 0, 0, 0, 0, 0, 13,
120 0, 51, 61, 0, 0, 0, 0, 83, 0, 0,
121 87, 0, 0, 0, 0, 0, 0, 0, 3, 167,
122 169, 0, 0, 0, 0, 0, 0, 0, 126, 0,
123 158, 178, 0, 0, 175, 0, 0, 123, 27, 0,
124 0, 19, 0, 0, 0, 0, 73, 0, 0, 0,
125 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
126 0, 0, 89, 0, 0, 90, 0, 0, 101, 0,
127 0, 0, 0, 0, 0, 0, 156, 0, 0, 0,
128 0, 0, 0, 2, 0, 0, 171, 0, 0, 0,
129 42, 0, 43, 0, 0, 0, 0, 187, 0, 0,
130 36, 41, 0, 0, 0, 170, 186, 86, 0, 130,
131 0, 132, 0, 125, 177, 65, 0, 0, 0, 0,
132 98, 0, 0, 0, 0, 100, 94, 0, 92, 0,
133 152, 0, 157, 63, 68, 67, 55, 0, 54, 84,
134 0, 88, 127, 0, 0, 0, 0, 0, 0, 0,
135 0, 80, 131, 133, 151, 0, 0, 0, 99, 93,
136 0, 97, 95, 153, 91, 72, 172, 6, 0, 0,
137 0, 0, 0, 0, 0, 0, 150, 96, 81, 7,
138 28, 29, 0, 0, 24, 25, 0, 32, 0, 0,
139 0, 22, 0, 0, 0, 31, 5, 0, 30, 0,
142 static short yydgoto[] = { 1,
143 10, 11, 20, 104, 19, 2, 95, 370, 98, 359,
144 3, 12, 13, 70, 375, 285, 72, 73, 74, 75,
145 76, 77, 78, 79, 291, 81, 292, 281, 283, 286,
146 294, 282, 284, 122, 214, 100, 82, 257, 89, 91,
147 194, 327, 156, 289, 271, 225, 14, 83, 137, 84,
148 85, 86, 87, 15, 16, 17, 18, 93, 278,
150 static short yysindex[] = { 0,
151 0, 0, -132, 0, 0, 0, -51, 0, 0, 0,
152 0, 0, 0, 0, 650, 0, 0, 0, -239, -215,
153 5, 0, 0, -215, 0, 0, 0, -31, -31, 0,
154 -24, 0, 2181, 0, 0, 11, 16, 32, 46, -34,
155 2181, 49, 72, 76, 1017, 977, -31, 1081, 1348, -134,
156 2181, 85, -31, 2181, 2181, 2181, 2181, 2181, 2181, 1388,
157 1428, 0, 2181, 2181, -31, -31, -31, -31, -150, 0,
158 337, 849, -13, -58, -48, 0, 0, 8, 97, 92,
159 116, 0, 0, 0, 0, 0, 0, 0, 52, 0,
160 -97, 0, -75, -97, 0, 0, 0, 0, 0, 2181,
161 146, 2181, 395, 52, -97, 0, 0, 0, 0, 0,
162 0, 150, 849, 153, 1468, 977, 0, 395, 0, -58,
163 116, 0, 2181, 0, 157, 0, 395, -8, 83, -52,
164 2181, 395, 1528, 0, 0, 0, -89, 0, 116, 107,
165 107, 107, -104, -104, 123, -37, 0, -73, 107, 107,
166 0, 0, 0, 0, 52, 0, 2181, 2181, 2181, 2181,
167 2181, 2181, 2181, 2181, 2181, 2181, 2181, 2181, 2181, 2181,
168 2181, 2181, 2181, 2181, 2181, 2181, 2181, 0, 0, -12,
169 2181, 1735, 2181, 2181, 2181, 2181, 2181, 2181, 1795, 0,
170 2181, 0, 0, -64, -32, -64, 411, 0, 2181, 291,
171 0, -64, 2181, 2181, 2181, 2181, 187, 1854, 0, 0,
172 0, -29, 58, 189, 2181, 116, 1914, 2029, 0, 111,
173 0, 0, -26, -19, 0, 2181, 165, 0, 0, -241,
174 -241, 0, -241, -241, -241, -40, 0, 1618, 395, 1306,
175 185, 168, 849, 1235, 1129, 1169, 1268, 782, 235, 107,
176 107, 2181, 0, 2121, 2181, 0, 218, -46, 0, -3,
177 -68, 61, 106, 65, 108, 68, 0, 17, 849, 26,
178 -30, 2181, -30, 0, 236, 2181, 0, 2181, 52, -241,
179 0, 250, 0, 255, -241, 259, 260, 0, 248, 337,
180 0, 0, 262, 261, 2181, 0, 0, 0, 22, 0,
181 33, 0, 36, 0, 0, 0, 125, 2181, 2181, 71,
182 0, 50, 127, 2181, 182, 0, 0, 184, 0, 199,
183 0, 201, 0, 0, 0, 0, 0, 272, 0, 0,
184 354, 0, 0, 216, 216, 216, 216, 2181, 216, 2181,
185 301, 0, 0, 0, 0, 167, 2418, 228, 0, 0,
186 319, 0, 0, 0, 0, 0, 0, 0, -150, -150,
187 -123, -123, 322, -150, 308, 216, 0, 0, 0, 0,
188 0, 0, 216, 334, 0, 0, 216, 0, 1854, -150,
189 449, 0, 2181, -150, 340, 0, 0, 355, 0, 216,
192 static short yyrindex[] = { 0,
193 0, 0, 247, 0, 0, 0, 0, 0, 0, 0,
194 0, 0, 0, 0, 0, 0, 0, 0, 274, 0,
195 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
196 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
197 40, 455, 0, 0, 2367, 2469, 0, 0, 0, 0,
198 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
199 0, 0, 0, 0, 0, 0, 0, 0, 119, 0,
200 3, 943, 2515, 2603, 2653, 0, 0, 2708, 2754, 0,
201 -6, 0, 0, 0, 0, 0, 0, 0, 0, 0,
202 -33, 0, 0, -33, 0, 0, 0, 0, 0, 2469,
203 0, 0, 3919, 0, -102, 0, 0, 0, 0, 0,
204 0, 0, 3216, 0, 0, 359, 0, 3955, 526, 587,
205 2276, 0, 0, 0, 2801, 0, 3999, 2603, 0, 0,
206 2469, 4043, 0, 0, 0, 0, 2858, 0, 3225, 3461,
207 3527, 3588, 3352, 3399, 2908, 0, 0, 0, 3635, 3680,
208 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
209 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
210 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
211 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
212 2990, 0, 0, -28, 0, -28, 917, 0, 359, 0,
213 0, 295, 379, 0, 0, 0, 0, 370, 0, 0,
214 0, 0, 390, 0, 0, 3291, 0, 0, 0, 0,
215 0, 0, 0, 3056, 0, 0, 3113, 0, 0, 14,
216 35, 0, 55, 91, 117, 1991, 0, 4235, 4090, 1826,
217 3807, 3871, 3283, 0, -22, 4191, 4155, 4145, 1048, 3719,
218 3763, 0, 0, 0, 0, 0, 3163, 0, 0, 0,
219 0, 0, 0, 0, 0, 0, 0, 0, 4267, -10,
220 0, 375, 0, 0, 0, 0, 0, 2469, 0, 136,
221 0, 0, 0, 0, 400, 0, 0, 0, 0, 139,
222 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
223 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
224 0, 0, 0, 359, 0, 0, 0, 0, 0, 0,
225 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
226 0, 0, 0, 0, 0, 0, 0, 0, 0, 396,
227 0, 0, 0, 0, 0, 0, 4080, 0, 0, 0,
228 0, 0, 0, 0, 0, 0, 0, 0, 119, 119,
229 179, 179, 0, 119, 0, 0, 0, 0, 0, 0,
230 0, 0, 0, 0, 0, 0, 0, 0, 415, 119,
231 917, 0, 0, 119, 0, 0, 0, 0, 0, 0,
234 static short yygindex[] = { 0,
235 0, 0, 196, 425, 0, 0, -2, 0, 37, 634,
236 -94, 0, 0, 0, -323, -15, 2445, 0, 999, 414,
237 417, 0, 0, 0, 463, -43, 0, 0, 321, -198,
238 103, 147, 280, -91, -185, 1, 0, 0, 0, 464,
239 -44, 222, 338, 0, -179, 0, 0, 0, 0, 0,
240 0, 0, 0, 0, 0, 0, 0, 0, 0,
242 #define YYTABLESIZE 4568
243 static short yytable[] = { 71,
244 197, 65, 121, 227, 65, 111, 220, 22, 198, 293,
245 139, 296, 315, 275, 305, 102, 273, 88, 113, 228,
246 60, 113, 279, 65, 317, 60, 182, 254, 325, 101,
247 62, 218, 185, 130, 75, 113, 113, 316, 376, 221,
248 113, 90, 187, 15, 146, 148, 123, 124, 64, 196,
249 106, 69, 75, 138, 18, 107, 121, 323, 162, 163,
250 202, 15, 342, 92, 184, 151, 152, 153, 154, 394,
251 113, 108, 18, 343, 186, 39, 344, 183, 255, 216,
252 159, 117, 185, 159, 126, 109, 75, 121, 114, 60,
253 349, 26, 26, 39, 62, 16, 341, 159, 159, 212,
254 213, 297, 159, 203, 204, 205, 206, 207, 208, 181,
255 252, 115, 64, 16, 184, 116, 215, 223, 26, 318,
256 65, 67, 131, 320, 133, 192, 322, 155, 351, 348,
257 188, 17, 159, 4, 5, 6, 189, 7, 8, 363,
258 201, 230, 231, 233, 234, 235, 236, 237, 66, 17,
259 190, 26, 373, 374, 26, 26, 26, 20, 26, 191,
260 26, 26, 193, 26, 9, 258, 260, 261, 262, 263,
261 264, 265, 266, 268, 26, 20, 38, 26, 21, 40,
262 328, 195, 26, 213, 388, 199, 332, 280, 231, 209,
263 231, 229, 290, 210, 38, 60, 217, 15, 319, 299,
264 321, 301, 303, 23, 24, 21, 295, 219, 224, 26,
265 307, 21, 180, 226, 21, 21, 21, 345, 21, 350,
266 21, 21, 65, 21, 272, 96, 162, 163, 121, 298,
267 97, 162, 163, 270, 121, 304, 310, 21, 312, 313,
268 306, 26, 21, 26, 26, 253, 1, 162, 163, 113,
269 113, 113, 113, 162, 163, 308, 113, 314, 113, 367,
270 163, 110, 162, 163, 60, 75, 75, 75, 75, 21,
271 162, 163, 75, 162, 163, 381, 330, 113, 113, 44,
272 113, 113, 44, 44, 44, 324, 44, 338, 44, 44,
273 334, 44, 346, 75, 75, 335, 162, 163, 213, 336,
274 337, 21, 339, 21, 21, 44, 352, 326, 353, 326,
275 44, 159, 159, 159, 159, 333, 162, 163, 159, 340,
276 159, 162, 163, 354, 280, 355, 159, 159, 159, 159,
277 356, 277, 162, 163, 276, 162, 163, 44, 358, 159,
278 159, 366, 159, 159, 159, 159, 159, 159, 159, 162,
279 163, 159, 368, 170, 159, 159, 159, 162, 163, 369,
280 162, 163, 377, 71, 162, 163, 379, 162, 163, 44,
281 162, 163, 44, 383, 26, 26, 26, 26, 26, 26,
282 390, 26, 26, 26, 26, 26, 26, 26, 26, 26,
283 26, 26, 26, 26, 357, 391, 53, 26, 26, 184,
284 26, 26, 26, 26, 26, 162, 163, 162, 163, 26,
285 26, 26, 26, 26, 26, 26, 170, 62, 177, 37,
286 26, 178, 179, 180, 162, 163, 162, 163, 35, 26,
287 185, 26, 26, 182, 21, 21, 21, 21, 21, 21,
288 40, 21, 21, 21, 21, 21, 21, 21, 21, 21,
289 21, 21, 21, 21, 37, 35, 167, 21, 21, 105,
290 21, 21, 21, 21, 21, 135, 162, 163, 136, 21,
291 21, 21, 21, 21, 21, 21, 176, 80, 232, 177,
292 21, 385, 178, 179, 180, 287, 365, 94, 0, 21,
293 0, 21, 21, 176, 329, 166, 177, 0, 166, 178,
294 179, 180, 44, 44, 44, 44, 44, 44, 0, 44,
295 44, 44, 166, 166, 0, 44, 0, 166, 44, 44,
296 44, 44, 0, 167, 168, 44, 44, 0, 44, 44,
297 44, 44, 44, 0, 0, 274, 0, 44, 44, 44,
298 44, 44, 44, 176, 0, 0, 177, 166, 44, 178,
299 179, 180, 0, 0, 0, 0, 0, 44, 194, 44,
300 44, 194, 194, 194, 0, 194, 173, 194, 194, 173,
301 194, 164, 0, 387, 0, 0, 0, 165, 166, 167,
302 168, 0, 0, 173, 173, 0, 0, 0, 173, 194,
303 0, 0, 0, 169, 171, 172, 173, 174, 175, 176,
304 0, 0, 177, 0, 0, 178, 179, 180, 157, 158,
305 159, 160, 0, 0, 0, 161, 194, 0, 173, 195,
306 0, 0, 195, 195, 195, 0, 195, 144, 195, 195,
307 144, 195, 0, 0, 164, 0, 162, 163, 0, 0,
308 165, 166, 167, 168, 144, 144, 0, 0, 0, 144,
309 195, 194, 0, 0, 0, 0, 169, 171, 172, 173,
310 174, 175, 176, 0, 0, 177, 0, 0, 178, 179,
311 180, 0, 0, 0, 0, 0, 4, 5, 6, 144,
312 7, 8, 55, 167, 168, 65, 67, 53, 0, 60,
313 0, 68, 64, 0, 63, 0, 371, 372, 0, 0,
314 0, 378, 175, 176, 0, 0, 177, 9, 62, 178,
315 179, 180, 195, 66, 4, 5, 6, 386, 7, 8,
316 0, 389, 0, 0, 0, 0, 166, 166, 166, 166,
317 0, 0, 0, 166, 0, 166, 0, 0, 0, 0,
318 61, 166, 166, 166, 166, 9, 0, 0, 0, 0,
319 0, 0, 0, 0, 166, 166, 0, 166, 166, 166,
320 166, 166, 166, 166, 0, 0, 166, 0, 0, 166,
321 166, 166, 26, 0, 0, 56, 0, 0, 0, 0,
322 0, 0, 194, 194, 194, 194, 194, 0, 194, 194,
323 194, 0, 0, 0, 194, 0, 0, 173, 173, 173,
324 173, 0, 0, 0, 173, 194, 173, 194, 194, 194,
325 194, 194, 173, 173, 173, 173, 194, 194, 194, 194,
326 194, 194, 0, 0, 0, 173, 173, 194, 173, 173,
327 173, 173, 173, 173, 173, 0, 194, 173, 194, 194,
328 173, 173, 173, 195, 195, 195, 195, 195, 0, 195,
329 195, 195, 0, 0, 0, 195, 0, 0, 144, 144,
330 144, 144, 0, 0, 0, 144, 195, 144, 195, 195,
331 195, 195, 195, 144, 144, 144, 144, 195, 195, 195,
332 195, 195, 195, 0, 0, 0, 144, 144, 195, 144,
333 144, 144, 144, 144, 144, 144, 0, 195, 144, 195,
334 195, 144, 144, 144, 0, 25, 27, 28, 29, 30,
335 31, 170, 32, 33, 34, 0, 0, 0, 35, 0,
336 0, 36, 37, 38, 39, 0, 0, 0, 40, 41,
337 0, 42, 43, 44, 45, 46, 0, 0, 0, 0,
338 47, 48, 49, 50, 51, 52, 0, 0, 0, 44,
339 0, 54, 44, 44, 44, 0, 44, 0, 44, 44,
340 57, 44, 58, 59, 0, 0, 0, 0, 360, 361,
341 362, 0, 364, 0, 0, 44, 0, 0, 0, 0,
342 44, 0, 0, 78, 0, 0, 78, 0, 0, 0,
343 0, 0, 0, 0, 0, 0, 0, 0, 0, 380,
344 78, 78, 0, 0, 0, 0, 382, 44, 0, 55,
345 384, 0, 65, 67, 53, 0, 60, 0, 68, 64,
346 0, 63, 0, 392, 393, 0, 99, 99, 0, 0,
347 0, 0, 0, 0, 0, 78, 0, 0, 112, 44,
348 66, 0, 44, 0, 120, 99, 128, 0, 0, 55,
349 134, 99, 65, 67, 53, 0, 60, 0, 68, 64,
350 0, 63, 0, 99, 99, 99, 99, 61, 165, 166,
351 167, 168, 0, 0, 0, 0, 0, 0, 0, 0,
352 66, 0, 0, 0, 0, 0, 0, 0, 106, 175,
353 176, 106, 0, 177, 0, 0, 178, 179, 180, 26,
354 0, 0, 56, 0, 0, 106, 106, 61, 0, 0,
355 106, 0, 0, 55, 120, 0, 65, 67, 53, 0,
356 60, 0, 68, 64, 0, 63, 0, 0, 0, 164,
357 0, 0, 0, 0, 0, 165, 166, 167, 168, 26,
358 106, 0, 56, 0, 66, 0, 0, 0, 0, 0,
359 0, 169, 171, 172, 173, 174, 175, 176, 0, 0,
360 177, 0, 0, 178, 179, 180, 0, 0, 0, 0,
361 0, 61, 44, 44, 44, 44, 44, 44, 256, 44,
362 44, 44, 0, 0, 0, 44, 0, 0, 44, 44,
363 44, 44, 0, 0, 0, 44, 44, 0, 44, 44,
364 44, 44, 44, 26, 0, 288, 56, 44, 44, 44,
365 44, 44, 44, 0, 78, 78, 78, 78, 44, 0,
366 0, 78, 0, 0, 0, 0, 0, 44, 0, 44,
367 44, 0, 0, 119, 28, 29, 30, 31, 97, 32,
368 33, 34, 78, 78, 0, 35, 0, 0, 0, 0,
369 0, 0, 0, 0, 0, 0, 41, 0, 42, 43,
370 44, 45, 46, 0, 0, 0, 0, 47, 48, 49,
371 50, 51, 52, 27, 28, 29, 30, 31, 54, 32,
372 33, 34, 0, 0, 0, 35, 0, 57, 0, 58,
373 59, 0, 309, 0, 0, 0, 41, 170, 42, 43,
374 44, 45, 46, 0, 0, 0, 0, 47, 48, 49,
375 50, 51, 52, 0, 0, 0, 0, 0, 54, 106,
376 106, 106, 106, 0, 0, 0, 106, 57, 106, 58,
377 59, 0, 0, 0, 106, 106, 0, 125, 28, 29,
378 30, 31, 0, 32, 33, 34, 0, 106, 106, 35,
379 106, 106, 106, 106, 106, 106, 0, 0, 0, 0,
380 41, 0, 42, 43, 44, 45, 46, 0, 0, 0,
381 0, 47, 48, 49, 50, 51, 52, 0, 0, 0,
382 55, 0, 54, 65, 67, 53, 0, 60, 0, 68,
383 64, 57, 63, 58, 59, 0, 0, 0, 0, 0,
384 0, 0, 0, 0, 0, 0, 129, 0, 0, 0,
385 0, 66, 0, 0, 0, 165, 166, 167, 168, 0,
386 55, 0, 0, 65, 67, 53, 0, 60, 145, 68,
387 64, 0, 63, 172, 173, 174, 175, 176, 61, 0,
388 177, 0, 0, 178, 179, 180, 0, 0, 0, 0,
389 0, 66, 0, 0, 0, 165, 166, 167, 168, 0,
390 55, 0, 0, 65, 67, 53, 0, 60, 0, 68,
391 64, 0, 63, 56, 173, 174, 175, 176, 61, 0,
392 177, 0, 0, 178, 179, 180, 0, 0, 0, 0,
393 0, 66, 0, 0, 0, 0, 0, 0, 0, 0,
394 55, 0, 0, 65, 67, 53, 0, 60, 211, 68,
395 64, 0, 63, 56, 0, 164, 0, 0, 61, 0,
396 147, 165, 166, 167, 168, 0, 0, 0, 0, 0,
397 0, 66, 0, 0, 0, 0, 0, 169, 171, 172,
398 173, 174, 175, 176, 0, 0, 177, 0, 0, 178,
399 179, 180, 0, 56, 165, 166, 167, 168, 61, 0,
400 55, 0, 0, 65, 67, 53, 0, 60, 222, 68,
401 64, 0, 63, 0, 174, 175, 176, 0, 0, 177,
402 0, 0, 178, 179, 180, 0, 0, 0, 0, 0,
403 0, 66, 165, 56, 167, 168, 0, 0, 0, 0,
404 0, 0, 0, 0, 27, 28, 29, 30, 31, 0,
405 32, 33, 34, 175, 176, 0, 35, 177, 61, 0,
406 178, 179, 180, 0, 0, 0, 0, 41, 0, 42,
407 43, 44, 45, 46, 0, 0, 0, 0, 47, 48,
408 49, 50, 51, 52, 27, 28, 29, 30, 31, 54,
409 32, 33, 34, 56, 0, 0, 35, 0, 57, 0,
410 58, 59, 0, 0, 0, 0, 0, 41, 0, 42,
411 43, 44, 45, 46, 0, 0, 0, 0, 47, 48,
412 49, 50, 51, 52, 27, 28, 29, 30, 31, 54,
413 32, 33, 34, 0, 0, 0, 35, 0, 57, 0,
414 58, 59, 0, 0, 0, 0, 0, 41, 0, 42,
415 43, 44, 45, 46, 0, 0, 0, 0, 47, 48,
416 49, 50, 51, 52, 27, 28, 29, 30, 31, 54,
417 32, 33, 34, 0, 0, 0, 35, 0, 57, 0,
418 58, 59, 0, 0, 0, 0, 0, 41, 0, 42,
419 43, 44, 45, 46, 0, 0, 0, 0, 47, 48,
420 49, 50, 51, 52, 0, 0, 0, 55, 0, 54,
421 65, 67, 53, 0, 60, 259, 68, 64, 57, 63,
422 58, 59, 0, 0, 27, 28, 29, 30, 31, 0,
423 32, 33, 34, 0, 0, 0, 35, 0, 66, 0,
424 0, 0, 0, 0, 0, 0, 0, 41, 0, 42,
425 43, 44, 45, 46, 0, 0, 0, 0, 47, 48,
426 49, 50, 51, 52, 0, 61, 0, 55, 0, 54,
427 65, 67, 53, 0, 60, 267, 68, 64, 57, 63,
428 58, 59, 0, 0, 0, 0, 0, 0, 0, 0,
429 0, 0, 0, 0, 0, 0, 0, 0, 66, 0,
430 56, 0, 0, 0, 0, 0, 108, 0, 0, 108,
431 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
432 0, 0, 0, 108, 108, 61, 55, 0, 108, 65,
433 67, 53, 0, 60, 0, 68, 64, 0, 63, 0,
434 0, 0, 0, 0, 165, 166, 167, 168, 0, 0,
435 0, 0, 0, 0, 0, 0, 0, 66, 108, 0,
436 56, 171, 172, 173, 174, 175, 176, 0, 0, 177,
437 0, 0, 178, 179, 180, 0, 0, 0, 0, 0,
438 0, 0, 0, 0, 61, 0, 55, 0, 0, 65,
439 67, 53, 0, 60, 300, 68, 64, 0, 63, 0,
440 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
441 0, 0, 0, 0, 0, 0, 0, 66, 0, 56,
442 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
443 0, 27, 28, 29, 30, 31, 0, 32, 33, 34,
444 0, 0, 0, 35, 61, 0, 0, 0, 0, 0,
445 0, 0, 0, 0, 41, 0, 42, 43, 44, 45,
446 46, 0, 0, 0, 0, 47, 48, 49, 50, 51,
447 52, 74, 0, 0, 74, 0, 54, 0, 0, 56,
448 0, 0, 0, 0, 0, 57, 0, 58, 59, 74,
449 0, 27, 28, 29, 30, 31, 0, 32, 33, 34,
450 0, 55, 0, 35, 65, 67, 53, 0, 60, 302,
451 68, 64, 0, 63, 41, 0, 42, 43, 44, 45,
452 46, 0, 0, 74, 0, 47, 48, 49, 50, 51,
453 52, 0, 66, 0, 0, 0, 54, 108, 108, 108,
454 108, 0, 0, 0, 108, 57, 108, 58, 59, 25,
455 27, 28, 29, 30, 31, 0, 32, 33, 34, 61,
456 0, 0, 35, 0, 0, 108, 108, 0, 108, 108,
457 108, 108, 108, 41, 0, 42, 43, 44, 45, 46,
458 0, 0, 0, 0, 47, 48, 49, 50, 51, 52,
459 0, 0, 0, 55, 56, 54, 65, 67, 53, 0,
460 60, 311, 68, 64, 57, 63, 58, 59, 0, 0,
461 27, 28, 29, 30, 31, 0, 32, 33, 34, 0,
462 0, 0, 35, 0, 66, 0, 0, 0, 0, 0,
463 0, 0, 0, 41, 0, 42, 43, 44, 45, 46,
464 0, 0, 0, 0, 47, 48, 49, 50, 51, 52,
465 0, 61, 0, 55, 0, 54, 65, 67, 53, 0,
466 60, 0, 68, 64, 57, 63, 58, 59, 0, 0,
467 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
468 0, 0, 0, 0, 66, 0, 56, 0, 0, 0,
469 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
470 0, 0, 74, 74, 74, 74, 0, 0, 0, 74,
471 0, 61, 0, 0, 0, 0, 0, 0, 0, 0,
472 0, 0, 0, 0, 0, 27, 28, 29, 30, 31,
473 74, 32, 33, 34, 0, 0, 0, 35, 0, 0,
474 0, 0, 0, 0, 0, 0, 56, 0, 41, 0,
475 42, 43, 44, 45, 46, 0, 183, 0, 0, 47,
476 48, 49, 50, 51, 52, 0, 0, 0, 0, 0,
477 54, 0, 0, 183, 183, 0, 0, 0, 183, 57,
478 0, 58, 59, 0, 0, 0, 0, 0, 0, 0,
479 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
480 0, 0, 0, 0, 0, 0, 0, 0, 183, 0,
481 0, 0, 0, 0, 0, 0, 0, 27, 28, 29,
482 30, 31, 0, 32, 33, 34, 0, 0, 0, 35,
483 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
484 41, 0, 42, 43, 44, 45, 46, 162, 0, 0,
485 162, 47, 48, 49, 50, 51, 52, 0, 0, 0,
486 0, 0, 54, 0, 162, 162, 0, 0, 0, 162,
487 0, 57, 0, 58, 59, 0, 0, 27, 28, 29,
488 30, 31, 0, 32, 33, 34, 0, 0, 0, 35,
489 0, 0, 0, 0, 0, 0, 0, 0, 0, 162,
490 41, 0, 42, 43, 44, 45, 46, 0, 0, 0,
491 0, 47, 48, 49, 50, 51, 52, 103, 0, 0,
492 170, 0, 54, 0, 0, 113, 0, 0, 0, 118,
493 0, 57, 127, 58, 59, 132, 0, 0, 0, 140,
494 141, 142, 143, 144, 0, 0, 0, 149, 150, 182,
495 0, 0, 182, 0, 0, 0, 0, 0, 0, 0,
496 0, 0, 0, 0, 0, 0, 182, 182, 0, 0,
497 0, 182, 0, 0, 0, 0, 0, 0, 0, 0,
498 0, 0, 0, 0, 0, 0, 200, 183, 183, 183,
499 183, 0, 0, 0, 183, 149, 183, 0, 149, 0,
500 0, 182, 183, 183, 183, 183, 0, 0, 0, 0,
501 0, 0, 149, 149, 0, 183, 183, 149, 183, 183,
502 183, 183, 183, 183, 183, 0, 0, 183, 0, 0,
503 183, 183, 183, 0, 0, 0, 0, 0, 0, 0,
504 0, 0, 0, 0, 0, 0, 0, 149, 238, 239,
505 240, 241, 242, 243, 244, 245, 246, 247, 248, 249,
506 250, 251, 0, 0, 0, 0, 0, 0, 0, 0,
507 0, 0, 0, 0, 0, 269, 0, 0, 162, 162,
508 162, 162, 0, 144, 0, 162, 144, 162, 0, 0,
509 0, 0, 0, 162, 162, 162, 162, 0, 0, 0,
510 144, 144, 0, 0, 0, 144, 162, 162, 0, 162,
511 162, 162, 162, 162, 162, 162, 0, 0, 162, 0,
512 0, 162, 162, 162, 0, 0, 0, 0, 0, 0,
513 0, 0, 0, 147, 0, 144, 147, 0, 164, 0,
514 0, 0, 0, 0, 165, 166, 167, 168, 0, 0,
515 147, 147, 0, 0, 0, 147, 0, 0, 0, 0,
516 331, 171, 172, 173, 174, 175, 176, 0, 0, 177,
517 0, 0, 178, 179, 180, 0, 0, 0, 0, 0,
518 182, 182, 182, 182, 0, 147, 0, 182, 145, 182,
519 0, 145, 0, 347, 0, 182, 182, 182, 182, 0,
520 0, 0, 0, 0, 0, 145, 145, 0, 182, 182,
521 145, 182, 182, 182, 182, 182, 182, 182, 0, 0,
522 182, 0, 0, 182, 182, 182, 149, 149, 149, 149,
523 0, 0, 0, 149, 155, 149, 0, 155, 0, 0,
524 145, 149, 149, 149, 149, 0, 0, 0, 0, 0,
525 0, 155, 155, 0, 149, 149, 155, 149, 149, 149,
526 149, 149, 149, 149, 0, 0, 149, 0, 0, 149,
527 149, 149, 0, 0, 0, 0, 0, 0, 0, 0,
528 0, 173, 0, 0, 173, 0, 155, 0, 0, 0,
529 0, 0, 0, 0, 0, 0, 0, 0, 173, 173,
530 0, 0, 0, 173, 0, 0, 0, 0, 0, 0,
531 0, 0, 0, 0, 144, 144, 144, 144, 0, 0,
532 0, 144, 0, 144, 0, 0, 0, 0, 0, 144,
533 144, 144, 144, 173, 0, 0, 0, 0, 176, 0,
534 0, 176, 144, 144, 0, 144, 144, 144, 144, 144,
535 144, 144, 0, 0, 144, 176, 176, 144, 144, 144,
536 176, 0, 0, 0, 147, 147, 147, 147, 0, 0,
537 0, 147, 0, 147, 0, 0, 0, 0, 0, 147,
538 147, 147, 147, 0, 0, 0, 0, 0, 143, 0,
539 176, 143, 147, 147, 0, 147, 147, 147, 147, 147,
540 147, 147, 0, 0, 147, 143, 143, 147, 147, 147,
541 143, 0, 0, 0, 0, 0, 0, 0, 0, 145,
542 145, 145, 145, 0, 0, 0, 145, 0, 145, 0,
543 0, 0, 0, 0, 145, 145, 145, 145, 0, 0,
544 143, 0, 0, 0, 0, 0, 0, 145, 145, 0,
545 145, 145, 145, 145, 145, 145, 145, 0, 0, 145,
546 0, 0, 145, 145, 145, 155, 155, 155, 155, 0,
547 76, 0, 155, 76, 155, 0, 0, 0, 0, 0,
548 155, 155, 155, 155, 0, 0, 0, 76, 76, 0,
549 0, 0, 76, 155, 155, 0, 155, 155, 155, 155,
550 155, 155, 155, 0, 0, 155, 0, 0, 155, 155,
551 155, 0, 173, 173, 173, 173, 0, 0, 0, 173,
552 0, 173, 76, 0, 0, 0, 0, 173, 173, 173,
553 173, 0, 0, 0, 0, 0, 66, 0, 0, 66,
554 173, 173, 0, 173, 173, 173, 173, 173, 173, 173,
555 0, 0, 173, 66, 66, 173, 173, 173, 66, 0,
556 0, 0, 0, 0, 0, 0, 0, 0, 0, 176,
557 176, 176, 176, 0, 0, 0, 176, 0, 176, 0,
558 0, 0, 0, 0, 176, 176, 176, 176, 66, 0,
559 0, 0, 0, 142, 0, 0, 142, 176, 176, 0,
560 176, 176, 176, 176, 176, 176, 176, 0, 0, 176,
561 142, 142, 176, 176, 176, 142, 0, 0, 0, 143,
562 143, 143, 143, 0, 0, 0, 143, 0, 143, 0,
563 0, 0, 0, 0, 143, 143, 143, 143, 0, 0,
564 0, 0, 0, 82, 0, 142, 82, 143, 143, 0,
565 143, 143, 143, 143, 143, 143, 143, 0, 0, 143,
566 82, 82, 143, 143, 143, 82, 0, 0, 0, 0,
567 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
568 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
569 0, 0, 0, 0, 0, 82, 160, 0, 0, 160,
570 0, 76, 76, 76, 76, 161, 0, 0, 76, 0,
571 76, 0, 0, 160, 160, 0, 76, 76, 76, 76,
572 0, 0, 161, 161, 0, 0, 0, 161, 0, 76,
573 76, 0, 76, 76, 76, 76, 76, 76, 76, 0,
574 0, 76, 0, 0, 76, 76, 76, 0, 160, 0,
575 0, 0, 0, 0, 0, 0, 0, 161, 0, 0,
576 0, 0, 0, 102, 0, 0, 102, 66, 66, 66,
577 66, 79, 0, 0, 66, 0, 66, 0, 0, 0,
578 102, 102, 66, 66, 66, 66, 0, 0, 79, 79,
579 0, 0, 0, 79, 0, 66, 66, 0, 66, 66,
580 66, 66, 66, 66, 66, 0, 0, 66, 0, 0,
581 66, 66, 66, 0, 0, 102, 0, 0, 0, 0,
582 0, 0, 0, 79, 142, 142, 142, 142, 0, 0,
583 0, 142, 121, 142, 0, 121, 0, 0, 0, 142,
584 142, 142, 142, 0, 0, 0, 0, 0, 0, 121,
585 121, 0, 142, 142, 121, 142, 142, 142, 142, 142,
586 142, 142, 0, 0, 142, 0, 0, 142, 142, 142,
587 0, 0, 0, 0, 82, 82, 82, 82, 0, 122,
588 0, 82, 122, 82, 121, 0, 0, 0, 0, 82,
589 82, 82, 82, 0, 0, 0, 122, 122, 0, 0,
590 0, 122, 82, 82, 0, 82, 82, 82, 82, 82,
591 82, 82, 0, 0, 82, 0, 0, 82, 82, 82,
592 0, 0, 0, 0, 0, 0, 0, 160, 160, 160,
593 160, 122, 0, 0, 160, 0, 161, 161, 161, 161,
594 0, 117, 0, 161, 117, 161, 0, 0, 0, 0,
595 0, 161, 161, 161, 161, 160, 160, 0, 117, 117,
596 0, 0, 0, 117, 161, 161, 0, 161, 161, 161,
597 161, 161, 161, 161, 0, 0, 161, 0, 0, 161,
598 161, 161, 0, 0, 0, 0, 0, 0, 0, 0,
599 0, 0, 0, 117, 102, 102, 102, 102, 0, 0,
600 0, 102, 79, 79, 79, 79, 0, 118, 0, 79,
601 118, 79, 0, 0, 0, 0, 0, 79, 79, 79,
602 79, 0, 102, 102, 118, 118, 0, 0, 0, 118,
603 79, 79, 0, 79, 79, 79, 79, 79, 79, 79,
604 0, 0, 79, 0, 0, 79, 79, 79, 0, 0,
605 0, 0, 0, 0, 0, 0, 0, 0, 0, 118,
606 0, 0, 0, 121, 121, 121, 121, 0, 139, 0,
607 121, 139, 121, 0, 0, 0, 0, 0, 121, 121,
608 121, 121, 0, 0, 0, 139, 139, 0, 0, 0,
609 139, 121, 121, 0, 121, 121, 121, 121, 121, 121,
610 121, 0, 0, 121, 0, 0, 0, 0, 0, 0,
611 122, 122, 122, 122, 0, 115, 0, 122, 115, 122,
612 139, 0, 0, 0, 0, 122, 122, 122, 122, 0,
613 0, 0, 115, 115, 0, 0, 0, 115, 122, 122,
614 0, 122, 122, 122, 122, 122, 122, 122, 0, 0,
615 122, 0, 0, 0, 0, 0, 0, 0, 0, 0,
616 116, 0, 0, 116, 0, 0, 0, 115, 0, 0,
617 0, 0, 117, 117, 117, 117, 0, 116, 116, 117,
618 0, 117, 116, 0, 0, 0, 0, 117, 117, 117,
619 117, 0, 0, 0, 0, 0, 0, 0, 0, 114,
620 117, 117, 114, 117, 117, 117, 117, 117, 117, 117,
621 0, 0, 116, 0, 0, 0, 114, 114, 0, 0,
622 0, 114, 0, 0, 0, 0, 0, 0, 0, 0,
623 0, 0, 0, 0, 0, 0, 0, 0, 118, 118,
624 118, 118, 0, 103, 0, 118, 103, 118, 0, 0,
625 0, 114, 0, 118, 118, 118, 118, 0, 0, 0,
626 103, 103, 0, 0, 0, 103, 118, 118, 0, 118,
627 118, 118, 118, 118, 118, 118, 0, 0, 0, 0,
628 0, 0, 0, 0, 0, 0, 0, 104, 0, 0,
629 104, 0, 0, 0, 0, 103, 0, 0, 0, 139,
630 139, 139, 139, 0, 104, 104, 139, 0, 139, 104,
631 0, 0, 0, 0, 139, 139, 139, 139, 0, 0,
632 0, 0, 0, 0, 0, 0, 0, 139, 139, 0,
633 139, 139, 139, 139, 139, 139, 139, 0, 0, 104,
634 0, 0, 0, 0, 0, 0, 115, 115, 115, 115,
635 0, 105, 0, 115, 105, 115, 0, 0, 0, 0,
636 0, 115, 115, 115, 115, 0, 0, 0, 105, 105,
637 0, 0, 0, 105, 115, 115, 0, 115, 115, 115,
638 115, 115, 115, 115, 0, 0, 0, 0, 0, 0,
639 0, 116, 116, 116, 116, 0, 0, 0, 116, 165,
640 116, 0, 165, 105, 0, 0, 116, 116, 116, 116,
641 0, 0, 0, 0, 0, 0, 165, 165, 0, 116,
642 116, 165, 116, 116, 116, 116, 116, 116, 116, 0,
643 114, 114, 114, 114, 0, 164, 0, 114, 164, 114,
644 0, 0, 0, 0, 0, 114, 114, 114, 114, 0,
645 0, 165, 164, 164, 0, 0, 0, 164, 114, 114,
646 0, 114, 114, 114, 114, 114, 114, 114, 0, 0,
647 0, 0, 0, 0, 103, 103, 103, 103, 0, 128,
648 0, 103, 128, 103, 0, 0, 0, 164, 0, 103,
649 103, 103, 103, 0, 0, 0, 128, 128, 0, 0,
650 0, 128, 103, 103, 0, 103, 103, 103, 103, 103,
651 103, 103, 0, 0, 0, 0, 0, 0, 104, 104,
652 104, 104, 0, 141, 0, 104, 141, 104, 0, 0,
653 0, 128, 0, 104, 104, 104, 104, 0, 0, 0,
654 141, 141, 0, 0, 0, 141, 104, 104, 0, 104,
655 104, 104, 104, 104, 104, 0, 0, 0, 0, 0,
656 138, 0, 0, 138, 0, 0, 0, 0, 0, 0,
657 107, 0, 0, 107, 0, 141, 0, 138, 138, 0,
658 0, 0, 105, 105, 105, 105, 0, 107, 107, 105,
659 0, 105, 107, 0, 0, 0, 0, 105, 105, 0,
660 105, 0, 0, 0, 0, 0, 0, 0, 0, 0,
661 105, 105, 138, 105, 105, 105, 105, 105, 105, 0,
662 0, 0, 107, 0, 0, 109, 0, 0, 109, 0,
663 165, 165, 165, 165, 0, 110, 0, 165, 110, 165,
664 0, 0, 109, 109, 0, 165, 165, 109, 0, 0,
665 0, 0, 110, 110, 0, 0, 0, 110, 165, 165,
666 0, 165, 165, 165, 165, 165, 164, 164, 164, 164,
667 0, 112, 0, 164, 112, 164, 0, 109, 0, 0,
668 0, 164, 164, 0, 0, 0, 0, 110, 112, 112,
669 0, 0, 0, 112, 164, 164, 0, 164, 164, 164,
670 164, 164, 0, 0, 0, 0, 0, 0, 0, 0,
671 128, 128, 128, 128, 0, 111, 0, 128, 111, 128,
672 0, 0, 0, 112, 0, 128, 128, 0, 0, 0,
673 0, 0, 111, 111, 0, 0, 0, 111, 128, 128,
674 0, 128, 128, 128, 128, 128, 0, 77, 0, 0,
675 77, 0, 0, 0, 141, 141, 141, 141, 0, 0,
676 0, 141, 0, 141, 77, 77, 0, 111, 0, 141,
677 141, 0, 0, 0, 0, 0, 0, 0, 0, 0,
678 0, 0, 141, 141, 0, 141, 141, 141, 141, 141,
679 0, 138, 138, 138, 138, 0, 0, 0, 138, 77,
680 0, 107, 107, 107, 107, 0, 0, 0, 107, 0,
681 107, 0, 0, 0, 0, 0, 0, 107, 0, 138,
682 138, 0, 138, 0, 0, 0, 0, 0, 0, 107,
683 107, 0, 107, 107, 107, 107, 107, 0, 0, 0,
684 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
685 0, 0, 0, 0, 0, 0, 109, 109, 109, 109,
686 0, 0, 0, 109, 0, 109, 110, 110, 110, 110,
687 0, 0, 0, 110, 0, 110, 0, 0, 0, 0,
688 0, 0, 0, 0, 109, 109, 0, 109, 109, 109,
689 109, 109, 0, 0, 110, 110, 0, 110, 110, 110,
690 110, 0, 112, 112, 112, 112, 0, 0, 0, 112,
691 0, 112, 0, 0, 0, 0, 0, 0, 0, 0,
692 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
693 112, 112, 0, 112, 112, 112, 0, 0, 0, 0,
694 0, 0, 0, 0, 0, 0, 111, 111, 111, 111,
695 0, 0, 0, 111, 0, 0, 0, 0, 0, 0,
696 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
697 0, 0, 0, 0, 111, 111, 0, 111, 77, 77,
698 77, 77, 0, 0, 0, 77, 0, 0, 0, 0,
699 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
700 0, 0, 0, 0, 0, 0, 77, 77,
702 static short yycheck[] = { 15,
703 95, 36, 46, 41, 36, 40, 59, 59, 100, 208,
704 54, 41, 59, 199, 41, 40, 196, 257, 41, 93,
705 123, 44, 202, 36, 93, 59, 40, 40, 59, 29,
706 59, 40, 91, 49, 41, 58, 59, 41, 362, 131,
707 63, 257, 91, 41, 60, 61, 46, 47, 59, 94,
708 40, 15, 59, 53, 41, 40, 100, 41, 300, 301,
709 105, 59, 41, 59, 123, 65, 66, 67, 68, 393,
710 93, 40, 59, 41, 123, 41, 41, 91, 91, 123,
711 41, 45, 91, 44, 48, 40, 93, 131, 40, 123,
712 41, 123, 123, 59, 123, 41, 295, 58, 59, 115,
713 116, 44, 63, 106, 107, 108, 109, 110, 111, 123,
714 123, 40, 123, 59, 123, 40, 116, 133, 0, 59,
715 36, 37, 257, 59, 40, 89, 59, 278, 314, 59,
716 123, 41, 93, 266, 267, 268, 40, 270, 271, 338,
717 104, 157, 158, 159, 160, 161, 162, 163, 64, 59,
718 59, 33, 276, 277, 36, 37, 38, 41, 40, 44,
719 42, 43, 260, 45, 297, 181, 182, 183, 184, 185,
720 186, 187, 188, 189, 123, 59, 41, 59, 0, 41,
721 272, 257, 64, 199, 383, 40, 278, 203, 204, 40,
722 206, 155, 208, 41, 59, 298, 40, 59, 93, 215,
723 93, 217, 218, 8, 9, 257, 209, 125, 298, 91,
724 226, 33, 317, 91, 36, 37, 38, 93, 40, 93,
725 42, 43, 36, 45, 257, 257, 300, 301, 272, 41,
726 262, 300, 301, 298, 278, 125, 252, 59, 254, 255,
727 260, 123, 64, 125, 126, 258, 0, 300, 301, 272,
728 273, 274, 275, 300, 301, 91, 279, 40, 281, 93,
729 301, 296, 300, 301, 298, 272, 273, 274, 275, 91,
730 300, 301, 279, 300, 301, 370, 41, 300, 301, 33,
731 303, 304, 36, 37, 38, 260, 40, 40, 42, 43,
732 41, 45, 308, 300, 301, 41, 300, 301, 314, 41,
733 41, 123, 41, 125, 126, 59, 125, 271, 125, 273,
734 64, 272, 273, 274, 275, 279, 300, 301, 279, 59,
735 281, 300, 301, 125, 340, 125, 287, 288, 289, 290,
736 59, 41, 300, 301, 44, 300, 301, 91, 123, 300,
737 301, 41, 303, 304, 305, 306, 307, 308, 309, 300,
738 301, 312, 125, 63, 315, 316, 317, 300, 301, 41,
739 300, 301, 41, 379, 300, 301, 59, 300, 301, 123,
740 300, 301, 126, 40, 256, 257, 258, 259, 260, 261,
741 41, 263, 264, 265, 266, 267, 268, 269, 270, 271,
742 272, 273, 274, 275, 41, 41, 123, 279, 280, 41,
743 282, 283, 284, 285, 286, 300, 301, 300, 301, 291,
744 292, 293, 294, 295, 296, 297, 63, 123, 312, 41,
745 302, 315, 316, 317, 300, 301, 300, 301, 59, 311,
746 41, 313, 314, 59, 256, 257, 258, 259, 260, 261,
747 41, 263, 264, 265, 266, 267, 268, 269, 270, 271,
748 272, 273, 274, 275, 59, 41, 289, 279, 280, 35,
749 282, 283, 284, 285, 286, 52, 300, 301, 52, 291,
750 292, 293, 294, 295, 296, 297, 309, 15, 158, 312,
751 302, 379, 315, 316, 317, 206, 340, 24, -1, 311,
752 -1, 313, 314, 309, 273, 41, 312, -1, 44, 315,
753 316, 317, 256, 257, 258, 259, 260, 261, -1, 263,
754 264, 265, 58, 59, -1, 269, -1, 63, 272, 273,
755 274, 275, -1, 289, 290, 279, 280, -1, 282, 283,
756 284, 285, 286, -1, -1, 125, -1, 291, 292, 293,
757 294, 295, 296, 309, -1, -1, 312, 93, 302, 315,
758 316, 317, -1, -1, -1, -1, -1, 311, 33, 313,
759 314, 36, 37, 38, -1, 40, 41, 42, 43, 44,
760 45, 281, -1, 125, -1, -1, -1, 287, 288, 289,
761 290, -1, -1, 58, 59, -1, -1, -1, 63, 64,
762 -1, -1, -1, 303, 304, 305, 306, 307, 308, 309,
763 -1, -1, 312, -1, -1, 315, 316, 317, 272, 273,
764 274, 275, -1, -1, -1, 279, 91, -1, 93, 33,
765 -1, -1, 36, 37, 38, -1, 40, 41, 42, 43,
766 44, 45, -1, -1, 281, -1, 300, 301, -1, -1,
767 287, 288, 289, 290, 58, 59, -1, -1, -1, 63,
768 64, 126, -1, -1, -1, -1, 303, 304, 305, 306,
769 307, 308, 309, -1, -1, 312, -1, -1, 315, 316,
770 317, -1, -1, -1, -1, -1, 266, 267, 268, 93,
771 270, 271, 33, 289, 290, 36, 37, 38, -1, 40,
772 -1, 42, 43, -1, 45, -1, 359, 360, -1, -1,
773 -1, 364, 308, 309, -1, -1, 312, 297, 59, 315,
774 316, 317, 126, 64, 266, 267, 268, 380, 270, 271,
775 -1, 384, -1, -1, -1, -1, 272, 273, 274, 275,
776 -1, -1, -1, 279, -1, 281, -1, -1, -1, -1,
777 91, 287, 288, 289, 290, 297, -1, -1, -1, -1,
778 -1, -1, -1, -1, 300, 301, -1, 303, 304, 305,
779 306, 307, 308, 309, -1, -1, 312, -1, -1, 315,
780 316, 317, 123, -1, -1, 126, -1, -1, -1, -1,
781 -1, -1, 257, 258, 259, 260, 261, -1, 263, 264,
782 265, -1, -1, -1, 269, -1, -1, 272, 273, 274,
783 275, -1, -1, -1, 279, 280, 281, 282, 283, 284,
784 285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
785 295, 296, -1, -1, -1, 300, 301, 302, 303, 304,
786 305, 306, 307, 308, 309, -1, 311, 312, 313, 314,
787 315, 316, 317, 257, 258, 259, 260, 261, -1, 263,
788 264, 265, -1, -1, -1, 269, -1, -1, 272, 273,
789 274, 275, -1, -1, -1, 279, 280, 281, 282, 283,
790 284, 285, 286, 287, 288, 289, 290, 291, 292, 293,
791 294, 295, 296, -1, -1, -1, 300, 301, 302, 303,
792 304, 305, 306, 307, 308, 309, -1, 311, 312, 313,
793 314, 315, 316, 317, -1, 256, 257, 258, 259, 260,
794 261, 63, 263, 264, 265, -1, -1, -1, 269, -1,
795 -1, 272, 273, 274, 275, -1, -1, -1, 279, 280,
796 -1, 282, 283, 284, 285, 286, -1, -1, -1, -1,
797 291, 292, 293, 294, 295, 296, -1, -1, -1, 33,
798 -1, 302, 36, 37, 38, -1, 40, -1, 42, 43,
799 311, 45, 313, 314, -1, -1, -1, -1, 335, 336,
800 337, -1, 339, -1, -1, 59, -1, -1, -1, -1,
801 64, -1, -1, 41, -1, -1, 44, -1, -1, -1,
802 -1, -1, -1, -1, -1, -1, -1, -1, -1, 366,
803 58, 59, -1, -1, -1, -1, 373, 91, -1, 33,
804 377, -1, 36, 37, 38, -1, 40, -1, 42, 43,
805 -1, 45, -1, 390, 391, -1, 28, 29, -1, -1,
806 -1, -1, -1, -1, -1, 93, -1, -1, 40, 123,
807 64, -1, 126, -1, 46, 47, 48, -1, -1, 33,
808 52, 53, 36, 37, 38, -1, 40, -1, 42, 43,
809 -1, 45, -1, 65, 66, 67, 68, 91, 287, 288,
810 289, 290, -1, -1, -1, -1, -1, -1, -1, -1,
811 64, -1, -1, -1, -1, -1, -1, -1, 41, 308,
812 309, 44, -1, 312, -1, -1, 315, 316, 317, 123,
813 -1, -1, 126, -1, -1, 58, 59, 91, -1, -1,
814 63, -1, -1, 33, 116, -1, 36, 37, 38, -1,
815 40, -1, 42, 43, -1, 45, -1, -1, -1, 281,
816 -1, -1, -1, -1, -1, 287, 288, 289, 290, 123,
817 93, -1, 126, -1, 64, -1, -1, -1, -1, -1,
818 -1, 303, 304, 305, 306, 307, 308, 309, -1, -1,
819 312, -1, -1, 315, 316, 317, -1, -1, -1, -1,
820 -1, 91, 256, 257, 258, 259, 260, 261, 180, 263,
821 264, 265, -1, -1, -1, 269, -1, -1, 272, 273,
822 274, 275, -1, -1, -1, 279, 280, -1, 282, 283,
823 284, 285, 286, 123, -1, 207, 126, 291, 292, 293,
824 294, 295, 296, -1, 272, 273, 274, 275, 302, -1,
825 -1, 279, -1, -1, -1, -1, -1, 311, -1, 313,
826 314, -1, -1, 257, 258, 259, 260, 261, 262, 263,
827 264, 265, 300, 301, -1, 269, -1, -1, -1, -1,
828 -1, -1, -1, -1, -1, -1, 280, -1, 282, 283,
829 284, 285, 286, -1, -1, -1, -1, 291, 292, 293,
830 294, 295, 296, 257, 258, 259, 260, 261, 302, 263,
831 264, 265, -1, -1, -1, 269, -1, 311, -1, 313,
832 314, -1, 58, -1, -1, -1, 280, 63, 282, 283,
833 284, 285, 286, -1, -1, -1, -1, 291, 292, 293,
834 294, 295, 296, -1, -1, -1, -1, -1, 302, 272,
835 273, 274, 275, -1, -1, -1, 279, 311, 281, 313,
836 314, -1, -1, -1, 287, 288, -1, 257, 258, 259,
837 260, 261, -1, 263, 264, 265, -1, 300, 301, 269,
838 303, 304, 305, 306, 307, 308, -1, -1, -1, -1,
839 280, -1, 282, 283, 284, 285, 286, -1, -1, -1,
840 -1, 291, 292, 293, 294, 295, 296, -1, -1, -1,
841 33, -1, 302, 36, 37, 38, -1, 40, -1, 42,
842 43, 311, 45, 313, 314, -1, -1, -1, -1, -1,
843 -1, -1, -1, -1, -1, -1, 59, -1, -1, -1,
844 -1, 64, -1, -1, -1, 287, 288, 289, 290, -1,
845 33, -1, -1, 36, 37, 38, -1, 40, 41, 42,
846 43, -1, 45, 305, 306, 307, 308, 309, 91, -1,
847 312, -1, -1, 315, 316, 317, -1, -1, -1, -1,
848 -1, 64, -1, -1, -1, 287, 288, 289, 290, -1,
849 33, -1, -1, 36, 37, 38, -1, 40, -1, 42,
850 43, -1, 45, 126, 306, 307, 308, 309, 91, -1,
851 312, -1, -1, 315, 316, 317, -1, -1, -1, -1,
852 -1, 64, -1, -1, -1, -1, -1, -1, -1, -1,
853 33, -1, -1, 36, 37, 38, -1, 40, 41, 42,
854 43, -1, 45, 126, -1, 281, -1, -1, 91, -1,
855 93, 287, 288, 289, 290, -1, -1, -1, -1, -1,
856 -1, 64, -1, -1, -1, -1, -1, 303, 304, 305,
857 306, 307, 308, 309, -1, -1, 312, -1, -1, 315,
858 316, 317, -1, 126, 287, 288, 289, 290, 91, -1,
859 33, -1, -1, 36, 37, 38, -1, 40, 41, 42,
860 43, -1, 45, -1, 307, 308, 309, -1, -1, 312,
861 -1, -1, 315, 316, 317, -1, -1, -1, -1, -1,
862 -1, 64, 287, 126, 289, 290, -1, -1, -1, -1,
863 -1, -1, -1, -1, 257, 258, 259, 260, 261, -1,
864 263, 264, 265, 308, 309, -1, 269, 312, 91, -1,
865 315, 316, 317, -1, -1, -1, -1, 280, -1, 282,
866 283, 284, 285, 286, -1, -1, -1, -1, 291, 292,
867 293, 294, 295, 296, 257, 258, 259, 260, 261, 302,
868 263, 264, 265, 126, -1, -1, 269, -1, 311, -1,
869 313, 314, -1, -1, -1, -1, -1, 280, -1, 282,
870 283, 284, 285, 286, -1, -1, -1, -1, 291, 292,
871 293, 294, 295, 296, 257, 258, 259, 260, 261, 302,
872 263, 264, 265, -1, -1, -1, 269, -1, 311, -1,
873 313, 314, -1, -1, -1, -1, -1, 280, -1, 282,
874 283, 284, 285, 286, -1, -1, -1, -1, 291, 292,
875 293, 294, 295, 296, 257, 258, 259, 260, 261, 302,
876 263, 264, 265, -1, -1, -1, 269, -1, 311, -1,
877 313, 314, -1, -1, -1, -1, -1, 280, -1, 282,
878 283, 284, 285, 286, -1, -1, -1, -1, 291, 292,
879 293, 294, 295, 296, -1, -1, -1, 33, -1, 302,
880 36, 37, 38, -1, 40, 41, 42, 43, 311, 45,
881 313, 314, -1, -1, 257, 258, 259, 260, 261, -1,
882 263, 264, 265, -1, -1, -1, 269, -1, 64, -1,
883 -1, -1, -1, -1, -1, -1, -1, 280, -1, 282,
884 283, 284, 285, 286, -1, -1, -1, -1, 291, 292,
885 293, 294, 295, 296, -1, 91, -1, 33, -1, 302,
886 36, 37, 38, -1, 40, 41, 42, 43, 311, 45,
887 313, 314, -1, -1, -1, -1, -1, -1, -1, -1,
888 -1, -1, -1, -1, -1, -1, -1, -1, 64, -1,
889 126, -1, -1, -1, -1, -1, 41, -1, -1, 44,
890 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
891 -1, -1, -1, 58, 59, 91, 33, -1, 63, 36,
892 37, 38, -1, 40, -1, 42, 43, -1, 45, -1,
893 -1, -1, -1, -1, 287, 288, 289, 290, -1, -1,
894 -1, -1, -1, -1, -1, -1, -1, 64, 93, -1,
895 126, 304, 305, 306, 307, 308, 309, -1, -1, 312,
896 -1, -1, 315, 316, 317, -1, -1, -1, -1, -1,
897 -1, -1, -1, -1, 91, -1, 33, -1, -1, 36,
898 37, 38, -1, 40, 41, 42, 43, -1, 45, -1,
899 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
900 -1, -1, -1, -1, -1, -1, -1, 64, -1, 126,
901 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
902 -1, 257, 258, 259, 260, 261, -1, 263, 264, 265,
903 -1, -1, -1, 269, 91, -1, -1, -1, -1, -1,
904 -1, -1, -1, -1, 280, -1, 282, 283, 284, 285,
905 286, -1, -1, -1, -1, 291, 292, 293, 294, 295,
906 296, 41, -1, -1, 44, -1, 302, -1, -1, 126,
907 -1, -1, -1, -1, -1, 311, -1, 313, 314, 59,
908 -1, 257, 258, 259, 260, 261, -1, 263, 264, 265,
909 -1, 33, -1, 269, 36, 37, 38, -1, 40, 41,
910 42, 43, -1, 45, 280, -1, 282, 283, 284, 285,
911 286, -1, -1, 93, -1, 291, 292, 293, 294, 295,
912 296, -1, 64, -1, -1, -1, 302, 272, 273, 274,
913 275, -1, -1, -1, 279, 311, 281, 313, 314, 256,
914 257, 258, 259, 260, 261, -1, 263, 264, 265, 91,
915 -1, -1, 269, -1, -1, 300, 301, -1, 303, 304,
916 305, 306, 307, 280, -1, 282, 283, 284, 285, 286,
917 -1, -1, -1, -1, 291, 292, 293, 294, 295, 296,
918 -1, -1, -1, 33, 126, 302, 36, 37, 38, -1,
919 40, 41, 42, 43, 311, 45, 313, 314, -1, -1,
920 257, 258, 259, 260, 261, -1, 263, 264, 265, -1,
921 -1, -1, 269, -1, 64, -1, -1, -1, -1, -1,
922 -1, -1, -1, 280, -1, 282, 283, 284, 285, 286,
923 -1, -1, -1, -1, 291, 292, 293, 294, 295, 296,
924 -1, 91, -1, 33, -1, 302, 36, 37, 38, -1,
925 40, -1, 42, 43, 311, 45, 313, 314, -1, -1,
926 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
927 -1, -1, -1, -1, 64, -1, 126, -1, -1, -1,
928 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
929 -1, -1, 272, 273, 274, 275, -1, -1, -1, 279,
930 -1, 91, -1, -1, -1, -1, -1, -1, -1, -1,
931 -1, -1, -1, -1, -1, 257, 258, 259, 260, 261,
932 300, 263, 264, 265, -1, -1, -1, 269, -1, -1,
933 -1, -1, -1, -1, -1, -1, 126, -1, 280, -1,
934 282, 283, 284, 285, 286, -1, 41, -1, -1, 291,
935 292, 293, 294, 295, 296, -1, -1, -1, -1, -1,
936 302, -1, -1, 58, 59, -1, -1, -1, 63, 311,
937 -1, 313, 314, -1, -1, -1, -1, -1, -1, -1,
938 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
939 -1, -1, -1, -1, -1, -1, -1, -1, 93, -1,
940 -1, -1, -1, -1, -1, -1, -1, 257, 258, 259,
941 260, 261, -1, 263, 264, 265, -1, -1, -1, 269,
942 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
943 280, -1, 282, 283, 284, 285, 286, 41, -1, -1,
944 44, 291, 292, 293, 294, 295, 296, -1, -1, -1,
945 -1, -1, 302, -1, 58, 59, -1, -1, -1, 63,
946 -1, 311, -1, 313, 314, -1, -1, 257, 258, 259,
947 260, 261, -1, 263, 264, 265, -1, -1, -1, 269,
948 -1, -1, -1, -1, -1, -1, -1, -1, -1, 93,
949 280, -1, 282, 283, 284, 285, 286, -1, -1, -1,
950 -1, 291, 292, 293, 294, 295, 296, 33, -1, -1,
951 63, -1, 302, -1, -1, 41, -1, -1, -1, 45,
952 -1, 311, 48, 313, 314, 51, -1, -1, -1, 55,
953 56, 57, 58, 59, -1, -1, -1, 63, 64, 41,
954 -1, -1, 44, -1, -1, -1, -1, -1, -1, -1,
955 -1, -1, -1, -1, -1, -1, 58, 59, -1, -1,
956 -1, 63, -1, -1, -1, -1, -1, -1, -1, -1,
957 -1, -1, -1, -1, -1, -1, 102, 272, 273, 274,
958 275, -1, -1, -1, 279, 41, 281, -1, 44, -1,
959 -1, 93, 287, 288, 289, 290, -1, -1, -1, -1,
960 -1, -1, 58, 59, -1, 300, 301, 63, 303, 304,
961 305, 306, 307, 308, 309, -1, -1, 312, -1, -1,
962 315, 316, 317, -1, -1, -1, -1, -1, -1, -1,
963 -1, -1, -1, -1, -1, -1, -1, 93, 164, 165,
964 166, 167, 168, 169, 170, 171, 172, 173, 174, 175,
965 176, 177, -1, -1, -1, -1, -1, -1, -1, -1,
966 -1, -1, -1, -1, -1, 191, -1, -1, 272, 273,
967 274, 275, -1, 41, -1, 279, 44, 281, -1, -1,
968 -1, -1, -1, 287, 288, 289, 290, -1, -1, -1,
969 58, 59, -1, -1, -1, 63, 300, 301, -1, 303,
970 304, 305, 306, 307, 308, 309, -1, -1, 312, -1,
971 -1, 315, 316, 317, -1, -1, -1, -1, -1, -1,
972 -1, -1, -1, 41, -1, 93, 44, -1, 281, -1,
973 -1, -1, -1, -1, 287, 288, 289, 290, -1, -1,
974 58, 59, -1, -1, -1, 63, -1, -1, -1, -1,
975 276, 304, 305, 306, 307, 308, 309, -1, -1, 312,
976 -1, -1, 315, 316, 317, -1, -1, -1, -1, -1,
977 272, 273, 274, 275, -1, 93, -1, 279, 41, 281,
978 -1, 44, -1, 309, -1, 287, 288, 289, 290, -1,
979 -1, -1, -1, -1, -1, 58, 59, -1, 300, 301,
980 63, 303, 304, 305, 306, 307, 308, 309, -1, -1,
981 312, -1, -1, 315, 316, 317, 272, 273, 274, 275,
982 -1, -1, -1, 279, 41, 281, -1, 44, -1, -1,
983 93, 287, 288, 289, 290, -1, -1, -1, -1, -1,
984 -1, 58, 59, -1, 300, 301, 63, 303, 304, 305,
985 306, 307, 308, 309, -1, -1, 312, -1, -1, 315,
986 316, 317, -1, -1, -1, -1, -1, -1, -1, -1,
987 -1, 41, -1, -1, 44, -1, 93, -1, -1, -1,
988 -1, -1, -1, -1, -1, -1, -1, -1, 58, 59,
989 -1, -1, -1, 63, -1, -1, -1, -1, -1, -1,
990 -1, -1, -1, -1, 272, 273, 274, 275, -1, -1,
991 -1, 279, -1, 281, -1, -1, -1, -1, -1, 287,
992 288, 289, 290, 93, -1, -1, -1, -1, 41, -1,
993 -1, 44, 300, 301, -1, 303, 304, 305, 306, 307,
994 308, 309, -1, -1, 312, 58, 59, 315, 316, 317,
995 63, -1, -1, -1, 272, 273, 274, 275, -1, -1,
996 -1, 279, -1, 281, -1, -1, -1, -1, -1, 287,
997 288, 289, 290, -1, -1, -1, -1, -1, 41, -1,
998 93, 44, 300, 301, -1, 303, 304, 305, 306, 307,
999 308, 309, -1, -1, 312, 58, 59, 315, 316, 317,
1000 63, -1, -1, -1, -1, -1, -1, -1, -1, 272,
1001 273, 274, 275, -1, -1, -1, 279, -1, 281, -1,
1002 -1, -1, -1, -1, 287, 288, 289, 290, -1, -1,
1003 93, -1, -1, -1, -1, -1, -1, 300, 301, -1,
1004 303, 304, 305, 306, 307, 308, 309, -1, -1, 312,
1005 -1, -1, 315, 316, 317, 272, 273, 274, 275, -1,
1006 41, -1, 279, 44, 281, -1, -1, -1, -1, -1,
1007 287, 288, 289, 290, -1, -1, -1, 58, 59, -1,
1008 -1, -1, 63, 300, 301, -1, 303, 304, 305, 306,
1009 307, 308, 309, -1, -1, 312, -1, -1, 315, 316,
1010 317, -1, 272, 273, 274, 275, -1, -1, -1, 279,
1011 -1, 281, 93, -1, -1, -1, -1, 287, 288, 289,
1012 290, -1, -1, -1, -1, -1, 41, -1, -1, 44,
1013 300, 301, -1, 303, 304, 305, 306, 307, 308, 309,
1014 -1, -1, 312, 58, 59, 315, 316, 317, 63, -1,
1015 -1, -1, -1, -1, -1, -1, -1, -1, -1, 272,
1016 273, 274, 275, -1, -1, -1, 279, -1, 281, -1,
1017 -1, -1, -1, -1, 287, 288, 289, 290, 93, -1,
1018 -1, -1, -1, 41, -1, -1, 44, 300, 301, -1,
1019 303, 304, 305, 306, 307, 308, 309, -1, -1, 312,
1020 58, 59, 315, 316, 317, 63, -1, -1, -1, 272,
1021 273, 274, 275, -1, -1, -1, 279, -1, 281, -1,
1022 -1, -1, -1, -1, 287, 288, 289, 290, -1, -1,
1023 -1, -1, -1, 41, -1, 93, 44, 300, 301, -1,
1024 303, 304, 305, 306, 307, 308, 309, -1, -1, 312,
1025 58, 59, 315, 316, 317, 63, -1, -1, -1, -1,
1026 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1027 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1028 -1, -1, -1, -1, -1, 93, 41, -1, -1, 44,
1029 -1, 272, 273, 274, 275, 41, -1, -1, 279, -1,
1030 281, -1, -1, 58, 59, -1, 287, 288, 289, 290,
1031 -1, -1, 58, 59, -1, -1, -1, 63, -1, 300,
1032 301, -1, 303, 304, 305, 306, 307, 308, 309, -1,
1033 -1, 312, -1, -1, 315, 316, 317, -1, 93, -1,
1034 -1, -1, -1, -1, -1, -1, -1, 93, -1, -1,
1035 -1, -1, -1, 41, -1, -1, 44, 272, 273, 274,
1036 275, 41, -1, -1, 279, -1, 281, -1, -1, -1,
1037 58, 59, 287, 288, 289, 290, -1, -1, 58, 59,
1038 -1, -1, -1, 63, -1, 300, 301, -1, 303, 304,
1039 305, 306, 307, 308, 309, -1, -1, 312, -1, -1,
1040 315, 316, 317, -1, -1, 93, -1, -1, -1, -1,
1041 -1, -1, -1, 93, 272, 273, 274, 275, -1, -1,
1042 -1, 279, 41, 281, -1, 44, -1, -1, -1, 287,
1043 288, 289, 290, -1, -1, -1, -1, -1, -1, 58,
1044 59, -1, 300, 301, 63, 303, 304, 305, 306, 307,
1045 308, 309, -1, -1, 312, -1, -1, 315, 316, 317,
1046 -1, -1, -1, -1, 272, 273, 274, 275, -1, 41,
1047 -1, 279, 44, 281, 93, -1, -1, -1, -1, 287,
1048 288, 289, 290, -1, -1, -1, 58, 59, -1, -1,
1049 -1, 63, 300, 301, -1, 303, 304, 305, 306, 307,
1050 308, 309, -1, -1, 312, -1, -1, 315, 316, 317,
1051 -1, -1, -1, -1, -1, -1, -1, 272, 273, 274,
1052 275, 93, -1, -1, 279, -1, 272, 273, 274, 275,
1053 -1, 41, -1, 279, 44, 281, -1, -1, -1, -1,
1054 -1, 287, 288, 289, 290, 300, 301, -1, 58, 59,
1055 -1, -1, -1, 63, 300, 301, -1, 303, 304, 305,
1056 306, 307, 308, 309, -1, -1, 312, -1, -1, 315,
1057 316, 317, -1, -1, -1, -1, -1, -1, -1, -1,
1058 -1, -1, -1, 93, 272, 273, 274, 275, -1, -1,
1059 -1, 279, 272, 273, 274, 275, -1, 41, -1, 279,
1060 44, 281, -1, -1, -1, -1, -1, 287, 288, 289,
1061 290, -1, 300, 301, 58, 59, -1, -1, -1, 63,
1062 300, 301, -1, 303, 304, 305, 306, 307, 308, 309,
1063 -1, -1, 312, -1, -1, 315, 316, 317, -1, -1,
1064 -1, -1, -1, -1, -1, -1, -1, -1, -1, 93,
1065 -1, -1, -1, 272, 273, 274, 275, -1, 41, -1,
1066 279, 44, 281, -1, -1, -1, -1, -1, 287, 288,
1067 289, 290, -1, -1, -1, 58, 59, -1, -1, -1,
1068 63, 300, 301, -1, 303, 304, 305, 306, 307, 308,
1069 309, -1, -1, 312, -1, -1, -1, -1, -1, -1,
1070 272, 273, 274, 275, -1, 41, -1, 279, 44, 281,
1071 93, -1, -1, -1, -1, 287, 288, 289, 290, -1,
1072 -1, -1, 58, 59, -1, -1, -1, 63, 300, 301,
1073 -1, 303, 304, 305, 306, 307, 308, 309, -1, -1,
1074 312, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1075 41, -1, -1, 44, -1, -1, -1, 93, -1, -1,
1076 -1, -1, 272, 273, 274, 275, -1, 58, 59, 279,
1077 -1, 281, 63, -1, -1, -1, -1, 287, 288, 289,
1078 290, -1, -1, -1, -1, -1, -1, -1, -1, 41,
1079 300, 301, 44, 303, 304, 305, 306, 307, 308, 309,
1080 -1, -1, 93, -1, -1, -1, 58, 59, -1, -1,
1081 -1, 63, -1, -1, -1, -1, -1, -1, -1, -1,
1082 -1, -1, -1, -1, -1, -1, -1, -1, 272, 273,
1083 274, 275, -1, 41, -1, 279, 44, 281, -1, -1,
1084 -1, 93, -1, 287, 288, 289, 290, -1, -1, -1,
1085 58, 59, -1, -1, -1, 63, 300, 301, -1, 303,
1086 304, 305, 306, 307, 308, 309, -1, -1, -1, -1,
1087 -1, -1, -1, -1, -1, -1, -1, 41, -1, -1,
1088 44, -1, -1, -1, -1, 93, -1, -1, -1, 272,
1089 273, 274, 275, -1, 58, 59, 279, -1, 281, 63,
1090 -1, -1, -1, -1, 287, 288, 289, 290, -1, -1,
1091 -1, -1, -1, -1, -1, -1, -1, 300, 301, -1,
1092 303, 304, 305, 306, 307, 308, 309, -1, -1, 93,
1093 -1, -1, -1, -1, -1, -1, 272, 273, 274, 275,
1094 -1, 41, -1, 279, 44, 281, -1, -1, -1, -1,
1095 -1, 287, 288, 289, 290, -1, -1, -1, 58, 59,
1096 -1, -1, -1, 63, 300, 301, -1, 303, 304, 305,
1097 306, 307, 308, 309, -1, -1, -1, -1, -1, -1,
1098 -1, 272, 273, 274, 275, -1, -1, -1, 279, 41,
1099 281, -1, 44, 93, -1, -1, 287, 288, 289, 290,
1100 -1, -1, -1, -1, -1, -1, 58, 59, -1, 300,
1101 301, 63, 303, 304, 305, 306, 307, 308, 309, -1,
1102 272, 273, 274, 275, -1, 41, -1, 279, 44, 281,
1103 -1, -1, -1, -1, -1, 287, 288, 289, 290, -1,
1104 -1, 93, 58, 59, -1, -1, -1, 63, 300, 301,
1105 -1, 303, 304, 305, 306, 307, 308, 309, -1, -1,
1106 -1, -1, -1, -1, 272, 273, 274, 275, -1, 41,
1107 -1, 279, 44, 281, -1, -1, -1, 93, -1, 287,
1108 288, 289, 290, -1, -1, -1, 58, 59, -1, -1,
1109 -1, 63, 300, 301, -1, 303, 304, 305, 306, 307,
1110 308, 309, -1, -1, -1, -1, -1, -1, 272, 273,
1111 274, 275, -1, 41, -1, 279, 44, 281, -1, -1,
1112 -1, 93, -1, 287, 288, 289, 290, -1, -1, -1,
1113 58, 59, -1, -1, -1, 63, 300, 301, -1, 303,
1114 304, 305, 306, 307, 308, -1, -1, -1, -1, -1,
1115 41, -1, -1, 44, -1, -1, -1, -1, -1, -1,
1116 41, -1, -1, 44, -1, 93, -1, 58, 59, -1,
1117 -1, -1, 272, 273, 274, 275, -1, 58, 59, 279,
1118 -1, 281, 63, -1, -1, -1, -1, 287, 288, -1,
1119 290, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1120 300, 301, 93, 303, 304, 305, 306, 307, 308, -1,
1121 -1, -1, 93, -1, -1, 41, -1, -1, 44, -1,
1122 272, 273, 274, 275, -1, 41, -1, 279, 44, 281,
1123 -1, -1, 58, 59, -1, 287, 288, 63, -1, -1,
1124 -1, -1, 58, 59, -1, -1, -1, 63, 300, 301,
1125 -1, 303, 304, 305, 306, 307, 272, 273, 274, 275,
1126 -1, 41, -1, 279, 44, 281, -1, 93, -1, -1,
1127 -1, 287, 288, -1, -1, -1, -1, 93, 58, 59,
1128 -1, -1, -1, 63, 300, 301, -1, 303, 304, 305,
1129 306, 307, -1, -1, -1, -1, -1, -1, -1, -1,
1130 272, 273, 274, 275, -1, 41, -1, 279, 44, 281,
1131 -1, -1, -1, 93, -1, 287, 288, -1, -1, -1,
1132 -1, -1, 58, 59, -1, -1, -1, 63, 300, 301,
1133 -1, 303, 304, 305, 306, 307, -1, 41, -1, -1,
1134 44, -1, -1, -1, 272, 273, 274, 275, -1, -1,
1135 -1, 279, -1, 281, 58, 59, -1, 93, -1, 287,
1136 288, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1137 -1, -1, 300, 301, -1, 303, 304, 305, 306, 307,
1138 -1, 272, 273, 274, 275, -1, -1, -1, 279, 93,
1139 -1, 272, 273, 274, 275, -1, -1, -1, 279, -1,
1140 281, -1, -1, -1, -1, -1, -1, 288, -1, 300,
1141 301, -1, 303, -1, -1, -1, -1, -1, -1, 300,
1142 301, -1, 303, 304, 305, 306, 307, -1, -1, -1,
1143 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1144 -1, -1, -1, -1, -1, -1, 272, 273, 274, 275,
1145 -1, -1, -1, 279, -1, 281, 272, 273, 274, 275,
1146 -1, -1, -1, 279, -1, 281, -1, -1, -1, -1,
1147 -1, -1, -1, -1, 300, 301, -1, 303, 304, 305,
1148 306, 307, -1, -1, 300, 301, -1, 303, 304, 305,
1149 306, -1, 272, 273, 274, 275, -1, -1, -1, 279,
1150 -1, 281, -1, -1, -1, -1, -1, -1, -1, -1,
1151 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1152 300, 301, -1, 303, 304, 305, -1, -1, -1, -1,
1153 -1, -1, -1, -1, -1, -1, 272, 273, 274, 275,
1154 -1, -1, -1, 279, -1, -1, -1, -1, -1, -1,
1155 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1156 -1, -1, -1, -1, 300, 301, -1, 303, 272, 273,
1157 274, 275, -1, -1, -1, 279, -1, -1, -1, -1,
1158 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1159 -1, -1, -1, -1, -1, -1, 300, 301,
1165 #define YYMAXTOKEN 317
1167 static char *yyname[] = {
1168 "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,
1169 "'!'",0,0,"'$'","'%'","'&'",0,"'('","')'","'*'","'+'","','","'-'",0,0,0,0,0,0,0,
1170 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,
1171 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,
1172 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,
1173 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,
1174 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,
1175 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",
1176 "PMFUNC","PRIVATEREF","FUNC0SUB","UNIOPSUB","LSTOPSUB","LABEL","FORMAT","SUB",
1177 "ANONSUB","PACKAGE","USE","WHILE","UNTIL","IF","UNLESS","ELSE","ELSIF",
1178 "CONTINUE","FOR","LOOPEX","DOTDOT","FUNC0","FUNC1","FUNC","UNIOP","LSTOP",
1179 "RELOP","EQOP","MULOP","ADDOP","DOLSHARP","DO","HASHBRACK","NOAMP","LOCAL","MY",
1180 "MYSUB","COLONATTR","PREC_LOW","OROP","ANDOP","NOTOP","ASSIGNOP","OROR",
1181 "ANDAND","BITOROP","BITANDOP","SHIFTOP","MATCHOP","UMINUS","REFGEN","POWOP",
1182 "PREINC","PREDEC","POSTINC","POSTDEC","ARROW",
1184 static char *yyrule[] = {
1186 "prog : progstart lineseq",
1187 "block : '{' remember lineseq '}'",
1190 "mblock : '{' mremember lineseq '}'",
1193 "lineseq : lineseq decl",
1194 "lineseq : lineseq line",
1195 "line : label cond",
1198 "line : label sideff ';'",
1201 "sideff : expr IF expr",
1202 "sideff : expr UNLESS expr",
1203 "sideff : expr WHILE expr",
1204 "sideff : expr UNTIL iexpr",
1205 "sideff : expr FOR expr",
1207 "else : ELSE mblock",
1208 "else : ELSIF '(' mexpr ')' mblock else",
1209 "cond : IF '(' remember mexpr ')' mblock else",
1210 "cond : UNLESS '(' remember miexpr ')' mblock else",
1212 "cont : CONTINUE block",
1213 "loop : label WHILE '(' remember mtexpr ')' mblock cont",
1214 "loop : label UNTIL '(' remember miexpr ')' mblock cont",
1215 "loop : label FOR MY remember my_scalar '(' mexpr ')' mblock cont",
1216 "loop : label FOR scalar '(' remember mexpr ')' mblock cont",
1217 "loop : label FOR '(' remember mexpr ')' mblock cont",
1218 "loop : label FOR '(' remember mnexpr ';' mtexpr ';' mnexpr ')' mblock",
1219 "loop : label block cont",
1236 "format : FORMAT startformsub formname block",
1239 "mysubrout : MYSUB startsub subname proto subattrlist subbody",
1240 "subrout : SUB startsub subname proto subattrlist subbody",
1248 "subattrlist : COLONATTR THING",
1249 "subattrlist : COLONATTR",
1250 "myattrlist : COLONATTR THING",
1251 "myattrlist : COLONATTR",
1254 "package : PACKAGE WORD ';'",
1255 "package : PACKAGE ';'",
1257 "use : USE startsub $$1 WORD WORD listexpr ';'",
1258 "expr : expr ANDOP expr",
1259 "expr : expr OROP expr",
1261 "argexpr : argexpr ','",
1262 "argexpr : argexpr ',' term",
1264 "listop : LSTOP indirob argexpr",
1265 "listop : FUNC '(' indirob expr ')'",
1266 "listop : term ARROW method '(' listexprcom ')'",
1267 "listop : term ARROW method",
1268 "listop : METHOD indirob listexpr",
1269 "listop : FUNCMETH indirob '(' listexprcom ')'",
1270 "listop : LSTOP listexpr",
1271 "listop : FUNC '(' listexprcom ')'",
1273 "listop : LSTOPSUB startanonsub block $$2 listexpr",
1276 "subscripted : star '{' expr ';' '}'",
1277 "subscripted : scalar '[' expr ']'",
1278 "subscripted : term ARROW '[' expr ']'",
1279 "subscripted : subscripted '[' expr ']'",
1280 "subscripted : scalar '{' expr ';' '}'",
1281 "subscripted : term ARROW '{' expr ';' '}'",
1282 "subscripted : subscripted '{' expr ';' '}'",
1283 "subscripted : term ARROW '(' ')'",
1284 "subscripted : term ARROW '(' expr ')'",
1285 "subscripted : subscripted '(' expr ')'",
1286 "subscripted : subscripted '(' ')'",
1287 "termbinop : term ASSIGNOP term",
1288 "termbinop : term POWOP term",
1289 "termbinop : term MULOP term",
1290 "termbinop : term ADDOP term",
1291 "termbinop : term SHIFTOP term",
1292 "termbinop : term RELOP term",
1293 "termbinop : term EQOP term",
1294 "termbinop : term BITANDOP term",
1295 "termbinop : term BITOROP term",
1296 "termbinop : term DOTDOT term",
1297 "termbinop : term ANDAND term",
1298 "termbinop : term OROR term",
1299 "termbinop : term MATCHOP term",
1300 "termunop : '-' term",
1301 "termunop : '+' term",
1302 "termunop : '!' term",
1303 "termunop : '~' term",
1304 "termunop : term POSTINC",
1305 "termunop : term POSTDEC",
1306 "termunop : PREINC term",
1307 "termunop : PREDEC term",
1308 "anonymous : '[' expr ']'",
1309 "anonymous : '[' ']'",
1310 "anonymous : HASHBRACK expr ';' '}'",
1311 "anonymous : HASHBRACK ';' '}'",
1312 "anonymous : ANONSUB startanonsub proto subattrlist block",
1314 "termdo : DO block",
1315 "termdo : DO WORD '(' ')'",
1316 "termdo : DO WORD '(' expr ')'",
1317 "termdo : DO scalar '(' ')'",
1318 "termdo : DO scalar '(' expr ')'",
1323 "term : term '?' term ':' term",
1324 "term : REFGEN term",
1325 "term : myattrterm",
1326 "term : LOCAL term",
1327 "term : '(' expr ')'",
1334 "term : subscripted",
1335 "term : '(' expr ')' '[' expr ']'",
1336 "term : '(' ')' '[' expr ']'",
1337 "term : ary '[' expr ']'",
1338 "term : ary '{' expr ';' '}'",
1341 "term : amper '(' ')'",
1342 "term : amper '(' expr ')'",
1343 "term : NOAMP WORD listexpr",
1345 "term : LOOPEX term",
1346 "term : NOTOP argexpr",
1348 "term : UNIOP block",
1349 "term : UNIOP term",
1350 "term : UNIOPSUB term",
1352 "term : FUNC0 '(' ')'",
1354 "term : FUNC1 '(' ')'",
1355 "term : FUNC1 '(' expr ')'",
1356 "term : PMFUNC '(' term ')'",
1357 "term : PMFUNC '(' term ',' term ')'",
1360 "myattrterm : MY myterm myattrlist",
1361 "myattrterm : MY myterm",
1362 "myterm : '(' expr ')'",
1368 "listexpr : argexpr",
1370 "listexprcom : expr",
1371 "listexprcom : expr ','",
1372 "my_scalar : scalar",
1373 "amper : '&' indirob",
1374 "scalar : '$' indirob",
1375 "ary : '@' indirob",
1376 "hsh : '%' indirob",
1377 "arylen : DOLSHARP indirob",
1378 "star : '*' indirob",
1382 "indirob : PRIVATEREF",
1385 #define yyclearin (yychar=(-1))
1386 #define yyerrok (yyerrflag=0)
1389 #define YYMAXDEPTH YYSTACKSIZE
1393 #define YYSTACKSIZE YYMAXDEPTH
1395 #define YYSTACKSIZE 500
1396 #define YYMAXDEPTH 500
1402 /* more stuff added to make perly_c.diff easier to apply */
1407 #define yyparse() Perl_yyparse(pTHX)
1409 #line 1409 "perly.c"
1410 #define YYABORT goto yyabort
1411 #define YYACCEPT goto yyaccept
1412 #define YYERROR goto yyerrlab
1416 register int yym, yyn, yystate;
1417 register short *yyssp;
1418 register YYSTYPE *yyvsp;
1421 unsigned yystacksize = YYSTACKSIZE;
1429 ENTER; /* force yydestruct() before we return */
1431 New(73, ysave, 1, struct ysv);
1432 SAVEDESTRUCTOR_X(yydestruct, ysave);
1433 ysave->oldyydebug = yydebug;
1434 ysave->oldyynerrs = yynerrs;
1435 ysave->oldyyerrflag = yyerrflag;
1436 ysave->oldyychar = yychar;
1437 ysave->oldyyval = yyval;
1438 ysave->oldyylval = yylval;
1442 register int saved_errno = errno;
1444 register int saved_vaxc_errno = vaxc$errno;
1446 register int saved_vaxc_errno = 0;
1448 if ((yys = getenv("YYDEBUG")))
1451 if (yyn >= '0' && yyn <= '9')
1452 yydebug = yyn - '0';
1454 else SETERRNO(saved_errno,saved_vaxc_errno);
1463 ** Initialize private stacks (yyparse may be called from an action)
1465 New(73, yyss, yystacksize, short);
1466 New(73, yyvs, yystacksize, YYSTYPE);
1474 *yyssp = yystate = 0;
1477 if ((yyn = yydefred[yystate])) goto yyreduce;
1480 if ((yychar = yylex()) < 0) yychar = 0;
1485 if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
1486 if (!yys) yys = "illegal-symbol";
1487 PerlIO_printf(Perl_debug_log, "yydebug: state %d, reading %d (%s)\n", yystate,
1492 if ((yyn = yysindex[yystate]) && (yyn += yychar) >= 0 &&
1493 yyn <= YYTABLESIZE && yycheck[yyn] == yychar)
1497 PerlIO_printf(Perl_debug_log, "yydebug: state %d, shifting to state %d\n",
1498 yystate, yytable[yyn]);
1500 if (yyssp >= yyss + yystacksize - 1)
1503 ** reallocate and recover. Note that pointers
1504 ** have to be reset, or bad things will happen
1506 int yyps_index = (yyssp - yyss);
1507 int yypv_index = (yyvsp - yyvs);
1508 yystacksize += YYSTACKSIZE;
1509 ysave->yyvs = Renew(yyvs, yystacksize, YYSTYPE);
1510 ysave->yyss = Renew(yyss, yystacksize, short);
1513 yyssp = yyss + yyps_index;
1514 yyvsp = yyvs + yypv_index;
1516 *++yyssp = yystate = yytable[yyn];
1519 if (yyerrflag > 0) --yyerrflag;
1522 if ((yyn = yyrindex[yystate]) && (yyn += yychar) >= 0 &&
1523 yyn <= YYTABLESIZE && yycheck[yyn] == yychar)
1528 if (yyerrflag) goto yyinrecovery;
1533 yyerror("syntax error");
1545 if ((yyn = yysindex[*yyssp]) && (yyn += YYERRCODE) >= 0 &&
1546 yyn <= YYTABLESIZE && yycheck[yyn] == YYERRCODE)
1550 PerlIO_printf(Perl_debug_log, "yydebug: state %d, error recovery shifting\
1551 to state %d\n", *yyssp, yytable[yyn]);
1553 if (yyssp >= yyss + yystacksize - 1)
1556 ** reallocate and recover. Note that pointers
1557 ** have to be reset, or bad things will happen
1559 int yyps_index = (yyssp - yyss);
1560 int yypv_index = (yyvsp - yyvs);
1561 yystacksize += YYSTACKSIZE;
1562 ysave->yyvs = Renew(yyvs, yystacksize, YYSTYPE);
1563 ysave->yyss = Renew(yyss, yystacksize, short);
1566 yyssp = yyss + yyps_index;
1567 yyvsp = yyvs + yypv_index;
1569 *++yyssp = yystate = yytable[yyn];
1577 PerlIO_printf(Perl_debug_log, "yydebug: error recovery discarding state %d\n",
1580 if (yyssp <= yyss) goto yyabort;
1588 if (yychar == 0) goto yyabort;
1593 if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
1594 if (!yys) yys = "illegal-symbol";
1595 PerlIO_printf(Perl_debug_log, "yydebug: state %d, error recovery discards token %d (%s)\n",
1596 yystate, yychar, yys);
1605 PerlIO_printf(Perl_debug_log, "yydebug: state %d, reducing by rule %d (%s)\n",
1606 yystate, yyn, yyrule[yyn]);
1609 yyval = yyvsp[1-yym];
1614 { yyval.ival = yyvsp[-1].ival; newPROG(block_end(yyvsp[-1].ival,yyvsp[0].opval)); }
1618 { if (PL_copline > (line_t)yyvsp[-3].ival)
1619 PL_copline = yyvsp[-3].ival;
1620 yyval.opval = block_end(yyvsp[-2].ival, yyvsp[-1].opval); }
1624 { yyval.ival = block_start(TRUE); }
1629 #if defined(YYDEBUG) && defined(DEBUGGING)
1630 yydebug = (DEBUG_p_TEST);
1632 PL_expect = XSTATE; yyval.ival = block_start(TRUE);
1637 { if (PL_copline > (line_t)yyvsp[-3].ival)
1638 PL_copline = yyvsp[-3].ival;
1639 yyval.opval = block_end(yyvsp[-2].ival, yyvsp[-1].opval); }
1643 { yyval.ival = block_start(FALSE); }
1647 { yyval.opval = Nullop; }
1651 { yyval.opval = yyvsp[-1].opval; }
1655 { yyval.opval = append_list(OP_LINESEQ,
1656 (LISTOP*)yyvsp[-1].opval, (LISTOP*)yyvsp[0].opval);
1657 PL_pad_reset_pending = TRUE;
1658 if (yyvsp[-1].opval && yyvsp[0].opval) PL_hints |= HINT_BLOCK_SCOPE; }
1662 { yyval.opval = newSTATEOP(0, yyvsp[-1].pval, yyvsp[0].opval); }
1666 { if (yyvsp[-1].pval != Nullch) {
1667 yyval.opval = newSTATEOP(0, yyvsp[-1].pval, newOP(OP_NULL, 0));
1670 yyval.opval = Nullop;
1671 PL_copline = NOLINE;
1673 PL_expect = XSTATE; }
1677 { yyval.opval = newSTATEOP(0, yyvsp[-2].pval, yyvsp[-1].opval);
1678 PL_expect = XSTATE; }
1682 { yyval.opval = Nullop; }
1686 { yyval.opval = yyvsp[0].opval; }
1690 { yyval.opval = newLOGOP(OP_AND, 0, yyvsp[0].opval, yyvsp[-2].opval); }
1694 { yyval.opval = newLOGOP(OP_OR, 0, yyvsp[0].opval, yyvsp[-2].opval); }
1698 { yyval.opval = newLOOPOP(OPf_PARENS, 1, scalar(yyvsp[0].opval), yyvsp[-2].opval); }
1702 { yyval.opval = newLOOPOP(OPf_PARENS, 1, yyvsp[0].opval, yyvsp[-2].opval);}
1706 { yyval.opval = newFOROP(0, Nullch, yyvsp[-1].ival,
1707 Nullop, yyvsp[0].opval, yyvsp[-2].opval, Nullop); }
1711 { yyval.opval = Nullop; }
1715 { (yyvsp[0].opval)->op_flags |= OPf_PARENS; yyval.opval = scope(yyvsp[0].opval); }
1719 { PL_copline = yyvsp[-5].ival;
1720 yyval.opval = newCONDOP(0, yyvsp[-3].opval, scope(yyvsp[-1].opval), yyvsp[0].opval);
1721 PL_hints |= HINT_BLOCK_SCOPE; }
1725 { PL_copline = yyvsp[-6].ival;
1726 yyval.opval = block_end(yyvsp[-4].ival,
1727 newCONDOP(0, yyvsp[-3].opval, scope(yyvsp[-1].opval), yyvsp[0].opval)); }
1731 { PL_copline = yyvsp[-6].ival;
1732 yyval.opval = block_end(yyvsp[-4].ival,
1733 newCONDOP(0, yyvsp[-3].opval, scope(yyvsp[-1].opval), yyvsp[0].opval)); }
1737 { yyval.opval = Nullop; }
1741 { yyval.opval = scope(yyvsp[0].opval); }
1745 { PL_copline = yyvsp[-6].ival;
1746 yyval.opval = block_end(yyvsp[-4].ival,
1747 newSTATEOP(0, yyvsp[-7].pval,
1748 newWHILEOP(0, 1, (LOOP*)Nullop,
1749 yyvsp[-6].ival, yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval))); }
1753 { PL_copline = yyvsp[-6].ival;
1754 yyval.opval = block_end(yyvsp[-4].ival,
1755 newSTATEOP(0, yyvsp[-7].pval,
1756 newWHILEOP(0, 1, (LOOP*)Nullop,
1757 yyvsp[-6].ival, yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval))); }
1761 { yyval.opval = block_end(yyvsp[-6].ival,
1762 newFOROP(0, yyvsp[-9].pval, yyvsp[-8].ival, yyvsp[-5].opval, yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval)); }
1766 { yyval.opval = block_end(yyvsp[-4].ival,
1767 newFOROP(0, yyvsp[-8].pval, yyvsp[-7].ival, mod(yyvsp[-6].opval, OP_ENTERLOOP),
1768 yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval)); }
1772 { yyval.opval = block_end(yyvsp[-4].ival,
1773 newFOROP(0, yyvsp[-7].pval, yyvsp[-6].ival, Nullop, yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval)); }
1778 PL_copline = yyvsp[-9].ival;
1779 forop = newSTATEOP(0, yyvsp[-10].pval,
1780 newWHILEOP(0, 1, (LOOP*)Nullop,
1781 yyvsp[-9].ival, scalar(yyvsp[-4].opval),
1782 yyvsp[0].opval, yyvsp[-2].opval));
1783 if (yyvsp[-6].opval) {
1784 forop = append_elem(OP_LINESEQ,
1785 newSTATEOP(0, (yyvsp[-10].pval?savepv(yyvsp[-10].pval):Nullch),
1790 yyval.opval = block_end(yyvsp[-7].ival, forop); }
1794 { yyval.opval = newSTATEOP(0, yyvsp[-2].pval,
1795 newWHILEOP(0, 1, (LOOP*)Nullop,
1796 NOLINE, Nullop, yyvsp[-1].opval, yyvsp[0].opval)); }
1800 { yyval.opval = Nullop; }
1804 { (void)scan_num("1", &yylval); yyval.opval = yylval.opval; }
1808 { yyval.opval = invert(scalar(yyvsp[0].opval)); }
1812 { yyval.opval = yyvsp[0].opval; intro_my(); }
1816 { yyval.opval = yyvsp[0].opval; intro_my(); }
1820 { yyval.opval = yyvsp[0].opval; intro_my(); }
1824 { yyval.opval = yyvsp[0].opval; intro_my(); }
1828 { yyval.pval = Nullch; }
1852 { newFORM(yyvsp[-2].ival, yyvsp[-1].opval, yyvsp[0].opval); }
1856 { yyval.opval = yyvsp[0].opval; }
1860 { yyval.opval = Nullop; }
1864 { newMYSUB(yyvsp[-4].ival, yyvsp[-3].opval, yyvsp[-2].opval, yyvsp[-1].opval, yyvsp[0].opval); }
1868 { newATTRSUB(yyvsp[-4].ival, yyvsp[-3].opval, yyvsp[-2].opval, yyvsp[-1].opval, yyvsp[0].opval); }
1872 { yyval.ival = start_subparse(FALSE, 0); }
1876 { yyval.ival = start_subparse(FALSE, CVf_ANON); }
1880 { yyval.ival = start_subparse(TRUE, 0); }
1884 { STRLEN n_a; char *name = SvPV(((SVOP*)yyvsp[0].opval)->op_sv,n_a);
1885 if (strEQ(name, "BEGIN") || strEQ(name, "END")
1886 || strEQ(name, "INIT") || strEQ(name, "CHECK"))
1887 CvSPECIAL_on(PL_compcv);
1888 yyval.opval = yyvsp[0].opval; }
1892 { yyval.opval = Nullop; }
1896 { yyval.opval = Nullop; }
1900 { yyval.opval = yyvsp[0].opval; }
1904 { yyval.opval = Nullop; }
1908 { yyval.opval = yyvsp[0].opval; }
1912 { yyval.opval = Nullop; }
1916 { yyval.opval = yyvsp[0].opval; }
1920 { yyval.opval = Nullop; PL_expect = XSTATE; }
1924 { package(yyvsp[-1].opval); }
1928 { package(Nullop); }
1932 { CvSPECIAL_on(PL_compcv); /* It's a BEGIN {} */ }
1936 { utilize(yyvsp[-6].ival, yyvsp[-5].ival, yyvsp[-3].opval, yyvsp[-2].opval, yyvsp[-1].opval); }
1940 { yyval.opval = newLOGOP(OP_AND, 0, yyvsp[-2].opval, yyvsp[0].opval); }
1944 { yyval.opval = newLOGOP(yyvsp[-1].ival, 0, yyvsp[-2].opval, yyvsp[0].opval); }
1948 { yyval.opval = yyvsp[-1].opval; }
1952 { yyval.opval = append_elem(OP_LIST, yyvsp[-2].opval, yyvsp[0].opval); }
1956 { yyval.opval = convert(yyvsp[-2].ival, OPf_STACKED,
1957 prepend_elem(OP_LIST, newGVREF(yyvsp[-2].ival,yyvsp[-1].opval), yyvsp[0].opval) ); }
1961 { yyval.opval = convert(yyvsp[-4].ival, OPf_STACKED,
1962 prepend_elem(OP_LIST, newGVREF(yyvsp[-4].ival,yyvsp[-2].opval), yyvsp[-1].opval) ); }
1966 { yyval.opval = convert(OP_ENTERSUB, OPf_STACKED,
1967 append_elem(OP_LIST,
1968 prepend_elem(OP_LIST, scalar(yyvsp[-5].opval), yyvsp[-1].opval),
1969 newUNOP(OP_METHOD, 0, yyvsp[-3].opval))); }
1973 { yyval.opval = convert(OP_ENTERSUB, OPf_STACKED,
1974 append_elem(OP_LIST, scalar(yyvsp[-2].opval),
1975 newUNOP(OP_METHOD, 0, yyvsp[0].opval))); }
1979 { yyval.opval = convert(OP_ENTERSUB, OPf_STACKED,
1980 append_elem(OP_LIST,
1981 prepend_elem(OP_LIST, yyvsp[-1].opval, yyvsp[0].opval),
1982 newUNOP(OP_METHOD, 0, yyvsp[-2].opval))); }
1986 { yyval.opval = convert(OP_ENTERSUB, OPf_STACKED,
1987 append_elem(OP_LIST,
1988 prepend_elem(OP_LIST, yyvsp[-3].opval, yyvsp[-1].opval),
1989 newUNOP(OP_METHOD, 0, yyvsp[-4].opval))); }
1993 { yyval.opval = convert(yyvsp[-1].ival, 0, yyvsp[0].opval); }
1997 { yyval.opval = convert(yyvsp[-3].ival, 0, yyvsp[-1].opval); }
2001 { yyvsp[0].opval = newANONATTRSUB(yyvsp[-1].ival, 0, Nullop, yyvsp[0].opval); }
2005 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2006 append_elem(OP_LIST,
2007 prepend_elem(OP_LIST, yyvsp[-2].opval, yyvsp[0].opval), yyvsp[-4].opval)); }
2011 { yyval.opval = newBINOP(OP_GELEM, 0, yyvsp[-4].opval, scalar(yyvsp[-2].opval)); }
2015 { yyval.opval = newBINOP(OP_AELEM, 0, oopsAV(yyvsp[-3].opval), scalar(yyvsp[-1].opval)); }
2019 { yyval.opval = newBINOP(OP_AELEM, 0,
2020 ref(newAVREF(yyvsp[-4].opval),OP_RV2AV),
2021 scalar(yyvsp[-1].opval));}
2025 { yyval.opval = newBINOP(OP_AELEM, 0,
2026 ref(newAVREF(yyvsp[-3].opval),OP_RV2AV),
2027 scalar(yyvsp[-1].opval));}
2031 { yyval.opval = newBINOP(OP_HELEM, 0, oopsHV(yyvsp[-4].opval), jmaybe(yyvsp[-2].opval));
2032 PL_expect = XOPERATOR; }
2036 { yyval.opval = newBINOP(OP_HELEM, 0,
2037 ref(newHVREF(yyvsp[-5].opval),OP_RV2HV),
2038 jmaybe(yyvsp[-2].opval));
2039 PL_expect = XOPERATOR; }
2043 { yyval.opval = newBINOP(OP_HELEM, 0,
2044 ref(newHVREF(yyvsp[-4].opval),OP_RV2HV),
2045 jmaybe(yyvsp[-2].opval));
2046 PL_expect = XOPERATOR; }
2050 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2051 newCVREF(0, scalar(yyvsp[-3].opval))); }
2055 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2056 append_elem(OP_LIST, yyvsp[-1].opval,
2057 newCVREF(0, scalar(yyvsp[-4].opval)))); }
2061 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2062 append_elem(OP_LIST, yyvsp[-1].opval,
2063 newCVREF(0, scalar(yyvsp[-3].opval)))); }
2067 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2068 newCVREF(0, scalar(yyvsp[-2].opval))); }
2072 { yyval.opval = newASSIGNOP(OPf_STACKED, yyvsp[-2].opval, yyvsp[-1].ival, yyvsp[0].opval); }
2076 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
2080 { if (yyvsp[-1].ival != OP_REPEAT)
2081 scalar(yyvsp[-2].opval);
2082 yyval.opval = newBINOP(yyvsp[-1].ival, 0, yyvsp[-2].opval, scalar(yyvsp[0].opval)); }
2086 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
2090 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
2094 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
2098 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
2102 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
2106 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
2110 { yyval.opval = newRANGE(yyvsp[-1].ival, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval));}
2114 { yyval.opval = newLOGOP(OP_AND, 0, yyvsp[-2].opval, yyvsp[0].opval); }
2118 { yyval.opval = newLOGOP(OP_OR, 0, yyvsp[-2].opval, yyvsp[0].opval); }
2122 { yyval.opval = bind_match(yyvsp[-1].ival, yyvsp[-2].opval, yyvsp[0].opval); }
2126 { yyval.opval = newUNOP(OP_NEGATE, 0, scalar(yyvsp[0].opval)); }
2130 { yyval.opval = yyvsp[0].opval; }
2134 { yyval.opval = newUNOP(OP_NOT, 0, scalar(yyvsp[0].opval)); }
2138 { yyval.opval = newUNOP(OP_COMPLEMENT, 0, scalar(yyvsp[0].opval));}
2142 { yyval.opval = newUNOP(OP_POSTINC, 0,
2143 mod(scalar(yyvsp[-1].opval), OP_POSTINC)); }
2147 { yyval.opval = newUNOP(OP_POSTDEC, 0,
2148 mod(scalar(yyvsp[-1].opval), OP_POSTDEC)); }
2152 { yyval.opval = newUNOP(OP_PREINC, 0,
2153 mod(scalar(yyvsp[0].opval), OP_PREINC)); }
2157 { yyval.opval = newUNOP(OP_PREDEC, 0,
2158 mod(scalar(yyvsp[0].opval), OP_PREDEC)); }
2162 { yyval.opval = newANONLIST(yyvsp[-1].opval); }
2166 { yyval.opval = newANONLIST(Nullop); }
2170 { yyval.opval = newANONHASH(yyvsp[-2].opval); }
2174 { yyval.opval = newANONHASH(Nullop); }
2178 { yyval.opval = newANONATTRSUB(yyvsp[-3].ival, yyvsp[-2].opval, yyvsp[-1].opval, yyvsp[0].opval); }
2182 { yyval.opval = dofile(yyvsp[0].opval); }
2186 { yyval.opval = newUNOP(OP_NULL, OPf_SPECIAL, scope(yyvsp[0].opval)); }
2190 { yyval.opval = newUNOP(OP_ENTERSUB,
2191 OPf_SPECIAL|OPf_STACKED,
2192 prepend_elem(OP_LIST,
2194 (OPpENTERSUB_AMPER<<8),
2195 scalar(yyvsp[-2].opval)
2196 )),Nullop)); dep();}
2200 { yyval.opval = newUNOP(OP_ENTERSUB,
2201 OPf_SPECIAL|OPf_STACKED,
2202 append_elem(OP_LIST,
2205 (OPpENTERSUB_AMPER<<8),
2206 scalar(yyvsp[-3].opval)
2211 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_SPECIAL|OPf_STACKED,
2212 prepend_elem(OP_LIST,
2213 scalar(newCVREF(0,scalar(yyvsp[-2].opval))), Nullop)); dep();}
2217 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_SPECIAL|OPf_STACKED,
2218 prepend_elem(OP_LIST,
2220 scalar(newCVREF(0,scalar(yyvsp[-3].opval))))); dep();}
2224 { yyval.opval = newCONDOP(0, yyvsp[-4].opval, yyvsp[-2].opval, yyvsp[0].opval); }
2228 { yyval.opval = newUNOP(OP_REFGEN, 0, mod(yyvsp[0].opval,OP_REFGEN)); }
2232 { yyval.opval = yyvsp[0].opval; }
2236 { yyval.opval = localize(yyvsp[0].opval,yyvsp[-1].ival); }
2240 { yyval.opval = sawparens(yyvsp[-1].opval); }
2244 { yyval.opval = sawparens(newNULLLIST()); }
2248 { yyval.opval = yyvsp[0].opval; }
2252 { yyval.opval = yyvsp[0].opval; }
2256 { yyval.opval = yyvsp[0].opval; }
2260 { yyval.opval = yyvsp[0].opval; }
2264 { yyval.opval = newUNOP(OP_AV2ARYLEN, 0, ref(yyvsp[0].opval, OP_AV2ARYLEN));}
2268 { yyval.opval = yyvsp[0].opval; }
2272 { yyval.opval = newSLICEOP(0, yyvsp[-1].opval, yyvsp[-4].opval); }
2276 { yyval.opval = newSLICEOP(0, yyvsp[-1].opval, Nullop); }
2280 { yyval.opval = prepend_elem(OP_ASLICE,
2281 newOP(OP_PUSHMARK, 0),
2282 newLISTOP(OP_ASLICE, 0,
2283 list(yyvsp[-1].opval),
2284 ref(yyvsp[-3].opval, OP_ASLICE))); }
2288 { yyval.opval = prepend_elem(OP_HSLICE,
2289 newOP(OP_PUSHMARK, 0),
2290 newLISTOP(OP_HSLICE, 0,
2291 list(yyvsp[-2].opval),
2292 ref(oopsHV(yyvsp[-4].opval), OP_HSLICE)));
2293 PL_expect = XOPERATOR; }
2297 { yyval.opval = yyvsp[0].opval; }
2301 { yyval.opval = newUNOP(OP_ENTERSUB, 0, scalar(yyvsp[0].opval)); }
2305 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED, scalar(yyvsp[-2].opval)); }
2309 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2310 append_elem(OP_LIST, yyvsp[-1].opval, scalar(yyvsp[-3].opval))); }
2314 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2315 append_elem(OP_LIST, yyvsp[0].opval, scalar(yyvsp[-1].opval))); }
2319 { yyval.opval = newOP(yyvsp[0].ival, OPf_SPECIAL);
2320 PL_hints |= HINT_BLOCK_SCOPE; }
2324 { yyval.opval = newLOOPEX(yyvsp[-1].ival,yyvsp[0].opval); }
2328 { yyval.opval = newUNOP(OP_NOT, 0, scalar(yyvsp[0].opval)); }
2332 { yyval.opval = newOP(yyvsp[0].ival, 0); }
2336 { yyval.opval = newUNOP(yyvsp[-1].ival, 0, yyvsp[0].opval); }
2340 { yyval.opval = newUNOP(yyvsp[-1].ival, 0, yyvsp[0].opval); }
2344 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2345 append_elem(OP_LIST, yyvsp[0].opval, scalar(yyvsp[-1].opval))); }
2349 { yyval.opval = newOP(yyvsp[0].ival, 0); }
2353 { yyval.opval = newOP(yyvsp[-2].ival, 0); }
2357 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2358 scalar(yyvsp[0].opval)); }
2362 { yyval.opval = newOP(yyvsp[-2].ival, OPf_SPECIAL); }
2366 { yyval.opval = newUNOP(yyvsp[-3].ival, 0, yyvsp[-1].opval); }
2370 { yyval.opval = pmruntime(yyvsp[-3].opval, yyvsp[-1].opval, Nullop); }
2374 { yyval.opval = pmruntime(yyvsp[-5].opval, yyvsp[-3].opval, yyvsp[-1].opval); }
2378 { yyval.opval = my_attrs(yyvsp[-1].opval,yyvsp[0].opval); }
2382 { yyval.opval = localize(yyvsp[0].opval,yyvsp[-1].ival); }
2386 { yyval.opval = sawparens(yyvsp[-1].opval); }
2390 { yyval.opval = sawparens(newNULLLIST()); }
2394 { yyval.opval = yyvsp[0].opval; }
2398 { yyval.opval = yyvsp[0].opval; }
2402 { yyval.opval = yyvsp[0].opval; }
2406 { yyval.opval = Nullop; }
2410 { yyval.opval = yyvsp[0].opval; }
2414 { yyval.opval = Nullop; }
2418 { yyval.opval = yyvsp[0].opval; }
2422 { yyval.opval = yyvsp[-1].opval; }
2426 { PL_in_my = 0; yyval.opval = my(yyvsp[0].opval); }
2430 { yyval.opval = newCVREF(yyvsp[-1].ival,yyvsp[0].opval); }
2434 { yyval.opval = newSVREF(yyvsp[0].opval); }
2438 { yyval.opval = newAVREF(yyvsp[0].opval); }
2442 { yyval.opval = newHVREF(yyvsp[0].opval); }
2446 { yyval.opval = newAVREF(yyvsp[0].opval); }
2450 { yyval.opval = newGVREF(0,yyvsp[0].opval); }
2454 { yyval.opval = scalar(yyvsp[0].opval); }
2458 { yyval.opval = scalar(yyvsp[0].opval); }
2462 { yyval.opval = scope(yyvsp[0].opval); }
2466 { yyval.opval = yyvsp[0].opval; }
2468 #line 2459 "perly.c"
2474 if (yystate == 0 && yym == 0)
2478 PerlIO_printf(Perl_debug_log, "yydebug: after reduction, shifting from state 0 to\
2479 state %d\n", YYFINAL);
2486 if ((yychar = yylex()) < 0) yychar = 0;
2491 if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
2492 if (!yys) yys = "illegal-symbol";
2493 PerlIO_printf(Perl_debug_log, "yydebug: state %d, reading %d (%s)\n",
2494 YYFINAL, yychar, yys);
2498 if (yychar == 0) goto yyaccept;
2501 if ((yyn = yygindex[yym]) && (yyn += yystate) >= 0 &&
2502 yyn <= YYTABLESIZE && yycheck[yyn] == yystate)
2503 yystate = yytable[yyn];
2505 yystate = yydgoto[yym];
2508 PerlIO_printf(Perl_debug_log, "yydebug: after reduction, shifting from state %d \
2509 to state %d\n", *yyssp, yystate);
2511 if (yyssp >= yyss + yystacksize - 1)
2514 ** reallocate and recover. Note that pointers
2515 ** have to be reset, or bad things will happen
2517 int yyps_index = (yyssp - yyss);
2518 int yypv_index = (yyvsp - yyvs);
2519 yystacksize += YYSTACKSIZE;
2520 ysave->yyvs = Renew(yyvs, yystacksize, YYSTYPE);
2521 ysave->yyss = Renew(yyss, yystacksize, short);
2524 yyssp = yyss + yyps_index;
2525 yyvsp = yyvs + yypv_index;
2531 yyerror("Out of memory for yacc stack");
2536 LEAVE; /* force yydestruct() before we return */
2542 yydestruct(pTHX_ void *ptr)
2544 struct ysv* ysave = (struct ysv*)ptr;
2545 if (ysave->yyss) Safefree(ysave->yyss);
2546 if (ysave->yyvs) Safefree(ysave->yyvs);
2547 yydebug = ysave->oldyydebug;
2548 yynerrs = ysave->oldyynerrs;
2549 yyerrflag = ysave->oldyyerrflag;
2550 yychar = ysave->oldyychar;
2551 yyval = ysave->oldyyval;
2552 yylval = ysave->oldyylval;