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