This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
better {local,gm}time documentation (from Mark-Jason Dominus)
[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
IZ
1389 struct ysv *ysave;
1390 New(73, ysave, 1, struct ysv);
e1f15930 1391 SAVEDESTRUCTOR_X(yydestruct, ysave);
4633a7c4
LW
1392 ysave->oldyydebug = yydebug;
1393 ysave->oldyynerrs = yynerrs;
1394 ysave->oldyyerrflag = yyerrflag;
1395 ysave->oldyychar = yychar;
1396 ysave->oldyyval = yyval;
1397 ysave->oldyylval = yylval;
09bef843 1398
4633a7c4
LW
1399#if YYDEBUG
1400 if (yys = getenv("YYDEBUG"))
1401 {
1402 yyn = *yys;
1403 if (yyn >= '0' && yyn <= '9')
1404 yydebug = yyn - '0';
1405 }
fc1ce8cc 1406 else SETERRNO(0,SS$_NORMAL);
4633a7c4
LW
1407#endif
1408
1409 yynerrs = 0;
1410 yyerrflag = 0;
1411 yychar = (-1);
1412
1413 /*
1414 ** Initialize private stacks (yyparse may be called from an action)
1415 */
8c52afec
IZ
1416 New(73, yyss, yystacksize, short);
1417 New(73, yyvs, yystacksize, YYSTYPE);
1418 ysave->yyss = yyss;
1419 ysave->yyvs = yyvs;
4633a7c4
LW
1420 if (!yyvs || !yyss)
1421 goto yyoverflow;
1422
1423 yyssp = yyss;
1424 yyvsp = yyvs;
1425 *yyssp = yystate = 0;
1426
1427yyloop:
1428 if (yyn = yydefred[yystate]) goto yyreduce;
1429 if (yychar < 0)
1430 {
1431 if ((yychar = yylex()) < 0) yychar = 0;
1432#if YYDEBUG
1433 if (yydebug)
1434 {
1435 yys = 0;
1436 if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
1437 if (!yys) yys = "illegal-symbol";
09bef843 1438 PerlIO_printf(Perl_debug_log, "yydebug: state %d, reading %d (%s)\n", yystate,
4633a7c4
LW
1439 yychar, yys);
1440 }
1441#endif
1442 }
1443 if ((yyn = yysindex[yystate]) && (yyn += yychar) >= 0 &&
1444 yyn <= YYTABLESIZE && yycheck[yyn] == yychar)
1445 {
1446#if YYDEBUG
1447 if (yydebug)
17f28c40 1448 PerlIO_printf(Perl_debug_log, "yydebug: state %d, shifting to state %d\n",
4633a7c4
LW
1449 yystate, yytable[yyn]);
1450#endif
1451 if (yyssp >= yyss + yystacksize - 1)
1452 {
1453 /*
1454 ** reallocate and recover. Note that pointers
1455 ** have to be reset, or bad things will happen
1456 */
1457 int yyps_index = (yyssp - yyss);
1458 int yypv_index = (yyvsp - yyvs);
1459 yystacksize += YYSTACKSIZE;
09bef843
SB
1460 ysave->yyvs = Renew(yyvs, yystacksize, YYSTYPE);
1461 ysave->yyss = Renew(yyss, yystacksize, short);
4633a7c4
LW
1462 if (!yyvs || !yyss)
1463 goto yyoverflow;
1464 yyssp = yyss + yyps_index;
1465 yyvsp = yyvs + yypv_index;
1466 }
1467 *++yyssp = yystate = yytable[yyn];
1468 *++yyvsp = yylval;
1469 yychar = (-1);
1470 if (yyerrflag > 0) --yyerrflag;
1471 goto yyloop;
1472 }
1473 if ((yyn = yyrindex[yystate]) && (yyn += yychar) >= 0 &&
1474 yyn <= YYTABLESIZE && yycheck[yyn] == yychar)
1475 {
1476 yyn = yytable[yyn];
1477 goto yyreduce;
1478 }
1479 if (yyerrflag) goto yyinrecovery;
1480#ifdef lint
1481 goto yynewerror;
1482#endif
1483yynewerror:
1484 yyerror("syntax error");
1485#ifdef lint
1486 goto yyerrlab;
1487#endif
1488yyerrlab:
1489 ++yynerrs;
1490yyinrecovery:
1491 if (yyerrflag < 3)
1492 {
1493 yyerrflag = 3;
1494 for (;;)
1495 {
1496 if ((yyn = yysindex[*yyssp]) && (yyn += YYERRCODE) >= 0 &&
1497 yyn <= YYTABLESIZE && yycheck[yyn] == YYERRCODE)
1498 {
1499#if YYDEBUG
1500 if (yydebug)
17f28c40 1501 PerlIO_printf(Perl_debug_log,
09bef843
SB
1502 "yydebug: state %d, error recovery shifting to state %d\n",
1503 *yyssp, yytable[yyn]);
4633a7c4
LW
1504#endif
1505 if (yyssp >= yyss + yystacksize - 1)
1506 {
1507 /*
1508 ** reallocate and recover. Note that pointers
1509 ** have to be reset, or bad things will happen
1510 */
1511 int yyps_index = (yyssp - yyss);
1512 int yypv_index = (yyvsp - yyvs);
1513 yystacksize += YYSTACKSIZE;
09bef843
SB
1514 ysave->yyvs = Renew(yyvs, yystacksize, YYSTYPE);
1515 ysave->yyss = Renew(yyss, yystacksize, short);
4633a7c4
LW
1516 if (!yyvs || !yyss)
1517 goto yyoverflow;
1518 yyssp = yyss + yyps_index;
1519 yyvsp = yyvs + yypv_index;
1520 }
1521 *++yyssp = yystate = yytable[yyn];
1522 *++yyvsp = yylval;
1523 goto yyloop;
1524 }
1525 else
1526 {
1527#if YYDEBUG
1528 if (yydebug)
09bef843
SB
1529 PerlIO_printf(Perl_debug_log, "yydebug: error recovery discarding state %d\n",
1530 *yyssp);
4633a7c4
LW
1531#endif
1532 if (yyssp <= yyss) goto yyabort;
1533 --yyssp;
1534 --yyvsp;
1535 }
1536 }
1537 }
1538 else
1539 {
1540 if (yychar == 0) goto yyabort;
1541#if YYDEBUG
1542 if (yydebug)
1543 {
1544 yys = 0;
1545 if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
1546 if (!yys) yys = "illegal-symbol";
09bef843
SB
1547 PerlIO_printf(Perl_debug_log, "yydebug: state %d, error recovery discards token %d (%s)\n",
1548 yystate, yychar, yys);
4633a7c4
LW
1549 }
1550#endif
1551 yychar = (-1);
1552 goto yyloop;
1553 }
1554yyreduce:
1555#if YYDEBUG
1556 if (yydebug)
17f28c40 1557 PerlIO_printf(Perl_debug_log, "yydebug: state %d, reducing by rule %d (%s)\n",
4633a7c4
LW
1558 yystate, yyn, yyrule[yyn]);
1559#endif
1560 yym = yylen[yyn];
1561 yyval = yyvsp[1-yym];
1562 switch (yyn)
1563 {
1564case 1:
09bef843 1565#line 125 "perly.y"
4633a7c4
LW
1566{
1567#if defined(YYDEBUG) && defined(DEBUGGING)
954eb2b5 1568 yydebug = (PL_debug & 1);
4633a7c4 1569#endif
954eb2b5 1570 PL_expect = XSTATE;
4633a7c4
LW
1571 }
1572break;
1573case 2:
09bef843 1574#line 132 "perly.y"
4633a7c4
LW
1575{ newPROG(yyvsp[0].opval); }
1576break;
1577case 3:
09bef843 1578#line 136 "perly.y"
954eb2b5
NIS
1579{ if (PL_copline > (line_t)yyvsp[-3].ival)
1580 PL_copline = yyvsp[-3].ival;
5f05dabc 1581 yyval.opval = block_end(yyvsp[-2].ival, yyvsp[-1].opval); }
4633a7c4
LW
1582break;
1583case 4:
09bef843 1584#line 142 "perly.y"
5f05dabc 1585{ yyval.ival = block_start(TRUE); }
4633a7c4
LW
1586break;
1587case 5:
09bef843 1588#line 146 "perly.y"
954eb2b5
NIS
1589{ if (PL_copline > (line_t)yyvsp[-3].ival)
1590 PL_copline = yyvsp[-3].ival;
5f05dabc 1591 yyval.opval = block_end(yyvsp[-2].ival, yyvsp[-1].opval); }
4633a7c4
LW
1592break;
1593case 6:
09bef843 1594#line 152 "perly.y"
5f05dabc 1595{ yyval.ival = block_start(FALSE); }
4633a7c4
LW
1596break;
1597case 7:
09bef843 1598#line 156 "perly.y"
5f05dabc 1599{ yyval.opval = Nullop; }
1600break;
1601case 8:
09bef843 1602#line 158 "perly.y"
5f05dabc 1603{ yyval.opval = yyvsp[-1].opval; }
1604break;
1605case 9:
09bef843 1606#line 160 "perly.y"
4633a7c4
LW
1607{ yyval.opval = append_list(OP_LINESEQ,
1608 (LISTOP*)yyvsp[-1].opval, (LISTOP*)yyvsp[0].opval);
954eb2b5
NIS
1609 PL_pad_reset_pending = TRUE;
1610 if (yyvsp[-1].opval && yyvsp[0].opval) PL_hints |= HINT_BLOCK_SCOPE; }
4633a7c4 1611break;
5f05dabc 1612case 10:
09bef843 1613#line 167 "perly.y"
4633a7c4
LW
1614{ yyval.opval = newSTATEOP(0, yyvsp[-1].pval, yyvsp[0].opval); }
1615break;
5f05dabc 1616case 12:
09bef843 1617#line 170 "perly.y"
4633a7c4
LW
1618{ if (yyvsp[-1].pval != Nullch) {
1619 yyval.opval = newSTATEOP(0, yyvsp[-1].pval, newOP(OP_NULL, 0));
1620 }
1621 else {
1622 yyval.opval = Nullop;
954eb2b5 1623 PL_copline = NOLINE;
4633a7c4 1624 }
954eb2b5 1625 PL_expect = XSTATE; }
4633a7c4 1626break;
5f05dabc 1627case 13:
09bef843 1628#line 179 "perly.y"
4633a7c4 1629{ yyval.opval = newSTATEOP(0, yyvsp[-2].pval, yyvsp[-1].opval);
954eb2b5 1630 PL_expect = XSTATE; }
4633a7c4 1631break;
4633a7c4 1632case 14:
09bef843 1633#line 184 "perly.y"
5f05dabc 1634{ yyval.opval = Nullop; }
4633a7c4
LW
1635break;
1636case 15:
09bef843 1637#line 186 "perly.y"
5f05dabc 1638{ yyval.opval = yyvsp[0].opval; }
4633a7c4
LW
1639break;
1640case 16:
09bef843 1641#line 188 "perly.y"
5f05dabc 1642{ yyval.opval = newLOGOP(OP_AND, 0, yyvsp[0].opval, yyvsp[-2].opval); }
4633a7c4
LW
1643break;
1644case 17:
09bef843 1645#line 190 "perly.y"
5f05dabc 1646{ yyval.opval = newLOGOP(OP_OR, 0, yyvsp[0].opval, yyvsp[-2].opval); }
4633a7c4
LW
1647break;
1648case 18:
09bef843 1649#line 192 "perly.y"
5f05dabc 1650{ yyval.opval = newLOOPOP(OPf_PARENS, 1, scalar(yyvsp[0].opval), yyvsp[-2].opval); }
4633a7c4
LW
1651break;
1652case 19:
09bef843 1653#line 194 "perly.y"
5f05dabc 1654{ yyval.opval = newLOOPOP(OPf_PARENS, 1, yyvsp[0].opval, yyvsp[-2].opval);}
4633a7c4
LW
1655break;
1656case 20:
09bef843 1657#line 196 "perly.y"
ecca16b0
CS
1658{ yyval.opval = newFOROP(0, Nullch, yyvsp[-1].ival,
1659 Nullop, yyvsp[0].opval, yyvsp[-2].opval, Nullop); }
4633a7c4
LW
1660break;
1661case 21:
09bef843 1662#line 201 "perly.y"
ecca16b0 1663{ yyval.opval = Nullop; }
4633a7c4
LW
1664break;
1665case 22:
09bef843 1666#line 203 "perly.y"
e1f15930 1667{ (yyvsp[0].opval)->op_flags |= OPf_PARENS; yyval.opval = scope(yyvsp[0].opval); }
ecca16b0
CS
1668break;
1669case 23:
09bef843 1670#line 205 "perly.y"
954eb2b5 1671{ PL_copline = yyvsp[-5].ival;
fad39ff1 1672 yyval.opval = newCONDOP(0, yyvsp[-3].opval, scope(yyvsp[-1].opval), yyvsp[0].opval);
954eb2b5 1673 PL_hints |= HINT_BLOCK_SCOPE; }
4633a7c4 1674break;
ecca16b0 1675case 24:
09bef843 1676#line 211 "perly.y"
954eb2b5 1677{ PL_copline = yyvsp[-6].ival;
5f05dabc 1678 yyval.opval = block_end(yyvsp[-4].ival,
1679 newCONDOP(0, yyvsp[-3].opval, scope(yyvsp[-1].opval), yyvsp[0].opval)); }
1680break;
ecca16b0 1681case 25:
09bef843 1682#line 215 "perly.y"
954eb2b5 1683{ PL_copline = yyvsp[-6].ival;
5f05dabc 1684 yyval.opval = block_end(yyvsp[-4].ival,
1685 newCONDOP(0, yyvsp[-3].opval, scope(yyvsp[-1].opval), yyvsp[0].opval)); }
1686break;
ecca16b0 1687case 26:
09bef843 1688#line 221 "perly.y"
71be2cbc 1689{ yyval.opval = Nullop; }
4633a7c4 1690break;
ecca16b0 1691case 27:
09bef843 1692#line 223 "perly.y"
5f05dabc 1693{ yyval.opval = scope(yyvsp[0].opval); }
4633a7c4 1694break;
ecca16b0 1695case 28:
09bef843 1696#line 227 "perly.y"
954eb2b5 1697{ PL_copline = yyvsp[-6].ival;
5f05dabc 1698 yyval.opval = block_end(yyvsp[-4].ival,
1699 newSTATEOP(0, yyvsp[-7].pval,
1700 newWHILEOP(0, 1, (LOOP*)Nullop,
fb73857a 1701 yyvsp[-6].ival, yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval))); }
4633a7c4 1702break;
ecca16b0 1703case 29:
09bef843 1704#line 233 "perly.y"
954eb2b5 1705{ PL_copline = yyvsp[-6].ival;
5f05dabc 1706 yyval.opval = block_end(yyvsp[-4].ival,
1707 newSTATEOP(0, yyvsp[-7].pval,
1708 newWHILEOP(0, 1, (LOOP*)Nullop,
fb73857a 1709 yyvsp[-6].ival, yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval))); }
4633a7c4 1710break;
ecca16b0 1711case 30:
09bef843 1712#line 239 "perly.y"
5f05dabc 1713{ yyval.opval = block_end(yyvsp[-6].ival,
1714 newFOROP(0, yyvsp[-9].pval, yyvsp[-8].ival, yyvsp[-5].opval, yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval)); }
4633a7c4 1715break;
ecca16b0 1716case 31:
09bef843 1717#line 242 "perly.y"
5f05dabc 1718{ yyval.opval = block_end(yyvsp[-4].ival,
1719 newFOROP(0, yyvsp[-8].pval, yyvsp[-7].ival, mod(yyvsp[-6].opval, OP_ENTERLOOP),
1720 yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval)); }
1721break;
ecca16b0 1722case 32:
09bef843 1723#line 246 "perly.y"
5f05dabc 1724{ yyval.opval = block_end(yyvsp[-4].ival,
1725 newFOROP(0, yyvsp[-7].pval, yyvsp[-6].ival, Nullop, yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval)); }
1726break;
ecca16b0 1727case 33:
09bef843 1728#line 250 "perly.y"
fb73857a 1729{ OP *forop = append_elem(OP_LINESEQ,
1730 scalar(yyvsp[-6].opval),
1731 newWHILEOP(0, 1, (LOOP*)Nullop,
1732 yyvsp[-9].ival, scalar(yyvsp[-4].opval),
1733 yyvsp[0].opval, scalar(yyvsp[-2].opval)));
954eb2b5 1734 PL_copline = yyvsp[-9].ival;
fb73857a 1735 yyval.opval = block_end(yyvsp[-7].ival, newSTATEOP(0, yyvsp[-10].pval, forop)); }
5f05dabc 1736break;
ecca16b0 1737case 34:
09bef843 1738#line 258 "perly.y"
fb73857a 1739{ yyval.opval = newSTATEOP(0, yyvsp[-2].pval,
1740 newWHILEOP(0, 1, (LOOP*)Nullop,
1741 NOLINE, Nullop, yyvsp[-1].opval, yyvsp[0].opval)); }
4633a7c4 1742break;
ecca16b0 1743case 35:
09bef843 1744#line 264 "perly.y"
4633a7c4
LW
1745{ yyval.opval = Nullop; }
1746break;
ecca16b0 1747case 37:
09bef843 1748#line 269 "perly.y"
4633a7c4
LW
1749{ (void)scan_num("1"); yyval.opval = yylval.opval; }
1750break;
71be2cbc 1751case 39:
09bef843 1752#line 274 "perly.y"
ecca16b0 1753{ yyval.opval = invert(scalar(yyvsp[0].opval)); }
5f05dabc 1754break;
71be2cbc 1755case 40:
09bef843 1756#line 278 "perly.y"
5f05dabc 1757{ yyval.opval = yyvsp[0].opval; intro_my(); }
1758break;
71be2cbc 1759case 41:
09bef843 1760#line 282 "perly.y"
5f05dabc 1761{ yyval.opval = yyvsp[0].opval; intro_my(); }
1762break;
71be2cbc 1763case 42:
09bef843 1764#line 286 "perly.y"
5f05dabc 1765{ yyval.opval = yyvsp[0].opval; intro_my(); }
1766break;
71be2cbc 1767case 43:
09bef843 1768#line 290 "perly.y"
ecca16b0 1769{ yyval.opval = yyvsp[0].opval; intro_my(); }
4633a7c4 1770break;
ecca16b0 1771case 44:
09bef843 1772#line 294 "perly.y"
ecca16b0 1773{ yyval.pval = Nullch; }
4633a7c4 1774break;
71be2cbc 1775case 46:
09bef843 1776#line 299 "perly.y"
4633a7c4
LW
1777{ yyval.ival = 0; }
1778break;
71be2cbc 1779case 47:
09bef843 1780#line 301 "perly.y"
4633a7c4
LW
1781{ yyval.ival = 0; }
1782break;
71be2cbc 1783case 48:
09bef843 1784#line 303 "perly.y"
4633a7c4
LW
1785{ yyval.ival = 0; }
1786break;
71be2cbc 1787case 49:
09bef843 1788#line 305 "perly.y"
ecca16b0 1789{ yyval.ival = 0; }
4633a7c4 1790break;
71be2cbc 1791case 50:
09bef843
SB
1792#line 307 "perly.y"
1793{ yyval.ival = 0; }
4633a7c4 1794break;
71be2cbc 1795case 51:
09bef843
SB
1796#line 311 "perly.y"
1797{ newFORM(yyvsp[-2].ival, yyvsp[-1].opval, yyvsp[0].opval); }
4633a7c4 1798break;
71be2cbc 1799case 52:
09bef843
SB
1800#line 314 "perly.y"
1801{ yyval.opval = yyvsp[0].opval; }
4633a7c4 1802break;
71be2cbc 1803case 53:
09bef843
SB
1804#line 315 "perly.y"
1805{ yyval.opval = Nullop; }
4633a7c4 1806break;
44a8e56a 1807case 54:
09bef843
SB
1808#line 319 "perly.y"
1809{ newMYSUB(yyvsp[-4].ival, yyvsp[-3].opval, yyvsp[-2].opval, yyvsp[-1].opval, yyvsp[0].opval); }
44a8e56a 1810break;
1811case 55:
09bef843
SB
1812#line 323 "perly.y"
1813{ newATTRSUB(yyvsp[-4].ival, yyvsp[-3].opval, yyvsp[-2].opval, yyvsp[-1].opval, yyvsp[0].opval); }
4633a7c4 1814break;
71be2cbc 1815case 56:
09bef843
SB
1816#line 327 "perly.y"
1817{ yyval.ival = start_subparse(FALSE, 0); }
ecca16b0
CS
1818break;
1819case 57:
09bef843
SB
1820#line 331 "perly.y"
1821{ yyval.ival = start_subparse(FALSE, CVf_ANON); }
1822break;
1823case 58:
1824#line 335 "perly.y"
1825{ yyval.ival = start_subparse(TRUE, 0); }
1826break;
1827case 59:
1828#line 338 "perly.y"
b1524f17 1829{ STRLEN n_a; char *name = SvPV(((SVOP*)yyvsp[0].opval)->op_sv,n_a);
7d07dbc2 1830 if (strEQ(name, "BEGIN") || strEQ(name, "END")
7d30b5c4 1831 || strEQ(name, "INIT") || strEQ(name, "CHECK"))
1aff0e91 1832 CvSPECIAL_on(PL_compcv);
44a8e56a 1833 yyval.opval = yyvsp[0].opval; }
4633a7c4 1834break;
09bef843
SB
1835case 60:
1836#line 346 "perly.y"
44a8e56a 1837{ yyval.opval = Nullop; }
1838break;
09bef843
SB
1839case 62:
1840#line 351 "perly.y"
1841{ yyval.opval = Nullop; }
1842break;
1843case 63:
1844#line 353 "perly.y"
1845{ yyval.opval = yyvsp[0].opval; }
1846break;
1847case 64:
1848#line 355 "perly.y"
1849{ yyval.opval = Nullop; }
1850break;
1851case 65:
1852#line 359 "perly.y"
44a8e56a 1853{ yyval.opval = yyvsp[0].opval; }
1854break;
09bef843
SB
1855case 66:
1856#line 361 "perly.y"
1857{ yyval.opval = Nullop; }
1858break;
1859case 67:
1860#line 364 "perly.y"
1861{ yyval.opval = yyvsp[0].opval; }
1862break;
1863case 68:
1864#line 365 "perly.y"
954eb2b5 1865{ yyval.opval = Nullop; PL_expect = XSTATE; }
44a8e56a 1866break;
09bef843
SB
1867case 69:
1868#line 369 "perly.y"
44a8e56a 1869{ package(yyvsp[-1].opval); }
1870break;
09bef843
SB
1871case 70:
1872#line 371 "perly.y"
4633a7c4
LW
1873{ package(Nullop); }
1874break;
09bef843
SB
1875case 71:
1876#line 375 "perly.y"
1aff0e91 1877{ CvSPECIAL_on(PL_compcv); /* It's a BEGIN {} */ }
44a8e56a 1878break;
09bef843
SB
1879case 72:
1880#line 377 "perly.y"
44a8e56a 1881{ utilize(yyvsp[-6].ival, yyvsp[-5].ival, yyvsp[-3].opval, yyvsp[-2].opval, yyvsp[-1].opval); }
4633a7c4 1882break;
09bef843
SB
1883case 73:
1884#line 381 "perly.y"
4633a7c4
LW
1885{ yyval.opval = newLOGOP(OP_AND, 0, yyvsp[-2].opval, yyvsp[0].opval); }
1886break;
09bef843
SB
1887case 74:
1888#line 383 "perly.y"
4633a7c4
LW
1889{ yyval.opval = newLOGOP(yyvsp[-1].ival, 0, yyvsp[-2].opval, yyvsp[0].opval); }
1890break;
09bef843
SB
1891case 76:
1892#line 388 "perly.y"
4633a7c4
LW
1893{ yyval.opval = yyvsp[-1].opval; }
1894break;
09bef843
SB
1895case 77:
1896#line 390 "perly.y"
4633a7c4
LW
1897{ yyval.opval = append_elem(OP_LIST, yyvsp[-2].opval, yyvsp[0].opval); }
1898break;
09bef843
SB
1899case 79:
1900#line 395 "perly.y"
4633a7c4
LW
1901{ yyval.opval = convert(yyvsp[-2].ival, OPf_STACKED,
1902 prepend_elem(OP_LIST, newGVREF(yyvsp[-2].ival,yyvsp[-1].opval), yyvsp[0].opval) ); }
1903break;
09bef843
SB
1904case 80:
1905#line 398 "perly.y"
4633a7c4
LW
1906{ yyval.opval = convert(yyvsp[-4].ival, OPf_STACKED,
1907 prepend_elem(OP_LIST, newGVREF(yyvsp[-4].ival,yyvsp[-2].opval), yyvsp[-1].opval) ); }
1908break;
09bef843
SB
1909case 81:
1910#line 401 "perly.y"
4633a7c4
LW
1911{ yyval.opval = convert(OP_ENTERSUB, OPf_STACKED,
1912 append_elem(OP_LIST,
5f05dabc 1913 prepend_elem(OP_LIST, scalar(yyvsp[-5].opval), yyvsp[-1].opval),
4633a7c4
LW
1914 newUNOP(OP_METHOD, 0, yyvsp[-3].opval))); }
1915break;
09bef843
SB
1916case 82:
1917#line 406 "perly.y"
b1524f17
SM
1918{ yyval.opval = convert(OP_ENTERSUB, OPf_STACKED,
1919 append_elem(OP_LIST, scalar(yyvsp[-2].opval),
1920 newUNOP(OP_METHOD, 0, yyvsp[0].opval))); }
1921break;
09bef843
SB
1922case 83:
1923#line 410 "perly.y"
4633a7c4
LW
1924{ yyval.opval = convert(OP_ENTERSUB, OPf_STACKED,
1925 append_elem(OP_LIST,
1926 prepend_elem(OP_LIST, yyvsp[-1].opval, yyvsp[0].opval),
1927 newUNOP(OP_METHOD, 0, yyvsp[-2].opval))); }
1928break;
09bef843
SB
1929case 84:
1930#line 415 "perly.y"
4633a7c4
LW
1931{ yyval.opval = convert(OP_ENTERSUB, OPf_STACKED,
1932 append_elem(OP_LIST,
1933 prepend_elem(OP_LIST, yyvsp[-3].opval, yyvsp[-1].opval),
1934 newUNOP(OP_METHOD, 0, yyvsp[-4].opval))); }
1935break;
09bef843
SB
1936case 85:
1937#line 420 "perly.y"
4633a7c4
LW
1938{ yyval.opval = convert(yyvsp[-1].ival, 0, yyvsp[0].opval); }
1939break;
09bef843
SB
1940case 86:
1941#line 422 "perly.y"
4633a7c4
LW
1942{ yyval.opval = convert(yyvsp[-3].ival, 0, yyvsp[-1].opval); }
1943break;
09bef843
SB
1944case 87:
1945#line 424 "perly.y"
1946{ yyvsp[0].opval = newANONATTRSUB(yyvsp[-1].ival, 0, Nullop, yyvsp[0].opval); }
44a8e56a 1947break;
09bef843
SB
1948case 88:
1949#line 426 "perly.y"
4633a7c4 1950{ yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
44a8e56a 1951 append_elem(OP_LIST,
1952 prepend_elem(OP_LIST, yyvsp[-2].opval, yyvsp[0].opval), yyvsp[-4].opval)); }
4633a7c4 1953break;
09bef843
SB
1954case 91:
1955#line 436 "perly.y"
fad39ff1 1956{ yyval.opval = newBINOP(OP_GELEM, 0, yyvsp[-4].opval, scalar(yyvsp[-2].opval)); }
4633a7c4 1957break;
09bef843
SB
1958case 92:
1959#line 438 "perly.y"
fad39ff1 1960{ yyval.opval = newBINOP(OP_AELEM, 0, oopsAV(yyvsp[-3].opval), scalar(yyvsp[-1].opval)); }
4633a7c4 1961break;
09bef843
SB
1962case 93:
1963#line 440 "perly.y"
fad39ff1
SM
1964{ yyval.opval = newBINOP(OP_AELEM, 0,
1965 ref(newAVREF(yyvsp[-4].opval),OP_RV2AV),
1966 scalar(yyvsp[-1].opval));}
4633a7c4 1967break;
09bef843
SB
1968case 94:
1969#line 444 "perly.y"
fad39ff1
SM
1970{ yyval.opval = newBINOP(OP_AELEM, 0,
1971 ref(newAVREF(yyvsp[-3].opval),OP_RV2AV),
1972 scalar(yyvsp[-1].opval));}
4633a7c4 1973break;
09bef843
SB
1974case 95:
1975#line 448 "perly.y"
fad39ff1
SM
1976{ yyval.opval = newBINOP(OP_HELEM, 0, oopsHV(yyvsp[-4].opval), jmaybe(yyvsp[-2].opval));
1977 PL_expect = XOPERATOR; }
4633a7c4 1978break;
09bef843
SB
1979case 96:
1980#line 451 "perly.y"
fad39ff1
SM
1981{ yyval.opval = newBINOP(OP_HELEM, 0,
1982 ref(newHVREF(yyvsp[-5].opval),OP_RV2HV),
1983 jmaybe(yyvsp[-2].opval));
1984 PL_expect = XOPERATOR; }
4633a7c4 1985break;
09bef843
SB
1986case 97:
1987#line 456 "perly.y"
fad39ff1
SM
1988{ yyval.opval = newBINOP(OP_HELEM, 0,
1989 ref(newHVREF(yyvsp[-4].opval),OP_RV2HV),
1990 jmaybe(yyvsp[-2].opval));
1991 PL_expect = XOPERATOR; }
4633a7c4 1992break;
09bef843
SB
1993case 98:
1994#line 461 "perly.y"
fad39ff1
SM
1995{ yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
1996 newCVREF(0, scalar(yyvsp[-3].opval))); }
4633a7c4 1997break;
09bef843
SB
1998case 99:
1999#line 464 "perly.y"
fad39ff1
SM
2000{ yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2001 append_elem(OP_LIST, yyvsp[-1].opval,
2002 newCVREF(0, scalar(yyvsp[-4].opval)))); }
4633a7c4 2003break;
09bef843
SB
2004case 100:
2005#line 469 "perly.y"
fad39ff1
SM
2006{ yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2007 append_elem(OP_LIST, yyvsp[-1].opval,
2008 newCVREF(0, scalar(yyvsp[-3].opval)))); }
4633a7c4 2009break;
09bef843
SB
2010case 101:
2011#line 473 "perly.y"
fad39ff1
SM
2012{ yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2013 newCVREF(0, scalar(yyvsp[-2].opval))); }
4633a7c4 2014break;
09bef843
SB
2015case 102:
2016#line 479 "perly.y"
fad39ff1 2017{ yyval.opval = newASSIGNOP(OPf_STACKED, yyvsp[-2].opval, yyvsp[-1].ival, yyvsp[0].opval); }
4633a7c4 2018break;
09bef843
SB
2019case 103:
2020#line 481 "perly.y"
fad39ff1 2021{ yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
4633a7c4 2022break;
09bef843
SB
2023case 104:
2024#line 483 "perly.y"
fad39ff1
SM
2025{ if (yyvsp[-1].ival != OP_REPEAT)
2026 scalar(yyvsp[-2].opval);
2027 yyval.opval = newBINOP(yyvsp[-1].ival, 0, yyvsp[-2].opval, scalar(yyvsp[0].opval)); }
4633a7c4 2028break;
09bef843
SB
2029case 105:
2030#line 487 "perly.y"
fad39ff1 2031{ yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
4633a7c4 2032break;
09bef843
SB
2033case 106:
2034#line 489 "perly.y"
fad39ff1 2035{ yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
4633a7c4 2036break;
09bef843
SB
2037case 107:
2038#line 491 "perly.y"
fad39ff1 2039{ yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
4633a7c4 2040break;
09bef843
SB
2041case 108:
2042#line 493 "perly.y"
fad39ff1 2043{ yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
4633a7c4 2044break;
09bef843
SB
2045case 109:
2046#line 495 "perly.y"
fad39ff1 2047{ yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
b1524f17 2048break;
09bef843
SB
2049case 110:
2050#line 497 "perly.y"
fad39ff1 2051{ yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
4633a7c4 2052break;
09bef843
SB
2053case 111:
2054#line 499 "perly.y"
fad39ff1 2055{ yyval.opval = newRANGE(yyvsp[-1].ival, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval));}
4633a7c4 2056break;
09bef843
SB
2057case 112:
2058#line 501 "perly.y"
fad39ff1 2059{ yyval.opval = newLOGOP(OP_AND, 0, yyvsp[-2].opval, yyvsp[0].opval); }
4633a7c4 2060break;
09bef843
SB
2061case 113:
2062#line 503 "perly.y"
fad39ff1 2063{ yyval.opval = newLOGOP(OP_OR, 0, yyvsp[-2].opval, yyvsp[0].opval); }
4633a7c4 2064break;
09bef843
SB
2065case 114:
2066#line 505 "perly.y"
fad39ff1 2067{ yyval.opval = newCONDOP(0, yyvsp[-4].opval, yyvsp[-2].opval, yyvsp[0].opval); }
4633a7c4 2068break;
09bef843
SB
2069case 115:
2070#line 507 "perly.y"
fad39ff1 2071{ yyval.opval = bind_match(yyvsp[-1].ival, yyvsp[-2].opval, yyvsp[0].opval); }
4633a7c4 2072break;
09bef843
SB
2073case 116:
2074#line 510 "perly.y"
fad39ff1 2075{ yyval.opval = newUNOP(OP_NEGATE, 0, scalar(yyvsp[0].opval)); }
4633a7c4 2076break;
09bef843
SB
2077case 117:
2078#line 512 "perly.y"
fad39ff1 2079{ yyval.opval = yyvsp[0].opval; }
4633a7c4 2080break;
09bef843
SB
2081case 118:
2082#line 514 "perly.y"
fad39ff1 2083{ yyval.opval = newUNOP(OP_NOT, 0, scalar(yyvsp[0].opval)); }
4633a7c4 2084break;
09bef843
SB
2085case 119:
2086#line 516 "perly.y"
fad39ff1 2087{ yyval.opval = newUNOP(OP_COMPLEMENT, 0, scalar(yyvsp[0].opval));}
4633a7c4 2088break;
09bef843
SB
2089case 120:
2090#line 518 "perly.y"
fad39ff1 2091{ yyval.opval = newUNOP(OP_REFGEN, 0, mod(yyvsp[0].opval,OP_REFGEN)); }
4633a7c4 2092break;
09bef843
SB
2093case 121:
2094#line 520 "perly.y"
fad39ff1
SM
2095{ yyval.opval = newUNOP(OP_POSTINC, 0,
2096 mod(scalar(yyvsp[-1].opval), OP_POSTINC)); }
4633a7c4 2097break;
09bef843
SB
2098case 122:
2099#line 523 "perly.y"
fad39ff1
SM
2100{ yyval.opval = newUNOP(OP_POSTDEC, 0,
2101 mod(scalar(yyvsp[-1].opval), OP_POSTDEC)); }
c07a80fd 2102break;
09bef843
SB
2103case 123:
2104#line 526 "perly.y"
fad39ff1
SM
2105{ yyval.opval = newUNOP(OP_PREINC, 0,
2106 mod(scalar(yyvsp[0].opval), OP_PREINC)); }
4633a7c4 2107break;
09bef843
SB
2108case 124:
2109#line 529 "perly.y"
fad39ff1
SM
2110{ yyval.opval = newUNOP(OP_PREDEC, 0,
2111 mod(scalar(yyvsp[0].opval), OP_PREDEC)); }
4633a7c4 2112break;
09bef843
SB
2113case 125:
2114#line 532 "perly.y"
2115{ yyval.opval = yyvsp[0].opval; }
2116break;
2117case 126:
2118#line 534 "perly.y"
fad39ff1 2119{ yyval.opval = localize(yyvsp[0].opval,yyvsp[-1].ival); }
ecca16b0 2120break;
09bef843
SB
2121case 127:
2122#line 536 "perly.y"
fad39ff1 2123{ yyval.opval = sawparens(yyvsp[-1].opval); }
4633a7c4 2124break;
09bef843
SB
2125case 128:
2126#line 538 "perly.y"
fad39ff1 2127{ yyval.opval = sawparens(newNULLLIST()); }
4633a7c4 2128break;
09bef843
SB
2129case 129:
2130#line 540 "perly.y"
fad39ff1 2131{ yyval.opval = newANONLIST(yyvsp[-1].opval); }
4633a7c4 2132break;
09bef843
SB
2133case 130:
2134#line 542 "perly.y"
fad39ff1 2135{ yyval.opval = newANONLIST(Nullop); }
4633a7c4 2136break;
09bef843
SB
2137case 131:
2138#line 544 "perly.y"
fad39ff1 2139{ yyval.opval = newANONHASH(yyvsp[-2].opval); }
b1524f17 2140break;
09bef843
SB
2141case 132:
2142#line 546 "perly.y"
fad39ff1 2143{ yyval.opval = newANONHASH(Nullop); }
ecca16b0 2144break;
09bef843
SB
2145case 133:
2146#line 548 "perly.y"
2147{ yyval.opval = newANONATTRSUB(yyvsp[-3].ival, yyvsp[-2].opval, yyvsp[-1].opval, yyvsp[0].opval); }
4633a7c4 2148break;
09bef843
SB
2149case 134:
2150#line 550 "perly.y"
fad39ff1 2151{ yyval.opval = yyvsp[0].opval; }
4633a7c4 2152break;
09bef843
SB
2153case 135:
2154#line 552 "perly.y"
fad39ff1 2155{ yyval.opval = yyvsp[0].opval; }
4633a7c4 2156break;
09bef843
SB
2157case 136:
2158#line 554 "perly.y"
fad39ff1 2159{ yyval.opval = yyvsp[0].opval; }
4633a7c4 2160break;
09bef843
SB
2161case 137:
2162#line 556 "perly.y"
fad39ff1
SM
2163{ yyval.opval = yyvsp[0].opval; }
2164break;
09bef843
SB
2165case 138:
2166#line 558 "perly.y"
fad39ff1
SM
2167{ yyval.opval = newUNOP(OP_AV2ARYLEN, 0, ref(yyvsp[0].opval, OP_AV2ARYLEN));}
2168break;
09bef843
SB
2169case 139:
2170#line 560 "perly.y"
fad39ff1
SM
2171{ yyval.opval = yyvsp[0].opval; }
2172break;
09bef843
SB
2173case 140:
2174#line 562 "perly.y"
fad39ff1
SM
2175{ yyval.opval = newSLICEOP(0, yyvsp[-1].opval, yyvsp[-4].opval); }
2176break;
09bef843
SB
2177case 141:
2178#line 564 "perly.y"
fad39ff1
SM
2179{ yyval.opval = newSLICEOP(0, yyvsp[-1].opval, Nullop); }
2180break;
09bef843
SB
2181case 142:
2182#line 566 "perly.y"
4633a7c4
LW
2183{ yyval.opval = prepend_elem(OP_ASLICE,
2184 newOP(OP_PUSHMARK, 0),
2185 newLISTOP(OP_ASLICE, 0,
2186 list(yyvsp[-1].opval),
2187 ref(yyvsp[-3].opval, OP_ASLICE))); }
2188break;
09bef843
SB
2189case 143:
2190#line 572 "perly.y"
4633a7c4
LW
2191{ yyval.opval = prepend_elem(OP_HSLICE,
2192 newOP(OP_PUSHMARK, 0),
2193 newLISTOP(OP_HSLICE, 0,
2194 list(yyvsp[-2].opval),
2195 ref(oopsHV(yyvsp[-4].opval), OP_HSLICE)));
954eb2b5 2196 PL_expect = XOPERATOR; }
4633a7c4 2197break;
09bef843
SB
2198case 144:
2199#line 579 "perly.y"
ecca16b0 2200{ yyval.opval = yyvsp[0].opval; }
4633a7c4 2201break;
09bef843
SB
2202case 145:
2203#line 581 "perly.y"
ecca16b0 2204{ yyval.opval = newUNOP(OP_ENTERSUB, 0, scalar(yyvsp[0].opval)); }
4633a7c4 2205break;
09bef843
SB
2206case 146:
2207#line 583 "perly.y"
ecca16b0 2208{ yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED, scalar(yyvsp[-2].opval)); }
4633a7c4 2209break;
09bef843
SB
2210case 147:
2211#line 585 "perly.y"
4633a7c4 2212{ yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
ecca16b0 2213 append_elem(OP_LIST, yyvsp[-1].opval, scalar(yyvsp[-3].opval))); }
4633a7c4 2214break;
09bef843
SB
2215case 148:
2216#line 588 "perly.y"
ecca16b0
CS
2217{ yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2218 append_elem(OP_LIST, yyvsp[0].opval, scalar(yyvsp[-1].opval))); }
4633a7c4 2219break;
09bef843
SB
2220case 149:
2221#line 591 "perly.y"
78ca652e 2222{ yyval.opval = dofile(yyvsp[0].opval); }
4633a7c4 2223break;
09bef843
SB
2224case 150:
2225#line 593 "perly.y"
ecca16b0
CS
2226{ yyval.opval = newUNOP(OP_NULL, OPf_SPECIAL, scope(yyvsp[0].opval)); }
2227break;
09bef843
SB
2228case 151:
2229#line 595 "perly.y"
c07a80fd 2230{ yyval.opval = newUNOP(OP_ENTERSUB,
2231 OPf_SPECIAL|OPf_STACKED,
4633a7c4 2232 prepend_elem(OP_LIST,
c07a80fd 2233 scalar(newCVREF(
2234 (OPpENTERSUB_AMPER<<8),
2235 scalar(yyvsp[-2].opval)
2236 )),Nullop)); dep();}
4633a7c4 2237break;
09bef843
SB
2238case 152:
2239#line 603 "perly.y"
c07a80fd 2240{ yyval.opval = newUNOP(OP_ENTERSUB,
2241 OPf_SPECIAL|OPf_STACKED,
4633a7c4
LW
2242 append_elem(OP_LIST,
2243 yyvsp[-1].opval,
c07a80fd 2244 scalar(newCVREF(
2245 (OPpENTERSUB_AMPER<<8),
2246 scalar(yyvsp[-3].opval)
2247 )))); dep();}
4633a7c4 2248break;
09bef843
SB
2249case 153:
2250#line 612 "perly.y"
4633a7c4
LW
2251{ yyval.opval = newUNOP(OP_ENTERSUB, OPf_SPECIAL|OPf_STACKED,
2252 prepend_elem(OP_LIST,
c07a80fd 2253 scalar(newCVREF(0,scalar(yyvsp[-2].opval))), Nullop)); dep();}
4633a7c4 2254break;
09bef843
SB
2255case 154:
2256#line 616 "perly.y"
4633a7c4
LW
2257{ yyval.opval = newUNOP(OP_ENTERSUB, OPf_SPECIAL|OPf_STACKED,
2258 prepend_elem(OP_LIST,
2259 yyvsp[-1].opval,
c07a80fd 2260 scalar(newCVREF(0,scalar(yyvsp[-3].opval))))); dep();}
4633a7c4 2261break;
09bef843
SB
2262case 155:
2263#line 621 "perly.y"
ecca16b0 2264{ yyval.opval = newOP(yyvsp[0].ival, OPf_SPECIAL);
954eb2b5 2265 PL_hints |= HINT_BLOCK_SCOPE; }
4633a7c4 2266break;
09bef843
SB
2267case 156:
2268#line 624 "perly.y"
b1524f17 2269{ yyval.opval = newLOOPEX(yyvsp[-1].ival,yyvsp[0].opval); }
4633a7c4 2270break;
09bef843
SB
2271case 157:
2272#line 626 "perly.y"
b1524f17 2273{ yyval.opval = newUNOP(OP_NOT, 0, scalar(yyvsp[0].opval)); }
878e08df 2274break;
09bef843
SB
2275case 158:
2276#line 628 "perly.y"
b1524f17 2277{ yyval.opval = newOP(yyvsp[0].ival, 0); }
878e08df 2278break;
09bef843
SB
2279case 159:
2280#line 630 "perly.y"
ecca16b0 2281{ yyval.opval = newUNOP(yyvsp[-1].ival, 0, yyvsp[0].opval); }
4633a7c4 2282break;
09bef843
SB
2283case 160:
2284#line 632 "perly.y"
b1524f17
SM
2285{ yyval.opval = newUNOP(yyvsp[-1].ival, 0, yyvsp[0].opval); }
2286break;
09bef843
SB
2287case 161:
2288#line 634 "perly.y"
ecca16b0
CS
2289{ yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2290 append_elem(OP_LIST, yyvsp[0].opval, scalar(yyvsp[-1].opval))); }
4633a7c4 2291break;
09bef843
SB
2292case 162:
2293#line 637 "perly.y"
ecca16b0 2294{ yyval.opval = newOP(yyvsp[0].ival, 0); }
4633a7c4 2295break;
09bef843
SB
2296case 163:
2297#line 639 "perly.y"
ecca16b0 2298{ yyval.opval = newOP(yyvsp[-2].ival, 0); }
4633a7c4 2299break;
09bef843
SB
2300case 164:
2301#line 641 "perly.y"
ecca16b0
CS
2302{ yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2303 scalar(yyvsp[0].opval)); }
4633a7c4 2304break;
09bef843
SB
2305case 165:
2306#line 644 "perly.y"
ecca16b0 2307{ yyval.opval = newOP(yyvsp[-2].ival, OPf_SPECIAL); }
4633a7c4 2308break;
09bef843
SB
2309case 166:
2310#line 646 "perly.y"
ecca16b0 2311{ yyval.opval = newUNOP(yyvsp[-3].ival, 0, yyvsp[-1].opval); }
4633a7c4 2312break;
09bef843
SB
2313case 167:
2314#line 648 "perly.y"
ecca16b0 2315{ yyval.opval = pmruntime(yyvsp[-3].opval, yyvsp[-1].opval, Nullop); }
4633a7c4 2316break;
09bef843
SB
2317case 168:
2318#line 650 "perly.y"
ecca16b0 2319{ yyval.opval = pmruntime(yyvsp[-5].opval, yyvsp[-3].opval, yyvsp[-1].opval); }
4633a7c4 2320break;
09bef843
SB
2321case 171:
2322#line 656 "perly.y"
2323{ yyval.opval = my_attrs(yyvsp[-1].opval,yyvsp[0].opval); }
4633a7c4 2324break;
09bef843
SB
2325case 172:
2326#line 658 "perly.y"
2327{ yyval.opval = localize(yyvsp[0].opval,yyvsp[-1].ival); }
2328break;
2329case 173:
2330#line 662 "perly.y"
2331{ yyval.opval = sawparens(yyvsp[-1].opval); }
2332break;
2333case 174:
2334#line 664 "perly.y"
2335{ yyval.opval = sawparens(newNULLLIST()); }
2336break;
2337case 175:
2338#line 666 "perly.y"
ecca16b0 2339{ yyval.opval = yyvsp[0].opval; }
4633a7c4 2340break;
09bef843
SB
2341case 176:
2342#line 668 "perly.y"
2343{ yyval.opval = yyvsp[0].opval; }
2344break;
2345case 177:
2346#line 670 "perly.y"
2347{ yyval.opval = yyvsp[0].opval; }
2348break;
2349case 178:
2350#line 674 "perly.y"
ecca16b0 2351{ yyval.opval = Nullop; }
5f05dabc 2352break;
09bef843
SB
2353case 179:
2354#line 676 "perly.y"
ecca16b0 2355{ yyval.opval = yyvsp[0].opval; }
5f05dabc 2356break;
09bef843
SB
2357case 180:
2358#line 680 "perly.y"
2359{ yyval.opval = Nullop; }
5f05dabc 2360break;
09bef843
SB
2361case 181:
2362#line 682 "perly.y"
2363{ yyval.opval = yyvsp[0].opval; }
4633a7c4 2364break;
09bef843
SB
2365case 182:
2366#line 684 "perly.y"
2367{ yyval.opval = yyvsp[-1].opval; }
4633a7c4 2368break;
09bef843
SB
2369case 183:
2370#line 688 "perly.y"
954eb2b5 2371{ PL_in_my = 0; yyval.opval = my(yyvsp[0].opval); }
4633a7c4 2372break;
09bef843
SB
2373case 184:
2374#line 692 "perly.y"
ecca16b0 2375{ yyval.opval = newCVREF(yyvsp[-1].ival,yyvsp[0].opval); }
4633a7c4 2376break;
09bef843
SB
2377case 185:
2378#line 696 "perly.y"
ecca16b0 2379{ yyval.opval = newSVREF(yyvsp[0].opval); }
4633a7c4 2380break;
09bef843
SB
2381case 186:
2382#line 700 "perly.y"
ecca16b0 2383{ yyval.opval = newAVREF(yyvsp[0].opval); }
4633a7c4 2384break;
09bef843
SB
2385case 187:
2386#line 704 "perly.y"
ecca16b0 2387{ yyval.opval = newHVREF(yyvsp[0].opval); }
4633a7c4 2388break;
09bef843
SB
2389case 188:
2390#line 708 "perly.y"
ecca16b0 2391{ yyval.opval = newAVREF(yyvsp[0].opval); }
4633a7c4 2392break;
09bef843
SB
2393case 189:
2394#line 712 "perly.y"
ecca16b0 2395{ yyval.opval = newGVREF(0,yyvsp[0].opval); }
c07a80fd 2396break;
09bef843
SB
2397case 190:
2398#line 716 "perly.y"
ecca16b0 2399{ yyval.opval = scalar(yyvsp[0].opval); }
878e08df 2400break;
09bef843
SB
2401case 191:
2402#line 718 "perly.y"
ecca16b0 2403{ yyval.opval = scalar(yyvsp[0].opval); }
878e08df 2404break;
09bef843
SB
2405case 192:
2406#line 720 "perly.y"
ecca16b0
CS
2407{ yyval.opval = scope(yyvsp[0].opval); }
2408break;
09bef843
SB
2409case 193:
2410#line 723 "perly.y"
4633a7c4
LW
2411{ yyval.opval = yyvsp[0].opval; }
2412break;
424a8fe9 2413#line 2412 "perly.c"
4633a7c4
LW
2414 }
2415 yyssp -= yym;
2416 yystate = *yyssp;
2417 yyvsp -= yym;
2418 yym = yylhs[yyn];
2419 if (yystate == 0 && yym == 0)
2420 {
2421#if YYDEBUG
2422 if (yydebug)
17f28c40 2423 PerlIO_printf(Perl_debug_log,
09bef843
SB
2424 "yydebug: after reduction, shifting from state 0 to state %d\n",
2425 YYFINAL);
4633a7c4
LW
2426#endif
2427 yystate = YYFINAL;
2428 *++yyssp = YYFINAL;
2429 *++yyvsp = yyval;
2430 if (yychar < 0)
2431 {
2432 if ((yychar = yylex()) < 0) yychar = 0;
2433#if YYDEBUG
2434 if (yydebug)
2435 {
2436 yys = 0;
2437 if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
2438 if (!yys) yys = "illegal-symbol";
17f28c40 2439 PerlIO_printf(Perl_debug_log, "yydebug: state %d, reading %d (%s)\n",
4633a7c4
LW
2440 YYFINAL, yychar, yys);
2441 }
2442#endif
2443 }
2444 if (yychar == 0) goto yyaccept;
2445 goto yyloop;
2446 }
2447 if ((yyn = yygindex[yym]) && (yyn += yystate) >= 0 &&
2448 yyn <= YYTABLESIZE && yycheck[yyn] == yystate)
2449 yystate = yytable[yyn];
2450 else
2451 yystate = yydgoto[yym];
2452#if YYDEBUG
2453 if (yydebug)
17f28c40 2454 PerlIO_printf(Perl_debug_log,
09bef843
SB
2455 "yydebug: after reduction, shifting from state %d to state %d\n",
2456 *yyssp, yystate);
4633a7c4
LW
2457#endif
2458 if (yyssp >= yyss + yystacksize - 1)
2459 {
2460 /*
2461 ** reallocate and recover. Note that pointers
2462 ** have to be reset, or bad things will happen
2463 */
2464 int yyps_index = (yyssp - yyss);
2465 int yypv_index = (yyvsp - yyvs);
2466 yystacksize += YYSTACKSIZE;
09bef843
SB
2467 ysave->yyvs = Renew(yyvs, yystacksize, YYSTYPE);
2468 ysave->yyss = Renew(yyss, yystacksize, short);
4633a7c4
LW
2469 if (!yyvs || !yyss)
2470 goto yyoverflow;
2471 yyssp = yyss + yyps_index;
2472 yyvsp = yyvs + yypv_index;
2473 }
2474 *++yyssp = yystate;
2475 *++yyvsp = yyval;
2476 goto yyloop;
2477yyoverflow:
2478 yyerror("Out of memory for yacc stack");
2479yyabort:
2480 retval = 1;
2481yyaccept:
2482 return retval;
2483}
e1f15930
GS
2484
2485#ifdef PERL_OBJECT
e1f15930
GS
2486#include "XSUB.h"
2487#endif
2488
2489static void
2490yydestruct(pTHXo_ void *ptr)
2491{
2492 struct ysv* ysave = (struct ysv*)ptr;
2493 if (ysave->yyss) Safefree(ysave->yyss);
2494 if (ysave->yyvs) Safefree(ysave->yyvs);
2495 yydebug = ysave->oldyydebug;
2496 yynerrs = ysave->oldyynerrs;
2497 yyerrflag = ysave->oldyyerrflag;
2498 yychar = ysave->oldyychar;
2499 yyval = ysave->oldyyval;
2500 yylval = ysave->oldyylval;
2501 Safefree(ysave);
2502}