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, 24,
29 15, 15, 15, 14, 14, 42, 42, 13, 13, 13,
30 13, 13, 13, 13, 26, 26, 27, 27, 28, 29,
31 30, 31, 32, 44, 44, 1, 1, 1, 1, 3,
32 38, 38, 46, 4, 5, 6, 39, 40, 40, 41,
33 41, 47, 47, 49, 48, 16, 16, 16, 25, 25,
34 25, 36, 36, 36, 36, 36, 36, 36, 50, 36,
35 37, 37, 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, 17, 33, 33,
43 34, 34, 34, 2, 2, 43, 23, 18, 19, 20,
44 21, 22, 35, 35, 35, 35,
47 0, 2, 4, 0, 4, 0, 0, 2, 2, 2,
48 1, 2, 3, 1, 1, 3, 3, 3, 3, 3,
49 0, 2, 6, 7, 7, 0, 2, 8, 8, 10,
50 9, 8, 11, 3, 0, 1, 0, 1, 1, 1,
51 1, 1, 1, 0, 1, 1, 1, 1, 1, 4,
52 1, 0, 5, 0, 0, 0, 1, 0, 1, 1,
53 1, 3, 2, 0, 7, 3, 3, 1, 2, 3,
54 1, 3, 5, 6, 3, 5, 2, 4, 0, 5,
55 1, 1, 3, 3, 3, 3, 3, 3, 3, 3,
56 3, 3, 3, 3, 5, 3, 2, 2, 2, 2,
57 2, 2, 2, 2, 2, 2, 3, 2, 3, 2,
58 4, 3, 4, 1, 5, 1, 4, 5, 4, 1,
59 1, 1, 5, 6, 5, 6, 5, 4, 5, 1,
60 1, 3, 4, 3, 2, 2, 4, 5, 4, 5,
61 4, 5, 1, 2, 2, 1, 2, 2, 2, 1,
62 3, 1, 3, 4, 4, 6, 1, 1, 0, 1,
63 0, 1, 2, 1, 1, 1, 2, 2, 2, 2,
66 short yydefred[] = { 1,
67 0, 7, 0, 45, 56, 54, 0, 54, 8, 46,
68 9, 11, 0, 47, 48, 49, 0, 0, 0, 63,
69 64, 14, 4, 157, 0, 0, 130, 0, 152, 0,
70 55, 55, 0, 0, 0, 0, 0, 0, 0, 0,
71 0, 0, 0, 0, 0, 0, 0, 164, 165, 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, 120, 122, 0, 0, 0, 0, 158, 51,
75 0, 57, 0, 62, 0, 7, 173, 176, 175, 174,
76 0, 0, 0, 0, 0, 0, 4, 4, 4, 4,
77 4, 4, 0, 0, 0, 0, 0, 147, 0, 0,
78 0, 0, 77, 0, 171, 0, 136, 0, 0, 0,
79 0, 0, 167, 0, 0, 0, 0, 0, 0, 0,
80 0, 0, 0, 110, 0, 168, 169, 170, 172, 0,
81 0, 34, 0, 0, 0, 0, 0, 0, 0, 0,
82 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
83 0, 0, 0, 0, 102, 103, 0, 0, 0, 0,
84 0, 0, 0, 0, 13, 0, 50, 59, 0, 0,
85 0, 75, 0, 0, 79, 0, 0, 0, 0, 0,
86 0, 0, 4, 151, 153, 0, 0, 0, 0, 0,
87 0, 0, 112, 0, 134, 0, 0, 109, 27, 0,
88 0, 19, 0, 0, 0, 0, 66, 0, 0, 0,
89 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
90 0, 0, 0, 81, 0, 0, 82, 0, 0, 0,
91 0, 0, 0, 0, 132, 0, 0, 61, 60, 53,
92 0, 3, 0, 155, 0, 0, 113, 0, 42, 0,
93 43, 0, 0, 0, 0, 166, 0, 0, 36, 41,
94 0, 0, 0, 154, 163, 78, 0, 137, 0, 139,
95 0, 111, 0, 0, 0, 0, 0, 141, 0, 0,
96 0, 119, 0, 117, 0, 128, 0, 133, 0, 76,
97 0, 80, 0, 0, 0, 0, 0, 0, 0, 0,
98 73, 138, 140, 127, 0, 125, 0, 0, 142, 118,
99 0, 123, 129, 115, 65, 156, 6, 0, 0, 0,
100 0, 0, 0, 0, 0, 126, 124, 74, 7, 28,
101 29, 0, 0, 24, 25, 0, 32, 0, 0, 0,
102 22, 0, 0, 0, 31, 5, 0, 30, 0, 0,
105 short yydgoto[] = { 1,
106 9, 66, 10, 18, 95, 17, 86, 339, 89, 328,
107 3, 11, 12, 68, 344, 263, 70, 71, 72, 73,
108 74, 75, 76, 269, 78, 270, 259, 261, 264, 272,
109 260, 262, 113, 198, 91, 79, 238, 81, 83, 179,
110 250, 142, 267, 13, 2, 14, 15, 16, 85, 256,
112 short yysindex[] = { 0,
113 0, 0, -66, 0, 0, 0, -48, 0, 0, 0,
114 0, 0, 645, 0, 0, 0, -232, -227, -27, 0,
115 0, 0, 0, 0, -23, -23, 0, -6, 0, 2099,
116 0, 0, 13, 20, 24, 25, -34, 2099, 27, 28,
117 29, 1021, 965, -23, 1084, 1348, -217, 0, 0, -23,
118 2099, 2099, 2099, 2099, 2099, 2099, 1404, 0, 2099, 2099,
119 1460, -23, -23, -23, -23, 2099, -206, 0, 335, 3814,
120 -73, -68, 0, 0, -47, 40, 32, 61, 0, 0,
121 -39, 0, -157, 0, -145, 0, 0, 0, 0, 0,
122 2099, 73, 2099, 825, -39, -157, 0, 0, 0, 0,
123 0, 0, 75, 3814, 78, 1519, 965, 0, 825, 0,
124 -73, 61, 0, 2099, 0, 77, 0, 825, -16, -9,
125 -51, 2099, 0, 61, 87, 87, 87, -86, -86, 33,
126 -40, 87, 87, 0, -81, 0, 0, 0, 0, 825,
127 -39, 0, 2099, 2099, 2099, 2099, 2099, 2099, 2099, 2099,
128 2099, 2099, 2099, 2099, 2099, 2099, 2099, 2099, 2099, 2099,
129 2099, 2099, 2099, 2099, 0, 0, 30, 2099, 2099, 2099,
130 2099, 2099, 2099, 1694, 0, 2099, 0, 0, -49, -118,
131 189, 0, 2099, 353, 0, -39, 2099, 2099, 2099, 2099,
132 104, 1753, 0, 0, 0, -24, 8, 85, 2099, 61,
133 1809, 1865, 0, 23, 0, 2099, 54, 0, 0, -269,
134 -269, 0, -269, -269, -269, -151, 0, -43, 1121, 825,
135 673, 50, 363, 3814, 1233, 2459, 3640, 2309, 266, -82,
136 87, 87, 2099, 0, 1928, 2099, 0, 111, 51, 12,
137 76, 14, 90, 39, 0, -22, 3814, 0, 0, 0,
138 2099, 0, 121, 0, 2099, 2099, 0, -269, 0, 124,
139 0, 125, -269, 126, 130, 0, 112, 335, 0, 0,
140 131, 136, 2099, 0, 0, 0, -14, 0, 1, 0,
141 4, 0, 133, 2099, 55, 2099, 49, 0, 6, 197,
142 2099, 0, 89, 0, 94, 0, 100, 0, 144, 0,
143 1175, 0, 92, 92, 92, 92, 2099, 92, 2099, 171,
144 0, 0, 0, 0, 202, 0, 3900, 108, 0, 0,
145 188, 0, 0, 0, 0, 0, 0, -206, -206, -238,
146 -238, 199, -206, 211, 92, 0, 0, 0, 0, 0,
147 0, 92, 241, 0, 0, 92, 0, 1753, -206, 326,
148 0, 2099, -206, 256, 0, 0, 259, 0, 92, 92,
151 short yyrindex[] = { 0,
152 0, 0, 249, 0, 0, 0, 0, 0, 0, 0,
153 0, 0, 0, 0, 0, 0, 184, 0, 0, 0,
154 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
155 0, 0, 0, 0, 0, 0, 0, 2228, 426, 0,
156 0, 2833, 2876, 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, 59, 0, -10, 2038,
159 2952, 2995, 0, 0, 2274, 2140, 0, 200, 0, 0,
160 0, 0, -44, 0, 0, 0, 0, 0, 0, 0,
161 2421, 0, 0, 105, 0, 198, 0, 0, 0, 0,
162 0, 0, 0, 3753, 0, 0, 319, 0, 3505, 525,
163 586, 2510, 0, 0, 0, 2185, 0, 3541, 2952, 0,
164 0, 2421, 0, 2553, 3112, 3150, 3188, -37, 3069, 2597,
165 0, 3231, 3269, 0, 0, 0, 0, 0, 0, 3584,
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, 0, 2673, 0, 0, 0, 0,
170 909, 0, 319, 0, 0, 0, 320, 0, 0, 0,
171 0, 306, 0, 0, 0, 0, 325, 0, 0, 2789,
172 0, 0, 0, 0, 0, 0, 2716, 0, 0, -5,
173 22, 0, 68, 69, 70, 702, 0, 0, 3741, 1296,
174 1560, 3386, 3424, 3796, 0, 3703, 3660, 3622, 1616, 3467,
175 3305, 3348, 0, 0, 0, 0, 0, 0, 0, 0,
176 0, 0, 0, 0, 0, 0, 3809, 0, 0, 0,
177 309, 0, 0, 0, 0, 2421, 0, 79, 0, 0,
178 0, 0, 330, 0, 0, 0, 0, 84, 0, 0,
179 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
180 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
181 319, 0, 0, 0, 0, 0, 0, 0, 0, 0,
182 0, 0, 0, 0, 0, 0, 0, 0, 317, 0,
183 0, 0, 0, 0, 0, 0, 1982, 0, 0, 0,
184 0, 0, 0, 0, 0, 0, 0, 59, 59, 154,
185 154, 0, 59, 0, 0, 0, 0, 0, 0, 0,
186 0, 0, 0, 0, 0, 0, 0, 340, 59, 909,
187 0, 0, 59, 0, 0, 0, 0, 0, 0, 0,
190 short yygindex[] = { 0,
191 0, 0, 0, 374, 351, 0, -12, 0, 946, 413,
192 -83, 0, 0, 0, -311, -13, 4007, 2893, 0, 0,
193 0, 0, 0, 372, -8, 0, 0, 246, -131, 43,
194 86, 208, -45, -169, 987, 0, 0, 0, 0, 308,
195 0, -271, 0, 0, 0, 0, 0, 0, 0, 0,
197 #define YYTABLESIZE 4293
198 short yytable[] = { 69,
199 207, 62, 181, 104, 168, 102, 104, 204, 168, 248,
200 20, 208, 62, 253, 58, 285, 274, 170, 298, 345,
201 104, 104, 172, 202, 80, 104, 311, 148, 149, 82,
202 15, 84, 121, 93, 112, 18, 150, 342, 343, 122,
203 150, 312, 124, 131, 313, 182, 319, 135, 15, 169,
204 363, 275, 97, 18, 171, 104, 340, 341, 26, 98,
205 271, 347, 39, 99, 100, 62, 105, 106, 107, 235,
206 293, 141, 295, 23, 170, 173, 205, 355, 58, 174,
207 39, 358, 112, 23, 187, 188, 189, 190, 191, 192,
208 175, 26, 196, 197, 26, 26, 26, 297, 26, 23,
209 26, 26, 178, 26, 176, 200, 169, 318, 16, 17,
210 20, 180, 183, 112, 193, 203, 201, 26, 194, 38,
211 236, 321, 26, 206, 40, 276, 16, 17, 20, 210,
212 211, 213, 214, 215, 216, 217, 218, 38, 251, 62,
213 168, 310, 15, 292, 284, 149, 149, 282, 149, 26,
214 291, 307, 233, 21, 239, 240, 241, 242, 243, 244,
215 246, 300, 149, 149, 303, 304, 305, 149, 294, 197,
216 306, 308, 150, 258, 211, 332, 211, 168, 268, 316,
217 273, 26, 296, 26, 26, 277, 21, 279, 281, 21,
218 21, 21, 283, 21, 309, 21, 21, 149, 21, 4,
219 5, 6, 325, 7, 8, 299, 154, 155, 19, 150,
220 302, 335, 21, 322, 327, 148, 149, 21, 323, 287,
221 357, 289, 290, 163, 324, 314, 164, 167, 338, 165,
222 166, 167, 337, 87, 104, 104, 104, 104, 88, 346,
223 68, 104, 112, 104, 21, 148, 149, 112, 2, 104,
224 104, 104, 104, 148, 149, 350, 148, 149, 68, 104,
225 104, 101, 104, 104, 104, 104, 104, 104, 104, 348,
226 315, 104, 148, 149, 148, 149, 21, 197, 21, 21,
227 352, 44, 148, 149, 44, 44, 44, 234, 44, 320,
228 44, 44, 68, 44, 336, 258, 359, 148, 149, 360,
229 148, 149, 148, 149, 148, 149, 52, 44, 148, 149,
230 148, 149, 44, 252, 26, 26, 26, 26, 26, 26,
231 58, 26, 26, 26, 26, 26, 26, 26, 26, 26,
232 26, 26, 26, 26, 69, 148, 149, 26, 26, 44,
233 26, 26, 26, 26, 26, 148, 149, 148, 149, 26,
234 26, 26, 26, 26, 26, 163, 168, 26, 164, 161,
235 37, 165, 166, 167, 35, 162, 26, 159, 26, 26,
236 40, 44, 148, 149, 44, 37, 149, 149, 149, 149,
237 35, 21, 96, 149, 77, 149, 148, 149, 150, 212,
238 354, 149, 149, 254, 334, 164, 255, 265, 165, 166,
239 167, 149, 149, 186, 149, 149, 149, 149, 149, 21,
240 21, 21, 21, 21, 21, 157, 21, 21, 21, 21,
241 21, 21, 21, 21, 21, 21, 21, 21, 21, 148,
242 149, 0, 21, 21, 0, 21, 21, 21, 21, 21,
243 0, 0, 0, 168, 21, 21, 21, 21, 21, 21,
244 356, 0, 21, 168, 4, 5, 6, 0, 7, 8,
245 0, 21, 0, 21, 21, 0, 150, 0, 0, 150,
246 0, 68, 68, 68, 68, 150, 0, 0, 68, 0,
247 0, 0, 0, 150, 150, 150, 0, 0, 150, 0,
248 0, 0, 0, 148, 149, 0, 68, 68, 148, 149,
249 0, 0, 0, 0, 44, 44, 44, 44, 44, 44,
250 0, 44, 44, 44, 0, 0, 150, 44, 150, 0,
251 44, 44, 44, 44, 0, 0, 0, 44, 44, 0,
252 44, 44, 44, 44, 44, 0, 0, 0, 0, 44,
253 44, 44, 44, 44, 44, 0, 0, 44, 150, 0,
254 0, 0, 152, 153, 154, 155, 44, 173, 44, 44,
255 173, 173, 173, 0, 173, 157, 173, 173, 157, 173,
256 162, 163, 0, 0, 164, 0, 0, 165, 166, 167,
257 0, 0, 157, 157, 0, 0, 0, 157, 173, 0,
258 0, 4, 5, 6, 0, 7, 8, 0, 0, 0,
259 0, 0, 0, 0, 0, 0, 143, 144, 145, 146,
260 0, 0, 0, 147, 0, 157, 0, 157, 174, 0,
261 0, 174, 174, 174, 0, 174, 114, 174, 174, 114,
262 174, 148, 149, 151, 0, 0, 0, 0, 0, 152,
263 153, 154, 155, 114, 114, 0, 0, 157, 114, 174,
264 173, 154, 156, 158, 159, 160, 161, 162, 163, 0,
265 0, 164, 0, 0, 165, 166, 167, 0, 163, 0,
266 0, 164, 0, 0, 165, 166, 167, 52, 114, 0,
267 62, 64, 50, 0, 57, 0, 65, 60, 0, 59,
268 0, 0, 0, 0, 0, 0, 0, 150, 150, 150,
269 150, 0, 0, 58, 150, 0, 150, 0, 63, 0,
270 0, 174, 150, 150, 150, 150, 329, 330, 331, 0,
271 333, 0, 150, 150, 0, 150, 150, 150, 150, 150,
272 150, 150, 0, 0, 150, 61, 0, 150, 150, 150,
273 0, 0, 67, 0, 0, 67, 0, 349, 0, 0,
274 0, 0, 0, 0, 351, 0, 0, 0, 353, 0,
275 67, 0, 0, 168, 0, 0, 0, 23, 0, 0,
276 53, 361, 362, 0, 0, 0, 0, 0, 0, 0,
277 0, 173, 173, 173, 173, 173, 0, 173, 173, 173,
278 0, 0, 0, 173, 67, 150, 157, 157, 157, 157,
279 0, 0, 0, 157, 173, 157, 173, 173, 173, 173,
280 173, 157, 157, 157, 157, 173, 173, 173, 173, 173,
281 173, 157, 157, 173, 157, 157, 157, 157, 157, 157,
282 157, 0, 173, 157, 173, 173, 157, 157, 157, 0,
283 0, 0, 174, 174, 174, 174, 174, 0, 174, 174,
284 174, 0, 0, 0, 174, 0, 0, 114, 114, 114,
285 114, 0, 0, 0, 114, 174, 114, 174, 174, 174,
286 174, 174, 114, 114, 114, 114, 174, 174, 174, 174,
287 174, 174, 114, 114, 174, 114, 114, 114, 114, 114,
288 114, 114, 0, 174, 114, 174, 174, 114, 114, 114,
289 22, 24, 25, 26, 27, 28, 0, 29, 30, 31,
290 0, 0, 0, 32, 0, 168, 33, 34, 35, 36,
291 0, 0, 0, 37, 38, 0, 39, 40, 41, 42,
292 43, 0, 0, 0, 0, 44, 45, 46, 47, 48,
293 49, 44, 0, 51, 44, 44, 44, 150, 44, 0,
294 44, 44, 54, 44, 55, 56, 0, 0, 67, 152,
295 0, 154, 155, 0, 0, 0, 0, 44, 0, 0,
296 0, 0, 44, 67, 67, 67, 67, 162, 163, 0,
297 67, 164, 0, 0, 165, 166, 167, 108, 0, 0,
298 117, 0, 0, 0, 0, 0, 0, 52, 67, 44,
299 62, 64, 50, 0, 57, 0, 65, 60, 0, 59,
300 0, 0, 92, 0, 0, 0, 0, 0, 0, 0,
301 0, 0, 0, 0, 0, 0, 177, 0, 63, 114,
302 115, 44, 0, 0, 44, 0, 123, 0, 0, 0,
303 185, 0, 0, 0, 0, 0, 0, 0, 136, 137,
304 138, 139, 0, 52, 0, 61, 62, 64, 50, 0,
305 57, 0, 65, 60, 0, 59, 0, 0, 0, 0,
306 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
307 0, 0, 0, 0, 63, 0, 209, 23, 0, 0,
308 53, 0, 0, 199, 0, 0, 0, 0, 0, 0,
309 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
310 0, 61, 0, 154, 155, 0, 52, 0, 0, 62,
311 64, 50, 0, 57, 249, 65, 60, 0, 59, 162,
312 163, 257, 0, 164, 0, 0, 165, 166, 167, 0,
313 0, 0, 0, 23, 0, 0, 53, 63, 0, 0,
314 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
315 0, 0, 0, 0, 44, 44, 44, 44, 44, 44,
316 0, 44, 44, 44, 61, 0, 0, 44, 0, 0,
317 44, 44, 44, 44, 0, 0, 0, 44, 44, 0,
318 44, 44, 44, 44, 44, 0, 0, 0, 0, 44,
319 44, 44, 44, 44, 44, 0, 23, 44, 0, 53,
320 0, 168, 0, 0, 0, 326, 44, 0, 44, 44,
321 0, 110, 25, 26, 27, 28, 88, 29, 30, 31,
322 0, 0, 0, 32, 0, 0, 0, 157, 0, 0,
323 0, 0, 0, 150, 38, 0, 39, 40, 41, 42,
324 43, 0, 0, 0, 0, 44, 45, 46, 47, 48,
325 49, 0, 0, 51, 0, 168, 0, 0, 0, 0,
326 0, 0, 54, 0, 55, 56, 0, 24, 25, 26,
327 27, 28, 0, 29, 30, 31, 0, 0, 0, 32,
328 286, 0, 0, 0, 0, 157, 0, 150, 0, 0,
329 38, 0, 39, 40, 41, 42, 43, 0, 0, 0,
330 0, 44, 45, 46, 47, 48, 49, 0, 0, 51,
331 0, 0, 0, 168, 0, 0, 0, 0, 54, 0,
332 55, 56, 0, 0, 0, 0, 88, 0, 0, 88,
333 116, 25, 26, 27, 28, 0, 29, 30, 31, 0,
334 0, 0, 32, 88, 88, 150, 0, 0, 88, 0,
335 0, 0, 0, 38, 0, 39, 40, 41, 42, 43,
336 0, 0, 0, 0, 44, 45, 46, 47, 48, 49,
337 52, 0, 51, 62, 64, 50, 0, 57, 88, 65,
338 60, 54, 59, 55, 56, 0, 0, 0, 0, 0,
339 0, 0, 0, 0, 0, 0, 120, 152, 153, 154,
340 155, 63, 0, 0, 0, 0, 0, 0, 0, 0,
341 0, 158, 159, 160, 161, 162, 163, 0, 0, 164,
342 0, 0, 165, 166, 167, 0, 52, 0, 61, 62,
343 64, 50, 0, 57, 130, 65, 60, 0, 59, 0,
344 0, 0, 0, 0, 0, 151, 0, 0, 0, 0,
345 0, 152, 153, 154, 155, 0, 0, 63, 0, 0,
346 0, 0, 0, 53, 156, 158, 159, 160, 161, 162,
347 163, 0, 0, 164, 0, 0, 165, 166, 167, 0,
348 0, 0, 52, 0, 61, 62, 64, 50, 0, 57,
349 0, 65, 60, 0, 59, 0, 0, 0, 0, 0,
350 0, 0, 0, 151, 0, 0, 0, 0, 0, 152,
351 153, 154, 155, 63, 0, 0, 0, 0, 0, 53,
352 0, 0, 156, 158, 159, 160, 161, 162, 163, 0,
353 0, 164, 0, 0, 165, 166, 167, 0, 0, 0,
354 61, 52, 134, 0, 62, 64, 50, 0, 57, 195,
355 65, 60, 0, 59, 0, 0, 0, 88, 88, 88,
356 88, 0, 0, 0, 88, 0, 88, 0, 0, 0,
357 0, 0, 63, 88, 0, 53, 0, 0, 0, 0,
358 0, 0, 88, 88, 0, 88, 88, 88, 88, 88,
359 89, 0, 0, 89, 24, 25, 26, 27, 28, 61,
360 29, 30, 31, 0, 0, 0, 32, 89, 89, 0,
361 0, 0, 89, 0, 0, 0, 0, 38, 0, 39,
362 40, 41, 42, 43, 0, 0, 0, 0, 44, 45,
363 46, 47, 48, 49, 53, 0, 51, 0, 0, 0,
364 0, 0, 89, 0, 0, 54, 90, 55, 56, 90,
365 24, 25, 26, 27, 28, 0, 29, 30, 31, 0,
366 0, 0, 32, 90, 90, 0, 0, 0, 90, 0,
367 0, 0, 0, 38, 0, 39, 40, 41, 42, 43,
368 0, 0, 0, 0, 44, 45, 46, 47, 48, 49,
369 0, 0, 51, 0, 0, 0, 0, 0, 90, 0,
370 0, 54, 0, 55, 56, 0, 24, 25, 26, 27,
371 28, 0, 29, 30, 31, 0, 52, 0, 32, 62,
372 64, 50, 0, 57, 245, 65, 60, 0, 59, 38,
373 0, 39, 40, 41, 42, 43, 0, 0, 0, 0,
374 44, 45, 46, 47, 48, 49, 0, 63, 51, 0,
375 0, 0, 0, 0, 0, 0, 0, 54, 0, 55,
376 56, 0, 0, 0, 0, 24, 25, 26, 27, 28,
377 0, 29, 30, 31, 61, 52, 0, 32, 62, 64,
378 50, 0, 57, 0, 65, 60, 0, 59, 38, 0,
379 39, 40, 41, 42, 43, 0, 0, 0, 0, 44,
380 45, 46, 47, 48, 49, 0, 63, 51, 0, 53,
381 0, 0, 0, 0, 0, 0, 54, 0, 55, 56,
382 0, 89, 89, 89, 89, 0, 0, 0, 89, 0,
383 89, 52, 0, 61, 62, 64, 50, 0, 57, 278,
384 65, 60, 0, 59, 0, 0, 89, 89, 0, 89,
385 89, 89, 89, 89, 0, 0, 0, 0, 0, 0,
386 0, 0, 63, 0, 0, 0, 0, 0, 53, 0,
387 0, 0, 0, 0, 0, 0, 0, 90, 90, 90,
388 90, 0, 0, 0, 90, 0, 90, 52, 0, 61,
389 62, 64, 50, 0, 57, 280, 65, 60, 0, 59,
390 0, 0, 90, 90, 0, 90, 90, 90, 90, 90,
391 0, 0, 0, 0, 0, 0, 0, 0, 63, 0,
392 0, 0, 0, 0, 53, 0, 0, 0, 0, 0,
393 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
394 24, 25, 26, 27, 28, 61, 29, 30, 31, 0,
395 52, 0, 32, 62, 64, 50, 0, 57, 288, 65,
396 60, 0, 59, 38, 0, 39, 40, 41, 42, 43,
397 0, 0, 0, 0, 44, 45, 46, 47, 48, 49,
398 53, 63, 51, 0, 0, 0, 0, 0, 0, 0,
399 0, 54, 0, 55, 56, 0, 0, 0, 22, 24,
400 25, 26, 27, 28, 0, 29, 30, 31, 61, 0,
401 0, 32, 95, 0, 0, 95, 0, 0, 0, 0,
402 0, 0, 38, 0, 39, 40, 41, 42, 43, 95,
403 95, 0, 0, 44, 45, 46, 47, 48, 49, 0,
404 0, 51, 0, 53, 0, 0, 0, 0, 0, 0,
405 54, 0, 55, 56, 0, 24, 25, 26, 27, 28,
406 0, 29, 30, 31, 95, 0, 0, 32, 71, 0,
407 0, 71, 0, 0, 0, 0, 0, 0, 38, 0,
408 39, 40, 41, 42, 43, 71, 71, 0, 0, 44,
409 45, 46, 47, 48, 49, 0, 0, 51, 0, 0,
410 0, 0, 0, 0, 0, 0, 54, 0, 55, 56,
411 0, 24, 25, 26, 27, 28, 0, 29, 30, 31,
412 71, 52, 0, 32, 62, 64, 50, 0, 57, 0,
413 65, 60, 0, 59, 38, 0, 39, 40, 41, 42,
414 43, 0, 0, 0, 0, 44, 45, 46, 47, 48,
415 49, 0, 63, 51, 0, 0, 0, 0, 0, 0,
416 0, 0, 54, 0, 55, 56, 0, 0, 0, 0,
417 131, 0, 0, 131, 24, 25, 26, 27, 28, 61,
418 29, 30, 31, 0, 0, 0, 32, 131, 131, 0,
419 0, 0, 131, 0, 0, 0, 0, 38, 0, 39,
420 40, 41, 42, 43, 0, 0, 0, 0, 44, 45,
421 46, 47, 48, 49, 53, 157, 51, 0, 157, 0,
422 131, 0, 131, 0, 0, 54, 0, 55, 56, 0,
423 0, 0, 157, 157, 0, 0, 0, 157, 0, 0,
424 0, 0, 0, 95, 95, 95, 95, 0, 0, 0,
425 95, 0, 131, 0, 0, 0, 0, 0, 143, 0,
426 0, 143, 0, 0, 0, 157, 0, 157, 95, 95,
427 0, 95, 0, 0, 0, 143, 143, 0, 0, 0,
428 143, 0, 0, 0, 0, 0, 0, 0, 0, 0,
429 0, 0, 0, 0, 0, 0, 0, 157, 0, 71,
430 71, 71, 71, 0, 116, 0, 71, 116, 0, 0,
431 143, 0, 0, 0, 0, 0, 0, 0, 0, 0,
432 0, 116, 116, 0, 71, 71, 116, 0, 0, 0,
433 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
434 143, 0, 0, 0, 0, 24, 25, 26, 27, 28,
435 0, 29, 30, 31, 116, 0, 116, 32, 0, 0,
436 0, 0, 0, 0, 0, 0, 0, 0, 38, 0,
437 39, 40, 41, 42, 43, 0, 0, 0, 0, 44,
438 45, 46, 47, 48, 49, 0, 0, 51, 0, 168,
439 0, 0, 0, 0, 0, 0, 54, 0, 55, 56,
440 0, 131, 131, 131, 131, 0, 0, 0, 131, 0,
441 131, 0, 0, 0, 0, 0, 131, 131, 131, 131,
442 0, 150, 0, 0, 0, 0, 131, 131, 0, 131,
443 131, 131, 131, 131, 131, 131, 0, 0, 131, 0,
444 0, 131, 131, 131, 0, 0, 157, 157, 157, 157,
445 0, 159, 0, 157, 159, 157, 0, 0, 0, 0,
446 0, 157, 157, 157, 157, 0, 0, 0, 159, 159,
447 0, 157, 157, 159, 157, 157, 157, 157, 157, 157,
448 157, 0, 0, 157, 0, 0, 157, 157, 157, 143,
449 143, 143, 143, 0, 0, 0, 143, 0, 143, 0,
450 0, 0, 0, 159, 143, 143, 143, 143, 0, 0,
451 0, 0, 0, 0, 143, 143, 0, 143, 143, 143,
452 143, 143, 143, 143, 0, 0, 143, 0, 0, 143,
453 143, 143, 0, 159, 0, 116, 116, 116, 116, 168,
454 160, 0, 116, 0, 116, 0, 0, 0, 0, 0,
455 116, 116, 116, 116, 0, 0, 0, 160, 160, 0,
456 116, 116, 160, 116, 116, 116, 116, 116, 116, 116,
457 0, 150, 116, 0, 0, 116, 116, 116, 0, 0,
458 0, 0, 0, 145, 0, 152, 153, 154, 155, 0,
459 160, 0, 160, 0, 0, 0, 0, 0, 0, 0,
460 145, 145, 161, 162, 163, 145, 0, 164, 0, 0,
461 165, 166, 167, 0, 0, 0, 0, 0, 0, 0,
462 0, 0, 160, 0, 0, 0, 0, 108, 0, 0,
463 108, 0, 0, 145, 0, 145, 0, 0, 0, 0,
464 0, 0, 0, 0, 108, 108, 0, 0, 0, 108,
465 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
466 0, 0, 0, 0, 0, 145, 0, 0, 0, 0,
467 0, 0, 0, 0, 0, 0, 0, 0, 0, 108,
468 0, 0, 159, 159, 159, 159, 0, 0, 0, 159,
469 0, 159, 0, 0, 0, 0, 0, 159, 159, 159,
470 159, 0, 0, 69, 0, 0, 69, 159, 159, 108,
471 159, 159, 159, 159, 159, 159, 159, 0, 0, 159,
472 69, 69, 159, 159, 159, 69, 0, 0, 0, 0,
473 0, 0, 0, 0, 0, 152, 153, 154, 155, 0,
474 0, 0, 0, 0, 0, 0, 107, 0, 0, 107,
475 159, 160, 161, 162, 163, 69, 0, 164, 0, 0,
476 165, 166, 167, 107, 107, 0, 0, 0, 107, 0,
477 0, 160, 160, 160, 160, 0, 0, 0, 160, 0,
478 160, 0, 0, 0, 0, 69, 160, 160, 160, 160,
479 0, 0, 0, 0, 0, 0, 160, 160, 107, 160,
480 160, 160, 160, 160, 160, 160, 0, 0, 160, 0,
481 0, 160, 160, 160, 145, 145, 145, 145, 0, 72,
482 0, 145, 0, 145, 0, 0, 0, 0, 107, 145,
483 145, 145, 145, 0, 0, 0, 72, 72, 0, 145,
484 145, 72, 145, 145, 145, 145, 145, 145, 145, 0,
485 0, 145, 0, 0, 145, 145, 145, 0, 108, 108,
486 108, 108, 0, 146, 0, 108, 146, 108, 0, 72,
487 0, 72, 0, 108, 108, 108, 108, 0, 0, 0,
488 146, 146, 0, 108, 108, 146, 108, 108, 108, 108,
489 108, 108, 108, 0, 0, 108, 0, 0, 108, 108,
490 108, 72, 0, 0, 0, 0, 159, 90, 90, 159,
491 0, 0, 0, 0, 0, 146, 0, 0, 0, 103,
492 0, 0, 0, 159, 159, 111, 90, 119, 159, 0,
493 0, 0, 90, 0, 69, 69, 69, 69, 0, 0,
494 0, 69, 0, 69, 90, 90, 90, 90, 0, 69,
495 69, 69, 69, 0, 0, 0, 0, 0, 159, 69,
496 69, 0, 69, 69, 69, 69, 69, 69, 69, 0,
497 0, 69, 0, 0, 69, 69, 69, 107, 107, 107,
498 107, 0, 114, 0, 107, 114, 107, 0, 0, 111,
499 0, 0, 107, 107, 107, 107, 0, 0, 0, 114,
500 114, 0, 107, 107, 114, 107, 107, 107, 107, 107,
501 107, 107, 0, 0, 107, 0, 0, 107, 107, 107,
502 0, 0, 0, 0, 0, 121, 0, 0, 121, 0,
503 0, 0, 0, 0, 114, 0, 0, 0, 0, 0,
504 0, 0, 121, 121, 0, 0, 0, 121, 0, 237,
505 72, 72, 72, 72, 0, 0, 0, 72, 0, 72,
506 0, 0, 0, 0, 0, 72, 72, 72, 72, 0,
507 0, 0, 0, 266, 0, 72, 72, 121, 72, 72,
508 72, 72, 72, 72, 72, 0, 0, 72, 0, 0,
509 72, 72, 72, 0, 146, 146, 146, 146, 0, 105,
510 0, 146, 105, 146, 0, 0, 0, 0, 0, 146,
511 146, 146, 146, 0, 0, 0, 105, 105, 0, 146,
512 146, 105, 146, 146, 146, 146, 146, 146, 146, 0,
513 0, 146, 0, 0, 146, 146, 146, 159, 159, 159,
514 159, 0, 99, 0, 159, 99, 159, 0, 0, 0,
515 0, 105, 159, 159, 159, 159, 0, 0, 0, 99,
516 99, 0, 159, 159, 99, 159, 159, 159, 159, 159,
517 159, 159, 0, 0, 159, 0, 0, 159, 159, 159,
518 100, 0, 0, 100, 0, 0, 0, 0, 0, 0,
519 0, 0, 0, 0, 99, 0, 0, 100, 100, 0,
520 0, 0, 100, 0, 0, 0, 0, 0, 0, 0,
521 0, 0, 0, 114, 114, 114, 114, 0, 101, 0,
522 114, 101, 114, 0, 0, 0, 0, 0, 114, 114,
523 114, 114, 100, 0, 0, 101, 101, 0, 114, 114,
524 101, 114, 114, 114, 114, 114, 114, 114, 0, 0,
525 114, 0, 0, 114, 114, 114, 121, 121, 121, 121,
526 0, 97, 0, 121, 97, 121, 0, 0, 0, 0,
527 101, 121, 121, 121, 121, 0, 0, 0, 97, 97,
528 0, 121, 121, 97, 121, 121, 121, 121, 121, 121,
529 121, 0, 0, 121, 0, 0, 121, 121, 121, 98,
530 0, 0, 98, 0, 0, 0, 0, 0, 0, 0,
531 0, 0, 0, 97, 0, 0, 98, 98, 0, 0,
532 0, 98, 0, 0, 0, 0, 0, 0, 0, 0,
533 105, 105, 105, 105, 0, 96, 0, 105, 96, 105,
534 0, 0, 0, 0, 0, 105, 105, 105, 105, 0,
535 0, 98, 96, 96, 0, 105, 105, 96, 105, 105,
536 105, 105, 105, 105, 105, 0, 0, 105, 0, 0,
537 0, 0, 0, 99, 99, 99, 99, 0, 84, 0,
538 99, 84, 99, 0, 0, 0, 0, 96, 99, 99,
539 99, 99, 0, 0, 0, 84, 84, 0, 99, 99,
540 84, 99, 99, 99, 99, 99, 99, 99, 0, 0,
541 0, 100, 100, 100, 100, 0, 85, 0, 100, 85,
542 100, 0, 0, 0, 0, 0, 100, 100, 100, 100,
543 84, 0, 0, 85, 85, 0, 100, 100, 85, 100,
544 100, 100, 100, 100, 100, 100, 0, 0, 0, 101,
545 101, 101, 101, 0, 86, 0, 101, 86, 101, 0,
546 0, 0, 0, 0, 101, 101, 101, 101, 85, 0,
547 0, 86, 86, 0, 101, 101, 86, 101, 101, 101,
548 101, 101, 101, 101, 0, 0, 0, 0, 0, 0,
549 0, 0, 97, 97, 97, 97, 0, 87, 0, 97,
550 87, 97, 0, 0, 0, 0, 86, 97, 97, 97,
551 97, 0, 0, 0, 87, 87, 0, 97, 97, 87,
552 97, 97, 97, 97, 97, 97, 97, 0, 0, 0,
553 98, 98, 98, 98, 0, 148, 0, 98, 148, 98,
554 0, 0, 0, 0, 0, 98, 98, 98, 98, 87,
555 0, 0, 148, 148, 0, 98, 98, 148, 98, 98,
556 98, 98, 98, 98, 98, 0, 96, 96, 96, 96,
557 0, 135, 0, 96, 135, 96, 0, 0, 0, 0,
558 0, 96, 96, 96, 96, 0, 0, 148, 135, 135,
559 0, 96, 96, 135, 96, 96, 96, 96, 96, 96,
560 96, 0, 0, 0, 0, 0, 0, 0, 0, 84,
561 84, 84, 84, 0, 106, 0, 84, 106, 84, 0,
562 0, 0, 0, 135, 84, 84, 84, 84, 0, 0,
563 0, 106, 106, 0, 84, 84, 106, 84, 84, 84,
564 84, 84, 84, 84, 0, 0, 0, 85, 85, 85,
565 85, 0, 91, 0, 85, 91, 85, 0, 0, 0,
566 0, 0, 85, 85, 85, 85, 106, 0, 0, 91,
567 91, 0, 85, 85, 91, 85, 85, 85, 85, 85,
568 85, 0, 0, 0, 0, 86, 86, 86, 86, 0,
569 93, 0, 86, 93, 86, 0, 0, 0, 0, 0,
570 86, 86, 0, 86, 91, 0, 0, 93, 93, 0,
571 86, 86, 93, 86, 86, 86, 86, 86, 86, 0,
572 168, 0, 0, 0, 0, 0, 0, 0, 87, 87,
573 87, 87, 0, 94, 0, 87, 94, 87, 0, 0,
574 0, 0, 93, 87, 87, 0, 0, 0, 0, 0,
575 94, 94, 150, 87, 87, 94, 87, 87, 87, 87,
576 87, 87, 0, 0, 0, 0, 148, 148, 148, 148,
577 0, 92, 0, 148, 92, 148, 0, 0, 0, 0,
578 0, 148, 148, 144, 0, 94, 144, 0, 92, 92,
579 0, 148, 148, 92, 148, 148, 148, 148, 148, 0,
580 144, 144, 135, 135, 135, 135, 0, 0, 0, 135,
581 0, 135, 0, 0, 0, 0, 0, 135, 135, 0,
582 0, 0, 0, 92, 0, 0, 83, 135, 135, 83,
583 135, 135, 135, 135, 135, 144, 0, 0, 0, 70,
584 0, 0, 70, 83, 83, 106, 106, 106, 106, 0,
585 0, 0, 106, 0, 106, 0, 70, 70, 0, 0,
586 106, 106, 0, 0, 0, 0, 157, 0, 0, 0,
587 106, 106, 0, 106, 106, 106, 106, 106, 83, 0,
588 0, 0, 0, 91, 91, 91, 91, 0, 0, 0,
589 91, 70, 91, 0, 168, 0, 0, 0, 0, 0,
590 0, 0, 0, 0, 0, 0, 0, 0, 91, 91,
591 0, 91, 91, 91, 91, 0, 152, 153, 154, 155,
592 0, 93, 93, 93, 93, 0, 150, 0, 93, 0,
593 93, 0, 160, 161, 162, 163, 0, 0, 164, 0,
594 0, 165, 166, 167, 0, 0, 93, 93, 0, 93,
595 93, 93, 157, 0, 0, 0, 0, 0, 0, 0,
596 0, 0, 0, 0, 94, 94, 94, 94, 0, 0,
597 0, 94, 0, 94, 0, 0, 0, 0, 0, 0,
598 168, 0, 0, 0, 0, 0, 0, 0, 0, 94,
599 94, 0, 94, 94, 0, 0, 0, 0, 0, 0,
600 0, 0, 92, 92, 92, 92, 0, 0, 0, 92,
601 0, 0, 150, 0, 144, 144, 144, 144, 0, 0,
602 0, 144, 0, 0, 0, 0, 94, 92, 92, 0,
603 92, 0, 0, 0, 104, 0, 0, 0, 109, 144,
604 144, 118, 0, 0, 0, 0, 0, 0, 125, 126,
605 127, 128, 129, 0, 0, 132, 133, 83, 83, 83,
606 83, 0, 140, 0, 83, 0, 0, 0, 0, 0,
607 70, 70, 70, 70, 0, 0, 0, 70, 0, 0,
608 0, 0, 83, 83, 151, 0, 0, 0, 0, 184,
609 152, 153, 154, 155, 0, 70, 70, 0, 0, 0,
610 0, 0, 0, 156, 158, 159, 160, 161, 162, 163,
611 0, 0, 164, 0, 0, 165, 166, 167, 0, 0,
612 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
613 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
614 0, 0, 0, 0, 0, 0, 0, 219, 220, 221,
615 222, 223, 224, 225, 226, 227, 228, 229, 230, 231,
616 232, 0, 0, 0, 0, 0, 0, 0, 0, 0,
617 151, 0, 247, 0, 0, 0, 152, 153, 154, 155,
618 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
619 158, 159, 160, 161, 162, 163, 0, 0, 164, 0,
620 0, 165, 166, 167, 0, 0, 0, 0, 0, 0,
621 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
622 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
623 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
624 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
625 0, 301, 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,
630 short yycheck[] = { 13,
631 41, 36, 86, 41, 91, 40, 44, 59, 91, 59,
632 59, 93, 36, 183, 59, 59, 41, 91, 41, 331,
633 58, 59, 91, 40, 257, 63, 41, 297, 298, 257,
634 41, 59, 46, 40, 43, 41, 123, 276, 277, 257,
635 123, 41, 51, 57, 41, 91, 41, 61, 59, 123,
636 362, 44, 40, 59, 123, 93, 328, 329, 0, 40,
637 192, 333, 41, 40, 40, 36, 40, 40, 40, 40,
638 59, 278, 59, 123, 91, 123, 122, 349, 123, 40,
639 59, 353, 91, 123, 97, 98, 99, 100, 101, 102,
640 59, 33, 106, 107, 36, 37, 38, 59, 40, 123,
641 42, 43, 260, 45, 44, 114, 123, 59, 41, 41,
642 41, 257, 40, 122, 40, 125, 40, 59, 41, 41,
643 91, 291, 64, 91, 41, 41, 59, 59, 59, 143,
644 144, 145, 146, 147, 148, 149, 150, 59, 257, 36,
645 91, 273, 59, 93, 91, 41, 298, 125, 44, 91,
646 40, 40, 123, 0, 168, 169, 170, 171, 172, 173,
647 174, 41, 58, 59, 41, 41, 41, 63, 93, 183,
648 41, 41, 123, 187, 188, 307, 190, 91, 192, 125,
649 193, 123, 93, 125, 126, 199, 33, 201, 202, 36,
650 37, 38, 206, 40, 59, 42, 43, 93, 45, 266,
651 267, 268, 59, 270, 271, 251, 289, 290, 257, 123,
652 256, 41, 59, 125, 123, 297, 298, 64, 125, 233,
653 352, 235, 236, 306, 125, 93, 309, 314, 41, 312,
654 313, 314, 125, 257, 272, 273, 274, 275, 262, 41,
655 41, 279, 251, 281, 91, 297, 298, 256, 0, 287,
656 288, 289, 290, 297, 298, 339, 297, 298, 59, 297,
657 298, 296, 300, 301, 302, 303, 304, 305, 306, 59,
658 284, 309, 297, 298, 297, 298, 123, 291, 125, 126,
659 40, 33, 297, 298, 36, 37, 38, 258, 40, 93,
660 42, 43, 93, 45, 93, 309, 41, 297, 298, 41,
661 297, 298, 297, 298, 297, 298, 123, 59, 297, 298,
662 297, 298, 64, 125, 256, 257, 258, 259, 260, 261,
663 123, 263, 264, 265, 266, 267, 268, 269, 270, 271,
664 272, 273, 274, 275, 348, 297, 298, 279, 280, 91,
665 282, 283, 284, 285, 286, 297, 298, 297, 298, 291,
666 292, 293, 294, 295, 296, 306, 91, 299, 309, 41,
667 41, 312, 313, 314, 59, 41, 308, 59, 310, 311,
668 41, 123, 297, 298, 126, 59, 272, 273, 274, 275,
669 41, 8, 32, 279, 13, 281, 297, 298, 123, 144,
670 348, 287, 288, 41, 309, 309, 44, 190, 312, 313,
671 314, 297, 298, 96, 300, 301, 302, 303, 304, 256,
672 257, 258, 259, 260, 261, 63, 263, 264, 265, 266,
673 267, 268, 269, 270, 271, 272, 273, 274, 275, 297,
674 298, -1, 279, 280, -1, 282, 283, 284, 285, 286,
675 -1, -1, -1, 91, 291, 292, 293, 294, 295, 296,
676 125, -1, 299, 91, 266, 267, 268, -1, 270, 271,
677 -1, 308, -1, 310, 311, -1, 41, -1, -1, 44,
678 -1, 272, 273, 274, 275, 123, -1, -1, 279, -1,
679 -1, -1, -1, 58, 59, 123, -1, -1, 63, -1,
680 -1, -1, -1, 297, 298, -1, 297, 298, 297, 298,
681 -1, -1, -1, -1, 256, 257, 258, 259, 260, 261,
682 -1, 263, 264, 265, -1, -1, 91, 269, 93, -1,
683 272, 273, 274, 275, -1, -1, -1, 279, 280, -1,
684 282, 283, 284, 285, 286, -1, -1, -1, -1, 291,
685 292, 293, 294, 295, 296, -1, -1, 299, 123, -1,
686 -1, -1, 287, 288, 289, 290, 308, 33, 310, 311,
687 36, 37, 38, -1, 40, 41, 42, 43, 44, 45,
688 305, 306, -1, -1, 309, -1, -1, 312, 313, 314,
689 -1, -1, 58, 59, -1, -1, -1, 63, 64, -1,
690 -1, 266, 267, 268, -1, 270, 271, -1, -1, -1,
691 -1, -1, -1, -1, -1, -1, 272, 273, 274, 275,
692 -1, -1, -1, 279, -1, 91, -1, 93, 33, -1,
693 -1, 36, 37, 38, -1, 40, 41, 42, 43, 44,
694 45, 297, 298, 281, -1, -1, -1, -1, -1, 287,
695 288, 289, 290, 58, 59, -1, -1, 123, 63, 64,
696 126, 289, 300, 301, 302, 303, 304, 305, 306, -1,
697 -1, 309, -1, -1, 312, 313, 314, -1, 306, -1,
698 -1, 309, -1, -1, 312, 313, 314, 33, 93, -1,
699 36, 37, 38, -1, 40, -1, 42, 43, -1, 45,
700 -1, -1, -1, -1, -1, -1, -1, 272, 273, 274,
701 275, -1, -1, 59, 279, -1, 281, -1, 64, -1,
702 -1, 126, 287, 288, 289, 290, 304, 305, 306, -1,
703 308, -1, 297, 298, -1, 300, 301, 302, 303, 304,
704 305, 306, -1, -1, 309, 91, -1, 312, 313, 314,
705 -1, -1, 41, -1, -1, 44, -1, 335, -1, -1,
706 -1, -1, -1, -1, 342, -1, -1, -1, 346, -1,
707 59, -1, -1, 91, -1, -1, -1, 123, -1, -1,
708 126, 359, 360, -1, -1, -1, -1, -1, -1, -1,
709 -1, 257, 258, 259, 260, 261, -1, 263, 264, 265,
710 -1, -1, -1, 269, 93, 123, 272, 273, 274, 275,
711 -1, -1, -1, 279, 280, 281, 282, 283, 284, 285,
712 286, 287, 288, 289, 290, 291, 292, 293, 294, 295,
713 296, 297, 298, 299, 300, 301, 302, 303, 304, 305,
714 306, -1, 308, 309, 310, 311, 312, 313, 314, -1,
715 -1, -1, 257, 258, 259, 260, 261, -1, 263, 264,
716 265, -1, -1, -1, 269, -1, -1, 272, 273, 274,
717 275, -1, -1, -1, 279, 280, 281, 282, 283, 284,
718 285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
719 295, 296, 297, 298, 299, 300, 301, 302, 303, 304,
720 305, 306, -1, 308, 309, 310, 311, 312, 313, 314,
721 256, 257, 258, 259, 260, 261, -1, 263, 264, 265,
722 -1, -1, -1, 269, -1, 91, 272, 273, 274, 275,
723 -1, -1, -1, 279, 280, -1, 282, 283, 284, 285,
724 286, -1, -1, -1, -1, 291, 292, 293, 294, 295,
725 296, 33, -1, 299, 36, 37, 38, 123, 40, -1,
726 42, 43, 308, 45, 310, 311, -1, -1, 13, 287,
727 -1, 289, 290, -1, -1, -1, -1, 59, -1, -1,
728 -1, -1, 64, 272, 273, 274, 275, 305, 306, -1,
729 279, 309, -1, -1, 312, 313, 314, 42, -1, -1,
730 45, -1, -1, -1, -1, -1, -1, 33, 297, 91,
731 36, 37, 38, -1, 40, -1, 42, 43, -1, 45,
732 -1, -1, 26, -1, -1, -1, -1, -1, -1, -1,
733 -1, -1, -1, -1, -1, -1, 81, -1, 64, 43,
734 44, 123, -1, -1, 126, -1, 50, -1, -1, -1,
735 95, -1, -1, -1, -1, -1, -1, -1, 62, 63,
736 64, 65, -1, 33, -1, 91, 36, 37, 38, -1,
737 40, -1, 42, 43, -1, 45, -1, -1, -1, -1,
738 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
739 -1, -1, -1, -1, 64, -1, 141, 123, -1, -1,
740 126, -1, -1, 107, -1, -1, -1, -1, -1, -1,
741 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
742 -1, 91, -1, 289, 290, -1, 33, -1, -1, 36,
743 37, 38, -1, 40, 179, 42, 43, -1, 45, 305,
744 306, 186, -1, 309, -1, -1, 312, 313, 314, -1,
745 -1, -1, -1, 123, -1, -1, 126, 64, -1, -1,
746 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
747 -1, -1, -1, -1, 256, 257, 258, 259, 260, 261,
748 -1, 263, 264, 265, 91, -1, -1, 269, -1, -1,
749 272, 273, 274, 275, -1, -1, -1, 279, 280, -1,
750 282, 283, 284, 285, 286, -1, -1, -1, -1, 291,
751 292, 293, 294, 295, 296, -1, 123, 299, -1, 126,
752 -1, 91, -1, -1, -1, 41, 308, -1, 310, 311,
753 -1, 257, 258, 259, 260, 261, 262, 263, 264, 265,
754 -1, -1, -1, 269, -1, -1, -1, 63, -1, -1,
755 -1, -1, -1, 123, 280, -1, 282, 283, 284, 285,
756 286, -1, -1, -1, -1, 291, 292, 293, 294, 295,
757 296, -1, -1, 299, -1, 91, -1, -1, -1, -1,
758 -1, -1, 308, -1, 310, 311, -1, 257, 258, 259,
759 260, 261, -1, 263, 264, 265, -1, -1, -1, 269,
760 58, -1, -1, -1, -1, 63, -1, 123, -1, -1,
761 280, -1, 282, 283, 284, 285, 286, -1, -1, -1,
762 -1, 291, 292, 293, 294, 295, 296, -1, -1, 299,
763 -1, -1, -1, 91, -1, -1, -1, -1, 308, -1,
764 310, 311, -1, -1, -1, -1, 41, -1, -1, 44,
765 257, 258, 259, 260, 261, -1, 263, 264, 265, -1,
766 -1, -1, 269, 58, 59, 123, -1, -1, 63, -1,
767 -1, -1, -1, 280, -1, 282, 283, 284, 285, 286,
768 -1, -1, -1, -1, 291, 292, 293, 294, 295, 296,
769 33, -1, 299, 36, 37, 38, -1, 40, 93, 42,
770 43, 308, 45, 310, 311, -1, -1, -1, -1, -1,
771 -1, -1, -1, -1, -1, -1, 59, 287, 288, 289,
772 290, 64, -1, -1, -1, -1, -1, -1, -1, -1,
773 -1, 301, 302, 303, 304, 305, 306, -1, -1, 309,
774 -1, -1, 312, 313, 314, -1, 33, -1, 91, 36,
775 37, 38, -1, 40, 41, 42, 43, -1, 45, -1,
776 -1, -1, -1, -1, -1, 281, -1, -1, -1, -1,
777 -1, 287, 288, 289, 290, -1, -1, 64, -1, -1,
778 -1, -1, -1, 126, 300, 301, 302, 303, 304, 305,
779 306, -1, -1, 309, -1, -1, 312, 313, 314, -1,
780 -1, -1, 33, -1, 91, 36, 37, 38, -1, 40,
781 -1, 42, 43, -1, 45, -1, -1, -1, -1, -1,
782 -1, -1, -1, 281, -1, -1, -1, -1, -1, 287,
783 288, 289, 290, 64, -1, -1, -1, -1, -1, 126,
784 -1, -1, 300, 301, 302, 303, 304, 305, 306, -1,
785 -1, 309, -1, -1, 312, 313, 314, -1, -1, -1,
786 91, 33, 93, -1, 36, 37, 38, -1, 40, 41,
787 42, 43, -1, 45, -1, -1, -1, 272, 273, 274,
788 275, -1, -1, -1, 279, -1, 281, -1, -1, -1,
789 -1, -1, 64, 288, -1, 126, -1, -1, -1, -1,
790 -1, -1, 297, 298, -1, 300, 301, 302, 303, 304,
791 41, -1, -1, 44, 257, 258, 259, 260, 261, 91,
792 263, 264, 265, -1, -1, -1, 269, 58, 59, -1,
793 -1, -1, 63, -1, -1, -1, -1, 280, -1, 282,
794 283, 284, 285, 286, -1, -1, -1, -1, 291, 292,
795 293, 294, 295, 296, 126, -1, 299, -1, -1, -1,
796 -1, -1, 93, -1, -1, 308, 41, 310, 311, 44,
797 257, 258, 259, 260, 261, -1, 263, 264, 265, -1,
798 -1, -1, 269, 58, 59, -1, -1, -1, 63, -1,
799 -1, -1, -1, 280, -1, 282, 283, 284, 285, 286,
800 -1, -1, -1, -1, 291, 292, 293, 294, 295, 296,
801 -1, -1, 299, -1, -1, -1, -1, -1, 93, -1,
802 -1, 308, -1, 310, 311, -1, 257, 258, 259, 260,
803 261, -1, 263, 264, 265, -1, 33, -1, 269, 36,
804 37, 38, -1, 40, 41, 42, 43, -1, 45, 280,
805 -1, 282, 283, 284, 285, 286, -1, -1, -1, -1,
806 291, 292, 293, 294, 295, 296, -1, 64, 299, -1,
807 -1, -1, -1, -1, -1, -1, -1, 308, -1, 310,
808 311, -1, -1, -1, -1, 257, 258, 259, 260, 261,
809 -1, 263, 264, 265, 91, 33, -1, 269, 36, 37,
810 38, -1, 40, -1, 42, 43, -1, 45, 280, -1,
811 282, 283, 284, 285, 286, -1, -1, -1, -1, 291,
812 292, 293, 294, 295, 296, -1, 64, 299, -1, 126,
813 -1, -1, -1, -1, -1, -1, 308, -1, 310, 311,
814 -1, 272, 273, 274, 275, -1, -1, -1, 279, -1,
815 281, 33, -1, 91, 36, 37, 38, -1, 40, 41,
816 42, 43, -1, 45, -1, -1, 297, 298, -1, 300,
817 301, 302, 303, 304, -1, -1, -1, -1, -1, -1,
818 -1, -1, 64, -1, -1, -1, -1, -1, 126, -1,
819 -1, -1, -1, -1, -1, -1, -1, 272, 273, 274,
820 275, -1, -1, -1, 279, -1, 281, 33, -1, 91,
821 36, 37, 38, -1, 40, 41, 42, 43, -1, 45,
822 -1, -1, 297, 298, -1, 300, 301, 302, 303, 304,
823 -1, -1, -1, -1, -1, -1, -1, -1, 64, -1,
824 -1, -1, -1, -1, 126, -1, -1, -1, -1, -1,
825 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
826 257, 258, 259, 260, 261, 91, 263, 264, 265, -1,
827 33, -1, 269, 36, 37, 38, -1, 40, 41, 42,
828 43, -1, 45, 280, -1, 282, 283, 284, 285, 286,
829 -1, -1, -1, -1, 291, 292, 293, 294, 295, 296,
830 126, 64, 299, -1, -1, -1, -1, -1, -1, -1,
831 -1, 308, -1, 310, 311, -1, -1, -1, 256, 257,
832 258, 259, 260, 261, -1, 263, 264, 265, 91, -1,
833 -1, 269, 41, -1, -1, 44, -1, -1, -1, -1,
834 -1, -1, 280, -1, 282, 283, 284, 285, 286, 58,
835 59, -1, -1, 291, 292, 293, 294, 295, 296, -1,
836 -1, 299, -1, 126, -1, -1, -1, -1, -1, -1,
837 308, -1, 310, 311, -1, 257, 258, 259, 260, 261,
838 -1, 263, 264, 265, 93, -1, -1, 269, 41, -1,
839 -1, 44, -1, -1, -1, -1, -1, -1, 280, -1,
840 282, 283, 284, 285, 286, 58, 59, -1, -1, 291,
841 292, 293, 294, 295, 296, -1, -1, 299, -1, -1,
842 -1, -1, -1, -1, -1, -1, 308, -1, 310, 311,
843 -1, 257, 258, 259, 260, 261, -1, 263, 264, 265,
844 93, 33, -1, 269, 36, 37, 38, -1, 40, -1,
845 42, 43, -1, 45, 280, -1, 282, 283, 284, 285,
846 286, -1, -1, -1, -1, 291, 292, 293, 294, 295,
847 296, -1, 64, 299, -1, -1, -1, -1, -1, -1,
848 -1, -1, 308, -1, 310, 311, -1, -1, -1, -1,
849 41, -1, -1, 44, 257, 258, 259, 260, 261, 91,
850 263, 264, 265, -1, -1, -1, 269, 58, 59, -1,
851 -1, -1, 63, -1, -1, -1, -1, 280, -1, 282,
852 283, 284, 285, 286, -1, -1, -1, -1, 291, 292,
853 293, 294, 295, 296, 126, 41, 299, -1, 44, -1,
854 91, -1, 93, -1, -1, 308, -1, 310, 311, -1,
855 -1, -1, 58, 59, -1, -1, -1, 63, -1, -1,
856 -1, -1, -1, 272, 273, 274, 275, -1, -1, -1,
857 279, -1, 123, -1, -1, -1, -1, -1, 41, -1,
858 -1, 44, -1, -1, -1, 91, -1, 93, 297, 298,
859 -1, 300, -1, -1, -1, 58, 59, -1, -1, -1,
860 63, -1, -1, -1, -1, -1, -1, -1, -1, -1,
861 -1, -1, -1, -1, -1, -1, -1, 123, -1, 272,
862 273, 274, 275, -1, 41, -1, 279, 44, -1, -1,
863 93, -1, -1, -1, -1, -1, -1, -1, -1, -1,
864 -1, 58, 59, -1, 297, 298, 63, -1, -1, -1,
865 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
866 123, -1, -1, -1, -1, 257, 258, 259, 260, 261,
867 -1, 263, 264, 265, 91, -1, 93, 269, -1, -1,
868 -1, -1, -1, -1, -1, -1, -1, -1, 280, -1,
869 282, 283, 284, 285, 286, -1, -1, -1, -1, 291,
870 292, 293, 294, 295, 296, -1, -1, 299, -1, 91,
871 -1, -1, -1, -1, -1, -1, 308, -1, 310, 311,
872 -1, 272, 273, 274, 275, -1, -1, -1, 279, -1,
873 281, -1, -1, -1, -1, -1, 287, 288, 289, 290,
874 -1, 123, -1, -1, -1, -1, 297, 298, -1, 300,
875 301, 302, 303, 304, 305, 306, -1, -1, 309, -1,
876 -1, 312, 313, 314, -1, -1, 272, 273, 274, 275,
877 -1, 41, -1, 279, 44, 281, -1, -1, -1, -1,
878 -1, 287, 288, 289, 290, -1, -1, -1, 58, 59,
879 -1, 297, 298, 63, 300, 301, 302, 303, 304, 305,
880 306, -1, -1, 309, -1, -1, 312, 313, 314, 272,
881 273, 274, 275, -1, -1, -1, 279, -1, 281, -1,
882 -1, -1, -1, 93, 287, 288, 289, 290, -1, -1,
883 -1, -1, -1, -1, 297, 298, -1, 300, 301, 302,
884 303, 304, 305, 306, -1, -1, 309, -1, -1, 312,
885 313, 314, -1, 123, -1, 272, 273, 274, 275, 91,
886 41, -1, 279, -1, 281, -1, -1, -1, -1, -1,
887 287, 288, 289, 290, -1, -1, -1, 58, 59, -1,
888 297, 298, 63, 300, 301, 302, 303, 304, 305, 306,
889 -1, 123, 309, -1, -1, 312, 313, 314, -1, -1,
890 -1, -1, -1, 41, -1, 287, 288, 289, 290, -1,
891 91, -1, 93, -1, -1, -1, -1, -1, -1, -1,
892 58, 59, 304, 305, 306, 63, -1, 309, -1, -1,
893 312, 313, 314, -1, -1, -1, -1, -1, -1, -1,
894 -1, -1, 123, -1, -1, -1, -1, 41, -1, -1,
895 44, -1, -1, 91, -1, 93, -1, -1, -1, -1,
896 -1, -1, -1, -1, 58, 59, -1, -1, -1, 63,
897 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
898 -1, -1, -1, -1, -1, 123, -1, -1, -1, -1,
899 -1, -1, -1, -1, -1, -1, -1, -1, -1, 93,
900 -1, -1, 272, 273, 274, 275, -1, -1, -1, 279,
901 -1, 281, -1, -1, -1, -1, -1, 287, 288, 289,
902 290, -1, -1, 41, -1, -1, 44, 297, 298, 123,
903 300, 301, 302, 303, 304, 305, 306, -1, -1, 309,
904 58, 59, 312, 313, 314, 63, -1, -1, -1, -1,
905 -1, -1, -1, -1, -1, 287, 288, 289, 290, -1,
906 -1, -1, -1, -1, -1, -1, 41, -1, -1, 44,
907 302, 303, 304, 305, 306, 93, -1, 309, -1, -1,
908 312, 313, 314, 58, 59, -1, -1, -1, 63, -1,
909 -1, 272, 273, 274, 275, -1, -1, -1, 279, -1,
910 281, -1, -1, -1, -1, 123, 287, 288, 289, 290,
911 -1, -1, -1, -1, -1, -1, 297, 298, 93, 300,
912 301, 302, 303, 304, 305, 306, -1, -1, 309, -1,
913 -1, 312, 313, 314, 272, 273, 274, 275, -1, 41,
914 -1, 279, -1, 281, -1, -1, -1, -1, 123, 287,
915 288, 289, 290, -1, -1, -1, 58, 59, -1, 297,
916 298, 63, 300, 301, 302, 303, 304, 305, 306, -1,
917 -1, 309, -1, -1, 312, 313, 314, -1, 272, 273,
918 274, 275, -1, 41, -1, 279, 44, 281, -1, 91,
919 -1, 93, -1, 287, 288, 289, 290, -1, -1, -1,
920 58, 59, -1, 297, 298, 63, 300, 301, 302, 303,
921 304, 305, 306, -1, -1, 309, -1, -1, 312, 313,
922 314, 123, -1, -1, -1, -1, 41, 25, 26, 44,
923 -1, -1, -1, -1, -1, 93, -1, -1, -1, 37,
924 -1, -1, -1, 58, 59, 43, 44, 45, 63, -1,
925 -1, -1, 50, -1, 272, 273, 274, 275, -1, -1,
926 -1, 279, -1, 281, 62, 63, 64, 65, -1, 287,
927 288, 289, 290, -1, -1, -1, -1, -1, 93, 297,
928 298, -1, 300, 301, 302, 303, 304, 305, 306, -1,
929 -1, 309, -1, -1, 312, 313, 314, 272, 273, 274,
930 275, -1, 41, -1, 279, 44, 281, -1, -1, 107,
931 -1, -1, 287, 288, 289, 290, -1, -1, -1, 58,
932 59, -1, 297, 298, 63, 300, 301, 302, 303, 304,
933 305, 306, -1, -1, 309, -1, -1, 312, 313, 314,
934 -1, -1, -1, -1, -1, 41, -1, -1, 44, -1,
935 -1, -1, -1, -1, 93, -1, -1, -1, -1, -1,
936 -1, -1, 58, 59, -1, -1, -1, 63, -1, 167,
937 272, 273, 274, 275, -1, -1, -1, 279, -1, 281,
938 -1, -1, -1, -1, -1, 287, 288, 289, 290, -1,
939 -1, -1, -1, 191, -1, 297, 298, 93, 300, 301,
940 302, 303, 304, 305, 306, -1, -1, 309, -1, -1,
941 312, 313, 314, -1, 272, 273, 274, 275, -1, 41,
942 -1, 279, 44, 281, -1, -1, -1, -1, -1, 287,
943 288, 289, 290, -1, -1, -1, 58, 59, -1, 297,
944 298, 63, 300, 301, 302, 303, 304, 305, 306, -1,
945 -1, 309, -1, -1, 312, 313, 314, 272, 273, 274,
946 275, -1, 41, -1, 279, 44, 281, -1, -1, -1,
947 -1, 93, 287, 288, 289, 290, -1, -1, -1, 58,
948 59, -1, 297, 298, 63, 300, 301, 302, 303, 304,
949 305, 306, -1, -1, 309, -1, -1, 312, 313, 314,
950 41, -1, -1, 44, -1, -1, -1, -1, -1, -1,
951 -1, -1, -1, -1, 93, -1, -1, 58, 59, -1,
952 -1, -1, 63, -1, -1, -1, -1, -1, -1, -1,
953 -1, -1, -1, 272, 273, 274, 275, -1, 41, -1,
954 279, 44, 281, -1, -1, -1, -1, -1, 287, 288,
955 289, 290, 93, -1, -1, 58, 59, -1, 297, 298,
956 63, 300, 301, 302, 303, 304, 305, 306, -1, -1,
957 309, -1, -1, 312, 313, 314, 272, 273, 274, 275,
958 -1, 41, -1, 279, 44, 281, -1, -1, -1, -1,
959 93, 287, 288, 289, 290, -1, -1, -1, 58, 59,
960 -1, 297, 298, 63, 300, 301, 302, 303, 304, 305,
961 306, -1, -1, 309, -1, -1, 312, 313, 314, 41,
962 -1, -1, 44, -1, -1, -1, -1, -1, -1, -1,
963 -1, -1, -1, 93, -1, -1, 58, 59, -1, -1,
964 -1, 63, -1, -1, -1, -1, -1, -1, -1, -1,
965 272, 273, 274, 275, -1, 41, -1, 279, 44, 281,
966 -1, -1, -1, -1, -1, 287, 288, 289, 290, -1,
967 -1, 93, 58, 59, -1, 297, 298, 63, 300, 301,
968 302, 303, 304, 305, 306, -1, -1, 309, -1, -1,
969 -1, -1, -1, 272, 273, 274, 275, -1, 41, -1,
970 279, 44, 281, -1, -1, -1, -1, 93, 287, 288,
971 289, 290, -1, -1, -1, 58, 59, -1, 297, 298,
972 63, 300, 301, 302, 303, 304, 305, 306, -1, -1,
973 -1, 272, 273, 274, 275, -1, 41, -1, 279, 44,
974 281, -1, -1, -1, -1, -1, 287, 288, 289, 290,
975 93, -1, -1, 58, 59, -1, 297, 298, 63, 300,
976 301, 302, 303, 304, 305, 306, -1, -1, -1, 272,
977 273, 274, 275, -1, 41, -1, 279, 44, 281, -1,
978 -1, -1, -1, -1, 287, 288, 289, 290, 93, -1,
979 -1, 58, 59, -1, 297, 298, 63, 300, 301, 302,
980 303, 304, 305, 306, -1, -1, -1, -1, -1, -1,
981 -1, -1, 272, 273, 274, 275, -1, 41, -1, 279,
982 44, 281, -1, -1, -1, -1, 93, 287, 288, 289,
983 290, -1, -1, -1, 58, 59, -1, 297, 298, 63,
984 300, 301, 302, 303, 304, 305, 306, -1, -1, -1,
985 272, 273, 274, 275, -1, 41, -1, 279, 44, 281,
986 -1, -1, -1, -1, -1, 287, 288, 289, 290, 93,
987 -1, -1, 58, 59, -1, 297, 298, 63, 300, 301,
988 302, 303, 304, 305, 306, -1, 272, 273, 274, 275,
989 -1, 41, -1, 279, 44, 281, -1, -1, -1, -1,
990 -1, 287, 288, 289, 290, -1, -1, 93, 58, 59,
991 -1, 297, 298, 63, 300, 301, 302, 303, 304, 305,
992 306, -1, -1, -1, -1, -1, -1, -1, -1, 272,
993 273, 274, 275, -1, 41, -1, 279, 44, 281, -1,
994 -1, -1, -1, 93, 287, 288, 289, 290, -1, -1,
995 -1, 58, 59, -1, 297, 298, 63, 300, 301, 302,
996 303, 304, 305, 306, -1, -1, -1, 272, 273, 274,
997 275, -1, 41, -1, 279, 44, 281, -1, -1, -1,
998 -1, -1, 287, 288, 289, 290, 93, -1, -1, 58,
999 59, -1, 297, 298, 63, 300, 301, 302, 303, 304,
1000 305, -1, -1, -1, -1, 272, 273, 274, 275, -1,
1001 41, -1, 279, 44, 281, -1, -1, -1, -1, -1,
1002 287, 288, -1, 290, 93, -1, -1, 58, 59, -1,
1003 297, 298, 63, 300, 301, 302, 303, 304, 305, -1,
1004 91, -1, -1, -1, -1, -1, -1, -1, 272, 273,
1005 274, 275, -1, 41, -1, 279, 44, 281, -1, -1,
1006 -1, -1, 93, 287, 288, -1, -1, -1, -1, -1,
1007 58, 59, 123, 297, 298, 63, 300, 301, 302, 303,
1008 304, 305, -1, -1, -1, -1, 272, 273, 274, 275,
1009 -1, 41, -1, 279, 44, 281, -1, -1, -1, -1,
1010 -1, 287, 288, 41, -1, 93, 44, -1, 58, 59,
1011 -1, 297, 298, 63, 300, 301, 302, 303, 304, -1,
1012 58, 59, 272, 273, 274, 275, -1, -1, -1, 279,
1013 -1, 281, -1, -1, -1, -1, -1, 287, 288, -1,
1014 -1, -1, -1, 93, -1, -1, 41, 297, 298, 44,
1015 300, 301, 302, 303, 304, 93, -1, -1, -1, 41,
1016 -1, -1, 44, 58, 59, 272, 273, 274, 275, -1,
1017 -1, -1, 279, -1, 281, -1, 58, 59, -1, -1,
1018 287, 288, -1, -1, -1, -1, 63, -1, -1, -1,
1019 297, 298, -1, 300, 301, 302, 303, 304, 93, -1,
1020 -1, -1, -1, 272, 273, 274, 275, -1, -1, -1,
1021 279, 93, 281, -1, 91, -1, -1, -1, -1, -1,
1022 -1, -1, -1, -1, -1, -1, -1, -1, 297, 298,
1023 -1, 300, 301, 302, 303, -1, 287, 288, 289, 290,
1024 -1, 272, 273, 274, 275, -1, 123, -1, 279, -1,
1025 281, -1, 303, 304, 305, 306, -1, -1, 309, -1,
1026 -1, 312, 313, 314, -1, -1, 297, 298, -1, 300,
1027 301, 302, 63, -1, -1, -1, -1, -1, -1, -1,
1028 -1, -1, -1, -1, 272, 273, 274, 275, -1, -1,
1029 -1, 279, -1, 281, -1, -1, -1, -1, -1, -1,
1030 91, -1, -1, -1, -1, -1, -1, -1, -1, 297,
1031 298, -1, 300, 301, -1, -1, -1, -1, -1, -1,
1032 -1, -1, 272, 273, 274, 275, -1, -1, -1, 279,
1033 -1, -1, 123, -1, 272, 273, 274, 275, -1, -1,
1034 -1, 279, -1, -1, -1, -1, 30, 297, 298, -1,
1035 300, -1, -1, -1, 38, -1, -1, -1, 42, 297,
1036 298, 45, -1, -1, -1, -1, -1, -1, 52, 53,
1037 54, 55, 56, -1, -1, 59, 60, 272, 273, 274,
1038 275, -1, 66, -1, 279, -1, -1, -1, -1, -1,
1039 272, 273, 274, 275, -1, -1, -1, 279, -1, -1,
1040 -1, -1, 297, 298, 281, -1, -1, -1, -1, 93,
1041 287, 288, 289, 290, -1, 297, 298, -1, -1, -1,
1042 -1, -1, -1, 300, 301, 302, 303, 304, 305, 306,
1043 -1, -1, 309, -1, -1, 312, 313, 314, -1, -1,
1044 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1045 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1046 -1, -1, -1, -1, -1, -1, -1, 151, 152, 153,
1047 154, 155, 156, 157, 158, 159, 160, 161, 162, 163,
1048 164, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1049 281, -1, 176, -1, -1, -1, 287, 288, 289, 290,
1050 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1051 301, 302, 303, 304, 305, 306, -1, -1, 309, -1,
1052 -1, 312, 313, 314, -1, -1, -1, -1, -1, -1,
1053 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1054 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1055 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1056 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1057 -1, 255, -1, -1, -1, -1, -1, -1, -1, -1,
1058 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1059 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1066 #define YYMAXTOKEN 314
1069 "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,
1070 "'!'",0,0,"'$'","'%'","'&'",0,"'('","')'","'*'","'+'","','","'-'",0,0,0,0,0,0,0,
1071 0,0,0,0,0,"':'","';'",0,0,0,"'?'","'@'",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1072 0,0,0,0,0,0,"'['",0,"']'",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1073 0,0,"'{'",0,"'}'","'~'",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1074 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1075 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1076 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",
1077 "PMFUNC","PRIVATEREF","FUNC0SUB","UNIOPSUB","LSTOPSUB","LABEL","FORMAT","SUB",
1078 "ANONSUB","PACKAGE","USE","WHILE","UNTIL","IF","UNLESS","ELSE","ELSIF",
1079 "CONTINUE","FOR","LOOPEX","DOTDOT","FUNC0","FUNC1","FUNC","UNIOP","LSTOP",
1080 "RELOP","EQOP","MULOP","ADDOP","DOLSHARP","DO","HASHBRACK","NOAMP","LOCAL","MY",
1081 "OROP","ANDOP","NOTOP","ASSIGNOP","OROR","ANDAND","BITOROP","BITANDOP",
1082 "SHIFTOP","MATCHOP","UMINUS","REFGEN","POWOP","PREINC","PREDEC","POSTINC",
1088 "prog : $$1 lineseq",
1089 "block : '{' remember lineseq '}'",
1091 "mblock : '{' mremember lineseq '}'",
1094 "lineseq : lineseq decl",
1095 "lineseq : lineseq line",
1096 "line : label cond",
1099 "line : label sideff ';'",
1102 "sideff : expr IF expr",
1103 "sideff : expr UNLESS expr",
1104 "sideff : expr WHILE expr",
1105 "sideff : expr UNTIL iexpr",
1106 "sideff : expr FOR expr",
1108 "else : ELSE mblock",
1109 "else : ELSIF '(' mexpr ')' mblock else",
1110 "cond : IF '(' remember mexpr ')' mblock else",
1111 "cond : UNLESS '(' remember miexpr ')' mblock else",
1113 "cont : CONTINUE block",
1114 "loop : label WHILE '(' remember mtexpr ')' mblock cont",
1115 "loop : label UNTIL '(' remember miexpr ')' mblock cont",
1116 "loop : label FOR MY remember my_scalar '(' mexpr ')' mblock cont",
1117 "loop : label FOR scalar '(' remember mexpr ')' mblock cont",
1118 "loop : label FOR '(' remember mexpr ')' mblock cont",
1119 "loop : label FOR '(' remember mnexpr ';' mtexpr ';' mnexpr ')' mblock",
1120 "loop : label block cont",
1136 "format : FORMAT startformsub formname block",
1139 "subrout : SUB startsub subname proto subbody",
1148 "package : PACKAGE WORD ';'",
1149 "package : PACKAGE ';'",
1151 "use : USE startsub $$2 WORD WORD listexpr ';'",
1152 "expr : expr ANDOP expr",
1153 "expr : expr OROP expr",
1155 "argexpr : argexpr ','",
1156 "argexpr : argexpr ',' term",
1158 "listop : LSTOP indirob argexpr",
1159 "listop : FUNC '(' indirob expr ')'",
1160 "listop : term ARROW method '(' listexprcom ')'",
1161 "listop : METHOD indirob listexpr",
1162 "listop : FUNCMETH indirob '(' listexprcom ')'",
1163 "listop : LSTOP listexpr",
1164 "listop : FUNC '(' listexprcom ')'",
1166 "listop : LSTOPSUB startanonsub block $$3 listexpr",
1169 "term : term ASSIGNOP term",
1170 "term : term POWOP term",
1171 "term : term MULOP term",
1172 "term : term ADDOP term",
1173 "term : term SHIFTOP term",
1174 "term : term RELOP term",
1175 "term : term EQOP term",
1176 "term : term BITANDOP term",
1177 "term : term BITOROP term",
1178 "term : term DOTDOT term",
1179 "term : term ANDAND term",
1180 "term : term OROR term",
1181 "term : term '?' term ':' term",
1182 "term : term MATCHOP term",
1187 "term : REFGEN term",
1188 "term : term POSTINC",
1189 "term : term POSTDEC",
1190 "term : PREINC term",
1191 "term : PREDEC term",
1192 "term : local term",
1193 "term : '(' expr ')'",
1195 "term : '[' expr ']'",
1197 "term : HASHBRACK expr ';' '}'",
1198 "term : HASHBRACK ';' '}'",
1199 "term : ANONSUB startanonsub proto block",
1201 "term : star '{' expr ';' '}'",
1203 "term : scalar '[' expr ']'",
1204 "term : term ARROW '[' expr ']'",
1205 "term : term '[' expr ']'",
1209 "term : scalar '{' expr ';' '}'",
1210 "term : term ARROW '{' expr ';' '}'",
1211 "term : term '{' expr ';' '}'",
1212 "term : '(' expr ')' '[' expr ']'",
1213 "term : '(' ')' '[' expr ']'",
1214 "term : ary '[' expr ']'",
1215 "term : ary '{' expr ';' '}'",
1218 "term : amper '(' ')'",
1219 "term : amper '(' expr ')'",
1220 "term : NOAMP WORD listexpr",
1223 "term : DO WORD '(' ')'",
1224 "term : DO WORD '(' expr ')'",
1225 "term : DO scalar '(' ')'",
1226 "term : DO scalar '(' expr ')'",
1227 "term : term ARROW '(' ')'",
1228 "term : term ARROW '(' expr ')'",
1230 "term : LOOPEX term",
1231 "term : NOTOP argexpr",
1233 "term : UNIOP block",
1234 "term : UNIOP term",
1235 "term : UNIOPSUB term",
1237 "term : FUNC0 '(' ')'",
1239 "term : FUNC1 '(' ')'",
1240 "term : FUNC1 '(' expr ')'",
1241 "term : PMFUNC '(' term ')'",
1242 "term : PMFUNC '(' term ',' term ')'",
1246 "listexpr : argexpr",
1248 "listexprcom : expr",
1249 "listexprcom : expr ','",
1252 "my_scalar : scalar",
1253 "amper : '&' indirob",
1254 "scalar : '$' indirob",
1255 "ary : '@' indirob",
1256 "hsh : '%' indirob",
1257 "arylen : DOLSHARP indirob",
1258 "star : '*' indirob",
1262 "indirob : PRIVATEREF",
1265 #define yyclearin (yychar=(-1))
1266 #define yyerrok (yyerrflag=0)
1269 #define YYMAXDEPTH YYSTACKSIZE
1273 #define YYSTACKSIZE YYMAXDEPTH
1275 #define YYSTACKSIZE 500
1276 #define YYMAXDEPTH 500
1291 #line 1353 "perly.c"
1292 #define YYABORT goto yyabort
1293 #define YYACCEPT goto yyaccept
1294 #define YYERROR goto yyerrlab
1308 yydestruct(void *ptr)
1310 struct ysv* ysave = (struct ysv*)ptr;
1311 if (ysave->yyss) Safefree(ysave->yyss);
1312 if (ysave->yyvs) Safefree(ysave->yyvs);
1313 yydebug = ysave->oldyydebug;
1314 yynerrs = ysave->oldyynerrs;
1315 yyerrflag = ysave->oldyyerrflag;
1316 yychar = ysave->oldyychar;
1317 yyval = ysave->oldyyval;
1318 yylval = ysave->oldyylval;
1325 register int yym, yyn, yystate;
1326 register short *yyssp;
1327 register YYSTYPE *yyvsp;
1330 unsigned yystacksize = YYSTACKSIZE;
1335 extern char *getenv();
1340 New(73, ysave, 1, struct ysv);
1341 SAVEDESTRUCTOR(yydestruct, ysave);
1342 ysave->oldyydebug = yydebug;
1343 ysave->oldyynerrs = yynerrs;
1344 ysave->oldyyerrflag = yyerrflag;
1345 ysave->oldyychar = yychar;
1346 ysave->oldyyval = yyval;
1347 ysave->oldyylval = yylval;
1350 if (yys = getenv("YYDEBUG"))
1353 if (yyn >= '0' && yyn <= '9')
1354 yydebug = yyn - '0';
1363 ** Initialize private stacks (yyparse may be called from an action)
1365 New(73, yyss, yystacksize, short);
1366 New(73, yyvs, yystacksize, YYSTYPE);
1374 *yyssp = yystate = 0;
1377 if (yyn = yydefred[yystate]) goto yyreduce;
1380 if ((yychar = yylex()) < 0) yychar = 0;
1385 if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
1386 if (!yys) yys = "illegal-symbol";
1387 PerlIO_printf(Perl_debug_log, "yydebug: state %d, reading %d (%s)\n", yystate,
1392 if ((yyn = yysindex[yystate]) && (yyn += yychar) >= 0 &&
1393 yyn <= YYTABLESIZE && yycheck[yyn] == yychar)
1397 PerlIO_printf(Perl_debug_log, "yydebug: state %d, shifting to state %d\n",
1398 yystate, yytable[yyn]);
1400 if (yyssp >= yyss + yystacksize - 1)
1403 ** reallocate and recover. Note that pointers
1404 ** have to be reset, or bad things will happen
1406 int yyps_index = (yyssp - yyss);
1407 int yypv_index = (yyvsp - yyvs);
1408 yystacksize += YYSTACKSIZE;
1409 ysave->yyvs = yyvs =
1410 (YYSTYPE*)PerlMem_realloc((char*)yyvs,yystacksize * sizeof(YYSTYPE));
1411 ysave->yyss = yyss =
1412 (short*)PerlMem_realloc((char*)yyss,yystacksize * sizeof(short));
1415 yyssp = yyss + yyps_index;
1416 yyvsp = yyvs + yypv_index;
1418 *++yyssp = yystate = yytable[yyn];
1421 if (yyerrflag > 0) --yyerrflag;
1424 if ((yyn = yyrindex[yystate]) && (yyn += yychar) >= 0 &&
1425 yyn <= YYTABLESIZE && yycheck[yyn] == yychar)
1430 if (yyerrflag) goto yyinrecovery;
1435 yyerror("syntax error");
1447 if ((yyn = yysindex[*yyssp]) && (yyn += YYERRCODE) >= 0 &&
1448 yyn <= YYTABLESIZE && yycheck[yyn] == YYERRCODE)
1452 PerlIO_printf(Perl_debug_log,
1453 "yydebug: state %d, error recovery shifting to state %d\n",
1454 *yyssp, yytable[yyn]);
1456 if (yyssp >= yyss + yystacksize - 1)
1459 ** reallocate and recover. Note that pointers
1460 ** have to be reset, or bad things will happen
1462 int yyps_index = (yyssp - yyss);
1463 int yypv_index = (yyvsp - yyvs);
1464 yystacksize += YYSTACKSIZE;
1465 ysave->yyvs = yyvs = (YYSTYPE*)PerlMem_realloc((char*)yyvs,
1466 yystacksize * sizeof(YYSTYPE));
1467 ysave->yyss = yyss = (short*)PerlMem_realloc((char*)yyss,
1468 yystacksize * sizeof(short));
1471 yyssp = yyss + yyps_index;
1472 yyvsp = yyvs + yypv_index;
1474 *++yyssp = yystate = yytable[yyn];
1482 PerlIO_printf(Perl_debug_log,
1483 "yydebug: error recovery discarding state %d\n",
1486 if (yyssp <= yyss) goto yyabort;
1494 if (yychar == 0) goto yyabort;
1499 if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
1500 if (!yys) yys = "illegal-symbol";
1501 PerlIO_printf(Perl_debug_log,
1502 "yydebug: state %d, error recovery discards token %d (%s)\n",
1503 yystate, yychar, yys);
1512 PerlIO_printf(Perl_debug_log, "yydebug: state %d, reducing by rule %d (%s)\n",
1513 yystate, yyn, yyrule[yyn]);
1516 yyval = yyvsp[1-yym];
1522 #if defined(YYDEBUG) && defined(DEBUGGING)
1523 yydebug = (PL_debug & 1);
1530 { newPROG(yyvsp[0].opval); }
1534 { if (PL_copline > (line_t)yyvsp[-3].ival)
1535 PL_copline = yyvsp[-3].ival;
1536 yyval.opval = block_end(yyvsp[-2].ival, yyvsp[-1].opval); }
1540 { yyval.ival = block_start(TRUE); }
1544 { if (PL_copline > (line_t)yyvsp[-3].ival)
1545 PL_copline = yyvsp[-3].ival;
1546 yyval.opval = block_end(yyvsp[-2].ival, yyvsp[-1].opval); }
1550 { yyval.ival = block_start(FALSE); }
1554 { yyval.opval = Nullop; }
1558 { yyval.opval = yyvsp[-1].opval; }
1562 { yyval.opval = append_list(OP_LINESEQ,
1563 (LISTOP*)yyvsp[-1].opval, (LISTOP*)yyvsp[0].opval);
1564 PL_pad_reset_pending = TRUE;
1565 if (yyvsp[-1].opval && yyvsp[0].opval) PL_hints |= HINT_BLOCK_SCOPE; }
1569 { yyval.opval = newSTATEOP(0, yyvsp[-1].pval, yyvsp[0].opval); }
1573 { if (yyvsp[-1].pval != Nullch) {
1574 yyval.opval = newSTATEOP(0, yyvsp[-1].pval, newOP(OP_NULL, 0));
1577 yyval.opval = Nullop;
1578 PL_copline = NOLINE;
1580 PL_expect = XSTATE; }
1584 { yyval.opval = newSTATEOP(0, yyvsp[-2].pval, yyvsp[-1].opval);
1585 PL_expect = XSTATE; }
1589 { yyval.opval = Nullop; }
1593 { yyval.opval = yyvsp[0].opval; }
1597 { yyval.opval = newLOGOP(OP_AND, 0, yyvsp[0].opval, yyvsp[-2].opval); }
1601 { yyval.opval = newLOGOP(OP_OR, 0, yyvsp[0].opval, yyvsp[-2].opval); }
1605 { yyval.opval = newLOOPOP(OPf_PARENS, 1, scalar(yyvsp[0].opval), yyvsp[-2].opval); }
1609 { yyval.opval = newLOOPOP(OPf_PARENS, 1, yyvsp[0].opval, yyvsp[-2].opval);}
1613 { yyval.opval = newFOROP(0, Nullch, yyvsp[-1].ival,
1614 Nullop, yyvsp[0].opval, yyvsp[-2].opval, Nullop); }
1618 { yyval.opval = Nullop; }
1622 { yyval.opval = scope(yyvsp[0].opval); }
1626 { PL_copline = yyvsp[-5].ival;
1627 yyval.opval = newSTATEOP(0, Nullch,
1628 newCONDOP(0, yyvsp[-3].opval, scope(yyvsp[-1].opval), yyvsp[0].opval));
1629 PL_hints |= HINT_BLOCK_SCOPE; }
1633 { PL_copline = yyvsp[-6].ival;
1634 yyval.opval = block_end(yyvsp[-4].ival,
1635 newCONDOP(0, yyvsp[-3].opval, scope(yyvsp[-1].opval), yyvsp[0].opval)); }
1639 { PL_copline = yyvsp[-6].ival;
1640 yyval.opval = block_end(yyvsp[-4].ival,
1641 newCONDOP(0, yyvsp[-3].opval, scope(yyvsp[-1].opval), yyvsp[0].opval)); }
1645 { yyval.opval = Nullop; }
1649 { yyval.opval = scope(yyvsp[0].opval); }
1653 { PL_copline = yyvsp[-6].ival;
1654 yyval.opval = block_end(yyvsp[-4].ival,
1655 newSTATEOP(0, yyvsp[-7].pval,
1656 newWHILEOP(0, 1, (LOOP*)Nullop,
1657 yyvsp[-6].ival, yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval))); }
1661 { PL_copline = yyvsp[-6].ival;
1662 yyval.opval = block_end(yyvsp[-4].ival,
1663 newSTATEOP(0, yyvsp[-7].pval,
1664 newWHILEOP(0, 1, (LOOP*)Nullop,
1665 yyvsp[-6].ival, yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval))); }
1669 { yyval.opval = block_end(yyvsp[-6].ival,
1670 newFOROP(0, yyvsp[-9].pval, yyvsp[-8].ival, yyvsp[-5].opval, yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval)); }
1674 { yyval.opval = block_end(yyvsp[-4].ival,
1675 newFOROP(0, yyvsp[-8].pval, yyvsp[-7].ival, mod(yyvsp[-6].opval, OP_ENTERLOOP),
1676 yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval)); }
1680 { yyval.opval = block_end(yyvsp[-4].ival,
1681 newFOROP(0, yyvsp[-7].pval, yyvsp[-6].ival, Nullop, yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval)); }
1685 { OP *forop = append_elem(OP_LINESEQ,
1686 scalar(yyvsp[-6].opval),
1687 newWHILEOP(0, 1, (LOOP*)Nullop,
1688 yyvsp[-9].ival, scalar(yyvsp[-4].opval),
1689 yyvsp[0].opval, scalar(yyvsp[-2].opval)));
1690 PL_copline = yyvsp[-9].ival;
1691 yyval.opval = block_end(yyvsp[-7].ival, newSTATEOP(0, yyvsp[-10].pval, forop)); }
1695 { yyval.opval = newSTATEOP(0, yyvsp[-2].pval,
1696 newWHILEOP(0, 1, (LOOP*)Nullop,
1697 NOLINE, Nullop, yyvsp[-1].opval, yyvsp[0].opval)); }
1701 { yyval.opval = Nullop; }
1705 { (void)scan_num("1"); yyval.opval = yylval.opval; }
1709 { yyval.opval = invert(scalar(yyvsp[0].opval)); }
1713 { yyval.opval = yyvsp[0].opval; intro_my(); }
1717 { yyval.opval = yyvsp[0].opval; intro_my(); }
1721 { yyval.opval = yyvsp[0].opval; intro_my(); }
1725 { yyval.opval = yyvsp[0].opval; intro_my(); }
1729 { yyval.pval = Nullch; }
1749 { newFORM(yyvsp[-2].ival, yyvsp[-1].opval, yyvsp[0].opval); }
1753 { yyval.opval = yyvsp[0].opval; }
1757 { yyval.opval = Nullop; }
1761 { newSUB(yyvsp[-3].ival, yyvsp[-2].opval, yyvsp[-1].opval, yyvsp[0].opval); }
1765 { yyval.ival = start_subparse(FALSE, 0); }
1769 { yyval.ival = start_subparse(FALSE, CVf_ANON); }
1773 { yyval.ival = start_subparse(TRUE, 0); }
1777 { STRLEN n_a; char *name = SvPV(((SVOP*)yyvsp[0].opval)->op_sv, n_a);
1778 if (strEQ(name, "BEGIN") || strEQ(name, "END")
1779 || strEQ(name, "INIT"))
1780 CvSPECIAL_on(PL_compcv);
1781 yyval.opval = yyvsp[0].opval; }
1785 { yyval.opval = Nullop; }
1789 { yyval.opval = yyvsp[0].opval; }
1793 { yyval.opval = Nullop; PL_expect = XSTATE; }
1797 { package(yyvsp[-1].opval); }
1801 { package(Nullop); }
1805 { CvSPECIAL_on(PL_compcv); /* It's a BEGIN {} */ }
1809 { utilize(yyvsp[-6].ival, yyvsp[-5].ival, yyvsp[-3].opval, yyvsp[-2].opval, yyvsp[-1].opval); }
1813 { yyval.opval = newLOGOP(OP_AND, 0, yyvsp[-2].opval, yyvsp[0].opval); }
1817 { yyval.opval = newLOGOP(yyvsp[-1].ival, 0, yyvsp[-2].opval, yyvsp[0].opval); }
1821 { yyval.opval = yyvsp[-1].opval; }
1825 { yyval.opval = append_elem(OP_LIST, yyvsp[-2].opval, yyvsp[0].opval); }
1829 { yyval.opval = convert(yyvsp[-2].ival, OPf_STACKED,
1830 prepend_elem(OP_LIST, newGVREF(yyvsp[-2].ival,yyvsp[-1].opval), yyvsp[0].opval) ); }
1834 { yyval.opval = convert(yyvsp[-4].ival, OPf_STACKED,
1835 prepend_elem(OP_LIST, newGVREF(yyvsp[-4].ival,yyvsp[-2].opval), yyvsp[-1].opval) ); }
1839 { yyval.opval = convert(OP_ENTERSUB, OPf_STACKED,
1840 append_elem(OP_LIST,
1841 prepend_elem(OP_LIST, scalar(yyvsp[-5].opval), yyvsp[-1].opval),
1842 newUNOP(OP_METHOD, 0, yyvsp[-3].opval))); }
1846 { yyval.opval = convert(OP_ENTERSUB, OPf_STACKED,
1847 append_elem(OP_LIST,
1848 prepend_elem(OP_LIST, yyvsp[-1].opval, yyvsp[0].opval),
1849 newUNOP(OP_METHOD, 0, yyvsp[-2].opval))); }
1853 { yyval.opval = convert(OP_ENTERSUB, OPf_STACKED,
1854 append_elem(OP_LIST,
1855 prepend_elem(OP_LIST, yyvsp[-3].opval, yyvsp[-1].opval),
1856 newUNOP(OP_METHOD, 0, yyvsp[-4].opval))); }
1860 { yyval.opval = convert(yyvsp[-1].ival, 0, yyvsp[0].opval); }
1864 { yyval.opval = convert(yyvsp[-3].ival, 0, yyvsp[-1].opval); }
1868 { yyvsp[0].opval = newANONSUB(yyvsp[-1].ival, 0, yyvsp[0].opval); }
1872 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
1873 append_elem(OP_LIST,
1874 prepend_elem(OP_LIST, yyvsp[-2].opval, yyvsp[0].opval), yyvsp[-4].opval)); }
1878 { yyval.opval = newASSIGNOP(OPf_STACKED, yyvsp[-2].opval, yyvsp[-1].ival, yyvsp[0].opval); }
1882 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1886 { if (yyvsp[-1].ival != OP_REPEAT)
1887 scalar(yyvsp[-2].opval);
1888 yyval.opval = newBINOP(yyvsp[-1].ival, 0, yyvsp[-2].opval, scalar(yyvsp[0].opval)); }
1892 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1896 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1900 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1904 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1908 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1912 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1916 { yyval.opval = newRANGE(yyvsp[-1].ival, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval));}
1920 { yyval.opval = newLOGOP(OP_AND, 0, yyvsp[-2].opval, yyvsp[0].opval); }
1924 { yyval.opval = newLOGOP(OP_OR, 0, yyvsp[-2].opval, yyvsp[0].opval); }
1928 { yyval.opval = newCONDOP(0, yyvsp[-4].opval, yyvsp[-2].opval, yyvsp[0].opval); }
1932 { yyval.opval = bind_match(yyvsp[-1].ival, yyvsp[-2].opval, yyvsp[0].opval); }
1936 { yyval.opval = newUNOP(OP_NEGATE, 0, scalar(yyvsp[0].opval)); }
1940 { yyval.opval = yyvsp[0].opval; }
1944 { yyval.opval = newUNOP(OP_NOT, 0, scalar(yyvsp[0].opval)); }
1948 { yyval.opval = newUNOP(OP_COMPLEMENT, 0, scalar(yyvsp[0].opval));}
1952 { yyval.opval = newUNOP(OP_REFGEN, 0, mod(yyvsp[0].opval,OP_REFGEN)); }
1956 { yyval.opval = newUNOP(OP_POSTINC, 0,
1957 mod(scalar(yyvsp[-1].opval), OP_POSTINC)); }
1961 { yyval.opval = newUNOP(OP_POSTDEC, 0,
1962 mod(scalar(yyvsp[-1].opval), OP_POSTDEC)); }
1966 { yyval.opval = newUNOP(OP_PREINC, 0,
1967 mod(scalar(yyvsp[0].opval), OP_PREINC)); }
1971 { yyval.opval = newUNOP(OP_PREDEC, 0,
1972 mod(scalar(yyvsp[0].opval), OP_PREDEC)); }
1976 { yyval.opval = localize(yyvsp[0].opval,yyvsp[-1].ival); }
1980 { yyval.opval = sawparens(yyvsp[-1].opval); }
1984 { yyval.opval = sawparens(newNULLLIST()); }
1988 { yyval.opval = newANONLIST(yyvsp[-1].opval); }
1992 { yyval.opval = newANONLIST(Nullop); }
1996 { yyval.opval = newANONHASH(yyvsp[-2].opval); }
2000 { yyval.opval = newANONHASH(Nullop); }
2004 { yyval.opval = newANONSUB(yyvsp[-2].ival, yyvsp[-1].opval, yyvsp[0].opval); }
2008 { yyval.opval = yyvsp[0].opval; }
2012 { yyval.opval = newBINOP(OP_GELEM, 0, yyvsp[-4].opval, scalar(yyvsp[-2].opval)); }
2016 { yyval.opval = yyvsp[0].opval; }
2020 { yyval.opval = newBINOP(OP_AELEM, 0, oopsAV(yyvsp[-3].opval), scalar(yyvsp[-1].opval)); }
2024 { yyval.opval = newBINOP(OP_AELEM, 0,
2025 ref(newAVREF(yyvsp[-4].opval),OP_RV2AV),
2026 scalar(yyvsp[-1].opval));}
2030 { assertref(yyvsp[-3].opval); yyval.opval = newBINOP(OP_AELEM, 0,
2031 ref(newAVREF(yyvsp[-3].opval),OP_RV2AV),
2032 scalar(yyvsp[-1].opval));}
2036 { yyval.opval = yyvsp[0].opval; }
2040 { yyval.opval = yyvsp[0].opval; }
2044 { yyval.opval = newUNOP(OP_AV2ARYLEN, 0, ref(yyvsp[0].opval, OP_AV2ARYLEN));}
2048 { yyval.opval = newBINOP(OP_HELEM, 0, oopsHV(yyvsp[-4].opval), jmaybe(yyvsp[-2].opval));
2049 PL_expect = XOPERATOR; }
2053 { yyval.opval = newBINOP(OP_HELEM, 0,
2054 ref(newHVREF(yyvsp[-5].opval),OP_RV2HV),
2055 jmaybe(yyvsp[-2].opval));
2056 PL_expect = XOPERATOR; }
2060 { assertref(yyvsp[-4].opval); yyval.opval = newBINOP(OP_HELEM, 0,
2061 ref(newHVREF(yyvsp[-4].opval),OP_RV2HV),
2062 jmaybe(yyvsp[-2].opval));
2063 PL_expect = XOPERATOR; }
2067 { yyval.opval = newSLICEOP(0, yyvsp[-1].opval, yyvsp[-4].opval); }
2071 { yyval.opval = newSLICEOP(0, yyvsp[-1].opval, Nullop); }
2075 { yyval.opval = prepend_elem(OP_ASLICE,
2076 newOP(OP_PUSHMARK, 0),
2077 newLISTOP(OP_ASLICE, 0,
2078 list(yyvsp[-1].opval),
2079 ref(yyvsp[-3].opval, OP_ASLICE))); }
2083 { yyval.opval = prepend_elem(OP_HSLICE,
2084 newOP(OP_PUSHMARK, 0),
2085 newLISTOP(OP_HSLICE, 0,
2086 list(yyvsp[-2].opval),
2087 ref(oopsHV(yyvsp[-4].opval), OP_HSLICE)));
2088 PL_expect = XOPERATOR; }
2092 { yyval.opval = yyvsp[0].opval; }
2096 { yyval.opval = newUNOP(OP_ENTERSUB, 0, scalar(yyvsp[0].opval)); }
2100 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED, scalar(yyvsp[-2].opval)); }
2104 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2105 append_elem(OP_LIST, yyvsp[-1].opval, scalar(yyvsp[-3].opval))); }
2109 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2110 append_elem(OP_LIST, yyvsp[0].opval, scalar(yyvsp[-1].opval))); }
2114 { yyval.opval = dofile(yyvsp[0].opval); }
2118 { yyval.opval = newUNOP(OP_NULL, OPf_SPECIAL, scope(yyvsp[0].opval)); }
2122 { yyval.opval = newUNOP(OP_ENTERSUB,
2123 OPf_SPECIAL|OPf_STACKED,
2124 prepend_elem(OP_LIST,
2126 (OPpENTERSUB_AMPER<<8),
2127 scalar(yyvsp[-2].opval)
2128 )),Nullop)); dep();}
2132 { yyval.opval = newUNOP(OP_ENTERSUB,
2133 OPf_SPECIAL|OPf_STACKED,
2134 append_elem(OP_LIST,
2137 (OPpENTERSUB_AMPER<<8),
2138 scalar(yyvsp[-3].opval)
2143 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_SPECIAL|OPf_STACKED,
2144 prepend_elem(OP_LIST,
2145 scalar(newCVREF(0,scalar(yyvsp[-2].opval))), Nullop)); dep();}
2149 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_SPECIAL|OPf_STACKED,
2150 prepend_elem(OP_LIST,
2152 scalar(newCVREF(0,scalar(yyvsp[-3].opval))))); dep();}
2156 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2157 newCVREF(0, scalar(yyvsp[-3].opval))); }
2161 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2162 append_elem(OP_LIST, yyvsp[-1].opval,
2163 newCVREF(0, scalar(yyvsp[-4].opval)))); }
2167 { yyval.opval = newOP(yyvsp[0].ival, OPf_SPECIAL);
2168 PL_hints |= HINT_BLOCK_SCOPE; }
2172 { yyval.opval = newLOOPEX(yyvsp[-1].ival,yyvsp[0].opval); }
2176 { yyval.opval = newUNOP(OP_NOT, 0, scalar(yyvsp[0].opval)); }
2180 { yyval.opval = newOP(yyvsp[0].ival, 0); }
2184 { yyval.opval = newUNOP(yyvsp[-1].ival, 0, yyvsp[0].opval); }
2188 { yyval.opval = newUNOP(yyvsp[-1].ival, 0, yyvsp[0].opval); }
2192 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2193 append_elem(OP_LIST, yyvsp[0].opval, scalar(yyvsp[-1].opval))); }
2197 { yyval.opval = newOP(yyvsp[0].ival, 0); }
2201 { yyval.opval = newOP(yyvsp[-2].ival, 0); }
2205 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2206 scalar(yyvsp[0].opval)); }
2210 { yyval.opval = newOP(yyvsp[-2].ival, OPf_SPECIAL); }
2214 { yyval.opval = newUNOP(yyvsp[-3].ival, 0, yyvsp[-1].opval); }
2218 { yyval.opval = pmruntime(yyvsp[-3].opval, yyvsp[-1].opval, Nullop); }
2222 { yyval.opval = pmruntime(yyvsp[-5].opval, yyvsp[-3].opval, yyvsp[-1].opval); }
2226 { yyval.opval = Nullop; }
2230 { yyval.opval = yyvsp[0].opval; }
2234 { yyval.opval = Nullop; }
2238 { yyval.opval = yyvsp[0].opval; }
2242 { yyval.opval = yyvsp[-1].opval; }
2254 { PL_in_my = 0; yyval.opval = my(yyvsp[0].opval); }
2258 { yyval.opval = newCVREF(yyvsp[-1].ival,yyvsp[0].opval); }
2262 { yyval.opval = newSVREF(yyvsp[0].opval); }
2266 { yyval.opval = newAVREF(yyvsp[0].opval); }
2270 { yyval.opval = newHVREF(yyvsp[0].opval); }
2274 { yyval.opval = newAVREF(yyvsp[0].opval); }
2278 { yyval.opval = newGVREF(0,yyvsp[0].opval); }
2282 { yyval.opval = scalar(yyvsp[0].opval); }
2286 { yyval.opval = scalar(yyvsp[0].opval); }
2290 { yyval.opval = scope(yyvsp[0].opval); }
2294 { yyval.opval = yyvsp[0].opval; }
2296 #line 2270 "perly.c"
2302 if (yystate == 0 && yym == 0)
2306 PerlIO_printf(Perl_debug_log,
2307 "yydebug: after reduction, shifting from state 0 to state %d\n",
2315 if ((yychar = yylex()) < 0) yychar = 0;
2320 if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
2321 if (!yys) yys = "illegal-symbol";
2322 PerlIO_printf(Perl_debug_log, "yydebug: state %d, reading %d (%s)\n",
2323 YYFINAL, yychar, yys);
2327 if (yychar == 0) goto yyaccept;
2330 if ((yyn = yygindex[yym]) && (yyn += yystate) >= 0 &&
2331 yyn <= YYTABLESIZE && yycheck[yyn] == yystate)
2332 yystate = yytable[yyn];
2334 yystate = yydgoto[yym];
2337 PerlIO_printf(Perl_debug_log,
2338 "yydebug: after reduction, shifting from state %d to state %d\n",
2341 if (yyssp >= yyss + yystacksize - 1)
2344 ** reallocate and recover. Note that pointers
2345 ** have to be reset, or bad things will happen
2347 int yyps_index = (yyssp - yyss);
2348 int yypv_index = (yyvsp - yyvs);
2349 yystacksize += YYSTACKSIZE;
2350 ysave->yyvs = yyvs =
2351 (YYSTYPE*)PerlMem_realloc((char*)yyvs,yystacksize * sizeof(YYSTYPE));
2352 ysave->yyss = yyss =
2353 (short*)PerlMem_realloc((char*)yyss,yystacksize * sizeof(short));
2356 yyssp = yyss + yyps_index;
2357 yyvsp = yyvs + yypv_index;
2363 yyerror("Out of memory for yacc stack");