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, 33, 33, 34, 34, 34,
35 2, 2, 43, 23, 18, 19, 20, 21, 22, 35,
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, 1,
53 2, 2, 1, 2, 2, 2, 1, 3, 1, 3,
54 4, 4, 6, 1, 1, 0, 1, 0, 1, 2,
55 1, 1, 1, 2, 2, 2, 2, 2, 2, 1,
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, 154, 0, 0, 129, 0, 149, 0,
62 54, 54, 0, 0, 0, 0, 0, 0, 0, 0,
63 0, 0, 0, 0, 0, 0, 0, 161, 162, 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, 155, 50,
67 0, 56, 0, 61, 0, 7, 170, 173, 172, 171,
68 0, 0, 0, 0, 0, 0, 4, 4, 4, 4,
69 4, 4, 0, 0, 0, 0, 0, 144, 0, 0,
70 0, 0, 76, 0, 168, 0, 135, 0, 0, 0,
71 0, 0, 164, 0, 0, 0, 0, 0, 0, 0,
72 0, 0, 0, 109, 0, 165, 166, 167, 169, 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, 148, 150, 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, 81, 0, 0, 0, 0, 0, 0,
83 0, 131, 0, 0, 60, 59, 52, 0, 3, 0,
84 152, 0, 0, 112, 0, 41, 0, 42, 0, 0,
85 0, 0, 163, 0, 0, 35, 40, 0, 0, 0,
86 151, 160, 77, 0, 136, 0, 138, 0, 110, 0,
87 0, 0, 0, 0, 0, 0, 118, 0, 116, 0,
88 127, 0, 132, 0, 75, 0, 79, 0, 0, 0,
89 0, 0, 0, 0, 0, 72, 137, 139, 126, 0,
90 124, 0, 0, 117, 0, 122, 128, 114, 64, 153,
91 6, 0, 0, 0, 0, 0, 0, 0, 0, 125,
92 123, 73, 7, 27, 28, 0, 0, 23, 24, 0,
93 31, 0, 0, 0, 21, 0, 0, 0, 30, 5,
94 0, 29, 0, 0, 32, 0, 22,
96 dEXT short yydgoto[] = { 1,
97 9, 66, 10, 18, 95, 17, 86, 333, 89, 322,
98 3, 11, 12, 68, 338, 260, 70, 71, 72, 73,
99 74, 75, 76, 266, 78, 267, 256, 258, 261, 269,
100 257, 259, 113, 197, 91, 79, 235, 81, 83, 178,
101 247, 142, 264, 13, 2, 14, 15, 16, 85, 253,
103 dEXT short yysindex[] = { 0,
104 0, 0, -126, 0, 0, 0, -58, 0, 0, 0,
105 0, 0, 827, 0, 0, 0, -242, -235, -21, 0,
106 0, 0, 0, 0, -33, -33, 0, 11, 0, 1816,
107 0, 0, 13, 15, 30, 45, -29, 1816, 67, 68,
108 70, 1002, 939, -33, 1236, 1292, -227, 0, 0, -33,
109 1816, 1816, 1816, 1816, 1816, 1816, 1173, 0, 1816, 1816,
110 1348, -33, -33, -33, -33, 1816, -220, 0, -169, 3558,
111 -78, -59, 0, 0, -62, 73, 42, 65, 0, 0,
112 -5, 0, -149, 0, -134, 0, 0, 0, 0, 0,
113 1816, 97, 1816, 1847, -5, -149, 0, 0, 0, 0,
114 0, 0, 99, 3558, 105, 1407, 939, 0, 1847, 0,
115 -78, 65, 0, 1816, 0, 107, 0, 1847, -23, 36,
116 -51, 1816, 0, 65, -82, -82, -82, -54, -54, 57,
117 -27, -82, -82, 0, -87, 0, 0, 0, 0, 1847,
118 -5, 0, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816,
119 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816,
120 1816, 1816, 1816, 0, 0, -32, 1816, 1816, 1816, 1816,
121 1816, 1816, 1582, 0, 1816, 0, 0, -36, -108, 665,
122 0, 1816, 209, 0, -5, 1816, 1816, 1816, 1816, 114,
123 1641, 0, 0, 0, -16, 6, 111, 1816, 65, 1697,
124 1753, 0, 38, 0, 1816, 74, 0, 0, -251, -251,
125 0, -251, -251, -131, 0, 18, 3516, 1847, 1089, 382,
126 92, 3558, 3594, 3689, 369, 1060, 482, 285, -82, -82,
127 1816, 0, 1816, 0, 128, 33, 23, 58, 25, 69,
128 27, 0, -14, 3558, 0, 0, 0, 1816, 0, 131,
129 0, 1816, 1816, 0, -251, 0, 134, 0, 136, -251,
130 139, 141, 0, 144, -169, 0, 0, 156, 135, 1816,
131 0, 0, 0, -12, 0, -10, 0, 1, 0, 71,
132 1816, 75, 1816, 29, 86, 1816, 0, 76, 0, 78,
133 0, 81, 0, 148, 0, 339, 0, 85, 85, 85,
134 85, 1816, 85, 1816, 168, 0, 0, 0, 0, 88,
135 0, 3653, 89, 0, 172, 0, 0, 0, 0, 0,
136 0, -220, -220, -178, -178, 175, -220, 160, 85, 0,
137 0, 0, 0, 0, 0, 85, 203, 0, 0, 85,
138 0, 1641, -220, 688, 0, 1816, -220, 180, 0, 0,
139 196, 0, 85, 85, 0, -178, 0,
141 dEXT short yyrindex[] = { 0,
142 0, 0, 269, 0, 0, 0, 0, 0, 0, 0,
143 0, 0, 0, 0, 0, 0, 122, 0, 0, 0,
144 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
145 0, 0, 0, 0, 0, 0, 0, 2076, 1906, 0,
146 0, 2716, 2784, 0, 0, 0, 0, 0, 0, 0,
147 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
148 0, 0, 0, 0, 0, 0, 79, 0, -7, 181,
149 2827, 2871, 0, 0, 2142, 1965, 0, 21, 0, 0,
150 0, 0, -31, 0, 0, 0, 0, 0, 0, 0,
151 2201, 0, 0, 3299, 0, 129, 0, 0, 0, 0,
152 0, 0, 0, 197, 0, 0, 213, 0, 3343, 444,
153 545, 2312, 0, 0, 0, 2028, 0, 3386, 2827, 0,
154 0, 2201, 0, 2437, 2914, 2952, 2990, 606, 723, 2480,
155 0, 3063, 3107, 0, 0, 0, 0, 0, 0, 3424,
156 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
157 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
158 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
159 0, 0, 0, 0, 2548, 0, 0, 0, 0, 883,
160 0, 213, 0, 0, 0, 234, 0, 0, 0, 0,
161 218, 0, 0, 0, 0, 239, 0, 0, 2591, 0,
162 0, 0, 0, 0, 0, 2635, 0, 0, -2, 8,
163 0, 22, 24, 525, 0, 0, 3579, 1448, 1504, 3226,
164 -39, 338, 0, 2490, 3535, 3498, 3462, 3262, 3150, 3188,
165 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
166 0, 0, 0, 1870, 0, 0, 0, 230, 0, 0,
167 0, 0, 2201, 0, 37, 0, 0, 0, 0, 251,
168 0, 0, 0, 0, 61, 0, 0, 0, 0, 0,
169 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
170 0, 0, 0, 0, 0, 213, 0, 0, 0, 0,
171 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
172 0, 0, 0, 238, 0, 0, 0, 0, 0, 0,
173 0, 718, 0, 0, 0, 0, 0, 0, 0, 0,
174 0, 79, 79, 153, 153, 0, 79, 0, 0, 0,
175 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
176 0, 260, 79, 883, 0, 0, 79, 0, 0, 0,
177 0, 0, 0, 0, 0, 153, 0,
179 dEXT short yygindex[] = { 0,
180 0, 0, 0, 300, 278, 0, -26, 0, 892, 1004,
181 -76, 0, 0, 0, -313, -13, 3871, 3724, 0, 0,
182 0, 0, 0, 304, -25, 0, 0, 169, -175, -8,
183 53, 152, 384, -161, 901, 0, 0, 0, 0, 281,
184 0, -287, 0, 0, 0, 0, 0, 0, 0, 0,
186 #define YYTABLESIZE 4154
187 dEXT short yytable[] = { 69,
188 20, 85, 62, 62, 85, 207, 62, 203, 167, 180,
189 102, 339, 169, 206, 80, 268, 201, 112, 85, 85,
190 250, 82, 245, 85, 271, 124, 293, 57, 306, 122,
191 307, 171, 121, 15, 334, 335, 167, 84, 18, 341,
192 149, 308, 357, 131, 168, 147, 148, 135, 38, 272,
193 93, 15, 97, 85, 98, 349, 18, 141, 233, 352,
194 172, 67, 16, 170, 17, 112, 38, 169, 149, 99,
195 186, 187, 188, 189, 190, 191, 282, 37, 25, 67,
196 16, 288, 17, 290, 100, 292, 23, 313, 199, 23,
197 231, 57, 195, 196, 305, 37, 112, 336, 337, 168,
198 174, 39, 143, 144, 145, 146, 105, 106, 175, 107,
199 177, 25, 173, 67, 25, 25, 25, 23, 25, 15,
200 25, 25, 179, 25, 315, 287, 326, 147, 148, 209,
201 210, 212, 213, 214, 215, 216, 182, 25, 192, 4,
202 5, 6, 25, 7, 8, 193, 200, 205, 248, 62,
203 289, 273, 20, 236, 237, 238, 239, 240, 241, 243,
204 202, 291, 279, 309, 281, 270, 148, 286, 196, 25,
205 351, 295, 255, 210, 298, 210, 299, 265, 314, 300,
206 330, 301, 167, 302, 274, 20, 276, 278, 20, 20,
207 20, 280, 20, 304, 20, 20, 303, 20, 19, 311,
208 316, 25, 317, 25, 25, 318, 319, 321, 329, 147,
209 148, 20, 332, 331, 149, 340, 20, 284, 342, 285,
210 353, 70, 112, 87, 70, 232, 163, 112, 88, 164,
211 165, 166, 85, 85, 85, 85, 354, 141, 70, 70,
212 141, 85, 346, 20, 51, 147, 148, 85, 85, 251,
213 85, 57, 252, 158, 141, 141, 344, 85, 85, 166,
214 85, 85, 85, 85, 85, 85, 101, 310, 2, 147,
215 148, 156, 196, 70, 36, 20, 34, 20, 20, 159,
216 147, 148, 147, 148, 147, 148, 147, 148, 156, 141,
217 255, 39, 67, 67, 67, 67, 36, 147, 148, 167,
218 34, 43, 147, 148, 43, 43, 43, 21, 43, 96,
219 43, 43, 211, 43, 147, 148, 77, 67, 67, 147,
220 148, 147, 148, 147, 148, 147, 148, 43, 69, 147,
221 148, 149, 43, 348, 25, 25, 25, 25, 25, 25,
222 262, 25, 25, 25, 25, 25, 25, 25, 25, 25,
223 25, 25, 25, 25, 147, 148, 328, 25, 25, 43,
224 25, 25, 25, 25, 25, 147, 148, 147, 148, 25,
225 25, 25, 25, 25, 25, 167, 185, 25, 82, 320,
226 153, 82, 147, 148, 147, 148, 25, 0, 25, 25,
227 0, 43, 0, 0, 43, 82, 82, 162, 0, 0,
228 163, 156, 0, 164, 165, 166, 0, 149, 20, 20,
229 20, 20, 20, 20, 0, 20, 20, 20, 20, 20,
230 20, 20, 20, 20, 20, 20, 20, 20, 0, 167,
231 82, 20, 20, 0, 20, 20, 20, 20, 20, 0,
232 0, 0, 0, 20, 20, 20, 20, 20, 20, 0,
233 0, 20, 70, 70, 70, 70, 0, 0, 0, 167,
234 20, 149, 20, 20, 0, 0, 0, 0, 141, 141,
235 141, 141, 167, 0, 181, 0, 170, 70, 70, 170,
236 170, 170, 0, 170, 154, 170, 170, 154, 170, 150,
237 0, 149, 0, 141, 141, 151, 152, 153, 154, 0,
238 0, 154, 154, 0, 149, 204, 154, 170, 155, 157,
239 158, 159, 160, 161, 162, 0, 0, 163, 0, 0,
240 164, 165, 166, 0, 43, 43, 43, 43, 43, 43,
241 0, 43, 43, 43, 154, 0, 154, 43, 0, 0,
242 43, 43, 43, 43, 0, 0, 0, 43, 43, 0,
243 43, 43, 43, 43, 43, 0, 0, 0, 0, 43,
244 43, 43, 43, 43, 43, 66, 154, 43, 66, 170,
245 0, 0, 167, 153, 154, 0, 43, 171, 43, 43,
246 171, 171, 171, 66, 171, 113, 171, 171, 113, 171,
247 162, 0, 0, 163, 0, 0, 164, 165, 166, 0,
248 0, 0, 113, 113, 149, 0, 0, 113, 171, 82,
249 82, 82, 82, 0, 0, 0, 0, 66, 0, 150,
250 0, 0, 0, 0, 0, 151, 152, 153, 154, 0,
251 0, 294, 0, 0, 82, 82, 297, 113, 155, 157,
252 158, 159, 160, 161, 162, 0, 103, 163, 0, 103,
253 164, 165, 166, 0, 0, 151, 152, 153, 154, 0,
254 0, 0, 0, 103, 103, 0, 0, 0, 103, 0,
255 171, 159, 160, 161, 162, 0, 0, 163, 0, 0,
256 164, 165, 166, 0, 0, 0, 0, 162, 0, 0,
257 163, 0, 0, 164, 165, 166, 0, 0, 103, 0,
258 170, 170, 170, 170, 170, 0, 170, 170, 170, 0,
259 0, 0, 170, 0, 0, 154, 154, 154, 154, 0,
260 0, 0, 0, 170, 154, 170, 170, 170, 170, 170,
261 154, 154, 154, 154, 170, 170, 170, 170, 170, 170,
262 154, 154, 170, 154, 154, 154, 154, 154, 154, 154,
263 0, 170, 154, 170, 170, 154, 154, 154, 94, 0,
264 0, 94, 0, 104, 0, 0, 104, 0, 151, 152,
265 153, 154, 0, 0, 0, 94, 94, 0, 0, 0,
266 104, 104, 0, 0, 0, 104, 161, 162, 0, 249,
267 163, 0, 0, 164, 165, 166, 66, 66, 66, 66,
268 0, 171, 171, 171, 171, 171, 0, 171, 171, 171,
269 94, 0, 350, 171, 0, 104, 113, 113, 113, 113,
270 0, 66, 0, 0, 171, 113, 171, 171, 171, 171,
271 171, 113, 113, 113, 113, 171, 171, 171, 171, 171,
272 171, 113, 113, 171, 113, 113, 113, 113, 113, 113,
273 113, 0, 171, 113, 171, 171, 113, 113, 113, 52,
274 0, 0, 62, 64, 50, 0, 57, 0, 65, 60,
275 0, 59, 0, 0, 0, 0, 0, 103, 103, 103,
276 103, 0, 0, 0, 0, 58, 103, 0, 0, 0,
277 63, 0, 103, 103, 103, 103, 0, 0, 0, 0,
278 0, 0, 103, 103, 67, 103, 103, 103, 103, 103,
279 103, 103, 0, 0, 103, 43, 0, 61, 43, 43,
280 43, 0, 43, 0, 43, 43, 92, 43, 0, 0,
281 4, 5, 6, 108, 7, 8, 117, 0, 0, 0,
282 0, 43, 0, 114, 115, 0, 43, 0, 0, 23,
283 123, 0, 53, 4, 5, 6, 0, 7, 8, 0,
284 0, 0, 136, 137, 138, 139, 0, 0, 0, 0,
285 0, 52, 176, 43, 62, 64, 50, 0, 57, 0,
286 65, 60, 0, 59, 0, 0, 184, 0, 0, 94,
287 94, 94, 94, 0, 104, 104, 104, 104, 0, 0,
288 0, 0, 63, 104, 0, 43, 0, 198, 43, 104,
289 104, 104, 104, 0, 94, 94, 0, 94, 0, 104,
290 104, 0, 104, 104, 104, 104, 104, 104, 104, 61,
291 0, 104, 208, 0, 52, 0, 0, 62, 64, 50,
292 0, 57, 0, 65, 60, 0, 59, 0, 0, 0,
293 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
294 0, 23, 0, 0, 53, 63, 0, 0, 0, 246,
295 0, 0, 0, 0, 0, 0, 254, 0, 0, 0,
296 0, 0, 22, 24, 25, 26, 27, 28, 0, 29,
297 30, 31, 61, 0, 0, 32, 0, 0, 33, 34,
298 35, 36, 0, 0, 0, 37, 38, 0, 39, 40,
299 41, 42, 43, 0, 0, 0, 0, 44, 45, 46,
300 47, 48, 49, 0, 23, 51, 0, 53, 0, 0,
301 0, 0, 0, 0, 54, 0, 55, 56, 43, 43,
302 43, 43, 43, 43, 0, 43, 43, 43, 0, 0,
303 167, 43, 0, 0, 43, 43, 43, 43, 0, 0,
304 0, 43, 43, 0, 43, 43, 43, 43, 43, 0,
305 0, 0, 0, 43, 43, 43, 43, 43, 43, 167,
306 0, 43, 149, 0, 0, 0, 0, 0, 0, 0,
307 43, 0, 43, 43, 0, 110, 25, 26, 27, 28,
308 88, 29, 30, 31, 0, 52, 0, 32, 62, 64,
309 50, 149, 57, 130, 65, 60, 0, 59, 38, 0,
310 39, 40, 41, 42, 43, 0, 0, 0, 0, 44,
311 45, 46, 47, 48, 49, 0, 63, 51, 0, 0,
312 0, 0, 0, 0, 0, 0, 54, 0, 55, 56,
313 0, 0, 0, 0, 0, 0, 0, 0, 24, 25,
314 26, 27, 28, 61, 29, 30, 31, 0, 52, 0,
315 32, 62, 64, 50, 0, 57, 0, 65, 60, 0,
316 59, 38, 0, 39, 40, 41, 42, 43, 0, 0,
317 0, 0, 44, 45, 46, 47, 48, 49, 53, 63,
318 51, 0, 323, 324, 325, 0, 327, 0, 0, 54,
319 0, 55, 56, 0, 0, 0, 0, 0, 0, 0,
320 0, 0, 0, 0, 52, 0, 61, 62, 64, 50,
321 0, 57, 343, 65, 60, 0, 59, 0, 0, 345,
322 0, 0, 0, 347, 0, 0, 151, 152, 153, 154,
323 120, 0, 0, 0, 0, 63, 355, 356, 23, 0,
324 0, 53, 0, 160, 161, 162, 0, 0, 163, 0,
325 0, 164, 165, 166, 0, 151, 0, 153, 154, 0,
326 52, 0, 61, 62, 64, 50, 0, 57, 0, 65,
327 60, 0, 59, 161, 162, 0, 0, 163, 0, 0,
328 164, 165, 166, 0, 0, 0, 0, 0, 0, 0,
329 0, 63, 0, 0, 0, 0, 0, 53, 0, 0,
330 0, 0, 0, 0, 0, 0, 0, 0, 0, 24,
331 25, 26, 27, 28, 0, 29, 30, 31, 61, 52,
332 134, 32, 62, 64, 50, 0, 57, 194, 65, 60,
333 0, 59, 38, 0, 39, 40, 41, 42, 43, 0,
334 0, 0, 0, 44, 45, 46, 47, 48, 49, 0,
335 63, 51, 0, 53, 0, 0, 0, 0, 0, 0,
336 54, 0, 55, 56, 0, 0, 0, 0, 87, 0,
337 0, 87, 116, 25, 26, 27, 28, 61, 29, 30,
338 31, 0, 0, 0, 32, 87, 87, 0, 0, 0,
339 87, 0, 0, 0, 0, 38, 0, 39, 40, 41,
340 42, 43, 0, 0, 0, 0, 44, 45, 46, 47,
341 48, 49, 53, 0, 51, 0, 0, 0, 0, 0,
342 87, 0, 0, 54, 88, 55, 56, 88, 24, 25,
343 26, 27, 28, 0, 29, 30, 31, 0, 0, 0,
344 32, 88, 88, 0, 0, 0, 88, 0, 0, 0,
345 0, 38, 0, 39, 40, 41, 42, 43, 0, 0,
346 0, 0, 44, 45, 46, 47, 48, 49, 0, 0,
347 51, 0, 0, 0, 0, 0, 88, 0, 0, 54,
348 0, 55, 56, 0, 24, 25, 26, 27, 28, 0,
349 29, 30, 31, 0, 52, 0, 32, 62, 64, 50,
350 0, 57, 242, 65, 60, 0, 59, 38, 0, 39,
351 40, 41, 42, 43, 0, 0, 0, 0, 44, 45,
352 46, 47, 48, 49, 0, 63, 51, 0, 0, 0,
353 0, 0, 0, 0, 0, 54, 0, 55, 56, 0,
354 0, 0, 0, 24, 25, 26, 27, 28, 0, 29,
355 30, 31, 61, 52, 0, 32, 62, 64, 50, 0,
356 57, 0, 65, 60, 0, 59, 38, 0, 39, 40,
357 41, 42, 43, 0, 0, 0, 0, 44, 45, 46,
358 47, 48, 49, 0, 63, 51, 0, 53, 0, 0,
359 0, 0, 0, 0, 54, 0, 55, 56, 0, 87,
360 87, 87, 87, 0, 0, 0, 0, 0, 87, 52,
361 0, 61, 62, 64, 50, 87, 57, 275, 65, 60,
362 0, 59, 0, 0, 87, 87, 0, 87, 87, 87,
363 87, 87, 0, 0, 0, 0, 0, 0, 0, 0,
364 63, 0, 0, 0, 0, 0, 53, 0, 0, 0,
365 0, 0, 0, 0, 0, 88, 88, 88, 88, 0,
366 0, 0, 0, 0, 88, 52, 0, 61, 62, 64,
367 50, 0, 57, 277, 65, 60, 0, 59, 0, 0,
368 88, 88, 0, 88, 88, 88, 88, 88, 0, 0,
369 0, 0, 0, 0, 0, 0, 63, 0, 0, 0,
370 0, 0, 53, 0, 0, 0, 0, 0, 0, 0,
371 0, 0, 0, 0, 0, 0, 0, 0, 24, 25,
372 26, 27, 28, 61, 29, 30, 31, 0, 52, 0,
373 32, 62, 64, 50, 0, 57, 0, 65, 60, 0,
374 59, 38, 0, 39, 40, 41, 42, 43, 0, 0,
375 0, 0, 44, 45, 46, 47, 48, 49, 53, 63,
376 51, 0, 0, 0, 0, 0, 0, 0, 0, 54,
377 0, 55, 56, 0, 0, 0, 22, 24, 25, 26,
378 27, 28, 0, 29, 30, 31, 61, 0, 0, 32,
379 69, 0, 0, 69, 0, 0, 0, 0, 0, 0,
380 38, 0, 39, 40, 41, 42, 43, 69, 69, 0,
381 0, 44, 45, 46, 47, 48, 49, 167, 0, 51,
382 0, 53, 0, 0, 0, 0, 147, 0, 54, 147,
383 55, 56, 0, 24, 25, 26, 27, 28, 0, 29,
384 30, 31, 69, 147, 147, 32, 0, 0, 147, 149,
385 0, 0, 0, 0, 0, 0, 38, 0, 39, 40,
386 41, 42, 43, 0, 0, 0, 0, 44, 45, 46,
387 47, 48, 49, 0, 0, 51, 147, 0, 147, 0,
388 0, 0, 0, 0, 54, 130, 55, 56, 130, 24,
389 25, 26, 27, 28, 0, 29, 30, 31, 0, 0,
390 0, 32, 130, 130, 0, 0, 0, 130, 147, 0,
391 0, 0, 38, 0, 39, 40, 41, 42, 43, 0,
392 0, 0, 0, 44, 45, 46, 47, 48, 49, 0,
393 0, 51, 0, 0, 0, 130, 0, 130, 0, 0,
394 54, 0, 55, 56, 0, 0, 0, 0, 154, 0,
395 0, 154, 24, 25, 26, 27, 28, 0, 29, 30,
396 31, 0, 0, 0, 32, 154, 154, 130, 0, 0,
397 154, 0, 0, 0, 0, 38, 0, 39, 40, 41,
398 42, 43, 0, 0, 0, 0, 44, 45, 46, 47,
399 48, 49, 0, 0, 51, 0, 140, 0, 154, 140,
400 154, 0, 0, 54, 0, 55, 56, 0, 0, 0,
401 0, 0, 0, 140, 140, 153, 154, 0, 140, 0,
402 0, 69, 69, 69, 69, 0, 0, 0, 0, 0,
403 154, 161, 162, 0, 0, 163, 0, 0, 164, 165,
404 166, 0, 0, 0, 0, 0, 69, 69, 140, 0,
405 0, 0, 0, 0, 0, 0, 0, 147, 147, 147,
406 147, 0, 115, 0, 0, 115, 147, 0, 0, 0,
407 0, 0, 147, 147, 147, 147, 0, 0, 140, 115,
408 115, 0, 147, 147, 115, 147, 147, 147, 147, 147,
409 147, 147, 0, 0, 147, 0, 0, 147, 147, 147,
410 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
411 0, 0, 115, 0, 115, 0, 130, 130, 130, 130,
412 0, 156, 0, 0, 156, 130, 0, 0, 0, 0,
413 0, 130, 130, 130, 130, 0, 0, 0, 156, 156,
414 0, 130, 130, 156, 130, 130, 130, 130, 130, 130,
415 130, 0, 0, 130, 0, 0, 130, 130, 130, 0,
416 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
417 0, 0, 0, 156, 0, 0, 0, 0, 0, 154,
418 154, 154, 154, 0, 0, 0, 0, 0, 154, 0,
419 0, 0, 0, 0, 154, 154, 154, 154, 0, 0,
420 0, 0, 0, 156, 154, 154, 0, 154, 154, 154,
421 154, 154, 154, 154, 0, 0, 154, 0, 0, 154,
422 154, 154, 0, 0, 0, 0, 0, 140, 140, 140,
423 140, 0, 157, 0, 0, 0, 140, 0, 0, 0,
424 0, 0, 140, 140, 140, 140, 0, 0, 0, 157,
425 157, 0, 140, 140, 157, 140, 140, 140, 140, 140,
426 140, 140, 0, 0, 140, 0, 0, 140, 140, 140,
427 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
428 0, 0, 157, 0, 157, 0, 0, 0, 0, 0,
429 0, 0, 0, 115, 115, 115, 115, 0, 0, 0,
430 0, 0, 115, 0, 0, 0, 0, 0, 115, 115,
431 115, 115, 0, 0, 157, 0, 0, 0, 115, 115,
432 0, 115, 115, 115, 115, 115, 115, 115, 0, 0,
433 115, 0, 0, 115, 115, 115, 0, 0, 0, 0,
434 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
435 0, 0, 156, 156, 156, 156, 0, 142, 0, 0,
436 0, 156, 0, 0, 0, 0, 0, 156, 156, 156,
437 156, 0, 0, 0, 142, 142, 0, 156, 156, 142,
438 156, 156, 156, 156, 156, 156, 156, 0, 0, 156,
439 0, 0, 156, 156, 156, 0, 0, 0, 0, 0,
440 107, 0, 0, 107, 0, 0, 0, 142, 0, 142,
441 93, 0, 0, 93, 0, 0, 0, 107, 107, 0,
442 0, 0, 107, 0, 0, 0, 0, 93, 93, 0,
443 0, 0, 93, 0, 0, 0, 0, 0, 0, 142,
444 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
445 0, 0, 107, 0, 0, 0, 0, 0, 0, 0,
446 0, 0, 93, 157, 157, 157, 157, 0, 68, 0,
447 0, 68, 157, 0, 0, 0, 0, 0, 157, 157,
448 157, 157, 107, 0, 0, 68, 68, 0, 157, 157,
449 68, 157, 157, 157, 157, 157, 157, 157, 0, 0,
450 157, 0, 0, 157, 157, 157, 0, 0, 0, 0,
451 0, 71, 0, 0, 0, 0, 0, 0, 0, 0,
452 68, 0, 0, 0, 0, 0, 0, 0, 71, 71,
453 0, 0, 0, 71, 0, 0, 0, 0, 0, 0,
454 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
455 68, 0, 0, 0, 0, 106, 0, 0, 106, 0,
456 0, 71, 0, 71, 0, 0, 0, 0, 0, 0,
457 0, 0, 106, 106, 0, 0, 0, 106, 0, 0,
458 0, 0, 0, 0, 0, 0, 0, 0, 142, 142,
459 142, 142, 0, 71, 0, 0, 0, 142, 0, 0,
460 0, 0, 0, 142, 142, 142, 142, 106, 0, 0,
461 0, 0, 0, 142, 142, 0, 142, 142, 142, 142,
462 142, 142, 142, 0, 0, 142, 0, 0, 142, 142,
463 142, 107, 107, 107, 107, 0, 143, 106, 0, 143,
464 107, 93, 93, 93, 93, 0, 107, 107, 107, 107,
465 93, 0, 0, 143, 143, 0, 107, 107, 143, 107,
466 107, 107, 107, 107, 107, 107, 93, 93, 107, 93,
467 93, 107, 107, 107, 0, 0, 0, 0, 0, 0,
468 0, 0, 0, 0, 0, 0, 0, 0, 143, 0,
469 0, 0, 0, 0, 0, 0, 0, 0, 0, 68,
470 68, 68, 68, 0, 156, 0, 0, 156, 68, 0,
471 0, 0, 0, 0, 68, 68, 68, 68, 0, 0,
472 0, 156, 156, 0, 68, 68, 156, 68, 68, 68,
473 68, 68, 68, 68, 0, 0, 68, 0, 0, 68,
474 68, 68, 71, 71, 71, 71, 0, 113, 0, 0,
475 113, 71, 0, 0, 0, 0, 156, 71, 71, 71,
476 71, 0, 0, 0, 113, 113, 0, 71, 71, 113,
477 71, 71, 71, 71, 71, 71, 71, 0, 0, 71,
478 0, 0, 71, 71, 71, 0, 106, 106, 106, 106,
479 0, 120, 0, 0, 120, 106, 0, 0, 0, 113,
480 0, 106, 106, 106, 106, 0, 0, 0, 120, 120,
481 0, 106, 106, 120, 106, 106, 106, 106, 106, 106,
482 106, 0, 0, 106, 0, 0, 106, 106, 106, 0,
483 0, 0, 0, 0, 98, 0, 0, 98, 0, 0,
484 0, 0, 0, 120, 0, 0, 0, 0, 0, 0,
485 0, 98, 98, 0, 0, 0, 98, 0, 0, 0,
486 0, 0, 0, 0, 0, 0, 0, 143, 143, 143,
487 143, 0, 99, 0, 0, 99, 143, 0, 0, 0,
488 0, 0, 143, 143, 143, 143, 98, 0, 0, 99,
489 99, 0, 143, 143, 99, 143, 143, 143, 143, 143,
490 143, 143, 0, 0, 143, 0, 0, 143, 143, 143,
491 100, 0, 0, 100, 0, 0, 0, 0, 0, 0,
492 0, 0, 0, 0, 99, 0, 0, 100, 100, 0,
493 0, 0, 100, 0, 0, 156, 156, 156, 156, 0,
494 0, 0, 0, 0, 156, 0, 0, 0, 0, 0,
495 156, 156, 156, 156, 0, 0, 0, 0, 0, 0,
496 156, 156, 100, 156, 156, 156, 156, 156, 156, 156,
497 0, 0, 156, 0, 0, 156, 156, 156, 113, 113,
498 113, 113, 0, 96, 0, 0, 96, 113, 0, 0,
499 0, 0, 0, 113, 113, 113, 113, 0, 0, 0,
500 96, 96, 0, 113, 113, 96, 113, 113, 113, 113,
501 113, 113, 113, 0, 0, 113, 0, 0, 113, 113,
502 113, 0, 120, 120, 120, 120, 0, 97, 0, 0,
503 97, 120, 0, 0, 0, 96, 0, 120, 120, 120,
504 120, 0, 0, 0, 97, 97, 0, 120, 120, 97,
505 120, 120, 120, 120, 120, 120, 120, 0, 0, 120,
506 0, 0, 120, 120, 120, 98, 98, 98, 98, 0,
507 95, 0, 0, 95, 98, 0, 0, 0, 0, 97,
508 98, 98, 98, 98, 0, 0, 0, 95, 95, 0,
509 98, 98, 95, 98, 98, 98, 98, 98, 98, 98,
510 0, 0, 0, 99, 99, 99, 99, 0, 83, 0,
511 0, 83, 99, 0, 0, 0, 0, 0, 99, 99,
512 99, 99, 95, 0, 0, 83, 83, 0, 99, 99,
513 83, 99, 99, 99, 99, 99, 99, 99, 0, 0,
514 0, 100, 100, 100, 100, 0, 84, 0, 0, 84,
515 100, 0, 0, 0, 0, 0, 100, 100, 100, 100,
516 83, 0, 0, 84, 84, 0, 100, 100, 84, 100,
517 100, 100, 100, 100, 100, 100, 0, 0, 0, 0,
518 0, 0, 86, 0, 0, 86, 0, 0, 0, 0,
519 0, 0, 0, 0, 0, 0, 0, 0, 84, 86,
520 86, 0, 0, 0, 86, 0, 0, 0, 0, 0,
521 0, 0, 0, 0, 96, 96, 96, 96, 0, 146,
522 0, 0, 146, 96, 0, 0, 0, 0, 0, 96,
523 96, 96, 96, 0, 86, 0, 146, 146, 0, 96,
524 96, 146, 96, 96, 96, 96, 96, 96, 96, 0,
525 0, 0, 0, 0, 0, 0, 0, 0, 97, 97,
526 97, 97, 0, 145, 0, 0, 145, 97, 0, 0,
527 0, 146, 0, 97, 97, 97, 97, 0, 0, 0,
528 145, 145, 0, 97, 97, 145, 97, 97, 97, 97,
529 97, 97, 97, 0, 0, 0, 0, 0, 0, 0,
530 0, 95, 95, 95, 95, 0, 134, 0, 0, 134,
531 95, 0, 0, 0, 0, 145, 95, 95, 95, 95,
532 0, 0, 0, 134, 134, 0, 95, 95, 134, 95,
533 95, 95, 95, 95, 95, 95, 0, 0, 0, 83,
534 83, 83, 83, 0, 105, 0, 0, 105, 83, 0,
535 0, 0, 0, 0, 83, 83, 83, 83, 134, 0,
536 0, 105, 105, 0, 83, 83, 105, 83, 83, 83,
537 83, 83, 83, 83, 0, 0, 0, 84, 84, 84,
538 84, 0, 89, 0, 0, 89, 84, 0, 0, 0,
539 0, 0, 84, 84, 84, 84, 105, 0, 0, 89,
540 89, 0, 84, 84, 89, 84, 84, 84, 84, 84,
541 84, 0, 0, 86, 86, 86, 86, 0, 90, 0,
542 0, 90, 86, 0, 0, 0, 0, 0, 86, 86,
543 0, 0, 0, 0, 89, 90, 90, 0, 86, 86,
544 90, 86, 86, 86, 86, 86, 86, 0, 0, 0,
545 146, 146, 146, 146, 0, 92, 0, 0, 92, 146,
546 0, 0, 0, 0, 0, 146, 146, 0, 0, 0,
547 90, 0, 92, 92, 0, 146, 146, 92, 146, 146,
548 146, 146, 146, 0, 0, 0, 167, 0, 0, 0,
549 0, 0, 0, 0, 145, 145, 145, 145, 0, 91,
550 156, 0, 91, 145, 0, 0, 0, 92, 0, 145,
551 145, 0, 0, 0, 0, 0, 91, 91, 149, 145,
552 145, 91, 145, 145, 145, 145, 145, 0, 167, 0,
553 0, 283, 0, 0, 0, 0, 156, 134, 134, 134,
554 134, 0, 0, 0, 0, 0, 134, 0, 0, 0,
555 0, 91, 134, 134, 0, 0, 0, 0, 0, 0,
556 149, 0, 134, 134, 167, 134, 134, 134, 134, 134,
557 0, 0, 0, 0, 0, 105, 105, 105, 105, 0,
558 0, 0, 0, 0, 105, 0, 0, 0, 0, 0,
559 105, 105, 0, 0, 0, 156, 149, 0, 0, 0,
560 105, 105, 0, 105, 105, 105, 105, 105, 0, 0,
561 0, 0, 0, 89, 89, 89, 89, 0, 0, 0,
562 0, 0, 89, 167, 0, 0, 0, 0, 90, 90,
563 0, 0, 0, 0, 0, 0, 0, 0, 89, 89,
564 103, 89, 89, 89, 89, 89, 111, 90, 119, 90,
565 90, 90, 90, 90, 0, 149, 0, 0, 90, 167,
566 0, 0, 0, 0, 0, 90, 90, 90, 90, 0,
567 0, 0, 0, 0, 90, 90, 0, 90, 90, 90,
568 90, 0, 151, 152, 153, 154, 92, 92, 92, 92,
569 0, 149, 0, 0, 0, 92, 157, 158, 159, 160,
570 161, 162, 0, 0, 163, 0, 0, 164, 165, 166,
571 111, 92, 92, 0, 92, 92, 92, 0, 150, 0,
572 0, 0, 0, 0, 151, 152, 153, 154, 0, 0,
573 91, 91, 91, 91, 0, 0, 0, 155, 157, 158,
574 159, 160, 161, 162, 0, 0, 163, 0, 0, 164,
575 165, 166, 0, 0, 150, 91, 91, 0, 91, 0,
576 151, 152, 153, 154, 0, 0, 0, 0, 0, 234,
577 0, 0, 0, 155, 157, 158, 159, 160, 161, 162,
578 94, 0, 163, 0, 0, 164, 165, 166, 104, 0,
579 0, 0, 109, 263, 0, 118, 0, 0, 0, 0,
580 0, 0, 125, 126, 127, 128, 129, 0, 0, 132,
581 133, 0, 0, 150, 0, 0, 140, 0, 0, 151,
582 152, 153, 154, 0, 0, 0, 0, 0, 0, 0,
583 0, 0, 0, 157, 158, 159, 160, 161, 162, 0,
584 0, 163, 0, 183, 164, 165, 166, 0, 0, 0,
585 0, 0, 0, 0, 0, 151, 152, 153, 154, 0,
586 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
587 158, 159, 160, 161, 162, 0, 0, 163, 0, 0,
588 164, 165, 166, 0, 0, 0, 0, 0, 0, 0,
589 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
590 217, 218, 219, 220, 221, 222, 223, 224, 225, 226,
591 227, 228, 229, 230, 0, 0, 0, 0, 0, 0,
592 0, 0, 0, 0, 0, 244, 0, 0, 0, 0,
593 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
594 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
595 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
596 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
597 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
598 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
599 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
600 0, 0, 296, 0, 0, 0, 0, 0, 0, 0,
601 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
602 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
605 dEXT short yycheck[] = { 13,
606 59, 41, 36, 36, 44, 93, 36, 59, 91, 86,
607 40, 325, 91, 41, 257, 191, 40, 43, 58, 59,
608 182, 257, 59, 63, 41, 51, 41, 59, 41, 257,
609 41, 91, 46, 41, 322, 323, 91, 59, 41, 327,
610 123, 41, 356, 57, 123, 297, 298, 61, 41, 44,
611 40, 59, 40, 93, 40, 343, 59, 278, 91, 347,
612 123, 41, 41, 123, 41, 91, 59, 91, 123, 40,
613 97, 98, 99, 100, 101, 102, 59, 41, 0, 59,
614 59, 59, 59, 59, 40, 59, 123, 59, 114, 123,
615 123, 123, 106, 107, 270, 59, 122, 276, 277, 123,
616 59, 41, 272, 273, 274, 275, 40, 40, 44, 40,
617 260, 33, 40, 93, 36, 37, 38, 123, 40, 59,
618 42, 43, 257, 45, 286, 93, 302, 297, 298, 143,
619 144, 145, 146, 147, 148, 149, 40, 59, 40, 266,
620 267, 268, 64, 270, 271, 41, 40, 91, 257, 36,
621 93, 41, 0, 167, 168, 169, 170, 171, 172, 173,
622 125, 93, 125, 93, 91, 192, 298, 40, 182, 91,
623 346, 41, 186, 187, 41, 189, 41, 191, 93, 41,
624 93, 41, 91, 40, 198, 33, 200, 201, 36, 37,
625 38, 205, 40, 59, 42, 43, 41, 45, 257, 125,
626 125, 123, 125, 125, 126, 125, 59, 123, 41, 297,
627 298, 59, 41, 125, 123, 41, 64, 231, 59, 233,
628 41, 41, 248, 257, 44, 258, 309, 253, 262, 312,
629 313, 314, 272, 273, 274, 275, 41, 41, 58, 59,
630 44, 281, 40, 91, 123, 297, 298, 287, 288, 41,
631 290, 123, 44, 41, 58, 59, 333, 297, 298, 314,
632 300, 301, 302, 303, 304, 305, 296, 281, 0, 297,
633 298, 63, 286, 93, 41, 123, 59, 125, 126, 41,
634 297, 298, 297, 298, 297, 298, 297, 298, 59, 93,
635 304, 41, 272, 273, 274, 275, 59, 297, 298, 91,
636 41, 33, 297, 298, 36, 37, 38, 8, 40, 32,
637 42, 43, 144, 45, 297, 298, 13, 297, 298, 297,
638 298, 297, 298, 297, 298, 297, 298, 59, 342, 297,
639 298, 123, 64, 342, 256, 257, 258, 259, 260, 261,
640 189, 263, 264, 265, 266, 267, 268, 269, 270, 271,
641 272, 273, 274, 275, 297, 298, 304, 279, 280, 91,
642 282, 283, 284, 285, 286, 297, 298, 297, 298, 291,
643 292, 293, 294, 295, 296, 91, 96, 299, 41, 41,
644 289, 44, 297, 298, 297, 298, 308, -1, 310, 311,
645 -1, 123, -1, -1, 126, 58, 59, 306, -1, -1,
646 309, 63, -1, 312, 313, 314, -1, 123, 256, 257,
647 258, 259, 260, 261, -1, 263, 264, 265, 266, 267,
648 268, 269, 270, 271, 272, 273, 274, 275, -1, 91,
649 93, 279, 280, -1, 282, 283, 284, 285, 286, -1,
650 -1, -1, -1, 291, 292, 293, 294, 295, 296, -1,
651 -1, 299, 272, 273, 274, 275, -1, -1, -1, 91,
652 308, 123, 310, 311, -1, -1, -1, -1, 272, 273,
653 274, 275, 91, -1, 91, -1, 33, 297, 298, 36,
654 37, 38, -1, 40, 41, 42, 43, 44, 45, 281,
655 -1, 123, -1, 297, 298, 287, 288, 289, 290, -1,
656 -1, 58, 59, -1, 123, 122, 63, 64, 300, 301,
657 302, 303, 304, 305, 306, -1, -1, 309, -1, -1,
658 312, 313, 314, -1, 256, 257, 258, 259, 260, 261,
659 -1, 263, 264, 265, 91, -1, 93, 269, -1, -1,
660 272, 273, 274, 275, -1, -1, -1, 279, 280, -1,
661 282, 283, 284, 285, 286, -1, -1, -1, -1, 291,
662 292, 293, 294, 295, 296, 41, 123, 299, 44, 126,
663 -1, -1, 91, 289, 290, -1, 308, 33, 310, 311,
664 36, 37, 38, 59, 40, 41, 42, 43, 44, 45,
665 306, -1, -1, 309, -1, -1, 312, 313, 314, -1,
666 -1, -1, 58, 59, 123, -1, -1, 63, 64, 272,
667 273, 274, 275, -1, -1, -1, -1, 93, -1, 281,
668 -1, -1, -1, -1, -1, 287, 288, 289, 290, -1,
669 -1, 248, -1, -1, 297, 298, 253, 93, 300, 301,
670 302, 303, 304, 305, 306, -1, 41, 309, -1, 44,
671 312, 313, 314, -1, -1, 287, 288, 289, 290, -1,
672 -1, -1, -1, 58, 59, -1, -1, -1, 63, -1,
673 126, 303, 304, 305, 306, -1, -1, 309, -1, -1,
674 312, 313, 314, -1, -1, -1, -1, 306, -1, -1,
675 309, -1, -1, 312, 313, 314, -1, -1, 93, -1,
676 257, 258, 259, 260, 261, -1, 263, 264, 265, -1,
677 -1, -1, 269, -1, -1, 272, 273, 274, 275, -1,
678 -1, -1, -1, 280, 281, 282, 283, 284, 285, 286,
679 287, 288, 289, 290, 291, 292, 293, 294, 295, 296,
680 297, 298, 299, 300, 301, 302, 303, 304, 305, 306,
681 -1, 308, 309, 310, 311, 312, 313, 314, 41, -1,
682 -1, 44, -1, 41, -1, -1, 44, -1, 287, 288,
683 289, 290, -1, -1, -1, 58, 59, -1, -1, -1,
684 58, 59, -1, -1, -1, 63, 305, 306, -1, 125,
685 309, -1, -1, 312, 313, 314, 272, 273, 274, 275,
686 -1, 257, 258, 259, 260, 261, -1, 263, 264, 265,
687 93, -1, 125, 269, -1, 93, 272, 273, 274, 275,
688 -1, 297, -1, -1, 280, 281, 282, 283, 284, 285,
689 286, 287, 288, 289, 290, 291, 292, 293, 294, 295,
690 296, 297, 298, 299, 300, 301, 302, 303, 304, 305,
691 306, -1, 308, 309, 310, 311, 312, 313, 314, 33,
692 -1, -1, 36, 37, 38, -1, 40, -1, 42, 43,
693 -1, 45, -1, -1, -1, -1, -1, 272, 273, 274,
694 275, -1, -1, -1, -1, 59, 281, -1, -1, -1,
695 64, -1, 287, 288, 289, 290, -1, -1, -1, -1,
696 -1, -1, 297, 298, 13, 300, 301, 302, 303, 304,
697 305, 306, -1, -1, 309, 33, -1, 91, 36, 37,
698 38, -1, 40, -1, 42, 43, 26, 45, -1, -1,
699 266, 267, 268, 42, 270, 271, 45, -1, -1, -1,
700 -1, 59, -1, 43, 44, -1, 64, -1, -1, 123,
701 50, -1, 126, 266, 267, 268, -1, 270, 271, -1,
702 -1, -1, 62, 63, 64, 65, -1, -1, -1, -1,
703 -1, 33, 81, 91, 36, 37, 38, -1, 40, -1,
704 42, 43, -1, 45, -1, -1, 95, -1, -1, 272,
705 273, 274, 275, -1, 272, 273, 274, 275, -1, -1,
706 -1, -1, 64, 281, -1, 123, -1, 107, 126, 287,
707 288, 289, 290, -1, 297, 298, -1, 300, -1, 297,
708 298, -1, 300, 301, 302, 303, 304, 305, 306, 91,
709 -1, 309, 141, -1, 33, -1, -1, 36, 37, 38,
710 -1, 40, -1, 42, 43, -1, 45, -1, -1, -1,
711 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
712 -1, 123, -1, -1, 126, 64, -1, -1, -1, 178,
713 -1, -1, -1, -1, -1, -1, 185, -1, -1, -1,
714 -1, -1, 256, 257, 258, 259, 260, 261, -1, 263,
715 264, 265, 91, -1, -1, 269, -1, -1, 272, 273,
716 274, 275, -1, -1, -1, 279, 280, -1, 282, 283,
717 284, 285, 286, -1, -1, -1, -1, 291, 292, 293,
718 294, 295, 296, -1, 123, 299, -1, 126, -1, -1,
719 -1, -1, -1, -1, 308, -1, 310, 311, 256, 257,
720 258, 259, 260, 261, -1, 263, 264, 265, -1, -1,
721 91, 269, -1, -1, 272, 273, 274, 275, -1, -1,
722 -1, 279, 280, -1, 282, 283, 284, 285, 286, -1,
723 -1, -1, -1, 291, 292, 293, 294, 295, 296, 91,
724 -1, 299, 123, -1, -1, -1, -1, -1, -1, -1,
725 308, -1, 310, 311, -1, 257, 258, 259, 260, 261,
726 262, 263, 264, 265, -1, 33, -1, 269, 36, 37,
727 38, 123, 40, 41, 42, 43, -1, 45, 280, -1,
728 282, 283, 284, 285, 286, -1, -1, -1, -1, 291,
729 292, 293, 294, 295, 296, -1, 64, 299, -1, -1,
730 -1, -1, -1, -1, -1, -1, 308, -1, 310, 311,
731 -1, -1, -1, -1, -1, -1, -1, -1, 257, 258,
732 259, 260, 261, 91, 263, 264, 265, -1, 33, -1,
733 269, 36, 37, 38, -1, 40, -1, 42, 43, -1,
734 45, 280, -1, 282, 283, 284, 285, 286, -1, -1,
735 -1, -1, 291, 292, 293, 294, 295, 296, 126, 64,
736 299, -1, 299, 300, 301, -1, 303, -1, -1, 308,
737 -1, 310, 311, -1, -1, -1, -1, -1, -1, -1,
738 -1, -1, -1, -1, 33, -1, 91, 36, 37, 38,
739 -1, 40, 329, 42, 43, -1, 45, -1, -1, 336,
740 -1, -1, -1, 340, -1, -1, 287, 288, 289, 290,
741 59, -1, -1, -1, -1, 64, 353, 354, 123, -1,
742 -1, 126, -1, 304, 305, 306, -1, -1, 309, -1,
743 -1, 312, 313, 314, -1, 287, -1, 289, 290, -1,
744 33, -1, 91, 36, 37, 38, -1, 40, -1, 42,
745 43, -1, 45, 305, 306, -1, -1, 309, -1, -1,
746 312, 313, 314, -1, -1, -1, -1, -1, -1, -1,
747 -1, 64, -1, -1, -1, -1, -1, 126, -1, -1,
748 -1, -1, -1, -1, -1, -1, -1, -1, -1, 257,
749 258, 259, 260, 261, -1, 263, 264, 265, 91, 33,
750 93, 269, 36, 37, 38, -1, 40, 41, 42, 43,
751 -1, 45, 280, -1, 282, 283, 284, 285, 286, -1,
752 -1, -1, -1, 291, 292, 293, 294, 295, 296, -1,
753 64, 299, -1, 126, -1, -1, -1, -1, -1, -1,
754 308, -1, 310, 311, -1, -1, -1, -1, 41, -1,
755 -1, 44, 257, 258, 259, 260, 261, 91, 263, 264,
756 265, -1, -1, -1, 269, 58, 59, -1, -1, -1,
757 63, -1, -1, -1, -1, 280, -1, 282, 283, 284,
758 285, 286, -1, -1, -1, -1, 291, 292, 293, 294,
759 295, 296, 126, -1, 299, -1, -1, -1, -1, -1,
760 93, -1, -1, 308, 41, 310, 311, 44, 257, 258,
761 259, 260, 261, -1, 263, 264, 265, -1, -1, -1,
762 269, 58, 59, -1, -1, -1, 63, -1, -1, -1,
763 -1, 280, -1, 282, 283, 284, 285, 286, -1, -1,
764 -1, -1, 291, 292, 293, 294, 295, 296, -1, -1,
765 299, -1, -1, -1, -1, -1, 93, -1, -1, 308,
766 -1, 310, 311, -1, 257, 258, 259, 260, 261, -1,
767 263, 264, 265, -1, 33, -1, 269, 36, 37, 38,
768 -1, 40, 41, 42, 43, -1, 45, 280, -1, 282,
769 283, 284, 285, 286, -1, -1, -1, -1, 291, 292,
770 293, 294, 295, 296, -1, 64, 299, -1, -1, -1,
771 -1, -1, -1, -1, -1, 308, -1, 310, 311, -1,
772 -1, -1, -1, 257, 258, 259, 260, 261, -1, 263,
773 264, 265, 91, 33, -1, 269, 36, 37, 38, -1,
774 40, -1, 42, 43, -1, 45, 280, -1, 282, 283,
775 284, 285, 286, -1, -1, -1, -1, 291, 292, 293,
776 294, 295, 296, -1, 64, 299, -1, 126, -1, -1,
777 -1, -1, -1, -1, 308, -1, 310, 311, -1, 272,
778 273, 274, 275, -1, -1, -1, -1, -1, 281, 33,
779 -1, 91, 36, 37, 38, 288, 40, 41, 42, 43,
780 -1, 45, -1, -1, 297, 298, -1, 300, 301, 302,
781 303, 304, -1, -1, -1, -1, -1, -1, -1, -1,
782 64, -1, -1, -1, -1, -1, 126, -1, -1, -1,
783 -1, -1, -1, -1, -1, 272, 273, 274, 275, -1,
784 -1, -1, -1, -1, 281, 33, -1, 91, 36, 37,
785 38, -1, 40, 41, 42, 43, -1, 45, -1, -1,
786 297, 298, -1, 300, 301, 302, 303, 304, -1, -1,
787 -1, -1, -1, -1, -1, -1, 64, -1, -1, -1,
788 -1, -1, 126, -1, -1, -1, -1, -1, -1, -1,
789 -1, -1, -1, -1, -1, -1, -1, -1, 257, 258,
790 259, 260, 261, 91, 263, 264, 265, -1, 33, -1,
791 269, 36, 37, 38, -1, 40, -1, 42, 43, -1,
792 45, 280, -1, 282, 283, 284, 285, 286, -1, -1,
793 -1, -1, 291, 292, 293, 294, 295, 296, 126, 64,
794 299, -1, -1, -1, -1, -1, -1, -1, -1, 308,
795 -1, 310, 311, -1, -1, -1, 256, 257, 258, 259,
796 260, 261, -1, 263, 264, 265, 91, -1, -1, 269,
797 41, -1, -1, 44, -1, -1, -1, -1, -1, -1,
798 280, -1, 282, 283, 284, 285, 286, 58, 59, -1,
799 -1, 291, 292, 293, 294, 295, 296, 91, -1, 299,
800 -1, 126, -1, -1, -1, -1, 41, -1, 308, 44,
801 310, 311, -1, 257, 258, 259, 260, 261, -1, 263,
802 264, 265, 93, 58, 59, 269, -1, -1, 63, 123,
803 -1, -1, -1, -1, -1, -1, 280, -1, 282, 283,
804 284, 285, 286, -1, -1, -1, -1, 291, 292, 293,
805 294, 295, 296, -1, -1, 299, 91, -1, 93, -1,
806 -1, -1, -1, -1, 308, 41, 310, 311, 44, 257,
807 258, 259, 260, 261, -1, 263, 264, 265, -1, -1,
808 -1, 269, 58, 59, -1, -1, -1, 63, 123, -1,
809 -1, -1, 280, -1, 282, 283, 284, 285, 286, -1,
810 -1, -1, -1, 291, 292, 293, 294, 295, 296, -1,
811 -1, 299, -1, -1, -1, 91, -1, 93, -1, -1,
812 308, -1, 310, 311, -1, -1, -1, -1, 41, -1,
813 -1, 44, 257, 258, 259, 260, 261, -1, 263, 264,
814 265, -1, -1, -1, 269, 58, 59, 123, -1, -1,
815 63, -1, -1, -1, -1, 280, -1, 282, 283, 284,
816 285, 286, -1, -1, -1, -1, 291, 292, 293, 294,
817 295, 296, -1, -1, 299, -1, 41, -1, 91, 44,
818 93, -1, -1, 308, -1, 310, 311, -1, -1, -1,
819 -1, -1, -1, 58, 59, 289, 290, -1, 63, -1,
820 -1, 272, 273, 274, 275, -1, -1, -1, -1, -1,
821 123, 305, 306, -1, -1, 309, -1, -1, 312, 313,
822 314, -1, -1, -1, -1, -1, 297, 298, 93, -1,
823 -1, -1, -1, -1, -1, -1, -1, 272, 273, 274,
824 275, -1, 41, -1, -1, 44, 281, -1, -1, -1,
825 -1, -1, 287, 288, 289, 290, -1, -1, 123, 58,
826 59, -1, 297, 298, 63, 300, 301, 302, 303, 304,
827 305, 306, -1, -1, 309, -1, -1, 312, 313, 314,
828 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
829 -1, -1, 91, -1, 93, -1, 272, 273, 274, 275,
830 -1, 41, -1, -1, 44, 281, -1, -1, -1, -1,
831 -1, 287, 288, 289, 290, -1, -1, -1, 58, 59,
832 -1, 297, 298, 63, 300, 301, 302, 303, 304, 305,
833 306, -1, -1, 309, -1, -1, 312, 313, 314, -1,
834 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
835 -1, -1, -1, 93, -1, -1, -1, -1, -1, 272,
836 273, 274, 275, -1, -1, -1, -1, -1, 281, -1,
837 -1, -1, -1, -1, 287, 288, 289, 290, -1, -1,
838 -1, -1, -1, 123, 297, 298, -1, 300, 301, 302,
839 303, 304, 305, 306, -1, -1, 309, -1, -1, 312,
840 313, 314, -1, -1, -1, -1, -1, 272, 273, 274,
841 275, -1, 41, -1, -1, -1, 281, -1, -1, -1,
842 -1, -1, 287, 288, 289, 290, -1, -1, -1, 58,
843 59, -1, 297, 298, 63, 300, 301, 302, 303, 304,
844 305, 306, -1, -1, 309, -1, -1, 312, 313, 314,
845 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
846 -1, -1, 91, -1, 93, -1, -1, -1, -1, -1,
847 -1, -1, -1, 272, 273, 274, 275, -1, -1, -1,
848 -1, -1, 281, -1, -1, -1, -1, -1, 287, 288,
849 289, 290, -1, -1, 123, -1, -1, -1, 297, 298,
850 -1, 300, 301, 302, 303, 304, 305, 306, -1, -1,
851 309, -1, -1, 312, 313, 314, -1, -1, -1, -1,
852 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
853 -1, -1, 272, 273, 274, 275, -1, 41, -1, -1,
854 -1, 281, -1, -1, -1, -1, -1, 287, 288, 289,
855 290, -1, -1, -1, 58, 59, -1, 297, 298, 63,
856 300, 301, 302, 303, 304, 305, 306, -1, -1, 309,
857 -1, -1, 312, 313, 314, -1, -1, -1, -1, -1,
858 41, -1, -1, 44, -1, -1, -1, 91, -1, 93,
859 41, -1, -1, 44, -1, -1, -1, 58, 59, -1,
860 -1, -1, 63, -1, -1, -1, -1, 58, 59, -1,
861 -1, -1, 63, -1, -1, -1, -1, -1, -1, 123,
862 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
863 -1, -1, 93, -1, -1, -1, -1, -1, -1, -1,
864 -1, -1, 93, 272, 273, 274, 275, -1, 41, -1,
865 -1, 44, 281, -1, -1, -1, -1, -1, 287, 288,
866 289, 290, 123, -1, -1, 58, 59, -1, 297, 298,
867 63, 300, 301, 302, 303, 304, 305, 306, -1, -1,
868 309, -1, -1, 312, 313, 314, -1, -1, -1, -1,
869 -1, 41, -1, -1, -1, -1, -1, -1, -1, -1,
870 93, -1, -1, -1, -1, -1, -1, -1, 58, 59,
871 -1, -1, -1, 63, -1, -1, -1, -1, -1, -1,
872 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
873 123, -1, -1, -1, -1, 41, -1, -1, 44, -1,
874 -1, 91, -1, 93, -1, -1, -1, -1, -1, -1,
875 -1, -1, 58, 59, -1, -1, -1, 63, -1, -1,
876 -1, -1, -1, -1, -1, -1, -1, -1, 272, 273,
877 274, 275, -1, 123, -1, -1, -1, 281, -1, -1,
878 -1, -1, -1, 287, 288, 289, 290, 93, -1, -1,
879 -1, -1, -1, 297, 298, -1, 300, 301, 302, 303,
880 304, 305, 306, -1, -1, 309, -1, -1, 312, 313,
881 314, 272, 273, 274, 275, -1, 41, 123, -1, 44,
882 281, 272, 273, 274, 275, -1, 287, 288, 289, 290,
883 281, -1, -1, 58, 59, -1, 297, 298, 63, 300,
884 301, 302, 303, 304, 305, 306, 297, 298, 309, 300,
885 301, 312, 313, 314, -1, -1, -1, -1, -1, -1,
886 -1, -1, -1, -1, -1, -1, -1, -1, 93, -1,
887 -1, -1, -1, -1, -1, -1, -1, -1, -1, 272,
888 273, 274, 275, -1, 41, -1, -1, 44, 281, -1,
889 -1, -1, -1, -1, 287, 288, 289, 290, -1, -1,
890 -1, 58, 59, -1, 297, 298, 63, 300, 301, 302,
891 303, 304, 305, 306, -1, -1, 309, -1, -1, 312,
892 313, 314, 272, 273, 274, 275, -1, 41, -1, -1,
893 44, 281, -1, -1, -1, -1, 93, 287, 288, 289,
894 290, -1, -1, -1, 58, 59, -1, 297, 298, 63,
895 300, 301, 302, 303, 304, 305, 306, -1, -1, 309,
896 -1, -1, 312, 313, 314, -1, 272, 273, 274, 275,
897 -1, 41, -1, -1, 44, 281, -1, -1, -1, 93,
898 -1, 287, 288, 289, 290, -1, -1, -1, 58, 59,
899 -1, 297, 298, 63, 300, 301, 302, 303, 304, 305,
900 306, -1, -1, 309, -1, -1, 312, 313, 314, -1,
901 -1, -1, -1, -1, 41, -1, -1, 44, -1, -1,
902 -1, -1, -1, 93, -1, -1, -1, -1, -1, -1,
903 -1, 58, 59, -1, -1, -1, 63, -1, -1, -1,
904 -1, -1, -1, -1, -1, -1, -1, 272, 273, 274,
905 275, -1, 41, -1, -1, 44, 281, -1, -1, -1,
906 -1, -1, 287, 288, 289, 290, 93, -1, -1, 58,
907 59, -1, 297, 298, 63, 300, 301, 302, 303, 304,
908 305, 306, -1, -1, 309, -1, -1, 312, 313, 314,
909 41, -1, -1, 44, -1, -1, -1, -1, -1, -1,
910 -1, -1, -1, -1, 93, -1, -1, 58, 59, -1,
911 -1, -1, 63, -1, -1, 272, 273, 274, 275, -1,
912 -1, -1, -1, -1, 281, -1, -1, -1, -1, -1,
913 287, 288, 289, 290, -1, -1, -1, -1, -1, -1,
914 297, 298, 93, 300, 301, 302, 303, 304, 305, 306,
915 -1, -1, 309, -1, -1, 312, 313, 314, 272, 273,
916 274, 275, -1, 41, -1, -1, 44, 281, -1, -1,
917 -1, -1, -1, 287, 288, 289, 290, -1, -1, -1,
918 58, 59, -1, 297, 298, 63, 300, 301, 302, 303,
919 304, 305, 306, -1, -1, 309, -1, -1, 312, 313,
920 314, -1, 272, 273, 274, 275, -1, 41, -1, -1,
921 44, 281, -1, -1, -1, 93, -1, 287, 288, 289,
922 290, -1, -1, -1, 58, 59, -1, 297, 298, 63,
923 300, 301, 302, 303, 304, 305, 306, -1, -1, 309,
924 -1, -1, 312, 313, 314, 272, 273, 274, 275, -1,
925 41, -1, -1, 44, 281, -1, -1, -1, -1, 93,
926 287, 288, 289, 290, -1, -1, -1, 58, 59, -1,
927 297, 298, 63, 300, 301, 302, 303, 304, 305, 306,
928 -1, -1, -1, 272, 273, 274, 275, -1, 41, -1,
929 -1, 44, 281, -1, -1, -1, -1, -1, 287, 288,
930 289, 290, 93, -1, -1, 58, 59, -1, 297, 298,
931 63, 300, 301, 302, 303, 304, 305, 306, -1, -1,
932 -1, 272, 273, 274, 275, -1, 41, -1, -1, 44,
933 281, -1, -1, -1, -1, -1, 287, 288, 289, 290,
934 93, -1, -1, 58, 59, -1, 297, 298, 63, 300,
935 301, 302, 303, 304, 305, 306, -1, -1, -1, -1,
936 -1, -1, 41, -1, -1, 44, -1, -1, -1, -1,
937 -1, -1, -1, -1, -1, -1, -1, -1, 93, 58,
938 59, -1, -1, -1, 63, -1, -1, -1, -1, -1,
939 -1, -1, -1, -1, 272, 273, 274, 275, -1, 41,
940 -1, -1, 44, 281, -1, -1, -1, -1, -1, 287,
941 288, 289, 290, -1, 93, -1, 58, 59, -1, 297,
942 298, 63, 300, 301, 302, 303, 304, 305, 306, -1,
943 -1, -1, -1, -1, -1, -1, -1, -1, 272, 273,
944 274, 275, -1, 41, -1, -1, 44, 281, -1, -1,
945 -1, 93, -1, 287, 288, 289, 290, -1, -1, -1,
946 58, 59, -1, 297, 298, 63, 300, 301, 302, 303,
947 304, 305, 306, -1, -1, -1, -1, -1, -1, -1,
948 -1, 272, 273, 274, 275, -1, 41, -1, -1, 44,
949 281, -1, -1, -1, -1, 93, 287, 288, 289, 290,
950 -1, -1, -1, 58, 59, -1, 297, 298, 63, 300,
951 301, 302, 303, 304, 305, 306, -1, -1, -1, 272,
952 273, 274, 275, -1, 41, -1, -1, 44, 281, -1,
953 -1, -1, -1, -1, 287, 288, 289, 290, 93, -1,
954 -1, 58, 59, -1, 297, 298, 63, 300, 301, 302,
955 303, 304, 305, 306, -1, -1, -1, 272, 273, 274,
956 275, -1, 41, -1, -1, 44, 281, -1, -1, -1,
957 -1, -1, 287, 288, 289, 290, 93, -1, -1, 58,
958 59, -1, 297, 298, 63, 300, 301, 302, 303, 304,
959 305, -1, -1, 272, 273, 274, 275, -1, 41, -1,
960 -1, 44, 281, -1, -1, -1, -1, -1, 287, 288,
961 -1, -1, -1, -1, 93, 58, 59, -1, 297, 298,
962 63, 300, 301, 302, 303, 304, 305, -1, -1, -1,
963 272, 273, 274, 275, -1, 41, -1, -1, 44, 281,
964 -1, -1, -1, -1, -1, 287, 288, -1, -1, -1,
965 93, -1, 58, 59, -1, 297, 298, 63, 300, 301,
966 302, 303, 304, -1, -1, -1, 91, -1, -1, -1,
967 -1, -1, -1, -1, 272, 273, 274, 275, -1, 41,
968 63, -1, 44, 281, -1, -1, -1, 93, -1, 287,
969 288, -1, -1, -1, -1, -1, 58, 59, 123, 297,
970 298, 63, 300, 301, 302, 303, 304, -1, 91, -1,
971 -1, 58, -1, -1, -1, -1, 63, 272, 273, 274,
972 275, -1, -1, -1, -1, -1, 281, -1, -1, -1,
973 -1, 93, 287, 288, -1, -1, -1, -1, -1, -1,
974 123, -1, 297, 298, 91, 300, 301, 302, 303, 304,
975 -1, -1, -1, -1, -1, 272, 273, 274, 275, -1,
976 -1, -1, -1, -1, 281, -1, -1, -1, -1, -1,
977 287, 288, -1, -1, -1, 63, 123, -1, -1, -1,
978 297, 298, -1, 300, 301, 302, 303, 304, -1, -1,
979 -1, -1, -1, 272, 273, 274, 275, -1, -1, -1,
980 -1, -1, 281, 91, -1, -1, -1, -1, 25, 26,
981 -1, -1, -1, -1, -1, -1, -1, -1, 297, 298,
982 37, 300, 301, 302, 303, 304, 43, 44, 45, 272,
983 273, 274, 275, 50, -1, 123, -1, -1, 281, 91,
984 -1, -1, -1, -1, -1, 62, 63, 64, 65, -1,
985 -1, -1, -1, -1, 297, 298, -1, 300, 301, 302,
986 303, -1, 287, 288, 289, 290, 272, 273, 274, 275,
987 -1, 123, -1, -1, -1, 281, 301, 302, 303, 304,
988 305, 306, -1, -1, 309, -1, -1, 312, 313, 314,
989 107, 297, 298, -1, 300, 301, 302, -1, 281, -1,
990 -1, -1, -1, -1, 287, 288, 289, 290, -1, -1,
991 272, 273, 274, 275, -1, -1, -1, 300, 301, 302,
992 303, 304, 305, 306, -1, -1, 309, -1, -1, 312,
993 313, 314, -1, -1, 281, 297, 298, -1, 300, -1,
994 287, 288, 289, 290, -1, -1, -1, -1, -1, 166,
995 -1, -1, -1, 300, 301, 302, 303, 304, 305, 306,
996 30, -1, 309, -1, -1, 312, 313, 314, 38, -1,
997 -1, -1, 42, 190, -1, 45, -1, -1, -1, -1,
998 -1, -1, 52, 53, 54, 55, 56, -1, -1, 59,
999 60, -1, -1, 281, -1, -1, 66, -1, -1, 287,
1000 288, 289, 290, -1, -1, -1, -1, -1, -1, -1,
1001 -1, -1, -1, 301, 302, 303, 304, 305, 306, -1,
1002 -1, 309, -1, 93, 312, 313, 314, -1, -1, -1,
1003 -1, -1, -1, -1, -1, 287, 288, 289, 290, -1,
1004 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1005 302, 303, 304, 305, 306, -1, -1, 309, -1, -1,
1006 312, 313, 314, -1, -1, -1, -1, -1, -1, -1,
1007 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1008 150, 151, 152, 153, 154, 155, 156, 157, 158, 159,
1009 160, 161, 162, 163, -1, -1, -1, -1, -1, -1,
1010 -1, -1, -1, -1, -1, 175, -1, -1, -1, -1,
1011 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1012 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1013 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1014 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1015 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1016 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1017 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1018 -1, -1, 252, -1, -1, -1, -1, -1, -1, -1,
1019 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1020 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1027 #define YYMAXTOKEN 314
1029 dEXT char * yyname[] = {
1030 "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,
1031 "'!'",0,0,"'$'","'%'","'&'",0,"'('","')'","'*'","'+'","','","'-'",0,0,0,0,0,0,0,
1032 0,0,0,0,0,"':'","';'",0,0,0,"'?'","'@'",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1033 0,0,0,0,0,0,"'['",0,"']'",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1034 0,0,"'{'",0,"'}'","'~'",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1035 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1036 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1037 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",
1038 "PMFUNC","PRIVATEREF","FUNC0SUB","UNIOPSUB","LSTOPSUB","LABEL","FORMAT","SUB",
1039 "ANONSUB","PACKAGE","USE","WHILE","UNTIL","IF","UNLESS","ELSE","ELSIF",
1040 "CONTINUE","FOR","LOOPEX","DOTDOT","FUNC0","FUNC1","FUNC","UNIOP","LSTOP",
1041 "RELOP","EQOP","MULOP","ADDOP","DOLSHARP","DO","HASHBRACK","NOAMP","LOCAL","MY",
1042 "OROP","ANDOP","NOTOP","ASSIGNOP","OROR","ANDAND","BITOROP","BITANDOP",
1043 "SHIFTOP","MATCHOP","UMINUS","REFGEN","POWOP","PREINC","PREDEC","POSTINC",
1046 dEXT char * yyrule[] = {
1049 "prog : $$1 lineseq",
1050 "block : '{' remember lineseq '}'",
1052 "mblock : '{' mremember lineseq '}'",
1055 "lineseq : lineseq decl",
1056 "lineseq : lineseq line",
1057 "line : label cond",
1060 "line : label sideff ';'",
1063 "sideff : expr IF expr",
1064 "sideff : expr UNLESS expr",
1065 "sideff : expr WHILE expr",
1066 "sideff : expr UNTIL iexpr",
1068 "else : ELSE mblock",
1069 "else : ELSIF '(' mexpr ')' mblock else",
1070 "cond : IF '(' remember mexpr ')' mblock else",
1071 "cond : UNLESS '(' remember miexpr ')' mblock else",
1073 "cont : CONTINUE block",
1074 "loop : label WHILE '(' remember mtexpr ')' mblock cont",
1075 "loop : label UNTIL '(' remember miexpr ')' mblock cont",
1076 "loop : label FOR MY remember my_scalar '(' mexpr ')' mblock cont",
1077 "loop : label FOR scalar '(' remember mexpr ')' mblock cont",
1078 "loop : label FOR '(' remember mexpr ')' mblock cont",
1079 "loop : label FOR '(' remember mnexpr ';' mtexpr ';' mnexpr ')' mblock",
1080 "loop : label block cont",
1096 "format : FORMAT startformsub formname block",
1099 "subrout : SUB startsub subname proto subbody",
1108 "package : PACKAGE WORD ';'",
1109 "package : PACKAGE ';'",
1111 "use : USE startsub $$2 WORD WORD listexpr ';'",
1112 "expr : expr ANDOP expr",
1113 "expr : expr OROP expr",
1115 "argexpr : argexpr ','",
1116 "argexpr : argexpr ',' term",
1118 "listop : LSTOP indirob argexpr",
1119 "listop : FUNC '(' indirob expr ')'",
1120 "listop : term ARROW method '(' listexprcom ')'",
1121 "listop : METHOD indirob listexpr",
1122 "listop : FUNCMETH indirob '(' listexprcom ')'",
1123 "listop : LSTOP listexpr",
1124 "listop : FUNC '(' listexprcom ')'",
1126 "listop : LSTOPSUB startanonsub block $$3 listexpr",
1129 "term : term ASSIGNOP term",
1130 "term : term POWOP term",
1131 "term : term MULOP term",
1132 "term : term ADDOP term",
1133 "term : term SHIFTOP term",
1134 "term : term RELOP term",
1135 "term : term EQOP term",
1136 "term : term BITANDOP term",
1137 "term : term BITOROP term",
1138 "term : term DOTDOT term",
1139 "term : term ANDAND term",
1140 "term : term OROR term",
1141 "term : term '?' term ':' term",
1142 "term : term MATCHOP term",
1147 "term : REFGEN term",
1148 "term : term POSTINC",
1149 "term : term POSTDEC",
1150 "term : PREINC term",
1151 "term : PREDEC term",
1152 "term : local term",
1153 "term : '(' expr ')'",
1155 "term : '[' expr ']'",
1157 "term : HASHBRACK expr ';' '}'",
1158 "term : HASHBRACK ';' '}'",
1159 "term : ANONSUB startanonsub proto block",
1161 "term : star '{' expr ';' '}'",
1163 "term : scalar '[' expr ']'",
1164 "term : term ARROW '[' expr ']'",
1165 "term : term '[' expr ']'",
1169 "term : scalar '{' expr ';' '}'",
1170 "term : term ARROW '{' expr ';' '}'",
1171 "term : term '{' expr ';' '}'",
1172 "term : '(' expr ')' '[' expr ']'",
1173 "term : '(' ')' '[' expr ']'",
1174 "term : ary '[' expr ']'",
1175 "term : ary '{' expr ';' '}'",
1178 "term : amper '(' ')'",
1179 "term : amper '(' expr ')'",
1180 "term : NOAMP WORD listexpr",
1183 "term : DO WORD '(' ')'",
1184 "term : DO WORD '(' expr ')'",
1185 "term : DO scalar '(' ')'",
1186 "term : DO scalar '(' expr ')'",
1188 "term : LOOPEX term",
1189 "term : NOTOP argexpr",
1191 "term : UNIOP block",
1192 "term : UNIOP term",
1193 "term : UNIOPSUB term",
1195 "term : FUNC0 '(' ')'",
1197 "term : FUNC1 '(' ')'",
1198 "term : FUNC1 '(' expr ')'",
1199 "term : PMFUNC '(' term ')'",
1200 "term : PMFUNC '(' term ',' term ')'",
1204 "listexpr : argexpr",
1206 "listexprcom : expr",
1207 "listexprcom : expr ','",
1210 "my_scalar : scalar",
1211 "amper : '&' indirob",
1212 "scalar : '$' indirob",
1213 "ary : '@' indirob",
1214 "hsh : '%' indirob",
1215 "arylen : DOLSHARP indirob",
1216 "star : '*' indirob",
1220 "indirob : PRIVATEREF",
1223 #define yyclearin (yychar=(-1))
1224 #define yyerrok (yyerrflag=0)
1227 #define YYMAXDEPTH YYSTACKSIZE
1231 #define YYSTACKSIZE YYMAXDEPTH
1233 #define YYSTACKSIZE 500
1234 #define YYMAXDEPTH 500
1242 dEXT YYSTYPE yylval;
1245 #line 1315 "perly.c"
1246 #define YYABORT goto yyabort
1247 #define YYACCEPT goto yyaccept
1248 #define YYERROR goto yyerrlab
1265 struct ysv* ysave = (struct ysv*)ptr;
1266 if (ysave->yyss) Safefree(ysave->yyss);
1267 if (ysave->yyvs) Safefree(ysave->yyvs);
1268 yydebug = ysave->oldyydebug;
1269 yynerrs = ysave->oldyynerrs;
1270 yyerrflag = ysave->oldyyerrflag;
1271 yychar = ysave->oldyychar;
1272 yyval = ysave->oldyyval;
1273 yylval = ysave->oldyylval;
1280 register int yym, yyn, yystate;
1281 register short *yyssp;
1282 register YYSTYPE *yyvsp;
1285 unsigned yystacksize = YYSTACKSIZE;
1290 extern char *getenv();
1294 struct ysv *ysave = (struct ysv*)safemalloc(sizeof(struct ysv));
1295 SAVEDESTRUCTOR(yydestruct, ysave);
1296 ysave->oldyydebug = yydebug;
1297 ysave->oldyynerrs = yynerrs;
1298 ysave->oldyyerrflag = yyerrflag;
1299 ysave->oldyychar = yychar;
1300 ysave->oldyyval = yyval;
1301 ysave->oldyylval = yylval;
1304 if (yys = getenv("YYDEBUG"))
1307 if (yyn >= '0' && yyn <= '9')
1308 yydebug = yyn - '0';
1317 ** Initialize private stacks (yyparse may be called from an action)
1319 ysave->yyss = yyss = (short*)safemalloc(yystacksize*sizeof(short));
1320 ysave->yyvs = yyvs = (YYSTYPE*)safemalloc(yystacksize*sizeof(YYSTYPE));
1326 *yyssp = yystate = 0;
1329 if (yyn = yydefred[yystate]) goto yyreduce;
1332 if ((yychar = yylex()) < 0) yychar = 0;
1337 if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
1338 if (!yys) yys = "illegal-symbol";
1339 PerlIO_printf(Perl_debug_log, "yydebug: state %d, reading %d (%s)\n", yystate,
1344 if ((yyn = yysindex[yystate]) && (yyn += yychar) >= 0 &&
1345 yyn <= YYTABLESIZE && yycheck[yyn] == yychar)
1349 PerlIO_printf(Perl_debug_log, "yydebug: state %d, shifting to state %d\n",
1350 yystate, yytable[yyn]);
1352 if (yyssp >= yyss + yystacksize - 1)
1355 ** reallocate and recover. Note that pointers
1356 ** have to be reset, or bad things will happen
1358 int yyps_index = (yyssp - yyss);
1359 int yypv_index = (yyvsp - yyvs);
1360 yystacksize += YYSTACKSIZE;
1361 ysave->yyvs = yyvs =
1362 (YYSTYPE*)realloc((char*)yyvs,yystacksize * sizeof(YYSTYPE));
1363 ysave->yyss = yyss =
1364 (short*)realloc((char*)yyss,yystacksize * sizeof(short));
1367 yyssp = yyss + yyps_index;
1368 yyvsp = yyvs + yypv_index;
1370 *++yyssp = yystate = yytable[yyn];
1373 if (yyerrflag > 0) --yyerrflag;
1376 if ((yyn = yyrindex[yystate]) && (yyn += yychar) >= 0 &&
1377 yyn <= YYTABLESIZE && yycheck[yyn] == yychar)
1382 if (yyerrflag) goto yyinrecovery;
1387 yyerror("syntax error");
1399 if ((yyn = yysindex[*yyssp]) && (yyn += YYERRCODE) >= 0 &&
1400 yyn <= YYTABLESIZE && yycheck[yyn] == YYERRCODE)
1404 PerlIO_printf(Perl_debug_log,
1405 "yydebug: state %d, error recovery shifting to state %d\n",
1406 *yyssp, yytable[yyn]);
1408 if (yyssp >= yyss + yystacksize - 1)
1411 ** reallocate and recover. Note that pointers
1412 ** have to be reset, or bad things will happen
1414 int yyps_index = (yyssp - yyss);
1415 int yypv_index = (yyvsp - yyvs);
1416 yystacksize += YYSTACKSIZE;
1417 ysave->yyvs = yyvs = (YYSTYPE*)realloc((char*)yyvs,
1418 yystacksize * sizeof(YYSTYPE));
1419 ysave->yyss = yyss = (short*)realloc((char*)yyss,
1420 yystacksize * sizeof(short));
1423 yyssp = yyss + yyps_index;
1424 yyvsp = yyvs + yypv_index;
1426 *++yyssp = yystate = yytable[yyn];
1434 PerlIO_printf(Perl_debug_log,
1435 "yydebug: error recovery discarding state %d\n",
1438 if (yyssp <= yyss) goto yyabort;
1446 if (yychar == 0) goto yyabort;
1451 if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
1452 if (!yys) yys = "illegal-symbol";
1453 PerlIO_printf(Perl_debug_log,
1454 "yydebug: state %d, error recovery discards token %d (%s)\n",
1455 yystate, yychar, yys);
1464 PerlIO_printf(Perl_debug_log, "yydebug: state %d, reducing by rule %d (%s)\n",
1465 yystate, yyn, yyrule[yyn]);
1468 yyval = yyvsp[1-yym];
1474 #if defined(YYDEBUG) && defined(DEBUGGING)
1475 yydebug = (debug & 1);
1482 { newPROG(yyvsp[0].opval); }
1486 { if (copline > (line_t)yyvsp[-3].ival)
1487 copline = yyvsp[-3].ival;
1488 yyval.opval = block_end(yyvsp[-2].ival, yyvsp[-1].opval); }
1492 { yyval.ival = block_start(TRUE); }
1496 { if (copline > (line_t)yyvsp[-3].ival)
1497 copline = yyvsp[-3].ival;
1498 yyval.opval = block_end(yyvsp[-2].ival, yyvsp[-1].opval); }
1502 { yyval.ival = block_start(FALSE); }
1506 { yyval.opval = Nullop; }
1510 { yyval.opval = yyvsp[-1].opval; }
1514 { yyval.opval = append_list(OP_LINESEQ,
1515 (LISTOP*)yyvsp[-1].opval, (LISTOP*)yyvsp[0].opval);
1516 pad_reset_pending = TRUE;
1517 if (yyvsp[-1].opval && yyvsp[0].opval) hints |= HINT_BLOCK_SCOPE; }
1521 { yyval.opval = newSTATEOP(0, yyvsp[-1].pval, yyvsp[0].opval); }
1525 { if (yyvsp[-1].pval != Nullch) {
1526 yyval.opval = newSTATEOP(0, yyvsp[-1].pval, newOP(OP_NULL, 0));
1529 yyval.opval = Nullop;
1536 { yyval.opval = newSTATEOP(0, yyvsp[-2].pval, yyvsp[-1].opval);
1541 { yyval.opval = Nullop; }
1545 { yyval.opval = yyvsp[0].opval; }
1549 { yyval.opval = newLOGOP(OP_AND, 0, yyvsp[0].opval, yyvsp[-2].opval); }
1553 { yyval.opval = newLOGOP(OP_OR, 0, yyvsp[0].opval, yyvsp[-2].opval); }
1557 { yyval.opval = newLOOPOP(OPf_PARENS, 1, scalar(yyvsp[0].opval), yyvsp[-2].opval); }
1561 { yyval.opval = newLOOPOP(OPf_PARENS, 1, yyvsp[0].opval, yyvsp[-2].opval);}
1565 { yyval.opval = Nullop; }
1569 { yyval.opval = scope(yyvsp[0].opval); }
1573 { copline = yyvsp[-5].ival;
1574 yyval.opval = newSTATEOP(0, Nullch,
1575 newCONDOP(0, yyvsp[-3].opval, scope(yyvsp[-1].opval), yyvsp[0].opval));
1576 hints |= HINT_BLOCK_SCOPE; }
1580 { copline = yyvsp[-6].ival;
1581 yyval.opval = block_end(yyvsp[-4].ival,
1582 newCONDOP(0, yyvsp[-3].opval, scope(yyvsp[-1].opval), yyvsp[0].opval)); }
1586 { copline = yyvsp[-6].ival;
1587 yyval.opval = block_end(yyvsp[-4].ival,
1588 newCONDOP(0, yyvsp[-3].opval, scope(yyvsp[-1].opval), yyvsp[0].opval)); }
1592 { yyval.opval = Nullop; }
1596 { yyval.opval = scope(yyvsp[0].opval); }
1600 { copline = yyvsp[-6].ival;
1601 yyval.opval = block_end(yyvsp[-4].ival,
1602 newSTATEOP(0, yyvsp[-7].pval,
1603 newWHILEOP(0, 1, (LOOP*)Nullop,
1604 yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval))); }
1608 { copline = yyvsp[-6].ival;
1609 yyval.opval = block_end(yyvsp[-4].ival,
1610 newSTATEOP(0, yyvsp[-7].pval,
1611 newWHILEOP(0, 1, (LOOP*)Nullop,
1612 yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval))); }
1616 { yyval.opval = block_end(yyvsp[-6].ival,
1617 newFOROP(0, yyvsp[-9].pval, yyvsp[-8].ival, yyvsp[-5].opval, yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval)); }
1621 { yyval.opval = block_end(yyvsp[-4].ival,
1622 newFOROP(0, yyvsp[-8].pval, yyvsp[-7].ival, mod(yyvsp[-6].opval, OP_ENTERLOOP),
1623 yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval)); }
1627 { yyval.opval = block_end(yyvsp[-4].ival,
1628 newFOROP(0, yyvsp[-7].pval, yyvsp[-6].ival, Nullop, yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval)); }
1632 { copline = yyvsp[-9].ival;
1633 yyval.opval = block_end(yyvsp[-7].ival,
1634 newSTATEOP(0, yyvsp[-10].pval,
1635 append_elem(OP_LINESEQ, scalar(yyvsp[-6].opval),
1636 newWHILEOP(0, 1, (LOOP*)Nullop,
1637 scalar(yyvsp[-4].opval),
1638 yyvsp[0].opval, scalar(yyvsp[-2].opval))))); }
1642 { yyval.opval = newSTATEOP(0,
1643 yyvsp[-2].pval, newWHILEOP(0, 1, (LOOP*)Nullop,
1644 Nullop, yyvsp[-1].opval, yyvsp[0].opval)); }
1648 { yyval.opval = Nullop; }
1652 { (void)scan_num("1"); yyval.opval = yylval.opval; }
1656 { yyval.opval = invert(scalar(yyvsp[0].opval)); }
1660 { yyval.opval = yyvsp[0].opval; intro_my(); }
1664 { yyval.opval = yyvsp[0].opval; intro_my(); }
1668 { yyval.opval = yyvsp[0].opval; intro_my(); }
1672 { yyval.opval = yyvsp[0].opval; intro_my(); }
1676 { yyval.pval = Nullch; }
1696 { newFORM(yyvsp[-2].ival, yyvsp[-1].opval, yyvsp[0].opval); }
1700 { yyval.opval = yyvsp[0].opval; }
1704 { yyval.opval = Nullop; }
1708 { newSUB(yyvsp[-3].ival, yyvsp[-2].opval, yyvsp[-1].opval, yyvsp[0].opval); }
1712 { yyval.ival = start_subparse(FALSE, 0); }
1716 { yyval.ival = start_subparse(FALSE, CVf_ANON); }
1720 { yyval.ival = start_subparse(TRUE, 0); }
1724 { char *name = SvPVx(((SVOP*)yyvsp[0].opval)->op_sv, na);
1725 if (strEQ(name, "BEGIN") || strEQ(name, "END"))
1726 CvUNIQUE_on(compcv);
1727 yyval.opval = yyvsp[0].opval; }
1731 { yyval.opval = Nullop; }
1735 { yyval.opval = yyvsp[0].opval; }
1739 { yyval.opval = Nullop; expect = XSTATE; }
1743 { package(yyvsp[-1].opval); }
1747 { package(Nullop); }
1751 { CvUNIQUE_on(compcv); /* It's a BEGIN {} */ }
1755 { utilize(yyvsp[-6].ival, yyvsp[-5].ival, yyvsp[-3].opval, yyvsp[-2].opval, yyvsp[-1].opval); }
1759 { yyval.opval = newLOGOP(OP_AND, 0, yyvsp[-2].opval, yyvsp[0].opval); }
1763 { yyval.opval = newLOGOP(yyvsp[-1].ival, 0, yyvsp[-2].opval, yyvsp[0].opval); }
1767 { yyval.opval = yyvsp[-1].opval; }
1771 { yyval.opval = append_elem(OP_LIST, yyvsp[-2].opval, yyvsp[0].opval); }
1775 { yyval.opval = convert(yyvsp[-2].ival, OPf_STACKED,
1776 prepend_elem(OP_LIST, newGVREF(yyvsp[-2].ival,yyvsp[-1].opval), yyvsp[0].opval) ); }
1780 { yyval.opval = convert(yyvsp[-4].ival, OPf_STACKED,
1781 prepend_elem(OP_LIST, newGVREF(yyvsp[-4].ival,yyvsp[-2].opval), yyvsp[-1].opval) ); }
1785 { yyval.opval = convert(OP_ENTERSUB, OPf_STACKED,
1786 append_elem(OP_LIST,
1787 prepend_elem(OP_LIST, scalar(yyvsp[-5].opval), yyvsp[-1].opval),
1788 newUNOP(OP_METHOD, 0, yyvsp[-3].opval))); }
1792 { yyval.opval = convert(OP_ENTERSUB, OPf_STACKED,
1793 append_elem(OP_LIST,
1794 prepend_elem(OP_LIST, yyvsp[-1].opval, yyvsp[0].opval),
1795 newUNOP(OP_METHOD, 0, yyvsp[-2].opval))); }
1799 { yyval.opval = convert(OP_ENTERSUB, OPf_STACKED,
1800 append_elem(OP_LIST,
1801 prepend_elem(OP_LIST, yyvsp[-3].opval, yyvsp[-1].opval),
1802 newUNOP(OP_METHOD, 0, yyvsp[-4].opval))); }
1806 { yyval.opval = convert(yyvsp[-1].ival, 0, yyvsp[0].opval); }
1810 { yyval.opval = convert(yyvsp[-3].ival, 0, yyvsp[-1].opval); }
1814 { yyvsp[0].opval = newANONSUB(yyvsp[-1].ival, 0, yyvsp[0].opval); }
1818 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
1819 append_elem(OP_LIST,
1820 prepend_elem(OP_LIST, yyvsp[-2].opval, yyvsp[0].opval), yyvsp[-4].opval)); }
1824 { yyval.opval = newASSIGNOP(OPf_STACKED, yyvsp[-2].opval, yyvsp[-1].ival, yyvsp[0].opval); }
1828 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1832 { if (yyvsp[-1].ival != OP_REPEAT)
1833 scalar(yyvsp[-2].opval);
1834 yyval.opval = newBINOP(yyvsp[-1].ival, 0, yyvsp[-2].opval, scalar(yyvsp[0].opval)); }
1838 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1842 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1846 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1850 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1854 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1858 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1862 { yyval.opval = newRANGE(yyvsp[-1].ival, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval));}
1866 { yyval.opval = newLOGOP(OP_AND, 0, yyvsp[-2].opval, yyvsp[0].opval); }
1870 { yyval.opval = newLOGOP(OP_OR, 0, yyvsp[-2].opval, yyvsp[0].opval); }
1874 { yyval.opval = newCONDOP(0, yyvsp[-4].opval, yyvsp[-2].opval, yyvsp[0].opval); }
1878 { yyval.opval = bind_match(yyvsp[-1].ival, yyvsp[-2].opval, yyvsp[0].opval); }
1882 { yyval.opval = newUNOP(OP_NEGATE, 0, scalar(yyvsp[0].opval)); }
1886 { yyval.opval = yyvsp[0].opval; }
1890 { yyval.opval = newUNOP(OP_NOT, 0, scalar(yyvsp[0].opval)); }
1894 { yyval.opval = newUNOP(OP_COMPLEMENT, 0, scalar(yyvsp[0].opval));}
1898 { yyval.opval = newUNOP(OP_REFGEN, 0, mod(yyvsp[0].opval,OP_REFGEN)); }
1902 { yyval.opval = newUNOP(OP_POSTINC, 0,
1903 mod(scalar(yyvsp[-1].opval), OP_POSTINC)); }
1907 { yyval.opval = newUNOP(OP_POSTDEC, 0,
1908 mod(scalar(yyvsp[-1].opval), OP_POSTDEC)); }
1912 { yyval.opval = newUNOP(OP_PREINC, 0,
1913 mod(scalar(yyvsp[0].opval), OP_PREINC)); }
1917 { yyval.opval = newUNOP(OP_PREDEC, 0,
1918 mod(scalar(yyvsp[0].opval), OP_PREDEC)); }
1922 { yyval.opval = localize(yyvsp[0].opval,yyvsp[-1].ival); }
1926 { yyval.opval = sawparens(yyvsp[-1].opval); }
1930 { yyval.opval = sawparens(newNULLLIST()); }
1934 { yyval.opval = newANONLIST(yyvsp[-1].opval); }
1938 { yyval.opval = newANONLIST(Nullop); }
1942 { yyval.opval = newANONHASH(yyvsp[-2].opval); }
1946 { yyval.opval = newANONHASH(Nullop); }
1950 { yyval.opval = newANONSUB(yyvsp[-2].ival, yyvsp[-1].opval, yyvsp[0].opval); }
1954 { yyval.opval = yyvsp[0].opval; }
1958 { yyval.opval = newBINOP(OP_GELEM, 0, newGVREF(0,yyvsp[-4].opval), yyvsp[-2].opval); }
1962 { yyval.opval = yyvsp[0].opval; }
1966 { yyval.opval = newBINOP(OP_AELEM, 0, oopsAV(yyvsp[-3].opval), scalar(yyvsp[-1].opval)); }
1970 { yyval.opval = newBINOP(OP_AELEM, 0,
1971 ref(newAVREF(yyvsp[-4].opval),OP_RV2AV),
1972 scalar(yyvsp[-1].opval));}
1976 { assertref(yyvsp[-3].opval); yyval.opval = newBINOP(OP_AELEM, 0,
1977 ref(newAVREF(yyvsp[-3].opval),OP_RV2AV),
1978 scalar(yyvsp[-1].opval));}
1982 { yyval.opval = yyvsp[0].opval; }
1986 { yyval.opval = yyvsp[0].opval; }
1990 { yyval.opval = newUNOP(OP_AV2ARYLEN, 0, ref(yyvsp[0].opval, OP_AV2ARYLEN));}
1994 { yyval.opval = newBINOP(OP_HELEM, 0, oopsHV(yyvsp[-4].opval), jmaybe(yyvsp[-2].opval));
1995 expect = XOPERATOR; }
1999 { yyval.opval = newBINOP(OP_HELEM, 0,
2000 ref(newHVREF(yyvsp[-5].opval),OP_RV2HV),
2001 jmaybe(yyvsp[-2].opval));
2002 expect = XOPERATOR; }
2006 { assertref(yyvsp[-4].opval); yyval.opval = newBINOP(OP_HELEM, 0,
2007 ref(newHVREF(yyvsp[-4].opval),OP_RV2HV),
2008 jmaybe(yyvsp[-2].opval));
2009 expect = XOPERATOR; }
2013 { yyval.opval = newSLICEOP(0, yyvsp[-1].opval, yyvsp[-4].opval); }
2017 { yyval.opval = newSLICEOP(0, yyvsp[-1].opval, Nullop); }
2021 { yyval.opval = prepend_elem(OP_ASLICE,
2022 newOP(OP_PUSHMARK, 0),
2023 newLISTOP(OP_ASLICE, 0,
2024 list(yyvsp[-1].opval),
2025 ref(yyvsp[-3].opval, OP_ASLICE))); }
2029 { yyval.opval = prepend_elem(OP_HSLICE,
2030 newOP(OP_PUSHMARK, 0),
2031 newLISTOP(OP_HSLICE, 0,
2032 list(yyvsp[-2].opval),
2033 ref(oopsHV(yyvsp[-4].opval), OP_HSLICE)));
2034 expect = XOPERATOR; }
2038 { yyval.opval = yyvsp[0].opval; }
2042 { yyval.opval = newUNOP(OP_ENTERSUB, 0, scalar(yyvsp[0].opval)); }
2046 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED, scalar(yyvsp[-2].opval)); }
2050 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2051 append_elem(OP_LIST, yyvsp[-1].opval, scalar(yyvsp[-3].opval))); }
2055 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2056 append_elem(OP_LIST, yyvsp[0].opval, scalar(yyvsp[-1].opval))); }
2060 { yyval.opval = newUNOP(OP_DOFILE, 0, scalar(yyvsp[0].opval)); }
2064 { yyval.opval = newUNOP(OP_NULL, OPf_SPECIAL, scope(yyvsp[0].opval)); }
2068 { yyval.opval = newUNOP(OP_ENTERSUB,
2069 OPf_SPECIAL|OPf_STACKED,
2070 prepend_elem(OP_LIST,
2072 (OPpENTERSUB_AMPER<<8),
2073 scalar(yyvsp[-2].opval)
2074 )),Nullop)); dep();}
2078 { yyval.opval = newUNOP(OP_ENTERSUB,
2079 OPf_SPECIAL|OPf_STACKED,
2080 append_elem(OP_LIST,
2083 (OPpENTERSUB_AMPER<<8),
2084 scalar(yyvsp[-3].opval)
2089 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_SPECIAL|OPf_STACKED,
2090 prepend_elem(OP_LIST,
2091 scalar(newCVREF(0,scalar(yyvsp[-2].opval))), Nullop)); dep();}
2095 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_SPECIAL|OPf_STACKED,
2096 prepend_elem(OP_LIST,
2098 scalar(newCVREF(0,scalar(yyvsp[-3].opval))))); dep();}
2102 { yyval.opval = newOP(yyvsp[0].ival, OPf_SPECIAL);
2103 hints |= HINT_BLOCK_SCOPE; }
2107 { yyval.opval = newLOOPEX(yyvsp[-1].ival,yyvsp[0].opval); }
2111 { yyval.opval = newUNOP(OP_NOT, 0, scalar(yyvsp[0].opval)); }
2115 { yyval.opval = newOP(yyvsp[0].ival, 0); }
2119 { yyval.opval = newUNOP(yyvsp[-1].ival, 0, yyvsp[0].opval); }
2123 { yyval.opval = newUNOP(yyvsp[-1].ival, 0, yyvsp[0].opval); }
2127 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2128 append_elem(OP_LIST, yyvsp[0].opval, scalar(yyvsp[-1].opval))); }
2132 { yyval.opval = newOP(yyvsp[0].ival, 0); }
2136 { yyval.opval = newOP(yyvsp[-2].ival, 0); }
2140 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2141 scalar(yyvsp[0].opval)); }
2145 { yyval.opval = newOP(yyvsp[-2].ival, OPf_SPECIAL); }
2149 { yyval.opval = newUNOP(yyvsp[-3].ival, 0, yyvsp[-1].opval); }
2153 { yyval.opval = pmruntime(yyvsp[-3].opval, yyvsp[-1].opval, Nullop); }
2157 { yyval.opval = pmruntime(yyvsp[-5].opval, yyvsp[-3].opval, yyvsp[-1].opval); }
2161 { yyval.opval = Nullop; }
2165 { yyval.opval = yyvsp[0].opval; }
2169 { yyval.opval = Nullop; }
2173 { yyval.opval = yyvsp[0].opval; }
2177 { yyval.opval = yyvsp[-1].opval; }
2189 { in_my = 0; yyval.opval = my(yyvsp[0].opval); }
2193 { yyval.opval = newCVREF(yyvsp[-1].ival,yyvsp[0].opval); }
2197 { yyval.opval = newSVREF(yyvsp[0].opval); }
2201 { yyval.opval = newAVREF(yyvsp[0].opval); }
2205 { yyval.opval = newHVREF(yyvsp[0].opval); }
2209 { yyval.opval = newAVREF(yyvsp[0].opval); }
2213 { yyval.opval = newGVREF(0,yyvsp[0].opval); }
2217 { yyval.opval = scalar(yyvsp[0].opval); }
2221 { yyval.opval = scalar(yyvsp[0].opval); }
2225 { yyval.opval = scope(yyvsp[0].opval); }
2229 { yyval.opval = yyvsp[0].opval; }
2231 #line 2215 "perly.c"
2237 if (yystate == 0 && yym == 0)
2241 PerlIO_printf(Perl_debug_log,
2242 "yydebug: after reduction, shifting from state 0 to state %d\n",
2250 if ((yychar = yylex()) < 0) yychar = 0;
2255 if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
2256 if (!yys) yys = "illegal-symbol";
2257 PerlIO_printf(Perl_debug_log, "yydebug: state %d, reading %d (%s)\n",
2258 YYFINAL, yychar, yys);
2262 if (yychar == 0) goto yyaccept;
2265 if ((yyn = yygindex[yym]) && (yyn += yystate) >= 0 &&
2266 yyn <= YYTABLESIZE && yycheck[yyn] == yystate)
2267 yystate = yytable[yyn];
2269 yystate = yydgoto[yym];
2272 PerlIO_printf(Perl_debug_log,
2273 "yydebug: after reduction, shifting from state %d to state %d\n",
2276 if (yyssp >= yyss + yystacksize - 1)
2279 ** reallocate and recover. Note that pointers
2280 ** have to be reset, or bad things will happen
2282 int yyps_index = (yyssp - yyss);
2283 int yypv_index = (yyvsp - yyvs);
2284 yystacksize += YYSTACKSIZE;
2285 ysave->yyvs = yyvs =
2286 (YYSTYPE*)realloc((char*)yyvs,yystacksize * sizeof(YYSTYPE));
2287 ysave->yyss = yyss =
2288 (short*)realloc((char*)yyss,yystacksize * sizeof(short));
2291 yyssp = yyss + yyps_index;
2292 yyvsp = yyvs + yypv_index;
2298 yyerror("Out of memory for yacc stack");