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