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