2 static char yysccsid[] = "@(#)yaccpar 1.8 (Berkeley) 01/20/91";
12 deprecate("\"do\" to call subroutines");
17 31, 0, 5, 3, 6, 6, 6, 7, 7, 7,
18 7, 21, 21, 21, 21, 21, 21, 11, 11, 11,
19 9, 9, 9, 9, 30, 30, 8, 8, 8, 8,
20 8, 8, 8, 8, 10, 10, 25, 25, 29, 29,
21 1, 1, 1, 1, 2, 2, 32, 32, 28, 28,
22 4, 33, 33, 34, 13, 13, 13, 12, 12, 12,
23 26, 26, 26, 26, 26, 26, 26, 26, 27, 27,
24 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
25 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
26 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
27 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
28 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
29 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
30 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
31 14, 14, 14, 14, 22, 22, 23, 23, 23, 20,
32 15, 16, 17, 18, 19, 24, 24, 24, 24,
35 0, 2, 4, 0, 0, 2, 2, 2, 1, 2,
36 3, 1, 1, 3, 3, 3, 3, 0, 2, 6,
37 6, 6, 4, 4, 0, 2, 7, 7, 5, 5,
38 8, 7, 10, 3, 0, 1, 0, 1, 0, 1,
39 1, 1, 1, 1, 4, 3, 5, 5, 0, 1,
40 0, 3, 2, 6, 3, 3, 1, 2, 3, 1,
41 3, 5, 6, 3, 5, 2, 4, 4, 1, 1,
42 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
43 3, 3, 5, 3, 2, 2, 2, 2, 2, 2,
44 2, 2, 2, 2, 3, 2, 3, 2, 4, 3,
45 4, 1, 5, 1, 4, 5, 4, 1, 1, 1,
46 5, 6, 5, 6, 5, 4, 5, 1, 1, 3,
47 4, 3, 2, 2, 4, 5, 4, 5, 1, 2,
48 2, 1, 2, 2, 2, 1, 3, 1, 3, 4,
49 4, 6, 1, 1, 0, 1, 0, 1, 2, 2,
50 2, 2, 2, 2, 2, 1, 1, 1, 1,
52 short yydefred[] = { 1,
53 0, 5, 0, 40, 51, 51, 0, 51, 6, 41,
54 7, 9, 0, 42, 43, 44, 0, 0, 0, 53,
55 0, 12, 4, 143, 0, 0, 118, 0, 138, 0,
56 51, 51, 0, 0, 0, 0, 0, 0, 0, 0,
57 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
58 0, 0, 0, 0, 0, 0, 10, 0, 0, 0,
59 0, 0, 0, 0, 0, 8, 0, 0, 0, 0,
60 0, 108, 110, 0, 0, 0, 144, 0, 46, 0,
61 52, 0, 5, 156, 159, 158, 157, 0, 0, 0,
62 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
63 0, 0, 0, 0, 0, 0, 0, 154, 0, 124,
64 0, 0, 0, 0, 0, 0, 150, 0, 0, 0,
65 0, 66, 0, 133, 0, 0, 0, 0, 0, 0,
66 0, 0, 0, 0, 98, 0, 151, 152, 153, 155,
67 0, 34, 0, 0, 0, 0, 0, 0, 0, 0,
68 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
69 0, 0, 0, 0, 90, 91, 0, 0, 0, 0,
70 0, 0, 0, 0, 11, 45, 50, 0, 0, 0,
71 64, 0, 0, 0, 0, 0, 0, 0, 0, 0,
72 0, 0, 0, 0, 0, 0, 36, 0, 137, 139,
73 0, 0, 0, 0, 0, 0, 100, 0, 122, 0,
74 0, 0, 97, 26, 0, 0, 0, 0, 0, 0,
75 55, 0, 0, 0, 0, 0, 0, 0, 0, 0,
76 0, 0, 0, 0, 0, 0, 0, 69, 0, 70,
77 0, 0, 0, 0, 0, 0, 0, 120, 0, 48,
78 47, 0, 3, 0, 141, 0, 68, 101, 0, 29,
79 0, 30, 0, 0, 0, 23, 0, 24, 0, 0,
80 0, 140, 149, 67, 0, 125, 0, 127, 0, 99,
81 0, 0, 0, 0, 0, 0, 0, 107, 0, 105,
82 0, 116, 0, 121, 54, 65, 0, 0, 0, 0,
83 19, 0, 0, 0, 0, 0, 62, 126, 128, 115,
84 0, 113, 0, 0, 106, 0, 111, 117, 103, 142,
85 27, 28, 21, 0, 22, 0, 32, 0, 114, 112,
86 63, 0, 0, 31, 0, 0, 20, 33,
88 short yydgoto[] = { 1,
89 9, 10, 83, 17, 86, 3, 11, 12, 66, 195,
90 266, 67, 202, 69, 70, 71, 72, 73, 74, 75,
91 197, 122, 203, 88, 187, 77, 241, 178, 13, 142,
94 short yysindex[] = { 0,
95 0, 0, 303, 0, 0, 0, -53, 0, 0, 0,
96 0, 0, 607, 0, 0, 0, -111, -242, -32, 0,
97 -216, 0, 0, 0, 149, 149, 0, 8, 0, 2109,
98 0, 0, -15, -8, 4, 6, 32, 2109, 13, 20,
99 57, 149, 994, 2109, 1057, -206, 149, 2109, 938, 1291,
100 2109, 2109, 2109, 2109, 2109, 1347, 0, 2109, 2109, 1403,
101 149, 149, 149, 149, -203, 0, 68, 664, 491, -67,
102 -52, 0, 0, -21, 73, 65, 0, 7, 0, -135,
103 0, -126, 0, 0, 0, 0, 0, 2109, 92, 2109,
104 491, 7, -135, 2109, 7, 2109, 7, 2109, 7, 2109,
105 7, 1466, 101, 491, 112, 1700, 938, 0, 102, 0,
106 1228, -22, 1228, 39, -58, 2109, 0, 68, 0, 68,
107 -67, 0, 2109, 0, 1228, 472, 472, 472, -88, -88,
108 78, -10, 472, 472, 0, -85, 0, 0, 0, 0,
109 7, 0, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109,
110 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109,
111 2109, 2109, 2109, 2109, 0, 0, -29, 2109, 2109, 2109,
112 2109, 2109, 2109, 1756, 0, 0, 0, -46, 2109, 391,
113 0, 2109, -25, 2109, 7, -214, 129, -203, -5, -203,
114 1, -167, 9, -167, 117, 52, 0, 2109, 0, 0,
115 23, 60, 132, 2109, 1812, 1875, 0, 53, 0, 68,
116 2109, 86, 0, 0, 491, -214, -214, -214, -214, -147,
117 0, -54, 382, 1228, 1090, 771, 115, 491, 2942, 1523,
118 314, 1554, 392, 677, 472, 472, 2109, 0, 2109, 0,
119 141, 89, -42, 99, 46, 114, 64, 0, 26, 0,
120 0, 124, 0, 143, 0, 2109, 0, 0, 7, 0,
121 7, 0, 7, 7, 146, 0, 7, 0, 2109, 7,
122 35, 0, 0, 0, 37, 0, 49, 0, 55, 0,
123 130, 2109, 63, 2109, 67, 166, 2109, 0, 66, 0,
124 71, 0, 74, 0, 0, 0, 1170, -203, -203, -167,
125 0, 2109, -167, 131, -203, 7, 0, 0, 0, 0,
126 185, 0, 1119, 76, 0, 161, 0, 0, 0, 0,
127 0, 0, 0, 58, 0, 1466, 0, -203, 0, 0,
128 0, 7, 162, 0, -167, 7, 0, 0,
130 short yyrindex[] = { 0,
131 0, 0, 269, 0, 0, 0, 0, 0, 0, 0,
132 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
133 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
134 0, 0, 0, 0, 0, 0, 0, 2241, 1964, 0,
135 0, 0, 0, 0, 0, 0, 0, 0, 2857, 2901,
136 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
137 0, 0, 0, 0, 107, 0, 360, -1, 62, 3027,
138 3078, 0, 0, 2286, 2020, 0, 0, 0, 0, -12,
139 0, 0, 0, 0, 0, 0, 0, 2415, 0, 0,
140 1251, 0, 82, 173, 0, 0, 0, 0, 0, 0,
141 0, 157, 0, 1661, 0, 0, 178, 0, 2150, 0,
142 3927, 3027, 3958, 0, 0, 2415, 0, 2537, 454, 2581,
143 548, 0, 0, 0, 3989, 3384, 3425, 3461, 3122, 3163,
144 2636, 0, 3497, 3533, 0, 0, 0, 0, 0, 0,
145 0, 0, 2680, 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, 0, 0, 0, 0,
148 0, 0, 0, 0, 0, 0, 0, 0, 163, 882,
149 0, 178, 0, 2415, 0, 2, 0, 107, 0, 107,
150 0, 175, 0, 175, 0, 165, 0, 0, 0, 0,
151 0, 180, 0, 0, 0, 0, 0, 0, 0, 2723,
152 0, 2985, 0, 0, 2785, 11, 14, 33, 59, 833,
153 0, 0, -30, 4020, 4036, 3817, 3850, 3275, 0, 1611,
154 4179, 4114, 4098, 3894, 3569, 3646, 0, 0, 0, 0,
155 0, 0, 0, 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, 168, 0,
158 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
159 0, 0, 0, 0, 0, 0, 178, 0, 0, 0,
160 0, 0, 0, 0, 0, 0, 0, 107, 107, 175,
161 0, 0, 175, 0, 107, 0, 0, 0, 0, 0,
162 0, 0, 2462, 0, 0, 0, 0, 0, 0, 0,
163 0, 0, 0, 0, 0, 190, 0, 107, 0, 0,
164 0, 0, 0, 0, 175, 0, 0, 0,
166 short yygindex[] = { 0,
167 0, 0, 0, 148, -13, 106, 0, 0, 0, -91,
168 -184, 452, -11, 4373, 886, 0, 0, 0, 0, 0,
169 234, -62, -173, 460, -20, 0, 0, 174, 0, -131,
172 #define YYTABLESIZE 4657
173 short yytable[] = { 65,
174 208, 68, 168, 79, 283, 20, 61, 213, 254, 268,
175 80, 23, 250, 80, 80, 255, 289, 206, 256, 95,
176 97, 99, 101, 170, 94, 181, 81, 80, 80, 110,
177 212, 96, 80, 115, 150, 261, 124, 157, 172, 13,
178 82, 263, 38, 98, 132, 100, 49, 90, 136, 267,
179 116, 16, 105, 209, 17, 169, 260, 13, 262, 106,
180 38, 239, 80, 272, 176, 168, 294, 61, 170, 16,
181 171, 102, 17, 14, 141, 306, 23, 307, 184, 148,
182 149, 188, 186, 190, 189, 192, 191, 194, 193, 308,
183 196, 14, 270, 237, 201, 309, 107, 150, 332, 15,
184 169, 173, 60, 273, 291, 60, 25, 23, 264, 265,
185 49, 143, 174, 316, 23, 323, 252, 15, 325, 60,
186 60, 257, 293, 175, 177, 314, 23, 214, 23, 23,
187 179, 182, 216, 217, 218, 219, 220, 221, 222, 25,
188 198, 205, 25, 25, 25, 78, 25, 149, 25, 25,
189 337, 25, 199, 18, 60, 21, 242, 243, 244, 245,
190 246, 247, 249, 207, 251, 25, 321, 322, 211, 259,
191 25, 258, 274, 327, 18, 269, 282, 280, 92, 93,
192 287, 288, 295, 296, 61, 302, 271, 312, 180, 326,
193 317, 290, 275, 277, 279, 318, 334, 25, 319, 281,
194 330, 331, 336, 19, 49, 168, 292, 18, 148, 149,
195 18, 18, 18, 37, 18, 35, 18, 18, 147, 18,
196 148, 145, 310, 13, 167, 285, 37, 286, 238, 25,
197 35, 25, 25, 18, 333, 148, 149, 150, 18, 148,
198 149, 80, 80, 80, 80, 298, 76, 299, 304, 300,
199 301, 148, 149, 303, 0, 151, 305, 186, 315, 152,
200 153, 154, 155, 80, 80, 18, 185, 80, 2, 0,
201 311, 23, 156, 158, 159, 160, 161, 329, 162, 163,
202 0, 0, 164, 148, 149, 165, 166, 167, 148, 149,
203 324, 0, 328, 0, 148, 149, 0, 18, 0, 18,
204 18, 39, 148, 149, 39, 39, 39, 0, 39, 0,
205 39, 39, 0, 39, 68, 0, 148, 149, 335, 148,
206 149, 0, 338, 144, 145, 146, 147, 39, 148, 149,
207 148, 149, 39, 60, 60, 60, 60, 0, 0, 148,
208 149, 0, 148, 149, 0, 148, 149, 0, 148, 149,
209 0, 148, 149, 148, 149, 60, 60, 148, 149, 39,
210 148, 149, 25, 25, 25, 25, 25, 25, 0, 25,
211 25, 25, 25, 25, 25, 25, 25, 25, 25, 25,
212 25, 25, 148, 149, 0, 25, 25, 0, 25, 25,
213 25, 39, 148, 149, 39, 25, 25, 25, 25, 25,
214 57, 154, 25, 25, 168, 84, 0, 148, 149, 25,
215 85, 0, 0, 25, 0, 25, 25, 0, 57, 163,
216 0, 0, 164, 148, 149, 165, 166, 167, 0, 0,
217 18, 18, 18, 18, 18, 18, 150, 18, 18, 18,
218 18, 18, 18, 18, 18, 18, 18, 18, 18, 18,
219 0, 0, 57, 18, 18, 0, 18, 18, 18, 148,
220 149, 0, 0, 18, 18, 18, 18, 18, 0, 0,
221 18, 18, 168, 0, 0, 0, 0, 18, 148, 149,
222 0, 18, 168, 18, 18, 89, 156, 0, 0, 156,
223 156, 156, 0, 156, 143, 156, 156, 143, 156, 118,
224 120, 108, 0, 0, 150, 0, 117, 0, 123, 0,
225 0, 143, 143, 0, 150, 253, 143, 156, 0, 0,
226 137, 138, 139, 140, 39, 39, 39, 39, 39, 39,
227 0, 39, 39, 39, 0, 0, 0, 39, 0, 120,
228 39, 39, 39, 39, 143, 0, 143, 39, 39, 0,
229 39, 39, 39, 157, 0, 0, 0, 39, 39, 39,
230 39, 39, 168, 0, 39, 39, 204, 120, 4, 5,
231 6, 39, 7, 8, 210, 39, 143, 39, 39, 156,
232 157, 168, 0, 157, 157, 157, 0, 157, 102, 157,
233 157, 102, 157, 0, 150, 0, 0, 0, 152, 153,
234 154, 155, 0, 0, 0, 102, 102, 0, 0, 0,
235 102, 157, 0, 150, 160, 161, 0, 162, 163, 0,
236 0, 164, 0, 0, 165, 166, 167, 0, 0, 0,
237 120, 57, 57, 57, 57, 120, 0, 0, 0, 51,
238 102, 0, 61, 63, 47, 0, 56, 0, 64, 59,
239 0, 58, 0, 57, 57, 0, 4, 5, 6, 0,
240 7, 8, 0, 0, 0, 57, 152, 153, 154, 155,
241 62, 0, 0, 157, 0, 0, 152, 153, 154, 155,
242 158, 159, 160, 161, 0, 162, 163, 0, 0, 164,
243 0, 0, 165, 166, 167, 162, 163, 60, 0, 164,
244 0, 0, 165, 166, 167, 0, 0, 0, 0, 0,
245 156, 156, 156, 156, 156, 0, 156, 156, 156, 0,
246 0, 0, 156, 0, 0, 143, 143, 143, 143, 23,
247 0, 0, 52, 156, 143, 156, 156, 156, 143, 143,
248 143, 143, 156, 156, 156, 156, 156, 143, 143, 156,
249 156, 143, 143, 143, 143, 143, 156, 143, 143, 0,
250 156, 143, 156, 156, 143, 143, 143, 168, 0, 0,
251 0, 151, 0, 0, 0, 152, 153, 154, 155, 164,
252 0, 0, 165, 166, 167, 0, 0, 0, 156, 158,
253 159, 160, 161, 0, 162, 163, 0, 0, 164, 150,
254 0, 165, 166, 167, 157, 157, 157, 157, 157, 0,
255 157, 157, 157, 0, 0, 0, 157, 0, 0, 102,
256 102, 102, 102, 0, 0, 0, 0, 157, 102, 157,
257 157, 157, 102, 102, 102, 102, 157, 157, 157, 157,
258 157, 102, 102, 157, 157, 102, 102, 102, 102, 102,
259 157, 102, 102, 0, 157, 102, 157, 157, 102, 102,
260 102, 168, 22, 24, 25, 26, 27, 28, 0, 29,
261 30, 31, 0, 56, 0, 32, 56, 0, 33, 34,
262 35, 36, 0, 0, 0, 37, 38, 0, 39, 40,
263 41, 56, 0, 150, 0, 42, 43, 44, 45, 46,
264 0, 0, 48, 49, 0, 0, 0, 0, 0, 50,
265 87, 87, 0, 53, 39, 54, 55, 39, 39, 39,
266 0, 39, 103, 39, 39, 56, 39, 87, 112, 0,
267 0, 0, 87, 0, 121, 144, 145, 146, 147, 0,
268 39, 0, 0, 0, 0, 39, 87, 87, 87, 87,
269 0, 0, 0, 0, 0, 0, 0, 148, 149, 0,
270 0, 0, 0, 154, 155, 0, 0, 0, 0, 0,
271 51, 0, 39, 61, 63, 47, 0, 56, 0, 64,
272 59, 163, 58, 0, 164, 0, 0, 165, 166, 167,
273 0, 0, 121, 0, 0, 0, 0, 0, 0, 0,
274 0, 62, 0, 0, 39, 0, 0, 39, 0, 0,
275 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
276 0, 0, 0, 0, 0, 0, 51, 0, 60, 61,
277 63, 47, 0, 56, 0, 64, 59, 0, 58, 0,
278 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
279 0, 0, 240, 0, 0, 0, 0, 62, 0, 0,
280 23, 0, 0, 52, 0, 0, 0, 0, 0, 0,
281 0, 0, 0, 0, 0, 163, 0, 0, 164, 0,
282 0, 165, 166, 167, 60, 0, 0, 0, 0, 51,
283 0, 0, 61, 63, 47, 0, 56, 0, 64, 59,
284 0, 58, 0, 0, 56, 56, 56, 56, 0, 0,
285 0, 0, 0, 0, 0, 114, 23, 0, 0, 52,
286 62, 0, 0, 0, 0, 0, 56, 0, 0, 0,
287 0, 0, 0, 0, 0, 0, 0, 39, 39, 39,
288 39, 39, 39, 0, 39, 39, 39, 60, 0, 0,
289 39, 0, 0, 39, 39, 39, 39, 0, 0, 0,
290 39, 39, 0, 39, 39, 39, 0, 0, 0, 0,
291 39, 39, 39, 39, 39, 0, 0, 39, 39, 0,
292 168, 157, 52, 0, 39, 0, 0, 0, 39, 0,
293 39, 39, 0, 0, 119, 25, 26, 27, 28, 85,
294 29, 30, 31, 0, 0, 0, 32, 0, 0, 168,
295 320, 0, 150, 0, 0, 0, 0, 38, 0, 39,
296 40, 41, 0, 0, 0, 0, 42, 43, 44, 45,
297 46, 0, 157, 48, 49, 0, 0, 0, 0, 0,
298 50, 150, 0, 0, 53, 0, 54, 55, 0, 0,
299 109, 25, 26, 27, 28, 0, 29, 30, 31, 0,
300 168, 0, 32, 0, 0, 0, 0, 0, 0, 0,
301 0, 0, 0, 38, 0, 39, 40, 41, 0, 0,
302 0, 0, 42, 43, 44, 45, 46, 0, 0, 48,
303 49, 135, 150, 0, 135, 0, 50, 0, 0, 0,
304 53, 0, 54, 55, 0, 0, 0, 0, 135, 135,
305 0, 0, 0, 24, 25, 26, 27, 28, 168, 29,
306 30, 31, 0, 51, 0, 32, 61, 63, 47, 0,
307 56, 0, 64, 59, 0, 58, 38, 0, 39, 40,
308 41, 0, 0, 135, 0, 42, 43, 44, 45, 46,
309 150, 0, 48, 49, 62, 0, 0, 0, 0, 50,
310 0, 0, 0, 53, 0, 54, 55, 0, 0, 0,
311 0, 0, 0, 0, 152, 0, 154, 155, 0, 51,
312 0, 60, 61, 63, 47, 0, 56, 131, 64, 59,
313 0, 58, 0, 162, 163, 0, 0, 164, 0, 151,
314 165, 166, 167, 152, 153, 154, 155, 0, 0, 0,
315 62, 0, 0, 23, 0, 0, 52, 158, 159, 160,
316 161, 0, 162, 163, 0, 0, 164, 0, 0, 165,
317 166, 167, 0, 0, 0, 51, 0, 60, 61, 63,
318 47, 0, 56, 0, 64, 59, 0, 58, 0, 0,
319 151, 0, 0, 0, 152, 153, 154, 155, 0, 0,
320 0, 0, 0, 0, 0, 0, 62, 156, 158, 159,
321 160, 161, 52, 162, 163, 0, 0, 164, 0, 0,
322 165, 166, 167, 0, 0, 0, 0, 0, 0, 0,
323 0, 0, 0, 60, 0, 135, 0, 0, 51, 0,
324 0, 61, 63, 47, 0, 56, 0, 64, 59, 0,
325 58, 0, 0, 0, 154, 155, 0, 0, 0, 0,
326 0, 0, 135, 135, 135, 135, 0, 0, 52, 62,
327 0, 162, 163, 0, 0, 164, 0, 0, 165, 166,
328 167, 0, 0, 0, 135, 135, 0, 24, 25, 26,
329 27, 28, 0, 29, 30, 31, 60, 0, 0, 32,
330 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
331 38, 0, 39, 40, 41, 0, 0, 0, 0, 42,
332 43, 44, 45, 46, 0, 0, 48, 49, 0, 0,
333 0, 52, 0, 50, 0, 0, 0, 53, 0, 54,
334 55, 0, 0, 24, 25, 26, 27, 28, 0, 29,
335 30, 31, 0, 168, 0, 32, 0, 0, 0, 0,
336 0, 0, 0, 0, 0, 0, 38, 0, 39, 40,
337 41, 0, 0, 0, 0, 42, 43, 44, 45, 46,
338 0, 0, 48, 49, 168, 150, 0, 0, 0, 50,
339 0, 82, 0, 53, 82, 54, 55, 0, 0, 24,
340 25, 26, 27, 28, 0, 29, 30, 31, 82, 82,
341 0, 32, 0, 82, 0, 0, 150, 0, 0, 0,
342 0, 0, 38, 0, 39, 40, 41, 0, 0, 0,
343 0, 42, 43, 44, 45, 46, 0, 0, 48, 49,
344 0, 130, 0, 82, 130, 50, 0, 0, 0, 53,
345 0, 54, 55, 0, 0, 0, 0, 0, 130, 130,
346 0, 22, 24, 25, 26, 27, 28, 0, 29, 30,
347 31, 0, 51, 0, 32, 61, 63, 47, 0, 56,
348 200, 64, 59, 0, 58, 38, 0, 39, 40, 41,
349 0, 0, 0, 130, 42, 43, 44, 45, 46, 0,
350 0, 48, 49, 62, 0, 0, 0, 0, 50, 0,
351 0, 0, 53, 0, 54, 55, 0, 0, 0, 0,
352 0, 0, 0, 0, 0, 0, 0, 0, 51, 0,
353 60, 61, 63, 47, 0, 56, 248, 64, 59, 0,
354 58, 0, 0, 0, 0, 0, 0, 152, 153, 154,
355 155, 0, 0, 0, 0, 0, 0, 0, 0, 62,
356 0, 0, 159, 160, 161, 52, 162, 163, 0, 0,
357 164, 0, 0, 165, 166, 167, 0, 0, 152, 153,
358 154, 155, 0, 0, 51, 0, 60, 61, 63, 47,
359 0, 56, 276, 64, 59, 161, 58, 162, 163, 0,
360 0, 164, 0, 0, 165, 166, 167, 0, 0, 0,
361 0, 0, 0, 0, 0, 62, 0, 0, 0, 0,
362 0, 52, 82, 82, 82, 82, 0, 0, 0, 0,
363 0, 82, 0, 0, 0, 0, 0, 0, 0, 0,
364 0, 0, 60, 0, 82, 82, 0, 51, 82, 82,
365 61, 63, 47, 0, 56, 278, 64, 59, 0, 58,
366 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
367 0, 0, 130, 130, 130, 130, 0, 52, 62, 0,
368 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
369 0, 0, 0, 0, 130, 130, 24, 25, 26, 27,
370 28, 0, 29, 30, 31, 60, 0, 0, 32, 0,
371 0, 0, 0, 0, 0, 0, 0, 0, 0, 38,
372 0, 39, 40, 41, 0, 0, 0, 0, 42, 43,
373 44, 45, 46, 0, 0, 48, 49, 0, 0, 0,
374 52, 0, 50, 0, 136, 0, 53, 136, 54, 55,
375 0, 0, 24, 25, 26, 27, 28, 0, 29, 30,
376 31, 136, 136, 0, 32, 0, 136, 0, 0, 0,
377 0, 0, 0, 0, 0, 38, 0, 39, 40, 41,
378 0, 0, 0, 0, 42, 43, 44, 45, 46, 0,
379 0, 48, 49, 0, 136, 0, 136, 0, 50, 0,
380 119, 0, 53, 119, 54, 55, 0, 0, 24, 25,
381 26, 27, 28, 0, 29, 30, 31, 119, 119, 0,
382 32, 0, 119, 0, 0, 0, 136, 0, 0, 0,
383 0, 38, 0, 39, 40, 41, 0, 0, 0, 0,
384 42, 43, 44, 45, 46, 0, 0, 48, 49, 0,
385 119, 0, 119, 0, 50, 0, 0, 0, 53, 0,
386 54, 55, 0, 0, 0, 0, 0, 0, 0, 0,
387 0, 24, 25, 26, 27, 28, 0, 29, 30, 31,
388 0, 51, 119, 32, 61, 63, 47, 0, 56, 0,
389 64, 59, 0, 58, 38, 0, 39, 40, 41, 0,
390 0, 0, 0, 42, 43, 44, 45, 46, 0, 0,
391 48, 49, 62, 0, 0, 0, 0, 50, 0, 0,
392 0, 53, 0, 54, 55, 0, 0, 0, 0, 0,
393 143, 0, 0, 143, 0, 0, 0, 0, 0, 60,
394 0, 0, 0, 0, 0, 0, 0, 143, 143, 0,
395 0, 0, 143, 0, 0, 0, 0, 0, 0, 0,
396 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
397 0, 0, 0, 0, 52, 136, 136, 136, 136, 0,
398 143, 0, 143, 0, 136, 0, 0, 0, 136, 136,
399 136, 136, 0, 0, 0, 0, 0, 136, 136, 0,
400 0, 136, 136, 136, 136, 136, 0, 136, 136, 0,
401 0, 136, 143, 0, 136, 136, 136, 0, 0, 0,
402 0, 129, 0, 0, 129, 0, 0, 0, 0, 0,
403 0, 119, 119, 119, 119, 0, 0, 0, 129, 129,
404 119, 0, 0, 129, 119, 119, 119, 119, 0, 0,
405 0, 0, 0, 119, 119, 0, 0, 119, 119, 119,
406 119, 119, 0, 119, 119, 0, 104, 119, 0, 104,
407 119, 119, 119, 129, 0, 0, 0, 0, 0, 0,
408 0, 0, 0, 104, 104, 0, 0, 0, 104, 0,
409 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
410 0, 0, 0, 129, 0, 24, 25, 26, 27, 28,
411 0, 29, 30, 31, 0, 0, 104, 32, 104, 0,
412 0, 0, 0, 0, 0, 0, 0, 0, 38, 0,
413 39, 40, 41, 0, 0, 0, 0, 42, 43, 44,
414 45, 46, 0, 0, 48, 49, 0, 0, 0, 0,
415 0, 50, 0, 0, 0, 53, 0, 54, 55, 0,
416 0, 143, 143, 143, 143, 0, 0, 0, 0, 0,
417 143, 0, 0, 0, 143, 143, 143, 143, 0, 0,
418 0, 0, 0, 143, 143, 0, 0, 143, 143, 143,
419 143, 143, 0, 143, 143, 145, 0, 143, 145, 0,
420 143, 143, 143, 0, 0, 0, 0, 0, 0, 0,
421 0, 0, 145, 145, 0, 0, 0, 145, 0, 0,
422 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
423 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
424 0, 0, 83, 0, 0, 83, 0, 145, 0, 0,
425 0, 0, 129, 129, 129, 129, 0, 0, 0, 83,
426 83, 129, 0, 0, 0, 129, 129, 129, 129, 0,
427 0, 0, 0, 0, 129, 129, 0, 145, 129, 129,
428 129, 129, 129, 0, 129, 129, 0, 0, 129, 0,
429 0, 129, 129, 129, 83, 0, 0, 104, 104, 104,
430 104, 0, 0, 0, 0, 0, 104, 0, 0, 0,
431 104, 104, 104, 104, 0, 0, 0, 131, 0, 104,
432 104, 0, 0, 104, 104, 104, 104, 104, 0, 104,
433 104, 0, 0, 104, 131, 131, 104, 104, 104, 131,
434 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
435 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
436 0, 146, 0, 0, 0, 0, 0, 131, 0, 131,
437 0, 0, 0, 0, 0, 0, 0, 0, 146, 146,
438 0, 0, 0, 146, 0, 0, 0, 0, 0, 0,
439 0, 0, 0, 0, 0, 0, 0, 0, 0, 131,
440 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
441 0, 146, 0, 146, 0, 0, 96, 0, 0, 96,
442 0, 0, 0, 0, 0, 0, 145, 145, 145, 145,
443 0, 0, 0, 96, 96, 145, 0, 0, 96, 145,
444 145, 145, 145, 146, 0, 0, 0, 0, 145, 145,
445 0, 0, 145, 145, 145, 145, 145, 0, 145, 145,
446 58, 0, 145, 58, 0, 145, 145, 145, 96, 0,
447 0, 0, 0, 83, 83, 83, 83, 58, 58, 0,
448 0, 0, 58, 0, 0, 0, 0, 0, 0, 0,
449 0, 0, 0, 0, 0, 83, 83, 0, 96, 83,
450 0, 0, 0, 61, 0, 0, 0, 0, 0, 0,
451 0, 0, 58, 0, 0, 0, 0, 0, 0, 0,
452 61, 61, 0, 0, 0, 61, 0, 0, 0, 0,
453 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
454 0, 0, 58, 0, 0, 0, 0, 0, 131, 131,
455 131, 131, 0, 61, 0, 61, 0, 131, 0, 0,
456 0, 131, 131, 131, 131, 59, 0, 0, 59, 0,
457 131, 131, 0, 0, 131, 131, 131, 131, 131, 0,
458 131, 131, 59, 59, 131, 61, 0, 131, 131, 131,
459 0, 0, 146, 146, 146, 146, 0, 0, 0, 0,
460 0, 146, 0, 0, 0, 146, 146, 146, 146, 0,
461 0, 0, 0, 0, 146, 146, 0, 59, 146, 146,
462 146, 146, 146, 0, 146, 146, 0, 0, 146, 0,
463 0, 146, 146, 146, 0, 0, 0, 145, 0, 0,
464 145, 0, 0, 0, 0, 0, 0, 96, 96, 96,
465 96, 0, 0, 0, 145, 145, 96, 0, 0, 145,
466 96, 96, 96, 96, 0, 0, 0, 0, 0, 96,
467 96, 0, 0, 96, 96, 96, 96, 96, 0, 96,
468 96, 132, 0, 96, 132, 0, 96, 96, 96, 145,
469 0, 58, 58, 58, 58, 0, 0, 0, 132, 132,
470 58, 0, 0, 132, 58, 58, 58, 58, 0, 0,
471 0, 0, 0, 58, 58, 0, 0, 58, 58, 58,
472 58, 58, 0, 58, 58, 0, 0, 58, 0, 0,
473 58, 58, 58, 132, 61, 61, 61, 61, 0, 284,
474 0, 0, 0, 61, 157, 0, 0, 61, 61, 61,
475 61, 0, 0, 0, 0, 0, 61, 61, 0, 0,
476 61, 61, 61, 61, 61, 95, 61, 61, 95, 0,
477 61, 0, 168, 61, 61, 61, 0, 0, 0, 0,
478 0, 0, 95, 95, 0, 0, 0, 95, 0, 0,
479 0, 0, 0, 0, 0, 0, 59, 59, 59, 59,
480 0, 0, 0, 0, 150, 0, 0, 102, 0, 0,
481 102, 0, 0, 0, 0, 0, 0, 95, 59, 59,
482 0, 0, 0, 0, 102, 102, 0, 0, 0, 102,
483 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
484 0, 0, 0, 0, 0, 0, 0, 95, 0, 0,
485 0, 0, 0, 0, 0, 0, 0, 0, 109, 102,
486 0, 109, 0, 0, 0, 0, 0, 0, 145, 145,
487 145, 145, 0, 0, 0, 109, 109, 145, 0, 0,
488 109, 145, 145, 145, 145, 0, 0, 0, 0, 0,
489 145, 145, 0, 0, 145, 145, 145, 145, 145, 0,
490 145, 145, 92, 0, 145, 92, 0, 145, 145, 145,
491 109, 0, 132, 132, 132, 132, 0, 0, 0, 92,
492 92, 132, 0, 0, 92, 132, 132, 132, 132, 0,
493 0, 0, 0, 0, 132, 132, 0, 0, 132, 132,
494 132, 132, 132, 93, 132, 132, 93, 0, 132, 0,
495 0, 132, 132, 132, 92, 0, 0, 0, 0, 0,
496 93, 93, 151, 0, 0, 93, 152, 153, 154, 155,
497 0, 0, 0, 0, 0, 0, 0, 0, 0, 156,
498 158, 159, 160, 161, 0, 162, 163, 0, 0, 164,
499 0, 0, 165, 166, 167, 93, 95, 95, 95, 95,
500 0, 0, 0, 0, 0, 95, 0, 0, 0, 95,
501 95, 95, 95, 0, 0, 0, 0, 0, 95, 95,
502 0, 0, 95, 95, 95, 95, 95, 0, 95, 95,
503 0, 0, 95, 0, 0, 95, 95, 95, 102, 102,
504 102, 102, 0, 0, 0, 0, 0, 102, 0, 0,
505 0, 102, 102, 102, 102, 71, 0, 0, 71, 0,
506 102, 102, 0, 0, 102, 102, 102, 102, 102, 0,
507 102, 102, 71, 71, 102, 0, 0, 102, 102, 102,
508 0, 0, 0, 0, 0, 0, 0, 0, 0, 109,
509 109, 109, 109, 0, 0, 0, 0, 0, 109, 0,
510 0, 0, 109, 109, 109, 109, 0, 71, 0, 0,
511 0, 109, 109, 0, 0, 109, 109, 109, 109, 109,
512 0, 109, 109, 0, 0, 109, 0, 0, 109, 109,
513 109, 0, 0, 92, 92, 92, 92, 0, 0, 0,
514 0, 0, 92, 0, 0, 0, 92, 92, 92, 92,
515 0, 0, 0, 0, 0, 92, 92, 0, 0, 92,
516 92, 92, 92, 92, 87, 92, 92, 87, 0, 92,
517 0, 0, 0, 0, 93, 93, 93, 93, 0, 0,
518 0, 87, 87, 93, 0, 0, 87, 93, 93, 93,
519 93, 0, 0, 0, 0, 0, 93, 93, 0, 0,
520 93, 93, 93, 93, 93, 88, 93, 93, 88, 0,
521 93, 0, 0, 0, 0, 0, 87, 0, 0, 0,
522 0, 0, 88, 88, 0, 0, 0, 88, 0, 0,
523 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
524 0, 89, 0, 0, 89, 0, 0, 0, 0, 0,
525 0, 0, 0, 0, 0, 0, 0, 88, 89, 89,
526 0, 0, 0, 89, 0, 0, 0, 0, 0, 0,
527 0, 0, 0, 0, 0, 0, 0, 85, 0, 0,
528 85, 0, 0, 0, 0, 0, 71, 71, 71, 71,
529 0, 0, 0, 89, 85, 85, 0, 0, 0, 85,
530 0, 0, 0, 0, 0, 0, 0, 0, 71, 71,
531 0, 0, 0, 86, 0, 0, 86, 0, 0, 0,
532 0, 0, 0, 0, 0, 0, 0, 0, 0, 85,
533 86, 86, 0, 0, 0, 86, 0, 0, 0, 0,
534 0, 0, 0, 0, 0, 0, 0, 0, 0, 84,
535 0, 0, 84, 0, 0, 0, 0, 0, 0, 0,
536 0, 0, 0, 0, 0, 86, 84, 84, 0, 0,
537 0, 84, 0, 0, 0, 0, 0, 0, 0, 0,
538 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
539 0, 0, 0, 0, 0, 87, 87, 87, 87, 0,
540 0, 84, 0, 0, 87, 0, 0, 0, 87, 87,
541 87, 87, 0, 0, 0, 0, 0, 87, 87, 0,
542 0, 87, 87, 87, 87, 87, 72, 87, 87, 72,
543 0, 0, 0, 0, 0, 0, 88, 88, 88, 88,
544 0, 0, 0, 72, 72, 88, 0, 0, 72, 88,
545 88, 88, 88, 0, 0, 0, 0, 0, 88, 88,
546 0, 0, 88, 88, 88, 88, 88, 0, 88, 88,
547 0, 0, 89, 89, 89, 89, 0, 0, 72, 0,
548 0, 89, 0, 0, 0, 89, 89, 89, 89, 0,
549 0, 0, 0, 0, 89, 89, 0, 0, 89, 89,
550 89, 89, 89, 0, 89, 89, 0, 0, 85, 85,
551 85, 85, 0, 0, 0, 0, 0, 85, 0, 0,
552 0, 85, 85, 85, 85, 0, 0, 0, 0, 0,
553 85, 85, 0, 0, 85, 85, 85, 85, 85, 0,
554 85, 85, 0, 0, 86, 86, 86, 86, 0, 0,
555 0, 0, 0, 86, 0, 0, 0, 86, 86, 86,
556 86, 0, 0, 0, 0, 0, 86, 86, 0, 0,
557 86, 86, 86, 86, 86, 0, 86, 86, 0, 0,
558 84, 84, 84, 84, 0, 0, 0, 0, 0, 84,
559 0, 0, 0, 84, 84, 84, 84, 73, 0, 0,
560 73, 0, 84, 84, 0, 0, 84, 84, 84, 84,
561 84, 0, 84, 84, 73, 73, 0, 0, 0, 73,
562 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
563 74, 0, 0, 74, 0, 0, 0, 0, 0, 0,
564 0, 0, 0, 0, 0, 0, 0, 74, 74, 73,
565 0, 0, 74, 0, 0, 0, 0, 72, 72, 72,
566 72, 0, 0, 0, 0, 0, 72, 0, 0, 0,
567 72, 72, 72, 72, 75, 0, 0, 75, 0, 72,
568 72, 0, 74, 72, 72, 72, 72, 72, 0, 72,
569 72, 75, 75, 0, 0, 0, 75, 0, 0, 0,
570 0, 0, 0, 0, 0, 0, 0, 123, 0, 0,
571 123, 0, 0, 0, 0, 0, 0, 0, 0, 0,
572 0, 0, 0, 0, 123, 123, 75, 0, 0, 123,
573 0, 0, 0, 0, 0, 0, 0, 0, 94, 0,
574 0, 94, 0, 0, 0, 0, 0, 0, 0, 0,
575 0, 0, 0, 0, 0, 94, 94, 0, 0, 123,
576 94, 0, 0, 0, 0, 0, 0, 0, 0, 134,
577 0, 0, 134, 0, 0, 0, 0, 0, 0, 0,
578 0, 0, 0, 0, 0, 0, 134, 134, 0, 0,
579 94, 134, 0, 0, 0, 0, 0, 0, 0, 0,
580 76, 0, 0, 76, 0, 0, 0, 0, 0, 0,
581 0, 0, 0, 0, 0, 0, 77, 76, 76, 77,
582 0, 134, 76, 0, 0, 0, 0, 0, 73, 73,
583 73, 73, 0, 77, 77, 0, 0, 73, 77, 0,
584 0, 73, 73, 73, 73, 0, 0, 0, 0, 0,
585 73, 73, 76, 0, 73, 73, 73, 73, 73, 0,
586 73, 74, 74, 74, 74, 0, 0, 0, 77, 0,
587 74, 0, 0, 0, 74, 74, 0, 74, 78, 0,
588 0, 78, 0, 74, 74, 0, 0, 74, 74, 74,
589 74, 74, 0, 74, 79, 78, 78, 79, 0, 0,
590 78, 0, 0, 0, 0, 75, 75, 75, 75, 0,
591 0, 79, 79, 0, 75, 0, 79, 0, 75, 75,
592 0, 0, 0, 0, 0, 0, 0, 75, 75, 0,
593 78, 75, 75, 75, 75, 75, 0, 75, 123, 123,
594 123, 123, 0, 0, 0, 0, 79, 123, 0, 0,
595 0, 123, 123, 0, 0, 0, 0, 0, 0, 81,
596 123, 123, 81, 0, 123, 123, 123, 123, 123, 94,
597 94, 94, 94, 0, 0, 0, 81, 81, 94, 0,
598 0, 81, 94, 94, 0, 0, 0, 0, 0, 0,
599 0, 94, 94, 0, 0, 94, 94, 94, 94, 94,
600 134, 134, 134, 134, 0, 0, 0, 0, 0, 134,
601 0, 81, 0, 134, 134, 0, 0, 0, 0, 0,
602 0, 0, 134, 134, 0, 0, 134, 134, 134, 134,
603 134, 76, 76, 76, 76, 0, 0, 0, 0, 0,
604 76, 0, 0, 0, 0, 76, 0, 77, 77, 77,
605 77, 0, 0, 76, 76, 0, 77, 76, 76, 76,
606 76, 76, 0, 0, 0, 0, 0, 0, 0, 77,
607 77, 0, 0, 77, 77, 77, 77, 77, 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, 0, 0, 0, 0, 0, 78,
611 78, 78, 78, 0, 0, 0, 0, 0, 78, 0,
612 0, 0, 0, 0, 0, 79, 79, 79, 79, 0,
613 0, 78, 78, 0, 79, 78, 78, 78, 78, 78,
614 0, 0, 91, 0, 0, 0, 0, 79, 79, 0,
615 104, 79, 79, 79, 79, 111, 113, 0, 0, 0,
616 0, 0, 125, 126, 127, 128, 129, 130, 0, 0,
617 133, 134, 0, 0, 0, 0, 0, 0, 0, 0,
618 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
619 81, 81, 81, 81, 0, 0, 0, 0, 0, 81,
620 0, 0, 183, 0, 0, 0, 0, 0, 0, 0,
621 0, 0, 81, 81, 0, 0, 81, 81, 81, 0,
622 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
623 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
624 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
625 0, 0, 0, 0, 0, 215, 0, 0, 0, 0,
626 0, 0, 0, 223, 224, 225, 226, 227, 228, 229,
627 230, 231, 232, 233, 234, 235, 236, 0, 0, 0,
628 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
629 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
630 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
631 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
632 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
633 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
634 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
635 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
636 0, 0, 0, 0, 0, 0, 0, 0, 297, 0,
637 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
638 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
639 0, 0, 0, 0, 0, 0, 313,
641 short yycheck[] = { 13,
642 59, 13, 91, 17, 59, 59, 36, 93, 182, 194,
643 41, 123, 59, 44, 257, 41, 59, 40, 44, 33,
644 34, 35, 36, 91, 40, 88, 59, 58, 59, 43,
645 41, 40, 63, 45, 123, 41, 50, 63, 91, 41,
646 257, 41, 41, 40, 56, 40, 59, 40, 60, 41,
647 257, 41, 40, 116, 41, 123, 188, 59, 190, 40,
648 59, 91, 93, 41, 78, 91, 41, 36, 91, 59,
649 123, 40, 59, 41, 278, 41, 123, 41, 92, 294,
650 295, 95, 94, 97, 96, 99, 98, 101, 100, 41,
651 102, 59, 41, 123, 106, 41, 40, 123, 41, 41,
652 123, 123, 41, 44, 59, 44, 0, 123, 276, 277,
653 123, 44, 40, 287, 123, 300, 179, 59, 303, 58,
654 59, 184, 59, 59, 260, 59, 123, 141, 123, 123,
655 257, 40, 144, 145, 146, 147, 148, 149, 150, 33,
656 40, 40, 36, 37, 38, 257, 40, 295, 42, 43,
657 335, 45, 41, 6, 93, 8, 168, 169, 170, 171,
658 172, 173, 174, 125, 178, 59, 298, 299, 91, 41,
659 64, 185, 41, 305, 0, 59, 91, 125, 31, 32,
660 40, 93, 59, 41, 36, 40, 198, 125, 83, 59,
661 125, 93, 204, 205, 206, 125, 328, 91, 125, 211,
662 125, 41, 41, 257, 123, 91, 93, 33, 294, 295,
663 36, 37, 38, 41, 40, 59, 42, 43, 41, 45,
664 41, 59, 93, 59, 313, 237, 59, 239, 258, 123,
665 41, 125, 126, 59, 326, 294, 295, 123, 64, 294,
666 295, 272, 273, 274, 275, 259, 13, 261, 269, 263,
667 264, 294, 295, 267, -1, 281, 270, 269, 93, 285,
668 286, 287, 288, 294, 295, 91, 93, 298, 0, -1,
669 282, 123, 298, 299, 300, 301, 302, 93, 304, 305,
670 -1, -1, 308, 294, 295, 311, 312, 313, 294, 295,
671 302, -1, 306, -1, 294, 295, -1, 123, -1, 125,
672 126, 33, 294, 295, 36, 37, 38, -1, 40, -1,
673 42, 43, -1, 45, 326, -1, 294, 295, 332, 294,
674 295, -1, 336, 272, 273, 274, 275, 59, 294, 295,
675 294, 295, 64, 272, 273, 274, 275, -1, -1, 294,
676 295, -1, 294, 295, -1, 294, 295, -1, 294, 295,
677 -1, 294, 295, 294, 295, 294, 295, 294, 295, 91,
678 294, 295, 256, 257, 258, 259, 260, 261, -1, 263,
679 264, 265, 266, 267, 268, 269, 270, 271, 272, 273,
680 274, 275, 294, 295, -1, 279, 280, -1, 282, 283,
681 284, 123, 294, 295, 126, 289, 290, 291, 292, 293,
682 41, 287, 296, 297, 91, 257, -1, 294, 295, 303,
683 262, -1, -1, 307, -1, 309, 310, -1, 59, 305,
684 -1, -1, 308, 294, 295, 311, 312, 313, -1, -1,
685 256, 257, 258, 259, 260, 261, 123, 263, 264, 265,
686 266, 267, 268, 269, 270, 271, 272, 273, 274, 275,
687 -1, -1, 93, 279, 280, -1, 282, 283, 284, 294,
688 295, -1, -1, 289, 290, 291, 292, 293, -1, -1,
689 296, 297, 91, -1, -1, -1, -1, 303, 294, 295,
690 -1, 307, 91, 309, 310, 26, 33, -1, -1, 36,
691 37, 38, -1, 40, 41, 42, 43, 44, 45, 48,
692 49, 42, -1, -1, 123, -1, 47, -1, 49, -1,
693 -1, 58, 59, -1, 123, 125, 63, 64, -1, -1,
694 61, 62, 63, 64, 256, 257, 258, 259, 260, 261,
695 -1, 263, 264, 265, -1, -1, -1, 269, -1, 88,
696 272, 273, 274, 275, 91, -1, 93, 279, 280, -1,
697 282, 283, 284, 63, -1, -1, -1, 289, 290, 291,
698 292, 293, 91, -1, 296, 297, 107, 116, 266, 267,
699 268, 303, 270, 271, 123, 307, 123, 309, 310, 126,
700 33, 91, -1, 36, 37, 38, -1, 40, 41, 42,
701 43, 44, 45, -1, 123, -1, -1, -1, 285, 286,
702 287, 288, -1, -1, -1, 58, 59, -1, -1, -1,
703 63, 64, -1, 123, 301, 302, -1, 304, 305, -1,
704 -1, 308, -1, -1, 311, 312, 313, -1, -1, -1,
705 179, 272, 273, 274, 275, 184, -1, -1, -1, 33,
706 93, -1, 36, 37, 38, -1, 40, -1, 42, 43,
707 -1, 45, -1, 294, 295, -1, 266, 267, 268, -1,
708 270, 271, -1, -1, -1, 59, 285, 286, 287, 288,
709 64, -1, -1, 126, -1, -1, 285, 286, 287, 288,
710 299, 300, 301, 302, -1, 304, 305, -1, -1, 308,
711 -1, -1, 311, 312, 313, 304, 305, 91, -1, 308,
712 -1, -1, 311, 312, 313, -1, -1, -1, -1, -1,
713 257, 258, 259, 260, 261, -1, 263, 264, 265, -1,
714 -1, -1, 269, -1, -1, 272, 273, 274, 275, 123,
715 -1, -1, 126, 280, 281, 282, 283, 284, 285, 286,
716 287, 288, 289, 290, 291, 292, 293, 294, 295, 296,
717 297, 298, 299, 300, 301, 302, 303, 304, 305, -1,
718 307, 308, 309, 310, 311, 312, 313, 91, -1, -1,
719 -1, 281, -1, -1, -1, 285, 286, 287, 288, 308,
720 -1, -1, 311, 312, 313, -1, -1, -1, 298, 299,
721 300, 301, 302, -1, 304, 305, -1, -1, 308, 123,
722 -1, 311, 312, 313, 257, 258, 259, 260, 261, -1,
723 263, 264, 265, -1, -1, -1, 269, -1, -1, 272,
724 273, 274, 275, -1, -1, -1, -1, 280, 281, 282,
725 283, 284, 285, 286, 287, 288, 289, 290, 291, 292,
726 293, 294, 295, 296, 297, 298, 299, 300, 301, 302,
727 303, 304, 305, -1, 307, 308, 309, 310, 311, 312,
728 313, 91, 256, 257, 258, 259, 260, 261, -1, 263,
729 264, 265, -1, 41, -1, 269, 44, -1, 272, 273,
730 274, 275, -1, -1, -1, 279, 280, -1, 282, 283,
731 284, 59, -1, 123, -1, 289, 290, 291, 292, 293,
732 -1, -1, 296, 297, -1, -1, -1, -1, -1, 303,
733 25, 26, -1, 307, 33, 309, 310, 36, 37, 38,
734 -1, 40, 37, 42, 43, 93, 45, 42, 43, -1,
735 -1, -1, 47, -1, 49, 272, 273, 274, 275, -1,
736 59, -1, -1, -1, -1, 64, 61, 62, 63, 64,
737 -1, -1, -1, -1, -1, -1, -1, 294, 295, -1,
738 -1, -1, -1, 287, 288, -1, -1, -1, -1, -1,
739 33, -1, 91, 36, 37, 38, -1, 40, -1, 42,
740 43, 305, 45, -1, 308, -1, -1, 311, 312, 313,
741 -1, -1, 107, -1, -1, -1, -1, -1, -1, -1,
742 -1, 64, -1, -1, 123, -1, -1, 126, -1, -1,
743 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
744 -1, -1, -1, -1, -1, -1, 33, -1, 91, 36,
745 37, 38, -1, 40, -1, 42, 43, -1, 45, -1,
746 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
747 -1, -1, 167, -1, -1, -1, -1, 64, -1, -1,
748 123, -1, -1, 126, -1, -1, -1, -1, -1, -1,
749 -1, -1, -1, -1, -1, 305, -1, -1, 308, -1,
750 -1, 311, 312, 313, 91, -1, -1, -1, -1, 33,
751 -1, -1, 36, 37, 38, -1, 40, -1, 42, 43,
752 -1, 45, -1, -1, 272, 273, 274, 275, -1, -1,
753 -1, -1, -1, -1, -1, 59, 123, -1, -1, 126,
754 64, -1, -1, -1, -1, -1, 294, -1, -1, -1,
755 -1, -1, -1, -1, -1, -1, -1, 256, 257, 258,
756 259, 260, 261, -1, 263, 264, 265, 91, -1, -1,
757 269, -1, -1, 272, 273, 274, 275, -1, -1, -1,
758 279, 280, -1, 282, 283, 284, -1, -1, -1, -1,
759 289, 290, 291, 292, 293, -1, -1, 296, 297, -1,
760 91, 63, 126, -1, 303, -1, -1, -1, 307, -1,
761 309, 310, -1, -1, 257, 258, 259, 260, 261, 262,
762 263, 264, 265, -1, -1, -1, 269, -1, -1, 91,
763 41, -1, 123, -1, -1, -1, -1, 280, -1, 282,
764 283, 284, -1, -1, -1, -1, 289, 290, 291, 292,
765 293, -1, 63, 296, 297, -1, -1, -1, -1, -1,
766 303, 123, -1, -1, 307, -1, 309, 310, -1, -1,
767 257, 258, 259, 260, 261, -1, 263, 264, 265, -1,
768 91, -1, 269, -1, -1, -1, -1, -1, -1, -1,
769 -1, -1, -1, 280, -1, 282, 283, 284, -1, -1,
770 -1, -1, 289, 290, 291, 292, 293, -1, -1, 296,
771 297, 41, 123, -1, 44, -1, 303, -1, -1, -1,
772 307, -1, 309, 310, -1, -1, -1, -1, 58, 59,
773 -1, -1, -1, 257, 258, 259, 260, 261, 91, 263,
774 264, 265, -1, 33, -1, 269, 36, 37, 38, -1,
775 40, -1, 42, 43, -1, 45, 280, -1, 282, 283,
776 284, -1, -1, 93, -1, 289, 290, 291, 292, 293,
777 123, -1, 296, 297, 64, -1, -1, -1, -1, 303,
778 -1, -1, -1, 307, -1, 309, 310, -1, -1, -1,
779 -1, -1, -1, -1, 285, -1, 287, 288, -1, 33,
780 -1, 91, 36, 37, 38, -1, 40, 41, 42, 43,
781 -1, 45, -1, 304, 305, -1, -1, 308, -1, 281,
782 311, 312, 313, 285, 286, 287, 288, -1, -1, -1,
783 64, -1, -1, 123, -1, -1, 126, 299, 300, 301,
784 302, -1, 304, 305, -1, -1, 308, -1, -1, 311,
785 312, 313, -1, -1, -1, 33, -1, 91, 36, 37,
786 38, -1, 40, -1, 42, 43, -1, 45, -1, -1,
787 281, -1, -1, -1, 285, 286, 287, 288, -1, -1,
788 -1, -1, -1, -1, -1, -1, 64, 298, 299, 300,
789 301, 302, 126, 304, 305, -1, -1, 308, -1, -1,
790 311, 312, 313, -1, -1, -1, -1, -1, -1, -1,
791 -1, -1, -1, 91, -1, 93, -1, -1, 33, -1,
792 -1, 36, 37, 38, -1, 40, -1, 42, 43, -1,
793 45, -1, -1, -1, 287, 288, -1, -1, -1, -1,
794 -1, -1, 272, 273, 274, 275, -1, -1, 126, 64,
795 -1, 304, 305, -1, -1, 308, -1, -1, 311, 312,
796 313, -1, -1, -1, 294, 295, -1, 257, 258, 259,
797 260, 261, -1, 263, 264, 265, 91, -1, -1, 269,
798 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
799 280, -1, 282, 283, 284, -1, -1, -1, -1, 289,
800 290, 291, 292, 293, -1, -1, 296, 297, -1, -1,
801 -1, 126, -1, 303, -1, -1, -1, 307, -1, 309,
802 310, -1, -1, 257, 258, 259, 260, 261, -1, 263,
803 264, 265, -1, 91, -1, 269, -1, -1, -1, -1,
804 -1, -1, -1, -1, -1, -1, 280, -1, 282, 283,
805 284, -1, -1, -1, -1, 289, 290, 291, 292, 293,
806 -1, -1, 296, 297, 91, 123, -1, -1, -1, 303,
807 -1, 41, -1, 307, 44, 309, 310, -1, -1, 257,
808 258, 259, 260, 261, -1, 263, 264, 265, 58, 59,
809 -1, 269, -1, 63, -1, -1, 123, -1, -1, -1,
810 -1, -1, 280, -1, 282, 283, 284, -1, -1, -1,
811 -1, 289, 290, 291, 292, 293, -1, -1, 296, 297,
812 -1, 41, -1, 93, 44, 303, -1, -1, -1, 307,
813 -1, 309, 310, -1, -1, -1, -1, -1, 58, 59,
814 -1, 256, 257, 258, 259, 260, 261, -1, 263, 264,
815 265, -1, 33, -1, 269, 36, 37, 38, -1, 40,
816 41, 42, 43, -1, 45, 280, -1, 282, 283, 284,
817 -1, -1, -1, 93, 289, 290, 291, 292, 293, -1,
818 -1, 296, 297, 64, -1, -1, -1, -1, 303, -1,
819 -1, -1, 307, -1, 309, 310, -1, -1, -1, -1,
820 -1, -1, -1, -1, -1, -1, -1, -1, 33, -1,
821 91, 36, 37, 38, -1, 40, 41, 42, 43, -1,
822 45, -1, -1, -1, -1, -1, -1, 285, 286, 287,
823 288, -1, -1, -1, -1, -1, -1, -1, -1, 64,
824 -1, -1, 300, 301, 302, 126, 304, 305, -1, -1,
825 308, -1, -1, 311, 312, 313, -1, -1, 285, 286,
826 287, 288, -1, -1, 33, -1, 91, 36, 37, 38,
827 -1, 40, 41, 42, 43, 302, 45, 304, 305, -1,
828 -1, 308, -1, -1, 311, 312, 313, -1, -1, -1,
829 -1, -1, -1, -1, -1, 64, -1, -1, -1, -1,
830 -1, 126, 272, 273, 274, 275, -1, -1, -1, -1,
831 -1, 281, -1, -1, -1, -1, -1, -1, -1, -1,
832 -1, -1, 91, -1, 294, 295, -1, 33, 298, 299,
833 36, 37, 38, -1, 40, 41, 42, 43, -1, 45,
834 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
835 -1, -1, 272, 273, 274, 275, -1, 126, 64, -1,
836 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
837 -1, -1, -1, -1, 294, 295, 257, 258, 259, 260,
838 261, -1, 263, 264, 265, 91, -1, -1, 269, -1,
839 -1, -1, -1, -1, -1, -1, -1, -1, -1, 280,
840 -1, 282, 283, 284, -1, -1, -1, -1, 289, 290,
841 291, 292, 293, -1, -1, 296, 297, -1, -1, -1,
842 126, -1, 303, -1, 41, -1, 307, 44, 309, 310,
843 -1, -1, 257, 258, 259, 260, 261, -1, 263, 264,
844 265, 58, 59, -1, 269, -1, 63, -1, -1, -1,
845 -1, -1, -1, -1, -1, 280, -1, 282, 283, 284,
846 -1, -1, -1, -1, 289, 290, 291, 292, 293, -1,
847 -1, 296, 297, -1, 91, -1, 93, -1, 303, -1,
848 41, -1, 307, 44, 309, 310, -1, -1, 257, 258,
849 259, 260, 261, -1, 263, 264, 265, 58, 59, -1,
850 269, -1, 63, -1, -1, -1, 123, -1, -1, -1,
851 -1, 280, -1, 282, 283, 284, -1, -1, -1, -1,
852 289, 290, 291, 292, 293, -1, -1, 296, 297, -1,
853 91, -1, 93, -1, 303, -1, -1, -1, 307, -1,
854 309, 310, -1, -1, -1, -1, -1, -1, -1, -1,
855 -1, 257, 258, 259, 260, 261, -1, 263, 264, 265,
856 -1, 33, 123, 269, 36, 37, 38, -1, 40, -1,
857 42, 43, -1, 45, 280, -1, 282, 283, 284, -1,
858 -1, -1, -1, 289, 290, 291, 292, 293, -1, -1,
859 296, 297, 64, -1, -1, -1, -1, 303, -1, -1,
860 -1, 307, -1, 309, 310, -1, -1, -1, -1, -1,
861 41, -1, -1, 44, -1, -1, -1, -1, -1, 91,
862 -1, -1, -1, -1, -1, -1, -1, 58, 59, -1,
863 -1, -1, 63, -1, -1, -1, -1, -1, -1, -1,
864 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
865 -1, -1, -1, -1, 126, 272, 273, 274, 275, -1,
866 91, -1, 93, -1, 281, -1, -1, -1, 285, 286,
867 287, 288, -1, -1, -1, -1, -1, 294, 295, -1,
868 -1, 298, 299, 300, 301, 302, -1, 304, 305, -1,
869 -1, 308, 123, -1, 311, 312, 313, -1, -1, -1,
870 -1, 41, -1, -1, 44, -1, -1, -1, -1, -1,
871 -1, 272, 273, 274, 275, -1, -1, -1, 58, 59,
872 281, -1, -1, 63, 285, 286, 287, 288, -1, -1,
873 -1, -1, -1, 294, 295, -1, -1, 298, 299, 300,
874 301, 302, -1, 304, 305, -1, 41, 308, -1, 44,
875 311, 312, 313, 93, -1, -1, -1, -1, -1, -1,
876 -1, -1, -1, 58, 59, -1, -1, -1, 63, -1,
877 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
878 -1, -1, -1, 123, -1, 257, 258, 259, 260, 261,
879 -1, 263, 264, 265, -1, -1, 91, 269, 93, -1,
880 -1, -1, -1, -1, -1, -1, -1, -1, 280, -1,
881 282, 283, 284, -1, -1, -1, -1, 289, 290, 291,
882 292, 293, -1, -1, 296, 297, -1, -1, -1, -1,
883 -1, 303, -1, -1, -1, 307, -1, 309, 310, -1,
884 -1, 272, 273, 274, 275, -1, -1, -1, -1, -1,
885 281, -1, -1, -1, 285, 286, 287, 288, -1, -1,
886 -1, -1, -1, 294, 295, -1, -1, 298, 299, 300,
887 301, 302, -1, 304, 305, 41, -1, 308, 44, -1,
888 311, 312, 313, -1, -1, -1, -1, -1, -1, -1,
889 -1, -1, 58, 59, -1, -1, -1, 63, -1, -1,
890 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
891 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
892 -1, -1, 41, -1, -1, 44, -1, 93, -1, -1,
893 -1, -1, 272, 273, 274, 275, -1, -1, -1, 58,
894 59, 281, -1, -1, -1, 285, 286, 287, 288, -1,
895 -1, -1, -1, -1, 294, 295, -1, 123, 298, 299,
896 300, 301, 302, -1, 304, 305, -1, -1, 308, -1,
897 -1, 311, 312, 313, 93, -1, -1, 272, 273, 274,
898 275, -1, -1, -1, -1, -1, 281, -1, -1, -1,
899 285, 286, 287, 288, -1, -1, -1, 41, -1, 294,
900 295, -1, -1, 298, 299, 300, 301, 302, -1, 304,
901 305, -1, -1, 308, 58, 59, 311, 312, 313, 63,
902 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
903 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
904 -1, 41, -1, -1, -1, -1, -1, 91, -1, 93,
905 -1, -1, -1, -1, -1, -1, -1, -1, 58, 59,
906 -1, -1, -1, 63, -1, -1, -1, -1, -1, -1,
907 -1, -1, -1, -1, -1, -1, -1, -1, -1, 123,
908 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
909 -1, 91, -1, 93, -1, -1, 41, -1, -1, 44,
910 -1, -1, -1, -1, -1, -1, 272, 273, 274, 275,
911 -1, -1, -1, 58, 59, 281, -1, -1, 63, 285,
912 286, 287, 288, 123, -1, -1, -1, -1, 294, 295,
913 -1, -1, 298, 299, 300, 301, 302, -1, 304, 305,
914 41, -1, 308, 44, -1, 311, 312, 313, 93, -1,
915 -1, -1, -1, 272, 273, 274, 275, 58, 59, -1,
916 -1, -1, 63, -1, -1, -1, -1, -1, -1, -1,
917 -1, -1, -1, -1, -1, 294, 295, -1, 123, 298,
918 -1, -1, -1, 41, -1, -1, -1, -1, -1, -1,
919 -1, -1, 93, -1, -1, -1, -1, -1, -1, -1,
920 58, 59, -1, -1, -1, 63, -1, -1, -1, -1,
921 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
922 -1, -1, 123, -1, -1, -1, -1, -1, 272, 273,
923 274, 275, -1, 91, -1, 93, -1, 281, -1, -1,
924 -1, 285, 286, 287, 288, 41, -1, -1, 44, -1,
925 294, 295, -1, -1, 298, 299, 300, 301, 302, -1,
926 304, 305, 58, 59, 308, 123, -1, 311, 312, 313,
927 -1, -1, 272, 273, 274, 275, -1, -1, -1, -1,
928 -1, 281, -1, -1, -1, 285, 286, 287, 288, -1,
929 -1, -1, -1, -1, 294, 295, -1, 93, 298, 299,
930 300, 301, 302, -1, 304, 305, -1, -1, 308, -1,
931 -1, 311, 312, 313, -1, -1, -1, 41, -1, -1,
932 44, -1, -1, -1, -1, -1, -1, 272, 273, 274,
933 275, -1, -1, -1, 58, 59, 281, -1, -1, 63,
934 285, 286, 287, 288, -1, -1, -1, -1, -1, 294,
935 295, -1, -1, 298, 299, 300, 301, 302, -1, 304,
936 305, 41, -1, 308, 44, -1, 311, 312, 313, 93,
937 -1, 272, 273, 274, 275, -1, -1, -1, 58, 59,
938 281, -1, -1, 63, 285, 286, 287, 288, -1, -1,
939 -1, -1, -1, 294, 295, -1, -1, 298, 299, 300,
940 301, 302, -1, 304, 305, -1, -1, 308, -1, -1,
941 311, 312, 313, 93, 272, 273, 274, 275, -1, 58,
942 -1, -1, -1, 281, 63, -1, -1, 285, 286, 287,
943 288, -1, -1, -1, -1, -1, 294, 295, -1, -1,
944 298, 299, 300, 301, 302, 41, 304, 305, 44, -1,
945 308, -1, 91, 311, 312, 313, -1, -1, -1, -1,
946 -1, -1, 58, 59, -1, -1, -1, 63, -1, -1,
947 -1, -1, -1, -1, -1, -1, 272, 273, 274, 275,
948 -1, -1, -1, -1, 123, -1, -1, 41, -1, -1,
949 44, -1, -1, -1, -1, -1, -1, 93, 294, 295,
950 -1, -1, -1, -1, 58, 59, -1, -1, -1, 63,
951 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
952 -1, -1, -1, -1, -1, -1, -1, 123, -1, -1,
953 -1, -1, -1, -1, -1, -1, -1, -1, 41, 93,
954 -1, 44, -1, -1, -1, -1, -1, -1, 272, 273,
955 274, 275, -1, -1, -1, 58, 59, 281, -1, -1,
956 63, 285, 286, 287, 288, -1, -1, -1, -1, -1,
957 294, 295, -1, -1, 298, 299, 300, 301, 302, -1,
958 304, 305, 41, -1, 308, 44, -1, 311, 312, 313,
959 93, -1, 272, 273, 274, 275, -1, -1, -1, 58,
960 59, 281, -1, -1, 63, 285, 286, 287, 288, -1,
961 -1, -1, -1, -1, 294, 295, -1, -1, 298, 299,
962 300, 301, 302, 41, 304, 305, 44, -1, 308, -1,
963 -1, 311, 312, 313, 93, -1, -1, -1, -1, -1,
964 58, 59, 281, -1, -1, 63, 285, 286, 287, 288,
965 -1, -1, -1, -1, -1, -1, -1, -1, -1, 298,
966 299, 300, 301, 302, -1, 304, 305, -1, -1, 308,
967 -1, -1, 311, 312, 313, 93, 272, 273, 274, 275,
968 -1, -1, -1, -1, -1, 281, -1, -1, -1, 285,
969 286, 287, 288, -1, -1, -1, -1, -1, 294, 295,
970 -1, -1, 298, 299, 300, 301, 302, -1, 304, 305,
971 -1, -1, 308, -1, -1, 311, 312, 313, 272, 273,
972 274, 275, -1, -1, -1, -1, -1, 281, -1, -1,
973 -1, 285, 286, 287, 288, 41, -1, -1, 44, -1,
974 294, 295, -1, -1, 298, 299, 300, 301, 302, -1,
975 304, 305, 58, 59, 308, -1, -1, 311, 312, 313,
976 -1, -1, -1, -1, -1, -1, -1, -1, -1, 272,
977 273, 274, 275, -1, -1, -1, -1, -1, 281, -1,
978 -1, -1, 285, 286, 287, 288, -1, 93, -1, -1,
979 -1, 294, 295, -1, -1, 298, 299, 300, 301, 302,
980 -1, 304, 305, -1, -1, 308, -1, -1, 311, 312,
981 313, -1, -1, 272, 273, 274, 275, -1, -1, -1,
982 -1, -1, 281, -1, -1, -1, 285, 286, 287, 288,
983 -1, -1, -1, -1, -1, 294, 295, -1, -1, 298,
984 299, 300, 301, 302, 41, 304, 305, 44, -1, 308,
985 -1, -1, -1, -1, 272, 273, 274, 275, -1, -1,
986 -1, 58, 59, 281, -1, -1, 63, 285, 286, 287,
987 288, -1, -1, -1, -1, -1, 294, 295, -1, -1,
988 298, 299, 300, 301, 302, 41, 304, 305, 44, -1,
989 308, -1, -1, -1, -1, -1, 93, -1, -1, -1,
990 -1, -1, 58, 59, -1, -1, -1, 63, -1, -1,
991 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
992 -1, 41, -1, -1, 44, -1, -1, -1, -1, -1,
993 -1, -1, -1, -1, -1, -1, -1, 93, 58, 59,
994 -1, -1, -1, 63, -1, -1, -1, -1, -1, -1,
995 -1, -1, -1, -1, -1, -1, -1, 41, -1, -1,
996 44, -1, -1, -1, -1, -1, 272, 273, 274, 275,
997 -1, -1, -1, 93, 58, 59, -1, -1, -1, 63,
998 -1, -1, -1, -1, -1, -1, -1, -1, 294, 295,
999 -1, -1, -1, 41, -1, -1, 44, -1, -1, -1,
1000 -1, -1, -1, -1, -1, -1, -1, -1, -1, 93,
1001 58, 59, -1, -1, -1, 63, -1, -1, -1, -1,
1002 -1, -1, -1, -1, -1, -1, -1, -1, -1, 41,
1003 -1, -1, 44, -1, -1, -1, -1, -1, -1, -1,
1004 -1, -1, -1, -1, -1, 93, 58, 59, -1, -1,
1005 -1, 63, -1, -1, -1, -1, -1, -1, -1, -1,
1006 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1007 -1, -1, -1, -1, -1, 272, 273, 274, 275, -1,
1008 -1, 93, -1, -1, 281, -1, -1, -1, 285, 286,
1009 287, 288, -1, -1, -1, -1, -1, 294, 295, -1,
1010 -1, 298, 299, 300, 301, 302, 41, 304, 305, 44,
1011 -1, -1, -1, -1, -1, -1, 272, 273, 274, 275,
1012 -1, -1, -1, 58, 59, 281, -1, -1, 63, 285,
1013 286, 287, 288, -1, -1, -1, -1, -1, 294, 295,
1014 -1, -1, 298, 299, 300, 301, 302, -1, 304, 305,
1015 -1, -1, 272, 273, 274, 275, -1, -1, 93, -1,
1016 -1, 281, -1, -1, -1, 285, 286, 287, 288, -1,
1017 -1, -1, -1, -1, 294, 295, -1, -1, 298, 299,
1018 300, 301, 302, -1, 304, 305, -1, -1, 272, 273,
1019 274, 275, -1, -1, -1, -1, -1, 281, -1, -1,
1020 -1, 285, 286, 287, 288, -1, -1, -1, -1, -1,
1021 294, 295, -1, -1, 298, 299, 300, 301, 302, -1,
1022 304, 305, -1, -1, 272, 273, 274, 275, -1, -1,
1023 -1, -1, -1, 281, -1, -1, -1, 285, 286, 287,
1024 288, -1, -1, -1, -1, -1, 294, 295, -1, -1,
1025 298, 299, 300, 301, 302, -1, 304, 305, -1, -1,
1026 272, 273, 274, 275, -1, -1, -1, -1, -1, 281,
1027 -1, -1, -1, 285, 286, 287, 288, 41, -1, -1,
1028 44, -1, 294, 295, -1, -1, 298, 299, 300, 301,
1029 302, -1, 304, 305, 58, 59, -1, -1, -1, 63,
1030 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1031 41, -1, -1, 44, -1, -1, -1, -1, -1, -1,
1032 -1, -1, -1, -1, -1, -1, -1, 58, 59, 93,
1033 -1, -1, 63, -1, -1, -1, -1, 272, 273, 274,
1034 275, -1, -1, -1, -1, -1, 281, -1, -1, -1,
1035 285, 286, 287, 288, 41, -1, -1, 44, -1, 294,
1036 295, -1, 93, 298, 299, 300, 301, 302, -1, 304,
1037 305, 58, 59, -1, -1, -1, 63, -1, -1, -1,
1038 -1, -1, -1, -1, -1, -1, -1, 41, -1, -1,
1039 44, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1040 -1, -1, -1, -1, 58, 59, 93, -1, -1, 63,
1041 -1, -1, -1, -1, -1, -1, -1, -1, 41, -1,
1042 -1, 44, -1, -1, -1, -1, -1, -1, -1, -1,
1043 -1, -1, -1, -1, -1, 58, 59, -1, -1, 93,
1044 63, -1, -1, -1, -1, -1, -1, -1, -1, 41,
1045 -1, -1, 44, -1, -1, -1, -1, -1, -1, -1,
1046 -1, -1, -1, -1, -1, -1, 58, 59, -1, -1,
1047 93, 63, -1, -1, -1, -1, -1, -1, -1, -1,
1048 41, -1, -1, 44, -1, -1, -1, -1, -1, -1,
1049 -1, -1, -1, -1, -1, -1, 41, 58, 59, 44,
1050 -1, 93, 63, -1, -1, -1, -1, -1, 272, 273,
1051 274, 275, -1, 58, 59, -1, -1, 281, 63, -1,
1052 -1, 285, 286, 287, 288, -1, -1, -1, -1, -1,
1053 294, 295, 93, -1, 298, 299, 300, 301, 302, -1,
1054 304, 272, 273, 274, 275, -1, -1, -1, 93, -1,
1055 281, -1, -1, -1, 285, 286, -1, 288, 41, -1,
1056 -1, 44, -1, 294, 295, -1, -1, 298, 299, 300,
1057 301, 302, -1, 304, 41, 58, 59, 44, -1, -1,
1058 63, -1, -1, -1, -1, 272, 273, 274, 275, -1,
1059 -1, 58, 59, -1, 281, -1, 63, -1, 285, 286,
1060 -1, -1, -1, -1, -1, -1, -1, 294, 295, -1,
1061 93, 298, 299, 300, 301, 302, -1, 304, 272, 273,
1062 274, 275, -1, -1, -1, -1, 93, 281, -1, -1,
1063 -1, 285, 286, -1, -1, -1, -1, -1, -1, 41,
1064 294, 295, 44, -1, 298, 299, 300, 301, 302, 272,
1065 273, 274, 275, -1, -1, -1, 58, 59, 281, -1,
1066 -1, 63, 285, 286, -1, -1, -1, -1, -1, -1,
1067 -1, 294, 295, -1, -1, 298, 299, 300, 301, 302,
1068 272, 273, 274, 275, -1, -1, -1, -1, -1, 281,
1069 -1, 93, -1, 285, 286, -1, -1, -1, -1, -1,
1070 -1, -1, 294, 295, -1, -1, 298, 299, 300, 301,
1071 302, 272, 273, 274, 275, -1, -1, -1, -1, -1,
1072 281, -1, -1, -1, -1, 286, -1, 272, 273, 274,
1073 275, -1, -1, 294, 295, -1, 281, 298, 299, 300,
1074 301, 302, -1, -1, -1, -1, -1, -1, -1, 294,
1075 295, -1, -1, 298, 299, 300, 301, 302, -1, -1,
1076 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1077 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1078 -1, -1, -1, -1, -1, -1, -1, -1, -1, 272,
1079 273, 274, 275, -1, -1, -1, -1, -1, 281, -1,
1080 -1, -1, -1, -1, -1, 272, 273, 274, 275, -1,
1081 -1, 294, 295, -1, 281, 298, 299, 300, 301, 302,
1082 -1, -1, 30, -1, -1, -1, -1, 294, 295, -1,
1083 38, 298, 299, 300, 301, 43, 44, -1, -1, -1,
1084 -1, -1, 50, 51, 52, 53, 54, 55, -1, -1,
1085 58, 59, -1, -1, -1, -1, -1, -1, -1, -1,
1086 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1087 272, 273, 274, 275, -1, -1, -1, -1, -1, 281,
1088 -1, -1, 90, -1, -1, -1, -1, -1, -1, -1,
1089 -1, -1, 294, 295, -1, -1, 298, 299, 300, -1,
1090 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1091 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1092 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1093 -1, -1, -1, -1, -1, 143, -1, -1, -1, -1,
1094 -1, -1, -1, 151, 152, 153, 154, 155, 156, 157,
1095 158, 159, 160, 161, 162, 163, 164, -1, -1, -1,
1096 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1097 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1098 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1099 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1100 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1101 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1102 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1103 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1104 -1, -1, -1, -1, -1, -1, -1, -1, 256, -1,
1105 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1106 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1107 -1, -1, -1, -1, -1, -1, 284,
1113 #define YYMAXTOKEN 313
1116 "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,
1117 "'!'",0,0,"'$'","'%'","'&'",0,"'('","')'","'*'","'+'","','","'-'",0,0,0,0,0,0,0,
1118 0,0,0,0,0,"':'","';'",0,0,0,"'?'","'@'",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1119 0,0,0,0,0,0,"'['",0,"']'",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1120 0,0,"'{'",0,"'}'","'~'",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1121 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1122 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1123 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",
1124 "PMFUNC","PRIVATEREF","FUNC0SUB","UNIOPSUB","LSTOPSUB","LABEL","FORMAT","SUB",
1125 "ANONSUB","PACKAGE","USE","WHILE","UNTIL","IF","UNLESS","ELSE","ELSIF",
1126 "CONTINUE","FOR","LOOPEX","DOTDOT","FUNC0","FUNC1","FUNC","RELOP","EQOP",
1127 "MULOP","ADDOP","DOLSHARP","DO","LOCAL","HASHBRACK","NOAMP","OROP","ANDOP",
1128 "NOTOP","LSTOP","ASSIGNOP","OROR","ANDAND","BITOROP","BITANDOP","UNIOP",
1129 "SHIFTOP","MATCHOP","UMINUS","REFGEN","POWOP","PREINC","PREDEC","POSTINC",
1135 "prog : $$1 lineseq",
1136 "block : '{' remember lineseq '}'",
1139 "lineseq : lineseq decl",
1140 "lineseq : lineseq line",
1141 "line : label cond",
1144 "line : label sideff ';'",
1147 "sideff : expr IF expr",
1148 "sideff : expr UNLESS expr",
1149 "sideff : expr WHILE expr",
1150 "sideff : expr UNTIL expr",
1152 "else : ELSE block",
1153 "else : ELSIF '(' expr ')' block else",
1154 "cond : IF '(' expr ')' block else",
1155 "cond : UNLESS '(' expr ')' block else",
1156 "cond : IF block block else",
1157 "cond : UNLESS block block else",
1159 "cont : CONTINUE block",
1160 "loop : label WHILE '(' texpr ')' block cont",
1161 "loop : label UNTIL '(' expr ')' block cont",
1162 "loop : label WHILE block block cont",
1163 "loop : label UNTIL block block cont",
1164 "loop : label FOR scalar '(' expr ')' block cont",
1165 "loop : label FOR '(' expr ')' block cont",
1166 "loop : label FOR '(' nexpr ';' texpr ';' nexpr ')' block",
1167 "loop : label block cont",
1178 "format : FORMAT startsub WORD block",
1179 "format : FORMAT startsub block",
1180 "subrout : SUB startsub WORD proto block",
1181 "subrout : SUB startsub WORD proto ';'",
1185 "package : PACKAGE WORD ';'",
1186 "package : PACKAGE ';'",
1187 "use : USE startsub WORD WORD listexpr ';'",
1188 "expr : expr ANDOP expr",
1189 "expr : expr OROP expr",
1191 "argexpr : argexpr ','",
1192 "argexpr : argexpr ',' term",
1194 "listop : LSTOP indirob argexpr",
1195 "listop : FUNC '(' indirob expr ')'",
1196 "listop : term ARROW method '(' listexprcom ')'",
1197 "listop : METHOD indirob listexpr",
1198 "listop : FUNCMETH indirob '(' listexprcom ')'",
1199 "listop : LSTOP listexpr",
1200 "listop : FUNC '(' listexprcom ')'",
1201 "listop : LSTOPSUB startsub block listexpr",
1204 "term : term ASSIGNOP term",
1205 "term : term POWOP term",
1206 "term : term MULOP term",
1207 "term : term ADDOP term",
1208 "term : term SHIFTOP term",
1209 "term : term RELOP term",
1210 "term : term EQOP term",
1211 "term : term BITANDOP term",
1212 "term : term BITOROP term",
1213 "term : term DOTDOT term",
1214 "term : term ANDAND term",
1215 "term : term OROR term",
1216 "term : term '?' term ':' term",
1217 "term : term MATCHOP term",
1222 "term : REFGEN term",
1223 "term : term POSTINC",
1224 "term : term POSTDEC",
1225 "term : PREINC term",
1226 "term : PREDEC term",
1227 "term : LOCAL term",
1228 "term : '(' expr ')'",
1230 "term : '[' expr ']'",
1232 "term : HASHBRACK expr ';' '}'",
1233 "term : HASHBRACK ';' '}'",
1234 "term : ANONSUB startsub proto block",
1236 "term : star '{' expr ';' '}'",
1238 "term : scalar '[' expr ']'",
1239 "term : term ARROW '[' expr ']'",
1240 "term : term '[' expr ']'",
1244 "term : scalar '{' expr ';' '}'",
1245 "term : term ARROW '{' expr ';' '}'",
1246 "term : term '{' expr ';' '}'",
1247 "term : '(' expr ')' '[' expr ']'",
1248 "term : '(' ')' '[' expr ']'",
1249 "term : ary '[' expr ']'",
1250 "term : ary '{' expr ';' '}'",
1253 "term : amper '(' ')'",
1254 "term : amper '(' expr ')'",
1255 "term : NOAMP WORD listexpr",
1258 "term : DO WORD '(' ')'",
1259 "term : DO WORD '(' expr ')'",
1260 "term : DO scalar '(' ')'",
1261 "term : DO scalar '(' expr ')'",
1263 "term : LOOPEX term",
1264 "term : NOTOP argexpr",
1266 "term : UNIOP block",
1267 "term : UNIOP term",
1268 "term : UNIOPSUB term",
1270 "term : FUNC0 '(' ')'",
1272 "term : FUNC1 '(' ')'",
1273 "term : FUNC1 '(' expr ')'",
1274 "term : PMFUNC '(' term ')'",
1275 "term : PMFUNC '(' term ',' term ')'",
1279 "listexpr : argexpr",
1281 "listexprcom : expr",
1282 "listexprcom : expr ','",
1283 "amper : '&' indirob",
1284 "scalar : '$' indirob",
1285 "ary : '@' indirob",
1286 "hsh : '%' indirob",
1287 "arylen : DOLSHARP indirob",
1288 "star : '*' indirob",
1292 "indirob : PRIVATEREF",
1295 #define yyclearin (yychar=(-1))
1296 #define yyerrok (yyerrflag=0)
1299 #define YYMAXDEPTH YYSTACKSIZE
1303 #define YYSTACKSIZE YYMAXDEPTH
1305 #define YYSTACKSIZE 500
1306 #define YYMAXDEPTH 500
1317 #line 1388 "y.tab.c"
1318 #define YYABORT goto yyabort
1319 #define YYACCEPT goto yyaccept
1320 #define YYERROR goto yyerrlab
1337 struct ysv* ysave = (struct ysv*)ptr;
1338 if (ysave->yyss) safefree((char *)ysave->yyss);
1339 if (ysave->yyvs) safefree((char *)ysave->yyvs);
1340 yydebug = ysave->oldyydebug;
1341 yynerrs = ysave->oldyynerrs;
1342 yyerrflag = ysave->oldyyerrflag;
1343 yychar = ysave->oldyychar;
1344 yyval = ysave->oldyyval;
1345 yylval = ysave->oldyylval;
1346 safefree((char *)ysave);
1352 register int yym, yyn, yystate;
1353 register short *yyssp;
1354 register YYSTYPE *yyvsp;
1357 unsigned yystacksize = YYSTACKSIZE;
1361 extern char *getenv();
1364 struct ysv *ysave = (struct ysv*)safemalloc(sizeof(struct ysv));
1365 SAVEDESTRUCTOR(yydestruct, ysave);
1366 ysave->oldyydebug = yydebug;
1367 ysave->oldyynerrs = yynerrs;
1368 ysave->oldyyerrflag = yyerrflag;
1369 ysave->oldyychar = yychar;
1370 ysave->oldyyval = yyval;
1371 ysave->oldyylval = yylval;
1374 if (yys = getenv("YYDEBUG"))
1377 if (yyn >= '0' && yyn <= '9')
1378 yydebug = yyn - '0';
1387 ** Initialize private stacks (yyparse may be called from an action)
1389 ysave->yyss = yyss = (short*)safemalloc(yystacksize*sizeof(short));
1390 ysave->yyvs = yyvs = (YYSTYPE*)safemalloc(yystacksize*sizeof(YYSTYPE));
1396 *yyssp = yystate = 0;
1399 if (yyn = yydefred[yystate]) goto yyreduce;
1402 if ((yychar = yylex()) < 0) yychar = 0;
1407 if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
1408 if (!yys) yys = "illegal-symbol";
1409 fprintf(Perl_debug_log, "yydebug: state %d, reading %d (%s)\n", yystate,
1414 if ((yyn = yysindex[yystate]) && (yyn += yychar) >= 0 &&
1415 yyn <= YYTABLESIZE && yycheck[yyn] == yychar)
1419 fprintf(Perl_debug_log, "yydebug: state %d, shifting to state %d\n",
1420 yystate, yytable[yyn]);
1422 if (yyssp >= yyss + yystacksize - 1)
1425 ** reallocate and recover. Note that pointers
1426 ** have to be reset, or bad things will happen
1428 int yyps_index = (yyssp - yyss);
1429 int yypv_index = (yyvsp - yyvs);
1430 yystacksize += YYSTACKSIZE;
1431 ysave->yyvs = yyvs =
1432 (YYSTYPE*)realloc((char*)yyvs,yystacksize * sizeof(YYSTYPE));
1433 ysave->yyss = yyss =
1434 (short*)realloc((char*)yyss,yystacksize * sizeof(short));
1437 yyssp = yyss + yyps_index;
1438 yyvsp = yyvs + yypv_index;
1440 *++yyssp = yystate = yytable[yyn];
1443 if (yyerrflag > 0) --yyerrflag;
1446 if ((yyn = yyrindex[yystate]) && (yyn += yychar) >= 0 &&
1447 yyn <= YYTABLESIZE && yycheck[yyn] == yychar)
1452 if (yyerrflag) goto yyinrecovery;
1457 yyerror("syntax error");
1469 if ((yyn = yysindex[*yyssp]) && (yyn += YYERRCODE) >= 0 &&
1470 yyn <= YYTABLESIZE && yycheck[yyn] == YYERRCODE)
1474 fprintf(Perl_debug_log,
1475 "yydebug: state %d, error recovery shifting to state %d\n",
1476 *yyssp, yytable[yyn]);
1478 if (yyssp >= yyss + yystacksize - 1)
1481 ** reallocate and recover. Note that pointers
1482 ** have to be reset, or bad things will happen
1484 int yyps_index = (yyssp - yyss);
1485 int yypv_index = (yyvsp - yyvs);
1486 yystacksize += YYSTACKSIZE;
1487 ysave->yyvs = yyvs = (YYSTYPE*)realloc((char*)yyvs,
1488 yystacksize * sizeof(YYSTYPE));
1489 ysave->yyss = yyss = (short*)realloc((char*)yyss,
1490 yystacksize * sizeof(short));
1493 yyssp = yyss + yyps_index;
1494 yyvsp = yyvs + yypv_index;
1496 *++yyssp = yystate = yytable[yyn];
1504 fprintf(Perl_debug_log,
1505 "yydebug: error recovery discarding state %d\n",
1508 if (yyssp <= yyss) goto yyabort;
1516 if (yychar == 0) goto yyabort;
1521 if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
1522 if (!yys) yys = "illegal-symbol";
1523 fprintf(Perl_debug_log,
1524 "yydebug: state %d, error recovery discards token %d (%s)\n",
1525 yystate, yychar, yys);
1534 fprintf(Perl_debug_log, "yydebug: state %d, reducing by rule %d (%s)\n",
1535 yystate, yyn, yyrule[yyn]);
1538 yyval = yyvsp[1-yym];
1544 #if defined(YYDEBUG) && defined(DEBUGGING)
1545 yydebug = (debug & 1);
1552 { newPROG(yyvsp[0].opval); }
1556 { yyval.opval = block_end(yyvsp[-3].ival,yyvsp[-2].ival,yyvsp[-1].opval); }
1560 { yyval.ival = block_start(); }
1564 { yyval.opval = Nullop; }
1568 { yyval.opval = yyvsp[-1].opval; }
1572 { yyval.opval = append_list(OP_LINESEQ,
1573 (LISTOP*)yyvsp[-1].opval, (LISTOP*)yyvsp[0].opval);
1574 pad_reset_pending = TRUE;
1575 if (yyvsp[-1].opval && yyvsp[0].opval) hints |= HINT_BLOCK_SCOPE; }
1579 { yyval.opval = newSTATEOP(0, yyvsp[-1].pval, yyvsp[0].opval); }
1583 { if (yyvsp[-1].pval != Nullch) {
1584 yyval.opval = newSTATEOP(0, yyvsp[-1].pval, newOP(OP_NULL, 0));
1587 yyval.opval = Nullop;
1594 { yyval.opval = newSTATEOP(0, yyvsp[-2].pval, yyvsp[-1].opval);
1599 { yyval.opval = Nullop; }
1603 { yyval.opval = yyvsp[0].opval; }
1607 { yyval.opval = newLOGOP(OP_AND, 0, yyvsp[0].opval, yyvsp[-2].opval); }
1611 { yyval.opval = newLOGOP(OP_OR, 0, yyvsp[0].opval, yyvsp[-2].opval); }
1615 { yyval.opval = newLOOPOP(OPf_PARENS, 1, scalar(yyvsp[0].opval), yyvsp[-2].opval); }
1619 { yyval.opval = newLOOPOP(OPf_PARENS, 1, invert(scalar(yyvsp[0].opval)), yyvsp[-2].opval);}
1623 { yyval.opval = Nullop; }
1627 { yyval.opval = scope(yyvsp[0].opval); }
1631 { copline = yyvsp[-5].ival;
1632 yyval.opval = newSTATEOP(0, 0,
1633 newCONDOP(0, yyvsp[-3].opval, scope(yyvsp[-1].opval), yyvsp[0].opval));
1634 hints |= HINT_BLOCK_SCOPE; }
1638 { copline = yyvsp[-5].ival;
1639 yyval.opval = newCONDOP(0, yyvsp[-3].opval, scope(yyvsp[-1].opval), yyvsp[0].opval); }
1643 { copline = yyvsp[-5].ival;
1644 yyval.opval = newCONDOP(0,
1645 invert(scalar(yyvsp[-3].opval)), scope(yyvsp[-1].opval), yyvsp[0].opval); }
1649 { copline = yyvsp[-3].ival;
1650 deprecate("if BLOCK BLOCK");
1651 yyval.opval = newCONDOP(0, scope(yyvsp[-2].opval), scope(yyvsp[-1].opval), yyvsp[0].opval); }
1655 { copline = yyvsp[-3].ival;
1656 deprecate("unless BLOCK BLOCK");
1657 yyval.opval = newCONDOP(0, invert(scalar(scope(yyvsp[-2].opval))),
1658 scope(yyvsp[-1].opval), yyvsp[0].opval); }
1662 { yyval.opval = Nullop; }
1666 { yyval.opval = scope(yyvsp[0].opval); }
1670 { copline = yyvsp[-5].ival;
1671 yyval.opval = newSTATEOP(0, yyvsp[-6].pval,
1672 newWHILEOP(0, 1, (LOOP*)Nullop,
1673 yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval) ); }
1677 { copline = yyvsp[-5].ival;
1678 yyval.opval = newSTATEOP(0, yyvsp[-6].pval,
1679 newWHILEOP(0, 1, (LOOP*)Nullop,
1680 invert(scalar(yyvsp[-3].opval)), yyvsp[-1].opval, yyvsp[0].opval) ); }
1684 { copline = yyvsp[-3].ival;
1685 yyval.opval = newSTATEOP(0, yyvsp[-4].pval,
1686 newWHILEOP(0, 1, (LOOP*)Nullop,
1687 scope(yyvsp[-2].opval), yyvsp[-1].opval, yyvsp[0].opval) ); }
1691 { copline = yyvsp[-3].ival;
1692 yyval.opval = newSTATEOP(0, yyvsp[-4].pval,
1693 newWHILEOP(0, 1, (LOOP*)Nullop,
1694 invert(scalar(scope(yyvsp[-2].opval))), yyvsp[-1].opval, yyvsp[0].opval)); }
1698 { yyval.opval = newFOROP(0, yyvsp[-7].pval, yyvsp[-6].ival, mod(yyvsp[-5].opval, OP_ENTERLOOP),
1699 yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval); }
1703 { yyval.opval = newFOROP(0, yyvsp[-6].pval, yyvsp[-5].ival, Nullop, yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval); }
1707 { copline = yyvsp[-8].ival;
1708 yyval.opval = append_elem(OP_LINESEQ,
1709 newSTATEOP(0, yyvsp[-9].pval, scalar(yyvsp[-6].opval)),
1710 newSTATEOP(0, yyvsp[-9].pval,
1711 newWHILEOP(0, 1, (LOOP*)Nullop,
1712 scalar(yyvsp[-4].opval), yyvsp[0].opval, scalar(yyvsp[-2].opval)) )); }
1716 { yyval.opval = newSTATEOP(0,
1717 yyvsp[-2].pval, newWHILEOP(0, 1, (LOOP*)Nullop,
1718 Nullop, yyvsp[-1].opval, yyvsp[0].opval)); }
1722 { yyval.opval = Nullop; }
1726 { (void)scan_num("1"); yyval.opval = yylval.opval; }
1730 { yyval.pval = Nullch; }
1750 { newFORM(yyvsp[-2].ival, yyvsp[-1].opval, yyvsp[0].opval); }
1754 { newFORM(yyvsp[-1].ival, Nullop, yyvsp[0].opval); }
1758 { newSUB(yyvsp[-3].ival, yyvsp[-2].opval, yyvsp[-1].opval, yyvsp[0].opval); }
1762 { newSUB(yyvsp[-3].ival, yyvsp[-2].opval, yyvsp[-1].opval, Nullop); expect = XSTATE; }
1766 { yyval.opval = Nullop; }
1770 { yyval.ival = start_subparse(); }
1774 { package(yyvsp[-1].opval); }
1778 { package(Nullop); }
1782 { utilize(yyvsp[-5].ival, yyvsp[-4].ival, yyvsp[-3].opval, yyvsp[-2].opval, yyvsp[-1].opval); }
1786 { yyval.opval = newLOGOP(OP_AND, 0, yyvsp[-2].opval, yyvsp[0].opval); }
1790 { yyval.opval = newLOGOP(yyvsp[-1].ival, 0, yyvsp[-2].opval, yyvsp[0].opval); }
1794 { yyval.opval = yyvsp[-1].opval; }
1798 { yyval.opval = append_elem(OP_LIST, yyvsp[-2].opval, yyvsp[0].opval); }
1802 { yyval.opval = convert(yyvsp[-2].ival, OPf_STACKED,
1803 prepend_elem(OP_LIST, newGVREF(yyvsp[-2].ival,yyvsp[-1].opval), yyvsp[0].opval) ); }
1807 { yyval.opval = convert(yyvsp[-4].ival, OPf_STACKED,
1808 prepend_elem(OP_LIST, newGVREF(yyvsp[-4].ival,yyvsp[-2].opval), yyvsp[-1].opval) ); }
1812 { yyval.opval = convert(OP_ENTERSUB, OPf_STACKED,
1813 append_elem(OP_LIST,
1814 prepend_elem(OP_LIST, yyvsp[-5].opval, yyvsp[-1].opval),
1815 newUNOP(OP_METHOD, 0, yyvsp[-3].opval))); }
1819 { yyval.opval = convert(OP_ENTERSUB, OPf_STACKED,
1820 append_elem(OP_LIST,
1821 prepend_elem(OP_LIST, yyvsp[-1].opval, yyvsp[0].opval),
1822 newUNOP(OP_METHOD, 0, yyvsp[-2].opval))); }
1826 { yyval.opval = convert(OP_ENTERSUB, OPf_STACKED,
1827 append_elem(OP_LIST,
1828 prepend_elem(OP_LIST, yyvsp[-3].opval, yyvsp[-1].opval),
1829 newUNOP(OP_METHOD, 0, yyvsp[-4].opval))); }
1833 { yyval.opval = convert(yyvsp[-1].ival, 0, yyvsp[0].opval); }
1837 { yyval.opval = convert(yyvsp[-3].ival, 0, yyvsp[-1].opval); }
1841 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
1842 append_elem(OP_LIST,
1843 prepend_elem(OP_LIST, newANONSUB(yyvsp[-2].ival, 0, yyvsp[-1].opval), yyvsp[0].opval),
1844 yyvsp[-3].opval)); }
1848 { yyval.opval = newASSIGNOP(OPf_STACKED, yyvsp[-2].opval, yyvsp[-1].ival, yyvsp[0].opval); }
1852 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1856 { if (yyvsp[-1].ival != OP_REPEAT)
1857 scalar(yyvsp[-2].opval);
1858 yyval.opval = newBINOP(yyvsp[-1].ival, 0, yyvsp[-2].opval, scalar(yyvsp[0].opval)); }
1862 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1866 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1870 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1874 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1878 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1882 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1886 { yyval.opval = newRANGE(yyvsp[-1].ival, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval));}
1890 { yyval.opval = newLOGOP(OP_AND, 0, yyvsp[-2].opval, yyvsp[0].opval); }
1894 { yyval.opval = newLOGOP(OP_OR, 0, yyvsp[-2].opval, yyvsp[0].opval); }
1898 { yyval.opval = newCONDOP(0, yyvsp[-4].opval, yyvsp[-2].opval, yyvsp[0].opval); }
1902 { yyval.opval = bind_match(yyvsp[-1].ival, yyvsp[-2].opval, yyvsp[0].opval); }
1906 { yyval.opval = newUNOP(OP_NEGATE, 0, scalar(yyvsp[0].opval)); }
1910 { yyval.opval = yyvsp[0].opval; }
1914 { yyval.opval = newUNOP(OP_NOT, 0, scalar(yyvsp[0].opval)); }
1918 { yyval.opval = newUNOP(OP_COMPLEMENT, 0, scalar(yyvsp[0].opval));}
1922 { yyval.opval = newUNOP(OP_REFGEN, 0, mod(yyvsp[0].opval,OP_REFGEN)); }
1926 { yyval.opval = newUNOP(OP_POSTINC, 0,
1927 mod(scalar(yyvsp[-1].opval), OP_POSTINC)); }
1931 { yyval.opval = newUNOP(OP_POSTDEC, 0,
1932 mod(scalar(yyvsp[-1].opval), OP_POSTDEC)); }
1936 { yyval.opval = newUNOP(OP_PREINC, 0,
1937 mod(scalar(yyvsp[0].opval), OP_PREINC)); }
1941 { yyval.opval = newUNOP(OP_PREDEC, 0,
1942 mod(scalar(yyvsp[0].opval), OP_PREDEC)); }
1946 { yyval.opval = localize(yyvsp[0].opval,yyvsp[-1].ival); }
1950 { yyval.opval = sawparens(yyvsp[-1].opval); }
1954 { yyval.opval = sawparens(newNULLLIST()); }
1958 { yyval.opval = newANONLIST(yyvsp[-1].opval); }
1962 { yyval.opval = newANONLIST(Nullop); }
1966 { yyval.opval = newANONHASH(yyvsp[-2].opval); }
1970 { yyval.opval = newANONHASH(Nullop); }
1974 { yyval.opval = newANONSUB(yyvsp[-2].ival, yyvsp[-1].opval, yyvsp[0].opval); }
1978 { yyval.opval = yyvsp[0].opval; }
1982 { yyval.opval = newBINOP(OP_GELEM, 0, newGVREF(0,yyvsp[-4].opval), yyvsp[-2].opval); }
1986 { yyval.opval = yyvsp[0].opval; }
1990 { yyval.opval = newBINOP(OP_AELEM, 0, oopsAV(yyvsp[-3].opval), scalar(yyvsp[-1].opval)); }
1994 { yyval.opval = newBINOP(OP_AELEM, 0,
1995 ref(newAVREF(yyvsp[-4].opval),OP_RV2AV),
1996 scalar(yyvsp[-1].opval));}
2000 { assertref(yyvsp[-3].opval); yyval.opval = newBINOP(OP_AELEM, 0,
2001 ref(newAVREF(yyvsp[-3].opval),OP_RV2AV),
2002 scalar(yyvsp[-1].opval));}
2006 { yyval.opval = yyvsp[0].opval; }
2010 { yyval.opval = yyvsp[0].opval; }
2014 { yyval.opval = newUNOP(OP_AV2ARYLEN, 0, ref(yyvsp[0].opval, OP_AV2ARYLEN));}
2018 { yyval.opval = newBINOP(OP_HELEM, 0, oopsHV(yyvsp[-4].opval), jmaybe(yyvsp[-2].opval));
2019 expect = XOPERATOR; }
2023 { yyval.opval = newBINOP(OP_HELEM, 0,
2024 ref(newHVREF(yyvsp[-5].opval),OP_RV2HV),
2025 jmaybe(yyvsp[-2].opval));
2026 expect = XOPERATOR; }
2030 { assertref(yyvsp[-4].opval); yyval.opval = newBINOP(OP_HELEM, 0,
2031 ref(newHVREF(yyvsp[-4].opval),OP_RV2HV),
2032 jmaybe(yyvsp[-2].opval));
2033 expect = XOPERATOR; }
2037 { yyval.opval = newSLICEOP(0, yyvsp[-1].opval, yyvsp[-4].opval); }
2041 { yyval.opval = newSLICEOP(0, yyvsp[-1].opval, Nullop); }
2045 { yyval.opval = prepend_elem(OP_ASLICE,
2046 newOP(OP_PUSHMARK, 0),
2047 newLISTOP(OP_ASLICE, 0,
2048 list(yyvsp[-1].opval),
2049 ref(yyvsp[-3].opval, OP_ASLICE))); }
2053 { yyval.opval = prepend_elem(OP_HSLICE,
2054 newOP(OP_PUSHMARK, 0),
2055 newLISTOP(OP_HSLICE, 0,
2056 list(yyvsp[-2].opval),
2057 ref(oopsHV(yyvsp[-4].opval), OP_HSLICE)));
2058 expect = XOPERATOR; }
2062 { yyval.opval = yyvsp[0].opval; }
2066 { yyval.opval = newUNOP(OP_ENTERSUB, 0, scalar(yyvsp[0].opval)); }
2070 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED, scalar(yyvsp[-2].opval)); }
2074 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2075 append_elem(OP_LIST, yyvsp[-1].opval, scalar(yyvsp[-3].opval))); }
2079 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2080 append_elem(OP_LIST, yyvsp[0].opval, scalar(yyvsp[-1].opval))); }
2084 { yyval.opval = newUNOP(OP_DOFILE, 0, scalar(yyvsp[0].opval)); }
2088 { yyval.opval = newUNOP(OP_NULL, OPf_SPECIAL, scope(yyvsp[0].opval)); }
2092 { yyval.opval = newUNOP(OP_ENTERSUB,
2093 OPf_SPECIAL|OPf_STACKED,
2094 prepend_elem(OP_LIST,
2096 (OPpENTERSUB_AMPER<<8),
2097 scalar(yyvsp[-2].opval)
2098 )),Nullop)); dep();}
2102 { yyval.opval = newUNOP(OP_ENTERSUB,
2103 OPf_SPECIAL|OPf_STACKED,
2104 append_elem(OP_LIST,
2107 (OPpENTERSUB_AMPER<<8),
2108 scalar(yyvsp[-3].opval)
2113 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_SPECIAL|OPf_STACKED,
2114 prepend_elem(OP_LIST,
2115 scalar(newCVREF(0,scalar(yyvsp[-2].opval))), Nullop)); dep();}
2119 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_SPECIAL|OPf_STACKED,
2120 prepend_elem(OP_LIST,
2122 scalar(newCVREF(0,scalar(yyvsp[-3].opval))))); dep();}
2126 { yyval.opval = newOP(yyvsp[0].ival, OPf_SPECIAL);
2127 hints |= HINT_BLOCK_SCOPE; }
2131 { yyval.opval = newLOOPEX(yyvsp[-1].ival,yyvsp[0].opval); }
2135 { yyval.opval = newUNOP(OP_NOT, 0, scalar(yyvsp[0].opval)); }
2139 { yyval.opval = newOP(yyvsp[0].ival, 0); }
2143 { yyval.opval = newUNOP(yyvsp[-1].ival, 0, yyvsp[0].opval); }
2147 { yyval.opval = newUNOP(yyvsp[-1].ival, 0, yyvsp[0].opval); }
2151 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2152 append_elem(OP_LIST, yyvsp[0].opval, scalar(yyvsp[-1].opval))); }
2156 { yyval.opval = newOP(yyvsp[0].ival, 0); }
2160 { yyval.opval = newOP(yyvsp[-2].ival, 0); }
2164 { yyval.opval = newUNOP(OP_ENTERSUB, 0,
2165 scalar(yyvsp[0].opval)); }
2169 { yyval.opval = newOP(yyvsp[-2].ival, OPf_SPECIAL); }
2173 { yyval.opval = newUNOP(yyvsp[-3].ival, 0, yyvsp[-1].opval); }
2177 { yyval.opval = pmruntime(yyvsp[-3].opval, yyvsp[-1].opval, Nullop); }
2181 { yyval.opval = pmruntime(yyvsp[-5].opval, yyvsp[-3].opval, yyvsp[-1].opval); }
2185 { yyval.opval = Nullop; }
2189 { yyval.opval = yyvsp[0].opval; }
2193 { yyval.opval = Nullop; }
2197 { yyval.opval = yyvsp[0].opval; }
2201 { yyval.opval = yyvsp[-1].opval; }
2205 { yyval.opval = newCVREF(yyvsp[-1].ival,yyvsp[0].opval); }
2209 { yyval.opval = newSVREF(yyvsp[0].opval); }
2213 { yyval.opval = newAVREF(yyvsp[0].opval); }
2217 { yyval.opval = newHVREF(yyvsp[0].opval); }
2221 { yyval.opval = newAVREF(yyvsp[0].opval); }
2225 { yyval.opval = newGVREF(0,yyvsp[0].opval); }
2229 { yyval.opval = scalar(yyvsp[0].opval); }
2233 { yyval.opval = scalar(yyvsp[0].opval); }
2237 { yyval.opval = scope(yyvsp[0].opval); }
2241 { yyval.opval = yyvsp[0].opval; }
2243 #line 2230 "y.tab.c"
2249 if (yystate == 0 && yym == 0)
2253 fprintf(Perl_debug_log,
2254 "yydebug: after reduction, shifting from state 0 to state %d\n",
2262 if ((yychar = yylex()) < 0) yychar = 0;
2267 if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
2268 if (!yys) yys = "illegal-symbol";
2269 fprintf(Perl_debug_log, "yydebug: state %d, reading %d (%s)\n",
2270 YYFINAL, yychar, yys);
2274 if (yychar == 0) goto yyaccept;
2277 if ((yyn = yygindex[yym]) && (yyn += yystate) >= 0 &&
2278 yyn <= YYTABLESIZE && yycheck[yyn] == yystate)
2279 yystate = yytable[yyn];
2281 yystate = yydgoto[yym];
2284 fprintf(Perl_debug_log,
2285 "yydebug: after reduction, shifting from state %d to state %d\n",
2288 if (yyssp >= yyss + yystacksize - 1)
2291 ** reallocate and recover. Note that pointers
2292 ** have to be reset, or bad things will happen
2294 int yyps_index = (yyssp - yyss);
2295 int yypv_index = (yyvsp - yyvs);
2296 yystacksize += YYSTACKSIZE;
2297 ysave->yyvs = yyvs =
2298 (YYSTYPE*)realloc((char*)yyvs,yystacksize * sizeof(YYSTYPE));
2299 ysave->yyss = yyss =
2300 (short*)realloc((char*)yyss,yystacksize * sizeof(short));
2303 yyssp = yyss + yyps_index;
2304 yyvsp = yyvs + yypv_index;
2310 yyerror("Out of memory for yacc stack");