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