Even more Todo.
[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;
2c15bef3 1626 yyval.opval = newCONDOP(0, yyvsp[-3].opval, scope(yyvsp[-1].opval), yyvsp[0].opval);
3280af22 1627 PL_hints |= HINT_BLOCK_SCOPE; }
93a17b20 1628break;
ecca16b0 1629case 24:
b1524f17 1630#line 186 "perly.y"
3280af22 1631{ PL_copline = yyvsp[-6].ival;
36477c24 1632 yyval.opval = block_end(yyvsp[-4].ival,
bbce6d69 1633 newCONDOP(0, yyvsp[-3].opval, scope(yyvsp[-1].opval), yyvsp[0].opval)); }
93a17b20 1634break;
ecca16b0 1635case 25:
b1524f17 1636#line 190 "perly.y"
3280af22 1637{ PL_copline = yyvsp[-6].ival;
36477c24 1638 yyval.opval = block_end(yyvsp[-4].ival,
bbce6d69 1639 newCONDOP(0, yyvsp[-3].opval, scope(yyvsp[-1].opval), yyvsp[0].opval)); }
93a17b20 1640break;
ecca16b0 1641case 26:
b1524f17 1642#line 196 "perly.y"
71be2cbc 1643{ yyval.opval = Nullop; }
93a17b20 1644break;
ecca16b0 1645case 27:
b1524f17 1646#line 198 "perly.y"
93a17b20 1647{ yyval.opval = scope(yyvsp[0].opval); }
1648break;
ecca16b0 1649case 28:
b1524f17 1650#line 202 "perly.y"
3280af22 1651{ PL_copline = yyvsp[-6].ival;
36477c24 1652 yyval.opval = block_end(yyvsp[-4].ival,
55497cff 1653 newSTATEOP(0, yyvsp[-7].pval,
bbce6d69 1654 newWHILEOP(0, 1, (LOOP*)Nullop,
fb73857a 1655 yyvsp[-6].ival, yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval))); }
93a17b20 1656break;
ecca16b0 1657case 29:
b1524f17 1658#line 208 "perly.y"
3280af22 1659{ PL_copline = yyvsp[-6].ival;
36477c24 1660 yyval.opval = block_end(yyvsp[-4].ival,
55497cff 1661 newSTATEOP(0, yyvsp[-7].pval,
bbce6d69 1662 newWHILEOP(0, 1, (LOOP*)Nullop,
fb73857a 1663 yyvsp[-6].ival, yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval))); }
bbce6d69 1664break;
ecca16b0 1665case 30:
b1524f17 1666#line 214 "perly.y"
36477c24 1667{ yyval.opval = block_end(yyvsp[-6].ival,
bbce6d69 1668 newFOROP(0, yyvsp[-9].pval, yyvsp[-8].ival, yyvsp[-5].opval, yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval)); }
93a17b20 1669break;
ecca16b0 1670case 31:
b1524f17 1671#line 217 "perly.y"
36477c24 1672{ yyval.opval = block_end(yyvsp[-4].ival,
bbce6d69 1673 newFOROP(0, yyvsp[-8].pval, yyvsp[-7].ival, mod(yyvsp[-6].opval, OP_ENTERLOOP),
1674 yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval)); }
55497cff 1675break;
ecca16b0 1676case 32:
b1524f17 1677#line 221 "perly.y"
36477c24 1678{ yyval.opval = block_end(yyvsp[-4].ival,
55497cff 1679 newFOROP(0, yyvsp[-7].pval, yyvsp[-6].ival, Nullop, yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval)); }
93a17b20 1680break;
ecca16b0 1681case 33:
b1524f17 1682#line 225 "perly.y"
fb73857a 1683{ OP *forop = append_elem(OP_LINESEQ,
1684 scalar(yyvsp[-6].opval),
1685 newWHILEOP(0, 1, (LOOP*)Nullop,
1686 yyvsp[-9].ival, scalar(yyvsp[-4].opval),
1687 yyvsp[0].opval, scalar(yyvsp[-2].opval)));
3280af22 1688 PL_copline = yyvsp[-9].ival;
fb73857a 1689 yyval.opval = block_end(yyvsp[-7].ival, newSTATEOP(0, yyvsp[-10].pval, forop)); }
55497cff 1690break;
ecca16b0 1691case 34:
b1524f17 1692#line 233 "perly.y"
fb73857a 1693{ yyval.opval = newSTATEOP(0, yyvsp[-2].pval,
1694 newWHILEOP(0, 1, (LOOP*)Nullop,
1695 NOLINE, Nullop, yyvsp[-1].opval, yyvsp[0].opval)); }
93a17b20 1696break;
ecca16b0 1697case 35:
b1524f17 1698#line 239 "perly.y"
93a17b20 1699{ yyval.opval = Nullop; }
1700break;
ecca16b0 1701case 37:
b1524f17 1702#line 244 "perly.y"
93a17b20 1703{ (void)scan_num("1"); yyval.opval = yylval.opval; }
1704break;
71be2cbc 1705case 39:
b1524f17 1706#line 249 "perly.y"
ecca16b0 1707{ yyval.opval = invert(scalar(yyvsp[0].opval)); }
bbce6d69 1708break;
71be2cbc 1709case 40:
b1524f17 1710#line 253 "perly.y"
bbce6d69 1711{ yyval.opval = yyvsp[0].opval; intro_my(); }
1712break;
71be2cbc 1713case 41:
b1524f17 1714#line 257 "perly.y"
bbce6d69 1715{ yyval.opval = yyvsp[0].opval; intro_my(); }
1716break;
71be2cbc 1717case 42:
b1524f17 1718#line 261 "perly.y"
bbce6d69 1719{ yyval.opval = yyvsp[0].opval; intro_my(); }
55497cff 1720break;
71be2cbc 1721case 43:
b1524f17 1722#line 265 "perly.y"
ecca16b0 1723{ yyval.opval = yyvsp[0].opval; intro_my(); }
55497cff 1724break;
ecca16b0 1725case 44:
b1524f17 1726#line 269 "perly.y"
ecca16b0 1727{ yyval.pval = Nullch; }
bbce6d69 1728break;
71be2cbc 1729case 46:
b1524f17 1730#line 274 "perly.y"
bbce6d69 1731{ yyval.ival = 0; }
93a17b20 1732break;
71be2cbc 1733case 47:
b1524f17 1734#line 276 "perly.y"
93a17b20 1735{ yyval.ival = 0; }
1736break;
71be2cbc 1737case 48:
b1524f17 1738#line 278 "perly.y"
93a17b20 1739{ yyval.ival = 0; }
1740break;
71be2cbc 1741case 49:
b1524f17 1742#line 280 "perly.y"
ecca16b0 1743{ yyval.ival = 0; }
93a17b20 1744break;
71be2cbc 1745case 50:
b1524f17 1746#line 284 "perly.y"
ecca16b0 1747{ newFORM(yyvsp[-2].ival, yyvsp[-1].opval, yyvsp[0].opval); }
93a17b20 1748break;
71be2cbc 1749case 51:
b1524f17 1750#line 287 "perly.y"
ecca16b0 1751{ yyval.opval = yyvsp[0].opval; }
93a17b20 1752break;
71be2cbc 1753case 52:
b1524f17 1754#line 288 "perly.y"
ecca16b0 1755{ yyval.opval = Nullop; }
93a17b20 1756break;
71be2cbc 1757case 53:
b1524f17 1758#line 292 "perly.y"
ecca16b0 1759{ newSUB(yyvsp[-3].ival, yyvsp[-2].opval, yyvsp[-1].opval, yyvsp[0].opval); }
44a8e56a 1760break;
1761case 54:
b1524f17 1762#line 296 "perly.y"
ecca16b0 1763{ yyval.ival = start_subparse(FALSE, 0); }
4633a7c4 1764break;
44a8e56a 1765case 55:
b1524f17 1766#line 300 "perly.y"
ecca16b0 1767{ yyval.ival = start_subparse(FALSE, CVf_ANON); }
44a8e56a 1768break;
1769case 56:
b1524f17 1770#line 304 "perly.y"
ecca16b0 1771{ yyval.ival = start_subparse(TRUE, 0); }
1772break;
1773case 57:
b1524f17 1774#line 307 "perly.y"
1775{ STRLEN n_a; char *name = SvPV(((SVOP*)yyvsp[0].opval)->op_sv,n_a);
e858de61 1776 if (strEQ(name, "BEGIN") || strEQ(name, "END")
7d07dbc2 1777 || strEQ(name, "INIT"))
1aff0e91 1778 CvSPECIAL_on(PL_compcv);
28757baa 1779 yyval.opval = yyvsp[0].opval; }
93a17b20 1780break;
ecca16b0 1781case 58:
b1524f17 1782#line 315 "perly.y"
28757baa 1783{ yyval.opval = Nullop; }
85e6fe83 1784break;
ecca16b0 1785case 60:
b1524f17 1786#line 319 "perly.y"
28757baa 1787{ yyval.opval = yyvsp[0].opval; }
93a17b20 1788break;
ecca16b0 1789case 61:
b1524f17 1790#line 320 "perly.y"
3280af22 1791{ yyval.opval = Nullop; PL_expect = XSTATE; }
85e6fe83 1792break;
ecca16b0 1793case 62:
b1524f17 1794#line 324 "perly.y"
28757baa 1795{ package(yyvsp[-1].opval); }
85e6fe83 1796break;
ecca16b0 1797case 63:
b1524f17 1798#line 326 "perly.y"
28757baa 1799{ package(Nullop); }
1800break;
ecca16b0 1801case 64:
b1524f17 1802#line 330 "perly.y"
1aff0e91 1803{ CvSPECIAL_on(PL_compcv); /* It's a BEGIN {} */ }
93a17b20 1804break;
ecca16b0 1805case 65:
b1524f17 1806#line 332 "perly.y"
28757baa 1807{ utilize(yyvsp[-6].ival, yyvsp[-5].ival, yyvsp[-3].opval, yyvsp[-2].opval, yyvsp[-1].opval); }
93a17b20 1808break;
ecca16b0 1809case 66:
b1524f17 1810#line 336 "perly.y"
28757baa 1811{ yyval.opval = newLOGOP(OP_AND, 0, yyvsp[-2].opval, yyvsp[0].opval); }
1812break;
ecca16b0 1813case 67:
b1524f17 1814#line 338 "perly.y"
28757baa 1815{ yyval.opval = newLOGOP(yyvsp[-1].ival, 0, yyvsp[-2].opval, yyvsp[0].opval); }
1816break;
ecca16b0 1817case 69:
b1524f17 1818#line 343 "perly.y"
28757baa 1819{ yyval.opval = yyvsp[-1].opval; }
1820break;
ecca16b0 1821case 70:
b1524f17 1822#line 345 "perly.y"
a0d0e21e 1823{ yyval.opval = append_elem(OP_LIST, yyvsp[-2].opval, yyvsp[0].opval); }
93a17b20 1824break;
ecca16b0 1825case 72:
b1524f17 1826#line 350 "perly.y"
a0d0e21e 1827{ yyval.opval = convert(yyvsp[-2].ival, OPf_STACKED,
1828 prepend_elem(OP_LIST, newGVREF(yyvsp[-2].ival,yyvsp[-1].opval), yyvsp[0].opval) ); }
93a17b20 1829break;
ecca16b0 1830case 73:
b1524f17 1831#line 353 "perly.y"
a0d0e21e 1832{ yyval.opval = convert(yyvsp[-4].ival, OPf_STACKED,
1833 prepend_elem(OP_LIST, newGVREF(yyvsp[-4].ival,yyvsp[-2].opval), yyvsp[-1].opval) ); }
93a17b20 1834break;
ecca16b0 1835case 74:
b1524f17 1836#line 356 "perly.y"
4633a7c4 1837{ yyval.opval = convert(OP_ENTERSUB, OPf_STACKED,
a0d0e21e 1838 append_elem(OP_LIST,
55497cff 1839 prepend_elem(OP_LIST, scalar(yyvsp[-5].opval), yyvsp[-1].opval),
a0d0e21e 1840 newUNOP(OP_METHOD, 0, yyvsp[-3].opval))); }
93a17b20 1841break;
ecca16b0 1842case 75:
b1524f17 1843#line 361 "perly.y"
1844{ yyval.opval = convert(OP_ENTERSUB, OPf_STACKED,
1845 append_elem(OP_LIST, scalar(yyvsp[-2].opval),
1846 newUNOP(OP_METHOD, 0, yyvsp[0].opval))); }
1847break;
1848case 76:
1849#line 365 "perly.y"
4633a7c4 1850{ yyval.opval = convert(OP_ENTERSUB, OPf_STACKED,
a0d0e21e 1851 append_elem(OP_LIST,
4633a7c4 1852 prepend_elem(OP_LIST, yyvsp[-1].opval, yyvsp[0].opval),
a0d0e21e 1853 newUNOP(OP_METHOD, 0, yyvsp[-2].opval))); }
93a17b20 1854break;
b1524f17 1855case 77:
1856#line 370 "perly.y"
4633a7c4 1857{ yyval.opval = convert(OP_ENTERSUB, OPf_STACKED,
a0d0e21e 1858 append_elem(OP_LIST,
4633a7c4 1859 prepend_elem(OP_LIST, yyvsp[-3].opval, yyvsp[-1].opval),
a0d0e21e 1860 newUNOP(OP_METHOD, 0, yyvsp[-4].opval))); }
93a17b20 1861break;
b1524f17 1862case 78:
1863#line 375 "perly.y"
c07a80fd 1864{ yyval.opval = convert(yyvsp[-1].ival, 0, yyvsp[0].opval); }
1865break;
b1524f17 1866case 79:
1867#line 377 "perly.y"
c07a80fd 1868{ yyval.opval = convert(yyvsp[-3].ival, 0, yyvsp[-1].opval); }
93a17b20 1869break;
b1524f17 1870case 80:
1871#line 379 "perly.y"
28757baa 1872{ yyvsp[0].opval = newANONSUB(yyvsp[-1].ival, 0, yyvsp[0].opval); }
1873break;
b1524f17 1874case 81:
1875#line 381 "perly.y"
4633a7c4 1876{ yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
28757baa 1877 append_elem(OP_LIST,
1878 prepend_elem(OP_LIST, yyvsp[-2].opval, yyvsp[0].opval), yyvsp[-4].opval)); }
4633a7c4 1879break;
b1524f17 1880case 84:
1881#line 391 "perly.y"
c07a80fd 1882{ yyval.opval = newASSIGNOP(OPf_STACKED, yyvsp[-2].opval, yyvsp[-1].ival, yyvsp[0].opval); }
1883break;
b1524f17 1884case 85:
1885#line 393 "perly.y"
c07a80fd 1886{ yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
93a17b20 1887break;
b1524f17 1888case 86:
1889#line 395 "perly.y"
a0d0e21e 1890{ if (yyvsp[-1].ival != OP_REPEAT)
1891 scalar(yyvsp[-2].opval);
1892 yyval.opval = newBINOP(yyvsp[-1].ival, 0, yyvsp[-2].opval, scalar(yyvsp[0].opval)); }
93a17b20 1893break;
28757baa 1894case 87:
b1524f17 1895#line 399 "perly.y"
a0d0e21e 1896{ yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
93a17b20 1897break;
28757baa 1898case 88:
b1524f17 1899#line 401 "perly.y"
93a17b20 1900{ yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1901break;
28757baa 1902case 89:
b1524f17 1903#line 403 "perly.y"
44a8e56a 1904{ yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
93a17b20 1905break;
28757baa 1906case 90:
b1524f17 1907#line 405 "perly.y"
44a8e56a 1908{ yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
93a17b20 1909break;
28757baa 1910case 91:
b1524f17 1911#line 407 "perly.y"
ecca16b0 1912{ yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
93a17b20 1913break;
28757baa 1914case 92:
b1524f17 1915#line 409 "perly.y"
1916{ yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
93a17b20 1917break;
28757baa 1918case 93:
b1524f17 1919#line 411 "perly.y"
1920{ yyval.opval = newRANGE(yyvsp[-1].ival, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval));}
93a17b20 1921break;
28757baa 1922case 94:
b1524f17 1923#line 413 "perly.y"
1924{ yyval.opval = newLOGOP(OP_AND, 0, yyvsp[-2].opval, yyvsp[0].opval); }
93a17b20 1925break;
28757baa 1926case 95:
b1524f17 1927#line 415 "perly.y"
1928{ yyval.opval = newLOGOP(OP_OR, 0, yyvsp[-2].opval, yyvsp[0].opval); }
93a17b20 1929break;
28757baa 1930case 96:
b1524f17 1931#line 417 "perly.y"
1932{ yyval.opval = newCONDOP(0, yyvsp[-4].opval, yyvsp[-2].opval, yyvsp[0].opval); }
93a17b20 1933break;
28757baa 1934case 97:
b1524f17 1935#line 419 "perly.y"
1936{ yyval.opval = bind_match(yyvsp[-1].ival, yyvsp[-2].opval, yyvsp[0].opval); }
93a17b20 1937break;
28757baa 1938case 98:
b1524f17 1939#line 422 "perly.y"
1940{ yyval.opval = newUNOP(OP_NEGATE, 0, scalar(yyvsp[0].opval)); }
93a17b20 1941break;
28757baa 1942case 99:
b1524f17 1943#line 424 "perly.y"
1944{ yyval.opval = yyvsp[0].opval; }
44a8e56a 1945break;
1946case 100:
b1524f17 1947#line 426 "perly.y"
1948{ yyval.opval = newUNOP(OP_NOT, 0, scalar(yyvsp[0].opval)); }
44a8e56a 1949break;
1950case 101:
b1524f17 1951#line 428 "perly.y"
1952{ yyval.opval = newUNOP(OP_COMPLEMENT, 0, scalar(yyvsp[0].opval));}
93a17b20 1953break;
44a8e56a 1954case 102:
b1524f17 1955#line 430 "perly.y"
1956{ yyval.opval = newUNOP(OP_REFGEN, 0, mod(yyvsp[0].opval,OP_REFGEN)); }
1957break;
1958case 103:
1959#line 432 "perly.y"
ecca16b0 1960{ yyval.opval = newUNOP(OP_POSTINC, 0,
1961 mod(scalar(yyvsp[-1].opval), OP_POSTINC)); }
93a17b20 1962break;
b1524f17 1963case 104:
1964#line 435 "perly.y"
ecca16b0 1965{ yyval.opval = newUNOP(OP_POSTDEC, 0,
1966 mod(scalar(yyvsp[-1].opval), OP_POSTDEC)); }
93a17b20 1967break;
b1524f17 1968case 105:
1969#line 438 "perly.y"
ecca16b0 1970{ yyval.opval = newUNOP(OP_PREINC, 0,
1971 mod(scalar(yyvsp[0].opval), OP_PREINC)); }
93a17b20 1972break;
b1524f17 1973case 106:
1974#line 441 "perly.y"
ecca16b0 1975{ yyval.opval = newUNOP(OP_PREDEC, 0,
1976 mod(scalar(yyvsp[0].opval), OP_PREDEC)); }
c07a80fd 1977break;
b1524f17 1978case 107:
1979#line 444 "perly.y"
ecca16b0 1980{ yyval.opval = localize(yyvsp[0].opval,yyvsp[-1].ival); }
93a17b20 1981break;
b1524f17 1982case 108:
1983#line 446 "perly.y"
ecca16b0 1984{ yyval.opval = sawparens(yyvsp[-1].opval); }
93a17b20 1985break;
b1524f17 1986case 109:
1987#line 448 "perly.y"
ecca16b0 1988{ yyval.opval = sawparens(newNULLLIST()); }
93a17b20 1989break;
b1524f17 1990case 110:
1991#line 450 "perly.y"
ecca16b0 1992{ yyval.opval = newANONLIST(yyvsp[-1].opval); }
93a17b20 1993break;
b1524f17 1994case 111:
1995#line 452 "perly.y"
ecca16b0 1996{ yyval.opval = newANONLIST(Nullop); }
93a17b20 1997break;
b1524f17 1998case 112:
1999#line 454 "perly.y"
ecca16b0 2000{ yyval.opval = newANONHASH(yyvsp[-2].opval); }
93a17b20 2001break;
b1524f17 2002case 113:
2003#line 456 "perly.y"
ecca16b0 2004{ yyval.opval = newANONHASH(Nullop); }
93a17b20 2005break;
b1524f17 2006case 114:
2007#line 458 "perly.y"
ecca16b0 2008{ yyval.opval = newANONSUB(yyvsp[-2].ival, yyvsp[-1].opval, yyvsp[0].opval); }
a0d0e21e 2009break;
b1524f17 2010case 115:
2011#line 460 "perly.y"
ecca16b0 2012{ yyval.opval = yyvsp[0].opval; }
93a17b20 2013break;
b1524f17 2014case 116:
2015#line 462 "perly.y"
640b9ef6 2016{ yyval.opval = newBINOP(OP_GELEM, 0, yyvsp[-4].opval, scalar(yyvsp[-2].opval)); }
463ee0b2 2017break;
b1524f17 2018case 117:
2019#line 464 "perly.y"
ecca16b0 2020{ yyval.opval = yyvsp[0].opval; }
463ee0b2 2021break;
b1524f17 2022case 118:
2023#line 466 "perly.y"
ecca16b0 2024{ yyval.opval = newBINOP(OP_AELEM, 0, oopsAV(yyvsp[-3].opval), scalar(yyvsp[-1].opval)); }
2025break;
b1524f17 2026case 119:
2027#line 468 "perly.y"
93a17b20 2028{ yyval.opval = newBINOP(OP_AELEM, 0,
8990e307 2029 ref(newAVREF(yyvsp[-4].opval),OP_RV2AV),
93a17b20 2030 scalar(yyvsp[-1].opval));}
2031break;
b1524f17 2032case 120:
2033#line 472 "perly.y"
a0d0e21e 2034{ assertref(yyvsp[-3].opval); yyval.opval = newBINOP(OP_AELEM, 0,
8990e307 2035 ref(newAVREF(yyvsp[-3].opval),OP_RV2AV),
463ee0b2 2036 scalar(yyvsp[-1].opval));}
2037break;
44a8e56a 2038case 121:
b1524f17 2039#line 476 "perly.y"
ecca16b0 2040{ yyval.opval = yyvsp[0].opval; }
93a17b20 2041break;
44a8e56a 2042case 122:
b1524f17 2043#line 478 "perly.y"
2044{ yyval.opval = yyvsp[0].opval; }
93a17b20 2045break;
44a8e56a 2046case 123:
b1524f17 2047#line 480 "perly.y"
2048{ yyval.opval = newUNOP(OP_AV2ARYLEN, 0, ref(yyvsp[0].opval, OP_AV2ARYLEN));}
2049break;
2050case 124:
2051#line 482 "perly.y"
ecca16b0 2052{ yyval.opval = newBINOP(OP_HELEM, 0, oopsHV(yyvsp[-4].opval), jmaybe(yyvsp[-2].opval));
3280af22 2053 PL_expect = XOPERATOR; }
ecca16b0 2054break;
b1524f17 2055case 125:
2056#line 485 "perly.y"
93a17b20 2057{ yyval.opval = newBINOP(OP_HELEM, 0,
8990e307 2058 ref(newHVREF(yyvsp[-5].opval),OP_RV2HV),
93a17b20 2059 jmaybe(yyvsp[-2].opval));
3280af22 2060 PL_expect = XOPERATOR; }
93a17b20 2061break;
b1524f17 2062case 126:
2063#line 490 "perly.y"
a0d0e21e 2064{ assertref(yyvsp[-4].opval); yyval.opval = newBINOP(OP_HELEM, 0,
8990e307 2065 ref(newHVREF(yyvsp[-4].opval),OP_RV2HV),
463ee0b2 2066 jmaybe(yyvsp[-2].opval));
3280af22 2067 PL_expect = XOPERATOR; }
463ee0b2 2068break;
b1524f17 2069case 127:
2070#line 495 "perly.y"
93a17b20 2071{ yyval.opval = newSLICEOP(0, yyvsp[-1].opval, yyvsp[-4].opval); }
2072break;
b1524f17 2073case 128:
2074#line 497 "perly.y"
93a17b20 2075{ yyval.opval = newSLICEOP(0, yyvsp[-1].opval, Nullop); }
2076break;
b1524f17 2077case 129:
2078#line 499 "perly.y"
79072805 2079{ yyval.opval = prepend_elem(OP_ASLICE,
2080 newOP(OP_PUSHMARK, 0),
79072805 2081 newLISTOP(OP_ASLICE, 0,
93a17b20 2082 list(yyvsp[-1].opval),
a0d0e21e 2083 ref(yyvsp[-3].opval, OP_ASLICE))); }
93a17b20 2084break;
b1524f17 2085case 130:
2086#line 505 "perly.y"
79072805 2087{ yyval.opval = prepend_elem(OP_HSLICE,
2088 newOP(OP_PUSHMARK, 0),
79072805 2089 newLISTOP(OP_HSLICE, 0,
93a17b20 2090 list(yyvsp[-2].opval),
a0d0e21e 2091 ref(oopsHV(yyvsp[-4].opval), OP_HSLICE)));
3280af22 2092 PL_expect = XOPERATOR; }
93a17b20 2093break;
b1524f17 2094case 131:
2095#line 512 "perly.y"
ecca16b0 2096{ yyval.opval = yyvsp[0].opval; }
a0d0e21e 2097break;
b1524f17 2098case 132:
2099#line 514 "perly.y"
ecca16b0 2100{ yyval.opval = newUNOP(OP_ENTERSUB, 0, scalar(yyvsp[0].opval)); }
a0d0e21e 2101break;
b1524f17 2102case 133:
2103#line 516 "perly.y"
ecca16b0 2104{ yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED, scalar(yyvsp[-2].opval)); }
a0d0e21e 2105break;
b1524f17 2106case 134:
2107#line 518 "perly.y"
a0d0e21e 2108{ yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
ecca16b0 2109 append_elem(OP_LIST, yyvsp[-1].opval, scalar(yyvsp[-3].opval))); }
93a17b20 2110break;
b1524f17 2111case 135:
2112#line 521 "perly.y"
ecca16b0 2113{ yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2114 append_elem(OP_LIST, yyvsp[0].opval, scalar(yyvsp[-1].opval))); }
93a17b20 2115break;
b1524f17 2116case 136:
2117#line 524 "perly.y"
78ca652e 2118{ yyval.opval = dofile(yyvsp[0].opval); }
93a17b20 2119break;
b1524f17 2120case 137:
2121#line 526 "perly.y"
ecca16b0 2122{ yyval.opval = newUNOP(OP_NULL, OPf_SPECIAL, scope(yyvsp[0].opval)); }
2123break;
b1524f17 2124case 138:
2125#line 528 "perly.y"
c07a80fd 2126{ yyval.opval = newUNOP(OP_ENTERSUB,
2127 OPf_SPECIAL|OPf_STACKED,
4633a7c4 2128 prepend_elem(OP_LIST,
c07a80fd 2129 scalar(newCVREF(
2130 (OPpENTERSUB_AMPER<<8),
2131 scalar(yyvsp[-2].opval)
2132 )),Nullop)); dep();}
93a17b20 2133break;
b1524f17 2134case 139:
2135#line 536 "perly.y"
c07a80fd 2136{ yyval.opval = newUNOP(OP_ENTERSUB,
2137 OPf_SPECIAL|OPf_STACKED,
4633a7c4 2138 append_elem(OP_LIST,
a0d0e21e 2139 yyvsp[-1].opval,
c07a80fd 2140 scalar(newCVREF(
2141 (OPpENTERSUB_AMPER<<8),
2142 scalar(yyvsp[-3].opval)
2143 )))); dep();}
93a17b20 2144break;
b1524f17 2145case 140:
2146#line 545 "perly.y"
a0d0e21e 2147{ yyval.opval = newUNOP(OP_ENTERSUB, OPf_SPECIAL|OPf_STACKED,
4633a7c4 2148 prepend_elem(OP_LIST,
c07a80fd 2149 scalar(newCVREF(0,scalar(yyvsp[-2].opval))), Nullop)); dep();}
93a17b20 2150break;
b1524f17 2151case 141:
2152#line 549 "perly.y"
a0d0e21e 2153{ yyval.opval = newUNOP(OP_ENTERSUB, OPf_SPECIAL|OPf_STACKED,
4633a7c4 2154 prepend_elem(OP_LIST,
a0d0e21e 2155 yyvsp[-1].opval,
c07a80fd 2156 scalar(newCVREF(0,scalar(yyvsp[-3].opval))))); dep();}
93a17b20 2157break;
b1524f17 2158case 142:
2159#line 554 "perly.y"
6da72b64 2160{ yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2161 newCVREF(0, scalar(yyvsp[-3].opval))); }
93a17b20 2162break;
b1524f17 2163case 143:
2164#line 557 "perly.y"
6da72b64 2165{ yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2166 append_elem(OP_LIST, yyvsp[-1].opval,
2167 newCVREF(0, scalar(yyvsp[-4].opval)))); }
463ee0b2 2168break;
b1524f17 2169case 144:
2170#line 561 "perly.y"
ecca16b0 2171{ yyval.opval = newOP(yyvsp[0].ival, OPf_SPECIAL);
3280af22 2172 PL_hints |= HINT_BLOCK_SCOPE; }
93a17b20 2173break;
44a8e56a 2174case 145:
b1524f17 2175#line 564 "perly.y"
2176{ yyval.opval = newLOOPEX(yyvsp[-1].ival,yyvsp[0].opval); }
c07a80fd 2177break;
44a8e56a 2178case 146:
b1524f17 2179#line 566 "perly.y"
2180{ yyval.opval = newUNOP(OP_NOT, 0, scalar(yyvsp[0].opval)); }
6da72b64 2181break;
2182case 147:
b1524f17 2183#line 568 "perly.y"
2184{ yyval.opval = newOP(yyvsp[0].ival, 0); }
6da72b64 2185break;
2186case 148:
b1524f17 2187#line 570 "perly.y"
ecca16b0 2188{ yyval.opval = newUNOP(yyvsp[-1].ival, 0, yyvsp[0].opval); }
4633a7c4 2189break;
6da72b64 2190case 149:
b1524f17 2191#line 572 "perly.y"
2192{ yyval.opval = newUNOP(yyvsp[-1].ival, 0, yyvsp[0].opval); }
2193break;
2194case 150:
2195#line 574 "perly.y"
ecca16b0 2196{ yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2197 append_elem(OP_LIST, yyvsp[0].opval, scalar(yyvsp[-1].opval))); }
93a17b20 2198break;
b1524f17 2199case 151:
2200#line 577 "perly.y"
ecca16b0 2201{ yyval.opval = newOP(yyvsp[0].ival, 0); }
93a17b20 2202break;
b1524f17 2203case 152:
2204#line 579 "perly.y"
ecca16b0 2205{ yyval.opval = newOP(yyvsp[-2].ival, 0); }
4633a7c4 2206break;
b1524f17 2207case 153:
2208#line 581 "perly.y"
ecca16b0 2209{ yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2210 scalar(yyvsp[0].opval)); }
93a17b20 2211break;
b1524f17 2212case 154:
2213#line 584 "perly.y"
ecca16b0 2214{ yyval.opval = newOP(yyvsp[-2].ival, OPf_SPECIAL); }
93a17b20 2215break;
b1524f17 2216case 155:
2217#line 586 "perly.y"
ecca16b0 2218{ yyval.opval = newUNOP(yyvsp[-3].ival, 0, yyvsp[-1].opval); }
93a17b20 2219break;
b1524f17 2220case 156:
2221#line 588 "perly.y"
ecca16b0 2222{ yyval.opval = pmruntime(yyvsp[-3].opval, yyvsp[-1].opval, Nullop); }
93a17b20 2223break;
b1524f17 2224case 157:
2225#line 590 "perly.y"
ecca16b0 2226{ yyval.opval = pmruntime(yyvsp[-5].opval, yyvsp[-3].opval, yyvsp[-1].opval); }
93a17b20 2227break;
b1524f17 2228case 160:
2229#line 596 "perly.y"
ecca16b0 2230{ yyval.opval = Nullop; }
55497cff 2231break;
b1524f17 2232case 161:
2233#line 598 "perly.y"
ecca16b0 2234{ yyval.opval = yyvsp[0].opval; }
55497cff 2235break;
b1524f17 2236case 162:
2237#line 602 "perly.y"
ecca16b0 2238{ yyval.opval = Nullop; }
55497cff 2239break;
b1524f17 2240case 163:
2241#line 604 "perly.y"
ecca16b0 2242{ yyval.opval = yyvsp[0].opval; }
93a17b20 2243break;
b1524f17 2244case 164:
2245#line 606 "perly.y"
ecca16b0 2246{ yyval.opval = yyvsp[-1].opval; }
93a17b20 2247break;
b1524f17 2248case 165:
2249#line 609 "perly.y"
ecca16b0 2250{ yyval.ival = 0; }
93a17b20 2251break;
b1524f17 2252case 166:
2253#line 610 "perly.y"
ecca16b0 2254{ yyval.ival = 1; }
93a17b20 2255break;
b1524f17 2256case 167:
2257#line 614 "perly.y"
3280af22 2258{ PL_in_my = 0; yyval.opval = my(yyvsp[0].opval); }
93a17b20 2259break;
b1524f17 2260case 168:
2261#line 618 "perly.y"
ecca16b0 2262{ yyval.opval = newCVREF(yyvsp[-1].ival,yyvsp[0].opval); }
93a17b20 2263break;
b1524f17 2264case 169:
2265#line 622 "perly.y"
ecca16b0 2266{ yyval.opval = newSVREF(yyvsp[0].opval); }
93a17b20 2267break;
b1524f17 2268case 170:
2269#line 626 "perly.y"
ecca16b0 2270{ yyval.opval = newAVREF(yyvsp[0].opval); }
93a17b20 2271break;
b1524f17 2272case 171:
2273#line 630 "perly.y"
ecca16b0 2274{ yyval.opval = newHVREF(yyvsp[0].opval); }
c07a80fd 2275break;
b1524f17 2276case 172:
2277#line 634 "perly.y"
ecca16b0 2278{ yyval.opval = newAVREF(yyvsp[0].opval); }
44a8e56a 2279break;
b1524f17 2280case 173:
2281#line 638 "perly.y"
ecca16b0 2282{ yyval.opval = newGVREF(0,yyvsp[0].opval); }
44a8e56a 2283break;
b1524f17 2284case 174:
2285#line 642 "perly.y"
ecca16b0 2286{ yyval.opval = scalar(yyvsp[0].opval); }
6da72b64 2287break;
b1524f17 2288case 175:
2289#line 644 "perly.y"
ecca16b0 2290{ yyval.opval = scalar(yyvsp[0].opval); }
6da72b64 2291break;
b1524f17 2292case 176:
2293#line 646 "perly.y"
ecca16b0 2294{ yyval.opval = scope(yyvsp[0].opval); }
2295break;
b1524f17 2296case 177:
2297#line 649 "perly.y"
85e6fe83 2298{ yyval.opval = yyvsp[0].opval; }
93a17b20 2299break;
b1524f17 2300#line 2329 "perly.c"
93a17b20 2301 }
2302 yyssp -= yym;
2303 yystate = *yyssp;
2304 yyvsp -= yym;
2305 yym = yylhs[yyn];
2306 if (yystate == 0 && yym == 0)
2307 {
2308#if YYDEBUG
2309 if (yydebug)
ac4c12e7 2310 PerlIO_printf(Perl_debug_log,
ed6116ce 2311 "yydebug: after reduction, shifting from state 0 to state %d\n",
2312 YYFINAL);
93a17b20 2313#endif
2314 yystate = YYFINAL;
2315 *++yyssp = YYFINAL;
2316 *++yyvsp = yyval;
2317 if (yychar < 0)
2318 {
2319 if ((yychar = yylex()) < 0) yychar = 0;
2320#if YYDEBUG
2321 if (yydebug)
2322 {
2323 yys = 0;
2324 if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
2325 if (!yys) yys = "illegal-symbol";
ac4c12e7 2326 PerlIO_printf(Perl_debug_log, "yydebug: state %d, reading %d (%s)\n",
93a17b20 2327 YYFINAL, yychar, yys);
2328 }
2329#endif
2330 }
2331 if (yychar == 0) goto yyaccept;
2332 goto yyloop;
2333 }
2334 if ((yyn = yygindex[yym]) && (yyn += yystate) >= 0 &&
2335 yyn <= YYTABLESIZE && yycheck[yyn] == yystate)
2336 yystate = yytable[yyn];
2337 else
2338 yystate = yydgoto[yym];
2339#if YYDEBUG
2340 if (yydebug)
ac4c12e7 2341 PerlIO_printf(Perl_debug_log,
ed6116ce 2342 "yydebug: after reduction, shifting from state %d to state %d\n",
2343 *yyssp, yystate);
93a17b20 2344#endif
2345 if (yyssp >= yyss + yystacksize - 1)
2346 {
2347 /*
2348 ** reallocate and recover. Note that pointers
2349 ** have to be reset, or bad things will happen
2350 */
2351 int yyps_index = (yyssp - yyss);
2352 int yypv_index = (yyvsp - yyvs);
2353 yystacksize += YYSTACKSIZE;
a0d0e21e 2354 ysave->yyvs = yyvs =
d3b6f988 2355 (YYSTYPE*)PerlMem_realloc((char*)yyvs,yystacksize * sizeof(YYSTYPE));
a0d0e21e 2356 ysave->yyss = yyss =
d3b6f988 2357 (short*)PerlMem_realloc((char*)yyss,yystacksize * sizeof(short));
93a17b20 2358 if (!yyvs || !yyss)
2359 goto yyoverflow;
2360 yyssp = yyss + yyps_index;
2361 yyvsp = yyvs + yypv_index;
2362 }
2363 *++yyssp = yystate;
2364 *++yyvsp = yyval;
2365 goto yyloop;
2366yyoverflow:
2367 yyerror("Out of memory for yacc stack");
2368yyabort:
2369 retval = 1;
2370yyaccept:
93a17b20 2371 return retval;
79072805 2372}
51371543 2373
2374
2375#ifdef PERL_OBJECT
2376#define NO_XSLOCKS
2377#include "XSUB.h"
2378#endif
2379
2380static void
2381yydestruct(pTHXo_ void *ptr)
2382{
2383 struct ysv* ysave = (struct ysv*)ptr;
2384 if (ysave->yyss) Safefree(ysave->yyss);
2385 if (ysave->yyvs) Safefree(ysave->yyvs);
2386 yydebug = ysave->oldyydebug;
2387 yynerrs = ysave->oldyynerrs;
2388 yyerrflag = ysave->oldyyerrflag;
2389 yychar = ysave->oldyychar;
2390 yyval = ysave->oldyyval;
2391 yylval = ysave->oldyylval;
2392 Safefree(ysave);
2393}