2 static char yysccsid[] = "@(#)yaccpar 1.8 (Berkeley) 01/20/91";
13 pPerl->deprecate("\"do\" to call subroutines");
15 #define dep() Dep(this)
20 deprecate("\"do\" to call subroutines");
27 45, 0, 9, 7, 10, 8, 11, 11, 11, 12,
28 12, 12, 12, 24, 24, 24, 24, 24, 24, 15,
29 15, 15, 14, 14, 42, 42, 13, 13, 13, 13,
30 13, 13, 13, 26, 26, 27, 27, 28, 29, 30,
31 31, 32, 44, 44, 1, 1, 1, 1, 3, 38,
32 38, 46, 4, 5, 6, 39, 40, 40, 41, 41,
33 47, 47, 49, 48, 16, 16, 16, 25, 25, 25,
34 36, 36, 36, 36, 36, 36, 36, 50, 36, 37,
35 37, 17, 17, 17, 17, 17, 17, 17, 17, 17,
36 17, 17, 17, 17, 17, 17, 17, 17, 17, 17,
37 17, 17, 17, 17, 17, 17, 17, 17, 17, 17,
38 17, 17, 17, 17, 17, 17, 17, 17, 17, 17,
39 17, 17, 17, 17, 17, 17, 17, 17, 17, 17,
40 17, 17, 17, 17, 17, 17, 17, 17, 17, 17,
41 17, 17, 17, 17, 17, 17, 17, 17, 17, 17,
42 17, 17, 17, 17, 17, 17, 17, 33, 33, 34,
43 34, 34, 2, 2, 43, 23, 18, 19, 20, 21,
47 0, 2, 4, 0, 4, 0, 0, 2, 2, 2,
48 1, 2, 3, 1, 1, 3, 3, 3, 3, 0,
49 2, 6, 7, 7, 0, 2, 8, 8, 10, 9,
50 8, 11, 3, 0, 1, 0, 1, 1, 1, 1,
51 1, 1, 0, 1, 1, 1, 1, 1, 4, 1,
52 0, 5, 0, 0, 0, 1, 0, 1, 1, 1,
53 3, 2, 0, 7, 3, 3, 1, 2, 3, 1,
54 3, 5, 6, 3, 5, 2, 4, 0, 5, 1,
55 1, 3, 3, 3, 3, 3, 3, 3, 3, 3,
56 3, 3, 3, 5, 3, 2, 2, 2, 2, 2,
57 2, 2, 2, 2, 2, 3, 2, 3, 2, 4,
58 3, 4, 1, 5, 1, 4, 5, 4, 1, 1,
59 1, 5, 6, 5, 6, 5, 4, 5, 1, 1,
60 3, 4, 3, 2, 2, 4, 5, 4, 5, 4,
61 5, 1, 2, 2, 1, 2, 2, 2, 1, 3,
62 1, 3, 4, 4, 6, 1, 1, 0, 1, 0,
63 1, 2, 1, 1, 1, 2, 2, 2, 2, 2,
66 short yydefred[] = { 1,
67 0, 7, 0, 44, 55, 53, 0, 53, 8, 45,
68 9, 11, 0, 46, 47, 48, 0, 0, 0, 62,
69 63, 14, 4, 156, 0, 0, 129, 0, 151, 0,
70 54, 54, 0, 0, 0, 0, 0, 0, 0, 0,
71 0, 0, 0, 0, 0, 0, 0, 163, 164, 0,
72 0, 0, 0, 0, 0, 0, 0, 12, 0, 0,
73 0, 0, 0, 0, 0, 0, 0, 10, 0, 0,
74 0, 0, 119, 121, 0, 0, 0, 0, 157, 50,
75 0, 56, 0, 61, 0, 7, 172, 175, 174, 173,
76 0, 0, 0, 0, 0, 0, 4, 4, 4, 4,
77 4, 4, 0, 0, 0, 0, 0, 146, 0, 0,
78 0, 0, 76, 0, 170, 0, 135, 0, 0, 0,
79 0, 0, 166, 0, 0, 0, 0, 0, 0, 0,
80 0, 0, 0, 109, 0, 167, 168, 169, 171, 0,
81 0, 33, 0, 0, 0, 0, 0, 0, 0, 0,
82 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
83 0, 0, 0, 101, 102, 0, 0, 0, 0, 0,
84 0, 0, 0, 13, 0, 49, 58, 0, 0, 0,
85 74, 0, 0, 78, 0, 0, 0, 0, 0, 0,
86 0, 4, 150, 152, 0, 0, 0, 0, 0, 0,
87 0, 111, 0, 133, 0, 0, 108, 26, 0, 0,
88 19, 0, 0, 0, 65, 0, 0, 0, 0, 0,
89 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
90 0, 80, 0, 0, 81, 0, 0, 0, 0, 0,
91 0, 0, 131, 0, 0, 60, 59, 52, 0, 3,
92 0, 154, 0, 0, 112, 0, 41, 0, 42, 0,
93 0, 0, 0, 165, 0, 0, 35, 40, 0, 0,
94 0, 153, 162, 77, 0, 136, 0, 138, 0, 110,
95 0, 0, 0, 0, 0, 140, 0, 0, 0, 118,
96 0, 116, 0, 127, 0, 132, 0, 75, 0, 79,
97 0, 0, 0, 0, 0, 0, 0, 0, 72, 137,
98 139, 126, 0, 124, 0, 0, 141, 117, 0, 122,
99 128, 114, 64, 155, 6, 0, 0, 0, 0, 0,
100 0, 0, 0, 125, 123, 73, 7, 27, 28, 0,
101 0, 23, 24, 0, 31, 0, 0, 0, 21, 0,
102 0, 0, 30, 5, 0, 29, 0, 0, 32, 0,
105 short yydgoto[] = { 1,
106 9, 66, 10, 18, 95, 17, 86, 337, 89, 326,
107 3, 11, 12, 68, 342, 261, 70, 71, 72, 73,
108 74, 75, 76, 267, 78, 268, 257, 259, 262, 270,
109 258, 260, 113, 197, 91, 79, 236, 81, 83, 178,
110 248, 142, 265, 13, 2, 14, 15, 16, 85, 254,
112 short yysindex[] = { 0,
113 0, 0, -120, 0, 0, 0, -50, 0, 0, 0,
114 0, 0, 661, 0, 0, 0, -240, -238, -29, 0,
115 0, 0, 0, 0, -32, -32, 0, -8, 0, 2115,
116 0, 0, -4, 31, 32, 35, -35, 2115, 56, 57,
117 61, 1037, 981, -32, 1100, 1364, -218, 0, 0, -32,
118 2115, 2115, 2115, 2115, 2115, 2115, 1420, 0, 2115, 2115,
119 1476, -32, -32, -32, -32, 2115, -205, 0, 201, 306,
120 -63, -62, 0, 0, -24, 67, 45, 65, 0, 0,
121 -15, 0, -149, 0, -144, 0, 0, 0, 0, 0,
122 2115, 80, 2115, 841, -15, -149, 0, 0, 0, 0,
123 0, 0, 85, 306, 86, 1535, 981, 0, 841, 0,
124 -63, 65, 0, 2115, 0, 88, 0, 841, -28, 4,
125 -51, 2115, 0, 65, 340, 340, 340, -76, -76, 49,
126 -31, 340, 340, 0, -82, 0, 0, 0, 0, 841,
127 -15, 0, 2115, 2115, 2115, 2115, 2115, 2115, 2115, 2115,
128 2115, 2115, 2115, 2115, 2115, 2115, 2115, 2115, 2115, 2115,
129 2115, 2115, 2115, 0, 0, 48, 2115, 2115, 2115, 2115,
130 2115, 2115, 1710, 0, 2115, 0, 0, -43, -116, 241,
131 0, 2115, 1193, 0, -15, 2115, 2115, 2115, 2115, 106,
132 1769, 0, 0, 0, -23, 20, 104, 2115, 65, 1825,
133 1881, 0, 36, 0, 2115, 62, 0, 0, -232, -232,
134 0, -232, -232, -134, 0, -46, 1131, 841, 689, 316,
135 859, 306, 3778, 1980, 3652, 1299, 480, 396, 340, 340,
136 2115, 0, 1944, 2115, 0, 128, -58, 22, -56, 24,
137 33, 28, 0, -19, 306, 0, 0, 0, 2115, 0,
138 134, 0, 2115, 2115, 0, -232, 0, 142, 0, 148,
139 -232, 149, 150, 0, 153, 201, 0, 0, 154, 138,
140 2115, 0, 0, 0, -7, 0, 2, 0, 16, 0,
141 70, 2115, 73, 2115, 30, 0, 18, 101, 2115, 0,
142 75, 0, 78, 0, 81, 0, 151, 0, 1247, 0,
143 90, 90, 90, 90, 2115, 90, 2115, 167, 0, 0,
144 0, 0, 103, 0, 3869, 84, 0, 0, 170, 0,
145 0, 0, 0, 0, 0, -205, -205, -207, -207, 176,
146 -205, 168, 90, 0, 0, 0, 0, 0, 0, 90,
147 192, 0, 0, 90, 0, 1769, -205, 402, 0, 2115,
148 -205, 207, 0, 0, 208, 0, 90, 90, 0, -207,
151 short yyrindex[] = { 0,
152 0, 0, 265, 0, 0, 0, 0, 0, 0, 0,
153 0, 0, 0, 0, 0, 0, 131, 0, 0, 0,
154 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
155 0, 0, 0, 0, 0, 0, 0, 2156, -17, 0,
156 0, 2675, 2720, 0, 0, 0, 0, 0, 0, 0,
157 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
158 0, 0, 0, 0, 0, 0, 79, 0, -3, 108,
159 2774, 2860, 0, 0, 2034, 121, 0, 140, 0, 0,
160 0, 0, -33, 0, 0, 0, 0, 0, 0, 0,
161 2203, 0, 0, 3504, 0, 145, 0, 0, 0, 0,
162 0, 0, 0, 3772, 0, 0, 252, 0, 3551, 541,
163 602, 2270, 0, 0, 0, 442, 0, 3587, 2774, 0,
164 0, 2203, 0, 2324, 3010, 3049, 3096, 2911, 2972, 2439,
165 0, 3147, 3193, 0, 0, 0, 0, 0, 0, 3633,
166 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
167 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
168 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
169 0, 0, 0, 0, 2522, 0, 0, 0, 0, 925,
170 0, 252, 0, 0, 0, 263, 0, 0, 0, 0,
171 223, 0, 0, 0, 0, 282, 0, 0, 2576, 0,
172 0, 0, 0, 0, 0, 2624, 0, 0, -1, 26,
173 0, 27, 51, 718, 0, 0, 3752, 1576, 1632, 3368,
174 3413, 3799, 0, -38, 3710, 3678, 3060, 3459, 3285, 3332,
175 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
176 0, 0, 0, 0, 3835, 0, 0, 0, 273, 0,
177 0, 0, 0, 2203, 0, 59, 0, 0, 0, 0,
178 293, 0, 0, 0, 0, 64, 0, 0, 0, 0,
179 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
180 0, 0, 0, 0, 0, 0, 0, 0, 252, 0,
181 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
182 0, 0, 0, 0, 0, 0, 296, 0, 0, 0,
183 0, 0, 0, 0, 2380, 0, 0, 0, 0, 0,
184 0, 0, 0, 0, 0, 79, 79, 186, 186, 0,
185 79, 0, 0, 0, 0, 0, 0, 0, 0, 0,
186 0, 0, 0, 0, 0, 300, 79, 925, 0, 0,
187 79, 0, 0, 0, 0, 0, 0, 0, 0, 186,
190 short yygindex[] = { 0,
191 0, 0, 0, 349, 328, 0, -48, 0, 679, 378,
192 -84, 0, 0, 0, -298, -13, 4075, 2485, 0, 0,
193 0, 0, 0, 363, 908, 0, 0, 233, -168, 38,
194 72, 196, -77, -175, 999, 0, 0, 0, 0, 290,
195 0, -249, 0, 0, 0, 0, 0, 0, 0, 0,
197 #define YYTABLESIZE 4359
198 short yytable[] = { 69,
199 62, 180, 93, 62, 102, 93, 251, 203, 20, 206,
200 207, 201, 283, 181, 167, 246, 80, 272, 82, 93,
201 93, 296, 269, 149, 93, 57, 149, 169, 171, 84,
202 343, 93, 121, 309, 290, 97, 292, 15, 122, 18,
203 149, 149, 310, 131, 204, 149, 149, 135, 186, 187,
204 188, 189, 190, 191, 93, 15, 311, 18, 317, 168,
205 170, 361, 169, 273, 147, 148, 38, 16, 340, 341,
206 98, 99, 141, 149, 100, 149, 338, 339, 25, 23,
207 291, 345, 293, 62, 38, 16, 295, 233, 316, 57,
208 23, 17, 195, 196, 168, 105, 106, 353, 172, 37,
209 107, 356, 308, 174, 39, 149, 173, 23, 175, 17,
210 177, 25, 179, 319, 25, 25, 25, 37, 25, 182,
211 25, 25, 15, 25, 192, 294, 193, 200, 202, 209,
212 210, 212, 213, 214, 215, 216, 330, 25, 234, 205,
213 249, 62, 25, 271, 274, 4, 5, 6, 70, 7,
214 8, 70, 282, 237, 238, 239, 240, 241, 242, 244,
215 280, 130, 312, 148, 130, 70, 70, 289, 196, 25,
216 231, 297, 256, 210, 298, 210, 300, 266, 130, 130,
217 67, 355, 301, 130, 275, 20, 277, 279, 302, 303,
218 304, 281, 305, 318, 306, 334, 307, 314, 67, 320,
219 70, 25, 321, 25, 25, 322, 19, 333, 335, 323,
220 336, 130, 325, 130, 147, 148, 344, 285, 20, 287,
221 288, 20, 20, 20, 87, 20, 346, 20, 20, 88,
222 20, 350, 67, 93, 93, 93, 93, 166, 147, 148,
223 147, 148, 93, 130, 20, 147, 148, 357, 358, 20,
224 147, 148, 348, 51, 149, 149, 149, 149, 93, 93,
225 101, 93, 93, 149, 2, 147, 148, 57, 313, 149,
226 149, 149, 149, 147, 148, 196, 20, 147, 148, 149,
227 149, 34, 149, 149, 149, 149, 149, 149, 149, 147,
228 148, 149, 160, 256, 149, 149, 149, 43, 147, 148,
229 43, 43, 43, 36, 43, 232, 43, 43, 20, 43,
230 20, 20, 147, 148, 147, 148, 147, 148, 147, 148,
231 147, 148, 161, 43, 147, 148, 147, 148, 43, 147,
232 148, 158, 69, 39, 25, 25, 25, 25, 25, 25,
233 34, 25, 25, 25, 25, 25, 25, 25, 25, 25,
234 25, 25, 25, 25, 36, 43, 21, 25, 25, 96,
235 25, 25, 25, 25, 25, 250, 147, 148, 156, 25,
236 25, 25, 25, 25, 25, 77, 211, 25, 332, 70,
237 70, 70, 70, 352, 263, 185, 25, 43, 25, 25,
238 43, 0, 130, 130, 130, 130, 167, 147, 148, 147,
239 148, 130, 0, 0, 70, 70, 167, 130, 130, 130,
240 130, 67, 67, 67, 67, 0, 0, 130, 130, 0,
241 130, 130, 130, 130, 130, 130, 130, 0, 149, 130,
242 167, 0, 130, 130, 130, 0, 67, 67, 149, 0,
243 0, 20, 20, 20, 20, 20, 20, 0, 20, 20,
244 20, 20, 20, 20, 20, 20, 20, 20, 20, 20,
245 20, 0, 149, 0, 20, 20, 0, 20, 20, 20,
246 20, 20, 143, 144, 145, 146, 20, 20, 20, 20,
247 20, 20, 156, 0, 20, 156, 167, 0, 0, 0,
248 0, 0, 0, 20, 0, 20, 20, 147, 148, 156,
249 156, 0, 0, 0, 156, 0, 4, 5, 6, 0,
250 7, 8, 0, 0, 0, 0, 0, 0, 149, 0,
251 43, 43, 43, 43, 43, 43, 354, 43, 43, 43,
252 0, 0, 156, 43, 156, 0, 43, 43, 43, 43,
253 0, 0, 0, 43, 43, 0, 43, 43, 43, 43,
254 43, 0, 0, 0, 0, 43, 43, 43, 43, 43,
255 43, 0, 0, 43, 156, 0, 0, 0, 0, 0,
256 167, 0, 43, 172, 43, 43, 172, 172, 172, 0,
257 172, 156, 172, 172, 156, 172, 150, 0, 0, 0,
258 0, 0, 151, 152, 153, 154, 0, 0, 156, 156,
259 0, 0, 149, 156, 172, 155, 157, 158, 159, 160,
260 161, 162, 0, 0, 163, 0, 0, 164, 165, 166,
261 0, 162, 0, 0, 163, 0, 0, 164, 165, 166,
262 0, 156, 0, 156, 173, 0, 0, 173, 173, 173,
263 0, 173, 113, 173, 173, 113, 173, 0, 163, 0,
264 0, 164, 165, 166, 0, 0, 0, 0, 0, 113,
265 113, 0, 0, 156, 113, 173, 172, 4, 5, 6,
266 0, 7, 8, 0, 0, 0, 0, 0, 0, 327,
267 328, 329, 0, 331, 153, 154, 0, 0, 0, 0,
268 0, 67, 0, 52, 113, 0, 62, 64, 50, 0,
269 57, 162, 65, 60, 163, 59, 0, 164, 165, 166,
270 347, 0, 0, 156, 156, 156, 156, 349, 0, 58,
271 108, 351, 156, 117, 63, 0, 0, 173, 156, 156,
272 156, 156, 0, 0, 359, 360, 0, 0, 156, 156,
273 0, 156, 156, 156, 156, 156, 156, 156, 0, 0,
274 156, 61, 0, 156, 156, 156, 0, 0, 66, 176,
275 0, 66, 0, 0, 0, 0, 151, 152, 153, 154,
276 0, 0, 0, 184, 0, 0, 66, 0, 0, 167,
277 0, 0, 0, 23, 161, 162, 53, 0, 163, 0,
278 0, 164, 165, 166, 0, 0, 0, 172, 172, 172,
279 172, 172, 0, 172, 172, 172, 0, 0, 0, 172,
280 66, 149, 156, 156, 156, 156, 0, 0, 0, 208,
281 172, 156, 172, 172, 172, 172, 172, 156, 156, 156,
282 156, 172, 172, 172, 172, 172, 172, 156, 156, 172,
283 156, 156, 156, 156, 156, 156, 156, 0, 172, 156,
284 172, 172, 156, 156, 156, 0, 247, 0, 173, 173,
285 173, 173, 173, 255, 173, 173, 173, 0, 0, 0,
286 173, 0, 0, 113, 113, 113, 113, 0, 0, 0,
287 0, 173, 113, 173, 173, 173, 173, 173, 113, 113,
288 113, 113, 173, 173, 173, 173, 173, 173, 113, 113,
289 173, 113, 113, 113, 113, 113, 113, 113, 0, 173,
290 113, 173, 173, 113, 113, 113, 22, 24, 25, 26,
291 27, 28, 0, 29, 30, 31, 0, 0, 0, 32,
292 0, 167, 33, 34, 35, 36, 0, 0, 0, 37,
293 38, 0, 39, 40, 41, 42, 43, 0, 0, 167,
294 112, 44, 45, 46, 47, 48, 49, 43, 124, 51,
295 43, 43, 43, 149, 43, 0, 43, 43, 54, 43,
296 55, 56, 0, 0, 0, 151, 0, 153, 154, 0,
297 0, 149, 0, 43, 0, 0, 0, 0, 43, 66,
298 66, 66, 66, 161, 162, 0, 0, 163, 112, 0,
299 164, 165, 166, 0, 0, 0, 0, 0, 0, 0,
300 0, 0, 0, 52, 66, 43, 62, 64, 50, 0,
301 57, 199, 65, 60, 92, 59, 0, 0, 0, 112,
302 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
303 0, 114, 115, 0, 63, 0, 0, 43, 123, 0,
304 43, 0, 0, 0, 0, 0, 0, 0, 0, 0,
305 136, 137, 138, 139, 0, 0, 0, 0, 0, 52,
306 0, 61, 62, 64, 50, 0, 57, 0, 65, 60,
307 0, 59, 0, 0, 0, 0, 0, 0, 0, 0,
308 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
309 63, 0, 0, 23, 0, 198, 53, 0, 0, 0,
310 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
311 0, 0, 0, 0, 0, 0, 0, 61, 0, 153,
312 154, 0, 52, 0, 0, 62, 64, 50, 0, 57,
313 0, 65, 60, 0, 59, 161, 162, 153, 0, 163,
314 0, 0, 164, 165, 166, 0, 112, 0, 0, 23,
315 0, 112, 53, 63, 162, 0, 0, 163, 0, 0,
316 164, 165, 166, 0, 0, 0, 0, 0, 0, 0,
317 43, 43, 43, 43, 43, 43, 0, 43, 43, 43,
318 61, 0, 0, 43, 0, 0, 43, 43, 43, 43,
319 0, 0, 0, 43, 43, 0, 43, 43, 43, 43,
320 43, 0, 0, 0, 0, 43, 43, 43, 43, 43,
321 43, 167, 23, 43, 0, 53, 0, 0, 0, 0,
322 0, 0, 43, 252, 43, 43, 253, 110, 25, 26,
323 27, 28, 88, 29, 30, 31, 0, 0, 0, 32,
324 0, 0, 0, 149, 0, 156, 0, 0, 0, 0,
325 38, 0, 39, 40, 41, 42, 43, 0, 0, 0,
326 0, 44, 45, 46, 47, 48, 49, 0, 0, 51,
327 0, 0, 0, 167, 0, 0, 0, 324, 54, 0,
328 55, 56, 0, 24, 25, 26, 27, 28, 0, 29,
329 30, 31, 0, 0, 0, 32, 0, 0, 0, 156,
330 0, 0, 0, 0, 0, 149, 38, 0, 39, 40,
331 41, 42, 43, 0, 0, 0, 0, 44, 45, 46,
332 47, 48, 49, 0, 0, 51, 0, 167, 0, 0,
333 0, 0, 0, 0, 54, 0, 55, 56, 0, 0,
334 0, 0, 0, 0, 0, 0, 116, 25, 26, 27,
335 28, 0, 29, 30, 31, 0, 0, 0, 32, 149,
336 0, 0, 0, 0, 0, 0, 0, 0, 0, 38,
337 0, 39, 40, 41, 42, 43, 0, 0, 0, 167,
338 44, 45, 46, 47, 48, 49, 52, 0, 51, 62,
339 64, 50, 0, 57, 0, 65, 60, 54, 59, 55,
340 56, 0, 0, 0, 0, 0, 0, 151, 152, 153,
341 154, 149, 120, 0, 0, 0, 0, 63, 0, 0,
342 0, 157, 158, 159, 160, 161, 162, 0, 0, 163,
343 0, 0, 164, 165, 166, 0, 0, 0, 0, 0,
344 0, 0, 52, 0, 61, 62, 64, 50, 0, 57,
345 130, 65, 60, 0, 59, 0, 0, 0, 0, 0,
346 0, 0, 0, 150, 0, 0, 0, 0, 0, 151,
347 152, 153, 154, 63, 0, 0, 0, 0, 0, 53,
348 0, 0, 155, 157, 158, 159, 160, 161, 162, 0,
349 0, 163, 0, 0, 164, 165, 166, 0, 52, 0,
350 61, 62, 64, 50, 0, 57, 0, 65, 60, 0,
351 59, 0, 0, 0, 0, 0, 0, 150, 0, 0,
352 0, 0, 0, 151, 152, 153, 154, 0, 0, 63,
353 0, 0, 0, 0, 0, 53, 155, 157, 158, 159,
354 160, 161, 162, 0, 0, 163, 0, 0, 164, 165,
355 166, 0, 0, 0, 0, 0, 61, 52, 134, 0,
356 62, 64, 50, 0, 57, 194, 65, 60, 0, 59,
357 0, 0, 0, 0, 0, 151, 152, 153, 154, 0,
358 0, 0, 0, 0, 0, 0, 0, 0, 63, 0,
359 0, 53, 160, 161, 162, 0, 0, 163, 0, 0,
360 164, 165, 166, 0, 0, 0, 87, 0, 0, 87,
361 24, 25, 26, 27, 28, 61, 29, 30, 31, 0,
362 0, 0, 32, 87, 87, 0, 0, 0, 87, 0,
363 0, 0, 0, 38, 0, 39, 40, 41, 42, 43,
364 0, 0, 0, 0, 44, 45, 46, 47, 48, 49,
365 53, 0, 51, 0, 0, 0, 0, 0, 87, 0,
366 0, 54, 88, 55, 56, 88, 24, 25, 26, 27,
367 28, 0, 29, 30, 31, 0, 0, 0, 32, 88,
368 88, 0, 0, 0, 88, 0, 0, 0, 0, 38,
369 0, 39, 40, 41, 42, 43, 0, 0, 0, 0,
370 44, 45, 46, 47, 48, 49, 0, 0, 51, 0,
371 0, 0, 0, 0, 88, 0, 0, 54, 0, 55,
372 56, 0, 24, 25, 26, 27, 28, 0, 29, 30,
373 31, 0, 52, 0, 32, 62, 64, 50, 0, 57,
374 243, 65, 60, 0, 59, 38, 0, 39, 40, 41,
375 42, 43, 0, 0, 0, 0, 44, 45, 46, 47,
376 48, 49, 0, 63, 51, 0, 0, 0, 0, 0,
377 0, 0, 0, 54, 0, 55, 56, 0, 0, 0,
378 0, 24, 25, 26, 27, 28, 0, 29, 30, 31,
379 61, 52, 0, 32, 62, 64, 50, 0, 57, 0,
380 65, 60, 0, 59, 38, 0, 39, 40, 41, 42,
381 43, 0, 0, 0, 0, 44, 45, 46, 47, 48,
382 49, 0, 63, 51, 0, 53, 0, 0, 0, 0,
383 0, 0, 54, 0, 55, 56, 0, 87, 87, 87,
384 87, 0, 0, 0, 0, 0, 87, 52, 0, 61,
385 62, 64, 50, 87, 57, 276, 65, 60, 0, 59,
386 0, 0, 87, 87, 0, 87, 87, 87, 87, 87,
387 0, 0, 0, 0, 0, 0, 0, 0, 63, 0,
388 0, 0, 0, 0, 53, 0, 0, 0, 0, 0,
389 0, 0, 0, 88, 88, 88, 88, 0, 0, 0,
390 0, 0, 88, 52, 0, 61, 62, 64, 50, 0,
391 57, 278, 65, 60, 0, 59, 0, 0, 88, 88,
392 0, 88, 88, 88, 88, 88, 0, 0, 0, 0,
393 0, 0, 0, 0, 63, 0, 0, 0, 0, 0,
394 53, 0, 0, 0, 0, 0, 0, 0, 0, 0,
395 0, 0, 0, 0, 0, 0, 24, 25, 26, 27,
396 28, 61, 29, 30, 31, 0, 52, 0, 32, 62,
397 64, 50, 0, 57, 286, 65, 60, 0, 59, 38,
398 0, 39, 40, 41, 42, 43, 0, 0, 0, 0,
399 44, 45, 46, 47, 48, 49, 53, 63, 51, 0,
400 0, 0, 0, 0, 0, 0, 0, 54, 0, 55,
401 56, 0, 0, 0, 22, 24, 25, 26, 27, 28,
402 0, 29, 30, 31, 61, 0, 0, 32, 0, 0,
403 0, 0, 0, 0, 0, 0, 0, 0, 38, 0,
404 39, 40, 41, 42, 43, 0, 0, 0, 0, 44,
405 45, 46, 47, 48, 49, 0, 0, 51, 0, 53,
406 167, 0, 0, 0, 115, 0, 54, 115, 55, 56,
407 0, 24, 25, 26, 27, 28, 0, 29, 30, 31,
408 0, 115, 115, 32, 0, 0, 115, 0, 0, 0,
409 0, 0, 149, 0, 38, 0, 39, 40, 41, 42,
410 43, 0, 0, 0, 0, 44, 45, 46, 47, 48,
411 49, 0, 0, 51, 115, 0, 115, 0, 0, 0,
412 0, 0, 54, 0, 55, 56, 0, 24, 25, 26,
413 27, 28, 0, 29, 30, 31, 0, 52, 0, 32,
414 62, 64, 50, 0, 57, 0, 65, 60, 0, 59,
415 38, 0, 39, 40, 41, 42, 43, 0, 0, 0,
416 0, 44, 45, 46, 47, 48, 49, 0, 63, 51,
417 0, 0, 0, 0, 0, 0, 0, 0, 54, 0,
418 55, 56, 0, 0, 0, 0, 142, 0, 0, 142,
419 24, 25, 26, 27, 28, 61, 29, 30, 31, 0,
420 0, 0, 32, 142, 142, 0, 0, 0, 142, 0,
421 0, 0, 0, 38, 0, 39, 40, 41, 42, 43,
422 0, 0, 0, 0, 44, 45, 46, 47, 48, 49,
423 53, 0, 51, 158, 0, 0, 158, 0, 142, 0,
424 0, 54, 0, 55, 56, 0, 0, 0, 0, 0,
425 158, 158, 0, 0, 0, 158, 151, 152, 153, 154,
426 0, 0, 0, 0, 0, 0, 0, 0, 142, 0,
427 0, 158, 159, 160, 161, 162, 0, 0, 163, 0,
428 0, 164, 165, 166, 0, 158, 0, 0, 0, 0,
429 0, 0, 0, 0, 0, 115, 115, 115, 115, 0,
430 159, 0, 0, 0, 115, 0, 0, 0, 0, 0,
431 115, 115, 115, 115, 0, 158, 0, 159, 159, 0,
432 115, 115, 159, 115, 115, 115, 115, 115, 115, 115,
433 0, 0, 115, 0, 0, 115, 115, 115, 0, 0,
434 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
435 159, 0, 159, 0, 144, 0, 0, 0, 0, 0,
436 0, 24, 25, 26, 27, 28, 0, 29, 30, 31,
437 0, 144, 144, 32, 0, 0, 144, 0, 0, 0,
438 0, 0, 159, 0, 38, 0, 39, 40, 41, 42,
439 43, 0, 0, 0, 0, 44, 45, 46, 47, 48,
440 49, 0, 0, 51, 144, 0, 144, 0, 0, 0,
441 94, 0, 54, 94, 55, 56, 0, 142, 142, 142,
442 142, 0, 0, 0, 0, 0, 142, 94, 94, 0,
443 0, 0, 142, 142, 142, 142, 144, 0, 0, 0,
444 0, 0, 142, 142, 0, 142, 142, 142, 142, 142,
445 142, 142, 0, 0, 142, 0, 0, 142, 142, 142,
446 0, 0, 94, 0, 158, 158, 158, 158, 0, 107,
447 0, 0, 107, 158, 0, 0, 0, 0, 0, 158,
448 158, 158, 158, 0, 0, 0, 107, 107, 0, 158,
449 158, 107, 158, 158, 158, 158, 158, 158, 158, 90,
450 90, 158, 0, 0, 158, 158, 158, 0, 0, 0,
451 0, 103, 0, 0, 0, 0, 0, 111, 90, 119,
452 0, 107, 0, 0, 90, 0, 0, 0, 0, 0,
453 0, 159, 159, 159, 159, 0, 90, 90, 90, 90,
454 159, 0, 0, 0, 0, 0, 159, 159, 159, 159,
455 0, 107, 68, 0, 0, 68, 159, 159, 0, 159,
456 159, 159, 159, 159, 159, 159, 0, 0, 159, 68,
457 68, 159, 159, 159, 68, 0, 0, 0, 0, 0,
458 0, 111, 0, 0, 0, 144, 144, 144, 144, 0,
459 0, 0, 0, 0, 144, 0, 0, 0, 0, 0,
460 144, 144, 144, 144, 68, 0, 71, 0, 0, 0,
461 144, 144, 0, 144, 144, 144, 144, 144, 144, 144,
462 0, 0, 144, 71, 71, 144, 144, 144, 71, 0,
463 0, 0, 0, 0, 68, 0, 0, 0, 0, 0,
464 235, 94, 94, 94, 94, 0, 0, 0, 0, 0,
465 0, 0, 0, 0, 106, 0, 71, 106, 71, 0,
466 0, 0, 0, 0, 264, 0, 94, 94, 0, 94,
467 0, 106, 106, 0, 0, 0, 106, 0, 0, 0,
468 0, 0, 0, 0, 0, 0, 0, 0, 71, 0,
469 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
470 107, 107, 107, 107, 0, 145, 106, 0, 145, 107,
471 0, 0, 0, 0, 0, 107, 107, 107, 107, 0,
472 0, 0, 145, 145, 0, 107, 107, 145, 107, 107,
473 107, 107, 107, 107, 107, 0, 106, 107, 0, 0,
474 107, 107, 107, 0, 0, 0, 0, 0, 0, 0,
475 158, 0, 0, 158, 0, 0, 0, 145, 0, 0,
476 0, 0, 0, 0, 0, 0, 0, 158, 158, 0,
477 0, 0, 158, 0, 0, 0, 0, 0, 0, 0,
478 0, 0, 0, 68, 68, 68, 68, 0, 0, 0,
479 0, 0, 68, 0, 0, 0, 0, 0, 68, 68,
480 68, 68, 158, 0, 113, 0, 0, 113, 68, 68,
481 0, 68, 68, 68, 68, 68, 68, 68, 0, 0,
482 68, 113, 113, 68, 68, 68, 113, 0, 0, 0,
483 0, 0, 0, 0, 0, 0, 0, 71, 71, 71,
484 71, 0, 0, 0, 0, 0, 71, 0, 0, 0,
485 0, 0, 71, 71, 71, 71, 113, 0, 0, 0,
486 0, 0, 71, 71, 0, 71, 71, 71, 71, 71,
487 71, 71, 0, 0, 71, 0, 0, 71, 71, 71,
488 0, 0, 0, 0, 0, 106, 106, 106, 106, 0,
489 120, 0, 0, 120, 106, 0, 0, 0, 0, 0,
490 106, 106, 106, 106, 0, 0, 0, 120, 120, 0,
491 106, 106, 120, 106, 106, 106, 106, 106, 106, 106,
492 0, 0, 106, 0, 0, 106, 106, 106, 0, 0,
493 0, 0, 0, 0, 0, 0, 145, 145, 145, 145,
494 0, 103, 120, 0, 103, 145, 0, 0, 0, 0,
495 0, 145, 145, 145, 145, 0, 0, 0, 103, 103,
496 0, 145, 145, 103, 145, 145, 145, 145, 145, 145,
497 145, 0, 0, 145, 0, 0, 145, 145, 145, 0,
498 0, 158, 158, 158, 158, 0, 0, 0, 0, 0,
499 158, 0, 0, 103, 0, 0, 158, 158, 158, 158,
500 0, 0, 104, 0, 0, 104, 158, 158, 0, 158,
501 158, 158, 158, 158, 158, 158, 0, 0, 158, 104,
502 104, 158, 158, 158, 104, 0, 0, 0, 0, 0,
503 0, 0, 0, 0, 0, 113, 113, 113, 113, 0,
504 98, 0, 0, 98, 113, 0, 0, 0, 0, 0,
505 113, 113, 113, 113, 104, 0, 0, 98, 98, 0,
506 113, 113, 98, 113, 113, 113, 113, 113, 113, 113,
507 0, 0, 113, 0, 0, 113, 113, 113, 0, 99,
508 0, 0, 99, 0, 0, 0, 0, 0, 0, 0,
509 89, 0, 98, 89, 0, 0, 99, 99, 0, 0,
510 0, 99, 0, 0, 0, 0, 0, 89, 89, 0,
511 0, 0, 89, 0, 0, 0, 0, 0, 0, 0,
512 0, 120, 120, 120, 120, 0, 100, 0, 0, 100,
513 120, 99, 0, 0, 0, 0, 120, 120, 120, 120,
514 0, 0, 89, 100, 100, 0, 120, 120, 100, 120,
515 120, 120, 120, 120, 120, 120, 0, 0, 120, 0,
516 0, 120, 120, 120, 0, 0, 0, 0, 0, 0,
517 0, 0, 103, 103, 103, 103, 0, 96, 100, 0,
518 96, 103, 0, 0, 0, 0, 0, 103, 103, 103,
519 103, 0, 0, 0, 96, 96, 0, 103, 103, 96,
520 103, 103, 103, 103, 103, 103, 103, 0, 0, 103,
521 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
522 0, 0, 0, 97, 0, 0, 97, 0, 0, 96,
523 0, 0, 0, 104, 104, 104, 104, 0, 0, 0,
524 97, 97, 104, 0, 0, 97, 0, 0, 104, 104,
525 104, 104, 0, 0, 0, 0, 0, 0, 104, 104,
526 0, 104, 104, 104, 104, 104, 104, 104, 0, 0,
527 104, 98, 98, 98, 98, 97, 0, 0, 0, 0,
528 98, 0, 0, 0, 0, 0, 98, 98, 98, 98,
529 0, 0, 0, 0, 0, 0, 98, 98, 0, 98,
530 98, 98, 98, 98, 98, 98, 0, 0, 0, 0,
531 99, 99, 99, 99, 0, 95, 0, 0, 95, 99,
532 0, 89, 89, 89, 89, 99, 99, 99, 99, 0,
533 89, 0, 95, 95, 0, 99, 99, 95, 99, 99,
534 99, 99, 99, 99, 99, 0, 89, 89, 0, 89,
535 89, 89, 89, 89, 0, 0, 0, 100, 100, 100,
536 100, 0, 83, 0, 0, 83, 100, 95, 0, 0,
537 0, 0, 100, 100, 100, 100, 0, 0, 0, 83,
538 83, 0, 100, 100, 83, 100, 100, 100, 100, 100,
539 100, 100, 0, 0, 0, 0, 0, 0, 84, 0,
540 0, 84, 0, 0, 0, 0, 0, 0, 96, 96,
541 96, 96, 0, 0, 83, 84, 84, 96, 0, 0,
542 84, 0, 0, 96, 96, 96, 96, 0, 0, 0,
543 0, 0, 0, 96, 96, 0, 96, 96, 96, 96,
544 96, 96, 96, 85, 0, 0, 85, 0, 0, 0,
545 84, 0, 0, 0, 97, 97, 97, 97, 0, 0,
546 85, 85, 0, 97, 0, 85, 0, 0, 0, 97,
547 97, 97, 97, 0, 0, 0, 0, 0, 0, 97,
548 97, 0, 97, 97, 97, 97, 97, 97, 97, 86,
549 0, 0, 86, 0, 0, 85, 0, 0, 0, 0,
550 0, 0, 0, 0, 0, 0, 86, 86, 0, 0,
551 0, 86, 0, 0, 0, 0, 0, 0, 0, 0,
552 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
553 0, 0, 0, 0, 148, 0, 0, 148, 0, 0,
554 0, 86, 0, 0, 0, 0, 95, 95, 95, 95,
555 0, 148, 148, 0, 0, 95, 148, 0, 0, 0,
556 0, 95, 95, 95, 95, 0, 0, 0, 0, 0,
557 0, 95, 95, 0, 95, 95, 95, 95, 95, 95,
558 95, 147, 0, 0, 147, 0, 148, 0, 0, 0,
559 0, 0, 0, 83, 83, 83, 83, 0, 147, 147,
560 0, 0, 83, 147, 0, 0, 0, 0, 83, 83,
561 83, 83, 0, 0, 0, 0, 0, 134, 83, 83,
562 134, 83, 83, 83, 83, 83, 83, 83, 0, 84,
563 84, 84, 84, 147, 134, 134, 0, 0, 84, 134,
564 0, 0, 0, 0, 84, 84, 84, 84, 0, 0,
565 0, 0, 0, 0, 84, 84, 0, 84, 84, 84,
566 84, 84, 84, 105, 0, 0, 105, 0, 0, 134,
567 0, 0, 0, 0, 85, 85, 85, 85, 0, 0,
568 105, 105, 0, 85, 0, 105, 0, 0, 0, 85,
569 85, 0, 85, 0, 0, 0, 0, 0, 0, 85,
570 85, 0, 85, 85, 85, 85, 85, 85, 90, 0,
571 0, 90, 0, 0, 0, 105, 0, 0, 0, 0,
572 86, 86, 86, 86, 0, 90, 90, 0, 0, 86,
573 90, 0, 167, 0, 0, 86, 86, 0, 0, 0,
574 92, 0, 0, 92, 0, 86, 86, 0, 86, 86,
575 86, 86, 86, 86, 0, 0, 0, 92, 92, 0,
576 90, 0, 92, 0, 149, 148, 148, 148, 148, 0,
577 0, 0, 0, 0, 148, 0, 0, 0, 0, 0,
578 148, 148, 91, 0, 0, 91, 0, 0, 0, 0,
579 148, 148, 92, 148, 148, 148, 148, 148, 0, 91,
580 91, 0, 143, 0, 91, 143, 0, 0, 0, 0,
581 0, 0, 147, 147, 147, 147, 0, 0, 0, 143,
582 143, 147, 0, 0, 0, 284, 0, 147, 147, 82,
583 156, 0, 82, 0, 91, 0, 0, 147, 147, 0,
584 147, 147, 147, 147, 147, 0, 82, 82, 134, 134,
585 134, 134, 0, 0, 143, 0, 0, 134, 167, 0,
586 0, 0, 0, 134, 134, 69, 0, 0, 69, 0,
587 0, 0, 0, 134, 134, 0, 134, 134, 134, 134,
588 134, 82, 69, 69, 0, 0, 0, 0, 0, 0,
589 149, 0, 0, 0, 105, 105, 105, 105, 0, 0,
590 0, 0, 0, 105, 0, 0, 0, 0, 0, 105,
591 105, 0, 0, 0, 0, 0, 0, 69, 0, 105,
592 105, 156, 105, 105, 105, 105, 105, 0, 151, 152,
593 153, 154, 0, 0, 0, 0, 0, 0, 0, 90,
594 90, 90, 90, 0, 159, 160, 161, 162, 90, 167,
595 163, 0, 0, 164, 165, 166, 0, 0, 0, 0,
596 0, 0, 0, 0, 90, 90, 0, 90, 90, 90,
597 90, 92, 92, 92, 92, 0, 0, 0, 0, 0,
598 92, 149, 0, 0, 0, 0, 0, 0, 0, 0,
599 0, 0, 0, 0, 0, 0, 92, 92, 0, 92,
600 92, 92, 0, 0, 0, 0, 0, 0, 0, 0,
601 0, 0, 0, 91, 91, 91, 91, 0, 0, 0,
602 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
603 0, 0, 0, 143, 143, 143, 143, 0, 91, 91,
604 0, 91, 0, 0, 0, 0, 0, 0, 150, 0,
605 0, 0, 0, 0, 151, 152, 153, 154, 143, 143,
606 82, 82, 82, 82, 0, 0, 0, 155, 157, 158,
607 159, 160, 161, 162, 0, 0, 163, 0, 0, 164,
608 165, 166, 0, 0, 0, 82, 82, 0, 0, 0,
609 0, 0, 0, 0, 94, 0, 69, 69, 69, 69,
610 0, 0, 104, 0, 0, 0, 109, 0, 0, 118,
611 0, 0, 0, 0, 0, 0, 125, 126, 127, 128,
612 129, 69, 69, 132, 133, 0, 0, 0, 0, 0,
613 140, 0, 0, 0, 0, 0, 0, 0, 0, 150,
614 0, 0, 0, 0, 0, 151, 152, 153, 154, 0,
615 0, 0, 0, 0, 0, 0, 0, 183, 0, 157,
616 158, 159, 160, 161, 162, 0, 0, 163, 0, 0,
617 164, 165, 166, 0, 0, 0, 0, 0, 0, 0,
618 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
619 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
620 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
621 0, 0, 0, 0, 217, 218, 219, 220, 221, 222,
622 223, 224, 225, 226, 227, 228, 229, 230, 0, 0,
623 0, 0, 0, 0, 0, 0, 0, 0, 0, 245,
624 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
625 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
626 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
627 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
628 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
629 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
630 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
631 0, 0, 0, 0, 0, 0, 0, 299, 0, 0,
632 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
633 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
634 0, 0, 0, 0, 0, 0, 0, 0, 315,
636 short yycheck[] = { 13,
637 36, 86, 41, 36, 40, 44, 182, 59, 59, 41,
638 93, 40, 59, 91, 91, 59, 257, 41, 257, 58,
639 59, 41, 191, 41, 63, 59, 44, 91, 91, 59,
640 329, 40, 46, 41, 93, 40, 93, 41, 257, 41,
641 58, 59, 41, 57, 122, 63, 123, 61, 97, 98,
642 99, 100, 101, 102, 93, 59, 41, 59, 41, 123,
643 123, 360, 91, 44, 297, 298, 41, 41, 276, 277,
644 40, 40, 278, 91, 40, 93, 326, 327, 0, 123,
645 59, 331, 59, 36, 59, 59, 59, 40, 59, 123,
646 123, 41, 106, 107, 123, 40, 40, 347, 123, 41,
647 40, 351, 271, 59, 41, 123, 40, 123, 44, 59,
648 260, 33, 257, 289, 36, 37, 38, 59, 40, 40,
649 42, 43, 59, 45, 40, 93, 41, 40, 125, 143,
650 144, 145, 146, 147, 148, 149, 305, 59, 91, 91,
651 257, 36, 64, 192, 41, 266, 267, 268, 41, 270,
652 271, 44, 91, 167, 168, 169, 170, 171, 172, 173,
653 125, 41, 93, 298, 44, 58, 59, 40, 182, 91,
654 123, 249, 186, 187, 41, 189, 254, 191, 58, 59,
655 41, 350, 41, 63, 198, 0, 200, 201, 41, 41,
656 41, 205, 40, 93, 41, 93, 59, 125, 59, 125,
657 93, 123, 125, 125, 126, 125, 257, 41, 125, 59,
658 41, 91, 123, 93, 297, 298, 41, 231, 33, 233,
659 234, 36, 37, 38, 257, 40, 59, 42, 43, 262,
660 45, 40, 93, 272, 273, 274, 275, 314, 297, 298,
661 297, 298, 281, 123, 59, 297, 298, 41, 41, 64,
662 297, 298, 337, 123, 272, 273, 274, 275, 297, 298,
663 296, 300, 301, 281, 0, 297, 298, 123, 282, 287,
664 288, 289, 290, 297, 298, 289, 91, 297, 298, 297,
665 298, 59, 300, 301, 302, 303, 304, 305, 306, 297,
666 298, 309, 41, 307, 312, 313, 314, 33, 297, 298,
667 36, 37, 38, 41, 40, 258, 42, 43, 123, 45,
668 125, 126, 297, 298, 297, 298, 297, 298, 297, 298,
669 297, 298, 41, 59, 297, 298, 297, 298, 64, 297,
670 298, 59, 346, 41, 256, 257, 258, 259, 260, 261,
671 41, 263, 264, 265, 266, 267, 268, 269, 270, 271,
672 272, 273, 274, 275, 59, 91, 8, 279, 280, 32,
673 282, 283, 284, 285, 286, 125, 297, 298, 63, 291,
674 292, 293, 294, 295, 296, 13, 144, 299, 307, 272,
675 273, 274, 275, 346, 189, 96, 308, 123, 310, 311,
676 126, -1, 272, 273, 274, 275, 91, 297, 298, 297,
677 298, 281, -1, -1, 297, 298, 91, 287, 288, 289,
678 290, 272, 273, 274, 275, -1, -1, 297, 298, -1,
679 300, 301, 302, 303, 304, 305, 306, -1, 123, 309,
680 91, -1, 312, 313, 314, -1, 297, 298, 123, -1,
681 -1, 256, 257, 258, 259, 260, 261, -1, 263, 264,
682 265, 266, 267, 268, 269, 270, 271, 272, 273, 274,
683 275, -1, 123, -1, 279, 280, -1, 282, 283, 284,
684 285, 286, 272, 273, 274, 275, 291, 292, 293, 294,
685 295, 296, 41, -1, 299, 44, 91, -1, -1, -1,
686 -1, -1, -1, 308, -1, 310, 311, 297, 298, 58,
687 59, -1, -1, -1, 63, -1, 266, 267, 268, -1,
688 270, 271, -1, -1, -1, -1, -1, -1, 123, -1,
689 256, 257, 258, 259, 260, 261, 125, 263, 264, 265,
690 -1, -1, 91, 269, 93, -1, 272, 273, 274, 275,
691 -1, -1, -1, 279, 280, -1, 282, 283, 284, 285,
692 286, -1, -1, -1, -1, 291, 292, 293, 294, 295,
693 296, -1, -1, 299, 123, -1, -1, -1, -1, -1,
694 91, -1, 308, 33, 310, 311, 36, 37, 38, -1,
695 40, 41, 42, 43, 44, 45, 281, -1, -1, -1,
696 -1, -1, 287, 288, 289, 290, -1, -1, 58, 59,
697 -1, -1, 123, 63, 64, 300, 301, 302, 303, 304,
698 305, 306, -1, -1, 309, -1, -1, 312, 313, 314,
699 -1, 306, -1, -1, 309, -1, -1, 312, 313, 314,
700 -1, 91, -1, 93, 33, -1, -1, 36, 37, 38,
701 -1, 40, 41, 42, 43, 44, 45, -1, 309, -1,
702 -1, 312, 313, 314, -1, -1, -1, -1, -1, 58,
703 59, -1, -1, 123, 63, 64, 126, 266, 267, 268,
704 -1, 270, 271, -1, -1, -1, -1, -1, -1, 302,
705 303, 304, -1, 306, 289, 290, -1, -1, -1, -1,
706 -1, 13, -1, 33, 93, -1, 36, 37, 38, -1,
707 40, 306, 42, 43, 309, 45, -1, 312, 313, 314,
708 333, -1, -1, 272, 273, 274, 275, 340, -1, 59,
709 42, 344, 281, 45, 64, -1, -1, 126, 287, 288,
710 289, 290, -1, -1, 357, 358, -1, -1, 297, 298,
711 -1, 300, 301, 302, 303, 304, 305, 306, -1, -1,
712 309, 91, -1, 312, 313, 314, -1, -1, 41, 81,
713 -1, 44, -1, -1, -1, -1, 287, 288, 289, 290,
714 -1, -1, -1, 95, -1, -1, 59, -1, -1, 91,
715 -1, -1, -1, 123, 305, 306, 126, -1, 309, -1,
716 -1, 312, 313, 314, -1, -1, -1, 257, 258, 259,
717 260, 261, -1, 263, 264, 265, -1, -1, -1, 269,
718 93, 123, 272, 273, 274, 275, -1, -1, -1, 141,
719 280, 281, 282, 283, 284, 285, 286, 287, 288, 289,
720 290, 291, 292, 293, 294, 295, 296, 297, 298, 299,
721 300, 301, 302, 303, 304, 305, 306, -1, 308, 309,
722 310, 311, 312, 313, 314, -1, 178, -1, 257, 258,
723 259, 260, 261, 185, 263, 264, 265, -1, -1, -1,
724 269, -1, -1, 272, 273, 274, 275, -1, -1, -1,
725 -1, 280, 281, 282, 283, 284, 285, 286, 287, 288,
726 289, 290, 291, 292, 293, 294, 295, 296, 297, 298,
727 299, 300, 301, 302, 303, 304, 305, 306, -1, 308,
728 309, 310, 311, 312, 313, 314, 256, 257, 258, 259,
729 260, 261, -1, 263, 264, 265, -1, -1, -1, 269,
730 -1, 91, 272, 273, 274, 275, -1, -1, -1, 279,
731 280, -1, 282, 283, 284, 285, 286, -1, -1, 91,
732 43, 291, 292, 293, 294, 295, 296, 33, 51, 299,
733 36, 37, 38, 123, 40, -1, 42, 43, 308, 45,
734 310, 311, -1, -1, -1, 287, -1, 289, 290, -1,
735 -1, 123, -1, 59, -1, -1, -1, -1, 64, 272,
736 273, 274, 275, 305, 306, -1, -1, 309, 91, -1,
737 312, 313, 314, -1, -1, -1, -1, -1, -1, -1,
738 -1, -1, -1, 33, 297, 91, 36, 37, 38, -1,
739 40, 114, 42, 43, 26, 45, -1, -1, -1, 122,
740 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
741 -1, 43, 44, -1, 64, -1, -1, 123, 50, -1,
742 126, -1, -1, -1, -1, -1, -1, -1, -1, -1,
743 62, 63, 64, 65, -1, -1, -1, -1, -1, 33,
744 -1, 91, 36, 37, 38, -1, 40, -1, 42, 43,
745 -1, 45, -1, -1, -1, -1, -1, -1, -1, -1,
746 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
747 64, -1, -1, 123, -1, 107, 126, -1, -1, -1,
748 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
749 -1, -1, -1, -1, -1, -1, -1, 91, -1, 289,
750 290, -1, 33, -1, -1, 36, 37, 38, -1, 40,
751 -1, 42, 43, -1, 45, 305, 306, 289, -1, 309,
752 -1, -1, 312, 313, 314, -1, 249, -1, -1, 123,
753 -1, 254, 126, 64, 306, -1, -1, 309, -1, -1,
754 312, 313, 314, -1, -1, -1, -1, -1, -1, -1,
755 256, 257, 258, 259, 260, 261, -1, 263, 264, 265,
756 91, -1, -1, 269, -1, -1, 272, 273, 274, 275,
757 -1, -1, -1, 279, 280, -1, 282, 283, 284, 285,
758 286, -1, -1, -1, -1, 291, 292, 293, 294, 295,
759 296, 91, 123, 299, -1, 126, -1, -1, -1, -1,
760 -1, -1, 308, 41, 310, 311, 44, 257, 258, 259,
761 260, 261, 262, 263, 264, 265, -1, -1, -1, 269,
762 -1, -1, -1, 123, -1, 63, -1, -1, -1, -1,
763 280, -1, 282, 283, 284, 285, 286, -1, -1, -1,
764 -1, 291, 292, 293, 294, 295, 296, -1, -1, 299,
765 -1, -1, -1, 91, -1, -1, -1, 41, 308, -1,
766 310, 311, -1, 257, 258, 259, 260, 261, -1, 263,
767 264, 265, -1, -1, -1, 269, -1, -1, -1, 63,
768 -1, -1, -1, -1, -1, 123, 280, -1, 282, 283,
769 284, 285, 286, -1, -1, -1, -1, 291, 292, 293,
770 294, 295, 296, -1, -1, 299, -1, 91, -1, -1,
771 -1, -1, -1, -1, 308, -1, 310, 311, -1, -1,
772 -1, -1, -1, -1, -1, -1, 257, 258, 259, 260,
773 261, -1, 263, 264, 265, -1, -1, -1, 269, 123,
774 -1, -1, -1, -1, -1, -1, -1, -1, -1, 280,
775 -1, 282, 283, 284, 285, 286, -1, -1, -1, 91,
776 291, 292, 293, 294, 295, 296, 33, -1, 299, 36,
777 37, 38, -1, 40, -1, 42, 43, 308, 45, 310,
778 311, -1, -1, -1, -1, -1, -1, 287, 288, 289,
779 290, 123, 59, -1, -1, -1, -1, 64, -1, -1,
780 -1, 301, 302, 303, 304, 305, 306, -1, -1, 309,
781 -1, -1, 312, 313, 314, -1, -1, -1, -1, -1,
782 -1, -1, 33, -1, 91, 36, 37, 38, -1, 40,
783 41, 42, 43, -1, 45, -1, -1, -1, -1, -1,
784 -1, -1, -1, 281, -1, -1, -1, -1, -1, 287,
785 288, 289, 290, 64, -1, -1, -1, -1, -1, 126,
786 -1, -1, 300, 301, 302, 303, 304, 305, 306, -1,
787 -1, 309, -1, -1, 312, 313, 314, -1, 33, -1,
788 91, 36, 37, 38, -1, 40, -1, 42, 43, -1,
789 45, -1, -1, -1, -1, -1, -1, 281, -1, -1,
790 -1, -1, -1, 287, 288, 289, 290, -1, -1, 64,
791 -1, -1, -1, -1, -1, 126, 300, 301, 302, 303,
792 304, 305, 306, -1, -1, 309, -1, -1, 312, 313,
793 314, -1, -1, -1, -1, -1, 91, 33, 93, -1,
794 36, 37, 38, -1, 40, 41, 42, 43, -1, 45,
795 -1, -1, -1, -1, -1, 287, 288, 289, 290, -1,
796 -1, -1, -1, -1, -1, -1, -1, -1, 64, -1,
797 -1, 126, 304, 305, 306, -1, -1, 309, -1, -1,
798 312, 313, 314, -1, -1, -1, 41, -1, -1, 44,
799 257, 258, 259, 260, 261, 91, 263, 264, 265, -1,
800 -1, -1, 269, 58, 59, -1, -1, -1, 63, -1,
801 -1, -1, -1, 280, -1, 282, 283, 284, 285, 286,
802 -1, -1, -1, -1, 291, 292, 293, 294, 295, 296,
803 126, -1, 299, -1, -1, -1, -1, -1, 93, -1,
804 -1, 308, 41, 310, 311, 44, 257, 258, 259, 260,
805 261, -1, 263, 264, 265, -1, -1, -1, 269, 58,
806 59, -1, -1, -1, 63, -1, -1, -1, -1, 280,
807 -1, 282, 283, 284, 285, 286, -1, -1, -1, -1,
808 291, 292, 293, 294, 295, 296, -1, -1, 299, -1,
809 -1, -1, -1, -1, 93, -1, -1, 308, -1, 310,
810 311, -1, 257, 258, 259, 260, 261, -1, 263, 264,
811 265, -1, 33, -1, 269, 36, 37, 38, -1, 40,
812 41, 42, 43, -1, 45, 280, -1, 282, 283, 284,
813 285, 286, -1, -1, -1, -1, 291, 292, 293, 294,
814 295, 296, -1, 64, 299, -1, -1, -1, -1, -1,
815 -1, -1, -1, 308, -1, 310, 311, -1, -1, -1,
816 -1, 257, 258, 259, 260, 261, -1, 263, 264, 265,
817 91, 33, -1, 269, 36, 37, 38, -1, 40, -1,
818 42, 43, -1, 45, 280, -1, 282, 283, 284, 285,
819 286, -1, -1, -1, -1, 291, 292, 293, 294, 295,
820 296, -1, 64, 299, -1, 126, -1, -1, -1, -1,
821 -1, -1, 308, -1, 310, 311, -1, 272, 273, 274,
822 275, -1, -1, -1, -1, -1, 281, 33, -1, 91,
823 36, 37, 38, 288, 40, 41, 42, 43, -1, 45,
824 -1, -1, 297, 298, -1, 300, 301, 302, 303, 304,
825 -1, -1, -1, -1, -1, -1, -1, -1, 64, -1,
826 -1, -1, -1, -1, 126, -1, -1, -1, -1, -1,
827 -1, -1, -1, 272, 273, 274, 275, -1, -1, -1,
828 -1, -1, 281, 33, -1, 91, 36, 37, 38, -1,
829 40, 41, 42, 43, -1, 45, -1, -1, 297, 298,
830 -1, 300, 301, 302, 303, 304, -1, -1, -1, -1,
831 -1, -1, -1, -1, 64, -1, -1, -1, -1, -1,
832 126, -1, -1, -1, -1, -1, -1, -1, -1, -1,
833 -1, -1, -1, -1, -1, -1, 257, 258, 259, 260,
834 261, 91, 263, 264, 265, -1, 33, -1, 269, 36,
835 37, 38, -1, 40, 41, 42, 43, -1, 45, 280,
836 -1, 282, 283, 284, 285, 286, -1, -1, -1, -1,
837 291, 292, 293, 294, 295, 296, 126, 64, 299, -1,
838 -1, -1, -1, -1, -1, -1, -1, 308, -1, 310,
839 311, -1, -1, -1, 256, 257, 258, 259, 260, 261,
840 -1, 263, 264, 265, 91, -1, -1, 269, -1, -1,
841 -1, -1, -1, -1, -1, -1, -1, -1, 280, -1,
842 282, 283, 284, 285, 286, -1, -1, -1, -1, 291,
843 292, 293, 294, 295, 296, -1, -1, 299, -1, 126,
844 91, -1, -1, -1, 41, -1, 308, 44, 310, 311,
845 -1, 257, 258, 259, 260, 261, -1, 263, 264, 265,
846 -1, 58, 59, 269, -1, -1, 63, -1, -1, -1,
847 -1, -1, 123, -1, 280, -1, 282, 283, 284, 285,
848 286, -1, -1, -1, -1, 291, 292, 293, 294, 295,
849 296, -1, -1, 299, 91, -1, 93, -1, -1, -1,
850 -1, -1, 308, -1, 310, 311, -1, 257, 258, 259,
851 260, 261, -1, 263, 264, 265, -1, 33, -1, 269,
852 36, 37, 38, -1, 40, -1, 42, 43, -1, 45,
853 280, -1, 282, 283, 284, 285, 286, -1, -1, -1,
854 -1, 291, 292, 293, 294, 295, 296, -1, 64, 299,
855 -1, -1, -1, -1, -1, -1, -1, -1, 308, -1,
856 310, 311, -1, -1, -1, -1, 41, -1, -1, 44,
857 257, 258, 259, 260, 261, 91, 263, 264, 265, -1,
858 -1, -1, 269, 58, 59, -1, -1, -1, 63, -1,
859 -1, -1, -1, 280, -1, 282, 283, 284, 285, 286,
860 -1, -1, -1, -1, 291, 292, 293, 294, 295, 296,
861 126, -1, 299, 41, -1, -1, 44, -1, 93, -1,
862 -1, 308, -1, 310, 311, -1, -1, -1, -1, -1,
863 58, 59, -1, -1, -1, 63, 287, 288, 289, 290,
864 -1, -1, -1, -1, -1, -1, -1, -1, 123, -1,
865 -1, 302, 303, 304, 305, 306, -1, -1, 309, -1,
866 -1, 312, 313, 314, -1, 93, -1, -1, -1, -1,
867 -1, -1, -1, -1, -1, 272, 273, 274, 275, -1,
868 41, -1, -1, -1, 281, -1, -1, -1, -1, -1,
869 287, 288, 289, 290, -1, 123, -1, 58, 59, -1,
870 297, 298, 63, 300, 301, 302, 303, 304, 305, 306,
871 -1, -1, 309, -1, -1, 312, 313, 314, -1, -1,
872 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
873 91, -1, 93, -1, 41, -1, -1, -1, -1, -1,
874 -1, 257, 258, 259, 260, 261, -1, 263, 264, 265,
875 -1, 58, 59, 269, -1, -1, 63, -1, -1, -1,
876 -1, -1, 123, -1, 280, -1, 282, 283, 284, 285,
877 286, -1, -1, -1, -1, 291, 292, 293, 294, 295,
878 296, -1, -1, 299, 91, -1, 93, -1, -1, -1,
879 41, -1, 308, 44, 310, 311, -1, 272, 273, 274,
880 275, -1, -1, -1, -1, -1, 281, 58, 59, -1,
881 -1, -1, 287, 288, 289, 290, 123, -1, -1, -1,
882 -1, -1, 297, 298, -1, 300, 301, 302, 303, 304,
883 305, 306, -1, -1, 309, -1, -1, 312, 313, 314,
884 -1, -1, 93, -1, 272, 273, 274, 275, -1, 41,
885 -1, -1, 44, 281, -1, -1, -1, -1, -1, 287,
886 288, 289, 290, -1, -1, -1, 58, 59, -1, 297,
887 298, 63, 300, 301, 302, 303, 304, 305, 306, 25,
888 26, 309, -1, -1, 312, 313, 314, -1, -1, -1,
889 -1, 37, -1, -1, -1, -1, -1, 43, 44, 45,
890 -1, 93, -1, -1, 50, -1, -1, -1, -1, -1,
891 -1, 272, 273, 274, 275, -1, 62, 63, 64, 65,
892 281, -1, -1, -1, -1, -1, 287, 288, 289, 290,
893 -1, 123, 41, -1, -1, 44, 297, 298, -1, 300,
894 301, 302, 303, 304, 305, 306, -1, -1, 309, 58,
895 59, 312, 313, 314, 63, -1, -1, -1, -1, -1,
896 -1, 107, -1, -1, -1, 272, 273, 274, 275, -1,
897 -1, -1, -1, -1, 281, -1, -1, -1, -1, -1,
898 287, 288, 289, 290, 93, -1, 41, -1, -1, -1,
899 297, 298, -1, 300, 301, 302, 303, 304, 305, 306,
900 -1, -1, 309, 58, 59, 312, 313, 314, 63, -1,
901 -1, -1, -1, -1, 123, -1, -1, -1, -1, -1,
902 166, 272, 273, 274, 275, -1, -1, -1, -1, -1,
903 -1, -1, -1, -1, 41, -1, 91, 44, 93, -1,
904 -1, -1, -1, -1, 190, -1, 297, 298, -1, 300,
905 -1, 58, 59, -1, -1, -1, 63, -1, -1, -1,
906 -1, -1, -1, -1, -1, -1, -1, -1, 123, -1,
907 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
908 272, 273, 274, 275, -1, 41, 93, -1, 44, 281,
909 -1, -1, -1, -1, -1, 287, 288, 289, 290, -1,
910 -1, -1, 58, 59, -1, 297, 298, 63, 300, 301,
911 302, 303, 304, 305, 306, -1, 123, 309, -1, -1,
912 312, 313, 314, -1, -1, -1, -1, -1, -1, -1,
913 41, -1, -1, 44, -1, -1, -1, 93, -1, -1,
914 -1, -1, -1, -1, -1, -1, -1, 58, 59, -1,
915 -1, -1, 63, -1, -1, -1, -1, -1, -1, -1,
916 -1, -1, -1, 272, 273, 274, 275, -1, -1, -1,
917 -1, -1, 281, -1, -1, -1, -1, -1, 287, 288,
918 289, 290, 93, -1, 41, -1, -1, 44, 297, 298,
919 -1, 300, 301, 302, 303, 304, 305, 306, -1, -1,
920 309, 58, 59, 312, 313, 314, 63, -1, -1, -1,
921 -1, -1, -1, -1, -1, -1, -1, 272, 273, 274,
922 275, -1, -1, -1, -1, -1, 281, -1, -1, -1,
923 -1, -1, 287, 288, 289, 290, 93, -1, -1, -1,
924 -1, -1, 297, 298, -1, 300, 301, 302, 303, 304,
925 305, 306, -1, -1, 309, -1, -1, 312, 313, 314,
926 -1, -1, -1, -1, -1, 272, 273, 274, 275, -1,
927 41, -1, -1, 44, 281, -1, -1, -1, -1, -1,
928 287, 288, 289, 290, -1, -1, -1, 58, 59, -1,
929 297, 298, 63, 300, 301, 302, 303, 304, 305, 306,
930 -1, -1, 309, -1, -1, 312, 313, 314, -1, -1,
931 -1, -1, -1, -1, -1, -1, 272, 273, 274, 275,
932 -1, 41, 93, -1, 44, 281, -1, -1, -1, -1,
933 -1, 287, 288, 289, 290, -1, -1, -1, 58, 59,
934 -1, 297, 298, 63, 300, 301, 302, 303, 304, 305,
935 306, -1, -1, 309, -1, -1, 312, 313, 314, -1,
936 -1, 272, 273, 274, 275, -1, -1, -1, -1, -1,
937 281, -1, -1, 93, -1, -1, 287, 288, 289, 290,
938 -1, -1, 41, -1, -1, 44, 297, 298, -1, 300,
939 301, 302, 303, 304, 305, 306, -1, -1, 309, 58,
940 59, 312, 313, 314, 63, -1, -1, -1, -1, -1,
941 -1, -1, -1, -1, -1, 272, 273, 274, 275, -1,
942 41, -1, -1, 44, 281, -1, -1, -1, -1, -1,
943 287, 288, 289, 290, 93, -1, -1, 58, 59, -1,
944 297, 298, 63, 300, 301, 302, 303, 304, 305, 306,
945 -1, -1, 309, -1, -1, 312, 313, 314, -1, 41,
946 -1, -1, 44, -1, -1, -1, -1, -1, -1, -1,
947 41, -1, 93, 44, -1, -1, 58, 59, -1, -1,
948 -1, 63, -1, -1, -1, -1, -1, 58, 59, -1,
949 -1, -1, 63, -1, -1, -1, -1, -1, -1, -1,
950 -1, 272, 273, 274, 275, -1, 41, -1, -1, 44,
951 281, 93, -1, -1, -1, -1, 287, 288, 289, 290,
952 -1, -1, 93, 58, 59, -1, 297, 298, 63, 300,
953 301, 302, 303, 304, 305, 306, -1, -1, 309, -1,
954 -1, 312, 313, 314, -1, -1, -1, -1, -1, -1,
955 -1, -1, 272, 273, 274, 275, -1, 41, 93, -1,
956 44, 281, -1, -1, -1, -1, -1, 287, 288, 289,
957 290, -1, -1, -1, 58, 59, -1, 297, 298, 63,
958 300, 301, 302, 303, 304, 305, 306, -1, -1, 309,
959 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
960 -1, -1, -1, 41, -1, -1, 44, -1, -1, 93,
961 -1, -1, -1, 272, 273, 274, 275, -1, -1, -1,
962 58, 59, 281, -1, -1, 63, -1, -1, 287, 288,
963 289, 290, -1, -1, -1, -1, -1, -1, 297, 298,
964 -1, 300, 301, 302, 303, 304, 305, 306, -1, -1,
965 309, 272, 273, 274, 275, 93, -1, -1, -1, -1,
966 281, -1, -1, -1, -1, -1, 287, 288, 289, 290,
967 -1, -1, -1, -1, -1, -1, 297, 298, -1, 300,
968 301, 302, 303, 304, 305, 306, -1, -1, -1, -1,
969 272, 273, 274, 275, -1, 41, -1, -1, 44, 281,
970 -1, 272, 273, 274, 275, 287, 288, 289, 290, -1,
971 281, -1, 58, 59, -1, 297, 298, 63, 300, 301,
972 302, 303, 304, 305, 306, -1, 297, 298, -1, 300,
973 301, 302, 303, 304, -1, -1, -1, 272, 273, 274,
974 275, -1, 41, -1, -1, 44, 281, 93, -1, -1,
975 -1, -1, 287, 288, 289, 290, -1, -1, -1, 58,
976 59, -1, 297, 298, 63, 300, 301, 302, 303, 304,
977 305, 306, -1, -1, -1, -1, -1, -1, 41, -1,
978 -1, 44, -1, -1, -1, -1, -1, -1, 272, 273,
979 274, 275, -1, -1, 93, 58, 59, 281, -1, -1,
980 63, -1, -1, 287, 288, 289, 290, -1, -1, -1,
981 -1, -1, -1, 297, 298, -1, 300, 301, 302, 303,
982 304, 305, 306, 41, -1, -1, 44, -1, -1, -1,
983 93, -1, -1, -1, 272, 273, 274, 275, -1, -1,
984 58, 59, -1, 281, -1, 63, -1, -1, -1, 287,
985 288, 289, 290, -1, -1, -1, -1, -1, -1, 297,
986 298, -1, 300, 301, 302, 303, 304, 305, 306, 41,
987 -1, -1, 44, -1, -1, 93, -1, -1, -1, -1,
988 -1, -1, -1, -1, -1, -1, 58, 59, -1, -1,
989 -1, 63, -1, -1, -1, -1, -1, -1, -1, -1,
990 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
991 -1, -1, -1, -1, 41, -1, -1, 44, -1, -1,
992 -1, 93, -1, -1, -1, -1, 272, 273, 274, 275,
993 -1, 58, 59, -1, -1, 281, 63, -1, -1, -1,
994 -1, 287, 288, 289, 290, -1, -1, -1, -1, -1,
995 -1, 297, 298, -1, 300, 301, 302, 303, 304, 305,
996 306, 41, -1, -1, 44, -1, 93, -1, -1, -1,
997 -1, -1, -1, 272, 273, 274, 275, -1, 58, 59,
998 -1, -1, 281, 63, -1, -1, -1, -1, 287, 288,
999 289, 290, -1, -1, -1, -1, -1, 41, 297, 298,
1000 44, 300, 301, 302, 303, 304, 305, 306, -1, 272,
1001 273, 274, 275, 93, 58, 59, -1, -1, 281, 63,
1002 -1, -1, -1, -1, 287, 288, 289, 290, -1, -1,
1003 -1, -1, -1, -1, 297, 298, -1, 300, 301, 302,
1004 303, 304, 305, 41, -1, -1, 44, -1, -1, 93,
1005 -1, -1, -1, -1, 272, 273, 274, 275, -1, -1,
1006 58, 59, -1, 281, -1, 63, -1, -1, -1, 287,
1007 288, -1, 290, -1, -1, -1, -1, -1, -1, 297,
1008 298, -1, 300, 301, 302, 303, 304, 305, 41, -1,
1009 -1, 44, -1, -1, -1, 93, -1, -1, -1, -1,
1010 272, 273, 274, 275, -1, 58, 59, -1, -1, 281,
1011 63, -1, 91, -1, -1, 287, 288, -1, -1, -1,
1012 41, -1, -1, 44, -1, 297, 298, -1, 300, 301,
1013 302, 303, 304, 305, -1, -1, -1, 58, 59, -1,
1014 93, -1, 63, -1, 123, 272, 273, 274, 275, -1,
1015 -1, -1, -1, -1, 281, -1, -1, -1, -1, -1,
1016 287, 288, 41, -1, -1, 44, -1, -1, -1, -1,
1017 297, 298, 93, 300, 301, 302, 303, 304, -1, 58,
1018 59, -1, 41, -1, 63, 44, -1, -1, -1, -1,
1019 -1, -1, 272, 273, 274, 275, -1, -1, -1, 58,
1020 59, 281, -1, -1, -1, 58, -1, 287, 288, 41,
1021 63, -1, 44, -1, 93, -1, -1, 297, 298, -1,
1022 300, 301, 302, 303, 304, -1, 58, 59, 272, 273,
1023 274, 275, -1, -1, 93, -1, -1, 281, 91, -1,
1024 -1, -1, -1, 287, 288, 41, -1, -1, 44, -1,
1025 -1, -1, -1, 297, 298, -1, 300, 301, 302, 303,
1026 304, 93, 58, 59, -1, -1, -1, -1, -1, -1,
1027 123, -1, -1, -1, 272, 273, 274, 275, -1, -1,
1028 -1, -1, -1, 281, -1, -1, -1, -1, -1, 287,
1029 288, -1, -1, -1, -1, -1, -1, 93, -1, 297,
1030 298, 63, 300, 301, 302, 303, 304, -1, 287, 288,
1031 289, 290, -1, -1, -1, -1, -1, -1, -1, 272,
1032 273, 274, 275, -1, 303, 304, 305, 306, 281, 91,
1033 309, -1, -1, 312, 313, 314, -1, -1, -1, -1,
1034 -1, -1, -1, -1, 297, 298, -1, 300, 301, 302,
1035 303, 272, 273, 274, 275, -1, -1, -1, -1, -1,
1036 281, 123, -1, -1, -1, -1, -1, -1, -1, -1,
1037 -1, -1, -1, -1, -1, -1, 297, 298, -1, 300,
1038 301, 302, -1, -1, -1, -1, -1, -1, -1, -1,
1039 -1, -1, -1, 272, 273, 274, 275, -1, -1, -1,
1040 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1041 -1, -1, -1, 272, 273, 274, 275, -1, 297, 298,
1042 -1, 300, -1, -1, -1, -1, -1, -1, 281, -1,
1043 -1, -1, -1, -1, 287, 288, 289, 290, 297, 298,
1044 272, 273, 274, 275, -1, -1, -1, 300, 301, 302,
1045 303, 304, 305, 306, -1, -1, 309, -1, -1, 312,
1046 313, 314, -1, -1, -1, 297, 298, -1, -1, -1,
1047 -1, -1, -1, -1, 30, -1, 272, 273, 274, 275,
1048 -1, -1, 38, -1, -1, -1, 42, -1, -1, 45,
1049 -1, -1, -1, -1, -1, -1, 52, 53, 54, 55,
1050 56, 297, 298, 59, 60, -1, -1, -1, -1, -1,
1051 66, -1, -1, -1, -1, -1, -1, -1, -1, 281,
1052 -1, -1, -1, -1, -1, 287, 288, 289, 290, -1,
1053 -1, -1, -1, -1, -1, -1, -1, 93, -1, 301,
1054 302, 303, 304, 305, 306, -1, -1, 309, -1, -1,
1055 312, 313, 314, -1, -1, -1, -1, -1, -1, -1,
1056 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1057 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1058 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1059 -1, -1, -1, -1, 150, 151, 152, 153, 154, 155,
1060 156, 157, 158, 159, 160, 161, 162, 163, -1, -1,
1061 -1, -1, -1, -1, -1, -1, -1, -1, -1, 175,
1062 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1063 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1064 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1065 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1066 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1067 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1068 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1069 -1, -1, -1, -1, -1, -1, -1, 253, -1, -1,
1070 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1071 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1072 -1, -1, -1, -1, -1, -1, -1, -1, 284,
1078 #define YYMAXTOKEN 314
1081 "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,
1082 "'!'",0,0,"'$'","'%'","'&'",0,"'('","')'","'*'","'+'","','","'-'",0,0,0,0,0,0,0,
1083 0,0,0,0,0,"':'","';'",0,0,0,"'?'","'@'",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1084 0,0,0,0,0,0,"'['",0,"']'",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1085 0,0,"'{'",0,"'}'","'~'",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1086 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1087 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1088 0,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",
1089 "PMFUNC","PRIVATEREF","FUNC0SUB","UNIOPSUB","LSTOPSUB","LABEL","FORMAT","SUB",
1090 "ANONSUB","PACKAGE","USE","WHILE","UNTIL","IF","UNLESS","ELSE","ELSIF",
1091 "CONTINUE","FOR","LOOPEX","DOTDOT","FUNC0","FUNC1","FUNC","UNIOP","LSTOP",
1092 "RELOP","EQOP","MULOP","ADDOP","DOLSHARP","DO","HASHBRACK","NOAMP","LOCAL","MY",
1093 "OROP","ANDOP","NOTOP","ASSIGNOP","OROR","ANDAND","BITOROP","BITANDOP",
1094 "SHIFTOP","MATCHOP","UMINUS","REFGEN","POWOP","PREINC","PREDEC","POSTINC",
1100 "prog : $$1 lineseq",
1101 "block : '{' remember lineseq '}'",
1103 "mblock : '{' mremember lineseq '}'",
1106 "lineseq : lineseq decl",
1107 "lineseq : lineseq line",
1108 "line : label cond",
1111 "line : label sideff ';'",
1114 "sideff : expr IF expr",
1115 "sideff : expr UNLESS expr",
1116 "sideff : expr WHILE expr",
1117 "sideff : expr UNTIL iexpr",
1119 "else : ELSE mblock",
1120 "else : ELSIF '(' mexpr ')' mblock else",
1121 "cond : IF '(' remember mexpr ')' mblock else",
1122 "cond : UNLESS '(' remember miexpr ')' mblock else",
1124 "cont : CONTINUE block",
1125 "loop : label WHILE '(' remember mtexpr ')' mblock cont",
1126 "loop : label UNTIL '(' remember miexpr ')' mblock cont",
1127 "loop : label FOR MY remember my_scalar '(' mexpr ')' mblock cont",
1128 "loop : label FOR scalar '(' remember mexpr ')' mblock cont",
1129 "loop : label FOR '(' remember mexpr ')' mblock cont",
1130 "loop : label FOR '(' remember mnexpr ';' mtexpr ';' mnexpr ')' mblock",
1131 "loop : label block cont",
1147 "format : FORMAT startformsub formname block",
1150 "subrout : SUB startsub subname proto subbody",
1159 "package : PACKAGE WORD ';'",
1160 "package : PACKAGE ';'",
1162 "use : USE startsub $$2 WORD WORD listexpr ';'",
1163 "expr : expr ANDOP expr",
1164 "expr : expr OROP expr",
1166 "argexpr : argexpr ','",
1167 "argexpr : argexpr ',' term",
1169 "listop : LSTOP indirob argexpr",
1170 "listop : FUNC '(' indirob expr ')'",
1171 "listop : term ARROW method '(' listexprcom ')'",
1172 "listop : METHOD indirob listexpr",
1173 "listop : FUNCMETH indirob '(' listexprcom ')'",
1174 "listop : LSTOP listexpr",
1175 "listop : FUNC '(' listexprcom ')'",
1177 "listop : LSTOPSUB startanonsub block $$3 listexpr",
1180 "term : term ASSIGNOP term",
1181 "term : term POWOP term",
1182 "term : term MULOP term",
1183 "term : term ADDOP term",
1184 "term : term SHIFTOP term",
1185 "term : term RELOP term",
1186 "term : term EQOP term",
1187 "term : term BITANDOP term",
1188 "term : term BITOROP term",
1189 "term : term DOTDOT term",
1190 "term : term ANDAND term",
1191 "term : term OROR term",
1192 "term : term '?' term ':' term",
1193 "term : term MATCHOP term",
1198 "term : REFGEN term",
1199 "term : term POSTINC",
1200 "term : term POSTDEC",
1201 "term : PREINC term",
1202 "term : PREDEC term",
1203 "term : local term",
1204 "term : '(' expr ')'",
1206 "term : '[' expr ']'",
1208 "term : HASHBRACK expr ';' '}'",
1209 "term : HASHBRACK ';' '}'",
1210 "term : ANONSUB startanonsub proto block",
1212 "term : star '{' expr ';' '}'",
1214 "term : scalar '[' expr ']'",
1215 "term : term ARROW '[' expr ']'",
1216 "term : term '[' expr ']'",
1220 "term : scalar '{' expr ';' '}'",
1221 "term : term ARROW '{' expr ';' '}'",
1222 "term : term '{' expr ';' '}'",
1223 "term : '(' expr ')' '[' expr ']'",
1224 "term : '(' ')' '[' expr ']'",
1225 "term : ary '[' expr ']'",
1226 "term : ary '{' expr ';' '}'",
1229 "term : amper '(' ')'",
1230 "term : amper '(' expr ')'",
1231 "term : NOAMP WORD listexpr",
1234 "term : DO WORD '(' ')'",
1235 "term : DO WORD '(' expr ')'",
1236 "term : DO scalar '(' ')'",
1237 "term : DO scalar '(' expr ')'",
1238 "term : term ARROW '(' ')'",
1239 "term : term ARROW '(' expr ')'",
1241 "term : LOOPEX term",
1242 "term : NOTOP argexpr",
1244 "term : UNIOP block",
1245 "term : UNIOP term",
1246 "term : UNIOPSUB term",
1248 "term : FUNC0 '(' ')'",
1250 "term : FUNC1 '(' ')'",
1251 "term : FUNC1 '(' expr ')'",
1252 "term : PMFUNC '(' term ')'",
1253 "term : PMFUNC '(' term ',' term ')'",
1257 "listexpr : argexpr",
1259 "listexprcom : expr",
1260 "listexprcom : expr ','",
1263 "my_scalar : scalar",
1264 "amper : '&' indirob",
1265 "scalar : '$' indirob",
1266 "ary : '@' indirob",
1267 "hsh : '%' indirob",
1268 "arylen : DOLSHARP indirob",
1269 "star : '*' indirob",
1273 "indirob : PRIVATEREF",
1276 #define yyclearin (yychar=(-1))
1277 #define yyerrok (yyerrflag=0)
1280 #define YYMAXDEPTH YYSTACKSIZE
1284 #define YYSTACKSIZE YYMAXDEPTH
1286 #define YYSTACKSIZE 500
1287 #define YYMAXDEPTH 500
1298 #line 1360 "perly.c"
1299 #define YYABORT goto yyabort
1300 #define YYACCEPT goto yyaccept
1301 #define YYERROR goto yyerrlab
1315 yydestruct(void *ptr)
1317 struct ysv* ysave = (struct ysv*)ptr;
1318 if (ysave->yyss) Safefree(ysave->yyss);
1319 if (ysave->yyvs) Safefree(ysave->yyvs);
1320 yydebug = ysave->oldyydebug;
1321 yynerrs = ysave->oldyynerrs;
1322 yyerrflag = ysave->oldyyerrflag;
1323 yychar = ysave->oldyychar;
1324 yyval = ysave->oldyyval;
1325 yylval = ysave->oldyylval;
1332 register int yym, yyn, yystate;
1333 register short *yyssp;
1334 register YYSTYPE *yyvsp;
1337 unsigned yystacksize = YYSTACKSIZE;
1342 extern char *getenv();
1348 New(73, ysave, 1, struct ysv);
1349 SAVEDESTRUCTOR(yydestruct, ysave);
1350 ysave->oldyydebug = yydebug;
1351 ysave->oldyynerrs = yynerrs;
1352 ysave->oldyyerrflag = yyerrflag;
1353 ysave->oldyychar = yychar;
1354 ysave->oldyyval = yyval;
1355 ysave->oldyylval = yylval;
1358 if (yys = getenv("YYDEBUG"))
1361 if (yyn >= '0' && yyn <= '9')
1362 yydebug = yyn - '0';
1371 ** Initialize private stacks (yyparse may be called from an action)
1373 New(73, yyss, yystacksize, short);
1374 New(73, yyvs, yystacksize, YYSTYPE);
1382 *yyssp = yystate = 0;
1385 if (yyn = yydefred[yystate]) goto yyreduce;
1388 if ((yychar = yylex()) < 0) yychar = 0;
1393 if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
1394 if (!yys) yys = "illegal-symbol";
1395 PerlIO_printf(Perl_debug_log, "yydebug: state %d, reading %d (%s)\n", yystate,
1400 if ((yyn = yysindex[yystate]) && (yyn += yychar) >= 0 &&
1401 yyn <= YYTABLESIZE && yycheck[yyn] == yychar)
1405 PerlIO_printf(Perl_debug_log, "yydebug: state %d, shifting to state %d\n",
1406 yystate, yytable[yyn]);
1408 if (yyssp >= yyss + yystacksize - 1)
1411 ** reallocate and recover. Note that pointers
1412 ** have to be reset, or bad things will happen
1414 int yyps_index = (yyssp - yyss);
1415 int yypv_index = (yyvsp - yyvs);
1416 yystacksize += YYSTACKSIZE;
1417 ysave->yyvs = yyvs =
1418 (YYSTYPE*)realloc((char*)yyvs,yystacksize * sizeof(YYSTYPE));
1419 ysave->yyss = yyss =
1420 (short*)realloc((char*)yyss,yystacksize * sizeof(short));
1423 yyssp = yyss + yyps_index;
1424 yyvsp = yyvs + yypv_index;
1426 *++yyssp = yystate = yytable[yyn];
1429 if (yyerrflag > 0) --yyerrflag;
1432 if ((yyn = yyrindex[yystate]) && (yyn += yychar) >= 0 &&
1433 yyn <= YYTABLESIZE && yycheck[yyn] == yychar)
1438 if (yyerrflag) goto yyinrecovery;
1443 yyerror("syntax error");
1455 if ((yyn = yysindex[*yyssp]) && (yyn += YYERRCODE) >= 0 &&
1456 yyn <= YYTABLESIZE && yycheck[yyn] == YYERRCODE)
1460 PerlIO_printf(Perl_debug_log,
1461 "yydebug: state %d, error recovery shifting to state %d\n",
1462 *yyssp, yytable[yyn]);
1464 if (yyssp >= yyss + yystacksize - 1)
1467 ** reallocate and recover. Note that pointers
1468 ** have to be reset, or bad things will happen
1470 int yyps_index = (yyssp - yyss);
1471 int yypv_index = (yyvsp - yyvs);
1472 yystacksize += YYSTACKSIZE;
1473 ysave->yyvs = yyvs = (YYSTYPE*)realloc((char*)yyvs,
1474 yystacksize * sizeof(YYSTYPE));
1475 ysave->yyss = yyss = (short*)realloc((char*)yyss,
1476 yystacksize * sizeof(short));
1479 yyssp = yyss + yyps_index;
1480 yyvsp = yyvs + yypv_index;
1482 *++yyssp = yystate = yytable[yyn];
1490 PerlIO_printf(Perl_debug_log,
1491 "yydebug: error recovery discarding state %d\n",
1494 if (yyssp <= yyss) goto yyabort;
1502 if (yychar == 0) goto yyabort;
1507 if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
1508 if (!yys) yys = "illegal-symbol";
1509 PerlIO_printf(Perl_debug_log,
1510 "yydebug: state %d, error recovery discards token %d (%s)\n",
1511 yystate, yychar, yys);
1520 PerlIO_printf(Perl_debug_log, "yydebug: state %d, reducing by rule %d (%s)\n",
1521 yystate, yyn, yyrule[yyn]);
1524 yyval = yyvsp[1-yym];
1530 #if defined(YYDEBUG) && defined(DEBUGGING)
1531 yydebug = (debug & 1);
1538 { newPROG(yyvsp[0].opval); }
1542 { if (copline > (line_t)yyvsp[-3].ival)
1543 copline = yyvsp[-3].ival;
1544 yyval.opval = block_end(yyvsp[-2].ival, yyvsp[-1].opval); }
1548 { yyval.ival = block_start(TRUE); }
1552 { if (copline > (line_t)yyvsp[-3].ival)
1553 copline = yyvsp[-3].ival;
1554 yyval.opval = block_end(yyvsp[-2].ival, yyvsp[-1].opval); }
1558 { yyval.ival = block_start(FALSE); }
1562 { yyval.opval = Nullop; }
1566 { yyval.opval = yyvsp[-1].opval; }
1570 { yyval.opval = append_list(OP_LINESEQ,
1571 (LISTOP*)yyvsp[-1].opval, (LISTOP*)yyvsp[0].opval);
1572 pad_reset_pending = TRUE;
1573 if (yyvsp[-1].opval && yyvsp[0].opval) hints |= HINT_BLOCK_SCOPE; }
1577 { yyval.opval = newSTATEOP(0, yyvsp[-1].pval, yyvsp[0].opval); }
1581 { if (yyvsp[-1].pval != Nullch) {
1582 yyval.opval = newSTATEOP(0, yyvsp[-1].pval, newOP(OP_NULL, 0));
1585 yyval.opval = Nullop;
1592 { yyval.opval = newSTATEOP(0, yyvsp[-2].pval, yyvsp[-1].opval);
1597 { yyval.opval = Nullop; }
1601 { yyval.opval = yyvsp[0].opval; }
1605 { yyval.opval = newLOGOP(OP_AND, 0, yyvsp[0].opval, yyvsp[-2].opval); }
1609 { yyval.opval = newLOGOP(OP_OR, 0, yyvsp[0].opval, yyvsp[-2].opval); }
1613 { yyval.opval = newLOOPOP(OPf_PARENS, 1, scalar(yyvsp[0].opval), yyvsp[-2].opval); }
1617 { yyval.opval = newLOOPOP(OPf_PARENS, 1, yyvsp[0].opval, yyvsp[-2].opval);}
1621 { yyval.opval = Nullop; }
1625 { yyval.opval = scope(yyvsp[0].opval); }
1629 { copline = yyvsp[-5].ival;
1630 yyval.opval = newSTATEOP(0, Nullch,
1631 newCONDOP(0, yyvsp[-3].opval, scope(yyvsp[-1].opval), yyvsp[0].opval));
1632 hints |= HINT_BLOCK_SCOPE; }
1636 { copline = yyvsp[-6].ival;
1637 yyval.opval = block_end(yyvsp[-4].ival,
1638 newCONDOP(0, yyvsp[-3].opval, scope(yyvsp[-1].opval), yyvsp[0].opval)); }
1642 { copline = yyvsp[-6].ival;
1643 yyval.opval = block_end(yyvsp[-4].ival,
1644 newCONDOP(0, yyvsp[-3].opval, scope(yyvsp[-1].opval), yyvsp[0].opval)); }
1648 { yyval.opval = Nullop; }
1652 { yyval.opval = scope(yyvsp[0].opval); }
1656 { copline = yyvsp[-6].ival;
1657 yyval.opval = block_end(yyvsp[-4].ival,
1658 newSTATEOP(0, yyvsp[-7].pval,
1659 newWHILEOP(0, 1, (LOOP*)Nullop,
1660 yyvsp[-6].ival, yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval))); }
1664 { copline = yyvsp[-6].ival;
1665 yyval.opval = block_end(yyvsp[-4].ival,
1666 newSTATEOP(0, yyvsp[-7].pval,
1667 newWHILEOP(0, 1, (LOOP*)Nullop,
1668 yyvsp[-6].ival, yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval))); }
1672 { yyval.opval = block_end(yyvsp[-6].ival,
1673 newFOROP(0, yyvsp[-9].pval, yyvsp[-8].ival, yyvsp[-5].opval, yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval)); }
1677 { yyval.opval = block_end(yyvsp[-4].ival,
1678 newFOROP(0, yyvsp[-8].pval, yyvsp[-7].ival, mod(yyvsp[-6].opval, OP_ENTERLOOP),
1679 yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval)); }
1683 { yyval.opval = block_end(yyvsp[-4].ival,
1684 newFOROP(0, yyvsp[-7].pval, yyvsp[-6].ival, Nullop, yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval)); }
1688 { OP *forop = append_elem(OP_LINESEQ,
1689 scalar(yyvsp[-6].opval),
1690 newWHILEOP(0, 1, (LOOP*)Nullop,
1691 yyvsp[-9].ival, scalar(yyvsp[-4].opval),
1692 yyvsp[0].opval, scalar(yyvsp[-2].opval)));
1693 copline = yyvsp[-9].ival;
1694 yyval.opval = block_end(yyvsp[-7].ival, newSTATEOP(0, yyvsp[-10].pval, forop)); }
1698 { yyval.opval = newSTATEOP(0, yyvsp[-2].pval,
1699 newWHILEOP(0, 1, (LOOP*)Nullop,
1700 NOLINE, Nullop, yyvsp[-1].opval, yyvsp[0].opval)); }
1704 { yyval.opval = Nullop; }
1708 { (void)scan_num("1"); yyval.opval = yylval.opval; }
1712 { yyval.opval = invert(scalar(yyvsp[0].opval)); }
1716 { yyval.opval = yyvsp[0].opval; intro_my(); }
1720 { yyval.opval = yyvsp[0].opval; intro_my(); }
1724 { yyval.opval = yyvsp[0].opval; intro_my(); }
1728 { yyval.opval = yyvsp[0].opval; intro_my(); }
1732 { yyval.pval = Nullch; }
1752 { newFORM(yyvsp[-2].ival, yyvsp[-1].opval, yyvsp[0].opval); }
1756 { yyval.opval = yyvsp[0].opval; }
1760 { yyval.opval = Nullop; }
1764 { newSUB(yyvsp[-3].ival, yyvsp[-2].opval, yyvsp[-1].opval, yyvsp[0].opval); }
1768 { yyval.ival = start_subparse(FALSE, 0); }
1772 { yyval.ival = start_subparse(FALSE, CVf_ANON); }
1776 { yyval.ival = start_subparse(TRUE, 0); }
1780 { char *name = SvPV(((SVOP*)yyvsp[0].opval)->op_sv, na);
1781 if (strEQ(name, "BEGIN") || strEQ(name, "END")
1782 || strEQ(name, "INIT"))
1783 CvUNIQUE_on(compcv);
1784 yyval.opval = yyvsp[0].opval; }
1788 { yyval.opval = Nullop; }
1792 { yyval.opval = yyvsp[0].opval; }
1796 { yyval.opval = Nullop; expect = XSTATE; }
1800 { package(yyvsp[-1].opval); }
1804 { package(Nullop); }
1808 { CvUNIQUE_on(compcv); /* It's a BEGIN {} */ }
1812 { utilize(yyvsp[-6].ival, yyvsp[-5].ival, yyvsp[-3].opval, yyvsp[-2].opval, yyvsp[-1].opval); }
1816 { yyval.opval = newLOGOP(OP_AND, 0, yyvsp[-2].opval, yyvsp[0].opval); }
1820 { yyval.opval = newLOGOP(yyvsp[-1].ival, 0, yyvsp[-2].opval, yyvsp[0].opval); }
1824 { yyval.opval = yyvsp[-1].opval; }
1828 { yyval.opval = append_elem(OP_LIST, yyvsp[-2].opval, yyvsp[0].opval); }
1832 { yyval.opval = convert(yyvsp[-2].ival, OPf_STACKED,
1833 prepend_elem(OP_LIST, newGVREF(yyvsp[-2].ival,yyvsp[-1].opval), yyvsp[0].opval) ); }
1837 { yyval.opval = convert(yyvsp[-4].ival, OPf_STACKED,
1838 prepend_elem(OP_LIST, newGVREF(yyvsp[-4].ival,yyvsp[-2].opval), yyvsp[-1].opval) ); }
1842 { yyval.opval = convert(OP_ENTERSUB, OPf_STACKED,
1843 append_elem(OP_LIST,
1844 prepend_elem(OP_LIST, scalar(yyvsp[-5].opval), yyvsp[-1].opval),
1845 newUNOP(OP_METHOD, 0, yyvsp[-3].opval))); }
1849 { yyval.opval = convert(OP_ENTERSUB, OPf_STACKED,
1850 append_elem(OP_LIST,
1851 prepend_elem(OP_LIST, yyvsp[-1].opval, yyvsp[0].opval),
1852 newUNOP(OP_METHOD, 0, yyvsp[-2].opval))); }
1856 { yyval.opval = convert(OP_ENTERSUB, OPf_STACKED,
1857 append_elem(OP_LIST,
1858 prepend_elem(OP_LIST, yyvsp[-3].opval, yyvsp[-1].opval),
1859 newUNOP(OP_METHOD, 0, yyvsp[-4].opval))); }
1863 { yyval.opval = convert(yyvsp[-1].ival, 0, yyvsp[0].opval); }
1867 { yyval.opval = convert(yyvsp[-3].ival, 0, yyvsp[-1].opval); }
1871 { yyvsp[0].opval = newANONSUB(yyvsp[-1].ival, 0, yyvsp[0].opval); }
1875 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
1876 append_elem(OP_LIST,
1877 prepend_elem(OP_LIST, yyvsp[-2].opval, yyvsp[0].opval), yyvsp[-4].opval)); }
1881 { yyval.opval = newASSIGNOP(OPf_STACKED, yyvsp[-2].opval, yyvsp[-1].ival, yyvsp[0].opval); }
1885 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1889 { if (yyvsp[-1].ival != OP_REPEAT)
1890 scalar(yyvsp[-2].opval);
1891 yyval.opval = newBINOP(yyvsp[-1].ival, 0, yyvsp[-2].opval, scalar(yyvsp[0].opval)); }
1895 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1899 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1903 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1907 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1911 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1915 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1919 { yyval.opval = newRANGE(yyvsp[-1].ival, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval));}
1923 { yyval.opval = newLOGOP(OP_AND, 0, yyvsp[-2].opval, yyvsp[0].opval); }
1927 { yyval.opval = newLOGOP(OP_OR, 0, yyvsp[-2].opval, yyvsp[0].opval); }
1931 { yyval.opval = newCONDOP(0, yyvsp[-4].opval, yyvsp[-2].opval, yyvsp[0].opval); }
1935 { yyval.opval = bind_match(yyvsp[-1].ival, yyvsp[-2].opval, yyvsp[0].opval); }
1939 { yyval.opval = newUNOP(OP_NEGATE, 0, scalar(yyvsp[0].opval)); }
1943 { yyval.opval = yyvsp[0].opval; }
1947 { yyval.opval = newUNOP(OP_NOT, 0, scalar(yyvsp[0].opval)); }
1951 { yyval.opval = newUNOP(OP_COMPLEMENT, 0, scalar(yyvsp[0].opval));}
1955 { yyval.opval = newUNOP(OP_REFGEN, 0, mod(yyvsp[0].opval,OP_REFGEN)); }
1959 { yyval.opval = newUNOP(OP_POSTINC, 0,
1960 mod(scalar(yyvsp[-1].opval), OP_POSTINC)); }
1964 { yyval.opval = newUNOP(OP_POSTDEC, 0,
1965 mod(scalar(yyvsp[-1].opval), OP_POSTDEC)); }
1969 { yyval.opval = newUNOP(OP_PREINC, 0,
1970 mod(scalar(yyvsp[0].opval), OP_PREINC)); }
1974 { yyval.opval = newUNOP(OP_PREDEC, 0,
1975 mod(scalar(yyvsp[0].opval), OP_PREDEC)); }
1979 { yyval.opval = localize(yyvsp[0].opval,yyvsp[-1].ival); }
1983 { yyval.opval = sawparens(yyvsp[-1].opval); }
1987 { yyval.opval = sawparens(newNULLLIST()); }
1991 { yyval.opval = newANONLIST(yyvsp[-1].opval); }
1995 { yyval.opval = newANONLIST(Nullop); }
1999 { yyval.opval = newANONHASH(yyvsp[-2].opval); }
2003 { yyval.opval = newANONHASH(Nullop); }
2007 { yyval.opval = newANONSUB(yyvsp[-2].ival, yyvsp[-1].opval, yyvsp[0].opval); }
2011 { yyval.opval = yyvsp[0].opval; }
2015 { yyval.opval = newBINOP(OP_GELEM, 0, newGVREF(0,yyvsp[-4].opval),
2016 scalar(yyvsp[-2].opval)); }
2020 { yyval.opval = yyvsp[0].opval; }
2024 { yyval.opval = newBINOP(OP_AELEM, 0, oopsAV(yyvsp[-3].opval), scalar(yyvsp[-1].opval)); }
2028 { yyval.opval = newBINOP(OP_AELEM, 0,
2029 ref(newAVREF(yyvsp[-4].opval),OP_RV2AV),
2030 scalar(yyvsp[-1].opval));}
2034 { assertref(yyvsp[-3].opval); yyval.opval = newBINOP(OP_AELEM, 0,
2035 ref(newAVREF(yyvsp[-3].opval),OP_RV2AV),
2036 scalar(yyvsp[-1].opval));}
2040 { yyval.opval = yyvsp[0].opval; }
2044 { yyval.opval = yyvsp[0].opval; }
2048 { yyval.opval = newUNOP(OP_AV2ARYLEN, 0, ref(yyvsp[0].opval, OP_AV2ARYLEN));}
2052 { yyval.opval = newBINOP(OP_HELEM, 0, oopsHV(yyvsp[-4].opval), jmaybe(yyvsp[-2].opval));
2053 expect = XOPERATOR; }
2057 { yyval.opval = newBINOP(OP_HELEM, 0,
2058 ref(newHVREF(yyvsp[-5].opval),OP_RV2HV),
2059 jmaybe(yyvsp[-2].opval));
2060 expect = XOPERATOR; }
2064 { assertref(yyvsp[-4].opval); yyval.opval = newBINOP(OP_HELEM, 0,
2065 ref(newHVREF(yyvsp[-4].opval),OP_RV2HV),
2066 jmaybe(yyvsp[-2].opval));
2067 expect = XOPERATOR; }
2071 { yyval.opval = newSLICEOP(0, yyvsp[-1].opval, yyvsp[-4].opval); }
2075 { yyval.opval = newSLICEOP(0, yyvsp[-1].opval, Nullop); }
2079 { yyval.opval = prepend_elem(OP_ASLICE,
2080 newOP(OP_PUSHMARK, 0),
2081 newLISTOP(OP_ASLICE, 0,
2082 list(yyvsp[-1].opval),
2083 ref(yyvsp[-3].opval, OP_ASLICE))); }
2087 { yyval.opval = prepend_elem(OP_HSLICE,
2088 newOP(OP_PUSHMARK, 0),
2089 newLISTOP(OP_HSLICE, 0,
2090 list(yyvsp[-2].opval),
2091 ref(oopsHV(yyvsp[-4].opval), OP_HSLICE)));
2092 expect = XOPERATOR; }
2096 { yyval.opval = yyvsp[0].opval; }
2100 { yyval.opval = newUNOP(OP_ENTERSUB, 0, scalar(yyvsp[0].opval)); }
2104 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED, scalar(yyvsp[-2].opval)); }
2108 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2109 append_elem(OP_LIST, yyvsp[-1].opval, scalar(yyvsp[-3].opval))); }
2113 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2114 append_elem(OP_LIST, yyvsp[0].opval, scalar(yyvsp[-1].opval))); }
2118 { yyval.opval = newUNOP(OP_DOFILE, 0, scalar(yyvsp[0].opval)); }
2122 { yyval.opval = newUNOP(OP_NULL, OPf_SPECIAL, scope(yyvsp[0].opval)); }
2126 { yyval.opval = newUNOP(OP_ENTERSUB,
2127 OPf_SPECIAL|OPf_STACKED,
2128 prepend_elem(OP_LIST,
2130 (OPpENTERSUB_AMPER<<8),
2131 scalar(yyvsp[-2].opval)
2132 )),Nullop)); dep();}
2136 { yyval.opval = newUNOP(OP_ENTERSUB,
2137 OPf_SPECIAL|OPf_STACKED,
2138 append_elem(OP_LIST,
2141 (OPpENTERSUB_AMPER<<8),
2142 scalar(yyvsp[-3].opval)
2147 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_SPECIAL|OPf_STACKED,
2148 prepend_elem(OP_LIST,
2149 scalar(newCVREF(0,scalar(yyvsp[-2].opval))), Nullop)); dep();}
2153 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_SPECIAL|OPf_STACKED,
2154 prepend_elem(OP_LIST,
2156 scalar(newCVREF(0,scalar(yyvsp[-3].opval))))); dep();}
2160 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2161 newCVREF(0, scalar(yyvsp[-3].opval))); }
2165 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2166 append_elem(OP_LIST, yyvsp[-1].opval,
2167 newCVREF(0, scalar(yyvsp[-4].opval)))); }
2171 { yyval.opval = newOP(yyvsp[0].ival, OPf_SPECIAL);
2172 hints |= HINT_BLOCK_SCOPE; }
2176 { yyval.opval = newLOOPEX(yyvsp[-1].ival,yyvsp[0].opval); }
2180 { yyval.opval = newUNOP(OP_NOT, 0, scalar(yyvsp[0].opval)); }
2184 { yyval.opval = newOP(yyvsp[0].ival, 0); }
2188 { yyval.opval = newUNOP(yyvsp[-1].ival, 0, yyvsp[0].opval); }
2192 { yyval.opval = newUNOP(yyvsp[-1].ival, 0, yyvsp[0].opval); }
2196 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2197 append_elem(OP_LIST, yyvsp[0].opval, scalar(yyvsp[-1].opval))); }
2201 { yyval.opval = newOP(yyvsp[0].ival, 0); }
2205 { yyval.opval = newOP(yyvsp[-2].ival, 0); }
2209 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2210 scalar(yyvsp[0].opval)); }
2214 { yyval.opval = newOP(yyvsp[-2].ival, OPf_SPECIAL); }
2218 { yyval.opval = newUNOP(yyvsp[-3].ival, 0, yyvsp[-1].opval); }
2222 { yyval.opval = pmruntime(yyvsp[-3].opval, yyvsp[-1].opval, Nullop); }
2226 { yyval.opval = pmruntime(yyvsp[-5].opval, yyvsp[-3].opval, yyvsp[-1].opval); }
2230 { yyval.opval = Nullop; }
2234 { yyval.opval = yyvsp[0].opval; }
2238 { yyval.opval = Nullop; }
2242 { yyval.opval = yyvsp[0].opval; }
2246 { yyval.opval = yyvsp[-1].opval; }
2258 { in_my = 0; yyval.opval = my(yyvsp[0].opval); }
2262 { yyval.opval = newCVREF(yyvsp[-1].ival,yyvsp[0].opval); }
2266 { yyval.opval = newSVREF(yyvsp[0].opval); }
2270 { yyval.opval = newAVREF(yyvsp[0].opval); }
2274 { yyval.opval = newHVREF(yyvsp[0].opval); }
2278 { yyval.opval = newAVREF(yyvsp[0].opval); }
2282 { yyval.opval = newGVREF(0,yyvsp[0].opval); }
2286 { yyval.opval = scalar(yyvsp[0].opval); }
2290 { yyval.opval = scalar(yyvsp[0].opval); }
2294 { yyval.opval = scope(yyvsp[0].opval); }
2298 { yyval.opval = yyvsp[0].opval; }
2300 #line 2273 "perly.c"
2306 if (yystate == 0 && yym == 0)
2310 PerlIO_printf(Perl_debug_log,
2311 "yydebug: after reduction, shifting from state 0 to state %d\n",
2319 if ((yychar = yylex()) < 0) yychar = 0;
2324 if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
2325 if (!yys) yys = "illegal-symbol";
2326 PerlIO_printf(Perl_debug_log, "yydebug: state %d, reading %d (%s)\n",
2327 YYFINAL, yychar, yys);
2331 if (yychar == 0) goto yyaccept;
2334 if ((yyn = yygindex[yym]) && (yyn += yystate) >= 0 &&
2335 yyn <= YYTABLESIZE && yycheck[yyn] == yystate)
2336 yystate = yytable[yyn];
2338 yystate = yydgoto[yym];
2341 PerlIO_printf(Perl_debug_log,
2342 "yydebug: after reduction, shifting from state %d to state %d\n",
2345 if (yyssp >= yyss + yystacksize - 1)
2348 ** reallocate and recover. Note that pointers
2349 ** have to be reset, or bad things will happen
2351 int yyps_index = (yyssp - yyss);
2352 int yypv_index = (yyvsp - yyvs);
2353 yystacksize += YYSTACKSIZE;
2354 ysave->yyvs = yyvs =
2355 (YYSTYPE*)realloc((char*)yyvs,yystacksize * sizeof(YYSTYPE));
2356 ysave->yyss = yyss =
2357 (short*)realloc((char*)yyss,yystacksize * sizeof(short));
2360 yyssp = yyss + yyps_index;
2361 yyvsp = yyvs + yypv_index;
2367 yyerror("Out of memory for yacc stack");