2 static char yysccsid[] = "@(#)yaccpar 1.8 (Berkeley) 01/20/91";
12 deprecate("\"do\" to call subroutines");
17 40, 0, 7, 5, 8, 9, 6, 10, 10, 10,
18 11, 11, 11, 11, 23, 23, 23, 23, 23, 23,
19 14, 14, 14, 13, 13, 13, 13, 37, 37, 12,
20 12, 12, 12, 12, 12, 12, 41, 42, 12, 12,
21 25, 25, 26, 26, 27, 28, 29, 30, 39, 39,
22 1, 1, 1, 1, 3, 3, 43, 43, 36, 36,
23 4, 44, 44, 45, 15, 15, 15, 24, 24, 24,
24 34, 34, 34, 34, 34, 34, 34, 34, 35, 35,
25 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
26 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
27 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
28 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
29 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
30 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
31 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
32 16, 16, 16, 16, 31, 31, 32, 32, 32, 2,
33 2, 38, 22, 17, 18, 19, 20, 21, 33, 33,
37 0, 2, 4, 0, 5, 0, 0, 0, 2, 2,
38 2, 1, 2, 3, 1, 1, 3, 3, 3, 3,
39 0, 2, 6, 7, 7, 4, 4, 0, 2, 8,
40 8, 5, 5, 10, 8, 8, 0, 0, 13, 3,
41 0, 1, 0, 1, 1, 1, 1, 1, 0, 1,
42 1, 1, 1, 1, 4, 3, 5, 5, 0, 1,
43 0, 3, 2, 6, 3, 3, 1, 2, 3, 1,
44 3, 5, 6, 3, 5, 2, 4, 4, 1, 1,
45 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
46 3, 3, 5, 3, 2, 2, 2, 2, 2, 2,
47 2, 2, 2, 2, 3, 2, 3, 2, 4, 3,
48 4, 1, 5, 1, 4, 5, 4, 1, 1, 1,
49 5, 6, 5, 6, 5, 4, 5, 1, 1, 3,
50 4, 3, 2, 2, 4, 5, 4, 5, 1, 2,
51 2, 1, 2, 2, 2, 1, 3, 1, 3, 4,
52 4, 6, 1, 1, 0, 1, 0, 1, 2, 1,
53 1, 1, 2, 2, 2, 2, 2, 2, 1, 1,
56 short yydefred[] = { 1,
57 0, 8, 0, 50, 61, 61, 0, 61, 9, 51,
58 10, 12, 0, 52, 53, 54, 0, 0, 0, 63,
59 0, 15, 4, 153, 0, 0, 128, 0, 148, 0,
60 61, 61, 0, 0, 0, 0, 0, 0, 0, 0,
61 0, 0, 0, 0, 0, 160, 161, 0, 0, 0,
62 0, 0, 0, 0, 0, 0, 0, 13, 0, 0,
63 0, 0, 0, 0, 0, 0, 0, 11, 0, 0,
64 0, 0, 118, 120, 0, 0, 0, 0, 154, 0,
65 56, 0, 62, 0, 8, 169, 172, 171, 170, 0,
66 0, 0, 0, 0, 0, 4, 0, 4, 0, 4,
67 0, 4, 0, 4, 4, 0, 0, 0, 0, 0,
68 167, 0, 134, 0, 0, 0, 0, 0, 163, 0,
69 0, 0, 0, 76, 0, 143, 0, 0, 0, 0,
70 0, 0, 0, 0, 0, 0, 108, 0, 164, 165,
71 166, 168, 0, 0, 40, 0, 0, 0, 0, 0,
72 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
73 0, 0, 0, 0, 0, 0, 100, 101, 0, 0,
74 0, 0, 0, 0, 0, 0, 14, 0, 55, 60,
75 0, 0, 0, 74, 0, 0, 0, 0, 0, 0,
76 0, 0, 0, 0, 0, 0, 0, 0, 0, 147,
77 149, 0, 0, 0, 0, 0, 0, 110, 0, 132,
78 0, 0, 0, 107, 29, 0, 0, 20, 0, 0,
79 0, 65, 0, 0, 0, 0, 0, 0, 0, 0,
80 0, 0, 0, 0, 0, 0, 0, 0, 79, 0,
81 80, 0, 0, 0, 0, 0, 0, 0, 130, 0,
82 0, 58, 57, 0, 3, 0, 151, 0, 78, 111,
83 0, 47, 0, 32, 48, 0, 33, 0, 0, 0,
84 0, 26, 0, 27, 162, 0, 0, 42, 0, 0,
85 150, 159, 77, 0, 135, 0, 137, 0, 109, 0,
86 0, 0, 0, 0, 0, 0, 117, 0, 115, 0,
87 126, 0, 131, 64, 75, 0, 0, 0, 0, 6,
88 22, 0, 0, 0, 0, 37, 0, 72, 136, 138,
89 125, 0, 123, 0, 0, 116, 0, 121, 127, 113,
90 152, 0, 0, 0, 7, 0, 0, 0, 0, 0,
91 0, 124, 122, 73, 30, 31, 24, 8, 0, 25,
92 0, 36, 0, 35, 0, 0, 0, 38, 5, 23,
95 short yydgoto[] = { 1,
96 9, 66, 10, 17, 85, 348, 88, 311, 335, 3,
97 11, 12, 68, 272, 203, 70, 71, 72, 73, 74,
98 75, 76, 278, 78, 279, 262, 265, 269, 263, 266,
99 124, 204, 90, 79, 242, 181, 145, 276, 13, 2,
100 340, 362, 14, 15, 16,
102 short yysindex[] = { 0,
103 0, 0, 408, 0, 0, 0, -36, 0, 0, 0,
104 0, 0, 618, 0, 0, 0, -116, -216, -12, 0,
105 -203, 0, 0, 0, 68, 68, 0, 16, 0, 1972,
106 0, 0, -6, 5, 6, 21, -34, 1972, 22, 26,
107 31, 68, 950, 1006, -176, 0, 0, 68, 1972, -21,
108 1070, 1972, 1972, 1972, 1972, 1972, 1346, 0, 1972, 1972,
109 1402, 68, 68, 68, 68, 1972, -202, 0, 287, 3838,
110 -59, -56, 0, 0, -35, 57, 41, 63, 0, -9,
111 0, -150, 0, -145, 0, 0, 0, 0, 0, 1972,
112 87, 1972, 3838, -9, -150, 0, -9, 0, -9, 0,
113 -9, 0, -9, 0, 0, 90, 3838, 91, 1461, -21,
114 0, 103, 0, 267, -7, 23, -50, 1972, 0, 63,
115 0, -59, 63, 0, 1972, 0, 267, 611, 611, 611,
116 -86, -86, 62, -38, 611, 611, 0, -83, 0, 0,
117 0, 0, 267, -9, 0, 1972, 1972, 1972, 1972, 1972,
118 1972, 1972, 1972, 1972, 1972, 1972, 1972, 1972, 1972, 1972,
119 1972, 1972, 1972, 1972, 1972, 1972, 0, 0, -28, 1972,
120 1972, 1972, 1972, 1972, 1972, 1521, 0, 1972, 0, 0,
121 -33, 1972, 225, 0, 1972, 2008, 1972, -9, 1972, -202,
122 1972, -202, 1972, -208, 1972, -208, 95, 1797, 1972, 0,
123 0, -30, 7, 114, 1972, 1853, 1909, 0, 25, 0,
124 63, 1972, 73, 0, 0, -173, -173, 0, -173, -173,
125 -140, 0, -46, 3340, 267, 2662, 374, 1221, 3838, 3801,
126 3898, 1616, 3272, 320, 383, 611, 611, 1972, 0, 1972,
127 0, 127, -79, -41, -73, 40, -43, 59, 0, -16,
128 3838, 0, 0, 111, 0, 130, 0, 1972, 0, 0,
129 -173, 0, 136, 0, 0, 138, 0, -173, 142, 58,
130 144, 0, 146, 0, 0, 149, 369, 0, 131, -14,
131 0, 0, 0, -11, 0, -3, 0, -1, 0, 113,
132 1972, 70, 1972, 66, 140, 1972, 0, 71, 0, 72,
133 0, 79, 0, 0, 0, 1675, 58, 58, 58, 0,
134 0, 1972, 58, 1972, 58, 0, -9, 0, 0, 0,
135 0, 182, 0, 3868, 84, 0, 170, 0, 0, 0,
136 0, -202, -202, -208, 0, 173, -208, 1, -202, 1972,
137 -202, 0, 0, 0, 0, 0, 0, 0, 58, 0,
138 58, 0, 156, 0, 343, -208, -202, 0, 0, 0,
141 short yyrindex[] = { 0,
142 0, 0, 165, 0, 0, 0, 0, 0, 0, 0,
143 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
144 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
145 0, 0, 0, 0, 0, 0, 0, 2164, 426, 0,
146 0, 0, 0, 0, 0, 0, 0, 0, 0, 2786,
147 2862, 0, 0, 0, 0, 0, 0, 0, 0, 0,
148 0, 0, 0, 0, 0, 0, 49, 0, 18, 293,
149 2907, 2987, 0, 0, 2209, 2062, 0, 373, 0, 0,
150 0, -20, 0, 0, 0, 0, 0, 0, 0, 2260,
151 0, 0, 1179, 0, 96, 0, 0, 0, 0, 0,
152 0, 0, 0, 0, 0, 0, 1299, 0, 0, 179,
153 0, 2121, 0, 3614, 2907, 0, 0, 2260, 0, 2319,
154 493, 559, 2461, 0, 0, 0, 3653, 3142, 3183, 3222,
155 3049, 3097, 2523, 0, 3268, 3316, 0, 0, 0, 0,
156 0, 0, 3727, 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, 0, 0, 0, 0,
159 0, 0, 0, 0, 0, 0, 0, 2582, 0, 0,
160 0, 167, 894, 0, 179, 0, 2260, 0, 190, 49,
161 0, 49, 0, 109, 0, 109, 0, 188, 0, 0,
162 0, 0, 210, 0, 0, 0, 0, 0, 0, 0,
163 2627, 0, 2724, 0, 0, 24, 39, 0, 52, 60,
164 1307, 0, 0, 1046, 1187, 1243, 1131, 3503, 1575, 0,
165 3770, 1639, 1583, 2399, 3551, 3418, 3457, 0, 0, 0,
166 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
167 1729, 0, 0, 0, 0, 0, 0, 0, 0, 0,
168 65, 0, 0, 0, 0, 0, 0, 226, 0, 0,
169 0, 0, 0, 0, 0, 0, 215, 0, 0, 0,
170 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
171 0, 0, 0, 0, 0, 179, 0, 0, 0, 0,
172 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
173 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
174 0, 0, 0, 845, 0, 0, 0, 0, 0, 0,
175 0, 49, 49, 109, 0, 0, 109, 0, 49, 227,
176 49, 0, 0, 0, 0, 0, 0, 0, 0, 0,
177 0, 0, 0, 0, 894, 109, 49, 0, 0, 0,
180 short yygindex[] = { 0,
181 0, 0, 0, 47, 416, 0, 447, 194, 0, -84,
182 0, 0, 0, -168, -13, 3819, 917, 0, 0, 0,
183 0, 0, 291, 901, -62, -29, 197, 14, 0, 150,
184 -61, -181, 10, 0, 0, 253, 637, 0, 0, 0,
187 #define YYTABLESIZE 4212
188 short yytable[] = { 69,
189 183, 62, 213, 256, 170, 105, 23, 62, 209, 214,
190 281, 52, 292, 297, 62, 64, 48, 298, 57, 299,
191 65, 60, 20, 59, 303, 252, 317, 274, 184, 318,
192 117, 172, 207, 96, 174, 91, 152, 319, 59, 320,
193 82, 351, 63, 134, 98, 100, 83, 138, 28, 301,
194 282, 111, 18, 84, 21, 92, 210, 119, 16, 125,
195 102, 108, 240, 171, 19, 109, 173, 270, 271, 61,
196 110, 139, 140, 141, 142, 144, 16, 94, 95, 45,
197 118, 28, 19, 172, 28, 28, 28, 175, 28, 23,
198 28, 28, 17, 28, 238, 202, 176, 45, 300, 177,
199 18, 23, 59, 62, 53, 44, 178, 28, 21, 180,
200 17, 182, 28, 23, 327, 171, 23, 302, 18, 205,
201 254, 150, 151, 44, 325, 259, 185, 23, 23, 199,
202 62, 200, 216, 217, 219, 220, 221, 222, 223, 28,
203 80, 21, 206, 23, 21, 21, 21, 208, 21, 289,
204 21, 21, 212, 21, 283, 151, 243, 244, 245, 246,
205 247, 248, 250, 291, 2, 347, 296, 21, 350, 304,
206 305, 28, 21, 28, 28, 261, 307, 217, 308, 268,
207 310, 217, 309, 312, 277, 280, 313, 360, 314, 316,
208 23, 284, 286, 288, 323, 328, 329, 49, 290, 21,
209 49, 49, 49, 330, 49, 321, 49, 49, 343, 49,
210 344, 150, 151, 349, 358, 150, 151, 364, 59, 157,
211 19, 150, 151, 49, 294, 155, 295, 169, 49, 239,
212 43, 21, 326, 21, 21, 121, 25, 26, 27, 28,
213 87, 29, 30, 31, 150, 151, 41, 32, 150, 151,
214 158, 150, 151, 150, 151, 49, 150, 151, 38, 104,
215 39, 40, 41, 355, 150, 151, 46, 42, 43, 44,
216 45, 46, 47, 16, 342, 49, 50, 322, 150, 151,
217 150, 151, 51, 150, 151, 43, 54, 49, 55, 56,
218 49, 150, 151, 150, 151, 150, 151, 41, 268, 363,
219 338, 150, 151, 77, 28, 28, 28, 28, 28, 28,
220 353, 28, 28, 28, 28, 28, 28, 28, 28, 28,
221 28, 28, 28, 28, 86, 336, 261, 28, 28, 87,
222 28, 28, 28, 70, 150, 151, 70, 28, 28, 28,
223 28, 28, 28, 218, 273, 28, 28, 188, 69, 255,
224 70, 70, 28, 150, 151, 0, 28, 170, 28, 28,
225 150, 151, 0, 0, 21, 21, 21, 21, 21, 21,
226 0, 21, 21, 21, 21, 21, 21, 21, 21, 21,
227 21, 21, 21, 21, 0, 70, 0, 21, 21, 152,
228 21, 21, 21, 0, 0, 0, 0, 21, 21, 21,
229 21, 21, 21, 0, 0, 21, 21, 150, 151, 315,
230 170, 0, 21, 67, 0, 0, 21, 0, 21, 21,
231 49, 49, 49, 49, 49, 49, 0, 49, 49, 49,
232 0, 67, 0, 49, 150, 151, 49, 49, 49, 49,
233 0, 0, 152, 49, 49, 0, 49, 49, 49, 0,
234 0, 0, 0, 49, 49, 49, 49, 49, 49, 67,
235 0, 49, 49, 81, 170, 67, 146, 359, 49, 146,
236 0, 0, 49, 170, 49, 49, 150, 151, 0, 97,
237 99, 101, 103, 146, 146, 0, 0, 0, 146, 113,
238 4, 5, 6, 0, 7, 8, 152, 126, 0, 0,
239 332, 333, 334, 0, 0, 152, 337, 0, 339, 0,
240 0, 189, 0, 191, 0, 193, 146, 195, 146, 197,
241 198, 0, 0, 0, 0, 169, 179, 0, 169, 169,
242 169, 0, 169, 153, 169, 169, 153, 169, 0, 0,
243 187, 0, 356, 190, 357, 192, 0, 194, 146, 196,
244 153, 153, 0, 156, 157, 153, 169, 365, 146, 147,
245 148, 149, 0, 0, 70, 70, 70, 70, 0, 0,
246 0, 164, 165, 0, 0, 166, 0, 0, 167, 168,
247 169, 150, 151, 153, 0, 153, 0, 70, 70, 0,
248 215, 170, 0, 0, 170, 170, 170, 0, 170, 112,
249 170, 170, 112, 170, 154, 155, 156, 157, 4, 5,
250 6, 0, 7, 8, 0, 153, 112, 112, 169, 0,
251 0, 112, 170, 0, 164, 165, 0, 253, 166, 0,
252 0, 167, 168, 169, 260, 0, 0, 0, 0, 0,
253 146, 147, 148, 149, 67, 67, 67, 67, 0, 0,
254 52, 112, 0, 62, 64, 48, 0, 57, 0, 65,
255 60, 0, 59, 150, 151, 0, 0, 67, 67, 156,
256 157, 0, 0, 4, 5, 6, 58, 7, 8, 165,
257 0, 63, 166, 0, 170, 167, 168, 169, 165, 0,
258 0, 166, 0, 0, 167, 168, 169, 146, 146, 146,
259 146, 170, 0, 0, 0, 0, 146, 0, 61, 0,
260 146, 146, 146, 146, 0, 0, 0, 0, 0, 0,
261 146, 146, 0, 0, 146, 146, 146, 146, 146, 0,
262 146, 146, 0, 152, 146, 0, 0, 146, 146, 146,
263 23, 0, 0, 53, 0, 0, 0, 0, 0, 169,
264 169, 169, 169, 169, 0, 169, 169, 169, 0, 0,
265 0, 169, 0, 341, 153, 153, 153, 153, 0, 0,
266 0, 0, 169, 153, 169, 169, 169, 153, 153, 153,
267 153, 169, 169, 169, 169, 169, 169, 153, 153, 169,
268 169, 153, 153, 153, 153, 153, 169, 153, 153, 0,
269 169, 153, 169, 169, 153, 153, 153, 0, 0, 0,
270 0, 0, 0, 0, 0, 170, 170, 170, 170, 170,
271 0, 170, 170, 170, 0, 0, 264, 170, 267, 0,
272 112, 112, 112, 112, 0, 0, 0, 0, 170, 112,
273 170, 170, 170, 112, 112, 112, 112, 170, 170, 170,
274 170, 170, 170, 112, 112, 170, 170, 112, 112, 112,
275 112, 112, 170, 112, 112, 0, 170, 112, 170, 170,
276 112, 112, 112, 22, 24, 25, 26, 27, 28, 0,
277 29, 30, 31, 0, 0, 93, 32, 0, 93, 33,
278 34, 35, 36, 0, 0, 0, 37, 38, 0, 39,
279 40, 41, 93, 93, 0, 0, 42, 43, 44, 45,
280 46, 47, 0, 0, 49, 50, 0, 0, 0, 166,
281 0, 51, 167, 168, 169, 54, 49, 55, 56, 49,
282 49, 49, 0, 49, 0, 49, 49, 93, 49, 0,
283 0, 89, 89, 0, 0, 0, 0, 0, 0, 120,
284 123, 0, 49, 106, 0, 0, 0, 49, 89, 115,
285 0, 0, 0, 0, 89, 0, 122, 0, 345, 346,
286 0, 0, 0, 0, 0, 352, 0, 354, 89, 89,
287 89, 89, 52, 0, 49, 62, 64, 48, 0, 57,
288 123, 65, 60, 361, 59, 0, 0, 0, 0, 0,
289 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
290 0, 0, 0, 63, 0, 0, 49, 0, 123, 49,
291 0, 0, 0, 0, 0, 211, 122, 0, 0, 0,
292 0, 0, 0, 0, 0, 0, 0, 0, 52, 0,
293 61, 62, 64, 48, 0, 57, 0, 65, 60, 0,
294 59, 0, 0, 0, 0, 0, 0, 0, 0, 0,
295 0, 0, 0, 0, 116, 0, 0, 0, 0, 63,
296 0, 0, 23, 0, 0, 53, 0, 0, 0, 0,
297 0, 0, 123, 0, 0, 241, 90, 123, 0, 90,
298 0, 0, 0, 0, 0, 0, 61, 0, 0, 0,
299 0, 0, 52, 90, 90, 62, 64, 48, 90, 57,
300 0, 65, 60, 275, 59, 0, 93, 93, 93, 93,
301 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
302 0, 53, 0, 63, 0, 0, 0, 0, 90, 93,
303 93, 0, 0, 93, 0, 0, 0, 0, 0, 49,
304 49, 49, 49, 49, 49, 0, 49, 49, 49, 0,
305 61, 0, 49, 0, 0, 49, 49, 49, 49, 0,
306 0, 83, 49, 49, 83, 49, 49, 49, 0, 0,
307 0, 0, 49, 49, 49, 49, 49, 49, 83, 83,
308 49, 49, 23, 83, 0, 53, 0, 49, 0, 0,
309 0, 49, 0, 49, 49, 0, 112, 25, 26, 27,
310 28, 0, 29, 30, 31, 0, 0, 0, 32, 145,
311 0, 0, 145, 83, 0, 0, 0, 86, 0, 38,
312 86, 39, 40, 41, 0, 0, 145, 145, 42, 43,
313 44, 45, 46, 47, 86, 86, 49, 50, 0, 86,
314 0, 0, 0, 51, 0, 0, 0, 54, 0, 55,
315 56, 0, 24, 25, 26, 27, 28, 0, 29, 30,
316 31, 145, 0, 0, 32, 0, 0, 0, 0, 86,
317 0, 0, 0, 87, 0, 38, 87, 39, 40, 41,
318 0, 0, 0, 0, 42, 43, 44, 45, 46, 47,
319 87, 87, 49, 50, 0, 87, 0, 0, 0, 51,
320 0, 170, 0, 54, 0, 55, 56, 90, 90, 90,
321 90, 0, 0, 0, 0, 0, 24, 25, 26, 27,
322 28, 0, 29, 30, 31, 87, 0, 0, 32, 140,
323 90, 90, 140, 152, 90, 0, 0, 66, 0, 38,
324 66, 39, 40, 41, 0, 0, 140, 140, 42, 43,
325 44, 45, 46, 47, 0, 66, 49, 50, 0, 0,
326 0, 0, 0, 51, 0, 0, 0, 54, 52, 55,
327 56, 62, 64, 48, 0, 57, 133, 65, 60, 0,
328 59, 140, 0, 0, 0, 0, 0, 0, 0, 66,
329 0, 0, 83, 83, 83, 83, 0, 0, 0, 63,
330 0, 83, 0, 0, 0, 83, 83, 83, 83, 0,
331 0, 0, 0, 0, 0, 83, 83, 0, 0, 83,
332 83, 83, 83, 83, 52, 83, 61, 62, 64, 48,
333 0, 57, 0, 65, 60, 0, 59, 0, 0, 0,
334 145, 145, 145, 145, 0, 0, 0, 0, 86, 86,
335 86, 86, 0, 0, 0, 63, 0, 86, 0, 0,
336 0, 53, 86, 145, 145, 0, 0, 0, 0, 0,
337 0, 86, 86, 0, 0, 86, 86, 86, 86, 86,
338 0, 0, 61, 52, 137, 0, 62, 64, 48, 0,
339 57, 201, 65, 60, 0, 59, 0, 156, 0, 0,
340 0, 0, 0, 0, 87, 87, 87, 87, 0, 0,
341 0, 0, 0, 87, 63, 0, 165, 53, 0, 166,
342 0, 0, 167, 168, 169, 0, 0, 87, 87, 0,
343 0, 87, 87, 87, 87, 87, 0, 0, 0, 0,
344 0, 61, 0, 52, 0, 0, 62, 64, 48, 0,
345 57, 249, 65, 60, 0, 59, 0, 0, 0, 0,
346 140, 140, 140, 140, 0, 0, 0, 0, 66, 66,
347 66, 66, 0, 0, 63, 0, 53, 0, 0, 0,
348 0, 0, 0, 140, 140, 0, 0, 0, 0, 0,
349 0, 66, 24, 25, 26, 27, 28, 0, 29, 30,
350 31, 61, 0, 0, 32, 81, 0, 0, 81, 0,
351 0, 0, 0, 89, 0, 38, 89, 39, 40, 41,
352 0, 0, 81, 81, 42, 43, 44, 45, 46, 47,
353 89, 89, 49, 50, 0, 89, 53, 0, 0, 51,
354 0, 0, 0, 54, 0, 55, 56, 0, 24, 25,
355 26, 27, 28, 0, 29, 30, 31, 81, 0, 0,
356 32, 0, 0, 0, 0, 89, 0, 0, 0, 91,
357 0, 38, 91, 39, 40, 41, 0, 0, 0, 0,
358 42, 43, 44, 45, 46, 47, 91, 91, 49, 50,
359 0, 91, 0, 0, 0, 51, 170, 0, 0, 54,
360 0, 55, 56, 0, 0, 331, 0, 24, 25, 26,
361 27, 28, 0, 29, 30, 31, 0, 0, 0, 32,
362 0, 91, 0, 0, 0, 0, 0, 159, 152, 0,
363 38, 0, 39, 40, 41, 0, 0, 0, 0, 42,
364 43, 44, 45, 46, 47, 0, 0, 49, 50, 0,
365 0, 0, 0, 0, 51, 170, 0, 0, 54, 69,
366 55, 56, 69, 0, 0, 0, 0, 24, 25, 26,
367 27, 28, 0, 29, 30, 31, 69, 69, 0, 32,
368 0, 0, 0, 0, 0, 0, 0, 152, 0, 0,
369 38, 0, 39, 40, 41, 0, 0, 0, 0, 42,
370 43, 44, 45, 46, 47, 0, 0, 49, 50, 0,
371 0, 69, 0, 0, 51, 0, 0, 0, 54, 52,
372 55, 56, 62, 64, 48, 0, 57, 0, 65, 60,
373 0, 59, 0, 0, 0, 0, 81, 81, 81, 81,
374 0, 0, 0, 0, 89, 89, 89, 89, 0, 0,
375 63, 0, 0, 89, 0, 0, 0, 0, 0, 81,
376 81, 0, 0, 0, 0, 0, 0, 89, 89, 0,
377 0, 89, 89, 89, 89, 52, 0, 61, 62, 64,
378 48, 0, 57, 285, 65, 60, 0, 59, 0, 0,
379 154, 155, 156, 157, 0, 0, 0, 0, 0, 0,
380 91, 91, 91, 91, 0, 0, 63, 162, 163, 91,
381 164, 165, 53, 0, 166, 0, 0, 167, 168, 169,
382 0, 0, 0, 91, 91, 0, 0, 91, 91, 91,
383 0, 52, 0, 61, 62, 64, 48, 0, 57, 287,
384 65, 60, 0, 59, 0, 153, 0, 0, 0, 154,
385 155, 156, 157, 0, 0, 0, 0, 0, 0, 0,
386 0, 0, 63, 158, 160, 161, 162, 163, 53, 164,
387 165, 0, 0, 166, 0, 0, 167, 168, 169, 0,
388 0, 0, 0, 0, 0, 0, 0, 0, 0, 61,
389 69, 69, 69, 69, 52, 0, 0, 62, 64, 48,
390 0, 57, 0, 65, 60, 0, 59, 0, 0, 0,
391 0, 0, 0, 69, 69, 0, 0, 0, 0, 0,
392 0, 0, 0, 0, 53, 63, 0, 0, 0, 0,
393 0, 0, 0, 0, 0, 0, 0, 0, 257, 0,
394 0, 258, 22, 24, 25, 26, 27, 28, 0, 29,
395 30, 31, 61, 0, 0, 32, 0, 0, 0, 0,
396 159, 0, 0, 0, 0, 0, 38, 0, 39, 40,
397 41, 0, 0, 0, 0, 42, 43, 44, 45, 46,
398 47, 0, 0, 49, 50, 0, 0, 53, 170, 0,
399 51, 0, 129, 0, 54, 129, 55, 56, 0, 24,
400 25, 26, 27, 28, 0, 29, 30, 31, 0, 129,
401 129, 32, 0, 0, 129, 0, 0, 0, 0, 0,
402 152, 0, 38, 0, 39, 40, 41, 0, 0, 0,
403 0, 42, 43, 44, 45, 46, 47, 0, 0, 49,
404 50, 0, 129, 0, 129, 0, 51, 0, 0, 0,
405 54, 153, 55, 56, 153, 24, 25, 26, 27, 28,
406 0, 29, 30, 31, 0, 0, 0, 32, 153, 153,
407 0, 0, 0, 153, 129, 0, 0, 0, 38, 0,
408 39, 40, 41, 0, 0, 0, 0, 42, 43, 44,
409 45, 46, 47, 0, 139, 49, 50, 139, 0, 0,
410 0, 153, 51, 153, 0, 0, 54, 0, 55, 56,
411 0, 139, 139, 0, 0, 0, 139, 0, 24, 25,
412 26, 27, 28, 0, 29, 30, 31, 0, 0, 0,
413 32, 0, 0, 153, 0, 0, 0, 0, 0, 114,
414 0, 38, 114, 39, 40, 41, 139, 0, 0, 0,
415 42, 43, 44, 45, 46, 47, 114, 114, 49, 50,
416 0, 114, 0, 0, 0, 51, 0, 0, 0, 54,
417 0, 55, 56, 0, 0, 0, 139, 0, 153, 0,
418 0, 0, 154, 155, 156, 157, 0, 0, 0, 114,
419 155, 114, 0, 155, 0, 0, 158, 160, 161, 162,
420 163, 0, 164, 165, 0, 0, 166, 155, 155, 167,
421 168, 169, 155, 0, 0, 0, 0, 0, 0, 0,
422 0, 0, 0, 129, 129, 129, 129, 0, 0, 0,
423 0, 0, 129, 0, 0, 0, 129, 129, 129, 129,
424 0, 0, 155, 0, 0, 0, 129, 129, 0, 141,
425 129, 129, 129, 129, 129, 0, 129, 129, 0, 0,
426 129, 0, 0, 129, 129, 129, 141, 141, 0, 0,
427 0, 141, 155, 0, 0, 0, 0, 0, 0, 0,
428 0, 0, 153, 153, 153, 153, 0, 0, 0, 0,
429 0, 153, 0, 0, 0, 153, 153, 153, 153, 141,
430 0, 141, 0, 0, 0, 153, 153, 0, 0, 153,
431 153, 153, 153, 153, 0, 153, 153, 0, 0, 153,
432 0, 0, 153, 153, 153, 139, 139, 139, 139, 88,
433 0, 141, 88, 0, 139, 0, 0, 0, 139, 139,
434 139, 139, 0, 0, 0, 0, 88, 88, 139, 139,
435 0, 88, 139, 139, 139, 139, 139, 0, 139, 139,
436 0, 0, 139, 0, 0, 139, 139, 139, 0, 0,
437 114, 114, 114, 114, 0, 0, 0, 0, 0, 114,
438 0, 88, 0, 114, 114, 114, 114, 0, 0, 0,
439 0, 156, 0, 114, 114, 0, 0, 114, 114, 114,
440 114, 114, 0, 114, 114, 0, 0, 114, 156, 156,
441 114, 114, 114, 156, 0, 0, 0, 0, 0, 0,
442 0, 155, 155, 155, 155, 0, 0, 0, 0, 0,
443 155, 0, 0, 0, 155, 155, 155, 155, 0, 0,
444 0, 156, 0, 156, 155, 155, 0, 0, 155, 155,
445 155, 155, 155, 106, 155, 155, 106, 0, 155, 0,
446 0, 155, 155, 155, 0, 0, 0, 0, 0, 0,
447 106, 106, 0, 156, 0, 106, 0, 0, 0, 0,
448 141, 141, 141, 141, 0, 0, 0, 0, 0, 141,
449 0, 0, 0, 141, 141, 141, 141, 0, 0, 0,
450 0, 0, 0, 141, 141, 106, 0, 141, 141, 141,
451 141, 141, 68, 141, 141, 68, 0, 141, 0, 0,
452 141, 141, 141, 0, 0, 0, 0, 0, 0, 68,
453 68, 0, 0, 0, 68, 106, 0, 0, 0, 0,
454 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
455 0, 0, 0, 0, 0, 0, 0, 71, 0, 0,
456 88, 88, 88, 88, 68, 0, 0, 0, 0, 88,
457 0, 0, 0, 0, 71, 71, 0, 0, 0, 71,
458 0, 0, 0, 88, 88, 0, 0, 88, 88, 88,
459 88, 88, 0, 0, 68, 0, 0, 0, 0, 0,
460 0, 0, 0, 0, 0, 0, 0, 71, 0, 71,
461 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
462 0, 0, 156, 156, 156, 156, 0, 0, 0, 0,
463 0, 156, 0, 0, 0, 156, 156, 156, 156, 71,
464 0, 0, 170, 0, 0, 156, 156, 0, 0, 156,
465 156, 156, 156, 156, 105, 156, 156, 105, 0, 156,
466 0, 0, 156, 156, 156, 0, 0, 0, 0, 0,
467 0, 105, 105, 0, 152, 0, 105, 0, 0, 0,
468 0, 0, 0, 0, 106, 106, 106, 106, 0, 0,
469 0, 0, 0, 106, 0, 0, 0, 106, 106, 106,
470 106, 0, 0, 0, 0, 0, 105, 106, 106, 0,
471 0, 106, 106, 106, 106, 106, 155, 106, 106, 155,
472 0, 106, 0, 0, 106, 106, 106, 0, 0, 0,
473 0, 0, 0, 155, 155, 0, 105, 0, 155, 0,
474 0, 0, 0, 68, 68, 68, 68, 0, 0, 0,
475 0, 0, 68, 0, 0, 0, 68, 68, 68, 68,
476 0, 0, 0, 0, 0, 0, 68, 68, 155, 0,
477 68, 68, 68, 68, 68, 0, 68, 68, 0, 0,
478 68, 0, 0, 68, 68, 68, 0, 0, 71, 71,
479 71, 71, 142, 0, 0, 142, 0, 71, 0, 0,
480 0, 71, 71, 71, 71, 0, 0, 0, 0, 142,
481 142, 71, 71, 0, 142, 71, 71, 71, 71, 71,
482 0, 71, 71, 0, 0, 71, 0, 0, 71, 71,
483 71, 0, 0, 0, 0, 0, 154, 112, 156, 157,
484 112, 0, 0, 0, 142, 0, 0, 0, 0, 0,
485 0, 0, 0, 0, 112, 112, 164, 165, 0, 112,
486 166, 0, 0, 167, 168, 169, 0, 0, 0, 0,
487 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
488 0, 0, 0, 0, 0, 105, 105, 105, 105, 112,
489 0, 0, 0, 0, 105, 0, 0, 0, 105, 105,
490 105, 105, 0, 0, 0, 0, 0, 0, 105, 105,
491 0, 0, 105, 105, 105, 105, 105, 119, 105, 105,
492 119, 0, 105, 0, 0, 105, 105, 105, 0, 0,
493 0, 0, 0, 0, 119, 119, 0, 0, 0, 119,
494 0, 0, 0, 0, 0, 0, 0, 155, 155, 155,
495 155, 0, 0, 0, 0, 0, 155, 0, 0, 0,
496 155, 155, 155, 155, 0, 0, 0, 0, 0, 119,
497 155, 155, 0, 0, 155, 155, 155, 155, 155, 102,
498 155, 155, 102, 0, 155, 0, 0, 155, 155, 155,
499 0, 0, 0, 0, 0, 0, 102, 102, 0, 0,
500 0, 102, 0, 0, 0, 0, 0, 0, 0, 0,
501 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
502 0, 0, 0, 142, 142, 142, 142, 103, 0, 0,
503 103, 102, 142, 0, 0, 0, 142, 142, 142, 142,
504 0, 0, 0, 0, 103, 103, 142, 142, 0, 103,
505 142, 142, 142, 142, 142, 0, 142, 142, 0, 0,
506 142, 0, 0, 142, 142, 142, 0, 0, 112, 112,
507 112, 112, 97, 0, 0, 97, 0, 112, 0, 103,
508 0, 112, 112, 112, 112, 0, 0, 0, 0, 97,
509 97, 112, 112, 0, 97, 112, 112, 112, 112, 112,
510 0, 112, 112, 0, 0, 112, 0, 0, 112, 112,
511 112, 0, 0, 98, 0, 0, 98, 0, 0, 0,
512 0, 0, 0, 0, 97, 0, 0, 0, 0, 0,
513 98, 98, 0, 0, 0, 98, 0, 0, 0, 0,
514 0, 0, 0, 0, 0, 0, 0, 0, 119, 119,
515 119, 119, 99, 0, 0, 99, 0, 119, 0, 0,
516 0, 119, 119, 119, 119, 98, 0, 0, 0, 99,
517 99, 119, 119, 0, 99, 119, 119, 119, 119, 119,
518 0, 119, 119, 0, 0, 119, 0, 0, 119, 119,
519 119, 0, 0, 0, 0, 0, 0, 0, 95, 0,
520 0, 95, 0, 0, 99, 0, 0, 0, 0, 0,
521 102, 102, 102, 102, 0, 95, 95, 0, 0, 102,
522 95, 0, 0, 102, 102, 102, 102, 0, 0, 0,
523 0, 0, 0, 102, 102, 0, 0, 102, 102, 102,
524 102, 102, 0, 102, 102, 0, 96, 102, 0, 96,
525 95, 0, 170, 0, 0, 0, 0, 0, 103, 103,
526 103, 103, 0, 96, 96, 0, 0, 103, 96, 0,
527 0, 103, 103, 103, 103, 0, 0, 0, 0, 0,
528 0, 103, 103, 0, 152, 103, 103, 103, 103, 103,
529 0, 103, 103, 0, 0, 103, 0, 0, 96, 0,
530 0, 0, 0, 97, 97, 97, 97, 0, 0, 0,
531 0, 0, 97, 0, 0, 0, 97, 97, 97, 97,
532 170, 0, 0, 0, 0, 0, 97, 97, 0, 0,
533 97, 97, 97, 97, 97, 0, 97, 97, 0, 0,
534 0, 0, 0, 0, 98, 98, 98, 98, 94, 0,
535 0, 94, 152, 98, 0, 0, 0, 98, 98, 98,
536 98, 0, 0, 0, 0, 94, 94, 98, 98, 0,
537 94, 98, 98, 98, 98, 98, 0, 98, 98, 0,
538 0, 0, 0, 99, 99, 99, 99, 82, 0, 0,
539 82, 0, 99, 0, 0, 0, 99, 99, 99, 99,
540 94, 0, 0, 0, 82, 82, 99, 99, 0, 82,
541 99, 99, 99, 99, 99, 0, 99, 99, 0, 0,
542 0, 0, 0, 0, 0, 0, 0, 0, 0, 95,
543 95, 95, 95, 84, 0, 0, 84, 0, 95, 82,
544 0, 0, 95, 95, 95, 95, 154, 155, 156, 157,
545 84, 84, 95, 95, 0, 84, 95, 95, 95, 95,
546 95, 0, 95, 95, 163, 0, 164, 165, 0, 0,
547 166, 0, 0, 167, 168, 169, 0, 96, 96, 96,
548 96, 85, 0, 0, 85, 84, 96, 0, 0, 0,
549 96, 96, 96, 96, 0, 0, 0, 0, 85, 85,
550 96, 96, 0, 85, 96, 96, 96, 96, 96, 0,
551 96, 96, 0, 0, 154, 155, 156, 157, 0, 0,
552 0, 0, 0, 0, 0, 0, 0, 0, 0, 160,
553 161, 162, 163, 85, 164, 165, 0, 0, 166, 0,
554 0, 167, 168, 169, 133, 0, 0, 133, 0, 0,
555 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
556 0, 133, 133, 0, 0, 0, 133, 0, 0, 0,
557 0, 0, 0, 0, 0, 0, 0, 0, 0, 94,
558 94, 94, 94, 144, 0, 0, 144, 0, 94, 0,
559 0, 0, 94, 94, 94, 94, 133, 0, 0, 0,
560 144, 144, 94, 94, 0, 144, 94, 94, 94, 94,
561 94, 0, 94, 94, 0, 0, 0, 0, 82, 82,
562 82, 82, 0, 0, 0, 0, 0, 82, 0, 0,
563 0, 82, 82, 82, 82, 144, 0, 0, 0, 0,
564 0, 82, 82, 0, 0, 82, 82, 82, 82, 82,
565 0, 82, 82, 0, 0, 0, 0, 104, 0, 0,
566 104, 0, 0, 0, 84, 84, 84, 84, 0, 0,
567 0, 0, 0, 84, 104, 104, 0, 84, 84, 104,
568 84, 0, 0, 0, 0, 0, 0, 84, 84, 0,
569 0, 84, 84, 84, 84, 84, 0, 84, 0, 0,
570 92, 0, 0, 92, 0, 0, 0, 0, 0, 104,
571 0, 0, 85, 85, 85, 85, 0, 92, 92, 0,
572 0, 85, 92, 0, 0, 85, 85, 0, 0, 0,
573 0, 0, 0, 0, 0, 85, 85, 0, 93, 85,
574 85, 85, 85, 85, 0, 85, 107, 0, 293, 0,
575 0, 114, 92, 159, 0, 0, 0, 0, 0, 127,
576 128, 129, 130, 131, 132, 0, 0, 135, 136, 0,
577 0, 0, 0, 0, 143, 133, 133, 133, 133, 0,
578 0, 170, 0, 0, 133, 0, 0, 0, 133, 133,
579 159, 0, 0, 0, 0, 0, 0, 0, 133, 133,
580 186, 0, 133, 133, 133, 133, 133, 0, 0, 0,
581 0, 0, 0, 152, 144, 144, 144, 144, 170, 0,
582 159, 0, 0, 144, 0, 0, 0, 144, 144, 0,
583 0, 0, 0, 0, 0, 0, 0, 144, 144, 0,
584 0, 144, 144, 144, 144, 144, 0, 0, 170, 0,
585 152, 0, 0, 0, 0, 0, 0, 0, 0, 0,
586 0, 224, 225, 226, 227, 228, 229, 230, 231, 232,
587 233, 234, 235, 236, 237, 0, 0, 0, 170, 0,
588 152, 0, 0, 0, 0, 0, 251, 0, 104, 104,
589 104, 104, 0, 0, 0, 0, 0, 104, 0, 0,
590 0, 104, 104, 0, 0, 0, 0, 0, 0, 0,
591 152, 104, 104, 0, 0, 104, 104, 104, 104, 104,
592 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
593 0, 92, 92, 92, 92, 0, 0, 0, 0, 0,
594 92, 0, 0, 0, 0, 0, 0, 0, 0, 0,
595 0, 0, 0, 0, 92, 92, 0, 0, 92, 92,
596 0, 0, 0, 0, 0, 0, 306, 0, 0, 0,
597 0, 153, 0, 0, 0, 154, 155, 156, 157, 0,
598 0, 0, 0, 0, 0, 0, 0, 0, 0, 158,
599 160, 161, 162, 163, 0, 164, 165, 0, 0, 166,
600 0, 324, 167, 168, 169, 0, 0, 0, 153, 0,
601 0, 0, 154, 155, 156, 157, 0, 0, 0, 0,
602 0, 0, 0, 0, 0, 0, 158, 160, 161, 162,
603 163, 0, 164, 165, 0, 0, 166, 0, 153, 167,
604 168, 169, 154, 155, 156, 157, 0, 0, 0, 0,
605 0, 0, 0, 0, 0, 0, 0, 160, 161, 162,
606 163, 0, 164, 165, 0, 0, 166, 0, 0, 167,
607 168, 169, 154, 155, 156, 157, 0, 0, 0, 0,
608 0, 0, 0, 0, 0, 0, 0, 0, 161, 162,
609 163, 0, 164, 165, 0, 0, 166, 0, 0, 167,
612 short yycheck[] = { 13,
613 85, 36, 41, 185, 91, 40, 123, 36, 59, 93,
614 41, 33, 59, 93, 36, 37, 38, 59, 40, 93,
615 42, 43, 59, 45, 41, 59, 41, 196, 90, 41,
616 44, 91, 40, 40, 91, 26, 123, 41, 59, 41,
617 257, 41, 64, 57, 40, 40, 59, 61, 0, 93,
618 44, 42, 6, 257, 8, 40, 118, 48, 41, 50,
619 40, 40, 91, 123, 41, 40, 123, 276, 277, 91,
620 40, 62, 63, 64, 65, 278, 59, 31, 32, 41,
621 257, 33, 59, 91, 36, 37, 38, 123, 40, 123,
622 42, 43, 41, 45, 123, 109, 40, 59, 59, 59,
623 41, 123, 123, 36, 126, 41, 44, 59, 0, 260,
624 59, 257, 64, 123, 296, 123, 123, 59, 59, 110,
625 182, 295, 296, 59, 59, 187, 40, 123, 123, 40,
626 36, 41, 146, 147, 148, 149, 150, 151, 152, 91,
627 257, 33, 40, 123, 36, 37, 38, 125, 40, 125,
628 42, 43, 91, 45, 41, 296, 170, 171, 172, 173,
629 174, 175, 176, 91, 0, 334, 40, 59, 337, 59,
630 41, 123, 64, 125, 126, 189, 41, 191, 41, 193,
631 123, 195, 41, 40, 198, 199, 41, 356, 40, 59,
632 123, 205, 206, 207, 125, 125, 125, 33, 212, 91,
633 36, 37, 38, 125, 40, 93, 42, 43, 125, 45,
634 41, 295, 296, 41, 59, 295, 296, 41, 123, 41,
635 257, 295, 296, 59, 238, 59, 240, 314, 64, 258,
636 41, 123, 93, 125, 126, 257, 258, 259, 260, 261,
637 262, 263, 264, 265, 295, 296, 59, 269, 295, 296,
638 41, 295, 296, 295, 296, 91, 295, 296, 280, 294,
639 282, 283, 284, 348, 295, 296, 41, 289, 290, 291,
640 292, 293, 294, 59, 93, 297, 298, 291, 295, 296,
641 295, 296, 304, 295, 296, 59, 308, 123, 310, 311,
642 126, 295, 296, 295, 296, 295, 296, 41, 312, 362,
643 314, 295, 296, 13, 256, 257, 258, 259, 260, 261,
644 340, 263, 264, 265, 266, 267, 268, 269, 270, 271,
645 272, 273, 274, 275, 257, 312, 340, 279, 280, 262,
646 282, 283, 284, 41, 295, 296, 44, 289, 290, 291,
647 292, 293, 294, 147, 195, 297, 298, 95, 362, 125,
648 58, 59, 304, 295, 296, -1, 308, 91, 310, 311,
649 295, 296, -1, -1, 256, 257, 258, 259, 260, 261,
650 -1, 263, 264, 265, 266, 267, 268, 269, 270, 271,
651 272, 273, 274, 275, -1, 93, -1, 279, 280, 123,
652 282, 283, 284, -1, -1, -1, -1, 289, 290, 291,
653 292, 293, 294, -1, -1, 297, 298, 295, 296, 41,
654 91, -1, 304, 41, -1, -1, 308, -1, 310, 311,
655 256, 257, 258, 259, 260, 261, -1, 263, 264, 265,
656 -1, 59, -1, 269, 295, 296, 272, 273, 274, 275,
657 -1, -1, 123, 279, 280, -1, 282, 283, 284, -1,
658 -1, -1, -1, 289, 290, 291, 292, 293, 294, 13,
659 -1, 297, 298, 17, 91, 93, 41, 125, 304, 44,
660 -1, -1, 308, 91, 310, 311, 295, 296, -1, 33,
661 34, 35, 36, 58, 59, -1, -1, -1, 63, 43,
662 266, 267, 268, -1, 270, 271, 123, 51, -1, -1,
663 307, 308, 309, -1, -1, 123, 313, -1, 315, -1,
664 -1, 96, -1, 98, -1, 100, 91, 102, 93, 104,
665 105, -1, -1, -1, -1, 33, 80, -1, 36, 37,
666 38, -1, 40, 41, 42, 43, 44, 45, -1, -1,
667 94, -1, 349, 97, 351, 99, -1, 101, 123, 103,
668 58, 59, -1, 287, 288, 63, 64, 364, 272, 273,
669 274, 275, -1, -1, 272, 273, 274, 275, -1, -1,
670 -1, 305, 306, -1, -1, 309, -1, -1, 312, 313,
671 314, 295, 296, 91, -1, 93, -1, 295, 296, -1,
672 144, 33, -1, -1, 36, 37, 38, -1, 40, 41,
673 42, 43, 44, 45, 285, 286, 287, 288, 266, 267,
674 268, -1, 270, 271, -1, 123, 58, 59, 126, -1,
675 -1, 63, 64, -1, 305, 306, -1, 181, 309, -1,
676 -1, 312, 313, 314, 188, -1, -1, -1, -1, -1,
677 272, 273, 274, 275, 272, 273, 274, 275, -1, -1,
678 33, 93, -1, 36, 37, 38, -1, 40, -1, 42,
679 43, -1, 45, 295, 296, -1, -1, 295, 296, 287,
680 288, -1, -1, 266, 267, 268, 59, 270, 271, 306,
681 -1, 64, 309, -1, 126, 312, 313, 314, 306, -1,
682 -1, 309, -1, -1, 312, 313, 314, 272, 273, 274,
683 275, 91, -1, -1, -1, -1, 281, -1, 91, -1,
684 285, 286, 287, 288, -1, -1, -1, -1, -1, -1,
685 295, 296, -1, -1, 299, 300, 301, 302, 303, -1,
686 305, 306, -1, 123, 309, -1, -1, 312, 313, 314,
687 123, -1, -1, 126, -1, -1, -1, -1, -1, 257,
688 258, 259, 260, 261, -1, 263, 264, 265, -1, -1,
689 -1, 269, -1, 317, 272, 273, 274, 275, -1, -1,
690 -1, -1, 280, 281, 282, 283, 284, 285, 286, 287,
691 288, 289, 290, 291, 292, 293, 294, 295, 296, 297,
692 298, 299, 300, 301, 302, 303, 304, 305, 306, -1,
693 308, 309, 310, 311, 312, 313, 314, -1, -1, -1,
694 -1, -1, -1, -1, -1, 257, 258, 259, 260, 261,
695 -1, 263, 264, 265, -1, -1, 190, 269, 192, -1,
696 272, 273, 274, 275, -1, -1, -1, -1, 280, 281,
697 282, 283, 284, 285, 286, 287, 288, 289, 290, 291,
698 292, 293, 294, 295, 296, 297, 298, 299, 300, 301,
699 302, 303, 304, 305, 306, -1, 308, 309, 310, 311,
700 312, 313, 314, 256, 257, 258, 259, 260, 261, -1,
701 263, 264, 265, -1, -1, 41, 269, -1, 44, 272,
702 273, 274, 275, -1, -1, -1, 279, 280, -1, 282,
703 283, 284, 58, 59, -1, -1, 289, 290, 291, 292,
704 293, 294, -1, -1, 297, 298, -1, -1, -1, 309,
705 -1, 304, 312, 313, 314, 308, 33, 310, 311, 36,
706 37, 38, -1, 40, -1, 42, 43, 93, 45, -1,
707 -1, 25, 26, -1, -1, -1, -1, -1, -1, 49,
708 50, -1, 59, 37, -1, -1, -1, 64, 42, 43,
709 -1, -1, -1, -1, 48, -1, 50, -1, 332, 333,
710 -1, -1, -1, -1, -1, 339, -1, 341, 62, 63,
711 64, 65, 33, -1, 91, 36, 37, 38, -1, 40,
712 90, 42, 43, 357, 45, -1, -1, -1, -1, -1,
713 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
714 -1, -1, -1, 64, -1, -1, 123, -1, 118, 126,
715 -1, -1, -1, -1, -1, 125, 110, -1, -1, -1,
716 -1, -1, -1, -1, -1, -1, -1, -1, 33, -1,
717 91, 36, 37, 38, -1, 40, -1, 42, 43, -1,
718 45, -1, -1, -1, -1, -1, -1, -1, -1, -1,
719 -1, -1, -1, -1, 59, -1, -1, -1, -1, 64,
720 -1, -1, 123, -1, -1, 126, -1, -1, -1, -1,
721 -1, -1, 182, -1, -1, 169, 41, 187, -1, 44,
722 -1, -1, -1, -1, -1, -1, 91, -1, -1, -1,
723 -1, -1, 33, 58, 59, 36, 37, 38, 63, 40,
724 -1, 42, 43, 197, 45, -1, 272, 273, 274, 275,
725 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
726 -1, 126, -1, 64, -1, -1, -1, -1, 93, 295,
727 296, -1, -1, 299, -1, -1, -1, -1, -1, 256,
728 257, 258, 259, 260, 261, -1, 263, 264, 265, -1,
729 91, -1, 269, -1, -1, 272, 273, 274, 275, -1,
730 -1, 41, 279, 280, 44, 282, 283, 284, -1, -1,
731 -1, -1, 289, 290, 291, 292, 293, 294, 58, 59,
732 297, 298, 123, 63, -1, 126, -1, 304, -1, -1,
733 -1, 308, -1, 310, 311, -1, 257, 258, 259, 260,
734 261, -1, 263, 264, 265, -1, -1, -1, 269, 41,
735 -1, -1, 44, 93, -1, -1, -1, 41, -1, 280,
736 44, 282, 283, 284, -1, -1, 58, 59, 289, 290,
737 291, 292, 293, 294, 58, 59, 297, 298, -1, 63,
738 -1, -1, -1, 304, -1, -1, -1, 308, -1, 310,
739 311, -1, 257, 258, 259, 260, 261, -1, 263, 264,
740 265, 93, -1, -1, 269, -1, -1, -1, -1, 93,
741 -1, -1, -1, 41, -1, 280, 44, 282, 283, 284,
742 -1, -1, -1, -1, 289, 290, 291, 292, 293, 294,
743 58, 59, 297, 298, -1, 63, -1, -1, -1, 304,
744 -1, 91, -1, 308, -1, 310, 311, 272, 273, 274,
745 275, -1, -1, -1, -1, -1, 257, 258, 259, 260,
746 261, -1, 263, 264, 265, 93, -1, -1, 269, 41,
747 295, 296, 44, 123, 299, -1, -1, 41, -1, 280,
748 44, 282, 283, 284, -1, -1, 58, 59, 289, 290,
749 291, 292, 293, 294, -1, 59, 297, 298, -1, -1,
750 -1, -1, -1, 304, -1, -1, -1, 308, 33, 310,
751 311, 36, 37, 38, -1, 40, 41, 42, 43, -1,
752 45, 93, -1, -1, -1, -1, -1, -1, -1, 93,
753 -1, -1, 272, 273, 274, 275, -1, -1, -1, 64,
754 -1, 281, -1, -1, -1, 285, 286, 287, 288, -1,
755 -1, -1, -1, -1, -1, 295, 296, -1, -1, 299,
756 300, 301, 302, 303, 33, 305, 91, 36, 37, 38,
757 -1, 40, -1, 42, 43, -1, 45, -1, -1, -1,
758 272, 273, 274, 275, -1, -1, -1, -1, 272, 273,
759 274, 275, -1, -1, -1, 64, -1, 281, -1, -1,
760 -1, 126, 286, 295, 296, -1, -1, -1, -1, -1,
761 -1, 295, 296, -1, -1, 299, 300, 301, 302, 303,
762 -1, -1, 91, 33, 93, -1, 36, 37, 38, -1,
763 40, 41, 42, 43, -1, 45, -1, 287, -1, -1,
764 -1, -1, -1, -1, 272, 273, 274, 275, -1, -1,
765 -1, -1, -1, 281, 64, -1, 306, 126, -1, 309,
766 -1, -1, 312, 313, 314, -1, -1, 295, 296, -1,
767 -1, 299, 300, 301, 302, 303, -1, -1, -1, -1,
768 -1, 91, -1, 33, -1, -1, 36, 37, 38, -1,
769 40, 41, 42, 43, -1, 45, -1, -1, -1, -1,
770 272, 273, 274, 275, -1, -1, -1, -1, 272, 273,
771 274, 275, -1, -1, 64, -1, 126, -1, -1, -1,
772 -1, -1, -1, 295, 296, -1, -1, -1, -1, -1,
773 -1, 295, 257, 258, 259, 260, 261, -1, 263, 264,
774 265, 91, -1, -1, 269, 41, -1, -1, 44, -1,
775 -1, -1, -1, 41, -1, 280, 44, 282, 283, 284,
776 -1, -1, 58, 59, 289, 290, 291, 292, 293, 294,
777 58, 59, 297, 298, -1, 63, 126, -1, -1, 304,
778 -1, -1, -1, 308, -1, 310, 311, -1, 257, 258,
779 259, 260, 261, -1, 263, 264, 265, 93, -1, -1,
780 269, -1, -1, -1, -1, 93, -1, -1, -1, 41,
781 -1, 280, 44, 282, 283, 284, -1, -1, -1, -1,
782 289, 290, 291, 292, 293, 294, 58, 59, 297, 298,
783 -1, 63, -1, -1, -1, 304, 91, -1, -1, 308,
784 -1, 310, 311, -1, -1, 41, -1, 257, 258, 259,
785 260, 261, -1, 263, 264, 265, -1, -1, -1, 269,
786 -1, 93, -1, -1, -1, -1, -1, 63, 123, -1,
787 280, -1, 282, 283, 284, -1, -1, -1, -1, 289,
788 290, 291, 292, 293, 294, -1, -1, 297, 298, -1,
789 -1, -1, -1, -1, 304, 91, -1, -1, 308, 41,
790 310, 311, 44, -1, -1, -1, -1, 257, 258, 259,
791 260, 261, -1, 263, 264, 265, 58, 59, -1, 269,
792 -1, -1, -1, -1, -1, -1, -1, 123, -1, -1,
793 280, -1, 282, 283, 284, -1, -1, -1, -1, 289,
794 290, 291, 292, 293, 294, -1, -1, 297, 298, -1,
795 -1, 93, -1, -1, 304, -1, -1, -1, 308, 33,
796 310, 311, 36, 37, 38, -1, 40, -1, 42, 43,
797 -1, 45, -1, -1, -1, -1, 272, 273, 274, 275,
798 -1, -1, -1, -1, 272, 273, 274, 275, -1, -1,
799 64, -1, -1, 281, -1, -1, -1, -1, -1, 295,
800 296, -1, -1, -1, -1, -1, -1, 295, 296, -1,
801 -1, 299, 300, 301, 302, 33, -1, 91, 36, 37,
802 38, -1, 40, 41, 42, 43, -1, 45, -1, -1,
803 285, 286, 287, 288, -1, -1, -1, -1, -1, -1,
804 272, 273, 274, 275, -1, -1, 64, 302, 303, 281,
805 305, 306, 126, -1, 309, -1, -1, 312, 313, 314,
806 -1, -1, -1, 295, 296, -1, -1, 299, 300, 301,
807 -1, 33, -1, 91, 36, 37, 38, -1, 40, 41,
808 42, 43, -1, 45, -1, 281, -1, -1, -1, 285,
809 286, 287, 288, -1, -1, -1, -1, -1, -1, -1,
810 -1, -1, 64, 299, 300, 301, 302, 303, 126, 305,
811 306, -1, -1, 309, -1, -1, 312, 313, 314, -1,
812 -1, -1, -1, -1, -1, -1, -1, -1, -1, 91,
813 272, 273, 274, 275, 33, -1, -1, 36, 37, 38,
814 -1, 40, -1, 42, 43, -1, 45, -1, -1, -1,
815 -1, -1, -1, 295, 296, -1, -1, -1, -1, -1,
816 -1, -1, -1, -1, 126, 64, -1, -1, -1, -1,
817 -1, -1, -1, -1, -1, -1, -1, -1, 41, -1,
818 -1, 44, 256, 257, 258, 259, 260, 261, -1, 263,
819 264, 265, 91, -1, -1, 269, -1, -1, -1, -1,
820 63, -1, -1, -1, -1, -1, 280, -1, 282, 283,
821 284, -1, -1, -1, -1, 289, 290, 291, 292, 293,
822 294, -1, -1, 297, 298, -1, -1, 126, 91, -1,
823 304, -1, 41, -1, 308, 44, 310, 311, -1, 257,
824 258, 259, 260, 261, -1, 263, 264, 265, -1, 58,
825 59, 269, -1, -1, 63, -1, -1, -1, -1, -1,
826 123, -1, 280, -1, 282, 283, 284, -1, -1, -1,
827 -1, 289, 290, 291, 292, 293, 294, -1, -1, 297,
828 298, -1, 91, -1, 93, -1, 304, -1, -1, -1,
829 308, 41, 310, 311, 44, 257, 258, 259, 260, 261,
830 -1, 263, 264, 265, -1, -1, -1, 269, 58, 59,
831 -1, -1, -1, 63, 123, -1, -1, -1, 280, -1,
832 282, 283, 284, -1, -1, -1, -1, 289, 290, 291,
833 292, 293, 294, -1, 41, 297, 298, 44, -1, -1,
834 -1, 91, 304, 93, -1, -1, 308, -1, 310, 311,
835 -1, 58, 59, -1, -1, -1, 63, -1, 257, 258,
836 259, 260, 261, -1, 263, 264, 265, -1, -1, -1,
837 269, -1, -1, 123, -1, -1, -1, -1, -1, 41,
838 -1, 280, 44, 282, 283, 284, 93, -1, -1, -1,
839 289, 290, 291, 292, 293, 294, 58, 59, 297, 298,
840 -1, 63, -1, -1, -1, 304, -1, -1, -1, 308,
841 -1, 310, 311, -1, -1, -1, 123, -1, 281, -1,
842 -1, -1, 285, 286, 287, 288, -1, -1, -1, 91,
843 41, 93, -1, 44, -1, -1, 299, 300, 301, 302,
844 303, -1, 305, 306, -1, -1, 309, 58, 59, 312,
845 313, 314, 63, -1, -1, -1, -1, -1, -1, -1,
846 -1, -1, -1, 272, 273, 274, 275, -1, -1, -1,
847 -1, -1, 281, -1, -1, -1, 285, 286, 287, 288,
848 -1, -1, 93, -1, -1, -1, 295, 296, -1, 41,
849 299, 300, 301, 302, 303, -1, 305, 306, -1, -1,
850 309, -1, -1, 312, 313, 314, 58, 59, -1, -1,
851 -1, 63, 123, -1, -1, -1, -1, -1, -1, -1,
852 -1, -1, 272, 273, 274, 275, -1, -1, -1, -1,
853 -1, 281, -1, -1, -1, 285, 286, 287, 288, 91,
854 -1, 93, -1, -1, -1, 295, 296, -1, -1, 299,
855 300, 301, 302, 303, -1, 305, 306, -1, -1, 309,
856 -1, -1, 312, 313, 314, 272, 273, 274, 275, 41,
857 -1, 123, 44, -1, 281, -1, -1, -1, 285, 286,
858 287, 288, -1, -1, -1, -1, 58, 59, 295, 296,
859 -1, 63, 299, 300, 301, 302, 303, -1, 305, 306,
860 -1, -1, 309, -1, -1, 312, 313, 314, -1, -1,
861 272, 273, 274, 275, -1, -1, -1, -1, -1, 281,
862 -1, 93, -1, 285, 286, 287, 288, -1, -1, -1,
863 -1, 41, -1, 295, 296, -1, -1, 299, 300, 301,
864 302, 303, -1, 305, 306, -1, -1, 309, 58, 59,
865 312, 313, 314, 63, -1, -1, -1, -1, -1, -1,
866 -1, 272, 273, 274, 275, -1, -1, -1, -1, -1,
867 281, -1, -1, -1, 285, 286, 287, 288, -1, -1,
868 -1, 91, -1, 93, 295, 296, -1, -1, 299, 300,
869 301, 302, 303, 41, 305, 306, 44, -1, 309, -1,
870 -1, 312, 313, 314, -1, -1, -1, -1, -1, -1,
871 58, 59, -1, 123, -1, 63, -1, -1, -1, -1,
872 272, 273, 274, 275, -1, -1, -1, -1, -1, 281,
873 -1, -1, -1, 285, 286, 287, 288, -1, -1, -1,
874 -1, -1, -1, 295, 296, 93, -1, 299, 300, 301,
875 302, 303, 41, 305, 306, 44, -1, 309, -1, -1,
876 312, 313, 314, -1, -1, -1, -1, -1, -1, 58,
877 59, -1, -1, -1, 63, 123, -1, -1, -1, -1,
878 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
879 -1, -1, -1, -1, -1, -1, -1, 41, -1, -1,
880 272, 273, 274, 275, 93, -1, -1, -1, -1, 281,
881 -1, -1, -1, -1, 58, 59, -1, -1, -1, 63,
882 -1, -1, -1, 295, 296, -1, -1, 299, 300, 301,
883 302, 303, -1, -1, 123, -1, -1, -1, -1, -1,
884 -1, -1, -1, -1, -1, -1, -1, 91, -1, 93,
885 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
886 -1, -1, 272, 273, 274, 275, -1, -1, -1, -1,
887 -1, 281, -1, -1, -1, 285, 286, 287, 288, 123,
888 -1, -1, 91, -1, -1, 295, 296, -1, -1, 299,
889 300, 301, 302, 303, 41, 305, 306, 44, -1, 309,
890 -1, -1, 312, 313, 314, -1, -1, -1, -1, -1,
891 -1, 58, 59, -1, 123, -1, 63, -1, -1, -1,
892 -1, -1, -1, -1, 272, 273, 274, 275, -1, -1,
893 -1, -1, -1, 281, -1, -1, -1, 285, 286, 287,
894 288, -1, -1, -1, -1, -1, 93, 295, 296, -1,
895 -1, 299, 300, 301, 302, 303, 41, 305, 306, 44,
896 -1, 309, -1, -1, 312, 313, 314, -1, -1, -1,
897 -1, -1, -1, 58, 59, -1, 123, -1, 63, -1,
898 -1, -1, -1, 272, 273, 274, 275, -1, -1, -1,
899 -1, -1, 281, -1, -1, -1, 285, 286, 287, 288,
900 -1, -1, -1, -1, -1, -1, 295, 296, 93, -1,
901 299, 300, 301, 302, 303, -1, 305, 306, -1, -1,
902 309, -1, -1, 312, 313, 314, -1, -1, 272, 273,
903 274, 275, 41, -1, -1, 44, -1, 281, -1, -1,
904 -1, 285, 286, 287, 288, -1, -1, -1, -1, 58,
905 59, 295, 296, -1, 63, 299, 300, 301, 302, 303,
906 -1, 305, 306, -1, -1, 309, -1, -1, 312, 313,
907 314, -1, -1, -1, -1, -1, 285, 41, 287, 288,
908 44, -1, -1, -1, 93, -1, -1, -1, -1, -1,
909 -1, -1, -1, -1, 58, 59, 305, 306, -1, 63,
910 309, -1, -1, 312, 313, 314, -1, -1, -1, -1,
911 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
912 -1, -1, -1, -1, -1, 272, 273, 274, 275, 93,
913 -1, -1, -1, -1, 281, -1, -1, -1, 285, 286,
914 287, 288, -1, -1, -1, -1, -1, -1, 295, 296,
915 -1, -1, 299, 300, 301, 302, 303, 41, 305, 306,
916 44, -1, 309, -1, -1, 312, 313, 314, -1, -1,
917 -1, -1, -1, -1, 58, 59, -1, -1, -1, 63,
918 -1, -1, -1, -1, -1, -1, -1, 272, 273, 274,
919 275, -1, -1, -1, -1, -1, 281, -1, -1, -1,
920 285, 286, 287, 288, -1, -1, -1, -1, -1, 93,
921 295, 296, -1, -1, 299, 300, 301, 302, 303, 41,
922 305, 306, 44, -1, 309, -1, -1, 312, 313, 314,
923 -1, -1, -1, -1, -1, -1, 58, 59, -1, -1,
924 -1, 63, -1, -1, -1, -1, -1, -1, -1, -1,
925 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
926 -1, -1, -1, 272, 273, 274, 275, 41, -1, -1,
927 44, 93, 281, -1, -1, -1, 285, 286, 287, 288,
928 -1, -1, -1, -1, 58, 59, 295, 296, -1, 63,
929 299, 300, 301, 302, 303, -1, 305, 306, -1, -1,
930 309, -1, -1, 312, 313, 314, -1, -1, 272, 273,
931 274, 275, 41, -1, -1, 44, -1, 281, -1, 93,
932 -1, 285, 286, 287, 288, -1, -1, -1, -1, 58,
933 59, 295, 296, -1, 63, 299, 300, 301, 302, 303,
934 -1, 305, 306, -1, -1, 309, -1, -1, 312, 313,
935 314, -1, -1, 41, -1, -1, 44, -1, -1, -1,
936 -1, -1, -1, -1, 93, -1, -1, -1, -1, -1,
937 58, 59, -1, -1, -1, 63, -1, -1, -1, -1,
938 -1, -1, -1, -1, -1, -1, -1, -1, 272, 273,
939 274, 275, 41, -1, -1, 44, -1, 281, -1, -1,
940 -1, 285, 286, 287, 288, 93, -1, -1, -1, 58,
941 59, 295, 296, -1, 63, 299, 300, 301, 302, 303,
942 -1, 305, 306, -1, -1, 309, -1, -1, 312, 313,
943 314, -1, -1, -1, -1, -1, -1, -1, 41, -1,
944 -1, 44, -1, -1, 93, -1, -1, -1, -1, -1,
945 272, 273, 274, 275, -1, 58, 59, -1, -1, 281,
946 63, -1, -1, 285, 286, 287, 288, -1, -1, -1,
947 -1, -1, -1, 295, 296, -1, -1, 299, 300, 301,
948 302, 303, -1, 305, 306, -1, 41, 309, -1, 44,
949 93, -1, 91, -1, -1, -1, -1, -1, 272, 273,
950 274, 275, -1, 58, 59, -1, -1, 281, 63, -1,
951 -1, 285, 286, 287, 288, -1, -1, -1, -1, -1,
952 -1, 295, 296, -1, 123, 299, 300, 301, 302, 303,
953 -1, 305, 306, -1, -1, 309, -1, -1, 93, -1,
954 -1, -1, -1, 272, 273, 274, 275, -1, -1, -1,
955 -1, -1, 281, -1, -1, -1, 285, 286, 287, 288,
956 91, -1, -1, -1, -1, -1, 295, 296, -1, -1,
957 299, 300, 301, 302, 303, -1, 305, 306, -1, -1,
958 -1, -1, -1, -1, 272, 273, 274, 275, 41, -1,
959 -1, 44, 123, 281, -1, -1, -1, 285, 286, 287,
960 288, -1, -1, -1, -1, 58, 59, 295, 296, -1,
961 63, 299, 300, 301, 302, 303, -1, 305, 306, -1,
962 -1, -1, -1, 272, 273, 274, 275, 41, -1, -1,
963 44, -1, 281, -1, -1, -1, 285, 286, 287, 288,
964 93, -1, -1, -1, 58, 59, 295, 296, -1, 63,
965 299, 300, 301, 302, 303, -1, 305, 306, -1, -1,
966 -1, -1, -1, -1, -1, -1, -1, -1, -1, 272,
967 273, 274, 275, 41, -1, -1, 44, -1, 281, 93,
968 -1, -1, 285, 286, 287, 288, 285, 286, 287, 288,
969 58, 59, 295, 296, -1, 63, 299, 300, 301, 302,
970 303, -1, 305, 306, 303, -1, 305, 306, -1, -1,
971 309, -1, -1, 312, 313, 314, -1, 272, 273, 274,
972 275, 41, -1, -1, 44, 93, 281, -1, -1, -1,
973 285, 286, 287, 288, -1, -1, -1, -1, 58, 59,
974 295, 296, -1, 63, 299, 300, 301, 302, 303, -1,
975 305, 306, -1, -1, 285, 286, 287, 288, -1, -1,
976 -1, -1, -1, -1, -1, -1, -1, -1, -1, 300,
977 301, 302, 303, 93, 305, 306, -1, -1, 309, -1,
978 -1, 312, 313, 314, 41, -1, -1, 44, -1, -1,
979 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
980 -1, 58, 59, -1, -1, -1, 63, -1, -1, -1,
981 -1, -1, -1, -1, -1, -1, -1, -1, -1, 272,
982 273, 274, 275, 41, -1, -1, 44, -1, 281, -1,
983 -1, -1, 285, 286, 287, 288, 93, -1, -1, -1,
984 58, 59, 295, 296, -1, 63, 299, 300, 301, 302,
985 303, -1, 305, 306, -1, -1, -1, -1, 272, 273,
986 274, 275, -1, -1, -1, -1, -1, 281, -1, -1,
987 -1, 285, 286, 287, 288, 93, -1, -1, -1, -1,
988 -1, 295, 296, -1, -1, 299, 300, 301, 302, 303,
989 -1, 305, 306, -1, -1, -1, -1, 41, -1, -1,
990 44, -1, -1, -1, 272, 273, 274, 275, -1, -1,
991 -1, -1, -1, 281, 58, 59, -1, 285, 286, 63,
992 288, -1, -1, -1, -1, -1, -1, 295, 296, -1,
993 -1, 299, 300, 301, 302, 303, -1, 305, -1, -1,
994 41, -1, -1, 44, -1, -1, -1, -1, -1, 93,
995 -1, -1, 272, 273, 274, 275, -1, 58, 59, -1,
996 -1, 281, 63, -1, -1, 285, 286, -1, -1, -1,
997 -1, -1, -1, -1, -1, 295, 296, -1, 30, 299,
998 300, 301, 302, 303, -1, 305, 38, -1, 58, -1,
999 -1, 43, 93, 63, -1, -1, -1, -1, -1, 51,
1000 52, 53, 54, 55, 56, -1, -1, 59, 60, -1,
1001 -1, -1, -1, -1, 66, 272, 273, 274, 275, -1,
1002 -1, 91, -1, -1, 281, -1, -1, -1, 285, 286,
1003 63, -1, -1, -1, -1, -1, -1, -1, 295, 296,
1004 92, -1, 299, 300, 301, 302, 303, -1, -1, -1,
1005 -1, -1, -1, 123, 272, 273, 274, 275, 91, -1,
1006 63, -1, -1, 281, -1, -1, -1, 285, 286, -1,
1007 -1, -1, -1, -1, -1, -1, -1, 295, 296, -1,
1008 -1, 299, 300, 301, 302, 303, -1, -1, 91, -1,
1009 123, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1010 -1, 153, 154, 155, 156, 157, 158, 159, 160, 161,
1011 162, 163, 164, 165, 166, -1, -1, -1, 91, -1,
1012 123, -1, -1, -1, -1, -1, 178, -1, 272, 273,
1013 274, 275, -1, -1, -1, -1, -1, 281, -1, -1,
1014 -1, 285, 286, -1, -1, -1, -1, -1, -1, -1,
1015 123, 295, 296, -1, -1, 299, 300, 301, 302, 303,
1016 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1017 -1, 272, 273, 274, 275, -1, -1, -1, -1, -1,
1018 281, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1019 -1, -1, -1, -1, 295, 296, -1, -1, 299, 300,
1020 -1, -1, -1, -1, -1, -1, 258, -1, -1, -1,
1021 -1, 281, -1, -1, -1, 285, 286, 287, 288, -1,
1022 -1, -1, -1, -1, -1, -1, -1, -1, -1, 299,
1023 300, 301, 302, 303, -1, 305, 306, -1, -1, 309,
1024 -1, 293, 312, 313, 314, -1, -1, -1, 281, -1,
1025 -1, -1, 285, 286, 287, 288, -1, -1, -1, -1,
1026 -1, -1, -1, -1, -1, -1, 299, 300, 301, 302,
1027 303, -1, 305, 306, -1, -1, 309, -1, 281, 312,
1028 313, 314, 285, 286, 287, 288, -1, -1, -1, -1,
1029 -1, -1, -1, -1, -1, -1, -1, 300, 301, 302,
1030 303, -1, 305, 306, -1, -1, 309, -1, -1, 312,
1031 313, 314, 285, 286, 287, 288, -1, -1, -1, -1,
1032 -1, -1, -1, -1, -1, -1, -1, -1, 301, 302,
1033 303, -1, 305, 306, -1, -1, 309, -1, -1, 312,
1040 #define YYMAXTOKEN 314
1043 "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,
1044 "'!'",0,0,"'$'","'%'","'&'",0,"'('","')'","'*'","'+'","','","'-'",0,0,0,0,0,0,0,
1045 0,0,0,0,0,"':'","';'",0,0,0,"'?'","'@'",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1046 0,0,0,0,0,0,"'['",0,"']'",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1047 0,0,"'{'",0,"'}'","'~'",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1048 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1049 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1050 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",
1051 "PMFUNC","PRIVATEREF","FUNC0SUB","UNIOPSUB","LSTOPSUB","LABEL","FORMAT","SUB",
1052 "ANONSUB","PACKAGE","USE","WHILE","UNTIL","IF","UNLESS","ELSE","ELSIF",
1053 "CONTINUE","FOR","LOOPEX","DOTDOT","FUNC0","FUNC1","FUNC","RELOP","EQOP",
1054 "MULOP","ADDOP","DOLSHARP","DO","HASHBRACK","NOAMP","LOCAL","MY","OROP","ANDOP",
1055 "NOTOP","LSTOP","ASSIGNOP","OROR","ANDAND","BITOROP","BITANDOP","UNIOP",
1056 "SHIFTOP","MATCHOP","UMINUS","REFGEN","POWOP","PREINC","PREDEC","POSTINC",
1062 "prog : $$1 lineseq",
1063 "block : '{' remember lineseq '}'",
1065 "mblock : '{' mintro mremember lineseq '}'",
1069 "lineseq : lineseq decl",
1070 "lineseq : lineseq line",
1071 "line : label cond",
1074 "line : label sideff ';'",
1077 "sideff : expr IF expr",
1078 "sideff : expr UNLESS expr",
1079 "sideff : expr WHILE expr",
1080 "sideff : expr UNTIL iexpr",
1082 "else : ELSE mblock",
1083 "else : ELSIF '(' mexpr ')' mblock else",
1084 "cond : IF '(' remember mexpr ')' mblock else",
1085 "cond : UNLESS '(' remember miexpr ')' mblock else",
1086 "cond : IF block block else",
1087 "cond : UNLESS block block else",
1089 "cont : CONTINUE block",
1090 "loop : label WHILE '(' remember mtexpr ')' mblock cont",
1091 "loop : label UNTIL '(' remember miexpr ')' mblock cont",
1092 "loop : label WHILE block block cont",
1093 "loop : label UNTIL block block cont",
1094 "loop : label FOR MY remember my_scalar '(' expr ')' mblock cont",
1095 "loop : label FOR scalar '(' expr ')' block cont",
1096 "loop : label FOR '(' remember expr ')' mblock cont",
1099 "loop : label FOR '(' remember nexpr ';' $$2 texpr ';' $$3 nexpr ')' mblock",
1100 "loop : label block cont",
1115 "format : FORMAT startsub WORD block",
1116 "format : FORMAT startsub block",
1117 "subrout : SUB startsub WORD proto block",
1118 "subrout : SUB startsub WORD proto ';'",
1122 "package : PACKAGE WORD ';'",
1123 "package : PACKAGE ';'",
1124 "use : USE startsub WORD WORD listexpr ';'",
1125 "expr : expr ANDOP expr",
1126 "expr : expr OROP expr",
1128 "argexpr : argexpr ','",
1129 "argexpr : argexpr ',' term",
1131 "listop : LSTOP indirob argexpr",
1132 "listop : FUNC '(' indirob expr ')'",
1133 "listop : term ARROW method '(' listexprcom ')'",
1134 "listop : METHOD indirob listexpr",
1135 "listop : FUNCMETH indirob '(' listexprcom ')'",
1136 "listop : LSTOP listexpr",
1137 "listop : FUNC '(' listexprcom ')'",
1138 "listop : LSTOPSUB startsub block listexpr",
1141 "term : term ASSIGNOP term",
1142 "term : term POWOP term",
1143 "term : term MULOP term",
1144 "term : term ADDOP term",
1145 "term : term SHIFTOP term",
1146 "term : term RELOP term",
1147 "term : term EQOP term",
1148 "term : term BITANDOP term",
1149 "term : term BITOROP term",
1150 "term : term DOTDOT term",
1151 "term : term ANDAND term",
1152 "term : term OROR term",
1153 "term : term '?' term ':' term",
1154 "term : term MATCHOP term",
1159 "term : REFGEN term",
1160 "term : term POSTINC",
1161 "term : term POSTDEC",
1162 "term : PREINC term",
1163 "term : PREDEC term",
1164 "term : local term",
1165 "term : '(' expr ')'",
1167 "term : '[' expr ']'",
1169 "term : HASHBRACK expr ';' '}'",
1170 "term : HASHBRACK ';' '}'",
1171 "term : ANONSUB startsub proto block",
1173 "term : star '{' expr ';' '}'",
1175 "term : scalar '[' expr ']'",
1176 "term : term ARROW '[' expr ']'",
1177 "term : term '[' expr ']'",
1181 "term : scalar '{' expr ';' '}'",
1182 "term : term ARROW '{' expr ';' '}'",
1183 "term : term '{' expr ';' '}'",
1184 "term : '(' expr ')' '[' expr ']'",
1185 "term : '(' ')' '[' expr ']'",
1186 "term : ary '[' expr ']'",
1187 "term : ary '{' expr ';' '}'",
1190 "term : amper '(' ')'",
1191 "term : amper '(' expr ')'",
1192 "term : NOAMP WORD listexpr",
1195 "term : DO WORD '(' ')'",
1196 "term : DO WORD '(' expr ')'",
1197 "term : DO scalar '(' ')'",
1198 "term : DO scalar '(' expr ')'",
1200 "term : LOOPEX term",
1201 "term : NOTOP argexpr",
1203 "term : UNIOP block",
1204 "term : UNIOP term",
1205 "term : UNIOPSUB term",
1207 "term : FUNC0 '(' ')'",
1209 "term : FUNC1 '(' ')'",
1210 "term : FUNC1 '(' expr ')'",
1211 "term : PMFUNC '(' term ')'",
1212 "term : PMFUNC '(' term ',' term ')'",
1216 "listexpr : argexpr",
1218 "listexprcom : expr",
1219 "listexprcom : expr ','",
1222 "my_scalar : scalar",
1223 "amper : '&' indirob",
1224 "scalar : '$' indirob",
1225 "ary : '@' indirob",
1226 "hsh : '%' indirob",
1227 "arylen : DOLSHARP indirob",
1228 "star : '*' indirob",
1232 "indirob : PRIVATEREF",
1235 #define yyclearin (yychar=(-1))
1236 #define yyerrok (yyerrflag=0)
1239 #define YYMAXDEPTH YYSTACKSIZE
1243 #define YYSTACKSIZE YYMAXDEPTH
1245 #define YYSTACKSIZE 500
1246 #define YYMAXDEPTH 500
1257 #line 1329 "perly.c"
1258 #define YYABORT goto yyabort
1259 #define YYACCEPT goto yyaccept
1260 #define YYERROR goto yyerrlab
1277 struct ysv* ysave = (struct ysv*)ptr;
1278 if (ysave->yyss) Safefree(ysave->yyss);
1279 if (ysave->yyvs) Safefree(ysave->yyvs);
1280 yydebug = ysave->oldyydebug;
1281 yynerrs = ysave->oldyynerrs;
1282 yyerrflag = ysave->oldyyerrflag;
1283 yychar = ysave->oldyychar;
1284 yyval = ysave->oldyyval;
1285 yylval = ysave->oldyylval;
1292 register int yym, yyn, yystate;
1293 register short *yyssp;
1294 register YYSTYPE *yyvsp;
1297 unsigned yystacksize = YYSTACKSIZE;
1301 extern char *getenv();
1304 struct ysv *ysave = (struct ysv*)safemalloc(sizeof(struct ysv));
1305 SAVEDESTRUCTOR(yydestruct, ysave);
1306 ysave->oldyydebug = yydebug;
1307 ysave->oldyynerrs = yynerrs;
1308 ysave->oldyyerrflag = yyerrflag;
1309 ysave->oldyychar = yychar;
1310 ysave->oldyyval = yyval;
1311 ysave->oldyylval = yylval;
1314 if (yys = getenv("YYDEBUG"))
1317 if (yyn >= '0' && yyn <= '9')
1318 yydebug = yyn - '0';
1327 ** Initialize private stacks (yyparse may be called from an action)
1329 ysave->yyss = yyss = (short*)safemalloc(yystacksize*sizeof(short));
1330 ysave->yyvs = yyvs = (YYSTYPE*)safemalloc(yystacksize*sizeof(YYSTYPE));
1336 *yyssp = yystate = 0;
1339 if (yyn = yydefred[yystate]) goto yyreduce;
1342 if ((yychar = yylex()) < 0) yychar = 0;
1347 if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
1348 if (!yys) yys = "illegal-symbol";
1349 PerlIO_printf(Perl_debug_log, "yydebug: state %d, reading %d (%s)\n", yystate,
1354 if ((yyn = yysindex[yystate]) && (yyn += yychar) >= 0 &&
1355 yyn <= YYTABLESIZE && yycheck[yyn] == yychar)
1359 PerlIO_printf(Perl_debug_log, "yydebug: state %d, shifting to state %d\n",
1360 yystate, yytable[yyn]);
1362 if (yyssp >= yyss + yystacksize - 1)
1365 ** reallocate and recover. Note that pointers
1366 ** have to be reset, or bad things will happen
1368 int yyps_index = (yyssp - yyss);
1369 int yypv_index = (yyvsp - yyvs);
1370 yystacksize += YYSTACKSIZE;
1371 ysave->yyvs = yyvs =
1372 (YYSTYPE*)realloc((char*)yyvs,yystacksize * sizeof(YYSTYPE));
1373 ysave->yyss = yyss =
1374 (short*)realloc((char*)yyss,yystacksize * sizeof(short));
1377 yyssp = yyss + yyps_index;
1378 yyvsp = yyvs + yypv_index;
1380 *++yyssp = yystate = yytable[yyn];
1383 if (yyerrflag > 0) --yyerrflag;
1386 if ((yyn = yyrindex[yystate]) && (yyn += yychar) >= 0 &&
1387 yyn <= YYTABLESIZE && yycheck[yyn] == yychar)
1392 if (yyerrflag) goto yyinrecovery;
1397 yyerror("syntax error");
1409 if ((yyn = yysindex[*yyssp]) && (yyn += YYERRCODE) >= 0 &&
1410 yyn <= YYTABLESIZE && yycheck[yyn] == YYERRCODE)
1414 PerlIO_printf(Perl_debug_log,
1415 "yydebug: state %d, error recovery shifting to state %d\n",
1416 *yyssp, yytable[yyn]);
1418 if (yyssp >= yyss + yystacksize - 1)
1421 ** reallocate and recover. Note that pointers
1422 ** have to be reset, or bad things will happen
1424 int yyps_index = (yyssp - yyss);
1425 int yypv_index = (yyvsp - yyvs);
1426 yystacksize += YYSTACKSIZE;
1427 ysave->yyvs = yyvs = (YYSTYPE*)realloc((char*)yyvs,
1428 yystacksize * sizeof(YYSTYPE));
1429 ysave->yyss = yyss = (short*)realloc((char*)yyss,
1430 yystacksize * sizeof(short));
1433 yyssp = yyss + yyps_index;
1434 yyvsp = yyvs + yypv_index;
1436 *++yyssp = yystate = yytable[yyn];
1444 PerlIO_printf(Perl_debug_log,
1445 "yydebug: error recovery discarding state %d\n",
1448 if (yyssp <= yyss) goto yyabort;
1456 if (yychar == 0) goto yyabort;
1461 if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
1462 if (!yys) yys = "illegal-symbol";
1463 PerlIO_printf(Perl_debug_log,
1464 "yydebug: state %d, error recovery discards token %d (%s)\n",
1465 yystate, yychar, yys);
1474 PerlIO_printf(Perl_debug_log, "yydebug: state %d, reducing by rule %d (%s)\n",
1475 yystate, yyn, yyrule[yyn]);
1478 yyval = yyvsp[1-yym];
1484 #if defined(YYDEBUG) && defined(DEBUGGING)
1485 yydebug = (debug & 1);
1492 { newPROG(yyvsp[0].opval); }
1496 { yyval.opval = block_end(yyvsp[-3].ival,yyvsp[-2].ival,yyvsp[-1].opval); }
1500 { yyval.ival = block_start(TRUE); }
1504 { if (yyvsp[-3].opval)
1505 yyvsp[-1].opval = yyvsp[-1].opval ? append_list(OP_LINESEQ,
1506 (LISTOP*)yyvsp[-3].opval, (LISTOP*)yyvsp[-1].opval) : yyvsp[-3].opval;
1507 yyval.opval = block_end(yyvsp[-4].ival, yyvsp[-2].ival, yyvsp[-1].opval); }
1511 { yyval.opval = min_intro_pending
1512 ? newSTATEOP(0, Nullch, newOP(OP_NULL, 0))
1517 { yyval.ival = block_start(FALSE); }
1521 { yyval.opval = Nullop; }
1525 { yyval.opval = yyvsp[-1].opval; }
1529 { yyval.opval = append_list(OP_LINESEQ,
1530 (LISTOP*)yyvsp[-1].opval, (LISTOP*)yyvsp[0].opval);
1531 pad_reset_pending = TRUE;
1532 if (yyvsp[-1].opval && yyvsp[0].opval) hints |= HINT_BLOCK_SCOPE; }
1536 { yyval.opval = newSTATEOP(0, yyvsp[-1].pval, yyvsp[0].opval); }
1540 { if (yyvsp[-1].pval != Nullch) {
1541 yyval.opval = newSTATEOP(0, yyvsp[-1].pval, newOP(OP_NULL, 0));
1544 yyval.opval = Nullop;
1551 { yyval.opval = newSTATEOP(0, yyvsp[-2].pval, yyvsp[-1].opval);
1556 { yyval.opval = Nullop; }
1560 { yyval.opval = yyvsp[0].opval; }
1564 { yyval.opval = newLOGOP(OP_AND, 0, yyvsp[0].opval, yyvsp[-2].opval); }
1568 { yyval.opval = newLOGOP(OP_OR, 0, yyvsp[0].opval, yyvsp[-2].opval); }
1572 { yyval.opval = newLOOPOP(OPf_PARENS, 1, scalar(yyvsp[0].opval), yyvsp[-2].opval); }
1576 { yyval.opval = newLOOPOP(OPf_PARENS, 1, yyvsp[0].opval, yyvsp[-2].opval);}
1580 { yyval.opval = Nullop; }
1584 { yyval.opval = scope(yyvsp[0].opval); }
1588 { copline = yyvsp[-5].ival;
1589 yyval.opval = newCONDOP(0, yyvsp[-3].opval, scope(yyvsp[-1].opval), yyvsp[0].opval);
1590 hints |= HINT_BLOCK_SCOPE; }
1594 { copline = yyvsp[-6].ival;
1595 yyval.opval = block_end(yyvsp[-6].ival, yyvsp[-4].ival,
1596 newCONDOP(0, yyvsp[-3].opval, scope(yyvsp[-1].opval), yyvsp[0].opval)); }
1600 { copline = yyvsp[-6].ival;
1601 yyval.opval = block_end(yyvsp[-6].ival, yyvsp[-4].ival,
1602 newCONDOP(0, yyvsp[-3].opval, scope(yyvsp[-1].opval), yyvsp[0].opval)); }
1606 { copline = yyvsp[-3].ival;
1607 deprecate("if BLOCK BLOCK");
1608 yyval.opval = newCONDOP(0, scope(yyvsp[-2].opval), scope(yyvsp[-1].opval), yyvsp[0].opval); }
1612 { copline = yyvsp[-3].ival;
1613 deprecate("unless BLOCK BLOCK");
1614 yyval.opval = newCONDOP(0, invert(scalar(scope(yyvsp[-2].opval))),
1615 scope(yyvsp[-1].opval), yyvsp[0].opval); }
1619 { yyval.opval = Nullop; }
1623 { yyval.opval = scope(yyvsp[0].opval); }
1627 { copline = yyvsp[-6].ival;
1628 yyval.opval = block_end(yyvsp[-6].ival, yyvsp[-4].ival,
1629 newSTATEOP(0, yyvsp[-7].pval,
1630 newWHILEOP(0, 1, (LOOP*)Nullop,
1631 yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval) )); }
1635 { copline = yyvsp[-6].ival;
1636 yyval.opval = block_end(yyvsp[-6].ival, yyvsp[-4].ival,
1637 newSTATEOP(0, yyvsp[-7].pval,
1638 newWHILEOP(0, 1, (LOOP*)Nullop,
1639 yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval) )); }
1643 { copline = yyvsp[-3].ival;
1644 yyval.opval = newSTATEOP(0, yyvsp[-4].pval,
1645 newWHILEOP(0, 1, (LOOP*)Nullop,
1646 scope(yyvsp[-2].opval), yyvsp[-1].opval, yyvsp[0].opval) ); }
1650 { copline = yyvsp[-3].ival;
1651 yyval.opval = newSTATEOP(0, yyvsp[-4].pval,
1652 newWHILEOP(0, 1, (LOOP*)Nullop,
1653 invert(scalar(scope(yyvsp[-2].opval))), yyvsp[-1].opval, yyvsp[0].opval)); }
1657 { yyval.opval = block_end(yyvsp[-8].ival, yyvsp[-6].ival,
1658 newFOROP(0, yyvsp[-9].pval, yyvsp[-8].ival, yyvsp[-5].opval, yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval)); }
1662 { yyval.opval = newFOROP(0, yyvsp[-7].pval, yyvsp[-6].ival, mod(yyvsp[-5].opval, OP_ENTERLOOP),
1663 yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval); }
1667 { yyval.opval = block_end(yyvsp[-6].ival, yyvsp[-4].ival,
1668 newFOROP(0, yyvsp[-7].pval, yyvsp[-6].ival, Nullop, yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval)); }
1672 { if (yyvsp[-1].opval) {
1673 yyvsp[-1].opval = scalar(yyvsp[-1].opval);
1674 if (min_intro_pending)
1675 yyvsp[-1].opval = newSTATEOP(0, Nullch, yyvsp[-1].opval); } }
1679 { yyvsp[-1].opval = scalar(yyvsp[-1].opval);
1680 if (min_intro_pending)
1681 yyvsp[-1].opval = newSTATEOP(0, Nullch, yyvsp[-1].opval); }
1685 { copline = yyvsp[-11].ival;
1686 yyval.opval = block_end(yyvsp[-11].ival, yyvsp[-9].ival,
1687 append_elem(OP_LINESEQ, yyvsp[-8].opval,
1688 newSTATEOP(0, yyvsp[-12].pval,
1689 newWHILEOP(0, 1, (LOOP*)Nullop,
1690 yyvsp[-5].opval, yyvsp[0].opval, scalar(yyvsp[-2].opval))))); }
1694 { yyval.opval = newSTATEOP(0,
1695 yyvsp[-2].pval, newWHILEOP(0, 1, (LOOP*)Nullop,
1696 Nullop, yyvsp[-1].opval, yyvsp[0].opval)); }
1700 { yyval.opval = Nullop; }
1704 { (void)scan_num("1"); yyval.opval = yylval.opval; }
1708 { yyval.opval = invert(scalar(yyvsp[0].opval)); }
1712 { yyval.opval = min_intro_pending
1713 ? newSTATEOP(0, Nullch, yyvsp[0].opval) : yyvsp[0].opval; }
1717 { yyval.opval = min_intro_pending
1718 ? newSTATEOP(0, Nullch, yyvsp[0].opval) : yyvsp[0].opval; }
1722 { yyval.opval = min_intro_pending
1723 ? newSTATEOP(0, Nullch, yyvsp[0].opval) : yyvsp[0].opval; }
1727 { yyval.pval = Nullch; }
1747 { newFORM(yyvsp[-2].ival, yyvsp[-1].opval, yyvsp[0].opval); }
1751 { newFORM(yyvsp[-1].ival, Nullop, yyvsp[0].opval); }
1755 { newSUB(yyvsp[-3].ival, yyvsp[-2].opval, yyvsp[-1].opval, yyvsp[0].opval); }
1759 { newSUB(yyvsp[-3].ival, yyvsp[-2].opval, yyvsp[-1].opval, Nullop); expect = XSTATE; }
1763 { yyval.opval = Nullop; }
1767 { yyval.ival = start_subparse(); }
1771 { package(yyvsp[-1].opval); }
1775 { package(Nullop); }
1779 { utilize(yyvsp[-5].ival, yyvsp[-4].ival, yyvsp[-3].opval, yyvsp[-2].opval, yyvsp[-1].opval); }
1783 { yyval.opval = newLOGOP(OP_AND, 0, yyvsp[-2].opval, yyvsp[0].opval); }
1787 { yyval.opval = newLOGOP(yyvsp[-1].ival, 0, yyvsp[-2].opval, yyvsp[0].opval); }
1791 { yyval.opval = yyvsp[-1].opval; }
1795 { yyval.opval = append_elem(OP_LIST, yyvsp[-2].opval, yyvsp[0].opval); }
1799 { yyval.opval = convert(yyvsp[-2].ival, OPf_STACKED,
1800 prepend_elem(OP_LIST, newGVREF(yyvsp[-2].ival,yyvsp[-1].opval), yyvsp[0].opval) ); }
1804 { yyval.opval = convert(yyvsp[-4].ival, OPf_STACKED,
1805 prepend_elem(OP_LIST, newGVREF(yyvsp[-4].ival,yyvsp[-2].opval), yyvsp[-1].opval) ); }
1809 { yyval.opval = convert(OP_ENTERSUB, OPf_STACKED,
1810 append_elem(OP_LIST,
1811 prepend_elem(OP_LIST, scalar(yyvsp[-5].opval), yyvsp[-1].opval),
1812 newUNOP(OP_METHOD, 0, yyvsp[-3].opval))); }
1816 { yyval.opval = convert(OP_ENTERSUB, OPf_STACKED,
1817 append_elem(OP_LIST,
1818 prepend_elem(OP_LIST, yyvsp[-1].opval, yyvsp[0].opval),
1819 newUNOP(OP_METHOD, 0, yyvsp[-2].opval))); }
1823 { yyval.opval = convert(OP_ENTERSUB, OPf_STACKED,
1824 append_elem(OP_LIST,
1825 prepend_elem(OP_LIST, yyvsp[-3].opval, yyvsp[-1].opval),
1826 newUNOP(OP_METHOD, 0, yyvsp[-4].opval))); }
1830 { yyval.opval = convert(yyvsp[-1].ival, 0, yyvsp[0].opval); }
1834 { yyval.opval = convert(yyvsp[-3].ival, 0, yyvsp[-1].opval); }
1838 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
1839 append_elem(OP_LIST,
1840 prepend_elem(OP_LIST, newANONSUB(yyvsp[-2].ival, 0, yyvsp[-1].opval), yyvsp[0].opval),
1841 yyvsp[-3].opval)); }
1845 { yyval.opval = newASSIGNOP(OPf_STACKED, yyvsp[-2].opval, yyvsp[-1].ival, yyvsp[0].opval); }
1849 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1853 { if (yyvsp[-1].ival != OP_REPEAT)
1854 scalar(yyvsp[-2].opval);
1855 yyval.opval = newBINOP(yyvsp[-1].ival, 0, yyvsp[-2].opval, scalar(yyvsp[0].opval)); }
1859 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1863 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1867 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1871 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1875 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1879 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1883 { yyval.opval = newRANGE(yyvsp[-1].ival, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval));}
1887 { yyval.opval = newLOGOP(OP_AND, 0, yyvsp[-2].opval, yyvsp[0].opval); }
1891 { yyval.opval = newLOGOP(OP_OR, 0, yyvsp[-2].opval, yyvsp[0].opval); }
1895 { yyval.opval = newCONDOP(0, yyvsp[-4].opval, yyvsp[-2].opval, yyvsp[0].opval); }
1899 { yyval.opval = bind_match(yyvsp[-1].ival, yyvsp[-2].opval, yyvsp[0].opval); }
1903 { yyval.opval = newUNOP(OP_NEGATE, 0, scalar(yyvsp[0].opval)); }
1907 { yyval.opval = yyvsp[0].opval; }
1911 { yyval.opval = newUNOP(OP_NOT, 0, scalar(yyvsp[0].opval)); }
1915 { yyval.opval = newUNOP(OP_COMPLEMENT, 0, scalar(yyvsp[0].opval));}
1919 { yyval.opval = newUNOP(OP_REFGEN, 0, mod(yyvsp[0].opval,OP_REFGEN)); }
1923 { yyval.opval = newUNOP(OP_POSTINC, 0,
1924 mod(scalar(yyvsp[-1].opval), OP_POSTINC)); }
1928 { yyval.opval = newUNOP(OP_POSTDEC, 0,
1929 mod(scalar(yyvsp[-1].opval), OP_POSTDEC)); }
1933 { yyval.opval = newUNOP(OP_PREINC, 0,
1934 mod(scalar(yyvsp[0].opval), OP_PREINC)); }
1938 { yyval.opval = newUNOP(OP_PREDEC, 0,
1939 mod(scalar(yyvsp[0].opval), OP_PREDEC)); }
1943 { yyval.opval = localize(yyvsp[0].opval,yyvsp[-1].ival); }
1947 { yyval.opval = sawparens(yyvsp[-1].opval); }
1951 { yyval.opval = sawparens(newNULLLIST()); }
1955 { yyval.opval = newANONLIST(yyvsp[-1].opval); }
1959 { yyval.opval = newANONLIST(Nullop); }
1963 { yyval.opval = newANONHASH(yyvsp[-2].opval); }
1967 { yyval.opval = newANONHASH(Nullop); }
1971 { yyval.opval = newANONSUB(yyvsp[-2].ival, yyvsp[-1].opval, yyvsp[0].opval); }
1975 { yyval.opval = yyvsp[0].opval; }
1979 { yyval.opval = newBINOP(OP_GELEM, 0, newGVREF(0,yyvsp[-4].opval), yyvsp[-2].opval); }
1983 { yyval.opval = yyvsp[0].opval; }
1987 { yyval.opval = newBINOP(OP_AELEM, 0, oopsAV(yyvsp[-3].opval), scalar(yyvsp[-1].opval)); }
1991 { yyval.opval = newBINOP(OP_AELEM, 0,
1992 ref(newAVREF(yyvsp[-4].opval),OP_RV2AV),
1993 scalar(yyvsp[-1].opval));}
1997 { assertref(yyvsp[-3].opval); yyval.opval = newBINOP(OP_AELEM, 0,
1998 ref(newAVREF(yyvsp[-3].opval),OP_RV2AV),
1999 scalar(yyvsp[-1].opval));}
2003 { yyval.opval = yyvsp[0].opval; }
2007 { yyval.opval = yyvsp[0].opval; }
2011 { yyval.opval = newUNOP(OP_AV2ARYLEN, 0, ref(yyvsp[0].opval, OP_AV2ARYLEN));}
2015 { yyval.opval = newBINOP(OP_HELEM, 0, oopsHV(yyvsp[-4].opval), jmaybe(yyvsp[-2].opval));
2016 expect = XOPERATOR; }
2020 { yyval.opval = newBINOP(OP_HELEM, 0,
2021 ref(newHVREF(yyvsp[-5].opval),OP_RV2HV),
2022 jmaybe(yyvsp[-2].opval));
2023 expect = XOPERATOR; }
2027 { assertref(yyvsp[-4].opval); yyval.opval = newBINOP(OP_HELEM, 0,
2028 ref(newHVREF(yyvsp[-4].opval),OP_RV2HV),
2029 jmaybe(yyvsp[-2].opval));
2030 expect = XOPERATOR; }
2034 { yyval.opval = newSLICEOP(0, yyvsp[-1].opval, yyvsp[-4].opval); }
2038 { yyval.opval = newSLICEOP(0, yyvsp[-1].opval, Nullop); }
2042 { yyval.opval = prepend_elem(OP_ASLICE,
2043 newOP(OP_PUSHMARK, 0),
2044 newLISTOP(OP_ASLICE, 0,
2045 list(yyvsp[-1].opval),
2046 ref(yyvsp[-3].opval, OP_ASLICE))); }
2050 { yyval.opval = prepend_elem(OP_HSLICE,
2051 newOP(OP_PUSHMARK, 0),
2052 newLISTOP(OP_HSLICE, 0,
2053 list(yyvsp[-2].opval),
2054 ref(oopsHV(yyvsp[-4].opval), OP_HSLICE)));
2055 expect = XOPERATOR; }
2059 { yyval.opval = yyvsp[0].opval; }
2063 { yyval.opval = newUNOP(OP_ENTERSUB, 0, scalar(yyvsp[0].opval)); }
2067 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED, scalar(yyvsp[-2].opval)); }
2071 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2072 append_elem(OP_LIST, yyvsp[-1].opval, scalar(yyvsp[-3].opval))); }
2076 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2077 append_elem(OP_LIST, yyvsp[0].opval, scalar(yyvsp[-1].opval))); }
2081 { yyval.opval = newUNOP(OP_DOFILE, 0, scalar(yyvsp[0].opval)); }
2085 { yyval.opval = newUNOP(OP_NULL, OPf_SPECIAL, scope(yyvsp[0].opval)); }
2089 { yyval.opval = newUNOP(OP_ENTERSUB,
2090 OPf_SPECIAL|OPf_STACKED,
2091 prepend_elem(OP_LIST,
2093 (OPpENTERSUB_AMPER<<8),
2094 scalar(yyvsp[-2].opval)
2095 )),Nullop)); dep();}
2099 { yyval.opval = newUNOP(OP_ENTERSUB,
2100 OPf_SPECIAL|OPf_STACKED,
2101 append_elem(OP_LIST,
2104 (OPpENTERSUB_AMPER<<8),
2105 scalar(yyvsp[-3].opval)
2110 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_SPECIAL|OPf_STACKED,
2111 prepend_elem(OP_LIST,
2112 scalar(newCVREF(0,scalar(yyvsp[-2].opval))), Nullop)); dep();}
2116 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_SPECIAL|OPf_STACKED,
2117 prepend_elem(OP_LIST,
2119 scalar(newCVREF(0,scalar(yyvsp[-3].opval))))); dep();}
2123 { yyval.opval = newOP(yyvsp[0].ival, OPf_SPECIAL);
2124 hints |= HINT_BLOCK_SCOPE; }
2128 { yyval.opval = newLOOPEX(yyvsp[-1].ival,yyvsp[0].opval); }
2132 { yyval.opval = newUNOP(OP_NOT, 0, scalar(yyvsp[0].opval)); }
2136 { yyval.opval = newOP(yyvsp[0].ival, 0); }
2140 { yyval.opval = newUNOP(yyvsp[-1].ival, 0, yyvsp[0].opval); }
2144 { yyval.opval = newUNOP(yyvsp[-1].ival, 0, yyvsp[0].opval); }
2148 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2149 append_elem(OP_LIST, yyvsp[0].opval, scalar(yyvsp[-1].opval))); }
2153 { yyval.opval = newOP(yyvsp[0].ival, 0); }
2157 { yyval.opval = newOP(yyvsp[-2].ival, 0); }
2161 { yyval.opval = newUNOP(OP_ENTERSUB, 0,
2162 scalar(yyvsp[0].opval)); }
2166 { yyval.opval = newOP(yyvsp[-2].ival, OPf_SPECIAL); }
2170 { yyval.opval = newUNOP(yyvsp[-3].ival, 0, yyvsp[-1].opval); }
2174 { yyval.opval = pmruntime(yyvsp[-3].opval, yyvsp[-1].opval, Nullop); }
2178 { yyval.opval = pmruntime(yyvsp[-5].opval, yyvsp[-3].opval, yyvsp[-1].opval); }
2182 { yyval.opval = Nullop; }
2186 { yyval.opval = yyvsp[0].opval; }
2190 { yyval.opval = Nullop; }
2194 { yyval.opval = yyvsp[0].opval; }
2198 { yyval.opval = yyvsp[-1].opval; }
2210 { in_my = 0; yyval.opval = my(yyvsp[0].opval); }
2214 { yyval.opval = newCVREF(yyvsp[-1].ival,yyvsp[0].opval); }
2218 { yyval.opval = newSVREF(yyvsp[0].opval); }
2222 { yyval.opval = newAVREF(yyvsp[0].opval); }
2226 { yyval.opval = newHVREF(yyvsp[0].opval); }
2230 { yyval.opval = newAVREF(yyvsp[0].opval); }
2234 { yyval.opval = newGVREF(0,yyvsp[0].opval); }
2238 { yyval.opval = scalar(yyvsp[0].opval); }
2242 { yyval.opval = scalar(yyvsp[0].opval); }
2246 { yyval.opval = scope(yyvsp[0].opval); }
2250 { yyval.opval = yyvsp[0].opval; }
2252 #line 2240 "perly.c"
2258 if (yystate == 0 && yym == 0)
2262 PerlIO_printf(Perl_debug_log,
2263 "yydebug: after reduction, shifting from state 0 to state %d\n",
2271 if ((yychar = yylex()) < 0) yychar = 0;
2276 if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
2277 if (!yys) yys = "illegal-symbol";
2278 PerlIO_printf(Perl_debug_log, "yydebug: state %d, reading %d (%s)\n",
2279 YYFINAL, yychar, yys);
2283 if (yychar == 0) goto yyaccept;
2286 if ((yyn = yygindex[yym]) && (yyn += yystate) >= 0 &&
2287 yyn <= YYTABLESIZE && yycheck[yyn] == yystate)
2288 yystate = yytable[yyn];
2290 yystate = yydgoto[yym];
2293 PerlIO_printf(Perl_debug_log,
2294 "yydebug: after reduction, shifting from state %d to state %d\n",
2297 if (yyssp >= yyss + yystacksize - 1)
2300 ** reallocate and recover. Note that pointers
2301 ** have to be reset, or bad things will happen
2303 int yyps_index = (yyssp - yyss);
2304 int yypv_index = (yyvsp - yyvs);
2305 yystacksize += YYSTACKSIZE;
2306 ysave->yyvs = yyvs =
2307 (YYSTYPE*)realloc((char*)yyvs,yystacksize * sizeof(YYSTYPE));
2308 ysave->yyss = yyss =
2309 (short*)realloc((char*)yyss,yystacksize * sizeof(short));
2312 yyssp = yyss + yyps_index;
2313 yyvsp = yyvs + yypv_index;
2319 yyerror("Out of memory for yacc stack");