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