2 static char yysccsid[] = "@(#)yaccpar 1.8 (Berkeley) 01/20/91";
12 deprecate("\"do\" to call subroutines");
18 45, 0, 9, 7, 10, 8, 11, 11, 11, 12,
19 12, 12, 12, 24, 24, 24, 24, 24, 24, 15,
20 15, 15, 14, 14, 42, 42, 13, 13, 13, 13,
21 13, 13, 13, 26, 26, 27, 27, 28, 29, 30,
22 31, 32, 44, 44, 1, 1, 1, 1, 3, 38,
23 38, 46, 4, 5, 6, 39, 40, 40, 41, 41,
24 47, 47, 49, 48, 16, 16, 16, 25, 25, 25,
25 36, 36, 36, 36, 36, 36, 36, 50, 36, 37,
26 37, 17, 17, 17, 17, 17, 17, 17, 17, 17,
27 17, 17, 17, 17, 17, 17, 17, 17, 17, 17,
28 17, 17, 17, 17, 17, 17, 17, 17, 17, 17,
29 17, 17, 17, 17, 17, 17, 17, 17, 17, 17,
30 17, 17, 17, 17, 17, 17, 17, 17, 17, 17,
31 17, 17, 17, 17, 17, 17, 17, 17, 17, 17,
32 17, 17, 17, 17, 17, 17, 17, 17, 17, 17,
33 17, 17, 17, 17, 17, 17, 17, 33, 33, 34,
34 34, 34, 2, 2, 43, 23, 18, 19, 20, 21,
38 0, 2, 4, 0, 4, 0, 0, 2, 2, 2,
39 1, 2, 3, 1, 1, 3, 3, 3, 3, 0,
40 2, 6, 7, 7, 0, 2, 8, 8, 10, 9,
41 8, 11, 3, 0, 1, 0, 1, 1, 1, 1,
42 1, 1, 0, 1, 1, 1, 1, 1, 4, 1,
43 0, 5, 0, 0, 0, 1, 0, 1, 1, 1,
44 3, 2, 0, 7, 3, 3, 1, 2, 3, 1,
45 3, 5, 6, 3, 5, 2, 4, 0, 5, 1,
46 1, 3, 3, 3, 3, 3, 3, 3, 3, 3,
47 3, 3, 3, 5, 3, 2, 2, 2, 2, 2,
48 2, 2, 2, 2, 2, 3, 2, 3, 2, 4,
49 3, 4, 1, 5, 1, 4, 5, 4, 1, 1,
50 1, 5, 6, 5, 6, 5, 4, 5, 1, 1,
51 3, 4, 3, 2, 2, 4, 5, 4, 5, 4,
52 5, 1, 2, 2, 1, 2, 2, 2, 1, 3,
53 1, 3, 4, 4, 6, 1, 1, 0, 1, 0,
54 1, 2, 1, 1, 1, 2, 2, 2, 2, 2,
57 short yydefred[] = { 1,
58 0, 7, 0, 44, 55, 53, 0, 53, 8, 45,
59 9, 11, 0, 46, 47, 48, 0, 0, 0, 62,
60 63, 14, 4, 156, 0, 0, 129, 0, 151, 0,
61 54, 54, 0, 0, 0, 0, 0, 0, 0, 0,
62 0, 0, 0, 0, 0, 0, 0, 163, 164, 0,
63 0, 0, 0, 0, 0, 0, 0, 12, 0, 0,
64 0, 0, 0, 0, 0, 0, 0, 10, 0, 0,
65 0, 0, 119, 121, 0, 0, 0, 0, 157, 50,
66 0, 56, 0, 61, 0, 7, 172, 175, 174, 173,
67 0, 0, 0, 0, 0, 0, 4, 4, 4, 4,
68 4, 4, 0, 0, 0, 0, 0, 146, 0, 0,
69 0, 0, 76, 0, 170, 0, 135, 0, 0, 0,
70 0, 0, 166, 0, 0, 0, 0, 0, 0, 0,
71 0, 0, 0, 109, 0, 167, 168, 169, 171, 0,
72 0, 33, 0, 0, 0, 0, 0, 0, 0, 0,
73 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
74 0, 0, 0, 101, 102, 0, 0, 0, 0, 0,
75 0, 0, 0, 13, 0, 49, 58, 0, 0, 0,
76 74, 0, 0, 78, 0, 0, 0, 0, 0, 0,
77 0, 4, 150, 152, 0, 0, 0, 0, 0, 0,
78 0, 111, 0, 133, 0, 0, 108, 26, 0, 0,
79 19, 0, 0, 0, 65, 0, 0, 0, 0, 0,
80 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
81 0, 80, 0, 0, 81, 0, 0, 0, 0, 0,
82 0, 0, 131, 0, 0, 60, 59, 52, 0, 3,
83 0, 154, 0, 0, 112, 0, 41, 0, 42, 0,
84 0, 0, 0, 165, 0, 0, 35, 40, 0, 0,
85 0, 153, 162, 77, 0, 136, 0, 138, 0, 110,
86 0, 0, 0, 0, 0, 140, 0, 0, 0, 118,
87 0, 116, 0, 127, 0, 132, 0, 75, 0, 79,
88 0, 0, 0, 0, 0, 0, 0, 0, 72, 137,
89 139, 126, 0, 124, 0, 0, 141, 117, 0, 122,
90 128, 114, 64, 155, 6, 0, 0, 0, 0, 0,
91 0, 0, 0, 125, 123, 73, 7, 27, 28, 0,
92 0, 23, 24, 0, 31, 0, 0, 0, 21, 0,
93 0, 0, 30, 5, 0, 29, 0, 0, 32, 0,
96 short yydgoto[] = { 1,
97 9, 66, 10, 18, 95, 17, 86, 337, 89, 326,
98 3, 11, 12, 68, 342, 261, 70, 71, 72, 73,
99 74, 75, 76, 267, 78, 268, 257, 259, 262, 270,
100 258, 260, 113, 197, 91, 79, 236, 81, 83, 178,
101 248, 142, 265, 13, 2, 14, 15, 16, 85, 254,
103 short yysindex[] = { 0,
104 0, 0, -120, 0, 0, 0, -50, 0, 0, 0,
105 0, 0, 661, 0, 0, 0, -240, -238, -29, 0,
106 0, 0, 0, 0, -32, -32, 0, -8, 0, 2115,
107 0, 0, -4, 31, 32, 35, -35, 2115, 56, 57,
108 61, 1037, 981, -32, 1100, 1364, -218, 0, 0, -32,
109 2115, 2115, 2115, 2115, 2115, 2115, 1420, 0, 2115, 2115,
110 1476, -32, -32, -32, -32, 2115, -205, 0, 201, 306,
111 -63, -62, 0, 0, -24, 67, 45, 65, 0, 0,
112 -15, 0, -149, 0, -144, 0, 0, 0, 0, 0,
113 2115, 80, 2115, 841, -15, -149, 0, 0, 0, 0,
114 0, 0, 85, 306, 86, 1535, 981, 0, 841, 0,
115 -63, 65, 0, 2115, 0, 88, 0, 841, -28, 4,
116 -51, 2115, 0, 65, 340, 340, 340, -76, -76, 49,
117 -31, 340, 340, 0, -82, 0, 0, 0, 0, 841,
118 -15, 0, 2115, 2115, 2115, 2115, 2115, 2115, 2115, 2115,
119 2115, 2115, 2115, 2115, 2115, 2115, 2115, 2115, 2115, 2115,
120 2115, 2115, 2115, 0, 0, 48, 2115, 2115, 2115, 2115,
121 2115, 2115, 1710, 0, 2115, 0, 0, -43, -116, 241,
122 0, 2115, 1193, 0, -15, 2115, 2115, 2115, 2115, 106,
123 1769, 0, 0, 0, -23, 20, 104, 2115, 65, 1825,
124 1881, 0, 36, 0, 2115, 62, 0, 0, -232, -232,
125 0, -232, -232, -134, 0, -46, 1131, 841, 689, 316,
126 859, 306, 3778, 1980, 3652, 1299, 480, 396, 340, 340,
127 2115, 0, 1944, 2115, 0, 128, -58, 22, -56, 24,
128 33, 28, 0, -19, 306, 0, 0, 0, 2115, 0,
129 134, 0, 2115, 2115, 0, -232, 0, 142, 0, 148,
130 -232, 149, 150, 0, 153, 201, 0, 0, 154, 138,
131 2115, 0, 0, 0, -7, 0, 2, 0, 16, 0,
132 70, 2115, 73, 2115, 30, 0, 18, 101, 2115, 0,
133 75, 0, 78, 0, 81, 0, 151, 0, 1247, 0,
134 90, 90, 90, 90, 2115, 90, 2115, 167, 0, 0,
135 0, 0, 103, 0, 3869, 84, 0, 0, 170, 0,
136 0, 0, 0, 0, 0, -205, -205, -207, -207, 176,
137 -205, 168, 90, 0, 0, 0, 0, 0, 0, 90,
138 192, 0, 0, 90, 0, 1769, -205, 402, 0, 2115,
139 -205, 207, 0, 0, 208, 0, 90, 90, 0, -207,
142 short yyrindex[] = { 0,
143 0, 0, 265, 0, 0, 0, 0, 0, 0, 0,
144 0, 0, 0, 0, 0, 0, 131, 0, 0, 0,
145 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
146 0, 0, 0, 0, 0, 0, 0, 2156, -17, 0,
147 0, 2675, 2720, 0, 0, 0, 0, 0, 0, 0,
148 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
149 0, 0, 0, 0, 0, 0, 79, 0, -3, 108,
150 2774, 2860, 0, 0, 2034, 121, 0, 140, 0, 0,
151 0, 0, -33, 0, 0, 0, 0, 0, 0, 0,
152 2203, 0, 0, 3504, 0, 145, 0, 0, 0, 0,
153 0, 0, 0, 3772, 0, 0, 252, 0, 3551, 541,
154 602, 2270, 0, 0, 0, 442, 0, 3587, 2774, 0,
155 0, 2203, 0, 2324, 3010, 3049, 3096, 2911, 2972, 2439,
156 0, 3147, 3193, 0, 0, 0, 0, 0, 0, 3633,
157 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
158 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
159 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
160 0, 0, 0, 0, 2522, 0, 0, 0, 0, 925,
161 0, 252, 0, 0, 0, 263, 0, 0, 0, 0,
162 223, 0, 0, 0, 0, 282, 0, 0, 2576, 0,
163 0, 0, 0, 0, 0, 2624, 0, 0, -1, 26,
164 0, 27, 51, 718, 0, 0, 3752, 1576, 1632, 3368,
165 3413, 3799, 0, -38, 3710, 3678, 3060, 3459, 3285, 3332,
166 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
167 0, 0, 0, 0, 3835, 0, 0, 0, 273, 0,
168 0, 0, 0, 2203, 0, 59, 0, 0, 0, 0,
169 293, 0, 0, 0, 0, 64, 0, 0, 0, 0,
170 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
171 0, 0, 0, 0, 0, 0, 0, 0, 252, 0,
172 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
173 0, 0, 0, 0, 0, 0, 296, 0, 0, 0,
174 0, 0, 0, 0, 2380, 0, 0, 0, 0, 0,
175 0, 0, 0, 0, 0, 79, 79, 186, 186, 0,
176 79, 0, 0, 0, 0, 0, 0, 0, 0, 0,
177 0, 0, 0, 0, 0, 300, 79, 925, 0, 0,
178 79, 0, 0, 0, 0, 0, 0, 0, 0, 186,
181 short yygindex[] = { 0,
182 0, 0, 0, 349, 328, 0, -48, 0, 679, 378,
183 -84, 0, 0, 0, -298, -13, 4075, 2485, 0, 0,
184 0, 0, 0, 363, 908, 0, 0, 233, -168, 38,
185 72, 196, -77, -175, 999, 0, 0, 0, 0, 290,
186 0, -249, 0, 0, 0, 0, 0, 0, 0, 0,
188 #define YYTABLESIZE 4359
189 short yytable[] = { 69,
190 62, 180, 93, 62, 102, 93, 251, 203, 20, 206,
191 207, 201, 283, 181, 167, 246, 80, 272, 82, 93,
192 93, 296, 269, 149, 93, 57, 149, 169, 171, 84,
193 343, 93, 121, 309, 290, 97, 292, 15, 122, 18,
194 149, 149, 310, 131, 204, 149, 149, 135, 186, 187,
195 188, 189, 190, 191, 93, 15, 311, 18, 317, 168,
196 170, 361, 169, 273, 147, 148, 38, 16, 340, 341,
197 98, 99, 141, 149, 100, 149, 338, 339, 25, 23,
198 291, 345, 293, 62, 38, 16, 295, 233, 316, 57,
199 23, 17, 195, 196, 168, 105, 106, 353, 172, 37,
200 107, 356, 308, 174, 39, 149, 173, 23, 175, 17,
201 177, 25, 179, 319, 25, 25, 25, 37, 25, 182,
202 25, 25, 15, 25, 192, 294, 193, 200, 202, 209,
203 210, 212, 213, 214, 215, 216, 330, 25, 234, 205,
204 249, 62, 25, 271, 274, 4, 5, 6, 70, 7,
205 8, 70, 282, 237, 238, 239, 240, 241, 242, 244,
206 280, 130, 312, 148, 130, 70, 70, 289, 196, 25,
207 231, 297, 256, 210, 298, 210, 300, 266, 130, 130,
208 67, 355, 301, 130, 275, 20, 277, 279, 302, 303,
209 304, 281, 305, 318, 306, 334, 307, 314, 67, 320,
210 70, 25, 321, 25, 25, 322, 19, 333, 335, 323,
211 336, 130, 325, 130, 147, 148, 344, 285, 20, 287,
212 288, 20, 20, 20, 87, 20, 346, 20, 20, 88,
213 20, 350, 67, 93, 93, 93, 93, 166, 147, 148,
214 147, 148, 93, 130, 20, 147, 148, 357, 358, 20,
215 147, 148, 348, 51, 149, 149, 149, 149, 93, 93,
216 101, 93, 93, 149, 2, 147, 148, 57, 313, 149,
217 149, 149, 149, 147, 148, 196, 20, 147, 148, 149,
218 149, 34, 149, 149, 149, 149, 149, 149, 149, 147,
219 148, 149, 160, 256, 149, 149, 149, 43, 147, 148,
220 43, 43, 43, 36, 43, 232, 43, 43, 20, 43,
221 20, 20, 147, 148, 147, 148, 147, 148, 147, 148,
222 147, 148, 161, 43, 147, 148, 147, 148, 43, 147,
223 148, 158, 69, 39, 25, 25, 25, 25, 25, 25,
224 34, 25, 25, 25, 25, 25, 25, 25, 25, 25,
225 25, 25, 25, 25, 36, 43, 21, 25, 25, 96,
226 25, 25, 25, 25, 25, 250, 147, 148, 156, 25,
227 25, 25, 25, 25, 25, 77, 211, 25, 332, 70,
228 70, 70, 70, 352, 263, 185, 25, 43, 25, 25,
229 43, 0, 130, 130, 130, 130, 167, 147, 148, 147,
230 148, 130, 0, 0, 70, 70, 167, 130, 130, 130,
231 130, 67, 67, 67, 67, 0, 0, 130, 130, 0,
232 130, 130, 130, 130, 130, 130, 130, 0, 149, 130,
233 167, 0, 130, 130, 130, 0, 67, 67, 149, 0,
234 0, 20, 20, 20, 20, 20, 20, 0, 20, 20,
235 20, 20, 20, 20, 20, 20, 20, 20, 20, 20,
236 20, 0, 149, 0, 20, 20, 0, 20, 20, 20,
237 20, 20, 143, 144, 145, 146, 20, 20, 20, 20,
238 20, 20, 156, 0, 20, 156, 167, 0, 0, 0,
239 0, 0, 0, 20, 0, 20, 20, 147, 148, 156,
240 156, 0, 0, 0, 156, 0, 4, 5, 6, 0,
241 7, 8, 0, 0, 0, 0, 0, 0, 149, 0,
242 43, 43, 43, 43, 43, 43, 354, 43, 43, 43,
243 0, 0, 156, 43, 156, 0, 43, 43, 43, 43,
244 0, 0, 0, 43, 43, 0, 43, 43, 43, 43,
245 43, 0, 0, 0, 0, 43, 43, 43, 43, 43,
246 43, 0, 0, 43, 156, 0, 0, 0, 0, 0,
247 167, 0, 43, 172, 43, 43, 172, 172, 172, 0,
248 172, 156, 172, 172, 156, 172, 150, 0, 0, 0,
249 0, 0, 151, 152, 153, 154, 0, 0, 156, 156,
250 0, 0, 149, 156, 172, 155, 157, 158, 159, 160,
251 161, 162, 0, 0, 163, 0, 0, 164, 165, 166,
252 0, 162, 0, 0, 163, 0, 0, 164, 165, 166,
253 0, 156, 0, 156, 173, 0, 0, 173, 173, 173,
254 0, 173, 113, 173, 173, 113, 173, 0, 163, 0,
255 0, 164, 165, 166, 0, 0, 0, 0, 0, 113,
256 113, 0, 0, 156, 113, 173, 172, 4, 5, 6,
257 0, 7, 8, 0, 0, 0, 0, 0, 0, 327,
258 328, 329, 0, 331, 153, 154, 0, 0, 0, 0,
259 0, 67, 0, 52, 113, 0, 62, 64, 50, 0,
260 57, 162, 65, 60, 163, 59, 0, 164, 165, 166,
261 347, 0, 0, 156, 156, 156, 156, 349, 0, 58,
262 108, 351, 156, 117, 63, 0, 0, 173, 156, 156,
263 156, 156, 0, 0, 359, 360, 0, 0, 156, 156,
264 0, 156, 156, 156, 156, 156, 156, 156, 0, 0,
265 156, 61, 0, 156, 156, 156, 0, 0, 66, 176,
266 0, 66, 0, 0, 0, 0, 151, 152, 153, 154,
267 0, 0, 0, 184, 0, 0, 66, 0, 0, 167,
268 0, 0, 0, 23, 161, 162, 53, 0, 163, 0,
269 0, 164, 165, 166, 0, 0, 0, 172, 172, 172,
270 172, 172, 0, 172, 172, 172, 0, 0, 0, 172,
271 66, 149, 156, 156, 156, 156, 0, 0, 0, 208,
272 172, 156, 172, 172, 172, 172, 172, 156, 156, 156,
273 156, 172, 172, 172, 172, 172, 172, 156, 156, 172,
274 156, 156, 156, 156, 156, 156, 156, 0, 172, 156,
275 172, 172, 156, 156, 156, 0, 247, 0, 173, 173,
276 173, 173, 173, 255, 173, 173, 173, 0, 0, 0,
277 173, 0, 0, 113, 113, 113, 113, 0, 0, 0,
278 0, 173, 113, 173, 173, 173, 173, 173, 113, 113,
279 113, 113, 173, 173, 173, 173, 173, 173, 113, 113,
280 173, 113, 113, 113, 113, 113, 113, 113, 0, 173,
281 113, 173, 173, 113, 113, 113, 22, 24, 25, 26,
282 27, 28, 0, 29, 30, 31, 0, 0, 0, 32,
283 0, 167, 33, 34, 35, 36, 0, 0, 0, 37,
284 38, 0, 39, 40, 41, 42, 43, 0, 0, 167,
285 112, 44, 45, 46, 47, 48, 49, 43, 124, 51,
286 43, 43, 43, 149, 43, 0, 43, 43, 54, 43,
287 55, 56, 0, 0, 0, 151, 0, 153, 154, 0,
288 0, 149, 0, 43, 0, 0, 0, 0, 43, 66,
289 66, 66, 66, 161, 162, 0, 0, 163, 112, 0,
290 164, 165, 166, 0, 0, 0, 0, 0, 0, 0,
291 0, 0, 0, 52, 66, 43, 62, 64, 50, 0,
292 57, 199, 65, 60, 92, 59, 0, 0, 0, 112,
293 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
294 0, 114, 115, 0, 63, 0, 0, 43, 123, 0,
295 43, 0, 0, 0, 0, 0, 0, 0, 0, 0,
296 136, 137, 138, 139, 0, 0, 0, 0, 0, 52,
297 0, 61, 62, 64, 50, 0, 57, 0, 65, 60,
298 0, 59, 0, 0, 0, 0, 0, 0, 0, 0,
299 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
300 63, 0, 0, 23, 0, 198, 53, 0, 0, 0,
301 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
302 0, 0, 0, 0, 0, 0, 0, 61, 0, 153,
303 154, 0, 52, 0, 0, 62, 64, 50, 0, 57,
304 0, 65, 60, 0, 59, 161, 162, 153, 0, 163,
305 0, 0, 164, 165, 166, 0, 112, 0, 0, 23,
306 0, 112, 53, 63, 162, 0, 0, 163, 0, 0,
307 164, 165, 166, 0, 0, 0, 0, 0, 0, 0,
308 43, 43, 43, 43, 43, 43, 0, 43, 43, 43,
309 61, 0, 0, 43, 0, 0, 43, 43, 43, 43,
310 0, 0, 0, 43, 43, 0, 43, 43, 43, 43,
311 43, 0, 0, 0, 0, 43, 43, 43, 43, 43,
312 43, 167, 23, 43, 0, 53, 0, 0, 0, 0,
313 0, 0, 43, 252, 43, 43, 253, 110, 25, 26,
314 27, 28, 88, 29, 30, 31, 0, 0, 0, 32,
315 0, 0, 0, 149, 0, 156, 0, 0, 0, 0,
316 38, 0, 39, 40, 41, 42, 43, 0, 0, 0,
317 0, 44, 45, 46, 47, 48, 49, 0, 0, 51,
318 0, 0, 0, 167, 0, 0, 0, 324, 54, 0,
319 55, 56, 0, 24, 25, 26, 27, 28, 0, 29,
320 30, 31, 0, 0, 0, 32, 0, 0, 0, 156,
321 0, 0, 0, 0, 0, 149, 38, 0, 39, 40,
322 41, 42, 43, 0, 0, 0, 0, 44, 45, 46,
323 47, 48, 49, 0, 0, 51, 0, 167, 0, 0,
324 0, 0, 0, 0, 54, 0, 55, 56, 0, 0,
325 0, 0, 0, 0, 0, 0, 116, 25, 26, 27,
326 28, 0, 29, 30, 31, 0, 0, 0, 32, 149,
327 0, 0, 0, 0, 0, 0, 0, 0, 0, 38,
328 0, 39, 40, 41, 42, 43, 0, 0, 0, 167,
329 44, 45, 46, 47, 48, 49, 52, 0, 51, 62,
330 64, 50, 0, 57, 0, 65, 60, 54, 59, 55,
331 56, 0, 0, 0, 0, 0, 0, 151, 152, 153,
332 154, 149, 120, 0, 0, 0, 0, 63, 0, 0,
333 0, 157, 158, 159, 160, 161, 162, 0, 0, 163,
334 0, 0, 164, 165, 166, 0, 0, 0, 0, 0,
335 0, 0, 52, 0, 61, 62, 64, 50, 0, 57,
336 130, 65, 60, 0, 59, 0, 0, 0, 0, 0,
337 0, 0, 0, 150, 0, 0, 0, 0, 0, 151,
338 152, 153, 154, 63, 0, 0, 0, 0, 0, 53,
339 0, 0, 155, 157, 158, 159, 160, 161, 162, 0,
340 0, 163, 0, 0, 164, 165, 166, 0, 52, 0,
341 61, 62, 64, 50, 0, 57, 0, 65, 60, 0,
342 59, 0, 0, 0, 0, 0, 0, 150, 0, 0,
343 0, 0, 0, 151, 152, 153, 154, 0, 0, 63,
344 0, 0, 0, 0, 0, 53, 155, 157, 158, 159,
345 160, 161, 162, 0, 0, 163, 0, 0, 164, 165,
346 166, 0, 0, 0, 0, 0, 61, 52, 134, 0,
347 62, 64, 50, 0, 57, 194, 65, 60, 0, 59,
348 0, 0, 0, 0, 0, 151, 152, 153, 154, 0,
349 0, 0, 0, 0, 0, 0, 0, 0, 63, 0,
350 0, 53, 160, 161, 162, 0, 0, 163, 0, 0,
351 164, 165, 166, 0, 0, 0, 87, 0, 0, 87,
352 24, 25, 26, 27, 28, 61, 29, 30, 31, 0,
353 0, 0, 32, 87, 87, 0, 0, 0, 87, 0,
354 0, 0, 0, 38, 0, 39, 40, 41, 42, 43,
355 0, 0, 0, 0, 44, 45, 46, 47, 48, 49,
356 53, 0, 51, 0, 0, 0, 0, 0, 87, 0,
357 0, 54, 88, 55, 56, 88, 24, 25, 26, 27,
358 28, 0, 29, 30, 31, 0, 0, 0, 32, 88,
359 88, 0, 0, 0, 88, 0, 0, 0, 0, 38,
360 0, 39, 40, 41, 42, 43, 0, 0, 0, 0,
361 44, 45, 46, 47, 48, 49, 0, 0, 51, 0,
362 0, 0, 0, 0, 88, 0, 0, 54, 0, 55,
363 56, 0, 24, 25, 26, 27, 28, 0, 29, 30,
364 31, 0, 52, 0, 32, 62, 64, 50, 0, 57,
365 243, 65, 60, 0, 59, 38, 0, 39, 40, 41,
366 42, 43, 0, 0, 0, 0, 44, 45, 46, 47,
367 48, 49, 0, 63, 51, 0, 0, 0, 0, 0,
368 0, 0, 0, 54, 0, 55, 56, 0, 0, 0,
369 0, 24, 25, 26, 27, 28, 0, 29, 30, 31,
370 61, 52, 0, 32, 62, 64, 50, 0, 57, 0,
371 65, 60, 0, 59, 38, 0, 39, 40, 41, 42,
372 43, 0, 0, 0, 0, 44, 45, 46, 47, 48,
373 49, 0, 63, 51, 0, 53, 0, 0, 0, 0,
374 0, 0, 54, 0, 55, 56, 0, 87, 87, 87,
375 87, 0, 0, 0, 0, 0, 87, 52, 0, 61,
376 62, 64, 50, 87, 57, 276, 65, 60, 0, 59,
377 0, 0, 87, 87, 0, 87, 87, 87, 87, 87,
378 0, 0, 0, 0, 0, 0, 0, 0, 63, 0,
379 0, 0, 0, 0, 53, 0, 0, 0, 0, 0,
380 0, 0, 0, 88, 88, 88, 88, 0, 0, 0,
381 0, 0, 88, 52, 0, 61, 62, 64, 50, 0,
382 57, 278, 65, 60, 0, 59, 0, 0, 88, 88,
383 0, 88, 88, 88, 88, 88, 0, 0, 0, 0,
384 0, 0, 0, 0, 63, 0, 0, 0, 0, 0,
385 53, 0, 0, 0, 0, 0, 0, 0, 0, 0,
386 0, 0, 0, 0, 0, 0, 24, 25, 26, 27,
387 28, 61, 29, 30, 31, 0, 52, 0, 32, 62,
388 64, 50, 0, 57, 286, 65, 60, 0, 59, 38,
389 0, 39, 40, 41, 42, 43, 0, 0, 0, 0,
390 44, 45, 46, 47, 48, 49, 53, 63, 51, 0,
391 0, 0, 0, 0, 0, 0, 0, 54, 0, 55,
392 56, 0, 0, 0, 22, 24, 25, 26, 27, 28,
393 0, 29, 30, 31, 61, 0, 0, 32, 0, 0,
394 0, 0, 0, 0, 0, 0, 0, 0, 38, 0,
395 39, 40, 41, 42, 43, 0, 0, 0, 0, 44,
396 45, 46, 47, 48, 49, 0, 0, 51, 0, 53,
397 167, 0, 0, 0, 115, 0, 54, 115, 55, 56,
398 0, 24, 25, 26, 27, 28, 0, 29, 30, 31,
399 0, 115, 115, 32, 0, 0, 115, 0, 0, 0,
400 0, 0, 149, 0, 38, 0, 39, 40, 41, 42,
401 43, 0, 0, 0, 0, 44, 45, 46, 47, 48,
402 49, 0, 0, 51, 115, 0, 115, 0, 0, 0,
403 0, 0, 54, 0, 55, 56, 0, 24, 25, 26,
404 27, 28, 0, 29, 30, 31, 0, 52, 0, 32,
405 62, 64, 50, 0, 57, 0, 65, 60, 0, 59,
406 38, 0, 39, 40, 41, 42, 43, 0, 0, 0,
407 0, 44, 45, 46, 47, 48, 49, 0, 63, 51,
408 0, 0, 0, 0, 0, 0, 0, 0, 54, 0,
409 55, 56, 0, 0, 0, 0, 142, 0, 0, 142,
410 24, 25, 26, 27, 28, 61, 29, 30, 31, 0,
411 0, 0, 32, 142, 142, 0, 0, 0, 142, 0,
412 0, 0, 0, 38, 0, 39, 40, 41, 42, 43,
413 0, 0, 0, 0, 44, 45, 46, 47, 48, 49,
414 53, 0, 51, 158, 0, 0, 158, 0, 142, 0,
415 0, 54, 0, 55, 56, 0, 0, 0, 0, 0,
416 158, 158, 0, 0, 0, 158, 151, 152, 153, 154,
417 0, 0, 0, 0, 0, 0, 0, 0, 142, 0,
418 0, 158, 159, 160, 161, 162, 0, 0, 163, 0,
419 0, 164, 165, 166, 0, 158, 0, 0, 0, 0,
420 0, 0, 0, 0, 0, 115, 115, 115, 115, 0,
421 159, 0, 0, 0, 115, 0, 0, 0, 0, 0,
422 115, 115, 115, 115, 0, 158, 0, 159, 159, 0,
423 115, 115, 159, 115, 115, 115, 115, 115, 115, 115,
424 0, 0, 115, 0, 0, 115, 115, 115, 0, 0,
425 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
426 159, 0, 159, 0, 144, 0, 0, 0, 0, 0,
427 0, 24, 25, 26, 27, 28, 0, 29, 30, 31,
428 0, 144, 144, 32, 0, 0, 144, 0, 0, 0,
429 0, 0, 159, 0, 38, 0, 39, 40, 41, 42,
430 43, 0, 0, 0, 0, 44, 45, 46, 47, 48,
431 49, 0, 0, 51, 144, 0, 144, 0, 0, 0,
432 94, 0, 54, 94, 55, 56, 0, 142, 142, 142,
433 142, 0, 0, 0, 0, 0, 142, 94, 94, 0,
434 0, 0, 142, 142, 142, 142, 144, 0, 0, 0,
435 0, 0, 142, 142, 0, 142, 142, 142, 142, 142,
436 142, 142, 0, 0, 142, 0, 0, 142, 142, 142,
437 0, 0, 94, 0, 158, 158, 158, 158, 0, 107,
438 0, 0, 107, 158, 0, 0, 0, 0, 0, 158,
439 158, 158, 158, 0, 0, 0, 107, 107, 0, 158,
440 158, 107, 158, 158, 158, 158, 158, 158, 158, 90,
441 90, 158, 0, 0, 158, 158, 158, 0, 0, 0,
442 0, 103, 0, 0, 0, 0, 0, 111, 90, 119,
443 0, 107, 0, 0, 90, 0, 0, 0, 0, 0,
444 0, 159, 159, 159, 159, 0, 90, 90, 90, 90,
445 159, 0, 0, 0, 0, 0, 159, 159, 159, 159,
446 0, 107, 68, 0, 0, 68, 159, 159, 0, 159,
447 159, 159, 159, 159, 159, 159, 0, 0, 159, 68,
448 68, 159, 159, 159, 68, 0, 0, 0, 0, 0,
449 0, 111, 0, 0, 0, 144, 144, 144, 144, 0,
450 0, 0, 0, 0, 144, 0, 0, 0, 0, 0,
451 144, 144, 144, 144, 68, 0, 71, 0, 0, 0,
452 144, 144, 0, 144, 144, 144, 144, 144, 144, 144,
453 0, 0, 144, 71, 71, 144, 144, 144, 71, 0,
454 0, 0, 0, 0, 68, 0, 0, 0, 0, 0,
455 235, 94, 94, 94, 94, 0, 0, 0, 0, 0,
456 0, 0, 0, 0, 106, 0, 71, 106, 71, 0,
457 0, 0, 0, 0, 264, 0, 94, 94, 0, 94,
458 0, 106, 106, 0, 0, 0, 106, 0, 0, 0,
459 0, 0, 0, 0, 0, 0, 0, 0, 71, 0,
460 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
461 107, 107, 107, 107, 0, 145, 106, 0, 145, 107,
462 0, 0, 0, 0, 0, 107, 107, 107, 107, 0,
463 0, 0, 145, 145, 0, 107, 107, 145, 107, 107,
464 107, 107, 107, 107, 107, 0, 106, 107, 0, 0,
465 107, 107, 107, 0, 0, 0, 0, 0, 0, 0,
466 158, 0, 0, 158, 0, 0, 0, 145, 0, 0,
467 0, 0, 0, 0, 0, 0, 0, 158, 158, 0,
468 0, 0, 158, 0, 0, 0, 0, 0, 0, 0,
469 0, 0, 0, 68, 68, 68, 68, 0, 0, 0,
470 0, 0, 68, 0, 0, 0, 0, 0, 68, 68,
471 68, 68, 158, 0, 113, 0, 0, 113, 68, 68,
472 0, 68, 68, 68, 68, 68, 68, 68, 0, 0,
473 68, 113, 113, 68, 68, 68, 113, 0, 0, 0,
474 0, 0, 0, 0, 0, 0, 0, 71, 71, 71,
475 71, 0, 0, 0, 0, 0, 71, 0, 0, 0,
476 0, 0, 71, 71, 71, 71, 113, 0, 0, 0,
477 0, 0, 71, 71, 0, 71, 71, 71, 71, 71,
478 71, 71, 0, 0, 71, 0, 0, 71, 71, 71,
479 0, 0, 0, 0, 0, 106, 106, 106, 106, 0,
480 120, 0, 0, 120, 106, 0, 0, 0, 0, 0,
481 106, 106, 106, 106, 0, 0, 0, 120, 120, 0,
482 106, 106, 120, 106, 106, 106, 106, 106, 106, 106,
483 0, 0, 106, 0, 0, 106, 106, 106, 0, 0,
484 0, 0, 0, 0, 0, 0, 145, 145, 145, 145,
485 0, 103, 120, 0, 103, 145, 0, 0, 0, 0,
486 0, 145, 145, 145, 145, 0, 0, 0, 103, 103,
487 0, 145, 145, 103, 145, 145, 145, 145, 145, 145,
488 145, 0, 0, 145, 0, 0, 145, 145, 145, 0,
489 0, 158, 158, 158, 158, 0, 0, 0, 0, 0,
490 158, 0, 0, 103, 0, 0, 158, 158, 158, 158,
491 0, 0, 104, 0, 0, 104, 158, 158, 0, 158,
492 158, 158, 158, 158, 158, 158, 0, 0, 158, 104,
493 104, 158, 158, 158, 104, 0, 0, 0, 0, 0,
494 0, 0, 0, 0, 0, 113, 113, 113, 113, 0,
495 98, 0, 0, 98, 113, 0, 0, 0, 0, 0,
496 113, 113, 113, 113, 104, 0, 0, 98, 98, 0,
497 113, 113, 98, 113, 113, 113, 113, 113, 113, 113,
498 0, 0, 113, 0, 0, 113, 113, 113, 0, 99,
499 0, 0, 99, 0, 0, 0, 0, 0, 0, 0,
500 89, 0, 98, 89, 0, 0, 99, 99, 0, 0,
501 0, 99, 0, 0, 0, 0, 0, 89, 89, 0,
502 0, 0, 89, 0, 0, 0, 0, 0, 0, 0,
503 0, 120, 120, 120, 120, 0, 100, 0, 0, 100,
504 120, 99, 0, 0, 0, 0, 120, 120, 120, 120,
505 0, 0, 89, 100, 100, 0, 120, 120, 100, 120,
506 120, 120, 120, 120, 120, 120, 0, 0, 120, 0,
507 0, 120, 120, 120, 0, 0, 0, 0, 0, 0,
508 0, 0, 103, 103, 103, 103, 0, 96, 100, 0,
509 96, 103, 0, 0, 0, 0, 0, 103, 103, 103,
510 103, 0, 0, 0, 96, 96, 0, 103, 103, 96,
511 103, 103, 103, 103, 103, 103, 103, 0, 0, 103,
512 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
513 0, 0, 0, 97, 0, 0, 97, 0, 0, 96,
514 0, 0, 0, 104, 104, 104, 104, 0, 0, 0,
515 97, 97, 104, 0, 0, 97, 0, 0, 104, 104,
516 104, 104, 0, 0, 0, 0, 0, 0, 104, 104,
517 0, 104, 104, 104, 104, 104, 104, 104, 0, 0,
518 104, 98, 98, 98, 98, 97, 0, 0, 0, 0,
519 98, 0, 0, 0, 0, 0, 98, 98, 98, 98,
520 0, 0, 0, 0, 0, 0, 98, 98, 0, 98,
521 98, 98, 98, 98, 98, 98, 0, 0, 0, 0,
522 99, 99, 99, 99, 0, 95, 0, 0, 95, 99,
523 0, 89, 89, 89, 89, 99, 99, 99, 99, 0,
524 89, 0, 95, 95, 0, 99, 99, 95, 99, 99,
525 99, 99, 99, 99, 99, 0, 89, 89, 0, 89,
526 89, 89, 89, 89, 0, 0, 0, 100, 100, 100,
527 100, 0, 83, 0, 0, 83, 100, 95, 0, 0,
528 0, 0, 100, 100, 100, 100, 0, 0, 0, 83,
529 83, 0, 100, 100, 83, 100, 100, 100, 100, 100,
530 100, 100, 0, 0, 0, 0, 0, 0, 84, 0,
531 0, 84, 0, 0, 0, 0, 0, 0, 96, 96,
532 96, 96, 0, 0, 83, 84, 84, 96, 0, 0,
533 84, 0, 0, 96, 96, 96, 96, 0, 0, 0,
534 0, 0, 0, 96, 96, 0, 96, 96, 96, 96,
535 96, 96, 96, 85, 0, 0, 85, 0, 0, 0,
536 84, 0, 0, 0, 97, 97, 97, 97, 0, 0,
537 85, 85, 0, 97, 0, 85, 0, 0, 0, 97,
538 97, 97, 97, 0, 0, 0, 0, 0, 0, 97,
539 97, 0, 97, 97, 97, 97, 97, 97, 97, 86,
540 0, 0, 86, 0, 0, 85, 0, 0, 0, 0,
541 0, 0, 0, 0, 0, 0, 86, 86, 0, 0,
542 0, 86, 0, 0, 0, 0, 0, 0, 0, 0,
543 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
544 0, 0, 0, 0, 148, 0, 0, 148, 0, 0,
545 0, 86, 0, 0, 0, 0, 95, 95, 95, 95,
546 0, 148, 148, 0, 0, 95, 148, 0, 0, 0,
547 0, 95, 95, 95, 95, 0, 0, 0, 0, 0,
548 0, 95, 95, 0, 95, 95, 95, 95, 95, 95,
549 95, 147, 0, 0, 147, 0, 148, 0, 0, 0,
550 0, 0, 0, 83, 83, 83, 83, 0, 147, 147,
551 0, 0, 83, 147, 0, 0, 0, 0, 83, 83,
552 83, 83, 0, 0, 0, 0, 0, 134, 83, 83,
553 134, 83, 83, 83, 83, 83, 83, 83, 0, 84,
554 84, 84, 84, 147, 134, 134, 0, 0, 84, 134,
555 0, 0, 0, 0, 84, 84, 84, 84, 0, 0,
556 0, 0, 0, 0, 84, 84, 0, 84, 84, 84,
557 84, 84, 84, 105, 0, 0, 105, 0, 0, 134,
558 0, 0, 0, 0, 85, 85, 85, 85, 0, 0,
559 105, 105, 0, 85, 0, 105, 0, 0, 0, 85,
560 85, 0, 85, 0, 0, 0, 0, 0, 0, 85,
561 85, 0, 85, 85, 85, 85, 85, 85, 90, 0,
562 0, 90, 0, 0, 0, 105, 0, 0, 0, 0,
563 86, 86, 86, 86, 0, 90, 90, 0, 0, 86,
564 90, 0, 167, 0, 0, 86, 86, 0, 0, 0,
565 92, 0, 0, 92, 0, 86, 86, 0, 86, 86,
566 86, 86, 86, 86, 0, 0, 0, 92, 92, 0,
567 90, 0, 92, 0, 149, 148, 148, 148, 148, 0,
568 0, 0, 0, 0, 148, 0, 0, 0, 0, 0,
569 148, 148, 91, 0, 0, 91, 0, 0, 0, 0,
570 148, 148, 92, 148, 148, 148, 148, 148, 0, 91,
571 91, 0, 143, 0, 91, 143, 0, 0, 0, 0,
572 0, 0, 147, 147, 147, 147, 0, 0, 0, 143,
573 143, 147, 0, 0, 0, 284, 0, 147, 147, 82,
574 156, 0, 82, 0, 91, 0, 0, 147, 147, 0,
575 147, 147, 147, 147, 147, 0, 82, 82, 134, 134,
576 134, 134, 0, 0, 143, 0, 0, 134, 167, 0,
577 0, 0, 0, 134, 134, 69, 0, 0, 69, 0,
578 0, 0, 0, 134, 134, 0, 134, 134, 134, 134,
579 134, 82, 69, 69, 0, 0, 0, 0, 0, 0,
580 149, 0, 0, 0, 105, 105, 105, 105, 0, 0,
581 0, 0, 0, 105, 0, 0, 0, 0, 0, 105,
582 105, 0, 0, 0, 0, 0, 0, 69, 0, 105,
583 105, 156, 105, 105, 105, 105, 105, 0, 151, 152,
584 153, 154, 0, 0, 0, 0, 0, 0, 0, 90,
585 90, 90, 90, 0, 159, 160, 161, 162, 90, 167,
586 163, 0, 0, 164, 165, 166, 0, 0, 0, 0,
587 0, 0, 0, 0, 90, 90, 0, 90, 90, 90,
588 90, 92, 92, 92, 92, 0, 0, 0, 0, 0,
589 92, 149, 0, 0, 0, 0, 0, 0, 0, 0,
590 0, 0, 0, 0, 0, 0, 92, 92, 0, 92,
591 92, 92, 0, 0, 0, 0, 0, 0, 0, 0,
592 0, 0, 0, 91, 91, 91, 91, 0, 0, 0,
593 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
594 0, 0, 0, 143, 143, 143, 143, 0, 91, 91,
595 0, 91, 0, 0, 0, 0, 0, 0, 150, 0,
596 0, 0, 0, 0, 151, 152, 153, 154, 143, 143,
597 82, 82, 82, 82, 0, 0, 0, 155, 157, 158,
598 159, 160, 161, 162, 0, 0, 163, 0, 0, 164,
599 165, 166, 0, 0, 0, 82, 82, 0, 0, 0,
600 0, 0, 0, 0, 94, 0, 69, 69, 69, 69,
601 0, 0, 104, 0, 0, 0, 109, 0, 0, 118,
602 0, 0, 0, 0, 0, 0, 125, 126, 127, 128,
603 129, 69, 69, 132, 133, 0, 0, 0, 0, 0,
604 140, 0, 0, 0, 0, 0, 0, 0, 0, 150,
605 0, 0, 0, 0, 0, 151, 152, 153, 154, 0,
606 0, 0, 0, 0, 0, 0, 0, 183, 0, 157,
607 158, 159, 160, 161, 162, 0, 0, 163, 0, 0,
608 164, 165, 166, 0, 0, 0, 0, 0, 0, 0,
609 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
610 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
611 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
612 0, 0, 0, 0, 217, 218, 219, 220, 221, 222,
613 223, 224, 225, 226, 227, 228, 229, 230, 0, 0,
614 0, 0, 0, 0, 0, 0, 0, 0, 0, 245,
615 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
616 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 0, 0, 0, 0, 0,
621 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
622 0, 0, 0, 0, 0, 0, 0, 299, 0, 0,
623 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
624 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
625 0, 0, 0, 0, 0, 0, 0, 0, 315,
627 short yycheck[] = { 13,
628 36, 86, 41, 36, 40, 44, 182, 59, 59, 41,
629 93, 40, 59, 91, 91, 59, 257, 41, 257, 58,
630 59, 41, 191, 41, 63, 59, 44, 91, 91, 59,
631 329, 40, 46, 41, 93, 40, 93, 41, 257, 41,
632 58, 59, 41, 57, 122, 63, 123, 61, 97, 98,
633 99, 100, 101, 102, 93, 59, 41, 59, 41, 123,
634 123, 360, 91, 44, 297, 298, 41, 41, 276, 277,
635 40, 40, 278, 91, 40, 93, 326, 327, 0, 123,
636 59, 331, 59, 36, 59, 59, 59, 40, 59, 123,
637 123, 41, 106, 107, 123, 40, 40, 347, 123, 41,
638 40, 351, 271, 59, 41, 123, 40, 123, 44, 59,
639 260, 33, 257, 289, 36, 37, 38, 59, 40, 40,
640 42, 43, 59, 45, 40, 93, 41, 40, 125, 143,
641 144, 145, 146, 147, 148, 149, 305, 59, 91, 91,
642 257, 36, 64, 192, 41, 266, 267, 268, 41, 270,
643 271, 44, 91, 167, 168, 169, 170, 171, 172, 173,
644 125, 41, 93, 298, 44, 58, 59, 40, 182, 91,
645 123, 249, 186, 187, 41, 189, 254, 191, 58, 59,
646 41, 350, 41, 63, 198, 0, 200, 201, 41, 41,
647 41, 205, 40, 93, 41, 93, 59, 125, 59, 125,
648 93, 123, 125, 125, 126, 125, 257, 41, 125, 59,
649 41, 91, 123, 93, 297, 298, 41, 231, 33, 233,
650 234, 36, 37, 38, 257, 40, 59, 42, 43, 262,
651 45, 40, 93, 272, 273, 274, 275, 314, 297, 298,
652 297, 298, 281, 123, 59, 297, 298, 41, 41, 64,
653 297, 298, 337, 123, 272, 273, 274, 275, 297, 298,
654 296, 300, 301, 281, 0, 297, 298, 123, 282, 287,
655 288, 289, 290, 297, 298, 289, 91, 297, 298, 297,
656 298, 59, 300, 301, 302, 303, 304, 305, 306, 297,
657 298, 309, 41, 307, 312, 313, 314, 33, 297, 298,
658 36, 37, 38, 41, 40, 258, 42, 43, 123, 45,
659 125, 126, 297, 298, 297, 298, 297, 298, 297, 298,
660 297, 298, 41, 59, 297, 298, 297, 298, 64, 297,
661 298, 59, 346, 41, 256, 257, 258, 259, 260, 261,
662 41, 263, 264, 265, 266, 267, 268, 269, 270, 271,
663 272, 273, 274, 275, 59, 91, 8, 279, 280, 32,
664 282, 283, 284, 285, 286, 125, 297, 298, 63, 291,
665 292, 293, 294, 295, 296, 13, 144, 299, 307, 272,
666 273, 274, 275, 346, 189, 96, 308, 123, 310, 311,
667 126, -1, 272, 273, 274, 275, 91, 297, 298, 297,
668 298, 281, -1, -1, 297, 298, 91, 287, 288, 289,
669 290, 272, 273, 274, 275, -1, -1, 297, 298, -1,
670 300, 301, 302, 303, 304, 305, 306, -1, 123, 309,
671 91, -1, 312, 313, 314, -1, 297, 298, 123, -1,
672 -1, 256, 257, 258, 259, 260, 261, -1, 263, 264,
673 265, 266, 267, 268, 269, 270, 271, 272, 273, 274,
674 275, -1, 123, -1, 279, 280, -1, 282, 283, 284,
675 285, 286, 272, 273, 274, 275, 291, 292, 293, 294,
676 295, 296, 41, -1, 299, 44, 91, -1, -1, -1,
677 -1, -1, -1, 308, -1, 310, 311, 297, 298, 58,
678 59, -1, -1, -1, 63, -1, 266, 267, 268, -1,
679 270, 271, -1, -1, -1, -1, -1, -1, 123, -1,
680 256, 257, 258, 259, 260, 261, 125, 263, 264, 265,
681 -1, -1, 91, 269, 93, -1, 272, 273, 274, 275,
682 -1, -1, -1, 279, 280, -1, 282, 283, 284, 285,
683 286, -1, -1, -1, -1, 291, 292, 293, 294, 295,
684 296, -1, -1, 299, 123, -1, -1, -1, -1, -1,
685 91, -1, 308, 33, 310, 311, 36, 37, 38, -1,
686 40, 41, 42, 43, 44, 45, 281, -1, -1, -1,
687 -1, -1, 287, 288, 289, 290, -1, -1, 58, 59,
688 -1, -1, 123, 63, 64, 300, 301, 302, 303, 304,
689 305, 306, -1, -1, 309, -1, -1, 312, 313, 314,
690 -1, 306, -1, -1, 309, -1, -1, 312, 313, 314,
691 -1, 91, -1, 93, 33, -1, -1, 36, 37, 38,
692 -1, 40, 41, 42, 43, 44, 45, -1, 309, -1,
693 -1, 312, 313, 314, -1, -1, -1, -1, -1, 58,
694 59, -1, -1, 123, 63, 64, 126, 266, 267, 268,
695 -1, 270, 271, -1, -1, -1, -1, -1, -1, 302,
696 303, 304, -1, 306, 289, 290, -1, -1, -1, -1,
697 -1, 13, -1, 33, 93, -1, 36, 37, 38, -1,
698 40, 306, 42, 43, 309, 45, -1, 312, 313, 314,
699 333, -1, -1, 272, 273, 274, 275, 340, -1, 59,
700 42, 344, 281, 45, 64, -1, -1, 126, 287, 288,
701 289, 290, -1, -1, 357, 358, -1, -1, 297, 298,
702 -1, 300, 301, 302, 303, 304, 305, 306, -1, -1,
703 309, 91, -1, 312, 313, 314, -1, -1, 41, 81,
704 -1, 44, -1, -1, -1, -1, 287, 288, 289, 290,
705 -1, -1, -1, 95, -1, -1, 59, -1, -1, 91,
706 -1, -1, -1, 123, 305, 306, 126, -1, 309, -1,
707 -1, 312, 313, 314, -1, -1, -1, 257, 258, 259,
708 260, 261, -1, 263, 264, 265, -1, -1, -1, 269,
709 93, 123, 272, 273, 274, 275, -1, -1, -1, 141,
710 280, 281, 282, 283, 284, 285, 286, 287, 288, 289,
711 290, 291, 292, 293, 294, 295, 296, 297, 298, 299,
712 300, 301, 302, 303, 304, 305, 306, -1, 308, 309,
713 310, 311, 312, 313, 314, -1, 178, -1, 257, 258,
714 259, 260, 261, 185, 263, 264, 265, -1, -1, -1,
715 269, -1, -1, 272, 273, 274, 275, -1, -1, -1,
716 -1, 280, 281, 282, 283, 284, 285, 286, 287, 288,
717 289, 290, 291, 292, 293, 294, 295, 296, 297, 298,
718 299, 300, 301, 302, 303, 304, 305, 306, -1, 308,
719 309, 310, 311, 312, 313, 314, 256, 257, 258, 259,
720 260, 261, -1, 263, 264, 265, -1, -1, -1, 269,
721 -1, 91, 272, 273, 274, 275, -1, -1, -1, 279,
722 280, -1, 282, 283, 284, 285, 286, -1, -1, 91,
723 43, 291, 292, 293, 294, 295, 296, 33, 51, 299,
724 36, 37, 38, 123, 40, -1, 42, 43, 308, 45,
725 310, 311, -1, -1, -1, 287, -1, 289, 290, -1,
726 -1, 123, -1, 59, -1, -1, -1, -1, 64, 272,
727 273, 274, 275, 305, 306, -1, -1, 309, 91, -1,
728 312, 313, 314, -1, -1, -1, -1, -1, -1, -1,
729 -1, -1, -1, 33, 297, 91, 36, 37, 38, -1,
730 40, 114, 42, 43, 26, 45, -1, -1, -1, 122,
731 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
732 -1, 43, 44, -1, 64, -1, -1, 123, 50, -1,
733 126, -1, -1, -1, -1, -1, -1, -1, -1, -1,
734 62, 63, 64, 65, -1, -1, -1, -1, -1, 33,
735 -1, 91, 36, 37, 38, -1, 40, -1, 42, 43,
736 -1, 45, -1, -1, -1, -1, -1, -1, -1, -1,
737 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
738 64, -1, -1, 123, -1, 107, 126, -1, -1, -1,
739 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
740 -1, -1, -1, -1, -1, -1, -1, 91, -1, 289,
741 290, -1, 33, -1, -1, 36, 37, 38, -1, 40,
742 -1, 42, 43, -1, 45, 305, 306, 289, -1, 309,
743 -1, -1, 312, 313, 314, -1, 249, -1, -1, 123,
744 -1, 254, 126, 64, 306, -1, -1, 309, -1, -1,
745 312, 313, 314, -1, -1, -1, -1, -1, -1, -1,
746 256, 257, 258, 259, 260, 261, -1, 263, 264, 265,
747 91, -1, -1, 269, -1, -1, 272, 273, 274, 275,
748 -1, -1, -1, 279, 280, -1, 282, 283, 284, 285,
749 286, -1, -1, -1, -1, 291, 292, 293, 294, 295,
750 296, 91, 123, 299, -1, 126, -1, -1, -1, -1,
751 -1, -1, 308, 41, 310, 311, 44, 257, 258, 259,
752 260, 261, 262, 263, 264, 265, -1, -1, -1, 269,
753 -1, -1, -1, 123, -1, 63, -1, -1, -1, -1,
754 280, -1, 282, 283, 284, 285, 286, -1, -1, -1,
755 -1, 291, 292, 293, 294, 295, 296, -1, -1, 299,
756 -1, -1, -1, 91, -1, -1, -1, 41, 308, -1,
757 310, 311, -1, 257, 258, 259, 260, 261, -1, 263,
758 264, 265, -1, -1, -1, 269, -1, -1, -1, 63,
759 -1, -1, -1, -1, -1, 123, 280, -1, 282, 283,
760 284, 285, 286, -1, -1, -1, -1, 291, 292, 293,
761 294, 295, 296, -1, -1, 299, -1, 91, -1, -1,
762 -1, -1, -1, -1, 308, -1, 310, 311, -1, -1,
763 -1, -1, -1, -1, -1, -1, 257, 258, 259, 260,
764 261, -1, 263, 264, 265, -1, -1, -1, 269, 123,
765 -1, -1, -1, -1, -1, -1, -1, -1, -1, 280,
766 -1, 282, 283, 284, 285, 286, -1, -1, -1, 91,
767 291, 292, 293, 294, 295, 296, 33, -1, 299, 36,
768 37, 38, -1, 40, -1, 42, 43, 308, 45, 310,
769 311, -1, -1, -1, -1, -1, -1, 287, 288, 289,
770 290, 123, 59, -1, -1, -1, -1, 64, -1, -1,
771 -1, 301, 302, 303, 304, 305, 306, -1, -1, 309,
772 -1, -1, 312, 313, 314, -1, -1, -1, -1, -1,
773 -1, -1, 33, -1, 91, 36, 37, 38, -1, 40,
774 41, 42, 43, -1, 45, -1, -1, -1, -1, -1,
775 -1, -1, -1, 281, -1, -1, -1, -1, -1, 287,
776 288, 289, 290, 64, -1, -1, -1, -1, -1, 126,
777 -1, -1, 300, 301, 302, 303, 304, 305, 306, -1,
778 -1, 309, -1, -1, 312, 313, 314, -1, 33, -1,
779 91, 36, 37, 38, -1, 40, -1, 42, 43, -1,
780 45, -1, -1, -1, -1, -1, -1, 281, -1, -1,
781 -1, -1, -1, 287, 288, 289, 290, -1, -1, 64,
782 -1, -1, -1, -1, -1, 126, 300, 301, 302, 303,
783 304, 305, 306, -1, -1, 309, -1, -1, 312, 313,
784 314, -1, -1, -1, -1, -1, 91, 33, 93, -1,
785 36, 37, 38, -1, 40, 41, 42, 43, -1, 45,
786 -1, -1, -1, -1, -1, 287, 288, 289, 290, -1,
787 -1, -1, -1, -1, -1, -1, -1, -1, 64, -1,
788 -1, 126, 304, 305, 306, -1, -1, 309, -1, -1,
789 312, 313, 314, -1, -1, -1, 41, -1, -1, 44,
790 257, 258, 259, 260, 261, 91, 263, 264, 265, -1,
791 -1, -1, 269, 58, 59, -1, -1, -1, 63, -1,
792 -1, -1, -1, 280, -1, 282, 283, 284, 285, 286,
793 -1, -1, -1, -1, 291, 292, 293, 294, 295, 296,
794 126, -1, 299, -1, -1, -1, -1, -1, 93, -1,
795 -1, 308, 41, 310, 311, 44, 257, 258, 259, 260,
796 261, -1, 263, 264, 265, -1, -1, -1, 269, 58,
797 59, -1, -1, -1, 63, -1, -1, -1, -1, 280,
798 -1, 282, 283, 284, 285, 286, -1, -1, -1, -1,
799 291, 292, 293, 294, 295, 296, -1, -1, 299, -1,
800 -1, -1, -1, -1, 93, -1, -1, 308, -1, 310,
801 311, -1, 257, 258, 259, 260, 261, -1, 263, 264,
802 265, -1, 33, -1, 269, 36, 37, 38, -1, 40,
803 41, 42, 43, -1, 45, 280, -1, 282, 283, 284,
804 285, 286, -1, -1, -1, -1, 291, 292, 293, 294,
805 295, 296, -1, 64, 299, -1, -1, -1, -1, -1,
806 -1, -1, -1, 308, -1, 310, 311, -1, -1, -1,
807 -1, 257, 258, 259, 260, 261, -1, 263, 264, 265,
808 91, 33, -1, 269, 36, 37, 38, -1, 40, -1,
809 42, 43, -1, 45, 280, -1, 282, 283, 284, 285,
810 286, -1, -1, -1, -1, 291, 292, 293, 294, 295,
811 296, -1, 64, 299, -1, 126, -1, -1, -1, -1,
812 -1, -1, 308, -1, 310, 311, -1, 272, 273, 274,
813 275, -1, -1, -1, -1, -1, 281, 33, -1, 91,
814 36, 37, 38, 288, 40, 41, 42, 43, -1, 45,
815 -1, -1, 297, 298, -1, 300, 301, 302, 303, 304,
816 -1, -1, -1, -1, -1, -1, -1, -1, 64, -1,
817 -1, -1, -1, -1, 126, -1, -1, -1, -1, -1,
818 -1, -1, -1, 272, 273, 274, 275, -1, -1, -1,
819 -1, -1, 281, 33, -1, 91, 36, 37, 38, -1,
820 40, 41, 42, 43, -1, 45, -1, -1, 297, 298,
821 -1, 300, 301, 302, 303, 304, -1, -1, -1, -1,
822 -1, -1, -1, -1, 64, -1, -1, -1, -1, -1,
823 126, -1, -1, -1, -1, -1, -1, -1, -1, -1,
824 -1, -1, -1, -1, -1, -1, 257, 258, 259, 260,
825 261, 91, 263, 264, 265, -1, 33, -1, 269, 36,
826 37, 38, -1, 40, 41, 42, 43, -1, 45, 280,
827 -1, 282, 283, 284, 285, 286, -1, -1, -1, -1,
828 291, 292, 293, 294, 295, 296, 126, 64, 299, -1,
829 -1, -1, -1, -1, -1, -1, -1, 308, -1, 310,
830 311, -1, -1, -1, 256, 257, 258, 259, 260, 261,
831 -1, 263, 264, 265, 91, -1, -1, 269, -1, -1,
832 -1, -1, -1, -1, -1, -1, -1, -1, 280, -1,
833 282, 283, 284, 285, 286, -1, -1, -1, -1, 291,
834 292, 293, 294, 295, 296, -1, -1, 299, -1, 126,
835 91, -1, -1, -1, 41, -1, 308, 44, 310, 311,
836 -1, 257, 258, 259, 260, 261, -1, 263, 264, 265,
837 -1, 58, 59, 269, -1, -1, 63, -1, -1, -1,
838 -1, -1, 123, -1, 280, -1, 282, 283, 284, 285,
839 286, -1, -1, -1, -1, 291, 292, 293, 294, 295,
840 296, -1, -1, 299, 91, -1, 93, -1, -1, -1,
841 -1, -1, 308, -1, 310, 311, -1, 257, 258, 259,
842 260, 261, -1, 263, 264, 265, -1, 33, -1, 269,
843 36, 37, 38, -1, 40, -1, 42, 43, -1, 45,
844 280, -1, 282, 283, 284, 285, 286, -1, -1, -1,
845 -1, 291, 292, 293, 294, 295, 296, -1, 64, 299,
846 -1, -1, -1, -1, -1, -1, -1, -1, 308, -1,
847 310, 311, -1, -1, -1, -1, 41, -1, -1, 44,
848 257, 258, 259, 260, 261, 91, 263, 264, 265, -1,
849 -1, -1, 269, 58, 59, -1, -1, -1, 63, -1,
850 -1, -1, -1, 280, -1, 282, 283, 284, 285, 286,
851 -1, -1, -1, -1, 291, 292, 293, 294, 295, 296,
852 126, -1, 299, 41, -1, -1, 44, -1, 93, -1,
853 -1, 308, -1, 310, 311, -1, -1, -1, -1, -1,
854 58, 59, -1, -1, -1, 63, 287, 288, 289, 290,
855 -1, -1, -1, -1, -1, -1, -1, -1, 123, -1,
856 -1, 302, 303, 304, 305, 306, -1, -1, 309, -1,
857 -1, 312, 313, 314, -1, 93, -1, -1, -1, -1,
858 -1, -1, -1, -1, -1, 272, 273, 274, 275, -1,
859 41, -1, -1, -1, 281, -1, -1, -1, -1, -1,
860 287, 288, 289, 290, -1, 123, -1, 58, 59, -1,
861 297, 298, 63, 300, 301, 302, 303, 304, 305, 306,
862 -1, -1, 309, -1, -1, 312, 313, 314, -1, -1,
863 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
864 91, -1, 93, -1, 41, -1, -1, -1, -1, -1,
865 -1, 257, 258, 259, 260, 261, -1, 263, 264, 265,
866 -1, 58, 59, 269, -1, -1, 63, -1, -1, -1,
867 -1, -1, 123, -1, 280, -1, 282, 283, 284, 285,
868 286, -1, -1, -1, -1, 291, 292, 293, 294, 295,
869 296, -1, -1, 299, 91, -1, 93, -1, -1, -1,
870 41, -1, 308, 44, 310, 311, -1, 272, 273, 274,
871 275, -1, -1, -1, -1, -1, 281, 58, 59, -1,
872 -1, -1, 287, 288, 289, 290, 123, -1, -1, -1,
873 -1, -1, 297, 298, -1, 300, 301, 302, 303, 304,
874 305, 306, -1, -1, 309, -1, -1, 312, 313, 314,
875 -1, -1, 93, -1, 272, 273, 274, 275, -1, 41,
876 -1, -1, 44, 281, -1, -1, -1, -1, -1, 287,
877 288, 289, 290, -1, -1, -1, 58, 59, -1, 297,
878 298, 63, 300, 301, 302, 303, 304, 305, 306, 25,
879 26, 309, -1, -1, 312, 313, 314, -1, -1, -1,
880 -1, 37, -1, -1, -1, -1, -1, 43, 44, 45,
881 -1, 93, -1, -1, 50, -1, -1, -1, -1, -1,
882 -1, 272, 273, 274, 275, -1, 62, 63, 64, 65,
883 281, -1, -1, -1, -1, -1, 287, 288, 289, 290,
884 -1, 123, 41, -1, -1, 44, 297, 298, -1, 300,
885 301, 302, 303, 304, 305, 306, -1, -1, 309, 58,
886 59, 312, 313, 314, 63, -1, -1, -1, -1, -1,
887 -1, 107, -1, -1, -1, 272, 273, 274, 275, -1,
888 -1, -1, -1, -1, 281, -1, -1, -1, -1, -1,
889 287, 288, 289, 290, 93, -1, 41, -1, -1, -1,
890 297, 298, -1, 300, 301, 302, 303, 304, 305, 306,
891 -1, -1, 309, 58, 59, 312, 313, 314, 63, -1,
892 -1, -1, -1, -1, 123, -1, -1, -1, -1, -1,
893 166, 272, 273, 274, 275, -1, -1, -1, -1, -1,
894 -1, -1, -1, -1, 41, -1, 91, 44, 93, -1,
895 -1, -1, -1, -1, 190, -1, 297, 298, -1, 300,
896 -1, 58, 59, -1, -1, -1, 63, -1, -1, -1,
897 -1, -1, -1, -1, -1, -1, -1, -1, 123, -1,
898 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
899 272, 273, 274, 275, -1, 41, 93, -1, 44, 281,
900 -1, -1, -1, -1, -1, 287, 288, 289, 290, -1,
901 -1, -1, 58, 59, -1, 297, 298, 63, 300, 301,
902 302, 303, 304, 305, 306, -1, 123, 309, -1, -1,
903 312, 313, 314, -1, -1, -1, -1, -1, -1, -1,
904 41, -1, -1, 44, -1, -1, -1, 93, -1, -1,
905 -1, -1, -1, -1, -1, -1, -1, 58, 59, -1,
906 -1, -1, 63, -1, -1, -1, -1, -1, -1, -1,
907 -1, -1, -1, 272, 273, 274, 275, -1, -1, -1,
908 -1, -1, 281, -1, -1, -1, -1, -1, 287, 288,
909 289, 290, 93, -1, 41, -1, -1, 44, 297, 298,
910 -1, 300, 301, 302, 303, 304, 305, 306, -1, -1,
911 309, 58, 59, 312, 313, 314, 63, -1, -1, -1,
912 -1, -1, -1, -1, -1, -1, -1, 272, 273, 274,
913 275, -1, -1, -1, -1, -1, 281, -1, -1, -1,
914 -1, -1, 287, 288, 289, 290, 93, -1, -1, -1,
915 -1, -1, 297, 298, -1, 300, 301, 302, 303, 304,
916 305, 306, -1, -1, 309, -1, -1, 312, 313, 314,
917 -1, -1, -1, -1, -1, 272, 273, 274, 275, -1,
918 41, -1, -1, 44, 281, -1, -1, -1, -1, -1,
919 287, 288, 289, 290, -1, -1, -1, 58, 59, -1,
920 297, 298, 63, 300, 301, 302, 303, 304, 305, 306,
921 -1, -1, 309, -1, -1, 312, 313, 314, -1, -1,
922 -1, -1, -1, -1, -1, -1, 272, 273, 274, 275,
923 -1, 41, 93, -1, 44, 281, -1, -1, -1, -1,
924 -1, 287, 288, 289, 290, -1, -1, -1, 58, 59,
925 -1, 297, 298, 63, 300, 301, 302, 303, 304, 305,
926 306, -1, -1, 309, -1, -1, 312, 313, 314, -1,
927 -1, 272, 273, 274, 275, -1, -1, -1, -1, -1,
928 281, -1, -1, 93, -1, -1, 287, 288, 289, 290,
929 -1, -1, 41, -1, -1, 44, 297, 298, -1, 300,
930 301, 302, 303, 304, 305, 306, -1, -1, 309, 58,
931 59, 312, 313, 314, 63, -1, -1, -1, -1, -1,
932 -1, -1, -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, 309, -1, -1, 312, 313, 314, -1, 41,
937 -1, -1, 44, -1, -1, -1, -1, -1, -1, -1,
938 41, -1, 93, 44, -1, -1, 58, 59, -1, -1,
939 -1, 63, -1, -1, -1, -1, -1, 58, 59, -1,
940 -1, -1, 63, -1, -1, -1, -1, -1, -1, -1,
941 -1, 272, 273, 274, 275, -1, 41, -1, -1, 44,
942 281, 93, -1, -1, -1, -1, 287, 288, 289, 290,
943 -1, -1, 93, 58, 59, -1, 297, 298, 63, 300,
944 301, 302, 303, 304, 305, 306, -1, -1, 309, -1,
945 -1, 312, 313, 314, -1, -1, -1, -1, -1, -1,
946 -1, -1, 272, 273, 274, 275, -1, 41, 93, -1,
947 44, 281, -1, -1, -1, -1, -1, 287, 288, 289,
948 290, -1, -1, -1, 58, 59, -1, 297, 298, 63,
949 300, 301, 302, 303, 304, 305, 306, -1, -1, 309,
950 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
951 -1, -1, -1, 41, -1, -1, 44, -1, -1, 93,
952 -1, -1, -1, 272, 273, 274, 275, -1, -1, -1,
953 58, 59, 281, -1, -1, 63, -1, -1, 287, 288,
954 289, 290, -1, -1, -1, -1, -1, -1, 297, 298,
955 -1, 300, 301, 302, 303, 304, 305, 306, -1, -1,
956 309, 272, 273, 274, 275, 93, -1, -1, -1, -1,
957 281, -1, -1, -1, -1, -1, 287, 288, 289, 290,
958 -1, -1, -1, -1, -1, -1, 297, 298, -1, 300,
959 301, 302, 303, 304, 305, 306, -1, -1, -1, -1,
960 272, 273, 274, 275, -1, 41, -1, -1, 44, 281,
961 -1, 272, 273, 274, 275, 287, 288, 289, 290, -1,
962 281, -1, 58, 59, -1, 297, 298, 63, 300, 301,
963 302, 303, 304, 305, 306, -1, 297, 298, -1, 300,
964 301, 302, 303, 304, -1, -1, -1, 272, 273, 274,
965 275, -1, 41, -1, -1, 44, 281, 93, -1, -1,
966 -1, -1, 287, 288, 289, 290, -1, -1, -1, 58,
967 59, -1, 297, 298, 63, 300, 301, 302, 303, 304,
968 305, 306, -1, -1, -1, -1, -1, -1, 41, -1,
969 -1, 44, -1, -1, -1, -1, -1, -1, 272, 273,
970 274, 275, -1, -1, 93, 58, 59, 281, -1, -1,
971 63, -1, -1, 287, 288, 289, 290, -1, -1, -1,
972 -1, -1, -1, 297, 298, -1, 300, 301, 302, 303,
973 304, 305, 306, 41, -1, -1, 44, -1, -1, -1,
974 93, -1, -1, -1, 272, 273, 274, 275, -1, -1,
975 58, 59, -1, 281, -1, 63, -1, -1, -1, 287,
976 288, 289, 290, -1, -1, -1, -1, -1, -1, 297,
977 298, -1, 300, 301, 302, 303, 304, 305, 306, 41,
978 -1, -1, 44, -1, -1, 93, -1, -1, -1, -1,
979 -1, -1, -1, -1, -1, -1, 58, 59, -1, -1,
980 -1, 63, -1, -1, -1, -1, -1, -1, -1, -1,
981 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
982 -1, -1, -1, -1, 41, -1, -1, 44, -1, -1,
983 -1, 93, -1, -1, -1, -1, 272, 273, 274, 275,
984 -1, 58, 59, -1, -1, 281, 63, -1, -1, -1,
985 -1, 287, 288, 289, 290, -1, -1, -1, -1, -1,
986 -1, 297, 298, -1, 300, 301, 302, 303, 304, 305,
987 306, 41, -1, -1, 44, -1, 93, -1, -1, -1,
988 -1, -1, -1, 272, 273, 274, 275, -1, 58, 59,
989 -1, -1, 281, 63, -1, -1, -1, -1, 287, 288,
990 289, 290, -1, -1, -1, -1, -1, 41, 297, 298,
991 44, 300, 301, 302, 303, 304, 305, 306, -1, 272,
992 273, 274, 275, 93, 58, 59, -1, -1, 281, 63,
993 -1, -1, -1, -1, 287, 288, 289, 290, -1, -1,
994 -1, -1, -1, -1, 297, 298, -1, 300, 301, 302,
995 303, 304, 305, 41, -1, -1, 44, -1, -1, 93,
996 -1, -1, -1, -1, 272, 273, 274, 275, -1, -1,
997 58, 59, -1, 281, -1, 63, -1, -1, -1, 287,
998 288, -1, 290, -1, -1, -1, -1, -1, -1, 297,
999 298, -1, 300, 301, 302, 303, 304, 305, 41, -1,
1000 -1, 44, -1, -1, -1, 93, -1, -1, -1, -1,
1001 272, 273, 274, 275, -1, 58, 59, -1, -1, 281,
1002 63, -1, 91, -1, -1, 287, 288, -1, -1, -1,
1003 41, -1, -1, 44, -1, 297, 298, -1, 300, 301,
1004 302, 303, 304, 305, -1, -1, -1, 58, 59, -1,
1005 93, -1, 63, -1, 123, 272, 273, 274, 275, -1,
1006 -1, -1, -1, -1, 281, -1, -1, -1, -1, -1,
1007 287, 288, 41, -1, -1, 44, -1, -1, -1, -1,
1008 297, 298, 93, 300, 301, 302, 303, 304, -1, 58,
1009 59, -1, 41, -1, 63, 44, -1, -1, -1, -1,
1010 -1, -1, 272, 273, 274, 275, -1, -1, -1, 58,
1011 59, 281, -1, -1, -1, 58, -1, 287, 288, 41,
1012 63, -1, 44, -1, 93, -1, -1, 297, 298, -1,
1013 300, 301, 302, 303, 304, -1, 58, 59, 272, 273,
1014 274, 275, -1, -1, 93, -1, -1, 281, 91, -1,
1015 -1, -1, -1, 287, 288, 41, -1, -1, 44, -1,
1016 -1, -1, -1, 297, 298, -1, 300, 301, 302, 303,
1017 304, 93, 58, 59, -1, -1, -1, -1, -1, -1,
1018 123, -1, -1, -1, 272, 273, 274, 275, -1, -1,
1019 -1, -1, -1, 281, -1, -1, -1, -1, -1, 287,
1020 288, -1, -1, -1, -1, -1, -1, 93, -1, 297,
1021 298, 63, 300, 301, 302, 303, 304, -1, 287, 288,
1022 289, 290, -1, -1, -1, -1, -1, -1, -1, 272,
1023 273, 274, 275, -1, 303, 304, 305, 306, 281, 91,
1024 309, -1, -1, 312, 313, 314, -1, -1, -1, -1,
1025 -1, -1, -1, -1, 297, 298, -1, 300, 301, 302,
1026 303, 272, 273, 274, 275, -1, -1, -1, -1, -1,
1027 281, 123, -1, -1, -1, -1, -1, -1, -1, -1,
1028 -1, -1, -1, -1, -1, -1, 297, 298, -1, 300,
1029 301, 302, -1, -1, -1, -1, -1, -1, -1, -1,
1030 -1, -1, -1, 272, 273, 274, 275, -1, -1, -1,
1031 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1032 -1, -1, -1, 272, 273, 274, 275, -1, 297, 298,
1033 -1, 300, -1, -1, -1, -1, -1, -1, 281, -1,
1034 -1, -1, -1, -1, 287, 288, 289, 290, 297, 298,
1035 272, 273, 274, 275, -1, -1, -1, 300, 301, 302,
1036 303, 304, 305, 306, -1, -1, 309, -1, -1, 312,
1037 313, 314, -1, -1, -1, 297, 298, -1, -1, -1,
1038 -1, -1, -1, -1, 30, -1, 272, 273, 274, 275,
1039 -1, -1, 38, -1, -1, -1, 42, -1, -1, 45,
1040 -1, -1, -1, -1, -1, -1, 52, 53, 54, 55,
1041 56, 297, 298, 59, 60, -1, -1, -1, -1, -1,
1042 66, -1, -1, -1, -1, -1, -1, -1, -1, 281,
1043 -1, -1, -1, -1, -1, 287, 288, 289, 290, -1,
1044 -1, -1, -1, -1, -1, -1, -1, 93, -1, 301,
1045 302, 303, 304, 305, 306, -1, -1, 309, -1, -1,
1046 312, 313, 314, -1, -1, -1, -1, -1, -1, -1,
1047 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1048 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1049 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1050 -1, -1, -1, -1, 150, 151, 152, 153, 154, 155,
1051 156, 157, 158, 159, 160, 161, 162, 163, -1, -1,
1052 -1, -1, -1, -1, -1, -1, -1, -1, -1, 175,
1053 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1054 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1055 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1056 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1057 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1058 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1059 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1060 -1, -1, -1, -1, -1, -1, -1, 253, -1, -1,
1061 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1062 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1063 -1, -1, -1, -1, -1, -1, -1, -1, 284,
1069 #define YYMAXTOKEN 314
1072 "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,
1073 "'!'",0,0,"'$'","'%'","'&'",0,"'('","')'","'*'","'+'","','","'-'",0,0,0,0,0,0,0,
1074 0,0,0,0,0,"':'","';'",0,0,0,"'?'","'@'",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1075 0,0,0,0,0,0,"'['",0,"']'",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1076 0,0,"'{'",0,"'}'","'~'",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1077 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1078 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1079 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",
1080 "PMFUNC","PRIVATEREF","FUNC0SUB","UNIOPSUB","LSTOPSUB","LABEL","FORMAT","SUB",
1081 "ANONSUB","PACKAGE","USE","WHILE","UNTIL","IF","UNLESS","ELSE","ELSIF",
1082 "CONTINUE","FOR","LOOPEX","DOTDOT","FUNC0","FUNC1","FUNC","UNIOP","LSTOP",
1083 "RELOP","EQOP","MULOP","ADDOP","DOLSHARP","DO","HASHBRACK","NOAMP","LOCAL","MY",
1084 "OROP","ANDOP","NOTOP","ASSIGNOP","OROR","ANDAND","BITOROP","BITANDOP",
1085 "SHIFTOP","MATCHOP","UMINUS","REFGEN","POWOP","PREINC","PREDEC","POSTINC",
1091 "prog : $$1 lineseq",
1092 "block : '{' remember lineseq '}'",
1094 "mblock : '{' mremember lineseq '}'",
1097 "lineseq : lineseq decl",
1098 "lineseq : lineseq line",
1099 "line : label cond",
1102 "line : label sideff ';'",
1105 "sideff : expr IF expr",
1106 "sideff : expr UNLESS expr",
1107 "sideff : expr WHILE expr",
1108 "sideff : expr UNTIL iexpr",
1110 "else : ELSE mblock",
1111 "else : ELSIF '(' mexpr ')' mblock else",
1112 "cond : IF '(' remember mexpr ')' mblock else",
1113 "cond : UNLESS '(' remember miexpr ')' mblock else",
1115 "cont : CONTINUE block",
1116 "loop : label WHILE '(' remember mtexpr ')' mblock cont",
1117 "loop : label UNTIL '(' remember miexpr ')' mblock cont",
1118 "loop : label FOR MY remember my_scalar '(' mexpr ')' mblock cont",
1119 "loop : label FOR scalar '(' remember mexpr ')' mblock cont",
1120 "loop : label FOR '(' remember mexpr ')' mblock cont",
1121 "loop : label FOR '(' remember mnexpr ';' mtexpr ';' mnexpr ')' mblock",
1122 "loop : label block cont",
1138 "format : FORMAT startformsub formname block",
1141 "subrout : SUB startsub subname proto subbody",
1150 "package : PACKAGE WORD ';'",
1151 "package : PACKAGE ';'",
1153 "use : USE startsub $$2 WORD WORD listexpr ';'",
1154 "expr : expr ANDOP expr",
1155 "expr : expr OROP expr",
1157 "argexpr : argexpr ','",
1158 "argexpr : argexpr ',' term",
1160 "listop : LSTOP indirob argexpr",
1161 "listop : FUNC '(' indirob expr ')'",
1162 "listop : term ARROW method '(' listexprcom ')'",
1163 "listop : METHOD indirob listexpr",
1164 "listop : FUNCMETH indirob '(' listexprcom ')'",
1165 "listop : LSTOP listexpr",
1166 "listop : FUNC '(' listexprcom ')'",
1168 "listop : LSTOPSUB startanonsub block $$3 listexpr",
1171 "term : term ASSIGNOP term",
1172 "term : term POWOP term",
1173 "term : term MULOP term",
1174 "term : term ADDOP term",
1175 "term : term SHIFTOP term",
1176 "term : term RELOP term",
1177 "term : term EQOP term",
1178 "term : term BITANDOP term",
1179 "term : term BITOROP term",
1180 "term : term DOTDOT term",
1181 "term : term ANDAND term",
1182 "term : term OROR term",
1183 "term : term '?' term ':' term",
1184 "term : term MATCHOP term",
1189 "term : REFGEN term",
1190 "term : term POSTINC",
1191 "term : term POSTDEC",
1192 "term : PREINC term",
1193 "term : PREDEC term",
1194 "term : local term",
1195 "term : '(' expr ')'",
1197 "term : '[' expr ']'",
1199 "term : HASHBRACK expr ';' '}'",
1200 "term : HASHBRACK ';' '}'",
1201 "term : ANONSUB startanonsub proto block",
1203 "term : star '{' expr ';' '}'",
1205 "term : scalar '[' expr ']'",
1206 "term : term ARROW '[' expr ']'",
1207 "term : term '[' expr ']'",
1211 "term : scalar '{' expr ';' '}'",
1212 "term : term ARROW '{' expr ';' '}'",
1213 "term : term '{' expr ';' '}'",
1214 "term : '(' expr ')' '[' expr ']'",
1215 "term : '(' ')' '[' expr ']'",
1216 "term : ary '[' expr ']'",
1217 "term : ary '{' expr ';' '}'",
1220 "term : amper '(' ')'",
1221 "term : amper '(' expr ')'",
1222 "term : NOAMP WORD listexpr",
1225 "term : DO WORD '(' ')'",
1226 "term : DO WORD '(' expr ')'",
1227 "term : DO scalar '(' ')'",
1228 "term : DO scalar '(' expr ')'",
1229 "term : term ARROW '(' ')'",
1230 "term : term ARROW '(' expr ')'",
1232 "term : LOOPEX term",
1233 "term : NOTOP argexpr",
1235 "term : UNIOP block",
1236 "term : UNIOP term",
1237 "term : UNIOPSUB term",
1239 "term : FUNC0 '(' ')'",
1241 "term : FUNC1 '(' ')'",
1242 "term : FUNC1 '(' expr ')'",
1243 "term : PMFUNC '(' term ')'",
1244 "term : PMFUNC '(' term ',' term ')'",
1248 "listexpr : argexpr",
1250 "listexprcom : expr",
1251 "listexprcom : expr ','",
1254 "my_scalar : scalar",
1255 "amper : '&' indirob",
1256 "scalar : '$' indirob",
1257 "ary : '@' indirob",
1258 "hsh : '%' indirob",
1259 "arylen : DOLSHARP indirob",
1260 "star : '*' indirob",
1264 "indirob : PRIVATEREF",
1267 #define yyclearin (yychar=(-1))
1268 #define yyerrok (yyerrflag=0)
1271 #define YYMAXDEPTH YYSTACKSIZE
1275 #define YYSTACKSIZE YYMAXDEPTH
1277 #define YYSTACKSIZE 500
1278 #define YYMAXDEPTH 500
1289 #line 1360 "perly.c"
1290 #define YYABORT goto yyabort
1291 #define YYACCEPT goto yyaccept
1292 #define YYERROR goto yyerrlab
1306 yydestruct(void *ptr)
1308 struct ysv* ysave = (struct ysv*)ptr;
1309 if (ysave->yyss) Safefree(ysave->yyss);
1310 if (ysave->yyvs) Safefree(ysave->yyvs);
1311 yydebug = ysave->oldyydebug;
1312 yynerrs = ysave->oldyynerrs;
1313 yyerrflag = ysave->oldyyerrflag;
1314 yychar = ysave->oldyychar;
1315 yyval = ysave->oldyyval;
1316 yylval = ysave->oldyylval;
1323 register int yym, yyn, yystate;
1324 register short *yyssp;
1325 register YYSTYPE *yyvsp;
1328 unsigned yystacksize = YYSTACKSIZE;
1333 extern char *getenv();
1339 New(73, ysave, 1, struct ysv);
1340 SAVEDESTRUCTOR(yydestruct, ysave);
1341 ysave->oldyydebug = yydebug;
1342 ysave->oldyynerrs = yynerrs;
1343 ysave->oldyyerrflag = yyerrflag;
1344 ysave->oldyychar = yychar;
1345 ysave->oldyyval = yyval;
1346 ysave->oldyylval = yylval;
1349 if (yys = getenv("YYDEBUG"))
1352 if (yyn >= '0' && yyn <= '9')
1353 yydebug = yyn - '0';
1362 ** Initialize private stacks (yyparse may be called from an action)
1364 New(73, yyss, yystacksize, short);
1365 New(73, yyvs, yystacksize, YYSTYPE);
1373 *yyssp = yystate = 0;
1376 if (yyn = yydefred[yystate]) goto yyreduce;
1379 if ((yychar = yylex()) < 0) yychar = 0;
1384 if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
1385 if (!yys) yys = "illegal-symbol";
1386 PerlIO_printf(Perl_debug_log, "yydebug: state %d, reading %d (%s)\n", yystate,
1391 if ((yyn = yysindex[yystate]) && (yyn += yychar) >= 0 &&
1392 yyn <= YYTABLESIZE && yycheck[yyn] == yychar)
1396 PerlIO_printf(Perl_debug_log, "yydebug: state %d, shifting to state %d\n",
1397 yystate, yytable[yyn]);
1399 if (yyssp >= yyss + yystacksize - 1)
1402 ** reallocate and recover. Note that pointers
1403 ** have to be reset, or bad things will happen
1405 int yyps_index = (yyssp - yyss);
1406 int yypv_index = (yyvsp - yyvs);
1407 yystacksize += YYSTACKSIZE;
1408 ysave->yyvs = yyvs =
1409 (YYSTYPE*)realloc((char*)yyvs,yystacksize * sizeof(YYSTYPE));
1410 ysave->yyss = yyss =
1411 (short*)realloc((char*)yyss,yystacksize * sizeof(short));
1414 yyssp = yyss + yyps_index;
1415 yyvsp = yyvs + yypv_index;
1417 *++yyssp = yystate = yytable[yyn];
1420 if (yyerrflag > 0) --yyerrflag;
1423 if ((yyn = yyrindex[yystate]) && (yyn += yychar) >= 0 &&
1424 yyn <= YYTABLESIZE && yycheck[yyn] == yychar)
1429 if (yyerrflag) goto yyinrecovery;
1434 yyerror("syntax error");
1446 if ((yyn = yysindex[*yyssp]) && (yyn += YYERRCODE) >= 0 &&
1447 yyn <= YYTABLESIZE && yycheck[yyn] == YYERRCODE)
1451 PerlIO_printf(Perl_debug_log,
1452 "yydebug: state %d, error recovery shifting to state %d\n",
1453 *yyssp, yytable[yyn]);
1455 if (yyssp >= yyss + yystacksize - 1)
1458 ** reallocate and recover. Note that pointers
1459 ** have to be reset, or bad things will happen
1461 int yyps_index = (yyssp - yyss);
1462 int yypv_index = (yyvsp - yyvs);
1463 yystacksize += YYSTACKSIZE;
1464 ysave->yyvs = yyvs = (YYSTYPE*)realloc((char*)yyvs,
1465 yystacksize * sizeof(YYSTYPE));
1466 ysave->yyss = yyss = (short*)realloc((char*)yyss,
1467 yystacksize * sizeof(short));
1470 yyssp = yyss + yyps_index;
1471 yyvsp = yyvs + yypv_index;
1473 *++yyssp = yystate = yytable[yyn];
1481 PerlIO_printf(Perl_debug_log,
1482 "yydebug: error recovery discarding state %d\n",
1485 if (yyssp <= yyss) goto yyabort;
1493 if (yychar == 0) goto yyabort;
1498 if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
1499 if (!yys) yys = "illegal-symbol";
1500 PerlIO_printf(Perl_debug_log,
1501 "yydebug: state %d, error recovery discards token %d (%s)\n",
1502 yystate, yychar, yys);
1511 PerlIO_printf(Perl_debug_log, "yydebug: state %d, reducing by rule %d (%s)\n",
1512 yystate, yyn, yyrule[yyn]);
1515 yyval = yyvsp[1-yym];
1521 #if defined(YYDEBUG) && defined(DEBUGGING)
1522 yydebug = (debug & 1);
1529 { newPROG(yyvsp[0].opval); }
1533 { if (copline > (line_t)yyvsp[-3].ival)
1534 copline = yyvsp[-3].ival;
1535 yyval.opval = block_end(yyvsp[-2].ival, yyvsp[-1].opval); }
1539 { yyval.ival = block_start(TRUE); }
1543 { if (copline > (line_t)yyvsp[-3].ival)
1544 copline = yyvsp[-3].ival;
1545 yyval.opval = block_end(yyvsp[-2].ival, yyvsp[-1].opval); }
1549 { yyval.ival = block_start(FALSE); }
1553 { yyval.opval = Nullop; }
1557 { yyval.opval = yyvsp[-1].opval; }
1561 { yyval.opval = append_list(OP_LINESEQ,
1562 (LISTOP*)yyvsp[-1].opval, (LISTOP*)yyvsp[0].opval);
1563 pad_reset_pending = TRUE;
1564 if (yyvsp[-1].opval && yyvsp[0].opval) hints |= HINT_BLOCK_SCOPE; }
1568 { yyval.opval = newSTATEOP(0, yyvsp[-1].pval, yyvsp[0].opval); }
1572 { if (yyvsp[-1].pval != Nullch) {
1573 yyval.opval = newSTATEOP(0, yyvsp[-1].pval, newOP(OP_NULL, 0));
1576 yyval.opval = Nullop;
1583 { yyval.opval = newSTATEOP(0, yyvsp[-2].pval, yyvsp[-1].opval);
1588 { yyval.opval = Nullop; }
1592 { yyval.opval = yyvsp[0].opval; }
1596 { yyval.opval = newLOGOP(OP_AND, 0, yyvsp[0].opval, yyvsp[-2].opval); }
1600 { yyval.opval = newLOGOP(OP_OR, 0, yyvsp[0].opval, yyvsp[-2].opval); }
1604 { yyval.opval = newLOOPOP(OPf_PARENS, 1, scalar(yyvsp[0].opval), yyvsp[-2].opval); }
1608 { yyval.opval = newLOOPOP(OPf_PARENS, 1, yyvsp[0].opval, yyvsp[-2].opval);}
1612 { yyval.opval = Nullop; }
1616 { yyval.opval = scope(yyvsp[0].opval); }
1620 { copline = yyvsp[-5].ival;
1621 yyval.opval = newSTATEOP(0, Nullch,
1622 newCONDOP(0, yyvsp[-3].opval, scope(yyvsp[-1].opval), yyvsp[0].opval));
1623 hints |= HINT_BLOCK_SCOPE; }
1627 { copline = yyvsp[-6].ival;
1628 yyval.opval = block_end(yyvsp[-4].ival,
1629 newCONDOP(0, yyvsp[-3].opval, scope(yyvsp[-1].opval), yyvsp[0].opval)); }
1633 { copline = yyvsp[-6].ival;
1634 yyval.opval = block_end(yyvsp[-4].ival,
1635 newCONDOP(0, yyvsp[-3].opval, scope(yyvsp[-1].opval), yyvsp[0].opval)); }
1639 { yyval.opval = Nullop; }
1643 { yyval.opval = scope(yyvsp[0].opval); }
1647 { copline = yyvsp[-6].ival;
1648 yyval.opval = block_end(yyvsp[-4].ival,
1649 newSTATEOP(0, yyvsp[-7].pval,
1650 newWHILEOP(0, 1, (LOOP*)Nullop,
1651 yyvsp[-6].ival, yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval))); }
1655 { copline = yyvsp[-6].ival;
1656 yyval.opval = block_end(yyvsp[-4].ival,
1657 newSTATEOP(0, yyvsp[-7].pval,
1658 newWHILEOP(0, 1, (LOOP*)Nullop,
1659 yyvsp[-6].ival, yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval))); }
1663 { yyval.opval = block_end(yyvsp[-6].ival,
1664 newFOROP(0, yyvsp[-9].pval, yyvsp[-8].ival, yyvsp[-5].opval, yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval)); }
1668 { yyval.opval = block_end(yyvsp[-4].ival,
1669 newFOROP(0, yyvsp[-8].pval, yyvsp[-7].ival, mod(yyvsp[-6].opval, OP_ENTERLOOP),
1670 yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval)); }
1674 { yyval.opval = block_end(yyvsp[-4].ival,
1675 newFOROP(0, yyvsp[-7].pval, yyvsp[-6].ival, Nullop, yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval)); }
1679 { OP *forop = append_elem(OP_LINESEQ,
1680 scalar(yyvsp[-6].opval),
1681 newWHILEOP(0, 1, (LOOP*)Nullop,
1682 yyvsp[-9].ival, scalar(yyvsp[-4].opval),
1683 yyvsp[0].opval, scalar(yyvsp[-2].opval)));
1684 copline = yyvsp[-9].ival;
1685 yyval.opval = block_end(yyvsp[-7].ival, newSTATEOP(0, yyvsp[-10].pval, forop)); }
1689 { yyval.opval = newSTATEOP(0, yyvsp[-2].pval,
1690 newWHILEOP(0, 1, (LOOP*)Nullop,
1691 NOLINE, Nullop, yyvsp[-1].opval, yyvsp[0].opval)); }
1695 { yyval.opval = Nullop; }
1699 { (void)scan_num("1"); yyval.opval = yylval.opval; }
1703 { yyval.opval = invert(scalar(yyvsp[0].opval)); }
1707 { yyval.opval = yyvsp[0].opval; intro_my(); }
1711 { yyval.opval = yyvsp[0].opval; intro_my(); }
1715 { yyval.opval = yyvsp[0].opval; intro_my(); }
1719 { yyval.opval = yyvsp[0].opval; intro_my(); }
1723 { yyval.pval = Nullch; }
1743 { newFORM(yyvsp[-2].ival, yyvsp[-1].opval, yyvsp[0].opval); }
1747 { yyval.opval = yyvsp[0].opval; }
1751 { yyval.opval = Nullop; }
1755 { newSUB(yyvsp[-3].ival, yyvsp[-2].opval, yyvsp[-1].opval, yyvsp[0].opval); }
1759 { yyval.ival = start_subparse(FALSE, 0); }
1763 { yyval.ival = start_subparse(FALSE, CVf_ANON); }
1767 { yyval.ival = start_subparse(TRUE, 0); }
1771 { char *name = SvPV(((SVOP*)yyvsp[0].opval)->op_sv, na);
1772 if (strEQ(name, "BEGIN") || strEQ(name, "END")
1773 || strEQ(name, "INIT"))
1774 CvUNIQUE_on(compcv);
1775 yyval.opval = yyvsp[0].opval; }
1779 { yyval.opval = Nullop; }
1783 { yyval.opval = yyvsp[0].opval; }
1787 { yyval.opval = Nullop; expect = XSTATE; }
1791 { package(yyvsp[-1].opval); }
1795 { package(Nullop); }
1799 { CvUNIQUE_on(compcv); /* It's a BEGIN {} */ }
1803 { utilize(yyvsp[-6].ival, yyvsp[-5].ival, yyvsp[-3].opval, yyvsp[-2].opval, yyvsp[-1].opval); }
1807 { yyval.opval = newLOGOP(OP_AND, 0, yyvsp[-2].opval, yyvsp[0].opval); }
1811 { yyval.opval = newLOGOP(yyvsp[-1].ival, 0, yyvsp[-2].opval, yyvsp[0].opval); }
1815 { yyval.opval = yyvsp[-1].opval; }
1819 { yyval.opval = append_elem(OP_LIST, yyvsp[-2].opval, yyvsp[0].opval); }
1823 { yyval.opval = convert(yyvsp[-2].ival, OPf_STACKED,
1824 prepend_elem(OP_LIST, newGVREF(yyvsp[-2].ival,yyvsp[-1].opval), yyvsp[0].opval) ); }
1828 { yyval.opval = convert(yyvsp[-4].ival, OPf_STACKED,
1829 prepend_elem(OP_LIST, newGVREF(yyvsp[-4].ival,yyvsp[-2].opval), yyvsp[-1].opval) ); }
1833 { yyval.opval = convert(OP_ENTERSUB, OPf_STACKED,
1834 append_elem(OP_LIST,
1835 prepend_elem(OP_LIST, scalar(yyvsp[-5].opval), yyvsp[-1].opval),
1836 newUNOP(OP_METHOD, 0, yyvsp[-3].opval))); }
1840 { yyval.opval = convert(OP_ENTERSUB, OPf_STACKED,
1841 append_elem(OP_LIST,
1842 prepend_elem(OP_LIST, yyvsp[-1].opval, yyvsp[0].opval),
1843 newUNOP(OP_METHOD, 0, yyvsp[-2].opval))); }
1847 { yyval.opval = convert(OP_ENTERSUB, OPf_STACKED,
1848 append_elem(OP_LIST,
1849 prepend_elem(OP_LIST, yyvsp[-3].opval, yyvsp[-1].opval),
1850 newUNOP(OP_METHOD, 0, yyvsp[-4].opval))); }
1854 { yyval.opval = convert(yyvsp[-1].ival, 0, yyvsp[0].opval); }
1858 { yyval.opval = convert(yyvsp[-3].ival, 0, yyvsp[-1].opval); }
1862 { yyvsp[0].opval = newANONSUB(yyvsp[-1].ival, 0, yyvsp[0].opval); }
1866 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
1867 append_elem(OP_LIST,
1868 prepend_elem(OP_LIST, yyvsp[-2].opval, yyvsp[0].opval), yyvsp[-4].opval)); }
1872 { yyval.opval = newASSIGNOP(OPf_STACKED, yyvsp[-2].opval, yyvsp[-1].ival, yyvsp[0].opval); }
1876 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1880 { if (yyvsp[-1].ival != OP_REPEAT)
1881 scalar(yyvsp[-2].opval);
1882 yyval.opval = newBINOP(yyvsp[-1].ival, 0, yyvsp[-2].opval, scalar(yyvsp[0].opval)); }
1886 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1890 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1894 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1898 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1902 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1906 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1910 { yyval.opval = newRANGE(yyvsp[-1].ival, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval));}
1914 { yyval.opval = newLOGOP(OP_AND, 0, yyvsp[-2].opval, yyvsp[0].opval); }
1918 { yyval.opval = newLOGOP(OP_OR, 0, yyvsp[-2].opval, yyvsp[0].opval); }
1922 { yyval.opval = newCONDOP(0, yyvsp[-4].opval, yyvsp[-2].opval, yyvsp[0].opval); }
1926 { yyval.opval = bind_match(yyvsp[-1].ival, yyvsp[-2].opval, yyvsp[0].opval); }
1930 { yyval.opval = newUNOP(OP_NEGATE, 0, scalar(yyvsp[0].opval)); }
1934 { yyval.opval = yyvsp[0].opval; }
1938 { yyval.opval = newUNOP(OP_NOT, 0, scalar(yyvsp[0].opval)); }
1942 { yyval.opval = newUNOP(OP_COMPLEMENT, 0, scalar(yyvsp[0].opval));}
1946 { yyval.opval = newUNOP(OP_REFGEN, 0, mod(yyvsp[0].opval,OP_REFGEN)); }
1950 { yyval.opval = newUNOP(OP_POSTINC, 0,
1951 mod(scalar(yyvsp[-1].opval), OP_POSTINC)); }
1955 { yyval.opval = newUNOP(OP_POSTDEC, 0,
1956 mod(scalar(yyvsp[-1].opval), OP_POSTDEC)); }
1960 { yyval.opval = newUNOP(OP_PREINC, 0,
1961 mod(scalar(yyvsp[0].opval), OP_PREINC)); }
1965 { yyval.opval = newUNOP(OP_PREDEC, 0,
1966 mod(scalar(yyvsp[0].opval), OP_PREDEC)); }
1970 { yyval.opval = localize(yyvsp[0].opval,yyvsp[-1].ival); }
1974 { yyval.opval = sawparens(yyvsp[-1].opval); }
1978 { yyval.opval = sawparens(newNULLLIST()); }
1982 { yyval.opval = newANONLIST(yyvsp[-1].opval); }
1986 { yyval.opval = newANONLIST(Nullop); }
1990 { yyval.opval = newANONHASH(yyvsp[-2].opval); }
1994 { yyval.opval = newANONHASH(Nullop); }
1998 { yyval.opval = newANONSUB(yyvsp[-2].ival, yyvsp[-1].opval, yyvsp[0].opval); }
2002 { yyval.opval = yyvsp[0].opval; }
2006 { yyval.opval = newBINOP(OP_GELEM, 0, newGVREF(0,yyvsp[-4].opval),
2007 scalar(yyvsp[-2].opval)); }
2011 { yyval.opval = yyvsp[0].opval; }
2015 { yyval.opval = newBINOP(OP_AELEM, 0, oopsAV(yyvsp[-3].opval), scalar(yyvsp[-1].opval)); }
2019 { yyval.opval = newBINOP(OP_AELEM, 0,
2020 ref(newAVREF(yyvsp[-4].opval),OP_RV2AV),
2021 scalar(yyvsp[-1].opval));}
2025 { assertref(yyvsp[-3].opval); yyval.opval = newBINOP(OP_AELEM, 0,
2026 ref(newAVREF(yyvsp[-3].opval),OP_RV2AV),
2027 scalar(yyvsp[-1].opval));}
2031 { yyval.opval = yyvsp[0].opval; }
2035 { yyval.opval = yyvsp[0].opval; }
2039 { yyval.opval = newUNOP(OP_AV2ARYLEN, 0, ref(yyvsp[0].opval, OP_AV2ARYLEN));}
2043 { yyval.opval = newBINOP(OP_HELEM, 0, oopsHV(yyvsp[-4].opval), jmaybe(yyvsp[-2].opval));
2044 expect = XOPERATOR; }
2048 { yyval.opval = newBINOP(OP_HELEM, 0,
2049 ref(newHVREF(yyvsp[-5].opval),OP_RV2HV),
2050 jmaybe(yyvsp[-2].opval));
2051 expect = XOPERATOR; }
2055 { assertref(yyvsp[-4].opval); yyval.opval = newBINOP(OP_HELEM, 0,
2056 ref(newHVREF(yyvsp[-4].opval),OP_RV2HV),
2057 jmaybe(yyvsp[-2].opval));
2058 expect = XOPERATOR; }
2062 { yyval.opval = newSLICEOP(0, yyvsp[-1].opval, yyvsp[-4].opval); }
2066 { yyval.opval = newSLICEOP(0, yyvsp[-1].opval, Nullop); }
2070 { yyval.opval = prepend_elem(OP_ASLICE,
2071 newOP(OP_PUSHMARK, 0),
2072 newLISTOP(OP_ASLICE, 0,
2073 list(yyvsp[-1].opval),
2074 ref(yyvsp[-3].opval, OP_ASLICE))); }
2078 { yyval.opval = prepend_elem(OP_HSLICE,
2079 newOP(OP_PUSHMARK, 0),
2080 newLISTOP(OP_HSLICE, 0,
2081 list(yyvsp[-2].opval),
2082 ref(oopsHV(yyvsp[-4].opval), OP_HSLICE)));
2083 expect = XOPERATOR; }
2087 { yyval.opval = yyvsp[0].opval; }
2091 { yyval.opval = newUNOP(OP_ENTERSUB, 0, scalar(yyvsp[0].opval)); }
2095 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED, scalar(yyvsp[-2].opval)); }
2099 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2100 append_elem(OP_LIST, yyvsp[-1].opval, scalar(yyvsp[-3].opval))); }
2104 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2105 append_elem(OP_LIST, yyvsp[0].opval, scalar(yyvsp[-1].opval))); }
2109 { yyval.opval = newUNOP(OP_DOFILE, 0, scalar(yyvsp[0].opval)); }
2113 { yyval.opval = newUNOP(OP_NULL, OPf_SPECIAL, scope(yyvsp[0].opval)); }
2117 { yyval.opval = newUNOP(OP_ENTERSUB,
2118 OPf_SPECIAL|OPf_STACKED,
2119 prepend_elem(OP_LIST,
2121 (OPpENTERSUB_AMPER<<8),
2122 scalar(yyvsp[-2].opval)
2123 )),Nullop)); dep();}
2127 { yyval.opval = newUNOP(OP_ENTERSUB,
2128 OPf_SPECIAL|OPf_STACKED,
2129 append_elem(OP_LIST,
2132 (OPpENTERSUB_AMPER<<8),
2133 scalar(yyvsp[-3].opval)
2138 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_SPECIAL|OPf_STACKED,
2139 prepend_elem(OP_LIST,
2140 scalar(newCVREF(0,scalar(yyvsp[-2].opval))), Nullop)); dep();}
2144 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_SPECIAL|OPf_STACKED,
2145 prepend_elem(OP_LIST,
2147 scalar(newCVREF(0,scalar(yyvsp[-3].opval))))); dep();}
2151 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2152 newCVREF(0, scalar(yyvsp[-3].opval))); }
2156 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2157 append_elem(OP_LIST, yyvsp[-1].opval,
2158 newCVREF(0, scalar(yyvsp[-4].opval)))); }
2162 { yyval.opval = newOP(yyvsp[0].ival, OPf_SPECIAL);
2163 hints |= HINT_BLOCK_SCOPE; }
2167 { yyval.opval = newLOOPEX(yyvsp[-1].ival,yyvsp[0].opval); }
2171 { yyval.opval = newUNOP(OP_NOT, 0, scalar(yyvsp[0].opval)); }
2175 { yyval.opval = newOP(yyvsp[0].ival, 0); }
2179 { yyval.opval = newUNOP(yyvsp[-1].ival, 0, yyvsp[0].opval); }
2183 { yyval.opval = newUNOP(yyvsp[-1].ival, 0, yyvsp[0].opval); }
2187 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2188 append_elem(OP_LIST, yyvsp[0].opval, scalar(yyvsp[-1].opval))); }
2192 { yyval.opval = newOP(yyvsp[0].ival, 0); }
2196 { yyval.opval = newOP(yyvsp[-2].ival, 0); }
2200 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2201 scalar(yyvsp[0].opval)); }
2205 { yyval.opval = newOP(yyvsp[-2].ival, OPf_SPECIAL); }
2209 { yyval.opval = newUNOP(yyvsp[-3].ival, 0, yyvsp[-1].opval); }
2213 { yyval.opval = pmruntime(yyvsp[-3].opval, yyvsp[-1].opval, Nullop); }
2217 { yyval.opval = pmruntime(yyvsp[-5].opval, yyvsp[-3].opval, yyvsp[-1].opval); }
2221 { yyval.opval = Nullop; }
2225 { yyval.opval = yyvsp[0].opval; }
2229 { yyval.opval = Nullop; }
2233 { yyval.opval = yyvsp[0].opval; }
2237 { yyval.opval = yyvsp[-1].opval; }
2249 { in_my = 0; yyval.opval = my(yyvsp[0].opval); }
2253 { yyval.opval = newCVREF(yyvsp[-1].ival,yyvsp[0].opval); }
2257 { yyval.opval = newSVREF(yyvsp[0].opval); }
2261 { yyval.opval = newAVREF(yyvsp[0].opval); }
2265 { yyval.opval = newHVREF(yyvsp[0].opval); }
2269 { yyval.opval = newAVREF(yyvsp[0].opval); }
2273 { yyval.opval = newGVREF(0,yyvsp[0].opval); }
2277 { yyval.opval = scalar(yyvsp[0].opval); }
2281 { yyval.opval = scalar(yyvsp[0].opval); }
2285 { yyval.opval = scope(yyvsp[0].opval); }
2289 { yyval.opval = yyvsp[0].opval; }
2291 #line 2273 "perly.c"
2297 if (yystate == 0 && yym == 0)
2301 PerlIO_printf(Perl_debug_log,
2302 "yydebug: after reduction, shifting from state 0 to state %d\n",
2310 if ((yychar = yylex()) < 0) yychar = 0;
2315 if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
2316 if (!yys) yys = "illegal-symbol";
2317 PerlIO_printf(Perl_debug_log, "yydebug: state %d, reading %d (%s)\n",
2318 YYFINAL, yychar, yys);
2322 if (yychar == 0) goto yyaccept;
2325 if ((yyn = yygindex[yym]) && (yyn += yystate) >= 0 &&
2326 yyn <= YYTABLESIZE && yycheck[yyn] == yystate)
2327 yystate = yytable[yyn];
2329 yystate = yydgoto[yym];
2332 PerlIO_printf(Perl_debug_log,
2333 "yydebug: after reduction, shifting from state %d to state %d\n",
2336 if (yyssp >= yyss + yystacksize - 1)
2339 ** reallocate and recover. Note that pointers
2340 ** have to be reset, or bad things will happen
2342 int yyps_index = (yyssp - yyss);
2343 int yypv_index = (yyvsp - yyvs);
2344 yystacksize += YYSTACKSIZE;
2345 ysave->yyvs = yyvs =
2346 (YYSTYPE*)realloc((char*)yyvs,yystacksize * sizeof(YYSTYPE));
2347 ysave->yyss = yyss =
2348 (short*)realloc((char*)yyss,yystacksize * sizeof(short));
2351 yyssp = yyss + yyps_index;
2352 yyvsp = yyvs + yypv_index;
2358 yyerror("Out of memory for yacc stack");