1 /* Postprocessed by vms_yfix.pl 1.11 to add VMS declarations of globals */
3 static char yysccsid[] = "@(#)yaccpar 1.8 (Berkeley) 01/20/91";
13 deprecate("\"do\" to call subroutines");
18 dEXT short yylhs[] = { -1,
19 45, 0, 9, 7, 10, 8, 11, 11, 11, 12,
20 12, 12, 12, 24, 24, 24, 24, 24, 24, 15,
21 15, 15, 14, 14, 42, 42, 13, 13, 13, 13,
22 13, 13, 13, 26, 26, 27, 27, 28, 29, 30,
23 31, 32, 44, 44, 1, 1, 1, 1, 3, 38,
24 38, 46, 4, 5, 6, 39, 40, 40, 41, 41,
25 47, 47, 49, 48, 16, 16, 16, 25, 25, 25,
26 36, 36, 36, 36, 36, 36, 36, 50, 36, 37,
27 37, 17, 17, 17, 17, 17, 17, 17, 17, 17,
28 17, 17, 17, 17, 17, 17, 17, 17, 17, 17,
29 17, 17, 17, 17, 17, 17, 17, 17, 17, 17,
30 17, 17, 17, 17, 17, 17, 17, 17, 17, 17,
31 17, 17, 17, 17, 17, 17, 17, 17, 17, 17,
32 17, 17, 17, 17, 17, 17, 17, 17, 17, 17,
33 17, 17, 17, 17, 17, 17, 17, 17, 17, 17,
34 17, 17, 17, 17, 17, 17, 17, 33, 33, 34,
35 34, 34, 2, 2, 43, 23, 18, 19, 20, 21,
38 dEXT short yylen[] = { 2,
39 0, 2, 4, 0, 4, 0, 0, 2, 2, 2,
40 1, 2, 3, 1, 1, 3, 3, 3, 3, 0,
41 2, 6, 7, 7, 0, 2, 8, 8, 10, 9,
42 8, 11, 3, 0, 1, 0, 1, 1, 1, 1,
43 1, 1, 0, 1, 1, 1, 1, 1, 4, 1,
44 0, 5, 0, 0, 0, 1, 0, 1, 1, 1,
45 3, 2, 0, 7, 3, 3, 1, 2, 3, 1,
46 3, 5, 6, 3, 5, 2, 4, 0, 5, 1,
47 1, 3, 3, 3, 3, 3, 3, 3, 3, 3,
48 3, 3, 3, 5, 3, 2, 2, 2, 2, 2,
49 2, 2, 2, 2, 2, 3, 2, 3, 2, 4,
50 3, 4, 1, 5, 1, 4, 5, 4, 1, 1,
51 1, 5, 6, 5, 6, 5, 4, 5, 1, 1,
52 3, 4, 3, 2, 2, 4, 5, 4, 5, 4,
53 5, 1, 2, 2, 1, 2, 2, 2, 1, 3,
54 1, 3, 4, 4, 6, 1, 1, 0, 1, 0,
55 1, 2, 1, 1, 1, 2, 2, 2, 2, 2,
58 dEXT short yydefred[] = { 1,
59 0, 7, 0, 44, 55, 53, 0, 53, 8, 45,
60 9, 11, 0, 46, 47, 48, 0, 0, 0, 62,
61 63, 14, 4, 156, 0, 0, 129, 0, 151, 0,
62 54, 54, 0, 0, 0, 0, 0, 0, 0, 0,
63 0, 0, 0, 0, 0, 0, 0, 163, 164, 0,
64 0, 0, 0, 0, 0, 0, 0, 12, 0, 0,
65 0, 0, 0, 0, 0, 0, 0, 10, 0, 0,
66 0, 0, 119, 121, 0, 0, 0, 0, 157, 50,
67 0, 56, 0, 61, 0, 7, 172, 175, 174, 173,
68 0, 0, 0, 0, 0, 0, 4, 4, 4, 4,
69 4, 4, 0, 0, 0, 0, 0, 146, 0, 0,
70 0, 0, 76, 0, 170, 0, 135, 0, 0, 0,
71 0, 0, 166, 0, 0, 0, 0, 0, 0, 0,
72 0, 0, 0, 109, 0, 167, 168, 169, 171, 0,
73 0, 33, 0, 0, 0, 0, 0, 0, 0, 0,
74 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
75 0, 0, 0, 101, 102, 0, 0, 0, 0, 0,
76 0, 0, 0, 13, 0, 49, 58, 0, 0, 0,
77 74, 0, 0, 78, 0, 0, 0, 0, 0, 0,
78 0, 4, 150, 152, 0, 0, 0, 0, 0, 0,
79 0, 111, 0, 133, 0, 0, 108, 26, 0, 0,
80 19, 0, 0, 0, 65, 0, 0, 0, 0, 0,
81 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
82 0, 80, 0, 0, 81, 0, 0, 0, 0, 0,
83 0, 0, 131, 0, 0, 60, 59, 52, 0, 3,
84 0, 154, 0, 0, 112, 0, 41, 0, 42, 0,
85 0, 0, 0, 165, 0, 0, 35, 40, 0, 0,
86 0, 153, 162, 77, 0, 136, 0, 138, 0, 110,
87 0, 0, 0, 0, 0, 140, 0, 0, 0, 118,
88 0, 116, 0, 127, 0, 132, 0, 75, 0, 79,
89 0, 0, 0, 0, 0, 0, 0, 0, 72, 137,
90 139, 126, 0, 124, 0, 0, 141, 117, 0, 122,
91 128, 114, 64, 155, 6, 0, 0, 0, 0, 0,
92 0, 0, 0, 125, 123, 73, 7, 27, 28, 0,
93 0, 23, 24, 0, 31, 0, 0, 0, 21, 0,
94 0, 0, 30, 5, 0, 29, 0, 0, 32, 0,
97 dEXT short yydgoto[] = { 1,
98 9, 66, 10, 18, 95, 17, 86, 337, 89, 326,
99 3, 11, 12, 68, 342, 261, 70, 71, 72, 73,
100 74, 75, 76, 267, 78, 268, 257, 259, 262, 270,
101 258, 260, 113, 197, 91, 79, 236, 81, 83, 178,
102 248, 142, 265, 13, 2, 14, 15, 16, 85, 254,
104 dEXT short yysindex[] = { 0,
105 0, 0, -120, 0, 0, 0, -50, 0, 0, 0,
106 0, 0, 661, 0, 0, 0, -240, -238, -29, 0,
107 0, 0, 0, 0, -32, -32, 0, -8, 0, 2115,
108 0, 0, -4, 31, 32, 35, -35, 2115, 56, 57,
109 61, 1037, 981, -32, 1100, 1364, -218, 0, 0, -32,
110 2115, 2115, 2115, 2115, 2115, 2115, 1420, 0, 2115, 2115,
111 1476, -32, -32, -32, -32, 2115, -205, 0, 201, 306,
112 -63, -62, 0, 0, -24, 67, 45, 65, 0, 0,
113 -15, 0, -149, 0, -144, 0, 0, 0, 0, 0,
114 2115, 80, 2115, 841, -15, -149, 0, 0, 0, 0,
115 0, 0, 85, 306, 86, 1535, 981, 0, 841, 0,
116 -63, 65, 0, 2115, 0, 88, 0, 841, -28, 4,
117 -51, 2115, 0, 65, 340, 340, 340, -76, -76, 49,
118 -31, 340, 340, 0, -82, 0, 0, 0, 0, 841,
119 -15, 0, 2115, 2115, 2115, 2115, 2115, 2115, 2115, 2115,
120 2115, 2115, 2115, 2115, 2115, 2115, 2115, 2115, 2115, 2115,
121 2115, 2115, 2115, 0, 0, 48, 2115, 2115, 2115, 2115,
122 2115, 2115, 1710, 0, 2115, 0, 0, -43, -116, 241,
123 0, 2115, 1193, 0, -15, 2115, 2115, 2115, 2115, 106,
124 1769, 0, 0, 0, -23, 20, 104, 2115, 65, 1825,
125 1881, 0, 36, 0, 2115, 62, 0, 0, -232, -232,
126 0, -232, -232, -134, 0, -46, 1131, 841, 689, 316,
127 859, 306, 3778, 1980, 3652, 1299, 480, 396, 340, 340,
128 2115, 0, 1944, 2115, 0, 128, -58, 22, -56, 24,
129 33, 28, 0, -19, 306, 0, 0, 0, 2115, 0,
130 134, 0, 2115, 2115, 0, -232, 0, 142, 0, 148,
131 -232, 149, 150, 0, 153, 201, 0, 0, 154, 138,
132 2115, 0, 0, 0, -7, 0, 2, 0, 16, 0,
133 70, 2115, 73, 2115, 30, 0, 18, 101, 2115, 0,
134 75, 0, 78, 0, 81, 0, 151, 0, 1247, 0,
135 90, 90, 90, 90, 2115, 90, 2115, 167, 0, 0,
136 0, 0, 103, 0, 3869, 84, 0, 0, 170, 0,
137 0, 0, 0, 0, 0, -205, -205, -207, -207, 176,
138 -205, 168, 90, 0, 0, 0, 0, 0, 0, 90,
139 192, 0, 0, 90, 0, 1769, -205, 402, 0, 2115,
140 -205, 207, 0, 0, 208, 0, 90, 90, 0, -207,
143 dEXT short yyrindex[] = { 0,
144 0, 0, 265, 0, 0, 0, 0, 0, 0, 0,
145 0, 0, 0, 0, 0, 0, 131, 0, 0, 0,
146 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
147 0, 0, 0, 0, 0, 0, 0, 2156, -17, 0,
148 0, 2675, 2720, 0, 0, 0, 0, 0, 0, 0,
149 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
150 0, 0, 0, 0, 0, 0, 79, 0, -3, 108,
151 2774, 2860, 0, 0, 2034, 121, 0, 140, 0, 0,
152 0, 0, -33, 0, 0, 0, 0, 0, 0, 0,
153 2203, 0, 0, 3504, 0, 145, 0, 0, 0, 0,
154 0, 0, 0, 3772, 0, 0, 252, 0, 3551, 541,
155 602, 2270, 0, 0, 0, 442, 0, 3587, 2774, 0,
156 0, 2203, 0, 2324, 3010, 3049, 3096, 2911, 2972, 2439,
157 0, 3147, 3193, 0, 0, 0, 0, 0, 0, 3633,
158 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
159 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
160 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
161 0, 0, 0, 0, 2522, 0, 0, 0, 0, 925,
162 0, 252, 0, 0, 0, 263, 0, 0, 0, 0,
163 223, 0, 0, 0, 0, 282, 0, 0, 2576, 0,
164 0, 0, 0, 0, 0, 2624, 0, 0, -1, 26,
165 0, 27, 51, 718, 0, 0, 3752, 1576, 1632, 3368,
166 3413, 3799, 0, -38, 3710, 3678, 3060, 3459, 3285, 3332,
167 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
168 0, 0, 0, 0, 3835, 0, 0, 0, 273, 0,
169 0, 0, 0, 2203, 0, 59, 0, 0, 0, 0,
170 293, 0, 0, 0, 0, 64, 0, 0, 0, 0,
171 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
172 0, 0, 0, 0, 0, 0, 0, 0, 252, 0,
173 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
174 0, 0, 0, 0, 0, 0, 296, 0, 0, 0,
175 0, 0, 0, 0, 2380, 0, 0, 0, 0, 0,
176 0, 0, 0, 0, 0, 79, 79, 186, 186, 0,
177 79, 0, 0, 0, 0, 0, 0, 0, 0, 0,
178 0, 0, 0, 0, 0, 300, 79, 925, 0, 0,
179 79, 0, 0, 0, 0, 0, 0, 0, 0, 186,
182 dEXT short yygindex[] = { 0,
183 0, 0, 0, 349, 328, 0, -48, 0, 679, 378,
184 -84, 0, 0, 0, -298, -13, 4075, 2485, 0, 0,
185 0, 0, 0, 363, 908, 0, 0, 233, -168, 38,
186 72, 196, -77, -175, 999, 0, 0, 0, 0, 290,
187 0, -249, 0, 0, 0, 0, 0, 0, 0, 0,
189 #define YYTABLESIZE 4359
190 dEXT short yytable[] = { 69,
191 62, 180, 93, 62, 102, 93, 251, 203, 20, 206,
192 207, 201, 283, 181, 167, 246, 80, 272, 82, 93,
193 93, 296, 269, 149, 93, 57, 149, 169, 171, 84,
194 343, 93, 121, 309, 290, 97, 292, 15, 122, 18,
195 149, 149, 310, 131, 204, 149, 149, 135, 186, 187,
196 188, 189, 190, 191, 93, 15, 311, 18, 317, 168,
197 170, 361, 169, 273, 147, 148, 38, 16, 340, 341,
198 98, 99, 141, 149, 100, 149, 338, 339, 25, 23,
199 291, 345, 293, 62, 38, 16, 295, 233, 316, 57,
200 23, 17, 195, 196, 168, 105, 106, 353, 172, 37,
201 107, 356, 308, 174, 39, 149, 173, 23, 175, 17,
202 177, 25, 179, 319, 25, 25, 25, 37, 25, 182,
203 25, 25, 15, 25, 192, 294, 193, 200, 202, 209,
204 210, 212, 213, 214, 215, 216, 330, 25, 234, 205,
205 249, 62, 25, 271, 274, 4, 5, 6, 70, 7,
206 8, 70, 282, 237, 238, 239, 240, 241, 242, 244,
207 280, 130, 312, 148, 130, 70, 70, 289, 196, 25,
208 231, 297, 256, 210, 298, 210, 300, 266, 130, 130,
209 67, 355, 301, 130, 275, 20, 277, 279, 302, 303,
210 304, 281, 305, 318, 306, 334, 307, 314, 67, 320,
211 70, 25, 321, 25, 25, 322, 19, 333, 335, 323,
212 336, 130, 325, 130, 147, 148, 344, 285, 20, 287,
213 288, 20, 20, 20, 87, 20, 346, 20, 20, 88,
214 20, 350, 67, 93, 93, 93, 93, 166, 147, 148,
215 147, 148, 93, 130, 20, 147, 148, 357, 358, 20,
216 147, 148, 348, 51, 149, 149, 149, 149, 93, 93,
217 101, 93, 93, 149, 2, 147, 148, 57, 313, 149,
218 149, 149, 149, 147, 148, 196, 20, 147, 148, 149,
219 149, 34, 149, 149, 149, 149, 149, 149, 149, 147,
220 148, 149, 160, 256, 149, 149, 149, 43, 147, 148,
221 43, 43, 43, 36, 43, 232, 43, 43, 20, 43,
222 20, 20, 147, 148, 147, 148, 147, 148, 147, 148,
223 147, 148, 161, 43, 147, 148, 147, 148, 43, 147,
224 148, 158, 69, 39, 25, 25, 25, 25, 25, 25,
225 34, 25, 25, 25, 25, 25, 25, 25, 25, 25,
226 25, 25, 25, 25, 36, 43, 21, 25, 25, 96,
227 25, 25, 25, 25, 25, 250, 147, 148, 156, 25,
228 25, 25, 25, 25, 25, 77, 211, 25, 332, 70,
229 70, 70, 70, 352, 263, 185, 25, 43, 25, 25,
230 43, 0, 130, 130, 130, 130, 167, 147, 148, 147,
231 148, 130, 0, 0, 70, 70, 167, 130, 130, 130,
232 130, 67, 67, 67, 67, 0, 0, 130, 130, 0,
233 130, 130, 130, 130, 130, 130, 130, 0, 149, 130,
234 167, 0, 130, 130, 130, 0, 67, 67, 149, 0,
235 0, 20, 20, 20, 20, 20, 20, 0, 20, 20,
236 20, 20, 20, 20, 20, 20, 20, 20, 20, 20,
237 20, 0, 149, 0, 20, 20, 0, 20, 20, 20,
238 20, 20, 143, 144, 145, 146, 20, 20, 20, 20,
239 20, 20, 156, 0, 20, 156, 167, 0, 0, 0,
240 0, 0, 0, 20, 0, 20, 20, 147, 148, 156,
241 156, 0, 0, 0, 156, 0, 4, 5, 6, 0,
242 7, 8, 0, 0, 0, 0, 0, 0, 149, 0,
243 43, 43, 43, 43, 43, 43, 354, 43, 43, 43,
244 0, 0, 156, 43, 156, 0, 43, 43, 43, 43,
245 0, 0, 0, 43, 43, 0, 43, 43, 43, 43,
246 43, 0, 0, 0, 0, 43, 43, 43, 43, 43,
247 43, 0, 0, 43, 156, 0, 0, 0, 0, 0,
248 167, 0, 43, 172, 43, 43, 172, 172, 172, 0,
249 172, 156, 172, 172, 156, 172, 150, 0, 0, 0,
250 0, 0, 151, 152, 153, 154, 0, 0, 156, 156,
251 0, 0, 149, 156, 172, 155, 157, 158, 159, 160,
252 161, 162, 0, 0, 163, 0, 0, 164, 165, 166,
253 0, 162, 0, 0, 163, 0, 0, 164, 165, 166,
254 0, 156, 0, 156, 173, 0, 0, 173, 173, 173,
255 0, 173, 113, 173, 173, 113, 173, 0, 163, 0,
256 0, 164, 165, 166, 0, 0, 0, 0, 0, 113,
257 113, 0, 0, 156, 113, 173, 172, 4, 5, 6,
258 0, 7, 8, 0, 0, 0, 0, 0, 0, 327,
259 328, 329, 0, 331, 153, 154, 0, 0, 0, 0,
260 0, 67, 0, 52, 113, 0, 62, 64, 50, 0,
261 57, 162, 65, 60, 163, 59, 0, 164, 165, 166,
262 347, 0, 0, 156, 156, 156, 156, 349, 0, 58,
263 108, 351, 156, 117, 63, 0, 0, 173, 156, 156,
264 156, 156, 0, 0, 359, 360, 0, 0, 156, 156,
265 0, 156, 156, 156, 156, 156, 156, 156, 0, 0,
266 156, 61, 0, 156, 156, 156, 0, 0, 66, 176,
267 0, 66, 0, 0, 0, 0, 151, 152, 153, 154,
268 0, 0, 0, 184, 0, 0, 66, 0, 0, 167,
269 0, 0, 0, 23, 161, 162, 53, 0, 163, 0,
270 0, 164, 165, 166, 0, 0, 0, 172, 172, 172,
271 172, 172, 0, 172, 172, 172, 0, 0, 0, 172,
272 66, 149, 156, 156, 156, 156, 0, 0, 0, 208,
273 172, 156, 172, 172, 172, 172, 172, 156, 156, 156,
274 156, 172, 172, 172, 172, 172, 172, 156, 156, 172,
275 156, 156, 156, 156, 156, 156, 156, 0, 172, 156,
276 172, 172, 156, 156, 156, 0, 247, 0, 173, 173,
277 173, 173, 173, 255, 173, 173, 173, 0, 0, 0,
278 173, 0, 0, 113, 113, 113, 113, 0, 0, 0,
279 0, 173, 113, 173, 173, 173, 173, 173, 113, 113,
280 113, 113, 173, 173, 173, 173, 173, 173, 113, 113,
281 173, 113, 113, 113, 113, 113, 113, 113, 0, 173,
282 113, 173, 173, 113, 113, 113, 22, 24, 25, 26,
283 27, 28, 0, 29, 30, 31, 0, 0, 0, 32,
284 0, 167, 33, 34, 35, 36, 0, 0, 0, 37,
285 38, 0, 39, 40, 41, 42, 43, 0, 0, 167,
286 112, 44, 45, 46, 47, 48, 49, 43, 124, 51,
287 43, 43, 43, 149, 43, 0, 43, 43, 54, 43,
288 55, 56, 0, 0, 0, 151, 0, 153, 154, 0,
289 0, 149, 0, 43, 0, 0, 0, 0, 43, 66,
290 66, 66, 66, 161, 162, 0, 0, 163, 112, 0,
291 164, 165, 166, 0, 0, 0, 0, 0, 0, 0,
292 0, 0, 0, 52, 66, 43, 62, 64, 50, 0,
293 57, 199, 65, 60, 92, 59, 0, 0, 0, 112,
294 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
295 0, 114, 115, 0, 63, 0, 0, 43, 123, 0,
296 43, 0, 0, 0, 0, 0, 0, 0, 0, 0,
297 136, 137, 138, 139, 0, 0, 0, 0, 0, 52,
298 0, 61, 62, 64, 50, 0, 57, 0, 65, 60,
299 0, 59, 0, 0, 0, 0, 0, 0, 0, 0,
300 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
301 63, 0, 0, 23, 0, 198, 53, 0, 0, 0,
302 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
303 0, 0, 0, 0, 0, 0, 0, 61, 0, 153,
304 154, 0, 52, 0, 0, 62, 64, 50, 0, 57,
305 0, 65, 60, 0, 59, 161, 162, 153, 0, 163,
306 0, 0, 164, 165, 166, 0, 112, 0, 0, 23,
307 0, 112, 53, 63, 162, 0, 0, 163, 0, 0,
308 164, 165, 166, 0, 0, 0, 0, 0, 0, 0,
309 43, 43, 43, 43, 43, 43, 0, 43, 43, 43,
310 61, 0, 0, 43, 0, 0, 43, 43, 43, 43,
311 0, 0, 0, 43, 43, 0, 43, 43, 43, 43,
312 43, 0, 0, 0, 0, 43, 43, 43, 43, 43,
313 43, 167, 23, 43, 0, 53, 0, 0, 0, 0,
314 0, 0, 43, 252, 43, 43, 253, 110, 25, 26,
315 27, 28, 88, 29, 30, 31, 0, 0, 0, 32,
316 0, 0, 0, 149, 0, 156, 0, 0, 0, 0,
317 38, 0, 39, 40, 41, 42, 43, 0, 0, 0,
318 0, 44, 45, 46, 47, 48, 49, 0, 0, 51,
319 0, 0, 0, 167, 0, 0, 0, 324, 54, 0,
320 55, 56, 0, 24, 25, 26, 27, 28, 0, 29,
321 30, 31, 0, 0, 0, 32, 0, 0, 0, 156,
322 0, 0, 0, 0, 0, 149, 38, 0, 39, 40,
323 41, 42, 43, 0, 0, 0, 0, 44, 45, 46,
324 47, 48, 49, 0, 0, 51, 0, 167, 0, 0,
325 0, 0, 0, 0, 54, 0, 55, 56, 0, 0,
326 0, 0, 0, 0, 0, 0, 116, 25, 26, 27,
327 28, 0, 29, 30, 31, 0, 0, 0, 32, 149,
328 0, 0, 0, 0, 0, 0, 0, 0, 0, 38,
329 0, 39, 40, 41, 42, 43, 0, 0, 0, 167,
330 44, 45, 46, 47, 48, 49, 52, 0, 51, 62,
331 64, 50, 0, 57, 0, 65, 60, 54, 59, 55,
332 56, 0, 0, 0, 0, 0, 0, 151, 152, 153,
333 154, 149, 120, 0, 0, 0, 0, 63, 0, 0,
334 0, 157, 158, 159, 160, 161, 162, 0, 0, 163,
335 0, 0, 164, 165, 166, 0, 0, 0, 0, 0,
336 0, 0, 52, 0, 61, 62, 64, 50, 0, 57,
337 130, 65, 60, 0, 59, 0, 0, 0, 0, 0,
338 0, 0, 0, 150, 0, 0, 0, 0, 0, 151,
339 152, 153, 154, 63, 0, 0, 0, 0, 0, 53,
340 0, 0, 155, 157, 158, 159, 160, 161, 162, 0,
341 0, 163, 0, 0, 164, 165, 166, 0, 52, 0,
342 61, 62, 64, 50, 0, 57, 0, 65, 60, 0,
343 59, 0, 0, 0, 0, 0, 0, 150, 0, 0,
344 0, 0, 0, 151, 152, 153, 154, 0, 0, 63,
345 0, 0, 0, 0, 0, 53, 155, 157, 158, 159,
346 160, 161, 162, 0, 0, 163, 0, 0, 164, 165,
347 166, 0, 0, 0, 0, 0, 61, 52, 134, 0,
348 62, 64, 50, 0, 57, 194, 65, 60, 0, 59,
349 0, 0, 0, 0, 0, 151, 152, 153, 154, 0,
350 0, 0, 0, 0, 0, 0, 0, 0, 63, 0,
351 0, 53, 160, 161, 162, 0, 0, 163, 0, 0,
352 164, 165, 166, 0, 0, 0, 87, 0, 0, 87,
353 24, 25, 26, 27, 28, 61, 29, 30, 31, 0,
354 0, 0, 32, 87, 87, 0, 0, 0, 87, 0,
355 0, 0, 0, 38, 0, 39, 40, 41, 42, 43,
356 0, 0, 0, 0, 44, 45, 46, 47, 48, 49,
357 53, 0, 51, 0, 0, 0, 0, 0, 87, 0,
358 0, 54, 88, 55, 56, 88, 24, 25, 26, 27,
359 28, 0, 29, 30, 31, 0, 0, 0, 32, 88,
360 88, 0, 0, 0, 88, 0, 0, 0, 0, 38,
361 0, 39, 40, 41, 42, 43, 0, 0, 0, 0,
362 44, 45, 46, 47, 48, 49, 0, 0, 51, 0,
363 0, 0, 0, 0, 88, 0, 0, 54, 0, 55,
364 56, 0, 24, 25, 26, 27, 28, 0, 29, 30,
365 31, 0, 52, 0, 32, 62, 64, 50, 0, 57,
366 243, 65, 60, 0, 59, 38, 0, 39, 40, 41,
367 42, 43, 0, 0, 0, 0, 44, 45, 46, 47,
368 48, 49, 0, 63, 51, 0, 0, 0, 0, 0,
369 0, 0, 0, 54, 0, 55, 56, 0, 0, 0,
370 0, 24, 25, 26, 27, 28, 0, 29, 30, 31,
371 61, 52, 0, 32, 62, 64, 50, 0, 57, 0,
372 65, 60, 0, 59, 38, 0, 39, 40, 41, 42,
373 43, 0, 0, 0, 0, 44, 45, 46, 47, 48,
374 49, 0, 63, 51, 0, 53, 0, 0, 0, 0,
375 0, 0, 54, 0, 55, 56, 0, 87, 87, 87,
376 87, 0, 0, 0, 0, 0, 87, 52, 0, 61,
377 62, 64, 50, 87, 57, 276, 65, 60, 0, 59,
378 0, 0, 87, 87, 0, 87, 87, 87, 87, 87,
379 0, 0, 0, 0, 0, 0, 0, 0, 63, 0,
380 0, 0, 0, 0, 53, 0, 0, 0, 0, 0,
381 0, 0, 0, 88, 88, 88, 88, 0, 0, 0,
382 0, 0, 88, 52, 0, 61, 62, 64, 50, 0,
383 57, 278, 65, 60, 0, 59, 0, 0, 88, 88,
384 0, 88, 88, 88, 88, 88, 0, 0, 0, 0,
385 0, 0, 0, 0, 63, 0, 0, 0, 0, 0,
386 53, 0, 0, 0, 0, 0, 0, 0, 0, 0,
387 0, 0, 0, 0, 0, 0, 24, 25, 26, 27,
388 28, 61, 29, 30, 31, 0, 52, 0, 32, 62,
389 64, 50, 0, 57, 286, 65, 60, 0, 59, 38,
390 0, 39, 40, 41, 42, 43, 0, 0, 0, 0,
391 44, 45, 46, 47, 48, 49, 53, 63, 51, 0,
392 0, 0, 0, 0, 0, 0, 0, 54, 0, 55,
393 56, 0, 0, 0, 22, 24, 25, 26, 27, 28,
394 0, 29, 30, 31, 61, 0, 0, 32, 0, 0,
395 0, 0, 0, 0, 0, 0, 0, 0, 38, 0,
396 39, 40, 41, 42, 43, 0, 0, 0, 0, 44,
397 45, 46, 47, 48, 49, 0, 0, 51, 0, 53,
398 167, 0, 0, 0, 115, 0, 54, 115, 55, 56,
399 0, 24, 25, 26, 27, 28, 0, 29, 30, 31,
400 0, 115, 115, 32, 0, 0, 115, 0, 0, 0,
401 0, 0, 149, 0, 38, 0, 39, 40, 41, 42,
402 43, 0, 0, 0, 0, 44, 45, 46, 47, 48,
403 49, 0, 0, 51, 115, 0, 115, 0, 0, 0,
404 0, 0, 54, 0, 55, 56, 0, 24, 25, 26,
405 27, 28, 0, 29, 30, 31, 0, 52, 0, 32,
406 62, 64, 50, 0, 57, 0, 65, 60, 0, 59,
407 38, 0, 39, 40, 41, 42, 43, 0, 0, 0,
408 0, 44, 45, 46, 47, 48, 49, 0, 63, 51,
409 0, 0, 0, 0, 0, 0, 0, 0, 54, 0,
410 55, 56, 0, 0, 0, 0, 142, 0, 0, 142,
411 24, 25, 26, 27, 28, 61, 29, 30, 31, 0,
412 0, 0, 32, 142, 142, 0, 0, 0, 142, 0,
413 0, 0, 0, 38, 0, 39, 40, 41, 42, 43,
414 0, 0, 0, 0, 44, 45, 46, 47, 48, 49,
415 53, 0, 51, 158, 0, 0, 158, 0, 142, 0,
416 0, 54, 0, 55, 56, 0, 0, 0, 0, 0,
417 158, 158, 0, 0, 0, 158, 151, 152, 153, 154,
418 0, 0, 0, 0, 0, 0, 0, 0, 142, 0,
419 0, 158, 159, 160, 161, 162, 0, 0, 163, 0,
420 0, 164, 165, 166, 0, 158, 0, 0, 0, 0,
421 0, 0, 0, 0, 0, 115, 115, 115, 115, 0,
422 159, 0, 0, 0, 115, 0, 0, 0, 0, 0,
423 115, 115, 115, 115, 0, 158, 0, 159, 159, 0,
424 115, 115, 159, 115, 115, 115, 115, 115, 115, 115,
425 0, 0, 115, 0, 0, 115, 115, 115, 0, 0,
426 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
427 159, 0, 159, 0, 144, 0, 0, 0, 0, 0,
428 0, 24, 25, 26, 27, 28, 0, 29, 30, 31,
429 0, 144, 144, 32, 0, 0, 144, 0, 0, 0,
430 0, 0, 159, 0, 38, 0, 39, 40, 41, 42,
431 43, 0, 0, 0, 0, 44, 45, 46, 47, 48,
432 49, 0, 0, 51, 144, 0, 144, 0, 0, 0,
433 94, 0, 54, 94, 55, 56, 0, 142, 142, 142,
434 142, 0, 0, 0, 0, 0, 142, 94, 94, 0,
435 0, 0, 142, 142, 142, 142, 144, 0, 0, 0,
436 0, 0, 142, 142, 0, 142, 142, 142, 142, 142,
437 142, 142, 0, 0, 142, 0, 0, 142, 142, 142,
438 0, 0, 94, 0, 158, 158, 158, 158, 0, 107,
439 0, 0, 107, 158, 0, 0, 0, 0, 0, 158,
440 158, 158, 158, 0, 0, 0, 107, 107, 0, 158,
441 158, 107, 158, 158, 158, 158, 158, 158, 158, 90,
442 90, 158, 0, 0, 158, 158, 158, 0, 0, 0,
443 0, 103, 0, 0, 0, 0, 0, 111, 90, 119,
444 0, 107, 0, 0, 90, 0, 0, 0, 0, 0,
445 0, 159, 159, 159, 159, 0, 90, 90, 90, 90,
446 159, 0, 0, 0, 0, 0, 159, 159, 159, 159,
447 0, 107, 68, 0, 0, 68, 159, 159, 0, 159,
448 159, 159, 159, 159, 159, 159, 0, 0, 159, 68,
449 68, 159, 159, 159, 68, 0, 0, 0, 0, 0,
450 0, 111, 0, 0, 0, 144, 144, 144, 144, 0,
451 0, 0, 0, 0, 144, 0, 0, 0, 0, 0,
452 144, 144, 144, 144, 68, 0, 71, 0, 0, 0,
453 144, 144, 0, 144, 144, 144, 144, 144, 144, 144,
454 0, 0, 144, 71, 71, 144, 144, 144, 71, 0,
455 0, 0, 0, 0, 68, 0, 0, 0, 0, 0,
456 235, 94, 94, 94, 94, 0, 0, 0, 0, 0,
457 0, 0, 0, 0, 106, 0, 71, 106, 71, 0,
458 0, 0, 0, 0, 264, 0, 94, 94, 0, 94,
459 0, 106, 106, 0, 0, 0, 106, 0, 0, 0,
460 0, 0, 0, 0, 0, 0, 0, 0, 71, 0,
461 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
462 107, 107, 107, 107, 0, 145, 106, 0, 145, 107,
463 0, 0, 0, 0, 0, 107, 107, 107, 107, 0,
464 0, 0, 145, 145, 0, 107, 107, 145, 107, 107,
465 107, 107, 107, 107, 107, 0, 106, 107, 0, 0,
466 107, 107, 107, 0, 0, 0, 0, 0, 0, 0,
467 158, 0, 0, 158, 0, 0, 0, 145, 0, 0,
468 0, 0, 0, 0, 0, 0, 0, 158, 158, 0,
469 0, 0, 158, 0, 0, 0, 0, 0, 0, 0,
470 0, 0, 0, 68, 68, 68, 68, 0, 0, 0,
471 0, 0, 68, 0, 0, 0, 0, 0, 68, 68,
472 68, 68, 158, 0, 113, 0, 0, 113, 68, 68,
473 0, 68, 68, 68, 68, 68, 68, 68, 0, 0,
474 68, 113, 113, 68, 68, 68, 113, 0, 0, 0,
475 0, 0, 0, 0, 0, 0, 0, 71, 71, 71,
476 71, 0, 0, 0, 0, 0, 71, 0, 0, 0,
477 0, 0, 71, 71, 71, 71, 113, 0, 0, 0,
478 0, 0, 71, 71, 0, 71, 71, 71, 71, 71,
479 71, 71, 0, 0, 71, 0, 0, 71, 71, 71,
480 0, 0, 0, 0, 0, 106, 106, 106, 106, 0,
481 120, 0, 0, 120, 106, 0, 0, 0, 0, 0,
482 106, 106, 106, 106, 0, 0, 0, 120, 120, 0,
483 106, 106, 120, 106, 106, 106, 106, 106, 106, 106,
484 0, 0, 106, 0, 0, 106, 106, 106, 0, 0,
485 0, 0, 0, 0, 0, 0, 145, 145, 145, 145,
486 0, 103, 120, 0, 103, 145, 0, 0, 0, 0,
487 0, 145, 145, 145, 145, 0, 0, 0, 103, 103,
488 0, 145, 145, 103, 145, 145, 145, 145, 145, 145,
489 145, 0, 0, 145, 0, 0, 145, 145, 145, 0,
490 0, 158, 158, 158, 158, 0, 0, 0, 0, 0,
491 158, 0, 0, 103, 0, 0, 158, 158, 158, 158,
492 0, 0, 104, 0, 0, 104, 158, 158, 0, 158,
493 158, 158, 158, 158, 158, 158, 0, 0, 158, 104,
494 104, 158, 158, 158, 104, 0, 0, 0, 0, 0,
495 0, 0, 0, 0, 0, 113, 113, 113, 113, 0,
496 98, 0, 0, 98, 113, 0, 0, 0, 0, 0,
497 113, 113, 113, 113, 104, 0, 0, 98, 98, 0,
498 113, 113, 98, 113, 113, 113, 113, 113, 113, 113,
499 0, 0, 113, 0, 0, 113, 113, 113, 0, 99,
500 0, 0, 99, 0, 0, 0, 0, 0, 0, 0,
501 89, 0, 98, 89, 0, 0, 99, 99, 0, 0,
502 0, 99, 0, 0, 0, 0, 0, 89, 89, 0,
503 0, 0, 89, 0, 0, 0, 0, 0, 0, 0,
504 0, 120, 120, 120, 120, 0, 100, 0, 0, 100,
505 120, 99, 0, 0, 0, 0, 120, 120, 120, 120,
506 0, 0, 89, 100, 100, 0, 120, 120, 100, 120,
507 120, 120, 120, 120, 120, 120, 0, 0, 120, 0,
508 0, 120, 120, 120, 0, 0, 0, 0, 0, 0,
509 0, 0, 103, 103, 103, 103, 0, 96, 100, 0,
510 96, 103, 0, 0, 0, 0, 0, 103, 103, 103,
511 103, 0, 0, 0, 96, 96, 0, 103, 103, 96,
512 103, 103, 103, 103, 103, 103, 103, 0, 0, 103,
513 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
514 0, 0, 0, 97, 0, 0, 97, 0, 0, 96,
515 0, 0, 0, 104, 104, 104, 104, 0, 0, 0,
516 97, 97, 104, 0, 0, 97, 0, 0, 104, 104,
517 104, 104, 0, 0, 0, 0, 0, 0, 104, 104,
518 0, 104, 104, 104, 104, 104, 104, 104, 0, 0,
519 104, 98, 98, 98, 98, 97, 0, 0, 0, 0,
520 98, 0, 0, 0, 0, 0, 98, 98, 98, 98,
521 0, 0, 0, 0, 0, 0, 98, 98, 0, 98,
522 98, 98, 98, 98, 98, 98, 0, 0, 0, 0,
523 99, 99, 99, 99, 0, 95, 0, 0, 95, 99,
524 0, 89, 89, 89, 89, 99, 99, 99, 99, 0,
525 89, 0, 95, 95, 0, 99, 99, 95, 99, 99,
526 99, 99, 99, 99, 99, 0, 89, 89, 0, 89,
527 89, 89, 89, 89, 0, 0, 0, 100, 100, 100,
528 100, 0, 83, 0, 0, 83, 100, 95, 0, 0,
529 0, 0, 100, 100, 100, 100, 0, 0, 0, 83,
530 83, 0, 100, 100, 83, 100, 100, 100, 100, 100,
531 100, 100, 0, 0, 0, 0, 0, 0, 84, 0,
532 0, 84, 0, 0, 0, 0, 0, 0, 96, 96,
533 96, 96, 0, 0, 83, 84, 84, 96, 0, 0,
534 84, 0, 0, 96, 96, 96, 96, 0, 0, 0,
535 0, 0, 0, 96, 96, 0, 96, 96, 96, 96,
536 96, 96, 96, 85, 0, 0, 85, 0, 0, 0,
537 84, 0, 0, 0, 97, 97, 97, 97, 0, 0,
538 85, 85, 0, 97, 0, 85, 0, 0, 0, 97,
539 97, 97, 97, 0, 0, 0, 0, 0, 0, 97,
540 97, 0, 97, 97, 97, 97, 97, 97, 97, 86,
541 0, 0, 86, 0, 0, 85, 0, 0, 0, 0,
542 0, 0, 0, 0, 0, 0, 86, 86, 0, 0,
543 0, 86, 0, 0, 0, 0, 0, 0, 0, 0,
544 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
545 0, 0, 0, 0, 148, 0, 0, 148, 0, 0,
546 0, 86, 0, 0, 0, 0, 95, 95, 95, 95,
547 0, 148, 148, 0, 0, 95, 148, 0, 0, 0,
548 0, 95, 95, 95, 95, 0, 0, 0, 0, 0,
549 0, 95, 95, 0, 95, 95, 95, 95, 95, 95,
550 95, 147, 0, 0, 147, 0, 148, 0, 0, 0,
551 0, 0, 0, 83, 83, 83, 83, 0, 147, 147,
552 0, 0, 83, 147, 0, 0, 0, 0, 83, 83,
553 83, 83, 0, 0, 0, 0, 0, 134, 83, 83,
554 134, 83, 83, 83, 83, 83, 83, 83, 0, 84,
555 84, 84, 84, 147, 134, 134, 0, 0, 84, 134,
556 0, 0, 0, 0, 84, 84, 84, 84, 0, 0,
557 0, 0, 0, 0, 84, 84, 0, 84, 84, 84,
558 84, 84, 84, 105, 0, 0, 105, 0, 0, 134,
559 0, 0, 0, 0, 85, 85, 85, 85, 0, 0,
560 105, 105, 0, 85, 0, 105, 0, 0, 0, 85,
561 85, 0, 85, 0, 0, 0, 0, 0, 0, 85,
562 85, 0, 85, 85, 85, 85, 85, 85, 90, 0,
563 0, 90, 0, 0, 0, 105, 0, 0, 0, 0,
564 86, 86, 86, 86, 0, 90, 90, 0, 0, 86,
565 90, 0, 167, 0, 0, 86, 86, 0, 0, 0,
566 92, 0, 0, 92, 0, 86, 86, 0, 86, 86,
567 86, 86, 86, 86, 0, 0, 0, 92, 92, 0,
568 90, 0, 92, 0, 149, 148, 148, 148, 148, 0,
569 0, 0, 0, 0, 148, 0, 0, 0, 0, 0,
570 148, 148, 91, 0, 0, 91, 0, 0, 0, 0,
571 148, 148, 92, 148, 148, 148, 148, 148, 0, 91,
572 91, 0, 143, 0, 91, 143, 0, 0, 0, 0,
573 0, 0, 147, 147, 147, 147, 0, 0, 0, 143,
574 143, 147, 0, 0, 0, 284, 0, 147, 147, 82,
575 156, 0, 82, 0, 91, 0, 0, 147, 147, 0,
576 147, 147, 147, 147, 147, 0, 82, 82, 134, 134,
577 134, 134, 0, 0, 143, 0, 0, 134, 167, 0,
578 0, 0, 0, 134, 134, 69, 0, 0, 69, 0,
579 0, 0, 0, 134, 134, 0, 134, 134, 134, 134,
580 134, 82, 69, 69, 0, 0, 0, 0, 0, 0,
581 149, 0, 0, 0, 105, 105, 105, 105, 0, 0,
582 0, 0, 0, 105, 0, 0, 0, 0, 0, 105,
583 105, 0, 0, 0, 0, 0, 0, 69, 0, 105,
584 105, 156, 105, 105, 105, 105, 105, 0, 151, 152,
585 153, 154, 0, 0, 0, 0, 0, 0, 0, 90,
586 90, 90, 90, 0, 159, 160, 161, 162, 90, 167,
587 163, 0, 0, 164, 165, 166, 0, 0, 0, 0,
588 0, 0, 0, 0, 90, 90, 0, 90, 90, 90,
589 90, 92, 92, 92, 92, 0, 0, 0, 0, 0,
590 92, 149, 0, 0, 0, 0, 0, 0, 0, 0,
591 0, 0, 0, 0, 0, 0, 92, 92, 0, 92,
592 92, 92, 0, 0, 0, 0, 0, 0, 0, 0,
593 0, 0, 0, 91, 91, 91, 91, 0, 0, 0,
594 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
595 0, 0, 0, 143, 143, 143, 143, 0, 91, 91,
596 0, 91, 0, 0, 0, 0, 0, 0, 150, 0,
597 0, 0, 0, 0, 151, 152, 153, 154, 143, 143,
598 82, 82, 82, 82, 0, 0, 0, 155, 157, 158,
599 159, 160, 161, 162, 0, 0, 163, 0, 0, 164,
600 165, 166, 0, 0, 0, 82, 82, 0, 0, 0,
601 0, 0, 0, 0, 94, 0, 69, 69, 69, 69,
602 0, 0, 104, 0, 0, 0, 109, 0, 0, 118,
603 0, 0, 0, 0, 0, 0, 125, 126, 127, 128,
604 129, 69, 69, 132, 133, 0, 0, 0, 0, 0,
605 140, 0, 0, 0, 0, 0, 0, 0, 0, 150,
606 0, 0, 0, 0, 0, 151, 152, 153, 154, 0,
607 0, 0, 0, 0, 0, 0, 0, 183, 0, 157,
608 158, 159, 160, 161, 162, 0, 0, 163, 0, 0,
609 164, 165, 166, 0, 0, 0, 0, 0, 0, 0,
610 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
611 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
612 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
613 0, 0, 0, 0, 217, 218, 219, 220, 221, 222,
614 223, 224, 225, 226, 227, 228, 229, 230, 0, 0,
615 0, 0, 0, 0, 0, 0, 0, 0, 0, 245,
616 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
617 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
618 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
619 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
620 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
621 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
622 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
623 0, 0, 0, 0, 0, 0, 0, 299, 0, 0,
624 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
625 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
626 0, 0, 0, 0, 0, 0, 0, 0, 315,
628 dEXT short yycheck[] = { 13,
629 36, 86, 41, 36, 40, 44, 182, 59, 59, 41,
630 93, 40, 59, 91, 91, 59, 257, 41, 257, 58,
631 59, 41, 191, 41, 63, 59, 44, 91, 91, 59,
632 329, 40, 46, 41, 93, 40, 93, 41, 257, 41,
633 58, 59, 41, 57, 122, 63, 123, 61, 97, 98,
634 99, 100, 101, 102, 93, 59, 41, 59, 41, 123,
635 123, 360, 91, 44, 297, 298, 41, 41, 276, 277,
636 40, 40, 278, 91, 40, 93, 326, 327, 0, 123,
637 59, 331, 59, 36, 59, 59, 59, 40, 59, 123,
638 123, 41, 106, 107, 123, 40, 40, 347, 123, 41,
639 40, 351, 271, 59, 41, 123, 40, 123, 44, 59,
640 260, 33, 257, 289, 36, 37, 38, 59, 40, 40,
641 42, 43, 59, 45, 40, 93, 41, 40, 125, 143,
642 144, 145, 146, 147, 148, 149, 305, 59, 91, 91,
643 257, 36, 64, 192, 41, 266, 267, 268, 41, 270,
644 271, 44, 91, 167, 168, 169, 170, 171, 172, 173,
645 125, 41, 93, 298, 44, 58, 59, 40, 182, 91,
646 123, 249, 186, 187, 41, 189, 254, 191, 58, 59,
647 41, 350, 41, 63, 198, 0, 200, 201, 41, 41,
648 41, 205, 40, 93, 41, 93, 59, 125, 59, 125,
649 93, 123, 125, 125, 126, 125, 257, 41, 125, 59,
650 41, 91, 123, 93, 297, 298, 41, 231, 33, 233,
651 234, 36, 37, 38, 257, 40, 59, 42, 43, 262,
652 45, 40, 93, 272, 273, 274, 275, 314, 297, 298,
653 297, 298, 281, 123, 59, 297, 298, 41, 41, 64,
654 297, 298, 337, 123, 272, 273, 274, 275, 297, 298,
655 296, 300, 301, 281, 0, 297, 298, 123, 282, 287,
656 288, 289, 290, 297, 298, 289, 91, 297, 298, 297,
657 298, 59, 300, 301, 302, 303, 304, 305, 306, 297,
658 298, 309, 41, 307, 312, 313, 314, 33, 297, 298,
659 36, 37, 38, 41, 40, 258, 42, 43, 123, 45,
660 125, 126, 297, 298, 297, 298, 297, 298, 297, 298,
661 297, 298, 41, 59, 297, 298, 297, 298, 64, 297,
662 298, 59, 346, 41, 256, 257, 258, 259, 260, 261,
663 41, 263, 264, 265, 266, 267, 268, 269, 270, 271,
664 272, 273, 274, 275, 59, 91, 8, 279, 280, 32,
665 282, 283, 284, 285, 286, 125, 297, 298, 63, 291,
666 292, 293, 294, 295, 296, 13, 144, 299, 307, 272,
667 273, 274, 275, 346, 189, 96, 308, 123, 310, 311,
668 126, -1, 272, 273, 274, 275, 91, 297, 298, 297,
669 298, 281, -1, -1, 297, 298, 91, 287, 288, 289,
670 290, 272, 273, 274, 275, -1, -1, 297, 298, -1,
671 300, 301, 302, 303, 304, 305, 306, -1, 123, 309,
672 91, -1, 312, 313, 314, -1, 297, 298, 123, -1,
673 -1, 256, 257, 258, 259, 260, 261, -1, 263, 264,
674 265, 266, 267, 268, 269, 270, 271, 272, 273, 274,
675 275, -1, 123, -1, 279, 280, -1, 282, 283, 284,
676 285, 286, 272, 273, 274, 275, 291, 292, 293, 294,
677 295, 296, 41, -1, 299, 44, 91, -1, -1, -1,
678 -1, -1, -1, 308, -1, 310, 311, 297, 298, 58,
679 59, -1, -1, -1, 63, -1, 266, 267, 268, -1,
680 270, 271, -1, -1, -1, -1, -1, -1, 123, -1,
681 256, 257, 258, 259, 260, 261, 125, 263, 264, 265,
682 -1, -1, 91, 269, 93, -1, 272, 273, 274, 275,
683 -1, -1, -1, 279, 280, -1, 282, 283, 284, 285,
684 286, -1, -1, -1, -1, 291, 292, 293, 294, 295,
685 296, -1, -1, 299, 123, -1, -1, -1, -1, -1,
686 91, -1, 308, 33, 310, 311, 36, 37, 38, -1,
687 40, 41, 42, 43, 44, 45, 281, -1, -1, -1,
688 -1, -1, 287, 288, 289, 290, -1, -1, 58, 59,
689 -1, -1, 123, 63, 64, 300, 301, 302, 303, 304,
690 305, 306, -1, -1, 309, -1, -1, 312, 313, 314,
691 -1, 306, -1, -1, 309, -1, -1, 312, 313, 314,
692 -1, 91, -1, 93, 33, -1, -1, 36, 37, 38,
693 -1, 40, 41, 42, 43, 44, 45, -1, 309, -1,
694 -1, 312, 313, 314, -1, -1, -1, -1, -1, 58,
695 59, -1, -1, 123, 63, 64, 126, 266, 267, 268,
696 -1, 270, 271, -1, -1, -1, -1, -1, -1, 302,
697 303, 304, -1, 306, 289, 290, -1, -1, -1, -1,
698 -1, 13, -1, 33, 93, -1, 36, 37, 38, -1,
699 40, 306, 42, 43, 309, 45, -1, 312, 313, 314,
700 333, -1, -1, 272, 273, 274, 275, 340, -1, 59,
701 42, 344, 281, 45, 64, -1, -1, 126, 287, 288,
702 289, 290, -1, -1, 357, 358, -1, -1, 297, 298,
703 -1, 300, 301, 302, 303, 304, 305, 306, -1, -1,
704 309, 91, -1, 312, 313, 314, -1, -1, 41, 81,
705 -1, 44, -1, -1, -1, -1, 287, 288, 289, 290,
706 -1, -1, -1, 95, -1, -1, 59, -1, -1, 91,
707 -1, -1, -1, 123, 305, 306, 126, -1, 309, -1,
708 -1, 312, 313, 314, -1, -1, -1, 257, 258, 259,
709 260, 261, -1, 263, 264, 265, -1, -1, -1, 269,
710 93, 123, 272, 273, 274, 275, -1, -1, -1, 141,
711 280, 281, 282, 283, 284, 285, 286, 287, 288, 289,
712 290, 291, 292, 293, 294, 295, 296, 297, 298, 299,
713 300, 301, 302, 303, 304, 305, 306, -1, 308, 309,
714 310, 311, 312, 313, 314, -1, 178, -1, 257, 258,
715 259, 260, 261, 185, 263, 264, 265, -1, -1, -1,
716 269, -1, -1, 272, 273, 274, 275, -1, -1, -1,
717 -1, 280, 281, 282, 283, 284, 285, 286, 287, 288,
718 289, 290, 291, 292, 293, 294, 295, 296, 297, 298,
719 299, 300, 301, 302, 303, 304, 305, 306, -1, 308,
720 309, 310, 311, 312, 313, 314, 256, 257, 258, 259,
721 260, 261, -1, 263, 264, 265, -1, -1, -1, 269,
722 -1, 91, 272, 273, 274, 275, -1, -1, -1, 279,
723 280, -1, 282, 283, 284, 285, 286, -1, -1, 91,
724 43, 291, 292, 293, 294, 295, 296, 33, 51, 299,
725 36, 37, 38, 123, 40, -1, 42, 43, 308, 45,
726 310, 311, -1, -1, -1, 287, -1, 289, 290, -1,
727 -1, 123, -1, 59, -1, -1, -1, -1, 64, 272,
728 273, 274, 275, 305, 306, -1, -1, 309, 91, -1,
729 312, 313, 314, -1, -1, -1, -1, -1, -1, -1,
730 -1, -1, -1, 33, 297, 91, 36, 37, 38, -1,
731 40, 114, 42, 43, 26, 45, -1, -1, -1, 122,
732 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
733 -1, 43, 44, -1, 64, -1, -1, 123, 50, -1,
734 126, -1, -1, -1, -1, -1, -1, -1, -1, -1,
735 62, 63, 64, 65, -1, -1, -1, -1, -1, 33,
736 -1, 91, 36, 37, 38, -1, 40, -1, 42, 43,
737 -1, 45, -1, -1, -1, -1, -1, -1, -1, -1,
738 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
739 64, -1, -1, 123, -1, 107, 126, -1, -1, -1,
740 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
741 -1, -1, -1, -1, -1, -1, -1, 91, -1, 289,
742 290, -1, 33, -1, -1, 36, 37, 38, -1, 40,
743 -1, 42, 43, -1, 45, 305, 306, 289, -1, 309,
744 -1, -1, 312, 313, 314, -1, 249, -1, -1, 123,
745 -1, 254, 126, 64, 306, -1, -1, 309, -1, -1,
746 312, 313, 314, -1, -1, -1, -1, -1, -1, -1,
747 256, 257, 258, 259, 260, 261, -1, 263, 264, 265,
748 91, -1, -1, 269, -1, -1, 272, 273, 274, 275,
749 -1, -1, -1, 279, 280, -1, 282, 283, 284, 285,
750 286, -1, -1, -1, -1, 291, 292, 293, 294, 295,
751 296, 91, 123, 299, -1, 126, -1, -1, -1, -1,
752 -1, -1, 308, 41, 310, 311, 44, 257, 258, 259,
753 260, 261, 262, 263, 264, 265, -1, -1, -1, 269,
754 -1, -1, -1, 123, -1, 63, -1, -1, -1, -1,
755 280, -1, 282, 283, 284, 285, 286, -1, -1, -1,
756 -1, 291, 292, 293, 294, 295, 296, -1, -1, 299,
757 -1, -1, -1, 91, -1, -1, -1, 41, 308, -1,
758 310, 311, -1, 257, 258, 259, 260, 261, -1, 263,
759 264, 265, -1, -1, -1, 269, -1, -1, -1, 63,
760 -1, -1, -1, -1, -1, 123, 280, -1, 282, 283,
761 284, 285, 286, -1, -1, -1, -1, 291, 292, 293,
762 294, 295, 296, -1, -1, 299, -1, 91, -1, -1,
763 -1, -1, -1, -1, 308, -1, 310, 311, -1, -1,
764 -1, -1, -1, -1, -1, -1, 257, 258, 259, 260,
765 261, -1, 263, 264, 265, -1, -1, -1, 269, 123,
766 -1, -1, -1, -1, -1, -1, -1, -1, -1, 280,
767 -1, 282, 283, 284, 285, 286, -1, -1, -1, 91,
768 291, 292, 293, 294, 295, 296, 33, -1, 299, 36,
769 37, 38, -1, 40, -1, 42, 43, 308, 45, 310,
770 311, -1, -1, -1, -1, -1, -1, 287, 288, 289,
771 290, 123, 59, -1, -1, -1, -1, 64, -1, -1,
772 -1, 301, 302, 303, 304, 305, 306, -1, -1, 309,
773 -1, -1, 312, 313, 314, -1, -1, -1, -1, -1,
774 -1, -1, 33, -1, 91, 36, 37, 38, -1, 40,
775 41, 42, 43, -1, 45, -1, -1, -1, -1, -1,
776 -1, -1, -1, 281, -1, -1, -1, -1, -1, 287,
777 288, 289, 290, 64, -1, -1, -1, -1, -1, 126,
778 -1, -1, 300, 301, 302, 303, 304, 305, 306, -1,
779 -1, 309, -1, -1, 312, 313, 314, -1, 33, -1,
780 91, 36, 37, 38, -1, 40, -1, 42, 43, -1,
781 45, -1, -1, -1, -1, -1, -1, 281, -1, -1,
782 -1, -1, -1, 287, 288, 289, 290, -1, -1, 64,
783 -1, -1, -1, -1, -1, 126, 300, 301, 302, 303,
784 304, 305, 306, -1, -1, 309, -1, -1, 312, 313,
785 314, -1, -1, -1, -1, -1, 91, 33, 93, -1,
786 36, 37, 38, -1, 40, 41, 42, 43, -1, 45,
787 -1, -1, -1, -1, -1, 287, 288, 289, 290, -1,
788 -1, -1, -1, -1, -1, -1, -1, -1, 64, -1,
789 -1, 126, 304, 305, 306, -1, -1, 309, -1, -1,
790 312, 313, 314, -1, -1, -1, 41, -1, -1, 44,
791 257, 258, 259, 260, 261, 91, 263, 264, 265, -1,
792 -1, -1, 269, 58, 59, -1, -1, -1, 63, -1,
793 -1, -1, -1, 280, -1, 282, 283, 284, 285, 286,
794 -1, -1, -1, -1, 291, 292, 293, 294, 295, 296,
795 126, -1, 299, -1, -1, -1, -1, -1, 93, -1,
796 -1, 308, 41, 310, 311, 44, 257, 258, 259, 260,
797 261, -1, 263, 264, 265, -1, -1, -1, 269, 58,
798 59, -1, -1, -1, 63, -1, -1, -1, -1, 280,
799 -1, 282, 283, 284, 285, 286, -1, -1, -1, -1,
800 291, 292, 293, 294, 295, 296, -1, -1, 299, -1,
801 -1, -1, -1, -1, 93, -1, -1, 308, -1, 310,
802 311, -1, 257, 258, 259, 260, 261, -1, 263, 264,
803 265, -1, 33, -1, 269, 36, 37, 38, -1, 40,
804 41, 42, 43, -1, 45, 280, -1, 282, 283, 284,
805 285, 286, -1, -1, -1, -1, 291, 292, 293, 294,
806 295, 296, -1, 64, 299, -1, -1, -1, -1, -1,
807 -1, -1, -1, 308, -1, 310, 311, -1, -1, -1,
808 -1, 257, 258, 259, 260, 261, -1, 263, 264, 265,
809 91, 33, -1, 269, 36, 37, 38, -1, 40, -1,
810 42, 43, -1, 45, 280, -1, 282, 283, 284, 285,
811 286, -1, -1, -1, -1, 291, 292, 293, 294, 295,
812 296, -1, 64, 299, -1, 126, -1, -1, -1, -1,
813 -1, -1, 308, -1, 310, 311, -1, 272, 273, 274,
814 275, -1, -1, -1, -1, -1, 281, 33, -1, 91,
815 36, 37, 38, 288, 40, 41, 42, 43, -1, 45,
816 -1, -1, 297, 298, -1, 300, 301, 302, 303, 304,
817 -1, -1, -1, -1, -1, -1, -1, -1, 64, -1,
818 -1, -1, -1, -1, 126, -1, -1, -1, -1, -1,
819 -1, -1, -1, 272, 273, 274, 275, -1, -1, -1,
820 -1, -1, 281, 33, -1, 91, 36, 37, 38, -1,
821 40, 41, 42, 43, -1, 45, -1, -1, 297, 298,
822 -1, 300, 301, 302, 303, 304, -1, -1, -1, -1,
823 -1, -1, -1, -1, 64, -1, -1, -1, -1, -1,
824 126, -1, -1, -1, -1, -1, -1, -1, -1, -1,
825 -1, -1, -1, -1, -1, -1, 257, 258, 259, 260,
826 261, 91, 263, 264, 265, -1, 33, -1, 269, 36,
827 37, 38, -1, 40, 41, 42, 43, -1, 45, 280,
828 -1, 282, 283, 284, 285, 286, -1, -1, -1, -1,
829 291, 292, 293, 294, 295, 296, 126, 64, 299, -1,
830 -1, -1, -1, -1, -1, -1, -1, 308, -1, 310,
831 311, -1, -1, -1, 256, 257, 258, 259, 260, 261,
832 -1, 263, 264, 265, 91, -1, -1, 269, -1, -1,
833 -1, -1, -1, -1, -1, -1, -1, -1, 280, -1,
834 282, 283, 284, 285, 286, -1, -1, -1, -1, 291,
835 292, 293, 294, 295, 296, -1, -1, 299, -1, 126,
836 91, -1, -1, -1, 41, -1, 308, 44, 310, 311,
837 -1, 257, 258, 259, 260, 261, -1, 263, 264, 265,
838 -1, 58, 59, 269, -1, -1, 63, -1, -1, -1,
839 -1, -1, 123, -1, 280, -1, 282, 283, 284, 285,
840 286, -1, -1, -1, -1, 291, 292, 293, 294, 295,
841 296, -1, -1, 299, 91, -1, 93, -1, -1, -1,
842 -1, -1, 308, -1, 310, 311, -1, 257, 258, 259,
843 260, 261, -1, 263, 264, 265, -1, 33, -1, 269,
844 36, 37, 38, -1, 40, -1, 42, 43, -1, 45,
845 280, -1, 282, 283, 284, 285, 286, -1, -1, -1,
846 -1, 291, 292, 293, 294, 295, 296, -1, 64, 299,
847 -1, -1, -1, -1, -1, -1, -1, -1, 308, -1,
848 310, 311, -1, -1, -1, -1, 41, -1, -1, 44,
849 257, 258, 259, 260, 261, 91, 263, 264, 265, -1,
850 -1, -1, 269, 58, 59, -1, -1, -1, 63, -1,
851 -1, -1, -1, 280, -1, 282, 283, 284, 285, 286,
852 -1, -1, -1, -1, 291, 292, 293, 294, 295, 296,
853 126, -1, 299, 41, -1, -1, 44, -1, 93, -1,
854 -1, 308, -1, 310, 311, -1, -1, -1, -1, -1,
855 58, 59, -1, -1, -1, 63, 287, 288, 289, 290,
856 -1, -1, -1, -1, -1, -1, -1, -1, 123, -1,
857 -1, 302, 303, 304, 305, 306, -1, -1, 309, -1,
858 -1, 312, 313, 314, -1, 93, -1, -1, -1, -1,
859 -1, -1, -1, -1, -1, 272, 273, 274, 275, -1,
860 41, -1, -1, -1, 281, -1, -1, -1, -1, -1,
861 287, 288, 289, 290, -1, 123, -1, 58, 59, -1,
862 297, 298, 63, 300, 301, 302, 303, 304, 305, 306,
863 -1, -1, 309, -1, -1, 312, 313, 314, -1, -1,
864 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
865 91, -1, 93, -1, 41, -1, -1, -1, -1, -1,
866 -1, 257, 258, 259, 260, 261, -1, 263, 264, 265,
867 -1, 58, 59, 269, -1, -1, 63, -1, -1, -1,
868 -1, -1, 123, -1, 280, -1, 282, 283, 284, 285,
869 286, -1, -1, -1, -1, 291, 292, 293, 294, 295,
870 296, -1, -1, 299, 91, -1, 93, -1, -1, -1,
871 41, -1, 308, 44, 310, 311, -1, 272, 273, 274,
872 275, -1, -1, -1, -1, -1, 281, 58, 59, -1,
873 -1, -1, 287, 288, 289, 290, 123, -1, -1, -1,
874 -1, -1, 297, 298, -1, 300, 301, 302, 303, 304,
875 305, 306, -1, -1, 309, -1, -1, 312, 313, 314,
876 -1, -1, 93, -1, 272, 273, 274, 275, -1, 41,
877 -1, -1, 44, 281, -1, -1, -1, -1, -1, 287,
878 288, 289, 290, -1, -1, -1, 58, 59, -1, 297,
879 298, 63, 300, 301, 302, 303, 304, 305, 306, 25,
880 26, 309, -1, -1, 312, 313, 314, -1, -1, -1,
881 -1, 37, -1, -1, -1, -1, -1, 43, 44, 45,
882 -1, 93, -1, -1, 50, -1, -1, -1, -1, -1,
883 -1, 272, 273, 274, 275, -1, 62, 63, 64, 65,
884 281, -1, -1, -1, -1, -1, 287, 288, 289, 290,
885 -1, 123, 41, -1, -1, 44, 297, 298, -1, 300,
886 301, 302, 303, 304, 305, 306, -1, -1, 309, 58,
887 59, 312, 313, 314, 63, -1, -1, -1, -1, -1,
888 -1, 107, -1, -1, -1, 272, 273, 274, 275, -1,
889 -1, -1, -1, -1, 281, -1, -1, -1, -1, -1,
890 287, 288, 289, 290, 93, -1, 41, -1, -1, -1,
891 297, 298, -1, 300, 301, 302, 303, 304, 305, 306,
892 -1, -1, 309, 58, 59, 312, 313, 314, 63, -1,
893 -1, -1, -1, -1, 123, -1, -1, -1, -1, -1,
894 166, 272, 273, 274, 275, -1, -1, -1, -1, -1,
895 -1, -1, -1, -1, 41, -1, 91, 44, 93, -1,
896 -1, -1, -1, -1, 190, -1, 297, 298, -1, 300,
897 -1, 58, 59, -1, -1, -1, 63, -1, -1, -1,
898 -1, -1, -1, -1, -1, -1, -1, -1, 123, -1,
899 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
900 272, 273, 274, 275, -1, 41, 93, -1, 44, 281,
901 -1, -1, -1, -1, -1, 287, 288, 289, 290, -1,
902 -1, -1, 58, 59, -1, 297, 298, 63, 300, 301,
903 302, 303, 304, 305, 306, -1, 123, 309, -1, -1,
904 312, 313, 314, -1, -1, -1, -1, -1, -1, -1,
905 41, -1, -1, 44, -1, -1, -1, 93, -1, -1,
906 -1, -1, -1, -1, -1, -1, -1, 58, 59, -1,
907 -1, -1, 63, -1, -1, -1, -1, -1, -1, -1,
908 -1, -1, -1, 272, 273, 274, 275, -1, -1, -1,
909 -1, -1, 281, -1, -1, -1, -1, -1, 287, 288,
910 289, 290, 93, -1, 41, -1, -1, 44, 297, 298,
911 -1, 300, 301, 302, 303, 304, 305, 306, -1, -1,
912 309, 58, 59, 312, 313, 314, 63, -1, -1, -1,
913 -1, -1, -1, -1, -1, -1, -1, 272, 273, 274,
914 275, -1, -1, -1, -1, -1, 281, -1, -1, -1,
915 -1, -1, 287, 288, 289, 290, 93, -1, -1, -1,
916 -1, -1, 297, 298, -1, 300, 301, 302, 303, 304,
917 305, 306, -1, -1, 309, -1, -1, 312, 313, 314,
918 -1, -1, -1, -1, -1, 272, 273, 274, 275, -1,
919 41, -1, -1, 44, 281, -1, -1, -1, -1, -1,
920 287, 288, 289, 290, -1, -1, -1, 58, 59, -1,
921 297, 298, 63, 300, 301, 302, 303, 304, 305, 306,
922 -1, -1, 309, -1, -1, 312, 313, 314, -1, -1,
923 -1, -1, -1, -1, -1, -1, 272, 273, 274, 275,
924 -1, 41, 93, -1, 44, 281, -1, -1, -1, -1,
925 -1, 287, 288, 289, 290, -1, -1, -1, 58, 59,
926 -1, 297, 298, 63, 300, 301, 302, 303, 304, 305,
927 306, -1, -1, 309, -1, -1, 312, 313, 314, -1,
928 -1, 272, 273, 274, 275, -1, -1, -1, -1, -1,
929 281, -1, -1, 93, -1, -1, 287, 288, 289, 290,
930 -1, -1, 41, -1, -1, 44, 297, 298, -1, 300,
931 301, 302, 303, 304, 305, 306, -1, -1, 309, 58,
932 59, 312, 313, 314, 63, -1, -1, -1, -1, -1,
933 -1, -1, -1, -1, -1, 272, 273, 274, 275, -1,
934 41, -1, -1, 44, 281, -1, -1, -1, -1, -1,
935 287, 288, 289, 290, 93, -1, -1, 58, 59, -1,
936 297, 298, 63, 300, 301, 302, 303, 304, 305, 306,
937 -1, -1, 309, -1, -1, 312, 313, 314, -1, 41,
938 -1, -1, 44, -1, -1, -1, -1, -1, -1, -1,
939 41, -1, 93, 44, -1, -1, 58, 59, -1, -1,
940 -1, 63, -1, -1, -1, -1, -1, 58, 59, -1,
941 -1, -1, 63, -1, -1, -1, -1, -1, -1, -1,
942 -1, 272, 273, 274, 275, -1, 41, -1, -1, 44,
943 281, 93, -1, -1, -1, -1, 287, 288, 289, 290,
944 -1, -1, 93, 58, 59, -1, 297, 298, 63, 300,
945 301, 302, 303, 304, 305, 306, -1, -1, 309, -1,
946 -1, 312, 313, 314, -1, -1, -1, -1, -1, -1,
947 -1, -1, 272, 273, 274, 275, -1, 41, 93, -1,
948 44, 281, -1, -1, -1, -1, -1, 287, 288, 289,
949 290, -1, -1, -1, 58, 59, -1, 297, 298, 63,
950 300, 301, 302, 303, 304, 305, 306, -1, -1, 309,
951 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
952 -1, -1, -1, 41, -1, -1, 44, -1, -1, 93,
953 -1, -1, -1, 272, 273, 274, 275, -1, -1, -1,
954 58, 59, 281, -1, -1, 63, -1, -1, 287, 288,
955 289, 290, -1, -1, -1, -1, -1, -1, 297, 298,
956 -1, 300, 301, 302, 303, 304, 305, 306, -1, -1,
957 309, 272, 273, 274, 275, 93, -1, -1, -1, -1,
958 281, -1, -1, -1, -1, -1, 287, 288, 289, 290,
959 -1, -1, -1, -1, -1, -1, 297, 298, -1, 300,
960 301, 302, 303, 304, 305, 306, -1, -1, -1, -1,
961 272, 273, 274, 275, -1, 41, -1, -1, 44, 281,
962 -1, 272, 273, 274, 275, 287, 288, 289, 290, -1,
963 281, -1, 58, 59, -1, 297, 298, 63, 300, 301,
964 302, 303, 304, 305, 306, -1, 297, 298, -1, 300,
965 301, 302, 303, 304, -1, -1, -1, 272, 273, 274,
966 275, -1, 41, -1, -1, 44, 281, 93, -1, -1,
967 -1, -1, 287, 288, 289, 290, -1, -1, -1, 58,
968 59, -1, 297, 298, 63, 300, 301, 302, 303, 304,
969 305, 306, -1, -1, -1, -1, -1, -1, 41, -1,
970 -1, 44, -1, -1, -1, -1, -1, -1, 272, 273,
971 274, 275, -1, -1, 93, 58, 59, 281, -1, -1,
972 63, -1, -1, 287, 288, 289, 290, -1, -1, -1,
973 -1, -1, -1, 297, 298, -1, 300, 301, 302, 303,
974 304, 305, 306, 41, -1, -1, 44, -1, -1, -1,
975 93, -1, -1, -1, 272, 273, 274, 275, -1, -1,
976 58, 59, -1, 281, -1, 63, -1, -1, -1, 287,
977 288, 289, 290, -1, -1, -1, -1, -1, -1, 297,
978 298, -1, 300, 301, 302, 303, 304, 305, 306, 41,
979 -1, -1, 44, -1, -1, 93, -1, -1, -1, -1,
980 -1, -1, -1, -1, -1, -1, 58, 59, -1, -1,
981 -1, 63, -1, -1, -1, -1, -1, -1, -1, -1,
982 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
983 -1, -1, -1, -1, 41, -1, -1, 44, -1, -1,
984 -1, 93, -1, -1, -1, -1, 272, 273, 274, 275,
985 -1, 58, 59, -1, -1, 281, 63, -1, -1, -1,
986 -1, 287, 288, 289, 290, -1, -1, -1, -1, -1,
987 -1, 297, 298, -1, 300, 301, 302, 303, 304, 305,
988 306, 41, -1, -1, 44, -1, 93, -1, -1, -1,
989 -1, -1, -1, 272, 273, 274, 275, -1, 58, 59,
990 -1, -1, 281, 63, -1, -1, -1, -1, 287, 288,
991 289, 290, -1, -1, -1, -1, -1, 41, 297, 298,
992 44, 300, 301, 302, 303, 304, 305, 306, -1, 272,
993 273, 274, 275, 93, 58, 59, -1, -1, 281, 63,
994 -1, -1, -1, -1, 287, 288, 289, 290, -1, -1,
995 -1, -1, -1, -1, 297, 298, -1, 300, 301, 302,
996 303, 304, 305, 41, -1, -1, 44, -1, -1, 93,
997 -1, -1, -1, -1, 272, 273, 274, 275, -1, -1,
998 58, 59, -1, 281, -1, 63, -1, -1, -1, 287,
999 288, -1, 290, -1, -1, -1, -1, -1, -1, 297,
1000 298, -1, 300, 301, 302, 303, 304, 305, 41, -1,
1001 -1, 44, -1, -1, -1, 93, -1, -1, -1, -1,
1002 272, 273, 274, 275, -1, 58, 59, -1, -1, 281,
1003 63, -1, 91, -1, -1, 287, 288, -1, -1, -1,
1004 41, -1, -1, 44, -1, 297, 298, -1, 300, 301,
1005 302, 303, 304, 305, -1, -1, -1, 58, 59, -1,
1006 93, -1, 63, -1, 123, 272, 273, 274, 275, -1,
1007 -1, -1, -1, -1, 281, -1, -1, -1, -1, -1,
1008 287, 288, 41, -1, -1, 44, -1, -1, -1, -1,
1009 297, 298, 93, 300, 301, 302, 303, 304, -1, 58,
1010 59, -1, 41, -1, 63, 44, -1, -1, -1, -1,
1011 -1, -1, 272, 273, 274, 275, -1, -1, -1, 58,
1012 59, 281, -1, -1, -1, 58, -1, 287, 288, 41,
1013 63, -1, 44, -1, 93, -1, -1, 297, 298, -1,
1014 300, 301, 302, 303, 304, -1, 58, 59, 272, 273,
1015 274, 275, -1, -1, 93, -1, -1, 281, 91, -1,
1016 -1, -1, -1, 287, 288, 41, -1, -1, 44, -1,
1017 -1, -1, -1, 297, 298, -1, 300, 301, 302, 303,
1018 304, 93, 58, 59, -1, -1, -1, -1, -1, -1,
1019 123, -1, -1, -1, 272, 273, 274, 275, -1, -1,
1020 -1, -1, -1, 281, -1, -1, -1, -1, -1, 287,
1021 288, -1, -1, -1, -1, -1, -1, 93, -1, 297,
1022 298, 63, 300, 301, 302, 303, 304, -1, 287, 288,
1023 289, 290, -1, -1, -1, -1, -1, -1, -1, 272,
1024 273, 274, 275, -1, 303, 304, 305, 306, 281, 91,
1025 309, -1, -1, 312, 313, 314, -1, -1, -1, -1,
1026 -1, -1, -1, -1, 297, 298, -1, 300, 301, 302,
1027 303, 272, 273, 274, 275, -1, -1, -1, -1, -1,
1028 281, 123, -1, -1, -1, -1, -1, -1, -1, -1,
1029 -1, -1, -1, -1, -1, -1, 297, 298, -1, 300,
1030 301, 302, -1, -1, -1, -1, -1, -1, -1, -1,
1031 -1, -1, -1, 272, 273, 274, 275, -1, -1, -1,
1032 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1033 -1, -1, -1, 272, 273, 274, 275, -1, 297, 298,
1034 -1, 300, -1, -1, -1, -1, -1, -1, 281, -1,
1035 -1, -1, -1, -1, 287, 288, 289, 290, 297, 298,
1036 272, 273, 274, 275, -1, -1, -1, 300, 301, 302,
1037 303, 304, 305, 306, -1, -1, 309, -1, -1, 312,
1038 313, 314, -1, -1, -1, 297, 298, -1, -1, -1,
1039 -1, -1, -1, -1, 30, -1, 272, 273, 274, 275,
1040 -1, -1, 38, -1, -1, -1, 42, -1, -1, 45,
1041 -1, -1, -1, -1, -1, -1, 52, 53, 54, 55,
1042 56, 297, 298, 59, 60, -1, -1, -1, -1, -1,
1043 66, -1, -1, -1, -1, -1, -1, -1, -1, 281,
1044 -1, -1, -1, -1, -1, 287, 288, 289, 290, -1,
1045 -1, -1, -1, -1, -1, -1, -1, 93, -1, 301,
1046 302, 303, 304, 305, 306, -1, -1, 309, -1, -1,
1047 312, 313, 314, -1, -1, -1, -1, -1, -1, -1,
1048 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1049 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1050 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1051 -1, -1, -1, -1, 150, 151, 152, 153, 154, 155,
1052 156, 157, 158, 159, 160, 161, 162, 163, -1, -1,
1053 -1, -1, -1, -1, -1, -1, -1, -1, -1, 175,
1054 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1055 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1056 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1057 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1058 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1059 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1060 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1061 -1, -1, -1, -1, -1, -1, -1, 253, -1, -1,
1062 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1063 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1064 -1, -1, -1, -1, -1, -1, -1, -1, 284,
1070 #define YYMAXTOKEN 314
1072 dEXT char * yyname[] = {
1073 "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,
1074 "'!'",0,0,"'$'","'%'","'&'",0,"'('","')'","'*'","'+'","','","'-'",0,0,0,0,0,0,0,
1075 0,0,0,0,0,"':'","';'",0,0,0,"'?'","'@'",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1076 0,0,0,0,0,0,"'['",0,"']'",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1077 0,0,"'{'",0,"'}'","'~'",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1078 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1079 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1080 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",
1081 "PMFUNC","PRIVATEREF","FUNC0SUB","UNIOPSUB","LSTOPSUB","LABEL","FORMAT","SUB",
1082 "ANONSUB","PACKAGE","USE","WHILE","UNTIL","IF","UNLESS","ELSE","ELSIF",
1083 "CONTINUE","FOR","LOOPEX","DOTDOT","FUNC0","FUNC1","FUNC","UNIOP","LSTOP",
1084 "RELOP","EQOP","MULOP","ADDOP","DOLSHARP","DO","HASHBRACK","NOAMP","LOCAL","MY",
1085 "OROP","ANDOP","NOTOP","ASSIGNOP","OROR","ANDAND","BITOROP","BITANDOP",
1086 "SHIFTOP","MATCHOP","UMINUS","REFGEN","POWOP","PREINC","PREDEC","POSTINC",
1089 dEXT char * yyrule[] = {
1092 "prog : $$1 lineseq",
1093 "block : '{' remember lineseq '}'",
1095 "mblock : '{' mremember lineseq '}'",
1098 "lineseq : lineseq decl",
1099 "lineseq : lineseq line",
1100 "line : label cond",
1103 "line : label sideff ';'",
1106 "sideff : expr IF expr",
1107 "sideff : expr UNLESS expr",
1108 "sideff : expr WHILE expr",
1109 "sideff : expr UNTIL iexpr",
1111 "else : ELSE mblock",
1112 "else : ELSIF '(' mexpr ')' mblock else",
1113 "cond : IF '(' remember mexpr ')' mblock else",
1114 "cond : UNLESS '(' remember miexpr ')' mblock else",
1116 "cont : CONTINUE block",
1117 "loop : label WHILE '(' remember mtexpr ')' mblock cont",
1118 "loop : label UNTIL '(' remember miexpr ')' mblock cont",
1119 "loop : label FOR MY remember my_scalar '(' mexpr ')' mblock cont",
1120 "loop : label FOR scalar '(' remember mexpr ')' mblock cont",
1121 "loop : label FOR '(' remember mexpr ')' mblock cont",
1122 "loop : label FOR '(' remember mnexpr ';' mtexpr ';' mnexpr ')' mblock",
1123 "loop : label block cont",
1139 "format : FORMAT startformsub formname block",
1142 "subrout : SUB startsub subname proto subbody",
1151 "package : PACKAGE WORD ';'",
1152 "package : PACKAGE ';'",
1154 "use : USE startsub $$2 WORD WORD listexpr ';'",
1155 "expr : expr ANDOP expr",
1156 "expr : expr OROP expr",
1158 "argexpr : argexpr ','",
1159 "argexpr : argexpr ',' term",
1161 "listop : LSTOP indirob argexpr",
1162 "listop : FUNC '(' indirob expr ')'",
1163 "listop : term ARROW method '(' listexprcom ')'",
1164 "listop : METHOD indirob listexpr",
1165 "listop : FUNCMETH indirob '(' listexprcom ')'",
1166 "listop : LSTOP listexpr",
1167 "listop : FUNC '(' listexprcom ')'",
1169 "listop : LSTOPSUB startanonsub block $$3 listexpr",
1172 "term : term ASSIGNOP term",
1173 "term : term POWOP term",
1174 "term : term MULOP term",
1175 "term : term ADDOP term",
1176 "term : term SHIFTOP term",
1177 "term : term RELOP term",
1178 "term : term EQOP term",
1179 "term : term BITANDOP term",
1180 "term : term BITOROP term",
1181 "term : term DOTDOT term",
1182 "term : term ANDAND term",
1183 "term : term OROR term",
1184 "term : term '?' term ':' term",
1185 "term : term MATCHOP term",
1190 "term : REFGEN term",
1191 "term : term POSTINC",
1192 "term : term POSTDEC",
1193 "term : PREINC term",
1194 "term : PREDEC term",
1195 "term : local term",
1196 "term : '(' expr ')'",
1198 "term : '[' expr ']'",
1200 "term : HASHBRACK expr ';' '}'",
1201 "term : HASHBRACK ';' '}'",
1202 "term : ANONSUB startanonsub proto block",
1204 "term : star '{' expr ';' '}'",
1206 "term : scalar '[' expr ']'",
1207 "term : term ARROW '[' expr ']'",
1208 "term : term '[' expr ']'",
1212 "term : scalar '{' expr ';' '}'",
1213 "term : term ARROW '{' expr ';' '}'",
1214 "term : term '{' expr ';' '}'",
1215 "term : '(' expr ')' '[' expr ']'",
1216 "term : '(' ')' '[' expr ']'",
1217 "term : ary '[' expr ']'",
1218 "term : ary '{' expr ';' '}'",
1221 "term : amper '(' ')'",
1222 "term : amper '(' expr ')'",
1223 "term : NOAMP WORD listexpr",
1226 "term : DO WORD '(' ')'",
1227 "term : DO WORD '(' expr ')'",
1228 "term : DO scalar '(' ')'",
1229 "term : DO scalar '(' expr ')'",
1230 "term : term ARROW '(' ')'",
1231 "term : term ARROW '(' expr ')'",
1233 "term : LOOPEX term",
1234 "term : NOTOP argexpr",
1236 "term : UNIOP block",
1237 "term : UNIOP term",
1238 "term : UNIOPSUB term",
1240 "term : FUNC0 '(' ')'",
1242 "term : FUNC1 '(' ')'",
1243 "term : FUNC1 '(' expr ')'",
1244 "term : PMFUNC '(' term ')'",
1245 "term : PMFUNC '(' term ',' term ')'",
1249 "listexpr : argexpr",
1251 "listexprcom : expr",
1252 "listexprcom : expr ','",
1255 "my_scalar : scalar",
1256 "amper : '&' indirob",
1257 "scalar : '$' indirob",
1258 "ary : '@' indirob",
1259 "hsh : '%' indirob",
1260 "arylen : DOLSHARP indirob",
1261 "star : '*' indirob",
1265 "indirob : PRIVATEREF",
1268 #define yyclearin (yychar=(-1))
1269 #define yyerrok (yyerrflag=0)
1272 #define YYMAXDEPTH YYSTACKSIZE
1276 #define YYSTACKSIZE YYMAXDEPTH
1278 #define YYSTACKSIZE 500
1279 #define YYMAXDEPTH 500
1287 dEXT YYSTYPE yylval;
1290 #line 1360 "perly.c"
1291 #define YYABORT goto yyabort
1292 #define YYACCEPT goto yyaccept
1293 #define YYERROR goto yyerrlab
1307 yydestruct(void *ptr)
1309 struct ysv* ysave = (struct ysv*)ptr;
1310 if (ysave->yyss) Safefree(ysave->yyss);
1311 if (ysave->yyvs) Safefree(ysave->yyvs);
1312 yydebug = ysave->oldyydebug;
1313 yynerrs = ysave->oldyynerrs;
1314 yyerrflag = ysave->oldyyerrflag;
1315 yychar = ysave->oldyychar;
1316 yyval = ysave->oldyyval;
1317 yylval = ysave->oldyylval;
1324 register int yym, yyn, yystate;
1325 register short *yyssp;
1326 register YYSTYPE *yyvsp;
1329 unsigned yystacksize = YYSTACKSIZE;
1335 extern char *getenv();
1340 struct ysv *ysave = (struct ysv*)safemalloc(sizeof(struct ysv));
1341 SAVEDESTRUCTOR(yydestruct, ysave);
1342 ysave->oldyydebug = yydebug;
1343 ysave->oldyynerrs = yynerrs;
1344 ysave->oldyyerrflag = yyerrflag;
1345 ysave->oldyychar = yychar;
1346 ysave->oldyyval = yyval;
1347 ysave->oldyylval = yylval;
1350 if (yys = getenv("YYDEBUG"))
1353 if (yyn >= '0' && yyn <= '9')
1354 yydebug = yyn - '0';
1363 ** Initialize private stacks (yyparse may be called from an action)
1365 ysave->yyss = yyss = (short*)safemalloc(yystacksize*sizeof(short));
1366 ysave->yyvs = yyvs = (YYSTYPE*)safemalloc(yystacksize*sizeof(YYSTYPE));
1372 *yyssp = yystate = 0;
1375 if (yyn = yydefred[yystate]) goto yyreduce;
1378 if ((yychar = yylex()) < 0) yychar = 0;
1383 if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
1384 if (!yys) yys = "illegal-symbol";
1385 PerlIO_printf(Perl_debug_log, "yydebug: state %d, reading %d (%s)\n", yystate,
1390 if ((yyn = yysindex[yystate]) && (yyn += yychar) >= 0 &&
1391 yyn <= YYTABLESIZE && yycheck[yyn] == yychar)
1395 PerlIO_printf(Perl_debug_log, "yydebug: state %d, shifting to state %d\n",
1396 yystate, yytable[yyn]);
1398 if (yyssp >= yyss + yystacksize - 1)
1401 ** reallocate and recover. Note that pointers
1402 ** have to be reset, or bad things will happen
1404 int yyps_index = (yyssp - yyss);
1405 int yypv_index = (yyvsp - yyvs);
1406 yystacksize += YYSTACKSIZE;
1407 ysave->yyvs = yyvs =
1408 (YYSTYPE*)realloc((char*)yyvs,yystacksize * sizeof(YYSTYPE));
1409 ysave->yyss = yyss =
1410 (short*)realloc((char*)yyss,yystacksize * sizeof(short));
1413 yyssp = yyss + yyps_index;
1414 yyvsp = yyvs + yypv_index;
1416 *++yyssp = yystate = yytable[yyn];
1419 if (yyerrflag > 0) --yyerrflag;
1422 if ((yyn = yyrindex[yystate]) && (yyn += yychar) >= 0 &&
1423 yyn <= YYTABLESIZE && yycheck[yyn] == yychar)
1428 if (yyerrflag) goto yyinrecovery;
1433 yyerror("syntax error");
1445 if ((yyn = yysindex[*yyssp]) && (yyn += YYERRCODE) >= 0 &&
1446 yyn <= YYTABLESIZE && yycheck[yyn] == YYERRCODE)
1450 PerlIO_printf(Perl_debug_log,
1451 "yydebug: state %d, error recovery shifting to state %d\n",
1452 *yyssp, yytable[yyn]);
1454 if (yyssp >= yyss + yystacksize - 1)
1457 ** reallocate and recover. Note that pointers
1458 ** have to be reset, or bad things will happen
1460 int yyps_index = (yyssp - yyss);
1461 int yypv_index = (yyvsp - yyvs);
1462 yystacksize += YYSTACKSIZE;
1463 ysave->yyvs = yyvs = (YYSTYPE*)realloc((char*)yyvs,
1464 yystacksize * sizeof(YYSTYPE));
1465 ysave->yyss = yyss = (short*)realloc((char*)yyss,
1466 yystacksize * sizeof(short));
1469 yyssp = yyss + yyps_index;
1470 yyvsp = yyvs + yypv_index;
1472 *++yyssp = yystate = yytable[yyn];
1480 PerlIO_printf(Perl_debug_log,
1481 "yydebug: error recovery discarding state %d\n",
1484 if (yyssp <= yyss) goto yyabort;
1492 if (yychar == 0) goto yyabort;
1497 if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
1498 if (!yys) yys = "illegal-symbol";
1499 PerlIO_printf(Perl_debug_log,
1500 "yydebug: state %d, error recovery discards token %d (%s)\n",
1501 yystate, yychar, yys);
1510 PerlIO_printf(Perl_debug_log, "yydebug: state %d, reducing by rule %d (%s)\n",
1511 yystate, yyn, yyrule[yyn]);
1514 yyval = yyvsp[1-yym];
1520 #if defined(YYDEBUG) && defined(DEBUGGING)
1521 yydebug = (debug & 1);
1528 { newPROG(yyvsp[0].opval); }
1532 { if (copline > (line_t)yyvsp[-3].ival)
1533 copline = yyvsp[-3].ival;
1534 yyval.opval = block_end(yyvsp[-2].ival, yyvsp[-1].opval); }
1538 { yyval.ival = block_start(TRUE); }
1542 { if (copline > (line_t)yyvsp[-3].ival)
1543 copline = yyvsp[-3].ival;
1544 yyval.opval = block_end(yyvsp[-2].ival, yyvsp[-1].opval); }
1548 { yyval.ival = block_start(FALSE); }
1552 { yyval.opval = Nullop; }
1556 { yyval.opval = yyvsp[-1].opval; }
1560 { yyval.opval = append_list(OP_LINESEQ,
1561 (LISTOP*)yyvsp[-1].opval, (LISTOP*)yyvsp[0].opval);
1562 pad_reset_pending = TRUE;
1563 if (yyvsp[-1].opval && yyvsp[0].opval) hints |= HINT_BLOCK_SCOPE; }
1567 { yyval.opval = newSTATEOP(0, yyvsp[-1].pval, yyvsp[0].opval); }
1571 { if (yyvsp[-1].pval != Nullch) {
1572 yyval.opval = newSTATEOP(0, yyvsp[-1].pval, newOP(OP_NULL, 0));
1575 yyval.opval = Nullop;
1582 { yyval.opval = newSTATEOP(0, yyvsp[-2].pval, yyvsp[-1].opval);
1587 { yyval.opval = Nullop; }
1591 { yyval.opval = yyvsp[0].opval; }
1595 { yyval.opval = newLOGOP(OP_AND, 0, yyvsp[0].opval, yyvsp[-2].opval); }
1599 { yyval.opval = newLOGOP(OP_OR, 0, yyvsp[0].opval, yyvsp[-2].opval); }
1603 { yyval.opval = newLOOPOP(OPf_PARENS, 1, scalar(yyvsp[0].opval), yyvsp[-2].opval); }
1607 { yyval.opval = newLOOPOP(OPf_PARENS, 1, yyvsp[0].opval, yyvsp[-2].opval);}
1611 { yyval.opval = Nullop; }
1615 { yyval.opval = scope(yyvsp[0].opval); }
1619 { copline = yyvsp[-5].ival;
1620 yyval.opval = newSTATEOP(0, Nullch,
1621 newCONDOP(0, yyvsp[-3].opval, scope(yyvsp[-1].opval), yyvsp[0].opval));
1622 hints |= HINT_BLOCK_SCOPE; }
1626 { copline = yyvsp[-6].ival;
1627 yyval.opval = block_end(yyvsp[-4].ival,
1628 newCONDOP(0, yyvsp[-3].opval, scope(yyvsp[-1].opval), yyvsp[0].opval)); }
1632 { copline = yyvsp[-6].ival;
1633 yyval.opval = block_end(yyvsp[-4].ival,
1634 newCONDOP(0, yyvsp[-3].opval, scope(yyvsp[-1].opval), yyvsp[0].opval)); }
1638 { yyval.opval = Nullop; }
1642 { yyval.opval = scope(yyvsp[0].opval); }
1646 { copline = yyvsp[-6].ival;
1647 yyval.opval = block_end(yyvsp[-4].ival,
1648 newSTATEOP(0, yyvsp[-7].pval,
1649 newWHILEOP(0, 1, (LOOP*)Nullop,
1650 yyvsp[-6].ival, yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval))); }
1654 { copline = yyvsp[-6].ival;
1655 yyval.opval = block_end(yyvsp[-4].ival,
1656 newSTATEOP(0, yyvsp[-7].pval,
1657 newWHILEOP(0, 1, (LOOP*)Nullop,
1658 yyvsp[-6].ival, yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval))); }
1662 { yyval.opval = block_end(yyvsp[-6].ival,
1663 newFOROP(0, yyvsp[-9].pval, yyvsp[-8].ival, yyvsp[-5].opval, yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval)); }
1667 { yyval.opval = block_end(yyvsp[-4].ival,
1668 newFOROP(0, yyvsp[-8].pval, yyvsp[-7].ival, mod(yyvsp[-6].opval, OP_ENTERLOOP),
1669 yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval)); }
1673 { yyval.opval = block_end(yyvsp[-4].ival,
1674 newFOROP(0, yyvsp[-7].pval, yyvsp[-6].ival, Nullop, yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval)); }
1678 { OP *forop = append_elem(OP_LINESEQ,
1679 scalar(yyvsp[-6].opval),
1680 newWHILEOP(0, 1, (LOOP*)Nullop,
1681 yyvsp[-9].ival, scalar(yyvsp[-4].opval),
1682 yyvsp[0].opval, scalar(yyvsp[-2].opval)));
1683 copline = yyvsp[-9].ival;
1684 yyval.opval = block_end(yyvsp[-7].ival, newSTATEOP(0, yyvsp[-10].pval, forop)); }
1688 { yyval.opval = newSTATEOP(0, yyvsp[-2].pval,
1689 newWHILEOP(0, 1, (LOOP*)Nullop,
1690 NOLINE, Nullop, yyvsp[-1].opval, yyvsp[0].opval)); }
1694 { yyval.opval = Nullop; }
1698 { (void)scan_num("1"); yyval.opval = yylval.opval; }
1702 { yyval.opval = invert(scalar(yyvsp[0].opval)); }
1706 { yyval.opval = yyvsp[0].opval; intro_my(); }
1710 { yyval.opval = yyvsp[0].opval; intro_my(); }
1714 { yyval.opval = yyvsp[0].opval; intro_my(); }
1718 { yyval.opval = yyvsp[0].opval; intro_my(); }
1722 { yyval.pval = Nullch; }
1742 { newFORM(yyvsp[-2].ival, yyvsp[-1].opval, yyvsp[0].opval); }
1746 { yyval.opval = yyvsp[0].opval; }
1750 { yyval.opval = Nullop; }
1754 { newSUB(yyvsp[-3].ival, yyvsp[-2].opval, yyvsp[-1].opval, yyvsp[0].opval); }
1758 { yyval.ival = start_subparse(FALSE, 0); }
1762 { yyval.ival = start_subparse(FALSE, CVf_ANON); }
1766 { yyval.ival = start_subparse(TRUE, 0); }
1770 { char *name = SvPV(((SVOP*)yyvsp[0].opval)->op_sv, na);
1771 if (strEQ(name, "BEGIN") || strEQ(name, "END")
1772 || strEQ(name, "INIT"))
1773 { CvUNIQUE_on(compcv); subline = -subline; }
1774 yyval.opval = yyvsp[0].opval; }
1778 { yyval.opval = Nullop; }
1782 { yyval.opval = yyvsp[0].opval; }
1786 { yyval.opval = Nullop; expect = XSTATE; }
1790 { package(yyvsp[-1].opval); }
1794 { package(Nullop); }
1798 { CvUNIQUE_on(compcv); /* It's a BEGIN {} */ }
1802 { utilize(yyvsp[-6].ival, yyvsp[-5].ival, yyvsp[-3].opval, yyvsp[-2].opval, yyvsp[-1].opval); }
1806 { yyval.opval = newLOGOP(OP_AND, 0, yyvsp[-2].opval, yyvsp[0].opval); }
1810 { yyval.opval = newLOGOP(yyvsp[-1].ival, 0, yyvsp[-2].opval, yyvsp[0].opval); }
1814 { yyval.opval = yyvsp[-1].opval; }
1818 { yyval.opval = append_elem(OP_LIST, yyvsp[-2].opval, yyvsp[0].opval); }
1822 { yyval.opval = convert(yyvsp[-2].ival, OPf_STACKED,
1823 prepend_elem(OP_LIST, newGVREF(yyvsp[-2].ival,yyvsp[-1].opval), yyvsp[0].opval) ); }
1827 { yyval.opval = convert(yyvsp[-4].ival, OPf_STACKED,
1828 prepend_elem(OP_LIST, newGVREF(yyvsp[-4].ival,yyvsp[-2].opval), yyvsp[-1].opval) ); }
1832 { yyval.opval = convert(OP_ENTERSUB, OPf_STACKED,
1833 append_elem(OP_LIST,
1834 prepend_elem(OP_LIST, scalar(yyvsp[-5].opval), yyvsp[-1].opval),
1835 newUNOP(OP_METHOD, 0, yyvsp[-3].opval))); }
1839 { yyval.opval = convert(OP_ENTERSUB, OPf_STACKED,
1840 append_elem(OP_LIST,
1841 prepend_elem(OP_LIST, yyvsp[-1].opval, yyvsp[0].opval),
1842 newUNOP(OP_METHOD, 0, yyvsp[-2].opval))); }
1846 { yyval.opval = convert(OP_ENTERSUB, OPf_STACKED,
1847 append_elem(OP_LIST,
1848 prepend_elem(OP_LIST, yyvsp[-3].opval, yyvsp[-1].opval),
1849 newUNOP(OP_METHOD, 0, yyvsp[-4].opval))); }
1853 { yyval.opval = convert(yyvsp[-1].ival, 0, yyvsp[0].opval); }
1857 { yyval.opval = convert(yyvsp[-3].ival, 0, yyvsp[-1].opval); }
1861 { yyvsp[0].opval = newANONSUB(yyvsp[-1].ival, 0, yyvsp[0].opval); }
1865 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
1866 append_elem(OP_LIST,
1867 prepend_elem(OP_LIST, yyvsp[-2].opval, yyvsp[0].opval), yyvsp[-4].opval)); }
1871 { yyval.opval = newASSIGNOP(OPf_STACKED, yyvsp[-2].opval, yyvsp[-1].ival, yyvsp[0].opval); }
1875 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1879 { if (yyvsp[-1].ival != OP_REPEAT)
1880 scalar(yyvsp[-2].opval);
1881 yyval.opval = newBINOP(yyvsp[-1].ival, 0, yyvsp[-2].opval, scalar(yyvsp[0].opval)); }
1885 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1889 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1893 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1897 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1901 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1905 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1909 { yyval.opval = newRANGE(yyvsp[-1].ival, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval));}
1913 { yyval.opval = newLOGOP(OP_AND, 0, yyvsp[-2].opval, yyvsp[0].opval); }
1917 { yyval.opval = newLOGOP(OP_OR, 0, yyvsp[-2].opval, yyvsp[0].opval); }
1921 { yyval.opval = newCONDOP(0, yyvsp[-4].opval, yyvsp[-2].opval, yyvsp[0].opval); }
1925 { yyval.opval = bind_match(yyvsp[-1].ival, yyvsp[-2].opval, yyvsp[0].opval); }
1929 { yyval.opval = newUNOP(OP_NEGATE, 0, scalar(yyvsp[0].opval)); }
1933 { yyval.opval = yyvsp[0].opval; }
1937 { yyval.opval = newUNOP(OP_NOT, 0, scalar(yyvsp[0].opval)); }
1941 { yyval.opval = newUNOP(OP_COMPLEMENT, 0, scalar(yyvsp[0].opval));}
1945 { yyval.opval = newUNOP(OP_REFGEN, 0, mod(yyvsp[0].opval,OP_REFGEN)); }
1949 { yyval.opval = newUNOP(OP_POSTINC, 0,
1950 mod(scalar(yyvsp[-1].opval), OP_POSTINC)); }
1954 { yyval.opval = newUNOP(OP_POSTDEC, 0,
1955 mod(scalar(yyvsp[-1].opval), OP_POSTDEC)); }
1959 { yyval.opval = newUNOP(OP_PREINC, 0,
1960 mod(scalar(yyvsp[0].opval), OP_PREINC)); }
1964 { yyval.opval = newUNOP(OP_PREDEC, 0,
1965 mod(scalar(yyvsp[0].opval), OP_PREDEC)); }
1969 { yyval.opval = localize(yyvsp[0].opval,yyvsp[-1].ival); }
1973 { yyval.opval = sawparens(yyvsp[-1].opval); }
1977 { yyval.opval = sawparens(newNULLLIST()); }
1981 { yyval.opval = newANONLIST(yyvsp[-1].opval); }
1985 { yyval.opval = newANONLIST(Nullop); }
1989 { yyval.opval = newANONHASH(yyvsp[-2].opval); }
1993 { yyval.opval = newANONHASH(Nullop); }
1997 { yyval.opval = newANONSUB(yyvsp[-2].ival, yyvsp[-1].opval, yyvsp[0].opval); }
2001 { yyval.opval = yyvsp[0].opval; }
2005 { yyval.opval = newBINOP(OP_GELEM, 0, newGVREF(0,yyvsp[-4].opval), yyvsp[-2].opval); }
2009 { yyval.opval = yyvsp[0].opval; }
2013 { yyval.opval = newBINOP(OP_AELEM, 0, oopsAV(yyvsp[-3].opval), scalar(yyvsp[-1].opval)); }
2017 { yyval.opval = newBINOP(OP_AELEM, 0,
2018 ref(newAVREF(yyvsp[-4].opval),OP_RV2AV),
2019 scalar(yyvsp[-1].opval));}
2023 { assertref(yyvsp[-3].opval); yyval.opval = newBINOP(OP_AELEM, 0,
2024 ref(newAVREF(yyvsp[-3].opval),OP_RV2AV),
2025 scalar(yyvsp[-1].opval));}
2029 { yyval.opval = yyvsp[0].opval; }
2033 { yyval.opval = yyvsp[0].opval; }
2037 { yyval.opval = newUNOP(OP_AV2ARYLEN, 0, ref(yyvsp[0].opval, OP_AV2ARYLEN));}
2041 { yyval.opval = newBINOP(OP_HELEM, 0, oopsHV(yyvsp[-4].opval), jmaybe(yyvsp[-2].opval));
2042 expect = XOPERATOR; }
2046 { yyval.opval = newBINOP(OP_HELEM, 0,
2047 ref(newHVREF(yyvsp[-5].opval),OP_RV2HV),
2048 jmaybe(yyvsp[-2].opval));
2049 expect = XOPERATOR; }
2053 { assertref(yyvsp[-4].opval); yyval.opval = newBINOP(OP_HELEM, 0,
2054 ref(newHVREF(yyvsp[-4].opval),OP_RV2HV),
2055 jmaybe(yyvsp[-2].opval));
2056 expect = XOPERATOR; }
2060 { yyval.opval = newSLICEOP(0, yyvsp[-1].opval, yyvsp[-4].opval); }
2064 { yyval.opval = newSLICEOP(0, yyvsp[-1].opval, Nullop); }
2068 { yyval.opval = prepend_elem(OP_ASLICE,
2069 newOP(OP_PUSHMARK, 0),
2070 newLISTOP(OP_ASLICE, 0,
2071 list(yyvsp[-1].opval),
2072 ref(yyvsp[-3].opval, OP_ASLICE))); }
2076 { yyval.opval = prepend_elem(OP_HSLICE,
2077 newOP(OP_PUSHMARK, 0),
2078 newLISTOP(OP_HSLICE, 0,
2079 list(yyvsp[-2].opval),
2080 ref(oopsHV(yyvsp[-4].opval), OP_HSLICE)));
2081 expect = XOPERATOR; }
2085 { yyval.opval = yyvsp[0].opval; }
2089 { yyval.opval = newUNOP(OP_ENTERSUB, 0, scalar(yyvsp[0].opval)); }
2093 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED, scalar(yyvsp[-2].opval)); }
2097 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2098 append_elem(OP_LIST, yyvsp[-1].opval, scalar(yyvsp[-3].opval))); }
2102 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2103 append_elem(OP_LIST, yyvsp[0].opval, scalar(yyvsp[-1].opval))); }
2107 { yyval.opval = newUNOP(OP_DOFILE, 0, scalar(yyvsp[0].opval)); }
2111 { yyval.opval = newUNOP(OP_NULL, OPf_SPECIAL, scope(yyvsp[0].opval)); }
2115 { yyval.opval = newUNOP(OP_ENTERSUB,
2116 OPf_SPECIAL|OPf_STACKED,
2117 prepend_elem(OP_LIST,
2119 (OPpENTERSUB_AMPER<<8),
2120 scalar(yyvsp[-2].opval)
2121 )),Nullop)); dep();}
2125 { yyval.opval = newUNOP(OP_ENTERSUB,
2126 OPf_SPECIAL|OPf_STACKED,
2127 append_elem(OP_LIST,
2130 (OPpENTERSUB_AMPER<<8),
2131 scalar(yyvsp[-3].opval)
2136 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_SPECIAL|OPf_STACKED,
2137 prepend_elem(OP_LIST,
2138 scalar(newCVREF(0,scalar(yyvsp[-2].opval))), Nullop)); dep();}
2142 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_SPECIAL|OPf_STACKED,
2143 prepend_elem(OP_LIST,
2145 scalar(newCVREF(0,scalar(yyvsp[-3].opval))))); dep();}
2149 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2150 newCVREF(0, scalar(yyvsp[-3].opval))); }
2154 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2155 append_elem(OP_LIST, yyvsp[-1].opval,
2156 newCVREF(0, scalar(yyvsp[-4].opval)))); }
2160 { yyval.opval = newOP(yyvsp[0].ival, OPf_SPECIAL);
2161 hints |= HINT_BLOCK_SCOPE; }
2165 { yyval.opval = newLOOPEX(yyvsp[-1].ival,yyvsp[0].opval); }
2169 { yyval.opval = newUNOP(OP_NOT, 0, scalar(yyvsp[0].opval)); }
2173 { yyval.opval = newOP(yyvsp[0].ival, 0); }
2177 { yyval.opval = newUNOP(yyvsp[-1].ival, 0, yyvsp[0].opval); }
2181 { yyval.opval = newUNOP(yyvsp[-1].ival, 0, yyvsp[0].opval); }
2185 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2186 append_elem(OP_LIST, yyvsp[0].opval, scalar(yyvsp[-1].opval))); }
2190 { yyval.opval = newOP(yyvsp[0].ival, 0); }
2194 { yyval.opval = newOP(yyvsp[-2].ival, 0); }
2198 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2199 scalar(yyvsp[0].opval)); }
2203 { yyval.opval = newOP(yyvsp[-2].ival, OPf_SPECIAL); }
2207 { yyval.opval = newUNOP(yyvsp[-3].ival, 0, yyvsp[-1].opval); }
2211 { yyval.opval = pmruntime(yyvsp[-3].opval, yyvsp[-1].opval, Nullop); }
2215 { yyval.opval = pmruntime(yyvsp[-5].opval, yyvsp[-3].opval, yyvsp[-1].opval); }
2219 { yyval.opval = Nullop; }
2223 { yyval.opval = yyvsp[0].opval; }
2227 { yyval.opval = Nullop; }
2231 { yyval.opval = yyvsp[0].opval; }
2235 { yyval.opval = yyvsp[-1].opval; }
2247 { in_my = 0; yyval.opval = my(yyvsp[0].opval); }
2251 { yyval.opval = newCVREF(yyvsp[-1].ival,yyvsp[0].opval); }
2255 { yyval.opval = newSVREF(yyvsp[0].opval); }
2259 { yyval.opval = newAVREF(yyvsp[0].opval); }
2263 { yyval.opval = newHVREF(yyvsp[0].opval); }
2267 { yyval.opval = newAVREF(yyvsp[0].opval); }
2271 { yyval.opval = newGVREF(0,yyvsp[0].opval); }
2275 { yyval.opval = scalar(yyvsp[0].opval); }
2279 { yyval.opval = scalar(yyvsp[0].opval); }
2283 { yyval.opval = scope(yyvsp[0].opval); }
2287 { yyval.opval = yyvsp[0].opval; }
2289 #line 2272 "perly.c"
2295 if (yystate == 0 && yym == 0)
2299 PerlIO_printf(Perl_debug_log,
2300 "yydebug: after reduction, shifting from state 0 to state %d\n",
2308 if ((yychar = yylex()) < 0) yychar = 0;
2313 if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
2314 if (!yys) yys = "illegal-symbol";
2315 PerlIO_printf(Perl_debug_log, "yydebug: state %d, reading %d (%s)\n",
2316 YYFINAL, yychar, yys);
2320 if (yychar == 0) goto yyaccept;
2323 if ((yyn = yygindex[yym]) && (yyn += yystate) >= 0 &&
2324 yyn <= YYTABLESIZE && yycheck[yyn] == yystate)
2325 yystate = yytable[yyn];
2327 yystate = yydgoto[yym];
2330 PerlIO_printf(Perl_debug_log,
2331 "yydebug: after reduction, shifting from state %d to state %d\n",
2334 if (yyssp >= yyss + yystacksize - 1)
2337 ** reallocate and recover. Note that pointers
2338 ** have to be reset, or bad things will happen
2340 int yyps_index = (yyssp - yyss);
2341 int yypv_index = (yyvsp - yyvs);
2342 yystacksize += YYSTACKSIZE;
2343 ysave->yyvs = yyvs =
2344 (YYSTYPE*)realloc((char*)yyvs,yystacksize * sizeof(YYSTYPE));
2345 ysave->yyss = yyss =
2346 (short*)realloc((char*)yyss,yystacksize * sizeof(short));
2349 yyssp = yyss + yyps_index;
2350 yyvsp = yyvs + yypv_index;
2356 yyerror("Out of memory for yacc stack");