This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Merge maint-5.004 branch (5.004_04) with mainline.
[perl5.git] / vms / perly_c.vms
CommitLineData
71be2cbc 1/* Postprocessed by vms_yfix.pl 1.11 to add VMS declarations of globals */
4633a7c4
LW
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
11dep()
12{
13 deprecate("\"do\" to call subroutines");
14}
15
5f05dabc 16#line 16 "perly.c"
4633a7c4
LW
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
LW
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
LW
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
LW
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
LW
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
LW
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
LW
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
LW
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
LW
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
LW
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
LW
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
LW
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
LW
1065};
1066#define YYFINAL 1
1067#ifndef YYDEBUG
1068#define YYDEBUG 0
1069#endif
5f05dabc 1070#define YYMAXTOKEN 314
4633a7c4
LW
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
LW
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
LW
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
LW
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
LW
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
LW
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
LW
1147"proto :",
1148"proto : THING",
44a8e56a 1149"subbody : block",
1150"subbody : ';'",
4633a7c4
LW
1151"package : PACKAGE WORD ';'",
1152"package : PACKAGE ';'",
44a8e56a 1153"$$2 :",
1154"use : USE startsub $$2 WORD WORD listexpr ';'",
4633a7c4
LW
1155"expr : expr ANDOP expr",
1156"expr : expr OROP expr",
4633a7c4
LW
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
LW
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
LW
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
LW
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
LW
1232"term : LOOPEX",
1233"term : LOOPEX term",
c07a80fd 1234"term : NOTOP argexpr",
4633a7c4
LW
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
LW
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
LW
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
1307yydestruct(ptr)
1308void* ptr;
1309{
1310 struct ysv* ysave = (struct ysv*)ptr;
5f05dabc 1311 if (ysave->yyss) Safefree(ysave->yyss);
1312 if (ysave->yyvs) Safefree(ysave->yyvs);
4633a7c4
LW
1313 yydebug = ysave->oldyydebug;
1314 yynerrs = ysave->oldyynerrs;
1315 yyerrflag = ysave->oldyyerrflag;
1316 yychar = ysave->oldyychar;
1317 yyval = ysave->oldyyval;
1318 yylval = ysave->oldyylval;
5f05dabc 1319 Safefree(ysave);
4633a7c4
LW
1320}
1321
1322int
1323yyparse()
1324{
1325 register int yym, yyn, yystate;
1326 register short *yyssp;
1327 register YYSTYPE *yyvsp;
1328 short* yyss;
1329 YYSTYPE* yyvs;
1330 unsigned yystacksize = YYSTACKSIZE;
1331 int retval = 0;
1332#if YYDEBUG
1333 register char *yys;
9607fc9c 1334# ifndef getenv
4633a7c4 1335 extern char *getenv();
9607fc9c 1336# endif
4633a7c4
LW
1337#endif
1338
1339 struct ysv *ysave = (struct ysv*)safemalloc(sizeof(struct ysv));
1340 SAVEDESTRUCTOR(yydestruct, ysave);
1341 ysave->oldyydebug = yydebug;
1342 ysave->oldyynerrs = yynerrs;
1343 ysave->oldyyerrflag = yyerrflag;
1344 ysave->oldyychar = yychar;
1345 ysave->oldyyval = yyval;
1346 ysave->oldyylval = yylval;
1347
1348#if YYDEBUG
1349 if (yys = getenv("YYDEBUG"))
1350 {
1351 yyn = *yys;
1352 if (yyn >= '0' && yyn <= '9')
1353 yydebug = yyn - '0';
1354 }
1355#endif
1356
1357 yynerrs = 0;
1358 yyerrflag = 0;
1359 yychar = (-1);
1360
1361 /*
1362 ** Initialize private stacks (yyparse may be called from an action)
1363 */
1364 ysave->yyss = yyss = (short*)safemalloc(yystacksize*sizeof(short));
1365 ysave->yyvs = yyvs = (YYSTYPE*)safemalloc(yystacksize*sizeof(YYSTYPE));
1366 if (!yyvs || !yyss)
1367 goto yyoverflow;
1368
1369 yyssp = yyss;
1370 yyvsp = yyvs;
1371 *yyssp = yystate = 0;
1372
1373yyloop:
1374 if (yyn = yydefred[yystate]) goto yyreduce;
1375 if (yychar < 0)
1376 {
1377 if ((yychar = yylex()) < 0) yychar = 0;
1378#if YYDEBUG
1379 if (yydebug)
1380 {
1381 yys = 0;
1382 if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
1383 if (!yys) yys = "illegal-symbol";
760ac839 1384 PerlIO_printf(Perl_debug_log, "yydebug: state %d, reading %d (%s)\n", yystate,
4633a7c4
LW
1385 yychar, yys);
1386 }
1387#endif
1388 }
1389 if ((yyn = yysindex[yystate]) && (yyn += yychar) >= 0 &&
1390 yyn <= YYTABLESIZE && yycheck[yyn] == yychar)
1391 {
1392#if YYDEBUG
1393 if (yydebug)
760ac839 1394 PerlIO_printf(Perl_debug_log, "yydebug: state %d, shifting to state %d\n",
4633a7c4
LW
1395 yystate, yytable[yyn]);
1396#endif
1397 if (yyssp >= yyss + yystacksize - 1)
1398 {
1399 /*
1400 ** reallocate and recover. Note that pointers
1401 ** have to be reset, or bad things will happen
1402 */
1403 int yyps_index = (yyssp - yyss);
1404 int yypv_index = (yyvsp - yyvs);
1405 yystacksize += YYSTACKSIZE;
1406 ysave->yyvs = yyvs =
1407 (YYSTYPE*)realloc((char*)yyvs,yystacksize * sizeof(YYSTYPE));
1408 ysave->yyss = yyss =
1409 (short*)realloc((char*)yyss,yystacksize * sizeof(short));
1410 if (!yyvs || !yyss)
1411 goto yyoverflow;
1412 yyssp = yyss + yyps_index;
1413 yyvsp = yyvs + yypv_index;
1414 }
1415 *++yyssp = yystate = yytable[yyn];
1416 *++yyvsp = yylval;
1417 yychar = (-1);
1418 if (yyerrflag > 0) --yyerrflag;
1419 goto yyloop;
1420 }
1421 if ((yyn = yyrindex[yystate]) && (yyn += yychar) >= 0 &&
1422 yyn <= YYTABLESIZE && yycheck[yyn] == yychar)
1423 {
1424 yyn = yytable[yyn];
1425 goto yyreduce;
1426 }
1427 if (yyerrflag) goto yyinrecovery;
1428#ifdef lint
1429 goto yynewerror;
1430#endif
1431yynewerror:
1432 yyerror("syntax error");
1433#ifdef lint
1434 goto yyerrlab;
1435#endif
1436yyerrlab:
1437 ++yynerrs;
1438yyinrecovery:
1439 if (yyerrflag < 3)
1440 {
1441 yyerrflag = 3;
1442 for (;;)
1443 {
1444 if ((yyn = yysindex[*yyssp]) && (yyn += YYERRCODE) >= 0 &&
1445 yyn <= YYTABLESIZE && yycheck[yyn] == YYERRCODE)
1446 {
1447#if YYDEBUG
1448 if (yydebug)
760ac839 1449 PerlIO_printf(Perl_debug_log,
4633a7c4
LW
1450 "yydebug: state %d, error recovery shifting to state %d\n",
1451 *yyssp, yytable[yyn]);
1452#endif
1453 if (yyssp >= yyss + yystacksize - 1)
1454 {
1455 /*
1456 ** reallocate and recover. Note that pointers
1457 ** have to be reset, or bad things will happen
1458 */
1459 int yyps_index = (yyssp - yyss);
1460 int yypv_index = (yyvsp - yyvs);
1461 yystacksize += YYSTACKSIZE;
1462 ysave->yyvs = yyvs = (YYSTYPE*)realloc((char*)yyvs,
1463 yystacksize * sizeof(YYSTYPE));
1464 ysave->yyss = yyss = (short*)realloc((char*)yyss,
1465 yystacksize * sizeof(short));
1466 if (!yyvs || !yyss)
1467 goto yyoverflow;
1468 yyssp = yyss + yyps_index;
1469 yyvsp = yyvs + yypv_index;
1470 }
1471 *++yyssp = yystate = yytable[yyn];
1472 *++yyvsp = yylval;
1473 goto yyloop;
1474 }
1475 else
1476 {
1477#if YYDEBUG
1478 if (yydebug)
760ac839 1479 PerlIO_printf(Perl_debug_log,
4633a7c4
LW
1480 "yydebug: error recovery discarding state %d\n",
1481 *yyssp);
1482#endif
1483 if (yyssp <= yyss) goto yyabort;
1484 --yyssp;
1485 --yyvsp;
1486 }
1487 }
1488 }
1489 else
1490 {
1491 if (yychar == 0) goto yyabort;
1492#if YYDEBUG
1493 if (yydebug)
1494 {
1495 yys = 0;
1496 if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
1497 if (!yys) yys = "illegal-symbol";
760ac839 1498 PerlIO_printf(Perl_debug_log,
4633a7c4
LW
1499 "yydebug: state %d, error recovery discards token %d (%s)\n",
1500 yystate, yychar, yys);
1501 }
1502#endif
1503 yychar = (-1);
1504 goto yyloop;
1505 }
1506yyreduce:
1507#if YYDEBUG
1508 if (yydebug)
760ac839 1509 PerlIO_printf(Perl_debug_log, "yydebug: state %d, reducing by rule %d (%s)\n",
4633a7c4
LW
1510 yystate, yyn, yyrule[yyn]);
1511#endif
1512 yym = yylen[yyn];
1513 yyval = yyvsp[1-yym];
1514 switch (yyn)
1515 {
1516case 1:
44a8e56a 1517#line 86 "perly.y"
4633a7c4
LW
1518{
1519#if defined(YYDEBUG) && defined(DEBUGGING)
1520 yydebug = (debug & 1);
1521#endif
1522 expect = XSTATE;
1523 }
1524break;
1525case 2:
44a8e56a 1526#line 93 "perly.y"
4633a7c4
LW
1527{ newPROG(yyvsp[0].opval); }
1528break;
1529case 3:
44a8e56a 1530#line 97 "perly.y"
5f05dabc 1531{ if (copline > (line_t)yyvsp[-3].ival)
1532 copline = yyvsp[-3].ival;
1533 yyval.opval = block_end(yyvsp[-2].ival, yyvsp[-1].opval); }
4633a7c4
LW
1534break;
1535case 4:
44a8e56a 1536#line 103 "perly.y"
5f05dabc 1537{ yyval.ival = block_start(TRUE); }
4633a7c4
LW
1538break;
1539case 5:
44a8e56a 1540#line 107 "perly.y"
5f05dabc 1541{ if (copline > (line_t)yyvsp[-3].ival)
1542 copline = yyvsp[-3].ival;
1543 yyval.opval = block_end(yyvsp[-2].ival, yyvsp[-1].opval); }
4633a7c4
LW
1544break;
1545case 6:
44a8e56a 1546#line 113 "perly.y"
5f05dabc 1547{ yyval.ival = block_start(FALSE); }
4633a7c4
LW
1548break;
1549case 7:
44a8e56a 1550#line 117 "perly.y"
5f05dabc 1551{ yyval.opval = Nullop; }
1552break;
1553case 8:
44a8e56a 1554#line 119 "perly.y"
5f05dabc 1555{ yyval.opval = yyvsp[-1].opval; }
1556break;
1557case 9:
44a8e56a 1558#line 121 "perly.y"
4633a7c4
LW
1559{ yyval.opval = append_list(OP_LINESEQ,
1560 (LISTOP*)yyvsp[-1].opval, (LISTOP*)yyvsp[0].opval);
1561 pad_reset_pending = TRUE;
1562 if (yyvsp[-1].opval && yyvsp[0].opval) hints |= HINT_BLOCK_SCOPE; }
1563break;
5f05dabc 1564case 10:
44a8e56a 1565#line 128 "perly.y"
4633a7c4
LW
1566{ yyval.opval = newSTATEOP(0, yyvsp[-1].pval, yyvsp[0].opval); }
1567break;
5f05dabc 1568case 12:
44a8e56a 1569#line 131 "perly.y"
4633a7c4
LW
1570{ if (yyvsp[-1].pval != Nullch) {
1571 yyval.opval = newSTATEOP(0, yyvsp[-1].pval, newOP(OP_NULL, 0));
1572 }
1573 else {
1574 yyval.opval = Nullop;
1575 copline = NOLINE;
1576 }
1577 expect = XSTATE; }
1578break;
5f05dabc 1579case 13:
44a8e56a 1580#line 140 "perly.y"
4633a7c4
LW
1581{ yyval.opval = newSTATEOP(0, yyvsp[-2].pval, yyvsp[-1].opval);
1582 expect = XSTATE; }
1583break;
4633a7c4 1584case 14:
44a8e56a 1585#line 145 "perly.y"
5f05dabc 1586{ yyval.opval = Nullop; }
4633a7c4
LW
1587break;
1588case 15:
44a8e56a 1589#line 147 "perly.y"
5f05dabc 1590{ yyval.opval = yyvsp[0].opval; }
4633a7c4
LW
1591break;
1592case 16:
44a8e56a 1593#line 149 "perly.y"
5f05dabc 1594{ yyval.opval = newLOGOP(OP_AND, 0, yyvsp[0].opval, yyvsp[-2].opval); }
4633a7c4
LW
1595break;
1596case 17:
44a8e56a 1597#line 151 "perly.y"
5f05dabc 1598{ yyval.opval = newLOGOP(OP_OR, 0, yyvsp[0].opval, yyvsp[-2].opval); }
4633a7c4
LW
1599break;
1600case 18:
44a8e56a 1601#line 153 "perly.y"
5f05dabc 1602{ yyval.opval = newLOOPOP(OPf_PARENS, 1, scalar(yyvsp[0].opval), yyvsp[-2].opval); }
4633a7c4
LW
1603break;
1604case 19:
44a8e56a 1605#line 155 "perly.y"
5f05dabc 1606{ yyval.opval = newLOOPOP(OPf_PARENS, 1, yyvsp[0].opval, yyvsp[-2].opval);}
4633a7c4
LW
1607break;
1608case 20:
44a8e56a 1609#line 159 "perly.y"
5f05dabc 1610{ yyval.opval = Nullop; }
4633a7c4
LW
1611break;
1612case 21:
44a8e56a 1613#line 161 "perly.y"
5f05dabc 1614{ yyval.opval = scope(yyvsp[0].opval); }
4633a7c4
LW
1615break;
1616case 22:
44a8e56a 1617#line 163 "perly.y"
4633a7c4 1618{ copline = yyvsp[-5].ival;
5f05dabc 1619 yyval.opval = newSTATEOP(0, Nullch,
1620 newCONDOP(0, yyvsp[-3].opval, scope(yyvsp[-1].opval), yyvsp[0].opval));
1621 hints |= HINT_BLOCK_SCOPE; }
4633a7c4
LW
1622break;
1623case 23:
44a8e56a 1624#line 170 "perly.y"
5f05dabc 1625{ copline = yyvsp[-6].ival;
1626 yyval.opval = block_end(yyvsp[-4].ival,
1627 newCONDOP(0, yyvsp[-3].opval, scope(yyvsp[-1].opval), yyvsp[0].opval)); }
1628break;
1629case 24:
44a8e56a 1630#line 174 "perly.y"
5f05dabc 1631{ copline = yyvsp[-6].ival;
1632 yyval.opval = block_end(yyvsp[-4].ival,
1633 newCONDOP(0, yyvsp[-3].opval, scope(yyvsp[-1].opval), yyvsp[0].opval)); }
1634break;
1635case 25:
44a8e56a 1636#line 180 "perly.y"
71be2cbc 1637{ yyval.opval = Nullop; }
4633a7c4 1638break;
5f05dabc 1639case 26:
44a8e56a 1640#line 182 "perly.y"
5f05dabc 1641{ yyval.opval = scope(yyvsp[0].opval); }
4633a7c4 1642break;
71be2cbc 1643case 27:
44a8e56a 1644#line 186 "perly.y"
5f05dabc 1645{ copline = yyvsp[-6].ival;
1646 yyval.opval = block_end(yyvsp[-4].ival,
1647 newSTATEOP(0, yyvsp[-7].pval,
1648 newWHILEOP(0, 1, (LOOP*)Nullop,
fb73857a 1649 yyvsp[-6].ival, yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval))); }
4633a7c4 1650break;
71be2cbc 1651case 28:
44a8e56a 1652#line 192 "perly.y"
5f05dabc 1653{ copline = yyvsp[-6].ival;
1654 yyval.opval = block_end(yyvsp[-4].ival,
1655 newSTATEOP(0, yyvsp[-7].pval,
1656 newWHILEOP(0, 1, (LOOP*)Nullop,
fb73857a 1657 yyvsp[-6].ival, yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval))); }
4633a7c4 1658break;
71be2cbc 1659case 29:
44a8e56a 1660#line 198 "perly.y"
5f05dabc 1661{ yyval.opval = block_end(yyvsp[-6].ival,
1662 newFOROP(0, yyvsp[-9].pval, yyvsp[-8].ival, yyvsp[-5].opval, yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval)); }
4633a7c4 1663break;
71be2cbc 1664case 30:
44a8e56a 1665#line 201 "perly.y"
5f05dabc 1666{ yyval.opval = block_end(yyvsp[-4].ival,
1667 newFOROP(0, yyvsp[-8].pval, yyvsp[-7].ival, mod(yyvsp[-6].opval, OP_ENTERLOOP),
1668 yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval)); }
1669break;
71be2cbc 1670case 31:
44a8e56a 1671#line 205 "perly.y"
5f05dabc 1672{ yyval.opval = block_end(yyvsp[-4].ival,
1673 newFOROP(0, yyvsp[-7].pval, yyvsp[-6].ival, Nullop, yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval)); }
1674break;
71be2cbc 1675case 32:
44a8e56a 1676#line 209 "perly.y"
fb73857a 1677{ OP *forop = append_elem(OP_LINESEQ,
1678 scalar(yyvsp[-6].opval),
1679 newWHILEOP(0, 1, (LOOP*)Nullop,
1680 yyvsp[-9].ival, scalar(yyvsp[-4].opval),
1681 yyvsp[0].opval, scalar(yyvsp[-2].opval)));
1682 copline = yyvsp[-9].ival;
1683 yyval.opval = block_end(yyvsp[-7].ival, newSTATEOP(0, yyvsp[-10].pval, forop)); }
5f05dabc 1684break;
71be2cbc 1685case 33:
44a8e56a 1686#line 217 "perly.y"
fb73857a 1687{ yyval.opval = newSTATEOP(0, yyvsp[-2].pval,
1688 newWHILEOP(0, 1, (LOOP*)Nullop,
1689 NOLINE, Nullop, yyvsp[-1].opval, yyvsp[0].opval)); }
4633a7c4 1690break;
71be2cbc 1691case 34:
44a8e56a 1692#line 223 "perly.y"
4633a7c4
LW
1693{ yyval.opval = Nullop; }
1694break;
71be2cbc 1695case 36:
44a8e56a 1696#line 228 "perly.y"
4633a7c4
LW
1697{ (void)scan_num("1"); yyval.opval = yylval.opval; }
1698break;
71be2cbc 1699case 38:
44a8e56a 1700#line 233 "perly.y"
5f05dabc 1701{ yyval.opval = invert(scalar(yyvsp[0].opval)); }
1702break;
71be2cbc 1703case 39:
44a8e56a 1704#line 237 "perly.y"
5f05dabc 1705{ yyval.opval = yyvsp[0].opval; intro_my(); }
1706break;
71be2cbc 1707case 40:
44a8e56a 1708#line 241 "perly.y"
5f05dabc 1709{ yyval.opval = yyvsp[0].opval; intro_my(); }
1710break;
71be2cbc 1711case 41:
44a8e56a 1712#line 245 "perly.y"
5f05dabc 1713{ yyval.opval = yyvsp[0].opval; intro_my(); }
1714break;
71be2cbc 1715case 42:
44a8e56a 1716#line 249 "perly.y"
5f05dabc 1717{ yyval.opval = yyvsp[0].opval; intro_my(); }
1718break;
71be2cbc 1719case 43:
44a8e56a 1720#line 253 "perly.y"
4633a7c4
LW
1721{ yyval.pval = Nullch; }
1722break;
71be2cbc 1723case 45:
44a8e56a 1724#line 258 "perly.y"
4633a7c4
LW
1725{ yyval.ival = 0; }
1726break;
71be2cbc 1727case 46:
44a8e56a 1728#line 260 "perly.y"
4633a7c4
LW
1729{ yyval.ival = 0; }
1730break;
71be2cbc 1731case 47:
44a8e56a 1732#line 262 "perly.y"
4633a7c4
LW
1733{ yyval.ival = 0; }
1734break;
71be2cbc 1735case 48:
44a8e56a 1736#line 264 "perly.y"
4633a7c4
LW
1737{ yyval.ival = 0; }
1738break;
71be2cbc 1739case 49:
44a8e56a 1740#line 268 "perly.y"
4633a7c4
LW
1741{ newFORM(yyvsp[-2].ival, yyvsp[-1].opval, yyvsp[0].opval); }
1742break;
71be2cbc 1743case 50:
44a8e56a 1744#line 271 "perly.y"
1745{ yyval.opval = yyvsp[0].opval; }
4633a7c4 1746break;
71be2cbc 1747case 51:
44a8e56a 1748#line 272 "perly.y"
1749{ yyval.opval = Nullop; }
4633a7c4 1750break;
71be2cbc 1751case 52:
44a8e56a 1752#line 276 "perly.y"
1753{ newSUB(yyvsp[-3].ival, yyvsp[-2].opval, yyvsp[-1].opval, yyvsp[0].opval); }
4633a7c4 1754break;
71be2cbc 1755case 53:
44a8e56a 1756#line 280 "perly.y"
774d564b 1757{ yyval.ival = start_subparse(FALSE, 0); }
4633a7c4 1758break;
44a8e56a 1759case 54:
71be2cbc 1760#line 284 "perly.y"
774d564b 1761{ yyval.ival = start_subparse(FALSE, CVf_ANON); }
44a8e56a 1762break;
1763case 55:
774d564b 1764#line 288 "perly.y"
1765{ yyval.ival = start_subparse(TRUE, 0); }
4633a7c4 1766break;
71be2cbc 1767case 56:
774d564b 1768#line 291 "perly.y"
7d07dbc2
MB
1769{ char *name = SvPV(((SVOP*)yyvsp[0].opval)->op_sv, na);
1770 if (strEQ(name, "BEGIN") || strEQ(name, "END")
1771 || strEQ(name, "INIT"))
44a8e56a 1772 CvUNIQUE_on(compcv);
1773 yyval.opval = yyvsp[0].opval; }
4633a7c4 1774break;
71be2cbc 1775case 57:
7d07dbc2 1776#line 299 "perly.y"
44a8e56a 1777{ yyval.opval = Nullop; }
1778break;
1779case 59:
7d07dbc2 1780#line 303 "perly.y"
44a8e56a 1781{ yyval.opval = yyvsp[0].opval; }
1782break;
1783case 60:
7d07dbc2 1784#line 304 "perly.y"
44a8e56a 1785{ yyval.opval = Nullop; expect = XSTATE; }
1786break;
1787case 61:
7d07dbc2 1788#line 308 "perly.y"
44a8e56a 1789{ package(yyvsp[-1].opval); }
1790break;
1791case 62:
7d07dbc2 1792#line 310 "perly.y"
4633a7c4
LW
1793{ package(Nullop); }
1794break;
44a8e56a 1795case 63:
7d07dbc2 1796#line 314 "perly.y"
44a8e56a 1797{ CvUNIQUE_on(compcv); /* It's a BEGIN {} */ }
1798break;
1799case 64:
7d07dbc2 1800#line 316 "perly.y"
44a8e56a 1801{ utilize(yyvsp[-6].ival, yyvsp[-5].ival, yyvsp[-3].opval, yyvsp[-2].opval, yyvsp[-1].opval); }
4633a7c4 1802break;
44a8e56a 1803case 65:
7d07dbc2 1804#line 320 "perly.y"
4633a7c4
LW
1805{ yyval.opval = newLOGOP(OP_AND, 0, yyvsp[-2].opval, yyvsp[0].opval); }
1806break;
44a8e56a 1807case 66:
7d07dbc2 1808#line 322 "perly.y"
4633a7c4
LW
1809{ yyval.opval = newLOGOP(yyvsp[-1].ival, 0, yyvsp[-2].opval, yyvsp[0].opval); }
1810break;
44a8e56a 1811case 68:
7d07dbc2 1812#line 327 "perly.y"
4633a7c4
LW
1813{ yyval.opval = yyvsp[-1].opval; }
1814break;
44a8e56a 1815case 69:
7d07dbc2 1816#line 329 "perly.y"
4633a7c4
LW
1817{ yyval.opval = append_elem(OP_LIST, yyvsp[-2].opval, yyvsp[0].opval); }
1818break;
44a8e56a 1819case 71:
7d07dbc2 1820#line 334 "perly.y"
4633a7c4
LW
1821{ yyval.opval = convert(yyvsp[-2].ival, OPf_STACKED,
1822 prepend_elem(OP_LIST, newGVREF(yyvsp[-2].ival,yyvsp[-1].opval), yyvsp[0].opval) ); }
1823break;
44a8e56a 1824case 72:
7d07dbc2 1825#line 337 "perly.y"
4633a7c4
LW
1826{ yyval.opval = convert(yyvsp[-4].ival, OPf_STACKED,
1827 prepend_elem(OP_LIST, newGVREF(yyvsp[-4].ival,yyvsp[-2].opval), yyvsp[-1].opval) ); }
1828break;
44a8e56a 1829case 73:
7d07dbc2 1830#line 340 "perly.y"
4633a7c4
LW
1831{ yyval.opval = convert(OP_ENTERSUB, OPf_STACKED,
1832 append_elem(OP_LIST,
5f05dabc 1833 prepend_elem(OP_LIST, scalar(yyvsp[-5].opval), yyvsp[-1].opval),
4633a7c4
LW
1834 newUNOP(OP_METHOD, 0, yyvsp[-3].opval))); }
1835break;
44a8e56a 1836case 74:
7d07dbc2 1837#line 345 "perly.y"
4633a7c4
LW
1838{ yyval.opval = convert(OP_ENTERSUB, OPf_STACKED,
1839 append_elem(OP_LIST,
1840 prepend_elem(OP_LIST, yyvsp[-1].opval, yyvsp[0].opval),
1841 newUNOP(OP_METHOD, 0, yyvsp[-2].opval))); }
1842break;
44a8e56a 1843case 75:
7d07dbc2 1844#line 350 "perly.y"
4633a7c4
LW
1845{ yyval.opval = convert(OP_ENTERSUB, OPf_STACKED,
1846 append_elem(OP_LIST,
1847 prepend_elem(OP_LIST, yyvsp[-3].opval, yyvsp[-1].opval),
1848 newUNOP(OP_METHOD, 0, yyvsp[-4].opval))); }
1849break;
44a8e56a 1850case 76:
7d07dbc2 1851#line 355 "perly.y"
4633a7c4
LW
1852{ yyval.opval = convert(yyvsp[-1].ival, 0, yyvsp[0].opval); }
1853break;
44a8e56a 1854case 77:
7d07dbc2 1855#line 357 "perly.y"
4633a7c4
LW
1856{ yyval.opval = convert(yyvsp[-3].ival, 0, yyvsp[-1].opval); }
1857break;
44a8e56a 1858case 78:
7d07dbc2 1859#line 359 "perly.y"
44a8e56a 1860{ yyvsp[0].opval = newANONSUB(yyvsp[-1].ival, 0, yyvsp[0].opval); }
1861break;
1862case 79:
7d07dbc2 1863#line 361 "perly.y"
4633a7c4 1864{ yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
44a8e56a 1865 append_elem(OP_LIST,
1866 prepend_elem(OP_LIST, yyvsp[-2].opval, yyvsp[0].opval), yyvsp[-4].opval)); }
4633a7c4 1867break;
44a8e56a 1868case 82:
7d07dbc2 1869#line 371 "perly.y"
4633a7c4
LW
1870{ yyval.opval = newASSIGNOP(OPf_STACKED, yyvsp[-2].opval, yyvsp[-1].ival, yyvsp[0].opval); }
1871break;
44a8e56a 1872case 83:
7d07dbc2 1873#line 373 "perly.y"
4633a7c4
LW
1874{ yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1875break;
44a8e56a 1876case 84:
7d07dbc2 1877#line 375 "perly.y"
4633a7c4
LW
1878{ if (yyvsp[-1].ival != OP_REPEAT)
1879 scalar(yyvsp[-2].opval);
1880 yyval.opval = newBINOP(yyvsp[-1].ival, 0, yyvsp[-2].opval, scalar(yyvsp[0].opval)); }
1881break;
44a8e56a 1882case 85:
7d07dbc2 1883#line 379 "perly.y"
c07a80fd 1884{ yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1885break;
44a8e56a 1886case 86:
7d07dbc2 1887#line 381 "perly.y"
4633a7c4
LW
1888{ yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1889break;
44a8e56a 1890case 87:
7d07dbc2 1891#line 383 "perly.y"
4633a7c4
LW
1892{ yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1893break;
44a8e56a 1894case 88:
7d07dbc2 1895#line 385 "perly.y"
4633a7c4
LW
1896{ yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1897break;
44a8e56a 1898case 89:
7d07dbc2 1899#line 387 "perly.y"
4633a7c4
LW
1900{ yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1901break;
44a8e56a 1902case 90:
7d07dbc2 1903#line 389 "perly.y"
4633a7c4
LW
1904{ yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1905break;
44a8e56a 1906case 91:
7d07dbc2 1907#line 391 "perly.y"
4633a7c4
LW
1908{ yyval.opval = newRANGE(yyvsp[-1].ival, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval));}
1909break;
44a8e56a 1910case 92:
7d07dbc2 1911#line 393 "perly.y"
4633a7c4
LW
1912{ yyval.opval = newLOGOP(OP_AND, 0, yyvsp[-2].opval, yyvsp[0].opval); }
1913break;
44a8e56a 1914case 93:
7d07dbc2 1915#line 395 "perly.y"
4633a7c4
LW
1916{ yyval.opval = newLOGOP(OP_OR, 0, yyvsp[-2].opval, yyvsp[0].opval); }
1917break;
44a8e56a 1918case 94:
7d07dbc2 1919#line 397 "perly.y"
4633a7c4
LW
1920{ yyval.opval = newCONDOP(0, yyvsp[-4].opval, yyvsp[-2].opval, yyvsp[0].opval); }
1921break;
44a8e56a 1922case 95:
7d07dbc2 1923#line 399 "perly.y"
4633a7c4
LW
1924{ yyval.opval = bind_match(yyvsp[-1].ival, yyvsp[-2].opval, yyvsp[0].opval); }
1925break;
44a8e56a 1926case 96:
7d07dbc2 1927#line 402 "perly.y"
4633a7c4
LW
1928{ yyval.opval = newUNOP(OP_NEGATE, 0, scalar(yyvsp[0].opval)); }
1929break;
44a8e56a 1930case 97:
7d07dbc2 1931#line 404 "perly.y"
4633a7c4
LW
1932{ yyval.opval = yyvsp[0].opval; }
1933break;
44a8e56a 1934case 98:
7d07dbc2 1935#line 406 "perly.y"
4633a7c4
LW
1936{ yyval.opval = newUNOP(OP_NOT, 0, scalar(yyvsp[0].opval)); }
1937break;
44a8e56a 1938case 99:
7d07dbc2 1939#line 408 "perly.y"
4633a7c4
LW
1940{ yyval.opval = newUNOP(OP_COMPLEMENT, 0, scalar(yyvsp[0].opval));}
1941break;
44a8e56a 1942case 100:
7d07dbc2 1943#line 410 "perly.y"
4633a7c4
LW
1944{ yyval.opval = newUNOP(OP_REFGEN, 0, mod(yyvsp[0].opval,OP_REFGEN)); }
1945break;
44a8e56a 1946case 101:
7d07dbc2 1947#line 412 "perly.y"
4633a7c4
LW
1948{ yyval.opval = newUNOP(OP_POSTINC, 0,
1949 mod(scalar(yyvsp[-1].opval), OP_POSTINC)); }
1950break;
44a8e56a 1951case 102:
7d07dbc2 1952#line 415 "perly.y"
4633a7c4
LW
1953{ yyval.opval = newUNOP(OP_POSTDEC, 0,
1954 mod(scalar(yyvsp[-1].opval), OP_POSTDEC)); }
1955break;
44a8e56a 1956case 103:
7d07dbc2 1957#line 418 "perly.y"
4633a7c4
LW
1958{ yyval.opval = newUNOP(OP_PREINC, 0,
1959 mod(scalar(yyvsp[0].opval), OP_PREINC)); }
1960break;
44a8e56a 1961case 104:
7d07dbc2 1962#line 421 "perly.y"
4633a7c4
LW
1963{ yyval.opval = newUNOP(OP_PREDEC, 0,
1964 mod(scalar(yyvsp[0].opval), OP_PREDEC)); }
1965break;
44a8e56a 1966case 105:
7d07dbc2 1967#line 424 "perly.y"
4633a7c4
LW
1968{ yyval.opval = localize(yyvsp[0].opval,yyvsp[-1].ival); }
1969break;
44a8e56a 1970case 106:
7d07dbc2 1971#line 426 "perly.y"
4633a7c4
LW
1972{ yyval.opval = sawparens(yyvsp[-1].opval); }
1973break;
44a8e56a 1974case 107:
7d07dbc2 1975#line 428 "perly.y"
4633a7c4
LW
1976{ yyval.opval = sawparens(newNULLLIST()); }
1977break;
44a8e56a 1978case 108:
7d07dbc2 1979#line 430 "perly.y"
4633a7c4
LW
1980{ yyval.opval = newANONLIST(yyvsp[-1].opval); }
1981break;
44a8e56a 1982case 109:
7d07dbc2 1983#line 432 "perly.y"
4633a7c4
LW
1984{ yyval.opval = newANONLIST(Nullop); }
1985break;
44a8e56a 1986case 110:
7d07dbc2 1987#line 434 "perly.y"
4633a7c4
LW
1988{ yyval.opval = newANONHASH(yyvsp[-2].opval); }
1989break;
44a8e56a 1990case 111:
7d07dbc2 1991#line 436 "perly.y"
4633a7c4
LW
1992{ yyval.opval = newANONHASH(Nullop); }
1993break;
44a8e56a 1994case 112:
7d07dbc2 1995#line 438 "perly.y"
4633a7c4
LW
1996{ yyval.opval = newANONSUB(yyvsp[-2].ival, yyvsp[-1].opval, yyvsp[0].opval); }
1997break;
44a8e56a 1998case 113:
7d07dbc2 1999#line 440 "perly.y"
4633a7c4
LW
2000{ yyval.opval = yyvsp[0].opval; }
2001break;
44a8e56a 2002case 114:
7d07dbc2 2003#line 442 "perly.y"
c07a80fd 2004{ yyval.opval = newBINOP(OP_GELEM, 0, newGVREF(0,yyvsp[-4].opval), yyvsp[-2].opval); }
2005break;
44a8e56a 2006case 115:
7d07dbc2 2007#line 444 "perly.y"
4633a7c4
LW
2008{ yyval.opval = yyvsp[0].opval; }
2009break;
44a8e56a 2010case 116:
7d07dbc2 2011#line 446 "perly.y"
4633a7c4
LW
2012{ yyval.opval = newBINOP(OP_AELEM, 0, oopsAV(yyvsp[-3].opval), scalar(yyvsp[-1].opval)); }
2013break;
44a8e56a 2014case 117:
7d07dbc2 2015#line 448 "perly.y"
4633a7c4
LW
2016{ yyval.opval = newBINOP(OP_AELEM, 0,
2017 ref(newAVREF(yyvsp[-4].opval),OP_RV2AV),
2018 scalar(yyvsp[-1].opval));}
2019break;
44a8e56a 2020case 118:
7d07dbc2 2021#line 452 "perly.y"
4633a7c4
LW
2022{ assertref(yyvsp[-3].opval); yyval.opval = newBINOP(OP_AELEM, 0,
2023 ref(newAVREF(yyvsp[-3].opval),OP_RV2AV),
2024 scalar(yyvsp[-1].opval));}
2025break;
44a8e56a 2026case 119:
7d07dbc2 2027#line 456 "perly.y"
4633a7c4
LW
2028{ yyval.opval = yyvsp[0].opval; }
2029break;
44a8e56a 2030case 120:
7d07dbc2 2031#line 458 "perly.y"
4633a7c4
LW
2032{ yyval.opval = yyvsp[0].opval; }
2033break;
44a8e56a 2034case 121:
7d07dbc2 2035#line 460 "perly.y"
4633a7c4
LW
2036{ yyval.opval = newUNOP(OP_AV2ARYLEN, 0, ref(yyvsp[0].opval, OP_AV2ARYLEN));}
2037break;
44a8e56a 2038case 122:
7d07dbc2 2039#line 462 "perly.y"
4633a7c4
LW
2040{ yyval.opval = newBINOP(OP_HELEM, 0, oopsHV(yyvsp[-4].opval), jmaybe(yyvsp[-2].opval));
2041 expect = XOPERATOR; }
2042break;
44a8e56a 2043case 123:
7d07dbc2 2044#line 465 "perly.y"
4633a7c4
LW
2045{ yyval.opval = newBINOP(OP_HELEM, 0,
2046 ref(newHVREF(yyvsp[-5].opval),OP_RV2HV),
2047 jmaybe(yyvsp[-2].opval));
2048 expect = XOPERATOR; }
2049break;
44a8e56a 2050case 124:
7d07dbc2 2051#line 470 "perly.y"
4633a7c4
LW
2052{ assertref(yyvsp[-4].opval); yyval.opval = newBINOP(OP_HELEM, 0,
2053 ref(newHVREF(yyvsp[-4].opval),OP_RV2HV),
2054 jmaybe(yyvsp[-2].opval));
2055 expect = XOPERATOR; }
2056break;
44a8e56a 2057case 125:
7d07dbc2 2058#line 475 "perly.y"
4633a7c4
LW
2059{ yyval.opval = newSLICEOP(0, yyvsp[-1].opval, yyvsp[-4].opval); }
2060break;
44a8e56a 2061case 126:
7d07dbc2 2062#line 477 "perly.y"
4633a7c4
LW
2063{ yyval.opval = newSLICEOP(0, yyvsp[-1].opval, Nullop); }
2064break;
44a8e56a 2065case 127:
7d07dbc2 2066#line 479 "perly.y"
4633a7c4
LW
2067{ yyval.opval = prepend_elem(OP_ASLICE,
2068 newOP(OP_PUSHMARK, 0),
2069 newLISTOP(OP_ASLICE, 0,
2070 list(yyvsp[-1].opval),
2071 ref(yyvsp[-3].opval, OP_ASLICE))); }
2072break;
44a8e56a 2073case 128:
7d07dbc2 2074#line 485 "perly.y"
4633a7c4
LW
2075{ yyval.opval = prepend_elem(OP_HSLICE,
2076 newOP(OP_PUSHMARK, 0),
2077 newLISTOP(OP_HSLICE, 0,
2078 list(yyvsp[-2].opval),
2079 ref(oopsHV(yyvsp[-4].opval), OP_HSLICE)));
2080 expect = XOPERATOR; }
2081break;
44a8e56a 2082case 129:
7d07dbc2 2083#line 492 "perly.y"
4633a7c4
LW
2084{ yyval.opval = yyvsp[0].opval; }
2085break;
44a8e56a 2086case 130:
7d07dbc2 2087#line 494 "perly.y"
c07a80fd 2088{ yyval.opval = newUNOP(OP_ENTERSUB, 0, scalar(yyvsp[0].opval)); }
4633a7c4 2089break;
44a8e56a 2090case 131:
7d07dbc2 2091#line 496 "perly.y"
4633a7c4
LW
2092{ yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED, scalar(yyvsp[-2].opval)); }
2093break;
44a8e56a 2094case 132:
7d07dbc2 2095#line 498 "perly.y"
4633a7c4
LW
2096{ yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2097 append_elem(OP_LIST, yyvsp[-1].opval, scalar(yyvsp[-3].opval))); }
2098break;
44a8e56a 2099case 133:
7d07dbc2 2100#line 501 "perly.y"
4633a7c4 2101{ yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
a5f75d66 2102 append_elem(OP_LIST, yyvsp[0].opval, scalar(yyvsp[-1].opval))); }
4633a7c4 2103break;
44a8e56a 2104case 134:
7d07dbc2 2105#line 504 "perly.y"
4633a7c4
LW
2106{ yyval.opval = newUNOP(OP_DOFILE, 0, scalar(yyvsp[0].opval)); }
2107break;
44a8e56a 2108case 135:
7d07dbc2 2109#line 506 "perly.y"
4633a7c4
LW
2110{ yyval.opval = newUNOP(OP_NULL, OPf_SPECIAL, scope(yyvsp[0].opval)); }
2111break;
44a8e56a 2112case 136:
7d07dbc2 2113#line 508 "perly.y"
c07a80fd 2114{ yyval.opval = newUNOP(OP_ENTERSUB,
2115 OPf_SPECIAL|OPf_STACKED,
4633a7c4 2116 prepend_elem(OP_LIST,
c07a80fd 2117 scalar(newCVREF(
2118 (OPpENTERSUB_AMPER<<8),
2119 scalar(yyvsp[-2].opval)
2120 )),Nullop)); dep();}
4633a7c4 2121break;
44a8e56a 2122case 137:
7d07dbc2 2123#line 516 "perly.y"
c07a80fd 2124{ yyval.opval = newUNOP(OP_ENTERSUB,
2125 OPf_SPECIAL|OPf_STACKED,
4633a7c4
LW
2126 append_elem(OP_LIST,
2127 yyvsp[-1].opval,
c07a80fd 2128 scalar(newCVREF(
2129 (OPpENTERSUB_AMPER<<8),
2130 scalar(yyvsp[-3].opval)
2131 )))); dep();}
4633a7c4 2132break;
44a8e56a 2133case 138:
7d07dbc2 2134#line 525 "perly.y"
4633a7c4
LW
2135{ yyval.opval = newUNOP(OP_ENTERSUB, OPf_SPECIAL|OPf_STACKED,
2136 prepend_elem(OP_LIST,
c07a80fd 2137 scalar(newCVREF(0,scalar(yyvsp[-2].opval))), Nullop)); dep();}
4633a7c4 2138break;
44a8e56a 2139case 139:
7d07dbc2 2140#line 529 "perly.y"
4633a7c4
LW
2141{ yyval.opval = newUNOP(OP_ENTERSUB, OPf_SPECIAL|OPf_STACKED,
2142 prepend_elem(OP_LIST,
2143 yyvsp[-1].opval,
c07a80fd 2144 scalar(newCVREF(0,scalar(yyvsp[-3].opval))))); dep();}
4633a7c4 2145break;
44a8e56a 2146case 140:
7d07dbc2 2147#line 534 "perly.y"
878e08df 2148{ yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2149 newCVREF(0, scalar(yyvsp[-3].opval))); }
4633a7c4 2150break;
44a8e56a 2151case 141:
7d07dbc2 2152#line 537 "perly.y"
878e08df 2153{ yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2154 append_elem(OP_LIST, yyvsp[-1].opval,
2155 newCVREF(0, scalar(yyvsp[-4].opval)))); }
4633a7c4 2156break;
44a8e56a 2157case 142:
7d07dbc2 2158#line 541 "perly.y"
878e08df 2159{ yyval.opval = newOP(yyvsp[0].ival, OPf_SPECIAL);
2160 hints |= HINT_BLOCK_SCOPE; }
4633a7c4 2161break;
44a8e56a 2162case 143:
7d07dbc2 2163#line 544 "perly.y"
878e08df 2164{ yyval.opval = newLOOPEX(yyvsp[-1].ival,yyvsp[0].opval); }
4633a7c4 2165break;
44a8e56a 2166case 144:
7d07dbc2 2167#line 546 "perly.y"
878e08df 2168{ yyval.opval = newUNOP(OP_NOT, 0, scalar(yyvsp[0].opval)); }
4633a7c4 2169break;
44a8e56a 2170case 145:
7d07dbc2 2171#line 548 "perly.y"
878e08df 2172{ yyval.opval = newOP(yyvsp[0].ival, 0); }
4633a7c4 2173break;
44a8e56a 2174case 146:
7d07dbc2 2175#line 550 "perly.y"
878e08df 2176{ yyval.opval = newUNOP(yyvsp[-1].ival, 0, yyvsp[0].opval); }
2177break;
2178case 147:
7d07dbc2 2179#line 552 "perly.y"
878e08df 2180{ yyval.opval = newUNOP(yyvsp[-1].ival, 0, yyvsp[0].opval); }
2181break;
2182case 148:
7d07dbc2 2183#line 554 "perly.y"
c07a80fd 2184{ yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2185 append_elem(OP_LIST, yyvsp[0].opval, scalar(yyvsp[-1].opval))); }
4633a7c4 2186break;
878e08df 2187case 149:
7d07dbc2 2188#line 557 "perly.y"
c07a80fd 2189{ yyval.opval = newOP(yyvsp[0].ival, 0); }
4633a7c4 2190break;
878e08df 2191case 150:
7d07dbc2 2192#line 559 "perly.y"
c07a80fd 2193{ yyval.opval = newOP(yyvsp[-2].ival, 0); }
4633a7c4 2194break;
878e08df 2195case 151:
7d07dbc2 2196#line 561 "perly.y"
44a8e56a 2197{ yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
c07a80fd 2198 scalar(yyvsp[0].opval)); }
4633a7c4 2199break;
878e08df 2200case 152:
7d07dbc2 2201#line 564 "perly.y"
c07a80fd 2202{ yyval.opval = newOP(yyvsp[-2].ival, OPf_SPECIAL); }
4633a7c4 2203break;
878e08df 2204case 153:
7d07dbc2 2205#line 566 "perly.y"
c07a80fd 2206{ yyval.opval = newUNOP(yyvsp[-3].ival, 0, yyvsp[-1].opval); }
4633a7c4 2207break;
878e08df 2208case 154:
7d07dbc2 2209#line 568 "perly.y"
c07a80fd 2210{ yyval.opval = pmruntime(yyvsp[-3].opval, yyvsp[-1].opval, Nullop); }
4633a7c4 2211break;
878e08df 2212case 155:
7d07dbc2 2213#line 570 "perly.y"
c07a80fd 2214{ yyval.opval = pmruntime(yyvsp[-5].opval, yyvsp[-3].opval, yyvsp[-1].opval); }
4633a7c4 2215break;
44a8e56a 2216case 158:
7d07dbc2 2217#line 576 "perly.y"
c07a80fd 2218{ yyval.opval = Nullop; }
4633a7c4 2219break;
44a8e56a 2220case 159:
7d07dbc2 2221#line 578 "perly.y"
c07a80fd 2222{ yyval.opval = yyvsp[0].opval; }
4633a7c4 2223break;
44a8e56a 2224case 160:
7d07dbc2 2225#line 582 "perly.y"
878e08df 2226{ yyval.opval = Nullop; }
4633a7c4 2227break;
44a8e56a 2228case 161:
7d07dbc2 2229#line 584 "perly.y"
878e08df 2230{ yyval.opval = yyvsp[0].opval; }
5f05dabc 2231break;
44a8e56a 2232case 162:
7d07dbc2 2233#line 586 "perly.y"
878e08df 2234{ yyval.opval = yyvsp[-1].opval; }
5f05dabc 2235break;
44a8e56a 2236case 163:
7d07dbc2 2237#line 589 "perly.y"
878e08df 2238{ yyval.ival = 0; }
5f05dabc 2239break;
44a8e56a 2240case 164:
7d07dbc2 2241#line 590 "perly.y"
878e08df 2242{ yyval.ival = 1; }
4633a7c4 2243break;
44a8e56a 2244case 165:
7d07dbc2 2245#line 594 "perly.y"
878e08df 2246{ in_my = 0; yyval.opval = my(yyvsp[0].opval); }
4633a7c4 2247break;
44a8e56a 2248case 166:
7d07dbc2 2249#line 598 "perly.y"
878e08df 2250{ yyval.opval = newCVREF(yyvsp[-1].ival,yyvsp[0].opval); }
4633a7c4 2251break;
44a8e56a 2252case 167:
7d07dbc2 2253#line 602 "perly.y"
878e08df 2254{ yyval.opval = newSVREF(yyvsp[0].opval); }
4633a7c4 2255break;
44a8e56a 2256case 168:
7d07dbc2 2257#line 606 "perly.y"
c07a80fd 2258{ yyval.opval = newAVREF(yyvsp[0].opval); }
4633a7c4 2259break;
44a8e56a 2260case 169:
7d07dbc2 2261#line 610 "perly.y"
878e08df 2262{ yyval.opval = newHVREF(yyvsp[0].opval); }
4633a7c4 2263break;
44a8e56a 2264case 170:
7d07dbc2 2265#line 614 "perly.y"
878e08df 2266{ yyval.opval = newAVREF(yyvsp[0].opval); }
4633a7c4 2267break;
44a8e56a 2268case 171:
7d07dbc2 2269#line 618 "perly.y"
878e08df 2270{ yyval.opval = newGVREF(0,yyvsp[0].opval); }
4633a7c4 2271break;
44a8e56a 2272case 172:
7d07dbc2 2273#line 622 "perly.y"
878e08df 2274{ yyval.opval = scalar(yyvsp[0].opval); }
c07a80fd 2275break;
44a8e56a 2276case 173:
7d07dbc2 2277#line 624 "perly.y"
878e08df 2278{ yyval.opval = scalar(yyvsp[0].opval); }
2279break;
2280case 174:
7d07dbc2 2281#line 626 "perly.y"
878e08df 2282{ yyval.opval = scope(yyvsp[0].opval); }
2283break;
2284case 175:
7d07dbc2 2285#line 629 "perly.y"
4633a7c4
LW
2286{ yyval.opval = yyvsp[0].opval; }
2287break;
7d07dbc2 2288#line 2272 "perly.c"
4633a7c4
LW
2289 }
2290 yyssp -= yym;
2291 yystate = *yyssp;
2292 yyvsp -= yym;
2293 yym = yylhs[yyn];
2294 if (yystate == 0 && yym == 0)
2295 {
2296#if YYDEBUG
2297 if (yydebug)
760ac839 2298 PerlIO_printf(Perl_debug_log,
4633a7c4
LW
2299 "yydebug: after reduction, shifting from state 0 to state %d\n",
2300 YYFINAL);
2301#endif
2302 yystate = YYFINAL;
2303 *++yyssp = YYFINAL;
2304 *++yyvsp = yyval;
2305 if (yychar < 0)
2306 {
2307 if ((yychar = yylex()) < 0) yychar = 0;
2308#if YYDEBUG
2309 if (yydebug)
2310 {
2311 yys = 0;
2312 if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
2313 if (!yys) yys = "illegal-symbol";
760ac839 2314 PerlIO_printf(Perl_debug_log, "yydebug: state %d, reading %d (%s)\n",
4633a7c4
LW
2315 YYFINAL, yychar, yys);
2316 }
2317#endif
2318 }
2319 if (yychar == 0) goto yyaccept;
2320 goto yyloop;
2321 }
2322 if ((yyn = yygindex[yym]) && (yyn += yystate) >= 0 &&
2323 yyn <= YYTABLESIZE && yycheck[yyn] == yystate)
2324 yystate = yytable[yyn];
2325 else
2326 yystate = yydgoto[yym];
2327#if YYDEBUG
2328 if (yydebug)
760ac839 2329 PerlIO_printf(Perl_debug_log,
4633a7c4
LW
2330 "yydebug: after reduction, shifting from state %d to state %d\n",
2331 *yyssp, yystate);
2332#endif
2333 if (yyssp >= yyss + yystacksize - 1)
2334 {
2335 /*
2336 ** reallocate and recover. Note that pointers
2337 ** have to be reset, or bad things will happen
2338 */
2339 int yyps_index = (yyssp - yyss);
2340 int yypv_index = (yyvsp - yyvs);
2341 yystacksize += YYSTACKSIZE;
2342 ysave->yyvs = yyvs =
2343 (YYSTYPE*)realloc((char*)yyvs,yystacksize * sizeof(YYSTYPE));
2344 ysave->yyss = yyss =
2345 (short*)realloc((char*)yyss,yystacksize * sizeof(short));
2346 if (!yyvs || !yyss)
2347 goto yyoverflow;
2348 yyssp = yyss + yyps_index;
2349 yyvsp = yyvs + yypv_index;
2350 }
2351 *++yyssp = yystate;
2352 *++yyvsp = yyval;
2353 goto yyloop;
2354yyoverflow:
2355 yyerror("Out of memory for yacc stack");
2356yyabort:
2357 retval = 1;
2358yyaccept:
2359 return retval;
2360}