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, 12, 12, 37, 37, 11, 11,
21 11, 11, 11, 11, 11, 11, 11, 24, 24, 25,
22 25, 26, 27, 28, 29, 30, 39, 39, 1, 1,
23 1, 1, 3, 3, 41, 41, 36, 36, 4, 42,
24 42, 43, 14, 14, 14, 23, 23, 23, 34, 34,
25 34, 34, 34, 34, 34, 34, 35, 35, 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, 15, 15,
33 15, 15, 31, 31, 32, 32, 32, 2, 2, 38,
34 21, 16, 17, 18, 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, 4, 4, 0, 2, 8, 8,
40 5, 5, 10, 9, 8, 11, 3, 0, 1, 0,
41 1, 1, 1, 1, 1, 1, 0, 1, 1, 1,
42 1, 1, 4, 3, 5, 5, 0, 1, 0, 3,
43 2, 6, 3, 3, 1, 2, 3, 1, 3, 5,
44 6, 3, 5, 2, 4, 4, 1, 1, 3, 3,
45 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
46 5, 3, 2, 2, 2, 2, 2, 2, 2, 2,
47 2, 2, 3, 2, 3, 2, 4, 3, 4, 1,
48 5, 1, 4, 5, 4, 1, 1, 1, 5, 6,
49 5, 6, 5, 4, 5, 1, 1, 3, 4, 3,
50 2, 2, 4, 5, 4, 5, 1, 2, 2, 1,
51 2, 2, 2, 1, 3, 1, 3, 4, 4, 6,
52 1, 1, 0, 1, 0, 1, 2, 1, 1, 1,
53 2, 2, 2, 2, 2, 2, 1, 1, 1, 1,
55 short yydefred[] = { 1,
56 0, 7, 0, 48, 59, 59, 0, 59, 8, 49,
57 9, 11, 0, 50, 51, 52, 0, 0, 0, 61,
58 0, 14, 4, 151, 0, 0, 126, 0, 146, 0,
59 59, 59, 0, 0, 0, 0, 0, 0, 0, 0,
60 0, 0, 0, 0, 0, 0, 0, 158, 159, 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, 116, 118, 0, 0, 0, 0, 152, 0,
64 54, 0, 60, 0, 7, 167, 170, 169, 168, 0,
65 0, 0, 0, 0, 0, 4, 0, 4, 0, 4,
66 0, 4, 0, 4, 4, 0, 0, 0, 0, 0,
67 141, 0, 0, 0, 0, 74, 0, 165, 0, 132,
68 0, 0, 0, 0, 0, 161, 0, 0, 0, 0,
69 0, 0, 0, 0, 0, 0, 106, 0, 162, 163,
70 164, 166, 0, 0, 37, 0, 0, 0, 0, 0,
71 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
72 0, 0, 0, 0, 0, 0, 98, 99, 0, 0,
73 0, 0, 0, 0, 0, 0, 13, 0, 53, 58,
74 0, 0, 0, 72, 0, 0, 0, 0, 0, 0,
75 0, 0, 0, 0, 0, 0, 0, 0, 4, 145,
76 147, 0, 0, 0, 0, 0, 0, 0, 108, 0,
77 130, 0, 0, 105, 28, 0, 0, 19, 0, 0,
78 0, 63, 0, 0, 0, 0, 0, 0, 0, 0,
79 0, 0, 0, 0, 0, 0, 0, 0, 77, 0,
80 78, 0, 0, 0, 0, 0, 0, 0, 128, 0,
81 0, 56, 55, 0, 3, 0, 149, 0, 76, 109,
82 0, 45, 0, 31, 46, 0, 32, 0, 0, 0,
83 0, 25, 0, 26, 160, 0, 0, 39, 44, 0,
84 0, 0, 148, 157, 75, 0, 133, 0, 135, 0,
85 107, 0, 0, 0, 0, 0, 0, 0, 115, 0,
86 113, 0, 124, 0, 129, 62, 73, 0, 0, 0,
87 0, 6, 21, 0, 0, 0, 0, 0, 0, 70,
88 134, 136, 123, 0, 121, 0, 0, 114, 0, 119,
89 125, 111, 150, 0, 0, 0, 7, 0, 0, 0,
90 0, 0, 0, 122, 120, 71, 29, 30, 23, 0,
91 0, 24, 0, 35, 0, 0, 5, 0, 0, 0,
94 short yydgoto[] = { 1,
95 9, 66, 10, 17, 85, 337, 88, 313, 3, 11,
96 12, 68, 272, 268, 70, 71, 72, 73, 74, 75,
97 76, 278, 78, 279, 262, 265, 269, 281, 263, 266,
98 116, 204, 90, 79, 242, 181, 145, 276, 13, 2,
101 short yysindex[] = { 0,
102 0, 0, -178, 0, 0, 0, -49, 0, 0, 0,
103 0, 0, 616, 0, 0, 0, -108, -233, 3, 0,
104 -230, 0, 0, 0, -24, -24, 0, 28, 0, 1899,
105 0, 0, -17, -12, -11, -10, -35, 1899, 39, 54,
106 60, 992, 936, -24, 1055, 1319, -217, 0, 0, -24,
107 1899, 1899, 1899, 1899, 1899, 1899, 1375, 0, 1899, 1899,
108 1431, -24, -24, -24, -24, 1899, -161, 0, 277, 3829,
109 -69, -42, 0, 0, -4, 88, 89, 97, 0, 24,
110 0, -107, 0, -105, 0, 0, 0, 0, 0, 1899,
111 114, 1899, 328, 24, -107, 0, 24, 0, 24, 0,
112 24, 0, 24, 0, 0, 115, 3829, 133, 1490, 936,
113 0, 328, 0, -69, 97, 0, 1899, 0, 137, 0,
114 328, -19, 56, 19, 1899, 0, 97, 98, 98, 98,
115 -82, -82, 93, -21, 98, 98, 0, -87, 0, 0,
116 0, 0, 328, 24, 0, 1899, 1899, 1899, 1899, 1899,
117 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899,
118 1899, 1899, 1899, 1899, 1899, 1899, 0, 0, -32, 1899,
119 1899, 1899, 1899, 1899, 1899, 1665, 0, 1899, 0, 0,
120 -8, 1899, 357, 0, 1899, 82, 1899, 24, 1899, -161,
121 1899, -161, 1899, -234, 1899, -234, 144, 1724, 0, 0,
122 0, 4, 11, 138, 1899, 97, 1780, 1836, 0, 61,
123 0, 1899, 96, 0, 0, -176, -176, 0, -176, -176,
124 -95, 0, 21, 1092, 328, 373, 434, 92, 3829, 1204,
125 3238, 3721, 2430, 815, 419, 98, 98, 1899, 0, 1899,
126 0, 173, -80, 55, -68, 57, -54, 68, 0, 6,
127 3829, 0, 0, 157, 0, 178, 0, 1899, 0, 0,
128 -176, 0, 181, 0, 0, 183, 0, -176, 190, 112,
129 209, 0, 231, 0, 0, 210, 277, 0, 0, 237,
130 224, 1899, 0, 0, 0, 9, 0, 15, 0, 17,
131 0, 105, 1899, 163, 1899, 81, 119, 1899, 0, 168,
132 0, 175, 0, 185, 0, 0, 0, 1146, 112, 112,
133 112, 0, 0, 1899, 112, 1899, 112, 1899, 279, 0,
134 0, 0, 0, 143, 0, 3863, 202, 0, 300, 0,
135 0, 0, 0, -161, -161, -234, 0, 321, -234, 326,
136 -161, 309, 112, 0, 0, 0, 0, 0, 0, 398,
137 112, 0, 112, 0, 1724, -161, 0, -234, -161, 336,
140 short yyrindex[] = { 0,
141 0, 0, 220, 0, 0, 0, 0, 0, 0, 0,
142 0, 0, 0, 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, 2159, 1989, 0,
145 0, 2799, 2867, 0, 0, 0, 0, 0, 0, 0,
146 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
147 0, 0, 0, 0, 0, 0, 65, 0, -25, 193,
148 2910, 2954, 0, 0, 2225, 2048, 0, 333, 0, 0,
149 0, 2, 0, 0, 0, 0, 0, 0, 0, 2284,
150 0, 0, 3575, 0, 257, 0, 0, 0, 0, 0,
151 0, 0, 0, 0, 0, 0, 3017, 0, 0, 348,
152 0, 3642, 496, 557, 2395, 0, 0, 0, 2111, 0,
153 3695, 2910, 0, 0, 2284, 0, 2520, 3065, 3103, 3190,
154 659, 2997, 2563, 0, 3301, 3354, 0, 0, 0, 0,
155 0, 0, 3741, 0, 0, 0, 0, 0, 0, 0,
156 0, 0, 0, 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, 2631, 0, 0,
159 0, 331, 880, 0, 348, 0, 2284, 0, 352, 65,
160 0, 65, 0, 164, 0, 164, 0, 338, 0, 0,
161 0, 0, 358, 0, 0, 2674, 0, 0, 0, 0,
162 0, 0, 2718, 0, 0, -22, 36, 0, 91, 110,
163 -33, 0, 0, 2573, 1267, 1531, 3476, 3521, 3675, 0,
164 -27, 3826, 3794, 1587, -6, 3392, 3440, 0, 0, 0,
165 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
166 3787, 0, 0, 0, 0, 0, 0, 0, 0, 0,
167 134, 0, 0, 0, 0, 0, 0, 359, 0, 0,
168 0, 0, 0, 0, 0, 0, 155, 0, 0, 0,
169 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
170 0, 0, 0, 0, 0, 0, 0, 348, 0, 0,
171 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
172 0, 0, 0, 0, 0, 0, 0, 349, 0, 0,
173 0, 0, 0, 0, 0, 1953, 0, 0, 0, 0,
174 0, 0, 0, 65, 65, 164, 0, 0, 164, 0,
175 65, 0, 0, 0, 0, 0, 0, 0, 0, 880,
176 0, 0, 0, 0, 368, 65, 0, 164, 65, 0,
179 short yygindex[] = { 0,
180 0, 0, 0, 136, -29, 0, 4145, 680, -78, 0,
181 0, 0, -193, -13, 3266, 519, 0, 0, 0, 0,
182 0, 400, 885, 0, 0, 267, -196, 63, 124, 250,
183 -16, -167, 20, 0, 0, 320, 356, 0, 0, 0,
186 #define YYTABLESIZE 4333
187 short yytable[] = { 69,
188 62, 280, 274, 62, 105, 214, 183, 64, 170, 20,
189 64, 62, 299, 90, 23, 15, 90, 256, 18, 213,
190 208, 172, 96, 82, 301, 64, 84, 98, 100, 102,
191 90, 90, 124, 15, 83, 90, 18, 83, 303, 125,
192 152, 270, 271, 134, 283, 91, 305, 138, 174, 320,
193 252, 83, 83, 171, 284, 321, 83, 322, 240, 64,
194 57, 83, 117, 118, 27, 90, 189, 92, 191, 126,
195 193, 172, 195, 184, 197, 198, 42, 210, 108, 294,
196 173, 139, 140, 141, 142, 319, 83, 4, 5, 6,
197 238, 7, 8, 109, 42, 202, 203, 27, 23, 110,
198 27, 27, 27, 171, 27, 23, 27, 27, 211, 27,
199 23, 23, 23, 300, 23, 302, 144, 338, 175, 340,
200 150, 151, 257, 27, 57, 258, 304, 176, 27, 205,
201 329, 16, 216, 217, 219, 220, 221, 222, 223, 327,
202 178, 18, 349, 21, 159, 352, 23, 177, 80, 16,
203 17, 182, 180, 185, 199, 27, 243, 244, 245, 246,
204 247, 248, 250, 20, 362, 254, 94, 95, 17, 282,
205 259, 203, 170, 200, 41, 261, 207, 217, 285, 62,
206 209, 217, 170, 212, 277, 291, 293, 27, 170, 27,
207 27, 286, 41, 288, 290, 43, 20, 323, 292, 20,
208 20, 20, 151, 20, 152, 20, 20, 19, 20, 150,
209 151, 328, 298, 15, 152, 306, 150, 151, 307, 2,
210 152, 309, 20, 310, 296, 239, 297, 20, 150, 151,
211 311, 169, 86, 68, 312, 344, 68, 87, 64, 64,
212 64, 64, 150, 151, 90, 90, 90, 90, 314, 316,
213 68, 68, 47, 90, 20, 47, 47, 47, 350, 47,
214 104, 47, 47, 64, 47, 83, 83, 83, 83, 90,
215 90, 315, 90, 90, 83, 150, 151, 317, 47, 324,
216 83, 83, 318, 47, 203, 68, 20, 325, 20, 20,
217 83, 83, 330, 83, 83, 83, 83, 83, 83, 331,
218 150, 151, 150, 151, 261, 150, 151, 150, 151, 332,
219 47, 150, 151, 150, 151, 150, 151, 150, 151, 343,
220 27, 27, 27, 27, 27, 27, 345, 27, 27, 27,
221 27, 27, 27, 27, 27, 27, 27, 27, 27, 27,
222 346, 69, 47, 27, 27, 47, 27, 27, 27, 27,
223 27, 150, 151, 150, 151, 27, 27, 27, 27, 27,
224 27, 351, 153, 27, 150, 151, 353, 355, 154, 155,
225 156, 157, 27, 65, 27, 27, 364, 150, 151, 57,
226 156, 158, 160, 161, 162, 163, 164, 165, 155, 153,
227 166, 65, 40, 167, 168, 169, 38, 165, 156, 43,
228 166, 150, 151, 167, 168, 169, 166, 40, 38, 167,
229 168, 169, 77, 218, 188, 150, 151, 360, 170, 20,
230 20, 20, 20, 20, 20, 65, 20, 20, 20, 20,
231 20, 20, 20, 20, 20, 20, 20, 20, 20, 150,
232 151, 342, 20, 20, 273, 20, 20, 20, 20, 20,
233 152, 0, 0, 0, 20, 20, 20, 20, 20, 20,
234 0, 0, 20, 170, 68, 68, 68, 68, 0, 0,
235 0, 20, 0, 20, 20, 47, 47, 47, 47, 47,
236 47, 255, 47, 47, 47, 0, 0, 0, 47, 68,
237 68, 47, 47, 47, 47, 152, 0, 0, 47, 47,
238 0, 47, 47, 47, 47, 47, 0, 0, 0, 170,
239 47, 47, 47, 47, 47, 47, 0, 0, 47, 0,
240 0, 0, 357, 0, 170, 0, 0, 47, 167, 47,
241 47, 167, 167, 167, 0, 167, 151, 167, 167, 151,
242 167, 152, 0, 89, 89, 264, 0, 267, 146, 147,
243 148, 149, 0, 151, 151, 106, 152, 0, 151, 167,
244 0, 114, 89, 122, 0, 0, 0, 0, 89, 0,
245 0, 0, 0, 150, 151, 0, 0, 0, 0, 0,
246 89, 89, 89, 89, 0, 0, 151, 0, 151, 168,
247 0, 0, 168, 168, 168, 0, 168, 110, 168, 168,
248 110, 168, 0, 0, 65, 65, 65, 65, 0, 0,
249 0, 0, 0, 0, 110, 110, 156, 157, 151, 110,
250 168, 167, 4, 5, 6, 0, 7, 8, 114, 65,
251 65, 0, 164, 165, 0, 0, 166, 0, 0, 167,
252 168, 169, 0, 0, 0, 0, 0, 0, 52, 110,
253 0, 62, 64, 50, 0, 57, 0, 65, 60, 154,
254 59, 156, 157, 4, 5, 6, 0, 7, 8, 0,
255 0, 0, 0, 0, 58, 0, 0, 164, 165, 63,
256 0, 166, 168, 0, 167, 168, 169, 241, 0, 347,
257 348, 0, 0, 0, 0, 0, 354, 0, 0, 100,
258 0, 0, 100, 0, 0, 0, 61, 156, 157, 0,
259 0, 361, 0, 0, 363, 275, 100, 100, 0, 0,
260 0, 100, 0, 0, 165, 0, 0, 166, 0, 0,
261 167, 168, 169, 0, 0, 0, 0, 0, 23, 165,
262 0, 53, 166, 0, 0, 167, 168, 169, 0, 0,
263 0, 100, 167, 167, 167, 167, 167, 0, 167, 167,
264 167, 0, 0, 0, 167, 0, 0, 151, 151, 151,
265 151, 0, 0, 0, 0, 167, 151, 167, 167, 167,
266 167, 167, 151, 151, 151, 151, 167, 167, 167, 167,
267 167, 167, 151, 151, 167, 151, 151, 151, 151, 151,
268 151, 151, 0, 167, 151, 167, 167, 151, 151, 151,
269 0, 0, 0, 168, 168, 168, 168, 168, 0, 168,
270 168, 168, 0, 0, 0, 168, 0, 0, 110, 110,
271 110, 110, 0, 0, 0, 0, 168, 110, 168, 168,
272 168, 168, 168, 110, 110, 110, 110, 168, 168, 168,
273 168, 168, 168, 110, 110, 168, 110, 110, 110, 110,
274 110, 110, 110, 0, 168, 110, 168, 168, 110, 110,
275 110, 22, 24, 25, 26, 27, 28, 0, 29, 30,
276 31, 0, 0, 0, 32, 0, 0, 33, 34, 35,
277 36, 0, 0, 0, 37, 38, 0, 39, 40, 41,
278 42, 43, 0, 0, 0, 170, 44, 45, 46, 47,
279 48, 49, 47, 0, 51, 47, 47, 47, 0, 47,
280 0, 47, 47, 54, 47, 55, 56, 115, 0, 0,
281 100, 100, 100, 100, 0, 127, 0, 152, 47, 100,
282 0, 0, 0, 47, 0, 100, 100, 100, 100, 0,
283 0, 0, 0, 0, 0, 100, 100, 0, 100, 100,
284 100, 100, 100, 100, 100, 0, 0, 100, 52, 0,
285 47, 62, 64, 50, 115, 57, 0, 65, 60, 0,
286 59, 0, 0, 0, 0, 0, 0, 0, 334, 335,
287 336, 0, 0, 0, 339, 0, 341, 0, 0, 63,
288 0, 206, 47, 0, 0, 47, 0, 0, 0, 115,
289 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
290 0, 0, 356, 0, 52, 0, 61, 62, 64, 50,
291 358, 57, 359, 65, 60, 0, 59, 0, 0, 0,
292 0, 0, 0, 365, 0, 0, 0, 0, 0, 0,
293 0, 0, 0, 0, 0, 63, 0, 0, 23, 0,
294 0, 53, 0, 0, 0, 0, 115, 0, 0, 0,
295 0, 115, 0, 0, 0, 0, 0, 0, 0, 0,
296 0, 0, 61, 0, 0, 0, 0, 52, 0, 0,
297 62, 64, 50, 0, 57, 0, 65, 60, 0, 59,
298 0, 154, 155, 156, 157, 0, 0, 0, 0, 0,
299 0, 0, 0, 0, 23, 0, 0, 53, 63, 164,
300 165, 0, 0, 166, 0, 0, 167, 168, 169, 0,
301 0, 0, 0, 0, 0, 47, 47, 47, 47, 47,
302 47, 0, 47, 47, 47, 61, 0, 0, 47, 0,
303 0, 47, 47, 47, 47, 0, 0, 0, 47, 47,
304 0, 47, 47, 47, 47, 47, 0, 0, 0, 0,
305 47, 47, 47, 47, 47, 47, 0, 23, 47, 0,
306 53, 0, 170, 0, 0, 0, 333, 47, 0, 47,
307 47, 0, 113, 25, 26, 27, 28, 87, 29, 30,
308 31, 0, 0, 0, 32, 0, 0, 0, 159, 0,
309 0, 0, 0, 0, 152, 38, 0, 39, 40, 41,
310 42, 43, 0, 0, 0, 0, 44, 45, 46, 47,
311 48, 49, 0, 0, 51, 0, 170, 0, 0, 0,
312 0, 0, 0, 54, 0, 55, 56, 0, 24, 25,
313 26, 27, 28, 0, 29, 30, 31, 0, 0, 0,
314 32, 295, 0, 0, 0, 0, 159, 0, 152, 0,
315 0, 38, 0, 39, 40, 41, 42, 43, 0, 0,
316 0, 0, 44, 45, 46, 47, 48, 49, 0, 0,
317 51, 0, 0, 0, 170, 0, 0, 0, 0, 54,
318 0, 55, 56, 0, 0, 0, 0, 84, 0, 0,
319 84, 119, 25, 26, 27, 28, 0, 29, 30, 31,
320 0, 0, 0, 32, 84, 84, 152, 0, 0, 84,
321 0, 0, 0, 0, 38, 0, 39, 40, 41, 42,
322 43, 0, 0, 0, 0, 44, 45, 46, 47, 48,
323 49, 52, 0, 51, 62, 64, 50, 0, 57, 84,
324 65, 60, 54, 59, 55, 56, 0, 0, 0, 0,
325 0, 0, 0, 0, 0, 0, 0, 123, 154, 155,
326 156, 157, 63, 0, 0, 0, 0, 0, 0, 0,
327 0, 0, 160, 161, 162, 163, 164, 165, 0, 0,
328 166, 0, 0, 167, 168, 169, 0, 52, 0, 61,
329 62, 64, 50, 0, 57, 133, 65, 60, 0, 59,
330 0, 0, 0, 0, 0, 0, 153, 0, 0, 0,
331 0, 0, 154, 155, 156, 157, 0, 0, 63, 0,
332 0, 0, 0, 0, 53, 158, 160, 161, 162, 163,
333 164, 165, 0, 0, 166, 0, 0, 167, 168, 169,
334 0, 0, 0, 52, 0, 61, 62, 64, 50, 0,
335 57, 0, 65, 60, 0, 59, 0, 0, 0, 0,
336 0, 0, 0, 0, 153, 0, 0, 0, 0, 0,
337 154, 155, 156, 157, 63, 0, 0, 0, 0, 0,
338 53, 0, 0, 158, 160, 161, 162, 163, 164, 165,
339 0, 0, 166, 0, 0, 167, 168, 169, 0, 0,
340 0, 61, 52, 137, 0, 62, 64, 50, 0, 57,
341 201, 65, 60, 0, 59, 0, 0, 0, 84, 84,
342 84, 84, 0, 0, 0, 0, 0, 84, 0, 0,
343 0, 0, 0, 63, 84, 0, 53, 0, 0, 0,
344 0, 0, 0, 84, 84, 0, 84, 84, 84, 84,
345 84, 85, 0, 0, 85, 24, 25, 26, 27, 28,
346 61, 29, 30, 31, 0, 0, 0, 32, 85, 85,
347 0, 0, 0, 85, 0, 0, 0, 0, 38, 0,
348 39, 40, 41, 42, 43, 0, 0, 0, 0, 44,
349 45, 46, 47, 48, 49, 53, 0, 51, 0, 0,
350 0, 0, 0, 85, 0, 0, 54, 86, 55, 56,
351 86, 24, 25, 26, 27, 28, 0, 29, 30, 31,
352 0, 0, 0, 32, 86, 86, 0, 0, 0, 86,
353 0, 0, 0, 0, 38, 0, 39, 40, 41, 42,
354 43, 0, 0, 0, 0, 44, 45, 46, 47, 48,
355 49, 0, 0, 51, 0, 0, 0, 0, 0, 86,
356 0, 0, 54, 0, 55, 56, 0, 24, 25, 26,
357 27, 28, 0, 29, 30, 31, 0, 52, 0, 32,
358 62, 64, 50, 0, 57, 249, 65, 60, 0, 59,
359 38, 0, 39, 40, 41, 42, 43, 0, 0, 0,
360 0, 44, 45, 46, 47, 48, 49, 0, 63, 51,
361 0, 0, 0, 0, 0, 0, 0, 0, 54, 0,
362 55, 56, 0, 0, 0, 0, 24, 25, 26, 27,
363 28, 0, 29, 30, 31, 61, 52, 0, 32, 62,
364 64, 50, 0, 57, 0, 65, 60, 0, 59, 38,
365 0, 39, 40, 41, 42, 43, 0, 0, 0, 0,
366 44, 45, 46, 47, 48, 49, 0, 63, 51, 0,
367 53, 0, 0, 0, 0, 0, 0, 54, 0, 55,
368 56, 0, 85, 85, 85, 85, 0, 0, 0, 0,
369 0, 85, 52, 0, 61, 62, 64, 50, 0, 57,
370 287, 65, 60, 0, 59, 0, 0, 85, 85, 0,
371 85, 85, 85, 85, 85, 0, 0, 0, 0, 0,
372 0, 0, 0, 63, 0, 0, 0, 0, 0, 53,
373 0, 0, 0, 0, 0, 0, 0, 0, 86, 86,
374 86, 86, 0, 0, 0, 0, 0, 86, 52, 0,
375 61, 62, 64, 50, 0, 57, 289, 65, 60, 0,
376 59, 0, 0, 86, 86, 0, 86, 86, 86, 86,
377 86, 0, 0, 0, 0, 0, 0, 0, 0, 63,
378 0, 0, 0, 0, 0, 53, 0, 0, 0, 0,
379 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
380 0, 24, 25, 26, 27, 28, 61, 29, 30, 31,
381 0, 52, 0, 32, 62, 64, 50, 0, 57, 0,
382 65, 60, 0, 59, 38, 0, 39, 40, 41, 42,
383 43, 0, 0, 0, 0, 44, 45, 46, 47, 48,
384 49, 53, 63, 51, 0, 0, 0, 0, 0, 0,
385 0, 0, 54, 0, 55, 56, 0, 0, 0, 22,
386 24, 25, 26, 27, 28, 0, 29, 30, 31, 61,
387 0, 0, 32, 91, 0, 0, 91, 0, 0, 0,
388 0, 0, 0, 38, 0, 39, 40, 41, 42, 43,
389 91, 91, 0, 0, 44, 45, 46, 47, 48, 49,
390 0, 0, 51, 0, 53, 0, 0, 0, 0, 144,
391 0, 54, 144, 55, 56, 0, 24, 25, 26, 27,
392 28, 0, 29, 30, 31, 91, 144, 144, 32, 0,
393 0, 144, 0, 0, 0, 0, 0, 0, 0, 38,
394 0, 39, 40, 41, 42, 43, 0, 0, 0, 0,
395 44, 45, 46, 47, 48, 49, 0, 0, 51, 144,
396 0, 144, 0, 0, 0, 0, 0, 54, 127, 55,
397 56, 127, 24, 25, 26, 27, 28, 0, 29, 30,
398 31, 0, 0, 0, 32, 127, 127, 0, 0, 0,
399 127, 144, 0, 0, 0, 38, 0, 39, 40, 41,
400 42, 43, 0, 0, 0, 0, 44, 45, 46, 47,
401 48, 49, 0, 0, 51, 0, 0, 0, 127, 0,
402 127, 0, 0, 54, 0, 55, 56, 0, 0, 0,
403 0, 151, 0, 0, 151, 24, 25, 26, 27, 28,
404 0, 29, 30, 31, 0, 0, 0, 32, 151, 151,
405 127, 0, 0, 151, 0, 0, 0, 0, 38, 0,
406 39, 40, 41, 42, 43, 0, 0, 0, 0, 44,
407 45, 46, 47, 48, 49, 0, 0, 51, 0, 137,
408 0, 151, 137, 151, 0, 0, 54, 0, 55, 56,
409 0, 0, 0, 0, 0, 0, 137, 137, 0, 0,
410 0, 137, 0, 0, 91, 91, 91, 91, 0, 0,
411 0, 0, 0, 151, 0, 0, 0, 0, 0, 0,
412 0, 0, 0, 0, 0, 0, 0, 0, 0, 91,
413 91, 137, 91, 0, 0, 0, 0, 0, 0, 0,
414 144, 144, 144, 144, 0, 112, 0, 0, 112, 144,
415 0, 0, 0, 0, 0, 144, 144, 144, 144, 0,
416 0, 137, 112, 112, 0, 144, 144, 112, 144, 144,
417 144, 144, 144, 144, 144, 0, 0, 144, 0, 0,
418 144, 144, 144, 0, 0, 0, 0, 0, 0, 0,
419 0, 0, 0, 0, 0, 112, 0, 112, 0, 127,
420 127, 127, 127, 0, 153, 0, 0, 153, 127, 0,
421 0, 0, 0, 0, 127, 127, 127, 127, 0, 0,
422 0, 153, 153, 0, 127, 127, 153, 127, 127, 127,
423 127, 127, 127, 127, 0, 0, 127, 0, 0, 127,
424 127, 127, 0, 0, 0, 0, 0, 0, 0, 0,
425 0, 0, 0, 0, 0, 0, 153, 0, 0, 0,
426 0, 0, 151, 151, 151, 151, 0, 0, 0, 0,
427 0, 151, 0, 0, 0, 0, 0, 151, 151, 151,
428 151, 0, 0, 0, 0, 0, 153, 151, 151, 0,
429 151, 151, 151, 151, 151, 151, 151, 0, 0, 151,
430 0, 0, 151, 151, 151, 0, 0, 0, 0, 0,
431 137, 137, 137, 137, 0, 154, 0, 0, 0, 137,
432 0, 0, 0, 0, 0, 137, 137, 137, 137, 0,
433 0, 0, 154, 154, 0, 137, 137, 154, 137, 137,
434 137, 137, 137, 137, 137, 0, 0, 137, 0, 0,
435 137, 137, 137, 0, 0, 0, 0, 0, 0, 0,
436 0, 0, 0, 0, 0, 154, 0, 154, 0, 0,
437 0, 0, 0, 0, 0, 0, 112, 112, 112, 112,
438 0, 0, 0, 0, 0, 112, 0, 0, 0, 0,
439 0, 112, 112, 112, 112, 0, 0, 154, 0, 0,
440 170, 112, 112, 0, 112, 112, 112, 112, 112, 112,
441 112, 0, 0, 112, 0, 0, 112, 112, 112, 0,
442 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
443 0, 0, 152, 0, 0, 153, 153, 153, 153, 0,
444 139, 0, 0, 0, 153, 0, 0, 0, 0, 0,
445 153, 153, 153, 153, 0, 0, 0, 139, 139, 0,
446 153, 153, 139, 153, 153, 153, 153, 153, 153, 153,
447 0, 0, 153, 0, 0, 153, 153, 153, 0, 0,
448 0, 0, 0, 104, 0, 0, 104, 0, 0, 0,
449 139, 0, 139, 88, 0, 0, 88, 0, 0, 0,
450 104, 104, 0, 0, 0, 104, 0, 0, 0, 0,
451 88, 88, 0, 0, 0, 88, 0, 0, 0, 0,
452 0, 0, 139, 0, 0, 0, 0, 0, 0, 0,
453 0, 0, 0, 0, 0, 104, 0, 0, 0, 0,
454 0, 0, 0, 0, 0, 88, 154, 154, 154, 154,
455 0, 66, 0, 0, 66, 154, 0, 0, 0, 0,
456 0, 154, 154, 154, 154, 104, 0, 0, 66, 66,
457 0, 154, 154, 66, 154, 154, 154, 154, 154, 154,
458 154, 0, 0, 154, 0, 0, 154, 154, 154, 0,
459 0, 0, 0, 0, 69, 0, 154, 155, 156, 157,
460 0, 0, 0, 66, 0, 0, 0, 0, 0, 0,
461 0, 69, 69, 163, 164, 165, 69, 0, 166, 0,
462 0, 167, 168, 169, 0, 0, 0, 0, 0, 0,
463 0, 0, 0, 66, 0, 0, 0, 0, 103, 0,
464 0, 103, 0, 0, 69, 0, 69, 0, 0, 0,
465 0, 0, 0, 0, 0, 103, 103, 0, 0, 0,
466 103, 0, 0, 0, 0, 0, 0, 0, 0, 0,
467 0, 139, 139, 139, 139, 0, 69, 0, 0, 0,
468 139, 0, 0, 0, 0, 0, 139, 139, 139, 139,
469 103, 0, 0, 0, 0, 0, 139, 139, 0, 139,
470 139, 139, 139, 139, 139, 139, 0, 0, 139, 0,
471 0, 139, 139, 139, 104, 104, 104, 104, 0, 140,
472 103, 0, 140, 104, 88, 88, 88, 88, 0, 104,
473 104, 104, 104, 0, 0, 0, 140, 140, 0, 104,
474 104, 140, 104, 104, 104, 104, 104, 104, 104, 88,
475 88, 104, 88, 0, 104, 104, 104, 0, 0, 0,
476 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
477 0, 140, 0, 0, 0, 0, 0, 0, 0, 0,
478 0, 0, 66, 66, 66, 66, 0, 153, 0, 0,
479 153, 66, 0, 0, 0, 0, 0, 66, 66, 66,
480 66, 0, 0, 0, 153, 153, 0, 66, 66, 153,
481 66, 66, 66, 66, 66, 66, 66, 0, 0, 66,
482 0, 0, 66, 66, 66, 69, 69, 69, 69, 0,
483 110, 0, 0, 110, 69, 0, 0, 0, 0, 153,
484 69, 69, 69, 69, 0, 0, 0, 110, 110, 0,
485 69, 69, 110, 69, 69, 69, 69, 69, 69, 69,
486 0, 0, 69, 0, 0, 69, 69, 69, 0, 103,
487 103, 103, 103, 0, 117, 0, 0, 117, 103, 0,
488 0, 0, 110, 0, 103, 103, 103, 103, 0, 0,
489 0, 117, 117, 0, 103, 103, 117, 103, 103, 103,
490 103, 103, 103, 103, 0, 0, 103, 0, 0, 103,
491 103, 103, 0, 0, 0, 0, 0, 101, 0, 0,
492 101, 0, 0, 0, 0, 0, 117, 0, 0, 0,
493 0, 0, 0, 0, 101, 101, 0, 138, 0, 101,
494 138, 0, 0, 0, 0, 0, 0, 0, 0, 0,
495 140, 140, 140, 140, 138, 138, 0, 0, 0, 140,
496 0, 0, 0, 0, 0, 140, 140, 140, 140, 101,
497 0, 0, 0, 0, 0, 140, 140, 0, 140, 140,
498 140, 140, 140, 140, 140, 95, 0, 140, 95, 138,
499 140, 140, 140, 0, 0, 0, 0, 0, 0, 0,
500 0, 0, 95, 95, 0, 0, 0, 95, 0, 0,
501 0, 0, 0, 0, 0, 0, 0, 0, 153, 153,
502 153, 153, 0, 96, 0, 0, 96, 153, 0, 0,
503 0, 0, 0, 153, 153, 153, 153, 95, 0, 0,
504 96, 96, 0, 153, 153, 96, 153, 153, 153, 153,
505 153, 153, 153, 0, 0, 153, 0, 0, 153, 153,
506 153, 110, 110, 110, 110, 0, 0, 0, 0, 0,
507 110, 0, 0, 0, 0, 96, 110, 110, 110, 110,
508 0, 0, 0, 0, 0, 0, 110, 110, 0, 110,
509 110, 110, 110, 110, 110, 110, 0, 0, 110, 0,
510 0, 110, 110, 110, 0, 117, 117, 117, 117, 0,
511 97, 0, 0, 97, 117, 0, 0, 0, 0, 0,
512 117, 117, 117, 117, 0, 0, 0, 97, 97, 0,
513 117, 117, 97, 117, 117, 117, 117, 117, 117, 117,
514 0, 0, 117, 0, 0, 117, 117, 117, 101, 101,
515 101, 101, 0, 0, 0, 0, 0, 101, 0, 0,
516 0, 0, 97, 101, 101, 101, 101, 0, 138, 138,
517 138, 138, 0, 101, 101, 93, 101, 101, 101, 101,
518 101, 101, 101, 107, 0, 101, 0, 112, 0, 0,
519 121, 0, 0, 138, 138, 0, 0, 128, 129, 130,
520 131, 132, 0, 0, 135, 136, 0, 0, 170, 0,
521 0, 143, 0, 0, 0, 0, 95, 95, 95, 95,
522 0, 93, 0, 0, 93, 95, 0, 0, 0, 0,
523 0, 95, 95, 95, 95, 0, 0, 186, 93, 93,
524 152, 95, 95, 93, 95, 95, 95, 95, 95, 95,
525 95, 0, 0, 0, 96, 96, 96, 96, 0, 0,
526 0, 0, 0, 96, 0, 0, 0, 0, 0, 96,
527 96, 96, 96, 93, 94, 0, 0, 94, 0, 96,
528 96, 0, 96, 96, 96, 96, 96, 96, 96, 0,
529 0, 94, 94, 0, 0, 0, 94, 0, 224, 225,
530 226, 227, 228, 229, 230, 231, 232, 233, 234, 235,
531 236, 237, 92, 0, 0, 92, 0, 0, 0, 0,
532 0, 0, 0, 251, 0, 0, 94, 0, 0, 92,
533 92, 0, 0, 0, 92, 0, 0, 0, 0, 0,
534 0, 97, 97, 97, 97, 0, 0, 0, 0, 0,
535 97, 0, 0, 0, 0, 0, 97, 97, 97, 97,
536 80, 0, 0, 80, 92, 0, 97, 97, 0, 97,
537 97, 97, 97, 97, 97, 97, 0, 80, 80, 0,
538 0, 0, 80, 0, 0, 0, 0, 0, 0, 0,
539 0, 0, 0, 0, 0, 0, 81, 0, 0, 81,
540 0, 0, 0, 308, 154, 155, 156, 157, 0, 0,
541 0, 0, 80, 81, 81, 0, 0, 0, 81, 161,
542 162, 163, 164, 165, 0, 0, 166, 0, 0, 167,
543 168, 169, 0, 0, 0, 0, 0, 0, 0, 0,
544 326, 82, 0, 0, 82, 0, 0, 0, 81, 0,
545 0, 0, 93, 93, 93, 93, 0, 0, 82, 82,
546 0, 93, 0, 82, 0, 0, 0, 93, 93, 93,
547 93, 0, 0, 0, 0, 0, 0, 93, 93, 0,
548 93, 93, 93, 93, 93, 93, 93, 0, 0, 0,
549 0, 0, 0, 82, 0, 143, 0, 0, 143, 0,
550 0, 0, 0, 0, 0, 94, 94, 94, 94, 0,
551 0, 0, 143, 143, 94, 0, 0, 143, 0, 0,
552 94, 94, 94, 94, 0, 0, 0, 0, 0, 0,
553 94, 94, 0, 94, 94, 94, 94, 94, 94, 94,
554 0, 0, 0, 92, 92, 92, 92, 143, 0, 0,
555 0, 0, 92, 0, 0, 0, 0, 0, 92, 92,
556 92, 92, 142, 0, 0, 142, 0, 0, 92, 92,
557 0, 92, 92, 92, 92, 92, 92, 92, 0, 142,
558 142, 0, 0, 0, 142, 0, 0, 0, 0, 0,
559 0, 80, 80, 80, 80, 79, 0, 0, 79, 0,
560 80, 0, 0, 0, 0, 0, 80, 80, 80, 80,
561 0, 0, 79, 79, 142, 131, 80, 80, 131, 80,
562 80, 80, 80, 80, 80, 80, 0, 81, 81, 81,
563 81, 0, 131, 131, 0, 0, 81, 131, 0, 0,
564 0, 0, 81, 81, 81, 81, 0, 79, 0, 0,
565 0, 0, 81, 81, 0, 81, 81, 81, 81, 81,
566 81, 102, 0, 0, 102, 0, 0, 131, 0, 0,
567 0, 0, 82, 82, 82, 82, 0, 0, 102, 102,
568 0, 82, 0, 102, 0, 0, 0, 82, 82, 0,
569 82, 170, 0, 0, 0, 0, 0, 82, 82, 0,
570 82, 82, 82, 82, 82, 82, 0, 67, 0, 0,
571 67, 0, 0, 102, 87, 0, 0, 87, 0, 0,
572 0, 0, 0, 152, 67, 67, 143, 143, 143, 143,
573 0, 87, 87, 0, 0, 143, 87, 0, 0, 0,
574 0, 143, 143, 0, 0, 0, 89, 0, 0, 89,
575 0, 143, 143, 0, 143, 143, 143, 143, 143, 67,
576 0, 0, 0, 89, 89, 0, 87, 0, 89, 0,
577 0, 159, 0, 0, 0, 0, 0, 0, 0, 0,
578 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
579 0, 0, 0, 142, 142, 142, 142, 0, 89, 170,
580 0, 0, 142, 0, 0, 159, 0, 0, 142, 142,
581 0, 0, 0, 0, 0, 0, 0, 0, 142, 142,
582 0, 142, 142, 142, 142, 142, 79, 79, 79, 79,
583 0, 152, 0, 170, 0, 0, 0, 0, 0, 0,
584 0, 0, 0, 0, 0, 0, 131, 131, 131, 131,
585 0, 79, 79, 0, 0, 131, 0, 0, 0, 0,
586 0, 131, 131, 0, 0, 152, 0, 0, 0, 0,
587 0, 131, 131, 0, 131, 131, 131, 131, 131, 0,
588 0, 0, 0, 0, 0, 0, 0, 154, 155, 156,
589 157, 0, 102, 102, 102, 102, 0, 0, 0, 0,
590 0, 102, 0, 162, 163, 164, 165, 102, 102, 166,
591 0, 0, 167, 168, 169, 0, 0, 102, 102, 0,
592 102, 102, 102, 102, 102, 0, 0, 0, 0, 0,
593 0, 0, 0, 0, 0, 0, 0, 0, 67, 67,
594 67, 67, 0, 0, 0, 87, 87, 87, 87, 0,
595 0, 0, 0, 0, 87, 0, 0, 0, 0, 0,
596 0, 0, 0, 67, 67, 0, 0, 0, 0, 0,
597 87, 87, 0, 87, 87, 87, 87, 89, 89, 89,
598 89, 0, 0, 0, 0, 0, 89, 0, 0, 153,
599 0, 0, 0, 0, 0, 154, 155, 156, 157, 0,
600 0, 0, 89, 89, 0, 89, 89, 89, 158, 160,
601 161, 162, 163, 164, 165, 0, 0, 166, 0, 0,
602 167, 168, 169, 153, 0, 0, 0, 0, 0, 154,
603 155, 156, 157, 0, 0, 0, 0, 67, 0, 0,
604 0, 81, 0, 160, 161, 162, 163, 164, 165, 0,
605 0, 166, 0, 0, 167, 168, 169, 97, 99, 101,
606 103, 0, 0, 0, 0, 0, 111, 0, 0, 120,
607 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
608 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
609 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
610 0, 0, 0, 0, 179, 0, 0, 0, 0, 0,
611 0, 0, 0, 0, 0, 0, 0, 0, 187, 0,
612 0, 190, 0, 192, 0, 194, 0, 196, 0, 0,
613 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
614 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
615 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
616 0, 0, 0, 0, 0, 0, 0, 0, 215, 0,
617 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
618 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
619 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
620 0, 0, 0, 0, 0, 253, 0, 0, 0, 0,
623 short yycheck[] = { 13,
624 36, 198, 196, 36, 40, 93, 85, 41, 91, 59,
625 44, 36, 93, 41, 123, 41, 44, 185, 41, 41,
626 40, 91, 40, 257, 93, 59, 257, 40, 40, 40,
627 58, 59, 46, 59, 41, 63, 59, 44, 93, 257,
628 123, 276, 277, 57, 41, 26, 41, 61, 91, 41,
629 59, 58, 59, 123, 44, 41, 63, 41, 91, 93,
630 59, 59, 43, 44, 0, 93, 96, 40, 98, 50,
631 100, 91, 102, 90, 104, 105, 41, 59, 40, 59,
632 123, 62, 63, 64, 65, 282, 93, 266, 267, 268,
633 123, 270, 271, 40, 59, 109, 110, 33, 123, 40,
634 36, 37, 38, 123, 40, 123, 42, 43, 125, 45,
635 123, 123, 123, 59, 123, 59, 278, 314, 123, 316,
636 297, 298, 41, 59, 123, 44, 59, 40, 64, 110,
637 298, 41, 146, 147, 148, 149, 150, 151, 152, 59,
638 44, 6, 336, 8, 63, 339, 123, 59, 257, 59,
639 41, 257, 260, 40, 40, 91, 170, 171, 172, 173,
640 174, 175, 176, 0, 358, 182, 31, 32, 59, 199,
641 187, 185, 91, 41, 41, 189, 40, 191, 41, 36,
642 125, 195, 91, 91, 198, 125, 91, 123, 91, 125,
643 126, 205, 59, 207, 208, 41, 33, 93, 212, 36,
644 37, 38, 298, 40, 123, 42, 43, 257, 45, 297,
645 298, 93, 40, 59, 123, 59, 297, 298, 41, 0,
646 123, 41, 59, 41, 238, 258, 240, 64, 297, 298,
647 41, 314, 257, 41, 123, 93, 44, 262, 272, 273,
648 274, 275, 297, 298, 272, 273, 274, 275, 40, 40,
649 58, 59, 33, 281, 91, 36, 37, 38, 337, 40,
650 296, 42, 43, 297, 45, 272, 273, 274, 275, 297,
651 298, 41, 300, 301, 281, 297, 298, 41, 59, 293,
652 287, 288, 59, 64, 298, 93, 123, 125, 125, 126,
653 297, 298, 125, 300, 301, 302, 303, 304, 305, 125,
654 297, 298, 297, 298, 318, 297, 298, 297, 298, 125,
655 91, 297, 298, 297, 298, 297, 298, 297, 298, 41,
656 256, 257, 258, 259, 260, 261, 125, 263, 264, 265,
657 266, 267, 268, 269, 270, 271, 272, 273, 274, 275,
658 41, 355, 123, 279, 280, 126, 282, 283, 284, 285,
659 286, 297, 298, 297, 298, 291, 292, 293, 294, 295,
660 296, 41, 281, 299, 297, 298, 41, 59, 287, 288,
661 289, 290, 308, 41, 310, 311, 41, 297, 298, 123,
662 289, 300, 301, 302, 303, 304, 305, 306, 41, 59,
663 309, 59, 41, 312, 313, 314, 59, 306, 41, 41,
664 309, 297, 298, 312, 313, 314, 309, 59, 41, 312,
665 313, 314, 13, 147, 95, 297, 298, 355, 91, 256,
666 257, 258, 259, 260, 261, 93, 263, 264, 265, 266,
667 267, 268, 269, 270, 271, 272, 273, 274, 275, 297,
668 298, 318, 279, 280, 195, 282, 283, 284, 285, 286,
669 123, -1, -1, -1, 291, 292, 293, 294, 295, 296,
670 -1, -1, 299, 91, 272, 273, 274, 275, -1, -1,
671 -1, 308, -1, 310, 311, 256, 257, 258, 259, 260,
672 261, 125, 263, 264, 265, -1, -1, -1, 269, 297,
673 298, 272, 273, 274, 275, 123, -1, -1, 279, 280,
674 -1, 282, 283, 284, 285, 286, -1, -1, -1, 91,
675 291, 292, 293, 294, 295, 296, -1, -1, 299, -1,
676 -1, -1, 125, -1, 91, -1, -1, 308, 33, 310,
677 311, 36, 37, 38, -1, 40, 41, 42, 43, 44,
678 45, 123, -1, 25, 26, 190, -1, 192, 272, 273,
679 274, 275, -1, 58, 59, 37, 123, -1, 63, 64,
680 -1, 43, 44, 45, -1, -1, -1, -1, 50, -1,
681 -1, -1, -1, 297, 298, -1, -1, -1, -1, -1,
682 62, 63, 64, 65, -1, -1, 91, -1, 93, 33,
683 -1, -1, 36, 37, 38, -1, 40, 41, 42, 43,
684 44, 45, -1, -1, 272, 273, 274, 275, -1, -1,
685 -1, -1, -1, -1, 58, 59, 289, 290, 123, 63,
686 64, 126, 266, 267, 268, -1, 270, 271, 110, 297,
687 298, -1, 305, 306, -1, -1, 309, -1, -1, 312,
688 313, 314, -1, -1, -1, -1, -1, -1, 33, 93,
689 -1, 36, 37, 38, -1, 40, -1, 42, 43, 287,
690 45, 289, 290, 266, 267, 268, -1, 270, 271, -1,
691 -1, -1, -1, -1, 59, -1, -1, 305, 306, 64,
692 -1, 309, 126, -1, 312, 313, 314, 169, -1, 334,
693 335, -1, -1, -1, -1, -1, 341, -1, -1, 41,
694 -1, -1, 44, -1, -1, -1, 91, 289, 290, -1,
695 -1, 356, -1, -1, 359, 197, 58, 59, -1, -1,
696 -1, 63, -1, -1, 306, -1, -1, 309, -1, -1,
697 312, 313, 314, -1, -1, -1, -1, -1, 123, 306,
698 -1, 126, 309, -1, -1, 312, 313, 314, -1, -1,
699 -1, 93, 257, 258, 259, 260, 261, -1, 263, 264,
700 265, -1, -1, -1, 269, -1, -1, 272, 273, 274,
701 275, -1, -1, -1, -1, 280, 281, 282, 283, 284,
702 285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
703 295, 296, 297, 298, 299, 300, 301, 302, 303, 304,
704 305, 306, -1, 308, 309, 310, 311, 312, 313, 314,
705 -1, -1, -1, 257, 258, 259, 260, 261, -1, 263,
706 264, 265, -1, -1, -1, 269, -1, -1, 272, 273,
707 274, 275, -1, -1, -1, -1, 280, 281, 282, 283,
708 284, 285, 286, 287, 288, 289, 290, 291, 292, 293,
709 294, 295, 296, 297, 298, 299, 300, 301, 302, 303,
710 304, 305, 306, -1, 308, 309, 310, 311, 312, 313,
711 314, 256, 257, 258, 259, 260, 261, -1, 263, 264,
712 265, -1, -1, -1, 269, -1, -1, 272, 273, 274,
713 275, -1, -1, -1, 279, 280, -1, 282, 283, 284,
714 285, 286, -1, -1, -1, 91, 291, 292, 293, 294,
715 295, 296, 33, -1, 299, 36, 37, 38, -1, 40,
716 -1, 42, 43, 308, 45, 310, 311, 43, -1, -1,
717 272, 273, 274, 275, -1, 51, -1, 123, 59, 281,
718 -1, -1, -1, 64, -1, 287, 288, 289, 290, -1,
719 -1, -1, -1, -1, -1, 297, 298, -1, 300, 301,
720 302, 303, 304, 305, 306, -1, -1, 309, 33, -1,
721 91, 36, 37, 38, 90, 40, -1, 42, 43, -1,
722 45, -1, -1, -1, -1, -1, -1, -1, 309, 310,
723 311, -1, -1, -1, 315, -1, 317, -1, -1, 64,
724 -1, 117, 123, -1, -1, 126, -1, -1, -1, 125,
725 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
726 -1, -1, 343, -1, 33, -1, 91, 36, 37, 38,
727 351, 40, 353, 42, 43, -1, 45, -1, -1, -1,
728 -1, -1, -1, 364, -1, -1, -1, -1, -1, -1,
729 -1, -1, -1, -1, -1, 64, -1, -1, 123, -1,
730 -1, 126, -1, -1, -1, -1, 182, -1, -1, -1,
731 -1, 187, -1, -1, -1, -1, -1, -1, -1, -1,
732 -1, -1, 91, -1, -1, -1, -1, 33, -1, -1,
733 36, 37, 38, -1, 40, -1, 42, 43, -1, 45,
734 -1, 287, 288, 289, 290, -1, -1, -1, -1, -1,
735 -1, -1, -1, -1, 123, -1, -1, 126, 64, 305,
736 306, -1, -1, 309, -1, -1, 312, 313, 314, -1,
737 -1, -1, -1, -1, -1, 256, 257, 258, 259, 260,
738 261, -1, 263, 264, 265, 91, -1, -1, 269, -1,
739 -1, 272, 273, 274, 275, -1, -1, -1, 279, 280,
740 -1, 282, 283, 284, 285, 286, -1, -1, -1, -1,
741 291, 292, 293, 294, 295, 296, -1, 123, 299, -1,
742 126, -1, 91, -1, -1, -1, 41, 308, -1, 310,
743 311, -1, 257, 258, 259, 260, 261, 262, 263, 264,
744 265, -1, -1, -1, 269, -1, -1, -1, 63, -1,
745 -1, -1, -1, -1, 123, 280, -1, 282, 283, 284,
746 285, 286, -1, -1, -1, -1, 291, 292, 293, 294,
747 295, 296, -1, -1, 299, -1, 91, -1, -1, -1,
748 -1, -1, -1, 308, -1, 310, 311, -1, 257, 258,
749 259, 260, 261, -1, 263, 264, 265, -1, -1, -1,
750 269, 58, -1, -1, -1, -1, 63, -1, 123, -1,
751 -1, 280, -1, 282, 283, 284, 285, 286, -1, -1,
752 -1, -1, 291, 292, 293, 294, 295, 296, -1, -1,
753 299, -1, -1, -1, 91, -1, -1, -1, -1, 308,
754 -1, 310, 311, -1, -1, -1, -1, 41, -1, -1,
755 44, 257, 258, 259, 260, 261, -1, 263, 264, 265,
756 -1, -1, -1, 269, 58, 59, 123, -1, -1, 63,
757 -1, -1, -1, -1, 280, -1, 282, 283, 284, 285,
758 286, -1, -1, -1, -1, 291, 292, 293, 294, 295,
759 296, 33, -1, 299, 36, 37, 38, -1, 40, 93,
760 42, 43, 308, 45, 310, 311, -1, -1, -1, -1,
761 -1, -1, -1, -1, -1, -1, -1, 59, 287, 288,
762 289, 290, 64, -1, -1, -1, -1, -1, -1, -1,
763 -1, -1, 301, 302, 303, 304, 305, 306, -1, -1,
764 309, -1, -1, 312, 313, 314, -1, 33, -1, 91,
765 36, 37, 38, -1, 40, 41, 42, 43, -1, 45,
766 -1, -1, -1, -1, -1, -1, 281, -1, -1, -1,
767 -1, -1, 287, 288, 289, 290, -1, -1, 64, -1,
768 -1, -1, -1, -1, 126, 300, 301, 302, 303, 304,
769 305, 306, -1, -1, 309, -1, -1, 312, 313, 314,
770 -1, -1, -1, 33, -1, 91, 36, 37, 38, -1,
771 40, -1, 42, 43, -1, 45, -1, -1, -1, -1,
772 -1, -1, -1, -1, 281, -1, -1, -1, -1, -1,
773 287, 288, 289, 290, 64, -1, -1, -1, -1, -1,
774 126, -1, -1, 300, 301, 302, 303, 304, 305, 306,
775 -1, -1, 309, -1, -1, 312, 313, 314, -1, -1,
776 -1, 91, 33, 93, -1, 36, 37, 38, -1, 40,
777 41, 42, 43, -1, 45, -1, -1, -1, 272, 273,
778 274, 275, -1, -1, -1, -1, -1, 281, -1, -1,
779 -1, -1, -1, 64, 288, -1, 126, -1, -1, -1,
780 -1, -1, -1, 297, 298, -1, 300, 301, 302, 303,
781 304, 41, -1, -1, 44, 257, 258, 259, 260, 261,
782 91, 263, 264, 265, -1, -1, -1, 269, 58, 59,
783 -1, -1, -1, 63, -1, -1, -1, -1, 280, -1,
784 282, 283, 284, 285, 286, -1, -1, -1, -1, 291,
785 292, 293, 294, 295, 296, 126, -1, 299, -1, -1,
786 -1, -1, -1, 93, -1, -1, 308, 41, 310, 311,
787 44, 257, 258, 259, 260, 261, -1, 263, 264, 265,
788 -1, -1, -1, 269, 58, 59, -1, -1, -1, 63,
789 -1, -1, -1, -1, 280, -1, 282, 283, 284, 285,
790 286, -1, -1, -1, -1, 291, 292, 293, 294, 295,
791 296, -1, -1, 299, -1, -1, -1, -1, -1, 93,
792 -1, -1, 308, -1, 310, 311, -1, 257, 258, 259,
793 260, 261, -1, 263, 264, 265, -1, 33, -1, 269,
794 36, 37, 38, -1, 40, 41, 42, 43, -1, 45,
795 280, -1, 282, 283, 284, 285, 286, -1, -1, -1,
796 -1, 291, 292, 293, 294, 295, 296, -1, 64, 299,
797 -1, -1, -1, -1, -1, -1, -1, -1, 308, -1,
798 310, 311, -1, -1, -1, -1, 257, 258, 259, 260,
799 261, -1, 263, 264, 265, 91, 33, -1, 269, 36,
800 37, 38, -1, 40, -1, 42, 43, -1, 45, 280,
801 -1, 282, 283, 284, 285, 286, -1, -1, -1, -1,
802 291, 292, 293, 294, 295, 296, -1, 64, 299, -1,
803 126, -1, -1, -1, -1, -1, -1, 308, -1, 310,
804 311, -1, 272, 273, 274, 275, -1, -1, -1, -1,
805 -1, 281, 33, -1, 91, 36, 37, 38, -1, 40,
806 41, 42, 43, -1, 45, -1, -1, 297, 298, -1,
807 300, 301, 302, 303, 304, -1, -1, -1, -1, -1,
808 -1, -1, -1, 64, -1, -1, -1, -1, -1, 126,
809 -1, -1, -1, -1, -1, -1, -1, -1, 272, 273,
810 274, 275, -1, -1, -1, -1, -1, 281, 33, -1,
811 91, 36, 37, 38, -1, 40, 41, 42, 43, -1,
812 45, -1, -1, 297, 298, -1, 300, 301, 302, 303,
813 304, -1, -1, -1, -1, -1, -1, -1, -1, 64,
814 -1, -1, -1, -1, -1, 126, -1, -1, -1, -1,
815 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
816 -1, 257, 258, 259, 260, 261, 91, 263, 264, 265,
817 -1, 33, -1, 269, 36, 37, 38, -1, 40, -1,
818 42, 43, -1, 45, 280, -1, 282, 283, 284, 285,
819 286, -1, -1, -1, -1, 291, 292, 293, 294, 295,
820 296, 126, 64, 299, -1, -1, -1, -1, -1, -1,
821 -1, -1, 308, -1, 310, 311, -1, -1, -1, 256,
822 257, 258, 259, 260, 261, -1, 263, 264, 265, 91,
823 -1, -1, 269, 41, -1, -1, 44, -1, -1, -1,
824 -1, -1, -1, 280, -1, 282, 283, 284, 285, 286,
825 58, 59, -1, -1, 291, 292, 293, 294, 295, 296,
826 -1, -1, 299, -1, 126, -1, -1, -1, -1, 41,
827 -1, 308, 44, 310, 311, -1, 257, 258, 259, 260,
828 261, -1, 263, 264, 265, 93, 58, 59, 269, -1,
829 -1, 63, -1, -1, -1, -1, -1, -1, -1, 280,
830 -1, 282, 283, 284, 285, 286, -1, -1, -1, -1,
831 291, 292, 293, 294, 295, 296, -1, -1, 299, 91,
832 -1, 93, -1, -1, -1, -1, -1, 308, 41, 310,
833 311, 44, 257, 258, 259, 260, 261, -1, 263, 264,
834 265, -1, -1, -1, 269, 58, 59, -1, -1, -1,
835 63, 123, -1, -1, -1, 280, -1, 282, 283, 284,
836 285, 286, -1, -1, -1, -1, 291, 292, 293, 294,
837 295, 296, -1, -1, 299, -1, -1, -1, 91, -1,
838 93, -1, -1, 308, -1, 310, 311, -1, -1, -1,
839 -1, 41, -1, -1, 44, 257, 258, 259, 260, 261,
840 -1, 263, 264, 265, -1, -1, -1, 269, 58, 59,
841 123, -1, -1, 63, -1, -1, -1, -1, 280, -1,
842 282, 283, 284, 285, 286, -1, -1, -1, -1, 291,
843 292, 293, 294, 295, 296, -1, -1, 299, -1, 41,
844 -1, 91, 44, 93, -1, -1, 308, -1, 310, 311,
845 -1, -1, -1, -1, -1, -1, 58, 59, -1, -1,
846 -1, 63, -1, -1, 272, 273, 274, 275, -1, -1,
847 -1, -1, -1, 123, -1, -1, -1, -1, -1, -1,
848 -1, -1, -1, -1, -1, -1, -1, -1, -1, 297,
849 298, 93, 300, -1, -1, -1, -1, -1, -1, -1,
850 272, 273, 274, 275, -1, 41, -1, -1, 44, 281,
851 -1, -1, -1, -1, -1, 287, 288, 289, 290, -1,
852 -1, 123, 58, 59, -1, 297, 298, 63, 300, 301,
853 302, 303, 304, 305, 306, -1, -1, 309, -1, -1,
854 312, 313, 314, -1, -1, -1, -1, -1, -1, -1,
855 -1, -1, -1, -1, -1, 91, -1, 93, -1, 272,
856 273, 274, 275, -1, 41, -1, -1, 44, 281, -1,
857 -1, -1, -1, -1, 287, 288, 289, 290, -1, -1,
858 -1, 58, 59, -1, 297, 298, 63, 300, 301, 302,
859 303, 304, 305, 306, -1, -1, 309, -1, -1, 312,
860 313, 314, -1, -1, -1, -1, -1, -1, -1, -1,
861 -1, -1, -1, -1, -1, -1, 93, -1, -1, -1,
862 -1, -1, 272, 273, 274, 275, -1, -1, -1, -1,
863 -1, 281, -1, -1, -1, -1, -1, 287, 288, 289,
864 290, -1, -1, -1, -1, -1, 123, 297, 298, -1,
865 300, 301, 302, 303, 304, 305, 306, -1, -1, 309,
866 -1, -1, 312, 313, 314, -1, -1, -1, -1, -1,
867 272, 273, 274, 275, -1, 41, -1, -1, -1, 281,
868 -1, -1, -1, -1, -1, 287, 288, 289, 290, -1,
869 -1, -1, 58, 59, -1, 297, 298, 63, 300, 301,
870 302, 303, 304, 305, 306, -1, -1, 309, -1, -1,
871 312, 313, 314, -1, -1, -1, -1, -1, -1, -1,
872 -1, -1, -1, -1, -1, 91, -1, 93, -1, -1,
873 -1, -1, -1, -1, -1, -1, 272, 273, 274, 275,
874 -1, -1, -1, -1, -1, 281, -1, -1, -1, -1,
875 -1, 287, 288, 289, 290, -1, -1, 123, -1, -1,
876 91, 297, 298, -1, 300, 301, 302, 303, 304, 305,
877 306, -1, -1, 309, -1, -1, 312, 313, 314, -1,
878 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
879 -1, -1, 123, -1, -1, 272, 273, 274, 275, -1,
880 41, -1, -1, -1, 281, -1, -1, -1, -1, -1,
881 287, 288, 289, 290, -1, -1, -1, 58, 59, -1,
882 297, 298, 63, 300, 301, 302, 303, 304, 305, 306,
883 -1, -1, 309, -1, -1, 312, 313, 314, -1, -1,
884 -1, -1, -1, 41, -1, -1, 44, -1, -1, -1,
885 91, -1, 93, 41, -1, -1, 44, -1, -1, -1,
886 58, 59, -1, -1, -1, 63, -1, -1, -1, -1,
887 58, 59, -1, -1, -1, 63, -1, -1, -1, -1,
888 -1, -1, 123, -1, -1, -1, -1, -1, -1, -1,
889 -1, -1, -1, -1, -1, 93, -1, -1, -1, -1,
890 -1, -1, -1, -1, -1, 93, 272, 273, 274, 275,
891 -1, 41, -1, -1, 44, 281, -1, -1, -1, -1,
892 -1, 287, 288, 289, 290, 123, -1, -1, 58, 59,
893 -1, 297, 298, 63, 300, 301, 302, 303, 304, 305,
894 306, -1, -1, 309, -1, -1, 312, 313, 314, -1,
895 -1, -1, -1, -1, 41, -1, 287, 288, 289, 290,
896 -1, -1, -1, 93, -1, -1, -1, -1, -1, -1,
897 -1, 58, 59, 304, 305, 306, 63, -1, 309, -1,
898 -1, 312, 313, 314, -1, -1, -1, -1, -1, -1,
899 -1, -1, -1, 123, -1, -1, -1, -1, 41, -1,
900 -1, 44, -1, -1, 91, -1, 93, -1, -1, -1,
901 -1, -1, -1, -1, -1, 58, 59, -1, -1, -1,
902 63, -1, -1, -1, -1, -1, -1, -1, -1, -1,
903 -1, 272, 273, 274, 275, -1, 123, -1, -1, -1,
904 281, -1, -1, -1, -1, -1, 287, 288, 289, 290,
905 93, -1, -1, -1, -1, -1, 297, 298, -1, 300,
906 301, 302, 303, 304, 305, 306, -1, -1, 309, -1,
907 -1, 312, 313, 314, 272, 273, 274, 275, -1, 41,
908 123, -1, 44, 281, 272, 273, 274, 275, -1, 287,
909 288, 289, 290, -1, -1, -1, 58, 59, -1, 297,
910 298, 63, 300, 301, 302, 303, 304, 305, 306, 297,
911 298, 309, 300, -1, 312, 313, 314, -1, -1, -1,
912 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
913 -1, 93, -1, -1, -1, -1, -1, -1, -1, -1,
914 -1, -1, 272, 273, 274, 275, -1, 41, -1, -1,
915 44, 281, -1, -1, -1, -1, -1, 287, 288, 289,
916 290, -1, -1, -1, 58, 59, -1, 297, 298, 63,
917 300, 301, 302, 303, 304, 305, 306, -1, -1, 309,
918 -1, -1, 312, 313, 314, 272, 273, 274, 275, -1,
919 41, -1, -1, 44, 281, -1, -1, -1, -1, 93,
920 287, 288, 289, 290, -1, -1, -1, 58, 59, -1,
921 297, 298, 63, 300, 301, 302, 303, 304, 305, 306,
922 -1, -1, 309, -1, -1, 312, 313, 314, -1, 272,
923 273, 274, 275, -1, 41, -1, -1, 44, 281, -1,
924 -1, -1, 93, -1, 287, 288, 289, 290, -1, -1,
925 -1, 58, 59, -1, 297, 298, 63, 300, 301, 302,
926 303, 304, 305, 306, -1, -1, 309, -1, -1, 312,
927 313, 314, -1, -1, -1, -1, -1, 41, -1, -1,
928 44, -1, -1, -1, -1, -1, 93, -1, -1, -1,
929 -1, -1, -1, -1, 58, 59, -1, 41, -1, 63,
930 44, -1, -1, -1, -1, -1, -1, -1, -1, -1,
931 272, 273, 274, 275, 58, 59, -1, -1, -1, 281,
932 -1, -1, -1, -1, -1, 287, 288, 289, 290, 93,
933 -1, -1, -1, -1, -1, 297, 298, -1, 300, 301,
934 302, 303, 304, 305, 306, 41, -1, 309, 44, 93,
935 312, 313, 314, -1, -1, -1, -1, -1, -1, -1,
936 -1, -1, 58, 59, -1, -1, -1, 63, -1, -1,
937 -1, -1, -1, -1, -1, -1, -1, -1, 272, 273,
938 274, 275, -1, 41, -1, -1, 44, 281, -1, -1,
939 -1, -1, -1, 287, 288, 289, 290, 93, -1, -1,
940 58, 59, -1, 297, 298, 63, 300, 301, 302, 303,
941 304, 305, 306, -1, -1, 309, -1, -1, 312, 313,
942 314, 272, 273, 274, 275, -1, -1, -1, -1, -1,
943 281, -1, -1, -1, -1, 93, 287, 288, 289, 290,
944 -1, -1, -1, -1, -1, -1, 297, 298, -1, 300,
945 301, 302, 303, 304, 305, 306, -1, -1, 309, -1,
946 -1, 312, 313, 314, -1, 272, 273, 274, 275, -1,
947 41, -1, -1, 44, 281, -1, -1, -1, -1, -1,
948 287, 288, 289, 290, -1, -1, -1, 58, 59, -1,
949 297, 298, 63, 300, 301, 302, 303, 304, 305, 306,
950 -1, -1, 309, -1, -1, 312, 313, 314, 272, 273,
951 274, 275, -1, -1, -1, -1, -1, 281, -1, -1,
952 -1, -1, 93, 287, 288, 289, 290, -1, 272, 273,
953 274, 275, -1, 297, 298, 30, 300, 301, 302, 303,
954 304, 305, 306, 38, -1, 309, -1, 42, -1, -1,
955 45, -1, -1, 297, 298, -1, -1, 52, 53, 54,
956 55, 56, -1, -1, 59, 60, -1, -1, 91, -1,
957 -1, 66, -1, -1, -1, -1, 272, 273, 274, 275,
958 -1, 41, -1, -1, 44, 281, -1, -1, -1, -1,
959 -1, 287, 288, 289, 290, -1, -1, 92, 58, 59,
960 123, 297, 298, 63, 300, 301, 302, 303, 304, 305,
961 306, -1, -1, -1, 272, 273, 274, 275, -1, -1,
962 -1, -1, -1, 281, -1, -1, -1, -1, -1, 287,
963 288, 289, 290, 93, 41, -1, -1, 44, -1, 297,
964 298, -1, 300, 301, 302, 303, 304, 305, 306, -1,
965 -1, 58, 59, -1, -1, -1, 63, -1, 153, 154,
966 155, 156, 157, 158, 159, 160, 161, 162, 163, 164,
967 165, 166, 41, -1, -1, 44, -1, -1, -1, -1,
968 -1, -1, -1, 178, -1, -1, 93, -1, -1, 58,
969 59, -1, -1, -1, 63, -1, -1, -1, -1, -1,
970 -1, 272, 273, 274, 275, -1, -1, -1, -1, -1,
971 281, -1, -1, -1, -1, -1, 287, 288, 289, 290,
972 41, -1, -1, 44, 93, -1, 297, 298, -1, 300,
973 301, 302, 303, 304, 305, 306, -1, 58, 59, -1,
974 -1, -1, 63, -1, -1, -1, -1, -1, -1, -1,
975 -1, -1, -1, -1, -1, -1, 41, -1, -1, 44,
976 -1, -1, -1, 258, 287, 288, 289, 290, -1, -1,
977 -1, -1, 93, 58, 59, -1, -1, -1, 63, 302,
978 303, 304, 305, 306, -1, -1, 309, -1, -1, 312,
979 313, 314, -1, -1, -1, -1, -1, -1, -1, -1,
980 295, 41, -1, -1, 44, -1, -1, -1, 93, -1,
981 -1, -1, 272, 273, 274, 275, -1, -1, 58, 59,
982 -1, 281, -1, 63, -1, -1, -1, 287, 288, 289,
983 290, -1, -1, -1, -1, -1, -1, 297, 298, -1,
984 300, 301, 302, 303, 304, 305, 306, -1, -1, -1,
985 -1, -1, -1, 93, -1, 41, -1, -1, 44, -1,
986 -1, -1, -1, -1, -1, 272, 273, 274, 275, -1,
987 -1, -1, 58, 59, 281, -1, -1, 63, -1, -1,
988 287, 288, 289, 290, -1, -1, -1, -1, -1, -1,
989 297, 298, -1, 300, 301, 302, 303, 304, 305, 306,
990 -1, -1, -1, 272, 273, 274, 275, 93, -1, -1,
991 -1, -1, 281, -1, -1, -1, -1, -1, 287, 288,
992 289, 290, 41, -1, -1, 44, -1, -1, 297, 298,
993 -1, 300, 301, 302, 303, 304, 305, 306, -1, 58,
994 59, -1, -1, -1, 63, -1, -1, -1, -1, -1,
995 -1, 272, 273, 274, 275, 41, -1, -1, 44, -1,
996 281, -1, -1, -1, -1, -1, 287, 288, 289, 290,
997 -1, -1, 58, 59, 93, 41, 297, 298, 44, 300,
998 301, 302, 303, 304, 305, 306, -1, 272, 273, 274,
999 275, -1, 58, 59, -1, -1, 281, 63, -1, -1,
1000 -1, -1, 287, 288, 289, 290, -1, 93, -1, -1,
1001 -1, -1, 297, 298, -1, 300, 301, 302, 303, 304,
1002 305, 41, -1, -1, 44, -1, -1, 93, -1, -1,
1003 -1, -1, 272, 273, 274, 275, -1, -1, 58, 59,
1004 -1, 281, -1, 63, -1, -1, -1, 287, 288, -1,
1005 290, 91, -1, -1, -1, -1, -1, 297, 298, -1,
1006 300, 301, 302, 303, 304, 305, -1, 41, -1, -1,
1007 44, -1, -1, 93, 41, -1, -1, 44, -1, -1,
1008 -1, -1, -1, 123, 58, 59, 272, 273, 274, 275,
1009 -1, 58, 59, -1, -1, 281, 63, -1, -1, -1,
1010 -1, 287, 288, -1, -1, -1, 41, -1, -1, 44,
1011 -1, 297, 298, -1, 300, 301, 302, 303, 304, 93,
1012 -1, -1, -1, 58, 59, -1, 93, -1, 63, -1,
1013 -1, 63, -1, -1, -1, -1, -1, -1, -1, -1,
1014 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1015 -1, -1, -1, 272, 273, 274, 275, -1, 93, 91,
1016 -1, -1, 281, -1, -1, 63, -1, -1, 287, 288,
1017 -1, -1, -1, -1, -1, -1, -1, -1, 297, 298,
1018 -1, 300, 301, 302, 303, 304, 272, 273, 274, 275,
1019 -1, 123, -1, 91, -1, -1, -1, -1, -1, -1,
1020 -1, -1, -1, -1, -1, -1, 272, 273, 274, 275,
1021 -1, 297, 298, -1, -1, 281, -1, -1, -1, -1,
1022 -1, 287, 288, -1, -1, 123, -1, -1, -1, -1,
1023 -1, 297, 298, -1, 300, 301, 302, 303, 304, -1,
1024 -1, -1, -1, -1, -1, -1, -1, 287, 288, 289,
1025 290, -1, 272, 273, 274, 275, -1, -1, -1, -1,
1026 -1, 281, -1, 303, 304, 305, 306, 287, 288, 309,
1027 -1, -1, 312, 313, 314, -1, -1, 297, 298, -1,
1028 300, 301, 302, 303, 304, -1, -1, -1, -1, -1,
1029 -1, -1, -1, -1, -1, -1, -1, -1, 272, 273,
1030 274, 275, -1, -1, -1, 272, 273, 274, 275, -1,
1031 -1, -1, -1, -1, 281, -1, -1, -1, -1, -1,
1032 -1, -1, -1, 297, 298, -1, -1, -1, -1, -1,
1033 297, 298, -1, 300, 301, 302, 303, 272, 273, 274,
1034 275, -1, -1, -1, -1, -1, 281, -1, -1, 281,
1035 -1, -1, -1, -1, -1, 287, 288, 289, 290, -1,
1036 -1, -1, 297, 298, -1, 300, 301, 302, 300, 301,
1037 302, 303, 304, 305, 306, -1, -1, 309, -1, -1,
1038 312, 313, 314, 281, -1, -1, -1, -1, -1, 287,
1039 288, 289, 290, -1, -1, -1, -1, 13, -1, -1,
1040 -1, 17, -1, 301, 302, 303, 304, 305, 306, -1,
1041 -1, 309, -1, -1, 312, 313, 314, 33, 34, 35,
1042 36, -1, -1, -1, -1, -1, 42, -1, -1, 45,
1043 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1044 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1045 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1046 -1, -1, -1, -1, 80, -1, -1, -1, -1, -1,
1047 -1, -1, -1, -1, -1, -1, -1, -1, 94, -1,
1048 -1, 97, -1, 99, -1, 101, -1, 103, -1, -1,
1049 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1050 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1051 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1052 -1, -1, -1, -1, -1, -1, -1, -1, 144, -1,
1053 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1054 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1055 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1056 -1, -1, -1, -1, -1, 181, -1, -1, -1, -1,
1063 #define YYMAXTOKEN 314
1066 "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,
1067 "'!'",0,0,"'$'","'%'","'&'",0,"'('","')'","'*'","'+'","','","'-'",0,0,0,0,0,0,0,
1068 0,0,0,0,0,"':'","';'",0,0,0,"'?'","'@'",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1069 0,0,0,0,0,0,"'['",0,"']'",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1070 0,0,"'{'",0,"'}'","'~'",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1071 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1072 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1073 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"WORD","METHOD","FUNCMETH","THING",
1074 "PMFUNC","PRIVATEREF","FUNC0SUB","UNIOPSUB","LSTOPSUB","LABEL","FORMAT","SUB",
1075 "ANONSUB","PACKAGE","USE","WHILE","UNTIL","IF","UNLESS","ELSE","ELSIF",
1076 "CONTINUE","FOR","LOOPEX","DOTDOT","FUNC0","FUNC1","FUNC","UNIOP","LSTOP",
1077 "RELOP","EQOP","MULOP","ADDOP","DOLSHARP","DO","HASHBRACK","NOAMP","LOCAL","MY",
1078 "OROP","ANDOP","NOTOP","ASSIGNOP","OROR","ANDAND","BITOROP","BITANDOP",
1079 "SHIFTOP","MATCHOP","UMINUS","REFGEN","POWOP","PREINC","PREDEC","POSTINC",
1085 "prog : $$1 lineseq",
1086 "block : '{' remember lineseq '}'",
1088 "mblock : '{' mremember lineseq '}'",
1091 "lineseq : lineseq decl",
1092 "lineseq : lineseq line",
1093 "line : label cond",
1096 "line : label sideff ';'",
1099 "sideff : expr IF expr",
1100 "sideff : expr UNLESS expr",
1101 "sideff : expr WHILE expr",
1102 "sideff : expr UNTIL iexpr",
1104 "else : ELSE mblock",
1105 "else : ELSIF '(' mexpr ')' mblock else",
1106 "cond : IF '(' remember mexpr ')' mblock else",
1107 "cond : UNLESS '(' remember miexpr ')' mblock else",
1108 "cond : IF block block else",
1109 "cond : UNLESS block block else",
1111 "cont : CONTINUE block",
1112 "loop : label WHILE '(' remember mtexpr ')' mblock cont",
1113 "loop : label UNTIL '(' remember miexpr ')' mblock cont",
1114 "loop : label WHILE block block cont",
1115 "loop : label UNTIL block block cont",
1116 "loop : label FOR MY remember my_scalar '(' mexpr ')' mblock cont",
1117 "loop : label FOR scalar '(' remember mexpr ')' mblock cont",
1118 "loop : label FOR '(' remember mexpr ')' mblock cont",
1119 "loop : label FOR '(' remember mnexpr ';' mtexpr ';' mnexpr ')' mblock",
1120 "loop : label block cont",
1136 "format : FORMAT startsub WORD block",
1137 "format : FORMAT startsub block",
1138 "subrout : SUB startsub WORD proto block",
1139 "subrout : SUB startsub WORD proto ';'",
1143 "package : PACKAGE WORD ';'",
1144 "package : PACKAGE ';'",
1145 "use : USE startsub WORD WORD listexpr ';'",
1146 "expr : expr ANDOP expr",
1147 "expr : expr OROP expr",
1149 "argexpr : argexpr ','",
1150 "argexpr : argexpr ',' term",
1152 "listop : LSTOP indirob argexpr",
1153 "listop : FUNC '(' indirob expr ')'",
1154 "listop : term ARROW method '(' listexprcom ')'",
1155 "listop : METHOD indirob listexpr",
1156 "listop : FUNCMETH indirob '(' listexprcom ')'",
1157 "listop : LSTOP listexpr",
1158 "listop : FUNC '(' listexprcom ')'",
1159 "listop : LSTOPSUB startsub block listexpr",
1162 "term : term ASSIGNOP term",
1163 "term : term POWOP term",
1164 "term : term MULOP term",
1165 "term : term ADDOP term",
1166 "term : term SHIFTOP term",
1167 "term : term RELOP term",
1168 "term : term EQOP term",
1169 "term : term BITANDOP term",
1170 "term : term BITOROP term",
1171 "term : term DOTDOT term",
1172 "term : term ANDAND term",
1173 "term : term OROR term",
1174 "term : term '?' term ':' term",
1175 "term : term MATCHOP term",
1180 "term : REFGEN term",
1181 "term : term POSTINC",
1182 "term : term POSTDEC",
1183 "term : PREINC term",
1184 "term : PREDEC term",
1185 "term : local term",
1186 "term : '(' expr ')'",
1188 "term : '[' expr ']'",
1190 "term : HASHBRACK expr ';' '}'",
1191 "term : HASHBRACK ';' '}'",
1192 "term : ANONSUB startsub proto block",
1194 "term : star '{' expr ';' '}'",
1196 "term : scalar '[' expr ']'",
1197 "term : term ARROW '[' expr ']'",
1198 "term : term '[' expr ']'",
1202 "term : scalar '{' expr ';' '}'",
1203 "term : term ARROW '{' expr ';' '}'",
1204 "term : term '{' expr ';' '}'",
1205 "term : '(' expr ')' '[' expr ']'",
1206 "term : '(' ')' '[' expr ']'",
1207 "term : ary '[' expr ']'",
1208 "term : ary '{' expr ';' '}'",
1211 "term : amper '(' ')'",
1212 "term : amper '(' expr ')'",
1213 "term : NOAMP WORD listexpr",
1216 "term : DO WORD '(' ')'",
1217 "term : DO WORD '(' expr ')'",
1218 "term : DO scalar '(' ')'",
1219 "term : DO scalar '(' expr ')'",
1221 "term : LOOPEX term",
1222 "term : NOTOP argexpr",
1224 "term : UNIOP block",
1225 "term : UNIOP term",
1226 "term : UNIOPSUB term",
1228 "term : FUNC0 '(' ')'",
1230 "term : FUNC1 '(' ')'",
1231 "term : FUNC1 '(' expr ')'",
1232 "term : PMFUNC '(' term ')'",
1233 "term : PMFUNC '(' term ',' term ')'",
1237 "listexpr : argexpr",
1239 "listexprcom : expr",
1240 "listexprcom : expr ','",
1243 "my_scalar : scalar",
1244 "amper : '&' indirob",
1245 "scalar : '$' indirob",
1246 "ary : '@' indirob",
1247 "hsh : '%' indirob",
1248 "arylen : DOLSHARP indirob",
1249 "star : '*' indirob",
1253 "indirob : PRIVATEREF",
1256 #define yyclearin (yychar=(-1))
1257 #define yyerrok (yyerrflag=0)
1260 #define YYMAXDEPTH YYSTACKSIZE
1264 #define YYSTACKSIZE YYMAXDEPTH
1266 #define YYSTACKSIZE 500
1267 #define YYMAXDEPTH 500
1278 #line 1349 "perly.c"
1279 #define YYABORT goto yyabort
1280 #define YYACCEPT goto yyaccept
1281 #define YYERROR goto yyerrlab
1298 struct ysv* ysave = (struct ysv*)ptr;
1299 if (ysave->yyss) Safefree(ysave->yyss);
1300 if (ysave->yyvs) Safefree(ysave->yyvs);
1301 yydebug = ysave->oldyydebug;
1302 yynerrs = ysave->oldyynerrs;
1303 yyerrflag = ysave->oldyyerrflag;
1304 yychar = ysave->oldyychar;
1305 yyval = ysave->oldyyval;
1306 yylval = ysave->oldyylval;
1313 register int yym, yyn, yystate;
1314 register short *yyssp;
1315 register YYSTYPE *yyvsp;
1318 unsigned yystacksize = YYSTACKSIZE;
1322 extern char *getenv();
1325 struct ysv *ysave = (struct ysv*)safemalloc(sizeof(struct ysv));
1326 SAVEDESTRUCTOR(yydestruct, ysave);
1327 ysave->oldyydebug = yydebug;
1328 ysave->oldyynerrs = yynerrs;
1329 ysave->oldyyerrflag = yyerrflag;
1330 ysave->oldyychar = yychar;
1331 ysave->oldyyval = yyval;
1332 ysave->oldyylval = yylval;
1335 if (yys = getenv("YYDEBUG"))
1338 if (yyn >= '0' && yyn <= '9')
1339 yydebug = yyn - '0';
1348 ** Initialize private stacks (yyparse may be called from an action)
1350 ysave->yyss = yyss = (short*)safemalloc(yystacksize*sizeof(short));
1351 ysave->yyvs = yyvs = (YYSTYPE*)safemalloc(yystacksize*sizeof(YYSTYPE));
1357 *yyssp = yystate = 0;
1360 if (yyn = yydefred[yystate]) goto yyreduce;
1363 if ((yychar = yylex()) < 0) yychar = 0;
1368 if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
1369 if (!yys) yys = "illegal-symbol";
1370 PerlIO_printf(Perl_debug_log, "yydebug: state %d, reading %d (%s)\n", yystate,
1375 if ((yyn = yysindex[yystate]) && (yyn += yychar) >= 0 &&
1376 yyn <= YYTABLESIZE && yycheck[yyn] == yychar)
1380 PerlIO_printf(Perl_debug_log, "yydebug: state %d, shifting to state %d\n",
1381 yystate, yytable[yyn]);
1383 if (yyssp >= yyss + yystacksize - 1)
1386 ** reallocate and recover. Note that pointers
1387 ** have to be reset, or bad things will happen
1389 int yyps_index = (yyssp - yyss);
1390 int yypv_index = (yyvsp - yyvs);
1391 yystacksize += YYSTACKSIZE;
1392 ysave->yyvs = yyvs =
1393 (YYSTYPE*)realloc((char*)yyvs,yystacksize * sizeof(YYSTYPE));
1394 ysave->yyss = yyss =
1395 (short*)realloc((char*)yyss,yystacksize * sizeof(short));
1398 yyssp = yyss + yyps_index;
1399 yyvsp = yyvs + yypv_index;
1401 *++yyssp = yystate = yytable[yyn];
1404 if (yyerrflag > 0) --yyerrflag;
1407 if ((yyn = yyrindex[yystate]) && (yyn += yychar) >= 0 &&
1408 yyn <= YYTABLESIZE && yycheck[yyn] == yychar)
1413 if (yyerrflag) goto yyinrecovery;
1418 yyerror("syntax error");
1430 if ((yyn = yysindex[*yyssp]) && (yyn += YYERRCODE) >= 0 &&
1431 yyn <= YYTABLESIZE && yycheck[yyn] == YYERRCODE)
1435 PerlIO_printf(Perl_debug_log,
1436 "yydebug: state %d, error recovery shifting to state %d\n",
1437 *yyssp, yytable[yyn]);
1439 if (yyssp >= yyss + yystacksize - 1)
1442 ** reallocate and recover. Note that pointers
1443 ** have to be reset, or bad things will happen
1445 int yyps_index = (yyssp - yyss);
1446 int yypv_index = (yyvsp - yyvs);
1447 yystacksize += YYSTACKSIZE;
1448 ysave->yyvs = yyvs = (YYSTYPE*)realloc((char*)yyvs,
1449 yystacksize * sizeof(YYSTYPE));
1450 ysave->yyss = yyss = (short*)realloc((char*)yyss,
1451 yystacksize * sizeof(short));
1454 yyssp = yyss + yyps_index;
1455 yyvsp = yyvs + yypv_index;
1457 *++yyssp = yystate = yytable[yyn];
1465 PerlIO_printf(Perl_debug_log,
1466 "yydebug: error recovery discarding state %d\n",
1469 if (yyssp <= yyss) goto yyabort;
1477 if (yychar == 0) goto yyabort;
1482 if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
1483 if (!yys) yys = "illegal-symbol";
1484 PerlIO_printf(Perl_debug_log,
1485 "yydebug: state %d, error recovery discards token %d (%s)\n",
1486 yystate, yychar, yys);
1495 PerlIO_printf(Perl_debug_log, "yydebug: state %d, reducing by rule %d (%s)\n",
1496 yystate, yyn, yyrule[yyn]);
1499 yyval = yyvsp[1-yym];
1505 #if defined(YYDEBUG) && defined(DEBUGGING)
1506 yydebug = (debug & 1);
1513 { newPROG(yyvsp[0].opval); }
1517 { if (copline > (line_t)yyvsp[-3].ival)
1518 copline = yyvsp[-3].ival;
1519 yyval.opval = block_end(yyvsp[-2].ival, yyvsp[-1].opval); }
1523 { yyval.ival = block_start(TRUE); }
1527 { if (copline > (line_t)yyvsp[-3].ival)
1528 copline = yyvsp[-3].ival;
1529 yyval.opval = block_end(yyvsp[-2].ival, yyvsp[-1].opval); }
1533 { yyval.ival = block_start(FALSE); }
1537 { yyval.opval = Nullop; }
1541 { yyval.opval = yyvsp[-1].opval; }
1545 { yyval.opval = append_list(OP_LINESEQ,
1546 (LISTOP*)yyvsp[-1].opval, (LISTOP*)yyvsp[0].opval);
1547 pad_reset_pending = TRUE;
1548 if (yyvsp[-1].opval && yyvsp[0].opval) hints |= HINT_BLOCK_SCOPE; }
1552 { yyval.opval = newSTATEOP(0, yyvsp[-1].pval, yyvsp[0].opval); }
1556 { if (yyvsp[-1].pval != Nullch) {
1557 yyval.opval = newSTATEOP(0, yyvsp[-1].pval, newOP(OP_NULL, 0));
1560 yyval.opval = Nullop;
1567 { yyval.opval = newSTATEOP(0, yyvsp[-2].pval, yyvsp[-1].opval);
1572 { yyval.opval = Nullop; }
1576 { yyval.opval = yyvsp[0].opval; }
1580 { yyval.opval = newLOGOP(OP_AND, 0, yyvsp[0].opval, yyvsp[-2].opval); }
1584 { yyval.opval = newLOGOP(OP_OR, 0, yyvsp[0].opval, yyvsp[-2].opval); }
1588 { yyval.opval = newLOOPOP(OPf_PARENS, 1, scalar(yyvsp[0].opval), yyvsp[-2].opval); }
1592 { yyval.opval = newLOOPOP(OPf_PARENS, 1, yyvsp[0].opval, yyvsp[-2].opval);}
1596 { yyval.opval = Nullop; }
1600 { yyval.opval = scope(yyvsp[0].opval); }
1604 { copline = yyvsp[-5].ival;
1605 yyval.opval = newSTATEOP(0, Nullch,
1606 newCONDOP(0, yyvsp[-3].opval, scope(yyvsp[-1].opval), yyvsp[0].opval));
1607 hints |= HINT_BLOCK_SCOPE; }
1611 { copline = yyvsp[-6].ival;
1612 yyval.opval = block_end(yyvsp[-4].ival,
1613 newCONDOP(0, yyvsp[-3].opval, scope(yyvsp[-1].opval), yyvsp[0].opval)); }
1617 { copline = yyvsp[-6].ival;
1618 yyval.opval = block_end(yyvsp[-4].ival,
1619 newCONDOP(0, yyvsp[-3].opval, scope(yyvsp[-1].opval), yyvsp[0].opval)); }
1623 { copline = yyvsp[-3].ival;
1624 deprecate("if BLOCK BLOCK");
1625 yyval.opval = newCONDOP(0, scope(yyvsp[-2].opval), scope(yyvsp[-1].opval), yyvsp[0].opval); }
1629 { copline = yyvsp[-3].ival;
1630 deprecate("unless BLOCK BLOCK");
1631 yyval.opval = newCONDOP(0, invert(scalar(scope(yyvsp[-2].opval))),
1632 scope(yyvsp[-1].opval), yyvsp[0].opval); }
1636 { yyval.opval = Nullop; }
1640 { yyval.opval = scope(yyvsp[0].opval); }
1644 { copline = yyvsp[-6].ival;
1645 yyval.opval = block_end(yyvsp[-4].ival,
1646 newSTATEOP(0, yyvsp[-7].pval,
1647 newWHILEOP(0, 1, (LOOP*)Nullop,
1648 yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval))); }
1652 { copline = yyvsp[-6].ival;
1653 yyval.opval = block_end(yyvsp[-4].ival,
1654 newSTATEOP(0, yyvsp[-7].pval,
1655 newWHILEOP(0, 1, (LOOP*)Nullop,
1656 yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval))); }
1660 { copline = yyvsp[-3].ival;
1661 yyval.opval = newWHILEOP(0, 1, (LOOP*)Nullop,
1662 scope(yyvsp[-2].opval), yyvsp[-1].opval, yyvsp[0].opval); }
1666 { copline = yyvsp[-3].ival;
1667 yyval.opval = newWHILEOP(0, 1, (LOOP*)Nullop,
1668 invert(scalar(scope(yyvsp[-2].opval))),
1669 yyvsp[-1].opval, yyvsp[0].opval); }
1673 { yyval.opval = block_end(yyvsp[-6].ival,
1674 newFOROP(0, yyvsp[-9].pval, yyvsp[-8].ival, yyvsp[-5].opval, yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval)); }
1678 { yyval.opval = block_end(yyvsp[-4].ival,
1679 newFOROP(0, yyvsp[-8].pval, yyvsp[-7].ival, mod(yyvsp[-6].opval, OP_ENTERLOOP),
1680 yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval)); }
1684 { yyval.opval = block_end(yyvsp[-4].ival,
1685 newFOROP(0, yyvsp[-7].pval, yyvsp[-6].ival, Nullop, yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval)); }
1689 { copline = yyvsp[-9].ival;
1690 yyval.opval = block_end(yyvsp[-7].ival,
1691 append_elem(OP_LINESEQ, scalar(yyvsp[-6].opval),
1692 newSTATEOP(0, yyvsp[-10].pval,
1693 newWHILEOP(0, 1, (LOOP*)Nullop,
1694 scalar(yyvsp[-4].opval),
1695 yyvsp[0].opval, scalar(yyvsp[-2].opval))))); }
1699 { yyval.opval = newSTATEOP(0,
1700 yyvsp[-2].pval, newWHILEOP(0, 1, (LOOP*)Nullop,
1701 Nullop, yyvsp[-1].opval, yyvsp[0].opval)); }
1705 { yyval.opval = Nullop; }
1709 { (void)scan_num("1"); yyval.opval = yylval.opval; }
1713 { yyval.opval = invert(scalar(yyvsp[0].opval)); }
1717 { yyval.opval = yyvsp[0].opval; intro_my(); }
1721 { yyval.opval = yyvsp[0].opval; intro_my(); }
1725 { yyval.opval = yyvsp[0].opval; intro_my(); }
1729 { yyval.opval = yyvsp[0].opval; intro_my(); }
1733 { yyval.pval = Nullch; }
1753 { newFORM(yyvsp[-2].ival, yyvsp[-1].opval, yyvsp[0].opval); }
1757 { newFORM(yyvsp[-1].ival, Nullop, yyvsp[0].opval); }
1761 { newSUB(yyvsp[-3].ival, yyvsp[-2].opval, yyvsp[-1].opval, yyvsp[0].opval); }
1765 { newSUB(yyvsp[-3].ival, yyvsp[-2].opval, yyvsp[-1].opval, Nullop); expect = XSTATE; }
1769 { yyval.opval = Nullop; }
1773 { yyval.ival = start_subparse(); }
1777 { package(yyvsp[-1].opval); }
1781 { package(Nullop); }
1785 { utilize(yyvsp[-5].ival, yyvsp[-4].ival, yyvsp[-3].opval, yyvsp[-2].opval, yyvsp[-1].opval); }
1789 { yyval.opval = newLOGOP(OP_AND, 0, yyvsp[-2].opval, yyvsp[0].opval); }
1793 { yyval.opval = newLOGOP(yyvsp[-1].ival, 0, yyvsp[-2].opval, yyvsp[0].opval); }
1797 { yyval.opval = yyvsp[-1].opval; }
1801 { yyval.opval = append_elem(OP_LIST, yyvsp[-2].opval, yyvsp[0].opval); }
1805 { yyval.opval = convert(yyvsp[-2].ival, OPf_STACKED,
1806 prepend_elem(OP_LIST, newGVREF(yyvsp[-2].ival,yyvsp[-1].opval), yyvsp[0].opval) ); }
1810 { yyval.opval = convert(yyvsp[-4].ival, OPf_STACKED,
1811 prepend_elem(OP_LIST, newGVREF(yyvsp[-4].ival,yyvsp[-2].opval), yyvsp[-1].opval) ); }
1815 { yyval.opval = convert(OP_ENTERSUB, OPf_STACKED,
1816 append_elem(OP_LIST,
1817 prepend_elem(OP_LIST, scalar(yyvsp[-5].opval), yyvsp[-1].opval),
1818 newUNOP(OP_METHOD, 0, yyvsp[-3].opval))); }
1822 { yyval.opval = convert(OP_ENTERSUB, OPf_STACKED,
1823 append_elem(OP_LIST,
1824 prepend_elem(OP_LIST, yyvsp[-1].opval, yyvsp[0].opval),
1825 newUNOP(OP_METHOD, 0, yyvsp[-2].opval))); }
1829 { yyval.opval = convert(OP_ENTERSUB, OPf_STACKED,
1830 append_elem(OP_LIST,
1831 prepend_elem(OP_LIST, yyvsp[-3].opval, yyvsp[-1].opval),
1832 newUNOP(OP_METHOD, 0, yyvsp[-4].opval))); }
1836 { yyval.opval = convert(yyvsp[-1].ival, 0, yyvsp[0].opval); }
1840 { yyval.opval = convert(yyvsp[-3].ival, 0, yyvsp[-1].opval); }
1844 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
1845 append_elem(OP_LIST,
1846 prepend_elem(OP_LIST, newANONSUB(yyvsp[-2].ival, 0, yyvsp[-1].opval), yyvsp[0].opval),
1847 yyvsp[-3].opval)); }
1851 { yyval.opval = newASSIGNOP(OPf_STACKED, yyvsp[-2].opval, yyvsp[-1].ival, yyvsp[0].opval); }
1855 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1859 { if (yyvsp[-1].ival != OP_REPEAT)
1860 scalar(yyvsp[-2].opval);
1861 yyval.opval = newBINOP(yyvsp[-1].ival, 0, yyvsp[-2].opval, scalar(yyvsp[0].opval)); }
1865 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1869 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1873 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1877 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1881 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1885 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1889 { yyval.opval = newRANGE(yyvsp[-1].ival, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval));}
1893 { yyval.opval = newLOGOP(OP_AND, 0, yyvsp[-2].opval, yyvsp[0].opval); }
1897 { yyval.opval = newLOGOP(OP_OR, 0, yyvsp[-2].opval, yyvsp[0].opval); }
1901 { yyval.opval = newCONDOP(0, yyvsp[-4].opval, yyvsp[-2].opval, yyvsp[0].opval); }
1905 { yyval.opval = bind_match(yyvsp[-1].ival, yyvsp[-2].opval, yyvsp[0].opval); }
1909 { yyval.opval = newUNOP(OP_NEGATE, 0, scalar(yyvsp[0].opval)); }
1913 { yyval.opval = yyvsp[0].opval; }
1917 { yyval.opval = newUNOP(OP_NOT, 0, scalar(yyvsp[0].opval)); }
1921 { yyval.opval = newUNOP(OP_COMPLEMENT, 0, scalar(yyvsp[0].opval));}
1925 { yyval.opval = newUNOP(OP_REFGEN, 0, mod(yyvsp[0].opval,OP_REFGEN)); }
1929 { yyval.opval = newUNOP(OP_POSTINC, 0,
1930 mod(scalar(yyvsp[-1].opval), OP_POSTINC)); }
1934 { yyval.opval = newUNOP(OP_POSTDEC, 0,
1935 mod(scalar(yyvsp[-1].opval), OP_POSTDEC)); }
1939 { yyval.opval = newUNOP(OP_PREINC, 0,
1940 mod(scalar(yyvsp[0].opval), OP_PREINC)); }
1944 { yyval.opval = newUNOP(OP_PREDEC, 0,
1945 mod(scalar(yyvsp[0].opval), OP_PREDEC)); }
1949 { yyval.opval = localize(yyvsp[0].opval,yyvsp[-1].ival); }
1953 { yyval.opval = sawparens(yyvsp[-1].opval); }
1957 { yyval.opval = sawparens(newNULLLIST()); }
1961 { yyval.opval = newANONLIST(yyvsp[-1].opval); }
1965 { yyval.opval = newANONLIST(Nullop); }
1969 { yyval.opval = newANONHASH(yyvsp[-2].opval); }
1973 { yyval.opval = newANONHASH(Nullop); }
1977 { yyval.opval = newANONSUB(yyvsp[-2].ival, yyvsp[-1].opval, yyvsp[0].opval); }
1981 { yyval.opval = yyvsp[0].opval; }
1985 { yyval.opval = newBINOP(OP_GELEM, 0, newGVREF(0,yyvsp[-4].opval), yyvsp[-2].opval); }
1989 { yyval.opval = yyvsp[0].opval; }
1993 { yyval.opval = newBINOP(OP_AELEM, 0, oopsAV(yyvsp[-3].opval), scalar(yyvsp[-1].opval)); }
1997 { yyval.opval = newBINOP(OP_AELEM, 0,
1998 ref(newAVREF(yyvsp[-4].opval),OP_RV2AV),
1999 scalar(yyvsp[-1].opval));}
2003 { assertref(yyvsp[-3].opval); yyval.opval = newBINOP(OP_AELEM, 0,
2004 ref(newAVREF(yyvsp[-3].opval),OP_RV2AV),
2005 scalar(yyvsp[-1].opval));}
2009 { yyval.opval = yyvsp[0].opval; }
2013 { yyval.opval = yyvsp[0].opval; }
2017 { yyval.opval = newUNOP(OP_AV2ARYLEN, 0, ref(yyvsp[0].opval, OP_AV2ARYLEN));}
2021 { yyval.opval = newBINOP(OP_HELEM, 0, oopsHV(yyvsp[-4].opval), jmaybe(yyvsp[-2].opval));
2022 expect = XOPERATOR; }
2026 { yyval.opval = newBINOP(OP_HELEM, 0,
2027 ref(newHVREF(yyvsp[-5].opval),OP_RV2HV),
2028 jmaybe(yyvsp[-2].opval));
2029 expect = XOPERATOR; }
2033 { assertref(yyvsp[-4].opval); yyval.opval = newBINOP(OP_HELEM, 0,
2034 ref(newHVREF(yyvsp[-4].opval),OP_RV2HV),
2035 jmaybe(yyvsp[-2].opval));
2036 expect = XOPERATOR; }
2040 { yyval.opval = newSLICEOP(0, yyvsp[-1].opval, yyvsp[-4].opval); }
2044 { yyval.opval = newSLICEOP(0, yyvsp[-1].opval, Nullop); }
2048 { yyval.opval = prepend_elem(OP_ASLICE,
2049 newOP(OP_PUSHMARK, 0),
2050 newLISTOP(OP_ASLICE, 0,
2051 list(yyvsp[-1].opval),
2052 ref(yyvsp[-3].opval, OP_ASLICE))); }
2056 { yyval.opval = prepend_elem(OP_HSLICE,
2057 newOP(OP_PUSHMARK, 0),
2058 newLISTOP(OP_HSLICE, 0,
2059 list(yyvsp[-2].opval),
2060 ref(oopsHV(yyvsp[-4].opval), OP_HSLICE)));
2061 expect = XOPERATOR; }
2065 { yyval.opval = yyvsp[0].opval; }
2069 { yyval.opval = newUNOP(OP_ENTERSUB, 0, scalar(yyvsp[0].opval)); }
2073 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED, scalar(yyvsp[-2].opval)); }
2077 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2078 append_elem(OP_LIST, yyvsp[-1].opval, scalar(yyvsp[-3].opval))); }
2082 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2083 append_elem(OP_LIST, yyvsp[0].opval, scalar(yyvsp[-1].opval))); }
2087 { yyval.opval = newUNOP(OP_DOFILE, 0, scalar(yyvsp[0].opval)); }
2091 { yyval.opval = newUNOP(OP_NULL, OPf_SPECIAL, scope(yyvsp[0].opval)); }
2095 { yyval.opval = newUNOP(OP_ENTERSUB,
2096 OPf_SPECIAL|OPf_STACKED,
2097 prepend_elem(OP_LIST,
2099 (OPpENTERSUB_AMPER<<8),
2100 scalar(yyvsp[-2].opval)
2101 )),Nullop)); dep();}
2105 { yyval.opval = newUNOP(OP_ENTERSUB,
2106 OPf_SPECIAL|OPf_STACKED,
2107 append_elem(OP_LIST,
2110 (OPpENTERSUB_AMPER<<8),
2111 scalar(yyvsp[-3].opval)
2116 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_SPECIAL|OPf_STACKED,
2117 prepend_elem(OP_LIST,
2118 scalar(newCVREF(0,scalar(yyvsp[-2].opval))), Nullop)); dep();}
2122 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_SPECIAL|OPf_STACKED,
2123 prepend_elem(OP_LIST,
2125 scalar(newCVREF(0,scalar(yyvsp[-3].opval))))); dep();}
2129 { yyval.opval = newOP(yyvsp[0].ival, OPf_SPECIAL);
2130 hints |= HINT_BLOCK_SCOPE; }
2134 { yyval.opval = newLOOPEX(yyvsp[-1].ival,yyvsp[0].opval); }
2138 { yyval.opval = newUNOP(OP_NOT, 0, scalar(yyvsp[0].opval)); }
2142 { yyval.opval = newOP(yyvsp[0].ival, 0); }
2146 { yyval.opval = newUNOP(yyvsp[-1].ival, 0, yyvsp[0].opval); }
2150 { yyval.opval = newUNOP(yyvsp[-1].ival, 0, yyvsp[0].opval); }
2154 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2155 append_elem(OP_LIST, yyvsp[0].opval, scalar(yyvsp[-1].opval))); }
2159 { yyval.opval = newOP(yyvsp[0].ival, 0); }
2163 { yyval.opval = newOP(yyvsp[-2].ival, 0); }
2167 { yyval.opval = newUNOP(OP_ENTERSUB, 0,
2168 scalar(yyvsp[0].opval)); }
2172 { yyval.opval = newOP(yyvsp[-2].ival, OPf_SPECIAL); }
2176 { yyval.opval = newUNOP(yyvsp[-3].ival, 0, yyvsp[-1].opval); }
2180 { yyval.opval = pmruntime(yyvsp[-3].opval, yyvsp[-1].opval, Nullop); }
2184 { yyval.opval = pmruntime(yyvsp[-5].opval, yyvsp[-3].opval, yyvsp[-1].opval); }
2188 { yyval.opval = Nullop; }
2192 { yyval.opval = yyvsp[0].opval; }
2196 { yyval.opval = Nullop; }
2200 { yyval.opval = yyvsp[0].opval; }
2204 { yyval.opval = yyvsp[-1].opval; }
2216 { in_my = 0; yyval.opval = my(yyvsp[0].opval); }
2220 { yyval.opval = newCVREF(yyvsp[-1].ival,yyvsp[0].opval); }
2224 { yyval.opval = newSVREF(yyvsp[0].opval); }
2228 { yyval.opval = newAVREF(yyvsp[0].opval); }
2232 { yyval.opval = newHVREF(yyvsp[0].opval); }
2236 { yyval.opval = newAVREF(yyvsp[0].opval); }
2240 { yyval.opval = newGVREF(0,yyvsp[0].opval); }
2244 { yyval.opval = scalar(yyvsp[0].opval); }
2248 { yyval.opval = scalar(yyvsp[0].opval); }
2252 { yyval.opval = scope(yyvsp[0].opval); }
2256 { yyval.opval = yyvsp[0].opval; }
2258 #line 2245 "perly.c"
2264 if (yystate == 0 && yym == 0)
2268 PerlIO_printf(Perl_debug_log,
2269 "yydebug: after reduction, shifting from state 0 to state %d\n",
2277 if ((yychar = yylex()) < 0) yychar = 0;
2282 if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
2283 if (!yys) yys = "illegal-symbol";
2284 PerlIO_printf(Perl_debug_log, "yydebug: state %d, reading %d (%s)\n",
2285 YYFINAL, yychar, yys);
2289 if (yychar == 0) goto yyaccept;
2292 if ((yyn = yygindex[yym]) && (yyn += yystate) >= 0 &&
2293 yyn <= YYTABLESIZE && yycheck[yyn] == yystate)
2294 yystate = yytable[yyn];
2296 yystate = yydgoto[yym];
2299 PerlIO_printf(Perl_debug_log,
2300 "yydebug: after reduction, shifting from state %d to state %d\n",
2303 if (yyssp >= yyss + yystacksize - 1)
2306 ** reallocate and recover. Note that pointers
2307 ** have to be reset, or bad things will happen
2309 int yyps_index = (yyssp - yyss);
2310 int yypv_index = (yyvsp - yyvs);
2311 yystacksize += YYSTACKSIZE;
2312 ysave->yyvs = yyvs =
2313 (YYSTYPE*)realloc((char*)yyvs,yystacksize * sizeof(YYSTYPE));
2314 ysave->yyss = yyss =
2315 (short*)realloc((char*)yyss,yystacksize * sizeof(short));
2318 yyssp = yyss + yyps_index;
2319 yyvsp = yyvs + yypv_index;
2325 yyerror("Out of memory for yacc stack");