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();
1341 New(73, ysave, 1, struct ysv);
1342 SAVEDESTRUCTOR(yydestruct, ysave);
1343 ysave->oldyydebug = yydebug;
1344 ysave->oldyynerrs = yynerrs;
1345 ysave->oldyyerrflag = yyerrflag;
1346 ysave->oldyychar = yychar;
1347 ysave->oldyyval = yyval;
1348 ysave->oldyylval = yylval;
1351 if (yys = getenv("YYDEBUG"))
1354 if (yyn >= '0' && yyn <= '9')
1355 yydebug = yyn - '0';
1357 else SETERRNO(0,SS$_NORMAL);
1365 ** Initialize private stacks (yyparse may be called from an action)
1367 New(73, yyss, yystacksize, short);
1368 New(73, yyvs, yystacksize, YYSTYPE);
1376 *yyssp = yystate = 0;
1379 if (yyn = yydefred[yystate]) goto yyreduce;
1382 if ((yychar = yylex()) < 0) yychar = 0;
1387 if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
1388 if (!yys) yys = "illegal-symbol";
1389 PerlIO_printf(Perl_debug_log, "yydebug: state %d, reading %d (%s)\n", yystate,
1394 if ((yyn = yysindex[yystate]) && (yyn += yychar) >= 0 &&
1395 yyn <= YYTABLESIZE && yycheck[yyn] == yychar)
1399 PerlIO_printf(Perl_debug_log, "yydebug: state %d, shifting to state %d\n",
1400 yystate, yytable[yyn]);
1402 if (yyssp >= yyss + yystacksize - 1)
1405 ** reallocate and recover. Note that pointers
1406 ** have to be reset, or bad things will happen
1408 int yyps_index = (yyssp - yyss);
1409 int yypv_index = (yyvsp - yyvs);
1410 yystacksize += YYSTACKSIZE;
1411 ysave->yyvs = yyvs =
1412 (YYSTYPE*)realloc((char*)yyvs,yystacksize * sizeof(YYSTYPE));
1413 ysave->yyss = yyss =
1414 (short*)realloc((char*)yyss,yystacksize * sizeof(short));
1417 yyssp = yyss + yyps_index;
1418 yyvsp = yyvs + yypv_index;
1420 *++yyssp = yystate = yytable[yyn];
1423 if (yyerrflag > 0) --yyerrflag;
1426 if ((yyn = yyrindex[yystate]) && (yyn += yychar) >= 0 &&
1427 yyn <= YYTABLESIZE && yycheck[yyn] == yychar)
1432 if (yyerrflag) goto yyinrecovery;
1437 yyerror("syntax error");
1449 if ((yyn = yysindex[*yyssp]) && (yyn += YYERRCODE) >= 0 &&
1450 yyn <= YYTABLESIZE && yycheck[yyn] == YYERRCODE)
1454 PerlIO_printf(Perl_debug_log,
1455 "yydebug: state %d, error recovery shifting to state %d\n",
1456 *yyssp, yytable[yyn]);
1458 if (yyssp >= yyss + yystacksize - 1)
1461 ** reallocate and recover. Note that pointers
1462 ** have to be reset, or bad things will happen
1464 int yyps_index = (yyssp - yyss);
1465 int yypv_index = (yyvsp - yyvs);
1466 yystacksize += YYSTACKSIZE;
1467 ysave->yyvs = yyvs = (YYSTYPE*)realloc((char*)yyvs,
1468 yystacksize * sizeof(YYSTYPE));
1469 ysave->yyss = yyss = (short*)realloc((char*)yyss,
1470 yystacksize * sizeof(short));
1473 yyssp = yyss + yyps_index;
1474 yyvsp = yyvs + yypv_index;
1476 *++yyssp = yystate = yytable[yyn];
1484 PerlIO_printf(Perl_debug_log,
1485 "yydebug: error recovery discarding state %d\n",
1488 if (yyssp <= yyss) goto yyabort;
1496 if (yychar == 0) goto yyabort;
1501 if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
1502 if (!yys) yys = "illegal-symbol";
1503 PerlIO_printf(Perl_debug_log,
1504 "yydebug: state %d, error recovery discards token %d (%s)\n",
1505 yystate, yychar, yys);
1514 PerlIO_printf(Perl_debug_log, "yydebug: state %d, reducing by rule %d (%s)\n",
1515 yystate, yyn, yyrule[yyn]);
1518 yyval = yyvsp[1-yym];
1524 #if defined(YYDEBUG) && defined(DEBUGGING)
1525 yydebug = (debug & 1);
1532 { newPROG(yyvsp[0].opval); }
1536 { if (copline > (line_t)yyvsp[-3].ival)
1537 copline = yyvsp[-3].ival;
1538 yyval.opval = block_end(yyvsp[-2].ival, yyvsp[-1].opval); }
1542 { yyval.ival = block_start(TRUE); }
1546 { if (copline > (line_t)yyvsp[-3].ival)
1547 copline = yyvsp[-3].ival;
1548 yyval.opval = block_end(yyvsp[-2].ival, yyvsp[-1].opval); }
1552 { yyval.ival = block_start(FALSE); }
1556 { yyval.opval = Nullop; }
1560 { yyval.opval = yyvsp[-1].opval; }
1564 { yyval.opval = append_list(OP_LINESEQ,
1565 (LISTOP*)yyvsp[-1].opval, (LISTOP*)yyvsp[0].opval);
1566 pad_reset_pending = TRUE;
1567 if (yyvsp[-1].opval && yyvsp[0].opval) hints |= HINT_BLOCK_SCOPE; }
1571 { yyval.opval = newSTATEOP(0, yyvsp[-1].pval, yyvsp[0].opval); }
1575 { if (yyvsp[-1].pval != Nullch) {
1576 yyval.opval = newSTATEOP(0, yyvsp[-1].pval, newOP(OP_NULL, 0));
1579 yyval.opval = Nullop;
1586 { yyval.opval = newSTATEOP(0, yyvsp[-2].pval, yyvsp[-1].opval);
1591 { yyval.opval = Nullop; }
1595 { yyval.opval = yyvsp[0].opval; }
1599 { yyval.opval = newLOGOP(OP_AND, 0, yyvsp[0].opval, yyvsp[-2].opval); }
1603 { yyval.opval = newLOGOP(OP_OR, 0, yyvsp[0].opval, yyvsp[-2].opval); }
1607 { yyval.opval = newLOOPOP(OPf_PARENS, 1, scalar(yyvsp[0].opval), yyvsp[-2].opval); }
1611 { yyval.opval = newLOOPOP(OPf_PARENS, 1, yyvsp[0].opval, yyvsp[-2].opval);}
1615 { yyval.opval = Nullop; }
1619 { yyval.opval = scope(yyvsp[0].opval); }
1623 { copline = yyvsp[-5].ival;
1624 yyval.opval = newSTATEOP(0, Nullch,
1625 newCONDOP(0, yyvsp[-3].opval, scope(yyvsp[-1].opval), yyvsp[0].opval));
1626 hints |= HINT_BLOCK_SCOPE; }
1630 { copline = yyvsp[-6].ival;
1631 yyval.opval = block_end(yyvsp[-4].ival,
1632 newCONDOP(0, yyvsp[-3].opval, scope(yyvsp[-1].opval), yyvsp[0].opval)); }
1636 { copline = yyvsp[-6].ival;
1637 yyval.opval = block_end(yyvsp[-4].ival,
1638 newCONDOP(0, yyvsp[-3].opval, scope(yyvsp[-1].opval), yyvsp[0].opval)); }
1642 { yyval.opval = Nullop; }
1646 { yyval.opval = scope(yyvsp[0].opval); }
1650 { copline = yyvsp[-6].ival;
1651 yyval.opval = block_end(yyvsp[-4].ival,
1652 newSTATEOP(0, yyvsp[-7].pval,
1653 newWHILEOP(0, 1, (LOOP*)Nullop,
1654 yyvsp[-6].ival, yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval))); }
1658 { copline = yyvsp[-6].ival;
1659 yyval.opval = block_end(yyvsp[-4].ival,
1660 newSTATEOP(0, yyvsp[-7].pval,
1661 newWHILEOP(0, 1, (LOOP*)Nullop,
1662 yyvsp[-6].ival, yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval))); }
1666 { yyval.opval = block_end(yyvsp[-6].ival,
1667 newFOROP(0, yyvsp[-9].pval, yyvsp[-8].ival, yyvsp[-5].opval, yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval)); }
1671 { yyval.opval = block_end(yyvsp[-4].ival,
1672 newFOROP(0, yyvsp[-8].pval, yyvsp[-7].ival, mod(yyvsp[-6].opval, OP_ENTERLOOP),
1673 yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval)); }
1677 { yyval.opval = block_end(yyvsp[-4].ival,
1678 newFOROP(0, yyvsp[-7].pval, yyvsp[-6].ival, Nullop, yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval)); }
1682 { OP *forop = append_elem(OP_LINESEQ,
1683 scalar(yyvsp[-6].opval),
1684 newWHILEOP(0, 1, (LOOP*)Nullop,
1685 yyvsp[-9].ival, scalar(yyvsp[-4].opval),
1686 yyvsp[0].opval, scalar(yyvsp[-2].opval)));
1687 copline = yyvsp[-9].ival;
1688 yyval.opval = block_end(yyvsp[-7].ival, newSTATEOP(0, yyvsp[-10].pval, forop)); }
1692 { yyval.opval = newSTATEOP(0, yyvsp[-2].pval,
1693 newWHILEOP(0, 1, (LOOP*)Nullop,
1694 NOLINE, Nullop, yyvsp[-1].opval, yyvsp[0].opval)); }
1698 { yyval.opval = Nullop; }
1702 { (void)scan_num("1"); yyval.opval = yylval.opval; }
1706 { yyval.opval = invert(scalar(yyvsp[0].opval)); }
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.opval = yyvsp[0].opval; intro_my(); }
1726 { yyval.pval = Nullch; }
1746 { newFORM(yyvsp[-2].ival, yyvsp[-1].opval, yyvsp[0].opval); }
1750 { yyval.opval = yyvsp[0].opval; }
1754 { yyval.opval = Nullop; }
1758 { newSUB(yyvsp[-3].ival, yyvsp[-2].opval, yyvsp[-1].opval, yyvsp[0].opval); }
1762 { yyval.ival = start_subparse(FALSE, 0); }
1766 { yyval.ival = start_subparse(FALSE, CVf_ANON); }
1770 { yyval.ival = start_subparse(TRUE, 0); }
1774 { char *name = SvPV(((SVOP*)yyvsp[0].opval)->op_sv, na);
1775 if (strEQ(name, "BEGIN") || strEQ(name, "END")
1776 || strEQ(name, "INIT"))
1777 CvUNIQUE_on(compcv);
1778 yyval.opval = yyvsp[0].opval; }
1782 { yyval.opval = Nullop; }
1786 { yyval.opval = yyvsp[0].opval; }
1790 { yyval.opval = Nullop; expect = XSTATE; }
1794 { package(yyvsp[-1].opval); }
1798 { package(Nullop); }
1802 { CvUNIQUE_on(compcv); /* It's a BEGIN {} */ }
1806 { utilize(yyvsp[-6].ival, yyvsp[-5].ival, yyvsp[-3].opval, yyvsp[-2].opval, yyvsp[-1].opval); }
1810 { yyval.opval = newLOGOP(OP_AND, 0, yyvsp[-2].opval, yyvsp[0].opval); }
1814 { yyval.opval = newLOGOP(yyvsp[-1].ival, 0, yyvsp[-2].opval, yyvsp[0].opval); }
1818 { yyval.opval = yyvsp[-1].opval; }
1822 { yyval.opval = append_elem(OP_LIST, yyvsp[-2].opval, yyvsp[0].opval); }
1826 { yyval.opval = convert(yyvsp[-2].ival, OPf_STACKED,
1827 prepend_elem(OP_LIST, newGVREF(yyvsp[-2].ival,yyvsp[-1].opval), yyvsp[0].opval) ); }
1831 { yyval.opval = convert(yyvsp[-4].ival, OPf_STACKED,
1832 prepend_elem(OP_LIST, newGVREF(yyvsp[-4].ival,yyvsp[-2].opval), yyvsp[-1].opval) ); }
1836 { yyval.opval = convert(OP_ENTERSUB, OPf_STACKED,
1837 append_elem(OP_LIST,
1838 prepend_elem(OP_LIST, scalar(yyvsp[-5].opval), yyvsp[-1].opval),
1839 newUNOP(OP_METHOD, 0, yyvsp[-3].opval))); }
1843 { yyval.opval = convert(OP_ENTERSUB, OPf_STACKED,
1844 append_elem(OP_LIST,
1845 prepend_elem(OP_LIST, yyvsp[-1].opval, yyvsp[0].opval),
1846 newUNOP(OP_METHOD, 0, yyvsp[-2].opval))); }
1850 { yyval.opval = convert(OP_ENTERSUB, OPf_STACKED,
1851 append_elem(OP_LIST,
1852 prepend_elem(OP_LIST, yyvsp[-3].opval, yyvsp[-1].opval),
1853 newUNOP(OP_METHOD, 0, yyvsp[-4].opval))); }
1857 { yyval.opval = convert(yyvsp[-1].ival, 0, yyvsp[0].opval); }
1861 { yyval.opval = convert(yyvsp[-3].ival, 0, yyvsp[-1].opval); }
1865 { yyvsp[0].opval = newANONSUB(yyvsp[-1].ival, 0, yyvsp[0].opval); }
1869 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
1870 append_elem(OP_LIST,
1871 prepend_elem(OP_LIST, yyvsp[-2].opval, yyvsp[0].opval), yyvsp[-4].opval)); }
1875 { yyval.opval = newASSIGNOP(OPf_STACKED, yyvsp[-2].opval, yyvsp[-1].ival, yyvsp[0].opval); }
1879 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1883 { if (yyvsp[-1].ival != OP_REPEAT)
1884 scalar(yyvsp[-2].opval);
1885 yyval.opval = newBINOP(yyvsp[-1].ival, 0, 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 = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1913 { yyval.opval = newRANGE(yyvsp[-1].ival, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval));}
1917 { yyval.opval = newLOGOP(OP_AND, 0, yyvsp[-2].opval, yyvsp[0].opval); }
1921 { yyval.opval = newLOGOP(OP_OR, 0, yyvsp[-2].opval, yyvsp[0].opval); }
1925 { yyval.opval = newCONDOP(0, yyvsp[-4].opval, yyvsp[-2].opval, yyvsp[0].opval); }
1929 { yyval.opval = bind_match(yyvsp[-1].ival, yyvsp[-2].opval, yyvsp[0].opval); }
1933 { yyval.opval = newUNOP(OP_NEGATE, 0, scalar(yyvsp[0].opval)); }
1937 { yyval.opval = yyvsp[0].opval; }
1941 { yyval.opval = newUNOP(OP_NOT, 0, scalar(yyvsp[0].opval)); }
1945 { yyval.opval = newUNOP(OP_COMPLEMENT, 0, scalar(yyvsp[0].opval));}
1949 { yyval.opval = newUNOP(OP_REFGEN, 0, mod(yyvsp[0].opval,OP_REFGEN)); }
1953 { yyval.opval = newUNOP(OP_POSTINC, 0,
1954 mod(scalar(yyvsp[-1].opval), OP_POSTINC)); }
1958 { yyval.opval = newUNOP(OP_POSTDEC, 0,
1959 mod(scalar(yyvsp[-1].opval), OP_POSTDEC)); }
1963 { yyval.opval = newUNOP(OP_PREINC, 0,
1964 mod(scalar(yyvsp[0].opval), OP_PREINC)); }
1968 { yyval.opval = newUNOP(OP_PREDEC, 0,
1969 mod(scalar(yyvsp[0].opval), OP_PREDEC)); }
1973 { yyval.opval = localize(yyvsp[0].opval,yyvsp[-1].ival); }
1977 { yyval.opval = sawparens(yyvsp[-1].opval); }
1981 { yyval.opval = sawparens(newNULLLIST()); }
1985 { yyval.opval = newANONLIST(yyvsp[-1].opval); }
1989 { yyval.opval = newANONLIST(Nullop); }
1993 { yyval.opval = newANONHASH(yyvsp[-2].opval); }
1997 { yyval.opval = newANONHASH(Nullop); }
2001 { yyval.opval = newANONSUB(yyvsp[-2].ival, yyvsp[-1].opval, yyvsp[0].opval); }
2005 { yyval.opval = yyvsp[0].opval; }
2009 { yyval.opval = newBINOP(OP_GELEM, 0, newGVREF(0,yyvsp[-4].opval),
2010 scalar(yyvsp[-2].opval)); }
2014 { yyval.opval = yyvsp[0].opval; }
2018 { yyval.opval = newBINOP(OP_AELEM, 0, oopsAV(yyvsp[-3].opval), scalar(yyvsp[-1].opval)); }
2022 { yyval.opval = newBINOP(OP_AELEM, 0,
2023 ref(newAVREF(yyvsp[-4].opval),OP_RV2AV),
2024 scalar(yyvsp[-1].opval));}
2028 { assertref(yyvsp[-3].opval); yyval.opval = newBINOP(OP_AELEM, 0,
2029 ref(newAVREF(yyvsp[-3].opval),OP_RV2AV),
2030 scalar(yyvsp[-1].opval));}
2034 { yyval.opval = yyvsp[0].opval; }
2038 { yyval.opval = yyvsp[0].opval; }
2042 { yyval.opval = newUNOP(OP_AV2ARYLEN, 0, ref(yyvsp[0].opval, OP_AV2ARYLEN));}
2046 { yyval.opval = newBINOP(OP_HELEM, 0, oopsHV(yyvsp[-4].opval), jmaybe(yyvsp[-2].opval));
2047 expect = XOPERATOR; }
2051 { yyval.opval = newBINOP(OP_HELEM, 0,
2052 ref(newHVREF(yyvsp[-5].opval),OP_RV2HV),
2053 jmaybe(yyvsp[-2].opval));
2054 expect = XOPERATOR; }
2058 { assertref(yyvsp[-4].opval); yyval.opval = newBINOP(OP_HELEM, 0,
2059 ref(newHVREF(yyvsp[-4].opval),OP_RV2HV),
2060 jmaybe(yyvsp[-2].opval));
2061 expect = XOPERATOR; }
2065 { yyval.opval = newSLICEOP(0, yyvsp[-1].opval, yyvsp[-4].opval); }
2069 { yyval.opval = newSLICEOP(0, yyvsp[-1].opval, Nullop); }
2073 { yyval.opval = prepend_elem(OP_ASLICE,
2074 newOP(OP_PUSHMARK, 0),
2075 newLISTOP(OP_ASLICE, 0,
2076 list(yyvsp[-1].opval),
2077 ref(yyvsp[-3].opval, OP_ASLICE))); }
2081 { yyval.opval = prepend_elem(OP_HSLICE,
2082 newOP(OP_PUSHMARK, 0),
2083 newLISTOP(OP_HSLICE, 0,
2084 list(yyvsp[-2].opval),
2085 ref(oopsHV(yyvsp[-4].opval), OP_HSLICE)));
2086 expect = XOPERATOR; }
2090 { yyval.opval = yyvsp[0].opval; }
2094 { yyval.opval = newUNOP(OP_ENTERSUB, 0, scalar(yyvsp[0].opval)); }
2098 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED, scalar(yyvsp[-2].opval)); }
2102 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2103 append_elem(OP_LIST, yyvsp[-1].opval, scalar(yyvsp[-3].opval))); }
2107 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2108 append_elem(OP_LIST, yyvsp[0].opval, scalar(yyvsp[-1].opval))); }
2112 { yyval.opval = newUNOP(OP_DOFILE, 0, scalar(yyvsp[0].opval)); }
2116 { yyval.opval = newUNOP(OP_NULL, OPf_SPECIAL, scope(yyvsp[0].opval)); }
2120 { yyval.opval = newUNOP(OP_ENTERSUB,
2121 OPf_SPECIAL|OPf_STACKED,
2122 prepend_elem(OP_LIST,
2124 (OPpENTERSUB_AMPER<<8),
2125 scalar(yyvsp[-2].opval)
2126 )),Nullop)); dep();}
2130 { yyval.opval = newUNOP(OP_ENTERSUB,
2131 OPf_SPECIAL|OPf_STACKED,
2132 append_elem(OP_LIST,
2135 (OPpENTERSUB_AMPER<<8),
2136 scalar(yyvsp[-3].opval)
2141 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_SPECIAL|OPf_STACKED,
2142 prepend_elem(OP_LIST,
2143 scalar(newCVREF(0,scalar(yyvsp[-2].opval))), Nullop)); dep();}
2147 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_SPECIAL|OPf_STACKED,
2148 prepend_elem(OP_LIST,
2150 scalar(newCVREF(0,scalar(yyvsp[-3].opval))))); dep();}
2154 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2155 newCVREF(0, scalar(yyvsp[-3].opval))); }
2159 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2160 append_elem(OP_LIST, yyvsp[-1].opval,
2161 newCVREF(0, scalar(yyvsp[-4].opval)))); }
2165 { yyval.opval = newOP(yyvsp[0].ival, OPf_SPECIAL);
2166 hints |= HINT_BLOCK_SCOPE; }
2170 { yyval.opval = newLOOPEX(yyvsp[-1].ival,yyvsp[0].opval); }
2174 { yyval.opval = newUNOP(OP_NOT, 0, scalar(yyvsp[0].opval)); }
2178 { yyval.opval = newOP(yyvsp[0].ival, 0); }
2182 { yyval.opval = newUNOP(yyvsp[-1].ival, 0, yyvsp[0].opval); }
2186 { yyval.opval = newUNOP(yyvsp[-1].ival, 0, yyvsp[0].opval); }
2190 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2191 append_elem(OP_LIST, yyvsp[0].opval, scalar(yyvsp[-1].opval))); }
2195 { yyval.opval = newOP(yyvsp[0].ival, 0); }
2199 { yyval.opval = newOP(yyvsp[-2].ival, 0); }
2203 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2204 scalar(yyvsp[0].opval)); }
2208 { yyval.opval = newOP(yyvsp[-2].ival, OPf_SPECIAL); }
2212 { yyval.opval = newUNOP(yyvsp[-3].ival, 0, yyvsp[-1].opval); }
2216 { yyval.opval = pmruntime(yyvsp[-3].opval, yyvsp[-1].opval, Nullop); }
2220 { yyval.opval = pmruntime(yyvsp[-5].opval, yyvsp[-3].opval, yyvsp[-1].opval); }
2224 { yyval.opval = Nullop; }
2228 { yyval.opval = yyvsp[0].opval; }
2232 { yyval.opval = Nullop; }
2236 { yyval.opval = yyvsp[0].opval; }
2240 { yyval.opval = yyvsp[-1].opval; }
2252 { in_my = 0; yyval.opval = my(yyvsp[0].opval); }
2256 { yyval.opval = newCVREF(yyvsp[-1].ival,yyvsp[0].opval); }
2260 { yyval.opval = newSVREF(yyvsp[0].opval); }
2264 { yyval.opval = newAVREF(yyvsp[0].opval); }
2268 { yyval.opval = newHVREF(yyvsp[0].opval); }
2272 { yyval.opval = newAVREF(yyvsp[0].opval); }
2276 { yyval.opval = newGVREF(0,yyvsp[0].opval); }
2280 { yyval.opval = scalar(yyvsp[0].opval); }
2284 { yyval.opval = scalar(yyvsp[0].opval); }
2288 { yyval.opval = scope(yyvsp[0].opval); }
2292 { yyval.opval = yyvsp[0].opval; }
2294 #line 2273 "perly.c"
2300 if (yystate == 0 && yym == 0)
2304 PerlIO_printf(Perl_debug_log,
2305 "yydebug: after reduction, shifting from state 0 to state %d\n",
2313 if ((yychar = yylex()) < 0) yychar = 0;
2318 if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
2319 if (!yys) yys = "illegal-symbol";
2320 PerlIO_printf(Perl_debug_log, "yydebug: state %d, reading %d (%s)\n",
2321 YYFINAL, yychar, yys);
2325 if (yychar == 0) goto yyaccept;
2328 if ((yyn = yygindex[yym]) && (yyn += yystate) >= 0 &&
2329 yyn <= YYTABLESIZE && yycheck[yyn] == yystate)
2330 yystate = yytable[yyn];
2332 yystate = yydgoto[yym];
2335 PerlIO_printf(Perl_debug_log,
2336 "yydebug: after reduction, shifting from state %d to state %d\n",
2339 if (yyssp >= yyss + yystacksize - 1)
2342 ** reallocate and recover. Note that pointers
2343 ** have to be reset, or bad things will happen
2345 int yyps_index = (yyssp - yyss);
2346 int yypv_index = (yyvsp - yyvs);
2347 yystacksize += YYSTACKSIZE;
2348 ysave->yyvs = yyvs =
2349 (YYSTYPE*)realloc((char*)yyvs,yystacksize * sizeof(YYSTYPE));
2350 ysave->yyss = yyss =
2351 (short*)realloc((char*)yyss,yystacksize * sizeof(short));
2354 yyssp = yyss + yyps_index;
2355 yyvsp = yyvs + yypv_index;
2361 yyerror("Out of memory for yacc stack");