2 static char yysccsid[] = "@(#)yaccpar 1.8 (Berkeley) 01/20/91";
12 deprecate("\"do\" to call subroutines");
18 40, 0, 7, 5, 8, 6, 9, 9, 9, 10,
19 10, 10, 10, 22, 22, 22, 22, 22, 22, 13,
20 13, 13, 12, 12, 37, 37, 11, 11, 11, 11,
21 11, 11, 11, 24, 24, 25, 25, 26, 27, 28,
22 29, 30, 39, 39, 1, 1, 1, 1, 3, 3,
23 41, 41, 36, 36, 4, 42, 42, 43, 14, 14,
24 14, 23, 23, 23, 34, 34, 34, 34, 34, 34,
25 34, 34, 35, 35, 15, 15, 15, 15, 15, 15,
26 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
27 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
28 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
29 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
30 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
31 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
32 15, 15, 15, 15, 15, 15, 15, 15, 31, 31,
33 32, 32, 32, 2, 2, 38, 21, 16, 17, 18,
34 19, 20, 33, 33, 33, 33,
37 0, 2, 4, 0, 4, 0, 0, 2, 2, 2,
38 1, 2, 3, 1, 1, 3, 3, 3, 3, 0,
39 2, 6, 7, 7, 0, 2, 8, 8, 10, 9,
40 8, 11, 3, 0, 1, 0, 1, 1, 1, 1,
41 1, 1, 0, 1, 1, 1, 1, 1, 4, 3,
42 5, 5, 0, 1, 0, 3, 2, 6, 3, 3,
43 1, 2, 3, 1, 3, 5, 6, 3, 5, 2,
44 4, 4, 1, 1, 3, 3, 3, 3, 3, 3,
45 3, 3, 3, 3, 3, 3, 5, 3, 2, 2,
46 2, 2, 2, 2, 2, 2, 2, 2, 3, 2,
47 3, 2, 4, 3, 4, 1, 5, 1, 4, 5,
48 4, 1, 1, 1, 5, 6, 5, 6, 5, 4,
49 5, 1, 1, 3, 4, 3, 2, 2, 4, 5,
50 4, 5, 1, 2, 2, 1, 2, 2, 2, 1,
51 3, 1, 3, 4, 4, 6, 1, 1, 0, 1,
52 0, 1, 2, 1, 1, 1, 2, 2, 2, 2,
55 short yydefred[] = { 1,
56 0, 7, 0, 44, 55, 55, 0, 55, 8, 45,
57 9, 11, 0, 46, 47, 48, 0, 0, 0, 57,
58 0, 14, 4, 147, 0, 0, 122, 0, 142, 0,
59 55, 55, 0, 0, 0, 0, 0, 0, 0, 0,
60 0, 0, 0, 0, 0, 0, 0, 154, 155, 0,
61 0, 0, 0, 0, 0, 0, 0, 12, 0, 0,
62 0, 0, 0, 0, 0, 0, 0, 10, 0, 0,
63 0, 0, 112, 114, 0, 0, 0, 0, 148, 0,
64 50, 0, 56, 0, 7, 163, 166, 165, 164, 0,
65 0, 0, 0, 0, 0, 4, 4, 4, 4, 4,
66 4, 0, 0, 0, 0, 0, 137, 0, 0, 0,
67 0, 70, 0, 161, 0, 128, 0, 0, 0, 0,
68 0, 157, 0, 0, 0, 0, 0, 0, 0, 0,
69 0, 0, 102, 0, 158, 159, 160, 162, 0, 0,
70 33, 0, 0, 0, 0, 0, 0, 0, 0, 0,
71 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
72 0, 0, 94, 95, 0, 0, 0, 0, 0, 0,
73 0, 0, 13, 0, 49, 54, 0, 0, 0, 68,
74 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
75 4, 141, 143, 0, 0, 0, 0, 0, 0, 0,
76 104, 0, 126, 0, 0, 101, 26, 0, 0, 19,
77 0, 0, 0, 59, 0, 0, 0, 0, 0, 0,
78 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
79 73, 0, 74, 0, 0, 0, 0, 0, 0, 0,
80 124, 0, 0, 52, 51, 0, 3, 0, 145, 0,
81 72, 105, 0, 41, 0, 42, 0, 0, 0, 0,
82 156, 0, 0, 35, 40, 0, 0, 0, 144, 153,
83 71, 0, 129, 0, 131, 0, 103, 0, 0, 0,
84 0, 0, 0, 0, 111, 0, 109, 0, 120, 0,
85 125, 58, 69, 0, 0, 0, 0, 0, 0, 0,
86 0, 0, 66, 130, 132, 119, 0, 117, 0, 0,
87 110, 0, 115, 121, 107, 146, 6, 0, 0, 0,
88 0, 0, 0, 0, 0, 118, 116, 67, 7, 27,
89 28, 0, 0, 23, 24, 0, 31, 0, 0, 0,
90 21, 0, 0, 0, 30, 5, 0, 29, 0, 0,
93 short yydgoto[] = { 1,
94 9, 66, 10, 17, 85, 329, 88, 318, 3, 11,
95 12, 68, 334, 258, 70, 71, 72, 73, 74, 75,
96 76, 264, 78, 265, 254, 256, 259, 267, 255, 257,
97 112, 196, 90, 79, 234, 177, 141, 262, 13, 2,
100 short yysindex[] = { 0,
101 0, 0, 236, 0, 0, 0, -45, 0, 0, 0,
102 0, 0, 557, 0, 0, 0, -106, -232, -20, 0,
103 -216, 0, 0, 0, -8, -8, 0, 9, 0, 1840,
104 0, 0, 11, 15, 19, 22, -33, 1840, 38, 47,
105 51, 933, 877, -8, 996, 1260, -212, 0, 0, -8,
106 1840, 1840, 1840, 1840, 1840, 1840, 1316, 0, 1840, 1840,
107 1372, -8, -8, -8, -8, 1840, -193, 0, 273, 3713,
108 -67, -55, 0, 0, -26, 72, 57, 59, 0, 3,
109 0, -137, 0, -130, 0, 0, 0, 0, 0, 1840,
110 96, 1840, 1871, 3, -137, 0, 0, 0, 0, 0,
111 0, 97, 3713, 99, 1431, 877, 0, 1871, 0, -67,
112 59, 0, 1840, 0, 106, 0, 1871, -25, 27, 52,
113 1840, 0, 59, 98, 98, 98, -85, -85, 74, -40,
114 98, 98, 0, -88, 0, 0, 0, 0, 1871, 3,
115 0, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840,
116 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840,
117 1840, 1840, 0, 0, -34, 1840, 1840, 1840, 1840, 1840,
118 1840, 1606, 0, 1840, 0, 0, -51, 1840, 242, 0,
119 1840, 1089, 1840, 3, 1840, 1840, 1840, 1840, 130, 1665,
120 0, 0, 0, -30, 44, 126, 1840, 59, 1721, 1777,
121 0, 53, 0, 1840, 79, 0, 0, -244, -244, 0,
122 -244, -244, -127, 0, 54, 1027, 1871, 756, 360, 869,
123 3713, 3679, 3540, 3764, 1195, 340, 1054, 98, 98, 1840,
124 0, 1840, 0, 134, -83, 58, -75, 60, -71, 62,
125 0, -18, 3713, 0, 0, 117, 0, 138, 0, 1840,
126 0, 0, -244, 0, 139, 0, 140, -244, 141, 142,
127 0, 145, 273, 0, 0, 149, 136, 1840, 0, 0,
128 0, -15, 0, 40, 0, 42, 0, -59, 1840, 68,
129 1840, 85, 46, 1840, 0, 75, 0, 77, 0, 80,
130 0, 0, 0, 1143, 84, 84, 84, 84, 1840, 84,
131 1840, 167, 0, 0, 0, 0, 95, 0, 263, 86,
132 0, 172, 0, 0, 0, 0, 0, -193, -193, -177,
133 -177, 175, -193, 159, 84, 0, 0, 0, 0, 0,
134 0, 84, 194, 0, 0, 84, 0, 1665, -193, 256,
135 0, 1840, -193, 191, 0, 0, 196, 0, 84, 84,
138 short yyrindex[] = { 0,
139 0, 0, 161, 0, 0, 0, 0, 0, 0, 0,
140 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
141 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
142 0, 0, 0, 0, 0, 0, 0, 2100, 1930, 0,
143 0, 2740, 2808, 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, 37, 0, -9, 3616,
146 2851, 2895, 0, 0, 2166, 1989, 0, 17, 0, 0,
147 0, -39, 0, 0, 0, 0, 0, 0, 0, 2225,
148 0, 0, 3367, 0, 112, 0, 0, 0, 0, 0,
149 0, 0, 3635, 0, 0, 215, 0, 3410, 437, 498,
150 2336, 0, 0, 0, 2052, 0, 3448, 2851, 0, 0,
151 2225, 0, 2461, 2938, 2976, 3014, -28, 600, 2504, 0,
152 3087, 3131, 0, 0, 0, 0, 0, 0, 3486, 0,
153 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
154 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
155 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
156 0, 0, 0, 2572, 0, 0, 0, 205, 821, 0,
157 215, 0, 2225, 0, 245, 0, 0, 0, 0, 240,
158 0, 0, 0, 0, 272, 0, 0, 2615, 0, 0,
159 0, 0, 0, 0, 2659, 0, 0, 5, 45, 0,
160 49, 61, -32, 0, 0, 192, 1472, 1528, 3250, 3286,
161 3645, 0, 2514, 3603, 3559, 3522, 3323, 3174, 3212, 0,
162 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
163 0, 0, 3675, 0, 0, 0, 0, 0, 0, 0,
164 0, 0, 65, 0, 0, 0, 0, 277, 0, 0,
165 0, 0, 66, 0, 0, 0, 0, 0, 0, 0,
166 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
167 0, 0, 0, 215, 0, 0, 0, 0, 0, 0,
168 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
169 265, 0, 0, 0, 0, 0, 0, 0, 1894, 0,
170 0, 0, 0, 0, 0, 0, 0, 37, 37, 105,
171 105, 0, 37, 0, 0, 0, 0, 0, 0, 0,
172 0, 0, 0, 0, 0, 0, 0, 286, 37, 821,
173 0, 0, 37, 0, 0, 0, 0, 0, 0, 0,
176 short yygindex[] = { 0,
177 0, 0, 0, 63, 418, 0, 914, 335, -81, 0,
178 0, 0, -292, -13, 3885, 2516, 0, 0, 0, 0,
179 0, 321, 530, 0, 0, 203, -150, -3, 93, 165,
180 -69, -162, 575, 0, 0, 300, -276, 0, 0, 0,
183 #define YYTABLESIZE 4166
184 short yytable[] = { 69,
185 205, 62, 62, 179, 206, 166, 101, 244, 60, 285,
186 269, 60, 96, 20, 200, 96, 23, 287, 248, 53,
187 180, 289, 291, 168, 82, 303, 60, 62, 335, 96,
188 96, 15, 120, 306, 96, 170, 25, 148, 83, 266,
189 84, 330, 331, 130, 121, 18, 337, 134, 92, 15,
190 96, 203, 146, 147, 97, 167, 232, 61, 98, 353,
191 60, 99, 345, 18, 96, 168, 348, 169, 18, 25,
192 21, 23, 25, 25, 25, 61, 25, 104, 25, 25,
193 304, 25, 305, 53, 140, 38, 105, 270, 230, 16,
194 106, 194, 195, 94, 95, 25, 171, 167, 332, 333,
195 25, 17, 174, 38, 20, 37, 39, 16, 246, 61,
196 202, 172, 280, 251, 23, 173, 286, 302, 288, 17,
197 290, 312, 176, 37, 15, 23, 178, 25, 208, 209,
198 211, 212, 213, 214, 215, 181, 191, 20, 311, 192,
199 20, 20, 20, 310, 20, 199, 20, 20, 322, 20,
200 80, 201, 235, 236, 237, 238, 239, 240, 242, 25,
201 2, 25, 25, 20, 204, 62, 271, 195, 20, 279,
202 147, 253, 209, 284, 209, 292, 263, 277, 293, 295,
203 296, 297, 298, 272, 299, 274, 276, 326, 166, 300,
204 278, 347, 308, 43, 301, 20, 43, 43, 43, 313,
205 43, 314, 43, 43, 315, 43, 317, 325, 146, 147,
206 327, 19, 328, 146, 147, 336, 282, 338, 283, 43,
207 148, 146, 147, 231, 43, 146, 147, 20, 165, 20,
208 20, 349, 84, 342, 53, 84, 350, 146, 147, 60,
209 60, 60, 60, 96, 96, 96, 96, 340, 86, 84,
210 84, 43, 96, 87, 84, 151, 146, 147, 96, 96,
211 96, 96, 100, 149, 60, 307, 146, 147, 96, 96,
212 195, 96, 96, 96, 96, 96, 96, 96, 146, 147,
213 96, 146, 147, 43, 84, 36, 43, 253, 61, 61,
214 61, 61, 25, 25, 25, 25, 25, 25, 34, 25,
215 25, 25, 25, 25, 25, 25, 25, 25, 25, 25,
216 25, 25, 152, 61, 61, 25, 25, 39, 25, 25,
217 25, 25, 25, 36, 69, 155, 34, 25, 25, 25,
218 25, 25, 25, 77, 344, 25, 146, 147, 146, 147,
219 146, 147, 146, 147, 25, 210, 25, 25, 146, 147,
220 146, 147, 260, 166, 146, 147, 146, 147, 146, 147,
221 20, 20, 20, 20, 20, 20, 247, 20, 20, 20,
222 20, 20, 20, 20, 20, 20, 20, 20, 20, 20,
223 346, 146, 147, 20, 20, 148, 20, 20, 20, 20,
224 20, 146, 147, 324, 184, 20, 20, 20, 20, 20,
225 20, 0, 0, 20, 0, 0, 162, 0, 0, 163,
226 164, 165, 20, 0, 20, 20, 43, 43, 43, 43,
227 43, 43, 0, 43, 43, 43, 0, 0, 0, 43,
228 166, 0, 43, 43, 43, 43, 0, 0, 0, 43,
229 43, 0, 43, 43, 43, 43, 43, 0, 0, 0,
230 166, 43, 43, 43, 43, 43, 43, 0, 0, 43,
231 0, 0, 148, 84, 84, 84, 84, 0, 43, 163,
232 43, 43, 163, 163, 163, 0, 163, 147, 163, 163,
233 147, 163, 148, 0, 0, 0, 0, 0, 84, 84,
234 0, 84, 0, 0, 147, 147, 0, 0, 0, 147,
235 163, 4, 5, 6, 0, 7, 8, 4, 5, 6,
236 0, 7, 8, 185, 186, 187, 188, 189, 190, 0,
237 0, 4, 5, 6, 0, 7, 8, 147, 0, 147,
238 164, 0, 0, 164, 164, 164, 0, 164, 106, 164,
239 164, 106, 164, 149, 142, 143, 144, 145, 0, 150,
240 151, 152, 153, 0, 0, 106, 106, 0, 0, 147,
241 106, 164, 163, 156, 157, 158, 159, 160, 161, 146,
242 147, 162, 111, 0, 163, 164, 165, 0, 0, 0,
243 123, 0, 0, 0, 0, 0, 0, 0, 0, 52,
244 106, 0, 62, 64, 50, 0, 57, 0, 65, 60,
245 91, 59, 0, 0, 0, 0, 0, 0, 268, 0,
246 0, 0, 0, 0, 0, 58, 0, 113, 114, 111,
247 63, 0, 0, 164, 122, 0, 150, 151, 152, 153,
248 319, 320, 321, 0, 323, 0, 135, 136, 137, 138,
249 97, 0, 198, 97, 160, 161, 0, 61, 162, 0,
250 111, 163, 164, 165, 0, 0, 0, 97, 97, 339,
251 0, 0, 97, 0, 0, 161, 341, 0, 162, 0,
252 343, 163, 164, 165, 0, 0, 0, 0, 0, 23,
253 197, 0, 53, 351, 352, 0, 0, 0, 0, 0,
254 0, 0, 97, 163, 163, 163, 163, 163, 0, 163,
255 163, 163, 0, 0, 0, 163, 0, 111, 147, 147,
256 147, 147, 111, 0, 0, 0, 163, 147, 163, 163,
257 163, 163, 163, 147, 147, 147, 147, 163, 163, 163,
258 163, 163, 163, 147, 147, 163, 147, 147, 147, 147,
259 147, 147, 147, 0, 163, 147, 163, 163, 147, 147,
260 147, 0, 0, 0, 164, 164, 164, 164, 164, 0,
261 164, 164, 164, 0, 0, 0, 164, 0, 0, 106,
262 106, 106, 106, 0, 0, 0, 0, 164, 106, 164,
263 164, 164, 164, 164, 106, 106, 106, 106, 164, 164,
264 164, 164, 164, 164, 106, 106, 164, 106, 106, 106,
265 106, 106, 106, 106, 0, 164, 106, 164, 164, 106,
266 106, 106, 22, 24, 25, 26, 27, 28, 0, 29,
267 30, 31, 0, 0, 0, 32, 0, 0, 33, 34,
268 35, 36, 0, 0, 0, 37, 38, 0, 39, 40,
269 41, 42, 43, 0, 0, 0, 166, 44, 45, 46,
270 47, 48, 49, 43, 0, 51, 43, 43, 43, 0,
271 43, 0, 43, 43, 54, 43, 55, 56, 0, 0,
272 0, 97, 97, 97, 97, 0, 0, 0, 148, 43,
273 97, 0, 0, 0, 43, 0, 97, 97, 97, 97,
274 0, 0, 0, 0, 0, 0, 97, 97, 0, 97,
275 97, 97, 97, 97, 97, 97, 0, 0, 97, 52,
276 0, 43, 62, 64, 50, 0, 57, 0, 65, 60,
277 0, 59, 0, 0, 0, 0, 67, 0, 0, 0,
278 81, 0, 0, 0, 0, 0, 0, 0, 0, 0,
279 63, 0, 0, 43, 0, 0, 43, 0, 0, 0,
280 0, 0, 0, 0, 0, 107, 0, 0, 116, 166,
281 0, 0, 0, 0, 0, 52, 0, 61, 62, 64,
282 50, 0, 57, 0, 65, 60, 0, 59, 0, 0,
283 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
284 0, 148, 0, 175, 0, 0, 63, 0, 0, 23,
285 0, 0, 53, 0, 0, 0, 0, 183, 0, 0,
286 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
287 0, 0, 0, 61, 0, 0, 0, 0, 52, 0,
288 0, 62, 64, 50, 0, 57, 0, 65, 60, 0,
289 59, 0, 150, 0, 152, 153, 0, 0, 0, 0,
290 0, 0, 0, 207, 0, 23, 0, 0, 53, 63,
291 160, 161, 0, 0, 162, 0, 0, 163, 164, 165,
292 0, 0, 0, 0, 0, 0, 43, 43, 43, 43,
293 43, 43, 0, 43, 43, 43, 61, 0, 0, 43,
294 245, 0, 43, 43, 43, 43, 0, 252, 0, 43,
295 43, 0, 43, 43, 43, 43, 43, 0, 0, 0,
296 0, 43, 43, 43, 43, 43, 43, 166, 23, 43,
297 0, 53, 0, 0, 0, 0, 0, 0, 43, 249,
298 43, 43, 250, 109, 25, 26, 27, 28, 87, 29,
299 30, 31, 0, 0, 166, 32, 0, 0, 0, 148,
300 0, 155, 0, 0, 0, 0, 38, 152, 39, 40,
301 41, 42, 43, 0, 0, 0, 0, 44, 45, 46,
302 47, 48, 49, 0, 161, 51, 148, 162, 0, 166,
303 163, 164, 165, 316, 54, 0, 55, 56, 0, 24,
304 25, 26, 27, 28, 0, 29, 30, 31, 0, 0,
305 0, 32, 0, 0, 0, 155, 0, 0, 0, 0,
306 0, 148, 38, 0, 39, 40, 41, 42, 43, 0,
307 0, 0, 0, 44, 45, 46, 47, 48, 49, 0,
308 0, 51, 0, 166, 0, 0, 0, 0, 0, 0,
309 54, 0, 55, 56, 0, 0, 0, 0, 0, 0,
310 0, 0, 115, 25, 26, 27, 28, 0, 29, 30,
311 31, 0, 0, 0, 32, 148, 0, 0, 0, 0,
312 0, 0, 0, 0, 0, 38, 0, 39, 40, 41,
313 42, 43, 0, 0, 0, 166, 44, 45, 46, 47,
314 48, 49, 52, 0, 51, 62, 64, 50, 0, 57,
315 0, 65, 60, 54, 59, 55, 56, 0, 0, 0,
316 0, 0, 0, 150, 151, 152, 153, 148, 119, 0,
317 0, 0, 0, 63, 0, 0, 0, 156, 157, 158,
318 159, 160, 161, 0, 0, 162, 0, 0, 163, 164,
319 165, 0, 152, 153, 0, 0, 0, 0, 52, 0,
320 61, 62, 64, 50, 0, 57, 129, 65, 60, 161,
321 59, 0, 162, 0, 0, 163, 164, 165, 0, 149,
322 0, 0, 0, 0, 0, 150, 151, 152, 153, 63,
323 0, 0, 0, 0, 0, 53, 0, 0, 154, 156,
324 157, 158, 159, 160, 161, 0, 0, 162, 0, 0,
325 163, 164, 165, 0, 52, 0, 61, 62, 64, 50,
326 0, 57, 0, 65, 60, 0, 59, 0, 0, 0,
327 0, 0, 0, 149, 0, 0, 0, 0, 0, 150,
328 151, 152, 153, 0, 0, 63, 0, 0, 0, 0,
329 0, 53, 154, 156, 157, 158, 159, 160, 161, 0,
330 0, 162, 0, 0, 163, 164, 165, 0, 0, 0,
331 0, 0, 61, 52, 133, 0, 62, 64, 50, 0,
332 57, 193, 65, 60, 0, 59, 0, 0, 0, 0,
333 0, 150, 151, 152, 153, 0, 0, 0, 0, 0,
334 0, 0, 0, 0, 63, 0, 0, 53, 159, 160,
335 161, 0, 0, 162, 0, 0, 163, 164, 165, 0,
336 0, 0, 80, 0, 0, 80, 24, 25, 26, 27,
337 28, 61, 29, 30, 31, 0, 0, 0, 32, 80,
338 80, 0, 0, 0, 80, 0, 0, 0, 0, 38,
339 0, 39, 40, 41, 42, 43, 0, 0, 0, 0,
340 44, 45, 46, 47, 48, 49, 53, 0, 51, 0,
341 0, 0, 0, 0, 80, 0, 0, 54, 81, 55,
342 56, 81, 24, 25, 26, 27, 28, 0, 29, 30,
343 31, 0, 0, 0, 32, 81, 81, 0, 0, 0,
344 81, 0, 0, 0, 0, 38, 0, 39, 40, 41,
345 42, 43, 0, 0, 0, 0, 44, 45, 46, 47,
346 48, 49, 0, 0, 51, 0, 0, 0, 0, 0,
347 81, 0, 0, 54, 0, 55, 56, 0, 24, 25,
348 26, 27, 28, 0, 29, 30, 31, 0, 52, 0,
349 32, 62, 64, 50, 0, 57, 241, 65, 60, 0,
350 59, 38, 0, 39, 40, 41, 42, 43, 0, 0,
351 0, 0, 44, 45, 46, 47, 48, 49, 0, 63,
352 51, 0, 0, 0, 0, 0, 0, 0, 0, 54,
353 0, 55, 56, 0, 0, 0, 0, 24, 25, 26,
354 27, 28, 0, 29, 30, 31, 61, 52, 0, 32,
355 62, 64, 50, 0, 57, 0, 65, 60, 0, 59,
356 38, 0, 39, 40, 41, 42, 43, 0, 0, 0,
357 0, 44, 45, 46, 47, 48, 49, 0, 63, 51,
358 0, 53, 0, 0, 0, 0, 0, 0, 54, 0,
359 55, 56, 0, 80, 80, 80, 80, 0, 0, 0,
360 0, 0, 80, 52, 0, 61, 62, 64, 50, 80,
361 57, 273, 65, 60, 0, 59, 0, 0, 80, 80,
362 0, 80, 80, 80, 80, 80, 0, 0, 0, 0,
363 0, 0, 0, 0, 63, 0, 0, 0, 0, 0,
364 53, 0, 0, 0, 0, 0, 0, 0, 0, 81,
365 81, 81, 81, 0, 0, 0, 0, 0, 81, 52,
366 0, 61, 62, 64, 50, 0, 57, 275, 65, 60,
367 0, 59, 0, 0, 81, 81, 0, 81, 81, 81,
368 81, 81, 0, 0, 0, 0, 0, 0, 0, 0,
369 63, 0, 0, 0, 0, 0, 53, 0, 0, 0,
370 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
371 0, 0, 24, 25, 26, 27, 28, 61, 29, 30,
372 31, 0, 52, 0, 32, 62, 64, 50, 0, 57,
373 0, 65, 60, 0, 59, 38, 0, 39, 40, 41,
374 42, 43, 0, 0, 0, 0, 44, 45, 46, 47,
375 48, 49, 53, 63, 51, 0, 0, 0, 0, 0,
376 0, 0, 0, 54, 0, 55, 56, 0, 0, 0,
377 22, 24, 25, 26, 27, 28, 0, 29, 30, 31,
378 61, 0, 0, 32, 87, 0, 0, 87, 0, 0,
379 0, 0, 0, 0, 38, 0, 39, 40, 41, 42,
380 43, 87, 87, 0, 0, 44, 45, 46, 47, 48,
381 49, 166, 0, 51, 0, 53, 0, 0, 0, 0,
382 140, 0, 54, 140, 55, 56, 0, 24, 25, 26,
383 27, 28, 0, 29, 30, 31, 87, 140, 140, 32,
384 0, 0, 140, 148, 0, 0, 0, 0, 0, 0,
385 38, 0, 39, 40, 41, 42, 43, 0, 0, 0,
386 0, 44, 45, 46, 47, 48, 49, 0, 0, 51,
387 140, 0, 140, 0, 0, 0, 0, 0, 54, 123,
388 55, 56, 123, 24, 25, 26, 27, 28, 0, 29,
389 30, 31, 0, 0, 0, 32, 123, 123, 0, 0,
390 0, 123, 140, 0, 0, 0, 38, 0, 39, 40,
391 41, 42, 43, 0, 0, 0, 0, 44, 45, 46,
392 47, 48, 49, 0, 0, 51, 0, 0, 0, 123,
393 0, 123, 0, 0, 54, 0, 55, 56, 0, 0,
394 0, 0, 147, 0, 0, 147, 24, 25, 26, 27,
395 28, 0, 29, 30, 31, 0, 0, 0, 32, 147,
396 147, 123, 0, 0, 147, 0, 0, 0, 0, 38,
397 0, 39, 40, 41, 42, 43, 0, 0, 0, 0,
398 44, 45, 46, 47, 48, 49, 0, 0, 51, 0,
399 133, 0, 147, 133, 147, 0, 0, 54, 0, 55,
400 56, 0, 0, 0, 0, 0, 0, 133, 133, 152,
401 153, 0, 133, 0, 0, 87, 87, 87, 87, 0,
402 0, 0, 0, 0, 147, 160, 161, 0, 0, 162,
403 0, 0, 163, 164, 165, 0, 0, 0, 0, 0,
404 87, 87, 133, 87, 0, 0, 0, 0, 0, 0,
405 0, 140, 140, 140, 140, 0, 108, 0, 0, 108,
406 140, 0, 0, 0, 0, 0, 140, 140, 140, 140,
407 0, 0, 133, 108, 108, 0, 140, 140, 108, 140,
408 140, 140, 140, 140, 140, 140, 0, 0, 140, 0,
409 0, 140, 140, 140, 0, 0, 0, 0, 0, 0,
410 0, 0, 0, 0, 0, 0, 108, 0, 108, 0,
411 123, 123, 123, 123, 0, 149, 0, 0, 149, 123,
412 0, 0, 0, 0, 0, 123, 123, 123, 123, 0,
413 0, 0, 149, 149, 0, 123, 123, 149, 123, 123,
414 123, 123, 123, 123, 123, 0, 0, 123, 0, 0,
415 123, 123, 123, 0, 0, 0, 0, 0, 0, 0,
416 0, 0, 0, 0, 0, 0, 0, 149, 0, 0,
417 0, 0, 0, 147, 147, 147, 147, 0, 0, 0,
418 0, 0, 147, 0, 0, 0, 0, 0, 147, 147,
419 147, 147, 0, 0, 0, 0, 0, 149, 147, 147,
420 0, 147, 147, 147, 147, 147, 147, 147, 0, 0,
421 147, 0, 0, 147, 147, 147, 0, 0, 0, 0,
422 0, 133, 133, 133, 133, 0, 150, 0, 0, 0,
423 133, 0, 0, 0, 0, 0, 133, 133, 133, 133,
424 0, 0, 0, 150, 150, 0, 133, 133, 150, 133,
425 133, 133, 133, 133, 133, 133, 0, 0, 133, 0,
426 0, 133, 133, 133, 0, 0, 0, 0, 0, 0,
427 0, 0, 0, 0, 0, 0, 150, 0, 150, 0,
428 0, 0, 0, 0, 0, 0, 0, 108, 108, 108,
429 108, 0, 0, 0, 0, 0, 108, 0, 0, 0,
430 0, 0, 108, 108, 108, 108, 0, 0, 150, 0,
431 0, 0, 108, 108, 0, 108, 108, 108, 108, 108,
432 108, 108, 0, 0, 108, 0, 0, 108, 108, 108,
433 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
434 0, 0, 0, 0, 0, 0, 149, 149, 149, 149,
435 0, 135, 0, 0, 0, 149, 0, 0, 0, 0,
436 0, 149, 149, 149, 149, 0, 0, 0, 135, 135,
437 0, 149, 149, 135, 149, 149, 149, 149, 149, 149,
438 149, 0, 0, 149, 0, 0, 149, 149, 149, 0,
439 89, 89, 0, 0, 100, 0, 0, 100, 0, 0,
440 0, 135, 102, 135, 86, 0, 0, 86, 110, 89,
441 118, 100, 100, 0, 0, 89, 100, 0, 0, 0,
442 0, 86, 86, 0, 0, 0, 86, 89, 89, 89,
443 89, 0, 0, 135, 0, 0, 0, 0, 0, 0,
444 0, 0, 0, 0, 0, 0, 100, 0, 0, 0,
445 0, 0, 0, 0, 0, 0, 86, 150, 150, 150,
446 150, 0, 62, 0, 0, 62, 150, 0, 0, 0,
447 0, 110, 150, 150, 150, 150, 100, 0, 0, 62,
448 62, 0, 150, 150, 62, 150, 150, 150, 150, 150,
449 150, 150, 0, 0, 150, 0, 0, 150, 150, 150,
450 0, 0, 0, 0, 0, 65, 0, 0, 0, 0,
451 0, 0, 0, 0, 62, 0, 0, 0, 0, 0,
452 0, 0, 65, 65, 0, 0, 0, 65, 0, 0,
453 233, 0, 0, 0, 0, 0, 0, 0, 0, 0,
454 0, 0, 0, 0, 62, 0, 0, 0, 0, 99,
455 0, 0, 99, 0, 261, 65, 0, 65, 0, 0,
456 0, 0, 0, 0, 0, 0, 99, 99, 0, 0,
457 0, 99, 0, 0, 0, 0, 0, 0, 0, 0,
458 0, 0, 135, 135, 135, 135, 0, 65, 0, 0,
459 0, 135, 0, 0, 0, 0, 0, 135, 135, 135,
460 135, 99, 0, 0, 0, 0, 0, 135, 135, 0,
461 135, 135, 135, 135, 135, 135, 135, 0, 0, 135,
462 0, 0, 135, 135, 135, 100, 100, 100, 100, 0,
463 136, 99, 0, 136, 100, 86, 86, 86, 86, 0,
464 100, 100, 100, 100, 86, 0, 0, 136, 136, 0,
465 100, 100, 136, 100, 100, 100, 100, 100, 100, 100,
466 86, 86, 100, 86, 86, 100, 100, 100, 0, 0,
467 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
468 0, 0, 136, 0, 0, 0, 0, 0, 0, 0,
469 0, 0, 0, 62, 62, 62, 62, 0, 149, 0,
470 0, 149, 62, 0, 0, 0, 0, 0, 62, 62,
471 62, 62, 0, 0, 0, 149, 149, 0, 62, 62,
472 149, 62, 62, 62, 62, 62, 62, 62, 0, 0,
473 62, 0, 0, 62, 62, 62, 65, 65, 65, 65,
474 0, 106, 0, 0, 106, 65, 0, 0, 0, 0,
475 149, 65, 65, 65, 65, 0, 0, 0, 106, 106,
476 0, 65, 65, 106, 65, 65, 65, 65, 65, 65,
477 65, 0, 0, 65, 0, 0, 65, 65, 65, 0,
478 99, 99, 99, 99, 0, 113, 0, 0, 113, 99,
479 0, 0, 0, 106, 0, 99, 99, 99, 99, 0,
480 0, 0, 113, 113, 0, 99, 99, 113, 99, 99,
481 99, 99, 99, 99, 99, 0, 0, 99, 0, 0,
482 99, 99, 99, 0, 0, 0, 0, 0, 91, 0,
483 0, 91, 0, 0, 0, 0, 0, 113, 0, 0,
484 0, 0, 0, 0, 0, 91, 91, 0, 0, 0,
485 91, 0, 0, 0, 0, 0, 0, 0, 0, 0,
486 0, 136, 136, 136, 136, 0, 92, 0, 0, 92,
487 136, 0, 0, 0, 0, 0, 136, 136, 136, 136,
488 91, 0, 0, 92, 92, 0, 136, 136, 92, 136,
489 136, 136, 136, 136, 136, 136, 0, 0, 136, 0,
490 0, 136, 136, 136, 93, 0, 0, 93, 0, 0,
491 0, 0, 0, 0, 0, 0, 0, 0, 92, 0,
492 0, 93, 93, 0, 0, 0, 93, 0, 0, 149,
493 149, 149, 149, 0, 0, 0, 0, 0, 149, 0,
494 0, 0, 0, 0, 149, 149, 149, 149, 0, 0,
495 0, 0, 0, 0, 149, 149, 93, 149, 149, 149,
496 149, 149, 149, 149, 0, 0, 149, 0, 0, 149,
497 149, 149, 106, 106, 106, 106, 0, 89, 0, 0,
498 89, 106, 0, 0, 0, 0, 0, 106, 106, 106,
499 106, 0, 0, 0, 89, 89, 0, 106, 106, 89,
500 106, 106, 106, 106, 106, 106, 106, 0, 0, 106,
501 0, 0, 106, 106, 106, 0, 113, 113, 113, 113,
502 0, 90, 0, 0, 90, 113, 0, 0, 0, 89,
503 0, 113, 113, 113, 113, 0, 0, 0, 90, 90,
504 0, 113, 113, 90, 113, 113, 113, 113, 113, 113,
505 113, 0, 0, 113, 0, 0, 113, 113, 113, 91,
506 91, 91, 91, 0, 88, 0, 0, 88, 91, 0,
507 0, 0, 0, 90, 91, 91, 91, 91, 0, 0,
508 0, 88, 88, 0, 91, 91, 88, 91, 91, 91,
509 91, 91, 91, 91, 0, 0, 0, 92, 92, 92,
510 92, 0, 76, 0, 0, 76, 92, 0, 0, 0,
511 0, 0, 92, 92, 92, 92, 88, 0, 0, 76,
512 76, 0, 92, 92, 76, 92, 92, 92, 92, 92,
513 92, 92, 0, 0, 0, 93, 93, 93, 93, 0,
514 77, 0, 0, 77, 93, 0, 0, 0, 0, 0,
515 93, 93, 93, 93, 76, 0, 0, 77, 77, 0,
516 93, 93, 77, 93, 93, 93, 93, 93, 93, 93,
517 0, 0, 0, 0, 0, 0, 78, 0, 0, 78,
518 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
519 0, 0, 77, 78, 78, 0, 0, 0, 78, 0,
520 0, 0, 0, 0, 0, 0, 0, 0, 89, 89,
521 89, 89, 0, 79, 0, 0, 79, 89, 0, 0,
522 0, 0, 0, 89, 89, 89, 89, 0, 78, 0,
523 79, 79, 0, 89, 89, 79, 89, 89, 89, 89,
524 89, 89, 89, 0, 0, 0, 0, 0, 0, 0,
525 0, 0, 90, 90, 90, 90, 0, 139, 0, 0,
526 139, 90, 0, 0, 0, 79, 0, 90, 90, 90,
527 90, 0, 0, 0, 139, 139, 0, 90, 90, 139,
528 90, 90, 90, 90, 90, 90, 90, 0, 0, 0,
529 0, 0, 0, 0, 0, 88, 88, 88, 88, 0,
530 138, 0, 0, 138, 88, 0, 0, 0, 0, 139,
531 88, 88, 88, 88, 0, 0, 0, 138, 138, 0,
532 88, 88, 138, 88, 88, 88, 88, 88, 88, 88,
533 0, 0, 0, 76, 76, 76, 76, 0, 127, 0,
534 0, 127, 76, 0, 0, 0, 0, 0, 76, 76,
535 76, 76, 138, 0, 0, 127, 127, 0, 76, 76,
536 127, 76, 76, 76, 76, 76, 76, 76, 0, 0,
537 0, 77, 77, 77, 77, 0, 98, 0, 0, 98,
538 77, 0, 0, 0, 0, 0, 77, 77, 77, 77,
539 127, 0, 0, 98, 98, 0, 77, 77, 98, 77,
540 77, 77, 77, 77, 77, 0, 0, 78, 78, 78,
541 78, 0, 82, 0, 0, 82, 78, 0, 0, 0,
542 0, 0, 78, 78, 0, 78, 0, 0, 98, 82,
543 82, 0, 78, 78, 82, 78, 78, 78, 78, 78,
544 78, 0, 0, 0, 79, 79, 79, 79, 0, 83,
545 0, 0, 83, 79, 0, 0, 0, 0, 0, 79,
546 79, 0, 0, 0, 82, 0, 83, 83, 0, 79,
547 79, 83, 79, 79, 79, 79, 79, 79, 0, 0,
548 166, 0, 0, 0, 0, 0, 0, 0, 139, 139,
549 139, 139, 0, 85, 0, 0, 85, 139, 0, 0,
550 0, 83, 0, 139, 139, 0, 64, 0, 0, 64,
551 85, 85, 148, 139, 139, 85, 139, 139, 139, 139,
552 139, 0, 0, 64, 64, 134, 0, 0, 134, 0,
553 0, 138, 138, 138, 138, 75, 0, 0, 75, 0,
554 138, 0, 134, 134, 0, 85, 138, 138, 0, 0,
555 0, 0, 75, 75, 0, 0, 138, 138, 64, 138,
556 138, 138, 138, 138, 0, 63, 0, 0, 63, 127,
557 127, 127, 127, 0, 0, 0, 0, 134, 127, 0,
558 0, 0, 63, 63, 127, 127, 281, 75, 0, 0,
559 0, 155, 0, 0, 127, 127, 0, 127, 127, 127,
560 127, 127, 0, 0, 0, 0, 0, 98, 98, 98,
561 98, 0, 0, 0, 0, 0, 98, 63, 0, 166,
562 0, 0, 98, 98, 0, 155, 0, 0, 0, 0,
563 0, 0, 98, 98, 0, 98, 98, 98, 98, 98,
564 0, 0, 0, 82, 82, 82, 82, 0, 0, 0,
565 0, 148, 82, 166, 0, 0, 0, 0, 0, 0,
566 0, 0, 0, 0, 0, 0, 0, 0, 82, 82,
567 0, 82, 82, 82, 82, 82, 150, 151, 152, 153,
568 83, 83, 83, 83, 0, 148, 0, 0, 0, 83,
569 0, 157, 158, 159, 160, 161, 0, 0, 162, 0,
570 0, 163, 164, 165, 166, 83, 83, 0, 83, 83,
571 83, 83, 0, 0, 0, 0, 0, 0, 0, 0,
572 0, 0, 0, 0, 85, 85, 85, 85, 0, 0,
573 0, 0, 0, 85, 0, 0, 148, 64, 64, 64,
574 64, 0, 0, 0, 0, 0, 0, 0, 0, 85,
575 85, 0, 85, 85, 85, 0, 134, 134, 134, 134,
576 0, 0, 64, 64, 93, 0, 75, 75, 75, 75,
577 0, 0, 103, 0, 0, 0, 108, 0, 0, 117,
578 0, 134, 134, 0, 0, 0, 124, 125, 126, 127,
579 128, 75, 75, 131, 132, 0, 63, 63, 63, 63,
580 139, 0, 0, 0, 0, 0, 0, 0, 0, 149,
581 0, 0, 0, 0, 0, 150, 151, 152, 153, 0,
582 0, 63, 63, 0, 0, 0, 182, 0, 154, 156,
583 157, 158, 159, 160, 161, 0, 0, 162, 0, 0,
584 163, 164, 165, 149, 0, 0, 0, 0, 0, 150,
585 151, 152, 153, 0, 0, 0, 0, 0, 0, 0,
586 0, 0, 154, 156, 157, 158, 159, 160, 161, 0,
587 0, 162, 0, 0, 163, 164, 165, 0, 0, 0,
588 0, 0, 0, 216, 217, 218, 219, 220, 221, 222,
589 223, 224, 225, 226, 227, 228, 229, 0, 0, 0,
590 150, 151, 152, 153, 0, 0, 0, 0, 243, 0,
591 0, 0, 0, 0, 0, 0, 158, 159, 160, 161,
592 0, 0, 162, 0, 0, 163, 164, 165, 0, 0,
593 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
594 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
595 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
596 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
597 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
598 0, 0, 0, 0, 294, 0, 0, 0, 0, 0,
599 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
600 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
603 short yycheck[] = { 13,
604 41, 36, 36, 85, 93, 91, 40, 59, 41, 93,
605 41, 44, 41, 59, 40, 44, 123, 93, 181, 59,
606 90, 93, 41, 91, 257, 41, 59, 36, 321, 58,
607 59, 41, 46, 93, 63, 91, 0, 123, 59, 190,
608 257, 318, 319, 57, 257, 41, 323, 61, 40, 59,
609 40, 121, 297, 298, 40, 123, 91, 41, 40, 352,
610 93, 40, 339, 59, 93, 91, 343, 123, 6, 33,
611 8, 123, 36, 37, 38, 59, 40, 40, 42, 43,
612 41, 45, 41, 123, 278, 41, 40, 44, 123, 41,
613 40, 105, 106, 31, 32, 59, 123, 123, 276, 277,
614 64, 41, 44, 59, 0, 41, 41, 59, 178, 93,
615 59, 40, 59, 183, 123, 59, 59, 268, 59, 59,
616 59, 284, 260, 59, 59, 123, 257, 91, 142, 143,
617 144, 145, 146, 147, 148, 40, 40, 33, 93, 41,
618 36, 37, 38, 59, 40, 40, 42, 43, 299, 45,
619 257, 125, 166, 167, 168, 169, 170, 171, 172, 123,
620 0, 125, 126, 59, 91, 36, 41, 181, 64, 91,
621 298, 185, 186, 40, 188, 59, 190, 125, 41, 41,
622 41, 41, 41, 197, 40, 199, 200, 93, 91, 41,
623 204, 342, 125, 33, 59, 91, 36, 37, 38, 125,
624 40, 125, 42, 43, 125, 45, 123, 41, 297, 298,
625 125, 257, 41, 297, 298, 41, 230, 59, 232, 59,
626 123, 297, 298, 258, 64, 297, 298, 123, 314, 125,
627 126, 41, 41, 40, 123, 44, 41, 297, 298, 272,
628 273, 274, 275, 272, 273, 274, 275, 329, 257, 58,
629 59, 91, 281, 262, 63, 41, 297, 298, 287, 288,
630 289, 290, 296, 59, 297, 279, 297, 298, 297, 298,
631 284, 300, 301, 302, 303, 304, 305, 306, 297, 298,
632 309, 297, 298, 123, 93, 41, 126, 301, 272, 273,
633 274, 275, 256, 257, 258, 259, 260, 261, 59, 263,
634 264, 265, 266, 267, 268, 269, 270, 271, 272, 273,
635 274, 275, 41, 297, 298, 279, 280, 41, 282, 283,
636 284, 285, 286, 59, 338, 63, 41, 291, 292, 293,
637 294, 295, 296, 13, 338, 299, 297, 298, 297, 298,
638 297, 298, 297, 298, 308, 143, 310, 311, 297, 298,
639 297, 298, 188, 91, 297, 298, 297, 298, 297, 298,
640 256, 257, 258, 259, 260, 261, 125, 263, 264, 265,
641 266, 267, 268, 269, 270, 271, 272, 273, 274, 275,
642 125, 297, 298, 279, 280, 123, 282, 283, 284, 285,
643 286, 297, 298, 301, 95, 291, 292, 293, 294, 295,
644 296, -1, -1, 299, -1, -1, 309, -1, -1, 312,
645 313, 314, 308, -1, 310, 311, 256, 257, 258, 259,
646 260, 261, -1, 263, 264, 265, -1, -1, -1, 269,
647 91, -1, 272, 273, 274, 275, -1, -1, -1, 279,
648 280, -1, 282, 283, 284, 285, 286, -1, -1, -1,
649 91, 291, 292, 293, 294, 295, 296, -1, -1, 299,
650 -1, -1, 123, 272, 273, 274, 275, -1, 308, 33,
651 310, 311, 36, 37, 38, -1, 40, 41, 42, 43,
652 44, 45, 123, -1, -1, -1, -1, -1, 297, 298,
653 -1, 300, -1, -1, 58, 59, -1, -1, -1, 63,
654 64, 266, 267, 268, -1, 270, 271, 266, 267, 268,
655 -1, 270, 271, 96, 97, 98, 99, 100, 101, -1,
656 -1, 266, 267, 268, -1, 270, 271, 91, -1, 93,
657 33, -1, -1, 36, 37, 38, -1, 40, 41, 42,
658 43, 44, 45, 281, 272, 273, 274, 275, -1, 287,
659 288, 289, 290, -1, -1, 58, 59, -1, -1, 123,
660 63, 64, 126, 301, 302, 303, 304, 305, 306, 297,
661 298, 309, 43, -1, 312, 313, 314, -1, -1, -1,
662 51, -1, -1, -1, -1, -1, -1, -1, -1, 33,
663 93, -1, 36, 37, 38, -1, 40, -1, 42, 43,
664 26, 45, -1, -1, -1, -1, -1, -1, 191, -1,
665 -1, -1, -1, -1, -1, 59, -1, 43, 44, 90,
666 64, -1, -1, 126, 50, -1, 287, 288, 289, 290,
667 296, 297, 298, -1, 300, -1, 62, 63, 64, 65,
668 41, -1, 113, 44, 305, 306, -1, 91, 309, -1,
669 121, 312, 313, 314, -1, -1, -1, 58, 59, 325,
670 -1, -1, 63, -1, -1, 306, 332, -1, 309, -1,
671 336, 312, 313, 314, -1, -1, -1, -1, -1, 123,
672 106, -1, 126, 349, 350, -1, -1, -1, -1, -1,
673 -1, -1, 93, 257, 258, 259, 260, 261, -1, 263,
674 264, 265, -1, -1, -1, 269, -1, 178, 272, 273,
675 274, 275, 183, -1, -1, -1, 280, 281, 282, 283,
676 284, 285, 286, 287, 288, 289, 290, 291, 292, 293,
677 294, 295, 296, 297, 298, 299, 300, 301, 302, 303,
678 304, 305, 306, -1, 308, 309, 310, 311, 312, 313,
679 314, -1, -1, -1, 257, 258, 259, 260, 261, -1,
680 263, 264, 265, -1, -1, -1, 269, -1, -1, 272,
681 273, 274, 275, -1, -1, -1, -1, 280, 281, 282,
682 283, 284, 285, 286, 287, 288, 289, 290, 291, 292,
683 293, 294, 295, 296, 297, 298, 299, 300, 301, 302,
684 303, 304, 305, 306, -1, 308, 309, 310, 311, 312,
685 313, 314, 256, 257, 258, 259, 260, 261, -1, 263,
686 264, 265, -1, -1, -1, 269, -1, -1, 272, 273,
687 274, 275, -1, -1, -1, 279, 280, -1, 282, 283,
688 284, 285, 286, -1, -1, -1, 91, 291, 292, 293,
689 294, 295, 296, 33, -1, 299, 36, 37, 38, -1,
690 40, -1, 42, 43, 308, 45, 310, 311, -1, -1,
691 -1, 272, 273, 274, 275, -1, -1, -1, 123, 59,
692 281, -1, -1, -1, 64, -1, 287, 288, 289, 290,
693 -1, -1, -1, -1, -1, -1, 297, 298, -1, 300,
694 301, 302, 303, 304, 305, 306, -1, -1, 309, 33,
695 -1, 91, 36, 37, 38, -1, 40, -1, 42, 43,
696 -1, 45, -1, -1, -1, -1, 13, -1, -1, -1,
697 17, -1, -1, -1, -1, -1, -1, -1, -1, -1,
698 64, -1, -1, 123, -1, -1, 126, -1, -1, -1,
699 -1, -1, -1, -1, -1, 42, -1, -1, 45, 91,
700 -1, -1, -1, -1, -1, 33, -1, 91, 36, 37,
701 38, -1, 40, -1, 42, 43, -1, 45, -1, -1,
702 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
703 -1, 123, -1, 80, -1, -1, 64, -1, -1, 123,
704 -1, -1, 126, -1, -1, -1, -1, 94, -1, -1,
705 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
706 -1, -1, -1, 91, -1, -1, -1, -1, 33, -1,
707 -1, 36, 37, 38, -1, 40, -1, 42, 43, -1,
708 45, -1, 287, -1, 289, 290, -1, -1, -1, -1,
709 -1, -1, -1, 140, -1, 123, -1, -1, 126, 64,
710 305, 306, -1, -1, 309, -1, -1, 312, 313, 314,
711 -1, -1, -1, -1, -1, -1, 256, 257, 258, 259,
712 260, 261, -1, 263, 264, 265, 91, -1, -1, 269,
713 177, -1, 272, 273, 274, 275, -1, 184, -1, 279,
714 280, -1, 282, 283, 284, 285, 286, -1, -1, -1,
715 -1, 291, 292, 293, 294, 295, 296, 91, 123, 299,
716 -1, 126, -1, -1, -1, -1, -1, -1, 308, 41,
717 310, 311, 44, 257, 258, 259, 260, 261, 262, 263,
718 264, 265, -1, -1, 91, 269, -1, -1, -1, 123,
719 -1, 63, -1, -1, -1, -1, 280, 289, 282, 283,
720 284, 285, 286, -1, -1, -1, -1, 291, 292, 293,
721 294, 295, 296, -1, 306, 299, 123, 309, -1, 91,
722 312, 313, 314, 41, 308, -1, 310, 311, -1, 257,
723 258, 259, 260, 261, -1, 263, 264, 265, -1, -1,
724 -1, 269, -1, -1, -1, 63, -1, -1, -1, -1,
725 -1, 123, 280, -1, 282, 283, 284, 285, 286, -1,
726 -1, -1, -1, 291, 292, 293, 294, 295, 296, -1,
727 -1, 299, -1, 91, -1, -1, -1, -1, -1, -1,
728 308, -1, 310, 311, -1, -1, -1, -1, -1, -1,
729 -1, -1, 257, 258, 259, 260, 261, -1, 263, 264,
730 265, -1, -1, -1, 269, 123, -1, -1, -1, -1,
731 -1, -1, -1, -1, -1, 280, -1, 282, 283, 284,
732 285, 286, -1, -1, -1, 91, 291, 292, 293, 294,
733 295, 296, 33, -1, 299, 36, 37, 38, -1, 40,
734 -1, 42, 43, 308, 45, 310, 311, -1, -1, -1,
735 -1, -1, -1, 287, 288, 289, 290, 123, 59, -1,
736 -1, -1, -1, 64, -1, -1, -1, 301, 302, 303,
737 304, 305, 306, -1, -1, 309, -1, -1, 312, 313,
738 314, -1, 289, 290, -1, -1, -1, -1, 33, -1,
739 91, 36, 37, 38, -1, 40, 41, 42, 43, 306,
740 45, -1, 309, -1, -1, 312, 313, 314, -1, 281,
741 -1, -1, -1, -1, -1, 287, 288, 289, 290, 64,
742 -1, -1, -1, -1, -1, 126, -1, -1, 300, 301,
743 302, 303, 304, 305, 306, -1, -1, 309, -1, -1,
744 312, 313, 314, -1, 33, -1, 91, 36, 37, 38,
745 -1, 40, -1, 42, 43, -1, 45, -1, -1, -1,
746 -1, -1, -1, 281, -1, -1, -1, -1, -1, 287,
747 288, 289, 290, -1, -1, 64, -1, -1, -1, -1,
748 -1, 126, 300, 301, 302, 303, 304, 305, 306, -1,
749 -1, 309, -1, -1, 312, 313, 314, -1, -1, -1,
750 -1, -1, 91, 33, 93, -1, 36, 37, 38, -1,
751 40, 41, 42, 43, -1, 45, -1, -1, -1, -1,
752 -1, 287, 288, 289, 290, -1, -1, -1, -1, -1,
753 -1, -1, -1, -1, 64, -1, -1, 126, 304, 305,
754 306, -1, -1, 309, -1, -1, 312, 313, 314, -1,
755 -1, -1, 41, -1, -1, 44, 257, 258, 259, 260,
756 261, 91, 263, 264, 265, -1, -1, -1, 269, 58,
757 59, -1, -1, -1, 63, -1, -1, -1, -1, 280,
758 -1, 282, 283, 284, 285, 286, -1, -1, -1, -1,
759 291, 292, 293, 294, 295, 296, 126, -1, 299, -1,
760 -1, -1, -1, -1, 93, -1, -1, 308, 41, 310,
761 311, 44, 257, 258, 259, 260, 261, -1, 263, 264,
762 265, -1, -1, -1, 269, 58, 59, -1, -1, -1,
763 63, -1, -1, -1, -1, 280, -1, 282, 283, 284,
764 285, 286, -1, -1, -1, -1, 291, 292, 293, 294,
765 295, 296, -1, -1, 299, -1, -1, -1, -1, -1,
766 93, -1, -1, 308, -1, 310, 311, -1, 257, 258,
767 259, 260, 261, -1, 263, 264, 265, -1, 33, -1,
768 269, 36, 37, 38, -1, 40, 41, 42, 43, -1,
769 45, 280, -1, 282, 283, 284, 285, 286, -1, -1,
770 -1, -1, 291, 292, 293, 294, 295, 296, -1, 64,
771 299, -1, -1, -1, -1, -1, -1, -1, -1, 308,
772 -1, 310, 311, -1, -1, -1, -1, 257, 258, 259,
773 260, 261, -1, 263, 264, 265, 91, 33, -1, 269,
774 36, 37, 38, -1, 40, -1, 42, 43, -1, 45,
775 280, -1, 282, 283, 284, 285, 286, -1, -1, -1,
776 -1, 291, 292, 293, 294, 295, 296, -1, 64, 299,
777 -1, 126, -1, -1, -1, -1, -1, -1, 308, -1,
778 310, 311, -1, 272, 273, 274, 275, -1, -1, -1,
779 -1, -1, 281, 33, -1, 91, 36, 37, 38, 288,
780 40, 41, 42, 43, -1, 45, -1, -1, 297, 298,
781 -1, 300, 301, 302, 303, 304, -1, -1, -1, -1,
782 -1, -1, -1, -1, 64, -1, -1, -1, -1, -1,
783 126, -1, -1, -1, -1, -1, -1, -1, -1, 272,
784 273, 274, 275, -1, -1, -1, -1, -1, 281, 33,
785 -1, 91, 36, 37, 38, -1, 40, 41, 42, 43,
786 -1, 45, -1, -1, 297, 298, -1, 300, 301, 302,
787 303, 304, -1, -1, -1, -1, -1, -1, -1, -1,
788 64, -1, -1, -1, -1, -1, 126, -1, -1, -1,
789 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
790 -1, -1, 257, 258, 259, 260, 261, 91, 263, 264,
791 265, -1, 33, -1, 269, 36, 37, 38, -1, 40,
792 -1, 42, 43, -1, 45, 280, -1, 282, 283, 284,
793 285, 286, -1, -1, -1, -1, 291, 292, 293, 294,
794 295, 296, 126, 64, 299, -1, -1, -1, -1, -1,
795 -1, -1, -1, 308, -1, 310, 311, -1, -1, -1,
796 256, 257, 258, 259, 260, 261, -1, 263, 264, 265,
797 91, -1, -1, 269, 41, -1, -1, 44, -1, -1,
798 -1, -1, -1, -1, 280, -1, 282, 283, 284, 285,
799 286, 58, 59, -1, -1, 291, 292, 293, 294, 295,
800 296, 91, -1, 299, -1, 126, -1, -1, -1, -1,
801 41, -1, 308, 44, 310, 311, -1, 257, 258, 259,
802 260, 261, -1, 263, 264, 265, 93, 58, 59, 269,
803 -1, -1, 63, 123, -1, -1, -1, -1, -1, -1,
804 280, -1, 282, 283, 284, 285, 286, -1, -1, -1,
805 -1, 291, 292, 293, 294, 295, 296, -1, -1, 299,
806 91, -1, 93, -1, -1, -1, -1, -1, 308, 41,
807 310, 311, 44, 257, 258, 259, 260, 261, -1, 263,
808 264, 265, -1, -1, -1, 269, 58, 59, -1, -1,
809 -1, 63, 123, -1, -1, -1, 280, -1, 282, 283,
810 284, 285, 286, -1, -1, -1, -1, 291, 292, 293,
811 294, 295, 296, -1, -1, 299, -1, -1, -1, 91,
812 -1, 93, -1, -1, 308, -1, 310, 311, -1, -1,
813 -1, -1, 41, -1, -1, 44, 257, 258, 259, 260,
814 261, -1, 263, 264, 265, -1, -1, -1, 269, 58,
815 59, 123, -1, -1, 63, -1, -1, -1, -1, 280,
816 -1, 282, 283, 284, 285, 286, -1, -1, -1, -1,
817 291, 292, 293, 294, 295, 296, -1, -1, 299, -1,
818 41, -1, 91, 44, 93, -1, -1, 308, -1, 310,
819 311, -1, -1, -1, -1, -1, -1, 58, 59, 289,
820 290, -1, 63, -1, -1, 272, 273, 274, 275, -1,
821 -1, -1, -1, -1, 123, 305, 306, -1, -1, 309,
822 -1, -1, 312, 313, 314, -1, -1, -1, -1, -1,
823 297, 298, 93, 300, -1, -1, -1, -1, -1, -1,
824 -1, 272, 273, 274, 275, -1, 41, -1, -1, 44,
825 281, -1, -1, -1, -1, -1, 287, 288, 289, 290,
826 -1, -1, 123, 58, 59, -1, 297, 298, 63, 300,
827 301, 302, 303, 304, 305, 306, -1, -1, 309, -1,
828 -1, 312, 313, 314, -1, -1, -1, -1, -1, -1,
829 -1, -1, -1, -1, -1, -1, 91, -1, 93, -1,
830 272, 273, 274, 275, -1, 41, -1, -1, 44, 281,
831 -1, -1, -1, -1, -1, 287, 288, 289, 290, -1,
832 -1, -1, 58, 59, -1, 297, 298, 63, 300, 301,
833 302, 303, 304, 305, 306, -1, -1, 309, -1, -1,
834 312, 313, 314, -1, -1, -1, -1, -1, -1, -1,
835 -1, -1, -1, -1, -1, -1, -1, 93, -1, -1,
836 -1, -1, -1, 272, 273, 274, 275, -1, -1, -1,
837 -1, -1, 281, -1, -1, -1, -1, -1, 287, 288,
838 289, 290, -1, -1, -1, -1, -1, 123, 297, 298,
839 -1, 300, 301, 302, 303, 304, 305, 306, -1, -1,
840 309, -1, -1, 312, 313, 314, -1, -1, -1, -1,
841 -1, 272, 273, 274, 275, -1, 41, -1, -1, -1,
842 281, -1, -1, -1, -1, -1, 287, 288, 289, 290,
843 -1, -1, -1, 58, 59, -1, 297, 298, 63, 300,
844 301, 302, 303, 304, 305, 306, -1, -1, 309, -1,
845 -1, 312, 313, 314, -1, -1, -1, -1, -1, -1,
846 -1, -1, -1, -1, -1, -1, 91, -1, 93, -1,
847 -1, -1, -1, -1, -1, -1, -1, 272, 273, 274,
848 275, -1, -1, -1, -1, -1, 281, -1, -1, -1,
849 -1, -1, 287, 288, 289, 290, -1, -1, 123, -1,
850 -1, -1, 297, 298, -1, 300, 301, 302, 303, 304,
851 305, 306, -1, -1, 309, -1, -1, 312, 313, 314,
852 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
853 -1, -1, -1, -1, -1, -1, 272, 273, 274, 275,
854 -1, 41, -1, -1, -1, 281, -1, -1, -1, -1,
855 -1, 287, 288, 289, 290, -1, -1, -1, 58, 59,
856 -1, 297, 298, 63, 300, 301, 302, 303, 304, 305,
857 306, -1, -1, 309, -1, -1, 312, 313, 314, -1,
858 25, 26, -1, -1, 41, -1, -1, 44, -1, -1,
859 -1, 91, 37, 93, 41, -1, -1, 44, 43, 44,
860 45, 58, 59, -1, -1, 50, 63, -1, -1, -1,
861 -1, 58, 59, -1, -1, -1, 63, 62, 63, 64,
862 65, -1, -1, 123, -1, -1, -1, -1, -1, -1,
863 -1, -1, -1, -1, -1, -1, 93, -1, -1, -1,
864 -1, -1, -1, -1, -1, -1, 93, 272, 273, 274,
865 275, -1, 41, -1, -1, 44, 281, -1, -1, -1,
866 -1, 106, 287, 288, 289, 290, 123, -1, -1, 58,
867 59, -1, 297, 298, 63, 300, 301, 302, 303, 304,
868 305, 306, -1, -1, 309, -1, -1, 312, 313, 314,
869 -1, -1, -1, -1, -1, 41, -1, -1, -1, -1,
870 -1, -1, -1, -1, 93, -1, -1, -1, -1, -1,
871 -1, -1, 58, 59, -1, -1, -1, 63, -1, -1,
872 165, -1, -1, -1, -1, -1, -1, -1, -1, -1,
873 -1, -1, -1, -1, 123, -1, -1, -1, -1, 41,
874 -1, -1, 44, -1, 189, 91, -1, 93, -1, -1,
875 -1, -1, -1, -1, -1, -1, 58, 59, -1, -1,
876 -1, 63, -1, -1, -1, -1, -1, -1, -1, -1,
877 -1, -1, 272, 273, 274, 275, -1, 123, -1, -1,
878 -1, 281, -1, -1, -1, -1, -1, 287, 288, 289,
879 290, 93, -1, -1, -1, -1, -1, 297, 298, -1,
880 300, 301, 302, 303, 304, 305, 306, -1, -1, 309,
881 -1, -1, 312, 313, 314, 272, 273, 274, 275, -1,
882 41, 123, -1, 44, 281, 272, 273, 274, 275, -1,
883 287, 288, 289, 290, 281, -1, -1, 58, 59, -1,
884 297, 298, 63, 300, 301, 302, 303, 304, 305, 306,
885 297, 298, 309, 300, 301, 312, 313, 314, -1, -1,
886 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
887 -1, -1, 93, -1, -1, -1, -1, -1, -1, -1,
888 -1, -1, -1, 272, 273, 274, 275, -1, 41, -1,
889 -1, 44, 281, -1, -1, -1, -1, -1, 287, 288,
890 289, 290, -1, -1, -1, 58, 59, -1, 297, 298,
891 63, 300, 301, 302, 303, 304, 305, 306, -1, -1,
892 309, -1, -1, 312, 313, 314, 272, 273, 274, 275,
893 -1, 41, -1, -1, 44, 281, -1, -1, -1, -1,
894 93, 287, 288, 289, 290, -1, -1, -1, 58, 59,
895 -1, 297, 298, 63, 300, 301, 302, 303, 304, 305,
896 306, -1, -1, 309, -1, -1, 312, 313, 314, -1,
897 272, 273, 274, 275, -1, 41, -1, -1, 44, 281,
898 -1, -1, -1, 93, -1, 287, 288, 289, 290, -1,
899 -1, -1, 58, 59, -1, 297, 298, 63, 300, 301,
900 302, 303, 304, 305, 306, -1, -1, 309, -1, -1,
901 312, 313, 314, -1, -1, -1, -1, -1, 41, -1,
902 -1, 44, -1, -1, -1, -1, -1, 93, -1, -1,
903 -1, -1, -1, -1, -1, 58, 59, -1, -1, -1,
904 63, -1, -1, -1, -1, -1, -1, -1, -1, -1,
905 -1, 272, 273, 274, 275, -1, 41, -1, -1, 44,
906 281, -1, -1, -1, -1, -1, 287, 288, 289, 290,
907 93, -1, -1, 58, 59, -1, 297, 298, 63, 300,
908 301, 302, 303, 304, 305, 306, -1, -1, 309, -1,
909 -1, 312, 313, 314, 41, -1, -1, 44, -1, -1,
910 -1, -1, -1, -1, -1, -1, -1, -1, 93, -1,
911 -1, 58, 59, -1, -1, -1, 63, -1, -1, 272,
912 273, 274, 275, -1, -1, -1, -1, -1, 281, -1,
913 -1, -1, -1, -1, 287, 288, 289, 290, -1, -1,
914 -1, -1, -1, -1, 297, 298, 93, 300, 301, 302,
915 303, 304, 305, 306, -1, -1, 309, -1, -1, 312,
916 313, 314, 272, 273, 274, 275, -1, 41, -1, -1,
917 44, 281, -1, -1, -1, -1, -1, 287, 288, 289,
918 290, -1, -1, -1, 58, 59, -1, 297, 298, 63,
919 300, 301, 302, 303, 304, 305, 306, -1, -1, 309,
920 -1, -1, 312, 313, 314, -1, 272, 273, 274, 275,
921 -1, 41, -1, -1, 44, 281, -1, -1, -1, 93,
922 -1, 287, 288, 289, 290, -1, -1, -1, 58, 59,
923 -1, 297, 298, 63, 300, 301, 302, 303, 304, 305,
924 306, -1, -1, 309, -1, -1, 312, 313, 314, 272,
925 273, 274, 275, -1, 41, -1, -1, 44, 281, -1,
926 -1, -1, -1, 93, 287, 288, 289, 290, -1, -1,
927 -1, 58, 59, -1, 297, 298, 63, 300, 301, 302,
928 303, 304, 305, 306, -1, -1, -1, 272, 273, 274,
929 275, -1, 41, -1, -1, 44, 281, -1, -1, -1,
930 -1, -1, 287, 288, 289, 290, 93, -1, -1, 58,
931 59, -1, 297, 298, 63, 300, 301, 302, 303, 304,
932 305, 306, -1, -1, -1, 272, 273, 274, 275, -1,
933 41, -1, -1, 44, 281, -1, -1, -1, -1, -1,
934 287, 288, 289, 290, 93, -1, -1, 58, 59, -1,
935 297, 298, 63, 300, 301, 302, 303, 304, 305, 306,
936 -1, -1, -1, -1, -1, -1, 41, -1, -1, 44,
937 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
938 -1, -1, 93, 58, 59, -1, -1, -1, 63, -1,
939 -1, -1, -1, -1, -1, -1, -1, -1, 272, 273,
940 274, 275, -1, 41, -1, -1, 44, 281, -1, -1,
941 -1, -1, -1, 287, 288, 289, 290, -1, 93, -1,
942 58, 59, -1, 297, 298, 63, 300, 301, 302, 303,
943 304, 305, 306, -1, -1, -1, -1, -1, -1, -1,
944 -1, -1, 272, 273, 274, 275, -1, 41, -1, -1,
945 44, 281, -1, -1, -1, 93, -1, 287, 288, 289,
946 290, -1, -1, -1, 58, 59, -1, 297, 298, 63,
947 300, 301, 302, 303, 304, 305, 306, -1, -1, -1,
948 -1, -1, -1, -1, -1, 272, 273, 274, 275, -1,
949 41, -1, -1, 44, 281, -1, -1, -1, -1, 93,
950 287, 288, 289, 290, -1, -1, -1, 58, 59, -1,
951 297, 298, 63, 300, 301, 302, 303, 304, 305, 306,
952 -1, -1, -1, 272, 273, 274, 275, -1, 41, -1,
953 -1, 44, 281, -1, -1, -1, -1, -1, 287, 288,
954 289, 290, 93, -1, -1, 58, 59, -1, 297, 298,
955 63, 300, 301, 302, 303, 304, 305, 306, -1, -1,
956 -1, 272, 273, 274, 275, -1, 41, -1, -1, 44,
957 281, -1, -1, -1, -1, -1, 287, 288, 289, 290,
958 93, -1, -1, 58, 59, -1, 297, 298, 63, 300,
959 301, 302, 303, 304, 305, -1, -1, 272, 273, 274,
960 275, -1, 41, -1, -1, 44, 281, -1, -1, -1,
961 -1, -1, 287, 288, -1, 290, -1, -1, 93, 58,
962 59, -1, 297, 298, 63, 300, 301, 302, 303, 304,
963 305, -1, -1, -1, 272, 273, 274, 275, -1, 41,
964 -1, -1, 44, 281, -1, -1, -1, -1, -1, 287,
965 288, -1, -1, -1, 93, -1, 58, 59, -1, 297,
966 298, 63, 300, 301, 302, 303, 304, 305, -1, -1,
967 91, -1, -1, -1, -1, -1, -1, -1, 272, 273,
968 274, 275, -1, 41, -1, -1, 44, 281, -1, -1,
969 -1, 93, -1, 287, 288, -1, 41, -1, -1, 44,
970 58, 59, 123, 297, 298, 63, 300, 301, 302, 303,
971 304, -1, -1, 58, 59, 41, -1, -1, 44, -1,
972 -1, 272, 273, 274, 275, 41, -1, -1, 44, -1,
973 281, -1, 58, 59, -1, 93, 287, 288, -1, -1,
974 -1, -1, 58, 59, -1, -1, 297, 298, 93, 300,
975 301, 302, 303, 304, -1, 41, -1, -1, 44, 272,
976 273, 274, 275, -1, -1, -1, -1, 93, 281, -1,
977 -1, -1, 58, 59, 287, 288, 58, 93, -1, -1,
978 -1, 63, -1, -1, 297, 298, -1, 300, 301, 302,
979 303, 304, -1, -1, -1, -1, -1, 272, 273, 274,
980 275, -1, -1, -1, -1, -1, 281, 93, -1, 91,
981 -1, -1, 287, 288, -1, 63, -1, -1, -1, -1,
982 -1, -1, 297, 298, -1, 300, 301, 302, 303, 304,
983 -1, -1, -1, 272, 273, 274, 275, -1, -1, -1,
984 -1, 123, 281, 91, -1, -1, -1, -1, -1, -1,
985 -1, -1, -1, -1, -1, -1, -1, -1, 297, 298,
986 -1, 300, 301, 302, 303, 304, 287, 288, 289, 290,
987 272, 273, 274, 275, -1, 123, -1, -1, -1, 281,
988 -1, 302, 303, 304, 305, 306, -1, -1, 309, -1,
989 -1, 312, 313, 314, 91, 297, 298, -1, 300, 301,
990 302, 303, -1, -1, -1, -1, -1, -1, -1, -1,
991 -1, -1, -1, -1, 272, 273, 274, 275, -1, -1,
992 -1, -1, -1, 281, -1, -1, 123, 272, 273, 274,
993 275, -1, -1, -1, -1, -1, -1, -1, -1, 297,
994 298, -1, 300, 301, 302, -1, 272, 273, 274, 275,
995 -1, -1, 297, 298, 30, -1, 272, 273, 274, 275,
996 -1, -1, 38, -1, -1, -1, 42, -1, -1, 45,
997 -1, 297, 298, -1, -1, -1, 52, 53, 54, 55,
998 56, 297, 298, 59, 60, -1, 272, 273, 274, 275,
999 66, -1, -1, -1, -1, -1, -1, -1, -1, 281,
1000 -1, -1, -1, -1, -1, 287, 288, 289, 290, -1,
1001 -1, 297, 298, -1, -1, -1, 92, -1, 300, 301,
1002 302, 303, 304, 305, 306, -1, -1, 309, -1, -1,
1003 312, 313, 314, 281, -1, -1, -1, -1, -1, 287,
1004 288, 289, 290, -1, -1, -1, -1, -1, -1, -1,
1005 -1, -1, 300, 301, 302, 303, 304, 305, 306, -1,
1006 -1, 309, -1, -1, 312, 313, 314, -1, -1, -1,
1007 -1, -1, -1, 149, 150, 151, 152, 153, 154, 155,
1008 156, 157, 158, 159, 160, 161, 162, -1, -1, -1,
1009 287, 288, 289, 290, -1, -1, -1, -1, 174, -1,
1010 -1, -1, -1, -1, -1, -1, 303, 304, 305, 306,
1011 -1, -1, 309, -1, -1, 312, 313, 314, -1, -1,
1012 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1013 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1014 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1015 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1016 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1017 -1, -1, -1, -1, 250, -1, -1, -1, -1, -1,
1018 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1019 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1020 -1, -1, -1, -1, -1, 281,
1026 #define YYMAXTOKEN 314
1029 "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,
1030 "'!'",0,0,"'$'","'%'","'&'",0,"'('","')'","'*'","'+'","','","'-'",0,0,0,0,0,0,0,
1031 0,0,0,0,0,"':'","';'",0,0,0,"'?'","'@'",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1032 0,0,0,0,0,0,"'['",0,"']'",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1033 0,0,"'{'",0,"'}'","'~'",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1034 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1035 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1036 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",
1037 "PMFUNC","PRIVATEREF","FUNC0SUB","UNIOPSUB","LSTOPSUB","LABEL","FORMAT","SUB",
1038 "ANONSUB","PACKAGE","USE","WHILE","UNTIL","IF","UNLESS","ELSE","ELSIF",
1039 "CONTINUE","FOR","LOOPEX","DOTDOT","FUNC0","FUNC1","FUNC","UNIOP","LSTOP",
1040 "RELOP","EQOP","MULOP","ADDOP","DOLSHARP","DO","HASHBRACK","NOAMP","LOCAL","MY",
1041 "OROP","ANDOP","NOTOP","ASSIGNOP","OROR","ANDAND","BITOROP","BITANDOP",
1042 "SHIFTOP","MATCHOP","UMINUS","REFGEN","POWOP","PREINC","PREDEC","POSTINC",
1048 "prog : $$1 lineseq",
1049 "block : '{' remember lineseq '}'",
1051 "mblock : '{' mremember lineseq '}'",
1054 "lineseq : lineseq decl",
1055 "lineseq : lineseq line",
1056 "line : label cond",
1059 "line : label sideff ';'",
1062 "sideff : expr IF expr",
1063 "sideff : expr UNLESS expr",
1064 "sideff : expr WHILE expr",
1065 "sideff : expr UNTIL iexpr",
1067 "else : ELSE mblock",
1068 "else : ELSIF '(' mexpr ')' mblock else",
1069 "cond : IF '(' remember mexpr ')' mblock else",
1070 "cond : UNLESS '(' remember miexpr ')' mblock else",
1072 "cont : CONTINUE block",
1073 "loop : label WHILE '(' remember mtexpr ')' mblock cont",
1074 "loop : label UNTIL '(' remember miexpr ')' mblock cont",
1075 "loop : label FOR MY remember my_scalar '(' mexpr ')' mblock cont",
1076 "loop : label FOR scalar '(' remember mexpr ')' mblock cont",
1077 "loop : label FOR '(' remember mexpr ')' mblock cont",
1078 "loop : label FOR '(' remember mnexpr ';' mtexpr ';' mnexpr ')' mblock",
1079 "loop : label block cont",
1095 "format : FORMAT startsub WORD block",
1096 "format : FORMAT startsub block",
1097 "subrout : SUB startsub WORD proto block",
1098 "subrout : SUB startsub WORD proto ';'",
1102 "package : PACKAGE WORD ';'",
1103 "package : PACKAGE ';'",
1104 "use : USE startsub WORD WORD listexpr ';'",
1105 "expr : expr ANDOP expr",
1106 "expr : expr OROP expr",
1108 "argexpr : argexpr ','",
1109 "argexpr : argexpr ',' term",
1111 "listop : LSTOP indirob argexpr",
1112 "listop : FUNC '(' indirob expr ')'",
1113 "listop : term ARROW method '(' listexprcom ')'",
1114 "listop : METHOD indirob listexpr",
1115 "listop : FUNCMETH indirob '(' listexprcom ')'",
1116 "listop : LSTOP listexpr",
1117 "listop : FUNC '(' listexprcom ')'",
1118 "listop : LSTOPSUB startsub block listexpr",
1121 "term : term ASSIGNOP term",
1122 "term : term POWOP term",
1123 "term : term MULOP term",
1124 "term : term ADDOP term",
1125 "term : term SHIFTOP term",
1126 "term : term RELOP term",
1127 "term : term EQOP term",
1128 "term : term BITANDOP term",
1129 "term : term BITOROP term",
1130 "term : term DOTDOT term",
1131 "term : term ANDAND term",
1132 "term : term OROR term",
1133 "term : term '?' term ':' term",
1134 "term : term MATCHOP term",
1139 "term : REFGEN term",
1140 "term : term POSTINC",
1141 "term : term POSTDEC",
1142 "term : PREINC term",
1143 "term : PREDEC term",
1144 "term : local term",
1145 "term : '(' expr ')'",
1147 "term : '[' expr ']'",
1149 "term : HASHBRACK expr ';' '}'",
1150 "term : HASHBRACK ';' '}'",
1151 "term : ANONSUB startsub proto block",
1153 "term : star '{' expr ';' '}'",
1155 "term : scalar '[' expr ']'",
1156 "term : term ARROW '[' expr ']'",
1157 "term : term '[' expr ']'",
1161 "term : scalar '{' expr ';' '}'",
1162 "term : term ARROW '{' expr ';' '}'",
1163 "term : term '{' expr ';' '}'",
1164 "term : '(' expr ')' '[' expr ']'",
1165 "term : '(' ')' '[' expr ']'",
1166 "term : ary '[' expr ']'",
1167 "term : ary '{' expr ';' '}'",
1170 "term : amper '(' ')'",
1171 "term : amper '(' expr ')'",
1172 "term : NOAMP WORD listexpr",
1175 "term : DO WORD '(' ')'",
1176 "term : DO WORD '(' expr ')'",
1177 "term : DO scalar '(' ')'",
1178 "term : DO scalar '(' expr ')'",
1180 "term : LOOPEX term",
1181 "term : NOTOP argexpr",
1183 "term : UNIOP block",
1184 "term : UNIOP term",
1185 "term : UNIOPSUB term",
1187 "term : FUNC0 '(' ')'",
1189 "term : FUNC1 '(' ')'",
1190 "term : FUNC1 '(' expr ')'",
1191 "term : PMFUNC '(' term ')'",
1192 "term : PMFUNC '(' term ',' term ')'",
1196 "listexpr : argexpr",
1198 "listexprcom : expr",
1199 "listexprcom : expr ','",
1202 "my_scalar : scalar",
1203 "amper : '&' indirob",
1204 "scalar : '$' indirob",
1205 "ary : '@' indirob",
1206 "hsh : '%' indirob",
1207 "arylen : DOLSHARP indirob",
1208 "star : '*' indirob",
1212 "indirob : PRIVATEREF",
1215 #define yyclearin (yychar=(-1))
1216 #define yyerrok (yyerrflag=0)
1219 #define YYMAXDEPTH YYSTACKSIZE
1223 #define YYSTACKSIZE YYMAXDEPTH
1225 #define YYSTACKSIZE 500
1226 #define YYMAXDEPTH 500
1237 #line 1308 "perly.c"
1238 #define YYABORT goto yyabort
1239 #define YYACCEPT goto yyaccept
1240 #define YYERROR goto yyerrlab
1257 struct ysv* ysave = (struct ysv*)ptr;
1258 if (ysave->yyss) Safefree(ysave->yyss);
1259 if (ysave->yyvs) Safefree(ysave->yyvs);
1260 yydebug = ysave->oldyydebug;
1261 yynerrs = ysave->oldyynerrs;
1262 yyerrflag = ysave->oldyyerrflag;
1263 yychar = ysave->oldyychar;
1264 yyval = ysave->oldyyval;
1265 yylval = ysave->oldyylval;
1272 register int yym, yyn, yystate;
1273 register short *yyssp;
1274 register YYSTYPE *yyvsp;
1277 unsigned yystacksize = YYSTACKSIZE;
1281 extern char *getenv();
1284 struct ysv *ysave = (struct ysv*)safemalloc(sizeof(struct ysv));
1285 SAVEDESTRUCTOR(yydestruct, ysave);
1286 ysave->oldyydebug = yydebug;
1287 ysave->oldyynerrs = yynerrs;
1288 ysave->oldyyerrflag = yyerrflag;
1289 ysave->oldyychar = yychar;
1290 ysave->oldyyval = yyval;
1291 ysave->oldyylval = yylval;
1294 if (yys = getenv("YYDEBUG"))
1297 if (yyn >= '0' && yyn <= '9')
1298 yydebug = yyn - '0';
1307 ** Initialize private stacks (yyparse may be called from an action)
1309 ysave->yyss = yyss = (short*)safemalloc(yystacksize*sizeof(short));
1310 ysave->yyvs = yyvs = (YYSTYPE*)safemalloc(yystacksize*sizeof(YYSTYPE));
1316 *yyssp = yystate = 0;
1319 if (yyn = yydefred[yystate]) goto yyreduce;
1322 if ((yychar = yylex()) < 0) yychar = 0;
1327 if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
1328 if (!yys) yys = "illegal-symbol";
1329 PerlIO_printf(Perl_debug_log, "yydebug: state %d, reading %d (%s)\n", yystate,
1334 if ((yyn = yysindex[yystate]) && (yyn += yychar) >= 0 &&
1335 yyn <= YYTABLESIZE && yycheck[yyn] == yychar)
1339 PerlIO_printf(Perl_debug_log, "yydebug: state %d, shifting to state %d\n",
1340 yystate, yytable[yyn]);
1342 if (yyssp >= yyss + yystacksize - 1)
1345 ** reallocate and recover. Note that pointers
1346 ** have to be reset, or bad things will happen
1348 int yyps_index = (yyssp - yyss);
1349 int yypv_index = (yyvsp - yyvs);
1350 yystacksize += YYSTACKSIZE;
1351 ysave->yyvs = yyvs =
1352 (YYSTYPE*)realloc((char*)yyvs,yystacksize * sizeof(YYSTYPE));
1353 ysave->yyss = yyss =
1354 (short*)realloc((char*)yyss,yystacksize * sizeof(short));
1357 yyssp = yyss + yyps_index;
1358 yyvsp = yyvs + yypv_index;
1360 *++yyssp = yystate = yytable[yyn];
1363 if (yyerrflag > 0) --yyerrflag;
1366 if ((yyn = yyrindex[yystate]) && (yyn += yychar) >= 0 &&
1367 yyn <= YYTABLESIZE && yycheck[yyn] == yychar)
1372 if (yyerrflag) goto yyinrecovery;
1377 yyerror("syntax error");
1389 if ((yyn = yysindex[*yyssp]) && (yyn += YYERRCODE) >= 0 &&
1390 yyn <= YYTABLESIZE && yycheck[yyn] == YYERRCODE)
1394 PerlIO_printf(Perl_debug_log,
1395 "yydebug: state %d, error recovery shifting to state %d\n",
1396 *yyssp, yytable[yyn]);
1398 if (yyssp >= yyss + yystacksize - 1)
1401 ** reallocate and recover. Note that pointers
1402 ** have to be reset, or bad things will happen
1404 int yyps_index = (yyssp - yyss);
1405 int yypv_index = (yyvsp - yyvs);
1406 yystacksize += YYSTACKSIZE;
1407 ysave->yyvs = yyvs = (YYSTYPE*)realloc((char*)yyvs,
1408 yystacksize * sizeof(YYSTYPE));
1409 ysave->yyss = yyss = (short*)realloc((char*)yyss,
1410 yystacksize * sizeof(short));
1413 yyssp = yyss + yyps_index;
1414 yyvsp = yyvs + yypv_index;
1416 *++yyssp = yystate = yytable[yyn];
1424 PerlIO_printf(Perl_debug_log,
1425 "yydebug: error recovery discarding state %d\n",
1428 if (yyssp <= yyss) goto yyabort;
1436 if (yychar == 0) goto yyabort;
1441 if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
1442 if (!yys) yys = "illegal-symbol";
1443 PerlIO_printf(Perl_debug_log,
1444 "yydebug: state %d, error recovery discards token %d (%s)\n",
1445 yystate, yychar, yys);
1454 PerlIO_printf(Perl_debug_log, "yydebug: state %d, reducing by rule %d (%s)\n",
1455 yystate, yyn, yyrule[yyn]);
1458 yyval = yyvsp[1-yym];
1464 #if defined(YYDEBUG) && defined(DEBUGGING)
1465 yydebug = (debug & 1);
1472 { newPROG(yyvsp[0].opval); }
1476 { if (copline > (line_t)yyvsp[-3].ival)
1477 copline = yyvsp[-3].ival;
1478 yyval.opval = block_end(yyvsp[-2].ival, yyvsp[-1].opval); }
1482 { yyval.ival = block_start(TRUE); }
1486 { if (copline > (line_t)yyvsp[-3].ival)
1487 copline = yyvsp[-3].ival;
1488 yyval.opval = block_end(yyvsp[-2].ival, yyvsp[-1].opval); }
1492 { yyval.ival = block_start(FALSE); }
1496 { yyval.opval = Nullop; }
1500 { yyval.opval = yyvsp[-1].opval; }
1504 { yyval.opval = append_list(OP_LINESEQ,
1505 (LISTOP*)yyvsp[-1].opval, (LISTOP*)yyvsp[0].opval);
1506 pad_reset_pending = TRUE;
1507 if (yyvsp[-1].opval && yyvsp[0].opval) hints |= HINT_BLOCK_SCOPE; }
1511 { yyval.opval = newSTATEOP(0, yyvsp[-1].pval, yyvsp[0].opval); }
1515 { if (yyvsp[-1].pval != Nullch) {
1516 yyval.opval = newSTATEOP(0, yyvsp[-1].pval, newOP(OP_NULL, 0));
1519 yyval.opval = Nullop;
1526 { yyval.opval = newSTATEOP(0, yyvsp[-2].pval, yyvsp[-1].opval);
1531 { yyval.opval = Nullop; }
1535 { yyval.opval = yyvsp[0].opval; }
1539 { yyval.opval = newLOGOP(OP_AND, 0, yyvsp[0].opval, yyvsp[-2].opval); }
1543 { yyval.opval = newLOGOP(OP_OR, 0, yyvsp[0].opval, yyvsp[-2].opval); }
1547 { yyval.opval = newLOOPOP(OPf_PARENS, 1, scalar(yyvsp[0].opval), yyvsp[-2].opval); }
1551 { yyval.opval = newLOOPOP(OPf_PARENS, 1, yyvsp[0].opval, yyvsp[-2].opval);}
1555 { yyval.opval = Nullop; }
1559 { yyval.opval = scope(yyvsp[0].opval); }
1563 { copline = yyvsp[-5].ival;
1564 yyval.opval = newSTATEOP(0, Nullch,
1565 newCONDOP(0, yyvsp[-3].opval, scope(yyvsp[-1].opval), yyvsp[0].opval));
1566 hints |= HINT_BLOCK_SCOPE; }
1570 { copline = yyvsp[-6].ival;
1571 yyval.opval = block_end(yyvsp[-4].ival,
1572 newCONDOP(0, yyvsp[-3].opval, scope(yyvsp[-1].opval), yyvsp[0].opval)); }
1576 { copline = yyvsp[-6].ival;
1577 yyval.opval = block_end(yyvsp[-4].ival,
1578 newCONDOP(0, yyvsp[-3].opval, scope(yyvsp[-1].opval), yyvsp[0].opval)); }
1582 { yyval.opval = Nullop; }
1586 { yyval.opval = scope(yyvsp[0].opval); }
1590 { copline = yyvsp[-6].ival;
1591 yyval.opval = block_end(yyvsp[-4].ival,
1592 newSTATEOP(0, yyvsp[-7].pval,
1593 newWHILEOP(0, 1, (LOOP*)Nullop,
1594 yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval))); }
1598 { copline = yyvsp[-6].ival;
1599 yyval.opval = block_end(yyvsp[-4].ival,
1600 newSTATEOP(0, yyvsp[-7].pval,
1601 newWHILEOP(0, 1, (LOOP*)Nullop,
1602 yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval))); }
1606 { yyval.opval = block_end(yyvsp[-6].ival,
1607 newFOROP(0, yyvsp[-9].pval, yyvsp[-8].ival, yyvsp[-5].opval, yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval)); }
1611 { yyval.opval = block_end(yyvsp[-4].ival,
1612 newFOROP(0, yyvsp[-8].pval, yyvsp[-7].ival, mod(yyvsp[-6].opval, OP_ENTERLOOP),
1613 yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval)); }
1617 { yyval.opval = block_end(yyvsp[-4].ival,
1618 newFOROP(0, yyvsp[-7].pval, yyvsp[-6].ival, Nullop, yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval)); }
1622 { copline = yyvsp[-9].ival;
1623 yyval.opval = block_end(yyvsp[-7].ival,
1624 append_elem(OP_LINESEQ, scalar(yyvsp[-6].opval),
1625 newSTATEOP(0, yyvsp[-10].pval,
1626 newWHILEOP(0, 1, (LOOP*)Nullop,
1627 scalar(yyvsp[-4].opval),
1628 yyvsp[0].opval, scalar(yyvsp[-2].opval))))); }
1632 { yyval.opval = newSTATEOP(0,
1633 yyvsp[-2].pval, newWHILEOP(0, 1, (LOOP*)Nullop,
1634 Nullop, yyvsp[-1].opval, yyvsp[0].opval)); }
1638 { yyval.opval = Nullop; }
1642 { (void)scan_num("1"); yyval.opval = yylval.opval; }
1646 { yyval.opval = invert(scalar(yyvsp[0].opval)); }
1650 { yyval.opval = yyvsp[0].opval; intro_my(); }
1654 { yyval.opval = yyvsp[0].opval; intro_my(); }
1658 { yyval.opval = yyvsp[0].opval; intro_my(); }
1662 { yyval.opval = yyvsp[0].opval; intro_my(); }
1666 { yyval.pval = Nullch; }
1686 { newFORM(yyvsp[-2].ival, yyvsp[-1].opval, yyvsp[0].opval); }
1690 { newFORM(yyvsp[-1].ival, Nullop, yyvsp[0].opval); }
1694 { newSUB(yyvsp[-3].ival, yyvsp[-2].opval, yyvsp[-1].opval, yyvsp[0].opval); }
1698 { newSUB(yyvsp[-3].ival, yyvsp[-2].opval, yyvsp[-1].opval, Nullop); expect = XSTATE; }
1702 { yyval.opval = Nullop; }
1706 { yyval.ival = start_subparse(); }
1710 { package(yyvsp[-1].opval); }
1714 { package(Nullop); }
1718 { utilize(yyvsp[-5].ival, yyvsp[-4].ival, yyvsp[-3].opval, yyvsp[-2].opval, yyvsp[-1].opval); }
1722 { yyval.opval = newLOGOP(OP_AND, 0, yyvsp[-2].opval, yyvsp[0].opval); }
1726 { yyval.opval = newLOGOP(yyvsp[-1].ival, 0, yyvsp[-2].opval, yyvsp[0].opval); }
1730 { yyval.opval = yyvsp[-1].opval; }
1734 { yyval.opval = append_elem(OP_LIST, yyvsp[-2].opval, yyvsp[0].opval); }
1738 { yyval.opval = convert(yyvsp[-2].ival, OPf_STACKED,
1739 prepend_elem(OP_LIST, newGVREF(yyvsp[-2].ival,yyvsp[-1].opval), yyvsp[0].opval) ); }
1743 { yyval.opval = convert(yyvsp[-4].ival, OPf_STACKED,
1744 prepend_elem(OP_LIST, newGVREF(yyvsp[-4].ival,yyvsp[-2].opval), yyvsp[-1].opval) ); }
1748 { yyval.opval = convert(OP_ENTERSUB, OPf_STACKED,
1749 append_elem(OP_LIST,
1750 prepend_elem(OP_LIST, scalar(yyvsp[-5].opval), yyvsp[-1].opval),
1751 newUNOP(OP_METHOD, 0, yyvsp[-3].opval))); }
1755 { yyval.opval = convert(OP_ENTERSUB, OPf_STACKED,
1756 append_elem(OP_LIST,
1757 prepend_elem(OP_LIST, yyvsp[-1].opval, yyvsp[0].opval),
1758 newUNOP(OP_METHOD, 0, yyvsp[-2].opval))); }
1762 { yyval.opval = convert(OP_ENTERSUB, OPf_STACKED,
1763 append_elem(OP_LIST,
1764 prepend_elem(OP_LIST, yyvsp[-3].opval, yyvsp[-1].opval),
1765 newUNOP(OP_METHOD, 0, yyvsp[-4].opval))); }
1769 { yyval.opval = convert(yyvsp[-1].ival, 0, yyvsp[0].opval); }
1773 { yyval.opval = convert(yyvsp[-3].ival, 0, yyvsp[-1].opval); }
1777 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
1778 append_elem(OP_LIST,
1779 prepend_elem(OP_LIST, newANONSUB(yyvsp[-2].ival, 0, yyvsp[-1].opval), yyvsp[0].opval),
1780 yyvsp[-3].opval)); }
1784 { yyval.opval = newASSIGNOP(OPf_STACKED, yyvsp[-2].opval, yyvsp[-1].ival, yyvsp[0].opval); }
1788 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1792 { if (yyvsp[-1].ival != OP_REPEAT)
1793 scalar(yyvsp[-2].opval);
1794 yyval.opval = newBINOP(yyvsp[-1].ival, 0, yyvsp[-2].opval, scalar(yyvsp[0].opval)); }
1798 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1802 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1806 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1810 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1814 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1818 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1822 { yyval.opval = newRANGE(yyvsp[-1].ival, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval));}
1826 { yyval.opval = newLOGOP(OP_AND, 0, yyvsp[-2].opval, yyvsp[0].opval); }
1830 { yyval.opval = newLOGOP(OP_OR, 0, yyvsp[-2].opval, yyvsp[0].opval); }
1834 { yyval.opval = newCONDOP(0, yyvsp[-4].opval, yyvsp[-2].opval, yyvsp[0].opval); }
1838 { yyval.opval = bind_match(yyvsp[-1].ival, yyvsp[-2].opval, yyvsp[0].opval); }
1842 { yyval.opval = newUNOP(OP_NEGATE, 0, scalar(yyvsp[0].opval)); }
1846 { yyval.opval = yyvsp[0].opval; }
1850 { yyval.opval = newUNOP(OP_NOT, 0, scalar(yyvsp[0].opval)); }
1854 { yyval.opval = newUNOP(OP_COMPLEMENT, 0, scalar(yyvsp[0].opval));}
1858 { yyval.opval = newUNOP(OP_REFGEN, 0, mod(yyvsp[0].opval,OP_REFGEN)); }
1862 { yyval.opval = newUNOP(OP_POSTINC, 0,
1863 mod(scalar(yyvsp[-1].opval), OP_POSTINC)); }
1867 { yyval.opval = newUNOP(OP_POSTDEC, 0,
1868 mod(scalar(yyvsp[-1].opval), OP_POSTDEC)); }
1872 { yyval.opval = newUNOP(OP_PREINC, 0,
1873 mod(scalar(yyvsp[0].opval), OP_PREINC)); }
1877 { yyval.opval = newUNOP(OP_PREDEC, 0,
1878 mod(scalar(yyvsp[0].opval), OP_PREDEC)); }
1882 { yyval.opval = localize(yyvsp[0].opval,yyvsp[-1].ival); }
1886 { yyval.opval = sawparens(yyvsp[-1].opval); }
1890 { yyval.opval = sawparens(newNULLLIST()); }
1894 { yyval.opval = newANONLIST(yyvsp[-1].opval); }
1898 { yyval.opval = newANONLIST(Nullop); }
1902 { yyval.opval = newANONHASH(yyvsp[-2].opval); }
1906 { yyval.opval = newANONHASH(Nullop); }
1910 { yyval.opval = newANONSUB(yyvsp[-2].ival, yyvsp[-1].opval, yyvsp[0].opval); }
1914 { yyval.opval = yyvsp[0].opval; }
1918 { yyval.opval = newBINOP(OP_GELEM, 0, newGVREF(0,yyvsp[-4].opval), yyvsp[-2].opval); }
1922 { yyval.opval = yyvsp[0].opval; }
1926 { yyval.opval = newBINOP(OP_AELEM, 0, oopsAV(yyvsp[-3].opval), scalar(yyvsp[-1].opval)); }
1930 { yyval.opval = newBINOP(OP_AELEM, 0,
1931 ref(newAVREF(yyvsp[-4].opval),OP_RV2AV),
1932 scalar(yyvsp[-1].opval));}
1936 { assertref(yyvsp[-3].opval); yyval.opval = newBINOP(OP_AELEM, 0,
1937 ref(newAVREF(yyvsp[-3].opval),OP_RV2AV),
1938 scalar(yyvsp[-1].opval));}
1942 { yyval.opval = yyvsp[0].opval; }
1946 { yyval.opval = yyvsp[0].opval; }
1950 { yyval.opval = newUNOP(OP_AV2ARYLEN, 0, ref(yyvsp[0].opval, OP_AV2ARYLEN));}
1954 { yyval.opval = newBINOP(OP_HELEM, 0, oopsHV(yyvsp[-4].opval), jmaybe(yyvsp[-2].opval));
1955 expect = XOPERATOR; }
1959 { yyval.opval = newBINOP(OP_HELEM, 0,
1960 ref(newHVREF(yyvsp[-5].opval),OP_RV2HV),
1961 jmaybe(yyvsp[-2].opval));
1962 expect = XOPERATOR; }
1966 { assertref(yyvsp[-4].opval); yyval.opval = newBINOP(OP_HELEM, 0,
1967 ref(newHVREF(yyvsp[-4].opval),OP_RV2HV),
1968 jmaybe(yyvsp[-2].opval));
1969 expect = XOPERATOR; }
1973 { yyval.opval = newSLICEOP(0, yyvsp[-1].opval, yyvsp[-4].opval); }
1977 { yyval.opval = newSLICEOP(0, yyvsp[-1].opval, Nullop); }
1981 { yyval.opval = prepend_elem(OP_ASLICE,
1982 newOP(OP_PUSHMARK, 0),
1983 newLISTOP(OP_ASLICE, 0,
1984 list(yyvsp[-1].opval),
1985 ref(yyvsp[-3].opval, OP_ASLICE))); }
1989 { yyval.opval = prepend_elem(OP_HSLICE,
1990 newOP(OP_PUSHMARK, 0),
1991 newLISTOP(OP_HSLICE, 0,
1992 list(yyvsp[-2].opval),
1993 ref(oopsHV(yyvsp[-4].opval), OP_HSLICE)));
1994 expect = XOPERATOR; }
1998 { yyval.opval = yyvsp[0].opval; }
2002 { yyval.opval = newUNOP(OP_ENTERSUB, 0, scalar(yyvsp[0].opval)); }
2006 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED, scalar(yyvsp[-2].opval)); }
2010 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2011 append_elem(OP_LIST, yyvsp[-1].opval, scalar(yyvsp[-3].opval))); }
2015 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2016 append_elem(OP_LIST, yyvsp[0].opval, scalar(yyvsp[-1].opval))); }
2020 { yyval.opval = newUNOP(OP_DOFILE, 0, scalar(yyvsp[0].opval)); }
2024 { yyval.opval = newUNOP(OP_NULL, OPf_SPECIAL, scope(yyvsp[0].opval)); }
2028 { yyval.opval = newUNOP(OP_ENTERSUB,
2029 OPf_SPECIAL|OPf_STACKED,
2030 prepend_elem(OP_LIST,
2032 (OPpENTERSUB_AMPER<<8),
2033 scalar(yyvsp[-2].opval)
2034 )),Nullop)); dep();}
2038 { yyval.opval = newUNOP(OP_ENTERSUB,
2039 OPf_SPECIAL|OPf_STACKED,
2040 append_elem(OP_LIST,
2043 (OPpENTERSUB_AMPER<<8),
2044 scalar(yyvsp[-3].opval)
2049 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_SPECIAL|OPf_STACKED,
2050 prepend_elem(OP_LIST,
2051 scalar(newCVREF(0,scalar(yyvsp[-2].opval))), Nullop)); dep();}
2055 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_SPECIAL|OPf_STACKED,
2056 prepend_elem(OP_LIST,
2058 scalar(newCVREF(0,scalar(yyvsp[-3].opval))))); dep();}
2062 { yyval.opval = newOP(yyvsp[0].ival, OPf_SPECIAL);
2063 hints |= HINT_BLOCK_SCOPE; }
2067 { yyval.opval = newLOOPEX(yyvsp[-1].ival,yyvsp[0].opval); }
2071 { yyval.opval = newUNOP(OP_NOT, 0, scalar(yyvsp[0].opval)); }
2075 { yyval.opval = newOP(yyvsp[0].ival, 0); }
2079 { yyval.opval = newUNOP(yyvsp[-1].ival, 0, yyvsp[0].opval); }
2083 { yyval.opval = newUNOP(yyvsp[-1].ival, 0, yyvsp[0].opval); }
2087 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2088 append_elem(OP_LIST, yyvsp[0].opval, scalar(yyvsp[-1].opval))); }
2092 { yyval.opval = newOP(yyvsp[0].ival, 0); }
2096 { yyval.opval = newOP(yyvsp[-2].ival, 0); }
2100 { yyval.opval = newUNOP(OP_ENTERSUB, 0,
2101 scalar(yyvsp[0].opval)); }
2105 { yyval.opval = newOP(yyvsp[-2].ival, OPf_SPECIAL); }
2109 { yyval.opval = newUNOP(yyvsp[-3].ival, 0, yyvsp[-1].opval); }
2113 { yyval.opval = pmruntime(yyvsp[-3].opval, yyvsp[-1].opval, Nullop); }
2117 { yyval.opval = pmruntime(yyvsp[-5].opval, yyvsp[-3].opval, yyvsp[-1].opval); }
2121 { yyval.opval = Nullop; }
2125 { yyval.opval = yyvsp[0].opval; }
2129 { yyval.opval = Nullop; }
2133 { yyval.opval = yyvsp[0].opval; }
2137 { yyval.opval = yyvsp[-1].opval; }
2149 { in_my = 0; yyval.opval = my(yyvsp[0].opval); }
2153 { yyval.opval = newCVREF(yyvsp[-1].ival,yyvsp[0].opval); }
2157 { yyval.opval = newSVREF(yyvsp[0].opval); }
2161 { yyval.opval = newAVREF(yyvsp[0].opval); }
2165 { yyval.opval = newHVREF(yyvsp[0].opval); }
2169 { yyval.opval = newAVREF(yyvsp[0].opval); }
2173 { yyval.opval = newGVREF(0,yyvsp[0].opval); }
2177 { yyval.opval = scalar(yyvsp[0].opval); }
2181 { yyval.opval = scalar(yyvsp[0].opval); }
2185 { yyval.opval = scope(yyvsp[0].opval); }
2189 { yyval.opval = yyvsp[0].opval; }
2191 #line 2178 "perly.c"
2197 if (yystate == 0 && yym == 0)
2201 PerlIO_printf(Perl_debug_log,
2202 "yydebug: after reduction, shifting from state 0 to state %d\n",
2210 if ((yychar = yylex()) < 0) yychar = 0;
2215 if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
2216 if (!yys) yys = "illegal-symbol";
2217 PerlIO_printf(Perl_debug_log, "yydebug: state %d, reading %d (%s)\n",
2218 YYFINAL, yychar, yys);
2222 if (yychar == 0) goto yyaccept;
2225 if ((yyn = yygindex[yym]) && (yyn += yystate) >= 0 &&
2226 yyn <= YYTABLESIZE && yycheck[yyn] == yystate)
2227 yystate = yytable[yyn];
2229 yystate = yydgoto[yym];
2232 PerlIO_printf(Perl_debug_log,
2233 "yydebug: after reduction, shifting from state %d to state %d\n",
2236 if (yyssp >= yyss + yystacksize - 1)
2239 ** reallocate and recover. Note that pointers
2240 ** have to be reset, or bad things will happen
2242 int yyps_index = (yyssp - yyss);
2243 int yypv_index = (yyvsp - yyvs);
2244 yystacksize += YYSTACKSIZE;
2245 ysave->yyvs = yyvs =
2246 (YYSTYPE*)realloc((char*)yyvs,yystacksize * sizeof(YYSTYPE));
2247 ysave->yyss = yyss =
2248 (short*)realloc((char*)yyss,yystacksize * sizeof(short));
2251 yyssp = yyss + yyps_index;
2252 yyvsp = yyvs + yypv_index;
2258 yyerror("Out of memory for yacc stack");