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");
17 dEXT short yylhs[] = { -1,
18 31, 0, 5, 3, 6, 6, 6, 7, 7, 7,
19 7, 21, 21, 21, 21, 21, 21, 11, 11, 11,
20 9, 9, 9, 9, 30, 30, 8, 8, 8, 8,
21 8, 8, 8, 8, 10, 10, 25, 25, 29, 29,
22 1, 1, 1, 1, 2, 2, 32, 32, 28, 28,
23 4, 33, 33, 34, 13, 13, 13, 12, 12, 12,
24 26, 26, 26, 26, 26, 26, 26, 26, 27, 27,
25 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
26 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
27 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
28 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
29 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
30 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
31 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
32 14, 14, 14, 14, 22, 22, 23, 23, 23, 20,
33 15, 16, 17, 18, 19, 24, 24, 24, 24,
35 dEXT short yylen[] = { 2,
36 0, 2, 4, 0, 0, 2, 2, 2, 1, 2,
37 3, 1, 1, 3, 3, 3, 3, 0, 2, 6,
38 6, 6, 4, 4, 0, 2, 7, 7, 5, 5,
39 8, 7, 10, 3, 0, 1, 0, 1, 0, 1,
40 1, 1, 1, 1, 4, 3, 5, 5, 0, 1,
41 0, 3, 2, 5, 3, 3, 1, 2, 3, 1,
42 3, 5, 6, 3, 5, 2, 4, 4, 1, 1,
43 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
44 3, 3, 5, 3, 2, 2, 2, 2, 2, 2,
45 2, 2, 2, 2, 3, 2, 3, 2, 4, 3,
46 4, 1, 5, 1, 4, 5, 4, 1, 1, 1,
47 5, 6, 5, 6, 5, 4, 5, 1, 1, 3,
48 4, 3, 2, 2, 4, 5, 4, 5, 1, 2,
49 2, 1, 2, 2, 2, 1, 3, 1, 3, 4,
50 4, 6, 1, 1, 0, 1, 0, 1, 2, 2,
51 2, 2, 2, 2, 2, 1, 1, 1, 1,
53 dEXT short yydefred[] = { 1,
54 0, 5, 0, 40, 51, 51, 0, 51, 6, 41,
55 7, 9, 0, 42, 43, 44, 0, 0, 0, 53,
56 0, 12, 4, 143, 0, 0, 118, 0, 138, 0,
57 51, 51, 0, 0, 0, 0, 0, 0, 0, 0,
58 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
59 0, 0, 0, 0, 0, 0, 10, 0, 0, 0,
60 0, 0, 0, 0, 0, 8, 0, 0, 0, 0,
61 0, 108, 110, 0, 0, 0, 144, 0, 46, 0,
62 52, 0, 5, 156, 159, 158, 157, 0, 0, 0,
63 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
64 0, 0, 0, 0, 0, 0, 0, 154, 0, 124,
65 0, 0, 0, 0, 0, 0, 150, 0, 0, 0,
66 0, 66, 0, 133, 0, 0, 0, 0, 0, 0,
67 0, 0, 0, 0, 98, 0, 151, 152, 153, 155,
68 0, 34, 0, 0, 0, 0, 0, 0, 0, 0,
69 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
70 0, 0, 0, 0, 90, 91, 0, 0, 0, 0,
71 0, 0, 0, 0, 11, 45, 50, 0, 0, 0,
72 64, 0, 0, 0, 0, 0, 0, 0, 0, 0,
73 0, 0, 0, 0, 0, 0, 36, 0, 137, 139,
74 0, 0, 0, 0, 0, 0, 100, 0, 122, 0,
75 0, 0, 97, 26, 0, 0, 0, 0, 0, 0,
76 55, 0, 0, 0, 0, 0, 0, 0, 0, 0,
77 0, 0, 0, 0, 0, 0, 0, 69, 0, 70,
78 0, 0, 0, 0, 0, 0, 0, 120, 0, 48,
79 47, 54, 3, 0, 141, 0, 68, 101, 0, 29,
80 0, 30, 0, 0, 0, 23, 0, 24, 0, 0,
81 0, 140, 149, 67, 0, 125, 0, 127, 0, 99,
82 0, 0, 0, 0, 0, 0, 0, 107, 0, 105,
83 0, 116, 0, 121, 65, 0, 0, 0, 0, 19,
84 0, 0, 0, 0, 0, 62, 126, 128, 115, 0,
85 113, 0, 0, 106, 0, 111, 117, 103, 142, 27,
86 28, 21, 0, 22, 0, 32, 0, 114, 112, 63,
87 0, 0, 31, 0, 0, 20, 33,
89 dEXT short yydgoto[] = { 1,
90 9, 10, 83, 17, 86, 3, 11, 12, 66, 195,
91 266, 67, 202, 69, 70, 71, 72, 73, 74, 75,
92 197, 122, 203, 88, 187, 77, 241, 178, 13, 142,
95 dEXT short yysindex[] = { 0,
96 0, 0, -82, 0, 0, 0, -52, 0, 0, 0,
97 0, 0, 853, 0, 0, 0, -80, -256, -19, 0,
98 -245, 0, 0, 0, 19, 19, 0, 20, 0, 2177,
99 0, 0, -2, 1, 28, 41, 133, 2177, 27, 33,
100 52, 19, 1028, 2177, 1303, -210, 19, 2177, 965, 1359,
101 2177, 2177, 2177, 2177, 2177, 1415, 0, 2177, 2177, 1478,
102 19, 19, 19, 19, -225, 0, 71, 209, 1535, -49,
103 -30, 0, 0, 8, 101, 42, 0, 30, 0, -112,
104 0, 2177, 0, 0, 0, 0, 0, 2177, 127, 2177,
105 1535, 30, -112, 2177, 30, 2177, 30, 2177, 30, 2177,
106 30, 1712, 128, 1535, 139, 1768, 965, 0, 141, 0,
107 1485, -14, 1485, 65, -42, 2177, 0, 71, 0, 71,
108 -49, 0, 2177, 0, 1485, 334, 334, 334, -47, -47,
109 92, -26, 334, 334, 0, 63, 0, 0, 0, 0,
110 30, 0, 2177, 2177, 2177, 2177, 2177, 2177, 2177, 2177,
111 2177, 2177, 2177, 2177, 2177, 2177, 2177, 2177, 2177, 2177,
112 2177, 2177, 2177, 2177, 0, 0, -27, 2177, 2177, 2177,
113 2177, 2177, 2177, 1824, 0, 0, 0, -48, 137, -92,
114 0, 2177, 221, 2177, 30, -191, 151, -225, -22, -225,
115 -12, -147, 7, -147, 138, 5, 0, 2177, 0, 0,
116 9, -39, 160, 2177, 1887, 2121, 0, 77, 0, 71,
117 2177, 113, 0, 0, 1535, -191, -191, -191, -191, -86,
118 0, -20, 395, 1485, 1566, 461, -88, 1535, 4122, 1064,
119 679, 364, 1120, 728, 334, 334, 2177, 0, 2177, 0,
120 174, 89, 51, 98, 55, 118, 57, 0, 11, 0,
121 0, 0, 0, 175, 0, 2177, 0, 0, 30, 0,
122 30, 0, 30, 30, 178, 0, 30, 0, 2177, 30,
123 15, 0, 0, 0, 22, 0, 25, 0, 29, 0,
124 152, 2177, 94, 2177, 59, 177, 2177, 0, 96, 0,
125 97, 0, 102, 0, 0, 1190, -225, -225, -147, 0,
126 2177, -147, 176, -225, 30, 0, 0, 0, 0, 205,
127 0, 3039, 111, 0, 206, 0, 0, 0, 0, 0,
128 0, 0, 37, 0, 1712, 0, -225, 0, 0, 0,
129 30, 208, 0, -147, 30, 0, 0,
131 dEXT short yyrindex[] = { 0,
132 0, 0, 297, 0, 0, 0, 0, 0, 0, 0,
133 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
134 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
135 0, 0, 0, 0, 0, 0, 0, 2253, 505, 0,
136 0, 0, 0, 0, 0, 0, 0, 0, 2847, 2935,
137 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
138 0, 0, 0, 0, 107, 0, -35, 10, 53, 3109,
139 3156, 0, 0, 2298, 1976, 0, 0, 0, 0, -23,
140 0, 230, 0, 0, 0, 0, 0, 2385, 0, 0,
141 1004, 0, 168, 253, 0, 0, 0, 0, 0, 0,
142 0, 254, 0, 2242, 0, 0, 274, 0, 2032, 0,
143 3844, 3109, 3902, 0, 0, 2385, 0, 2440, 452, 2554,
144 572, 0, 0, 0, 3981, 3274, 3312, 3421, 3200, 3237,
145 2661, 0, 3560, 3596, 0, 0, 0, 0, 0, 0,
146 0, 0, 2714, 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, 0, 0, 0, 0,
149 0, 0, 0, 0, 0, 0, 0, 0, 0, 909,
150 0, 274, 0, 2385, 0, 39, 0, 107, 0, 107,
151 0, 170, 0, 170, 0, 262, 0, 0, 0, 0,
152 0, 288, 0, 0, 0, 0, 0, 0, 0, 2805,
153 0, 2757, 0, 0, 2650, 49, 58, 61, 64, 365,
154 0, 0, -31, 4018, 4028, 3719, 630, 2995, 0, 1623,
155 4106, 4096, 4064, 3756, 3640, 3683, 0, 0, 0, 0,
156 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
157 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
158 0, 0, 0, 0, 0, 0, 0, 0, 277, 0,
159 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
160 0, 0, 0, 0, 0, 0, 274, 0, 0, 0,
161 0, 0, 0, 0, 0, 0, 107, 107, 170, 0,
162 0, 170, 0, 107, 0, 0, 0, 0, 0, 0,
163 0, 13, 0, 0, 0, 0, 0, 0, 0, 0,
164 0, 0, 0, 0, 300, 0, 107, 0, 0, 0,
165 0, 0, 0, 170, 0, 0, 0,
167 dEXT short yygindex[] = { 0,
168 0, 0, 0, 506, -13, 255, 0, 0, 0, 18,
169 -180, 839, -11, 4398, 2162, 0, 0, 0, 0, 0,
170 342, -57, -174, 1032, 90, 0, 0, 267, 0, -172,
173 #define YYTABLESIZE 4682
174 dEXT short yytable[] = { 65,
175 80, 68, 168, 79, 273, 57, 20, 254, 61, 80,
176 250, 82, 80, 268, 212, 260, 208, 262, 261, 95,
177 97, 99, 101, 57, 179, 206, 80, 80, 263, 110,
178 181, 80, 253, 115, 150, 49, 124, 94, 283, 81,
179 96, 170, 23, 168, 132, 270, 116, 267, 136, 272,
180 13, 294, 141, 83, 61, 305, 83, 57, 209, 90,
181 172, 80, 306, 239, 176, 307, 105, 98, 13, 308,
182 83, 83, 106, 169, 23, 150, 170, 331, 184, 38,
183 100, 188, 186, 190, 189, 192, 191, 194, 193, 16,
184 196, 107, 171, 60, 201, 237, 60, 38, 17, 49,
185 175, 14, 148, 149, 15, 83, 25, 16, 169, 289,
186 60, 60, 315, 291, 143, 293, 17, 313, 322, 14,
187 23, 324, 15, 23, 320, 321, 257, 214, 264, 265,
188 173, 326, 216, 217, 218, 219, 220, 221, 222, 25,
189 174, 23, 25, 25, 25, 60, 25, 177, 25, 25,
190 23, 25, 23, 336, 333, 213, 242, 243, 244, 245,
191 246, 247, 249, 23, 251, 25, 182, 198, 61, 18,
192 25, 258, 102, 4, 5, 6, 78, 7, 8, 199,
193 205, 288, 211, 4, 5, 6, 271, 7, 8, 207,
194 290, 259, 275, 277, 279, 252, 269, 25, 154, 281,
195 274, 280, 18, 282, 19, 18, 18, 18, 149, 18,
196 292, 18, 18, 287, 18, 295, 163, 301, 311, 164,
197 316, 317, 165, 166, 167, 285, 318, 286, 18, 25,
198 238, 25, 25, 18, 325, 329, 57, 57, 57, 57,
199 80, 80, 80, 80, 309, 297, 330, 298, 335, 299,
200 300, 148, 149, 302, 148, 149, 304, 186, 57, 57,
201 18, 255, 80, 80, 256, 167, 80, 148, 149, 314,
202 310, 148, 149, 148, 149, 84, 144, 145, 146, 147,
203 85, 148, 149, 157, 83, 83, 83, 83, 145, 323,
204 49, 327, 18, 37, 18, 18, 2, 328, 148, 149,
205 148, 149, 148, 149, 148, 149, 83, 83, 148, 149,
206 83, 168, 35, 68, 147, 148, 149, 334, 148, 149,
207 13, 337, 148, 149, 60, 60, 60, 60, 148, 39,
208 148, 149, 39, 39, 39, 37, 39, 180, 39, 39,
209 35, 39, 332, 150, 148, 149, 60, 60, 148, 149,
210 148, 149, 148, 149, 76, 39, 148, 149, 303, 185,
211 39, 0, 25, 25, 25, 25, 25, 25, 0, 25,
212 25, 25, 25, 25, 25, 25, 25, 25, 25, 25,
213 25, 25, 148, 149, 0, 25, 25, 39, 25, 25,
214 25, 148, 149, 0, 0, 25, 25, 25, 25, 25,
215 0, 0, 25, 25, 0, 56, 0, 0, 56, 25,
216 0, 148, 149, 25, 0, 25, 25, 0, 0, 39,
217 0, 0, 39, 56, 168, 18, 18, 18, 18, 18,
218 18, 0, 18, 18, 18, 18, 18, 18, 18, 18,
219 18, 18, 18, 18, 18, 148, 149, 0, 18, 18,
220 0, 18, 18, 18, 168, 0, 150, 56, 18, 18,
221 18, 18, 18, 0, 0, 18, 18, 0, 0, 0,
222 148, 149, 18, 0, 0, 0, 18, 0, 18, 18,
223 144, 145, 146, 147, 156, 168, 150, 156, 156, 156,
224 0, 156, 143, 156, 156, 143, 156, 0, 148, 149,
225 0, 151, 148, 149, 0, 152, 153, 154, 155, 143,
226 143, 18, 0, 21, 143, 156, 0, 150, 156, 158,
227 159, 160, 161, 0, 162, 163, 0, 0, 164, 0,
228 0, 165, 166, 167, 0, 0, 92, 93, 0, 0,
229 0, 0, 143, 0, 143, 136, 0, 0, 136, 0,
230 0, 168, 39, 39, 39, 39, 39, 39, 0, 39,
231 39, 39, 136, 136, 0, 39, 0, 136, 39, 39,
232 39, 39, 0, 0, 143, 39, 39, 156, 39, 39,
233 39, 0, 0, 150, 0, 39, 39, 39, 39, 39,
234 0, 0, 39, 39, 0, 136, 0, 136, 0, 39,
235 0, 0, 0, 39, 157, 39, 39, 157, 157, 157,
236 0, 157, 102, 157, 157, 102, 157, 0, 0, 0,
237 0, 0, 0, 0, 0, 0, 0, 136, 0, 102,
238 102, 0, 0, 0, 102, 157, 56, 56, 56, 56,
239 0, 164, 0, 0, 165, 166, 167, 0, 152, 153,
240 154, 155, 0, 0, 0, 0, 0, 0, 56, 0,
241 0, 0, 0, 0, 102, 161, 0, 162, 163, 0,
242 74, 164, 0, 74, 165, 166, 167, 0, 0, 152,
243 153, 154, 155, 0, 0, 0, 0, 74, 74, 0,
244 0, 0, 74, 158, 159, 160, 161, 157, 162, 163,
245 0, 0, 164, 0, 0, 165, 166, 167, 156, 156,
246 156, 156, 156, 0, 156, 156, 156, 0, 0, 0,
247 156, 0, 74, 143, 143, 143, 143, 0, 0, 0,
248 0, 156, 143, 156, 156, 156, 143, 143, 143, 143,
249 156, 156, 156, 156, 156, 143, 143, 156, 156, 143,
250 143, 143, 143, 143, 156, 143, 143, 0, 156, 143,
251 156, 156, 143, 143, 143, 163, 0, 0, 164, 168,
252 0, 165, 166, 167, 0, 0, 136, 136, 136, 136,
253 0, 0, 0, 0, 0, 136, 0, 0, 0, 136,
254 136, 136, 136, 0, 0, 0, 0, 0, 136, 136,
255 0, 150, 136, 136, 136, 136, 136, 0, 136, 136,
256 0, 0, 136, 0, 0, 136, 136, 136, 168, 0,
257 0, 0, 0, 0, 0, 0, 0, 0, 157, 157,
258 157, 157, 157, 0, 157, 157, 157, 0, 0, 0,
259 157, 0, 0, 102, 102, 102, 102, 0, 0, 0,
260 150, 157, 102, 157, 157, 157, 102, 102, 102, 102,
261 157, 157, 157, 157, 157, 102, 102, 157, 157, 102,
262 102, 102, 102, 102, 157, 102, 102, 0, 157, 102,
263 157, 157, 102, 102, 102, 51, 118, 120, 61, 63,
264 47, 0, 56, 0, 64, 59, 0, 58, 0, 0,
265 0, 74, 74, 74, 74, 0, 0, 0, 0, 0,
266 74, 57, 0, 0, 74, 74, 62, 74, 0, 0,
267 120, 0, 0, 74, 74, 0, 120, 74, 74, 74,
268 74, 74, 0, 74, 0, 0, 0, 0, 0, 0,
269 0, 39, 0, 60, 39, 39, 39, 0, 39, 0,
270 39, 39, 0, 39, 120, 0, 0, 0, 0, 0,
271 0, 210, 0, 152, 153, 154, 155, 39, 0, 0,
272 0, 0, 39, 0, 0, 23, 0, 0, 52, 160,
273 161, 0, 162, 163, 0, 0, 164, 0, 0, 165,
274 166, 167, 0, 0, 0, 0, 0, 51, 0, 39,
275 61, 63, 47, 0, 56, 0, 64, 59, 0, 58,
276 0, 0, 0, 0, 154, 155, 0, 0, 0, 0,
277 0, 0, 120, 0, 0, 0, 0, 0, 62, 0,
278 0, 39, 163, 0, 39, 164, 0, 0, 165, 166,
279 167, 0, 0, 0, 135, 0, 0, 135, 0, 0,
280 0, 0, 0, 0, 0, 60, 0, 89, 0, 0,
281 51, 135, 135, 61, 63, 47, 0, 56, 0, 64,
282 59, 0, 58, 108, 0, 0, 0, 0, 117, 0,
283 123, 0, 0, 0, 0, 0, 0, 23, 0, 0,
284 52, 62, 137, 138, 139, 140, 135, 0, 0, 0,
285 0, 0, 0, 0, 0, 0, 0, 0, 22, 24,
286 25, 26, 27, 28, 0, 29, 30, 31, 60, 0,
287 0, 32, 0, 0, 33, 34, 35, 36, 0, 0,
288 0, 37, 38, 0, 39, 40, 41, 0, 204, 0,
289 0, 42, 43, 44, 45, 46, 0, 0, 48, 49,
290 23, 0, 0, 52, 168, 50, 0, 0, 0, 53,
291 0, 54, 55, 0, 39, 39, 39, 39, 39, 39,
292 0, 39, 39, 39, 0, 0, 0, 39, 0, 0,
293 39, 39, 39, 39, 0, 0, 150, 39, 39, 0,
294 39, 39, 39, 0, 0, 0, 0, 39, 39, 39,
295 39, 39, 0, 0, 39, 39, 0, 0, 0, 0,
296 168, 39, 0, 0, 0, 39, 0, 39, 39, 0,
297 0, 119, 25, 26, 27, 28, 85, 29, 30, 31,
298 319, 0, 0, 32, 0, 0, 0, 0, 0, 0,
299 0, 0, 150, 0, 38, 0, 39, 40, 41, 0,
300 0, 0, 157, 42, 43, 44, 45, 46, 0, 0,
301 48, 49, 0, 0, 0, 0, 0, 50, 0, 0,
302 0, 53, 0, 54, 55, 135, 135, 135, 135, 0,
303 168, 0, 0, 0, 109, 25, 26, 27, 28, 0,
304 29, 30, 31, 0, 0, 0, 32, 135, 135, 0,
305 0, 0, 0, 0, 0, 0, 0, 38, 0, 39,
306 40, 41, 150, 0, 0, 0, 42, 43, 44, 45,
307 46, 0, 0, 48, 49, 0, 0, 0, 0, 0,
308 50, 0, 0, 0, 53, 51, 54, 55, 61, 63,
309 47, 0, 56, 0, 64, 59, 0, 58, 152, 153,
310 154, 155, 0, 0, 0, 0, 0, 0, 0, 0,
311 0, 114, 0, 159, 160, 161, 62, 162, 163, 0,
312 0, 164, 0, 0, 165, 166, 167, 0, 0, 0,
313 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
314 0, 51, 0, 60, 61, 63, 47, 0, 56, 0,
315 64, 59, 0, 58, 152, 153, 154, 155, 0, 0,
316 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
317 0, 0, 62, 162, 163, 0, 0, 164, 52, 0,
318 165, 166, 167, 0, 0, 0, 0, 0, 0, 0,
319 0, 0, 0, 0, 0, 0, 0, 51, 0, 60,
320 61, 63, 47, 0, 56, 131, 64, 59, 0, 58,
321 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
322 151, 0, 0, 0, 152, 153, 154, 155, 62, 0,
323 0, 23, 0, 0, 52, 0, 0, 156, 158, 159,
324 160, 161, 0, 162, 163, 0, 0, 164, 0, 0,
325 165, 166, 167, 0, 0, 60, 0, 0, 0, 0,
326 51, 0, 0, 61, 63, 47, 0, 56, 0, 64,
327 59, 0, 58, 0, 0, 0, 0, 0, 0, 0,
328 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
329 52, 62, 0, 0, 0, 0, 0, 0, 0, 0,
330 0, 0, 0, 0, 0, 0, 0, 0, 0, 24,
331 25, 26, 27, 28, 0, 29, 30, 31, 60, 0,
332 135, 32, 0, 0, 0, 168, 0, 0, 0, 0,
333 0, 0, 38, 0, 39, 40, 41, 0, 0, 0,
334 0, 42, 43, 44, 45, 46, 0, 157, 48, 49,
335 0, 0, 0, 52, 0, 50, 0, 150, 0, 53,
336 0, 54, 55, 0, 0, 24, 25, 26, 27, 28,
337 0, 29, 30, 31, 0, 168, 0, 32, 0, 0,
338 0, 0, 0, 0, 0, 0, 0, 0, 38, 0,
339 39, 40, 41, 0, 0, 0, 0, 42, 43, 44,
340 45, 46, 0, 0, 48, 49, 168, 150, 0, 0,
341 0, 50, 0, 82, 0, 53, 82, 54, 55, 0,
342 0, 24, 25, 26, 27, 28, 0, 29, 30, 31,
343 82, 82, 0, 32, 0, 82, 0, 0, 150, 0,
344 0, 0, 0, 0, 38, 0, 39, 40, 41, 0,
345 0, 0, 0, 42, 43, 44, 45, 46, 0, 0,
346 48, 49, 0, 0, 0, 82, 0, 50, 0, 0,
347 0, 53, 0, 54, 55, 0, 0, 0, 0, 0,
348 0, 0, 0, 0, 24, 25, 26, 27, 28, 0,
349 29, 30, 31, 0, 51, 0, 32, 61, 63, 47,
350 0, 56, 0, 64, 59, 0, 58, 38, 0, 39,
351 40, 41, 0, 0, 0, 0, 42, 43, 44, 45,
352 46, 154, 155, 48, 49, 62, 0, 0, 0, 0,
353 50, 0, 0, 0, 53, 0, 54, 55, 162, 163,
354 0, 0, 164, 0, 0, 165, 166, 167, 0, 0,
355 51, 0, 60, 61, 63, 47, 0, 56, 200, 64,
356 59, 0, 58, 0, 0, 151, 0, 0, 0, 152,
357 153, 154, 155, 0, 0, 0, 0, 0, 0, 0,
358 0, 62, 156, 158, 159, 160, 161, 52, 162, 163,
359 0, 0, 164, 0, 0, 165, 166, 167, 0, 0,
360 152, 0, 154, 155, 0, 0, 51, 0, 60, 61,
361 63, 47, 0, 56, 248, 64, 59, 0, 58, 162,
362 163, 0, 0, 164, 0, 0, 165, 166, 167, 0,
363 0, 0, 0, 0, 0, 0, 0, 62, 0, 0,
364 0, 0, 0, 52, 82, 82, 82, 82, 0, 0,
365 0, 0, 0, 82, 0, 0, 0, 0, 0, 0,
366 0, 0, 0, 0, 60, 0, 82, 82, 0, 51,
367 82, 82, 61, 63, 47, 0, 56, 276, 64, 59,
368 0, 58, 0, 0, 0, 0, 0, 0, 0, 0,
369 0, 0, 0, 0, 0, 0, 0, 0, 0, 52,
370 62, 0, 0, 0, 0, 0, 0, 0, 0, 0,
371 0, 0, 0, 0, 0, 0, 0, 22, 24, 25,
372 26, 27, 28, 0, 29, 30, 31, 60, 0, 0,
373 32, 0, 0, 0, 0, 0, 0, 0, 0, 0,
374 0, 38, 0, 39, 40, 41, 0, 0, 0, 0,
375 42, 43, 44, 45, 46, 0, 0, 48, 49, 0,
376 0, 0, 52, 0, 50, 0, 119, 0, 53, 119,
377 54, 55, 0, 0, 24, 25, 26, 27, 28, 0,
378 29, 30, 31, 119, 119, 0, 32, 0, 119, 0,
379 0, 0, 0, 0, 0, 0, 0, 38, 0, 39,
380 40, 41, 0, 0, 0, 0, 42, 43, 44, 45,
381 46, 0, 0, 48, 49, 0, 119, 0, 119, 0,
382 50, 0, 143, 0, 53, 143, 54, 55, 0, 0,
383 24, 25, 26, 27, 28, 0, 29, 30, 31, 143,
384 143, 0, 32, 0, 143, 0, 0, 0, 119, 0,
385 0, 0, 0, 38, 0, 39, 40, 41, 0, 0,
386 0, 0, 42, 43, 44, 45, 46, 0, 0, 48,
387 49, 0, 143, 0, 143, 0, 50, 0, 0, 0,
388 53, 0, 54, 55, 0, 0, 0, 0, 0, 0,
389 0, 0, 0, 24, 25, 26, 27, 28, 0, 29,
390 30, 31, 0, 51, 143, 32, 61, 63, 47, 0,
391 56, 278, 64, 59, 0, 58, 38, 0, 39, 40,
392 41, 0, 0, 0, 0, 42, 43, 44, 45, 46,
393 0, 0, 48, 49, 62, 0, 87, 87, 0, 50,
394 0, 0, 0, 53, 0, 54, 55, 0, 103, 0,
395 0, 0, 0, 87, 112, 0, 0, 0, 87, 51,
396 121, 60, 61, 63, 47, 0, 56, 0, 64, 59,
397 0, 58, 87, 87, 87, 87, 0, 0, 0, 0,
398 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
399 62, 0, 0, 0, 0, 0, 52, 119, 119, 119,
400 119, 0, 0, 0, 0, 0, 119, 0, 0, 0,
401 119, 119, 119, 119, 0, 0, 0, 60, 121, 119,
402 119, 0, 0, 119, 119, 119, 119, 119, 0, 119,
403 119, 0, 130, 119, 0, 130, 119, 119, 119, 0,
404 0, 0, 0, 129, 0, 0, 129, 0, 0, 130,
405 130, 0, 52, 143, 143, 143, 143, 0, 0, 0,
406 129, 129, 143, 0, 0, 129, 143, 143, 143, 143,
407 0, 0, 0, 0, 0, 143, 143, 0, 240, 143,
408 143, 143, 143, 143, 130, 143, 143, 0, 104, 143,
409 0, 104, 143, 143, 143, 129, 0, 0, 0, 0,
410 0, 0, 0, 0, 0, 104, 104, 0, 0, 0,
411 104, 0, 0, 0, 0, 0, 0, 0, 0, 0,
412 0, 0, 0, 0, 0, 129, 0, 24, 25, 26,
413 27, 28, 0, 29, 30, 31, 0, 0, 104, 32,
414 104, 0, 0, 0, 0, 0, 0, 0, 0, 0,
415 38, 0, 39, 40, 41, 0, 0, 0, 0, 42,
416 43, 44, 45, 46, 0, 0, 48, 49, 0, 0,
417 0, 0, 0, 50, 0, 145, 0, 53, 145, 54,
418 55, 0, 0, 24, 25, 26, 27, 28, 0, 29,
419 30, 31, 145, 145, 0, 32, 0, 145, 0, 0,
420 0, 0, 0, 0, 0, 0, 38, 0, 39, 40,
421 41, 0, 0, 0, 0, 42, 43, 44, 45, 46,
422 0, 0, 48, 49, 0, 0, 0, 145, 0, 50,
423 131, 0, 0, 53, 0, 54, 55, 0, 0, 0,
424 0, 0, 0, 0, 0, 0, 0, 131, 131, 0,
425 0, 0, 131, 0, 0, 0, 0, 145, 0, 0,
426 0, 0, 0, 130, 130, 130, 130, 0, 0, 0,
427 0, 0, 0, 0, 129, 129, 129, 129, 0, 0,
428 131, 0, 131, 129, 0, 130, 130, 129, 129, 129,
429 129, 0, 0, 0, 0, 0, 129, 129, 0, 0,
430 129, 129, 129, 129, 129, 0, 129, 129, 0, 0,
431 129, 0, 131, 129, 129, 129, 0, 0, 0, 104,
432 104, 104, 104, 0, 0, 0, 0, 0, 104, 0,
433 0, 0, 104, 104, 104, 104, 0, 0, 0, 0,
434 0, 104, 104, 0, 146, 104, 104, 104, 104, 104,
435 0, 104, 104, 0, 0, 104, 0, 0, 104, 104,
436 104, 146, 146, 0, 0, 0, 146, 0, 0, 0,
437 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
438 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
439 0, 0, 0, 0, 146, 0, 146, 0, 0, 0,
440 0, 0, 0, 0, 0, 0, 145, 145, 145, 145,
441 0, 0, 0, 0, 0, 145, 0, 0, 0, 145,
442 145, 145, 145, 0, 0, 0, 146, 0, 145, 145,
443 0, 0, 145, 145, 145, 145, 145, 0, 145, 145,
444 59, 0, 145, 59, 0, 145, 145, 145, 0, 0,
445 0, 96, 0, 0, 96, 0, 0, 59, 59, 0,
446 0, 131, 131, 131, 131, 0, 0, 0, 96, 96,
447 131, 0, 0, 96, 131, 131, 131, 131, 0, 0,
448 0, 0, 0, 131, 131, 0, 0, 131, 131, 131,
449 131, 131, 59, 131, 131, 0, 0, 131, 0, 0,
450 131, 131, 131, 96, 58, 0, 0, 58, 0, 0,
451 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
452 0, 58, 58, 0, 0, 0, 58, 0, 0, 0,
453 0, 0, 0, 96, 0, 0, 0, 0, 0, 0,
454 0, 0, 0, 0, 0, 0, 0, 95, 0, 0,
455 95, 0, 0, 0, 0, 0, 58, 0, 0, 0,
456 0, 0, 0, 0, 95, 95, 0, 0, 0, 95,
457 0, 0, 0, 0, 0, 146, 146, 146, 146, 0,
458 0, 0, 0, 0, 146, 0, 58, 0, 146, 146,
459 146, 146, 0, 0, 0, 61, 0, 146, 146, 95,
460 0, 146, 146, 146, 146, 146, 0, 146, 146, 0,
461 0, 146, 61, 61, 146, 146, 146, 61, 0, 0,
462 0, 0, 0, 0, 0, 0, 0, 0, 0, 95,
463 0, 0, 0, 0, 0, 0, 0, 145, 0, 0,
464 145, 0, 0, 0, 0, 61, 0, 61, 0, 0,
465 0, 0, 0, 0, 145, 145, 0, 0, 0, 145,
466 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
467 0, 59, 59, 59, 59, 0, 0, 61, 0, 0,
468 0, 0, 96, 96, 96, 96, 0, 0, 0, 145,
469 0, 96, 0, 59, 59, 96, 96, 96, 96, 0,
470 0, 0, 0, 0, 96, 96, 0, 0, 96, 96,
471 96, 96, 96, 0, 96, 96, 0, 0, 96, 0,
472 0, 96, 96, 96, 0, 132, 0, 0, 132, 0,
473 0, 0, 0, 0, 0, 58, 58, 58, 58, 0,
474 0, 0, 132, 132, 58, 0, 0, 132, 58, 58,
475 58, 58, 0, 0, 0, 0, 0, 58, 58, 0,
476 0, 58, 58, 58, 58, 58, 0, 58, 58, 0,
477 0, 58, 0, 0, 58, 58, 58, 132, 95, 95,
478 95, 95, 0, 0, 0, 71, 0, 95, 71, 0,
479 0, 95, 95, 95, 95, 0, 0, 0, 0, 0,
480 95, 95, 71, 71, 95, 95, 95, 95, 95, 0,
481 95, 95, 0, 0, 95, 0, 0, 95, 95, 95,
482 0, 0, 0, 0, 0, 0, 61, 61, 61, 61,
483 0, 0, 0, 0, 0, 61, 0, 71, 0, 61,
484 61, 61, 61, 0, 0, 0, 0, 0, 61, 61,
485 0, 157, 61, 61, 61, 61, 61, 0, 61, 61,
486 0, 0, 61, 0, 0, 61, 61, 61, 145, 145,
487 145, 145, 0, 0, 0, 0, 0, 145, 0, 168,
488 0, 145, 145, 145, 145, 0, 0, 0, 0, 0,
489 145, 145, 0, 0, 145, 145, 145, 145, 145, 102,
490 145, 145, 102, 0, 145, 0, 0, 145, 145, 145,
491 0, 150, 0, 0, 0, 0, 102, 102, 0, 0,
492 0, 102, 0, 0, 0, 0, 0, 0, 0, 0,
493 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
494 0, 0, 0, 0, 0, 0, 109, 0, 0, 109,
495 0, 102, 0, 0, 0, 0, 132, 132, 132, 132,
496 0, 0, 0, 109, 109, 132, 0, 0, 109, 132,
497 132, 132, 132, 0, 0, 0, 0, 0, 132, 132,
498 0, 0, 132, 132, 132, 132, 132, 0, 132, 132,
499 92, 0, 132, 92, 0, 132, 132, 132, 109, 0,
500 0, 0, 0, 0, 0, 0, 0, 92, 92, 0,
501 0, 0, 92, 0, 0, 0, 71, 71, 71, 71,
502 0, 0, 0, 0, 0, 0, 0, 93, 0, 0,
503 93, 0, 0, 0, 0, 0, 0, 0, 71, 71,
504 0, 0, 92, 0, 93, 93, 0, 0, 0, 93,
505 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
506 0, 0, 0, 0, 87, 0, 0, 87, 0, 151,
507 0, 0, 0, 152, 153, 154, 155, 0, 0, 93,
508 0, 87, 87, 0, 0, 0, 87, 158, 159, 160,
509 161, 0, 162, 163, 0, 0, 164, 0, 0, 165,
510 166, 167, 88, 0, 0, 88, 0, 0, 0, 0,
511 0, 0, 0, 0, 0, 0, 87, 0, 0, 88,
512 88, 0, 0, 0, 88, 0, 0, 0, 0, 0,
513 102, 102, 102, 102, 0, 0, 0, 0, 0, 102,
514 0, 0, 0, 102, 102, 102, 102, 0, 0, 0,
515 0, 0, 102, 102, 88, 0, 102, 102, 102, 102,
516 102, 0, 102, 102, 0, 0, 102, 0, 0, 102,
517 102, 102, 0, 0, 0, 0, 0, 109, 109, 109,
518 109, 0, 0, 0, 0, 0, 109, 0, 0, 0,
519 109, 109, 109, 109, 0, 0, 0, 0, 0, 109,
520 109, 0, 0, 109, 109, 109, 109, 109, 0, 109,
521 109, 89, 0, 109, 89, 0, 109, 109, 109, 0,
522 0, 92, 92, 92, 92, 0, 0, 0, 89, 89,
523 92, 0, 0, 89, 92, 92, 92, 92, 0, 0,
524 0, 0, 0, 92, 92, 0, 0, 92, 92, 92,
525 92, 92, 0, 92, 92, 0, 0, 92, 93, 93,
526 93, 93, 0, 89, 0, 0, 0, 93, 0, 0,
527 0, 93, 93, 93, 93, 0, 0, 0, 0, 0,
528 93, 93, 0, 0, 93, 93, 93, 93, 93, 0,
529 93, 93, 0, 0, 93, 87, 87, 87, 87, 0,
530 0, 0, 0, 0, 87, 0, 0, 0, 87, 87,
531 87, 87, 0, 0, 0, 0, 0, 87, 87, 0,
532 0, 87, 87, 87, 87, 87, 0, 87, 87, 0,
533 0, 0, 0, 88, 88, 88, 88, 0, 0, 0,
534 0, 0, 88, 0, 0, 0, 88, 88, 88, 88,
535 85, 0, 0, 85, 0, 88, 88, 0, 0, 88,
536 88, 88, 88, 88, 0, 88, 88, 85, 85, 0,
537 0, 0, 85, 0, 0, 0, 0, 0, 0, 0,
538 0, 0, 0, 0, 0, 0, 86, 0, 0, 86,
539 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
540 0, 0, 85, 86, 86, 0, 0, 0, 86, 0,
541 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
542 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
543 84, 0, 0, 84, 0, 0, 0, 0, 86, 0,
544 0, 0, 89, 89, 89, 89, 0, 84, 84, 0,
545 0, 89, 84, 0, 0, 89, 89, 89, 89, 0,
546 0, 0, 0, 0, 89, 89, 0, 0, 89, 89,
547 89, 89, 89, 72, 89, 89, 72, 0, 0, 0,
548 0, 0, 84, 0, 0, 0, 0, 0, 0, 0,
549 72, 72, 0, 0, 0, 72, 0, 0, 0, 0,
550 0, 0, 0, 0, 0, 0, 0, 0, 0, 73,
551 0, 0, 73, 0, 0, 0, 0, 0, 0, 0,
552 0, 0, 0, 0, 0, 72, 73, 73, 0, 0,
553 0, 73, 0, 0, 0, 0, 0, 0, 0, 0,
554 0, 0, 0, 0, 0, 0, 75, 0, 0, 75,
555 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
556 0, 73, 0, 75, 75, 0, 0, 0, 75, 0,
557 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
558 0, 85, 85, 85, 85, 0, 0, 0, 0, 0,
559 85, 0, 0, 0, 85, 85, 85, 85, 75, 0,
560 0, 0, 0, 85, 85, 0, 0, 85, 85, 85,
561 85, 85, 0, 85, 85, 0, 0, 86, 86, 86,
562 86, 0, 0, 0, 0, 0, 86, 0, 0, 0,
563 86, 86, 86, 86, 123, 0, 0, 123, 0, 86,
564 86, 0, 0, 86, 86, 86, 86, 86, 0, 86,
565 86, 123, 123, 0, 0, 0, 123, 0, 0, 0,
566 0, 84, 84, 84, 84, 0, 0, 0, 0, 0,
567 84, 0, 0, 0, 84, 84, 84, 84, 0, 0,
568 0, 0, 0, 84, 84, 0, 123, 84, 84, 84,
569 84, 84, 94, 84, 84, 94, 0, 0, 0, 0,
570 0, 0, 0, 0, 72, 72, 72, 72, 0, 94,
571 94, 0, 0, 72, 94, 0, 0, 72, 72, 72,
572 72, 0, 0, 0, 0, 0, 72, 72, 0, 0,
573 72, 72, 72, 72, 72, 0, 72, 72, 0, 0,
574 73, 73, 73, 73, 94, 0, 0, 0, 0, 73,
575 0, 0, 0, 73, 73, 73, 73, 0, 0, 0,
576 0, 0, 73, 73, 0, 0, 73, 73, 73, 73,
577 73, 134, 73, 0, 134, 0, 0, 75, 75, 75,
578 75, 0, 0, 0, 0, 0, 75, 0, 134, 134,
579 75, 75, 0, 134, 0, 0, 0, 0, 0, 75,
580 75, 0, 0, 75, 75, 75, 75, 75, 76, 75,
581 0, 76, 0, 0, 0, 0, 0, 0, 77, 0,
582 0, 77, 0, 134, 0, 76, 76, 0, 0, 0,
583 76, 0, 0, 0, 0, 77, 77, 0, 0, 0,
584 77, 0, 0, 0, 0, 0, 0, 0, 0, 0,
585 0, 0, 0, 0, 78, 0, 0, 78, 0, 0,
586 76, 0, 0, 0, 0, 123, 123, 123, 123, 0,
587 77, 78, 78, 0, 123, 0, 78, 0, 123, 123,
588 0, 0, 0, 0, 0, 0, 79, 123, 123, 79,
589 0, 123, 123, 123, 123, 123, 81, 0, 0, 81,
590 0, 0, 0, 79, 79, 0, 78, 0, 79, 0,
591 0, 0, 0, 81, 81, 0, 0, 0, 81, 0,
592 0, 0, 0, 94, 94, 94, 94, 0, 0, 284,
593 0, 0, 94, 0, 157, 0, 94, 94, 79, 0,
594 0, 0, 0, 0, 0, 94, 94, 0, 81, 94,
595 94, 94, 94, 94, 0, 0, 0, 0, 0, 0,
596 0, 0, 168, 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, 150, 0, 0, 0, 0, 0,
600 0, 0, 134, 134, 134, 134, 0, 0, 0, 0,
601 0, 134, 0, 0, 0, 134, 134, 0, 0, 0,
602 0, 0, 0, 0, 134, 134, 0, 0, 134, 134,
603 134, 134, 134, 0, 0, 0, 0, 0, 0, 76,
604 76, 76, 76, 0, 0, 0, 0, 0, 76, 77,
605 77, 77, 77, 76, 0, 0, 0, 0, 77, 0,
606 0, 76, 76, 0, 0, 76, 76, 76, 76, 76,
607 0, 77, 77, 0, 0, 77, 77, 77, 77, 77,
608 0, 0, 0, 0, 0, 78, 78, 78, 78, 0,
609 0, 0, 0, 0, 78, 0, 0, 0, 0, 0,
610 0, 0, 0, 0, 0, 0, 0, 78, 78, 0,
611 0, 78, 78, 78, 78, 78, 0, 79, 79, 79,
612 79, 0, 0, 0, 0, 0, 79, 81, 81, 81,
613 81, 0, 0, 0, 0, 0, 81, 0, 0, 79,
614 79, 0, 0, 79, 79, 79, 79, 0, 0, 81,
615 81, 0, 151, 81, 81, 81, 152, 153, 154, 155,
616 0, 0, 0, 0, 0, 0, 0, 0, 0, 156,
617 158, 159, 160, 161, 0, 162, 163, 91, 0, 164,
618 0, 0, 165, 166, 167, 104, 0, 0, 0, 0,
619 111, 113, 0, 0, 0, 0, 0, 125, 126, 127,
620 128, 129, 130, 0, 0, 133, 134, 0, 0, 0,
621 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
622 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
623 0, 0, 0, 0, 0, 0, 0, 183, 0, 0,
624 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
625 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
626 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
627 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
628 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
629 215, 0, 0, 0, 0, 0, 0, 0, 223, 224,
630 225, 226, 227, 228, 229, 230, 231, 232, 233, 234,
631 235, 236, 0, 0, 0, 0, 0, 0, 0, 0,
632 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
633 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
634 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
635 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
636 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
637 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
638 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
639 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
640 0, 0, 0, 296, 0, 0, 0, 0, 0, 0,
641 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
642 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
645 dEXT short yycheck[] = { 13,
646 257, 13, 91, 17, 44, 41, 59, 182, 36, 41,
647 59, 257, 44, 194, 41, 188, 59, 190, 41, 33,
648 34, 35, 36, 59, 82, 40, 58, 59, 41, 43,
649 88, 63, 125, 45, 123, 59, 50, 40, 59, 59,
650 40, 91, 123, 91, 56, 41, 257, 41, 60, 41,
651 41, 41, 278, 41, 36, 41, 44, 93, 116, 40,
652 91, 93, 41, 91, 78, 41, 40, 40, 59, 41,
653 58, 59, 40, 123, 123, 123, 91, 41, 92, 41,
654 40, 95, 94, 97, 96, 99, 98, 101, 100, 41,
655 102, 40, 123, 41, 106, 123, 44, 59, 41, 123,
656 59, 41, 294, 295, 41, 93, 0, 59, 123, 59,
657 58, 59, 287, 59, 44, 59, 59, 59, 299, 59,
658 123, 302, 59, 123, 297, 298, 184, 141, 276, 277,
659 123, 304, 144, 145, 146, 147, 148, 149, 150, 33,
660 40, 123, 36, 37, 38, 93, 40, 260, 42, 43,
661 123, 45, 123, 334, 327, 93, 168, 169, 170, 171,
662 172, 173, 174, 123, 178, 59, 40, 40, 36, 0,
663 64, 185, 40, 266, 267, 268, 257, 270, 271, 41,
664 40, 93, 91, 266, 267, 268, 198, 270, 271, 125,
665 93, 41, 204, 205, 206, 59, 59, 91, 287, 211,
666 41, 125, 33, 91, 257, 36, 37, 38, 295, 40,
667 93, 42, 43, 40, 45, 41, 305, 40, 125, 308,
668 125, 125, 311, 312, 313, 237, 125, 239, 59, 123,
669 258, 125, 126, 64, 59, 125, 272, 273, 274, 275,
670 272, 273, 274, 275, 93, 259, 41, 261, 41, 263,
671 264, 294, 295, 267, 294, 295, 270, 269, 294, 295,
672 91, 41, 294, 295, 44, 313, 298, 294, 295, 93,
673 282, 294, 295, 294, 295, 257, 272, 273, 274, 275,
674 262, 294, 295, 63, 272, 273, 274, 275, 59, 301,
675 123, 305, 123, 41, 125, 126, 0, 93, 294, 295,
676 294, 295, 294, 295, 294, 295, 294, 295, 294, 295,
677 298, 91, 59, 325, 41, 294, 295, 331, 294, 295,
678 59, 335, 294, 295, 272, 273, 274, 275, 41, 33,
679 294, 295, 36, 37, 38, 59, 40, 83, 42, 43,
680 41, 45, 325, 123, 294, 295, 294, 295, 294, 295,
681 294, 295, 294, 295, 13, 59, 294, 295, 269, 93,
682 64, -1, 256, 257, 258, 259, 260, 261, -1, 263,
683 264, 265, 266, 267, 268, 269, 270, 271, 272, 273,
684 274, 275, 294, 295, -1, 279, 280, 91, 282, 283,
685 284, 294, 295, -1, -1, 289, 290, 291, 292, 293,
686 -1, -1, 296, 297, -1, 41, -1, -1, 44, 303,
687 -1, 294, 295, 307, -1, 309, 310, -1, -1, 123,
688 -1, -1, 126, 59, 91, 256, 257, 258, 259, 260,
689 261, -1, 263, 264, 265, 266, 267, 268, 269, 270,
690 271, 272, 273, 274, 275, 294, 295, -1, 279, 280,
691 -1, 282, 283, 284, 91, -1, 123, 93, 289, 290,
692 291, 292, 293, -1, -1, 296, 297, -1, -1, -1,
693 294, 295, 303, -1, -1, -1, 307, -1, 309, 310,
694 272, 273, 274, 275, 33, 91, 123, 36, 37, 38,
695 -1, 40, 41, 42, 43, 44, 45, -1, 294, 295,
696 -1, 281, 294, 295, -1, 285, 286, 287, 288, 58,
697 59, 6, -1, 8, 63, 64, -1, 123, 298, 299,
698 300, 301, 302, -1, 304, 305, -1, -1, 308, -1,
699 -1, 311, 312, 313, -1, -1, 31, 32, -1, -1,
700 -1, -1, 91, -1, 93, 41, -1, -1, 44, -1,
701 -1, 91, 256, 257, 258, 259, 260, 261, -1, 263,
702 264, 265, 58, 59, -1, 269, -1, 63, 272, 273,
703 274, 275, -1, -1, 123, 279, 280, 126, 282, 283,
704 284, -1, -1, 123, -1, 289, 290, 291, 292, 293,
705 -1, -1, 296, 297, -1, 91, -1, 93, -1, 303,
706 -1, -1, -1, 307, 33, 309, 310, 36, 37, 38,
707 -1, 40, 41, 42, 43, 44, 45, -1, -1, -1,
708 -1, -1, -1, -1, -1, -1, -1, 123, -1, 58,
709 59, -1, -1, -1, 63, 64, 272, 273, 274, 275,
710 -1, 308, -1, -1, 311, 312, 313, -1, 285, 286,
711 287, 288, -1, -1, -1, -1, -1, -1, 294, -1,
712 -1, -1, -1, -1, 93, 302, -1, 304, 305, -1,
713 41, 308, -1, 44, 311, 312, 313, -1, -1, 285,
714 286, 287, 288, -1, -1, -1, -1, 58, 59, -1,
715 -1, -1, 63, 299, 300, 301, 302, 126, 304, 305,
716 -1, -1, 308, -1, -1, 311, 312, 313, 257, 258,
717 259, 260, 261, -1, 263, 264, 265, -1, -1, -1,
718 269, -1, 93, 272, 273, 274, 275, -1, -1, -1,
719 -1, 280, 281, 282, 283, 284, 285, 286, 287, 288,
720 289, 290, 291, 292, 293, 294, 295, 296, 297, 298,
721 299, 300, 301, 302, 303, 304, 305, -1, 307, 308,
722 309, 310, 311, 312, 313, 305, -1, -1, 308, 91,
723 -1, 311, 312, 313, -1, -1, 272, 273, 274, 275,
724 -1, -1, -1, -1, -1, 281, -1, -1, -1, 285,
725 286, 287, 288, -1, -1, -1, -1, -1, 294, 295,
726 -1, 123, 298, 299, 300, 301, 302, -1, 304, 305,
727 -1, -1, 308, -1, -1, 311, 312, 313, 91, -1,
728 -1, -1, -1, -1, -1, -1, -1, -1, 257, 258,
729 259, 260, 261, -1, 263, 264, 265, -1, -1, -1,
730 269, -1, -1, 272, 273, 274, 275, -1, -1, -1,
731 123, 280, 281, 282, 283, 284, 285, 286, 287, 288,
732 289, 290, 291, 292, 293, 294, 295, 296, 297, 298,
733 299, 300, 301, 302, 303, 304, 305, -1, 307, 308,
734 309, 310, 311, 312, 313, 33, 48, 49, 36, 37,
735 38, -1, 40, -1, 42, 43, -1, 45, -1, -1,
736 -1, 272, 273, 274, 275, -1, -1, -1, -1, -1,
737 281, 59, -1, -1, 285, 286, 64, 288, -1, -1,
738 82, -1, -1, 294, 295, -1, 88, 298, 299, 300,
739 301, 302, -1, 304, -1, -1, -1, -1, -1, -1,
740 -1, 33, -1, 91, 36, 37, 38, -1, 40, -1,
741 42, 43, -1, 45, 116, -1, -1, -1, -1, -1,
742 -1, 123, -1, 285, 286, 287, 288, 59, -1, -1,
743 -1, -1, 64, -1, -1, 123, -1, -1, 126, 301,
744 302, -1, 304, 305, -1, -1, 308, -1, -1, 311,
745 312, 313, -1, -1, -1, -1, -1, 33, -1, 91,
746 36, 37, 38, -1, 40, -1, 42, 43, -1, 45,
747 -1, -1, -1, -1, 287, 288, -1, -1, -1, -1,
748 -1, -1, 184, -1, -1, -1, -1, -1, 64, -1,
749 -1, 123, 305, -1, 126, 308, -1, -1, 311, 312,
750 313, -1, -1, -1, 41, -1, -1, 44, -1, -1,
751 -1, -1, -1, -1, -1, 91, -1, 26, -1, -1,
752 33, 58, 59, 36, 37, 38, -1, 40, -1, 42,
753 43, -1, 45, 42, -1, -1, -1, -1, 47, -1,
754 49, -1, -1, -1, -1, -1, -1, 123, -1, -1,
755 126, 64, 61, 62, 63, 64, 93, -1, -1, -1,
756 -1, -1, -1, -1, -1, -1, -1, -1, 256, 257,
757 258, 259, 260, 261, -1, 263, 264, 265, 91, -1,
758 -1, 269, -1, -1, 272, 273, 274, 275, -1, -1,
759 -1, 279, 280, -1, 282, 283, 284, -1, 107, -1,
760 -1, 289, 290, 291, 292, 293, -1, -1, 296, 297,
761 123, -1, -1, 126, 91, 303, -1, -1, -1, 307,
762 -1, 309, 310, -1, 256, 257, 258, 259, 260, 261,
763 -1, 263, 264, 265, -1, -1, -1, 269, -1, -1,
764 272, 273, 274, 275, -1, -1, 123, 279, 280, -1,
765 282, 283, 284, -1, -1, -1, -1, 289, 290, 291,
766 292, 293, -1, -1, 296, 297, -1, -1, -1, -1,
767 91, 303, -1, -1, -1, 307, -1, 309, 310, -1,
768 -1, 257, 258, 259, 260, 261, 262, 263, 264, 265,
769 41, -1, -1, 269, -1, -1, -1, -1, -1, -1,
770 -1, -1, 123, -1, 280, -1, 282, 283, 284, -1,
771 -1, -1, 63, 289, 290, 291, 292, 293, -1, -1,
772 296, 297, -1, -1, -1, -1, -1, 303, -1, -1,
773 -1, 307, -1, 309, 310, 272, 273, 274, 275, -1,
774 91, -1, -1, -1, 257, 258, 259, 260, 261, -1,
775 263, 264, 265, -1, -1, -1, 269, 294, 295, -1,
776 -1, -1, -1, -1, -1, -1, -1, 280, -1, 282,
777 283, 284, 123, -1, -1, -1, 289, 290, 291, 292,
778 293, -1, -1, 296, 297, -1, -1, -1, -1, -1,
779 303, -1, -1, -1, 307, 33, 309, 310, 36, 37,
780 38, -1, 40, -1, 42, 43, -1, 45, 285, 286,
781 287, 288, -1, -1, -1, -1, -1, -1, -1, -1,
782 -1, 59, -1, 300, 301, 302, 64, 304, 305, -1,
783 -1, 308, -1, -1, 311, 312, 313, -1, -1, -1,
784 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
785 -1, 33, -1, 91, 36, 37, 38, -1, 40, -1,
786 42, 43, -1, 45, 285, 286, 287, 288, -1, -1,
787 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
788 -1, -1, 64, 304, 305, -1, -1, 308, 126, -1,
789 311, 312, 313, -1, -1, -1, -1, -1, -1, -1,
790 -1, -1, -1, -1, -1, -1, -1, 33, -1, 91,
791 36, 37, 38, -1, 40, 41, 42, 43, -1, 45,
792 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
793 281, -1, -1, -1, 285, 286, 287, 288, 64, -1,
794 -1, 123, -1, -1, 126, -1, -1, 298, 299, 300,
795 301, 302, -1, 304, 305, -1, -1, 308, -1, -1,
796 311, 312, 313, -1, -1, 91, -1, -1, -1, -1,
797 33, -1, -1, 36, 37, 38, -1, 40, -1, 42,
798 43, -1, 45, -1, -1, -1, -1, -1, -1, -1,
799 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
800 126, 64, -1, -1, -1, -1, -1, -1, -1, -1,
801 -1, -1, -1, -1, -1, -1, -1, -1, -1, 257,
802 258, 259, 260, 261, -1, 263, 264, 265, 91, -1,
803 93, 269, -1, -1, -1, 91, -1, -1, -1, -1,
804 -1, -1, 280, -1, 282, 283, 284, -1, -1, -1,
805 -1, 289, 290, 291, 292, 293, -1, 63, 296, 297,
806 -1, -1, -1, 126, -1, 303, -1, 123, -1, 307,
807 -1, 309, 310, -1, -1, 257, 258, 259, 260, 261,
808 -1, 263, 264, 265, -1, 91, -1, 269, -1, -1,
809 -1, -1, -1, -1, -1, -1, -1, -1, 280, -1,
810 282, 283, 284, -1, -1, -1, -1, 289, 290, 291,
811 292, 293, -1, -1, 296, 297, 91, 123, -1, -1,
812 -1, 303, -1, 41, -1, 307, 44, 309, 310, -1,
813 -1, 257, 258, 259, 260, 261, -1, 263, 264, 265,
814 58, 59, -1, 269, -1, 63, -1, -1, 123, -1,
815 -1, -1, -1, -1, 280, -1, 282, 283, 284, -1,
816 -1, -1, -1, 289, 290, 291, 292, 293, -1, -1,
817 296, 297, -1, -1, -1, 93, -1, 303, -1, -1,
818 -1, 307, -1, 309, 310, -1, -1, -1, -1, -1,
819 -1, -1, -1, -1, 257, 258, 259, 260, 261, -1,
820 263, 264, 265, -1, 33, -1, 269, 36, 37, 38,
821 -1, 40, -1, 42, 43, -1, 45, 280, -1, 282,
822 283, 284, -1, -1, -1, -1, 289, 290, 291, 292,
823 293, 287, 288, 296, 297, 64, -1, -1, -1, -1,
824 303, -1, -1, -1, 307, -1, 309, 310, 304, 305,
825 -1, -1, 308, -1, -1, 311, 312, 313, -1, -1,
826 33, -1, 91, 36, 37, 38, -1, 40, 41, 42,
827 43, -1, 45, -1, -1, 281, -1, -1, -1, 285,
828 286, 287, 288, -1, -1, -1, -1, -1, -1, -1,
829 -1, 64, 298, 299, 300, 301, 302, 126, 304, 305,
830 -1, -1, 308, -1, -1, 311, 312, 313, -1, -1,
831 285, -1, 287, 288, -1, -1, 33, -1, 91, 36,
832 37, 38, -1, 40, 41, 42, 43, -1, 45, 304,
833 305, -1, -1, 308, -1, -1, 311, 312, 313, -1,
834 -1, -1, -1, -1, -1, -1, -1, 64, -1, -1,
835 -1, -1, -1, 126, 272, 273, 274, 275, -1, -1,
836 -1, -1, -1, 281, -1, -1, -1, -1, -1, -1,
837 -1, -1, -1, -1, 91, -1, 294, 295, -1, 33,
838 298, 299, 36, 37, 38, -1, 40, 41, 42, 43,
839 -1, 45, -1, -1, -1, -1, -1, -1, -1, -1,
840 -1, -1, -1, -1, -1, -1, -1, -1, -1, 126,
841 64, -1, -1, -1, -1, -1, -1, -1, -1, -1,
842 -1, -1, -1, -1, -1, -1, -1, 256, 257, 258,
843 259, 260, 261, -1, 263, 264, 265, 91, -1, -1,
844 269, -1, -1, -1, -1, -1, -1, -1, -1, -1,
845 -1, 280, -1, 282, 283, 284, -1, -1, -1, -1,
846 289, 290, 291, 292, 293, -1, -1, 296, 297, -1,
847 -1, -1, 126, -1, 303, -1, 41, -1, 307, 44,
848 309, 310, -1, -1, 257, 258, 259, 260, 261, -1,
849 263, 264, 265, 58, 59, -1, 269, -1, 63, -1,
850 -1, -1, -1, -1, -1, -1, -1, 280, -1, 282,
851 283, 284, -1, -1, -1, -1, 289, 290, 291, 292,
852 293, -1, -1, 296, 297, -1, 91, -1, 93, -1,
853 303, -1, 41, -1, 307, 44, 309, 310, -1, -1,
854 257, 258, 259, 260, 261, -1, 263, 264, 265, 58,
855 59, -1, 269, -1, 63, -1, -1, -1, 123, -1,
856 -1, -1, -1, 280, -1, 282, 283, 284, -1, -1,
857 -1, -1, 289, 290, 291, 292, 293, -1, -1, 296,
858 297, -1, 91, -1, 93, -1, 303, -1, -1, -1,
859 307, -1, 309, 310, -1, -1, -1, -1, -1, -1,
860 -1, -1, -1, 257, 258, 259, 260, 261, -1, 263,
861 264, 265, -1, 33, 123, 269, 36, 37, 38, -1,
862 40, 41, 42, 43, -1, 45, 280, -1, 282, 283,
863 284, -1, -1, -1, -1, 289, 290, 291, 292, 293,
864 -1, -1, 296, 297, 64, -1, 25, 26, -1, 303,
865 -1, -1, -1, 307, -1, 309, 310, -1, 37, -1,
866 -1, -1, -1, 42, 43, -1, -1, -1, 47, 33,
867 49, 91, 36, 37, 38, -1, 40, -1, 42, 43,
868 -1, 45, 61, 62, 63, 64, -1, -1, -1, -1,
869 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
870 64, -1, -1, -1, -1, -1, 126, 272, 273, 274,
871 275, -1, -1, -1, -1, -1, 281, -1, -1, -1,
872 285, 286, 287, 288, -1, -1, -1, 91, 107, 294,
873 295, -1, -1, 298, 299, 300, 301, 302, -1, 304,
874 305, -1, 41, 308, -1, 44, 311, 312, 313, -1,
875 -1, -1, -1, 41, -1, -1, 44, -1, -1, 58,
876 59, -1, 126, 272, 273, 274, 275, -1, -1, -1,
877 58, 59, 281, -1, -1, 63, 285, 286, 287, 288,
878 -1, -1, -1, -1, -1, 294, 295, -1, 167, 298,
879 299, 300, 301, 302, 93, 304, 305, -1, 41, 308,
880 -1, 44, 311, 312, 313, 93, -1, -1, -1, -1,
881 -1, -1, -1, -1, -1, 58, 59, -1, -1, -1,
882 63, -1, -1, -1, -1, -1, -1, -1, -1, -1,
883 -1, -1, -1, -1, -1, 123, -1, 257, 258, 259,
884 260, 261, -1, 263, 264, 265, -1, -1, 91, 269,
885 93, -1, -1, -1, -1, -1, -1, -1, -1, -1,
886 280, -1, 282, 283, 284, -1, -1, -1, -1, 289,
887 290, 291, 292, 293, -1, -1, 296, 297, -1, -1,
888 -1, -1, -1, 303, -1, 41, -1, 307, 44, 309,
889 310, -1, -1, 257, 258, 259, 260, 261, -1, 263,
890 264, 265, 58, 59, -1, 269, -1, 63, -1, -1,
891 -1, -1, -1, -1, -1, -1, 280, -1, 282, 283,
892 284, -1, -1, -1, -1, 289, 290, 291, 292, 293,
893 -1, -1, 296, 297, -1, -1, -1, 93, -1, 303,
894 41, -1, -1, 307, -1, 309, 310, -1, -1, -1,
895 -1, -1, -1, -1, -1, -1, -1, 58, 59, -1,
896 -1, -1, 63, -1, -1, -1, -1, 123, -1, -1,
897 -1, -1, -1, 272, 273, 274, 275, -1, -1, -1,
898 -1, -1, -1, -1, 272, 273, 274, 275, -1, -1,
899 91, -1, 93, 281, -1, 294, 295, 285, 286, 287,
900 288, -1, -1, -1, -1, -1, 294, 295, -1, -1,
901 298, 299, 300, 301, 302, -1, 304, 305, -1, -1,
902 308, -1, 123, 311, 312, 313, -1, -1, -1, 272,
903 273, 274, 275, -1, -1, -1, -1, -1, 281, -1,
904 -1, -1, 285, 286, 287, 288, -1, -1, -1, -1,
905 -1, 294, 295, -1, 41, 298, 299, 300, 301, 302,
906 -1, 304, 305, -1, -1, 308, -1, -1, 311, 312,
907 313, 58, 59, -1, -1, -1, 63, -1, -1, -1,
908 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
909 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
910 -1, -1, -1, -1, 91, -1, 93, -1, -1, -1,
911 -1, -1, -1, -1, -1, -1, 272, 273, 274, 275,
912 -1, -1, -1, -1, -1, 281, -1, -1, -1, 285,
913 286, 287, 288, -1, -1, -1, 123, -1, 294, 295,
914 -1, -1, 298, 299, 300, 301, 302, -1, 304, 305,
915 41, -1, 308, 44, -1, 311, 312, 313, -1, -1,
916 -1, 41, -1, -1, 44, -1, -1, 58, 59, -1,
917 -1, 272, 273, 274, 275, -1, -1, -1, 58, 59,
918 281, -1, -1, 63, 285, 286, 287, 288, -1, -1,
919 -1, -1, -1, 294, 295, -1, -1, 298, 299, 300,
920 301, 302, 93, 304, 305, -1, -1, 308, -1, -1,
921 311, 312, 313, 93, 41, -1, -1, 44, -1, -1,
922 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
923 -1, 58, 59, -1, -1, -1, 63, -1, -1, -1,
924 -1, -1, -1, 123, -1, -1, -1, -1, -1, -1,
925 -1, -1, -1, -1, -1, -1, -1, 41, -1, -1,
926 44, -1, -1, -1, -1, -1, 93, -1, -1, -1,
927 -1, -1, -1, -1, 58, 59, -1, -1, -1, 63,
928 -1, -1, -1, -1, -1, 272, 273, 274, 275, -1,
929 -1, -1, -1, -1, 281, -1, 123, -1, 285, 286,
930 287, 288, -1, -1, -1, 41, -1, 294, 295, 93,
931 -1, 298, 299, 300, 301, 302, -1, 304, 305, -1,
932 -1, 308, 58, 59, 311, 312, 313, 63, -1, -1,
933 -1, -1, -1, -1, -1, -1, -1, -1, -1, 123,
934 -1, -1, -1, -1, -1, -1, -1, 41, -1, -1,
935 44, -1, -1, -1, -1, 91, -1, 93, -1, -1,
936 -1, -1, -1, -1, 58, 59, -1, -1, -1, 63,
937 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
938 -1, 272, 273, 274, 275, -1, -1, 123, -1, -1,
939 -1, -1, 272, 273, 274, 275, -1, -1, -1, 93,
940 -1, 281, -1, 294, 295, 285, 286, 287, 288, -1,
941 -1, -1, -1, -1, 294, 295, -1, -1, 298, 299,
942 300, 301, 302, -1, 304, 305, -1, -1, 308, -1,
943 -1, 311, 312, 313, -1, 41, -1, -1, 44, -1,
944 -1, -1, -1, -1, -1, 272, 273, 274, 275, -1,
945 -1, -1, 58, 59, 281, -1, -1, 63, 285, 286,
946 287, 288, -1, -1, -1, -1, -1, 294, 295, -1,
947 -1, 298, 299, 300, 301, 302, -1, 304, 305, -1,
948 -1, 308, -1, -1, 311, 312, 313, 93, 272, 273,
949 274, 275, -1, -1, -1, 41, -1, 281, 44, -1,
950 -1, 285, 286, 287, 288, -1, -1, -1, -1, -1,
951 294, 295, 58, 59, 298, 299, 300, 301, 302, -1,
952 304, 305, -1, -1, 308, -1, -1, 311, 312, 313,
953 -1, -1, -1, -1, -1, -1, 272, 273, 274, 275,
954 -1, -1, -1, -1, -1, 281, -1, 93, -1, 285,
955 286, 287, 288, -1, -1, -1, -1, -1, 294, 295,
956 -1, 63, 298, 299, 300, 301, 302, -1, 304, 305,
957 -1, -1, 308, -1, -1, 311, 312, 313, 272, 273,
958 274, 275, -1, -1, -1, -1, -1, 281, -1, 91,
959 -1, 285, 286, 287, 288, -1, -1, -1, -1, -1,
960 294, 295, -1, -1, 298, 299, 300, 301, 302, 41,
961 304, 305, 44, -1, 308, -1, -1, 311, 312, 313,
962 -1, 123, -1, -1, -1, -1, 58, 59, -1, -1,
963 -1, 63, -1, -1, -1, -1, -1, -1, -1, -1,
964 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
965 -1, -1, -1, -1, -1, -1, 41, -1, -1, 44,
966 -1, 93, -1, -1, -1, -1, 272, 273, 274, 275,
967 -1, -1, -1, 58, 59, 281, -1, -1, 63, 285,
968 286, 287, 288, -1, -1, -1, -1, -1, 294, 295,
969 -1, -1, 298, 299, 300, 301, 302, -1, 304, 305,
970 41, -1, 308, 44, -1, 311, 312, 313, 93, -1,
971 -1, -1, -1, -1, -1, -1, -1, 58, 59, -1,
972 -1, -1, 63, -1, -1, -1, 272, 273, 274, 275,
973 -1, -1, -1, -1, -1, -1, -1, 41, -1, -1,
974 44, -1, -1, -1, -1, -1, -1, -1, 294, 295,
975 -1, -1, 93, -1, 58, 59, -1, -1, -1, 63,
976 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
977 -1, -1, -1, -1, 41, -1, -1, 44, -1, 281,
978 -1, -1, -1, 285, 286, 287, 288, -1, -1, 93,
979 -1, 58, 59, -1, -1, -1, 63, 299, 300, 301,
980 302, -1, 304, 305, -1, -1, 308, -1, -1, 311,
981 312, 313, 41, -1, -1, 44, -1, -1, -1, -1,
982 -1, -1, -1, -1, -1, -1, 93, -1, -1, 58,
983 59, -1, -1, -1, 63, -1, -1, -1, -1, -1,
984 272, 273, 274, 275, -1, -1, -1, -1, -1, 281,
985 -1, -1, -1, 285, 286, 287, 288, -1, -1, -1,
986 -1, -1, 294, 295, 93, -1, 298, 299, 300, 301,
987 302, -1, 304, 305, -1, -1, 308, -1, -1, 311,
988 312, 313, -1, -1, -1, -1, -1, 272, 273, 274,
989 275, -1, -1, -1, -1, -1, 281, -1, -1, -1,
990 285, 286, 287, 288, -1, -1, -1, -1, -1, 294,
991 295, -1, -1, 298, 299, 300, 301, 302, -1, 304,
992 305, 41, -1, 308, 44, -1, 311, 312, 313, -1,
993 -1, 272, 273, 274, 275, -1, -1, -1, 58, 59,
994 281, -1, -1, 63, 285, 286, 287, 288, -1, -1,
995 -1, -1, -1, 294, 295, -1, -1, 298, 299, 300,
996 301, 302, -1, 304, 305, -1, -1, 308, 272, 273,
997 274, 275, -1, 93, -1, -1, -1, 281, -1, -1,
998 -1, 285, 286, 287, 288, -1, -1, -1, -1, -1,
999 294, 295, -1, -1, 298, 299, 300, 301, 302, -1,
1000 304, 305, -1, -1, 308, 272, 273, 274, 275, -1,
1001 -1, -1, -1, -1, 281, -1, -1, -1, 285, 286,
1002 287, 288, -1, -1, -1, -1, -1, 294, 295, -1,
1003 -1, 298, 299, 300, 301, 302, -1, 304, 305, -1,
1004 -1, -1, -1, 272, 273, 274, 275, -1, -1, -1,
1005 -1, -1, 281, -1, -1, -1, 285, 286, 287, 288,
1006 41, -1, -1, 44, -1, 294, 295, -1, -1, 298,
1007 299, 300, 301, 302, -1, 304, 305, 58, 59, -1,
1008 -1, -1, 63, -1, -1, -1, -1, -1, -1, -1,
1009 -1, -1, -1, -1, -1, -1, 41, -1, -1, 44,
1010 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1011 -1, -1, 93, 58, 59, -1, -1, -1, 63, -1,
1012 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1013 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1014 41, -1, -1, 44, -1, -1, -1, -1, 93, -1,
1015 -1, -1, 272, 273, 274, 275, -1, 58, 59, -1,
1016 -1, 281, 63, -1, -1, 285, 286, 287, 288, -1,
1017 -1, -1, -1, -1, 294, 295, -1, -1, 298, 299,
1018 300, 301, 302, 41, 304, 305, 44, -1, -1, -1,
1019 -1, -1, 93, -1, -1, -1, -1, -1, -1, -1,
1020 58, 59, -1, -1, -1, 63, -1, -1, -1, -1,
1021 -1, -1, -1, -1, -1, -1, -1, -1, -1, 41,
1022 -1, -1, 44, -1, -1, -1, -1, -1, -1, -1,
1023 -1, -1, -1, -1, -1, 93, 58, 59, -1, -1,
1024 -1, 63, -1, -1, -1, -1, -1, -1, -1, -1,
1025 -1, -1, -1, -1, -1, -1, 41, -1, -1, 44,
1026 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1027 -1, 93, -1, 58, 59, -1, -1, -1, 63, -1,
1028 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1029 -1, 272, 273, 274, 275, -1, -1, -1, -1, -1,
1030 281, -1, -1, -1, 285, 286, 287, 288, 93, -1,
1031 -1, -1, -1, 294, 295, -1, -1, 298, 299, 300,
1032 301, 302, -1, 304, 305, -1, -1, 272, 273, 274,
1033 275, -1, -1, -1, -1, -1, 281, -1, -1, -1,
1034 285, 286, 287, 288, 41, -1, -1, 44, -1, 294,
1035 295, -1, -1, 298, 299, 300, 301, 302, -1, 304,
1036 305, 58, 59, -1, -1, -1, 63, -1, -1, -1,
1037 -1, 272, 273, 274, 275, -1, -1, -1, -1, -1,
1038 281, -1, -1, -1, 285, 286, 287, 288, -1, -1,
1039 -1, -1, -1, 294, 295, -1, 93, 298, 299, 300,
1040 301, 302, 41, 304, 305, 44, -1, -1, -1, -1,
1041 -1, -1, -1, -1, 272, 273, 274, 275, -1, 58,
1042 59, -1, -1, 281, 63, -1, -1, 285, 286, 287,
1043 288, -1, -1, -1, -1, -1, 294, 295, -1, -1,
1044 298, 299, 300, 301, 302, -1, 304, 305, -1, -1,
1045 272, 273, 274, 275, 93, -1, -1, -1, -1, 281,
1046 -1, -1, -1, 285, 286, 287, 288, -1, -1, -1,
1047 -1, -1, 294, 295, -1, -1, 298, 299, 300, 301,
1048 302, 41, 304, -1, 44, -1, -1, 272, 273, 274,
1049 275, -1, -1, -1, -1, -1, 281, -1, 58, 59,
1050 285, 286, -1, 63, -1, -1, -1, -1, -1, 294,
1051 295, -1, -1, 298, 299, 300, 301, 302, 41, 304,
1052 -1, 44, -1, -1, -1, -1, -1, -1, 41, -1,
1053 -1, 44, -1, 93, -1, 58, 59, -1, -1, -1,
1054 63, -1, -1, -1, -1, 58, 59, -1, -1, -1,
1055 63, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1056 -1, -1, -1, -1, 41, -1, -1, 44, -1, -1,
1057 93, -1, -1, -1, -1, 272, 273, 274, 275, -1,
1058 93, 58, 59, -1, 281, -1, 63, -1, 285, 286,
1059 -1, -1, -1, -1, -1, -1, 41, 294, 295, 44,
1060 -1, 298, 299, 300, 301, 302, 41, -1, -1, 44,
1061 -1, -1, -1, 58, 59, -1, 93, -1, 63, -1,
1062 -1, -1, -1, 58, 59, -1, -1, -1, 63, -1,
1063 -1, -1, -1, 272, 273, 274, 275, -1, -1, 58,
1064 -1, -1, 281, -1, 63, -1, 285, 286, 93, -1,
1065 -1, -1, -1, -1, -1, 294, 295, -1, 93, 298,
1066 299, 300, 301, 302, -1, -1, -1, -1, -1, -1,
1067 -1, -1, 91, -1, -1, -1, -1, -1, -1, -1,
1068 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1069 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1070 -1, -1, -1, -1, 123, -1, -1, -1, -1, -1,
1071 -1, -1, 272, 273, 274, 275, -1, -1, -1, -1,
1072 -1, 281, -1, -1, -1, 285, 286, -1, -1, -1,
1073 -1, -1, -1, -1, 294, 295, -1, -1, 298, 299,
1074 300, 301, 302, -1, -1, -1, -1, -1, -1, 272,
1075 273, 274, 275, -1, -1, -1, -1, -1, 281, 272,
1076 273, 274, 275, 286, -1, -1, -1, -1, 281, -1,
1077 -1, 294, 295, -1, -1, 298, 299, 300, 301, 302,
1078 -1, 294, 295, -1, -1, 298, 299, 300, 301, 302,
1079 -1, -1, -1, -1, -1, 272, 273, 274, 275, -1,
1080 -1, -1, -1, -1, 281, -1, -1, -1, -1, -1,
1081 -1, -1, -1, -1, -1, -1, -1, 294, 295, -1,
1082 -1, 298, 299, 300, 301, 302, -1, 272, 273, 274,
1083 275, -1, -1, -1, -1, -1, 281, 272, 273, 274,
1084 275, -1, -1, -1, -1, -1, 281, -1, -1, 294,
1085 295, -1, -1, 298, 299, 300, 301, -1, -1, 294,
1086 295, -1, 281, 298, 299, 300, 285, 286, 287, 288,
1087 -1, -1, -1, -1, -1, -1, -1, -1, -1, 298,
1088 299, 300, 301, 302, -1, 304, 305, 30, -1, 308,
1089 -1, -1, 311, 312, 313, 38, -1, -1, -1, -1,
1090 43, 44, -1, -1, -1, -1, -1, 50, 51, 52,
1091 53, 54, 55, -1, -1, 58, 59, -1, -1, -1,
1092 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1093 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1094 -1, -1, -1, -1, -1, -1, -1, 90, -1, -1,
1095 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1096 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1097 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1098 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1099 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1100 143, -1, -1, -1, -1, -1, -1, -1, 151, 152,
1101 153, 154, 155, 156, 157, 158, 159, 160, 161, 162,
1102 163, 164, -1, -1, -1, -1, -1, -1, -1, -1,
1103 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1104 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1105 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1106 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1107 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1108 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1109 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1110 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1111 -1, -1, -1, 256, -1, -1, -1, -1, -1, -1,
1112 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1113 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1120 #define YYMAXTOKEN 313
1122 dEXT char * yyname[] = {
1123 "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,
1124 "'!'",0,0,"'$'","'%'","'&'",0,"'('","')'","'*'","'+'","','","'-'",0,0,0,0,0,0,0,
1125 0,0,0,0,0,"':'","';'",0,0,0,"'?'","'@'",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1126 0,0,0,0,0,0,"'['",0,"']'",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1127 0,0,"'{'",0,"'}'","'~'",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1128 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1129 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1130 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",
1131 "PMFUNC","PRIVATEREF","FUNC0SUB","UNIOPSUB","LSTOPSUB","LABEL","FORMAT","SUB",
1132 "ANONSUB","PACKAGE","USE","WHILE","UNTIL","IF","UNLESS","ELSE","ELSIF",
1133 "CONTINUE","FOR","LOOPEX","DOTDOT","FUNC0","FUNC1","FUNC","RELOP","EQOP",
1134 "MULOP","ADDOP","DOLSHARP","DO","LOCAL","HASHBRACK","NOAMP","OROP","ANDOP",
1135 "NOTOP","LSTOP","ASSIGNOP","OROR","ANDAND","BITOROP","BITANDOP","UNIOP",
1136 "SHIFTOP","MATCHOP","UMINUS","REFGEN","POWOP","PREINC","PREDEC","POSTINC",
1139 dEXT char * yyrule[] = {
1142 "prog : $$1 lineseq",
1143 "block : '{' remember lineseq '}'",
1146 "lineseq : lineseq decl",
1147 "lineseq : lineseq line",
1148 "line : label cond",
1151 "line : label sideff ';'",
1154 "sideff : expr IF expr",
1155 "sideff : expr UNLESS expr",
1156 "sideff : expr WHILE expr",
1157 "sideff : expr UNTIL expr",
1159 "else : ELSE block",
1160 "else : ELSIF '(' expr ')' block else",
1161 "cond : IF '(' expr ')' block else",
1162 "cond : UNLESS '(' expr ')' block else",
1163 "cond : IF block block else",
1164 "cond : UNLESS block block else",
1166 "cont : CONTINUE block",
1167 "loop : label WHILE '(' texpr ')' block cont",
1168 "loop : label UNTIL '(' expr ')' block cont",
1169 "loop : label WHILE block block cont",
1170 "loop : label UNTIL block block cont",
1171 "loop : label FOR scalar '(' expr ')' block cont",
1172 "loop : label FOR '(' expr ')' block cont",
1173 "loop : label FOR '(' nexpr ';' texpr ';' nexpr ')' block",
1174 "loop : label block cont",
1185 "format : FORMAT startsub WORD block",
1186 "format : FORMAT startsub block",
1187 "subrout : SUB startsub WORD proto block",
1188 "subrout : SUB startsub WORD proto ';'",
1192 "package : PACKAGE WORD ';'",
1193 "package : PACKAGE ';'",
1194 "use : USE startsub WORD listexpr ';'",
1195 "expr : expr ANDOP expr",
1196 "expr : expr OROP expr",
1198 "argexpr : argexpr ','",
1199 "argexpr : argexpr ',' term",
1201 "listop : LSTOP indirob argexpr",
1202 "listop : FUNC '(' indirob expr ')'",
1203 "listop : term ARROW method '(' listexprcom ')'",
1204 "listop : METHOD indirob listexpr",
1205 "listop : FUNCMETH indirob '(' listexprcom ')'",
1206 "listop : LSTOP listexpr",
1207 "listop : FUNC '(' listexprcom ')'",
1208 "listop : LSTOPSUB startsub block listexpr",
1211 "term : term ASSIGNOP term",
1212 "term : term POWOP term",
1213 "term : term MULOP term",
1214 "term : term ADDOP term",
1215 "term : term SHIFTOP term",
1216 "term : term RELOP term",
1217 "term : term EQOP term",
1218 "term : term BITANDOP term",
1219 "term : term BITOROP term",
1220 "term : term DOTDOT term",
1221 "term : term ANDAND term",
1222 "term : term OROR term",
1223 "term : term '?' term ':' term",
1224 "term : term MATCHOP term",
1229 "term : REFGEN term",
1230 "term : term POSTINC",
1231 "term : term POSTDEC",
1232 "term : PREINC term",
1233 "term : PREDEC term",
1234 "term : LOCAL term",
1235 "term : '(' expr ')'",
1237 "term : '[' expr ']'",
1239 "term : HASHBRACK expr ';' '}'",
1240 "term : HASHBRACK ';' '}'",
1241 "term : ANONSUB startsub proto block",
1243 "term : star '{' expr ';' '}'",
1245 "term : scalar '[' expr ']'",
1246 "term : term ARROW '[' expr ']'",
1247 "term : term '[' expr ']'",
1251 "term : scalar '{' expr ';' '}'",
1252 "term : term ARROW '{' expr ';' '}'",
1253 "term : term '{' expr ';' '}'",
1254 "term : '(' expr ')' '[' expr ']'",
1255 "term : '(' ')' '[' expr ']'",
1256 "term : ary '[' expr ']'",
1257 "term : ary '{' expr ';' '}'",
1260 "term : amper '(' ')'",
1261 "term : amper '(' expr ')'",
1262 "term : NOAMP WORD listexpr",
1265 "term : DO WORD '(' ')'",
1266 "term : DO WORD '(' expr ')'",
1267 "term : DO scalar '(' ')'",
1268 "term : DO scalar '(' expr ')'",
1270 "term : LOOPEX term",
1271 "term : NOTOP argexpr",
1273 "term : UNIOP block",
1274 "term : UNIOP term",
1275 "term : UNIOPSUB term",
1277 "term : FUNC0 '(' ')'",
1279 "term : FUNC1 '(' ')'",
1280 "term : FUNC1 '(' expr ')'",
1281 "term : PMFUNC '(' term ')'",
1282 "term : PMFUNC '(' term ',' term ')'",
1286 "listexpr : argexpr",
1288 "listexprcom : expr",
1289 "listexprcom : expr ','",
1290 "amper : '&' indirob",
1291 "scalar : '$' indirob",
1292 "ary : '@' indirob",
1293 "hsh : '%' indirob",
1294 "arylen : DOLSHARP indirob",
1295 "star : '*' indirob",
1299 "indirob : PRIVATEREF",
1302 #define yyclearin (yychar=(-1))
1303 #define yyerrok (yyerrflag=0)
1306 #define YYMAXDEPTH YYSTACKSIZE
1310 #define YYSTACKSIZE YYMAXDEPTH
1312 #define YYSTACKSIZE 500
1313 #define YYMAXDEPTH 500
1321 dEXT YYSTYPE yylval;
1324 #line 1394 "y_tab.c"
1325 #define YYABORT goto yyabort
1326 #define YYACCEPT goto yyaccept
1327 #define YYERROR goto yyerrlab
1344 struct ysv* ysave = (struct ysv*)ptr;
1345 if (ysave->yyss) Safefree(ysave->yyss);
1346 if (ysave->yyvs) Safefree(ysave->yyvs);
1347 yydebug = ysave->oldyydebug;
1348 yynerrs = ysave->oldyynerrs;
1349 yyerrflag = ysave->oldyyerrflag;
1350 yychar = ysave->oldyychar;
1351 yyval = ysave->oldyyval;
1352 yylval = ysave->oldyylval;
1359 register int yym, yyn, yystate;
1360 register short *yyssp;
1361 register YYSTYPE *yyvsp;
1364 unsigned yystacksize = YYSTACKSIZE;
1368 extern char *getenv();
1371 struct ysv *ysave = (struct ysv*)safemalloc(sizeof(struct ysv));
1372 SAVEDESTRUCTOR(yydestruct, ysave);
1373 ysave->oldyydebug = yydebug;
1374 ysave->oldyynerrs = yynerrs;
1375 ysave->oldyyerrflag = yyerrflag;
1376 ysave->oldyychar = yychar;
1377 ysave->oldyyval = yyval;
1378 ysave->oldyylval = yylval;
1381 if (yys = getenv("YYDEBUG"))
1384 if (yyn >= '0' && yyn <= '9')
1385 yydebug = yyn - '0';
1394 ** Initialize private stacks (yyparse may be called from an action)
1396 ysave->yyss = yyss = (short*)safemalloc(yystacksize*sizeof(short));
1397 ysave->yyvs = yyvs = (YYSTYPE*)safemalloc(yystacksize*sizeof(YYSTYPE));
1403 *yyssp = yystate = 0;
1406 if (yyn = yydefred[yystate]) goto yyreduce;
1409 if ((yychar = yylex()) < 0) yychar = 0;
1414 if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
1415 if (!yys) yys = "illegal-symbol";
1416 fprintf(stderr, "yydebug: state %d, reading %d (%s)\n", yystate,
1421 if ((yyn = yysindex[yystate]) && (yyn += yychar) >= 0 &&
1422 yyn <= YYTABLESIZE && yycheck[yyn] == yychar)
1426 fprintf(stderr, "yydebug: state %d, shifting to state %d\n",
1427 yystate, yytable[yyn]);
1429 if (yyssp >= yyss + yystacksize - 1)
1432 ** reallocate and recover. Note that pointers
1433 ** have to be reset, or bad things will happen
1435 int yyps_index = (yyssp - yyss);
1436 int yypv_index = (yyvsp - yyvs);
1437 yystacksize += YYSTACKSIZE;
1438 ysave->yyvs = yyvs =
1439 (YYSTYPE*)realloc((char*)yyvs,yystacksize * sizeof(YYSTYPE));
1440 ysave->yyss = yyss =
1441 (short*)realloc((char*)yyss,yystacksize * sizeof(short));
1444 yyssp = yyss + yyps_index;
1445 yyvsp = yyvs + yypv_index;
1447 *++yyssp = yystate = yytable[yyn];
1450 if (yyerrflag > 0) --yyerrflag;
1453 if ((yyn = yyrindex[yystate]) && (yyn += yychar) >= 0 &&
1454 yyn <= YYTABLESIZE && yycheck[yyn] == yychar)
1459 if (yyerrflag) goto yyinrecovery;
1464 yyerror("syntax error");
1476 if ((yyn = yysindex[*yyssp]) && (yyn += YYERRCODE) >= 0 &&
1477 yyn <= YYTABLESIZE && yycheck[yyn] == YYERRCODE)
1482 "yydebug: state %d, error recovery shifting to state %d\n",
1483 *yyssp, yytable[yyn]);
1485 if (yyssp >= yyss + yystacksize - 1)
1488 ** reallocate and recover. Note that pointers
1489 ** have to be reset, or bad things will happen
1491 int yyps_index = (yyssp - yyss);
1492 int yypv_index = (yyvsp - yyvs);
1493 yystacksize += YYSTACKSIZE;
1494 ysave->yyvs = yyvs = (YYSTYPE*)realloc((char*)yyvs,
1495 yystacksize * sizeof(YYSTYPE));
1496 ysave->yyss = yyss = (short*)realloc((char*)yyss,
1497 yystacksize * sizeof(short));
1500 yyssp = yyss + yyps_index;
1501 yyvsp = yyvs + yypv_index;
1503 *++yyssp = yystate = yytable[yyn];
1512 "yydebug: error recovery discarding state %d\n",
1515 if (yyssp <= yyss) goto yyabort;
1523 if (yychar == 0) goto yyabort;
1528 if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
1529 if (!yys) yys = "illegal-symbol";
1531 "yydebug: state %d, error recovery discards token %d (%s)\n",
1532 yystate, yychar, yys);
1541 fprintf(stderr, "yydebug: state %d, reducing by rule %d (%s)\n",
1542 yystate, yyn, yyrule[yyn]);
1545 yyval = yyvsp[1-yym];
1551 #if defined(YYDEBUG) && defined(DEBUGGING)
1552 yydebug = (debug & 1);
1559 { newPROG(yyvsp[0].opval); }
1563 { yyval.opval = block_end(yyvsp[-3].ival,yyvsp[-2].ival,yyvsp[-1].opval); }
1567 { yyval.ival = block_start(); }
1571 { yyval.opval = Nullop; }
1575 { yyval.opval = yyvsp[-1].opval; }
1579 { yyval.opval = append_list(OP_LINESEQ,
1580 (LISTOP*)yyvsp[-1].opval, (LISTOP*)yyvsp[0].opval);
1581 pad_reset_pending = TRUE;
1582 if (yyvsp[-1].opval && yyvsp[0].opval) hints |= HINT_BLOCK_SCOPE; }
1586 { yyval.opval = newSTATEOP(0, yyvsp[-1].pval, yyvsp[0].opval); }
1590 { if (yyvsp[-1].pval != Nullch) {
1591 yyval.opval = newSTATEOP(0, yyvsp[-1].pval, newOP(OP_NULL, 0));
1594 yyval.opval = Nullop;
1601 { yyval.opval = newSTATEOP(0, yyvsp[-2].pval, yyvsp[-1].opval);
1606 { yyval.opval = Nullop; }
1610 { yyval.opval = yyvsp[0].opval; }
1614 { yyval.opval = newLOGOP(OP_AND, 0, yyvsp[0].opval, yyvsp[-2].opval); }
1618 { yyval.opval = newLOGOP(OP_OR, 0, yyvsp[0].opval, yyvsp[-2].opval); }
1622 { yyval.opval = newLOOPOP(OPf_PARENS, 1, scalar(yyvsp[0].opval), yyvsp[-2].opval); }
1626 { yyval.opval = newLOOPOP(OPf_PARENS, 1, invert(scalar(yyvsp[0].opval)), yyvsp[-2].opval);}
1630 { yyval.opval = Nullop; }
1634 { yyval.opval = scope(yyvsp[0].opval); }
1638 { copline = yyvsp[-5].ival;
1639 yyval.opval = newSTATEOP(0, 0,
1640 newCONDOP(0, yyvsp[-3].opval, scope(yyvsp[-1].opval), yyvsp[0].opval));
1641 hints |= HINT_BLOCK_SCOPE; }
1645 { copline = yyvsp[-5].ival;
1646 yyval.opval = newCONDOP(0, yyvsp[-3].opval, scope(yyvsp[-1].opval), yyvsp[0].opval); }
1650 { copline = yyvsp[-5].ival;
1651 yyval.opval = newCONDOP(0,
1652 invert(scalar(yyvsp[-3].opval)), scope(yyvsp[-1].opval), yyvsp[0].opval); }
1656 { copline = yyvsp[-3].ival;
1657 deprecate("if BLOCK BLOCK");
1658 yyval.opval = newCONDOP(0, scope(yyvsp[-2].opval), scope(yyvsp[-1].opval), yyvsp[0].opval); }
1662 { copline = yyvsp[-3].ival;
1663 deprecate("unless BLOCK BLOCK");
1664 yyval.opval = newCONDOP(0, invert(scalar(scope(yyvsp[-2].opval))),
1665 scope(yyvsp[-1].opval), yyvsp[0].opval); }
1669 { yyval.opval = Nullop; }
1673 { yyval.opval = scope(yyvsp[0].opval); }
1677 { copline = yyvsp[-5].ival;
1678 yyval.opval = newSTATEOP(0, yyvsp[-6].pval,
1679 newWHILEOP(0, 1, (LOOP*)Nullop,
1680 yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval) ); }
1684 { copline = yyvsp[-5].ival;
1685 yyval.opval = newSTATEOP(0, yyvsp[-6].pval,
1686 newWHILEOP(0, 1, (LOOP*)Nullop,
1687 invert(scalar(yyvsp[-3].opval)), yyvsp[-1].opval, yyvsp[0].opval) ); }
1691 { copline = yyvsp[-3].ival;
1692 yyval.opval = newSTATEOP(0, yyvsp[-4].pval,
1693 newWHILEOP(0, 1, (LOOP*)Nullop,
1694 scope(yyvsp[-2].opval), yyvsp[-1].opval, yyvsp[0].opval) ); }
1698 { copline = yyvsp[-3].ival;
1699 yyval.opval = newSTATEOP(0, yyvsp[-4].pval,
1700 newWHILEOP(0, 1, (LOOP*)Nullop,
1701 invert(scalar(scope(yyvsp[-2].opval))), yyvsp[-1].opval, yyvsp[0].opval)); }
1705 { yyval.opval = newFOROP(0, yyvsp[-7].pval, yyvsp[-6].ival, mod(yyvsp[-5].opval, OP_ENTERLOOP),
1706 yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval); }
1710 { yyval.opval = newFOROP(0, yyvsp[-6].pval, yyvsp[-5].ival, Nullop, yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval); }
1714 { copline = yyvsp[-8].ival;
1715 yyval.opval = append_elem(OP_LINESEQ,
1716 newSTATEOP(0, yyvsp[-9].pval, scalar(yyvsp[-6].opval)),
1717 newSTATEOP(0, yyvsp[-9].pval,
1718 newWHILEOP(0, 1, (LOOP*)Nullop,
1719 scalar(yyvsp[-4].opval), yyvsp[0].opval, scalar(yyvsp[-2].opval)) )); }
1723 { yyval.opval = newSTATEOP(0,
1724 yyvsp[-2].pval, newWHILEOP(0, 1, (LOOP*)Nullop,
1725 Nullop, yyvsp[-1].opval, yyvsp[0].opval)); }
1729 { yyval.opval = Nullop; }
1733 { (void)scan_num("1"); yyval.opval = yylval.opval; }
1737 { yyval.pval = Nullch; }
1757 { newFORM(yyvsp[-2].ival, yyvsp[-1].opval, yyvsp[0].opval); }
1761 { newFORM(yyvsp[-1].ival, Nullop, yyvsp[0].opval); }
1765 { newSUB(yyvsp[-3].ival, yyvsp[-2].opval, yyvsp[-1].opval, yyvsp[0].opval); }
1769 { newSUB(yyvsp[-3].ival, yyvsp[-2].opval, yyvsp[-1].opval, Nullop); expect = XSTATE; }
1773 { yyval.opval = Nullop; }
1777 { yyval.ival = start_subparse(); }
1781 { package(yyvsp[-1].opval); }
1785 { package(Nullop); }
1789 { utilize(yyvsp[-4].ival, yyvsp[-3].ival, yyvsp[-2].opval, yyvsp[-1].opval); }
1793 { yyval.opval = newLOGOP(OP_AND, 0, yyvsp[-2].opval, yyvsp[0].opval); }
1797 { yyval.opval = newLOGOP(yyvsp[-1].ival, 0, yyvsp[-2].opval, yyvsp[0].opval); }
1801 { yyval.opval = yyvsp[-1].opval; }
1805 { yyval.opval = append_elem(OP_LIST, yyvsp[-2].opval, yyvsp[0].opval); }
1809 { yyval.opval = convert(yyvsp[-2].ival, OPf_STACKED,
1810 prepend_elem(OP_LIST, newGVREF(yyvsp[-2].ival,yyvsp[-1].opval), yyvsp[0].opval) ); }
1814 { yyval.opval = convert(yyvsp[-4].ival, OPf_STACKED,
1815 prepend_elem(OP_LIST, newGVREF(yyvsp[-4].ival,yyvsp[-2].opval), yyvsp[-1].opval) ); }
1819 { yyval.opval = convert(OP_ENTERSUB, OPf_STACKED,
1820 append_elem(OP_LIST,
1821 prepend_elem(OP_LIST, yyvsp[-5].opval, yyvsp[-1].opval),
1822 newUNOP(OP_METHOD, 0, yyvsp[-3].opval))); }
1826 { yyval.opval = convert(OP_ENTERSUB, OPf_STACKED,
1827 append_elem(OP_LIST,
1828 prepend_elem(OP_LIST, yyvsp[-1].opval, yyvsp[0].opval),
1829 newUNOP(OP_METHOD, 0, yyvsp[-2].opval))); }
1833 { yyval.opval = convert(OP_ENTERSUB, OPf_STACKED,
1834 append_elem(OP_LIST,
1835 prepend_elem(OP_LIST, yyvsp[-3].opval, yyvsp[-1].opval),
1836 newUNOP(OP_METHOD, 0, yyvsp[-4].opval))); }
1840 { yyval.opval = convert(yyvsp[-1].ival, 0, yyvsp[0].opval); }
1844 { yyval.opval = convert(yyvsp[-3].ival, 0, yyvsp[-1].opval); }
1848 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
1849 append_elem(OP_LIST,
1850 prepend_elem(OP_LIST, newANONSUB(yyvsp[-2].ival, 0, yyvsp[-1].opval), yyvsp[0].opval),
1851 yyvsp[-3].opval)); }
1855 { yyval.opval = newASSIGNOP(OPf_STACKED, yyvsp[-2].opval, yyvsp[-1].ival, yyvsp[0].opval); }
1859 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1863 { if (yyvsp[-1].ival != OP_REPEAT)
1864 scalar(yyvsp[-2].opval);
1865 yyval.opval = newBINOP(yyvsp[-1].ival, 0, yyvsp[-2].opval, scalar(yyvsp[0].opval)); }
1869 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1873 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1877 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1881 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1885 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1889 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1893 { yyval.opval = newRANGE(yyvsp[-1].ival, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval));}
1897 { yyval.opval = newLOGOP(OP_AND, 0, yyvsp[-2].opval, yyvsp[0].opval); }
1901 { yyval.opval = newLOGOP(OP_OR, 0, yyvsp[-2].opval, yyvsp[0].opval); }
1905 { yyval.opval = newCONDOP(0, yyvsp[-4].opval, yyvsp[-2].opval, yyvsp[0].opval); }
1909 { yyval.opval = bind_match(yyvsp[-1].ival, yyvsp[-2].opval, yyvsp[0].opval); }
1913 { yyval.opval = newUNOP(OP_NEGATE, 0, scalar(yyvsp[0].opval)); }
1917 { yyval.opval = yyvsp[0].opval; }
1921 { yyval.opval = newUNOP(OP_NOT, 0, scalar(yyvsp[0].opval)); }
1925 { yyval.opval = newUNOP(OP_COMPLEMENT, 0, scalar(yyvsp[0].opval));}
1929 { yyval.opval = newUNOP(OP_REFGEN, 0, mod(yyvsp[0].opval,OP_REFGEN)); }
1933 { yyval.opval = newUNOP(OP_POSTINC, 0,
1934 mod(scalar(yyvsp[-1].opval), OP_POSTINC)); }
1938 { yyval.opval = newUNOP(OP_POSTDEC, 0,
1939 mod(scalar(yyvsp[-1].opval), OP_POSTDEC)); }
1943 { yyval.opval = newUNOP(OP_PREINC, 0,
1944 mod(scalar(yyvsp[0].opval), OP_PREINC)); }
1948 { yyval.opval = newUNOP(OP_PREDEC, 0,
1949 mod(scalar(yyvsp[0].opval), OP_PREDEC)); }
1953 { yyval.opval = localize(yyvsp[0].opval,yyvsp[-1].ival); }
1957 { yyval.opval = sawparens(yyvsp[-1].opval); }
1961 { yyval.opval = sawparens(newNULLLIST()); }
1965 { yyval.opval = newANONLIST(yyvsp[-1].opval); }
1969 { yyval.opval = newANONLIST(Nullop); }
1973 { yyval.opval = newANONHASH(yyvsp[-2].opval); }
1977 { yyval.opval = newANONHASH(Nullop); }
1981 { yyval.opval = newANONSUB(yyvsp[-2].ival, yyvsp[-1].opval, yyvsp[0].opval); }
1985 { yyval.opval = yyvsp[0].opval; }
1989 { yyval.opval = newBINOP(OP_GELEM, 0, newGVREF(0,yyvsp[-4].opval), yyvsp[-2].opval); }
1993 { yyval.opval = yyvsp[0].opval; }
1997 { yyval.opval = newBINOP(OP_AELEM, 0, oopsAV(yyvsp[-3].opval), scalar(yyvsp[-1].opval)); }
2001 { yyval.opval = newBINOP(OP_AELEM, 0,
2002 ref(newAVREF(yyvsp[-4].opval),OP_RV2AV),
2003 scalar(yyvsp[-1].opval));}
2007 { assertref(yyvsp[-3].opval); yyval.opval = newBINOP(OP_AELEM, 0,
2008 ref(newAVREF(yyvsp[-3].opval),OP_RV2AV),
2009 scalar(yyvsp[-1].opval));}
2013 { yyval.opval = yyvsp[0].opval; }
2017 { yyval.opval = yyvsp[0].opval; }
2021 { yyval.opval = newUNOP(OP_AV2ARYLEN, 0, ref(yyvsp[0].opval, OP_AV2ARYLEN));}
2025 { yyval.opval = newBINOP(OP_HELEM, 0, oopsHV(yyvsp[-4].opval), jmaybe(yyvsp[-2].opval));
2026 expect = XOPERATOR; }
2030 { yyval.opval = newBINOP(OP_HELEM, 0,
2031 ref(newHVREF(yyvsp[-5].opval),OP_RV2HV),
2032 jmaybe(yyvsp[-2].opval));
2033 expect = XOPERATOR; }
2037 { assertref(yyvsp[-4].opval); yyval.opval = newBINOP(OP_HELEM, 0,
2038 ref(newHVREF(yyvsp[-4].opval),OP_RV2HV),
2039 jmaybe(yyvsp[-2].opval));
2040 expect = XOPERATOR; }
2044 { yyval.opval = newSLICEOP(0, yyvsp[-1].opval, yyvsp[-4].opval); }
2048 { yyval.opval = newSLICEOP(0, yyvsp[-1].opval, Nullop); }
2052 { yyval.opval = prepend_elem(OP_ASLICE,
2053 newOP(OP_PUSHMARK, 0),
2054 newLISTOP(OP_ASLICE, 0,
2055 list(yyvsp[-1].opval),
2056 ref(yyvsp[-3].opval, OP_ASLICE))); }
2060 { yyval.opval = prepend_elem(OP_HSLICE,
2061 newOP(OP_PUSHMARK, 0),
2062 newLISTOP(OP_HSLICE, 0,
2063 list(yyvsp[-2].opval),
2064 ref(oopsHV(yyvsp[-4].opval), OP_HSLICE)));
2065 expect = XOPERATOR; }
2069 { yyval.opval = yyvsp[0].opval; }
2073 { yyval.opval = newUNOP(OP_ENTERSUB, 0, scalar(yyvsp[0].opval)); }
2077 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED, scalar(yyvsp[-2].opval)); }
2081 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2082 append_elem(OP_LIST, yyvsp[-1].opval, scalar(yyvsp[-3].opval))); }
2086 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2087 append_elem(OP_LIST, yyvsp[0].opval, scalar(yyvsp[-1].opval))); }
2091 { yyval.opval = newUNOP(OP_DOFILE, 0, scalar(yyvsp[0].opval)); }
2095 { yyval.opval = newUNOP(OP_NULL, OPf_SPECIAL, scope(yyvsp[0].opval)); }
2099 { yyval.opval = newUNOP(OP_ENTERSUB,
2100 OPf_SPECIAL|OPf_STACKED,
2101 prepend_elem(OP_LIST,
2103 (OPpENTERSUB_AMPER<<8),
2104 scalar(yyvsp[-2].opval)
2105 )),Nullop)); dep();}
2109 { yyval.opval = newUNOP(OP_ENTERSUB,
2110 OPf_SPECIAL|OPf_STACKED,
2111 append_elem(OP_LIST,
2114 (OPpENTERSUB_AMPER<<8),
2115 scalar(yyvsp[-3].opval)
2120 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_SPECIAL|OPf_STACKED,
2121 prepend_elem(OP_LIST,
2122 scalar(newCVREF(0,scalar(yyvsp[-2].opval))), Nullop)); dep();}
2126 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_SPECIAL|OPf_STACKED,
2127 prepend_elem(OP_LIST,
2129 scalar(newCVREF(0,scalar(yyvsp[-3].opval))))); dep();}
2133 { yyval.opval = newOP(yyvsp[0].ival, OPf_SPECIAL);
2134 hints |= HINT_BLOCK_SCOPE; }
2138 { yyval.opval = newLOOPEX(yyvsp[-1].ival,yyvsp[0].opval); }
2142 { yyval.opval = newUNOP(OP_NOT, 0, scalar(yyvsp[0].opval)); }
2146 { yyval.opval = newOP(yyvsp[0].ival, 0); }
2150 { yyval.opval = newUNOP(yyvsp[-1].ival, 0, yyvsp[0].opval); }
2154 { yyval.opval = newUNOP(yyvsp[-1].ival, 0, yyvsp[0].opval); }
2158 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2159 append_elem(OP_LIST, yyvsp[0].opval, scalar(yyvsp[-1].opval))); }
2163 { yyval.opval = newOP(yyvsp[0].ival, 0); }
2167 { yyval.opval = newOP(yyvsp[-2].ival, 0); }
2171 { yyval.opval = newUNOP(OP_ENTERSUB, 0,
2172 scalar(yyvsp[0].opval)); }
2176 { yyval.opval = newOP(yyvsp[-2].ival, OPf_SPECIAL); }
2180 { yyval.opval = newUNOP(yyvsp[-3].ival, 0, yyvsp[-1].opval); }
2184 { yyval.opval = pmruntime(yyvsp[-3].opval, yyvsp[-1].opval, Nullop); }
2188 { yyval.opval = pmruntime(yyvsp[-5].opval, yyvsp[-3].opval, yyvsp[-1].opval); }
2192 { yyval.opval = Nullop; }
2196 { yyval.opval = yyvsp[0].opval; }
2200 { yyval.opval = Nullop; }
2204 { yyval.opval = yyvsp[0].opval; }
2208 { yyval.opval = yyvsp[-1].opval; }
2212 { yyval.opval = newCVREF(yyvsp[-1].ival,yyvsp[0].opval); }
2216 { yyval.opval = newSVREF(yyvsp[0].opval); }
2220 { yyval.opval = newAVREF(yyvsp[0].opval); }
2224 { yyval.opval = newHVREF(yyvsp[0].opval); }
2228 { yyval.opval = newAVREF(yyvsp[0].opval); }
2232 { yyval.opval = newGVREF(0,yyvsp[0].opval); }
2236 { yyval.opval = scalar(yyvsp[0].opval); }
2240 { yyval.opval = scalar(yyvsp[0].opval); }
2244 { yyval.opval = scope(yyvsp[0].opval); }
2248 { yyval.opval = yyvsp[0].opval; }
2250 #line 2236 "y_tab.c"
2256 if (yystate == 0 && yym == 0)
2261 "yydebug: after reduction, shifting from state 0 to state %d\n",
2269 if ((yychar = yylex()) < 0) yychar = 0;
2274 if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
2275 if (!yys) yys = "illegal-symbol";
2276 fprintf(stderr, "yydebug: state %d, reading %d (%s)\n",
2277 YYFINAL, yychar, yys);
2281 if (yychar == 0) goto yyaccept;
2284 if ((yyn = yygindex[yym]) && (yyn += yystate) >= 0 &&
2285 yyn <= YYTABLESIZE && yycheck[yyn] == yystate)
2286 yystate = yytable[yyn];
2288 yystate = yydgoto[yym];
2292 "yydebug: after reduction, shifting from state %d to state %d\n",
2295 if (yyssp >= yyss + yystacksize - 1)
2298 ** reallocate and recover. Note that pointers
2299 ** have to be reset, or bad things will happen
2301 int yyps_index = (yyssp - yyss);
2302 int yypv_index = (yyvsp - yyvs);
2303 yystacksize += YYSTACKSIZE;
2304 ysave->yyvs = yyvs =
2305 (YYSTYPE*)realloc((char*)yyvs,yystacksize * sizeof(YYSTYPE));
2306 ysave->yyss = yyss =
2307 (short*)realloc((char*)yyss,yystacksize * sizeof(short));
2310 yyssp = yyss + yyps_index;
2311 yyvsp = yyvs + yypv_index;
2317 yyerror("Out of memory for yacc stack");