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, 33, 33, 34, 34, 34,
34 2, 2, 43, 23, 18, 19, 20, 21, 22, 35,
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, 1,
52 2, 2, 1, 2, 2, 2, 1, 3, 1, 3,
53 4, 4, 6, 1, 1, 0, 1, 0, 1, 2,
54 1, 1, 1, 2, 2, 2, 2, 2, 2, 1,
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, 154, 0, 0, 129, 0, 149, 0,
61 54, 54, 0, 0, 0, 0, 0, 0, 0, 0,
62 0, 0, 0, 0, 0, 0, 0, 161, 162, 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, 155, 50,
66 0, 56, 0, 61, 0, 7, 170, 173, 172, 171,
67 0, 0, 0, 0, 0, 0, 4, 4, 4, 4,
68 4, 4, 0, 0, 0, 0, 0, 144, 0, 0,
69 0, 0, 76, 0, 168, 0, 135, 0, 0, 0,
70 0, 0, 164, 0, 0, 0, 0, 0, 0, 0,
71 0, 0, 0, 109, 0, 165, 166, 167, 169, 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, 148, 150, 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, 81, 0, 0, 0, 0, 0, 0,
82 0, 131, 0, 0, 60, 59, 52, 0, 3, 0,
83 152, 0, 0, 112, 0, 41, 0, 42, 0, 0,
84 0, 0, 163, 0, 0, 35, 40, 0, 0, 0,
85 151, 160, 77, 0, 136, 0, 138, 0, 110, 0,
86 0, 0, 0, 0, 0, 0, 118, 0, 116, 0,
87 127, 0, 132, 0, 75, 0, 79, 0, 0, 0,
88 0, 0, 0, 0, 0, 72, 137, 139, 126, 0,
89 124, 0, 0, 117, 0, 122, 128, 114, 64, 153,
90 6, 0, 0, 0, 0, 0, 0, 0, 0, 125,
91 123, 73, 7, 27, 28, 0, 0, 23, 24, 0,
92 31, 0, 0, 0, 21, 0, 0, 0, 30, 5,
93 0, 29, 0, 0, 32, 0, 22,
95 short yydgoto[] = { 1,
96 9, 66, 10, 18, 95, 17, 86, 333, 89, 322,
97 3, 11, 12, 68, 338, 260, 70, 71, 72, 73,
98 74, 75, 76, 266, 78, 267, 256, 258, 261, 269,
99 257, 259, 113, 197, 91, 79, 235, 81, 83, 178,
100 247, 142, 264, 13, 2, 14, 15, 16, 85, 253,
102 short yysindex[] = { 0,
103 0, 0, -126, 0, 0, 0, -58, 0, 0, 0,
104 0, 0, 827, 0, 0, 0, -242, -235, -21, 0,
105 0, 0, 0, 0, -33, -33, 0, 11, 0, 1816,
106 0, 0, 13, 15, 30, 45, -29, 1816, 67, 68,
107 70, 1002, 939, -33, 1236, 1292, -227, 0, 0, -33,
108 1816, 1816, 1816, 1816, 1816, 1816, 1173, 0, 1816, 1816,
109 1348, -33, -33, -33, -33, 1816, -220, 0, -169, 3558,
110 -78, -59, 0, 0, -62, 73, 42, 65, 0, 0,
111 -5, 0, -149, 0, -134, 0, 0, 0, 0, 0,
112 1816, 97, 1816, 1847, -5, -149, 0, 0, 0, 0,
113 0, 0, 99, 3558, 105, 1407, 939, 0, 1847, 0,
114 -78, 65, 0, 1816, 0, 107, 0, 1847, -23, 36,
115 -51, 1816, 0, 65, -82, -82, -82, -54, -54, 57,
116 -27, -82, -82, 0, -87, 0, 0, 0, 0, 1847,
117 -5, 0, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816,
118 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816,
119 1816, 1816, 1816, 0, 0, -32, 1816, 1816, 1816, 1816,
120 1816, 1816, 1582, 0, 1816, 0, 0, -36, -108, 665,
121 0, 1816, 209, 0, -5, 1816, 1816, 1816, 1816, 114,
122 1641, 0, 0, 0, -16, 6, 111, 1816, 65, 1697,
123 1753, 0, 38, 0, 1816, 74, 0, 0, -251, -251,
124 0, -251, -251, -131, 0, 18, 3516, 1847, 1089, 382,
125 92, 3558, 3594, 3689, 369, 1060, 482, 285, -82, -82,
126 1816, 0, 1816, 0, 128, 33, 23, 58, 25, 69,
127 27, 0, -14, 3558, 0, 0, 0, 1816, 0, 131,
128 0, 1816, 1816, 0, -251, 0, 134, 0, 136, -251,
129 139, 141, 0, 144, -169, 0, 0, 156, 135, 1816,
130 0, 0, 0, -12, 0, -10, 0, 1, 0, 71,
131 1816, 75, 1816, 29, 86, 1816, 0, 76, 0, 78,
132 0, 81, 0, 148, 0, 339, 0, 85, 85, 85,
133 85, 1816, 85, 1816, 168, 0, 0, 0, 0, 88,
134 0, 3653, 89, 0, 172, 0, 0, 0, 0, 0,
135 0, -220, -220, -178, -178, 175, -220, 160, 85, 0,
136 0, 0, 0, 0, 0, 85, 203, 0, 0, 85,
137 0, 1641, -220, 688, 0, 1816, -220, 180, 0, 0,
138 196, 0, 85, 85, 0, -178, 0,
140 short yyrindex[] = { 0,
141 0, 0, 269, 0, 0, 0, 0, 0, 0, 0,
142 0, 0, 0, 0, 0, 0, 122, 0, 0, 0,
143 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
144 0, 0, 0, 0, 0, 0, 0, 2076, 1906, 0,
145 0, 2716, 2784, 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, 79, 0, -7, 181,
148 2827, 2871, 0, 0, 2142, 1965, 0, 21, 0, 0,
149 0, 0, -31, 0, 0, 0, 0, 0, 0, 0,
150 2201, 0, 0, 3299, 0, 129, 0, 0, 0, 0,
151 0, 0, 0, 197, 0, 0, 213, 0, 3343, 444,
152 545, 2312, 0, 0, 0, 2028, 0, 3386, 2827, 0,
153 0, 2201, 0, 2437, 2914, 2952, 2990, 606, 723, 2480,
154 0, 3063, 3107, 0, 0, 0, 0, 0, 0, 3424,
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, 0, 0,
158 0, 0, 0, 0, 2548, 0, 0, 0, 0, 883,
159 0, 213, 0, 0, 0, 234, 0, 0, 0, 0,
160 218, 0, 0, 0, 0, 239, 0, 0, 2591, 0,
161 0, 0, 0, 0, 0, 2635, 0, 0, -2, 8,
162 0, 22, 24, 525, 0, 0, 3579, 1448, 1504, 3226,
163 -39, 338, 0, 2490, 3535, 3498, 3462, 3262, 3150, 3188,
164 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
165 0, 0, 0, 1870, 0, 0, 0, 230, 0, 0,
166 0, 0, 2201, 0, 37, 0, 0, 0, 0, 251,
167 0, 0, 0, 0, 61, 0, 0, 0, 0, 0,
168 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
169 0, 0, 0, 0, 0, 213, 0, 0, 0, 0,
170 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
171 0, 0, 0, 238, 0, 0, 0, 0, 0, 0,
172 0, 718, 0, 0, 0, 0, 0, 0, 0, 0,
173 0, 79, 79, 153, 153, 0, 79, 0, 0, 0,
174 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
175 0, 260, 79, 883, 0, 0, 79, 0, 0, 0,
176 0, 0, 0, 0, 0, 153, 0,
178 short yygindex[] = { 0,
179 0, 0, 0, 300, 278, 0, -26, 0, 892, 1004,
180 -76, 0, 0, 0, -313, -13, 3871, 3724, 0, 0,
181 0, 0, 0, 304, -25, 0, 0, 169, -175, -8,
182 53, 152, 384, -161, 901, 0, 0, 0, 0, 281,
183 0, -287, 0, 0, 0, 0, 0, 0, 0, 0,
185 #define YYTABLESIZE 4154
186 short yytable[] = { 69,
187 20, 85, 62, 62, 85, 207, 62, 203, 167, 180,
188 102, 339, 169, 206, 80, 268, 201, 112, 85, 85,
189 250, 82, 245, 85, 271, 124, 293, 57, 306, 122,
190 307, 171, 121, 15, 334, 335, 167, 84, 18, 341,
191 149, 308, 357, 131, 168, 147, 148, 135, 38, 272,
192 93, 15, 97, 85, 98, 349, 18, 141, 233, 352,
193 172, 67, 16, 170, 17, 112, 38, 169, 149, 99,
194 186, 187, 188, 189, 190, 191, 282, 37, 25, 67,
195 16, 288, 17, 290, 100, 292, 23, 313, 199, 23,
196 231, 57, 195, 196, 305, 37, 112, 336, 337, 168,
197 174, 39, 143, 144, 145, 146, 105, 106, 175, 107,
198 177, 25, 173, 67, 25, 25, 25, 23, 25, 15,
199 25, 25, 179, 25, 315, 287, 326, 147, 148, 209,
200 210, 212, 213, 214, 215, 216, 182, 25, 192, 4,
201 5, 6, 25, 7, 8, 193, 200, 205, 248, 62,
202 289, 273, 20, 236, 237, 238, 239, 240, 241, 243,
203 202, 291, 279, 309, 281, 270, 148, 286, 196, 25,
204 351, 295, 255, 210, 298, 210, 299, 265, 314, 300,
205 330, 301, 167, 302, 274, 20, 276, 278, 20, 20,
206 20, 280, 20, 304, 20, 20, 303, 20, 19, 311,
207 316, 25, 317, 25, 25, 318, 319, 321, 329, 147,
208 148, 20, 332, 331, 149, 340, 20, 284, 342, 285,
209 353, 70, 112, 87, 70, 232, 163, 112, 88, 164,
210 165, 166, 85, 85, 85, 85, 354, 141, 70, 70,
211 141, 85, 346, 20, 51, 147, 148, 85, 85, 251,
212 85, 57, 252, 158, 141, 141, 344, 85, 85, 166,
213 85, 85, 85, 85, 85, 85, 101, 310, 2, 147,
214 148, 156, 196, 70, 36, 20, 34, 20, 20, 159,
215 147, 148, 147, 148, 147, 148, 147, 148, 156, 141,
216 255, 39, 67, 67, 67, 67, 36, 147, 148, 167,
217 34, 43, 147, 148, 43, 43, 43, 21, 43, 96,
218 43, 43, 211, 43, 147, 148, 77, 67, 67, 147,
219 148, 147, 148, 147, 148, 147, 148, 43, 69, 147,
220 148, 149, 43, 348, 25, 25, 25, 25, 25, 25,
221 262, 25, 25, 25, 25, 25, 25, 25, 25, 25,
222 25, 25, 25, 25, 147, 148, 328, 25, 25, 43,
223 25, 25, 25, 25, 25, 147, 148, 147, 148, 25,
224 25, 25, 25, 25, 25, 167, 185, 25, 82, 320,
225 153, 82, 147, 148, 147, 148, 25, 0, 25, 25,
226 0, 43, 0, 0, 43, 82, 82, 162, 0, 0,
227 163, 156, 0, 164, 165, 166, 0, 149, 20, 20,
228 20, 20, 20, 20, 0, 20, 20, 20, 20, 20,
229 20, 20, 20, 20, 20, 20, 20, 20, 0, 167,
230 82, 20, 20, 0, 20, 20, 20, 20, 20, 0,
231 0, 0, 0, 20, 20, 20, 20, 20, 20, 0,
232 0, 20, 70, 70, 70, 70, 0, 0, 0, 167,
233 20, 149, 20, 20, 0, 0, 0, 0, 141, 141,
234 141, 141, 167, 0, 181, 0, 170, 70, 70, 170,
235 170, 170, 0, 170, 154, 170, 170, 154, 170, 150,
236 0, 149, 0, 141, 141, 151, 152, 153, 154, 0,
237 0, 154, 154, 0, 149, 204, 154, 170, 155, 157,
238 158, 159, 160, 161, 162, 0, 0, 163, 0, 0,
239 164, 165, 166, 0, 43, 43, 43, 43, 43, 43,
240 0, 43, 43, 43, 154, 0, 154, 43, 0, 0,
241 43, 43, 43, 43, 0, 0, 0, 43, 43, 0,
242 43, 43, 43, 43, 43, 0, 0, 0, 0, 43,
243 43, 43, 43, 43, 43, 66, 154, 43, 66, 170,
244 0, 0, 167, 153, 154, 0, 43, 171, 43, 43,
245 171, 171, 171, 66, 171, 113, 171, 171, 113, 171,
246 162, 0, 0, 163, 0, 0, 164, 165, 166, 0,
247 0, 0, 113, 113, 149, 0, 0, 113, 171, 82,
248 82, 82, 82, 0, 0, 0, 0, 66, 0, 150,
249 0, 0, 0, 0, 0, 151, 152, 153, 154, 0,
250 0, 294, 0, 0, 82, 82, 297, 113, 155, 157,
251 158, 159, 160, 161, 162, 0, 103, 163, 0, 103,
252 164, 165, 166, 0, 0, 151, 152, 153, 154, 0,
253 0, 0, 0, 103, 103, 0, 0, 0, 103, 0,
254 171, 159, 160, 161, 162, 0, 0, 163, 0, 0,
255 164, 165, 166, 0, 0, 0, 0, 162, 0, 0,
256 163, 0, 0, 164, 165, 166, 0, 0, 103, 0,
257 170, 170, 170, 170, 170, 0, 170, 170, 170, 0,
258 0, 0, 170, 0, 0, 154, 154, 154, 154, 0,
259 0, 0, 0, 170, 154, 170, 170, 170, 170, 170,
260 154, 154, 154, 154, 170, 170, 170, 170, 170, 170,
261 154, 154, 170, 154, 154, 154, 154, 154, 154, 154,
262 0, 170, 154, 170, 170, 154, 154, 154, 94, 0,
263 0, 94, 0, 104, 0, 0, 104, 0, 151, 152,
264 153, 154, 0, 0, 0, 94, 94, 0, 0, 0,
265 104, 104, 0, 0, 0, 104, 161, 162, 0, 249,
266 163, 0, 0, 164, 165, 166, 66, 66, 66, 66,
267 0, 171, 171, 171, 171, 171, 0, 171, 171, 171,
268 94, 0, 350, 171, 0, 104, 113, 113, 113, 113,
269 0, 66, 0, 0, 171, 113, 171, 171, 171, 171,
270 171, 113, 113, 113, 113, 171, 171, 171, 171, 171,
271 171, 113, 113, 171, 113, 113, 113, 113, 113, 113,
272 113, 0, 171, 113, 171, 171, 113, 113, 113, 52,
273 0, 0, 62, 64, 50, 0, 57, 0, 65, 60,
274 0, 59, 0, 0, 0, 0, 0, 103, 103, 103,
275 103, 0, 0, 0, 0, 58, 103, 0, 0, 0,
276 63, 0, 103, 103, 103, 103, 0, 0, 0, 0,
277 0, 0, 103, 103, 67, 103, 103, 103, 103, 103,
278 103, 103, 0, 0, 103, 43, 0, 61, 43, 43,
279 43, 0, 43, 0, 43, 43, 92, 43, 0, 0,
280 4, 5, 6, 108, 7, 8, 117, 0, 0, 0,
281 0, 43, 0, 114, 115, 0, 43, 0, 0, 23,
282 123, 0, 53, 4, 5, 6, 0, 7, 8, 0,
283 0, 0, 136, 137, 138, 139, 0, 0, 0, 0,
284 0, 52, 176, 43, 62, 64, 50, 0, 57, 0,
285 65, 60, 0, 59, 0, 0, 184, 0, 0, 94,
286 94, 94, 94, 0, 104, 104, 104, 104, 0, 0,
287 0, 0, 63, 104, 0, 43, 0, 198, 43, 104,
288 104, 104, 104, 0, 94, 94, 0, 94, 0, 104,
289 104, 0, 104, 104, 104, 104, 104, 104, 104, 61,
290 0, 104, 208, 0, 52, 0, 0, 62, 64, 50,
291 0, 57, 0, 65, 60, 0, 59, 0, 0, 0,
292 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
293 0, 23, 0, 0, 53, 63, 0, 0, 0, 246,
294 0, 0, 0, 0, 0, 0, 254, 0, 0, 0,
295 0, 0, 22, 24, 25, 26, 27, 28, 0, 29,
296 30, 31, 61, 0, 0, 32, 0, 0, 33, 34,
297 35, 36, 0, 0, 0, 37, 38, 0, 39, 40,
298 41, 42, 43, 0, 0, 0, 0, 44, 45, 46,
299 47, 48, 49, 0, 23, 51, 0, 53, 0, 0,
300 0, 0, 0, 0, 54, 0, 55, 56, 43, 43,
301 43, 43, 43, 43, 0, 43, 43, 43, 0, 0,
302 167, 43, 0, 0, 43, 43, 43, 43, 0, 0,
303 0, 43, 43, 0, 43, 43, 43, 43, 43, 0,
304 0, 0, 0, 43, 43, 43, 43, 43, 43, 167,
305 0, 43, 149, 0, 0, 0, 0, 0, 0, 0,
306 43, 0, 43, 43, 0, 110, 25, 26, 27, 28,
307 88, 29, 30, 31, 0, 52, 0, 32, 62, 64,
308 50, 149, 57, 130, 65, 60, 0, 59, 38, 0,
309 39, 40, 41, 42, 43, 0, 0, 0, 0, 44,
310 45, 46, 47, 48, 49, 0, 63, 51, 0, 0,
311 0, 0, 0, 0, 0, 0, 54, 0, 55, 56,
312 0, 0, 0, 0, 0, 0, 0, 0, 24, 25,
313 26, 27, 28, 61, 29, 30, 31, 0, 52, 0,
314 32, 62, 64, 50, 0, 57, 0, 65, 60, 0,
315 59, 38, 0, 39, 40, 41, 42, 43, 0, 0,
316 0, 0, 44, 45, 46, 47, 48, 49, 53, 63,
317 51, 0, 323, 324, 325, 0, 327, 0, 0, 54,
318 0, 55, 56, 0, 0, 0, 0, 0, 0, 0,
319 0, 0, 0, 0, 52, 0, 61, 62, 64, 50,
320 0, 57, 343, 65, 60, 0, 59, 0, 0, 345,
321 0, 0, 0, 347, 0, 0, 151, 152, 153, 154,
322 120, 0, 0, 0, 0, 63, 355, 356, 23, 0,
323 0, 53, 0, 160, 161, 162, 0, 0, 163, 0,
324 0, 164, 165, 166, 0, 151, 0, 153, 154, 0,
325 52, 0, 61, 62, 64, 50, 0, 57, 0, 65,
326 60, 0, 59, 161, 162, 0, 0, 163, 0, 0,
327 164, 165, 166, 0, 0, 0, 0, 0, 0, 0,
328 0, 63, 0, 0, 0, 0, 0, 53, 0, 0,
329 0, 0, 0, 0, 0, 0, 0, 0, 0, 24,
330 25, 26, 27, 28, 0, 29, 30, 31, 61, 52,
331 134, 32, 62, 64, 50, 0, 57, 194, 65, 60,
332 0, 59, 38, 0, 39, 40, 41, 42, 43, 0,
333 0, 0, 0, 44, 45, 46, 47, 48, 49, 0,
334 63, 51, 0, 53, 0, 0, 0, 0, 0, 0,
335 54, 0, 55, 56, 0, 0, 0, 0, 87, 0,
336 0, 87, 116, 25, 26, 27, 28, 61, 29, 30,
337 31, 0, 0, 0, 32, 87, 87, 0, 0, 0,
338 87, 0, 0, 0, 0, 38, 0, 39, 40, 41,
339 42, 43, 0, 0, 0, 0, 44, 45, 46, 47,
340 48, 49, 53, 0, 51, 0, 0, 0, 0, 0,
341 87, 0, 0, 54, 88, 55, 56, 88, 24, 25,
342 26, 27, 28, 0, 29, 30, 31, 0, 0, 0,
343 32, 88, 88, 0, 0, 0, 88, 0, 0, 0,
344 0, 38, 0, 39, 40, 41, 42, 43, 0, 0,
345 0, 0, 44, 45, 46, 47, 48, 49, 0, 0,
346 51, 0, 0, 0, 0, 0, 88, 0, 0, 54,
347 0, 55, 56, 0, 24, 25, 26, 27, 28, 0,
348 29, 30, 31, 0, 52, 0, 32, 62, 64, 50,
349 0, 57, 242, 65, 60, 0, 59, 38, 0, 39,
350 40, 41, 42, 43, 0, 0, 0, 0, 44, 45,
351 46, 47, 48, 49, 0, 63, 51, 0, 0, 0,
352 0, 0, 0, 0, 0, 54, 0, 55, 56, 0,
353 0, 0, 0, 24, 25, 26, 27, 28, 0, 29,
354 30, 31, 61, 52, 0, 32, 62, 64, 50, 0,
355 57, 0, 65, 60, 0, 59, 38, 0, 39, 40,
356 41, 42, 43, 0, 0, 0, 0, 44, 45, 46,
357 47, 48, 49, 0, 63, 51, 0, 53, 0, 0,
358 0, 0, 0, 0, 54, 0, 55, 56, 0, 87,
359 87, 87, 87, 0, 0, 0, 0, 0, 87, 52,
360 0, 61, 62, 64, 50, 87, 57, 275, 65, 60,
361 0, 59, 0, 0, 87, 87, 0, 87, 87, 87,
362 87, 87, 0, 0, 0, 0, 0, 0, 0, 0,
363 63, 0, 0, 0, 0, 0, 53, 0, 0, 0,
364 0, 0, 0, 0, 0, 88, 88, 88, 88, 0,
365 0, 0, 0, 0, 88, 52, 0, 61, 62, 64,
366 50, 0, 57, 277, 65, 60, 0, 59, 0, 0,
367 88, 88, 0, 88, 88, 88, 88, 88, 0, 0,
368 0, 0, 0, 0, 0, 0, 63, 0, 0, 0,
369 0, 0, 53, 0, 0, 0, 0, 0, 0, 0,
370 0, 0, 0, 0, 0, 0, 0, 0, 24, 25,
371 26, 27, 28, 61, 29, 30, 31, 0, 52, 0,
372 32, 62, 64, 50, 0, 57, 0, 65, 60, 0,
373 59, 38, 0, 39, 40, 41, 42, 43, 0, 0,
374 0, 0, 44, 45, 46, 47, 48, 49, 53, 63,
375 51, 0, 0, 0, 0, 0, 0, 0, 0, 54,
376 0, 55, 56, 0, 0, 0, 22, 24, 25, 26,
377 27, 28, 0, 29, 30, 31, 61, 0, 0, 32,
378 69, 0, 0, 69, 0, 0, 0, 0, 0, 0,
379 38, 0, 39, 40, 41, 42, 43, 69, 69, 0,
380 0, 44, 45, 46, 47, 48, 49, 167, 0, 51,
381 0, 53, 0, 0, 0, 0, 147, 0, 54, 147,
382 55, 56, 0, 24, 25, 26, 27, 28, 0, 29,
383 30, 31, 69, 147, 147, 32, 0, 0, 147, 149,
384 0, 0, 0, 0, 0, 0, 38, 0, 39, 40,
385 41, 42, 43, 0, 0, 0, 0, 44, 45, 46,
386 47, 48, 49, 0, 0, 51, 147, 0, 147, 0,
387 0, 0, 0, 0, 54, 130, 55, 56, 130, 24,
388 25, 26, 27, 28, 0, 29, 30, 31, 0, 0,
389 0, 32, 130, 130, 0, 0, 0, 130, 147, 0,
390 0, 0, 38, 0, 39, 40, 41, 42, 43, 0,
391 0, 0, 0, 44, 45, 46, 47, 48, 49, 0,
392 0, 51, 0, 0, 0, 130, 0, 130, 0, 0,
393 54, 0, 55, 56, 0, 0, 0, 0, 154, 0,
394 0, 154, 24, 25, 26, 27, 28, 0, 29, 30,
395 31, 0, 0, 0, 32, 154, 154, 130, 0, 0,
396 154, 0, 0, 0, 0, 38, 0, 39, 40, 41,
397 42, 43, 0, 0, 0, 0, 44, 45, 46, 47,
398 48, 49, 0, 0, 51, 0, 140, 0, 154, 140,
399 154, 0, 0, 54, 0, 55, 56, 0, 0, 0,
400 0, 0, 0, 140, 140, 153, 154, 0, 140, 0,
401 0, 69, 69, 69, 69, 0, 0, 0, 0, 0,
402 154, 161, 162, 0, 0, 163, 0, 0, 164, 165,
403 166, 0, 0, 0, 0, 0, 69, 69, 140, 0,
404 0, 0, 0, 0, 0, 0, 0, 147, 147, 147,
405 147, 0, 115, 0, 0, 115, 147, 0, 0, 0,
406 0, 0, 147, 147, 147, 147, 0, 0, 140, 115,
407 115, 0, 147, 147, 115, 147, 147, 147, 147, 147,
408 147, 147, 0, 0, 147, 0, 0, 147, 147, 147,
409 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
410 0, 0, 115, 0, 115, 0, 130, 130, 130, 130,
411 0, 156, 0, 0, 156, 130, 0, 0, 0, 0,
412 0, 130, 130, 130, 130, 0, 0, 0, 156, 156,
413 0, 130, 130, 156, 130, 130, 130, 130, 130, 130,
414 130, 0, 0, 130, 0, 0, 130, 130, 130, 0,
415 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
416 0, 0, 0, 156, 0, 0, 0, 0, 0, 154,
417 154, 154, 154, 0, 0, 0, 0, 0, 154, 0,
418 0, 0, 0, 0, 154, 154, 154, 154, 0, 0,
419 0, 0, 0, 156, 154, 154, 0, 154, 154, 154,
420 154, 154, 154, 154, 0, 0, 154, 0, 0, 154,
421 154, 154, 0, 0, 0, 0, 0, 140, 140, 140,
422 140, 0, 157, 0, 0, 0, 140, 0, 0, 0,
423 0, 0, 140, 140, 140, 140, 0, 0, 0, 157,
424 157, 0, 140, 140, 157, 140, 140, 140, 140, 140,
425 140, 140, 0, 0, 140, 0, 0, 140, 140, 140,
426 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
427 0, 0, 157, 0, 157, 0, 0, 0, 0, 0,
428 0, 0, 0, 115, 115, 115, 115, 0, 0, 0,
429 0, 0, 115, 0, 0, 0, 0, 0, 115, 115,
430 115, 115, 0, 0, 157, 0, 0, 0, 115, 115,
431 0, 115, 115, 115, 115, 115, 115, 115, 0, 0,
432 115, 0, 0, 115, 115, 115, 0, 0, 0, 0,
433 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
434 0, 0, 156, 156, 156, 156, 0, 142, 0, 0,
435 0, 156, 0, 0, 0, 0, 0, 156, 156, 156,
436 156, 0, 0, 0, 142, 142, 0, 156, 156, 142,
437 156, 156, 156, 156, 156, 156, 156, 0, 0, 156,
438 0, 0, 156, 156, 156, 0, 0, 0, 0, 0,
439 107, 0, 0, 107, 0, 0, 0, 142, 0, 142,
440 93, 0, 0, 93, 0, 0, 0, 107, 107, 0,
441 0, 0, 107, 0, 0, 0, 0, 93, 93, 0,
442 0, 0, 93, 0, 0, 0, 0, 0, 0, 142,
443 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
444 0, 0, 107, 0, 0, 0, 0, 0, 0, 0,
445 0, 0, 93, 157, 157, 157, 157, 0, 68, 0,
446 0, 68, 157, 0, 0, 0, 0, 0, 157, 157,
447 157, 157, 107, 0, 0, 68, 68, 0, 157, 157,
448 68, 157, 157, 157, 157, 157, 157, 157, 0, 0,
449 157, 0, 0, 157, 157, 157, 0, 0, 0, 0,
450 0, 71, 0, 0, 0, 0, 0, 0, 0, 0,
451 68, 0, 0, 0, 0, 0, 0, 0, 71, 71,
452 0, 0, 0, 71, 0, 0, 0, 0, 0, 0,
453 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
454 68, 0, 0, 0, 0, 106, 0, 0, 106, 0,
455 0, 71, 0, 71, 0, 0, 0, 0, 0, 0,
456 0, 0, 106, 106, 0, 0, 0, 106, 0, 0,
457 0, 0, 0, 0, 0, 0, 0, 0, 142, 142,
458 142, 142, 0, 71, 0, 0, 0, 142, 0, 0,
459 0, 0, 0, 142, 142, 142, 142, 106, 0, 0,
460 0, 0, 0, 142, 142, 0, 142, 142, 142, 142,
461 142, 142, 142, 0, 0, 142, 0, 0, 142, 142,
462 142, 107, 107, 107, 107, 0, 143, 106, 0, 143,
463 107, 93, 93, 93, 93, 0, 107, 107, 107, 107,
464 93, 0, 0, 143, 143, 0, 107, 107, 143, 107,
465 107, 107, 107, 107, 107, 107, 93, 93, 107, 93,
466 93, 107, 107, 107, 0, 0, 0, 0, 0, 0,
467 0, 0, 0, 0, 0, 0, 0, 0, 143, 0,
468 0, 0, 0, 0, 0, 0, 0, 0, 0, 68,
469 68, 68, 68, 0, 156, 0, 0, 156, 68, 0,
470 0, 0, 0, 0, 68, 68, 68, 68, 0, 0,
471 0, 156, 156, 0, 68, 68, 156, 68, 68, 68,
472 68, 68, 68, 68, 0, 0, 68, 0, 0, 68,
473 68, 68, 71, 71, 71, 71, 0, 113, 0, 0,
474 113, 71, 0, 0, 0, 0, 156, 71, 71, 71,
475 71, 0, 0, 0, 113, 113, 0, 71, 71, 113,
476 71, 71, 71, 71, 71, 71, 71, 0, 0, 71,
477 0, 0, 71, 71, 71, 0, 106, 106, 106, 106,
478 0, 120, 0, 0, 120, 106, 0, 0, 0, 113,
479 0, 106, 106, 106, 106, 0, 0, 0, 120, 120,
480 0, 106, 106, 120, 106, 106, 106, 106, 106, 106,
481 106, 0, 0, 106, 0, 0, 106, 106, 106, 0,
482 0, 0, 0, 0, 98, 0, 0, 98, 0, 0,
483 0, 0, 0, 120, 0, 0, 0, 0, 0, 0,
484 0, 98, 98, 0, 0, 0, 98, 0, 0, 0,
485 0, 0, 0, 0, 0, 0, 0, 143, 143, 143,
486 143, 0, 99, 0, 0, 99, 143, 0, 0, 0,
487 0, 0, 143, 143, 143, 143, 98, 0, 0, 99,
488 99, 0, 143, 143, 99, 143, 143, 143, 143, 143,
489 143, 143, 0, 0, 143, 0, 0, 143, 143, 143,
490 100, 0, 0, 100, 0, 0, 0, 0, 0, 0,
491 0, 0, 0, 0, 99, 0, 0, 100, 100, 0,
492 0, 0, 100, 0, 0, 156, 156, 156, 156, 0,
493 0, 0, 0, 0, 156, 0, 0, 0, 0, 0,
494 156, 156, 156, 156, 0, 0, 0, 0, 0, 0,
495 156, 156, 100, 156, 156, 156, 156, 156, 156, 156,
496 0, 0, 156, 0, 0, 156, 156, 156, 113, 113,
497 113, 113, 0, 96, 0, 0, 96, 113, 0, 0,
498 0, 0, 0, 113, 113, 113, 113, 0, 0, 0,
499 96, 96, 0, 113, 113, 96, 113, 113, 113, 113,
500 113, 113, 113, 0, 0, 113, 0, 0, 113, 113,
501 113, 0, 120, 120, 120, 120, 0, 97, 0, 0,
502 97, 120, 0, 0, 0, 96, 0, 120, 120, 120,
503 120, 0, 0, 0, 97, 97, 0, 120, 120, 97,
504 120, 120, 120, 120, 120, 120, 120, 0, 0, 120,
505 0, 0, 120, 120, 120, 98, 98, 98, 98, 0,
506 95, 0, 0, 95, 98, 0, 0, 0, 0, 97,
507 98, 98, 98, 98, 0, 0, 0, 95, 95, 0,
508 98, 98, 95, 98, 98, 98, 98, 98, 98, 98,
509 0, 0, 0, 99, 99, 99, 99, 0, 83, 0,
510 0, 83, 99, 0, 0, 0, 0, 0, 99, 99,
511 99, 99, 95, 0, 0, 83, 83, 0, 99, 99,
512 83, 99, 99, 99, 99, 99, 99, 99, 0, 0,
513 0, 100, 100, 100, 100, 0, 84, 0, 0, 84,
514 100, 0, 0, 0, 0, 0, 100, 100, 100, 100,
515 83, 0, 0, 84, 84, 0, 100, 100, 84, 100,
516 100, 100, 100, 100, 100, 100, 0, 0, 0, 0,
517 0, 0, 86, 0, 0, 86, 0, 0, 0, 0,
518 0, 0, 0, 0, 0, 0, 0, 0, 84, 86,
519 86, 0, 0, 0, 86, 0, 0, 0, 0, 0,
520 0, 0, 0, 0, 96, 96, 96, 96, 0, 146,
521 0, 0, 146, 96, 0, 0, 0, 0, 0, 96,
522 96, 96, 96, 0, 86, 0, 146, 146, 0, 96,
523 96, 146, 96, 96, 96, 96, 96, 96, 96, 0,
524 0, 0, 0, 0, 0, 0, 0, 0, 97, 97,
525 97, 97, 0, 145, 0, 0, 145, 97, 0, 0,
526 0, 146, 0, 97, 97, 97, 97, 0, 0, 0,
527 145, 145, 0, 97, 97, 145, 97, 97, 97, 97,
528 97, 97, 97, 0, 0, 0, 0, 0, 0, 0,
529 0, 95, 95, 95, 95, 0, 134, 0, 0, 134,
530 95, 0, 0, 0, 0, 145, 95, 95, 95, 95,
531 0, 0, 0, 134, 134, 0, 95, 95, 134, 95,
532 95, 95, 95, 95, 95, 95, 0, 0, 0, 83,
533 83, 83, 83, 0, 105, 0, 0, 105, 83, 0,
534 0, 0, 0, 0, 83, 83, 83, 83, 134, 0,
535 0, 105, 105, 0, 83, 83, 105, 83, 83, 83,
536 83, 83, 83, 83, 0, 0, 0, 84, 84, 84,
537 84, 0, 89, 0, 0, 89, 84, 0, 0, 0,
538 0, 0, 84, 84, 84, 84, 105, 0, 0, 89,
539 89, 0, 84, 84, 89, 84, 84, 84, 84, 84,
540 84, 0, 0, 86, 86, 86, 86, 0, 90, 0,
541 0, 90, 86, 0, 0, 0, 0, 0, 86, 86,
542 0, 0, 0, 0, 89, 90, 90, 0, 86, 86,
543 90, 86, 86, 86, 86, 86, 86, 0, 0, 0,
544 146, 146, 146, 146, 0, 92, 0, 0, 92, 146,
545 0, 0, 0, 0, 0, 146, 146, 0, 0, 0,
546 90, 0, 92, 92, 0, 146, 146, 92, 146, 146,
547 146, 146, 146, 0, 0, 0, 167, 0, 0, 0,
548 0, 0, 0, 0, 145, 145, 145, 145, 0, 91,
549 156, 0, 91, 145, 0, 0, 0, 92, 0, 145,
550 145, 0, 0, 0, 0, 0, 91, 91, 149, 145,
551 145, 91, 145, 145, 145, 145, 145, 0, 167, 0,
552 0, 283, 0, 0, 0, 0, 156, 134, 134, 134,
553 134, 0, 0, 0, 0, 0, 134, 0, 0, 0,
554 0, 91, 134, 134, 0, 0, 0, 0, 0, 0,
555 149, 0, 134, 134, 167, 134, 134, 134, 134, 134,
556 0, 0, 0, 0, 0, 105, 105, 105, 105, 0,
557 0, 0, 0, 0, 105, 0, 0, 0, 0, 0,
558 105, 105, 0, 0, 0, 156, 149, 0, 0, 0,
559 105, 105, 0, 105, 105, 105, 105, 105, 0, 0,
560 0, 0, 0, 89, 89, 89, 89, 0, 0, 0,
561 0, 0, 89, 167, 0, 0, 0, 0, 90, 90,
562 0, 0, 0, 0, 0, 0, 0, 0, 89, 89,
563 103, 89, 89, 89, 89, 89, 111, 90, 119, 90,
564 90, 90, 90, 90, 0, 149, 0, 0, 90, 167,
565 0, 0, 0, 0, 0, 90, 90, 90, 90, 0,
566 0, 0, 0, 0, 90, 90, 0, 90, 90, 90,
567 90, 0, 151, 152, 153, 154, 92, 92, 92, 92,
568 0, 149, 0, 0, 0, 92, 157, 158, 159, 160,
569 161, 162, 0, 0, 163, 0, 0, 164, 165, 166,
570 111, 92, 92, 0, 92, 92, 92, 0, 150, 0,
571 0, 0, 0, 0, 151, 152, 153, 154, 0, 0,
572 91, 91, 91, 91, 0, 0, 0, 155, 157, 158,
573 159, 160, 161, 162, 0, 0, 163, 0, 0, 164,
574 165, 166, 0, 0, 150, 91, 91, 0, 91, 0,
575 151, 152, 153, 154, 0, 0, 0, 0, 0, 234,
576 0, 0, 0, 155, 157, 158, 159, 160, 161, 162,
577 94, 0, 163, 0, 0, 164, 165, 166, 104, 0,
578 0, 0, 109, 263, 0, 118, 0, 0, 0, 0,
579 0, 0, 125, 126, 127, 128, 129, 0, 0, 132,
580 133, 0, 0, 150, 0, 0, 140, 0, 0, 151,
581 152, 153, 154, 0, 0, 0, 0, 0, 0, 0,
582 0, 0, 0, 157, 158, 159, 160, 161, 162, 0,
583 0, 163, 0, 183, 164, 165, 166, 0, 0, 0,
584 0, 0, 0, 0, 0, 151, 152, 153, 154, 0,
585 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
586 158, 159, 160, 161, 162, 0, 0, 163, 0, 0,
587 164, 165, 166, 0, 0, 0, 0, 0, 0, 0,
588 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
589 217, 218, 219, 220, 221, 222, 223, 224, 225, 226,
590 227, 228, 229, 230, 0, 0, 0, 0, 0, 0,
591 0, 0, 0, 0, 0, 244, 0, 0, 0, 0,
592 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
593 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
594 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
595 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
596 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
597 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
598 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
599 0, 0, 296, 0, 0, 0, 0, 0, 0, 0,
600 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
601 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
604 short yycheck[] = { 13,
605 59, 41, 36, 36, 44, 93, 36, 59, 91, 86,
606 40, 325, 91, 41, 257, 191, 40, 43, 58, 59,
607 182, 257, 59, 63, 41, 51, 41, 59, 41, 257,
608 41, 91, 46, 41, 322, 323, 91, 59, 41, 327,
609 123, 41, 356, 57, 123, 297, 298, 61, 41, 44,
610 40, 59, 40, 93, 40, 343, 59, 278, 91, 347,
611 123, 41, 41, 123, 41, 91, 59, 91, 123, 40,
612 97, 98, 99, 100, 101, 102, 59, 41, 0, 59,
613 59, 59, 59, 59, 40, 59, 123, 59, 114, 123,
614 123, 123, 106, 107, 270, 59, 122, 276, 277, 123,
615 59, 41, 272, 273, 274, 275, 40, 40, 44, 40,
616 260, 33, 40, 93, 36, 37, 38, 123, 40, 59,
617 42, 43, 257, 45, 286, 93, 302, 297, 298, 143,
618 144, 145, 146, 147, 148, 149, 40, 59, 40, 266,
619 267, 268, 64, 270, 271, 41, 40, 91, 257, 36,
620 93, 41, 0, 167, 168, 169, 170, 171, 172, 173,
621 125, 93, 125, 93, 91, 192, 298, 40, 182, 91,
622 346, 41, 186, 187, 41, 189, 41, 191, 93, 41,
623 93, 41, 91, 40, 198, 33, 200, 201, 36, 37,
624 38, 205, 40, 59, 42, 43, 41, 45, 257, 125,
625 125, 123, 125, 125, 126, 125, 59, 123, 41, 297,
626 298, 59, 41, 125, 123, 41, 64, 231, 59, 233,
627 41, 41, 248, 257, 44, 258, 309, 253, 262, 312,
628 313, 314, 272, 273, 274, 275, 41, 41, 58, 59,
629 44, 281, 40, 91, 123, 297, 298, 287, 288, 41,
630 290, 123, 44, 41, 58, 59, 333, 297, 298, 314,
631 300, 301, 302, 303, 304, 305, 296, 281, 0, 297,
632 298, 63, 286, 93, 41, 123, 59, 125, 126, 41,
633 297, 298, 297, 298, 297, 298, 297, 298, 59, 93,
634 304, 41, 272, 273, 274, 275, 59, 297, 298, 91,
635 41, 33, 297, 298, 36, 37, 38, 8, 40, 32,
636 42, 43, 144, 45, 297, 298, 13, 297, 298, 297,
637 298, 297, 298, 297, 298, 297, 298, 59, 342, 297,
638 298, 123, 64, 342, 256, 257, 258, 259, 260, 261,
639 189, 263, 264, 265, 266, 267, 268, 269, 270, 271,
640 272, 273, 274, 275, 297, 298, 304, 279, 280, 91,
641 282, 283, 284, 285, 286, 297, 298, 297, 298, 291,
642 292, 293, 294, 295, 296, 91, 96, 299, 41, 41,
643 289, 44, 297, 298, 297, 298, 308, -1, 310, 311,
644 -1, 123, -1, -1, 126, 58, 59, 306, -1, -1,
645 309, 63, -1, 312, 313, 314, -1, 123, 256, 257,
646 258, 259, 260, 261, -1, 263, 264, 265, 266, 267,
647 268, 269, 270, 271, 272, 273, 274, 275, -1, 91,
648 93, 279, 280, -1, 282, 283, 284, 285, 286, -1,
649 -1, -1, -1, 291, 292, 293, 294, 295, 296, -1,
650 -1, 299, 272, 273, 274, 275, -1, -1, -1, 91,
651 308, 123, 310, 311, -1, -1, -1, -1, 272, 273,
652 274, 275, 91, -1, 91, -1, 33, 297, 298, 36,
653 37, 38, -1, 40, 41, 42, 43, 44, 45, 281,
654 -1, 123, -1, 297, 298, 287, 288, 289, 290, -1,
655 -1, 58, 59, -1, 123, 122, 63, 64, 300, 301,
656 302, 303, 304, 305, 306, -1, -1, 309, -1, -1,
657 312, 313, 314, -1, 256, 257, 258, 259, 260, 261,
658 -1, 263, 264, 265, 91, -1, 93, 269, -1, -1,
659 272, 273, 274, 275, -1, -1, -1, 279, 280, -1,
660 282, 283, 284, 285, 286, -1, -1, -1, -1, 291,
661 292, 293, 294, 295, 296, 41, 123, 299, 44, 126,
662 -1, -1, 91, 289, 290, -1, 308, 33, 310, 311,
663 36, 37, 38, 59, 40, 41, 42, 43, 44, 45,
664 306, -1, -1, 309, -1, -1, 312, 313, 314, -1,
665 -1, -1, 58, 59, 123, -1, -1, 63, 64, 272,
666 273, 274, 275, -1, -1, -1, -1, 93, -1, 281,
667 -1, -1, -1, -1, -1, 287, 288, 289, 290, -1,
668 -1, 248, -1, -1, 297, 298, 253, 93, 300, 301,
669 302, 303, 304, 305, 306, -1, 41, 309, -1, 44,
670 312, 313, 314, -1, -1, 287, 288, 289, 290, -1,
671 -1, -1, -1, 58, 59, -1, -1, -1, 63, -1,
672 126, 303, 304, 305, 306, -1, -1, 309, -1, -1,
673 312, 313, 314, -1, -1, -1, -1, 306, -1, -1,
674 309, -1, -1, 312, 313, 314, -1, -1, 93, -1,
675 257, 258, 259, 260, 261, -1, 263, 264, 265, -1,
676 -1, -1, 269, -1, -1, 272, 273, 274, 275, -1,
677 -1, -1, -1, 280, 281, 282, 283, 284, 285, 286,
678 287, 288, 289, 290, 291, 292, 293, 294, 295, 296,
679 297, 298, 299, 300, 301, 302, 303, 304, 305, 306,
680 -1, 308, 309, 310, 311, 312, 313, 314, 41, -1,
681 -1, 44, -1, 41, -1, -1, 44, -1, 287, 288,
682 289, 290, -1, -1, -1, 58, 59, -1, -1, -1,
683 58, 59, -1, -1, -1, 63, 305, 306, -1, 125,
684 309, -1, -1, 312, 313, 314, 272, 273, 274, 275,
685 -1, 257, 258, 259, 260, 261, -1, 263, 264, 265,
686 93, -1, 125, 269, -1, 93, 272, 273, 274, 275,
687 -1, 297, -1, -1, 280, 281, 282, 283, 284, 285,
688 286, 287, 288, 289, 290, 291, 292, 293, 294, 295,
689 296, 297, 298, 299, 300, 301, 302, 303, 304, 305,
690 306, -1, 308, 309, 310, 311, 312, 313, 314, 33,
691 -1, -1, 36, 37, 38, -1, 40, -1, 42, 43,
692 -1, 45, -1, -1, -1, -1, -1, 272, 273, 274,
693 275, -1, -1, -1, -1, 59, 281, -1, -1, -1,
694 64, -1, 287, 288, 289, 290, -1, -1, -1, -1,
695 -1, -1, 297, 298, 13, 300, 301, 302, 303, 304,
696 305, 306, -1, -1, 309, 33, -1, 91, 36, 37,
697 38, -1, 40, -1, 42, 43, 26, 45, -1, -1,
698 266, 267, 268, 42, 270, 271, 45, -1, -1, -1,
699 -1, 59, -1, 43, 44, -1, 64, -1, -1, 123,
700 50, -1, 126, 266, 267, 268, -1, 270, 271, -1,
701 -1, -1, 62, 63, 64, 65, -1, -1, -1, -1,
702 -1, 33, 81, 91, 36, 37, 38, -1, 40, -1,
703 42, 43, -1, 45, -1, -1, 95, -1, -1, 272,
704 273, 274, 275, -1, 272, 273, 274, 275, -1, -1,
705 -1, -1, 64, 281, -1, 123, -1, 107, 126, 287,
706 288, 289, 290, -1, 297, 298, -1, 300, -1, 297,
707 298, -1, 300, 301, 302, 303, 304, 305, 306, 91,
708 -1, 309, 141, -1, 33, -1, -1, 36, 37, 38,
709 -1, 40, -1, 42, 43, -1, 45, -1, -1, -1,
710 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
711 -1, 123, -1, -1, 126, 64, -1, -1, -1, 178,
712 -1, -1, -1, -1, -1, -1, 185, -1, -1, -1,
713 -1, -1, 256, 257, 258, 259, 260, 261, -1, 263,
714 264, 265, 91, -1, -1, 269, -1, -1, 272, 273,
715 274, 275, -1, -1, -1, 279, 280, -1, 282, 283,
716 284, 285, 286, -1, -1, -1, -1, 291, 292, 293,
717 294, 295, 296, -1, 123, 299, -1, 126, -1, -1,
718 -1, -1, -1, -1, 308, -1, 310, 311, 256, 257,
719 258, 259, 260, 261, -1, 263, 264, 265, -1, -1,
720 91, 269, -1, -1, 272, 273, 274, 275, -1, -1,
721 -1, 279, 280, -1, 282, 283, 284, 285, 286, -1,
722 -1, -1, -1, 291, 292, 293, 294, 295, 296, 91,
723 -1, 299, 123, -1, -1, -1, -1, -1, -1, -1,
724 308, -1, 310, 311, -1, 257, 258, 259, 260, 261,
725 262, 263, 264, 265, -1, 33, -1, 269, 36, 37,
726 38, 123, 40, 41, 42, 43, -1, 45, 280, -1,
727 282, 283, 284, 285, 286, -1, -1, -1, -1, 291,
728 292, 293, 294, 295, 296, -1, 64, 299, -1, -1,
729 -1, -1, -1, -1, -1, -1, 308, -1, 310, 311,
730 -1, -1, -1, -1, -1, -1, -1, -1, 257, 258,
731 259, 260, 261, 91, 263, 264, 265, -1, 33, -1,
732 269, 36, 37, 38, -1, 40, -1, 42, 43, -1,
733 45, 280, -1, 282, 283, 284, 285, 286, -1, -1,
734 -1, -1, 291, 292, 293, 294, 295, 296, 126, 64,
735 299, -1, 299, 300, 301, -1, 303, -1, -1, 308,
736 -1, 310, 311, -1, -1, -1, -1, -1, -1, -1,
737 -1, -1, -1, -1, 33, -1, 91, 36, 37, 38,
738 -1, 40, 329, 42, 43, -1, 45, -1, -1, 336,
739 -1, -1, -1, 340, -1, -1, 287, 288, 289, 290,
740 59, -1, -1, -1, -1, 64, 353, 354, 123, -1,
741 -1, 126, -1, 304, 305, 306, -1, -1, 309, -1,
742 -1, 312, 313, 314, -1, 287, -1, 289, 290, -1,
743 33, -1, 91, 36, 37, 38, -1, 40, -1, 42,
744 43, -1, 45, 305, 306, -1, -1, 309, -1, -1,
745 312, 313, 314, -1, -1, -1, -1, -1, -1, -1,
746 -1, 64, -1, -1, -1, -1, -1, 126, -1, -1,
747 -1, -1, -1, -1, -1, -1, -1, -1, -1, 257,
748 258, 259, 260, 261, -1, 263, 264, 265, 91, 33,
749 93, 269, 36, 37, 38, -1, 40, 41, 42, 43,
750 -1, 45, 280, -1, 282, 283, 284, 285, 286, -1,
751 -1, -1, -1, 291, 292, 293, 294, 295, 296, -1,
752 64, 299, -1, 126, -1, -1, -1, -1, -1, -1,
753 308, -1, 310, 311, -1, -1, -1, -1, 41, -1,
754 -1, 44, 257, 258, 259, 260, 261, 91, 263, 264,
755 265, -1, -1, -1, 269, 58, 59, -1, -1, -1,
756 63, -1, -1, -1, -1, 280, -1, 282, 283, 284,
757 285, 286, -1, -1, -1, -1, 291, 292, 293, 294,
758 295, 296, 126, -1, 299, -1, -1, -1, -1, -1,
759 93, -1, -1, 308, 41, 310, 311, 44, 257, 258,
760 259, 260, 261, -1, 263, 264, 265, -1, -1, -1,
761 269, 58, 59, -1, -1, -1, 63, -1, -1, -1,
762 -1, 280, -1, 282, 283, 284, 285, 286, -1, -1,
763 -1, -1, 291, 292, 293, 294, 295, 296, -1, -1,
764 299, -1, -1, -1, -1, -1, 93, -1, -1, 308,
765 -1, 310, 311, -1, 257, 258, 259, 260, 261, -1,
766 263, 264, 265, -1, 33, -1, 269, 36, 37, 38,
767 -1, 40, 41, 42, 43, -1, 45, 280, -1, 282,
768 283, 284, 285, 286, -1, -1, -1, -1, 291, 292,
769 293, 294, 295, 296, -1, 64, 299, -1, -1, -1,
770 -1, -1, -1, -1, -1, 308, -1, 310, 311, -1,
771 -1, -1, -1, 257, 258, 259, 260, 261, -1, 263,
772 264, 265, 91, 33, -1, 269, 36, 37, 38, -1,
773 40, -1, 42, 43, -1, 45, 280, -1, 282, 283,
774 284, 285, 286, -1, -1, -1, -1, 291, 292, 293,
775 294, 295, 296, -1, 64, 299, -1, 126, -1, -1,
776 -1, -1, -1, -1, 308, -1, 310, 311, -1, 272,
777 273, 274, 275, -1, -1, -1, -1, -1, 281, 33,
778 -1, 91, 36, 37, 38, 288, 40, 41, 42, 43,
779 -1, 45, -1, -1, 297, 298, -1, 300, 301, 302,
780 303, 304, -1, -1, -1, -1, -1, -1, -1, -1,
781 64, -1, -1, -1, -1, -1, 126, -1, -1, -1,
782 -1, -1, -1, -1, -1, 272, 273, 274, 275, -1,
783 -1, -1, -1, -1, 281, 33, -1, 91, 36, 37,
784 38, -1, 40, 41, 42, 43, -1, 45, -1, -1,
785 297, 298, -1, 300, 301, 302, 303, 304, -1, -1,
786 -1, -1, -1, -1, -1, -1, 64, -1, -1, -1,
787 -1, -1, 126, -1, -1, -1, -1, -1, -1, -1,
788 -1, -1, -1, -1, -1, -1, -1, -1, 257, 258,
789 259, 260, 261, 91, 263, 264, 265, -1, 33, -1,
790 269, 36, 37, 38, -1, 40, -1, 42, 43, -1,
791 45, 280, -1, 282, 283, 284, 285, 286, -1, -1,
792 -1, -1, 291, 292, 293, 294, 295, 296, 126, 64,
793 299, -1, -1, -1, -1, -1, -1, -1, -1, 308,
794 -1, 310, 311, -1, -1, -1, 256, 257, 258, 259,
795 260, 261, -1, 263, 264, 265, 91, -1, -1, 269,
796 41, -1, -1, 44, -1, -1, -1, -1, -1, -1,
797 280, -1, 282, 283, 284, 285, 286, 58, 59, -1,
798 -1, 291, 292, 293, 294, 295, 296, 91, -1, 299,
799 -1, 126, -1, -1, -1, -1, 41, -1, 308, 44,
800 310, 311, -1, 257, 258, 259, 260, 261, -1, 263,
801 264, 265, 93, 58, 59, 269, -1, -1, 63, 123,
802 -1, -1, -1, -1, -1, -1, 280, -1, 282, 283,
803 284, 285, 286, -1, -1, -1, -1, 291, 292, 293,
804 294, 295, 296, -1, -1, 299, 91, -1, 93, -1,
805 -1, -1, -1, -1, 308, 41, 310, 311, 44, 257,
806 258, 259, 260, 261, -1, 263, 264, 265, -1, -1,
807 -1, 269, 58, 59, -1, -1, -1, 63, 123, -1,
808 -1, -1, 280, -1, 282, 283, 284, 285, 286, -1,
809 -1, -1, -1, 291, 292, 293, 294, 295, 296, -1,
810 -1, 299, -1, -1, -1, 91, -1, 93, -1, -1,
811 308, -1, 310, 311, -1, -1, -1, -1, 41, -1,
812 -1, 44, 257, 258, 259, 260, 261, -1, 263, 264,
813 265, -1, -1, -1, 269, 58, 59, 123, -1, -1,
814 63, -1, -1, -1, -1, 280, -1, 282, 283, 284,
815 285, 286, -1, -1, -1, -1, 291, 292, 293, 294,
816 295, 296, -1, -1, 299, -1, 41, -1, 91, 44,
817 93, -1, -1, 308, -1, 310, 311, -1, -1, -1,
818 -1, -1, -1, 58, 59, 289, 290, -1, 63, -1,
819 -1, 272, 273, 274, 275, -1, -1, -1, -1, -1,
820 123, 305, 306, -1, -1, 309, -1, -1, 312, 313,
821 314, -1, -1, -1, -1, -1, 297, 298, 93, -1,
822 -1, -1, -1, -1, -1, -1, -1, 272, 273, 274,
823 275, -1, 41, -1, -1, 44, 281, -1, -1, -1,
824 -1, -1, 287, 288, 289, 290, -1, -1, 123, 58,
825 59, -1, 297, 298, 63, 300, 301, 302, 303, 304,
826 305, 306, -1, -1, 309, -1, -1, 312, 313, 314,
827 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
828 -1, -1, 91, -1, 93, -1, 272, 273, 274, 275,
829 -1, 41, -1, -1, 44, 281, -1, -1, -1, -1,
830 -1, 287, 288, 289, 290, -1, -1, -1, 58, 59,
831 -1, 297, 298, 63, 300, 301, 302, 303, 304, 305,
832 306, -1, -1, 309, -1, -1, 312, 313, 314, -1,
833 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
834 -1, -1, -1, 93, -1, -1, -1, -1, -1, 272,
835 273, 274, 275, -1, -1, -1, -1, -1, 281, -1,
836 -1, -1, -1, -1, 287, 288, 289, 290, -1, -1,
837 -1, -1, -1, 123, 297, 298, -1, 300, 301, 302,
838 303, 304, 305, 306, -1, -1, 309, -1, -1, 312,
839 313, 314, -1, -1, -1, -1, -1, 272, 273, 274,
840 275, -1, 41, -1, -1, -1, 281, -1, -1, -1,
841 -1, -1, 287, 288, 289, 290, -1, -1, -1, 58,
842 59, -1, 297, 298, 63, 300, 301, 302, 303, 304,
843 305, 306, -1, -1, 309, -1, -1, 312, 313, 314,
844 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
845 -1, -1, 91, -1, 93, -1, -1, -1, -1, -1,
846 -1, -1, -1, 272, 273, 274, 275, -1, -1, -1,
847 -1, -1, 281, -1, -1, -1, -1, -1, 287, 288,
848 289, 290, -1, -1, 123, -1, -1, -1, 297, 298,
849 -1, 300, 301, 302, 303, 304, 305, 306, -1, -1,
850 309, -1, -1, 312, 313, 314, -1, -1, -1, -1,
851 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
852 -1, -1, 272, 273, 274, 275, -1, 41, -1, -1,
853 -1, 281, -1, -1, -1, -1, -1, 287, 288, 289,
854 290, -1, -1, -1, 58, 59, -1, 297, 298, 63,
855 300, 301, 302, 303, 304, 305, 306, -1, -1, 309,
856 -1, -1, 312, 313, 314, -1, -1, -1, -1, -1,
857 41, -1, -1, 44, -1, -1, -1, 91, -1, 93,
858 41, -1, -1, 44, -1, -1, -1, 58, 59, -1,
859 -1, -1, 63, -1, -1, -1, -1, 58, 59, -1,
860 -1, -1, 63, -1, -1, -1, -1, -1, -1, 123,
861 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
862 -1, -1, 93, -1, -1, -1, -1, -1, -1, -1,
863 -1, -1, 93, 272, 273, 274, 275, -1, 41, -1,
864 -1, 44, 281, -1, -1, -1, -1, -1, 287, 288,
865 289, 290, 123, -1, -1, 58, 59, -1, 297, 298,
866 63, 300, 301, 302, 303, 304, 305, 306, -1, -1,
867 309, -1, -1, 312, 313, 314, -1, -1, -1, -1,
868 -1, 41, -1, -1, -1, -1, -1, -1, -1, -1,
869 93, -1, -1, -1, -1, -1, -1, -1, 58, 59,
870 -1, -1, -1, 63, -1, -1, -1, -1, -1, -1,
871 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
872 123, -1, -1, -1, -1, 41, -1, -1, 44, -1,
873 -1, 91, -1, 93, -1, -1, -1, -1, -1, -1,
874 -1, -1, 58, 59, -1, -1, -1, 63, -1, -1,
875 -1, -1, -1, -1, -1, -1, -1, -1, 272, 273,
876 274, 275, -1, 123, -1, -1, -1, 281, -1, -1,
877 -1, -1, -1, 287, 288, 289, 290, 93, -1, -1,
878 -1, -1, -1, 297, 298, -1, 300, 301, 302, 303,
879 304, 305, 306, -1, -1, 309, -1, -1, 312, 313,
880 314, 272, 273, 274, 275, -1, 41, 123, -1, 44,
881 281, 272, 273, 274, 275, -1, 287, 288, 289, 290,
882 281, -1, -1, 58, 59, -1, 297, 298, 63, 300,
883 301, 302, 303, 304, 305, 306, 297, 298, 309, 300,
884 301, 312, 313, 314, -1, -1, -1, -1, -1, -1,
885 -1, -1, -1, -1, -1, -1, -1, -1, 93, -1,
886 -1, -1, -1, -1, -1, -1, -1, -1, -1, 272,
887 273, 274, 275, -1, 41, -1, -1, 44, 281, -1,
888 -1, -1, -1, -1, 287, 288, 289, 290, -1, -1,
889 -1, 58, 59, -1, 297, 298, 63, 300, 301, 302,
890 303, 304, 305, 306, -1, -1, 309, -1, -1, 312,
891 313, 314, 272, 273, 274, 275, -1, 41, -1, -1,
892 44, 281, -1, -1, -1, -1, 93, 287, 288, 289,
893 290, -1, -1, -1, 58, 59, -1, 297, 298, 63,
894 300, 301, 302, 303, 304, 305, 306, -1, -1, 309,
895 -1, -1, 312, 313, 314, -1, 272, 273, 274, 275,
896 -1, 41, -1, -1, 44, 281, -1, -1, -1, 93,
897 -1, 287, 288, 289, 290, -1, -1, -1, 58, 59,
898 -1, 297, 298, 63, 300, 301, 302, 303, 304, 305,
899 306, -1, -1, 309, -1, -1, 312, 313, 314, -1,
900 -1, -1, -1, -1, 41, -1, -1, 44, -1, -1,
901 -1, -1, -1, 93, -1, -1, -1, -1, -1, -1,
902 -1, 58, 59, -1, -1, -1, 63, -1, -1, -1,
903 -1, -1, -1, -1, -1, -1, -1, 272, 273, 274,
904 275, -1, 41, -1, -1, 44, 281, -1, -1, -1,
905 -1, -1, 287, 288, 289, 290, 93, -1, -1, 58,
906 59, -1, 297, 298, 63, 300, 301, 302, 303, 304,
907 305, 306, -1, -1, 309, -1, -1, 312, 313, 314,
908 41, -1, -1, 44, -1, -1, -1, -1, -1, -1,
909 -1, -1, -1, -1, 93, -1, -1, 58, 59, -1,
910 -1, -1, 63, -1, -1, 272, 273, 274, 275, -1,
911 -1, -1, -1, -1, 281, -1, -1, -1, -1, -1,
912 287, 288, 289, 290, -1, -1, -1, -1, -1, -1,
913 297, 298, 93, 300, 301, 302, 303, 304, 305, 306,
914 -1, -1, 309, -1, -1, 312, 313, 314, 272, 273,
915 274, 275, -1, 41, -1, -1, 44, 281, -1, -1,
916 -1, -1, -1, 287, 288, 289, 290, -1, -1, -1,
917 58, 59, -1, 297, 298, 63, 300, 301, 302, 303,
918 304, 305, 306, -1, -1, 309, -1, -1, 312, 313,
919 314, -1, 272, 273, 274, 275, -1, 41, -1, -1,
920 44, 281, -1, -1, -1, 93, -1, 287, 288, 289,
921 290, -1, -1, -1, 58, 59, -1, 297, 298, 63,
922 300, 301, 302, 303, 304, 305, 306, -1, -1, 309,
923 -1, -1, 312, 313, 314, 272, 273, 274, 275, -1,
924 41, -1, -1, 44, 281, -1, -1, -1, -1, 93,
925 287, 288, 289, 290, -1, -1, -1, 58, 59, -1,
926 297, 298, 63, 300, 301, 302, 303, 304, 305, 306,
927 -1, -1, -1, 272, 273, 274, 275, -1, 41, -1,
928 -1, 44, 281, -1, -1, -1, -1, -1, 287, 288,
929 289, 290, 93, -1, -1, 58, 59, -1, 297, 298,
930 63, 300, 301, 302, 303, 304, 305, 306, -1, -1,
931 -1, 272, 273, 274, 275, -1, 41, -1, -1, 44,
932 281, -1, -1, -1, -1, -1, 287, 288, 289, 290,
933 93, -1, -1, 58, 59, -1, 297, 298, 63, 300,
934 301, 302, 303, 304, 305, 306, -1, -1, -1, -1,
935 -1, -1, 41, -1, -1, 44, -1, -1, -1, -1,
936 -1, -1, -1, -1, -1, -1, -1, -1, 93, 58,
937 59, -1, -1, -1, 63, -1, -1, -1, -1, -1,
938 -1, -1, -1, -1, 272, 273, 274, 275, -1, 41,
939 -1, -1, 44, 281, -1, -1, -1, -1, -1, 287,
940 288, 289, 290, -1, 93, -1, 58, 59, -1, 297,
941 298, 63, 300, 301, 302, 303, 304, 305, 306, -1,
942 -1, -1, -1, -1, -1, -1, -1, -1, 272, 273,
943 274, 275, -1, 41, -1, -1, 44, 281, -1, -1,
944 -1, 93, -1, 287, 288, 289, 290, -1, -1, -1,
945 58, 59, -1, 297, 298, 63, 300, 301, 302, 303,
946 304, 305, 306, -1, -1, -1, -1, -1, -1, -1,
947 -1, 272, 273, 274, 275, -1, 41, -1, -1, 44,
948 281, -1, -1, -1, -1, 93, 287, 288, 289, 290,
949 -1, -1, -1, 58, 59, -1, 297, 298, 63, 300,
950 301, 302, 303, 304, 305, 306, -1, -1, -1, 272,
951 273, 274, 275, -1, 41, -1, -1, 44, 281, -1,
952 -1, -1, -1, -1, 287, 288, 289, 290, 93, -1,
953 -1, 58, 59, -1, 297, 298, 63, 300, 301, 302,
954 303, 304, 305, 306, -1, -1, -1, 272, 273, 274,
955 275, -1, 41, -1, -1, 44, 281, -1, -1, -1,
956 -1, -1, 287, 288, 289, 290, 93, -1, -1, 58,
957 59, -1, 297, 298, 63, 300, 301, 302, 303, 304,
958 305, -1, -1, 272, 273, 274, 275, -1, 41, -1,
959 -1, 44, 281, -1, -1, -1, -1, -1, 287, 288,
960 -1, -1, -1, -1, 93, 58, 59, -1, 297, 298,
961 63, 300, 301, 302, 303, 304, 305, -1, -1, -1,
962 272, 273, 274, 275, -1, 41, -1, -1, 44, 281,
963 -1, -1, -1, -1, -1, 287, 288, -1, -1, -1,
964 93, -1, 58, 59, -1, 297, 298, 63, 300, 301,
965 302, 303, 304, -1, -1, -1, 91, -1, -1, -1,
966 -1, -1, -1, -1, 272, 273, 274, 275, -1, 41,
967 63, -1, 44, 281, -1, -1, -1, 93, -1, 287,
968 288, -1, -1, -1, -1, -1, 58, 59, 123, 297,
969 298, 63, 300, 301, 302, 303, 304, -1, 91, -1,
970 -1, 58, -1, -1, -1, -1, 63, 272, 273, 274,
971 275, -1, -1, -1, -1, -1, 281, -1, -1, -1,
972 -1, 93, 287, 288, -1, -1, -1, -1, -1, -1,
973 123, -1, 297, 298, 91, 300, 301, 302, 303, 304,
974 -1, -1, -1, -1, -1, 272, 273, 274, 275, -1,
975 -1, -1, -1, -1, 281, -1, -1, -1, -1, -1,
976 287, 288, -1, -1, -1, 63, 123, -1, -1, -1,
977 297, 298, -1, 300, 301, 302, 303, 304, -1, -1,
978 -1, -1, -1, 272, 273, 274, 275, -1, -1, -1,
979 -1, -1, 281, 91, -1, -1, -1, -1, 25, 26,
980 -1, -1, -1, -1, -1, -1, -1, -1, 297, 298,
981 37, 300, 301, 302, 303, 304, 43, 44, 45, 272,
982 273, 274, 275, 50, -1, 123, -1, -1, 281, 91,
983 -1, -1, -1, -1, -1, 62, 63, 64, 65, -1,
984 -1, -1, -1, -1, 297, 298, -1, 300, 301, 302,
985 303, -1, 287, 288, 289, 290, 272, 273, 274, 275,
986 -1, 123, -1, -1, -1, 281, 301, 302, 303, 304,
987 305, 306, -1, -1, 309, -1, -1, 312, 313, 314,
988 107, 297, 298, -1, 300, 301, 302, -1, 281, -1,
989 -1, -1, -1, -1, 287, 288, 289, 290, -1, -1,
990 272, 273, 274, 275, -1, -1, -1, 300, 301, 302,
991 303, 304, 305, 306, -1, -1, 309, -1, -1, 312,
992 313, 314, -1, -1, 281, 297, 298, -1, 300, -1,
993 287, 288, 289, 290, -1, -1, -1, -1, -1, 166,
994 -1, -1, -1, 300, 301, 302, 303, 304, 305, 306,
995 30, -1, 309, -1, -1, 312, 313, 314, 38, -1,
996 -1, -1, 42, 190, -1, 45, -1, -1, -1, -1,
997 -1, -1, 52, 53, 54, 55, 56, -1, -1, 59,
998 60, -1, -1, 281, -1, -1, 66, -1, -1, 287,
999 288, 289, 290, -1, -1, -1, -1, -1, -1, -1,
1000 -1, -1, -1, 301, 302, 303, 304, 305, 306, -1,
1001 -1, 309, -1, 93, 312, 313, 314, -1, -1, -1,
1002 -1, -1, -1, -1, -1, 287, 288, 289, 290, -1,
1003 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1004 302, 303, 304, 305, 306, -1, -1, 309, -1, -1,
1005 312, 313, 314, -1, -1, -1, -1, -1, -1, -1,
1006 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1007 150, 151, 152, 153, 154, 155, 156, 157, 158, 159,
1008 160, 161, 162, 163, -1, -1, -1, -1, -1, -1,
1009 -1, -1, -1, -1, -1, 175, -1, -1, -1, -1,
1010 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1011 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1012 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1013 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1014 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1015 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1016 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1017 -1, -1, 252, -1, -1, -1, -1, -1, -1, -1,
1018 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1019 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1026 #define YYMAXTOKEN 314
1029 "end-of-file",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1030 "'!'",0,0,"'$'","'%'","'&'",0,"'('","')'","'*'","'+'","','","'-'",0,0,0,0,0,0,0,
1031 0,0,0,0,0,"':'","';'",0,0,0,"'?'","'@'",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1032 0,0,0,0,0,0,"'['",0,"']'",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1033 0,0,"'{'",0,"'}'","'~'",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1034 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1035 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1036 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"WORD","METHOD","FUNCMETH","THING",
1037 "PMFUNC","PRIVATEREF","FUNC0SUB","UNIOPSUB","LSTOPSUB","LABEL","FORMAT","SUB",
1038 "ANONSUB","PACKAGE","USE","WHILE","UNTIL","IF","UNLESS","ELSE","ELSIF",
1039 "CONTINUE","FOR","LOOPEX","DOTDOT","FUNC0","FUNC1","FUNC","UNIOP","LSTOP",
1040 "RELOP","EQOP","MULOP","ADDOP","DOLSHARP","DO","HASHBRACK","NOAMP","LOCAL","MY",
1041 "OROP","ANDOP","NOTOP","ASSIGNOP","OROR","ANDAND","BITOROP","BITANDOP",
1042 "SHIFTOP","MATCHOP","UMINUS","REFGEN","POWOP","PREINC","PREDEC","POSTINC",
1048 "prog : $$1 lineseq",
1049 "block : '{' remember lineseq '}'",
1051 "mblock : '{' mremember lineseq '}'",
1054 "lineseq : lineseq decl",
1055 "lineseq : lineseq line",
1056 "line : label cond",
1059 "line : label sideff ';'",
1062 "sideff : expr IF expr",
1063 "sideff : expr UNLESS expr",
1064 "sideff : expr WHILE expr",
1065 "sideff : expr UNTIL iexpr",
1067 "else : ELSE mblock",
1068 "else : ELSIF '(' mexpr ')' mblock else",
1069 "cond : IF '(' remember mexpr ')' mblock else",
1070 "cond : UNLESS '(' remember miexpr ')' mblock else",
1072 "cont : CONTINUE block",
1073 "loop : label WHILE '(' remember mtexpr ')' mblock cont",
1074 "loop : label UNTIL '(' remember miexpr ')' mblock cont",
1075 "loop : label FOR MY remember my_scalar '(' mexpr ')' mblock cont",
1076 "loop : label FOR scalar '(' remember mexpr ')' mblock cont",
1077 "loop : label FOR '(' remember mexpr ')' mblock cont",
1078 "loop : label FOR '(' remember mnexpr ';' mtexpr ';' mnexpr ')' mblock",
1079 "loop : label block cont",
1095 "format : FORMAT startformsub formname block",
1098 "subrout : SUB startsub subname proto subbody",
1107 "package : PACKAGE WORD ';'",
1108 "package : PACKAGE ';'",
1110 "use : USE startsub $$2 WORD WORD listexpr ';'",
1111 "expr : expr ANDOP expr",
1112 "expr : expr OROP expr",
1114 "argexpr : argexpr ','",
1115 "argexpr : argexpr ',' term",
1117 "listop : LSTOP indirob argexpr",
1118 "listop : FUNC '(' indirob expr ')'",
1119 "listop : term ARROW method '(' listexprcom ')'",
1120 "listop : METHOD indirob listexpr",
1121 "listop : FUNCMETH indirob '(' listexprcom ')'",
1122 "listop : LSTOP listexpr",
1123 "listop : FUNC '(' listexprcom ')'",
1125 "listop : LSTOPSUB startanonsub block $$3 listexpr",
1128 "term : term ASSIGNOP term",
1129 "term : term POWOP term",
1130 "term : term MULOP term",
1131 "term : term ADDOP term",
1132 "term : term SHIFTOP term",
1133 "term : term RELOP term",
1134 "term : term EQOP term",
1135 "term : term BITANDOP term",
1136 "term : term BITOROP term",
1137 "term : term DOTDOT term",
1138 "term : term ANDAND term",
1139 "term : term OROR term",
1140 "term : term '?' term ':' term",
1141 "term : term MATCHOP term",
1146 "term : REFGEN term",
1147 "term : term POSTINC",
1148 "term : term POSTDEC",
1149 "term : PREINC term",
1150 "term : PREDEC term",
1151 "term : local term",
1152 "term : '(' expr ')'",
1154 "term : '[' expr ']'",
1156 "term : HASHBRACK expr ';' '}'",
1157 "term : HASHBRACK ';' '}'",
1158 "term : ANONSUB startanonsub proto block",
1160 "term : star '{' expr ';' '}'",
1162 "term : scalar '[' expr ']'",
1163 "term : term ARROW '[' expr ']'",
1164 "term : term '[' expr ']'",
1168 "term : scalar '{' expr ';' '}'",
1169 "term : term ARROW '{' expr ';' '}'",
1170 "term : term '{' expr ';' '}'",
1171 "term : '(' expr ')' '[' expr ']'",
1172 "term : '(' ')' '[' expr ']'",
1173 "term : ary '[' expr ']'",
1174 "term : ary '{' expr ';' '}'",
1177 "term : amper '(' ')'",
1178 "term : amper '(' expr ')'",
1179 "term : NOAMP WORD listexpr",
1182 "term : DO WORD '(' ')'",
1183 "term : DO WORD '(' expr ')'",
1184 "term : DO scalar '(' ')'",
1185 "term : DO scalar '(' expr ')'",
1187 "term : LOOPEX term",
1188 "term : NOTOP argexpr",
1190 "term : UNIOP block",
1191 "term : UNIOP term",
1192 "term : UNIOPSUB term",
1194 "term : FUNC0 '(' ')'",
1196 "term : FUNC1 '(' ')'",
1197 "term : FUNC1 '(' expr ')'",
1198 "term : PMFUNC '(' term ')'",
1199 "term : PMFUNC '(' term ',' term ')'",
1203 "listexpr : argexpr",
1205 "listexprcom : expr",
1206 "listexprcom : expr ','",
1209 "my_scalar : scalar",
1210 "amper : '&' indirob",
1211 "scalar : '$' indirob",
1212 "ary : '@' indirob",
1213 "hsh : '%' indirob",
1214 "arylen : DOLSHARP indirob",
1215 "star : '*' indirob",
1219 "indirob : PRIVATEREF",
1222 #define yyclearin (yychar=(-1))
1223 #define yyerrok (yyerrflag=0)
1226 #define YYMAXDEPTH YYSTACKSIZE
1230 #define YYSTACKSIZE YYMAXDEPTH
1232 #define YYSTACKSIZE 500
1233 #define YYMAXDEPTH 500
1244 #line 1315 "perly.c"
1245 #define YYABORT goto yyabort
1246 #define YYACCEPT goto yyaccept
1247 #define YYERROR goto yyerrlab
1264 struct ysv* ysave = (struct ysv*)ptr;
1265 if (ysave->yyss) Safefree(ysave->yyss);
1266 if (ysave->yyvs) Safefree(ysave->yyvs);
1267 yydebug = ysave->oldyydebug;
1268 yynerrs = ysave->oldyynerrs;
1269 yyerrflag = ysave->oldyyerrflag;
1270 yychar = ysave->oldyychar;
1271 yyval = ysave->oldyyval;
1272 yylval = ysave->oldyylval;
1279 register int yym, yyn, yystate;
1280 register short *yyssp;
1281 register YYSTYPE *yyvsp;
1284 unsigned yystacksize = YYSTACKSIZE;
1288 extern char *getenv();
1291 struct ysv *ysave = (struct ysv*)safemalloc(sizeof(struct ysv));
1292 SAVEDESTRUCTOR(yydestruct, ysave);
1293 ysave->oldyydebug = yydebug;
1294 ysave->oldyynerrs = yynerrs;
1295 ysave->oldyyerrflag = yyerrflag;
1296 ysave->oldyychar = yychar;
1297 ysave->oldyyval = yyval;
1298 ysave->oldyylval = yylval;
1301 if (yys = getenv("YYDEBUG"))
1304 if (yyn >= '0' && yyn <= '9')
1305 yydebug = yyn - '0';
1314 ** Initialize private stacks (yyparse may be called from an action)
1316 ysave->yyss = yyss = (short*)safemalloc(yystacksize*sizeof(short));
1317 ysave->yyvs = yyvs = (YYSTYPE*)safemalloc(yystacksize*sizeof(YYSTYPE));
1323 *yyssp = yystate = 0;
1326 if (yyn = yydefred[yystate]) goto yyreduce;
1329 if ((yychar = yylex()) < 0) yychar = 0;
1334 if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
1335 if (!yys) yys = "illegal-symbol";
1336 PerlIO_printf(Perl_debug_log, "yydebug: state %d, reading %d (%s)\n", yystate,
1341 if ((yyn = yysindex[yystate]) && (yyn += yychar) >= 0 &&
1342 yyn <= YYTABLESIZE && yycheck[yyn] == yychar)
1346 PerlIO_printf(Perl_debug_log, "yydebug: state %d, shifting to state %d\n",
1347 yystate, yytable[yyn]);
1349 if (yyssp >= yyss + yystacksize - 1)
1352 ** reallocate and recover. Note that pointers
1353 ** have to be reset, or bad things will happen
1355 int yyps_index = (yyssp - yyss);
1356 int yypv_index = (yyvsp - yyvs);
1357 yystacksize += YYSTACKSIZE;
1358 ysave->yyvs = yyvs =
1359 (YYSTYPE*)realloc((char*)yyvs,yystacksize * sizeof(YYSTYPE));
1360 ysave->yyss = yyss =
1361 (short*)realloc((char*)yyss,yystacksize * sizeof(short));
1364 yyssp = yyss + yyps_index;
1365 yyvsp = yyvs + yypv_index;
1367 *++yyssp = yystate = yytable[yyn];
1370 if (yyerrflag > 0) --yyerrflag;
1373 if ((yyn = yyrindex[yystate]) && (yyn += yychar) >= 0 &&
1374 yyn <= YYTABLESIZE && yycheck[yyn] == yychar)
1379 if (yyerrflag) goto yyinrecovery;
1384 yyerror("syntax error");
1396 if ((yyn = yysindex[*yyssp]) && (yyn += YYERRCODE) >= 0 &&
1397 yyn <= YYTABLESIZE && yycheck[yyn] == YYERRCODE)
1401 PerlIO_printf(Perl_debug_log,
1402 "yydebug: state %d, error recovery shifting to state %d\n",
1403 *yyssp, yytable[yyn]);
1405 if (yyssp >= yyss + yystacksize - 1)
1408 ** reallocate and recover. Note that pointers
1409 ** have to be reset, or bad things will happen
1411 int yyps_index = (yyssp - yyss);
1412 int yypv_index = (yyvsp - yyvs);
1413 yystacksize += YYSTACKSIZE;
1414 ysave->yyvs = yyvs = (YYSTYPE*)realloc((char*)yyvs,
1415 yystacksize * sizeof(YYSTYPE));
1416 ysave->yyss = yyss = (short*)realloc((char*)yyss,
1417 yystacksize * sizeof(short));
1420 yyssp = yyss + yyps_index;
1421 yyvsp = yyvs + yypv_index;
1423 *++yyssp = yystate = yytable[yyn];
1431 PerlIO_printf(Perl_debug_log,
1432 "yydebug: error recovery discarding state %d\n",
1435 if (yyssp <= yyss) goto yyabort;
1443 if (yychar == 0) goto yyabort;
1448 if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
1449 if (!yys) yys = "illegal-symbol";
1450 PerlIO_printf(Perl_debug_log,
1451 "yydebug: state %d, error recovery discards token %d (%s)\n",
1452 yystate, yychar, yys);
1461 PerlIO_printf(Perl_debug_log, "yydebug: state %d, reducing by rule %d (%s)\n",
1462 yystate, yyn, yyrule[yyn]);
1465 yyval = yyvsp[1-yym];
1471 #if defined(YYDEBUG) && defined(DEBUGGING)
1472 yydebug = (debug & 1);
1479 { newPROG(yyvsp[0].opval); }
1483 { if (copline > (line_t)yyvsp[-3].ival)
1484 copline = yyvsp[-3].ival;
1485 yyval.opval = block_end(yyvsp[-2].ival, yyvsp[-1].opval); }
1489 { yyval.ival = block_start(TRUE); }
1493 { if (copline > (line_t)yyvsp[-3].ival)
1494 copline = yyvsp[-3].ival;
1495 yyval.opval = block_end(yyvsp[-2].ival, yyvsp[-1].opval); }
1499 { yyval.ival = block_start(FALSE); }
1503 { yyval.opval = Nullop; }
1507 { yyval.opval = yyvsp[-1].opval; }
1511 { yyval.opval = append_list(OP_LINESEQ,
1512 (LISTOP*)yyvsp[-1].opval, (LISTOP*)yyvsp[0].opval);
1513 pad_reset_pending = TRUE;
1514 if (yyvsp[-1].opval && yyvsp[0].opval) hints |= HINT_BLOCK_SCOPE; }
1518 { yyval.opval = newSTATEOP(0, yyvsp[-1].pval, yyvsp[0].opval); }
1522 { if (yyvsp[-1].pval != Nullch) {
1523 yyval.opval = newSTATEOP(0, yyvsp[-1].pval, newOP(OP_NULL, 0));
1526 yyval.opval = Nullop;
1533 { yyval.opval = newSTATEOP(0, yyvsp[-2].pval, yyvsp[-1].opval);
1538 { yyval.opval = Nullop; }
1542 { yyval.opval = yyvsp[0].opval; }
1546 { yyval.opval = newLOGOP(OP_AND, 0, yyvsp[0].opval, yyvsp[-2].opval); }
1550 { yyval.opval = newLOGOP(OP_OR, 0, yyvsp[0].opval, yyvsp[-2].opval); }
1554 { yyval.opval = newLOOPOP(OPf_PARENS, 1, scalar(yyvsp[0].opval), yyvsp[-2].opval); }
1558 { yyval.opval = newLOOPOP(OPf_PARENS, 1, yyvsp[0].opval, yyvsp[-2].opval);}
1562 { yyval.opval = Nullop; }
1566 { yyval.opval = scope(yyvsp[0].opval); }
1570 { copline = yyvsp[-5].ival;
1571 yyval.opval = newSTATEOP(0, Nullch,
1572 newCONDOP(0, yyvsp[-3].opval, scope(yyvsp[-1].opval), yyvsp[0].opval));
1573 hints |= HINT_BLOCK_SCOPE; }
1577 { copline = yyvsp[-6].ival;
1578 yyval.opval = block_end(yyvsp[-4].ival,
1579 newCONDOP(0, yyvsp[-3].opval, scope(yyvsp[-1].opval), yyvsp[0].opval)); }
1583 { copline = yyvsp[-6].ival;
1584 yyval.opval = block_end(yyvsp[-4].ival,
1585 newCONDOP(0, yyvsp[-3].opval, scope(yyvsp[-1].opval), yyvsp[0].opval)); }
1589 { yyval.opval = Nullop; }
1593 { yyval.opval = scope(yyvsp[0].opval); }
1597 { copline = yyvsp[-6].ival;
1598 yyval.opval = block_end(yyvsp[-4].ival,
1599 newSTATEOP(0, yyvsp[-7].pval,
1600 newWHILEOP(0, 1, (LOOP*)Nullop,
1601 yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval))); }
1605 { copline = yyvsp[-6].ival;
1606 yyval.opval = block_end(yyvsp[-4].ival,
1607 newSTATEOP(0, yyvsp[-7].pval,
1608 newWHILEOP(0, 1, (LOOP*)Nullop,
1609 yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval))); }
1613 { yyval.opval = block_end(yyvsp[-6].ival,
1614 newFOROP(0, yyvsp[-9].pval, yyvsp[-8].ival, yyvsp[-5].opval, yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval)); }
1618 { yyval.opval = block_end(yyvsp[-4].ival,
1619 newFOROP(0, yyvsp[-8].pval, yyvsp[-7].ival, mod(yyvsp[-6].opval, OP_ENTERLOOP),
1620 yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval)); }
1624 { yyval.opval = block_end(yyvsp[-4].ival,
1625 newFOROP(0, yyvsp[-7].pval, yyvsp[-6].ival, Nullop, yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval)); }
1629 { copline = yyvsp[-9].ival;
1630 yyval.opval = block_end(yyvsp[-7].ival,
1631 append_elem(OP_LINESEQ, scalar(yyvsp[-6].opval),
1632 newSTATEOP(0, yyvsp[-10].pval,
1633 newWHILEOP(0, 1, (LOOP*)Nullop,
1634 scalar(yyvsp[-4].opval),
1635 yyvsp[0].opval, scalar(yyvsp[-2].opval))))); }
1639 { yyval.opval = newSTATEOP(0,
1640 yyvsp[-2].pval, newWHILEOP(0, 1, (LOOP*)Nullop,
1641 Nullop, yyvsp[-1].opval, yyvsp[0].opval)); }
1645 { yyval.opval = Nullop; }
1649 { (void)scan_num("1"); yyval.opval = yylval.opval; }
1653 { yyval.opval = invert(scalar(yyvsp[0].opval)); }
1657 { yyval.opval = yyvsp[0].opval; intro_my(); }
1661 { yyval.opval = yyvsp[0].opval; intro_my(); }
1665 { yyval.opval = yyvsp[0].opval; intro_my(); }
1669 { yyval.opval = yyvsp[0].opval; intro_my(); }
1673 { yyval.pval = Nullch; }
1693 { newFORM(yyvsp[-2].ival, yyvsp[-1].opval, yyvsp[0].opval); }
1697 { yyval.opval = yyvsp[0].opval; }
1701 { yyval.opval = Nullop; }
1705 { newSUB(yyvsp[-3].ival, yyvsp[-2].opval, yyvsp[-1].opval, yyvsp[0].opval); }
1709 { yyval.ival = start_subparse(FALSE, 0); }
1713 { yyval.ival = start_subparse(FALSE, CVf_ANON); }
1717 { yyval.ival = start_subparse(TRUE, 0); }
1721 { char *name = SvPVx(((SVOP*)yyvsp[0].opval)->op_sv, na);
1722 if (strEQ(name, "BEGIN") || strEQ(name, "END"))
1723 CvUNIQUE_on(compcv);
1724 yyval.opval = yyvsp[0].opval; }
1728 { yyval.opval = Nullop; }
1732 { yyval.opval = yyvsp[0].opval; }
1736 { yyval.opval = Nullop; expect = XSTATE; }
1740 { package(yyvsp[-1].opval); }
1744 { package(Nullop); }
1748 { CvUNIQUE_on(compcv); /* It's a BEGIN {} */ }
1752 { utilize(yyvsp[-6].ival, yyvsp[-5].ival, yyvsp[-3].opval, yyvsp[-2].opval, yyvsp[-1].opval); }
1756 { yyval.opval = newLOGOP(OP_AND, 0, yyvsp[-2].opval, yyvsp[0].opval); }
1760 { yyval.opval = newLOGOP(yyvsp[-1].ival, 0, yyvsp[-2].opval, yyvsp[0].opval); }
1764 { yyval.opval = yyvsp[-1].opval; }
1768 { yyval.opval = append_elem(OP_LIST, yyvsp[-2].opval, yyvsp[0].opval); }
1772 { yyval.opval = convert(yyvsp[-2].ival, OPf_STACKED,
1773 prepend_elem(OP_LIST, newGVREF(yyvsp[-2].ival,yyvsp[-1].opval), yyvsp[0].opval) ); }
1777 { yyval.opval = convert(yyvsp[-4].ival, OPf_STACKED,
1778 prepend_elem(OP_LIST, newGVREF(yyvsp[-4].ival,yyvsp[-2].opval), yyvsp[-1].opval) ); }
1782 { yyval.opval = convert(OP_ENTERSUB, OPf_STACKED,
1783 append_elem(OP_LIST,
1784 prepend_elem(OP_LIST, scalar(yyvsp[-5].opval), yyvsp[-1].opval),
1785 newUNOP(OP_METHOD, 0, yyvsp[-3].opval))); }
1789 { yyval.opval = convert(OP_ENTERSUB, OPf_STACKED,
1790 append_elem(OP_LIST,
1791 prepend_elem(OP_LIST, yyvsp[-1].opval, yyvsp[0].opval),
1792 newUNOP(OP_METHOD, 0, yyvsp[-2].opval))); }
1796 { yyval.opval = convert(OP_ENTERSUB, OPf_STACKED,
1797 append_elem(OP_LIST,
1798 prepend_elem(OP_LIST, yyvsp[-3].opval, yyvsp[-1].opval),
1799 newUNOP(OP_METHOD, 0, yyvsp[-4].opval))); }
1803 { yyval.opval = convert(yyvsp[-1].ival, 0, yyvsp[0].opval); }
1807 { yyval.opval = convert(yyvsp[-3].ival, 0, yyvsp[-1].opval); }
1811 { yyvsp[0].opval = newANONSUB(yyvsp[-1].ival, 0, yyvsp[0].opval); }
1815 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
1816 append_elem(OP_LIST,
1817 prepend_elem(OP_LIST, yyvsp[-2].opval, yyvsp[0].opval), yyvsp[-4].opval)); }
1821 { yyval.opval = newASSIGNOP(OPf_STACKED, yyvsp[-2].opval, yyvsp[-1].ival, yyvsp[0].opval); }
1825 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1829 { if (yyvsp[-1].ival != OP_REPEAT)
1830 scalar(yyvsp[-2].opval);
1831 yyval.opval = newBINOP(yyvsp[-1].ival, 0, yyvsp[-2].opval, scalar(yyvsp[0].opval)); }
1835 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1839 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1843 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1847 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1851 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1855 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1859 { yyval.opval = newRANGE(yyvsp[-1].ival, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval));}
1863 { yyval.opval = newLOGOP(OP_AND, 0, yyvsp[-2].opval, yyvsp[0].opval); }
1867 { yyval.opval = newLOGOP(OP_OR, 0, yyvsp[-2].opval, yyvsp[0].opval); }
1871 { yyval.opval = newCONDOP(0, yyvsp[-4].opval, yyvsp[-2].opval, yyvsp[0].opval); }
1875 { yyval.opval = bind_match(yyvsp[-1].ival, yyvsp[-2].opval, yyvsp[0].opval); }
1879 { yyval.opval = newUNOP(OP_NEGATE, 0, scalar(yyvsp[0].opval)); }
1883 { yyval.opval = yyvsp[0].opval; }
1887 { yyval.opval = newUNOP(OP_NOT, 0, scalar(yyvsp[0].opval)); }
1891 { yyval.opval = newUNOP(OP_COMPLEMENT, 0, scalar(yyvsp[0].opval));}
1895 { yyval.opval = newUNOP(OP_REFGEN, 0, mod(yyvsp[0].opval,OP_REFGEN)); }
1899 { yyval.opval = newUNOP(OP_POSTINC, 0,
1900 mod(scalar(yyvsp[-1].opval), OP_POSTINC)); }
1904 { yyval.opval = newUNOP(OP_POSTDEC, 0,
1905 mod(scalar(yyvsp[-1].opval), OP_POSTDEC)); }
1909 { yyval.opval = newUNOP(OP_PREINC, 0,
1910 mod(scalar(yyvsp[0].opval), OP_PREINC)); }
1914 { yyval.opval = newUNOP(OP_PREDEC, 0,
1915 mod(scalar(yyvsp[0].opval), OP_PREDEC)); }
1919 { yyval.opval = localize(yyvsp[0].opval,yyvsp[-1].ival); }
1923 { yyval.opval = sawparens(yyvsp[-1].opval); }
1927 { yyval.opval = sawparens(newNULLLIST()); }
1931 { yyval.opval = newANONLIST(yyvsp[-1].opval); }
1935 { yyval.opval = newANONLIST(Nullop); }
1939 { yyval.opval = newANONHASH(yyvsp[-2].opval); }
1943 { yyval.opval = newANONHASH(Nullop); }
1947 { yyval.opval = newANONSUB(yyvsp[-2].ival, yyvsp[-1].opval, yyvsp[0].opval); }
1951 { yyval.opval = yyvsp[0].opval; }
1955 { yyval.opval = newBINOP(OP_GELEM, 0, newGVREF(0,yyvsp[-4].opval), yyvsp[-2].opval); }
1959 { yyval.opval = yyvsp[0].opval; }
1963 { yyval.opval = newBINOP(OP_AELEM, 0, oopsAV(yyvsp[-3].opval), scalar(yyvsp[-1].opval)); }
1967 { yyval.opval = newBINOP(OP_AELEM, 0,
1968 ref(newAVREF(yyvsp[-4].opval),OP_RV2AV),
1969 scalar(yyvsp[-1].opval));}
1973 { assertref(yyvsp[-3].opval); yyval.opval = newBINOP(OP_AELEM, 0,
1974 ref(newAVREF(yyvsp[-3].opval),OP_RV2AV),
1975 scalar(yyvsp[-1].opval));}
1979 { yyval.opval = yyvsp[0].opval; }
1983 { yyval.opval = yyvsp[0].opval; }
1987 { yyval.opval = newUNOP(OP_AV2ARYLEN, 0, ref(yyvsp[0].opval, OP_AV2ARYLEN));}
1991 { yyval.opval = newBINOP(OP_HELEM, 0, oopsHV(yyvsp[-4].opval), jmaybe(yyvsp[-2].opval));
1992 expect = XOPERATOR; }
1996 { yyval.opval = newBINOP(OP_HELEM, 0,
1997 ref(newHVREF(yyvsp[-5].opval),OP_RV2HV),
1998 jmaybe(yyvsp[-2].opval));
1999 expect = XOPERATOR; }
2003 { assertref(yyvsp[-4].opval); yyval.opval = newBINOP(OP_HELEM, 0,
2004 ref(newHVREF(yyvsp[-4].opval),OP_RV2HV),
2005 jmaybe(yyvsp[-2].opval));
2006 expect = XOPERATOR; }
2010 { yyval.opval = newSLICEOP(0, yyvsp[-1].opval, yyvsp[-4].opval); }
2014 { yyval.opval = newSLICEOP(0, yyvsp[-1].opval, Nullop); }
2018 { yyval.opval = prepend_elem(OP_ASLICE,
2019 newOP(OP_PUSHMARK, 0),
2020 newLISTOP(OP_ASLICE, 0,
2021 list(yyvsp[-1].opval),
2022 ref(yyvsp[-3].opval, OP_ASLICE))); }
2026 { yyval.opval = prepend_elem(OP_HSLICE,
2027 newOP(OP_PUSHMARK, 0),
2028 newLISTOP(OP_HSLICE, 0,
2029 list(yyvsp[-2].opval),
2030 ref(oopsHV(yyvsp[-4].opval), OP_HSLICE)));
2031 expect = XOPERATOR; }
2035 { yyval.opval = yyvsp[0].opval; }
2039 { yyval.opval = newUNOP(OP_ENTERSUB, 0, scalar(yyvsp[0].opval)); }
2043 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED, scalar(yyvsp[-2].opval)); }
2047 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2048 append_elem(OP_LIST, yyvsp[-1].opval, scalar(yyvsp[-3].opval))); }
2052 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2053 append_elem(OP_LIST, yyvsp[0].opval, scalar(yyvsp[-1].opval))); }
2057 { yyval.opval = newUNOP(OP_DOFILE, 0, scalar(yyvsp[0].opval)); }
2061 { yyval.opval = newUNOP(OP_NULL, OPf_SPECIAL, scope(yyvsp[0].opval)); }
2065 { yyval.opval = newUNOP(OP_ENTERSUB,
2066 OPf_SPECIAL|OPf_STACKED,
2067 prepend_elem(OP_LIST,
2069 (OPpENTERSUB_AMPER<<8),
2070 scalar(yyvsp[-2].opval)
2071 )),Nullop)); dep();}
2075 { yyval.opval = newUNOP(OP_ENTERSUB,
2076 OPf_SPECIAL|OPf_STACKED,
2077 append_elem(OP_LIST,
2080 (OPpENTERSUB_AMPER<<8),
2081 scalar(yyvsp[-3].opval)
2086 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_SPECIAL|OPf_STACKED,
2087 prepend_elem(OP_LIST,
2088 scalar(newCVREF(0,scalar(yyvsp[-2].opval))), Nullop)); dep();}
2092 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_SPECIAL|OPf_STACKED,
2093 prepend_elem(OP_LIST,
2095 scalar(newCVREF(0,scalar(yyvsp[-3].opval))))); dep();}
2099 { yyval.opval = newOP(yyvsp[0].ival, OPf_SPECIAL);
2100 hints |= HINT_BLOCK_SCOPE; }
2104 { yyval.opval = newLOOPEX(yyvsp[-1].ival,yyvsp[0].opval); }
2108 { yyval.opval = newUNOP(OP_NOT, 0, scalar(yyvsp[0].opval)); }
2112 { yyval.opval = newOP(yyvsp[0].ival, 0); }
2116 { yyval.opval = newUNOP(yyvsp[-1].ival, 0, yyvsp[0].opval); }
2120 { yyval.opval = newUNOP(yyvsp[-1].ival, 0, yyvsp[0].opval); }
2124 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2125 append_elem(OP_LIST, yyvsp[0].opval, scalar(yyvsp[-1].opval))); }
2129 { yyval.opval = newOP(yyvsp[0].ival, 0); }
2133 { yyval.opval = newOP(yyvsp[-2].ival, 0); }
2137 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2138 scalar(yyvsp[0].opval)); }
2142 { yyval.opval = newOP(yyvsp[-2].ival, OPf_SPECIAL); }
2146 { yyval.opval = newUNOP(yyvsp[-3].ival, 0, yyvsp[-1].opval); }
2150 { yyval.opval = pmruntime(yyvsp[-3].opval, yyvsp[-1].opval, Nullop); }
2154 { yyval.opval = pmruntime(yyvsp[-5].opval, yyvsp[-3].opval, yyvsp[-1].opval); }
2158 { yyval.opval = Nullop; }
2162 { yyval.opval = yyvsp[0].opval; }
2166 { yyval.opval = Nullop; }
2170 { yyval.opval = yyvsp[0].opval; }
2174 { yyval.opval = yyvsp[-1].opval; }
2186 { in_my = 0; yyval.opval = my(yyvsp[0].opval); }
2190 { yyval.opval = newCVREF(yyvsp[-1].ival,yyvsp[0].opval); }
2194 { yyval.opval = newSVREF(yyvsp[0].opval); }
2198 { yyval.opval = newAVREF(yyvsp[0].opval); }
2202 { yyval.opval = newHVREF(yyvsp[0].opval); }
2206 { yyval.opval = newAVREF(yyvsp[0].opval); }
2210 { yyval.opval = newGVREF(0,yyvsp[0].opval); }
2214 { yyval.opval = scalar(yyvsp[0].opval); }
2218 { yyval.opval = scalar(yyvsp[0].opval); }
2222 { yyval.opval = scope(yyvsp[0].opval); }
2226 { yyval.opval = yyvsp[0].opval; }
2228 #line 2215 "perly.c"
2234 if (yystate == 0 && yym == 0)
2238 PerlIO_printf(Perl_debug_log,
2239 "yydebug: after reduction, shifting from state 0 to state %d\n",
2247 if ((yychar = yylex()) < 0) yychar = 0;
2252 if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
2253 if (!yys) yys = "illegal-symbol";
2254 PerlIO_printf(Perl_debug_log, "yydebug: state %d, reading %d (%s)\n",
2255 YYFINAL, yychar, yys);
2259 if (yychar == 0) goto yyaccept;
2262 if ((yyn = yygindex[yym]) && (yyn += yystate) >= 0 &&
2263 yyn <= YYTABLESIZE && yycheck[yyn] == yystate)
2264 yystate = yytable[yyn];
2266 yystate = yydgoto[yym];
2269 PerlIO_printf(Perl_debug_log,
2270 "yydebug: after reduction, shifting from state %d to state %d\n",
2273 if (yyssp >= yyss + yystacksize - 1)
2276 ** reallocate and recover. Note that pointers
2277 ** have to be reset, or bad things will happen
2279 int yyps_index = (yyssp - yyss);
2280 int yypv_index = (yyvsp - yyvs);
2281 yystacksize += YYSTACKSIZE;
2282 ysave->yyvs = yyvs =
2283 (YYSTYPE*)realloc((char*)yyvs,yystacksize * sizeof(YYSTYPE));
2284 ysave->yyss = yyss =
2285 (short*)realloc((char*)yyss,yystacksize * sizeof(short));
2288 yyssp = yyss + yyps_index;
2289 yyvsp = yyvs + yypv_index;
2295 yyerror("Out of memory for yacc stack");