1 /* Postprocessed by vms_yfix.pl 1.1 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 40, 0, 7, 5, 8, 6, 9, 9, 9, 10,
20 10, 10, 10, 22, 22, 22, 22, 22, 22, 13,
21 13, 13, 12, 12, 12, 12, 37, 37, 11, 11,
22 11, 11, 11, 11, 11, 11, 11, 24, 24, 25,
23 25, 26, 27, 28, 29, 30, 39, 39, 1, 1,
24 1, 1, 3, 3, 41, 41, 36, 36, 4, 42,
25 42, 43, 14, 14, 14, 23, 23, 23, 34, 34,
26 34, 34, 34, 34, 34, 34, 35, 35, 15, 15,
27 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
28 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
29 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
30 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
31 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
32 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
33 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
34 15, 15, 31, 31, 32, 32, 32, 2, 2, 38,
35 21, 16, 17, 18, 19, 20, 33, 33, 33, 33,
37 dEXT short yylen[] = { 2,
38 0, 2, 4, 0, 4, 0, 0, 2, 2, 2,
39 1, 2, 3, 1, 1, 3, 3, 3, 3, 0,
40 2, 6, 7, 7, 4, 4, 0, 2, 8, 8,
41 5, 5, 10, 9, 8, 11, 3, 0, 1, 0,
42 1, 1, 1, 1, 1, 1, 0, 1, 1, 1,
43 1, 1, 4, 3, 5, 5, 0, 1, 0, 3,
44 2, 6, 3, 3, 1, 2, 3, 1, 3, 5,
45 6, 3, 5, 2, 4, 4, 1, 1, 3, 3,
46 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
47 5, 3, 2, 2, 2, 2, 2, 2, 2, 2,
48 2, 2, 3, 2, 3, 2, 4, 3, 4, 1,
49 5, 1, 4, 5, 4, 1, 1, 1, 5, 6,
50 5, 6, 5, 4, 5, 1, 1, 3, 4, 3,
51 2, 2, 4, 5, 4, 5, 1, 2, 2, 1,
52 2, 2, 2, 1, 3, 1, 3, 4, 4, 6,
53 1, 1, 0, 1, 0, 1, 2, 1, 1, 1,
54 2, 2, 2, 2, 2, 2, 1, 1, 1, 1,
56 dEXT short yydefred[] = { 1,
57 0, 7, 0, 48, 59, 59, 0, 59, 8, 49,
58 9, 11, 0, 50, 51, 52, 0, 0, 0, 61,
59 0, 14, 4, 151, 0, 0, 126, 0, 146, 0,
60 59, 59, 0, 0, 0, 0, 0, 0, 0, 0,
61 0, 0, 0, 0, 0, 0, 0, 158, 159, 0,
62 0, 0, 0, 0, 0, 0, 0, 12, 0, 0,
63 0, 0, 0, 0, 0, 0, 0, 10, 0, 0,
64 0, 0, 116, 118, 0, 0, 0, 0, 152, 0,
65 54, 0, 60, 0, 7, 167, 170, 169, 168, 0,
66 0, 0, 0, 0, 0, 4, 0, 4, 0, 4,
67 0, 4, 0, 4, 4, 0, 0, 0, 0, 0,
68 141, 0, 0, 0, 0, 74, 0, 165, 0, 132,
69 0, 0, 0, 0, 0, 161, 0, 0, 0, 0,
70 0, 0, 0, 0, 0, 0, 106, 0, 162, 163,
71 164, 166, 0, 0, 37, 0, 0, 0, 0, 0,
72 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
73 0, 0, 0, 0, 0, 0, 98, 99, 0, 0,
74 0, 0, 0, 0, 0, 0, 13, 0, 53, 58,
75 0, 0, 0, 72, 0, 0, 0, 0, 0, 0,
76 0, 0, 0, 0, 0, 0, 0, 0, 4, 145,
77 147, 0, 0, 0, 0, 0, 0, 0, 108, 0,
78 130, 0, 0, 105, 28, 0, 0, 19, 0, 0,
79 0, 63, 0, 0, 0, 0, 0, 0, 0, 0,
80 0, 0, 0, 0, 0, 0, 0, 0, 77, 0,
81 78, 0, 0, 0, 0, 0, 0, 0, 128, 0,
82 0, 56, 55, 0, 3, 0, 149, 0, 76, 109,
83 0, 45, 0, 31, 46, 0, 32, 0, 0, 0,
84 0, 25, 0, 26, 160, 0, 0, 39, 44, 0,
85 0, 0, 148, 157, 75, 0, 133, 0, 135, 0,
86 107, 0, 0, 0, 0, 0, 0, 0, 115, 0,
87 113, 0, 124, 0, 129, 62, 73, 0, 0, 0,
88 0, 6, 21, 0, 0, 0, 0, 0, 0, 70,
89 134, 136, 123, 0, 121, 0, 0, 114, 0, 119,
90 125, 111, 150, 0, 0, 0, 7, 0, 0, 0,
91 0, 0, 0, 122, 120, 71, 29, 30, 23, 0,
92 0, 24, 0, 35, 0, 0, 5, 0, 0, 0,
95 dEXT short yydgoto[] = { 1,
96 9, 66, 10, 17, 85, 337, 88, 313, 3, 11,
97 12, 68, 272, 268, 70, 71, 72, 73, 74, 75,
98 76, 278, 78, 279, 262, 265, 269, 281, 263, 266,
99 116, 204, 90, 79, 242, 181, 145, 276, 13, 2,
102 dEXT short yysindex[] = { 0,
103 0, 0, -178, 0, 0, 0, -49, 0, 0, 0,
104 0, 0, 616, 0, 0, 0, -108, -233, 3, 0,
105 -230, 0, 0, 0, -24, -24, 0, 28, 0, 1899,
106 0, 0, -17, -12, -11, -10, -35, 1899, 39, 54,
107 60, 992, 936, -24, 1055, 1319, -217, 0, 0, -24,
108 1899, 1899, 1899, 1899, 1899, 1899, 1375, 0, 1899, 1899,
109 1431, -24, -24, -24, -24, 1899, -161, 0, 277, 3829,
110 -69, -42, 0, 0, -4, 88, 89, 97, 0, 24,
111 0, -107, 0, -105, 0, 0, 0, 0, 0, 1899,
112 114, 1899, 328, 24, -107, 0, 24, 0, 24, 0,
113 24, 0, 24, 0, 0, 115, 3829, 133, 1490, 936,
114 0, 328, 0, -69, 97, 0, 1899, 0, 137, 0,
115 328, -19, 56, 19, 1899, 0, 97, 98, 98, 98,
116 -82, -82, 93, -21, 98, 98, 0, -87, 0, 0,
117 0, 0, 328, 24, 0, 1899, 1899, 1899, 1899, 1899,
118 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899,
119 1899, 1899, 1899, 1899, 1899, 1899, 0, 0, -32, 1899,
120 1899, 1899, 1899, 1899, 1899, 1665, 0, 1899, 0, 0,
121 -8, 1899, 357, 0, 1899, 82, 1899, 24, 1899, -161,
122 1899, -161, 1899, -234, 1899, -234, 144, 1724, 0, 0,
123 0, 4, 11, 138, 1899, 97, 1780, 1836, 0, 61,
124 0, 1899, 96, 0, 0, -176, -176, 0, -176, -176,
125 -95, 0, 21, 1092, 328, 373, 434, 92, 3829, 1204,
126 3238, 3721, 2430, 815, 419, 98, 98, 1899, 0, 1899,
127 0, 173, -80, 55, -68, 57, -54, 68, 0, 6,
128 3829, 0, 0, 157, 0, 178, 0, 1899, 0, 0,
129 -176, 0, 181, 0, 0, 183, 0, -176, 190, 112,
130 209, 0, 231, 0, 0, 210, 277, 0, 0, 237,
131 224, 1899, 0, 0, 0, 9, 0, 15, 0, 17,
132 0, 105, 1899, 163, 1899, 81, 119, 1899, 0, 168,
133 0, 175, 0, 185, 0, 0, 0, 1146, 112, 112,
134 112, 0, 0, 1899, 112, 1899, 112, 1899, 279, 0,
135 0, 0, 0, 143, 0, 3863, 202, 0, 300, 0,
136 0, 0, 0, -161, -161, -234, 0, 321, -234, 326,
137 -161, 309, 112, 0, 0, 0, 0, 0, 0, 398,
138 112, 0, 112, 0, 1724, -161, 0, -234, -161, 336,
141 dEXT short yyrindex[] = { 0,
142 0, 0, 220, 0, 0, 0, 0, 0, 0, 0,
143 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
144 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
145 0, 0, 0, 0, 0, 0, 0, 2159, 1989, 0,
146 0, 2799, 2867, 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, 65, 0, -25, 193,
149 2910, 2954, 0, 0, 2225, 2048, 0, 333, 0, 0,
150 0, 2, 0, 0, 0, 0, 0, 0, 0, 2284,
151 0, 0, 3575, 0, 257, 0, 0, 0, 0, 0,
152 0, 0, 0, 0, 0, 0, 3017, 0, 0, 348,
153 0, 3642, 496, 557, 2395, 0, 0, 0, 2111, 0,
154 3695, 2910, 0, 0, 2284, 0, 2520, 3065, 3103, 3190,
155 659, 2997, 2563, 0, 3301, 3354, 0, 0, 0, 0,
156 0, 0, 3741, 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, 0, 0, 0, 2631, 0, 0,
160 0, 331, 880, 0, 348, 0, 2284, 0, 352, 65,
161 0, 65, 0, 164, 0, 164, 0, 338, 0, 0,
162 0, 0, 358, 0, 0, 2674, 0, 0, 0, 0,
163 0, 0, 2718, 0, 0, -22, 36, 0, 91, 110,
164 -33, 0, 0, 2573, 1267, 1531, 3476, 3521, 3675, 0,
165 -27, 3826, 3794, 1587, -6, 3392, 3440, 0, 0, 0,
166 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
167 3787, 0, 0, 0, 0, 0, 0, 0, 0, 0,
168 134, 0, 0, 0, 0, 0, 0, 359, 0, 0,
169 0, 0, 0, 0, 0, 0, 155, 0, 0, 0,
170 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
171 0, 0, 0, 0, 0, 0, 0, 348, 0, 0,
172 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
173 0, 0, 0, 0, 0, 0, 0, 349, 0, 0,
174 0, 0, 0, 0, 0, 1953, 0, 0, 0, 0,
175 0, 0, 0, 65, 65, 164, 0, 0, 164, 0,
176 65, 0, 0, 0, 0, 0, 0, 0, 0, 880,
177 0, 0, 0, 0, 368, 65, 0, 164, 65, 0,
180 dEXT short yygindex[] = { 0,
181 0, 0, 0, 136, -29, 0, 4145, 680, -78, 0,
182 0, 0, -193, -13, 3266, 519, 0, 0, 0, 0,
183 0, 400, 885, 0, 0, 267, -196, 63, 124, 250,
184 -16, -167, 20, 0, 0, 320, 356, 0, 0, 0,
187 #define YYTABLESIZE 4333
188 dEXT short yytable[] = { 69,
189 62, 280, 274, 62, 105, 214, 183, 64, 170, 20,
190 64, 62, 299, 90, 23, 15, 90, 256, 18, 213,
191 208, 172, 96, 82, 301, 64, 84, 98, 100, 102,
192 90, 90, 124, 15, 83, 90, 18, 83, 303, 125,
193 152, 270, 271, 134, 283, 91, 305, 138, 174, 320,
194 252, 83, 83, 171, 284, 321, 83, 322, 240, 64,
195 57, 83, 117, 118, 27, 90, 189, 92, 191, 126,
196 193, 172, 195, 184, 197, 198, 42, 210, 108, 294,
197 173, 139, 140, 141, 142, 319, 83, 4, 5, 6,
198 238, 7, 8, 109, 42, 202, 203, 27, 23, 110,
199 27, 27, 27, 171, 27, 23, 27, 27, 211, 27,
200 23, 23, 23, 300, 23, 302, 144, 338, 175, 340,
201 150, 151, 257, 27, 57, 258, 304, 176, 27, 205,
202 329, 16, 216, 217, 219, 220, 221, 222, 223, 327,
203 178, 18, 349, 21, 159, 352, 23, 177, 80, 16,
204 17, 182, 180, 185, 199, 27, 243, 244, 245, 246,
205 247, 248, 250, 20, 362, 254, 94, 95, 17, 282,
206 259, 203, 170, 200, 41, 261, 207, 217, 285, 62,
207 209, 217, 170, 212, 277, 291, 293, 27, 170, 27,
208 27, 286, 41, 288, 290, 43, 20, 323, 292, 20,
209 20, 20, 151, 20, 152, 20, 20, 19, 20, 150,
210 151, 328, 298, 15, 152, 306, 150, 151, 307, 2,
211 152, 309, 20, 310, 296, 239, 297, 20, 150, 151,
212 311, 169, 86, 68, 312, 344, 68, 87, 64, 64,
213 64, 64, 150, 151, 90, 90, 90, 90, 314, 316,
214 68, 68, 47, 90, 20, 47, 47, 47, 350, 47,
215 104, 47, 47, 64, 47, 83, 83, 83, 83, 90,
216 90, 315, 90, 90, 83, 150, 151, 317, 47, 324,
217 83, 83, 318, 47, 203, 68, 20, 325, 20, 20,
218 83, 83, 330, 83, 83, 83, 83, 83, 83, 331,
219 150, 151, 150, 151, 261, 150, 151, 150, 151, 332,
220 47, 150, 151, 150, 151, 150, 151, 150, 151, 343,
221 27, 27, 27, 27, 27, 27, 345, 27, 27, 27,
222 27, 27, 27, 27, 27, 27, 27, 27, 27, 27,
223 346, 69, 47, 27, 27, 47, 27, 27, 27, 27,
224 27, 150, 151, 150, 151, 27, 27, 27, 27, 27,
225 27, 351, 153, 27, 150, 151, 353, 355, 154, 155,
226 156, 157, 27, 65, 27, 27, 364, 150, 151, 57,
227 156, 158, 160, 161, 162, 163, 164, 165, 155, 153,
228 166, 65, 40, 167, 168, 169, 38, 165, 156, 43,
229 166, 150, 151, 167, 168, 169, 166, 40, 38, 167,
230 168, 169, 77, 218, 188, 150, 151, 360, 170, 20,
231 20, 20, 20, 20, 20, 65, 20, 20, 20, 20,
232 20, 20, 20, 20, 20, 20, 20, 20, 20, 150,
233 151, 342, 20, 20, 273, 20, 20, 20, 20, 20,
234 152, 0, 0, 0, 20, 20, 20, 20, 20, 20,
235 0, 0, 20, 170, 68, 68, 68, 68, 0, 0,
236 0, 20, 0, 20, 20, 47, 47, 47, 47, 47,
237 47, 255, 47, 47, 47, 0, 0, 0, 47, 68,
238 68, 47, 47, 47, 47, 152, 0, 0, 47, 47,
239 0, 47, 47, 47, 47, 47, 0, 0, 0, 170,
240 47, 47, 47, 47, 47, 47, 0, 0, 47, 0,
241 0, 0, 357, 0, 170, 0, 0, 47, 167, 47,
242 47, 167, 167, 167, 0, 167, 151, 167, 167, 151,
243 167, 152, 0, 89, 89, 264, 0, 267, 146, 147,
244 148, 149, 0, 151, 151, 106, 152, 0, 151, 167,
245 0, 114, 89, 122, 0, 0, 0, 0, 89, 0,
246 0, 0, 0, 150, 151, 0, 0, 0, 0, 0,
247 89, 89, 89, 89, 0, 0, 151, 0, 151, 168,
248 0, 0, 168, 168, 168, 0, 168, 110, 168, 168,
249 110, 168, 0, 0, 65, 65, 65, 65, 0, 0,
250 0, 0, 0, 0, 110, 110, 156, 157, 151, 110,
251 168, 167, 4, 5, 6, 0, 7, 8, 114, 65,
252 65, 0, 164, 165, 0, 0, 166, 0, 0, 167,
253 168, 169, 0, 0, 0, 0, 0, 0, 52, 110,
254 0, 62, 64, 50, 0, 57, 0, 65, 60, 154,
255 59, 156, 157, 4, 5, 6, 0, 7, 8, 0,
256 0, 0, 0, 0, 58, 0, 0, 164, 165, 63,
257 0, 166, 168, 0, 167, 168, 169, 241, 0, 347,
258 348, 0, 0, 0, 0, 0, 354, 0, 0, 100,
259 0, 0, 100, 0, 0, 0, 61, 156, 157, 0,
260 0, 361, 0, 0, 363, 275, 100, 100, 0, 0,
261 0, 100, 0, 0, 165, 0, 0, 166, 0, 0,
262 167, 168, 169, 0, 0, 0, 0, 0, 23, 165,
263 0, 53, 166, 0, 0, 167, 168, 169, 0, 0,
264 0, 100, 167, 167, 167, 167, 167, 0, 167, 167,
265 167, 0, 0, 0, 167, 0, 0, 151, 151, 151,
266 151, 0, 0, 0, 0, 167, 151, 167, 167, 167,
267 167, 167, 151, 151, 151, 151, 167, 167, 167, 167,
268 167, 167, 151, 151, 167, 151, 151, 151, 151, 151,
269 151, 151, 0, 167, 151, 167, 167, 151, 151, 151,
270 0, 0, 0, 168, 168, 168, 168, 168, 0, 168,
271 168, 168, 0, 0, 0, 168, 0, 0, 110, 110,
272 110, 110, 0, 0, 0, 0, 168, 110, 168, 168,
273 168, 168, 168, 110, 110, 110, 110, 168, 168, 168,
274 168, 168, 168, 110, 110, 168, 110, 110, 110, 110,
275 110, 110, 110, 0, 168, 110, 168, 168, 110, 110,
276 110, 22, 24, 25, 26, 27, 28, 0, 29, 30,
277 31, 0, 0, 0, 32, 0, 0, 33, 34, 35,
278 36, 0, 0, 0, 37, 38, 0, 39, 40, 41,
279 42, 43, 0, 0, 0, 170, 44, 45, 46, 47,
280 48, 49, 47, 0, 51, 47, 47, 47, 0, 47,
281 0, 47, 47, 54, 47, 55, 56, 115, 0, 0,
282 100, 100, 100, 100, 0, 127, 0, 152, 47, 100,
283 0, 0, 0, 47, 0, 100, 100, 100, 100, 0,
284 0, 0, 0, 0, 0, 100, 100, 0, 100, 100,
285 100, 100, 100, 100, 100, 0, 0, 100, 52, 0,
286 47, 62, 64, 50, 115, 57, 0, 65, 60, 0,
287 59, 0, 0, 0, 0, 0, 0, 0, 334, 335,
288 336, 0, 0, 0, 339, 0, 341, 0, 0, 63,
289 0, 206, 47, 0, 0, 47, 0, 0, 0, 115,
290 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
291 0, 0, 356, 0, 52, 0, 61, 62, 64, 50,
292 358, 57, 359, 65, 60, 0, 59, 0, 0, 0,
293 0, 0, 0, 365, 0, 0, 0, 0, 0, 0,
294 0, 0, 0, 0, 0, 63, 0, 0, 23, 0,
295 0, 53, 0, 0, 0, 0, 115, 0, 0, 0,
296 0, 115, 0, 0, 0, 0, 0, 0, 0, 0,
297 0, 0, 61, 0, 0, 0, 0, 52, 0, 0,
298 62, 64, 50, 0, 57, 0, 65, 60, 0, 59,
299 0, 154, 155, 156, 157, 0, 0, 0, 0, 0,
300 0, 0, 0, 0, 23, 0, 0, 53, 63, 164,
301 165, 0, 0, 166, 0, 0, 167, 168, 169, 0,
302 0, 0, 0, 0, 0, 47, 47, 47, 47, 47,
303 47, 0, 47, 47, 47, 61, 0, 0, 47, 0,
304 0, 47, 47, 47, 47, 0, 0, 0, 47, 47,
305 0, 47, 47, 47, 47, 47, 0, 0, 0, 0,
306 47, 47, 47, 47, 47, 47, 0, 23, 47, 0,
307 53, 0, 170, 0, 0, 0, 333, 47, 0, 47,
308 47, 0, 113, 25, 26, 27, 28, 87, 29, 30,
309 31, 0, 0, 0, 32, 0, 0, 0, 159, 0,
310 0, 0, 0, 0, 152, 38, 0, 39, 40, 41,
311 42, 43, 0, 0, 0, 0, 44, 45, 46, 47,
312 48, 49, 0, 0, 51, 0, 170, 0, 0, 0,
313 0, 0, 0, 54, 0, 55, 56, 0, 24, 25,
314 26, 27, 28, 0, 29, 30, 31, 0, 0, 0,
315 32, 295, 0, 0, 0, 0, 159, 0, 152, 0,
316 0, 38, 0, 39, 40, 41, 42, 43, 0, 0,
317 0, 0, 44, 45, 46, 47, 48, 49, 0, 0,
318 51, 0, 0, 0, 170, 0, 0, 0, 0, 54,
319 0, 55, 56, 0, 0, 0, 0, 84, 0, 0,
320 84, 119, 25, 26, 27, 28, 0, 29, 30, 31,
321 0, 0, 0, 32, 84, 84, 152, 0, 0, 84,
322 0, 0, 0, 0, 38, 0, 39, 40, 41, 42,
323 43, 0, 0, 0, 0, 44, 45, 46, 47, 48,
324 49, 52, 0, 51, 62, 64, 50, 0, 57, 84,
325 65, 60, 54, 59, 55, 56, 0, 0, 0, 0,
326 0, 0, 0, 0, 0, 0, 0, 123, 154, 155,
327 156, 157, 63, 0, 0, 0, 0, 0, 0, 0,
328 0, 0, 160, 161, 162, 163, 164, 165, 0, 0,
329 166, 0, 0, 167, 168, 169, 0, 52, 0, 61,
330 62, 64, 50, 0, 57, 133, 65, 60, 0, 59,
331 0, 0, 0, 0, 0, 0, 153, 0, 0, 0,
332 0, 0, 154, 155, 156, 157, 0, 0, 63, 0,
333 0, 0, 0, 0, 53, 158, 160, 161, 162, 163,
334 164, 165, 0, 0, 166, 0, 0, 167, 168, 169,
335 0, 0, 0, 52, 0, 61, 62, 64, 50, 0,
336 57, 0, 65, 60, 0, 59, 0, 0, 0, 0,
337 0, 0, 0, 0, 153, 0, 0, 0, 0, 0,
338 154, 155, 156, 157, 63, 0, 0, 0, 0, 0,
339 53, 0, 0, 158, 160, 161, 162, 163, 164, 165,
340 0, 0, 166, 0, 0, 167, 168, 169, 0, 0,
341 0, 61, 52, 137, 0, 62, 64, 50, 0, 57,
342 201, 65, 60, 0, 59, 0, 0, 0, 84, 84,
343 84, 84, 0, 0, 0, 0, 0, 84, 0, 0,
344 0, 0, 0, 63, 84, 0, 53, 0, 0, 0,
345 0, 0, 0, 84, 84, 0, 84, 84, 84, 84,
346 84, 85, 0, 0, 85, 24, 25, 26, 27, 28,
347 61, 29, 30, 31, 0, 0, 0, 32, 85, 85,
348 0, 0, 0, 85, 0, 0, 0, 0, 38, 0,
349 39, 40, 41, 42, 43, 0, 0, 0, 0, 44,
350 45, 46, 47, 48, 49, 53, 0, 51, 0, 0,
351 0, 0, 0, 85, 0, 0, 54, 86, 55, 56,
352 86, 24, 25, 26, 27, 28, 0, 29, 30, 31,
353 0, 0, 0, 32, 86, 86, 0, 0, 0, 86,
354 0, 0, 0, 0, 38, 0, 39, 40, 41, 42,
355 43, 0, 0, 0, 0, 44, 45, 46, 47, 48,
356 49, 0, 0, 51, 0, 0, 0, 0, 0, 86,
357 0, 0, 54, 0, 55, 56, 0, 24, 25, 26,
358 27, 28, 0, 29, 30, 31, 0, 52, 0, 32,
359 62, 64, 50, 0, 57, 249, 65, 60, 0, 59,
360 38, 0, 39, 40, 41, 42, 43, 0, 0, 0,
361 0, 44, 45, 46, 47, 48, 49, 0, 63, 51,
362 0, 0, 0, 0, 0, 0, 0, 0, 54, 0,
363 55, 56, 0, 0, 0, 0, 24, 25, 26, 27,
364 28, 0, 29, 30, 31, 61, 52, 0, 32, 62,
365 64, 50, 0, 57, 0, 65, 60, 0, 59, 38,
366 0, 39, 40, 41, 42, 43, 0, 0, 0, 0,
367 44, 45, 46, 47, 48, 49, 0, 63, 51, 0,
368 53, 0, 0, 0, 0, 0, 0, 54, 0, 55,
369 56, 0, 85, 85, 85, 85, 0, 0, 0, 0,
370 0, 85, 52, 0, 61, 62, 64, 50, 0, 57,
371 287, 65, 60, 0, 59, 0, 0, 85, 85, 0,
372 85, 85, 85, 85, 85, 0, 0, 0, 0, 0,
373 0, 0, 0, 63, 0, 0, 0, 0, 0, 53,
374 0, 0, 0, 0, 0, 0, 0, 0, 86, 86,
375 86, 86, 0, 0, 0, 0, 0, 86, 52, 0,
376 61, 62, 64, 50, 0, 57, 289, 65, 60, 0,
377 59, 0, 0, 86, 86, 0, 86, 86, 86, 86,
378 86, 0, 0, 0, 0, 0, 0, 0, 0, 63,
379 0, 0, 0, 0, 0, 53, 0, 0, 0, 0,
380 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
381 0, 24, 25, 26, 27, 28, 61, 29, 30, 31,
382 0, 52, 0, 32, 62, 64, 50, 0, 57, 0,
383 65, 60, 0, 59, 38, 0, 39, 40, 41, 42,
384 43, 0, 0, 0, 0, 44, 45, 46, 47, 48,
385 49, 53, 63, 51, 0, 0, 0, 0, 0, 0,
386 0, 0, 54, 0, 55, 56, 0, 0, 0, 22,
387 24, 25, 26, 27, 28, 0, 29, 30, 31, 61,
388 0, 0, 32, 91, 0, 0, 91, 0, 0, 0,
389 0, 0, 0, 38, 0, 39, 40, 41, 42, 43,
390 91, 91, 0, 0, 44, 45, 46, 47, 48, 49,
391 0, 0, 51, 0, 53, 0, 0, 0, 0, 144,
392 0, 54, 144, 55, 56, 0, 24, 25, 26, 27,
393 28, 0, 29, 30, 31, 91, 144, 144, 32, 0,
394 0, 144, 0, 0, 0, 0, 0, 0, 0, 38,
395 0, 39, 40, 41, 42, 43, 0, 0, 0, 0,
396 44, 45, 46, 47, 48, 49, 0, 0, 51, 144,
397 0, 144, 0, 0, 0, 0, 0, 54, 127, 55,
398 56, 127, 24, 25, 26, 27, 28, 0, 29, 30,
399 31, 0, 0, 0, 32, 127, 127, 0, 0, 0,
400 127, 144, 0, 0, 0, 38, 0, 39, 40, 41,
401 42, 43, 0, 0, 0, 0, 44, 45, 46, 47,
402 48, 49, 0, 0, 51, 0, 0, 0, 127, 0,
403 127, 0, 0, 54, 0, 55, 56, 0, 0, 0,
404 0, 151, 0, 0, 151, 24, 25, 26, 27, 28,
405 0, 29, 30, 31, 0, 0, 0, 32, 151, 151,
406 127, 0, 0, 151, 0, 0, 0, 0, 38, 0,
407 39, 40, 41, 42, 43, 0, 0, 0, 0, 44,
408 45, 46, 47, 48, 49, 0, 0, 51, 0, 137,
409 0, 151, 137, 151, 0, 0, 54, 0, 55, 56,
410 0, 0, 0, 0, 0, 0, 137, 137, 0, 0,
411 0, 137, 0, 0, 91, 91, 91, 91, 0, 0,
412 0, 0, 0, 151, 0, 0, 0, 0, 0, 0,
413 0, 0, 0, 0, 0, 0, 0, 0, 0, 91,
414 91, 137, 91, 0, 0, 0, 0, 0, 0, 0,
415 144, 144, 144, 144, 0, 112, 0, 0, 112, 144,
416 0, 0, 0, 0, 0, 144, 144, 144, 144, 0,
417 0, 137, 112, 112, 0, 144, 144, 112, 144, 144,
418 144, 144, 144, 144, 144, 0, 0, 144, 0, 0,
419 144, 144, 144, 0, 0, 0, 0, 0, 0, 0,
420 0, 0, 0, 0, 0, 112, 0, 112, 0, 127,
421 127, 127, 127, 0, 153, 0, 0, 153, 127, 0,
422 0, 0, 0, 0, 127, 127, 127, 127, 0, 0,
423 0, 153, 153, 0, 127, 127, 153, 127, 127, 127,
424 127, 127, 127, 127, 0, 0, 127, 0, 0, 127,
425 127, 127, 0, 0, 0, 0, 0, 0, 0, 0,
426 0, 0, 0, 0, 0, 0, 153, 0, 0, 0,
427 0, 0, 151, 151, 151, 151, 0, 0, 0, 0,
428 0, 151, 0, 0, 0, 0, 0, 151, 151, 151,
429 151, 0, 0, 0, 0, 0, 153, 151, 151, 0,
430 151, 151, 151, 151, 151, 151, 151, 0, 0, 151,
431 0, 0, 151, 151, 151, 0, 0, 0, 0, 0,
432 137, 137, 137, 137, 0, 154, 0, 0, 0, 137,
433 0, 0, 0, 0, 0, 137, 137, 137, 137, 0,
434 0, 0, 154, 154, 0, 137, 137, 154, 137, 137,
435 137, 137, 137, 137, 137, 0, 0, 137, 0, 0,
436 137, 137, 137, 0, 0, 0, 0, 0, 0, 0,
437 0, 0, 0, 0, 0, 154, 0, 154, 0, 0,
438 0, 0, 0, 0, 0, 0, 112, 112, 112, 112,
439 0, 0, 0, 0, 0, 112, 0, 0, 0, 0,
440 0, 112, 112, 112, 112, 0, 0, 154, 0, 0,
441 170, 112, 112, 0, 112, 112, 112, 112, 112, 112,
442 112, 0, 0, 112, 0, 0, 112, 112, 112, 0,
443 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
444 0, 0, 152, 0, 0, 153, 153, 153, 153, 0,
445 139, 0, 0, 0, 153, 0, 0, 0, 0, 0,
446 153, 153, 153, 153, 0, 0, 0, 139, 139, 0,
447 153, 153, 139, 153, 153, 153, 153, 153, 153, 153,
448 0, 0, 153, 0, 0, 153, 153, 153, 0, 0,
449 0, 0, 0, 104, 0, 0, 104, 0, 0, 0,
450 139, 0, 139, 88, 0, 0, 88, 0, 0, 0,
451 104, 104, 0, 0, 0, 104, 0, 0, 0, 0,
452 88, 88, 0, 0, 0, 88, 0, 0, 0, 0,
453 0, 0, 139, 0, 0, 0, 0, 0, 0, 0,
454 0, 0, 0, 0, 0, 104, 0, 0, 0, 0,
455 0, 0, 0, 0, 0, 88, 154, 154, 154, 154,
456 0, 66, 0, 0, 66, 154, 0, 0, 0, 0,
457 0, 154, 154, 154, 154, 104, 0, 0, 66, 66,
458 0, 154, 154, 66, 154, 154, 154, 154, 154, 154,
459 154, 0, 0, 154, 0, 0, 154, 154, 154, 0,
460 0, 0, 0, 0, 69, 0, 154, 155, 156, 157,
461 0, 0, 0, 66, 0, 0, 0, 0, 0, 0,
462 0, 69, 69, 163, 164, 165, 69, 0, 166, 0,
463 0, 167, 168, 169, 0, 0, 0, 0, 0, 0,
464 0, 0, 0, 66, 0, 0, 0, 0, 103, 0,
465 0, 103, 0, 0, 69, 0, 69, 0, 0, 0,
466 0, 0, 0, 0, 0, 103, 103, 0, 0, 0,
467 103, 0, 0, 0, 0, 0, 0, 0, 0, 0,
468 0, 139, 139, 139, 139, 0, 69, 0, 0, 0,
469 139, 0, 0, 0, 0, 0, 139, 139, 139, 139,
470 103, 0, 0, 0, 0, 0, 139, 139, 0, 139,
471 139, 139, 139, 139, 139, 139, 0, 0, 139, 0,
472 0, 139, 139, 139, 104, 104, 104, 104, 0, 140,
473 103, 0, 140, 104, 88, 88, 88, 88, 0, 104,
474 104, 104, 104, 0, 0, 0, 140, 140, 0, 104,
475 104, 140, 104, 104, 104, 104, 104, 104, 104, 88,
476 88, 104, 88, 0, 104, 104, 104, 0, 0, 0,
477 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
478 0, 140, 0, 0, 0, 0, 0, 0, 0, 0,
479 0, 0, 66, 66, 66, 66, 0, 153, 0, 0,
480 153, 66, 0, 0, 0, 0, 0, 66, 66, 66,
481 66, 0, 0, 0, 153, 153, 0, 66, 66, 153,
482 66, 66, 66, 66, 66, 66, 66, 0, 0, 66,
483 0, 0, 66, 66, 66, 69, 69, 69, 69, 0,
484 110, 0, 0, 110, 69, 0, 0, 0, 0, 153,
485 69, 69, 69, 69, 0, 0, 0, 110, 110, 0,
486 69, 69, 110, 69, 69, 69, 69, 69, 69, 69,
487 0, 0, 69, 0, 0, 69, 69, 69, 0, 103,
488 103, 103, 103, 0, 117, 0, 0, 117, 103, 0,
489 0, 0, 110, 0, 103, 103, 103, 103, 0, 0,
490 0, 117, 117, 0, 103, 103, 117, 103, 103, 103,
491 103, 103, 103, 103, 0, 0, 103, 0, 0, 103,
492 103, 103, 0, 0, 0, 0, 0, 101, 0, 0,
493 101, 0, 0, 0, 0, 0, 117, 0, 0, 0,
494 0, 0, 0, 0, 101, 101, 0, 138, 0, 101,
495 138, 0, 0, 0, 0, 0, 0, 0, 0, 0,
496 140, 140, 140, 140, 138, 138, 0, 0, 0, 140,
497 0, 0, 0, 0, 0, 140, 140, 140, 140, 101,
498 0, 0, 0, 0, 0, 140, 140, 0, 140, 140,
499 140, 140, 140, 140, 140, 95, 0, 140, 95, 138,
500 140, 140, 140, 0, 0, 0, 0, 0, 0, 0,
501 0, 0, 95, 95, 0, 0, 0, 95, 0, 0,
502 0, 0, 0, 0, 0, 0, 0, 0, 153, 153,
503 153, 153, 0, 96, 0, 0, 96, 153, 0, 0,
504 0, 0, 0, 153, 153, 153, 153, 95, 0, 0,
505 96, 96, 0, 153, 153, 96, 153, 153, 153, 153,
506 153, 153, 153, 0, 0, 153, 0, 0, 153, 153,
507 153, 110, 110, 110, 110, 0, 0, 0, 0, 0,
508 110, 0, 0, 0, 0, 96, 110, 110, 110, 110,
509 0, 0, 0, 0, 0, 0, 110, 110, 0, 110,
510 110, 110, 110, 110, 110, 110, 0, 0, 110, 0,
511 0, 110, 110, 110, 0, 117, 117, 117, 117, 0,
512 97, 0, 0, 97, 117, 0, 0, 0, 0, 0,
513 117, 117, 117, 117, 0, 0, 0, 97, 97, 0,
514 117, 117, 97, 117, 117, 117, 117, 117, 117, 117,
515 0, 0, 117, 0, 0, 117, 117, 117, 101, 101,
516 101, 101, 0, 0, 0, 0, 0, 101, 0, 0,
517 0, 0, 97, 101, 101, 101, 101, 0, 138, 138,
518 138, 138, 0, 101, 101, 93, 101, 101, 101, 101,
519 101, 101, 101, 107, 0, 101, 0, 112, 0, 0,
520 121, 0, 0, 138, 138, 0, 0, 128, 129, 130,
521 131, 132, 0, 0, 135, 136, 0, 0, 170, 0,
522 0, 143, 0, 0, 0, 0, 95, 95, 95, 95,
523 0, 93, 0, 0, 93, 95, 0, 0, 0, 0,
524 0, 95, 95, 95, 95, 0, 0, 186, 93, 93,
525 152, 95, 95, 93, 95, 95, 95, 95, 95, 95,
526 95, 0, 0, 0, 96, 96, 96, 96, 0, 0,
527 0, 0, 0, 96, 0, 0, 0, 0, 0, 96,
528 96, 96, 96, 93, 94, 0, 0, 94, 0, 96,
529 96, 0, 96, 96, 96, 96, 96, 96, 96, 0,
530 0, 94, 94, 0, 0, 0, 94, 0, 224, 225,
531 226, 227, 228, 229, 230, 231, 232, 233, 234, 235,
532 236, 237, 92, 0, 0, 92, 0, 0, 0, 0,
533 0, 0, 0, 251, 0, 0, 94, 0, 0, 92,
534 92, 0, 0, 0, 92, 0, 0, 0, 0, 0,
535 0, 97, 97, 97, 97, 0, 0, 0, 0, 0,
536 97, 0, 0, 0, 0, 0, 97, 97, 97, 97,
537 80, 0, 0, 80, 92, 0, 97, 97, 0, 97,
538 97, 97, 97, 97, 97, 97, 0, 80, 80, 0,
539 0, 0, 80, 0, 0, 0, 0, 0, 0, 0,
540 0, 0, 0, 0, 0, 0, 81, 0, 0, 81,
541 0, 0, 0, 308, 154, 155, 156, 157, 0, 0,
542 0, 0, 80, 81, 81, 0, 0, 0, 81, 161,
543 162, 163, 164, 165, 0, 0, 166, 0, 0, 167,
544 168, 169, 0, 0, 0, 0, 0, 0, 0, 0,
545 326, 82, 0, 0, 82, 0, 0, 0, 81, 0,
546 0, 0, 93, 93, 93, 93, 0, 0, 82, 82,
547 0, 93, 0, 82, 0, 0, 0, 93, 93, 93,
548 93, 0, 0, 0, 0, 0, 0, 93, 93, 0,
549 93, 93, 93, 93, 93, 93, 93, 0, 0, 0,
550 0, 0, 0, 82, 0, 143, 0, 0, 143, 0,
551 0, 0, 0, 0, 0, 94, 94, 94, 94, 0,
552 0, 0, 143, 143, 94, 0, 0, 143, 0, 0,
553 94, 94, 94, 94, 0, 0, 0, 0, 0, 0,
554 94, 94, 0, 94, 94, 94, 94, 94, 94, 94,
555 0, 0, 0, 92, 92, 92, 92, 143, 0, 0,
556 0, 0, 92, 0, 0, 0, 0, 0, 92, 92,
557 92, 92, 142, 0, 0, 142, 0, 0, 92, 92,
558 0, 92, 92, 92, 92, 92, 92, 92, 0, 142,
559 142, 0, 0, 0, 142, 0, 0, 0, 0, 0,
560 0, 80, 80, 80, 80, 79, 0, 0, 79, 0,
561 80, 0, 0, 0, 0, 0, 80, 80, 80, 80,
562 0, 0, 79, 79, 142, 131, 80, 80, 131, 80,
563 80, 80, 80, 80, 80, 80, 0, 81, 81, 81,
564 81, 0, 131, 131, 0, 0, 81, 131, 0, 0,
565 0, 0, 81, 81, 81, 81, 0, 79, 0, 0,
566 0, 0, 81, 81, 0, 81, 81, 81, 81, 81,
567 81, 102, 0, 0, 102, 0, 0, 131, 0, 0,
568 0, 0, 82, 82, 82, 82, 0, 0, 102, 102,
569 0, 82, 0, 102, 0, 0, 0, 82, 82, 0,
570 82, 170, 0, 0, 0, 0, 0, 82, 82, 0,
571 82, 82, 82, 82, 82, 82, 0, 67, 0, 0,
572 67, 0, 0, 102, 87, 0, 0, 87, 0, 0,
573 0, 0, 0, 152, 67, 67, 143, 143, 143, 143,
574 0, 87, 87, 0, 0, 143, 87, 0, 0, 0,
575 0, 143, 143, 0, 0, 0, 89, 0, 0, 89,
576 0, 143, 143, 0, 143, 143, 143, 143, 143, 67,
577 0, 0, 0, 89, 89, 0, 87, 0, 89, 0,
578 0, 159, 0, 0, 0, 0, 0, 0, 0, 0,
579 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
580 0, 0, 0, 142, 142, 142, 142, 0, 89, 170,
581 0, 0, 142, 0, 0, 159, 0, 0, 142, 142,
582 0, 0, 0, 0, 0, 0, 0, 0, 142, 142,
583 0, 142, 142, 142, 142, 142, 79, 79, 79, 79,
584 0, 152, 0, 170, 0, 0, 0, 0, 0, 0,
585 0, 0, 0, 0, 0, 0, 131, 131, 131, 131,
586 0, 79, 79, 0, 0, 131, 0, 0, 0, 0,
587 0, 131, 131, 0, 0, 152, 0, 0, 0, 0,
588 0, 131, 131, 0, 131, 131, 131, 131, 131, 0,
589 0, 0, 0, 0, 0, 0, 0, 154, 155, 156,
590 157, 0, 102, 102, 102, 102, 0, 0, 0, 0,
591 0, 102, 0, 162, 163, 164, 165, 102, 102, 166,
592 0, 0, 167, 168, 169, 0, 0, 102, 102, 0,
593 102, 102, 102, 102, 102, 0, 0, 0, 0, 0,
594 0, 0, 0, 0, 0, 0, 0, 0, 67, 67,
595 67, 67, 0, 0, 0, 87, 87, 87, 87, 0,
596 0, 0, 0, 0, 87, 0, 0, 0, 0, 0,
597 0, 0, 0, 67, 67, 0, 0, 0, 0, 0,
598 87, 87, 0, 87, 87, 87, 87, 89, 89, 89,
599 89, 0, 0, 0, 0, 0, 89, 0, 0, 153,
600 0, 0, 0, 0, 0, 154, 155, 156, 157, 0,
601 0, 0, 89, 89, 0, 89, 89, 89, 158, 160,
602 161, 162, 163, 164, 165, 0, 0, 166, 0, 0,
603 167, 168, 169, 153, 0, 0, 0, 0, 0, 154,
604 155, 156, 157, 0, 0, 0, 0, 67, 0, 0,
605 0, 81, 0, 160, 161, 162, 163, 164, 165, 0,
606 0, 166, 0, 0, 167, 168, 169, 97, 99, 101,
607 103, 0, 0, 0, 0, 0, 111, 0, 0, 120,
608 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
609 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
610 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
611 0, 0, 0, 0, 179, 0, 0, 0, 0, 0,
612 0, 0, 0, 0, 0, 0, 0, 0, 187, 0,
613 0, 190, 0, 192, 0, 194, 0, 196, 0, 0,
614 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
615 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
616 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
617 0, 0, 0, 0, 0, 0, 0, 0, 215, 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, 253, 0, 0, 0, 0,
624 dEXT short yycheck[] = { 13,
625 36, 198, 196, 36, 40, 93, 85, 41, 91, 59,
626 44, 36, 93, 41, 123, 41, 44, 185, 41, 41,
627 40, 91, 40, 257, 93, 59, 257, 40, 40, 40,
628 58, 59, 46, 59, 41, 63, 59, 44, 93, 257,
629 123, 276, 277, 57, 41, 26, 41, 61, 91, 41,
630 59, 58, 59, 123, 44, 41, 63, 41, 91, 93,
631 59, 59, 43, 44, 0, 93, 96, 40, 98, 50,
632 100, 91, 102, 90, 104, 105, 41, 59, 40, 59,
633 123, 62, 63, 64, 65, 282, 93, 266, 267, 268,
634 123, 270, 271, 40, 59, 109, 110, 33, 123, 40,
635 36, 37, 38, 123, 40, 123, 42, 43, 125, 45,
636 123, 123, 123, 59, 123, 59, 278, 314, 123, 316,
637 297, 298, 41, 59, 123, 44, 59, 40, 64, 110,
638 298, 41, 146, 147, 148, 149, 150, 151, 152, 59,
639 44, 6, 336, 8, 63, 339, 123, 59, 257, 59,
640 41, 257, 260, 40, 40, 91, 170, 171, 172, 173,
641 174, 175, 176, 0, 358, 182, 31, 32, 59, 199,
642 187, 185, 91, 41, 41, 189, 40, 191, 41, 36,
643 125, 195, 91, 91, 198, 125, 91, 123, 91, 125,
644 126, 205, 59, 207, 208, 41, 33, 93, 212, 36,
645 37, 38, 298, 40, 123, 42, 43, 257, 45, 297,
646 298, 93, 40, 59, 123, 59, 297, 298, 41, 0,
647 123, 41, 59, 41, 238, 258, 240, 64, 297, 298,
648 41, 314, 257, 41, 123, 93, 44, 262, 272, 273,
649 274, 275, 297, 298, 272, 273, 274, 275, 40, 40,
650 58, 59, 33, 281, 91, 36, 37, 38, 337, 40,
651 296, 42, 43, 297, 45, 272, 273, 274, 275, 297,
652 298, 41, 300, 301, 281, 297, 298, 41, 59, 293,
653 287, 288, 59, 64, 298, 93, 123, 125, 125, 126,
654 297, 298, 125, 300, 301, 302, 303, 304, 305, 125,
655 297, 298, 297, 298, 318, 297, 298, 297, 298, 125,
656 91, 297, 298, 297, 298, 297, 298, 297, 298, 41,
657 256, 257, 258, 259, 260, 261, 125, 263, 264, 265,
658 266, 267, 268, 269, 270, 271, 272, 273, 274, 275,
659 41, 355, 123, 279, 280, 126, 282, 283, 284, 285,
660 286, 297, 298, 297, 298, 291, 292, 293, 294, 295,
661 296, 41, 281, 299, 297, 298, 41, 59, 287, 288,
662 289, 290, 308, 41, 310, 311, 41, 297, 298, 123,
663 289, 300, 301, 302, 303, 304, 305, 306, 41, 59,
664 309, 59, 41, 312, 313, 314, 59, 306, 41, 41,
665 309, 297, 298, 312, 313, 314, 309, 59, 41, 312,
666 313, 314, 13, 147, 95, 297, 298, 355, 91, 256,
667 257, 258, 259, 260, 261, 93, 263, 264, 265, 266,
668 267, 268, 269, 270, 271, 272, 273, 274, 275, 297,
669 298, 318, 279, 280, 195, 282, 283, 284, 285, 286,
670 123, -1, -1, -1, 291, 292, 293, 294, 295, 296,
671 -1, -1, 299, 91, 272, 273, 274, 275, -1, -1,
672 -1, 308, -1, 310, 311, 256, 257, 258, 259, 260,
673 261, 125, 263, 264, 265, -1, -1, -1, 269, 297,
674 298, 272, 273, 274, 275, 123, -1, -1, 279, 280,
675 -1, 282, 283, 284, 285, 286, -1, -1, -1, 91,
676 291, 292, 293, 294, 295, 296, -1, -1, 299, -1,
677 -1, -1, 125, -1, 91, -1, -1, 308, 33, 310,
678 311, 36, 37, 38, -1, 40, 41, 42, 43, 44,
679 45, 123, -1, 25, 26, 190, -1, 192, 272, 273,
680 274, 275, -1, 58, 59, 37, 123, -1, 63, 64,
681 -1, 43, 44, 45, -1, -1, -1, -1, 50, -1,
682 -1, -1, -1, 297, 298, -1, -1, -1, -1, -1,
683 62, 63, 64, 65, -1, -1, 91, -1, 93, 33,
684 -1, -1, 36, 37, 38, -1, 40, 41, 42, 43,
685 44, 45, -1, -1, 272, 273, 274, 275, -1, -1,
686 -1, -1, -1, -1, 58, 59, 289, 290, 123, 63,
687 64, 126, 266, 267, 268, -1, 270, 271, 110, 297,
688 298, -1, 305, 306, -1, -1, 309, -1, -1, 312,
689 313, 314, -1, -1, -1, -1, -1, -1, 33, 93,
690 -1, 36, 37, 38, -1, 40, -1, 42, 43, 287,
691 45, 289, 290, 266, 267, 268, -1, 270, 271, -1,
692 -1, -1, -1, -1, 59, -1, -1, 305, 306, 64,
693 -1, 309, 126, -1, 312, 313, 314, 169, -1, 334,
694 335, -1, -1, -1, -1, -1, 341, -1, -1, 41,
695 -1, -1, 44, -1, -1, -1, 91, 289, 290, -1,
696 -1, 356, -1, -1, 359, 197, 58, 59, -1, -1,
697 -1, 63, -1, -1, 306, -1, -1, 309, -1, -1,
698 312, 313, 314, -1, -1, -1, -1, -1, 123, 306,
699 -1, 126, 309, -1, -1, 312, 313, 314, -1, -1,
700 -1, 93, 257, 258, 259, 260, 261, -1, 263, 264,
701 265, -1, -1, -1, 269, -1, -1, 272, 273, 274,
702 275, -1, -1, -1, -1, 280, 281, 282, 283, 284,
703 285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
704 295, 296, 297, 298, 299, 300, 301, 302, 303, 304,
705 305, 306, -1, 308, 309, 310, 311, 312, 313, 314,
706 -1, -1, -1, 257, 258, 259, 260, 261, -1, 263,
707 264, 265, -1, -1, -1, 269, -1, -1, 272, 273,
708 274, 275, -1, -1, -1, -1, 280, 281, 282, 283,
709 284, 285, 286, 287, 288, 289, 290, 291, 292, 293,
710 294, 295, 296, 297, 298, 299, 300, 301, 302, 303,
711 304, 305, 306, -1, 308, 309, 310, 311, 312, 313,
712 314, 256, 257, 258, 259, 260, 261, -1, 263, 264,
713 265, -1, -1, -1, 269, -1, -1, 272, 273, 274,
714 275, -1, -1, -1, 279, 280, -1, 282, 283, 284,
715 285, 286, -1, -1, -1, 91, 291, 292, 293, 294,
716 295, 296, 33, -1, 299, 36, 37, 38, -1, 40,
717 -1, 42, 43, 308, 45, 310, 311, 43, -1, -1,
718 272, 273, 274, 275, -1, 51, -1, 123, 59, 281,
719 -1, -1, -1, 64, -1, 287, 288, 289, 290, -1,
720 -1, -1, -1, -1, -1, 297, 298, -1, 300, 301,
721 302, 303, 304, 305, 306, -1, -1, 309, 33, -1,
722 91, 36, 37, 38, 90, 40, -1, 42, 43, -1,
723 45, -1, -1, -1, -1, -1, -1, -1, 309, 310,
724 311, -1, -1, -1, 315, -1, 317, -1, -1, 64,
725 -1, 117, 123, -1, -1, 126, -1, -1, -1, 125,
726 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
727 -1, -1, 343, -1, 33, -1, 91, 36, 37, 38,
728 351, 40, 353, 42, 43, -1, 45, -1, -1, -1,
729 -1, -1, -1, 364, -1, -1, -1, -1, -1, -1,
730 -1, -1, -1, -1, -1, 64, -1, -1, 123, -1,
731 -1, 126, -1, -1, -1, -1, 182, -1, -1, -1,
732 -1, 187, -1, -1, -1, -1, -1, -1, -1, -1,
733 -1, -1, 91, -1, -1, -1, -1, 33, -1, -1,
734 36, 37, 38, -1, 40, -1, 42, 43, -1, 45,
735 -1, 287, 288, 289, 290, -1, -1, -1, -1, -1,
736 -1, -1, -1, -1, 123, -1, -1, 126, 64, 305,
737 306, -1, -1, 309, -1, -1, 312, 313, 314, -1,
738 -1, -1, -1, -1, -1, 256, 257, 258, 259, 260,
739 261, -1, 263, 264, 265, 91, -1, -1, 269, -1,
740 -1, 272, 273, 274, 275, -1, -1, -1, 279, 280,
741 -1, 282, 283, 284, 285, 286, -1, -1, -1, -1,
742 291, 292, 293, 294, 295, 296, -1, 123, 299, -1,
743 126, -1, 91, -1, -1, -1, 41, 308, -1, 310,
744 311, -1, 257, 258, 259, 260, 261, 262, 263, 264,
745 265, -1, -1, -1, 269, -1, -1, -1, 63, -1,
746 -1, -1, -1, -1, 123, 280, -1, 282, 283, 284,
747 285, 286, -1, -1, -1, -1, 291, 292, 293, 294,
748 295, 296, -1, -1, 299, -1, 91, -1, -1, -1,
749 -1, -1, -1, 308, -1, 310, 311, -1, 257, 258,
750 259, 260, 261, -1, 263, 264, 265, -1, -1, -1,
751 269, 58, -1, -1, -1, -1, 63, -1, 123, -1,
752 -1, 280, -1, 282, 283, 284, 285, 286, -1, -1,
753 -1, -1, 291, 292, 293, 294, 295, 296, -1, -1,
754 299, -1, -1, -1, 91, -1, -1, -1, -1, 308,
755 -1, 310, 311, -1, -1, -1, -1, 41, -1, -1,
756 44, 257, 258, 259, 260, 261, -1, 263, 264, 265,
757 -1, -1, -1, 269, 58, 59, 123, -1, -1, 63,
758 -1, -1, -1, -1, 280, -1, 282, 283, 284, 285,
759 286, -1, -1, -1, -1, 291, 292, 293, 294, 295,
760 296, 33, -1, 299, 36, 37, 38, -1, 40, 93,
761 42, 43, 308, 45, 310, 311, -1, -1, -1, -1,
762 -1, -1, -1, -1, -1, -1, -1, 59, 287, 288,
763 289, 290, 64, -1, -1, -1, -1, -1, -1, -1,
764 -1, -1, 301, 302, 303, 304, 305, 306, -1, -1,
765 309, -1, -1, 312, 313, 314, -1, 33, -1, 91,
766 36, 37, 38, -1, 40, 41, 42, 43, -1, 45,
767 -1, -1, -1, -1, -1, -1, 281, -1, -1, -1,
768 -1, -1, 287, 288, 289, 290, -1, -1, 64, -1,
769 -1, -1, -1, -1, 126, 300, 301, 302, 303, 304,
770 305, 306, -1, -1, 309, -1, -1, 312, 313, 314,
771 -1, -1, -1, 33, -1, 91, 36, 37, 38, -1,
772 40, -1, 42, 43, -1, 45, -1, -1, -1, -1,
773 -1, -1, -1, -1, 281, -1, -1, -1, -1, -1,
774 287, 288, 289, 290, 64, -1, -1, -1, -1, -1,
775 126, -1, -1, 300, 301, 302, 303, 304, 305, 306,
776 -1, -1, 309, -1, -1, 312, 313, 314, -1, -1,
777 -1, 91, 33, 93, -1, 36, 37, 38, -1, 40,
778 41, 42, 43, -1, 45, -1, -1, -1, 272, 273,
779 274, 275, -1, -1, -1, -1, -1, 281, -1, -1,
780 -1, -1, -1, 64, 288, -1, 126, -1, -1, -1,
781 -1, -1, -1, 297, 298, -1, 300, 301, 302, 303,
782 304, 41, -1, -1, 44, 257, 258, 259, 260, 261,
783 91, 263, 264, 265, -1, -1, -1, 269, 58, 59,
784 -1, -1, -1, 63, -1, -1, -1, -1, 280, -1,
785 282, 283, 284, 285, 286, -1, -1, -1, -1, 291,
786 292, 293, 294, 295, 296, 126, -1, 299, -1, -1,
787 -1, -1, -1, 93, -1, -1, 308, 41, 310, 311,
788 44, 257, 258, 259, 260, 261, -1, 263, 264, 265,
789 -1, -1, -1, 269, 58, 59, -1, -1, -1, 63,
790 -1, -1, -1, -1, 280, -1, 282, 283, 284, 285,
791 286, -1, -1, -1, -1, 291, 292, 293, 294, 295,
792 296, -1, -1, 299, -1, -1, -1, -1, -1, 93,
793 -1, -1, 308, -1, 310, 311, -1, 257, 258, 259,
794 260, 261, -1, 263, 264, 265, -1, 33, -1, 269,
795 36, 37, 38, -1, 40, 41, 42, 43, -1, 45,
796 280, -1, 282, 283, 284, 285, 286, -1, -1, -1,
797 -1, 291, 292, 293, 294, 295, 296, -1, 64, 299,
798 -1, -1, -1, -1, -1, -1, -1, -1, 308, -1,
799 310, 311, -1, -1, -1, -1, 257, 258, 259, 260,
800 261, -1, 263, 264, 265, 91, 33, -1, 269, 36,
801 37, 38, -1, 40, -1, 42, 43, -1, 45, 280,
802 -1, 282, 283, 284, 285, 286, -1, -1, -1, -1,
803 291, 292, 293, 294, 295, 296, -1, 64, 299, -1,
804 126, -1, -1, -1, -1, -1, -1, 308, -1, 310,
805 311, -1, 272, 273, 274, 275, -1, -1, -1, -1,
806 -1, 281, 33, -1, 91, 36, 37, 38, -1, 40,
807 41, 42, 43, -1, 45, -1, -1, 297, 298, -1,
808 300, 301, 302, 303, 304, -1, -1, -1, -1, -1,
809 -1, -1, -1, 64, -1, -1, -1, -1, -1, 126,
810 -1, -1, -1, -1, -1, -1, -1, -1, 272, 273,
811 274, 275, -1, -1, -1, -1, -1, 281, 33, -1,
812 91, 36, 37, 38, -1, 40, 41, 42, 43, -1,
813 45, -1, -1, 297, 298, -1, 300, 301, 302, 303,
814 304, -1, -1, -1, -1, -1, -1, -1, -1, 64,
815 -1, -1, -1, -1, -1, 126, -1, -1, -1, -1,
816 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
817 -1, 257, 258, 259, 260, 261, 91, 263, 264, 265,
818 -1, 33, -1, 269, 36, 37, 38, -1, 40, -1,
819 42, 43, -1, 45, 280, -1, 282, 283, 284, 285,
820 286, -1, -1, -1, -1, 291, 292, 293, 294, 295,
821 296, 126, 64, 299, -1, -1, -1, -1, -1, -1,
822 -1, -1, 308, -1, 310, 311, -1, -1, -1, 256,
823 257, 258, 259, 260, 261, -1, 263, 264, 265, 91,
824 -1, -1, 269, 41, -1, -1, 44, -1, -1, -1,
825 -1, -1, -1, 280, -1, 282, 283, 284, 285, 286,
826 58, 59, -1, -1, 291, 292, 293, 294, 295, 296,
827 -1, -1, 299, -1, 126, -1, -1, -1, -1, 41,
828 -1, 308, 44, 310, 311, -1, 257, 258, 259, 260,
829 261, -1, 263, 264, 265, 93, 58, 59, 269, -1,
830 -1, 63, -1, -1, -1, -1, -1, -1, -1, 280,
831 -1, 282, 283, 284, 285, 286, -1, -1, -1, -1,
832 291, 292, 293, 294, 295, 296, -1, -1, 299, 91,
833 -1, 93, -1, -1, -1, -1, -1, 308, 41, 310,
834 311, 44, 257, 258, 259, 260, 261, -1, 263, 264,
835 265, -1, -1, -1, 269, 58, 59, -1, -1, -1,
836 63, 123, -1, -1, -1, 280, -1, 282, 283, 284,
837 285, 286, -1, -1, -1, -1, 291, 292, 293, 294,
838 295, 296, -1, -1, 299, -1, -1, -1, 91, -1,
839 93, -1, -1, 308, -1, 310, 311, -1, -1, -1,
840 -1, 41, -1, -1, 44, 257, 258, 259, 260, 261,
841 -1, 263, 264, 265, -1, -1, -1, 269, 58, 59,
842 123, -1, -1, 63, -1, -1, -1, -1, 280, -1,
843 282, 283, 284, 285, 286, -1, -1, -1, -1, 291,
844 292, 293, 294, 295, 296, -1, -1, 299, -1, 41,
845 -1, 91, 44, 93, -1, -1, 308, -1, 310, 311,
846 -1, -1, -1, -1, -1, -1, 58, 59, -1, -1,
847 -1, 63, -1, -1, 272, 273, 274, 275, -1, -1,
848 -1, -1, -1, 123, -1, -1, -1, -1, -1, -1,
849 -1, -1, -1, -1, -1, -1, -1, -1, -1, 297,
850 298, 93, 300, -1, -1, -1, -1, -1, -1, -1,
851 272, 273, 274, 275, -1, 41, -1, -1, 44, 281,
852 -1, -1, -1, -1, -1, 287, 288, 289, 290, -1,
853 -1, 123, 58, 59, -1, 297, 298, 63, 300, 301,
854 302, 303, 304, 305, 306, -1, -1, 309, -1, -1,
855 312, 313, 314, -1, -1, -1, -1, -1, -1, -1,
856 -1, -1, -1, -1, -1, 91, -1, 93, -1, 272,
857 273, 274, 275, -1, 41, -1, -1, 44, 281, -1,
858 -1, -1, -1, -1, 287, 288, 289, 290, -1, -1,
859 -1, 58, 59, -1, 297, 298, 63, 300, 301, 302,
860 303, 304, 305, 306, -1, -1, 309, -1, -1, 312,
861 313, 314, -1, -1, -1, -1, -1, -1, -1, -1,
862 -1, -1, -1, -1, -1, -1, 93, -1, -1, -1,
863 -1, -1, 272, 273, 274, 275, -1, -1, -1, -1,
864 -1, 281, -1, -1, -1, -1, -1, 287, 288, 289,
865 290, -1, -1, -1, -1, -1, 123, 297, 298, -1,
866 300, 301, 302, 303, 304, 305, 306, -1, -1, 309,
867 -1, -1, 312, 313, 314, -1, -1, -1, -1, -1,
868 272, 273, 274, 275, -1, 41, -1, -1, -1, 281,
869 -1, -1, -1, -1, -1, 287, 288, 289, 290, -1,
870 -1, -1, 58, 59, -1, 297, 298, 63, 300, 301,
871 302, 303, 304, 305, 306, -1, -1, 309, -1, -1,
872 312, 313, 314, -1, -1, -1, -1, -1, -1, -1,
873 -1, -1, -1, -1, -1, 91, -1, 93, -1, -1,
874 -1, -1, -1, -1, -1, -1, 272, 273, 274, 275,
875 -1, -1, -1, -1, -1, 281, -1, -1, -1, -1,
876 -1, 287, 288, 289, 290, -1, -1, 123, -1, -1,
877 91, 297, 298, -1, 300, 301, 302, 303, 304, 305,
878 306, -1, -1, 309, -1, -1, 312, 313, 314, -1,
879 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
880 -1, -1, 123, -1, -1, 272, 273, 274, 275, -1,
881 41, -1, -1, -1, 281, -1, -1, -1, -1, -1,
882 287, 288, 289, 290, -1, -1, -1, 58, 59, -1,
883 297, 298, 63, 300, 301, 302, 303, 304, 305, 306,
884 -1, -1, 309, -1, -1, 312, 313, 314, -1, -1,
885 -1, -1, -1, 41, -1, -1, 44, -1, -1, -1,
886 91, -1, 93, 41, -1, -1, 44, -1, -1, -1,
887 58, 59, -1, -1, -1, 63, -1, -1, -1, -1,
888 58, 59, -1, -1, -1, 63, -1, -1, -1, -1,
889 -1, -1, 123, -1, -1, -1, -1, -1, -1, -1,
890 -1, -1, -1, -1, -1, 93, -1, -1, -1, -1,
891 -1, -1, -1, -1, -1, 93, 272, 273, 274, 275,
892 -1, 41, -1, -1, 44, 281, -1, -1, -1, -1,
893 -1, 287, 288, 289, 290, 123, -1, -1, 58, 59,
894 -1, 297, 298, 63, 300, 301, 302, 303, 304, 305,
895 306, -1, -1, 309, -1, -1, 312, 313, 314, -1,
896 -1, -1, -1, -1, 41, -1, 287, 288, 289, 290,
897 -1, -1, -1, 93, -1, -1, -1, -1, -1, -1,
898 -1, 58, 59, 304, 305, 306, 63, -1, 309, -1,
899 -1, 312, 313, 314, -1, -1, -1, -1, -1, -1,
900 -1, -1, -1, 123, -1, -1, -1, -1, 41, -1,
901 -1, 44, -1, -1, 91, -1, 93, -1, -1, -1,
902 -1, -1, -1, -1, -1, 58, 59, -1, -1, -1,
903 63, -1, -1, -1, -1, -1, -1, -1, -1, -1,
904 -1, 272, 273, 274, 275, -1, 123, -1, -1, -1,
905 281, -1, -1, -1, -1, -1, 287, 288, 289, 290,
906 93, -1, -1, -1, -1, -1, 297, 298, -1, 300,
907 301, 302, 303, 304, 305, 306, -1, -1, 309, -1,
908 -1, 312, 313, 314, 272, 273, 274, 275, -1, 41,
909 123, -1, 44, 281, 272, 273, 274, 275, -1, 287,
910 288, 289, 290, -1, -1, -1, 58, 59, -1, 297,
911 298, 63, 300, 301, 302, 303, 304, 305, 306, 297,
912 298, 309, 300, -1, 312, 313, 314, -1, -1, -1,
913 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
914 -1, 93, -1, -1, -1, -1, -1, -1, -1, -1,
915 -1, -1, 272, 273, 274, 275, -1, 41, -1, -1,
916 44, 281, -1, -1, -1, -1, -1, 287, 288, 289,
917 290, -1, -1, -1, 58, 59, -1, 297, 298, 63,
918 300, 301, 302, 303, 304, 305, 306, -1, -1, 309,
919 -1, -1, 312, 313, 314, 272, 273, 274, 275, -1,
920 41, -1, -1, 44, 281, -1, -1, -1, -1, 93,
921 287, 288, 289, 290, -1, -1, -1, 58, 59, -1,
922 297, 298, 63, 300, 301, 302, 303, 304, 305, 306,
923 -1, -1, 309, -1, -1, 312, 313, 314, -1, 272,
924 273, 274, 275, -1, 41, -1, -1, 44, 281, -1,
925 -1, -1, 93, -1, 287, 288, 289, 290, -1, -1,
926 -1, 58, 59, -1, 297, 298, 63, 300, 301, 302,
927 303, 304, 305, 306, -1, -1, 309, -1, -1, 312,
928 313, 314, -1, -1, -1, -1, -1, 41, -1, -1,
929 44, -1, -1, -1, -1, -1, 93, -1, -1, -1,
930 -1, -1, -1, -1, 58, 59, -1, 41, -1, 63,
931 44, -1, -1, -1, -1, -1, -1, -1, -1, -1,
932 272, 273, 274, 275, 58, 59, -1, -1, -1, 281,
933 -1, -1, -1, -1, -1, 287, 288, 289, 290, 93,
934 -1, -1, -1, -1, -1, 297, 298, -1, 300, 301,
935 302, 303, 304, 305, 306, 41, -1, 309, 44, 93,
936 312, 313, 314, -1, -1, -1, -1, -1, -1, -1,
937 -1, -1, 58, 59, -1, -1, -1, 63, -1, -1,
938 -1, -1, -1, -1, -1, -1, -1, -1, 272, 273,
939 274, 275, -1, 41, -1, -1, 44, 281, -1, -1,
940 -1, -1, -1, 287, 288, 289, 290, 93, -1, -1,
941 58, 59, -1, 297, 298, 63, 300, 301, 302, 303,
942 304, 305, 306, -1, -1, 309, -1, -1, 312, 313,
943 314, 272, 273, 274, 275, -1, -1, -1, -1, -1,
944 281, -1, -1, -1, -1, 93, 287, 288, 289, 290,
945 -1, -1, -1, -1, -1, -1, 297, 298, -1, 300,
946 301, 302, 303, 304, 305, 306, -1, -1, 309, -1,
947 -1, 312, 313, 314, -1, 272, 273, 274, 275, -1,
948 41, -1, -1, 44, 281, -1, -1, -1, -1, -1,
949 287, 288, 289, 290, -1, -1, -1, 58, 59, -1,
950 297, 298, 63, 300, 301, 302, 303, 304, 305, 306,
951 -1, -1, 309, -1, -1, 312, 313, 314, 272, 273,
952 274, 275, -1, -1, -1, -1, -1, 281, -1, -1,
953 -1, -1, 93, 287, 288, 289, 290, -1, 272, 273,
954 274, 275, -1, 297, 298, 30, 300, 301, 302, 303,
955 304, 305, 306, 38, -1, 309, -1, 42, -1, -1,
956 45, -1, -1, 297, 298, -1, -1, 52, 53, 54,
957 55, 56, -1, -1, 59, 60, -1, -1, 91, -1,
958 -1, 66, -1, -1, -1, -1, 272, 273, 274, 275,
959 -1, 41, -1, -1, 44, 281, -1, -1, -1, -1,
960 -1, 287, 288, 289, 290, -1, -1, 92, 58, 59,
961 123, 297, 298, 63, 300, 301, 302, 303, 304, 305,
962 306, -1, -1, -1, 272, 273, 274, 275, -1, -1,
963 -1, -1, -1, 281, -1, -1, -1, -1, -1, 287,
964 288, 289, 290, 93, 41, -1, -1, 44, -1, 297,
965 298, -1, 300, 301, 302, 303, 304, 305, 306, -1,
966 -1, 58, 59, -1, -1, -1, 63, -1, 153, 154,
967 155, 156, 157, 158, 159, 160, 161, 162, 163, 164,
968 165, 166, 41, -1, -1, 44, -1, -1, -1, -1,
969 -1, -1, -1, 178, -1, -1, 93, -1, -1, 58,
970 59, -1, -1, -1, 63, -1, -1, -1, -1, -1,
971 -1, 272, 273, 274, 275, -1, -1, -1, -1, -1,
972 281, -1, -1, -1, -1, -1, 287, 288, 289, 290,
973 41, -1, -1, 44, 93, -1, 297, 298, -1, 300,
974 301, 302, 303, 304, 305, 306, -1, 58, 59, -1,
975 -1, -1, 63, -1, -1, -1, -1, -1, -1, -1,
976 -1, -1, -1, -1, -1, -1, 41, -1, -1, 44,
977 -1, -1, -1, 258, 287, 288, 289, 290, -1, -1,
978 -1, -1, 93, 58, 59, -1, -1, -1, 63, 302,
979 303, 304, 305, 306, -1, -1, 309, -1, -1, 312,
980 313, 314, -1, -1, -1, -1, -1, -1, -1, -1,
981 295, 41, -1, -1, 44, -1, -1, -1, 93, -1,
982 -1, -1, 272, 273, 274, 275, -1, -1, 58, 59,
983 -1, 281, -1, 63, -1, -1, -1, 287, 288, 289,
984 290, -1, -1, -1, -1, -1, -1, 297, 298, -1,
985 300, 301, 302, 303, 304, 305, 306, -1, -1, -1,
986 -1, -1, -1, 93, -1, 41, -1, -1, 44, -1,
987 -1, -1, -1, -1, -1, 272, 273, 274, 275, -1,
988 -1, -1, 58, 59, 281, -1, -1, 63, -1, -1,
989 287, 288, 289, 290, -1, -1, -1, -1, -1, -1,
990 297, 298, -1, 300, 301, 302, 303, 304, 305, 306,
991 -1, -1, -1, 272, 273, 274, 275, 93, -1, -1,
992 -1, -1, 281, -1, -1, -1, -1, -1, 287, 288,
993 289, 290, 41, -1, -1, 44, -1, -1, 297, 298,
994 -1, 300, 301, 302, 303, 304, 305, 306, -1, 58,
995 59, -1, -1, -1, 63, -1, -1, -1, -1, -1,
996 -1, 272, 273, 274, 275, 41, -1, -1, 44, -1,
997 281, -1, -1, -1, -1, -1, 287, 288, 289, 290,
998 -1, -1, 58, 59, 93, 41, 297, 298, 44, 300,
999 301, 302, 303, 304, 305, 306, -1, 272, 273, 274,
1000 275, -1, 58, 59, -1, -1, 281, 63, -1, -1,
1001 -1, -1, 287, 288, 289, 290, -1, 93, -1, -1,
1002 -1, -1, 297, 298, -1, 300, 301, 302, 303, 304,
1003 305, 41, -1, -1, 44, -1, -1, 93, -1, -1,
1004 -1, -1, 272, 273, 274, 275, -1, -1, 58, 59,
1005 -1, 281, -1, 63, -1, -1, -1, 287, 288, -1,
1006 290, 91, -1, -1, -1, -1, -1, 297, 298, -1,
1007 300, 301, 302, 303, 304, 305, -1, 41, -1, -1,
1008 44, -1, -1, 93, 41, -1, -1, 44, -1, -1,
1009 -1, -1, -1, 123, 58, 59, 272, 273, 274, 275,
1010 -1, 58, 59, -1, -1, 281, 63, -1, -1, -1,
1011 -1, 287, 288, -1, -1, -1, 41, -1, -1, 44,
1012 -1, 297, 298, -1, 300, 301, 302, 303, 304, 93,
1013 -1, -1, -1, 58, 59, -1, 93, -1, 63, -1,
1014 -1, 63, -1, -1, -1, -1, -1, -1, -1, -1,
1015 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1016 -1, -1, -1, 272, 273, 274, 275, -1, 93, 91,
1017 -1, -1, 281, -1, -1, 63, -1, -1, 287, 288,
1018 -1, -1, -1, -1, -1, -1, -1, -1, 297, 298,
1019 -1, 300, 301, 302, 303, 304, 272, 273, 274, 275,
1020 -1, 123, -1, 91, -1, -1, -1, -1, -1, -1,
1021 -1, -1, -1, -1, -1, -1, 272, 273, 274, 275,
1022 -1, 297, 298, -1, -1, 281, -1, -1, -1, -1,
1023 -1, 287, 288, -1, -1, 123, -1, -1, -1, -1,
1024 -1, 297, 298, -1, 300, 301, 302, 303, 304, -1,
1025 -1, -1, -1, -1, -1, -1, -1, 287, 288, 289,
1026 290, -1, 272, 273, 274, 275, -1, -1, -1, -1,
1027 -1, 281, -1, 303, 304, 305, 306, 287, 288, 309,
1028 -1, -1, 312, 313, 314, -1, -1, 297, 298, -1,
1029 300, 301, 302, 303, 304, -1, -1, -1, -1, -1,
1030 -1, -1, -1, -1, -1, -1, -1, -1, 272, 273,
1031 274, 275, -1, -1, -1, 272, 273, 274, 275, -1,
1032 -1, -1, -1, -1, 281, -1, -1, -1, -1, -1,
1033 -1, -1, -1, 297, 298, -1, -1, -1, -1, -1,
1034 297, 298, -1, 300, 301, 302, 303, 272, 273, 274,
1035 275, -1, -1, -1, -1, -1, 281, -1, -1, 281,
1036 -1, -1, -1, -1, -1, 287, 288, 289, 290, -1,
1037 -1, -1, 297, 298, -1, 300, 301, 302, 300, 301,
1038 302, 303, 304, 305, 306, -1, -1, 309, -1, -1,
1039 312, 313, 314, 281, -1, -1, -1, -1, -1, 287,
1040 288, 289, 290, -1, -1, -1, -1, 13, -1, -1,
1041 -1, 17, -1, 301, 302, 303, 304, 305, 306, -1,
1042 -1, 309, -1, -1, 312, 313, 314, 33, 34, 35,
1043 36, -1, -1, -1, -1, -1, 42, -1, -1, 45,
1044 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1045 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1046 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1047 -1, -1, -1, -1, 80, -1, -1, -1, -1, -1,
1048 -1, -1, -1, -1, -1, -1, -1, -1, 94, -1,
1049 -1, 97, -1, 99, -1, 101, -1, 103, -1, -1,
1050 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1051 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1052 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1053 -1, -1, -1, -1, -1, -1, -1, -1, 144, -1,
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, 181, -1, -1, -1, -1,
1064 #define YYMAXTOKEN 314
1066 dEXT char * yyname[] = {
1067 "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,
1068 "'!'",0,0,"'$'","'%'","'&'",0,"'('","')'","'*'","'+'","','","'-'",0,0,0,0,0,0,0,
1069 0,0,0,0,0,"':'","';'",0,0,0,"'?'","'@'",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1070 0,0,0,0,0,0,"'['",0,"']'",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1071 0,0,"'{'",0,"'}'","'~'",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1072 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1073 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,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,0,0,0,0,0,0,0,0,0,0,0,0,"WORD","METHOD","FUNCMETH","THING",
1075 "PMFUNC","PRIVATEREF","FUNC0SUB","UNIOPSUB","LSTOPSUB","LABEL","FORMAT","SUB",
1076 "ANONSUB","PACKAGE","USE","WHILE","UNTIL","IF","UNLESS","ELSE","ELSIF",
1077 "CONTINUE","FOR","LOOPEX","DOTDOT","FUNC0","FUNC1","FUNC","UNIOP","LSTOP",
1078 "RELOP","EQOP","MULOP","ADDOP","DOLSHARP","DO","HASHBRACK","NOAMP","LOCAL","MY",
1079 "OROP","ANDOP","NOTOP","ASSIGNOP","OROR","ANDAND","BITOROP","BITANDOP",
1080 "SHIFTOP","MATCHOP","UMINUS","REFGEN","POWOP","PREINC","PREDEC","POSTINC",
1083 dEXT char * yyrule[] = {
1086 "prog : $$1 lineseq",
1087 "block : '{' remember lineseq '}'",
1089 "mblock : '{' mremember lineseq '}'",
1092 "lineseq : lineseq decl",
1093 "lineseq : lineseq line",
1094 "line : label cond",
1097 "line : label sideff ';'",
1100 "sideff : expr IF expr",
1101 "sideff : expr UNLESS expr",
1102 "sideff : expr WHILE expr",
1103 "sideff : expr UNTIL iexpr",
1105 "else : ELSE mblock",
1106 "else : ELSIF '(' mexpr ')' mblock else",
1107 "cond : IF '(' remember mexpr ')' mblock else",
1108 "cond : UNLESS '(' remember miexpr ')' mblock else",
1109 "cond : IF block block else",
1110 "cond : UNLESS block block else",
1112 "cont : CONTINUE block",
1113 "loop : label WHILE '(' remember mtexpr ')' mblock cont",
1114 "loop : label UNTIL '(' remember miexpr ')' mblock cont",
1115 "loop : label WHILE block block cont",
1116 "loop : label UNTIL block block cont",
1117 "loop : label FOR MY remember my_scalar '(' mexpr ')' mblock cont",
1118 "loop : label FOR scalar '(' remember mexpr ')' mblock cont",
1119 "loop : label FOR '(' remember mexpr ')' mblock cont",
1120 "loop : label FOR '(' remember mnexpr ';' mtexpr ';' mnexpr ')' mblock",
1121 "loop : label block cont",
1137 "format : FORMAT startsub WORD block",
1138 "format : FORMAT startsub block",
1139 "subrout : SUB startsub WORD proto block",
1140 "subrout : SUB startsub WORD proto ';'",
1144 "package : PACKAGE WORD ';'",
1145 "package : PACKAGE ';'",
1146 "use : USE startsub WORD WORD listexpr ';'",
1147 "expr : expr ANDOP expr",
1148 "expr : expr OROP expr",
1150 "argexpr : argexpr ','",
1151 "argexpr : argexpr ',' term",
1153 "listop : LSTOP indirob argexpr",
1154 "listop : FUNC '(' indirob expr ')'",
1155 "listop : term ARROW method '(' listexprcom ')'",
1156 "listop : METHOD indirob listexpr",
1157 "listop : FUNCMETH indirob '(' listexprcom ')'",
1158 "listop : LSTOP listexpr",
1159 "listop : FUNC '(' listexprcom ')'",
1160 "listop : LSTOPSUB startsub block listexpr",
1163 "term : term ASSIGNOP term",
1164 "term : term POWOP term",
1165 "term : term MULOP term",
1166 "term : term ADDOP term",
1167 "term : term SHIFTOP term",
1168 "term : term RELOP term",
1169 "term : term EQOP term",
1170 "term : term BITANDOP term",
1171 "term : term BITOROP term",
1172 "term : term DOTDOT term",
1173 "term : term ANDAND term",
1174 "term : term OROR term",
1175 "term : term '?' term ':' term",
1176 "term : term MATCHOP term",
1181 "term : REFGEN term",
1182 "term : term POSTINC",
1183 "term : term POSTDEC",
1184 "term : PREINC term",
1185 "term : PREDEC term",
1186 "term : local term",
1187 "term : '(' expr ')'",
1189 "term : '[' expr ']'",
1191 "term : HASHBRACK expr ';' '}'",
1192 "term : HASHBRACK ';' '}'",
1193 "term : ANONSUB startsub proto block",
1195 "term : star '{' expr ';' '}'",
1197 "term : scalar '[' expr ']'",
1198 "term : term ARROW '[' expr ']'",
1199 "term : term '[' expr ']'",
1203 "term : scalar '{' expr ';' '}'",
1204 "term : term ARROW '{' expr ';' '}'",
1205 "term : term '{' expr ';' '}'",
1206 "term : '(' expr ')' '[' expr ']'",
1207 "term : '(' ')' '[' expr ']'",
1208 "term : ary '[' expr ']'",
1209 "term : ary '{' expr ';' '}'",
1212 "term : amper '(' ')'",
1213 "term : amper '(' expr ')'",
1214 "term : NOAMP WORD listexpr",
1217 "term : DO WORD '(' ')'",
1218 "term : DO WORD '(' expr ')'",
1219 "term : DO scalar '(' ')'",
1220 "term : DO scalar '(' expr ')'",
1222 "term : LOOPEX term",
1223 "term : NOTOP argexpr",
1225 "term : UNIOP block",
1226 "term : UNIOP term",
1227 "term : UNIOPSUB term",
1229 "term : FUNC0 '(' ')'",
1231 "term : FUNC1 '(' ')'",
1232 "term : FUNC1 '(' expr ')'",
1233 "term : PMFUNC '(' term ')'",
1234 "term : PMFUNC '(' term ',' term ')'",
1238 "listexpr : argexpr",
1240 "listexprcom : expr",
1241 "listexprcom : expr ','",
1244 "my_scalar : scalar",
1245 "amper : '&' indirob",
1246 "scalar : '$' indirob",
1247 "ary : '@' indirob",
1248 "hsh : '%' indirob",
1249 "arylen : DOLSHARP indirob",
1250 "star : '*' indirob",
1254 "indirob : PRIVATEREF",
1257 #define yyclearin (yychar=(-1))
1258 #define yyerrok (yyerrflag=0)
1261 #define YYMAXDEPTH YYSTACKSIZE
1265 #define YYSTACKSIZE YYMAXDEPTH
1267 #define YYSTACKSIZE 500
1268 #define YYMAXDEPTH 500
1276 dEXT YYSTYPE yylval;
1279 #line 1349 "perly.c"
1280 #define YYABORT goto yyabort
1281 #define YYACCEPT goto yyaccept
1282 #define YYERROR goto yyerrlab
1299 struct ysv* ysave = (struct ysv*)ptr;
1300 if (ysave->yyss) Safefree(ysave->yyss);
1301 if (ysave->yyvs) Safefree(ysave->yyvs);
1302 yydebug = ysave->oldyydebug;
1303 yynerrs = ysave->oldyynerrs;
1304 yyerrflag = ysave->oldyyerrflag;
1305 yychar = ysave->oldyychar;
1306 yyval = ysave->oldyyval;
1307 yylval = ysave->oldyylval;
1314 register int yym, yyn, yystate;
1315 register short *yyssp;
1316 register YYSTYPE *yyvsp;
1319 unsigned yystacksize = YYSTACKSIZE;
1323 extern char *getenv();
1326 struct ysv *ysave = (struct ysv*)safemalloc(sizeof(struct ysv));
1327 SAVEDESTRUCTOR(yydestruct, ysave);
1328 ysave->oldyydebug = yydebug;
1329 ysave->oldyynerrs = yynerrs;
1330 ysave->oldyyerrflag = yyerrflag;
1331 ysave->oldyychar = yychar;
1332 ysave->oldyyval = yyval;
1333 ysave->oldyylval = yylval;
1336 if (yys = getenv("YYDEBUG"))
1339 if (yyn >= '0' && yyn <= '9')
1340 yydebug = yyn - '0';
1349 ** Initialize private stacks (yyparse may be called from an action)
1351 ysave->yyss = yyss = (short*)safemalloc(yystacksize*sizeof(short));
1352 ysave->yyvs = yyvs = (YYSTYPE*)safemalloc(yystacksize*sizeof(YYSTYPE));
1358 *yyssp = yystate = 0;
1361 if (yyn = yydefred[yystate]) goto yyreduce;
1364 if ((yychar = yylex()) < 0) yychar = 0;
1369 if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
1370 if (!yys) yys = "illegal-symbol";
1371 PerlIO_printf(Perl_debug_log, "yydebug: state %d, reading %d (%s)\n", yystate,
1376 if ((yyn = yysindex[yystate]) && (yyn += yychar) >= 0 &&
1377 yyn <= YYTABLESIZE && yycheck[yyn] == yychar)
1381 PerlIO_printf(Perl_debug_log, "yydebug: state %d, shifting to state %d\n",
1382 yystate, yytable[yyn]);
1384 if (yyssp >= yyss + yystacksize - 1)
1387 ** reallocate and recover. Note that pointers
1388 ** have to be reset, or bad things will happen
1390 int yyps_index = (yyssp - yyss);
1391 int yypv_index = (yyvsp - yyvs);
1392 yystacksize += YYSTACKSIZE;
1393 ysave->yyvs = yyvs =
1394 (YYSTYPE*)realloc((char*)yyvs,yystacksize * sizeof(YYSTYPE));
1395 ysave->yyss = yyss =
1396 (short*)realloc((char*)yyss,yystacksize * sizeof(short));
1399 yyssp = yyss + yyps_index;
1400 yyvsp = yyvs + yypv_index;
1402 *++yyssp = yystate = yytable[yyn];
1405 if (yyerrflag > 0) --yyerrflag;
1408 if ((yyn = yyrindex[yystate]) && (yyn += yychar) >= 0 &&
1409 yyn <= YYTABLESIZE && yycheck[yyn] == yychar)
1414 if (yyerrflag) goto yyinrecovery;
1419 yyerror("syntax error");
1431 if ((yyn = yysindex[*yyssp]) && (yyn += YYERRCODE) >= 0 &&
1432 yyn <= YYTABLESIZE && yycheck[yyn] == YYERRCODE)
1436 PerlIO_printf(Perl_debug_log,
1437 "yydebug: state %d, error recovery shifting to state %d\n",
1438 *yyssp, yytable[yyn]);
1440 if (yyssp >= yyss + yystacksize - 1)
1443 ** reallocate and recover. Note that pointers
1444 ** have to be reset, or bad things will happen
1446 int yyps_index = (yyssp - yyss);
1447 int yypv_index = (yyvsp - yyvs);
1448 yystacksize += YYSTACKSIZE;
1449 ysave->yyvs = yyvs = (YYSTYPE*)realloc((char*)yyvs,
1450 yystacksize * sizeof(YYSTYPE));
1451 ysave->yyss = yyss = (short*)realloc((char*)yyss,
1452 yystacksize * sizeof(short));
1455 yyssp = yyss + yyps_index;
1456 yyvsp = yyvs + yypv_index;
1458 *++yyssp = yystate = yytable[yyn];
1466 PerlIO_printf(Perl_debug_log,
1467 "yydebug: error recovery discarding state %d\n",
1470 if (yyssp <= yyss) goto yyabort;
1478 if (yychar == 0) goto yyabort;
1483 if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
1484 if (!yys) yys = "illegal-symbol";
1485 PerlIO_printf(Perl_debug_log,
1486 "yydebug: state %d, error recovery discards token %d (%s)\n",
1487 yystate, yychar, yys);
1496 PerlIO_printf(Perl_debug_log, "yydebug: state %d, reducing by rule %d (%s)\n",
1497 yystate, yyn, yyrule[yyn]);
1500 yyval = yyvsp[1-yym];
1506 #if defined(YYDEBUG) && defined(DEBUGGING)
1507 yydebug = (debug & 1);
1514 { newPROG(yyvsp[0].opval); }
1518 { if (copline > (line_t)yyvsp[-3].ival)
1519 copline = yyvsp[-3].ival;
1520 yyval.opval = block_end(yyvsp[-2].ival, yyvsp[-1].opval); }
1524 { yyval.ival = block_start(TRUE); }
1528 { if (copline > (line_t)yyvsp[-3].ival)
1529 copline = yyvsp[-3].ival;
1530 yyval.opval = block_end(yyvsp[-2].ival, yyvsp[-1].opval); }
1534 { yyval.ival = block_start(FALSE); }
1538 { yyval.opval = Nullop; }
1542 { yyval.opval = yyvsp[-1].opval; }
1546 { yyval.opval = append_list(OP_LINESEQ,
1547 (LISTOP*)yyvsp[-1].opval, (LISTOP*)yyvsp[0].opval);
1548 pad_reset_pending = TRUE;
1549 if (yyvsp[-1].opval && yyvsp[0].opval) hints |= HINT_BLOCK_SCOPE; }
1553 { yyval.opval = newSTATEOP(0, yyvsp[-1].pval, yyvsp[0].opval); }
1557 { if (yyvsp[-1].pval != Nullch) {
1558 yyval.opval = newSTATEOP(0, yyvsp[-1].pval, newOP(OP_NULL, 0));
1561 yyval.opval = Nullop;
1568 { yyval.opval = newSTATEOP(0, yyvsp[-2].pval, yyvsp[-1].opval);
1573 { yyval.opval = Nullop; }
1577 { yyval.opval = yyvsp[0].opval; }
1581 { yyval.opval = newLOGOP(OP_AND, 0, yyvsp[0].opval, yyvsp[-2].opval); }
1585 { yyval.opval = newLOGOP(OP_OR, 0, yyvsp[0].opval, yyvsp[-2].opval); }
1589 { yyval.opval = newLOOPOP(OPf_PARENS, 1, scalar(yyvsp[0].opval), yyvsp[-2].opval); }
1593 { yyval.opval = newLOOPOP(OPf_PARENS, 1, yyvsp[0].opval, yyvsp[-2].opval);}
1597 { yyval.opval = Nullop; }
1601 { yyval.opval = scope(yyvsp[0].opval); }
1605 { copline = yyvsp[-5].ival;
1606 yyval.opval = newSTATEOP(0, Nullch,
1607 newCONDOP(0, yyvsp[-3].opval, scope(yyvsp[-1].opval), yyvsp[0].opval));
1608 hints |= HINT_BLOCK_SCOPE; }
1612 { copline = yyvsp[-6].ival;
1613 yyval.opval = block_end(yyvsp[-4].ival,
1614 newCONDOP(0, yyvsp[-3].opval, scope(yyvsp[-1].opval), yyvsp[0].opval)); }
1618 { copline = yyvsp[-6].ival;
1619 yyval.opval = block_end(yyvsp[-4].ival,
1620 newCONDOP(0, yyvsp[-3].opval, scope(yyvsp[-1].opval), yyvsp[0].opval)); }
1624 { copline = yyvsp[-3].ival;
1625 deprecate("if BLOCK BLOCK");
1626 yyval.opval = newCONDOP(0, scope(yyvsp[-2].opval), scope(yyvsp[-1].opval), yyvsp[0].opval); }
1630 { copline = yyvsp[-3].ival;
1631 deprecate("unless BLOCK BLOCK");
1632 yyval.opval = newCONDOP(0, invert(scalar(scope(yyvsp[-2].opval))),
1633 scope(yyvsp[-1].opval), yyvsp[0].opval); }
1637 { yyval.opval = Nullop; }
1641 { yyval.opval = scope(yyvsp[0].opval); }
1645 { copline = yyvsp[-6].ival;
1646 yyval.opval = block_end(yyvsp[-4].ival,
1647 newSTATEOP(0, yyvsp[-7].pval,
1648 newWHILEOP(0, 1, (LOOP*)Nullop,
1649 yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval))); }
1653 { copline = yyvsp[-6].ival;
1654 yyval.opval = block_end(yyvsp[-4].ival,
1655 newSTATEOP(0, yyvsp[-7].pval,
1656 newWHILEOP(0, 1, (LOOP*)Nullop,
1657 yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval))); }
1661 { copline = yyvsp[-3].ival;
1662 deprecate("while BLOCK BLOCK");
1663 yyval.opval = newSTATEOP(0, yyvsp[-4].pval,
1664 newWHILEOP(0, 1, (LOOP*)Nullop,
1665 scope(yyvsp[-2].opval), yyvsp[-1].opval, yyvsp[0].opval)); }
1669 { copline = yyvsp[-3].ival;
1670 deprecate("until BLOCK BLOCK");
1671 yyval.opval = newSTATEOP(0, yyvsp[-4].pval,
1672 newWHILEOP(0, 1, (LOOP*)Nullop,
1673 invert(scalar(scope(yyvsp[-2].opval))),
1674 yyvsp[-1].opval, yyvsp[0].opval)); }
1678 { yyval.opval = block_end(yyvsp[-6].ival,
1679 newFOROP(0, yyvsp[-9].pval, yyvsp[-8].ival, yyvsp[-5].opval, yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval)); }
1683 { yyval.opval = block_end(yyvsp[-4].ival,
1684 newFOROP(0, yyvsp[-8].pval, yyvsp[-7].ival, mod(yyvsp[-6].opval, OP_ENTERLOOP),
1685 yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval)); }
1689 { yyval.opval = block_end(yyvsp[-4].ival,
1690 newFOROP(0, yyvsp[-7].pval, yyvsp[-6].ival, Nullop, yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval)); }
1694 { copline = yyvsp[-9].ival;
1695 yyval.opval = block_end(yyvsp[-7].ival,
1696 append_elem(OP_LINESEQ, scalar(yyvsp[-6].opval),
1697 newSTATEOP(0, yyvsp[-10].pval,
1698 newWHILEOP(0, 1, (LOOP*)Nullop,
1699 scalar(yyvsp[-4].opval),
1700 yyvsp[0].opval, scalar(yyvsp[-2].opval))))); }
1704 { yyval.opval = newSTATEOP(0,
1705 yyvsp[-2].pval, newWHILEOP(0, 1, (LOOP*)Nullop,
1706 Nullop, yyvsp[-1].opval, yyvsp[0].opval)); }
1710 { yyval.opval = Nullop; }
1714 { (void)scan_num("1"); yyval.opval = yylval.opval; }
1718 { yyval.opval = invert(scalar(yyvsp[0].opval)); }
1722 { yyval.opval = yyvsp[0].opval; intro_my(); }
1726 { yyval.opval = yyvsp[0].opval; intro_my(); }
1730 { yyval.opval = yyvsp[0].opval; intro_my(); }
1734 { yyval.opval = yyvsp[0].opval; intro_my(); }
1738 { yyval.pval = Nullch; }
1758 { newFORM(yyvsp[-2].ival, yyvsp[-1].opval, yyvsp[0].opval); }
1762 { newFORM(yyvsp[-1].ival, Nullop, yyvsp[0].opval); }
1766 { newSUB(yyvsp[-3].ival, yyvsp[-2].opval, yyvsp[-1].opval, yyvsp[0].opval); }
1770 { newSUB(yyvsp[-3].ival, yyvsp[-2].opval, yyvsp[-1].opval, Nullop); expect = XSTATE; }
1774 { yyval.opval = Nullop; }
1778 { yyval.ival = start_subparse(); }
1782 { package(yyvsp[-1].opval); }
1786 { package(Nullop); }
1790 { utilize(yyvsp[-5].ival, yyvsp[-4].ival, yyvsp[-3].opval, yyvsp[-2].opval, yyvsp[-1].opval); }
1794 { yyval.opval = newLOGOP(OP_AND, 0, yyvsp[-2].opval, yyvsp[0].opval); }
1798 { yyval.opval = newLOGOP(yyvsp[-1].ival, 0, yyvsp[-2].opval, yyvsp[0].opval); }
1802 { yyval.opval = yyvsp[-1].opval; }
1806 { yyval.opval = append_elem(OP_LIST, yyvsp[-2].opval, yyvsp[0].opval); }
1810 { yyval.opval = convert(yyvsp[-2].ival, OPf_STACKED,
1811 prepend_elem(OP_LIST, newGVREF(yyvsp[-2].ival,yyvsp[-1].opval), yyvsp[0].opval) ); }
1815 { yyval.opval = convert(yyvsp[-4].ival, OPf_STACKED,
1816 prepend_elem(OP_LIST, newGVREF(yyvsp[-4].ival,yyvsp[-2].opval), yyvsp[-1].opval) ); }
1820 { yyval.opval = convert(OP_ENTERSUB, OPf_STACKED,
1821 append_elem(OP_LIST,
1822 prepend_elem(OP_LIST, scalar(yyvsp[-5].opval), yyvsp[-1].opval),
1823 newUNOP(OP_METHOD, 0, yyvsp[-3].opval))); }
1827 { yyval.opval = convert(OP_ENTERSUB, OPf_STACKED,
1828 append_elem(OP_LIST,
1829 prepend_elem(OP_LIST, yyvsp[-1].opval, yyvsp[0].opval),
1830 newUNOP(OP_METHOD, 0, yyvsp[-2].opval))); }
1834 { yyval.opval = convert(OP_ENTERSUB, OPf_STACKED,
1835 append_elem(OP_LIST,
1836 prepend_elem(OP_LIST, yyvsp[-3].opval, yyvsp[-1].opval),
1837 newUNOP(OP_METHOD, 0, yyvsp[-4].opval))); }
1841 { yyval.opval = convert(yyvsp[-1].ival, 0, yyvsp[0].opval); }
1845 { yyval.opval = convert(yyvsp[-3].ival, 0, yyvsp[-1].opval); }
1849 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
1850 append_elem(OP_LIST,
1851 prepend_elem(OP_LIST, newANONSUB(yyvsp[-2].ival, 0, yyvsp[-1].opval), yyvsp[0].opval),
1852 yyvsp[-3].opval)); }
1856 { yyval.opval = newASSIGNOP(OPf_STACKED, yyvsp[-2].opval, yyvsp[-1].ival, yyvsp[0].opval); }
1860 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1864 { if (yyvsp[-1].ival != OP_REPEAT)
1865 scalar(yyvsp[-2].opval);
1866 yyval.opval = newBINOP(yyvsp[-1].ival, 0, yyvsp[-2].opval, scalar(yyvsp[0].opval)); }
1870 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1874 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1878 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1882 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1886 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1890 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1894 { yyval.opval = newRANGE(yyvsp[-1].ival, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval));}
1898 { yyval.opval = newLOGOP(OP_AND, 0, yyvsp[-2].opval, yyvsp[0].opval); }
1902 { yyval.opval = newLOGOP(OP_OR, 0, yyvsp[-2].opval, yyvsp[0].opval); }
1906 { yyval.opval = newCONDOP(0, yyvsp[-4].opval, yyvsp[-2].opval, yyvsp[0].opval); }
1910 { yyval.opval = bind_match(yyvsp[-1].ival, yyvsp[-2].opval, yyvsp[0].opval); }
1914 { yyval.opval = newUNOP(OP_NEGATE, 0, scalar(yyvsp[0].opval)); }
1918 { yyval.opval = yyvsp[0].opval; }
1922 { yyval.opval = newUNOP(OP_NOT, 0, scalar(yyvsp[0].opval)); }
1926 { yyval.opval = newUNOP(OP_COMPLEMENT, 0, scalar(yyvsp[0].opval));}
1930 { yyval.opval = newUNOP(OP_REFGEN, 0, mod(yyvsp[0].opval,OP_REFGEN)); }
1934 { yyval.opval = newUNOP(OP_POSTINC, 0,
1935 mod(scalar(yyvsp[-1].opval), OP_POSTINC)); }
1939 { yyval.opval = newUNOP(OP_POSTDEC, 0,
1940 mod(scalar(yyvsp[-1].opval), OP_POSTDEC)); }
1944 { yyval.opval = newUNOP(OP_PREINC, 0,
1945 mod(scalar(yyvsp[0].opval), OP_PREINC)); }
1949 { yyval.opval = newUNOP(OP_PREDEC, 0,
1950 mod(scalar(yyvsp[0].opval), OP_PREDEC)); }
1954 { yyval.opval = localize(yyvsp[0].opval,yyvsp[-1].ival); }
1958 { yyval.opval = sawparens(yyvsp[-1].opval); }
1962 { yyval.opval = sawparens(newNULLLIST()); }
1966 { yyval.opval = newANONLIST(yyvsp[-1].opval); }
1970 { yyval.opval = newANONLIST(Nullop); }
1974 { yyval.opval = newANONHASH(yyvsp[-2].opval); }
1978 { yyval.opval = newANONHASH(Nullop); }
1982 { yyval.opval = newANONSUB(yyvsp[-2].ival, yyvsp[-1].opval, yyvsp[0].opval); }
1986 { yyval.opval = yyvsp[0].opval; }
1990 { yyval.opval = newBINOP(OP_GELEM, 0, newGVREF(0,yyvsp[-4].opval), yyvsp[-2].opval); }
1994 { yyval.opval = yyvsp[0].opval; }
1998 { yyval.opval = newBINOP(OP_AELEM, 0, oopsAV(yyvsp[-3].opval), scalar(yyvsp[-1].opval)); }
2002 { yyval.opval = newBINOP(OP_AELEM, 0,
2003 ref(newAVREF(yyvsp[-4].opval),OP_RV2AV),
2004 scalar(yyvsp[-1].opval));}
2008 { assertref(yyvsp[-3].opval); yyval.opval = newBINOP(OP_AELEM, 0,
2009 ref(newAVREF(yyvsp[-3].opval),OP_RV2AV),
2010 scalar(yyvsp[-1].opval));}
2014 { yyval.opval = yyvsp[0].opval; }
2018 { yyval.opval = yyvsp[0].opval; }
2022 { yyval.opval = newUNOP(OP_AV2ARYLEN, 0, ref(yyvsp[0].opval, OP_AV2ARYLEN));}
2026 { yyval.opval = newBINOP(OP_HELEM, 0, oopsHV(yyvsp[-4].opval), jmaybe(yyvsp[-2].opval));
2027 expect = XOPERATOR; }
2031 { yyval.opval = newBINOP(OP_HELEM, 0,
2032 ref(newHVREF(yyvsp[-5].opval),OP_RV2HV),
2033 jmaybe(yyvsp[-2].opval));
2034 expect = XOPERATOR; }
2038 { assertref(yyvsp[-4].opval); yyval.opval = newBINOP(OP_HELEM, 0,
2039 ref(newHVREF(yyvsp[-4].opval),OP_RV2HV),
2040 jmaybe(yyvsp[-2].opval));
2041 expect = XOPERATOR; }
2045 { yyval.opval = newSLICEOP(0, yyvsp[-1].opval, yyvsp[-4].opval); }
2049 { yyval.opval = newSLICEOP(0, yyvsp[-1].opval, Nullop); }
2053 { yyval.opval = prepend_elem(OP_ASLICE,
2054 newOP(OP_PUSHMARK, 0),
2055 newLISTOP(OP_ASLICE, 0,
2056 list(yyvsp[-1].opval),
2057 ref(yyvsp[-3].opval, OP_ASLICE))); }
2061 { yyval.opval = prepend_elem(OP_HSLICE,
2062 newOP(OP_PUSHMARK, 0),
2063 newLISTOP(OP_HSLICE, 0,
2064 list(yyvsp[-2].opval),
2065 ref(oopsHV(yyvsp[-4].opval), OP_HSLICE)));
2066 expect = XOPERATOR; }
2070 { yyval.opval = yyvsp[0].opval; }
2074 { yyval.opval = newUNOP(OP_ENTERSUB, 0, scalar(yyvsp[0].opval)); }
2078 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED, scalar(yyvsp[-2].opval)); }
2082 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2083 append_elem(OP_LIST, yyvsp[-1].opval, scalar(yyvsp[-3].opval))); }
2087 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2088 append_elem(OP_LIST, yyvsp[0].opval, scalar(yyvsp[-1].opval))); }
2092 { yyval.opval = newUNOP(OP_DOFILE, 0, scalar(yyvsp[0].opval)); }
2096 { yyval.opval = newUNOP(OP_NULL, OPf_SPECIAL, scope(yyvsp[0].opval)); }
2100 { yyval.opval = newUNOP(OP_ENTERSUB,
2101 OPf_SPECIAL|OPf_STACKED,
2102 prepend_elem(OP_LIST,
2104 (OPpENTERSUB_AMPER<<8),
2105 scalar(yyvsp[-2].opval)
2106 )),Nullop)); dep();}
2110 { yyval.opval = newUNOP(OP_ENTERSUB,
2111 OPf_SPECIAL|OPf_STACKED,
2112 append_elem(OP_LIST,
2115 (OPpENTERSUB_AMPER<<8),
2116 scalar(yyvsp[-3].opval)
2121 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_SPECIAL|OPf_STACKED,
2122 prepend_elem(OP_LIST,
2123 scalar(newCVREF(0,scalar(yyvsp[-2].opval))), Nullop)); dep();}
2127 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_SPECIAL|OPf_STACKED,
2128 prepend_elem(OP_LIST,
2130 scalar(newCVREF(0,scalar(yyvsp[-3].opval))))); dep();}
2134 { yyval.opval = newOP(yyvsp[0].ival, OPf_SPECIAL);
2135 hints |= HINT_BLOCK_SCOPE; }
2139 { yyval.opval = newLOOPEX(yyvsp[-1].ival,yyvsp[0].opval); }
2143 { yyval.opval = newUNOP(OP_NOT, 0, scalar(yyvsp[0].opval)); }
2147 { yyval.opval = newOP(yyvsp[0].ival, 0); }
2151 { yyval.opval = newUNOP(yyvsp[-1].ival, 0, yyvsp[0].opval); }
2155 { yyval.opval = newUNOP(yyvsp[-1].ival, 0, yyvsp[0].opval); }
2159 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2160 append_elem(OP_LIST, yyvsp[0].opval, scalar(yyvsp[-1].opval))); }
2164 { yyval.opval = newOP(yyvsp[0].ival, 0); }
2168 { yyval.opval = newOP(yyvsp[-2].ival, 0); }
2172 { yyval.opval = newUNOP(OP_ENTERSUB, 0,
2173 scalar(yyvsp[0].opval)); }
2177 { yyval.opval = newOP(yyvsp[-2].ival, OPf_SPECIAL); }
2181 { yyval.opval = newUNOP(yyvsp[-3].ival, 0, yyvsp[-1].opval); }
2185 { yyval.opval = pmruntime(yyvsp[-3].opval, yyvsp[-1].opval, Nullop); }
2189 { yyval.opval = pmruntime(yyvsp[-5].opval, yyvsp[-3].opval, yyvsp[-1].opval); }
2193 { yyval.opval = Nullop; }
2197 { yyval.opval = yyvsp[0].opval; }
2201 { yyval.opval = Nullop; }
2205 { yyval.opval = yyvsp[0].opval; }
2209 { yyval.opval = yyvsp[-1].opval; }
2221 { in_my = 0; yyval.opval = my(yyvsp[0].opval); }
2225 { yyval.opval = newCVREF(yyvsp[-1].ival,yyvsp[0].opval); }
2229 { yyval.opval = newSVREF(yyvsp[0].opval); }
2233 { yyval.opval = newAVREF(yyvsp[0].opval); }
2237 { yyval.opval = newHVREF(yyvsp[0].opval); }
2241 { yyval.opval = newAVREF(yyvsp[0].opval); }
2245 { yyval.opval = newGVREF(0,yyvsp[0].opval); }
2249 { yyval.opval = scalar(yyvsp[0].opval); }
2253 { yyval.opval = scalar(yyvsp[0].opval); }
2257 { yyval.opval = scope(yyvsp[0].opval); }
2261 { yyval.opval = yyvsp[0].opval; }
2263 #line 2249 "perly.c"
2269 if (yystate == 0 && yym == 0)
2273 PerlIO_printf(Perl_debug_log,
2274 "yydebug: after reduction, shifting from state 0 to state %d\n",
2282 if ((yychar = yylex()) < 0) yychar = 0;
2287 if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
2288 if (!yys) yys = "illegal-symbol";
2289 PerlIO_printf(Perl_debug_log, "yydebug: state %d, reading %d (%s)\n",
2290 YYFINAL, yychar, yys);
2294 if (yychar == 0) goto yyaccept;
2297 if ((yyn = yygindex[yym]) && (yyn += yystate) >= 0 &&
2298 yyn <= YYTABLESIZE && yycheck[yyn] == yystate)
2299 yystate = yytable[yyn];
2301 yystate = yydgoto[yym];
2304 PerlIO_printf(Perl_debug_log,
2305 "yydebug: after reduction, shifting from state %d to state %d\n",
2308 if (yyssp >= yyss + yystacksize - 1)
2311 ** reallocate and recover. Note that pointers
2312 ** have to be reset, or bad things will happen
2314 int yyps_index = (yyssp - yyss);
2315 int yypv_index = (yyvsp - yyvs);
2316 yystacksize += YYSTACKSIZE;
2317 ysave->yyvs = yyvs =
2318 (YYSTYPE*)realloc((char*)yyvs,yystacksize * sizeof(YYSTYPE));
2319 ysave->yyss = yyss =
2320 (short*)realloc((char*)yyss,yystacksize * sizeof(short));
2323 yyssp = yyss + yyps_index;
2324 yyvsp = yyvs + yypv_index;
2330 yyerror("Out of memory for yacc stack");