File descriptor leak in do_exec3
[p5sagit/p5-mst-13.2.git] / perly.c
CommitLineData
93a17b20 1#ifndef lint
2static char yysccsid[] = "@(#)yaccpar 1.8 (Berkeley) 01/20/91";
3#endif
4#define YYBYACC 1
748a9306 5#line 16 "perly.y"
79072805 6#include "EXTERN.h"
864dbfa3 7#define PERL_IN_PERLY_C
79072805 8#include "perl.h"
9
d3b6f988 10#define yydebug PL_yydebug
11#define yynerrs PL_yynerrs
12#define yyerrflag PL_yyerrflag
13#define yychar PL_yychar
d3b6f988 14#define yyval PL_yyval
15#define yylval PL_yylval
16
864dbfa3 17#define dep() deprecate("\"do\" to call subroutines")
79072805 18
51371543 19static void yydestruct(pTHXo_ void *ptr);
20
9d116dd7 21#line 30 "perly.y"
93a17b20 22#define YYERRCODE 256
b1524f17 23static short yylhs[] = { -1,
44a8e56a 24 45, 0, 9, 7, 10, 8, 11, 11, 11, 12,
ecca16b0 25 12, 12, 12, 24, 24, 24, 24, 24, 24, 24,
26 15, 15, 15, 14, 14, 42, 42, 13, 13, 13,
27 13, 13, 13, 13, 26, 26, 27, 27, 28, 29,
28 30, 31, 32, 44, 44, 1, 1, 1, 1, 3,
29 38, 38, 46, 4, 5, 6, 39, 40, 40, 41,
30 41, 47, 47, 49, 48, 16, 16, 16, 25, 25,
b1524f17 31 25, 36, 36, 36, 36, 36, 36, 36, 36, 50,
32 36, 37, 37, 17, 17, 17, 17, 17, 17, 17,
44a8e56a 33 17, 17, 17, 17, 17, 17, 17, 17, 17, 17,
34 17, 17, 17, 17, 17, 17, 17, 17, 17, 17,
35 17, 17, 17, 17, 17, 17, 17, 17, 17, 17,
36 17, 17, 17, 17, 17, 17, 17, 17, 17, 17,
37 17, 17, 17, 17, 17, 17, 17, 17, 17, 17,
38 17, 17, 17, 17, 17, 17, 17, 17, 17, 17,
b1524f17 39 17, 17, 17, 17, 17, 17, 17, 17, 17, 33,
40 33, 34, 34, 34, 2, 2, 43, 23, 18, 19,
41 20, 21, 22, 35, 35, 35, 35,
93a17b20 42};
b1524f17 43static short yylen[] = { 2,
bbce6d69 44 0, 2, 4, 0, 4, 0, 0, 2, 2, 2,
ecca16b0 45 1, 2, 3, 1, 1, 3, 3, 3, 3, 3,
46 0, 2, 6, 7, 7, 0, 2, 8, 8, 10,
47 9, 8, 11, 3, 0, 1, 0, 1, 1, 1,
48 1, 1, 1, 0, 1, 1, 1, 1, 1, 4,
49 1, 0, 5, 0, 0, 0, 1, 0, 1, 1,
50 1, 3, 2, 0, 7, 3, 3, 1, 2, 3,
b1524f17 51 1, 3, 5, 6, 3, 3, 5, 2, 4, 0,
52 5, 1, 1, 3, 3, 3, 3, 3, 3, 3,
53 3, 3, 3, 3, 3, 5, 3, 2, 2, 2,
54 2, 2, 2, 2, 2, 2, 2, 3, 2, 3,
55 2, 4, 3, 4, 1, 5, 1, 4, 5, 4,
56 1, 1, 1, 5, 6, 5, 6, 5, 4, 5,
57 1, 1, 3, 4, 3, 2, 2, 4, 5, 4,
58 5, 4, 5, 1, 2, 2, 1, 2, 2, 2,
59 1, 3, 1, 3, 4, 4, 6, 1, 1, 0,
60 1, 0, 1, 2, 1, 1, 1, 2, 2, 2,
61 2, 2, 2, 1, 1, 1, 1,
93a17b20 62};
b1524f17 63static short yydefred[] = { 1,
ecca16b0 64 0, 7, 0, 45, 56, 54, 0, 54, 8, 46,
65 9, 11, 0, 47, 48, 49, 0, 0, 0, 63,
b1524f17 66 64, 14, 4, 158, 0, 0, 131, 0, 153, 0,
ecca16b0 67 55, 55, 0, 0, 0, 0, 0, 0, 0, 0,
b1524f17 68 0, 0, 0, 0, 0, 0, 0, 165, 166, 0,
bbce6d69 69 0, 0, 0, 0, 0, 0, 0, 12, 0, 0,
70 0, 0, 0, 0, 0, 0, 0, 10, 0, 0,
b1524f17 71 0, 0, 121, 123, 0, 0, 0, 0, 159, 51,
72 0, 57, 0, 62, 0, 7, 174, 177, 176, 175,
28757baa 73 0, 0, 0, 0, 0, 0, 4, 4, 4, 4,
b1524f17 74 4, 4, 0, 0, 0, 0, 0, 148, 0, 0,
75 0, 0, 78, 0, 172, 0, 137, 0, 0, 0,
76 0, 0, 168, 0, 0, 0, 0, 0, 0, 0,
77 0, 0, 0, 111, 0, 169, 170, 171, 173, 0,
ecca16b0 78 0, 34, 0, 0, 0, 0, 0, 0, 0, 0,
71be2cbc 79 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
b1524f17 80 0, 0, 0, 0, 103, 104, 0, 0, 0, 0,
ecca16b0 81 0, 0, 0, 0, 13, 0, 50, 59, 0, 0,
b1524f17 82 0, 76, 0, 0, 80, 0, 0, 0, 0, 0,
83 0, 0, 4, 152, 154, 0, 0, 0, 0, 0,
84 0, 0, 113, 0, 135, 0, 0, 110, 27, 0,
ecca16b0 85 0, 19, 0, 0, 0, 0, 66, 0, 0, 0,
93a17b20 86 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
b1524f17 87 0, 0, 0, 82, 0, 0, 83, 0, 0, 0,
88 0, 0, 0, 0, 133, 0, 0, 61, 60, 53,
89 0, 3, 0, 156, 0, 0, 114, 0, 42, 0,
90 43, 0, 0, 0, 0, 167, 0, 0, 36, 41,
91 0, 0, 0, 155, 164, 79, 0, 138, 0, 140,
92 0, 112, 0, 0, 0, 0, 0, 142, 0, 0,
93 0, 120, 0, 118, 0, 129, 0, 134, 0, 77,
94 0, 81, 0, 0, 0, 0, 0, 0, 0, 0,
95 73, 139, 141, 128, 0, 126, 0, 0, 143, 119,
96 0, 124, 130, 116, 65, 157, 6, 0, 0, 0,
97 0, 0, 0, 0, 0, 127, 125, 74, 7, 28,
ecca16b0 98 29, 0, 0, 24, 25, 0, 32, 0, 0, 0,
99 22, 0, 0, 0, 31, 5, 0, 30, 0, 0,
100 33, 0, 23,
93a17b20 101};
b1524f17 102static short yydgoto[] = { 1,
ecca16b0 103 9, 66, 10, 18, 95, 17, 86, 339, 89, 328,
104 3, 11, 12, 68, 344, 263, 70, 71, 72, 73,
105 74, 75, 76, 269, 78, 270, 259, 261, 264, 272,
106 260, 262, 113, 198, 91, 79, 238, 81, 83, 179,
107 250, 142, 267, 13, 2, 14, 15, 16, 85, 256,
93a17b20 108};
428f79ef 109static short yysindex[] = { 0,
ecca16b0 110 0, 0, -66, 0, 0, 0, -48, 0, 0, 0,
111 0, 0, 645, 0, 0, 0, -232, -227, -27, 0,
112 0, 0, 0, 0, -23, -23, 0, -6, 0, 2099,
113 0, 0, 13, 20, 24, 25, -34, 2099, 27, 28,
114 29, 1021, 965, -23, 1084, 1348, -217, 0, 0, -23,
115 2099, 2099, 2099, 2099, 2099, 2099, 1404, 0, 2099, 2099,
b1524f17 116 1460, -23, -23, -23, -23, 2099, -206, 0, 335, 3925,
ecca16b0 117 -73, -68, 0, 0, -47, 40, 32, 61, 0, 0,
118 -39, 0, -157, 0, -145, 0, 0, 0, 0, 0,
119 2099, 73, 2099, 825, -39, -157, 0, 0, 0, 0,
b1524f17 120 0, 0, 75, 3925, 78, 1519, 965, 0, 825, 0,
ecca16b0 121 -73, 61, 0, 2099, 0, 77, 0, 825, -16, -9,
122 -51, 2099, 0, 61, 87, 87, 87, -86, -86, 33,
123 -40, 87, 87, 0, -81, 0, 0, 0, 0, 825,
124 -39, 0, 2099, 2099, 2099, 2099, 2099, 2099, 2099, 2099,
125 2099, 2099, 2099, 2099, 2099, 2099, 2099, 2099, 2099, 2099,
126 2099, 2099, 2099, 2099, 0, 0, 30, 2099, 2099, 2099,
127 2099, 2099, 2099, 1694, 0, 2099, 0, 0, -49, -118,
128 189, 0, 2099, 353, 0, -39, 2099, 2099, 2099, 2099,
129 104, 1753, 0, 0, 0, -24, 8, 85, 2099, 61,
130 1809, 1865, 0, 23, 0, 2099, 54, 0, 0, -269,
131 -269, 0, -269, -269, -269, -151, 0, -43, 1121, 825,
b1524f17 132 673, 50, 363, 3925, 1233, 3757, 4023, 2308, 266, -82,
ecca16b0 133 87, 87, 2099, 0, 1928, 2099, 0, 111, 51, 12,
b1524f17 134 76, 14, 90, 39, 0, -22, 3925, 0, 0, 0,
ecca16b0 135 2099, 0, 121, 0, 2099, 2099, 0, -269, 0, 124,
136 0, 125, -269, 126, 130, 0, 112, 335, 0, 0,
137 131, 136, 2099, 0, 0, 0, -14, 0, 1, 0,
138 4, 0, 133, 2099, 55, 2099, 49, 0, 6, 197,
139 2099, 0, 89, 0, 94, 0, 100, 0, 144, 0,
140 1175, 0, 92, 92, 92, 92, 2099, 92, 2099, 171,
b1524f17 141 0, 0, 0, 0, 202, 0, 3963, 108, 0, 0,
ecca16b0 142 188, 0, 0, 0, 0, 0, 0, -206, -206, -238,
143 -238, 199, -206, 211, 92, 0, 0, 0, 0, 0,
144 0, 92, 241, 0, 0, 92, 0, 1753, -206, 326,
145 0, 2099, -206, 256, 0, 0, 259, 0, 92, 92,
146 0, -238, 0,
93a17b20 147};
b1524f17 148static short yyrindex[] = { 0,
ecca16b0 149 0, 0, 249, 0, 0, 0, 0, 0, 0, 0,
150 0, 0, 0, 0, 0, 0, 184, 0, 0, 0,
71be2cbc 151 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
b1524f17 152 0, 0, 0, 0, 0, 0, 0, 2273, 426, 0,
153 0, 2909, 2959, 0, 0, 0, 0, 0, 0, 0,
93a17b20 154 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
b1524f17 155 0, 0, 0, 0, 0, 0, 59, 0, -10, 2776,
156 3024, 3069, 0, 0, 2376, 2140, 0, 200, 0, 0,
ecca16b0 157 0, 0, -44, 0, 0, 0, 0, 0, 0, 0,
158 2421, 0, 0, 105, 0, 198, 0, 0, 0, 0,
b1524f17 159 0, 0, 0, 3183, 0, 0, 319, 0, 3681, 525,
160 586, 2509, 0, 0, 0, 2185, 0, 3731, 3024, 0,
161 0, 2421, 0, 2552, 3195, 3260, 3305, -37, 3112, 2657,
162 0, 3348, 3384, 0, 0, 0, 0, 0, 0, 3777,
93a17b20 163 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
93a17b20 164 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
165 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
b1524f17 166 0, 0, 0, 0, 0, 2707, 0, 0, 0, 0,
ecca16b0 167 909, 0, 319, 0, 0, 0, 320, 0, 0, 0,
b1524f17 168 0, 306, 0, 0, 0, 0, 325, 0, 0, 2788,
169 0, 0, 0, 0, 0, 0, 2833, 0, 0, -5,
170 22, 0, 68, 69, 70, 702, 0, 0, 2464, 1296,
171 1560, 3541, 3584, 3868, 0, 3856, 3820, 3810, 1616, 3620,
172 3431, 3479, 0, 0, 0, 0, 0, 2228, 0, 0,
173 0, 0, 0, 0, 0, 0, 3899, 0, 0, 0,
ecca16b0 174 309, 0, 0, 0, 0, 2421, 0, 79, 0, 0,
175 0, 0, 330, 0, 0, 0, 0, 84, 0, 0,
93a17b20 176 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
93a17b20 177 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
ecca16b0 178 319, 0, 0, 0, 0, 0, 0, 0, 0, 0,
179 0, 0, 0, 0, 0, 0, 0, 0, 317, 0,
180 0, 0, 0, 0, 0, 0, 1982, 0, 0, 0,
181 0, 0, 0, 0, 0, 0, 0, 59, 59, 154,
182 154, 0, 59, 0, 0, 0, 0, 0, 0, 0,
183 0, 0, 0, 0, 0, 0, 0, 340, 59, 909,
184 0, 0, 59, 0, 0, 0, 0, 0, 0, 0,
185 0, 154, 0,
93a17b20 186};
b1524f17 187static short yygindex[] = { 0,
ecca16b0 188 0, 0, 0, 374, 351, 0, -12, 0, 946, 413,
b1524f17 189 -83, 0, 0, 0, -311, -13, 4139, 4198, 0, 0,
ecca16b0 190 0, 0, 0, 372, -8, 0, 0, 246, -131, 43,
191 86, 208, -45, -169, 987, 0, 0, 0, 0, 308,
192 0, -271, 0, 0, 0, 0, 0, 0, 0, 0,
93a17b20 193};
b1524f17 194#define YYTABLESIZE 4425
195static short yytable[] = { 69,
196 207, 62, 181, 105, 168, 102, 105, 204, 168, 248,
ecca16b0 197 20, 208, 62, 253, 58, 285, 274, 170, 298, 345,
b1524f17 198 105, 105, 172, 202, 80, 105, 311, 148, 149, 82,
ecca16b0 199 15, 84, 121, 93, 112, 18, 150, 342, 343, 122,
200 150, 312, 124, 131, 313, 182, 319, 135, 15, 169,
b1524f17 201 363, 275, 97, 18, 171, 105, 340, 341, 26, 98,
ecca16b0 202 271, 347, 39, 99, 100, 62, 105, 106, 107, 235,
203 293, 141, 295, 23, 170, 173, 205, 355, 58, 174,
204 39, 358, 112, 23, 187, 188, 189, 190, 191, 192,
205 175, 26, 196, 197, 26, 26, 26, 297, 26, 23,
206 26, 26, 178, 26, 176, 200, 169, 318, 16, 17,
207 20, 180, 183, 112, 193, 203, 201, 26, 194, 38,
208 236, 321, 26, 206, 40, 276, 16, 17, 20, 210,
209 211, 213, 214, 215, 216, 217, 218, 38, 251, 62,
b1524f17 210 168, 310, 15, 292, 284, 150, 149, 282, 150, 26,
ecca16b0 211 291, 307, 233, 21, 239, 240, 241, 242, 243, 244,
b1524f17 212 246, 300, 150, 150, 303, 304, 305, 150, 294, 197,
ecca16b0 213 306, 308, 150, 258, 211, 332, 211, 168, 268, 316,
214 273, 26, 296, 26, 26, 277, 21, 279, 281, 21,
b1524f17 215 21, 21, 283, 21, 309, 21, 21, 150, 21, 4,
ecca16b0 216 5, 6, 325, 7, 8, 299, 154, 155, 19, 150,
217 302, 335, 21, 322, 327, 148, 149, 21, 323, 287,
218 357, 289, 290, 163, 324, 314, 164, 167, 338, 165,
b1524f17 219 166, 167, 337, 87, 105, 105, 105, 105, 88, 346,
220 68, 105, 112, 105, 21, 148, 149, 112, 2, 105,
221 105, 105, 105, 148, 149, 350, 148, 149, 68, 105,
222 105, 101, 105, 105, 105, 105, 105, 105, 105, 348,
223 315, 105, 148, 149, 148, 149, 21, 197, 21, 21,
ecca16b0 224 352, 44, 148, 149, 44, 44, 44, 234, 44, 320,
225 44, 44, 68, 44, 336, 258, 359, 148, 149, 360,
226 148, 149, 148, 149, 148, 149, 52, 44, 148, 149,
227 148, 149, 44, 252, 26, 26, 26, 26, 26, 26,
228 58, 26, 26, 26, 26, 26, 26, 26, 26, 26,
229 26, 26, 26, 26, 69, 148, 149, 26, 26, 44,
230 26, 26, 26, 26, 26, 148, 149, 148, 149, 26,
b1524f17 231 26, 26, 26, 26, 26, 163, 168, 26, 164, 162,
232 37, 165, 166, 167, 35, 163, 26, 160, 26, 26,
233 40, 44, 148, 149, 44, 37, 150, 150, 150, 150,
234 35, 21, 96, 150, 77, 150, 148, 149, 150, 212,
235 354, 150, 150, 254, 334, 164, 255, 265, 165, 166,
236 167, 150, 150, 186, 150, 150, 150, 150, 150, 21,
ecca16b0 237 21, 21, 21, 21, 21, 157, 21, 21, 21, 21,
238 21, 21, 21, 21, 21, 21, 21, 21, 21, 148,
239 149, 0, 21, 21, 0, 21, 21, 21, 21, 21,
240 0, 0, 0, 168, 21, 21, 21, 21, 21, 21,
241 356, 0, 21, 168, 4, 5, 6, 0, 7, 8,
b1524f17 242 0, 21, 0, 21, 21, 0, 151, 0, 0, 151,
ecca16b0 243 0, 68, 68, 68, 68, 150, 0, 0, 68, 0,
b1524f17 244 0, 0, 0, 151, 151, 150, 0, 0, 151, 0,
ecca16b0 245 0, 0, 0, 148, 149, 0, 68, 68, 148, 149,
246 0, 0, 0, 0, 44, 44, 44, 44, 44, 44,
b1524f17 247 0, 44, 44, 44, 0, 0, 151, 44, 151, 0,
ecca16b0 248 44, 44, 44, 44, 0, 0, 0, 44, 44, 0,
249 44, 44, 44, 44, 44, 0, 0, 0, 0, 44,
b1524f17 250 44, 44, 44, 44, 44, 0, 0, 44, 151, 0,
251 0, 0, 152, 153, 154, 155, 44, 174, 44, 44,
252 174, 174, 174, 0, 174, 158, 174, 174, 158, 174,
ecca16b0 253 162, 163, 0, 0, 164, 0, 0, 165, 166, 167,
b1524f17 254 0, 0, 158, 158, 0, 0, 0, 158, 174, 0,
ecca16b0 255 0, 4, 5, 6, 0, 7, 8, 0, 0, 0,
256 0, 0, 0, 0, 0, 0, 143, 144, 145, 146,
b1524f17 257 0, 0, 0, 147, 0, 158, 0, 158, 175, 0,
258 0, 175, 175, 175, 0, 175, 115, 175, 175, 115,
259 175, 148, 149, 151, 0, 0, 0, 0, 0, 152,
260 153, 154, 155, 115, 115, 0, 0, 158, 115, 175,
261 174, 154, 156, 158, 159, 160, 161, 162, 163, 0,
ecca16b0 262 0, 164, 0, 0, 165, 166, 167, 0, 163, 0,
b1524f17 263 0, 164, 0, 0, 165, 166, 167, 52, 115, 0,
ecca16b0 264 62, 64, 50, 0, 57, 0, 65, 60, 0, 59,
b1524f17 265 0, 0, 0, 0, 0, 0, 0, 151, 151, 151,
266 151, 0, 0, 58, 151, 0, 151, 0, 63, 0,
267 0, 175, 151, 151, 151, 151, 329, 330, 331, 0,
268 333, 0, 151, 151, 0, 151, 151, 151, 151, 151,
269 151, 151, 0, 0, 151, 61, 0, 151, 151, 151,
ecca16b0 270 0, 0, 67, 0, 0, 67, 0, 349, 0, 0,
271 0, 0, 0, 0, 351, 0, 0, 0, 353, 0,
272 67, 0, 0, 168, 0, 0, 0, 23, 0, 0,
273 53, 361, 362, 0, 0, 0, 0, 0, 0, 0,
b1524f17 274 0, 174, 174, 174, 174, 174, 0, 174, 174, 174,
275 0, 0, 0, 174, 67, 150, 158, 158, 158, 158,
276 0, 0, 0, 158, 174, 158, 174, 174, 174, 174,
277 174, 158, 158, 158, 158, 174, 174, 174, 174, 174,
278 174, 158, 158, 174, 158, 158, 158, 158, 158, 158,
279 158, 0, 174, 158, 174, 174, 158, 158, 158, 0,
280 0, 0, 175, 175, 175, 175, 175, 0, 175, 175,
281 175, 0, 0, 0, 175, 0, 0, 115, 115, 115,
282 115, 0, 0, 0, 115, 175, 115, 175, 175, 175,
283 175, 175, 115, 115, 115, 115, 175, 175, 175, 175,
284 175, 175, 115, 115, 175, 115, 115, 115, 115, 115,
285 115, 115, 0, 175, 115, 175, 175, 115, 115, 115,
ecca16b0 286 22, 24, 25, 26, 27, 28, 0, 29, 30, 31,
287 0, 0, 0, 32, 0, 168, 33, 34, 35, 36,
288 0, 0, 0, 37, 38, 0, 39, 40, 41, 42,
289 43, 0, 0, 0, 0, 44, 45, 46, 47, 48,
290 49, 44, 0, 51, 44, 44, 44, 150, 44, 0,
291 44, 44, 54, 44, 55, 56, 0, 0, 67, 152,
292 0, 154, 155, 0, 0, 0, 0, 44, 0, 0,
293 0, 0, 44, 67, 67, 67, 67, 162, 163, 0,
294 67, 164, 0, 0, 165, 166, 167, 108, 0, 0,
295 117, 0, 0, 0, 0, 0, 0, 52, 67, 44,
296 62, 64, 50, 0, 57, 0, 65, 60, 0, 59,
297 0, 0, 92, 0, 0, 0, 0, 0, 0, 0,
298 0, 0, 0, 0, 0, 0, 177, 0, 63, 114,
299 115, 44, 0, 0, 44, 0, 123, 0, 0, 0,
300 185, 0, 0, 0, 0, 0, 0, 0, 136, 137,
301 138, 139, 0, 52, 0, 61, 62, 64, 50, 0,
302 57, 0, 65, 60, 0, 59, 0, 0, 0, 0,
44a8e56a 303 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
ecca16b0 304 0, 0, 0, 0, 63, 0, 209, 23, 0, 0,
305 53, 0, 0, 199, 0, 0, 0, 0, 0, 0,
6da72b64 306 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
ecca16b0 307 0, 61, 0, 154, 155, 0, 52, 0, 0, 62,
308 64, 50, 0, 57, 249, 65, 60, 0, 59, 162,
309 163, 257, 0, 164, 0, 0, 165, 166, 167, 0,
310 0, 0, 0, 23, 0, 0, 53, 63, 0, 0,
6da72b64 311 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
ecca16b0 312 0, 0, 0, 0, 44, 44, 44, 44, 44, 44,
313 0, 44, 44, 44, 61, 0, 0, 44, 0, 0,
314 44, 44, 44, 44, 0, 0, 0, 44, 44, 0,
315 44, 44, 44, 44, 44, 0, 0, 0, 0, 44,
316 44, 44, 44, 44, 44, 0, 23, 44, 0, 53,
317 0, 168, 0, 0, 0, 326, 44, 0, 44, 44,
318 0, 110, 25, 26, 27, 28, 88, 29, 30, 31,
319 0, 0, 0, 32, 0, 0, 0, 157, 0, 0,
320 0, 0, 0, 150, 38, 0, 39, 40, 41, 42,
321 43, 0, 0, 0, 0, 44, 45, 46, 47, 48,
322 49, 0, 0, 51, 0, 168, 0, 0, 0, 0,
323 0, 0, 54, 0, 55, 56, 0, 24, 25, 26,
324 27, 28, 0, 29, 30, 31, 0, 0, 0, 32,
325 286, 0, 0, 0, 0, 157, 0, 150, 0, 0,
6da72b64 326 38, 0, 39, 40, 41, 42, 43, 0, 0, 0,
327 0, 44, 45, 46, 47, 48, 49, 0, 0, 51,
ecca16b0 328 0, 0, 0, 168, 0, 0, 0, 0, 54, 0,
b1524f17 329 55, 56, 0, 0, 0, 0, 89, 0, 0, 89,
ecca16b0 330 116, 25, 26, 27, 28, 0, 29, 30, 31, 0,
b1524f17 331 0, 0, 32, 89, 89, 150, 0, 0, 89, 0,
ecca16b0 332 0, 0, 0, 38, 0, 39, 40, 41, 42, 43,
333 0, 0, 0, 0, 44, 45, 46, 47, 48, 49,
b1524f17 334 52, 0, 51, 62, 64, 50, 0, 57, 89, 65,
ecca16b0 335 60, 54, 59, 55, 56, 0, 0, 0, 0, 0,
336 0, 0, 0, 0, 0, 0, 120, 152, 153, 154,
337 155, 63, 0, 0, 0, 0, 0, 0, 0, 0,
338 0, 158, 159, 160, 161, 162, 163, 0, 0, 164,
339 0, 0, 165, 166, 167, 0, 52, 0, 61, 62,
340 64, 50, 0, 57, 130, 65, 60, 0, 59, 0,
341 0, 0, 0, 0, 0, 151, 0, 0, 0, 0,
342 0, 152, 153, 154, 155, 0, 0, 63, 0, 0,
343 0, 0, 0, 53, 156, 158, 159, 160, 161, 162,
344 163, 0, 0, 164, 0, 0, 165, 166, 167, 0,
6da72b64 345 0, 0, 52, 0, 61, 62, 64, 50, 0, 57,
ecca16b0 346 0, 65, 60, 0, 59, 0, 0, 0, 0, 0,
347 0, 0, 0, 151, 0, 0, 0, 0, 0, 152,
348 153, 154, 155, 63, 0, 0, 0, 0, 0, 53,
349 0, 0, 156, 158, 159, 160, 161, 162, 163, 0,
350 0, 164, 0, 0, 165, 166, 167, 0, 0, 0,
351 61, 52, 134, 0, 62, 64, 50, 0, 57, 195,
b1524f17 352 65, 60, 0, 59, 0, 0, 0, 89, 89, 89,
353 89, 0, 0, 0, 89, 0, 89, 0, 0, 0,
354 0, 0, 63, 89, 0, 53, 0, 0, 0, 0,
355 0, 0, 89, 89, 0, 89, 89, 89, 89, 89,
356 90, 0, 0, 90, 24, 25, 26, 27, 28, 61,
357 29, 30, 31, 0, 0, 0, 32, 90, 90, 0,
358 0, 0, 90, 0, 0, 0, 0, 38, 0, 39,
ecca16b0 359 40, 41, 42, 43, 0, 0, 0, 0, 44, 45,
360 46, 47, 48, 49, 53, 0, 51, 0, 0, 0,
b1524f17 361 0, 0, 90, 0, 0, 54, 91, 55, 56, 91,
ecca16b0 362 24, 25, 26, 27, 28, 0, 29, 30, 31, 0,
b1524f17 363 0, 0, 32, 91, 91, 0, 0, 0, 91, 0,
6da72b64 364 0, 0, 0, 38, 0, 39, 40, 41, 42, 43,
365 0, 0, 0, 0, 44, 45, 46, 47, 48, 49,
b1524f17 366 0, 0, 51, 0, 0, 0, 0, 0, 91, 0,
ecca16b0 367 0, 54, 0, 55, 56, 0, 24, 25, 26, 27,
368 28, 0, 29, 30, 31, 0, 52, 0, 32, 62,
369 64, 50, 0, 57, 245, 65, 60, 0, 59, 38,
6da72b64 370 0, 39, 40, 41, 42, 43, 0, 0, 0, 0,
ecca16b0 371 44, 45, 46, 47, 48, 49, 0, 63, 51, 0,
6da72b64 372 0, 0, 0, 0, 0, 0, 0, 54, 0, 55,
ecca16b0 373 56, 0, 0, 0, 0, 24, 25, 26, 27, 28,
374 0, 29, 30, 31, 61, 52, 0, 32, 62, 64,
375 50, 0, 57, 0, 65, 60, 0, 59, 38, 0,
6da72b64 376 39, 40, 41, 42, 43, 0, 0, 0, 0, 44,
ecca16b0 377 45, 46, 47, 48, 49, 0, 63, 51, 0, 53,
378 0, 0, 0, 0, 0, 0, 54, 0, 55, 56,
b1524f17 379 0, 90, 90, 90, 90, 0, 0, 0, 90, 0,
380 90, 52, 0, 61, 62, 64, 50, 0, 57, 278,
381 65, 60, 0, 59, 0, 0, 90, 90, 0, 90,
382 90, 90, 90, 90, 0, 0, 0, 0, 0, 0,
ecca16b0 383 0, 0, 63, 0, 0, 0, 0, 0, 53, 0,
b1524f17 384 0, 0, 0, 0, 0, 0, 0, 91, 91, 91,
385 91, 0, 0, 0, 91, 0, 91, 52, 0, 61,
ecca16b0 386 62, 64, 50, 0, 57, 280, 65, 60, 0, 59,
b1524f17 387 0, 0, 91, 91, 0, 91, 91, 91, 91, 91,
ecca16b0 388 0, 0, 0, 0, 0, 0, 0, 0, 63, 0,
389 0, 0, 0, 0, 53, 0, 0, 0, 0, 0,
390 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
6da72b64 391 24, 25, 26, 27, 28, 61, 29, 30, 31, 0,
ecca16b0 392 52, 0, 32, 62, 64, 50, 0, 57, 288, 65,
393 60, 0, 59, 38, 0, 39, 40, 41, 42, 43,
6da72b64 394 0, 0, 0, 0, 44, 45, 46, 47, 48, 49,
ecca16b0 395 53, 63, 51, 0, 0, 0, 0, 0, 0, 0,
396 0, 54, 0, 55, 56, 0, 0, 0, 22, 24,
397 25, 26, 27, 28, 0, 29, 30, 31, 61, 0,
b1524f17 398 0, 32, 96, 0, 0, 96, 0, 0, 0, 0,
399 0, 0, 38, 0, 39, 40, 41, 42, 43, 96,
400 96, 0, 0, 44, 45, 46, 47, 48, 49, 0,
ecca16b0 401 0, 51, 0, 53, 0, 0, 0, 0, 0, 0,
402 54, 0, 55, 56, 0, 24, 25, 26, 27, 28,
b1524f17 403 0, 29, 30, 31, 96, 0, 0, 32, 0, 0,
404 0, 0, 0, 0, 0, 0, 0, 0, 38, 0,
405 39, 40, 41, 42, 43, 0, 0, 0, 0, 44,
ecca16b0 406 45, 46, 47, 48, 49, 0, 0, 51, 0, 0,
407 0, 0, 0, 0, 0, 0, 54, 0, 55, 56,
6da72b64 408 0, 24, 25, 26, 27, 28, 0, 29, 30, 31,
b1524f17 409 0, 52, 0, 32, 62, 64, 50, 0, 57, 0,
ecca16b0 410 65, 60, 0, 59, 38, 0, 39, 40, 41, 42,
6da72b64 411 43, 0, 0, 0, 0, 44, 45, 46, 47, 48,
ecca16b0 412 49, 0, 63, 51, 0, 0, 0, 0, 0, 0,
413 0, 0, 54, 0, 55, 56, 0, 0, 0, 0,
b1524f17 414 132, 0, 0, 132, 24, 25, 26, 27, 28, 61,
415 29, 30, 31, 0, 0, 0, 32, 132, 132, 0,
416 0, 0, 132, 0, 0, 0, 0, 38, 0, 39,
ecca16b0 417 40, 41, 42, 43, 0, 0, 0, 0, 44, 45,
b1524f17 418 46, 47, 48, 49, 53, 158, 51, 0, 158, 0,
419 132, 0, 132, 0, 0, 54, 0, 55, 56, 0,
420 0, 0, 158, 158, 0, 0, 0, 158, 0, 0,
421 0, 0, 0, 96, 96, 96, 96, 0, 0, 0,
422 96, 0, 132, 0, 0, 0, 0, 0, 75, 0,
423 0, 75, 0, 0, 0, 158, 0, 158, 96, 96,
424 0, 96, 0, 0, 0, 75, 75, 0, 0, 0,
425 75, 0, 0, 0, 0, 0, 0, 0, 0, 0,
426 0, 0, 0, 0, 0, 0, 0, 158, 0, 0,
427 0, 0, 0, 144, 0, 0, 144, 0, 75, 0,
428 75, 0, 0, 0, 0, 0, 0, 0, 0, 0,
429 144, 144, 0, 0, 0, 144, 0, 0, 0, 0,
28757baa 430 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
b1524f17 431 75, 0, 0, 0, 0, 24, 25, 26, 27, 28,
432 0, 29, 30, 31, 0, 144, 0, 32, 0, 0,
ecca16b0 433 0, 0, 0, 0, 0, 0, 0, 0, 38, 0,
434 39, 40, 41, 42, 43, 0, 0, 0, 0, 44,
b1524f17 435 45, 46, 47, 48, 49, 144, 0, 51, 168, 0,
ecca16b0 436 0, 0, 0, 0, 0, 0, 54, 0, 55, 56,
b1524f17 437 0, 132, 132, 132, 132, 0, 117, 0, 132, 117,
438 132, 0, 0, 0, 0, 0, 132, 132, 132, 132,
439 150, 0, 0, 117, 117, 0, 132, 132, 117, 132,
440 132, 132, 132, 132, 132, 132, 0, 0, 132, 0,
441 0, 132, 132, 132, 0, 0, 158, 158, 158, 158,
442 0, 160, 0, 158, 160, 158, 117, 0, 117, 0,
443 0, 158, 158, 158, 158, 0, 0, 0, 160, 160,
444 0, 158, 158, 160, 158, 158, 158, 158, 158, 158,
445 158, 0, 0, 158, 0, 0, 158, 158, 158, 75,
446 75, 75, 75, 0, 93, 0, 75, 93, 75, 0,
447 0, 0, 0, 160, 75, 75, 75, 75, 0, 0,
448 0, 93, 93, 0, 75, 75, 93, 75, 75, 75,
449 75, 75, 75, 75, 0, 0, 75, 0, 0, 75,
450 75, 75, 0, 160, 144, 144, 144, 144, 0, 161,
451 0, 144, 0, 144, 0, 0, 93, 0, 0, 144,
452 144, 144, 144, 0, 0, 0, 161, 161, 0, 144,
453 144, 161, 144, 144, 144, 144, 144, 144, 144, 0,
454 0, 144, 0, 0, 144, 144, 144, 0, 0, 0,
455 0, 0, 146, 0, 152, 153, 154, 155, 0, 161,
456 0, 161, 0, 0, 0, 0, 0, 0, 0, 146,
457 146, 161, 162, 163, 146, 0, 164, 0, 0, 165,
458 166, 167, 0, 0, 0, 0, 0, 0, 0, 0,
459 0, 161, 0, 0, 0, 0, 0, 0, 0, 0,
460 0, 0, 146, 0, 146, 0, 0, 117, 117, 117,
461 117, 0, 0, 0, 117, 0, 117, 0, 0, 0,
462 0, 0, 117, 117, 117, 117, 0, 0, 0, 0,
463 0, 0, 117, 117, 146, 117, 117, 117, 117, 117,
464 117, 117, 0, 0, 117, 0, 0, 117, 117, 117,
465 0, 0, 160, 160, 160, 160, 0, 109, 0, 160,
466 109, 160, 0, 0, 0, 0, 0, 160, 160, 160,
467 160, 0, 0, 0, 109, 109, 0, 160, 160, 109,
468 160, 160, 160, 160, 160, 160, 160, 0, 0, 160,
469 0, 0, 160, 160, 160, 93, 93, 93, 93, 0,
470 0, 0, 93, 0, 0, 0, 0, 69, 0, 109,
471 69, 0, 0, 0, 0, 0, 0, 0, 0, 0,
472 93, 93, 0, 93, 69, 69, 0, 0, 0, 69,
473 0, 0, 0, 0, 0, 0, 0, 0, 0, 109,
474 161, 161, 161, 161, 0, 0, 0, 161, 0, 161,
475 0, 0, 0, 0, 0, 161, 161, 161, 161, 69,
476 0, 0, 0, 0, 0, 161, 161, 0, 161, 161,
477 161, 161, 161, 161, 161, 0, 71, 161, 0, 71,
478 161, 161, 161, 146, 146, 146, 146, 0, 72, 69,
479 146, 0, 146, 71, 71, 0, 0, 0, 146, 146,
480 146, 146, 0, 0, 0, 72, 72, 0, 146, 146,
481 72, 146, 146, 146, 146, 146, 146, 146, 0, 0,
482 146, 0, 0, 146, 146, 146, 0, 0, 71, 0,
483 0, 0, 0, 108, 0, 0, 108, 0, 72, 0,
484 72, 0, 0, 0, 0, 0, 0, 0, 0, 0,
485 108, 108, 0, 0, 0, 108, 0, 0, 0, 0,
bbce6d69 486 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
b1524f17 487 72, 0, 0, 0, 0, 0, 0, 0, 0, 0,
488 0, 0, 0, 0, 0, 108, 0, 0, 109, 109,
489 109, 109, 0, 0, 0, 109, 0, 109, 0, 0,
490 0, 0, 0, 109, 109, 109, 109, 0, 0, 147,
491 0, 0, 147, 109, 109, 108, 109, 109, 109, 109,
492 109, 109, 109, 0, 0, 109, 147, 147, 109, 109,
493 109, 147, 0, 0, 0, 0, 0, 0, 69, 69,
494 69, 69, 0, 0, 0, 69, 0, 69, 0, 0,
495 0, 0, 0, 69, 69, 69, 69, 0, 0, 160,
496 0, 147, 160, 69, 69, 0, 69, 69, 69, 69,
497 69, 69, 69, 0, 0, 69, 160, 160, 69, 69,
498 69, 160, 0, 0, 0, 0, 0, 0, 0, 0,
bbce6d69 499 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
b1524f17 500 0, 0, 0, 0, 0, 0, 0, 71, 71, 71,
501 71, 160, 0, 0, 71, 0, 0, 0, 0, 72,
502 72, 72, 72, 0, 115, 0, 72, 115, 72, 0,
503 0, 0, 71, 71, 72, 72, 72, 72, 0, 0,
504 0, 115, 115, 0, 72, 72, 115, 72, 72, 72,
505 72, 72, 72, 72, 0, 0, 72, 0, 0, 72,
506 72, 72, 0, 0, 108, 108, 108, 108, 0, 122,
507 0, 108, 122, 108, 0, 0, 115, 0, 0, 108,
508 108, 108, 108, 0, 0, 0, 122, 122, 0, 108,
509 108, 122, 108, 108, 108, 108, 108, 108, 108, 0,
510 0, 108, 0, 0, 108, 108, 108, 0, 0, 0,
511 0, 0, 106, 0, 0, 106, 0, 0, 0, 0,
512 0, 122, 0, 0, 0, 0, 0, 0, 0, 106,
513 106, 0, 0, 0, 106, 0, 0, 0, 0, 0,
514 147, 147, 147, 147, 0, 0, 0, 147, 0, 147,
515 0, 0, 0, 0, 0, 147, 147, 147, 147, 0,
516 0, 0, 0, 0, 106, 147, 147, 0, 147, 147,
517 147, 147, 147, 147, 147, 0, 0, 147, 0, 0,
518 147, 147, 147, 145, 0, 0, 145, 0, 0, 0,
519 160, 160, 160, 160, 0, 100, 0, 160, 100, 160,
520 145, 145, 0, 0, 0, 160, 160, 160, 160, 0,
521 0, 0, 100, 100, 0, 160, 160, 100, 160, 160,
522 160, 160, 160, 160, 160, 0, 0, 160, 0, 0,
523 160, 160, 160, 0, 0, 145, 0, 0, 0, 0,
524 0, 0, 0, 0, 0, 0, 0, 100, 0, 0,
525 0, 0, 0, 0, 0, 115, 115, 115, 115, 0,
526 101, 0, 115, 101, 115, 0, 0, 0, 0, 0,
527 115, 115, 115, 115, 0, 0, 0, 101, 101, 0,
528 115, 115, 101, 115, 115, 115, 115, 115, 115, 115,
529 0, 0, 115, 0, 0, 115, 115, 115, 0, 0,
530 122, 122, 122, 122, 0, 102, 0, 122, 102, 122,
531 0, 0, 101, 0, 0, 122, 122, 122, 122, 0,
532 0, 0, 102, 102, 0, 122, 122, 102, 122, 122,
533 122, 122, 122, 122, 122, 0, 0, 122, 0, 0,
534 122, 122, 122, 106, 106, 106, 106, 0, 98, 0,
535 106, 98, 106, 0, 0, 0, 0, 102, 106, 106,
536 106, 106, 0, 0, 0, 98, 98, 0, 106, 106,
537 98, 106, 106, 106, 106, 106, 106, 106, 0, 0,
538 106, 0, 0, 0, 99, 0, 0, 99, 0, 0,
bbce6d69 539 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
b1524f17 540 98, 99, 99, 0, 0, 0, 99, 0, 0, 0,
541 0, 0, 0, 0, 145, 145, 145, 145, 0, 0,
542 0, 145, 0, 0, 0, 0, 100, 100, 100, 100,
543 0, 97, 0, 100, 97, 100, 99, 0, 0, 145,
544 145, 100, 100, 100, 100, 0, 0, 0, 97, 97,
545 0, 100, 100, 97, 100, 100, 100, 100, 100, 100,
546 100, 0, 0, 0, 0, 0, 0, 0, 0, 0,
547 0, 0, 0, 0, 0, 0, 0, 0, 0, 85,
548 0, 0, 85, 97, 0, 0, 0, 0, 0, 0,
549 0, 101, 101, 101, 101, 0, 85, 85, 101, 0,
550 101, 85, 0, 0, 0, 0, 101, 101, 101, 101,
551 0, 0, 0, 0, 0, 0, 101, 101, 0, 101,
552 101, 101, 101, 101, 101, 101, 0, 0, 0, 0,
553 0, 85, 0, 0, 0, 0, 102, 102, 102, 102,
554 0, 86, 0, 102, 86, 102, 0, 0, 0, 0,
555 0, 102, 102, 102, 102, 0, 0, 0, 86, 86,
556 0, 102, 102, 86, 102, 102, 102, 102, 102, 102,
557 102, 0, 0, 0, 0, 0, 0, 0, 0, 98,
558 98, 98, 98, 0, 87, 0, 98, 87, 98, 0,
559 0, 0, 0, 86, 98, 98, 98, 98, 0, 0,
560 0, 87, 87, 0, 98, 98, 87, 98, 98, 98,
561 98, 98, 98, 98, 0, 99, 99, 99, 99, 0,
562 88, 0, 99, 88, 99, 0, 0, 0, 0, 0,
563 99, 99, 99, 99, 0, 0, 87, 88, 88, 0,
564 99, 99, 88, 99, 99, 99, 99, 99, 99, 99,
463ee0b2 565 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
b1524f17 566 0, 0, 97, 97, 97, 97, 0, 0, 0, 97,
567 0, 97, 88, 0, 0, 0, 0, 97, 97, 97,
568 97, 149, 0, 0, 149, 0, 0, 97, 97, 0,
569 97, 97, 97, 97, 97, 97, 97, 0, 149, 149,
570 0, 0, 0, 149, 0, 0, 0, 0, 0, 0,
571 85, 85, 85, 85, 0, 0, 0, 85, 0, 85,
572 0, 0, 0, 0, 0, 85, 85, 85, 85, 0,
573 0, 136, 0, 149, 136, 85, 85, 0, 85, 85,
574 85, 85, 85, 85, 85, 0, 0, 0, 136, 136,
575 0, 0, 0, 136, 0, 0, 0, 0, 0, 0,
bbce6d69 576 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
b1524f17 577 0, 0, 86, 86, 86, 86, 0, 107, 0, 86,
578 107, 86, 0, 136, 0, 0, 0, 86, 86, 86,
579 86, 0, 0, 0, 107, 107, 0, 86, 86, 107,
580 86, 86, 86, 86, 86, 86, 0, 168, 0, 0,
581 92, 0, 0, 92, 0, 87, 87, 87, 87, 0,
582 94, 0, 87, 94, 87, 0, 0, 92, 92, 107,
583 87, 87, 92, 87, 0, 0, 0, 94, 94, 150,
584 87, 87, 94, 87, 87, 87, 87, 87, 87, 0,
585 0, 88, 88, 88, 88, 0, 95, 0, 88, 95,
586 88, 0, 92, 0, 0, 0, 88, 88, 84, 0,
587 0, 84, 94, 95, 95, 0, 88, 88, 95, 88,
588 88, 88, 88, 88, 88, 84, 84, 0, 0, 0,
589 0, 0, 0, 0, 0, 0, 0, 0, 0, 70,
590 0, 0, 70, 0, 0, 0, 0, 0, 95, 0,
591 0, 0, 149, 149, 149, 149, 70, 70, 0, 149,
592 84, 149, 0, 0, 0, 0, 0, 149, 149, 0,
593 0, 0, 0, 0, 0, 0, 0, 149, 149, 0,
594 149, 149, 149, 149, 149, 0, 0, 157, 0, 0,
595 0, 70, 0, 0, 0, 0, 0, 0, 0, 0,
596 0, 0, 136, 136, 136, 136, 0, 0, 0, 136,
597 0, 136, 0, 0, 0, 168, 0, 136, 136, 0,
598 0, 0, 0, 0, 0, 157, 0, 136, 136, 0,
599 136, 136, 136, 136, 136, 0, 0, 0, 0, 0,
600 0, 0, 0, 152, 153, 154, 155, 150, 107, 107,
601 107, 107, 0, 168, 0, 107, 0, 107, 159, 160,
602 161, 162, 163, 107, 107, 164, 0, 0, 165, 166,
603 167, 0, 0, 107, 107, 0, 107, 107, 107, 107,
604 107, 92, 92, 92, 92, 150, 0, 0, 92, 0,
605 92, 94, 94, 94, 94, 0, 0, 0, 94, 0,
606 94, 0, 0, 0, 0, 0, 92, 92, 0, 92,
607 92, 92, 92, 168, 0, 0, 94, 94, 0, 94,
608 94, 94, 0, 0, 0, 0, 0, 95, 95, 95,
609 95, 0, 0, 0, 95, 0, 95, 0, 0, 84,
610 84, 84, 84, 0, 0, 150, 84, 0, 0, 0,
611 0, 0, 95, 95, 0, 95, 95, 0, 0, 0,
612 0, 0, 0, 0, 84, 84, 0, 0, 94, 0,
613 70, 70, 70, 70, 0, 0, 104, 70, 0, 0,
614 109, 0, 0, 118, 0, 0, 0, 0, 0, 0,
615 125, 126, 127, 128, 129, 70, 70, 132, 133, 0,
616 0, 0, 0, 0, 140, 151, 0, 0, 0, 0,
617 0, 152, 153, 154, 155, 0, 0, 0, 0, 0,
618 0, 0, 90, 90, 156, 158, 159, 160, 161, 162,
619 163, 184, 0, 164, 103, 0, 165, 166, 167, 0,
620 111, 90, 119, 151, 0, 0, 0, 90, 0, 152,
621 153, 154, 155, 0, 0, 0, 0, 0, 0, 90,
622 90, 90, 90, 158, 159, 160, 161, 162, 163, 0,
623 0, 164, 0, 0, 165, 166, 167, 0, 0, 0,
624 0, 0, 0, 0, 0, 0, 0, 0, 0, 219,
625 220, 221, 222, 223, 224, 225, 226, 227, 228, 229,
626 230, 231, 232, 0, 111, 0, 0, 0, 0, 152,
627 153, 154, 155, 0, 247, 0, 0, 0, 0, 0,
628 0, 0, 0, 0, 0, 160, 161, 162, 163, 0,
629 0, 164, 0, 0, 165, 166, 167, 0, 0, 0,
bbce6d69 630 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
bbce6d69 631 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
b1524f17 632 0, 0, 0, 0, 237, 0, 0, 0, 0, 0,
bbce6d69 633 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
b1524f17 634 0, 0, 0, 0, 0, 0, 0, 0, 266, 0,
635 0, 0, 0, 301, 0, 0, 0, 0, 0, 0,
28757baa 636 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
637 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
b1524f17 638 0, 0, 0, 0, 317,
93a17b20 639};
b1524f17 640static short yycheck[] = { 13,
ecca16b0 641 41, 36, 86, 41, 91, 40, 44, 59, 91, 59,
642 59, 93, 36, 183, 59, 59, 41, 91, 41, 331,
643 58, 59, 91, 40, 257, 63, 41, 297, 298, 257,
644 41, 59, 46, 40, 43, 41, 123, 276, 277, 257,
645 123, 41, 51, 57, 41, 91, 41, 61, 59, 123,
646 362, 44, 40, 59, 123, 93, 328, 329, 0, 40,
647 192, 333, 41, 40, 40, 36, 40, 40, 40, 40,
648 59, 278, 59, 123, 91, 123, 122, 349, 123, 40,
649 59, 353, 91, 123, 97, 98, 99, 100, 101, 102,
650 59, 33, 106, 107, 36, 37, 38, 59, 40, 123,
651 42, 43, 260, 45, 44, 114, 123, 59, 41, 41,
652 41, 257, 40, 122, 40, 125, 40, 59, 41, 41,
653 91, 291, 64, 91, 41, 41, 59, 59, 59, 143,
654 144, 145, 146, 147, 148, 149, 150, 59, 257, 36,
655 91, 273, 59, 93, 91, 41, 298, 125, 44, 91,
656 40, 40, 123, 0, 168, 169, 170, 171, 172, 173,
657 174, 41, 58, 59, 41, 41, 41, 63, 93, 183,
658 41, 41, 123, 187, 188, 307, 190, 91, 192, 125,
659 193, 123, 93, 125, 126, 199, 33, 201, 202, 36,
660 37, 38, 206, 40, 59, 42, 43, 93, 45, 266,
661 267, 268, 59, 270, 271, 251, 289, 290, 257, 123,
662 256, 41, 59, 125, 123, 297, 298, 64, 125, 233,
663 352, 235, 236, 306, 125, 93, 309, 314, 41, 312,
664 313, 314, 125, 257, 272, 273, 274, 275, 262, 41,
665 41, 279, 251, 281, 91, 297, 298, 256, 0, 287,
666 288, 289, 290, 297, 298, 339, 297, 298, 59, 297,
667 298, 296, 300, 301, 302, 303, 304, 305, 306, 59,
668 284, 309, 297, 298, 297, 298, 123, 291, 125, 126,
669 40, 33, 297, 298, 36, 37, 38, 258, 40, 93,
670 42, 43, 93, 45, 93, 309, 41, 297, 298, 41,
671 297, 298, 297, 298, 297, 298, 123, 59, 297, 298,
672 297, 298, 64, 125, 256, 257, 258, 259, 260, 261,
673 123, 263, 264, 265, 266, 267, 268, 269, 270, 271,
674 272, 273, 274, 275, 348, 297, 298, 279, 280, 91,
675 282, 283, 284, 285, 286, 297, 298, 297, 298, 291,
676 292, 293, 294, 295, 296, 306, 91, 299, 309, 41,
677 41, 312, 313, 314, 59, 41, 308, 59, 310, 311,
678 41, 123, 297, 298, 126, 59, 272, 273, 274, 275,
679 41, 8, 32, 279, 13, 281, 297, 298, 123, 144,
680 348, 287, 288, 41, 309, 309, 44, 190, 312, 313,
681 314, 297, 298, 96, 300, 301, 302, 303, 304, 256,
682 257, 258, 259, 260, 261, 63, 263, 264, 265, 266,
683 267, 268, 269, 270, 271, 272, 273, 274, 275, 297,
684 298, -1, 279, 280, -1, 282, 283, 284, 285, 286,
685 -1, -1, -1, 91, 291, 292, 293, 294, 295, 296,
686 125, -1, 299, 91, 266, 267, 268, -1, 270, 271,
687 -1, 308, -1, 310, 311, -1, 41, -1, -1, 44,
688 -1, 272, 273, 274, 275, 123, -1, -1, 279, -1,
689 -1, -1, -1, 58, 59, 123, -1, -1, 63, -1,
690 -1, -1, -1, 297, 298, -1, 297, 298, 297, 298,
691 -1, -1, -1, -1, 256, 257, 258, 259, 260, 261,
692 -1, 263, 264, 265, -1, -1, 91, 269, 93, -1,
693 272, 273, 274, 275, -1, -1, -1, 279, 280, -1,
694 282, 283, 284, 285, 286, -1, -1, -1, -1, 291,
695 292, 293, 294, 295, 296, -1, -1, 299, 123, -1,
696 -1, -1, 287, 288, 289, 290, 308, 33, 310, 311,
697 36, 37, 38, -1, 40, 41, 42, 43, 44, 45,
698 305, 306, -1, -1, 309, -1, -1, 312, 313, 314,
699 -1, -1, 58, 59, -1, -1, -1, 63, 64, -1,
700 -1, 266, 267, 268, -1, 270, 271, -1, -1, -1,
701 -1, -1, -1, -1, -1, -1, 272, 273, 274, 275,
702 -1, -1, -1, 279, -1, 91, -1, 93, 33, -1,
703 -1, 36, 37, 38, -1, 40, 41, 42, 43, 44,
704 45, 297, 298, 281, -1, -1, -1, -1, -1, 287,
705 288, 289, 290, 58, 59, -1, -1, 123, 63, 64,
706 126, 289, 300, 301, 302, 303, 304, 305, 306, -1,
707 -1, 309, -1, -1, 312, 313, 314, -1, 306, -1,
708 -1, 309, -1, -1, 312, 313, 314, 33, 93, -1,
709 36, 37, 38, -1, 40, -1, 42, 43, -1, 45,
710 -1, -1, -1, -1, -1, -1, -1, 272, 273, 274,
711 275, -1, -1, 59, 279, -1, 281, -1, 64, -1,
712 -1, 126, 287, 288, 289, 290, 304, 305, 306, -1,
713 308, -1, 297, 298, -1, 300, 301, 302, 303, 304,
714 305, 306, -1, -1, 309, 91, -1, 312, 313, 314,
715 -1, -1, 41, -1, -1, 44, -1, 335, -1, -1,
716 -1, -1, -1, -1, 342, -1, -1, -1, 346, -1,
717 59, -1, -1, 91, -1, -1, -1, 123, -1, -1,
718 126, 359, 360, -1, -1, -1, -1, -1, -1, -1,
719 -1, 257, 258, 259, 260, 261, -1, 263, 264, 265,
720 -1, -1, -1, 269, 93, 123, 272, 273, 274, 275,
721 -1, -1, -1, 279, 280, 281, 282, 283, 284, 285,
722 286, 287, 288, 289, 290, 291, 292, 293, 294, 295,
723 296, 297, 298, 299, 300, 301, 302, 303, 304, 305,
724 306, -1, 308, 309, 310, 311, 312, 313, 314, -1,
725 -1, -1, 257, 258, 259, 260, 261, -1, 263, 264,
726 265, -1, -1, -1, 269, -1, -1, 272, 273, 274,
727 275, -1, -1, -1, 279, 280, 281, 282, 283, 284,
728 285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
729 295, 296, 297, 298, 299, 300, 301, 302, 303, 304,
730 305, 306, -1, 308, 309, 310, 311, 312, 313, 314,
731 256, 257, 258, 259, 260, 261, -1, 263, 264, 265,
732 -1, -1, -1, 269, -1, 91, 272, 273, 274, 275,
6da72b64 733 -1, -1, -1, 279, 280, -1, 282, 283, 284, 285,
734 286, -1, -1, -1, -1, 291, 292, 293, 294, 295,
ecca16b0 735 296, 33, -1, 299, 36, 37, 38, 123, 40, -1,
736 42, 43, 308, 45, 310, 311, -1, -1, 13, 287,
737 -1, 289, 290, -1, -1, -1, -1, 59, -1, -1,
738 -1, -1, 64, 272, 273, 274, 275, 305, 306, -1,
739 279, 309, -1, -1, 312, 313, 314, 42, -1, -1,
740 45, -1, -1, -1, -1, -1, -1, 33, 297, 91,
741 36, 37, 38, -1, 40, -1, 42, 43, -1, 45,
742 -1, -1, 26, -1, -1, -1, -1, -1, -1, -1,
743 -1, -1, -1, -1, -1, -1, 81, -1, 64, 43,
744 44, 123, -1, -1, 126, -1, 50, -1, -1, -1,
745 95, -1, -1, -1, -1, -1, -1, -1, 62, 63,
746 64, 65, -1, 33, -1, 91, 36, 37, 38, -1,
747 40, -1, 42, 43, -1, 45, -1, -1, -1, -1,
44a8e56a 748 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
ecca16b0 749 -1, -1, -1, -1, 64, -1, 141, 123, -1, -1,
750 126, -1, -1, 107, -1, -1, -1, -1, -1, -1,
6da72b64 751 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
ecca16b0 752 -1, 91, -1, 289, 290, -1, 33, -1, -1, 36,
753 37, 38, -1, 40, 179, 42, 43, -1, 45, 305,
754 306, 186, -1, 309, -1, -1, 312, 313, 314, -1,
755 -1, -1, -1, 123, -1, -1, 126, 64, -1, -1,
6da72b64 756 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
ecca16b0 757 -1, -1, -1, -1, 256, 257, 258, 259, 260, 261,
758 -1, 263, 264, 265, 91, -1, -1, 269, -1, -1,
759 272, 273, 274, 275, -1, -1, -1, 279, 280, -1,
760 282, 283, 284, 285, 286, -1, -1, -1, -1, 291,
761 292, 293, 294, 295, 296, -1, 123, 299, -1, 126,
762 -1, 91, -1, -1, -1, 41, 308, -1, 310, 311,
763 -1, 257, 258, 259, 260, 261, 262, 263, 264, 265,
764 -1, -1, -1, 269, -1, -1, -1, 63, -1, -1,
765 -1, -1, -1, 123, 280, -1, 282, 283, 284, 285,
6da72b64 766 286, -1, -1, -1, -1, 291, 292, 293, 294, 295,
ecca16b0 767 296, -1, -1, 299, -1, 91, -1, -1, -1, -1,
768 -1, -1, 308, -1, 310, 311, -1, 257, 258, 259,
769 260, 261, -1, 263, 264, 265, -1, -1, -1, 269,
770 58, -1, -1, -1, -1, 63, -1, 123, -1, -1,
6da72b64 771 280, -1, 282, 283, 284, 285, 286, -1, -1, -1,
772 -1, 291, 292, 293, 294, 295, 296, -1, -1, 299,
ecca16b0 773 -1, -1, -1, 91, -1, -1, -1, -1, 308, -1,
774 310, 311, -1, -1, -1, -1, 41, -1, -1, 44,
775 257, 258, 259, 260, 261, -1, 263, 264, 265, -1,
776 -1, -1, 269, 58, 59, 123, -1, -1, 63, -1,
777 -1, -1, -1, 280, -1, 282, 283, 284, 285, 286,
778 -1, -1, -1, -1, 291, 292, 293, 294, 295, 296,
779 33, -1, 299, 36, 37, 38, -1, 40, 93, 42,
780 43, 308, 45, 310, 311, -1, -1, -1, -1, -1,
781 -1, -1, -1, -1, -1, -1, 59, 287, 288, 289,
782 290, 64, -1, -1, -1, -1, -1, -1, -1, -1,
6da72b64 783 -1, 301, 302, 303, 304, 305, 306, -1, -1, 309,
ecca16b0 784 -1, -1, 312, 313, 314, -1, 33, -1, 91, 36,
785 37, 38, -1, 40, 41, 42, 43, -1, 45, -1,
786 -1, -1, -1, -1, -1, 281, -1, -1, -1, -1,
787 -1, 287, 288, 289, 290, -1, -1, 64, -1, -1,
788 -1, -1, -1, 126, 300, 301, 302, 303, 304, 305,
789 306, -1, -1, 309, -1, -1, 312, 313, 314, -1,
6da72b64 790 -1, -1, 33, -1, 91, 36, 37, 38, -1, 40,
ecca16b0 791 -1, 42, 43, -1, 45, -1, -1, -1, -1, -1,
6da72b64 792 -1, -1, -1, 281, -1, -1, -1, -1, -1, 287,
793 288, 289, 290, 64, -1, -1, -1, -1, -1, 126,
794 -1, -1, 300, 301, 302, 303, 304, 305, 306, -1,
ecca16b0 795 -1, 309, -1, -1, 312, 313, 314, -1, -1, -1,
796 91, 33, 93, -1, 36, 37, 38, -1, 40, 41,
797 42, 43, -1, 45, -1, -1, -1, 272, 273, 274,
798 275, -1, -1, -1, 279, -1, 281, -1, -1, -1,
799 -1, -1, 64, 288, -1, 126, -1, -1, -1, -1,
800 -1, -1, 297, 298, -1, 300, 301, 302, 303, 304,
801 41, -1, -1, 44, 257, 258, 259, 260, 261, 91,
802 263, 264, 265, -1, -1, -1, 269, 58, 59, -1,
803 -1, -1, 63, -1, -1, -1, -1, 280, -1, 282,
804 283, 284, 285, 286, -1, -1, -1, -1, 291, 292,
805 293, 294, 295, 296, 126, -1, 299, -1, -1, -1,
806 -1, -1, 93, -1, -1, 308, 41, 310, 311, 44,
807 257, 258, 259, 260, 261, -1, 263, 264, 265, -1,
6da72b64 808 -1, -1, 269, 58, 59, -1, -1, -1, 63, -1,
809 -1, -1, -1, 280, -1, 282, 283, 284, 285, 286,
810 -1, -1, -1, -1, 291, 292, 293, 294, 295, 296,
ecca16b0 811 -1, -1, 299, -1, -1, -1, -1, -1, 93, -1,
812 -1, 308, -1, 310, 311, -1, 257, 258, 259, 260,
813 261, -1, 263, 264, 265, -1, 33, -1, 269, 36,
6da72b64 814 37, 38, -1, 40, 41, 42, 43, -1, 45, 280,
815 -1, 282, 283, 284, 285, 286, -1, -1, -1, -1,
ecca16b0 816 291, 292, 293, 294, 295, 296, -1, 64, 299, -1,
6da72b64 817 -1, -1, -1, -1, -1, -1, -1, 308, -1, 310,
ecca16b0 818 311, -1, -1, -1, -1, 257, 258, 259, 260, 261,
819 -1, 263, 264, 265, 91, 33, -1, 269, 36, 37,
820 38, -1, 40, -1, 42, 43, -1, 45, 280, -1,
6da72b64 821 282, 283, 284, 285, 286, -1, -1, -1, -1, 291,
ecca16b0 822 292, 293, 294, 295, 296, -1, 64, 299, -1, 126,
823 -1, -1, -1, -1, -1, -1, 308, -1, 310, 311,
824 -1, 272, 273, 274, 275, -1, -1, -1, 279, -1,
825 281, 33, -1, 91, 36, 37, 38, -1, 40, 41,
826 42, 43, -1, 45, -1, -1, 297, 298, -1, 300,
827 301, 302, 303, 304, -1, -1, -1, -1, -1, -1,
828 -1, -1, 64, -1, -1, -1, -1, -1, 126, -1,
829 -1, -1, -1, -1, -1, -1, -1, 272, 273, 274,
830 275, -1, -1, -1, 279, -1, 281, 33, -1, 91,
831 36, 37, 38, -1, 40, 41, 42, 43, -1, 45,
832 -1, -1, 297, 298, -1, 300, 301, 302, 303, 304,
833 -1, -1, -1, -1, -1, -1, -1, -1, 64, -1,
834 -1, -1, -1, -1, 126, -1, -1, -1, -1, -1,
835 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6da72b64 836 257, 258, 259, 260, 261, 91, 263, 264, 265, -1,
ecca16b0 837 33, -1, 269, 36, 37, 38, -1, 40, 41, 42,
838 43, -1, 45, 280, -1, 282, 283, 284, 285, 286,
6da72b64 839 -1, -1, -1, -1, 291, 292, 293, 294, 295, 296,
ecca16b0 840 126, 64, 299, -1, -1, -1, -1, -1, -1, -1,
841 -1, 308, -1, 310, 311, -1, -1, -1, 256, 257,
842 258, 259, 260, 261, -1, 263, 264, 265, 91, -1,
843 -1, 269, 41, -1, -1, 44, -1, -1, -1, -1,
844 -1, -1, 280, -1, 282, 283, 284, 285, 286, 58,
845 59, -1, -1, 291, 292, 293, 294, 295, 296, -1,
846 -1, 299, -1, 126, -1, -1, -1, -1, -1, -1,
847 308, -1, 310, 311, -1, 257, 258, 259, 260, 261,
b1524f17 848 -1, 263, 264, 265, 93, -1, -1, 269, -1, -1,
849 -1, -1, -1, -1, -1, -1, -1, -1, 280, -1,
850 282, 283, 284, 285, 286, -1, -1, -1, -1, 291,
ecca16b0 851 292, 293, 294, 295, 296, -1, -1, 299, -1, -1,
852 -1, -1, -1, -1, -1, -1, 308, -1, 310, 311,
6da72b64 853 -1, 257, 258, 259, 260, 261, -1, 263, 264, 265,
b1524f17 854 -1, 33, -1, 269, 36, 37, 38, -1, 40, -1,
ecca16b0 855 42, 43, -1, 45, 280, -1, 282, 283, 284, 285,
6da72b64 856 286, -1, -1, -1, -1, 291, 292, 293, 294, 295,
ecca16b0 857 296, -1, 64, 299, -1, -1, -1, -1, -1, -1,
858 -1, -1, 308, -1, 310, 311, -1, -1, -1, -1,
859 41, -1, -1, 44, 257, 258, 259, 260, 261, 91,
860 263, 264, 265, -1, -1, -1, 269, 58, 59, -1,
861 -1, -1, 63, -1, -1, -1, -1, 280, -1, 282,
862 283, 284, 285, 286, -1, -1, -1, -1, 291, 292,
863 293, 294, 295, 296, 126, 41, 299, -1, 44, -1,
864 91, -1, 93, -1, -1, 308, -1, 310, 311, -1,
865 -1, -1, 58, 59, -1, -1, -1, 63, -1, -1,
28757baa 866 -1, -1, -1, 272, 273, 274, 275, -1, -1, -1,
ecca16b0 867 279, -1, 123, -1, -1, -1, -1, -1, 41, -1,
868 -1, 44, -1, -1, -1, 91, -1, 93, 297, 298,
869 -1, 300, -1, -1, -1, 58, 59, -1, -1, -1,
870 63, -1, -1, -1, -1, -1, -1, -1, -1, -1,
b1524f17 871 -1, -1, -1, -1, -1, -1, -1, 123, -1, -1,
872 -1, -1, -1, 41, -1, -1, 44, -1, 91, -1,
ecca16b0 873 93, -1, -1, -1, -1, -1, -1, -1, -1, -1,
b1524f17 874 58, 59, -1, -1, -1, 63, -1, -1, -1, -1,
ecca16b0 875 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
876 123, -1, -1, -1, -1, 257, 258, 259, 260, 261,
b1524f17 877 -1, 263, 264, 265, -1, 93, -1, 269, -1, -1,
ecca16b0 878 -1, -1, -1, -1, -1, -1, -1, -1, 280, -1,
879 282, 283, 284, 285, 286, -1, -1, -1, -1, 291,
b1524f17 880 292, 293, 294, 295, 296, 123, -1, 299, 91, -1,
ecca16b0 881 -1, -1, -1, -1, -1, -1, 308, -1, 310, 311,
b1524f17 882 -1, 272, 273, 274, 275, -1, 41, -1, 279, 44,
ecca16b0 883 281, -1, -1, -1, -1, -1, 287, 288, 289, 290,
b1524f17 884 123, -1, -1, 58, 59, -1, 297, 298, 63, 300,
ecca16b0 885 301, 302, 303, 304, 305, 306, -1, -1, 309, -1,
886 -1, 312, 313, 314, -1, -1, 272, 273, 274, 275,
b1524f17 887 -1, 41, -1, 279, 44, 281, 91, -1, 93, -1,
6da72b64 888 -1, 287, 288, 289, 290, -1, -1, -1, 58, 59,
889 -1, 297, 298, 63, 300, 301, 302, 303, 304, 305,
ecca16b0 890 306, -1, -1, 309, -1, -1, 312, 313, 314, 272,
b1524f17 891 273, 274, 275, -1, 41, -1, 279, 44, 281, -1,
ecca16b0 892 -1, -1, -1, 93, 287, 288, 289, 290, -1, -1,
b1524f17 893 -1, 58, 59, -1, 297, 298, 63, 300, 301, 302,
ecca16b0 894 303, 304, 305, 306, -1, -1, 309, -1, -1, 312,
b1524f17 895 313, 314, -1, 123, 272, 273, 274, 275, -1, 41,
896 -1, 279, -1, 281, -1, -1, 93, -1, -1, 287,
ecca16b0 897 288, 289, 290, -1, -1, -1, 58, 59, -1, 297,
898 298, 63, 300, 301, 302, 303, 304, 305, 306, -1,
b1524f17 899 -1, 309, -1, -1, 312, 313, 314, -1, -1, -1,
900 -1, -1, 41, -1, 287, 288, 289, 290, -1, 91,
901 -1, 93, -1, -1, -1, -1, -1, -1, -1, 58,
902 59, 304, 305, 306, 63, -1, 309, -1, -1, 312,
903 313, 314, -1, -1, -1, -1, -1, -1, -1, -1,
904 -1, 123, -1, -1, -1, -1, -1, -1, -1, -1,
905 -1, -1, 91, -1, 93, -1, -1, 272, 273, 274,
906 275, -1, -1, -1, 279, -1, 281, -1, -1, -1,
907 -1, -1, 287, 288, 289, 290, -1, -1, -1, -1,
908 -1, -1, 297, 298, 123, 300, 301, 302, 303, 304,
ecca16b0 909 305, 306, -1, -1, 309, -1, -1, 312, 313, 314,
b1524f17 910 -1, -1, 272, 273, 274, 275, -1, 41, -1, 279,
911 44, 281, -1, -1, -1, -1, -1, 287, 288, 289,
912 290, -1, -1, -1, 58, 59, -1, 297, 298, 63,
913 300, 301, 302, 303, 304, 305, 306, -1, -1, 309,
914 -1, -1, 312, 313, 314, 272, 273, 274, 275, -1,
915 -1, -1, 279, -1, -1, -1, -1, 41, -1, 93,
916 44, -1, -1, -1, -1, -1, -1, -1, -1, -1,
917 297, 298, -1, 300, 58, 59, -1, -1, -1, 63,
918 -1, -1, -1, -1, -1, -1, -1, -1, -1, 123,
ecca16b0 919 272, 273, 274, 275, -1, -1, -1, 279, -1, 281,
b1524f17 920 -1, -1, -1, -1, -1, 287, 288, 289, 290, 93,
921 -1, -1, -1, -1, -1, 297, 298, -1, 300, 301,
922 302, 303, 304, 305, 306, -1, 41, 309, -1, 44,
923 312, 313, 314, 272, 273, 274, 275, -1, 41, 123,
924 279, -1, 281, 58, 59, -1, -1, -1, 287, 288,
925 289, 290, -1, -1, -1, 58, 59, -1, 297, 298,
926 63, 300, 301, 302, 303, 304, 305, 306, -1, -1,
927 309, -1, -1, 312, 313, 314, -1, -1, 93, -1,
928 -1, -1, -1, 41, -1, -1, 44, -1, 91, -1,
929 93, -1, -1, -1, -1, -1, -1, -1, -1, -1,
930 58, 59, -1, -1, -1, 63, -1, -1, -1, -1,
931 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
932 123, -1, -1, -1, -1, -1, -1, -1, -1, -1,
933 -1, -1, -1, -1, -1, 93, -1, -1, 272, 273,
934 274, 275, -1, -1, -1, 279, -1, 281, -1, -1,
935 -1, -1, -1, 287, 288, 289, 290, -1, -1, 41,
936 -1, -1, 44, 297, 298, 123, 300, 301, 302, 303,
937 304, 305, 306, -1, -1, 309, 58, 59, 312, 313,
938 314, 63, -1, -1, -1, -1, -1, -1, 272, 273,
939 274, 275, -1, -1, -1, 279, -1, 281, -1, -1,
940 -1, -1, -1, 287, 288, 289, 290, -1, -1, 41,
941 -1, 93, 44, 297, 298, -1, 300, 301, 302, 303,
942 304, 305, 306, -1, -1, 309, 58, 59, 312, 313,
943 314, 63, -1, -1, -1, -1, -1, -1, -1, -1,
944 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
945 -1, -1, -1, -1, -1, -1, -1, 272, 273, 274,
946 275, 93, -1, -1, 279, -1, -1, -1, -1, 272,
947 273, 274, 275, -1, 41, -1, 279, 44, 281, -1,
948 -1, -1, 297, 298, 287, 288, 289, 290, -1, -1,
949 -1, 58, 59, -1, 297, 298, 63, 300, 301, 302,
950 303, 304, 305, 306, -1, -1, 309, -1, -1, 312,
951 313, 314, -1, -1, 272, 273, 274, 275, -1, 41,
952 -1, 279, 44, 281, -1, -1, 93, -1, -1, 287,
ecca16b0 953 288, 289, 290, -1, -1, -1, 58, 59, -1, 297,
954 298, 63, 300, 301, 302, 303, 304, 305, 306, -1,
b1524f17 955 -1, 309, -1, -1, 312, 313, 314, -1, -1, -1,
956 -1, -1, 41, -1, -1, 44, -1, -1, -1, -1,
957 -1, 93, -1, -1, -1, -1, -1, -1, -1, 58,
958 59, -1, -1, -1, 63, -1, -1, -1, -1, -1,
959 272, 273, 274, 275, -1, -1, -1, 279, -1, 281,
36477c24 960 -1, -1, -1, -1, -1, 287, 288, 289, 290, -1,
b1524f17 961 -1, -1, -1, -1, 93, 297, 298, -1, 300, 301,
36477c24 962 302, 303, 304, 305, 306, -1, -1, 309, -1, -1,
b1524f17 963 312, 313, 314, 41, -1, -1, 44, -1, -1, -1,
964 272, 273, 274, 275, -1, 41, -1, 279, 44, 281,
965 58, 59, -1, -1, -1, 287, 288, 289, 290, -1,
966 -1, -1, 58, 59, -1, 297, 298, 63, 300, 301,
967 302, 303, 304, 305, 306, -1, -1, 309, -1, -1,
968 312, 313, 314, -1, -1, 93, -1, -1, -1, -1,
969 -1, -1, -1, -1, -1, -1, -1, 93, -1, -1,
970 -1, -1, -1, -1, -1, 272, 273, 274, 275, -1,
971 41, -1, 279, 44, 281, -1, -1, -1, -1, -1,
972 287, 288, 289, 290, -1, -1, -1, 58, 59, -1,
973 297, 298, 63, 300, 301, 302, 303, 304, 305, 306,
974 -1, -1, 309, -1, -1, 312, 313, 314, -1, -1,
975 272, 273, 274, 275, -1, 41, -1, 279, 44, 281,
976 -1, -1, 93, -1, -1, 287, 288, 289, 290, -1,
977 -1, -1, 58, 59, -1, 297, 298, 63, 300, 301,
978 302, 303, 304, 305, 306, -1, -1, 309, -1, -1,
979 312, 313, 314, 272, 273, 274, 275, -1, 41, -1,
ecca16b0 980 279, 44, 281, -1, -1, -1, -1, 93, 287, 288,
981 289, 290, -1, -1, -1, 58, 59, -1, 297, 298,
982 63, 300, 301, 302, 303, 304, 305, 306, -1, -1,
b1524f17 983 309, -1, -1, -1, 41, -1, -1, 44, -1, -1,
984 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
985 93, 58, 59, -1, -1, -1, 63, -1, -1, -1,
986 -1, -1, -1, -1, 272, 273, 274, 275, -1, -1,
987 -1, 279, -1, -1, -1, -1, 272, 273, 274, 275,
988 -1, 41, -1, 279, 44, 281, 93, -1, -1, 297,
989 298, 287, 288, 289, 290, -1, -1, -1, 58, 59,
990 -1, 297, 298, 63, 300, 301, 302, 303, 304, 305,
991 306, -1, -1, -1, -1, -1, -1, -1, -1, -1,
992 -1, -1, -1, -1, -1, -1, -1, -1, -1, 41,
993 -1, -1, 44, 93, -1, -1, -1, -1, -1, -1,
994 -1, 272, 273, 274, 275, -1, 58, 59, 279, -1,
995 281, 63, -1, -1, -1, -1, 287, 288, 289, 290,
996 -1, -1, -1, -1, -1, -1, 297, 298, -1, 300,
997 301, 302, 303, 304, 305, 306, -1, -1, -1, -1,
998 -1, 93, -1, -1, -1, -1, 272, 273, 274, 275,
ecca16b0 999 -1, 41, -1, 279, 44, 281, -1, -1, -1, -1,
b1524f17 1000 -1, 287, 288, 289, 290, -1, -1, -1, 58, 59,
ecca16b0 1001 -1, 297, 298, 63, 300, 301, 302, 303, 304, 305,
1002 306, -1, -1, -1, -1, -1, -1, -1, -1, 272,
1003 273, 274, 275, -1, 41, -1, 279, 44, 281, -1,
1004 -1, -1, -1, 93, 287, 288, 289, 290, -1, -1,
1005 -1, 58, 59, -1, 297, 298, 63, 300, 301, 302,
b1524f17 1006 303, 304, 305, 306, -1, 272, 273, 274, 275, -1,
ecca16b0 1007 41, -1, 279, 44, 281, -1, -1, -1, -1, -1,
b1524f17 1008 287, 288, 289, 290, -1, -1, 93, 58, 59, -1,
1009 297, 298, 63, 300, 301, 302, 303, 304, 305, 306,
bbce6d69 1010 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
b1524f17 1011 -1, -1, 272, 273, 274, 275, -1, -1, -1, 279,
1012 -1, 281, 93, -1, -1, -1, -1, 287, 288, 289,
1013 290, 41, -1, -1, 44, -1, -1, 297, 298, -1,
1014 300, 301, 302, 303, 304, 305, 306, -1, 58, 59,
1015 -1, -1, -1, 63, -1, -1, -1, -1, -1, -1,
1016 272, 273, 274, 275, -1, -1, -1, 279, -1, 281,
1017 -1, -1, -1, -1, -1, 287, 288, 289, 290, -1,
1018 -1, 41, -1, 93, 44, 297, 298, -1, 300, 301,
1019 302, 303, 304, 305, 306, -1, -1, -1, 58, 59,
1020 -1, -1, -1, 63, -1, -1, -1, -1, -1, -1,
bbce6d69 1021 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
b1524f17 1022 -1, -1, 272, 273, 274, 275, -1, 41, -1, 279,
1023 44, 281, -1, 93, -1, -1, -1, 287, 288, 289,
1024 290, -1, -1, -1, 58, 59, -1, 297, 298, 63,
1025 300, 301, 302, 303, 304, 305, -1, 91, -1, -1,
1026 41, -1, -1, 44, -1, 272, 273, 274, 275, -1,
1027 41, -1, 279, 44, 281, -1, -1, 58, 59, 93,
1028 287, 288, 63, 290, -1, -1, -1, 58, 59, 123,
1029 297, 298, 63, 300, 301, 302, 303, 304, 305, -1,
1030 -1, 272, 273, 274, 275, -1, 41, -1, 279, 44,
1031 281, -1, 93, -1, -1, -1, 287, 288, 41, -1,
1032 -1, 44, 93, 58, 59, -1, 297, 298, 63, 300,
1033 301, 302, 303, 304, 305, 58, 59, -1, -1, -1,
1034 -1, -1, -1, -1, -1, -1, -1, -1, -1, 41,
1035 -1, -1, 44, -1, -1, -1, -1, -1, 93, -1,
1036 -1, -1, 272, 273, 274, 275, 58, 59, -1, 279,
1037 93, 281, -1, -1, -1, -1, -1, 287, 288, -1,
1038 -1, -1, -1, -1, -1, -1, -1, 297, 298, -1,
1039 300, 301, 302, 303, 304, -1, -1, 63, -1, -1,
1040 -1, 93, -1, -1, -1, -1, -1, -1, -1, -1,
1041 -1, -1, 272, 273, 274, 275, -1, -1, -1, 279,
1042 -1, 281, -1, -1, -1, 91, -1, 287, 288, -1,
1043 -1, -1, -1, -1, -1, 63, -1, 297, 298, -1,
1044 300, 301, 302, 303, 304, -1, -1, -1, -1, -1,
1045 -1, -1, -1, 287, 288, 289, 290, 123, 272, 273,
1046 274, 275, -1, 91, -1, 279, -1, 281, 302, 303,
1047 304, 305, 306, 287, 288, 309, -1, -1, 312, 313,
1048 314, -1, -1, 297, 298, -1, 300, 301, 302, 303,
1049 304, 272, 273, 274, 275, 123, -1, -1, 279, -1,
1050 281, 272, 273, 274, 275, -1, -1, -1, 279, -1,
1051 281, -1, -1, -1, -1, -1, 297, 298, -1, 300,
1052 301, 302, 303, 91, -1, -1, 297, 298, -1, 300,
1053 301, 302, -1, -1, -1, -1, -1, 272, 273, 274,
1054 275, -1, -1, -1, 279, -1, 281, -1, -1, 272,
1055 273, 274, 275, -1, -1, 123, 279, -1, -1, -1,
1056 -1, -1, 297, 298, -1, 300, 301, -1, -1, -1,
1057 -1, -1, -1, -1, 297, 298, -1, -1, 30, -1,
1058 272, 273, 274, 275, -1, -1, 38, 279, -1, -1,
1059 42, -1, -1, 45, -1, -1, -1, -1, -1, -1,
1060 52, 53, 54, 55, 56, 297, 298, 59, 60, -1,
1061 -1, -1, -1, -1, 66, 281, -1, -1, -1, -1,
1062 -1, 287, 288, 289, 290, -1, -1, -1, -1, -1,
1063 -1, -1, 25, 26, 300, 301, 302, 303, 304, 305,
1064 306, 93, -1, 309, 37, -1, 312, 313, 314, -1,
1065 43, 44, 45, 281, -1, -1, -1, 50, -1, 287,
1066 288, 289, 290, -1, -1, -1, -1, -1, -1, 62,
1067 63, 64, 65, 301, 302, 303, 304, 305, 306, -1,
1068 -1, 309, -1, -1, 312, 313, 314, -1, -1, -1,
1069 -1, -1, -1, -1, -1, -1, -1, -1, -1, 151,
1070 152, 153, 154, 155, 156, 157, 158, 159, 160, 161,
1071 162, 163, 164, -1, 107, -1, -1, -1, -1, 287,
1072 288, 289, 290, -1, 176, -1, -1, -1, -1, -1,
1073 -1, -1, -1, -1, -1, 303, 304, 305, 306, -1,
1074 -1, 309, -1, -1, 312, 313, 314, -1, -1, -1,
bbce6d69 1075 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
bbce6d69 1076 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
b1524f17 1077 -1, -1, -1, -1, 167, -1, -1, -1, -1, -1,
bbce6d69 1078 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
b1524f17 1079 -1, -1, -1, -1, -1, -1, -1, -1, 191, -1,
1080 -1, -1, -1, 255, -1, -1, -1, -1, -1, -1,
28757baa 1081 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1082 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
b1524f17 1083 -1, -1, -1, -1, 286,
93a17b20 1084};
1085#define YYFINAL 1
79072805 1086#ifndef YYDEBUG
93a17b20 1087#define YYDEBUG 0
79072805 1088#endif
55497cff 1089#define YYMAXTOKEN 314
79072805 1090#if YYDEBUG
22c35a8c 1091static char *yyname[] = {
93a17b20 1092"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,
1093"'!'",0,0,"'$'","'%'","'&'",0,"'('","')'","'*'","'+'","','","'-'",0,0,0,0,0,0,0,
a0d0e21e 10940,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,
10950,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,
10960,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,
93a17b20 10970,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,
10980,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,
a0d0e21e 10990,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",
4633a7c4 1100"PMFUNC","PRIVATEREF","FUNC0SUB","UNIOPSUB","LSTOPSUB","LABEL","FORMAT","SUB",
1101"ANONSUB","PACKAGE","USE","WHILE","UNTIL","IF","UNLESS","ELSE","ELSIF",
36477c24 1102"CONTINUE","FOR","LOOPEX","DOTDOT","FUNC0","FUNC1","FUNC","UNIOP","LSTOP",
1103"RELOP","EQOP","MULOP","ADDOP","DOLSHARP","DO","HASHBRACK","NOAMP","LOCAL","MY",
1104"OROP","ANDOP","NOTOP","ASSIGNOP","OROR","ANDAND","BITOROP","BITANDOP",
4633a7c4 1105"SHIFTOP","MATCHOP","UMINUS","REFGEN","POWOP","PREINC","PREDEC","POSTINC",
1106"POSTDEC","ARROW",
79072805 1107};
22c35a8c 1108static char *yyrule[] = {
93a17b20 1109"$accept : prog",
1110"$$1 :",
1111"prog : $$1 lineseq",
1112"block : '{' remember lineseq '}'",
1113"remember :",
bbce6d69 1114"mblock : '{' mremember lineseq '}'",
55497cff 1115"mremember :",
93a17b20 1116"lineseq :",
1117"lineseq : lineseq decl",
1118"lineseq : lineseq line",
1119"line : label cond",
1120"line : loop",
1121"line : label ';'",
1122"line : label sideff ';'",
1123"sideff : error",
1124"sideff : expr",
1125"sideff : expr IF expr",
1126"sideff : expr UNLESS expr",
1127"sideff : expr WHILE expr",
55497cff 1128"sideff : expr UNTIL iexpr",
ecca16b0 1129"sideff : expr FOR expr",
93a17b20 1130"else :",
55497cff 1131"else : ELSE mblock",
1132"else : ELSIF '(' mexpr ')' mblock else",
1133"cond : IF '(' remember mexpr ')' mblock else",
1134"cond : UNLESS '(' remember miexpr ')' mblock else",
93a17b20 1135"cont :",
1136"cont : CONTINUE block",
55497cff 1137"loop : label WHILE '(' remember mtexpr ')' mblock cont",
1138"loop : label UNTIL '(' remember miexpr ')' mblock cont",
bbce6d69 1139"loop : label FOR MY remember my_scalar '(' mexpr ')' mblock cont",
1140"loop : label FOR scalar '(' remember mexpr ')' mblock cont",
1141"loop : label FOR '(' remember mexpr ')' mblock cont",
1142"loop : label FOR '(' remember mnexpr ';' mtexpr ';' mnexpr ')' mblock",
93a17b20 1143"loop : label block cont",
1144"nexpr :",
1145"nexpr : sideff",
1146"texpr :",
1147"texpr : expr",
55497cff 1148"iexpr : expr",
1149"mexpr : expr",
bbce6d69 1150"mnexpr : nexpr",
55497cff 1151"mtexpr : texpr",
1152"miexpr : iexpr",
93a17b20 1153"label :",
1154"label : LABEL",
1155"decl : format",
1156"decl : subrout",
1157"decl : package",
a0d0e21e 1158"decl : use",
44a8e56a 1159"format : FORMAT startformsub formname block",
1160"formname : WORD",
1161"formname :",
28757baa 1162"subrout : SUB startsub subname proto subbody",
1163"startsub :",
1164"startanonsub :",
44a8e56a 1165"startformsub :",
28757baa 1166"subname : WORD",
4633a7c4 1167"proto :",
1168"proto : THING",
28757baa 1169"subbody : block",
1170"subbody : ';'",
93a17b20 1171"package : PACKAGE WORD ';'",
1172"package : PACKAGE ';'",
28757baa 1173"$$2 :",
1174"use : USE startsub $$2 WORD WORD listexpr ';'",
a0d0e21e 1175"expr : expr ANDOP expr",
1176"expr : expr OROP expr",
a0d0e21e 1177"expr : argexpr",
1178"argexpr : argexpr ','",
1179"argexpr : argexpr ',' term",
1180"argexpr : term",
1181"listop : LSTOP indirob argexpr",
1182"listop : FUNC '(' indirob expr ')'",
1183"listop : term ARROW method '(' listexprcom ')'",
b1524f17 1184"listop : term ARROW method",
93a17b20 1185"listop : METHOD indirob listexpr",
a0d0e21e 1186"listop : FUNCMETH indirob '(' listexprcom ')'",
93a17b20 1187"listop : LSTOP listexpr",
a0d0e21e 1188"listop : FUNC '(' listexprcom ')'",
28757baa 1189"$$3 :",
1190"listop : LSTOPSUB startanonsub block $$3 listexpr",
a0d0e21e 1191"method : METHOD",
1192"method : scalar",
1193"term : term ASSIGNOP term",
1194"term : term POWOP term",
1195"term : term MULOP term",
1196"term : term ADDOP term",
1197"term : term SHIFTOP term",
1198"term : term RELOP term",
1199"term : term EQOP term",
1200"term : term BITANDOP term",
1201"term : term BITOROP term",
1202"term : term DOTDOT term",
1203"term : term ANDAND term",
1204"term : term OROR term",
1205"term : term '?' term ':' term",
1206"term : term MATCHOP term",
93a17b20 1207"term : '-' term",
1208"term : '+' term",
1209"term : '!' term",
1210"term : '~' term",
1211"term : REFGEN term",
1212"term : term POSTINC",
1213"term : term POSTDEC",
1214"term : PREINC term",
1215"term : PREDEC term",
55497cff 1216"term : local term",
a0d0e21e 1217"term : '(' expr ')'",
93a17b20 1218"term : '(' ')'",
a0d0e21e 1219"term : '[' expr ']'",
93a17b20 1220"term : '[' ']'",
a0d0e21e 1221"term : HASHBRACK expr ';' '}'",
93a17b20 1222"term : HASHBRACK ';' '}'",
28757baa 1223"term : ANONSUB startanonsub proto block",
93a17b20 1224"term : scalar",
c07a80fd 1225"term : star '{' expr ';' '}'",
93a17b20 1226"term : star",
1227"term : scalar '[' expr ']'",
1228"term : term ARROW '[' expr ']'",
463ee0b2 1229"term : term '[' expr ']'",
93a17b20 1230"term : hsh",
1231"term : ary",
1232"term : arylen",
1233"term : scalar '{' expr ';' '}'",
1234"term : term ARROW '{' expr ';' '}'",
463ee0b2 1235"term : term '{' expr ';' '}'",
a0d0e21e 1236"term : '(' expr ')' '[' expr ']'",
93a17b20 1237"term : '(' ')' '[' expr ']'",
1238"term : ary '[' expr ']'",
1239"term : ary '{' expr ';' '}'",
93a17b20 1240"term : THING",
1241"term : amper",
1242"term : amper '(' ')'",
a0d0e21e 1243"term : amper '(' expr ')'",
93a17b20 1244"term : NOAMP WORD listexpr",
a0d0e21e 1245"term : DO term",
93a17b20 1246"term : DO block",
1247"term : DO WORD '(' ')'",
a0d0e21e 1248"term : DO WORD '(' expr ')'",
93a17b20 1249"term : DO scalar '(' ')'",
a0d0e21e 1250"term : DO scalar '(' expr ')'",
6da72b64 1251"term : term ARROW '(' ')'",
1252"term : term ARROW '(' expr ')'",
93a17b20 1253"term : LOOPEX",
a0d0e21e 1254"term : LOOPEX term",
c07a80fd 1255"term : NOTOP argexpr",
93a17b20 1256"term : UNIOP",
1257"term : UNIOP block",
a0d0e21e 1258"term : UNIOP term",
4633a7c4 1259"term : UNIOPSUB term",
93a17b20 1260"term : FUNC0",
1261"term : FUNC0 '(' ')'",
4633a7c4 1262"term : FUNC0SUB",
93a17b20 1263"term : FUNC1 '(' ')'",
1264"term : FUNC1 '(' expr ')'",
a0d0e21e 1265"term : PMFUNC '(' term ')'",
1266"term : PMFUNC '(' term ',' term ')'",
93a17b20 1267"term : WORD",
1268"term : listop",
1269"listexpr :",
a0d0e21e 1270"listexpr : argexpr",
1271"listexprcom :",
1272"listexprcom : expr",
1273"listexprcom : expr ','",
55497cff 1274"local : LOCAL",
1275"local : MY",
1276"my_scalar : scalar",
93a17b20 1277"amper : '&' indirob",
1278"scalar : '$' indirob",
1279"ary : '@' indirob",
1280"hsh : '%' indirob",
1281"arylen : DOLSHARP indirob",
1282"star : '*' indirob",
1283"indirob : WORD",
1284"indirob : scalar",
1285"indirob : block",
1286"indirob : PRIVATEREF",
79072805 1287};
79072805 1288#endif
93a17b20 1289#define yyclearin (yychar=(-1))
1290#define yyerrok (yyerrflag=0)
1291#ifdef YYSTACKSIZE
1292#ifndef YYMAXDEPTH
1293#define YYMAXDEPTH YYSTACKSIZE
1294#endif
1295#else
1296#ifdef YYMAXDEPTH
1297#define YYSTACKSIZE YYMAXDEPTH
1298#else
1299#define YYSTACKSIZE 500
1300#define YYMAXDEPTH 500
1301#endif
1302#endif
b1524f17 1303#line 652 "perly.y"
93a17b20 1304 /* PROGRAM */
b1524f17 1305#line 1318 "perly.c"
93a17b20 1306#define YYABORT goto yyabort
1307#define YYACCEPT goto yyaccept
1308#define YYERROR goto yyerrlab
a0d0e21e 1309
1310struct ysv {
1311 short* yyss;
1312 YYSTYPE* yyvs;
1313 int oldyydebug;
1314 int oldyynerrs;
1315 int oldyyerrflag;
1316 int oldyychar;
1317 YYSTYPE oldyyval;
1318 YYSTYPE oldyylval;
1319};
1320
79072805 1321int
864dbfa3 1322Perl_yyparse(pTHX)
79072805 1323{
93a17b20 1324 register int yym, yyn, yystate;
1325 register short *yyssp;
1326 register YYSTYPE *yyvsp;
1327 short* yyss;
1328 YYSTYPE* yyvs;
1329 unsigned yystacksize = YYSTACKSIZE;
93a17b20 1330 int retval = 0;
93a17b20 1331#if YYDEBUG
1332 register char *yys;
f0f333f4 1333#ifndef __cplusplus
93a17b20 1334 extern char *getenv();
a0d0e21e 1335#endif
f0f333f4 1336#endif
a0d0e21e 1337
8c52afec 1338 struct ysv *ysave;
8c52afec 1339 New(73, ysave, 1, struct ysv);
51371543 1340 SAVEDESTRUCTOR(yydestruct, ysave);
a0d0e21e 1341 ysave->oldyydebug = yydebug;
1342 ysave->oldyynerrs = yynerrs;
1343 ysave->oldyyerrflag = yyerrflag;
1344 ysave->oldyychar = yychar;
1345 ysave->oldyyval = yyval;
1346 ysave->oldyylval = yylval;
79072805 1347
a0d0e21e 1348#if YYDEBUG
93a17b20 1349 if (yys = getenv("YYDEBUG"))
1350 {
1351 yyn = *yys;
1352 if (yyn >= '0' && yyn <= '9')
1353 yydebug = yyn - '0';
1354 }
1355#endif
79072805 1356
93a17b20 1357 yynerrs = 0;
1358 yyerrflag = 0;
1359 yychar = (-1);
79072805 1360
93a17b20 1361 /*
1362 ** Initialize private stacks (yyparse may be called from an action)
1363 */
8c52afec 1364 New(73, yyss, yystacksize, short);
1365 New(73, yyvs, yystacksize, YYSTYPE);
1366 ysave->yyss = yyss;
1367 ysave->yyvs = yyvs;
93a17b20 1368 if (!yyvs || !yyss)
1369 goto yyoverflow;
79072805 1370
93a17b20 1371 yyssp = yyss;
1372 yyvsp = yyvs;
1373 *yyssp = yystate = 0;
79072805 1374
93a17b20 1375yyloop:
1376 if (yyn = yydefred[yystate]) goto yyreduce;
1377 if (yychar < 0)
1378 {
1379 if ((yychar = yylex()) < 0) yychar = 0;
79072805 1380#if YYDEBUG
93a17b20 1381 if (yydebug)
1382 {
1383 yys = 0;
1384 if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
1385 if (!yys) yys = "illegal-symbol";
b1524f17 1386 printf("yydebug: state %d, reading %d (%s)\n", yystate,
93a17b20 1387 yychar, yys);
1388 }
79072805 1389#endif
93a17b20 1390 }
1391 if ((yyn = yysindex[yystate]) && (yyn += yychar) >= 0 &&
1392 yyn <= YYTABLESIZE && yycheck[yyn] == yychar)
1393 {
79072805 1394#if YYDEBUG
93a17b20 1395 if (yydebug)
ac4c12e7 1396 PerlIO_printf(Perl_debug_log, "yydebug: state %d, shifting to state %d\n",
93a17b20 1397 yystate, yytable[yyn]);
79072805 1398#endif
93a17b20 1399 if (yyssp >= yyss + yystacksize - 1)
1400 {
1401 /*
1402 ** reallocate and recover. Note that pointers
1403 ** have to be reset, or bad things will happen
1404 */
1405 int yyps_index = (yyssp - yyss);
1406 int yypv_index = (yyvsp - yyvs);
1407 yystacksize += YYSTACKSIZE;
a0d0e21e 1408 ysave->yyvs = yyvs =
d3b6f988 1409 (YYSTYPE*)PerlMem_realloc((char*)yyvs,yystacksize * sizeof(YYSTYPE));
a0d0e21e 1410 ysave->yyss = yyss =
d3b6f988 1411 (short*)PerlMem_realloc((char*)yyss,yystacksize * sizeof(short));
93a17b20 1412 if (!yyvs || !yyss)
1413 goto yyoverflow;
1414 yyssp = yyss + yyps_index;
1415 yyvsp = yyvs + yypv_index;
1416 }
1417 *++yyssp = yystate = yytable[yyn];
1418 *++yyvsp = yylval;
1419 yychar = (-1);
1420 if (yyerrflag > 0) --yyerrflag;
1421 goto yyloop;
1422 }
1423 if ((yyn = yyrindex[yystate]) && (yyn += yychar) >= 0 &&
1424 yyn <= YYTABLESIZE && yycheck[yyn] == yychar)
1425 {
1426 yyn = yytable[yyn];
1427 goto yyreduce;
1428 }
1429 if (yyerrflag) goto yyinrecovery;
1430#ifdef lint
1431 goto yynewerror;
1432#endif
1433yynewerror:
1434 yyerror("syntax error");
1435#ifdef lint
1436 goto yyerrlab;
1437#endif
1438yyerrlab:
1439 ++yynerrs;
1440yyinrecovery:
1441 if (yyerrflag < 3)
1442 {
1443 yyerrflag = 3;
1444 for (;;)
1445 {
1446 if ((yyn = yysindex[*yyssp]) && (yyn += YYERRCODE) >= 0 &&
1447 yyn <= YYTABLESIZE && yycheck[yyn] == YYERRCODE)
1448 {
79072805 1449#if YYDEBUG
93a17b20 1450 if (yydebug)
ac4c12e7 1451 PerlIO_printf(Perl_debug_log,
ed6116ce 1452 "yydebug: state %d, error recovery shifting to state %d\n",
1453 *yyssp, yytable[yyn]);
93a17b20 1454#endif
1455 if (yyssp >= yyss + yystacksize - 1)
1456 {
1457 /*
1458 ** reallocate and recover. Note that pointers
1459 ** have to be reset, or bad things will happen
1460 */
1461 int yyps_index = (yyssp - yyss);
1462 int yypv_index = (yyvsp - yyvs);
1463 yystacksize += YYSTACKSIZE;
d3b6f988 1464 ysave->yyvs = yyvs = (YYSTYPE*)PerlMem_realloc((char*)yyvs,
93a17b20 1465 yystacksize * sizeof(YYSTYPE));
d3b6f988 1466 ysave->yyss = yyss = (short*)PerlMem_realloc((char*)yyss,
93a17b20 1467 yystacksize * sizeof(short));
1468 if (!yyvs || !yyss)
1469 goto yyoverflow;
1470 yyssp = yyss + yyps_index;
1471 yyvsp = yyvs + yypv_index;
1472 }
1473 *++yyssp = yystate = yytable[yyn];
1474 *++yyvsp = yylval;
1475 goto yyloop;
1476 }
1477 else
1478 {
79072805 1479#if YYDEBUG
93a17b20 1480 if (yydebug)
ac4c12e7 1481 PerlIO_printf(Perl_debug_log,
ed6116ce 1482 "yydebug: error recovery discarding state %d\n",
1483 *yyssp);
79072805 1484#endif
93a17b20 1485 if (yyssp <= yyss) goto yyabort;
1486 --yyssp;
1487 --yyvsp;
1488 }
1489 }
1490 }
1491 else
1492 {
1493 if (yychar == 0) goto yyabort;
79072805 1494#if YYDEBUG
93a17b20 1495 if (yydebug)
1496 {
1497 yys = 0;
1498 if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
1499 if (!yys) yys = "illegal-symbol";
ac4c12e7 1500 PerlIO_printf(Perl_debug_log,
ed6116ce 1501 "yydebug: state %d, error recovery discards token %d (%s)\n",
1502 yystate, yychar, yys);
93a17b20 1503 }
1504#endif
1505 yychar = (-1);
1506 goto yyloop;
1507 }
1508yyreduce:
79072805 1509#if YYDEBUG
93a17b20 1510 if (yydebug)
ac4c12e7 1511 PerlIO_printf(Perl_debug_log, "yydebug: state %d, reducing by rule %d (%s)\n",
93a17b20 1512 yystate, yyn, yyrule[yyn]);
79072805 1513#endif
93a17b20 1514 yym = yylen[yyn];
1515 yyval = yyvsp[1-yym];
1516 switch (yyn)
1517 {
79072805 1518case 1:
b1524f17 1519#line 99 "perly.y"
79072805 1520{
1521#if defined(YYDEBUG) && defined(DEBUGGING)
3280af22 1522 yydebug = (PL_debug & 1);
79072805 1523#endif
3280af22 1524 PL_expect = XSTATE;
93a17b20 1525 }
1526break;
79072805 1527case 2:
b1524f17 1528#line 106 "perly.y"
a0d0e21e 1529{ newPROG(yyvsp[0].opval); }
93a17b20 1530break;
79072805 1531case 3:
b1524f17 1532#line 110 "perly.y"
3280af22 1533{ if (PL_copline > (line_t)yyvsp[-3].ival)
1534 PL_copline = yyvsp[-3].ival;
36477c24 1535 yyval.opval = block_end(yyvsp[-2].ival, yyvsp[-1].opval); }
93a17b20 1536break;
79072805 1537case 4:
b1524f17 1538#line 116 "perly.y"
55497cff 1539{ yyval.ival = block_start(TRUE); }
93a17b20 1540break;
79072805 1541case 5:
b1524f17 1542#line 120 "perly.y"
3280af22 1543{ if (PL_copline > (line_t)yyvsp[-3].ival)
1544 PL_copline = yyvsp[-3].ival;
36477c24 1545 yyval.opval = block_end(yyvsp[-2].ival, yyvsp[-1].opval); }
93a17b20 1546break;
79072805 1547case 6:
b1524f17 1548#line 126 "perly.y"
55497cff 1549{ yyval.ival = block_start(FALSE); }
1550break;
bbce6d69 1551case 7:
b1524f17 1552#line 130 "perly.y"
55497cff 1553{ yyval.opval = Nullop; }
1554break;
bbce6d69 1555case 8:
b1524f17 1556#line 132 "perly.y"
55497cff 1557{ yyval.opval = yyvsp[-1].opval; }
1558break;
bbce6d69 1559case 9:
b1524f17 1560#line 134 "perly.y"
463ee0b2 1561{ yyval.opval = append_list(OP_LINESEQ,
a0d0e21e 1562 (LISTOP*)yyvsp[-1].opval, (LISTOP*)yyvsp[0].opval);
3280af22 1563 PL_pad_reset_pending = TRUE;
1564 if (yyvsp[-1].opval && yyvsp[0].opval) PL_hints |= HINT_BLOCK_SCOPE; }
93a17b20 1565break;
bbce6d69 1566case 10:
b1524f17 1567#line 141 "perly.y"
93a17b20 1568{ yyval.opval = newSTATEOP(0, yyvsp[-1].pval, yyvsp[0].opval); }
1569break;
bbce6d69 1570case 12:
b1524f17 1571#line 144 "perly.y"
93a17b20 1572{ if (yyvsp[-1].pval != Nullch) {
1573 yyval.opval = newSTATEOP(0, yyvsp[-1].pval, newOP(OP_NULL, 0));
79072805 1574 }
1575 else {
1576 yyval.opval = Nullop;
3280af22 1577 PL_copline = NOLINE;
79072805 1578 }
3280af22 1579 PL_expect = XSTATE; }
93a17b20 1580break;
bbce6d69 1581case 13:
b1524f17 1582#line 153 "perly.y"
93a17b20 1583{ yyval.opval = newSTATEOP(0, yyvsp[-2].pval, yyvsp[-1].opval);
3280af22 1584 PL_expect = XSTATE; }
93a17b20 1585break;
bbce6d69 1586case 14:
b1524f17 1587#line 158 "perly.y"
93a17b20 1588{ yyval.opval = Nullop; }
1589break;
bbce6d69 1590case 15:
b1524f17 1591#line 160 "perly.y"
93a17b20 1592{ yyval.opval = yyvsp[0].opval; }
1593break;
bbce6d69 1594case 16:
b1524f17 1595#line 162 "perly.y"
93a17b20 1596{ yyval.opval = newLOGOP(OP_AND, 0, yyvsp[0].opval, yyvsp[-2].opval); }
1597break;
bbce6d69 1598case 17:
b1524f17 1599#line 164 "perly.y"
93a17b20 1600{ yyval.opval = newLOGOP(OP_OR, 0, yyvsp[0].opval, yyvsp[-2].opval); }
1601break;
bbce6d69 1602case 18:
b1524f17 1603#line 166 "perly.y"
8990e307 1604{ yyval.opval = newLOOPOP(OPf_PARENS, 1, scalar(yyvsp[0].opval), yyvsp[-2].opval); }
93a17b20 1605break;
bbce6d69 1606case 19:
b1524f17 1607#line 168 "perly.y"
55497cff 1608{ yyval.opval = newLOOPOP(OPf_PARENS, 1, yyvsp[0].opval, yyvsp[-2].opval);}
93a17b20 1609break;
bbce6d69 1610case 20:
b1524f17 1611#line 170 "perly.y"
ecca16b0 1612{ yyval.opval = newFOROP(0, Nullch, yyvsp[-1].ival,
1613 Nullop, yyvsp[0].opval, yyvsp[-2].opval, Nullop); }
93a17b20 1614break;
bbce6d69 1615case 21:
b1524f17 1616#line 175 "perly.y"
ecca16b0 1617{ yyval.opval = Nullop; }
93a17b20 1618break;
bbce6d69 1619case 22:
b1524f17 1620#line 177 "perly.y"
ecca16b0 1621{ yyval.opval = scope(yyvsp[0].opval); }
1622break;
1623case 23:
b1524f17 1624#line 179 "perly.y"
3280af22 1625{ PL_copline = yyvsp[-5].ival;
bbce6d69 1626 yyval.opval = newSTATEOP(0, Nullch,
1627 newCONDOP(0, yyvsp[-3].opval, scope(yyvsp[-1].opval), yyvsp[0].opval));
3280af22 1628 PL_hints |= HINT_BLOCK_SCOPE; }
93a17b20 1629break;
ecca16b0 1630case 24:
b1524f17 1631#line 186 "perly.y"
3280af22 1632{ PL_copline = yyvsp[-6].ival;
36477c24 1633 yyval.opval = block_end(yyvsp[-4].ival,
bbce6d69 1634 newCONDOP(0, yyvsp[-3].opval, scope(yyvsp[-1].opval), yyvsp[0].opval)); }
93a17b20 1635break;
ecca16b0 1636case 25:
b1524f17 1637#line 190 "perly.y"
3280af22 1638{ PL_copline = yyvsp[-6].ival;
36477c24 1639 yyval.opval = block_end(yyvsp[-4].ival,
bbce6d69 1640 newCONDOP(0, yyvsp[-3].opval, scope(yyvsp[-1].opval), yyvsp[0].opval)); }
93a17b20 1641break;
ecca16b0 1642case 26:
b1524f17 1643#line 196 "perly.y"
71be2cbc 1644{ yyval.opval = Nullop; }
93a17b20 1645break;
ecca16b0 1646case 27:
b1524f17 1647#line 198 "perly.y"
93a17b20 1648{ yyval.opval = scope(yyvsp[0].opval); }
1649break;
ecca16b0 1650case 28:
b1524f17 1651#line 202 "perly.y"
3280af22 1652{ PL_copline = yyvsp[-6].ival;
36477c24 1653 yyval.opval = block_end(yyvsp[-4].ival,
55497cff 1654 newSTATEOP(0, yyvsp[-7].pval,
bbce6d69 1655 newWHILEOP(0, 1, (LOOP*)Nullop,
fb73857a 1656 yyvsp[-6].ival, yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval))); }
93a17b20 1657break;
ecca16b0 1658case 29:
b1524f17 1659#line 208 "perly.y"
3280af22 1660{ PL_copline = yyvsp[-6].ival;
36477c24 1661 yyval.opval = block_end(yyvsp[-4].ival,
55497cff 1662 newSTATEOP(0, yyvsp[-7].pval,
bbce6d69 1663 newWHILEOP(0, 1, (LOOP*)Nullop,
fb73857a 1664 yyvsp[-6].ival, yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval))); }
bbce6d69 1665break;
ecca16b0 1666case 30:
b1524f17 1667#line 214 "perly.y"
36477c24 1668{ yyval.opval = block_end(yyvsp[-6].ival,
bbce6d69 1669 newFOROP(0, yyvsp[-9].pval, yyvsp[-8].ival, yyvsp[-5].opval, yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval)); }
93a17b20 1670break;
ecca16b0 1671case 31:
b1524f17 1672#line 217 "perly.y"
36477c24 1673{ yyval.opval = block_end(yyvsp[-4].ival,
bbce6d69 1674 newFOROP(0, yyvsp[-8].pval, yyvsp[-7].ival, mod(yyvsp[-6].opval, OP_ENTERLOOP),
1675 yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval)); }
55497cff 1676break;
ecca16b0 1677case 32:
b1524f17 1678#line 221 "perly.y"
36477c24 1679{ yyval.opval = block_end(yyvsp[-4].ival,
55497cff 1680 newFOROP(0, yyvsp[-7].pval, yyvsp[-6].ival, Nullop, yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval)); }
93a17b20 1681break;
ecca16b0 1682case 33:
b1524f17 1683#line 225 "perly.y"
fb73857a 1684{ OP *forop = append_elem(OP_LINESEQ,
1685 scalar(yyvsp[-6].opval),
1686 newWHILEOP(0, 1, (LOOP*)Nullop,
1687 yyvsp[-9].ival, scalar(yyvsp[-4].opval),
1688 yyvsp[0].opval, scalar(yyvsp[-2].opval)));
3280af22 1689 PL_copline = yyvsp[-9].ival;
fb73857a 1690 yyval.opval = block_end(yyvsp[-7].ival, newSTATEOP(0, yyvsp[-10].pval, forop)); }
55497cff 1691break;
ecca16b0 1692case 34:
b1524f17 1693#line 233 "perly.y"
fb73857a 1694{ yyval.opval = newSTATEOP(0, yyvsp[-2].pval,
1695 newWHILEOP(0, 1, (LOOP*)Nullop,
1696 NOLINE, Nullop, yyvsp[-1].opval, yyvsp[0].opval)); }
93a17b20 1697break;
ecca16b0 1698case 35:
b1524f17 1699#line 239 "perly.y"
93a17b20 1700{ yyval.opval = Nullop; }
1701break;
ecca16b0 1702case 37:
b1524f17 1703#line 244 "perly.y"
93a17b20 1704{ (void)scan_num("1"); yyval.opval = yylval.opval; }
1705break;
71be2cbc 1706case 39:
b1524f17 1707#line 249 "perly.y"
ecca16b0 1708{ yyval.opval = invert(scalar(yyvsp[0].opval)); }
bbce6d69 1709break;
71be2cbc 1710case 40:
b1524f17 1711#line 253 "perly.y"
bbce6d69 1712{ yyval.opval = yyvsp[0].opval; intro_my(); }
1713break;
71be2cbc 1714case 41:
b1524f17 1715#line 257 "perly.y"
bbce6d69 1716{ yyval.opval = yyvsp[0].opval; intro_my(); }
1717break;
71be2cbc 1718case 42:
b1524f17 1719#line 261 "perly.y"
bbce6d69 1720{ yyval.opval = yyvsp[0].opval; intro_my(); }
55497cff 1721break;
71be2cbc 1722case 43:
b1524f17 1723#line 265 "perly.y"
ecca16b0 1724{ yyval.opval = yyvsp[0].opval; intro_my(); }
55497cff 1725break;
ecca16b0 1726case 44:
b1524f17 1727#line 269 "perly.y"
ecca16b0 1728{ yyval.pval = Nullch; }
bbce6d69 1729break;
71be2cbc 1730case 46:
b1524f17 1731#line 274 "perly.y"
bbce6d69 1732{ yyval.ival = 0; }
93a17b20 1733break;
71be2cbc 1734case 47:
b1524f17 1735#line 276 "perly.y"
93a17b20 1736{ yyval.ival = 0; }
1737break;
71be2cbc 1738case 48:
b1524f17 1739#line 278 "perly.y"
93a17b20 1740{ yyval.ival = 0; }
1741break;
71be2cbc 1742case 49:
b1524f17 1743#line 280 "perly.y"
ecca16b0 1744{ yyval.ival = 0; }
93a17b20 1745break;
71be2cbc 1746case 50:
b1524f17 1747#line 284 "perly.y"
ecca16b0 1748{ newFORM(yyvsp[-2].ival, yyvsp[-1].opval, yyvsp[0].opval); }
93a17b20 1749break;
71be2cbc 1750case 51:
b1524f17 1751#line 287 "perly.y"
ecca16b0 1752{ yyval.opval = yyvsp[0].opval; }
93a17b20 1753break;
71be2cbc 1754case 52:
b1524f17 1755#line 288 "perly.y"
ecca16b0 1756{ yyval.opval = Nullop; }
93a17b20 1757break;
71be2cbc 1758case 53:
b1524f17 1759#line 292 "perly.y"
ecca16b0 1760{ newSUB(yyvsp[-3].ival, yyvsp[-2].opval, yyvsp[-1].opval, yyvsp[0].opval); }
44a8e56a 1761break;
1762case 54:
b1524f17 1763#line 296 "perly.y"
ecca16b0 1764{ yyval.ival = start_subparse(FALSE, 0); }
4633a7c4 1765break;
44a8e56a 1766case 55:
b1524f17 1767#line 300 "perly.y"
ecca16b0 1768{ yyval.ival = start_subparse(FALSE, CVf_ANON); }
44a8e56a 1769break;
1770case 56:
b1524f17 1771#line 304 "perly.y"
ecca16b0 1772{ yyval.ival = start_subparse(TRUE, 0); }
1773break;
1774case 57:
b1524f17 1775#line 307 "perly.y"
1776{ STRLEN n_a; char *name = SvPV(((SVOP*)yyvsp[0].opval)->op_sv,n_a);
e858de61 1777 if (strEQ(name, "BEGIN") || strEQ(name, "END")
7d07dbc2 1778 || strEQ(name, "INIT"))
1aff0e91 1779 CvSPECIAL_on(PL_compcv);
28757baa 1780 yyval.opval = yyvsp[0].opval; }
93a17b20 1781break;
ecca16b0 1782case 58:
b1524f17 1783#line 315 "perly.y"
28757baa 1784{ yyval.opval = Nullop; }
85e6fe83 1785break;
ecca16b0 1786case 60:
b1524f17 1787#line 319 "perly.y"
28757baa 1788{ yyval.opval = yyvsp[0].opval; }
93a17b20 1789break;
ecca16b0 1790case 61:
b1524f17 1791#line 320 "perly.y"
3280af22 1792{ yyval.opval = Nullop; PL_expect = XSTATE; }
85e6fe83 1793break;
ecca16b0 1794case 62:
b1524f17 1795#line 324 "perly.y"
28757baa 1796{ package(yyvsp[-1].opval); }
85e6fe83 1797break;
ecca16b0 1798case 63:
b1524f17 1799#line 326 "perly.y"
28757baa 1800{ package(Nullop); }
1801break;
ecca16b0 1802case 64:
b1524f17 1803#line 330 "perly.y"
1aff0e91 1804{ CvSPECIAL_on(PL_compcv); /* It's a BEGIN {} */ }
93a17b20 1805break;
ecca16b0 1806case 65:
b1524f17 1807#line 332 "perly.y"
28757baa 1808{ utilize(yyvsp[-6].ival, yyvsp[-5].ival, yyvsp[-3].opval, yyvsp[-2].opval, yyvsp[-1].opval); }
93a17b20 1809break;
ecca16b0 1810case 66:
b1524f17 1811#line 336 "perly.y"
28757baa 1812{ yyval.opval = newLOGOP(OP_AND, 0, yyvsp[-2].opval, yyvsp[0].opval); }
1813break;
ecca16b0 1814case 67:
b1524f17 1815#line 338 "perly.y"
28757baa 1816{ yyval.opval = newLOGOP(yyvsp[-1].ival, 0, yyvsp[-2].opval, yyvsp[0].opval); }
1817break;
ecca16b0 1818case 69:
b1524f17 1819#line 343 "perly.y"
28757baa 1820{ yyval.opval = yyvsp[-1].opval; }
1821break;
ecca16b0 1822case 70:
b1524f17 1823#line 345 "perly.y"
a0d0e21e 1824{ yyval.opval = append_elem(OP_LIST, yyvsp[-2].opval, yyvsp[0].opval); }
93a17b20 1825break;
ecca16b0 1826case 72:
b1524f17 1827#line 350 "perly.y"
a0d0e21e 1828{ yyval.opval = convert(yyvsp[-2].ival, OPf_STACKED,
1829 prepend_elem(OP_LIST, newGVREF(yyvsp[-2].ival,yyvsp[-1].opval), yyvsp[0].opval) ); }
93a17b20 1830break;
ecca16b0 1831case 73:
b1524f17 1832#line 353 "perly.y"
a0d0e21e 1833{ yyval.opval = convert(yyvsp[-4].ival, OPf_STACKED,
1834 prepend_elem(OP_LIST, newGVREF(yyvsp[-4].ival,yyvsp[-2].opval), yyvsp[-1].opval) ); }
93a17b20 1835break;
ecca16b0 1836case 74:
b1524f17 1837#line 356 "perly.y"
4633a7c4 1838{ yyval.opval = convert(OP_ENTERSUB, OPf_STACKED,
a0d0e21e 1839 append_elem(OP_LIST,
55497cff 1840 prepend_elem(OP_LIST, scalar(yyvsp[-5].opval), yyvsp[-1].opval),
a0d0e21e 1841 newUNOP(OP_METHOD, 0, yyvsp[-3].opval))); }
93a17b20 1842break;
ecca16b0 1843case 75:
b1524f17 1844#line 361 "perly.y"
1845{ yyval.opval = convert(OP_ENTERSUB, OPf_STACKED,
1846 append_elem(OP_LIST, scalar(yyvsp[-2].opval),
1847 newUNOP(OP_METHOD, 0, yyvsp[0].opval))); }
1848break;
1849case 76:
1850#line 365 "perly.y"
4633a7c4 1851{ yyval.opval = convert(OP_ENTERSUB, OPf_STACKED,
a0d0e21e 1852 append_elem(OP_LIST,
4633a7c4 1853 prepend_elem(OP_LIST, yyvsp[-1].opval, yyvsp[0].opval),
a0d0e21e 1854 newUNOP(OP_METHOD, 0, yyvsp[-2].opval))); }
93a17b20 1855break;
b1524f17 1856case 77:
1857#line 370 "perly.y"
4633a7c4 1858{ yyval.opval = convert(OP_ENTERSUB, OPf_STACKED,
a0d0e21e 1859 append_elem(OP_LIST,
4633a7c4 1860 prepend_elem(OP_LIST, yyvsp[-3].opval, yyvsp[-1].opval),
a0d0e21e 1861 newUNOP(OP_METHOD, 0, yyvsp[-4].opval))); }
93a17b20 1862break;
b1524f17 1863case 78:
1864#line 375 "perly.y"
c07a80fd 1865{ yyval.opval = convert(yyvsp[-1].ival, 0, yyvsp[0].opval); }
1866break;
b1524f17 1867case 79:
1868#line 377 "perly.y"
c07a80fd 1869{ yyval.opval = convert(yyvsp[-3].ival, 0, yyvsp[-1].opval); }
93a17b20 1870break;
b1524f17 1871case 80:
1872#line 379 "perly.y"
28757baa 1873{ yyvsp[0].opval = newANONSUB(yyvsp[-1].ival, 0, yyvsp[0].opval); }
1874break;
b1524f17 1875case 81:
1876#line 381 "perly.y"
4633a7c4 1877{ yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
28757baa 1878 append_elem(OP_LIST,
1879 prepend_elem(OP_LIST, yyvsp[-2].opval, yyvsp[0].opval), yyvsp[-4].opval)); }
4633a7c4 1880break;
b1524f17 1881case 84:
1882#line 391 "perly.y"
c07a80fd 1883{ yyval.opval = newASSIGNOP(OPf_STACKED, yyvsp[-2].opval, yyvsp[-1].ival, yyvsp[0].opval); }
1884break;
b1524f17 1885case 85:
1886#line 393 "perly.y"
c07a80fd 1887{ yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
93a17b20 1888break;
b1524f17 1889case 86:
1890#line 395 "perly.y"
a0d0e21e 1891{ if (yyvsp[-1].ival != OP_REPEAT)
1892 scalar(yyvsp[-2].opval);
1893 yyval.opval = newBINOP(yyvsp[-1].ival, 0, yyvsp[-2].opval, scalar(yyvsp[0].opval)); }
93a17b20 1894break;
28757baa 1895case 87:
b1524f17 1896#line 399 "perly.y"
a0d0e21e 1897{ yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
93a17b20 1898break;
28757baa 1899case 88:
b1524f17 1900#line 401 "perly.y"
93a17b20 1901{ yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1902break;
28757baa 1903case 89:
b1524f17 1904#line 403 "perly.y"
44a8e56a 1905{ yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
93a17b20 1906break;
28757baa 1907case 90:
b1524f17 1908#line 405 "perly.y"
44a8e56a 1909{ yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
93a17b20 1910break;
28757baa 1911case 91:
b1524f17 1912#line 407 "perly.y"
ecca16b0 1913{ yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
93a17b20 1914break;
28757baa 1915case 92:
b1524f17 1916#line 409 "perly.y"
1917{ yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
93a17b20 1918break;
28757baa 1919case 93:
b1524f17 1920#line 411 "perly.y"
1921{ yyval.opval = newRANGE(yyvsp[-1].ival, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval));}
93a17b20 1922break;
28757baa 1923case 94:
b1524f17 1924#line 413 "perly.y"
1925{ yyval.opval = newLOGOP(OP_AND, 0, yyvsp[-2].opval, yyvsp[0].opval); }
93a17b20 1926break;
28757baa 1927case 95:
b1524f17 1928#line 415 "perly.y"
1929{ yyval.opval = newLOGOP(OP_OR, 0, yyvsp[-2].opval, yyvsp[0].opval); }
93a17b20 1930break;
28757baa 1931case 96:
b1524f17 1932#line 417 "perly.y"
1933{ yyval.opval = newCONDOP(0, yyvsp[-4].opval, yyvsp[-2].opval, yyvsp[0].opval); }
93a17b20 1934break;
28757baa 1935case 97:
b1524f17 1936#line 419 "perly.y"
1937{ yyval.opval = bind_match(yyvsp[-1].ival, yyvsp[-2].opval, yyvsp[0].opval); }
93a17b20 1938break;
28757baa 1939case 98:
b1524f17 1940#line 422 "perly.y"
1941{ yyval.opval = newUNOP(OP_NEGATE, 0, scalar(yyvsp[0].opval)); }
93a17b20 1942break;
28757baa 1943case 99:
b1524f17 1944#line 424 "perly.y"
1945{ yyval.opval = yyvsp[0].opval; }
44a8e56a 1946break;
1947case 100:
b1524f17 1948#line 426 "perly.y"
1949{ yyval.opval = newUNOP(OP_NOT, 0, scalar(yyvsp[0].opval)); }
44a8e56a 1950break;
1951case 101:
b1524f17 1952#line 428 "perly.y"
1953{ yyval.opval = newUNOP(OP_COMPLEMENT, 0, scalar(yyvsp[0].opval));}
93a17b20 1954break;
44a8e56a 1955case 102:
b1524f17 1956#line 430 "perly.y"
1957{ yyval.opval = newUNOP(OP_REFGEN, 0, mod(yyvsp[0].opval,OP_REFGEN)); }
1958break;
1959case 103:
1960#line 432 "perly.y"
ecca16b0 1961{ yyval.opval = newUNOP(OP_POSTINC, 0,
1962 mod(scalar(yyvsp[-1].opval), OP_POSTINC)); }
93a17b20 1963break;
b1524f17 1964case 104:
1965#line 435 "perly.y"
ecca16b0 1966{ yyval.opval = newUNOP(OP_POSTDEC, 0,
1967 mod(scalar(yyvsp[-1].opval), OP_POSTDEC)); }
93a17b20 1968break;
b1524f17 1969case 105:
1970#line 438 "perly.y"
ecca16b0 1971{ yyval.opval = newUNOP(OP_PREINC, 0,
1972 mod(scalar(yyvsp[0].opval), OP_PREINC)); }
93a17b20 1973break;
b1524f17 1974case 106:
1975#line 441 "perly.y"
ecca16b0 1976{ yyval.opval = newUNOP(OP_PREDEC, 0,
1977 mod(scalar(yyvsp[0].opval), OP_PREDEC)); }
c07a80fd 1978break;
b1524f17 1979case 107:
1980#line 444 "perly.y"
ecca16b0 1981{ yyval.opval = localize(yyvsp[0].opval,yyvsp[-1].ival); }
93a17b20 1982break;
b1524f17 1983case 108:
1984#line 446 "perly.y"
ecca16b0 1985{ yyval.opval = sawparens(yyvsp[-1].opval); }
93a17b20 1986break;
b1524f17 1987case 109:
1988#line 448 "perly.y"
ecca16b0 1989{ yyval.opval = sawparens(newNULLLIST()); }
93a17b20 1990break;
b1524f17 1991case 110:
1992#line 450 "perly.y"
ecca16b0 1993{ yyval.opval = newANONLIST(yyvsp[-1].opval); }
93a17b20 1994break;
b1524f17 1995case 111:
1996#line 452 "perly.y"
ecca16b0 1997{ yyval.opval = newANONLIST(Nullop); }
93a17b20 1998break;
b1524f17 1999case 112:
2000#line 454 "perly.y"
ecca16b0 2001{ yyval.opval = newANONHASH(yyvsp[-2].opval); }
93a17b20 2002break;
b1524f17 2003case 113:
2004#line 456 "perly.y"
ecca16b0 2005{ yyval.opval = newANONHASH(Nullop); }
93a17b20 2006break;
b1524f17 2007case 114:
2008#line 458 "perly.y"
ecca16b0 2009{ yyval.opval = newANONSUB(yyvsp[-2].ival, yyvsp[-1].opval, yyvsp[0].opval); }
a0d0e21e 2010break;
b1524f17 2011case 115:
2012#line 460 "perly.y"
ecca16b0 2013{ yyval.opval = yyvsp[0].opval; }
93a17b20 2014break;
b1524f17 2015case 116:
2016#line 462 "perly.y"
640b9ef6 2017{ yyval.opval = newBINOP(OP_GELEM, 0, yyvsp[-4].opval, scalar(yyvsp[-2].opval)); }
463ee0b2 2018break;
b1524f17 2019case 117:
2020#line 464 "perly.y"
ecca16b0 2021{ yyval.opval = yyvsp[0].opval; }
463ee0b2 2022break;
b1524f17 2023case 118:
2024#line 466 "perly.y"
ecca16b0 2025{ yyval.opval = newBINOP(OP_AELEM, 0, oopsAV(yyvsp[-3].opval), scalar(yyvsp[-1].opval)); }
2026break;
b1524f17 2027case 119:
2028#line 468 "perly.y"
93a17b20 2029{ yyval.opval = newBINOP(OP_AELEM, 0,
8990e307 2030 ref(newAVREF(yyvsp[-4].opval),OP_RV2AV),
93a17b20 2031 scalar(yyvsp[-1].opval));}
2032break;
b1524f17 2033case 120:
2034#line 472 "perly.y"
a0d0e21e 2035{ assertref(yyvsp[-3].opval); yyval.opval = newBINOP(OP_AELEM, 0,
8990e307 2036 ref(newAVREF(yyvsp[-3].opval),OP_RV2AV),
463ee0b2 2037 scalar(yyvsp[-1].opval));}
2038break;
44a8e56a 2039case 121:
b1524f17 2040#line 476 "perly.y"
ecca16b0 2041{ yyval.opval = yyvsp[0].opval; }
93a17b20 2042break;
44a8e56a 2043case 122:
b1524f17 2044#line 478 "perly.y"
2045{ yyval.opval = yyvsp[0].opval; }
93a17b20 2046break;
44a8e56a 2047case 123:
b1524f17 2048#line 480 "perly.y"
2049{ yyval.opval = newUNOP(OP_AV2ARYLEN, 0, ref(yyvsp[0].opval, OP_AV2ARYLEN));}
2050break;
2051case 124:
2052#line 482 "perly.y"
ecca16b0 2053{ yyval.opval = newBINOP(OP_HELEM, 0, oopsHV(yyvsp[-4].opval), jmaybe(yyvsp[-2].opval));
3280af22 2054 PL_expect = XOPERATOR; }
ecca16b0 2055break;
b1524f17 2056case 125:
2057#line 485 "perly.y"
93a17b20 2058{ yyval.opval = newBINOP(OP_HELEM, 0,
8990e307 2059 ref(newHVREF(yyvsp[-5].opval),OP_RV2HV),
93a17b20 2060 jmaybe(yyvsp[-2].opval));
3280af22 2061 PL_expect = XOPERATOR; }
93a17b20 2062break;
b1524f17 2063case 126:
2064#line 490 "perly.y"
a0d0e21e 2065{ assertref(yyvsp[-4].opval); yyval.opval = newBINOP(OP_HELEM, 0,
8990e307 2066 ref(newHVREF(yyvsp[-4].opval),OP_RV2HV),
463ee0b2 2067 jmaybe(yyvsp[-2].opval));
3280af22 2068 PL_expect = XOPERATOR; }
463ee0b2 2069break;
b1524f17 2070case 127:
2071#line 495 "perly.y"
93a17b20 2072{ yyval.opval = newSLICEOP(0, yyvsp[-1].opval, yyvsp[-4].opval); }
2073break;
b1524f17 2074case 128:
2075#line 497 "perly.y"
93a17b20 2076{ yyval.opval = newSLICEOP(0, yyvsp[-1].opval, Nullop); }
2077break;
b1524f17 2078case 129:
2079#line 499 "perly.y"
79072805 2080{ yyval.opval = prepend_elem(OP_ASLICE,
2081 newOP(OP_PUSHMARK, 0),
79072805 2082 newLISTOP(OP_ASLICE, 0,
93a17b20 2083 list(yyvsp[-1].opval),
a0d0e21e 2084 ref(yyvsp[-3].opval, OP_ASLICE))); }
93a17b20 2085break;
b1524f17 2086case 130:
2087#line 505 "perly.y"
79072805 2088{ yyval.opval = prepend_elem(OP_HSLICE,
2089 newOP(OP_PUSHMARK, 0),
79072805 2090 newLISTOP(OP_HSLICE, 0,
93a17b20 2091 list(yyvsp[-2].opval),
a0d0e21e 2092 ref(oopsHV(yyvsp[-4].opval), OP_HSLICE)));
3280af22 2093 PL_expect = XOPERATOR; }
93a17b20 2094break;
b1524f17 2095case 131:
2096#line 512 "perly.y"
ecca16b0 2097{ yyval.opval = yyvsp[0].opval; }
a0d0e21e 2098break;
b1524f17 2099case 132:
2100#line 514 "perly.y"
ecca16b0 2101{ yyval.opval = newUNOP(OP_ENTERSUB, 0, scalar(yyvsp[0].opval)); }
a0d0e21e 2102break;
b1524f17 2103case 133:
2104#line 516 "perly.y"
ecca16b0 2105{ yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED, scalar(yyvsp[-2].opval)); }
a0d0e21e 2106break;
b1524f17 2107case 134:
2108#line 518 "perly.y"
a0d0e21e 2109{ yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
ecca16b0 2110 append_elem(OP_LIST, yyvsp[-1].opval, scalar(yyvsp[-3].opval))); }
93a17b20 2111break;
b1524f17 2112case 135:
2113#line 521 "perly.y"
ecca16b0 2114{ yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2115 append_elem(OP_LIST, yyvsp[0].opval, scalar(yyvsp[-1].opval))); }
93a17b20 2116break;
b1524f17 2117case 136:
2118#line 524 "perly.y"
78ca652e 2119{ yyval.opval = dofile(yyvsp[0].opval); }
93a17b20 2120break;
b1524f17 2121case 137:
2122#line 526 "perly.y"
ecca16b0 2123{ yyval.opval = newUNOP(OP_NULL, OPf_SPECIAL, scope(yyvsp[0].opval)); }
2124break;
b1524f17 2125case 138:
2126#line 528 "perly.y"
c07a80fd 2127{ yyval.opval = newUNOP(OP_ENTERSUB,
2128 OPf_SPECIAL|OPf_STACKED,
4633a7c4 2129 prepend_elem(OP_LIST,
c07a80fd 2130 scalar(newCVREF(
2131 (OPpENTERSUB_AMPER<<8),
2132 scalar(yyvsp[-2].opval)
2133 )),Nullop)); dep();}
93a17b20 2134break;
b1524f17 2135case 139:
2136#line 536 "perly.y"
c07a80fd 2137{ yyval.opval = newUNOP(OP_ENTERSUB,
2138 OPf_SPECIAL|OPf_STACKED,
4633a7c4 2139 append_elem(OP_LIST,
a0d0e21e 2140 yyvsp[-1].opval,
c07a80fd 2141 scalar(newCVREF(
2142 (OPpENTERSUB_AMPER<<8),
2143 scalar(yyvsp[-3].opval)
2144 )))); dep();}
93a17b20 2145break;
b1524f17 2146case 140:
2147#line 545 "perly.y"
a0d0e21e 2148{ yyval.opval = newUNOP(OP_ENTERSUB, OPf_SPECIAL|OPf_STACKED,
4633a7c4 2149 prepend_elem(OP_LIST,
c07a80fd 2150 scalar(newCVREF(0,scalar(yyvsp[-2].opval))), Nullop)); dep();}
93a17b20 2151break;
b1524f17 2152case 141:
2153#line 549 "perly.y"
a0d0e21e 2154{ yyval.opval = newUNOP(OP_ENTERSUB, OPf_SPECIAL|OPf_STACKED,
4633a7c4 2155 prepend_elem(OP_LIST,
a0d0e21e 2156 yyvsp[-1].opval,
c07a80fd 2157 scalar(newCVREF(0,scalar(yyvsp[-3].opval))))); dep();}
93a17b20 2158break;
b1524f17 2159case 142:
2160#line 554 "perly.y"
6da72b64 2161{ yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2162 newCVREF(0, scalar(yyvsp[-3].opval))); }
93a17b20 2163break;
b1524f17 2164case 143:
2165#line 557 "perly.y"
6da72b64 2166{ yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2167 append_elem(OP_LIST, yyvsp[-1].opval,
2168 newCVREF(0, scalar(yyvsp[-4].opval)))); }
463ee0b2 2169break;
b1524f17 2170case 144:
2171#line 561 "perly.y"
ecca16b0 2172{ yyval.opval = newOP(yyvsp[0].ival, OPf_SPECIAL);
3280af22 2173 PL_hints |= HINT_BLOCK_SCOPE; }
93a17b20 2174break;
44a8e56a 2175case 145:
b1524f17 2176#line 564 "perly.y"
2177{ yyval.opval = newLOOPEX(yyvsp[-1].ival,yyvsp[0].opval); }
c07a80fd 2178break;
44a8e56a 2179case 146:
b1524f17 2180#line 566 "perly.y"
2181{ yyval.opval = newUNOP(OP_NOT, 0, scalar(yyvsp[0].opval)); }
6da72b64 2182break;
2183case 147:
b1524f17 2184#line 568 "perly.y"
2185{ yyval.opval = newOP(yyvsp[0].ival, 0); }
6da72b64 2186break;
2187case 148:
b1524f17 2188#line 570 "perly.y"
ecca16b0 2189{ yyval.opval = newUNOP(yyvsp[-1].ival, 0, yyvsp[0].opval); }
4633a7c4 2190break;
6da72b64 2191case 149:
b1524f17 2192#line 572 "perly.y"
2193{ yyval.opval = newUNOP(yyvsp[-1].ival, 0, yyvsp[0].opval); }
2194break;
2195case 150:
2196#line 574 "perly.y"
ecca16b0 2197{ yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2198 append_elem(OP_LIST, yyvsp[0].opval, scalar(yyvsp[-1].opval))); }
93a17b20 2199break;
b1524f17 2200case 151:
2201#line 577 "perly.y"
ecca16b0 2202{ yyval.opval = newOP(yyvsp[0].ival, 0); }
93a17b20 2203break;
b1524f17 2204case 152:
2205#line 579 "perly.y"
ecca16b0 2206{ yyval.opval = newOP(yyvsp[-2].ival, 0); }
4633a7c4 2207break;
b1524f17 2208case 153:
2209#line 581 "perly.y"
ecca16b0 2210{ yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2211 scalar(yyvsp[0].opval)); }
93a17b20 2212break;
b1524f17 2213case 154:
2214#line 584 "perly.y"
ecca16b0 2215{ yyval.opval = newOP(yyvsp[-2].ival, OPf_SPECIAL); }
93a17b20 2216break;
b1524f17 2217case 155:
2218#line 586 "perly.y"
ecca16b0 2219{ yyval.opval = newUNOP(yyvsp[-3].ival, 0, yyvsp[-1].opval); }
93a17b20 2220break;
b1524f17 2221case 156:
2222#line 588 "perly.y"
ecca16b0 2223{ yyval.opval = pmruntime(yyvsp[-3].opval, yyvsp[-1].opval, Nullop); }
93a17b20 2224break;
b1524f17 2225case 157:
2226#line 590 "perly.y"
ecca16b0 2227{ yyval.opval = pmruntime(yyvsp[-5].opval, yyvsp[-3].opval, yyvsp[-1].opval); }
93a17b20 2228break;
b1524f17 2229case 160:
2230#line 596 "perly.y"
ecca16b0 2231{ yyval.opval = Nullop; }
55497cff 2232break;
b1524f17 2233case 161:
2234#line 598 "perly.y"
ecca16b0 2235{ yyval.opval = yyvsp[0].opval; }
55497cff 2236break;
b1524f17 2237case 162:
2238#line 602 "perly.y"
ecca16b0 2239{ yyval.opval = Nullop; }
55497cff 2240break;
b1524f17 2241case 163:
2242#line 604 "perly.y"
ecca16b0 2243{ yyval.opval = yyvsp[0].opval; }
93a17b20 2244break;
b1524f17 2245case 164:
2246#line 606 "perly.y"
ecca16b0 2247{ yyval.opval = yyvsp[-1].opval; }
93a17b20 2248break;
b1524f17 2249case 165:
2250#line 609 "perly.y"
ecca16b0 2251{ yyval.ival = 0; }
93a17b20 2252break;
b1524f17 2253case 166:
2254#line 610 "perly.y"
ecca16b0 2255{ yyval.ival = 1; }
93a17b20 2256break;
b1524f17 2257case 167:
2258#line 614 "perly.y"
3280af22 2259{ PL_in_my = 0; yyval.opval = my(yyvsp[0].opval); }
93a17b20 2260break;
b1524f17 2261case 168:
2262#line 618 "perly.y"
ecca16b0 2263{ yyval.opval = newCVREF(yyvsp[-1].ival,yyvsp[0].opval); }
93a17b20 2264break;
b1524f17 2265case 169:
2266#line 622 "perly.y"
ecca16b0 2267{ yyval.opval = newSVREF(yyvsp[0].opval); }
93a17b20 2268break;
b1524f17 2269case 170:
2270#line 626 "perly.y"
ecca16b0 2271{ yyval.opval = newAVREF(yyvsp[0].opval); }
93a17b20 2272break;
b1524f17 2273case 171:
2274#line 630 "perly.y"
ecca16b0 2275{ yyval.opval = newHVREF(yyvsp[0].opval); }
c07a80fd 2276break;
b1524f17 2277case 172:
2278#line 634 "perly.y"
ecca16b0 2279{ yyval.opval = newAVREF(yyvsp[0].opval); }
44a8e56a 2280break;
b1524f17 2281case 173:
2282#line 638 "perly.y"
ecca16b0 2283{ yyval.opval = newGVREF(0,yyvsp[0].opval); }
44a8e56a 2284break;
b1524f17 2285case 174:
2286#line 642 "perly.y"
ecca16b0 2287{ yyval.opval = scalar(yyvsp[0].opval); }
6da72b64 2288break;
b1524f17 2289case 175:
2290#line 644 "perly.y"
ecca16b0 2291{ yyval.opval = scalar(yyvsp[0].opval); }
6da72b64 2292break;
b1524f17 2293case 176:
2294#line 646 "perly.y"
ecca16b0 2295{ yyval.opval = scope(yyvsp[0].opval); }
2296break;
b1524f17 2297case 177:
2298#line 649 "perly.y"
85e6fe83 2299{ yyval.opval = yyvsp[0].opval; }
93a17b20 2300break;
b1524f17 2301#line 2329 "perly.c"
93a17b20 2302 }
2303 yyssp -= yym;
2304 yystate = *yyssp;
2305 yyvsp -= yym;
2306 yym = yylhs[yyn];
2307 if (yystate == 0 && yym == 0)
2308 {
2309#if YYDEBUG
2310 if (yydebug)
ac4c12e7 2311 PerlIO_printf(Perl_debug_log,
ed6116ce 2312 "yydebug: after reduction, shifting from state 0 to state %d\n",
2313 YYFINAL);
93a17b20 2314#endif
2315 yystate = YYFINAL;
2316 *++yyssp = YYFINAL;
2317 *++yyvsp = yyval;
2318 if (yychar < 0)
2319 {
2320 if ((yychar = yylex()) < 0) yychar = 0;
2321#if YYDEBUG
2322 if (yydebug)
2323 {
2324 yys = 0;
2325 if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
2326 if (!yys) yys = "illegal-symbol";
ac4c12e7 2327 PerlIO_printf(Perl_debug_log, "yydebug: state %d, reading %d (%s)\n",
93a17b20 2328 YYFINAL, yychar, yys);
2329 }
2330#endif
2331 }
2332 if (yychar == 0) goto yyaccept;
2333 goto yyloop;
2334 }
2335 if ((yyn = yygindex[yym]) && (yyn += yystate) >= 0 &&
2336 yyn <= YYTABLESIZE && yycheck[yyn] == yystate)
2337 yystate = yytable[yyn];
2338 else
2339 yystate = yydgoto[yym];
2340#if YYDEBUG
2341 if (yydebug)
ac4c12e7 2342 PerlIO_printf(Perl_debug_log,
ed6116ce 2343 "yydebug: after reduction, shifting from state %d to state %d\n",
2344 *yyssp, yystate);
93a17b20 2345#endif
2346 if (yyssp >= yyss + yystacksize - 1)
2347 {
2348 /*
2349 ** reallocate and recover. Note that pointers
2350 ** have to be reset, or bad things will happen
2351 */
2352 int yyps_index = (yyssp - yyss);
2353 int yypv_index = (yyvsp - yyvs);
2354 yystacksize += YYSTACKSIZE;
a0d0e21e 2355 ysave->yyvs = yyvs =
d3b6f988 2356 (YYSTYPE*)PerlMem_realloc((char*)yyvs,yystacksize * sizeof(YYSTYPE));
a0d0e21e 2357 ysave->yyss = yyss =
d3b6f988 2358 (short*)PerlMem_realloc((char*)yyss,yystacksize * sizeof(short));
93a17b20 2359 if (!yyvs || !yyss)
2360 goto yyoverflow;
2361 yyssp = yyss + yyps_index;
2362 yyvsp = yyvs + yypv_index;
2363 }
2364 *++yyssp = yystate;
2365 *++yyvsp = yyval;
2366 goto yyloop;
2367yyoverflow:
2368 yyerror("Out of memory for yacc stack");
2369yyabort:
2370 retval = 1;
2371yyaccept:
93a17b20 2372 return retval;
79072805 2373}
51371543 2374
2375
2376#ifdef PERL_OBJECT
2377#define NO_XSLOCKS
2378#include "XSUB.h"
2379#endif
2380
2381static void
2382yydestruct(pTHXo_ void *ptr)
2383{
2384 struct ysv* ysave = (struct ysv*)ptr;
2385 if (ysave->yyss) Safefree(ysave->yyss);
2386 if (ysave->yyvs) Safefree(ysave->yyvs);
2387 yydebug = ysave->oldyydebug;
2388 yynerrs = ysave->oldyynerrs;
2389 yyerrflag = ysave->oldyyerrflag;
2390 yychar = ysave->oldyychar;
2391 yyval = ysave->oldyyval;
2392 yylval = ysave->oldyylval;
2393 Safefree(ysave);
2394}