]> gcc.gnu.org Git - gcc.git/blame - gcc/cp/parse.c
cp-tree.h (ansi_opname): Make it a macro.
[gcc.git] / gcc / cp / parse.c
CommitLineData
861bb6c1 1
8eeda2ec 2/* A Bison parser, made from parse.y
d0f062fb 3 by GNU Bison version 1.28 */
861bb6c1
JL
4
5#define YYBISON 1 /* Identify Bison output. */
6
f1dedc31
MM
7#define IDENTIFIER 257
8#define TYPENAME 258
9#define SELFNAME 259
10#define PFUNCNAME 260
11#define SCSPEC 261
12#define TYPESPEC 262
13#define CV_QUALIFIER 263
14#define CONSTANT 264
15#define STRING 265
16#define ELLIPSIS 266
17#define SIZEOF 267
18#define ENUM 268
19#define IF 269
20#define ELSE 270
21#define WHILE 271
22#define DO 272
23#define FOR 273
24#define SWITCH 274
25#define CASE 275
26#define DEFAULT 276
27#define BREAK 277
28#define CONTINUE 278
29#define RETURN_KEYWORD 279
30#define GOTO 280
31#define ASM_KEYWORD 281
32#define TYPEOF 282
33#define ALIGNOF 283
34#define SIGOF 284
35#define ATTRIBUTE 285
36#define EXTENSION 286
37#define LABEL 287
38#define REALPART 288
39#define IMAGPART 289
40#define VA_ARG 290
41#define AGGR 291
42#define VISSPEC 292
43#define DELETE 293
44#define NEW 294
45#define THIS 295
46#define OPERATOR 296
47#define CXX_TRUE 297
48#define CXX_FALSE 298
49#define NAMESPACE 299
50#define TYPENAME_KEYWORD 300
51#define USING 301
52#define LEFT_RIGHT 302
53#define TEMPLATE 303
54#define TYPEID 304
55#define DYNAMIC_CAST 305
56#define STATIC_CAST 306
57#define REINTERPRET_CAST 307
58#define CONST_CAST 308
59#define SCOPE 309
60#define EMPTY 310
61#define PTYPENAME 311
62#define NSNAME 312
63#define THROW 313
64#define ASSIGN 314
65#define OROR 315
66#define ANDAND 316
67#define MIN_MAX 317
68#define EQCOMPARE 318
69#define ARITHCOMPARE 319
70#define LSHIFT 320
71#define RSHIFT 321
72#define POINTSAT_STAR 322
73#define DOT_STAR 323
74#define UNARY 324
75#define PLUSPLUS 325
76#define MINUSMINUS 326
77#define HYPERUNARY 327
78#define POINTSAT 328
79#define TRY 329
80#define CATCH 330
87e3dbc9
MM
81#define EXTERN_LANG_STRING 331
82#define ALL 332
83#define PRE_PARSED_CLASS_DECL 333
84#define DEFARG 334
85#define DEFARG_MARKER 335
86#define PRE_PARSED_FUNCTION_DECL 336
f1dedc31
MM
87#define TYPENAME_DEFN 337
88#define IDENTIFIER_DEFN 338
89#define PTYPENAME_DEFN 339
90#define END_OF_LINE 340
91#define END_OF_SAVED_INPUT 341
861bb6c1 92
b6a6823e 93#line 30 "parse.y"
861bb6c1
JL
94
95/* Cause the `yydebug' variable to be defined. */
96#define YYDEBUG 1
97
98#include "config.h"
99
8d052bc7 100#include "system.h"
861bb6c1
JL
101
102#include "tree.h"
103#include "input.h"
104#include "flags.h"
105#include "lex.h"
106#include "cp-tree.h"
107#include "output.h"
8eeda2ec 108#include "except.h"
77dc0938 109#include "toplev.h"
e1240767 110#include "ggc.h"
861bb6c1
JL
111
112/* Since parsers are distinct for each language, put the language string
113 definition here. (fnf) */
f425a887 114const char * const language_string = "GNU C++";
861bb6c1 115
861bb6c1
JL
116extern struct obstack permanent_obstack;
117
861bb6c1 118extern int end_of_file;
861bb6c1 119
861bb6c1
JL
120/* Like YYERROR but do call yyerror. */
121#define YYERROR1 { yyerror ("syntax error"); YYERROR; }
122
123#define OP0(NODE) (TREE_OPERAND (NODE, 0))
124#define OP1(NODE) (TREE_OPERAND (NODE, 1))
125
126/* Contains the statement keyword (if/while/do) to include in an
127 error message if the user supplies an empty conditional expression. */
d8e178a0 128static const char *cond_stmt_keyword;
861bb6c1
JL
129
130/* Nonzero if we have an `extern "C"' acting as an extern specifier. */
131int have_extern_spec;
132int used_extern_spec;
133
861bb6c1 134/* List of types and structure classes of the current declaration. */
cb0dbb9a
JM
135static tree current_declspecs;
136
861bb6c1
JL
137/* List of prefix attributes in effect.
138 Prefix attributes are parsed by the reserved_declspecs and declmods
139 rules. They create a list that contains *both* declspecs and attrs. */
140/* ??? It is not clear yet that all cases where an attribute can now appear in
141 a declspec list have been updated. */
cb0dbb9a 142static tree prefix_attributes;
861bb6c1 143
818c8883
MM
144/* When defining an aggregate, this is the kind of the most recent one
145 being defined. (For example, this might be class_type_node.) */
861bb6c1
JL
146static tree current_aggr;
147
818c8883
MM
148/* When defining an enumeration, this is the type of the enumeration. */
149static tree current_enum_type;
150
1f51a992
JM
151static tree empty_parms PARAMS ((void));
152static tree parse_decl0 PARAMS ((tree, tree, tree, tree, int));
153static tree parse_decl PARAMS ((tree, tree, int));
154static void parse_end_decl PARAMS ((tree, tree, tree));
155static tree parse_field0 PARAMS ((tree, tree, tree, tree, tree, tree));
156static tree parse_field PARAMS ((tree, tree, tree, tree));
157static tree parse_bitfield0 PARAMS ((tree, tree, tree, tree, tree));
158static tree parse_bitfield PARAMS ((tree, tree, tree));
159static tree parse_method PARAMS ((tree, tree, tree));
160static void frob_specs PARAMS ((tree, tree));
861bb6c1 161
1f51a992
JM
162/* Cons up an empty parameter list. */
163static inline tree
164empty_parms ()
165{
166 tree parms;
167
168 if (strict_prototype
169 || current_class_type != NULL)
170 parms = void_list_node;
171 else
172 parms = NULL_TREE;
173 return parms;
174}
175
176/* Record the decl-specifiers, attributes and type lookups from the
177 decl-specifier-seq in a declaration. */
153305b0 178
445ab443
JM
179static void
180frob_specs (specs_attrs, lookups)
1f51a992 181 tree specs_attrs, lookups;
445ab443 182{
1f51a992 183 save_type_access_control (lookups);
445ab443
JM
184 split_specs_attrs (specs_attrs, &current_declspecs, &prefix_attributes);
185 if (current_declspecs
186 && TREE_CODE (current_declspecs) != TREE_LIST)
187 current_declspecs = build_decl_list (NULL_TREE, current_declspecs);
153305b0
MM
188 if (have_extern_spec && !used_extern_spec)
189 {
190 current_declspecs = decl_tree_cons (NULL_TREE,
191 get_identifier ("extern"),
192 current_declspecs);
193 used_extern_spec = 1;
194 }
1f51a992
JM
195}
196
197static tree
198parse_decl (declarator, attributes, initialized)
199 tree declarator, attributes;
200 int initialized;
201{
202 return start_decl (declarator, current_declspecs, initialized,
203 attributes, prefix_attributes);
204}
205
206static tree
207parse_decl0 (declarator, specs_attrs, lookups, attributes, initialized)
208 tree declarator, specs_attrs, lookups, attributes;
209 int initialized;
210{
211 frob_specs (specs_attrs, lookups);
212 return parse_decl (declarator, attributes, initialized);
213}
214
215static void
216parse_end_decl (decl, init, asmspec)
217 tree decl, init, asmspec;
218{
9fc336c7
JM
219 /* If decl is NULL_TREE, then this was a variable declaration using
220 () syntax for the initializer, so we handled it in grokdeclarator. */
221 if (decl)
222 decl_type_access_control (decl);
1f51a992
JM
223 cp_finish_decl (decl, init, asmspec, init ? LOOKUP_ONLYCONVERTING : 0);
224}
225
226static tree
227parse_field (declarator, attributes, asmspec, init)
228 tree declarator, attributes, asmspec, init;
229{
230 tree d = grokfield (declarator, current_declspecs, init, asmspec,
231 build_tree_list (attributes, prefix_attributes));
232 decl_type_access_control (d);
233 return d;
234}
235
236static tree
237parse_field0 (declarator, specs_attrs, lookups, attributes, asmspec, init)
238 tree declarator, specs_attrs, lookups, attributes, asmspec, init;
239{
240 frob_specs (specs_attrs, lookups);
241 return parse_field (declarator, attributes, asmspec, init);
242}
243
244static tree
245parse_bitfield (declarator, attributes, width)
246 tree declarator, attributes, width;
247{
248 tree d = grokbitfield (declarator, current_declspecs, width);
249 cplus_decl_attributes (d, attributes, prefix_attributes);
250 decl_type_access_control (d);
251 return d;
252}
253
254static tree
255parse_bitfield0 (declarator, specs_attrs, lookups, attributes, width)
256 tree declarator, specs_attrs, lookups, attributes, width;
257{
258 frob_specs (specs_attrs, lookups);
259 return parse_bitfield (declarator, attributes, width);
260}
261
262static tree
263parse_method (declarator, specs_attrs, lookups)
264 tree declarator, specs_attrs, lookups;
265{
266 tree d;
267 frob_specs (specs_attrs, lookups);
268 d = start_method (current_declspecs, declarator, prefix_attributes);
269 decl_type_access_control (d);
270 return d;
153305b0 271}
e1240767
MM
272
273void
274cp_parse_init ()
275{
276 ggc_add_tree_root (&current_declspecs, 1);
277 ggc_add_tree_root (&prefix_attributes, 1);
278 ggc_add_tree_root (&current_aggr, 1);
279 ggc_add_tree_root (&current_enum_type, 1);
280}
1f51a992 281
b6a6823e 282#line 221 "parse.y"
1f51a992
JM
283typedef union {
284 long itype;
285 tree ttype;
286 char *strtype;
287 enum tree_code code;
288 flagged_type_tree ftype;
289 struct pending_inline *pi;
290} YYSTYPE;
b6a6823e 291#line 424 "parse.y"
1f51a992
JM
292
293/* Tell yyparse how to print a token's value, if yydebug is set. */
294#define YYPRINT(FILE,YYCHAR,YYLVAL) yyprint(FILE,YYCHAR,YYLVAL)
295extern void yyprint PARAMS ((FILE *, int, YYSTYPE));
861bb6c1
JL
296#include <stdio.h>
297
298#ifndef __cplusplus
299#ifndef __STDC__
300#define const
301#endif
302#endif
303
304
305
eca1bd08 306#define YYFINAL 1673
861bb6c1 307#define YYFLAG -32768
4a4b0aa3 308#define YYNTBASE 112
861bb6c1 309
80048418 310#define YYTRANSLATE(x) ((unsigned)(x) <= 341 ? yytranslate[x] : 397)
861bb6c1
JL
311
312static const char yytranslate[] = { 0,
313 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
314 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
315 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
4a4b0aa3
RH
316 2, 2, 110, 2, 2, 2, 83, 71, 2, 93,
317 108, 81, 79, 60, 80, 92, 82, 2, 2, 2,
318 2, 2, 2, 2, 2, 2, 2, 63, 61, 75,
319 65, 76, 66, 2, 2, 2, 2, 2, 2, 2,
861bb6c1
JL
320 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
321 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
4a4b0aa3 322 94, 2, 111, 70, 2, 2, 2, 2, 2, 2,
861bb6c1
JL
323 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
324 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
4a4b0aa3 325 2, 2, 59, 69, 109, 89, 2, 2, 2, 2,
861bb6c1
JL
326 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
327 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
328 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
329 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
330 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
331 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
332 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
333 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
334 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
335 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
336 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
337 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
f1dedc31
MM
338 2, 2, 2, 2, 2, 1, 3, 4, 5, 6,
339 7, 8, 9, 10, 11, 12, 13, 14, 15, 16,
340 17, 18, 19, 20, 21, 22, 23, 24, 25, 26,
341 27, 28, 29, 30, 31, 32, 33, 34, 35, 36,
342 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,
343 47, 48, 49, 50, 51, 52, 53, 54, 55, 56,
344 57, 58, 62, 64, 67, 68, 72, 73, 74, 77,
345 78, 84, 85, 86, 87, 88, 90, 91, 95, 96,
346 97, 98, 99, 100, 101, 102, 103, 104, 105, 106,
347 107
861bb6c1
JL
348};
349
350#if YYDEBUG != 0
351static const short yyprhs[] = { 0,
352 0, 1, 3, 4, 7, 10, 12, 13, 14, 15,
89ad74a3 353 17, 19, 20, 23, 26, 28, 30, 36, 41, 47,
85c6cbaf
ML
354 52, 53, 60, 61, 67, 69, 72, 74, 77, 78,
355 85, 88, 92, 96, 100, 104, 109, 110, 116, 119,
356 123, 125, 127, 130, 133, 135, 138, 139, 145, 149,
357 151, 155, 157, 158, 161, 164, 168, 170, 174, 176,
282a221c
JM
358 180, 182, 186, 189, 192, 195, 197, 199, 205, 210,
359 213, 216, 220, 224, 227, 230, 234, 238, 241, 244,
360 247, 250, 253, 255, 257, 259, 260, 262, 265, 266,
361 268, 273, 277, 281, 282, 291, 297, 298, 308, 315,
362 316, 325, 331, 332, 342, 349, 352, 355, 357, 360,
363 362, 369, 374, 381, 386, 389, 391, 394, 397, 399,
364 402, 404, 407, 410, 415, 418, 422, 423, 424, 426,
365 430, 433, 437, 439, 444, 447, 452, 455, 460, 463,
366 465, 467, 469, 471, 473, 475, 477, 479, 481, 483,
273a708f
MM
367 485, 487, 488, 495, 496, 503, 504, 510, 511, 517,
368 518, 526, 527, 535, 536, 543, 544, 551, 552, 553,
369 559, 565, 567, 569, 575, 581, 582, 584, 586, 587,
370 589, 591, 595, 597, 599, 601, 603, 605, 607, 609,
371 611, 613, 615, 617, 621, 623, 627, 628, 630, 632,
372 633, 641, 643, 645, 649, 654, 658, 659, 663, 665,
373 669, 673, 677, 681, 683, 685, 687, 690, 693, 696,
374 699, 702, 705, 708, 713, 716, 721, 724, 728, 732,
80048418
MM
375 737, 742, 748, 754, 761, 764, 769, 775, 778, 781,
376 788, 792, 796, 800, 802, 806, 809, 813, 818, 820,
377 823, 829, 831, 835, 839, 843, 847, 851, 855, 859,
378 863, 867, 871, 875, 879, 883, 887, 891, 895, 899,
379 903, 907, 913, 917, 921, 923, 926, 930, 934, 936,
380 938, 940, 942, 944, 945, 951, 957, 963, 969, 975,
381 977, 979, 981, 983, 986, 988, 991, 994, 998, 1003,
382 1008, 1010, 1012, 1014, 1018, 1020, 1022, 1024, 1026, 1030,
383 1034, 1038, 1039, 1044, 1049, 1052, 1057, 1060, 1065, 1068,
384 1071, 1073, 1078, 1080, 1088, 1096, 1104, 1112, 1117, 1122,
385 1125, 1128, 1131, 1133, 1138, 1141, 1144, 1150, 1154, 1157,
386 1160, 1166, 1170, 1176, 1180, 1185, 1192, 1195, 1197, 1200,
387 1202, 1205, 1207, 1209, 1211, 1214, 1215, 1218, 1221, 1225,
388 1229, 1233, 1236, 1239, 1242, 1244, 1246, 1248, 1251, 1254,
389 1257, 1260, 1262, 1264, 1266, 1268, 1271, 1274, 1278, 1282,
390 1286, 1291, 1293, 1296, 1299, 1302, 1304, 1306, 1308, 1311,
391 1314, 1317, 1319, 1321, 1324, 1327, 1331, 1333, 1336, 1338,
392 1340, 1342, 1347, 1352, 1357, 1362, 1364, 1366, 1368, 1370,
393 1374, 1376, 1380, 1382, 1386, 1387, 1392, 1393, 1400, 1404,
394 1405, 1410, 1412, 1416, 1420, 1421, 1426, 1430, 1431, 1433,
395 1435, 1438, 1445, 1447, 1451, 1452, 1454, 1459, 1466, 1471,
396 1473, 1475, 1477, 1479, 1481, 1485, 1486, 1489, 1491, 1494,
397 1498, 1503, 1505, 1507, 1511, 1516, 1520, 1526, 1528, 1533,
398 1537, 1541, 1542, 1546, 1550, 1554, 1555, 1558, 1561, 1562,
399 1569, 1570, 1576, 1579, 1582, 1585, 1586, 1587, 1588, 1599,
400 1601, 1602, 1604, 1605, 1607, 1609, 1612, 1615, 1618, 1621,
401 1624, 1627, 1630, 1633, 1636, 1640, 1645, 1649, 1652, 1656,
402 1658, 1659, 1663, 1666, 1669, 1671, 1673, 1674, 1677, 1681,
403 1683, 1688, 1690, 1694, 1696, 1698, 1701, 1704, 1708, 1712,
404 1713, 1715, 1719, 1722, 1725, 1727, 1730, 1733, 1736, 1739,
405 1742, 1745, 1748, 1750, 1753, 1756, 1760, 1763, 1766, 1771,
406 1776, 1779, 1781, 1787, 1792, 1794, 1795, 1797, 1801, 1802,
407 1804, 1808, 1810, 1812, 1814, 1816, 1821, 1826, 1831, 1836,
408 1841, 1845, 1850, 1855, 1860, 1865, 1869, 1872, 1874, 1876,
409 1880, 1882, 1886, 1889, 1891, 1898, 1899, 1902, 1904, 1907,
410 1911, 1915, 1917, 1921, 1923, 1926, 1930, 1934, 1937, 1940,
411 1944, 1946, 1951, 1956, 1960, 1964, 1967, 1969, 1971, 1974,
412 1976, 1978, 1981, 1984, 1986, 1989, 1993, 1997, 2000, 2003,
413 2007, 2009, 2013, 2017, 2020, 2023, 2027, 2029, 2034, 2038,
414 2043, 2047, 2049, 2052, 2055, 2058, 2061, 2064, 2066, 2069,
415 2074, 2079, 2082, 2084, 2086, 2088, 2090, 2093, 2098, 2101,
416 2104, 2107, 2110, 2112, 2115, 2118, 2121, 2124, 2128, 2130,
417 2133, 2137, 2142, 2145, 2148, 2151, 2154, 2157, 2160, 2165,
418 2168, 2170, 2173, 2176, 2180, 2182, 2186, 2189, 2193, 2196,
419 2199, 2203, 2205, 2209, 2214, 2216, 2219, 2223, 2226, 2229,
420 2231, 2235, 2238, 2241, 2243, 2246, 2250, 2252, 2256, 2263,
421 2268, 2273, 2277, 2283, 2287, 2291, 2295, 2298, 2300, 2302,
422 2305, 2308, 2311, 2312, 2314, 2316, 2319, 2323, 2325, 2328,
423 2329, 2333, 2334, 2335, 2341, 2343, 2344, 2347, 2349, 2351,
424 2353, 2356, 2357, 2362, 2364, 2365, 2366, 2372, 2373, 2374,
425 2382, 2383, 2384, 2385, 2386, 2399, 2400, 2401, 2409, 2410,
426 2416, 2417, 2425, 2426, 2431, 2434, 2437, 2440, 2444, 2451,
eca1bd08
UD
427 2460, 2471, 2480, 2493, 2504, 2515, 2520, 2524, 2527, 2530,
428 2532, 2534, 2536, 2538, 2540, 2541, 2542, 2549, 2550, 2551,
429 2557, 2559, 2562, 2563, 2564, 2570, 2572, 2574, 2578, 2582,
430 2585, 2588, 2591, 2594, 2597, 2599, 2602, 2603, 2605, 2606,
431 2608, 2610, 2611, 2613, 2615, 2619, 2624, 2626, 2630, 2631,
432 2633, 2635, 2637, 2640, 2643, 2646, 2648, 2651, 2654, 2655,
433 2659, 2661, 2663, 2665, 2668, 2671, 2674, 2679, 2682, 2685,
434 2688, 2691, 2694, 2697, 2699, 2702, 2704, 2707, 2709, 2711,
435 2712, 2713, 2715, 2716, 2721, 2724, 2726, 2728, 2732, 2733,
436 2737, 2741, 2745, 2747, 2750, 2753, 2756, 2759, 2762, 2765,
437 2768, 2771, 2774, 2777, 2780, 2783, 2786, 2789, 2792, 2795,
438 2798, 2801, 2804, 2807, 2810, 2813, 2816, 2820, 2823, 2826,
439 2829, 2832, 2836, 2839, 2842, 2847, 2852, 2856
861bb6c1
JL
440};
441
442static const short yyrhs[] = { -1,
4a4b0aa3
RH
443 113, 0, 0, 114, 120, 0, 113, 120, 0, 113,
444 0, 0, 0, 0, 32, 0, 27, 0, 0, 121,
445 122, 0, 148, 147, 0, 144, 0, 141, 0, 119,
80048418 446 93, 217, 108, 61, 0, 133, 59, 115, 109, 0,
4a4b0aa3
RH
447 133, 116, 148, 117, 147, 0, 133, 116, 144, 117,
448 0, 0, 45, 163, 59, 123, 115, 109, 0, 0,
449 45, 59, 124, 115, 109, 0, 125, 0, 127, 61,
450 0, 129, 0, 118, 122, 0, 0, 45, 163, 65,
80048418
MM
451 126, 132, 61, 0, 47, 310, 0, 47, 324, 310,
452 0, 47, 324, 207, 0, 47, 131, 163, 0, 47,
453 324, 163, 0, 47, 324, 131, 163, 0, 0, 47,
4a4b0aa3 454 45, 130, 132, 61, 0, 58, 55, 0, 131, 58,
80048418
MM
455 55, 0, 207, 0, 310, 0, 324, 310, 0, 324,
456 207, 0, 97, 0, 133, 97, 0, 0, 49, 75,
4a4b0aa3 457 135, 136, 76, 0, 49, 75, 76, 0, 140, 0,
80048418
MM
458 136, 60, 140, 0, 163, 0, 0, 267, 137, 0,
459 46, 137, 0, 134, 267, 137, 0, 138, 0, 138,
460 65, 223, 0, 388, 0, 388, 65, 202, 0, 139,
4a4b0aa3
RH
461 0, 139, 65, 184, 0, 134, 142, 0, 134, 1,
462 0, 148, 147, 0, 143, 0, 141, 0, 133, 116,
463 148, 117, 147, 0, 133, 116, 143, 117, 0, 118,
80048418
MM
464 142, 0, 234, 61, 0, 227, 233, 61, 0, 224,
465 232, 61, 0, 259, 61, 0, 234, 61, 0, 227,
466 233, 61, 0, 224, 232, 61, 0, 227, 61, 0,
467 166, 61, 0, 224, 61, 0, 1, 61, 0, 1,
468 109, 0, 61, 0, 218, 0, 159, 0, 0, 158,
4a4b0aa3 469 0, 158, 61, 0, 0, 107, 0, 154, 146, 145,
80048418
MM
470 335, 0, 154, 146, 359, 0, 154, 146, 1, 0,
471 0, 315, 5, 93, 150, 379, 108, 297, 391, 0,
472 315, 5, 48, 297, 391, 0, 0, 324, 315, 5,
473 93, 151, 379, 108, 297, 391, 0, 324, 315, 5,
474 48, 297, 391, 0, 0, 315, 179, 93, 152, 379,
475 108, 297, 391, 0, 315, 179, 48, 297, 391, 0,
476 0, 324, 315, 179, 93, 153, 379, 108, 297, 391,
477 0, 324, 315, 179, 48, 297, 391, 0, 224, 221,
478 0, 227, 307, 0, 307, 0, 227, 149, 0, 149,
479 0, 5, 93, 379, 108, 297, 391, 0, 5, 48,
480 297, 391, 0, 179, 93, 379, 108, 297, 391, 0,
481 179, 48, 297, 391, 0, 227, 155, 0, 155, 0,
482 224, 221, 0, 227, 307, 0, 307, 0, 227, 149,
483 0, 149, 0, 25, 3, 0, 157, 251, 0, 157,
4a4b0aa3
RH
484 93, 196, 108, 0, 157, 48, 0, 63, 160, 161,
485 0, 0, 0, 162, 0, 161, 60, 162, 0, 161,
486 1, 0, 93, 196, 108, 0, 48, 0, 164, 93,
80048418
MM
487 196, 108, 0, 164, 48, 0, 303, 93, 196, 108,
488 0, 303, 48, 0, 317, 93, 196, 108, 0, 317,
273a708f
MM
489 48, 0, 1, 0, 3, 0, 4, 0, 5, 0,
490 57, 0, 58, 0, 3, 0, 57, 0, 58, 0,
80048418
MM
491 104, 0, 103, 0, 105, 0, 0, 49, 175, 230,
492 61, 167, 176, 0, 0, 49, 175, 224, 221, 168,
493 176, 0, 0, 49, 175, 307, 169, 176, 0, 0,
273a708f 494 49, 175, 149, 170, 176, 0, 0, 7, 49, 175,
80048418
MM
495 230, 61, 171, 176, 0, 0, 7, 49, 175, 224,
496 221, 172, 176, 0, 0, 7, 49, 175, 307, 173,
273a708f
MM
497 176, 0, 0, 7, 49, 175, 149, 174, 176, 0,
498 0, 0, 57, 75, 182, 181, 180, 0, 4, 75,
499 182, 181, 180, 0, 179, 0, 177, 0, 163, 75,
500 182, 76, 180, 0, 5, 75, 182, 181, 180, 0,
501 0, 76, 0, 78, 0, 0, 183, 0, 184, 0,
80048418 502 183, 60, 184, 0, 223, 0, 57, 0, 202, 0,
273a708f 503 80, 0, 79, 0, 87, 0, 88, 0, 110, 0,
80048418 504 195, 0, 202, 0, 48, 0, 93, 186, 108, 0,
273a708f 505 48, 0, 93, 190, 108, 0, 0, 190, 0, 1,
80048418
MM
506 0, 0, 369, 221, 235, 244, 65, 191, 252, 0,
507 186, 0, 109, 0, 332, 330, 109, 0, 332, 330,
508 1, 109, 0, 332, 1, 109, 0, 0, 59, 194,
509 192, 0, 344, 0, 202, 60, 202, 0, 202, 60,
510 1, 0, 195, 60, 202, 0, 195, 60, 1, 0,
511 202, 0, 195, 0, 212, 0, 118, 201, 0, 81,
512 201, 0, 71, 201, 0, 89, 201, 0, 185, 201,
513 0, 68, 163, 0, 13, 197, 0, 13, 93, 223,
514 108, 0, 29, 197, 0, 29, 93, 223, 108, 0,
515 214, 296, 0, 214, 296, 199, 0, 214, 198, 296,
516 0, 214, 198, 296, 199, 0, 214, 93, 223, 108,
517 0, 214, 93, 223, 108, 199, 0, 214, 198, 93,
518 223, 108, 0, 214, 198, 93, 223, 108, 199, 0,
519 215, 201, 0, 215, 94, 111, 201, 0, 215, 94,
520 186, 111, 201, 0, 34, 201, 0, 35, 201, 0,
521 36, 93, 202, 60, 223, 108, 0, 93, 196, 108,
522 0, 59, 196, 109, 0, 93, 196, 108, 0, 48,
523 0, 93, 230, 108, 0, 65, 252, 0, 93, 223,
524 108, 0, 200, 93, 223, 108, 0, 197, 0, 200,
525 197, 0, 200, 59, 253, 265, 109, 0, 201, 0,
526 202, 84, 202, 0, 202, 85, 202, 0, 202, 79,
527 202, 0, 202, 80, 202, 0, 202, 81, 202, 0,
528 202, 82, 202, 0, 202, 83, 202, 0, 202, 77,
529 202, 0, 202, 78, 202, 0, 202, 74, 202, 0,
530 202, 75, 202, 0, 202, 76, 202, 0, 202, 73,
531 202, 0, 202, 72, 202, 0, 202, 71, 202, 0,
532 202, 69, 202, 0, 202, 70, 202, 0, 202, 68,
533 202, 0, 202, 67, 202, 0, 202, 66, 374, 63,
534 202, 0, 202, 65, 202, 0, 202, 64, 202, 0,
535 62, 0, 62, 202, 0, 89, 389, 163, 0, 89,
536 389, 177, 0, 205, 0, 396, 0, 3, 0, 57,
537 0, 58, 0, 0, 6, 75, 204, 182, 181, 0,
538 396, 75, 204, 182, 181, 0, 49, 163, 75, 182,
539 181, 0, 49, 6, 75, 182, 181, 0, 49, 396,
540 75, 182, 181, 0, 203, 0, 4, 0, 5, 0,
541 209, 0, 245, 209, 0, 203, 0, 81, 208, 0,
542 71, 208, 0, 93, 208, 108, 0, 3, 75, 182,
543 181, 0, 58, 75, 183, 181, 0, 309, 0, 203,
544 0, 210, 0, 93, 208, 108, 0, 203, 0, 10,
545 0, 216, 0, 217, 0, 93, 186, 108, 0, 93,
546 208, 108, 0, 93, 1, 108, 0, 0, 93, 213,
547 336, 108, 0, 203, 93, 196, 108, 0, 203, 48,
548 0, 212, 93, 196, 108, 0, 212, 48, 0, 212,
549 94, 186, 111, 0, 212, 87, 0, 212, 88, 0,
550 41, 0, 9, 93, 196, 108, 0, 313, 0, 51,
551 75, 223, 76, 93, 186, 108, 0, 52, 75, 223,
552 76, 93, 186, 108, 0, 53, 75, 223, 76, 93,
553 186, 108, 0, 54, 75, 223, 76, 93, 186, 108,
554 0, 50, 93, 186, 108, 0, 50, 93, 223, 108,
555 0, 324, 3, 0, 324, 205, 0, 324, 396, 0,
556 312, 0, 312, 93, 196, 108, 0, 312, 48, 0,
557 219, 206, 0, 219, 206, 93, 196, 108, 0, 219,
558 206, 48, 0, 219, 207, 0, 219, 312, 0, 219,
559 207, 93, 196, 108, 0, 219, 207, 48, 0, 219,
560 312, 93, 196, 108, 0, 219, 312, 48, 0, 219,
561 89, 8, 48, 0, 219, 8, 55, 89, 8, 48,
562 0, 219, 1, 0, 40, 0, 324, 40, 0, 39,
563 0, 324, 215, 0, 43, 0, 44, 0, 11, 0,
564 217, 11, 0, 0, 212, 92, 0, 212, 91, 0,
565 230, 232, 61, 0, 224, 232, 61, 0, 227, 233,
566 61, 0, 224, 61, 0, 227, 61, 0, 118, 220,
567 0, 301, 0, 307, 0, 48, 0, 222, 48, 0,
568 228, 328, 0, 298, 328, 0, 230, 328, 0, 228,
569 0, 298, 0, 228, 0, 225, 0, 227, 230, 0,
570 230, 226, 0, 230, 229, 226, 0, 227, 230, 226,
571 0, 227, 230, 229, 0, 227, 230, 229, 226, 0,
572 7, 0, 226, 231, 0, 226, 7, 0, 226, 245,
573 0, 245, 0, 298, 0, 7, 0, 227, 9, 0,
574 227, 7, 0, 227, 245, 0, 245, 0, 230, 0,
575 298, 230, 0, 230, 229, 0, 298, 230, 229, 0,
576 231, 0, 229, 231, 0, 259, 0, 8, 0, 304,
577 0, 28, 93, 186, 108, 0, 28, 93, 223, 108,
578 0, 30, 93, 186, 108, 0, 30, 93, 223, 108,
579 0, 8, 0, 9, 0, 259, 0, 240, 0, 232,
580 60, 236, 0, 241, 0, 233, 60, 236, 0, 242,
581 0, 234, 60, 236, 0, 0, 119, 93, 217, 108,
582 0, 0, 221, 235, 244, 65, 237, 252, 0, 221,
583 235, 244, 0, 0, 244, 65, 239, 252, 0, 244,
584 0, 221, 235, 238, 0, 307, 235, 238, 0, 0,
585 307, 235, 243, 238, 0, 149, 235, 244, 0, 0,
586 245, 0, 246, 0, 245, 246, 0, 31, 93, 93,
587 247, 108, 108, 0, 248, 0, 247, 60, 248, 0,
588 0, 249, 0, 249, 93, 3, 108, 0, 249, 93,
589 3, 60, 196, 108, 0, 249, 93, 196, 108, 0,
590 163, 0, 7, 0, 8, 0, 9, 0, 163, 0,
591 250, 60, 163, 0, 0, 65, 252, 0, 202, 0,
592 59, 109, 0, 59, 253, 109, 0, 59, 253, 60,
593 109, 0, 1, 0, 252, 0, 253, 60, 252, 0,
594 94, 202, 111, 252, 0, 163, 63, 252, 0, 253,
595 60, 163, 63, 252, 0, 102, 0, 254, 146, 145,
596 335, 0, 254, 146, 359, 0, 254, 146, 1, 0,
597 0, 256, 255, 147, 0, 101, 202, 107, 0, 101,
598 1, 107, 0, 0, 258, 257, 0, 258, 1, 0,
599 0, 14, 163, 59, 260, 293, 109, 0, 0, 14,
600 59, 261, 293, 109, 0, 14, 163, 0, 14, 322,
601 0, 46, 317, 0, 0, 0, 0, 274, 59, 262,
602 280, 109, 244, 263, 258, 264, 256, 0, 274, 0,
603 0, 60, 0, 0, 60, 0, 37, 0, 267, 7,
604 0, 267, 8, 0, 267, 9, 0, 267, 37, 0,
605 267, 245, 0, 267, 163, 0, 267, 165, 0, 268,
606 59, 0, 268, 63, 0, 267, 315, 163, 0, 267,
607 324, 315, 163, 0, 267, 324, 163, 0, 267, 178,
608 0, 267, 315, 178, 0, 268, 0, 0, 269, 272,
609 275, 0, 270, 275, 0, 267, 59, 0, 273, 0,
610 271, 0, 0, 63, 389, 0, 63, 389, 276, 0,
611 277, 0, 276, 60, 389, 277, 0, 278, 0, 279,
612 389, 278, 0, 317, 0, 303, 0, 38, 389, 0,
613 7, 389, 0, 279, 38, 389, 0, 279, 7, 389,
614 0, 0, 282, 0, 280, 281, 282, 0, 280, 281,
615 0, 38, 63, 0, 283, 0, 282, 283, 0, 284,
616 61, 0, 284, 109, 0, 156, 63, 0, 156, 95,
617 0, 156, 25, 0, 156, 59, 0, 61, 0, 118,
618 283, 0, 134, 283, 0, 134, 224, 61, 0, 224,
619 285, 0, 227, 286, 0, 307, 235, 244, 251, 0,
620 149, 235, 244, 251, 0, 63, 202, 0, 1, 0,
621 227, 155, 235, 244, 251, 0, 155, 235, 244, 251,
622 0, 127, 0, 0, 287, 0, 285, 60, 288, 0,
623 0, 290, 0, 286, 60, 292, 0, 289, 0, 290,
624 0, 291, 0, 292, 0, 301, 235, 244, 251, 0,
625 4, 63, 202, 244, 0, 307, 235, 244, 251, 0,
626 149, 235, 244, 251, 0, 3, 63, 202, 244, 0,
627 63, 202, 244, 0, 301, 235, 244, 251, 0, 4,
628 63, 202, 244, 0, 307, 235, 244, 251, 0, 3,
629 63, 202, 244, 0, 63, 202, 244, 0, 294, 266,
630 0, 266, 0, 295, 0, 294, 60, 295, 0, 163,
631 0, 163, 65, 202, 0, 369, 325, 0, 369, 0,
632 93, 223, 108, 94, 186, 111, 0, 0, 297, 9,
633 0, 9, 0, 298, 9, 0, 93, 196, 108, 0,
634 93, 379, 108, 0, 48, 0, 93, 1, 108, 0,
635 301, 0, 245, 301, 0, 81, 298, 300, 0, 71,
636 298, 300, 0, 81, 300, 0, 71, 300, 0, 323,
637 297, 300, 0, 302, 0, 302, 299, 297, 391, 0,
638 302, 94, 186, 111, 0, 302, 94, 111, 0, 93,
639 300, 108, 0, 315, 314, 0, 314, 0, 314, 0,
640 324, 314, 0, 303, 0, 305, 0, 324, 305, 0,
641 315, 314, 0, 307, 0, 245, 307, 0, 81, 298,
642 306, 0, 71, 298, 306, 0, 81, 306, 0, 71,
643 306, 0, 323, 297, 306, 0, 211, 0, 81, 298,
644 306, 0, 71, 298, 306, 0, 81, 308, 0, 71,
645 308, 0, 323, 297, 306, 0, 309, 0, 211, 299,
646 297, 391, 0, 93, 308, 108, 0, 211, 94, 186,
647 111, 0, 211, 94, 111, 0, 311, 0, 315, 210,
648 0, 315, 207, 0, 315, 206, 0, 315, 203, 0,
649 315, 206, 0, 311, 0, 324, 311, 0, 230, 93,
650 196, 108, 0, 230, 93, 208, 108, 0, 230, 222,
651 0, 4, 0, 5, 0, 177, 0, 316, 0, 315,
652 316, 0, 315, 49, 321, 55, 0, 4, 55, 0,
653 5, 55, 0, 58, 55, 0, 177, 55, 0, 318,
654 0, 324, 318, 0, 319, 163, 0, 319, 177, 0,
655 319, 321, 0, 319, 49, 321, 0, 320, 0, 319,
656 320, 0, 319, 321, 55, 0, 319, 49, 321, 55,
657 0, 4, 55, 0, 5, 55, 0, 177, 55, 0,
658 57, 55, 0, 3, 55, 0, 58, 55, 0, 163,
659 75, 182, 181, 0, 324, 314, 0, 305, 0, 324,
660 305, 0, 315, 81, 0, 324, 315, 81, 0, 55,
661 0, 81, 297, 325, 0, 81, 297, 0, 71, 297,
662 325, 0, 71, 297, 0, 323, 297, 0, 323, 297,
663 325, 0, 326, 0, 94, 186, 111, 0, 326, 94,
664 186, 111, 0, 328, 0, 245, 328, 0, 81, 298,
665 327, 0, 81, 327, 0, 81, 298, 0, 81, 0,
666 71, 298, 327, 0, 71, 327, 0, 71, 298, 0,
667 71, 0, 323, 297, 0, 323, 297, 327, 0, 329,
668 0, 93, 327, 108, 0, 329, 93, 379, 108, 297,
669 391, 0, 329, 48, 297, 391, 0, 329, 94, 186,
670 111, 0, 329, 94, 111, 0, 93, 380, 108, 297,
671 391, 0, 200, 297, 391, 0, 222, 297, 391, 0,
672 94, 186, 111, 0, 94, 111, 0, 343, 0, 331,
673 0, 330, 343, 0, 330, 331, 0, 1, 61, 0,
674 0, 333, 0, 334, 0, 333, 334, 0, 33, 250,
675 61, 0, 336, 0, 1, 336, 0, 0, 59, 337,
676 192, 0, 0, 0, 15, 339, 188, 340, 341, 0,
677 336, 0, 0, 342, 344, 0, 336, 0, 344, 0,
678 220, 0, 186, 61, 0, 0, 338, 16, 345, 341,
679 0, 338, 0, 0, 0, 17, 346, 188, 347, 193,
680 0, 0, 0, 18, 348, 341, 17, 349, 187, 61,
681 0, 0, 0, 0, 0, 19, 350, 93, 372, 351,
682 189, 61, 352, 374, 108, 353, 193, 0, 0, 0,
683 20, 354, 93, 190, 108, 355, 341, 0, 0, 21,
684 202, 63, 356, 343, 0, 0, 21, 202, 12, 202,
685 63, 357, 343, 0, 0, 22, 63, 358, 343, 0,
686 23, 61, 0, 24, 61, 0, 25, 61, 0, 25,
687 186, 61, 0, 119, 373, 93, 217, 108, 61, 0,
688 119, 373, 93, 217, 63, 375, 108, 61, 0, 119,
689 373, 93, 217, 63, 375, 63, 375, 108, 61, 0,
eca1bd08
UD
690 119, 373, 93, 217, 55, 375, 108, 61, 0, 119,
691 373, 93, 217, 63, 375, 63, 375, 63, 378, 108,
692 61, 0, 119, 373, 93, 217, 55, 375, 63, 378,
693 108, 61, 0, 119, 373, 93, 217, 63, 375, 55,
694 378, 108, 61, 0, 26, 81, 186, 61, 0, 26,
695 163, 61, 0, 371, 343, 0, 371, 109, 0, 61,
696 0, 362, 0, 129, 0, 128, 0, 125, 0, 0,
697 0, 95, 360, 145, 336, 361, 365, 0, 0, 0,
698 95, 363, 336, 364, 365, 0, 366, 0, 365, 366,
699 0, 0, 0, 96, 367, 370, 368, 336, 0, 228,
700 0, 298, 0, 93, 12, 108, 0, 93, 388, 108,
701 0, 3, 63, 0, 57, 63, 0, 4, 63, 0,
702 5, 63, 0, 374, 61, 0, 220, 0, 59, 192,
703 0, 0, 9, 0, 0, 186, 0, 1, 0, 0,
704 376, 0, 377, 0, 376, 60, 377, 0, 11, 93,
705 186, 108, 0, 11, 0, 378, 60, 11, 0, 0,
706 380, 0, 223, 0, 384, 0, 385, 12, 0, 384,
707 12, 0, 223, 12, 0, 12, 0, 384, 63, 0,
708 223, 63, 0, 0, 65, 382, 383, 0, 100, 0,
709 252, 0, 386, 0, 388, 381, 0, 385, 387, 0,
710 385, 390, 0, 385, 390, 65, 252, 0, 384, 60,
711 0, 223, 60, 0, 225, 221, 0, 228, 221, 0,
712 230, 221, 0, 225, 328, 0, 225, 0, 227, 307,
713 0, 388, 0, 388, 381, 0, 386, 0, 223, 0,
714 0, 0, 307, 0, 0, 62, 93, 393, 108, 0,
715 62, 48, 0, 223, 0, 392, 0, 393, 60, 392,
716 0, 0, 81, 297, 394, 0, 71, 297, 394, 0,
717 323, 297, 394, 0, 42, 0, 395, 81, 0, 395,
718 82, 0, 395, 83, 0, 395, 79, 0, 395, 80,
719 0, 395, 71, 0, 395, 69, 0, 395, 70, 0,
720 395, 89, 0, 395, 60, 0, 395, 74, 0, 395,
721 75, 0, 395, 76, 0, 395, 73, 0, 395, 64,
722 0, 395, 65, 0, 395, 77, 0, 395, 78, 0,
723 395, 87, 0, 395, 88, 0, 395, 68, 0, 395,
724 67, 0, 395, 110, 0, 395, 66, 63, 0, 395,
725 72, 0, 395, 91, 0, 395, 84, 0, 395, 48,
726 0, 395, 94, 111, 0, 395, 40, 0, 395, 39,
727 0, 395, 40, 94, 111, 0, 395, 39, 94, 111,
728 0, 395, 369, 394, 0, 395, 1, 0
861bb6c1
JL
729};
730
731#endif
732
733#if YYDEBUG != 0
734static const short yyrline[] = { 0,
b6a6823e
JM
735 431, 433, 441, 444, 445, 449, 451, 454, 459, 463,
736 469, 473, 477, 481, 484, 486, 488, 491, 493, 496,
737 499, 501, 503, 505, 507, 508, 510, 511, 515, 518,
738 527, 530, 532, 536, 539, 541, 545, 548, 560, 567,
739 575, 577, 578, 580, 584, 587, 593, 596, 598, 603,
740 606, 610, 613, 616, 619, 623, 628, 638, 640, 642,
741 644, 646, 659, 662, 666, 669, 671, 673, 676, 679,
742 683, 685, 687, 689, 694, 696, 698, 700, 702, 703,
743 710, 711, 712, 715, 718, 722, 724, 725, 728, 730,
744 733, 736, 738, 742, 745, 747, 751, 753, 755, 759,
2bdb0643
JM
745 761, 763, 767, 769, 771, 777, 782, 785, 788, 791,
746 796, 799, 801, 803, 809, 818, 821, 823, 825, 828,
747 830, 835, 844, 847, 849, 853, 862, 878, 881, 883,
748 884, 887, 894, 900, 902, 904, 906, 908, 911, 914,
749 917, 919, 920, 921, 922, 925, 927, 928, 931, 933,
750 934, 937, 942, 942, 946, 946, 949, 949, 952, 952,
751 956, 956, 961, 961, 964, 964, 967, 969, 972, 979,
752 983, 986, 989, 991, 995, 1001, 1010, 1012, 1020, 1023,
753 1026, 1029, 1033, 1036, 1038, 1041, 1044, 1046, 1048, 1050,
754 1054, 1057, 1060, 1065, 1069, 1074, 1078, 1081, 1082, 1086,
755 1103, 1109, 1112, 1114, 1115, 1116, 1119, 1123, 1124, 1128,
756 1132, 1135, 1137, 1141, 1144, 1147, 1151, 1154, 1156, 1158,
757 1160, 1163, 1167, 1169, 1172, 1174, 1180, 1183, 1186, 1189,
758 1192, 1197, 1200, 1203, 1207, 1209, 1213, 1217, 1219, 1221,
759 1226, 1229, 1234, 1237, 1239, 1247, 1260, 1265, 1271, 1273,
760 1275, 1288, 1291, 1293, 1295, 1297, 1299, 1301, 1303, 1305,
761 1307, 1309, 1311, 1313, 1315, 1317, 1319, 1321, 1323, 1325,
762 1327, 1329, 1331, 1335, 1337, 1339, 1356, 1359, 1361, 1362,
763 1363, 1364, 1365, 1368, 1380, 1383, 1387, 1390, 1392, 1397,
764 1399, 1400, 1403, 1405, 1413, 1415, 1417, 1419, 1423, 1426,
765 1430, 1434, 1435, 1436, 1440, 1448, 1449, 1450, 1460, 1462,
766 1465, 1467, 1478, 1483, 1485, 1487, 1489, 1491, 1493, 1495,
767 1498, 1500, 1511, 1512, 1516, 1520, 1524, 1528, 1530, 1534,
768 1536, 1538, 1546, 1548, 1550, 1552, 1556, 1558, 1560, 1562,
769 1567, 1569, 1571, 1573, 1576, 1578, 1580, 1624, 1627, 1631,
770 1634, 1638, 1641, 1646, 1648, 1652, 1661, 1664, 1671, 1677,
771 1681, 1683, 1688, 1690, 1697, 1699, 1703, 1707, 1713, 1717,
772 1720, 1724, 1727, 1737, 1740, 1744, 1748, 1751, 1754, 1757,
773 1760, 1766, 1772, 1774, 1779, 1781, 1799, 1802, 1807, 1812,
774 1820, 1822, 1835, 1839, 1842, 1845, 1850, 1853, 1861, 1864,
775 1866, 1868, 1871, 1874, 1889, 1908, 1911, 1913, 1916, 1918,
776 1922, 1924, 1928, 1930, 1934, 1937, 1941, 1946, 1947, 1960,
777 1967, 1968, 1974, 1979, 1984, 1990, 1991, 1998, 2001, 2005,
778 2008, 2012, 2017, 2020, 2024, 2027, 2029, 2031, 2033, 2040,
779 2042, 2043, 2044, 2048, 2051, 2055, 2058, 2064, 2066, 2069,
780 2072, 2075, 2081, 2084, 2087, 2089, 2091, 2095, 2102, 2108,
781 2113, 2119, 2121, 2126, 2129, 2132, 2134, 2136, 2140, 2144,
782 2149, 2152, 2157, 2160, 2163, 2169, 2171, 2183, 2187, 2192,
783 2218, 2220, 2223, 2225, 2230, 2232, 2234, 2236, 2238, 2240,
784 2244, 2252, 2255, 2257, 2261, 2268, 2274, 2280, 2286, 2296,
785 2302, 2306, 2313, 2341, 2351, 2357, 2360, 2363, 2365, 2369,
786 2371, 2375, 2378, 2382, 2390, 2393, 2395, 2399, 2410, 2424,
787 2425, 2426, 2427, 2430, 2439, 2444, 2450, 2452, 2457, 2459,
788 2461, 2463, 2465, 2467, 2470, 2480, 2487, 2512, 2518, 2521,
789 2524, 2526, 2537, 2542, 2545, 2550, 2553, 2560, 2570, 2573,
790 2580, 2590, 2592, 2595, 2597, 2600, 2604, 2609, 2613, 2616,
791 2619, 2624, 2627, 2631, 2634, 2636, 2640, 2642, 2649, 2651,
792 2654, 2657, 2662, 2666, 2671, 2681, 2684, 2688, 2692, 2701,
793 2704, 2706, 2708, 2714, 2716, 2725, 2728, 2730, 2732, 2734,
794 2738, 2741, 2744, 2746, 2748, 2750, 2754, 2757, 2768, 2778,
795 2780, 2781, 2785, 2793, 2795, 2803, 2806, 2808, 2810, 2812,
796 2816, 2819, 2822, 2824, 2826, 2828, 2832, 2835, 2838, 2840,
797 2842, 2844, 2846, 2853, 2857, 2862, 2866, 2871, 2873, 2877,
798 2880, 2882, 2886, 2888, 2889, 2892, 2894, 2896, 2903, 2914,
799 2920, 2926, 2940, 2942, 2946, 2960, 2962, 2964, 2968, 2974,
800 2987, 2990, 2995, 3008, 3014, 3016, 3017, 3018, 3026, 3031,
801 3040, 3041, 3045, 3048, 3054, 3060, 3063, 3065, 3067, 3069,
802 3073, 3077, 3081, 3084, 3088, 3090, 3099, 3102, 3104, 3106,
803 3108, 3110, 3112, 3114, 3116, 3120, 3124, 3128, 3132, 3134,
804 3136, 3138, 3140, 3142, 3144, 3146, 3148, 3156, 3158, 3159,
805 3160, 3163, 3169, 3171, 3176, 3178, 3181, 3194, 3197, 3200,
806 3204, 3207, 3214, 3216, 3219, 3221, 3223, 3226, 3229, 3232,
807 3235, 3237, 3240, 3244, 3246, 3252, 3254, 3255, 3257, 3262,
808 3264, 3266, 3268, 3270, 3273, 3274, 3276, 3279, 3280, 3283,
809 3283, 3286, 3286, 3289, 3289, 3291, 3293, 3295, 3297, 3303,
810 3309, 3311, 3314, 3317, 3320, 3323, 3329, 3331, 3332, 3335,
811 3337, 3338, 3339, 3341, 3344, 3347, 3350, 3356, 3360, 3362,
812 3365, 3367, 3370, 3374, 3376, 3379, 3381, 3384, 3401, 3409,
813 3412, 3414, 3416, 3420, 3423, 3424, 3432, 3435, 3438, 3441,
814 3442, 3448, 3451, 3454, 3456, 3460, 3465, 3468, 3478, 3483,
815 3484, 3491, 3494, 3497, 3499, 3502, 3504, 3514, 3528, 3532,
816 3535, 3537, 3541, 3545, 3548, 3551, 3553, 3557, 3559, 3566,
817 3573, 3576, 3580, 3584, 3588, 3594, 3598, 3603, 3605, 3608,
818 3613, 3619, 3630, 3633, 3635, 3639, 3647, 3650, 3654, 3657,
819 3659, 3661, 3667, 3672, 3675, 3677, 3679, 3681, 3683, 3685,
820 3687, 3689, 3691, 3693, 3695, 3697, 3699, 3701, 3703, 3705,
821 3707, 3709, 3711, 3713, 3715, 3717, 3719, 3721, 3723, 3725,
822 3727, 3729, 3731, 3733, 3735, 3737, 3740, 3742
861bb6c1 823};
8eeda2ec
JM
824#endif
825
826
827#if YYDEBUG != 0 || defined (YYERROR_VERBOSE)
861bb6c1
JL
828
829static const char * const yytname[] = { "$","error","$undefined.","IDENTIFIER",
386b8a85
JM
830"TYPENAME","SELFNAME","PFUNCNAME","SCSPEC","TYPESPEC","CV_QUALIFIER","CONSTANT",
831"STRING","ELLIPSIS","SIZEOF","ENUM","IF","ELSE","WHILE","DO","FOR","SWITCH",
3dcaad8b 832"CASE","DEFAULT","BREAK","CONTINUE","RETURN_KEYWORD","GOTO","ASM_KEYWORD","TYPEOF",
4a4b0aa3
RH
833"ALIGNOF","SIGOF","ATTRIBUTE","EXTENSION","LABEL","REALPART","IMAGPART","VA_ARG",
834"AGGR","VISSPEC","DELETE","NEW","THIS","OPERATOR","CXX_TRUE","CXX_FALSE","NAMESPACE",
3dcaad8b
MM
835"TYPENAME_KEYWORD","USING","LEFT_RIGHT","TEMPLATE","TYPEID","DYNAMIC_CAST","STATIC_CAST",
836"REINTERPRET_CAST","CONST_CAST","SCOPE","EMPTY","PTYPENAME","NSNAME","'{'","','",
837"';'","THROW","':'","ASSIGN","'='","'?'","OROR","ANDAND","'|'","'^'","'&'","MIN_MAX",
838"EQCOMPARE","ARITHCOMPARE","'<'","'>'","LSHIFT","RSHIFT","'+'","'-'","'*'","'/'",
839"'%'","POINTSAT_STAR","DOT_STAR","UNARY","PLUSPLUS","MINUSMINUS","'~'","HYPERUNARY",
87e3dbc9
MM
840"POINTSAT","'.'","'('","'['","TRY","CATCH","EXTERN_LANG_STRING","ALL","PRE_PARSED_CLASS_DECL",
841"DEFARG","DEFARG_MARKER","PRE_PARSED_FUNCTION_DECL","TYPENAME_DEFN","IDENTIFIER_DEFN",
66a6250f
JM
842"PTYPENAME_DEFN","END_OF_LINE","END_OF_SAVED_INPUT","')'","'}'","'!'","']'",
843"program","extdefs","@1","extdefs_opt",".hush_warning",".warning_ok","extension",
844"asm_keyword","lang_extdef","@2","extdef","@3","@4","namespace_alias","@5","using_decl",
845"namespace_using_decl","using_directive","@6","namespace_qualifier","any_id",
846"extern_lang_string","template_header","@7","template_parm_list","maybe_identifier",
847"template_type_parm","template_template_parm","template_parm","template_def",
848"template_extdef","template_datadef","datadef","ctor_initializer_opt","maybe_return_init",
849"eat_saved_input","fndef","constructor_declarator","@8","@9","@10","@11","fn.def1",
850"component_constructor_declarator","fn.def2","return_id","return_init","base_init",
851".set_base_init","member_init_list","member_init","identifier","notype_identifier",
852"identifier_defn","explicit_instantiation","@12","@13","@14","@15","@16","@17",
853"@18","@19","begin_explicit_instantiation","end_explicit_instantiation","template_type",
854"apparent_template_type","self_template_type",".finish_template_type","template_close_bracket",
855"template_arg_list_opt","template_arg_list","template_arg","unop","expr","paren_expr_or_null",
856"paren_cond_or_null","xcond","condition","@20","compstmtend","already_scoped_stmt",
80048418
MM
857"@21","nontrivial_exprlist","nonnull_exprlist","unary_expr","new_placement",
858"new_initializer","regcast_or_absdcl","cast_expr","expr_no_commas","notype_unqualified_id",
859"do_id","template_id","object_template_id","unqualified_id","expr_or_declarator_intern",
860"expr_or_declarator","notype_template_declarator","direct_notype_declarator",
861"primary","@22","new","delete","boolean.literal","string","nodecls","object",
862"decl","declarator","fcast_or_absdcl","type_id","typed_declspecs","typed_declspecs1",
863"reserved_declspecs","declmods","typed_typespecs","reserved_typespecquals","typespec",
864"typespecqual_reserved","initdecls","notype_initdecls","nomods_initdecls","maybeasm",
865"initdcl","@23","initdcl0_innards","@24","initdcl0","notype_initdcl0","nomods_initdcl0",
866"@25","maybe_attribute","attributes","attribute","attribute_list","attrib","any_word",
867"identifiers_or_typenames","maybe_init","init","initlist","fn.defpen","pending_inline",
868"pending_inlines","defarg_again","pending_defargs","structsp","@26","@27","@28",
869"@29","@30","maybecomma","maybecomma_warn","aggr","named_class_head_sans_basetype",
870"named_class_head_sans_basetype_defn","named_complex_class_head_sans_basetype",
871"named_class_head","@31","unnamed_class_head","class_head","maybe_base_class_list",
872"base_class_list","base_class","base_class.1","base_class_access_list","opt.component_decl_list",
873"access_specifier","component_decl_list","component_decl","component_decl_1",
874"components","notype_components","component_declarator0","component_declarator",
875"after_type_component_declarator0","notype_component_declarator0","after_type_component_declarator",
876"notype_component_declarator","enumlist_opt","enumlist","enumerator","new_type_id",
877"cv_qualifiers","nonempty_cv_qualifiers","maybe_parmlist","after_type_declarator_intern",
e88e3c0b
JM
878"after_type_declarator","direct_after_type_declarator","nonnested_type","complete_type_name",
879"nested_type","notype_declarator_intern","notype_declarator","complex_notype_declarator",
880"complex_direct_notype_declarator","qualified_id","notype_qualified_id","overqualified_id",
881"functional_cast","type_name","nested_name_specifier","nested_name_specifier_1",
882"typename_sub","typename_sub0","typename_sub1","typename_sub2","explicit_template_type",
883"complex_type_name","ptr_to_mem","global_scope","new_declarator","direct_new_declarator",
884"absdcl_intern","absdcl","direct_abstract_declarator","stmts","errstmt","maybe_label_decls",
3d7de1fa
MM
885"label_decls","label_decl","compstmt_or_error","compstmt","@32","simple_if",
886"@33","@34","implicitly_scoped_stmt","@35","stmt","simple_stmt","@36","@37",
887"@38","@39","@40","@41","@42","@43","@44","@45","@46","@47","@48","@49","function_try_block",
888"@50","@51","try_block","@52","@53","handler_seq","handler","@54","@55","type_specifier_seq",
b607c87f
JM
889"handler_args","label_colon","for.init.statement","maybe_cv_qualifier","xexpr",
890"asm_operands","nonnull_asm_operands","asm_operand","asm_clobbers","parmlist",
3d7de1fa 891"complex_parmlist","defarg","@56","defarg1","parms","parms_comma","named_parm",
b607c87f
JM
892"full_parm","parm","see_typename","bad_parm","exception_specification_opt","ansi_raise_identifier",
893"ansi_raise_identifiers","conversion_declarator","operator","operator_name", NULL
861bb6c1
JL
894};
895#endif
896
897static const short yyr1[] = { 0,
4a4b0aa3
RH
898 112, 112, 114, 113, 113, 115, 115, 116, 117, 118,
899 119, 121, 120, 122, 122, 122, 122, 122, 122, 122,
900 123, 122, 124, 122, 122, 122, 122, 122, 126, 125,
901 127, 127, 127, 128, 128, 128, 130, 129, 131, 131,
902 132, 132, 132, 132, 133, 133, 135, 134, 134, 136,
903 136, 137, 137, 138, 138, 139, 140, 140, 140, 140,
904 140, 140, 141, 141, 142, 142, 142, 142, 142, 142,
905 143, 143, 143, 143, 144, 144, 144, 144, 144, 144,
906 144, 144, 144, 145, 145, 146, 146, 146, 147, 147,
907 148, 148, 148, 150, 149, 149, 151, 149, 149, 152,
908 149, 149, 153, 149, 149, 154, 154, 154, 154, 154,
909 155, 155, 155, 155, 156, 156, 156, 156, 156, 156,
910 156, 157, 158, 158, 158, 159, 160, 161, 161, 161,
273a708f
MM
911 161, 162, 162, 162, 162, 162, 162, 162, 162, 162,
912 163, 163, 163, 163, 163, 164, 164, 164, 165, 165,
913 165, 167, 166, 168, 166, 169, 166, 170, 166, 171,
914 166, 172, 166, 173, 166, 174, 166, 175, 176, 177,
915 177, 177, 178, 178, 179, 180, 181, 181, 182, 182,
916 183, 183, 184, 184, 184, 185, 185, 185, 185, 185,
917 186, 186, 187, 187, 188, 188, 189, 189, 189, 191,
918 190, 190, 192, 192, 192, 192, 194, 193, 193, 195,
919 195, 195, 195, 196, 196, 197, 197, 197, 197, 197,
4a4b0aa3 920 197, 197, 197, 197, 197, 197, 197, 197, 197, 197,
273a708f 921 197, 197, 197, 197, 197, 197, 197, 197, 197, 197,
80048418
MM
922 198, 198, 199, 199, 199, 199, 200, 200, 201, 201,
923 201, 202, 202, 202, 202, 202, 202, 202, 202, 202,
924 202, 202, 202, 202, 202, 202, 202, 202, 202, 202,
925 202, 202, 202, 202, 202, 202, 203, 203, 203, 203,
926 203, 203, 203, 204, 205, 205, 206, 206, 206, 207,
927 207, 207, 208, 208, 209, 209, 209, 209, 210, 210,
928 211, 211, 211, 211, 212, 212, 212, 212, 212, 212,
929 212, 213, 212, 212, 212, 212, 212, 212, 212, 212,
930 212, 212, 212, 212, 212, 212, 212, 212, 212, 212,
931 212, 212, 212, 212, 212, 212, 212, 212, 212, 212,
932 212, 212, 212, 212, 212, 212, 212, 214, 214, 215,
933 215, 216, 216, 217, 217, 218, 219, 219, 220, 220,
934 220, 220, 220, 220, 221, 221, 222, 222, 223, 223,
935 223, 223, 223, 224, 224, 225, 225, 225, 225, 225,
936 225, 226, 226, 226, 226, 226, 227, 227, 227, 227,
937 227, 227, 228, 228, 228, 228, 229, 229, 230, 230,
938 230, 230, 230, 230, 230, 231, 231, 231, 232, 232,
939 233, 233, 234, 234, 235, 235, 237, 236, 236, 239,
940 238, 238, 240, 241, 243, 242, 242, 244, 244, 245,
941 245, 246, 247, 247, 248, 248, 248, 248, 248, 249,
942 249, 249, 249, 250, 250, 251, 251, 252, 252, 252,
943 252, 252, 253, 253, 253, 253, 253, 254, 255, 255,
944 255, 256, 256, 257, 257, 258, 258, 258, 260, 259,
945 261, 259, 259, 259, 259, 262, 263, 264, 259, 259,
946 265, 265, 266, 266, 267, 267, 267, 267, 267, 267,
947 268, 269, 269, 269, 270, 270, 270, 270, 270, 271,
948 272, 271, 271, 273, 274, 274, 275, 275, 275, 276,
949 276, 277, 277, 278, 278, 279, 279, 279, 279, 280,
950 280, 280, 280, 281, 282, 282, 283, 283, 283, 283,
951 283, 283, 283, 283, 283, 283, 284, 284, 284, 284,
952 284, 284, 284, 284, 284, 285, 285, 285, 286, 286,
953 286, 287, 287, 288, 288, 289, 289, 290, 290, 290,
954 290, 291, 291, 292, 292, 292, 293, 293, 294, 294,
955 295, 295, 296, 296, 296, 297, 297, 298, 298, 299,
956 299, 299, 299, 300, 300, 301, 301, 301, 301, 301,
957 301, 302, 302, 302, 302, 302, 302, 303, 303, 304,
958 304, 304, 305, 306, 306, 307, 307, 307, 307, 307,
959 307, 308, 308, 308, 308, 308, 308, 309, 309, 309,
960 309, 309, 309, 310, 310, 311, 311, 312, 312, 313,
961 313, 313, 314, 314, 314, 315, 315, 315, 316, 316,
962 316, 316, 317, 317, 318, 318, 318, 318, 319, 319,
963 319, 319, 320, 320, 320, 320, 320, 320, 321, 322,
964 322, 322, 323, 323, 324, 325, 325, 325, 325, 325,
965 325, 325, 326, 326, 327, 327, 328, 328, 328, 328,
966 328, 328, 328, 328, 328, 328, 328, 329, 329, 329,
967 329, 329, 329, 329, 329, 329, 329, 330, 330, 330,
968 330, 331, 332, 332, 333, 333, 334, 335, 335, 337,
969 336, 339, 340, 338, 341, 342, 341, 343, 343, 344,
970 344, 345, 344, 344, 346, 347, 344, 348, 349, 344,
971 350, 351, 352, 353, 344, 354, 355, 344, 356, 344,
972 357, 344, 358, 344, 344, 344, 344, 344, 344, 344,
973 344, 344, 344, 344, 344, 344, 344, 344, 344, 344,
eca1bd08
UD
974 344, 344, 344, 344, 360, 361, 359, 363, 364, 362,
975 365, 365, 367, 368, 366, 369, 369, 370, 370, 371,
976 371, 371, 371, 372, 372, 372, 373, 373, 374, 374,
977 374, 375, 375, 376, 376, 377, 378, 378, 379, 379,
978 379, 380, 380, 380, 380, 380, 380, 380, 382, 381,
979 383, 383, 384, 384, 384, 384, 384, 385, 385, 386,
980 386, 386, 386, 386, 386, 387, 387, 388, 388, 389,
981 390, 390, 391, 391, 391, 392, 393, 393, 394, 394,
982 394, 394, 395, 396, 396, 396, 396, 396, 396, 396,
80048418
MM
983 396, 396, 396, 396, 396, 396, 396, 396, 396, 396,
984 396, 396, 396, 396, 396, 396, 396, 396, 396, 396,
eca1bd08 985 396, 396, 396, 396, 396, 396, 396, 396
861bb6c1
JL
986};
987
988static const short yyr2[] = { 0,
989 0, 1, 0, 2, 2, 1, 0, 0, 0, 1,
89ad74a3 990 1, 0, 2, 2, 1, 1, 5, 4, 5, 4,
85c6cbaf
ML
991 0, 6, 0, 5, 1, 2, 1, 2, 0, 6,
992 2, 3, 3, 3, 3, 4, 0, 5, 2, 3,
993 1, 1, 2, 2, 1, 2, 0, 5, 3, 1,
994 3, 1, 0, 2, 2, 3, 1, 3, 1, 3,
282a221c
JM
995 1, 3, 2, 2, 2, 1, 1, 5, 4, 2,
996 2, 3, 3, 2, 2, 3, 3, 2, 2, 2,
85c6cbaf
ML
997 2, 2, 1, 1, 1, 0, 1, 2, 0, 1,
998 4, 3, 3, 0, 8, 5, 0, 9, 6, 0,
999 8, 5, 0, 9, 6, 2, 2, 1, 2, 1,
1000 6, 4, 6, 4, 2, 1, 2, 2, 1, 2,
1001 1, 2, 2, 4, 2, 3, 0, 0, 1, 3,
1002 2, 3, 1, 4, 2, 4, 2, 4, 2, 1,
1003 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
273a708f
MM
1004 1, 0, 6, 0, 6, 0, 5, 0, 5, 0,
1005 7, 0, 7, 0, 6, 0, 6, 0, 0, 5,
1006 5, 1, 1, 5, 5, 0, 1, 1, 0, 1,
1007 1, 3, 1, 1, 1, 1, 1, 1, 1, 1,
1008 1, 1, 1, 3, 1, 3, 0, 1, 1, 0,
1009 7, 1, 1, 3, 4, 3, 0, 3, 1, 3,
1010 3, 3, 3, 1, 1, 1, 2, 2, 2, 2,
1011 2, 2, 2, 4, 2, 4, 2, 3, 3, 4,
80048418
MM
1012 4, 5, 5, 6, 2, 4, 5, 2, 2, 6,
1013 3, 3, 3, 1, 3, 2, 3, 4, 1, 2,
1014 5, 1, 3, 3, 3, 3, 3, 3, 3, 3,
861bb6c1 1015 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
80048418
MM
1016 3, 5, 3, 3, 1, 2, 3, 3, 1, 1,
1017 1, 1, 1, 0, 5, 5, 5, 5, 5, 1,
1018 1, 1, 1, 2, 1, 2, 2, 3, 4, 4,
1019 1, 1, 1, 3, 1, 1, 1, 1, 3, 3,
1020 3, 0, 4, 4, 2, 4, 2, 4, 2, 2,
1021 1, 4, 1, 7, 7, 7, 7, 4, 4, 2,
1022 2, 2, 1, 4, 2, 2, 5, 3, 2, 2,
1023 5, 3, 5, 3, 4, 6, 2, 1, 2, 1,
1024 2, 1, 1, 1, 2, 0, 2, 2, 3, 3,
1025 3, 2, 2, 2, 1, 1, 1, 2, 2, 2,
1026 2, 1, 1, 1, 1, 2, 2, 3, 3, 3,
1027 4, 1, 2, 2, 2, 1, 1, 1, 2, 2,
1028 2, 1, 1, 2, 2, 3, 1, 2, 1, 1,
1029 1, 4, 4, 4, 4, 1, 1, 1, 1, 3,
1030 1, 3, 1, 3, 0, 4, 0, 6, 3, 0,
1031 4, 1, 3, 3, 0, 4, 3, 0, 1, 1,
1032 2, 6, 1, 3, 0, 1, 4, 6, 4, 1,
1033 1, 1, 1, 1, 3, 0, 2, 1, 2, 3,
1034 4, 1, 1, 3, 4, 3, 5, 1, 4, 3,
1035 3, 0, 3, 3, 3, 0, 2, 2, 0, 6,
1036 0, 5, 2, 2, 2, 0, 0, 0, 10, 1,
1037 0, 1, 0, 1, 1, 2, 2, 2, 2, 2,
1038 2, 2, 2, 2, 3, 4, 3, 2, 3, 1,
1039 0, 3, 2, 2, 1, 1, 0, 2, 3, 1,
1040 4, 1, 3, 1, 1, 2, 2, 3, 3, 0,
1041 1, 3, 2, 2, 1, 2, 2, 2, 2, 2,
1042 2, 2, 1, 2, 2, 3, 2, 2, 4, 4,
1043 2, 1, 5, 4, 1, 0, 1, 3, 0, 1,
1044 3, 1, 1, 1, 1, 4, 4, 4, 4, 4,
1045 3, 4, 4, 4, 4, 3, 2, 1, 1, 3,
1046 1, 3, 2, 1, 6, 0, 2, 1, 2, 3,
1047 3, 1, 3, 1, 2, 3, 3, 2, 2, 3,
1048 1, 4, 4, 3, 3, 2, 1, 1, 2, 1,
1049 1, 2, 2, 1, 2, 3, 3, 2, 2, 3,
1050 1, 3, 3, 2, 2, 3, 1, 4, 3, 4,
1051 3, 1, 2, 2, 2, 2, 2, 1, 2, 4,
1052 4, 2, 1, 1, 1, 1, 2, 4, 2, 2,
1053 2, 2, 1, 2, 2, 2, 2, 3, 1, 2,
1054 3, 4, 2, 2, 2, 2, 2, 2, 4, 2,
1055 1, 2, 2, 3, 1, 3, 2, 3, 2, 2,
1056 3, 1, 3, 4, 1, 2, 3, 2, 2, 1,
1057 3, 2, 2, 1, 2, 3, 1, 3, 6, 4,
1058 4, 3, 5, 3, 3, 3, 2, 1, 1, 2,
1059 2, 2, 0, 1, 1, 2, 3, 1, 2, 0,
1060 3, 0, 0, 5, 1, 0, 2, 1, 1, 1,
1061 2, 0, 4, 1, 0, 0, 5, 0, 0, 7,
1062 0, 0, 0, 0, 12, 0, 0, 7, 0, 5,
1063 0, 7, 0, 4, 2, 2, 2, 3, 6, 8,
eca1bd08
UD
1064 10, 8, 12, 10, 10, 4, 3, 2, 2, 1,
1065 1, 1, 1, 1, 0, 0, 6, 0, 0, 5,
1066 1, 2, 0, 0, 5, 1, 1, 3, 3, 2,
1067 2, 2, 2, 2, 1, 2, 0, 1, 0, 1,
1068 1, 0, 1, 1, 3, 4, 1, 3, 0, 1,
1069 1, 1, 2, 2, 2, 1, 2, 2, 0, 3,
1070 1, 1, 1, 2, 2, 2, 4, 2, 2, 2,
1071 2, 2, 2, 1, 2, 1, 2, 1, 1, 0,
1072 0, 1, 0, 4, 2, 1, 1, 3, 0, 3,
1073 3, 3, 1, 2, 2, 2, 2, 2, 2, 2,
80048418 1074 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
eca1bd08
UD
1075 2, 2, 2, 2, 2, 2, 3, 2, 2, 2,
1076 2, 3, 2, 2, 4, 4, 3, 2
861bb6c1
JL
1077};
1078
1079static const short yydefact[] = { 3,
80048418
MM
1080 12, 12, 5, 0, 4, 0, 281, 633, 634, 0,
1081 388, 400, 578, 0, 11, 0, 0, 0, 10, 485,
eca1bd08
UD
1082 843, 0, 0, 0, 168, 665, 282, 283, 83, 0,
1083 0, 830, 0, 45, 0, 0, 13, 25, 0, 27,
80048418
MM
1084 8, 0, 16, 15, 89, 110, 86, 0, 635, 172,
1085 302, 279, 303, 611, 0, 375, 0, 374, 393, 0,
1086 413, 392, 430, 399, 0, 500, 501, 507, 506, 505,
1087 480, 387, 600, 401, 601, 108, 301, 622, 598, 0,
1088 636, 576, 0, 0, 280, 81, 82, 179, 639, 179,
1089 640, 179, 284, 168, 141, 142, 143, 144, 145, 471,
1090 473, 0, 661, 0, 474, 0, 0, 0, 0, 142,
273a708f 1091 143, 144, 145, 23, 0, 0, 0, 0, 0, 0,
80048418
MM
1092 0, 475, 643, 0, 649, 0, 0, 0, 37, 0,
1093 0, 31, 0, 0, 47, 0, 179, 641, 0, 0,
1094 0, 609, 604, 0, 0, 0, 608, 0, 0, 0,
1095 0, 302, 0, 293, 0, 0, 0, 301, 576, 28,
1096 0, 26, 3, 46, 0, 64, 388, 0, 0, 8,
1097 67, 63, 66, 89, 0, 0, 0, 399, 90, 14,
1098 0, 428, 0, 0, 446, 87, 79, 642, 582, 0,
1099 0, 576, 80, 0, 0, 0, 106, 0, 409, 365,
1100 591, 366, 597, 0, 576, 390, 389, 78, 109, 376,
1101 0, 411, 391, 107, 382, 406, 407, 377, 395, 397,
1102 386, 408, 0, 75, 431, 486, 487, 488, 489, 504,
1103 150, 149, 151, 491, 492, 173, 498, 490, 0, 0,
eca1bd08 1104 493, 494, 507, 830, 503, 476, 579, 394, 0, 425,
80048418 1105 634, 0, 663, 172, 626, 627, 623, 603, 637, 0,
eca1bd08
UD
1106 602, 599, 0, 878, 874, 873, 871, 853, 858, 859,
1107 0, 865, 864, 850, 851, 849, 868, 857, 854, 855,
1108 856, 860, 861, 847, 848, 844, 845, 846, 870, 862,
1109 863, 852, 869, 0, 866, 776, 393, 777, 839, 284,
80048418
MM
1110 281, 578, 306, 354, 0, 0, 0, 0, 0, 350,
1111 348, 321, 352, 353, 0, 0, 0, 0, 0, 282,
1112 283, 275, 0, 0, 187, 186, 0, 188, 189, 0,
1113 0, 190, 0, 0, 180, 181, 0, 249, 0, 252,
1114 185, 305, 216, 0, 0, 307, 308, 0, 183, 372,
1115 393, 373, 628, 333, 323, 0, 0, 0, 0, 179,
1116 0, 483, 469, 0, 662, 660, 0, 191, 192, 0,
1117 0, 0, 435, 3, 21, 29, 657, 653, 654, 656,
1118 658, 655, 141, 142, 143, 0, 144, 145, 645, 646,
1119 650, 647, 644, 0, 291, 292, 290, 625, 624, 33,
1120 32, 49, 0, 158, 0, 0, 393, 156, 0, 0,
1121 605, 607, 0, 606, 142, 143, 277, 278, 297, 0,
1122 615, 296, 0, 614, 0, 304, 282, 283, 0, 0,
1123 0, 295, 294, 619, 0, 0, 12, 0, 168, 9,
1124 9, 70, 0, 65, 0, 0, 71, 74, 0, 427,
eca1bd08
UD
1125 429, 122, 93, 127, 765, 0, 85, 84, 92, 125,
1126 0, 0, 123, 88, 0, 806, 215, 0, 214, 801,
1127 824, 0, 372, 393, 373, 0, 800, 802, 831, 813,
1128 0, 0, 621, 0, 0, 833, 0, 0, 589, 584,
80048418
MM
1129 0, 588, 0, 0, 0, 0, 0, 576, 428, 0,
1130 77, 0, 576, 596, 0, 379, 380, 0, 76, 428,
1131 384, 383, 385, 378, 398, 415, 414, 179, 495, 499,
1132 497, 0, 502, 508, 0, 396, 428, 576, 94, 0,
1133 0, 0, 0, 576, 100, 577, 610, 634, 664, 172,
eca1bd08 1134 0, 0, 867, 872, 395, 576, 576, 0, 576, 877,
80048418
MM
1135 179, 0, 0, 223, 0, 225, 238, 239, 0, 0,
1136 0, 0, 0, 0, 276, 222, 219, 218, 220, 0,
1137 0, 0, 0, 0, 305, 0, 0, 0, 217, 177,
1138 178, 299, 0, 221, 0, 0, 250, 0, 0, 0,
52fbc847 1139 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
80048418
MM
1140 0, 0, 0, 0, 0, 0, 0, 0, 0, 315,
1141 0, 317, 319, 320, 358, 357, 0, 0, 0, 0,
eca1bd08 1142 0, 227, 574, 0, 235, 355, 347, 0, 0, 830,
80048418
MM
1143 336, 339, 340, 0, 0, 367, 684, 680, 0, 0,
1144 576, 576, 576, 369, 687, 0, 632, 371, 0, 0,
1145 370, 335, 0, 330, 349, 331, 351, 629, 0, 332,
1146 176, 176, 0, 166, 0, 393, 164, 484, 571, 568,
1147 0, 483, 569, 483, 0, 402, 0, 0, 403, 404,
1148 405, 441, 442, 443, 440, 0, 433, 436, 0, 3,
1149 0, 648, 179, 651, 0, 41, 42, 0, 53, 0,
eca1bd08 1150 0, 57, 61, 50, 829, 393, 53, 828, 59, 169,
80048418
MM
1151 154, 152, 169, 176, 300, 613, 612, 304, 0, 616,
1152 0, 18, 20, 89, 9, 9, 73, 72, 0, 0,
1153 356, 0, 710, 91, 708, 452, 0, 448, 447, 0,
eca1bd08
UD
1154 583, 580, 805, 819, 808, 684, 680, 0, 820, 576,
1155 823, 825, 0, 821, 0, 822, 581, 804, 818, 807,
1156 803, 832, 815, 826, 816, 809, 814, 620, 0, 632,
80048418 1157 0, 618, 585, 587, 586, 0, 0, 0, 0, 0,
eca1bd08
UD
1158 0, 576, 595, 0, 423, 422, 410, 594, 0, 833,
1159 590, 381, 412, 424, 428, 0, 496, 633, 634, 830,
1160 830, 635, 509, 510, 512, 830, 515, 514, 0, 542,
80048418 1161 634, 0, 533, 0, 0, 545, 0, 121, 116, 0,
eca1bd08
UD
1162 172, 546, 549, 0, 0, 525, 0, 119, 426, 833,
1163 799, 179, 179, 638, 179, 833, 799, 576, 97, 576,
1164 103, 876, 875, 839, 839, 839, 0, 0, 0, 0,
80048418
MM
1165 0, 0, 0, 0, 393, 0, 0, 0, 311, 0,
1166 309, 310, 0, 247, 182, 281, 633, 634, 282, 283,
eca1bd08 1167 0, 0, 453, 481, 0, 274, 273, 791, 790, 0,
80048418
MM
1168 271, 270, 268, 269, 267, 266, 265, 262, 263, 264,
1169 260, 261, 255, 256, 257, 258, 259, 253, 254, 0,
1170 0, 0, 0, 0, 0, 0, 229, 244, 0, 0,
1171 228, 576, 576, 0, 576, 573, 672, 0, 0, 0,
1172 0, 0, 338, 0, 342, 0, 344, 0, 0, 683,
eca1bd08
UD
1173 682, 675, 679, 678, 829, 392, 0, 0, 697, 0,
1174 0, 833, 368, 833, 685, 576, 799, 0, 684, 680,
80048418
MM
1175 0, 0, 576, 0, 392, 0, 0, 0, 0, 171,
1176 175, 285, 169, 162, 160, 169, 0, 472, 484, 567,
1177 0, 213, 212, 211, 210, 435, 0, 0, 24, 0,
1178 0, 652, 0, 38, 44, 43, 55, 52, 53, 0,
1179 48, 0, 0, 54, 491, 0, 159, 169, 169, 157,
1180 170, 298, 17, 19, 69, 89, 416, 140, 146, 133,
1181 147, 148, 0, 126, 129, 0, 0, 0, 0, 709,
1182 703, 449, 0, 124, 0, 683, 679, 684, 680, 0,
1183 392, 598, 0, 576, 685, 684, 680, 0, 305, 0,
eca1bd08
UD
1184 628, 827, 0, 0, 835, 0, 0, 0, 0, 420,
1185 593, 592, 419, 176, 517, 516, 830, 830, 830, 0,
1186 576, 799, 541, 534, 546, 535, 428, 428, 531, 532,
1187 529, 530, 576, 799, 281, 633, 0, 415, 117, 537,
80048418
MM
1188 547, 552, 553, 415, 415, 0, 0, 415, 115, 538,
1189 550, 415, 0, 428, 0, 526, 527, 528, 428, 96,
eca1bd08
UD
1190 0, 0, 0, 0, 102, 0, 833, 799, 833, 799,
1191 841, 840, 842, 286, 322, 224, 226, 0, 328, 329,
80048418
MM
1192 0, 0, 0, 0, 310, 313, 0, 0, 0, 0,
1193 248, 0, 314, 316, 318, 242, 241, 231, 0, 230,
1194 246, 0, 0, 669, 667, 0, 670, 0, 236, 0,
1195 0, 179, 345, 0, 0, 0, 676, 681, 677, 688,
eca1bd08 1196 576, 696, 694, 695, 686, 833, 0, 692, 0, 0,
80048418
MM
1197 630, 631, 684, 680, 0, 0, 334, 167, 169, 169,
1198 165, 572, 570, 470, 434, 432, 281, 0, 22, 30,
1199 659, 56, 51, 58, 62, 60, 155, 153, 68, 0,
eca1bd08 1200 131, 0, 135, 0, 137, 0, 139, 0, 766, 0,
80048418 1201 203, 711, 0, 704, 705, 0, 450, 0, 683, 679,
eca1bd08
UD
1202 684, 680, 0, 576, 603, 685, 0, 631, 817, 811,
1203 812, 810, 836, 837, 0, 0, 0, 0, 0, 0,
1204 417, 174, 0, 519, 518, 513, 833, 0, 536, 446,
1205 446, 833, 0, 0, 0, 428, 428, 0, 428, 428,
80048418
MM
1206 0, 428, 0, 524, 477, 0, 446, 576, 288, 287,
1207 289, 576, 99, 0, 105, 0, 0, 0, 0, 0,
1208 0, 0, 456, 0, 454, 251, 272, 0, 232, 233,
1209 243, 245, 668, 666, 673, 671, 0, 237, 0, 0,
eca1bd08 1210 337, 341, 343, 833, 690, 576, 691, 163, 161, 0,
80048418
MM
1211 437, 439, 132, 130, 0, 0, 0, 0, 444, 0,
1212 0, 281, 633, 634, 712, 725, 728, 731, 736, 0,
eca1bd08
UD
1213 0, 0, 0, 0, 0, 0, 0, 282, 760, 768,
1214 0, 787, 764, 763, 762, 0, 720, 0, 0, 393,
1215 0, 699, 718, 724, 698, 719, 761, 0, 706, 451,
1216 683, 679, 0, 685, 310, 0, 834, 421, 0, 511,
80048418
MM
1217 112, 576, 540, 544, 114, 576, 428, 428, 561, 446,
1218 281, 633, 0, 548, 554, 555, 415, 415, 446, 446,
eca1bd08 1219 0, 446, 551, 466, 539, 833, 833, 576, 576, 240,
80048418 1220 0, 0, 0, 0, 455, 0, 0, 234, 674, 346,
eca1bd08
UD
1221 287, 693, 833, 0, 134, 136, 138, 773, 767, 771,
1222 0, 707, 702, 206, 780, 782, 783, 0, 0, 716,
80048418 1223 0, 0, 0, 743, 745, 746, 747, 0, 0, 0,
eca1bd08 1224 0, 0, 0, 0, 781, 0, 364, 788, 0, 721,
80048418 1225 362, 415, 0, 363, 0, 415, 0, 0, 0, 204,
eca1bd08
UD
1226 701, 700, 722, 759, 758, 684, 680, 0, 0, 838,
1227 418, 833, 833, 560, 557, 559, 0, 0, 428, 428,
1228 428, 556, 558, 543, 0, 95, 101, 833, 833, 324,
1229 325, 326, 327, 457, 575, 689, 438, 0, 772, 445,
80048418 1230 195, 0, 713, 726, 715, 0, 0, 0, 0, 0,
eca1bd08
UD
1231 739, 0, 748, 0, 757, 39, 145, 34, 145, 0,
1232 35, 769, 0, 360, 361, 0, 0, 0, 359, 205,
80048418 1233 716, 392, 111, 113, 428, 428, 566, 446, 446, 468,
eca1bd08
UD
1234 0, 467, 462, 98, 104, 0, 774, 202, 0, 393,
1235 0, 716, 0, 729, 717, 703, 785, 732, 0, 0,
1236 0, 0, 744, 756, 40, 36, 0, 0, 723, 565,
80048418 1237 563, 562, 564, 0, 0, 479, 0, 0, 0, 196,
eca1bd08
UD
1238 415, 714, 207, 727, 209, 0, 786, 0, 784, 737,
1239 741, 740, 770, 792, 792, 0, 465, 464, 458, 86,
1240 89, 778, 779, 775, 428, 703, 193, 0, 0, 199,
1241 0, 198, 716, 0, 0, 0, 793, 794, 0, 749,
1242 0, 463, 0, 208, 0, 730, 733, 738, 742, 0,
1243 0, 0, 0, 0, 792, 0, 461, 0, 460, 200,
1244 194, 0, 0, 797, 0, 752, 795, 0, 0, 750,
1245 459, 0, 0, 796, 0, 0, 0, 0, 0, 201,
1246 734, 798, 754, 755, 0, 751, 0, 0, 735, 753,
1247 0, 0, 0
861bb6c1
JL
1248};
1249
eca1bd08 1250static const short yydefgoto[] = { 1671,
80048418
MM
1251 437, 2, 438, 165, 723, 333, 181, 3, 4, 37,
1252 690, 374, 1343, 691, 816, 1344, 1345, 394, 1443, 695,
1253 41, 817, 403, 701, 987, 702, 703, 704, 43, 172,
1254 173, 44, 456, 184, 180, 45, 46, 831, 1108, 837,
1255 1110, 47, 819, 820, 185, 186, 457, 730, 1014, 1015,
1256 669, 1016, 235, 48, 999, 998, 713, 710, 1180, 1179,
1257 966, 963, 136, 997, 49, 237, 50, 960, 582, 334,
eca1bd08
UD
1258 335, 336, 337, 1346, 1609, 1503, 1611, 1549, 1652, 1212,
1259 1584, 1606, 368, 952, 338, 621, 911, 339, 340, 369,
80048418
MM
1260 342, 360, 52, 256, 696, 419, 154, 53, 54, 343,
1261 577, 344, 345, 346, 347, 458, 348, 1347, 516, 642,
1262 349, 1348, 56, 218, 472, 350, 219, 485, 220, 198,
1263 211, 60, 499, 517, 1369, 785, 1240, 199, 212, 61,
1264 527, 786, 62, 63, 686, 687, 688, 1320, 463, 873,
eca1bd08 1265 874, 1600, 1601, 1576, 1542, 1485, 64, 674, 362, 525,
80048418
MM
1266 1394, 1543, 1130, 670, 65, 66, 67, 68, 69, 243,
1267 70, 71, 245, 803, 804, 805, 806, 824, 1095, 825,
1268 826, 827, 1080, 1090, 1081, 1384, 1082, 1083, 1385, 1386,
1269 671, 672, 673, 622, 942, 352, 192, 497, 490, 201,
1270 73, 74, 75, 142, 143, 157, 77, 132, 353, 354,
1271 355, 79, 356, 81, 808, 123, 124, 125, 532, 105,
1272 82, 357, 916, 917, 937, 932, 645, 1351, 1352, 1213,
1273 1214, 1215, 734, 1353, 1021, 1354, 1428, 1552, 1506, 1507,
eca1bd08
UD
1274 1355, 1356, 1531, 1429, 1553, 1430, 1586, 1431, 1588, 1642,
1275 1667, 1432, 1613, 1562, 1614, 1512, 459, 731, 1318, 1357,
80048418 1276 1446, 1567, 1419, 1420, 1498, 1579, 1551, 1547, 1358, 1558,
eca1bd08 1277 1449, 880, 1616, 1617, 1618, 1645, 476, 938, 767, 1044,
80048418
MM
1278 1232, 478, 479, 480, 763, 481, 148, 765, 772, 1234,
1279 1235, 550, 84, 85
861bb6c1
JL
1280};
1281
eca1bd08
UD
1282static const short yypact[] = { 194,
1283 226,-32768,-32768, 4463,-32768, 183, 116, 294, 408, 234,
1284 306,-32768,-32768, 1882,-32768, 265, 326, 438,-32768,-32768,
1285-32768, 696, 1525, 1435, 460,-32768, 495, 652,-32768, 3441,
1286 3441,-32768, 2306,-32768, 4463, 492,-32768,-32768, 564,-32768,
1287 555, 2763,-32768,-32768, 525, 1363, 616, 594, 605,-32768,
1288-32768,-32768,-32768, 297, 2914,-32768, 4988,-32768, 2683, 51,
1289-32768, 682,-32768,-32768, 846, 454,-32768, 657,-32768,-32768,
1290 733, 5484,-32768,-32768,-32768, 1337,-32768,-32768,-32768, 2432,
1291-32768,-32768, 246, 6972, 726,-32768,-32768, 11552,-32768, 11552,
1292-32768, 11552,-32768,-32768,-32768, 294, 408, 495, 762,-32768,
1293 764, 605,-32768, 1844,-32768, 246, 11643, 11643, 645,-32768,
1294-32768,-32768,-32768,-32768, 683, 789, 654, 722, 803, 797,
1295 801,-32768,-32768, 831,-32768, 1148, 294, 408,-32768, 495,
1296 762,-32768, 783, 1726, 805, 7478, 11552,-32768, 11552, 3209,
1297 4522,-32768,-32768, 4073, 599, 4522,-32768, 1621, 4563, 4563,
1298 2306, 757, 765,-32768, 297, 727, 779, 799,-32768,-32768,
1299 880,-32768, 809,-32768, 5210,-32768,-32768, 460, 3973, 817,
1300-32768,-32768,-32768, 525, 3692, 7691, 376, 860,-32768,-32768,
1301 837, 682, 936, 166, 200, 883,-32768,-32768,-32768, 8494,
1302 9958,-32768,-32768, 5230, 5230, 5743, 1337, 643,-32768,-32768,
1303 431,-32768,-32768, 4320,-32768,-32768,-32768,-32768,-32768, 2683,
1304 910,-32768, 682, 1337,-32768,-32768,-32768, 2808, 2683,-32768,
1305 682,-32768, 3692,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
1306-32768,-32768,-32768, 873,-32768, 605,-32768, 682, 1409, 1650,
1307-32768,-32768, 657,-32768,-32768,-32768,-32768, 1133, 246,-32768,
1308 425, 2123,-32768, 195,-32768,-32768,-32768,-32768,-32768, 5983,
1309-32768,-32768, 154,-32768, 870, 884,-32768,-32768,-32768,-32768,
1310 898,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
89ad74a3 1311-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
eca1bd08
UD
1312-32768,-32768,-32768, 856,-32768,-32768, 1133, 5484, 1334,-32768,
1313-32768, 887,-32768,-32768, 12281, 12372, 12463, 12463, 889,-32768,
1314-32768,-32768,-32768,-32768, 892, 922, 924, 929, 932, 689,
1315 762, 11734, 1813, 12463,-32768,-32768, 12463,-32768,-32768, 12463,
1316 8770,-32768, 12463, 784, 954,-32768, 12463,-32768, 11825,-32768,
1317 12603, 260, 865, 1657, 11916,-32768, 1012, 1035,-32768, 1315,
1318 5269, 5386,-32768, 422,-32768, 1014, 2041, 784, 784, 11552,
1319 7478, 659,-32768, 1813,-32768,-32768, 920, 977, 12510, 944,
1320 947, 952, 1220, 809,-32768,-32768,-32768,-32768,-32768,-32768,
1321-32768,-32768, 789, 654, 722, 1813, 803, 797, 991, 801,
1322-32768, 1021,-32768, 271, 294, 408,-32768,-32768,-32768,-32768,
1323-32768,-32768, 7221,-32768, 3692, 7984, 2351,-32768, 784, 523,
1324-32768,-32768, 1074,-32768, 994, 1005,-32768,-32768,-32768, 4522,
1325-32768,-32768, 4522,-32768, 986,-32768,-32768,-32768, 727, 727,
1326 727,-32768,-32768,-32768, 5983, 80, 1001, 1009,-32768,-32768,
1327-32768,-32768, 7478,-32768, 941, 984,-32768,-32768, 880,-32768,
1328 682,-32768,-32768,-32768,-32768, 237,-32768,-32768,-32768,-32768,
1329 9321, 11734,-32768,-32768, 1022,-32768, 977, 1029, 12510, 527,
1330 2651, 7691, 2651, 3268, 6704, 1030,-32768, 355, 4896, 1075,
1331 1079, 887,-32768, 1039, 439, 83, 6449, 7110,-32768,-32768,
1332 7110,-32768, 7256, 7256, 5743, 6574, 1038,-32768, 682, 3692,
1333-32768, 10049,-32768,-32768, 7362, 2808, 2683, 3692,-32768, 682,
1334-32768,-32768, 682, 2808,-32768, 1129,-32768, 11552, 873,-32768,
1335-32768, 1409,-32768, 2226, 3610, 1133, 682,-32768,-32768, 1086,
1336 1088, 1120, 1093,-32768,-32768,-32768,-32768, 879,-32768, 443,
1337 1069, 1071,-32768,-32768, 1133,-32768,-32768, 1077,-32768,-32768,
1338 11552, 11734, 8770,-32768, 8770,-32768,-32768,-32768, 11734, 11643,
1339 7493, 7493, 7493, 7493, 12581,-32768,-32768,-32768,-32768, 1070,
1340 12008, 12008, 8770, 1090, 148, 1106, 1135, 1110,-32768,-32768,
1341-32768,-32768, 11552,-32768, 8861, 8770,-32768, 11734, 11734, 9412,
1342 11734, 11734, 11734, 11734, 11734, 11734, 11734, 11734, 11734, 11734,
1343 11734, 11734, 11734, 11734, 11734, 11734, 11734, 11734, 11734,-32768,
1344 11734,-32768,-32768,-32768,-32768,-32768, 11734, 11734, 11734, 11643,
1345 2578, 254, 1028, 10140,-32768,-32768,-32768, 1184, 2123, 1233,
1346 453, 481, 502, 1714, 599,-32768, 2205, 2205, 5501, 10231,
1347 1150, 1196,-32768,-32768, 461, 10820, 663,-32768, 1243, 246,
1348-32768,-32768, 11734,-32768,-32768,-32768,-32768,-32768, 468, 726,
1349-32768,-32768, 784,-32768, 3692, 2581,-32768,-32768, 1185,-32768,
1350 1142, 1189,-32768, 659, 991,-32768, 9685, 9776,-32768,-32768,
1351-32768,-32768,-32768,-32768,-32768, 273,-32768, 1159, 1147, 809,
1352 271, 1202, 11552,-32768, 1197,-32768,-32768, 1726, 1533, 1224,
1353 517, 1200, 1203,-32768,-32768, 5098, 846,-32768, 1205,-32768,
1354-32768,-32768,-32768,-32768,-32768,-32768,-32768, 1163, 1165,-32768,
1355 1218,-32768,-32768, 525,-32768,-32768,-32768,-32768, 97, 485,
1356 1230, 1135,-32768,-32768,-32768,-32768, 8676, 12581,-32768, 1175,
1357-32768,-32768,-32768,-32768,-32768, 2063, 2063, 6139,-32768,-32768,
1358-32768,-32768, 4320,-32768, 10912,-32768,-32768,-32768,-32768,-32768,
1359-32768,-32768,-32768, 1079, 1222,-32768,-32768,-32768, 11188, 1196,
1360 543,-32768,-32768,-32768,-32768, 7110, 7110, 7537, 7537, 6574,
1361 1243,-32768,-32768, 7362,-32768, 1232,-32768,-32768, 1191, 83,
1362-32768, 2808,-32768,-32768, 682, 1235,-32768, 654, 722,-32768,
1363-32768, 801, 1246,-32768,-32768, 164,-32768,-32768, 1969,-32768,
1364 1050, 1960,-32768, 11734, 4782,-32768, 4782, 274, 274, 619,
1365 552, 1285, 6886, 75, 3783,-32768, 277, 274,-32768, 83,
1366 6841, 11552, 11552,-32768, 11552, 83, 6841,-32768,-32768,-32768,
1367-32768,-32768,-32768, 111, 111, 111, 784, 1206, 1209, 1225,
1368 12536, 1227, 1242, 1252, 5562, 1254, 1256, 1265,-32768, 1245,
1369-32768,-32768, 1247,-32768,-32768, 1308, 707, 720, 43, 168,
1370 11734, 1314,-32768, 1320, 1273, 12581, 12581,-32768,-32768, 1319,
1371 7563, 6730, 8251, 8294, 8315, 3552, 2495, 3386, 3386, 3386,
1372 1908, 1908, 1900, 1900, 963, 963, 963,-32768,-32768, 1277,
1373 1280, 1282, 1286, 1293, 1295, 7493, 254,-32768, 9321, 11734,
1374-32768,-32768,-32768, 11734,-32768,-32768, 1310, 12463, 1296, 1327,
1375 1343, 1372,-32768, 11734,-32768, 11734,-32768, 11734, 2617, 3105,
1376-32768,-32768, 3105,-32768, 150, 2617, 1313, 1317,-32768, 1311,
1377 7493, 83,-32768, 83, 4381,-32768, 6841, 10322, 11004, 11004,
1378 4672, 1323, 11825, 1325, 1833, 4543, 2041, 1255, 1329,-32768,
1379-32768,-32768,-32768,-32768,-32768,-32768, 11734,-32768, 1813,-32768,
1380 1326,-32768, 12581,-32768, 12581, 1220, 1333, 12099,-32768, 1341,
1381 1390,-32768, 784,-32768,-32768,-32768,-32768,-32768, 1108, 7221,
1382-32768, 7493, 11552,-32768, 1097, 11734,-32768,-32768,-32768,-32768,
1383-32768,-32768,-32768,-32768,-32768, 525,-32768,-32768, 789,-32768,
1384 803, 797, 11734, 1396,-32768, 557, 578, 613, 1135,-32768,
1385 69,-32768, 22,-32768, 3084, 2180, 2180, 2336, 2336, 6139,
1386 3497, 179, 4320,-32768, 3014, 11096, 11096, 8210, 323, 1352,
1387 349,-32768, 9321, 8955,-32768, 7493, 1949, 1949, 2186,-32768,
1388-32768,-32768, 1398,-32768,-32768,-32768,-32768,-32768,-32768, 2298,
1389-32768, 6841, 12581,-32768, 1905,-32768, 682, 682,-32768,-32768,
1390-32768,-32768,-32768, 6841, 158, 767, 11734, 1129,-32768, 1408,
1391-32768,-32768,-32768, 467, 571, 2432, 599, 836, 274, 1411,
1392-32768, 935, 1402, 682, 4180,-32768,-32768,-32768, 682,-32768,
1393 1361, 784, 784, 784,-32768, 1365, 83, 6841, 83, 6841,
1394-32768,-32768,-32768,-32768,-32768,-32768,-32768, 7493,-32768,-32768,
1395 1382, 1384, 1392, 1395, 1163,-32768, 7979, 9321, 9048, 1387,
1396-32768, 11734,-32768,-32768,-32768,-32768,-32768, 628, 1389,-32768,
1397-32768, 1393, 191, 919, 919, 1400, 919, 11734,-32768, 12463,
1398 1492, 11552,-32768, 1401, 1406, 1407,-32768,-32768,-32768,-32768,
1399-32768,-32768,-32768,-32768,-32768, 83, 1410,-32768, 1412, 1833,
1400-32768,-32768, 3993, 3993, 6266, 4874,-32768,-32768,-32768,-32768,
1401-32768, 12581,-32768,-32768,-32768,-32768, 284, 1414,-32768,-32768,
1402-32768,-32768,-32768,-32768,-32768, 12603,-32768,-32768,-32768, 1423,
1403-32768, 448,-32768, 11734,-32768, 11734,-32768, 11734,-32768, 1813,
1404-32768,-32768, 8401, 1480,-32768, 9139,-32768, 3497, 2180, 2180,
1405 4052, 4052, 6403,-32768, 373, 3014, 1427, 1749,-32768,-32768,
1406-32768,-32768,-32768,-32768, 316, 2732, 2732, 679, 679, 9321,
1407-32768,-32768, 2226,-32768,-32768,-32768, 83, 1432,-32768, 1452,
1408 1452, 83, 1433, 11734, 11734, 7733, 682, 5632, 682, 682,
1409 1318, 682, 7672,-32768,-32768, 4342, 1452,-32768,-32768, 1464,
1410-32768,-32768,-32768, 1442,-32768, 1443, 1444, 11734, 11734, 11734,
1411 11734, 9321,-32768, 1469,-32768,-32768, 12581, 11734,-32768, 628,
1412-32768,-32768,-32768,-32768,-32768,-32768, 1446,-32768, 1506, 784,
1413-32768,-32768,-32768, 83,-32768,-32768,-32768,-32768,-32768, 11734,
1414-32768,-32768,-32768,-32768, 1447, 1451, 1456, 1476,-32768, 1067,
1415 337, 1497, 900, 940,-32768,-32768,-32768,-32768,-32768, 11734,
1416 1513, 1517, 1518, 11279, 403, 1813, 735, 365,-32768,-32768,
1417 11370, 1572,-32768,-32768,-32768, 1528,-32768, 3360, 7301, 7848,
1418 5855,-32768,-32768, 1580,-32768,-32768,-32768, 10431,-32768,-32768,
1419 4775, 4775, 1243, 6030, 426, 7493,-32768,-32768, 9321,-32768,
1420-32768,-32768,-32768,-32768,-32768,-32768, 7733, 7733,-32768, 1452,
1421 366, 1045, 11734,-32768,-32768,-32768, 1129, 1129, 1452, 1452,
1422 879, 1452,-32768,-32768,-32768, 83, 83,-32768,-32768,-32768,
1423 1491, 1493, 1496, 1501,-32768, 9321, 1500,-32768,-32768,-32768,
1424-32768,-32768, 83, 1505,-32768,-32768,-32768,-32768, 1476,-32768,
1425 1813,-32768,-32768,-32768,-32768,-32768,-32768, 625, 625, 1135,
1426 1522, 1523, 3830,-32768,-32768,-32768,-32768, 1556, 11734, 1561,
1427 1558, 1575, 2088, 2097,-32768, 1135,-32768,-32768, 1539,-32768,
1428-32768, 1129, 1140,-32768, 1160, 1129, 11461, 1170, 339,-32768,
1429-32768,-32768,-32768,-32768,-32768, 6208, 6208, 7916, 2792,-32768,
1430-32768, 83, 83,-32768,-32768,-32768, 11734, 11734, 7733, 682,
1431 682,-32768,-32768,-32768, 8101,-32768,-32768, 83, 83,-32768,
1432-32768,-32768,-32768,-32768,-32768,-32768,-32768, 1542,-32768,-32768,
1433-32768, 11643,-32768,-32768,-32768, 1619, 10727, 8585, 11643, 11734,
1434-32768, 10539,-32768, 1576,-32768,-32768, 1583,-32768, 1575, 2088,
1435-32768,-32768, 880,-32768,-32768, 12190, 12190, 9230,-32768,-32768,
1436 1135, 2792,-32768,-32768, 7733, 7733,-32768, 1452, 1452,-32768,
1437 9867,-32768,-32768,-32768,-32768, 7417,-32768,-32768, 1532, 601,
1438 3692, 1135, 10633,-32768,-32768, 69,-32768,-32768, 1585, 1536,
1439 12559, 10539,-32768,-32768,-32768,-32768, 1476, 89,-32768,-32768,
1440-32768,-32768,-32768, 1534, 8279, 1557, 1552, 1564, 1135,-32768,
1441 1129,-32768,-32768,-32768,-32768, 639,-32768, 9503,-32768,-32768,
1442-32768,-32768, 1476, 1653, 1653, 1608,-32768,-32768,-32768, 616,
1443 525,-32768,-32768,-32768, 682, 69,-32768, 11734, 1620,-32768,
1444 1625,-32768, 1135, 10539, 1589, 159, 1631,-32768, 92,-32768,
1445 203,-32768, 1628,-32768, 1587,-32768,-32768,-32768,-32768, 11734,
1446 1685, 1636, 1653, 1685, 1653, 1638,-32768, 237,-32768,-32768,
1447-32768, 9594, 1602,-32768, 317,-32768,-32768, 351, 632,-32768,
1448-32768, 9321, 1603,-32768, 1702, 1661, 1663, 1685, 1664,-32768,
1449-32768,-32768,-32768,-32768, 390,-32768, 10633, 1666,-32768,-32768,
1450 1733, 1734,-32768
861bb6c1
JL
1451};
1452
1453static const short yypgoto[] = {-32768,
eca1bd08
UD
1454 1736,-32768, -322, 1567, -383, 95, 0, 1737,-32768, 1705,
1455-32768,-32768, 211,-32768, 378,-32768, 419,-32768, 298, 1055,
1456 30, 6,-32768,-32768, -658,-32768,-32768, 761, 32, 1578,
1457 1321, 1588, -713, 157, -163, -5, -49,-32768,-32768,-32768,
1458-32768,-32768, 937,-32768,-32768,-32768,-32768,-32768,-32768, 563,
1459 1304,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
1460-32768,-32768, 1672, -604, 7140, 1530, -21, -607, -236, -23,
1461 1634, -558,-32768, 1168,-32768, 338,-32768, -1434,-32768, -1408,
1462 103,-32768, 1405, 867, -279,-32768, -878, 6655, -291, 1948,
1463 4982, 1474, -335, -101, -69, 1103, -116, -65, 174,-32768,
1464-32768,-32768, -329,-32768, -158,-32768,-32768, -1271, -41, -328,
1465 6128, 210, 1113, -153, 121, 236, -201, -4, -141, -174,
1466 -156, 1, 107, 291,-32768, -227,-32768,-32768,-32768,-32768,
1467-32768, 170, 1424, 76,-32768, 802,-32768,-32768, -1074, -437,
1468 1042,-32768,-32768,-32768,-32768,-32768, -29,-32768,-32768,-32768,
1469-32768,-32768,-32768, 1109, -359,-32768,-32768,-32768,-32768,-32768,
1470-32768,-32768, 1544,-32768, 542, 730,-32768,-32768,-32768, 699,
1471 -744,-32768,-32768,-32768,-32768,-32768,-32768, 976,-32768, 537,
1472 1127,-32768, 833, 1186, 2184, 59, 1604, 2729, 974,-32768,
1473 -512,-32768, 36, 2748, 94, -143, 791, -58, 5558, 1463,
1474-32768, 6431, 2898, 230, -18, -124,-32768, 1689, -79,-32768,
1475 5621, 4135, -247,-32768, 2259, 37,-32768,-32768, 471,-32768,
1476-32768, 609, 187, -371,-32768,-32768,-32768,-32768, -1426,-32768,
1477 -1230, -1412,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
1478-32768,-32768,-32768,-32768,-32768,-32768, 212,-32768,-32768,-32768,
1479-32768,-32768, 267, -1357,-32768,-32768, -33,-32768,-32768,-32768,
1480-32768, -1425, -1415,-32768, 199, -1541, -652, -129, 1076,-32768,
1481-32768,-32768,-32768, -382,-32768, -369, -188,-32768, 862, 469,
1482-32768, 2,-32768, -233
861bb6c1
JL
1483};
1484
1485
eca1bd08 1486#define YYLAST 12688
85c6cbaf
ML
1487
1488
1489static const short yytable[] = { 59,
eca1bd08
UD
1490 445, 393, 436, 36, 122, 421, 424, 209, 507, 42,
1491 444, 807, 178, 197, 257, 557, 558, 1019, 533, 446,
1492 708, 656, 647, 739, 865, 554, 556, 657, 1140, 222,
1493 59, 398, 567, 709, 36, 568, 174, 59, 569, 433,
1494 42, 579, 177, 707, 392, 584, 526, 42, 994, 103,
1495 299, 689, 210, 625, 961, 524, 506, 724, 254, 587,
1496 477, 1499, 72, 399, 400, 514, 358, 248, 359, 1447,
1497 1064, 170, 1066, 171, 1560, 401, 512, 515, 257, 297,
1498 1096, 1216, 1559, 351, 735, 351, 404, 351, 141, 146,
1499 626, 536, 1648, 72, 1555, 545, 708, 76, 35, 626,
1500 72, 1210, 351, 351, 1569, -144, 1001, 626, 1000, 764,
1501 223, 224, 1093, 409, 127, 128, 1665, 137, 261, 536,
1502 1462, 661, 662, 660, 57, 1582, 209, 1465, 76, 35,
1503 1217, 407, 351, 197, 351, 76, 169, 225, 257, 178,
1504 1585, 365, 298, 1594, 771, 647, 1634, 1587, 202, 545,
1505 214, 1595, 182, 1612, 1635, 57, 770, 8, 538, 441,
1506 59, 743, 176, 174, 59, 26, 453, 130, 131, 177,
1507 1058, 210, 714, 715, 42, 1373, 1374, 1211, 1101, 1619,
1508 222, 546, 250, 1094, 1106, 474, 1628, 721, 222, 222,
1509 88, 547, 1395, -1, 72, 610, 1596, 1624, 170, 1636,
1510 171, 1059, 364, 1637, 1007, 863, 155, 420, 423, 744,
1511 130, 131, 745, 55, 38, 225, 1653, 1017, 222, 1649,
1512 1254, 1631, 138, 72, -356, -2, -597, 72, 454, 408,
1513 -145, 225, 88, 411, 539, 1499, 1557, 732, 636, 58,
1514 611, 540, 534, 86, 55, 38, 631, 460, 475, 8,
1515 9, 175, 488, 491, 1585, -295, 406, 864, 76, 1289,
1516 455, -356, 76, 169, 461, 454, 1632, 222, 202, 214,
1517 58, -597, -597, 301, 395, 396, 10, 58, 632, 567,
1518 568, 1563, 794, 769, 261, 57, -597, 535, 225, 176,
1519 729, 87, 462, 248, 1167, 733, 225, 455, 1292, 829,
1520 15, 908, 130, 131, -415, 1476, 692, 610, 93, 259,
1521 623, 664, 21, 225, 1482, 1483, 202, 1484, 909, 296,
1522 510, 222, 155, 155, 155, 26, 351, 27, 321, 657,
1523 1192, 1592, 976, 259, -415, 697, 663, 1097, -415, 297,
1524 989, 1005, 1006, 1310, 189, 405, 910, 248, 89, 421,
1525 424, 450, 611, 792, 94, 351, 666, 107, 1178, 32,
1526 1020, 1181, 259, 711, 512, 515, 758, 980, 90, 155,
1527 -302, 58, 512, 259, 55, 1366, 1655, 222, 175, 433,
1528 977, 39, -415, 1629, 515, 1098, 644, 648, 651, 190,
1529 191, 1311, 261, 1197, 1198, 533, -622, 1423, 706, 1423,
1530 58, 210, 298, 515, 58, 95, 110, 111, 700, 1248,
1531 1655, 1408, 39, 178, 759, -302, -302, 760, 108, 72,
1532 -596, 1253, 40, 1367, 1656, 473, 962, 1445, 1477, 749,
1533 -295, 754, 756, 259, 1195, 223, 447, 726, 59, 137,
1534 88, -622, -622, 177, 222, 1424, 1242, 1530, 1008, 1655,
1535 1009, 798, 799, 40, 667, 1274, -622, 1276, 1657, 112,
1536 113, 475, 91, 1572, 1573, -596, -596, 210, 259, 652,
1537 248, 1141, 528, -304, 706, 818, 222, 222, 189, 91,
1538 -596, 406, 92, 1439, 222, 1008, 636, 1009, 798, 799,
1539 840, -365, 259, 15, 796, 1010, 222, 1668, 202, 92,
1540 923, 72, 26, 821, 1011, 1012, 310, 751, 946, 644,
1541 648, 651, 241, 351, 653, 222, 242, 529, -304, -304,
1542 59, 1096, 26, 190, 502, -365, 225, 847, 925, -365,
1543 109, 769, 1010, -298, 135, 841, 76, 475, 743, 26,
1544 1013, 1011, 1012, -128, -128, 924, 351, 807, 351, 927,
1545 351, 776, 777, 947, 948, 351, 855, 855, 855, 855,
1546 1004, -365, 225, 176, 202, 752, 202, 202, 351, 137,
1547 665, 225, 762, 926, 1308, 1309, 990, 1013, 351, 296,
1548 411, 351, 583, 72, 161, 259, 744, 623, 225, 745,
1549 1045, -829, 991, 202, 928, -366, 58, 15, 580, 1073,
1550 581, 202, 127, 128, 1203, 1229, 1231, 708, 216, 217,
1551 1114, 1055, 1056, 163, 14, 351, 297, 1060, 828, 815,
1552 709, 656, 795, 964, 162, 1205, 1149, 657, 985, -366,
1553 707, 179, 697, -366, 706, 1046, 222, 20, 473, 986,
1554 183, 474, 259, 1069, 1074, 823, 23, 1209, 636, 1204,
1555 512, 164, 175, 545, 187, 130, 131, 567, 568, 188,
1556 1207, 95, 110, 111, 756, -366, 155, 155, 155, 983,
1557 1206, -576, 1501, 587, -576, 908, 222, 1070, 58, 298,
1558 122, 1071, 8, 9, 393, 261, 1607, 257, 351, 1017,
1559 1283, 1285, 909, 769, 1658, 930, 933, 475, 95, 110,
1560 111, 477, 500, 501, 475, 1208, 138, 477, 378, 18,
1561 943, 1018, 18, 1072, 473, 112, 113, 1502, 668, 244,
1562 910, 1288, -576, 660, -576, -576, 139, -576, 90, 301,
1563 807, 1608, 10, 26, 822, 130, 131, 373, -576, 1659,
1564 -576, 375, 648, 706, 567, 568, 1191, 376, -184, 1236,
1565 474, 259, 112, 113, 114, -576, -576, 18, 202, 1237,
1566 58, 89, 222, 137, -184, 818, -184, 818, 21, -142,
1567 -576, 1238, 1078, 1088, 91, 818, 379, 259, 1285, 129,
1568 1079, 90, -143, 427, 428, 301, 395, 396, 10, 26,
1569 787, 246, 1442, 821, 92, 821, 92, 429, 793, 202,
1570 300, 821, 1368, 821, 1026, 1027, 475, 430, 1102, 1103,
1571 59, 1104, 59, 475, 770, 32, 138, 477, 210, 431,
1572 59, 89, 363, 158, 21, 222, 706, 351, 351, 1255,
1573 351, 252, 706, 383, 384, 385, 1047, 1048, 433, 27,
1574 321, 90, 1199, 377, 1405, 1111, 1112, 1113, 95, 96,
1575 97, 381, 226, 227, 228, 382, 296, 380, 1298, 580,
1576 -120, 581, 15, 259, -295, 1269, 1270, 1271, 1243, 1244,
1577 1245, 32, 426, 72, 473, 72, 18, 137, 259, 386,
1578 402, 473, 229, 72, 421, 424, 434, 387, 388, 475,
1579 304, 648, 421, 424, -120, 475, 1293, 1294, -120, 1296,
1580 26, 855, 98, 99, 230, 1143, -617, 1638, 828, 815,
1581 828, 815, 612, 164, 433, 1085, 1092, -7, 828, 815,
1582 448, 155, 127, 128, 1067, 1068, 838, 536, 155, 449,
1583 -120, 1471, 477, 91, 1099, 823, 855, 823, 452, 158,
1584 158, 158, 706, 464, 477, 823, 474, 518, 231, 232,
1585 233, 613, 614, 92, 89, 615, 616, 617, 618, -118,
1586 543, 15, 1426, 541, 1053, 1157, 544, 257, 1494, 508,
1587 509, 839, 1157, 26, 90, 130, 131, 542, 477, 552,
1588 477, 559, 259, 473, 560, 706, 158, 855, 351, 912,
1589 473, 1157, 261, -118, 91, 700, 561, -118, 562, 913,
1590 500, 727, 1427, 563, 225, 475, 564, 930, 933, 475,
1591 259, 225, 914, 583, 92, 1078, 301, 8, 9, 10,
1592 257, 770, 626, 1079, 822, 706, 1065, 676, 200, -118,
1593 225, 127, 128, 474, 822, 627, 677, 301, 395, 396,
1594 10, 855, 628, 508, 728, 818, 608, 609, 475, 579,
1595 58, 679, 58, 433, 680, 21, 468, 706, 1505, 681,
1596 58, 1157, 252, 1411, 254, 693, 473, 1157, 90, 706,
1597 27, 321, 473, 821, 1522, 694, 21, 127, 128, 92,
1598 127, 128, 26, 629, 130, 131, 1219, 1220, 475, 26,
1599 59, 27, 321, 718, 1219, 1220, 475, 1061, 912, 89,
1600 225, 433, 32, 706, 91, 706, 225, 1478, 913, -6,
1601 95, 110, 111, 855, 226, 227, 228, 722, 411, 90,
1602 475, 914, 364, 630, 92, 364, 1421, 1422, 1300, 741,
1603 130, 131, 475, 130, 131, 153, 742, 757, 18, -828,
1604 216, 217, 1062, 766, 229, 783, 14, 351, 200, 768,
1605 116, 117, 118, 72, 539, 15, -52, 253, 1085, 1505,
1606 832, -52, 833, 708, 112, 113, 475, 835, 475, 20,
1607 706, 518, -52, 1453, 834, 1458, 1578, 859, 23, 842,
1608 1505, 843, 473, 1018, 1257, 259, 473, 259, 828, 815,
1609 1259, 1260, 1455, 733, 1257, 1262, 200, 861, 1260, 500,
1610 1524, 155, 155, 155, 119, 120, 1157, 1604, 1350, 155,
1611 155, 155, 1342, 862, 1660, 823, 818, 864, 706, 508,
1612 1525, 770, 95, 110, 111, 473, 682, 683, 684, 500,
1613 1529, 930, 933, 475, 567, 568, 1250, 1251, 920, 540,
1614 922, 1505, 941, 943, 821, 225, 8, 9, 969, 967,
1615 968, 978, 422, 425, 1157, 979, 982, 984, 8, 9,
1616 20, 59, 259, 1265, 992, 473, 735, 993, 1267, 996,
1617 -298, 72, 1002, 473, 367, 371, 112, 113, 1003, 1361,
1618 1362, 475, 1024, 158, 158, 158, 1043, 1075, 1076, 9,
1619 10, 364, 454, 225, 1047, 1048, 1050, 473, 153, 130,
1620 131, 1051, 471, 364, 822, 1057, 1452, 1341, 1452, 473,
1621 1054, 130, 131, 1115, 225, 259, 1116, 101, 127, 128,
1622 222, 127, 1391, 253, 72, 115, 21, 1121, 740, 1122,
1623 58, 1123, 1117, 1349, 1119, 539, 1350, 127, 128, 26,
1624 1124, 27, 28, 473, 210, 473, 1350, 1077, 545, 1120,
1625 1342, 1388, 1125, 1350, 1126, 194, 1388, 1342, 484, 828,
1626 815, 855, 636, 15, 1568, 195, 364, -415, 234, 26,
1627 -141, 130, 131, 32, 130, 131, 1128, 196, 200, 1129,
1628 1131, 1132, 421, 424, 1133, 637, 823, 1134, 26, 15,
1629 130, 131, 1135, -415, 1136, 638, -415, -415, 539, 72,
1630 1137, -415, 1138, 1148, 546, 259, 1150, 639, 640, 72,
1631 473, 95, 96, 97, 547, 1151, 72, 1152, 848, 1153,
1632 1160, 1162, -415, -415, 1161, 1379, 1380, 389, 1389, 1390,
1633 1171, 1392, 1172, 576, 1184, 1341, 1177, 1622, 127, 128,
1634 1186, 202, 1456, 202, 200, 1341, 200, 200, 58, 1189,
1635 1190, 417, 1341, 140, 140, 1202, 156, 364, 473, 1228,
1636 773, 1349, 1241, 706, 1264, 98, 99, 1258, 1268, 773,
1637 1263, 1349, 1272, 200, 1278, 822, 1279, 900, 1349, 129,
1638 213, 200, 221, 901, 1280, 903, 904, 1281, 238, 26,
1639 259, 130, 131, 1480, 1481, 1286, 1290, 1550, 574, 1299,
1640 1291, 58, 1350, 1350, 1550, 1157, 1342, 1350, 1301, 1581,
1641 1295, 1342, 1210, 1302, 1303, 471, 461, 1306, -659, 959,
1642 222, 1312, 1307, 351, 1361, 1362, 475, 116, 117, 118,
1643 1313, 1406, 422, 719, 1365, 383, 384, 385, 158, 1372,
1644 1376, 706, 519, 521, 225, 158, 1474, 1475, 1350, 1398,
1645 1399, 1400, 1342, 1410, 1415, 531, 1409, 1350, 1416, 1425,
1646 298, 1342, 510, 1417, 140, 72, 72, 298, 1157, 140,
1647 72, 1418, 156, 156, 156, 1434, 58, 1435, 1436, 26,
1648 1448, 119, 120, 1550, 776, 777, 58, 26, 1450, 387,
1649 388, 471, 259, 58, 467, 1463, 422, 425, 1490, 213,
1650 1491, 1341, 1341, 1492, 475, 451, 1341, 225, 1493, 1350,
1651 1495, 72, 1497, 1342, 1508, 1509, 1513, 487, 487, 496,
1652 72, 1515, 376, 95, 415, 416, 566, 1349, 1349, 1516,
1653 155, 1523, 1349, 221, 1546, 1554, 1564, 1565, 200, 1580,
1654 1597, 513, 221, 1590, 202, 1589, 298, 1341, 1537, 1538,
1655 1539, 1052, 95, 96, 97, 576, 1341, 576, 1599, 1602,
1656 8, 9, 1350, 1615, 12, 13, 1342, 675, 1620, 789,
1657 14, 1603, 72, 1349, 422, 860, 685, 98, 113, 200,
1658 1626, 1630, 1349, 140, 16, 1627, 17, 1605, 576, 675,
1659 1633, 1100, 1640, 20, 1641, 1644, 1646, 1105, 1650, 155,
1660 155, 155, 23, 473, 1570, 1571, 98, 99, 1341, 1654,
1661 1661, 26, 1662, 130, 131, 619, 301, 127, 128, 10,
1662 574, 1663, 574, 1664, 1666, 72, 1670, 852, 301, 395,
1663 396, 10, 1672, 1673, 1349, 1, 443, 296, 5, 160,
1664 574, 1520, 58, 58, 296, 981, 442, 58, 954, 620,
1665 1193, 471, 440, 574, 156, 21, 1621, 879, 471, 1089,
1666 -304, 1341, 252, 725, 1314, 361, 1504, 21, 520, 1669,
1667 27, 321, 410, 551, 1623, -304, 1142, 1185, 1023, -304,
1668 970, 473, 27, 321, 1370, 902, 523, 1349, 58, 1246,
1669 1154, 919, 1155, 1266, 1156, 1084, -304, 58, 1091, 1393,
1670 971, 1183, 32, 1163, 503, 1164, 907, 940, -304, -304,
1671 633, -304, 391, -304, 32, 95, 110, 111, 158, 158,
1672 158, 1461, 1359, 296, 1651, 797, 158, 158, 158, 213,
1673 221, 1647, 1639, 1593, 1470, 301, 127, 128, 10, 1042,
1674 0, -304, -304, 140, 1188, 0, 140, 8, 9, 58,
1675 153, 0, 156, 156, 156, 0, -304, 1040, 140, 0,
1676 471, 0, 0, 18, 0, 0, 467, 471, 0, 112,
1677 113, 954, 0, 0, 21, 0, 0, 0, 0, 1200,
1678 636, 422, 719, 0, 95, 96, 97, 26, 872, 27,
1679 321, 0, 364, 0, 0, 213, 0, 221, 0, 0,
1680 130, 131, 58, 1173, 0, 0, 0, 1075, 1076, 9,
1681 10, 487, 0, 1174, 487, 0, 496, 496, 496, 0,
1682 0, 32, 451, 0, 0, 1175, 640, 0, 487, 513,
1683 221, 0, 921, 451, 0, 0, 26, 513, 98, 99,
1684 100, 0, 0, 471, 0, 0, 21, 0, 0, 471,
1685 451, 0, 8, 9, 0, 0, 467, 247, 0, 26,
1686 0, 27, 28, 127, 128, 1249, 0, 1077, 1273, 0,
1687 1275, 116, 798, 799, 0, 194, 156, 0, 156, 18,
1688 605, 606, 607, 608, 609, 195, 603, 604, 605, 606,
1689 607, 608, 609, 32, 156, 156, 156, 196, 773, 0,
1690 0, 0, 988, 26, 773, 130, 131, 0, 0, 156,
1691 995, 0, 0, 0, 26, 467, 130, 131, 0, 1236,
1692 0, 467, 0, 467, 467, 119, 120, 1305, 0, 1237,
1693 0, 0, 0, 0, 0, 341, 0, 341, 1084, 341,
1694 872, 1238, 0, 654, 8, 9, 10, 0, 0, 0,
1695 467, 0, 422, 860, 0, 0, 0, 467, 0, 471,
1696 929, 929, 936, 471, 0, 7, 8, 9, 10, 955,
1697 1315, 13, 1316, 0, 1317, 0, 0, 0, 0, 310,
1698 655, 1146, 21, 0, 341, 0, 341, 0, 0, 221,
1699 95, 110, 111, 18, 0, 26, 0, 130, 131, 95,
1700 110, 111, 471, 0, 21, 0, 0, 0, 1371, 0,
1701 636, 0, 0, 1375, 0, 1169, 0, 26, 574, 27,
1702 28, 0, 0, 0, 0, 95, 110, 111, 530, 221,
1703 238, 422, 425, 746, 0, 0, 0, 469, 0, 422,
1704 1227, 0, 471, 747, 112, 1517, 0, 0, 0, 0,
1705 471, 32, 0, 112, 1519, 748, 640, 0, 0, 467,
1706 0, 0, 0, 0, 21, 1412, 0, 0, 0, 1025,
1707 1025, 1031, 0, 467, 471, 0, 1414, 0, 1031, 112,
1708 113, 0, 7, 8, 9, 10, 471, 0, 247, 8,
1709 9, 773, 156, 0, 536, 0, 0, 0, 0, 487,
1710 487, 496, 496, 496, 0, 574, 0, 487, 127, 128,
1711 18, 0, 773, 13, 0, 513, 18, 0, 451, 0,
1712 471, 21, 471, 0, 0, 0, 0, 636, 116, 798,
1713 799, 1387, 800, 0, 26, 18, 27, 28, 0, 0,
1714 26, 0, 130, 131, 0, 0, 213, 158, 0, 0,
1715 746, 0, 636, 0, 0, 0, 1236, 1486, 1487, 26,
1716 747, 130, 131, 801, 0, 260, 1237, 0, 32, 565,
1717 0, 0, 748, 640, 1496, 637, 422, 719, 1238, 685,
1718 26, 0, 119, 120, 0, 638, 0, 471, 0, 0,
1719 0, 0, 988, 0, 0, 0, 0, 639, 640, 0,
1720 116, 798, 799, 0, 0, 0, 0, 341, 7, 127,
1721 128, 10, 0, 0, 467, 1297, 158, 158, 158, 0,
1722 0, 200, 0, 200, 422, 719, 0, 0, 467, 0,
1723 467, 0, 467, 1533, 1534, 471, 18, 0, 7, 8,
1724 9, 10, 435, 0, 13, 0, 0, 21, 0, 1544,
1725 1545, 0, 26, 929, 119, 120, 929, 215, 216, 217,
1726 26, 0, 27, 28, 14, 0, 18, 0, 929, 0,
1727 0, 0, 1170, 1170, 955, 486, 149, 21, 0, 0,
1728 0, 18, 467, 636, 0, 0, 150, 20, 505, 0,
1729 26, 0, 27, 28, 32, 0, 23, 0, 151, 0,
1730 0, 0, 0, 0, 0, 0, 1028, 0, 738, 469,
1731 0, 712, 238, 0, 0, 0, 1029, 467, 0, 0,
1732 0, 0, 0, 0, 32, 0, 0, 0, 1030, 640,
1733 0, 0, 1284, 0, 7, 8, 251, 10, 0, 0,
1734 0, 0, 773, 0, 0, 1401, 1402, 1403, 1404, 1025,
1735 1025, 1218, 1218, 1031, 0, 1407, 0, 0, 1025, 1218,
1736 1218, 1031, 0, 0, 0, 341, 0, 0, 0, 0,
1737 1239, 1239, 1239, 21, 0, 0, 0, 0, 0, 0,
1738 252, 0, 0, 0, 0, 0, 0, 0, 27, 28,
1739 451, 451, 0, 0, 0, 0, 0, 0, 341, 469,
1740 0, 1438, 0, 0, 0, 773, 851, 0, 0, 0,
1741 0, 0, 253, 1319, 0, 0, 0, 451, 0, 1284,
1742 32, 0, 451, 0, 200, 0, 0, 0, 0, 0,
1743 341, 0, 738, 0, 0, 876, 877, 0, 881, 882,
1744 883, 884, 885, 886, 887, 888, 889, 890, 891, 892,
1745 893, 894, 895, 896, 897, 898, 899, 0, 469, 1040,
1746 0, 0, 0, 0, 469, 0, 469, 469, 598, 599,
80048418 1747 600, 601, 602, 603, 604, 605, 606, 607, 608, 609,
eca1bd08
UD
1748 471, 8, 9, 0, 0, 12, 13, 215, 216, 217,
1749 0, 14, 0, 469, 14, 0, 1170, 1170, 955, 0,
1750 469, 0, 0, 0, 0, 16, 1514, 17, 467, 0,
1751 467, 18, 467, 0, 20, 0, 0, 20, 0, 0,
1752 127, 128, 0, 23, 973, 975, 23, 0, 0, 422,
1753 1227, 0, 26, 0, 130, 131, 0, 0, 1440, 1441,
1754 341, 965, 1025, 1025, 1218, 1218, 1031, 18, 0, 1025,
1755 0, 0, 0, 7, 8, 9, 10, 0, 471, 1239,
1756 1239, 1239, 0, 0, 636, 0, 0, 0, 0, 1548,
1757 906, 26, 0, 130, 131, 879, 1548, 0, 0, 451,
1758 451, 784, 451, 451, 738, 451, 790, 637, 0, 215,
1759 216, 217, 21, 0, 0, 574, 14, 638, 636, 0,
1760 0, 0, 469, 0, 0, 26, 0, 27, 28, 639,
1761 640, 830, 0, 18, 467, 0, 469, 836, 0, 20,
1762 0, 746, 0, 0, 1500, 0, 0, 0, 23, 844,
1763 845, 747, 846, 0, 0, 8, 9, 0, 0, 32,
1764 13, 0, 0, 748, 640, 0, 1518, 1521, 0, 0,
1765 0, 0, 0, 0, 0, 1548, 0, 0, 0, 0,
1766 0, 1063, 18, 166, 0, 7, 8, 9, 10, 167,
1767 12, 13, 213, 221, 0, 1625, 14, 0, 147, 341,
1768 341, 0, 341, 0, 1469, 1469, 26, 1469, 130, 131,
1769 16, 0, 17, 18, 19, 8, 9, 1643, 0, 20,
1770 451, 451, 1236, 0, 21, 0, 0, 0, 23, 879,
1771 0, 168, 1237, 0, 511, 216, 217, 26, 1127, 27,
1772 28, 14, 18, 1566, 1238, 944, 945, 0, 0, 0,
1773 944, 0, 0, 30, 0, 0, 0, 0, 18, 636,
1774 0, 0, 0, 31, 20, 0, 26, 0, 130, 131,
1775 0, 32, 0, 23, 0, 33, 738, 469, 0, 34,
1776 0, 467, 1466, 0, 0, 0, 0, 0, 0, 0,
1777 0, 469, 1467, 469, 0, 469, 0, 0, 0, 0,
1778 496, 0, 0, 0, 1468, 640, 0, 0, 412, 1469,
1779 1469, 1532, 0, 414, 0, 931, 934, 0, 0, 0,
1780 0, 80, 451, 451, 451, 0, 0, 0, 0, 0,
1781 0, 104, 0, 0, 1182, 0, 7, 8, 9, 10,
1782 0, 133, 489, 492, 0, 469, 0, 144, 144, 0,
1783 144, 0, 80, 1035, 0, 0, 0, 0, 0, 80,
1784 341, 0, 147, 1196, 0, 0, 0, 0, 0, 496,
1785 496, 496, 204, 0, 80, 21, 0, 0, 451, 451,
1786 469, 0, 239, 0, 0, 1049, 0, 0, 26, 104,
1787 27, 28, 0, 0, 193, 0, 0, 0, 0, 0,
1788 263, 104, 0, 0, 194, 0, 0, 0, 0, 0,
1789 738, 738, 0, 0, 195, 0, 0, 0, 0, 0,
1790 0, 0, 32, 104, 931, 934, 196, 537, 0, 0,
1791 0, 0, 0, 0, 0, 0, 7, 8, 9, 10,
1792 0, 1107, 536, 1109, 1256, 0, 0, 0, 451, 0,
1793 0, 133, 0, 80, 0, 0, 0, 144, 144, 0,
1794 0, 0, 413, 144, 18, 0, 144, 144, 144, 0,
1795 0, 0, 0, 0, 0, 21, 0, 0, 0, 0,
1796 0, 636, 80, 0, 0, 0, 80, 0, 26, 0,
1797 27, 28, 204, 80, 0, 738, 738, 0, 0, 1287,
1798 0, 0, 0, 0, 746, 0, 7, 8, 9, 10,
1799 0, 204, 204, 204, 747, 1144, 1145, 0, 1147, 341,
1800 0, 0, 32, 0, 0, 0, 748, 640, 127, 128,
1801 0, 0, 0, 247, 18, 0, 0, 0, 0, 0,
1802 204, 0, 0, 0, 0, 21, 0, 0, 0, 1166,
1803 0, 636, 0, 0, 0, 18, 0, 522, 26, 0,
1804 27, 28, 0, 0, 0, 0, 104, 0, 0, 0,
1805 0, 469, 636, 469, 746, 469, 0, 144, 0, 26,
1806 0, 130, 131, 738, 747, 0, 0, 716, 0, 0,
1807 717, 0, 32, 0, 0, 637, 748, 640, 0, 0,
1808 0, 0, 720, 0, 0, 638, 0, 738, 1158, 0,
1809 0, 1159, 0, 0, 0, 104, 548, 639, 640, 0,
1810 0, 1377, 1378, 1165, 0, 0, 0, 931, 934, 0,
1811 0, 7, 127, 128, 10, 0, 774, 1226, 0, 775,
1812 0, 489, 492, 0, 0, 0, 0, 0, 0, 738,
1813 0, 0, 0, 791, 0, 412, 0, 0, 414, 18,
1814 0, 104, 0, 0, 1247, 634, 0, 548, 548, 649,
1815 21, 0, 537, 0, 0, 0, 1252, 469, 80, 0,
1816 0, 0, 0, 26, 0, 27, 28, 0, 0, 0,
1817 7, 8, 9, 10, 215, 216, 217, 1433, 0, 30,
1818 0, 14, 0, 0, 1158, 1159, 931, 934, 0, 31,
1819 0, 133, 0, 1165, 931, 934, 0, 32, 18, 0,
1820 104, 33, 204, 104, 20, 0, 0, 0, 0, 21,
1821 0, 0, 0, 23, 0, 636, 738, 144, 0, 0,
1822 144, 0, 26, 0, 27, 28, 0, 0, 0, 0,
1823 1479, 0, 144, 0, 0, 0, 0, 0, 746, 0,
1824 80, 0, 0, 0, 1304, 0, 0, 0, 747, 0,
1825 0, 0, 0, 738, 0, 0, 32, 0, 0, 0,
1826 755, 640, 7, 8, 9, 10, 0, 0, 204, 753,
1827 204, 204, 649, 0, 0, 0, 753, 0, 0, 0,
1828 0, 0, 0, 0, 204, 204, 0, 0, 204, 0,
1829 204, 204, 204, 781, 0, 0, 0, 204, 0, 0,
1830 0, 21, 204, 0, 469, 204, 0, 1364, 0, 0,
80048418 1831 0, 0, 0, 0, 26, 0, 27, 28, 0, 0,
eca1bd08
UD
1832 1451, 0, 80, 0, 1535, 1536, 0, 0, 0, 0,
1833 194, 931, 934, 0, 0, 0, 0, 0, 0, 0,
1834 195, 0, 0, 7, 127, 128, 10, 0, 32, 13,
1835 0, 1396, 196, 0, 0, 1397, 0, 1561, 104, 104,
1836 104, 104, 601, 602, 603, 604, 605, 606, 607, 608,
1837 609, 18, 0, 0, 489, 492, 0, 1158, 1159, 931,
1838 934, 0, 21, 0, 1165, 0, 0, 0, 1575, 1413,
1839 0, 0, 0, 0, 147, 26, 0, 27, 28, 301,
1840 8, 9, 10, 0, 774, 775, 489, 492, 0, 0,
1841 0, 30, 791, 0, 0, 0, 0, 0, 104, 0,
1842 548, 31, 0, 716, 717, 0, 0, 18, 0, 32,
1843 0, 720, 634, 33, 548, 548, 649, 0, 21, 0,
1844 0, 0, 0, 956, 636, 0, 0, 958, 0, 0,
1845 0, 26, 0, 27, 321, 1472, 0, 0, 0, 1473,
1846 0, 0, 204, 0, 0, 0, 0, 1221, 0, 0,
1847 0, 0, 0, 0, 0, 0, 0, 1222, 0, 0,
1848 0, 1488, 1489, 0, 0, 32, 0, 0, 133, 1223,
1849 640, 0, 0, 0, 0, 133, 0, 0, 0, 738,
1850 0, 0, 0, 204, 239, 0, 0, 0, 0, 0,
1851 810, 0, 7, 8, 811, 10, 167, 12, 13, 1158,
1852 1159, 0, 1165, 14, 597, 598, 599, 600, 601, 602,
1853 603, 604, 605, 606, 607, 608, 609, 16, 0, 17,
1854 18, 19, 0, 204, 204, 1033, 20, -520, 0, 0,
1855 0, 21, 1033, 0, 0, 23, 812, 0, 168, 0,
1856 0, 0, 0, 0, 26, 0, 27, 28, 0, 0,
1857 813, 0, 814, 204, 204, 781, 781, 781, 0, 0,
1858 30, 204, 0, 0, 0, 0, 0, 0, 0, 0,
1859 31, 0, 0, 0, 7, 8, 9, 10, 32, 0,
1860 0, 0, 33, 0, 0, 0, 0, 0, 0, 133,
1861 0, 0, 80, 0, 80, 0, 0, 0, -520, 1086,
1862 80, 0, 80, 0, 931, 934, 0, 0, 104, 0,
1863 0, 0, 0, 21, 104, 0, 0, 0, 0, 0,
1864 0, 548, 548, 548, 0, 0, 26, 0, 27, 28,
1865 0, 0, 548, 0, 774, 775, 489, 492, 0, 0,
1866 0, 0, 194, 791, 489, 492, 0, 0, 0, 0,
1867 0, 0, 195, 412, 414, 774, 775, 791, 0, 0,
1868 32, 0, 537, 810, 196, 7, 8, 811, 10, 167,
1869 12, 13, 0, 0, 0, 0, 14, 0, 0, 0,
1870 0, 0, 0, 104, 0, 0, 0, 0, 0, 0,
1871 16, 0, 17, 18, 19, 0, 0, 0, 0, 20,
1872 -521, 0, 0, 0, 21, 0, 548, 548, 23, 812,
1873 548, 168, 0, 548, 0, 0, 0, 26, 104, 27,
1874 28, 1510, 548, 813, 104, 814, 956, 956, 956, 0,
1875 0, 0, 548, 30, 1176, 0, 0, 0, 0, 0,
1876 0, 0, 0, 31, 0, 0, 0, 0, 0, 0,
1877 0, 32, 0, 0, 0, 33, 0, 0, 0, 0,
1878 0, 0, 0, 0, 0, 0, 0, 104, 0, 104,
1879 0, -521, 1511, 588, 589, 590, 591, 592, 593, 594,
1880 595, 596, 597, 598, 599, 600, 601, 602, 603, 604,
1881 605, 606, 607, 608, 609, 0, 0, 0, 0, 0,
1882 0, 0, 204, 204, 204, 204, 204, 1033, 781, 0,
1883 0, 0, 204, 1033, 1033, 1033, 0, 0, 0, 0,
1884 0, 0, 0, 104, 781, 781, 781, 774, 775, 489,
1885 492, 0, 0, 0, 791, 0, 0, 0, 0, 104,
1886 0, 0, 1086, 0, 489, 492, 716, 717, 0, 0,
1887 0, 104, 0, 720, 0, 7, 8, 9, 10, 167,
1888 12, 13, 0, 0, 1261, 0, 14, 0, 0, 0,
1889 0, 0, 80, 0, 0, 301, 127, 128, 10, 0,
1890 16, 13, 17, 18, 19, 104, 0, 104, 0, 20,
1891 0, 0, 0, 0, 21, 104, 0, 0, 23, 0,
1892 0, 168, 0, 18, 0, 0, 0, 26, 0, 27,
1893 28, 0, 0, 0, 21, 0, 0, 0, 0, 0,
1894 636, 548, 548, 30, 548, 0, 0, 26, 0, 27,
1895 321, 0, 0, 31, 301, 8, 9, 10, 0, 0,
1896 13, 32, 0, 1173, 0, 33, 0, 548, 0, 34,
1897 548, 548, 649, 1174, 0, 7, 127, 128, 10, 0,
1898 0, 32, 18, 0, 0, 1175, 640, 0, 0, 774,
1899 775, 0, 791, 21, 0, 0, 0, 0, 0, 636,
1900 0, 0, 0, 0, 0, 0, 26, 0, 27, 321,
1901 0, 0, 0, 0, 21, 781, 204, 204, 781, 781,
1902 1363, 252, 1221, 204, 0, 0, 0, 0, 0, 27,
1903 28, 0, 1222, 781, 781, 781, 781, 0, 83, 0,
1904 32, 0, 0, 0, 1223, 640, 0, 0, 106, 0,
1905 0, 0, 0, 253, 0, 204, 0, 126, 134, 0,
1906 144, 32, 0, 80, 145, 145, 0, 145, 0, 83,
1907 0, 0, 0, 0, 0, 0, 83, 0, 0, 0,
1908 810, 0, 7, 8, 811, 10, 167, 12, 13, 145,
1909 0, 83, 0, 14, 489, 492, 0, 0, 0, 240,
1910 0, 0, 0, 0, 0, 0, 249, 16, 0, 17,
1911 18, 19, 0, 0, 0, 0, 20, -523, 249, 0,
1912 0, 21, 0, 0, 0, 23, 812, 0, 168, 0,
1913 0, 0, 0, 0, 26, 0, 27, 28, 0, 0,
1914 813, 0, 814, 0, 0, 204, 753, 204, 0, 0,
1915 30, 0, 0, 0, 489, 492, 0, 0, 781, 781,
1916 31, 781, 0, 104, 0, 0, 0, 0, 32, 0,
1917 83, 0, 33, 0, 145, 145, 0, 0, 0, 0,
1918 145, 0, 0, 145, 145, 145, 0, 0, -523, 0,
1919 0, 0, 0, 0, 0, 0, 0, 0, 0, 83,
1920 0, 0, 0, 83, 0, 0, 0, 0, 0, 145,
1921 83, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1922 0, 0, 7, 8, 9, 10, 0, 0, 145, 145,
1923 145, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1924 0, 0, 810, 0, 7, 8, 811, 10, 167, 12,
1925 13, 0, 0, 0, 1033, 14, 0, 145, 0, 0,
1926 0, 21, 0, 781, 781, 1363, 781, 0, 252, 16,
1927 0, 17, 18, 19, 0, 0, 27, 28, 20, -522,
1928 0, 0, 0, 21, 127, 128, 0, 23, 812, 536,
1929 168, 0, 0, 0, 145, 0, 26, 0, 27, 28,
1930 253, 0, 813, 0, 814, 0, 0, 0, 32, 0,
1931 0, 18, 30, 0, 0, 0, 0, 0, 0, 0,
1932 0, 0, 31, 1033, 1033, 1033, 0, 0, 636, 781,
1933 32, 0, 249, 145, 33, 26, 0, 130, 131, 0,
1934 0, 0, 0, 104, 0, 0, 0, 0, 204, 0,
1935 -522, 637, 0, 0, 0, 0, 0, 0, 0, 0,
1936 0, 638, 0, 6, 0, 7, 8, 9, 10, 11,
1937 12, 13, 0, 639, 640, 0, 14, 0, 249, 0,
1938 0, 0, 635, 0, 145, 145, 650, 0, 0, 15,
1939 16, 659, 17, 18, 19, 83, 0, 0, 0, 20,
1940 0, 0, 0, 0, 21, 0, 0, 22, 23, 24,
1941 0, 25, 0, 0, 0, 0, 0, 26, 0, 27,
1942 28, 0, 0, 29, 7, 127, 128, 10, 698, 0,
1943 247, 0, 0, 30, 0, 0, 0, 249, 0, 145,
1944 249, 0, 0, 31, 0, 301, 8, 9, 10, 0,
1945 0, 32, 18, 0, 145, 33, 0, 145, 0, 34,
1946 0, 0, 0, 21, 0, 7, 127, 128, 10, 145,
1947 0, 13, 0, 0, 0, 0, 26, 83, 27, 28,
1948 0, 0, 0, 0, 21, 0, 0, 0, 0, 0,
1949 0, 252, 30, 18, 0, 0, 0, 0, 0, 27,
1950 321, 0, 31, 0, 21, 145, 650, 145, 145, 650,
1951 32, 0, 0, 650, 33, 0, 0, 26, 0, 27,
1952 28, 145, 145, 253, 0, 145, 0, 145, 145, 145,
1953 145, 32, 0, 149, 145, 0, 0, 0, 0, 145,
1954 0, 0, 145, 150, 0, 0, 0, 0, 0, 0,
1955 0, 32, 0, 0, 0, 151, 0, 0, 809, 83,
273a708f 1956 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
eca1bd08
UD
1957 0, 0, 570, 0, 301, 8, 9, 10, 167, 12,
1958 302, 303, 304, 466, 305, 14, 0, 0, 0, 0,
1959 0, 0, 0, 0, 0, 249, 249, 249, 249, 16,
1960 306, 17, 18, 19, 0, 307, 308, 309, 20, 0,
1961 310, 311, 312, 21, 313, 314, 0, 23, 0, 636,
1962 0, 315, 316, 317, 318, 319, 26, 0, 27, 321,
1963 -312, 0, 0, 322, 0, 0, 0, 0, 0, 323,
1964 0, 0, 949, 0, 0, 0, 0, 0, 0, 0,
1965 325, 326, 950, 0, 0, 249, 0, 145, 328, 329,
1966 330, 0, 0, 0, 951, 640, 0, 0, 0, 0,
1967 0, 145, 145, 650, 0, 0, 0, 0, 8, 9,
1968 957, 332, 810, 247, 7, 8, 811, 10, 167, 12,
1969 13, 0, 0, 659, 0, 14, 0, 0, 0, 145,
1970 0, 0, 0, 0, 0, 18, 0, 0, 0, 16,
1971 0, 17, 18, 19, 0, 0, 0, 0, 20, 0,
1972 0, 0, 636, 21, 0, 698, 0, 23, 812, 26,
1973 168, 130, 131, 126, 0, 0, 26, 0, 27, 28,
1974 145, 240, 813, 0, 814, 1466, 0, 0, 0, 0,
1975 0, 0, 30, 0, 0, 1467, 0, 0, 0, 0,
1976 0, 0, 31, 0, 809, 0, 0, 1468, 640, 0,
1977 32, 0, 0, 0, 33, 0, 301, 8, 9, 10,
1978 145, 145, 650, 0, 0, 0, 0, 0, 0, 957,
1979 0, 0, 0, 0, 0, 0, 0, 0, 7, 8,
1980 9, 10, 167, 12, 13, 0, 0, 761, 0, 14,
1981 145, 145, 145, 145, 145, 21, 0, 0, 145, 0,
1982 0, 0, 252, 16, 0, 17, 18, 0, 0, 0,
1983 27, 321, 20, 0, 0, 0, 0, 21, 0, 0,
1984 0, 23, 0, 0, 0, 0, 134, 0, 0, 83,
1985 26, 83, 27, 28, 539, 0, 1087, 83, 0, 83,
1986 0, 0, 32, 0, 0, 249, 30, 0, 0, 0,
1987 0, 249, 0, 0, 0, 0, 31, 0, 145, 145,
1988 145, 0, 0, 0, 32, 51, 0, 0, 33, 145,
1989 7, 8, 9, 10, 206, 12, 207, 0, 0, 0,
1990 0, 14, 0, 0, 0, 0, 0, 0, 0, 0,
1991 0, 51, 51, 0, 152, 16, 51, 17, 18, 0,
1992 0, 0, 0, 51, 20, 0, 0, 0, 0, 21,
1993 0, 0, 0, 23, 0, 0, 51, 0, 51, 0,
1994 249, 0, 26, 0, 27, 28, 0, 0, 208, 0,
1995 0, 0, 0, 0, 0, 0, 0, 0, 30, 0,
1996 0, 255, 0, 145, 145, 0, 0, 145, 31, 0,
1997 145, 0, 0, 0, 0, 249, 32, 0, 0, 145,
1998 33, 249, 0, 957, 957, 957, 0, 0, 0, 145,
1999 0, 659, 0, 0, 0, 0, 0, 0, 0, 0,
2000 7, 8, 9, 10, 215, 216, 217, 0, 0, 0,
2001 0, 14, 0, 0, 397, 397, 0, 51, 0, 0,
2002 0, 51, 51, 0, 249, 255, 249, 51, 18, 0,
2003 152, 152, 152, 0, 20, 0, 0, 432, 0, 21,
2004 0, 0, 0, 23, 0, 636, 51, 0, 0, 0,
2005 51, 0, 26, 0, 27, 28, 51, 51, 0, 145,
2006 145, 145, 145, 145, 650, 145, 0, 0, 746, 145,
2007 957, 957, 957, 0, 0, 51, 51, 152, 747, 0,
2008 249, 145, 145, 145, 0, 255, 32, 0, 0, 0,
2009 748, 640, 0, 0, 809, 0, 249, 0, 0, 1087,
2010 0, 0, 0, 0, 51, 0, 0, 0, 249, 0,
2011 6, 0, 7, 8, 9, 10, 11, 12, 13, 0,
2012 0, 0, 0, 14, 0, 0, 0, 0, 0, 83,
2013 0, 0, 7, 8, 9, 10, 0, 16, 13, 17,
2014 18, 51, 249, 0, 249, 0, 20, 0, 0, 0,
2015 0, 21, 249, 0, 0, 23, 0, 0, 439, 0,
2016 18, 0, 0, 0, 26, 0, 27, 28, 0, 0,
2017 29, 21, 127, 128, 0, 0, 216, 217, 145, 145,
2018 30, 145, 14, 0, 26, 0, 27, 28, 0, 0,
2019 31, 0, 0, 0, 0, 0, 0, 0, 32, 0,
2020 194, 0, 33, 0, 145, 20, 0, 145, 145, 650,
2021 195, 0, 575, 0, 23, 0, 636, 0, 32, 0,
2022 0, 0, 196, 26, 0, 130, 131, 0, 0, 397,
2023 0, 0, 0, 0, 0, 0, 809, 255, 0, 637,
2024 0, 0, 51, 0, 0, 0, 0, 0, 0, 638,
2025 0, 0, 145, 145, 145, 145, 145, 650, 0, 0,
2026 145, 646, 640, 0, 0, 0, 0, 0, 0, 0,
2027 145, 145, 145, 145, 0, 397, 0, 809, 0, 0,
2028 0, 0, 0, 0, 0, 0, 51, 0, 0, 8,
2029 9, 0, 145, 12, 247, 0, 0, 145, 0, 14,
2030 83, 51, 0, 0, 51, 0, 0, 0, 0, 0,
2031 432, 432, 432, 16, 0, 17, 51, 0, 0, 0,
2032 0, 0, 20, 0, 51, 0, 0, 0, 0, 0,
2033 0, 23, 0, 636, 0, 0, 0, 0, 0, 0,
2034 26, 0, 130, 131, 0, 0, 0, 0, 0, 0,
2035 0, 0, 51, 51, 51, 51, 637, 0, 0, 0,
2036 51, 0, 0, 0, 0, 0, 638, 0, 51, 51,
2037 0, 1444, 51, 0, 152, 152, 152, 432, 639, 640,
2038 0, 51, 145, 650, 145, 0, 51, 8, 9, 51,
2039 0, 12, 247, 0, 0, 145, 145, 14, 145, 0,
2040 249, 0, 0, 0, 8, 9, 51, 167, 12, 13,
2041 0, 16, 466, 17, 14, 0, 0, 0, 0, 0,
2042 20, 0, 0, 0, 0, 0, 0, 0, 16, 23,
2043 17, 18, 0, 0, 575, 0, 575, 20, 26, 0,
2044 130, 131, 0, 0, 0, 0, 23, 0, 636, 0,
2045 0, 0, 575, 575, 575, 26, 0, 130, 131, 0,
2046 0, 78, 0, 0, 0, 127, 128, 575, 0, 216,
2047 217, 637, 0, 0, 0, 14, 0, 0, 0, 0,
2048 0, 638, 0, 0, 0, 0, 0, 78, 78, 0,
2049 78, 957, 78, 639, 640, 0, 0, 0, 20, 78,
2050 145, 145, 650, 145, 0, 0, 0, 23, 0, 636,
2051 0, 0, 78, 0, 78, 255, 26, 0, 130, 131,
2052 0, 0, 0, 0, 0, 0, 0, 575, 0, 0,
2053 0, 0, 637, 0, 1381, 1382, 9, 10, 0, 0,
2054 0, 0, 638, 0, 0, 0, 51, 0, 0, 0,
2055 0, 0, 0, 159, 639, 640, 0, 0, 0, 0,
2056 957, 957, 957, 0, 0, 0, 145, 0, 0, 0,
2057 0, 0, 397, 21, 0, 205, 0, 0, 0, 397,
2058 249, 0, 0, 0, 0, 145, 26, 51, 27, 28,
2059 0, 0, 0, 78, 1383, 0, 0, 78, 78, 0,
2060 0, 0, 194, 78, 0, 0, 78, 78, 78, 0,
2061 0, 0, 195, 0, 0, 0, 0, 0, 0, 0,
2062 32, 0, 78, 0, 196, 0, 78, 51, 51, 152,
2063 0, 0, 78, 78, 255, 0, 1039, 0, 0, 0,
2064 0, 0, 0, 0, 0, 7, 8, 9, 10, 0,
2065 575, 78, 78, 78, 0, 0, 0, 51, 51, 432,
2066 432, 432, 0, 0, 0, 51, 0, 0, 0, 159,
2067 159, 159, 0, 18, 0, 0, 0, 0, 0, 0,
2068 78, 0, 0, 0, 21, 0, 0, 0, 0, 0,
2069 0, 0, 0, 0, 0, 205, 51, 26, 51, 27,
2070 28, 0, 0, 51, 51, 0, 51, 0, 0, 0,
2071 0, 0, 0, 493, 205, 205, 498, 78, 0, 0,
2072 0, 0, 0, 494, 0, 0, 0, 0, 0, 0,
2073 0, 32, 0, 0, 0, 495, 0, 0, 0, 0,
2074 0, 0, 0, 205, 0, 0, 0, 0, 0, 0,
2075 0, 0, 0, 0, 0, 1459, 0, 1322, 1323, 1324,
2076 10, 167, 12, 302, 303, 304, 0, 305, 14, 1325,
2077 0, 1326, 1327, 1328, 1329, 1330, 1331, 1332, 1333, 1334,
2078 1335, 15, 16, 306, 17, 18, 19, 0, 307, 308,
2079 309, 20, 0, 310, 311, 312, 21, 313, 314, 1336,
2080 23, 1337, 0, 0, 315, 316, 317, 318, 319, 26,
2081 0, 1338, 321, 733, 658, 1339, 322, 0, 78, 549,
2082 0, 0, 323, 0, 0, 324, 0, 0, 0, 0,
2083 575, 575, 575, 325, 326, 327, 432, 255, 0, 0,
2084 0, 328, 329, 330, 0, 0, 0, 331, 0, 1340,
6eabb241 2085 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
eca1bd08
UD
2086 0, 0, 78, 1460, 332, 0, 0, 0, 0, 0,
2087 643, 643, 643, 0, 0, 0, 0, 78, 0, 0,
2088 78, 0, 0, 0, 0, 7, 127, 128, 10, 0,
2089 0, 536, 78, 0, 0, 0, 0, 0, 0, 0,
2090 78, 0, 0, 0, 0, 0, 51, 51, 51, 152,
2091 152, 152, 432, 18, 255, 0, 51, 1039, 1039, 1039,
2092 0, 0, 0, 0, 21, 205, 0, 0, 78, 78,
2093 78, 78, 0, 8, 9, 0, 78, 26, 536, 27,
2094 28, 0, 0, 0, 78, 78, 51, 0, 78, 0,
2095 78, 78, 78, 30, 0, 0, 0, 78, 0, 0,
2096 18, 0, 78, 31, 0, 78, 0, 255, 0, 0,
2097 0, 32, 0, 0, 0, 33, 51, 636, 0, 0,
2098 0, 0, 78, 0, 26, 0, 130, 131, 0, 0,
2099 0, 750, 0, 750, 750, 643, 0, 0, 0, 0,
2100 1466, 0, 0, 0, 0, 0, 0, 205, 205, 0,
2101 1467, 205, 0, 498, 498, 498, 782, 0, 0, 0,
2102 205, 0, 1468, 640, 0, 205, 0, 0, 205, 0,
273a708f 2103 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
80048418 2104 0, 7, 8, 9, 10, 167, 12, 13, 0, 0,
eca1bd08 2105 466, 432, 14, 0, 432, 432, 432, 255, 0, 0,
80048418
MM
2106 0, 0, 0, 0, 0, 0, 16, 0, 17, 18,
2107 0, 0, 0, 0, 0, 20, 0, 0, 0, 0,
eca1bd08
UD
2108 21, 0, 0, 0, 23, 0, 636, 0, 0, 0,
2109 0, 0, 658, 26, 0, 27, 28, 0, 0, 432,
2110 51, 51, 432, 432, 432, 0, 0, 51, 0, 1028,
2111 0, 8, 9, 0, 0, 0, 13, 0, 0, 1029,
2112 0, 0, 78, 0, 0, 0, 0, 32, 0, 0,
2113 0, 1030, 640, 0, 370, 372, 0, 0, 18, 51,
2114 0, 0, 0, 915, 51, 0, 0, 51, 0, 0,
2115 0, 0, 0, 0, 0, 636, 0, 643, 643, 643,
2116 0, 0, 26, 78, 130, 131, 643, 0, 301, 8,
2117 9, 10, 167, 12, 13, 0, 0, 466, 1466, 14,
2118 0, 0, 0, 0, 0, 205, 0, 0, 1467, 0,
2119 0, 0, 0, 16, 0, 17, 18, 0, 0, 0,
2120 1468, 640, 20, 78, 78, 78, 0, 21, 0, 0,
2121 0, 23, 1041, 636, 0, 0, 0, 470, 0, 0,
2122 26, 0, 27, 321, 0, 0, 750, 0, 0, 51,
2123 51, 51, 0, 78, 78, 0, 1173, 0, 0, 0,
2124 0, 78, 0, 0, 0, 0, 1174, 0, 0, 0,
2125 0, 0, 0, 0, 32, 0, 0, 0, 1175, 640,
2126 0, 0, 0, 0, 0, 0, 750, 750, 1034, 0,
2127 0, 0, 78, 0, 78, 1034, 0, 0, 0, 78,
2128 78, 0, 78, 0, 0, 0, 0, 0, 0, 0,
2129 0, 0, 0, 0, 0, 0, 205, 205, 782, 782,
2130 782, 0, 0, 0, 205, 301, 8, 9, 10, 167,
2131 12, 13, 0, 0, 466, 0, 14, 0, 0, 0,
2132 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2133 16, 0, 17, 18, 0, 0, 0, 0, 1039, 20,
2134 0, 0, 205, 0, 21, 0, 0, 0, 23, 0,
2135 636, 7, 8, 9, 10, 0, 0, 26, 578, 27,
2136 321, 0, 0, 0, 549, 549, 549, 0, 0, 0,
2137 0, 0, 0, 1221, 0, 643, 0, 0, 0, 18,
2138 0, 0, 0, 1222, 0, 203, 0, 0, 0, 0,
2139 21, 32, 0, 0, 0, 1223, 640, 0, 0, 0,
2140 0, 0, 0, 26, 0, 27, 28, 1039, 1039, 1039,
2141 258, 0, 0, 262, 658, 0, 0, 0, 0, 194,
2142 0, 0, 0, 0, 0, 0, 0, 0, 0, 195,
2143 705, 0, 51, 0, 258, 0, 366, 32, 0, 0,
2144 0, 196, 0, 0, 0, 0, 0, 0, 0, 643,
2145 643, 0, 0, 643, 0, 0, 643, 0, 0, 0,
2146 0, 0, 0, 0, 0, 643, 0, 0, 0, 643,
2147 643, 643, 0, 0, 0, 643, 301, 8, 9, 10,
2148 0, 0, 78, 78, 78, 78, 78, 78, 0, 0,
2149 0, 0, 78, 1041, 1041, 1041, 0, 0, 0, 0,
2150 0, 0, 0, 0, 18, 203, 705, 0, 0, 0,
2151 0, 0, 0, 0, 0, 21, 0, 0, 0, 0,
2152 0, 0, 78, 0, 203, 203, 203, 0, 26, 0,
2153 27, 321, 0, 0, 504, 0, 0, 0, 0, 0,
2154 0, 0, 0, 0, 778, 750, 750, 750, 1034, 1034,
2155 1034, 1224, 78, 203, 779, 750, 1034, 1034, 1034, 0,
2156 0, 0, 32, 0, 0, 0, 780, 782, 782, 782,
2157 0, 0, 0, 0, 0, 0, 0, 0, 0, 262,
2158 849, 0, 850, 0, 0, 205, 0, 853, 854, 856,
2159 857, 858, 0, 258, 0, 0, 0, 0, 0, 0,
2160 578, 0, 0, 0, 0, 0, -387, 8, 9, -387,
2161 -387, 12, 247, 875, 0, 0, 0, 14, 0, 0,
2162 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2163 0, 16, 0, 17, -387, 0, 0, 0, 0, 0,
2164 20, 0, 0, 0, 0, -387, 0, 905, 0, 23,
2165 0, 636, 0, 0, 0, 0, 0, 0, 26, 0,
2166 130, 131, 0, 0, 915, 915, 935, 915, 0, 0,
2167 0, 0, 0, 935, 637, 0, 78, 78, 0, 0,
2168 0, 0, 0, 78, 638, 0, 258, 262, 0, 0,
2169 643, 0, -387, 643, 643, 643, 639, 640, 593, 594,
2170 595, 596, 597, 598, 599, 600, 601, 602, 603, 604,
2171 605, 606, 607, 608, 609, 78, 0, 0, 0, 0,
2172 78, 0, 0, 78, 0, 0, 0, 0, 0, 0,
2173 0, 0, 0, 0, 0, 203, 0, 0, 1224, 750,
2174 750, 1224, 1224, 1224, 8, 9, 750, 167, 12, 13,
2175 0, 0, 466, 0, 14, 0, 782, 782, 782, 782,
2176 0, 0, 0, 0, 0, 0, 0, 0, 16, 0,
2177 17, 18, 0, 0, 0, 935, 0, 20, 205, 0,
2178 0, 0, 935, 0, 0, 0, 23, 0, 1075, 8,
2179 811, 10, 206, 12, 207, 26, 0, 130, 131, 14,
2180 0, 203, 0, 203, 203, 78, 78, 78, 0, 0,
2181 0, 0, 0, 16, 0, 17, 18, 203, 203, 0,
2182 0, 203, 20, 203, 203, 203, 203, 21, 0, 0,
2183 203, 23, 0, 0, 0, 203, 0, 0, 203, 0,
2184 26, 0, 27, 28, 0, 0, 0, 0, 1077, 0,
2185 0, 0, 0, 0, 0, 0, 30, 0, 470, 0,
2186 0, 0, 0, 0, 470, 0, 31, 0, 205, 0,
2187 205, 0, 264, 0, 32, 8, 9, 0, 33, 12,
2188 13, 1224, 1224, 0, 1224, 14, 0, 0, 0, 0,
2189 0, 0, 0, 0, 0, 0, 0, 0, 0, 16,
2190 0, 17, 0, 0, 641, 641, 641, 0, 20, 0,
2191 265, 266, 0, 0, 1041, 0, 0, 23, 0, 267,
2192 0, 0, 0, 0, 0, 0, 26, 0, 130, 131,
2193 0, 268, 0, 1139, 0, 269, 270, 271, 272, 273,
2194 274, 275, 276, 277, 278, 279, 280, 281, 282, 283,
2195 284, 285, 286, 287, 288, 289, 0, 0, 290, 291,
2196 292, 0, 293, 0, 0, 294, 0, 0, 875, 0,
2197 0, 0, 0, 0, 470, 0, 0, 498, 935, 258,
2198 262, 295, 0, 1041, 1041, 1041, 1224, 1224, 1224, 1224,
2199 0, 0, 0, 0, 0, 203, 0, 0, 0, 0,
2200 0, 0, 0, 0, 0, 0, 0, 0, 78, 0,
2201 0, 0, 7, 8, 9, 10, 0, 705, 247, 1194,
2202 0, 0, 0, 0, 0, 641, 0, 641, 641, 641,
2203 0, 0, 0, 0, 0, 0, 203, 0, 0, 0,
2204 18, 0, 0, 0, 0, 0, 498, 498, 498, 0,
2205 0, 21, 1224, 102, 0, 0, 0, 935, 0, 0,
2206 0, 0, 121, 102, 26, 935, 27, 28, 0, 102,
2207 102, 205, 102, 1233, 0, 0, 203, 203, 1032, 0,
2208 194, 0, 0, 258, 0, 1032, 0, 0, 0, 470,
2209 195, 0, 0, 0, 0, 0, 0, 0, 32, 0,
2210 0, 470, 196, 0, 236, 0, 203, 203, 203, 203,
2211 203, 504, 0, 0, 203, 0, 0, 0, 0, 0,
2212 0, 0, 0, 0, 8, 9, 0, 167, 12, 13,
2213 0, 0, 0, 0, 14, 470, 0, 470, 0, 262,
2214 0, 0, 0, 0, 0, 1277, 0, 0, 16, 0,
2215 17, 18, 203, 0, 0, 0, 0, 20, 7, 8,
2216 9, 10, 0, 390, 13, 121, 699, 0, 0, 168,
2217 0, 0, 102, 102, 0, 26, 0, 130, 131, 102,
2218 102, 0, 0, 102, 102, 102, 18, 418, 102, 102,
2219 102, 641, 641, 641, 0, 0, 0, 21, 0, 0,
2220 953, 0, 935, 7, 8, 9, 10, 206, 12, 207,
2221 26, 0, 27, 28, 14, 0, 0, 0, 0, 0,
2222 0, 0, 0, 0, 0, 0, 493, 0, 16, 0,
2223 17, 18, 0, 0, 0, 0, 494, 20, 0, 0,
2224 0, 0, 21, 0, 32, 0, 23, 0, 495, 0,
2225 935, 0, 0, 0, 0, 26, 0, 27, 28, 0,
2226 641, 1454, 0, 0, 7, 8, 9, 10, 0, 0,
2227 536, 30, 0, 0, 0, 0, 0, 0, 236, 102,
2228 0, 31, 0, 0, 0, 0, 258, 262, 258, 32,
2229 0, 0, 18, 33, 0, 0, 0, 0, 0, 102,
2230 641, 641, 641, 21, 0, 0, 0, 0, 0, 953,
2231 0, 0, 0, 0, 0, 0, 26, 0, 27, 28,
2232 8, 9, 0, 167, 12, 13, 0, 0, 1577, 0,
2233 14, 0, 194, 0, 0, 0, 0, 0, 102, 0,
2234 0, 0, 195, 0, 16, 0, 17, 18, 0, 0,
2235 32, 0, 0, 20, 196, 203, 203, 203, 203, 203,
2236 1032, 203, 23, 1225, 0, 203, 1032, 1032, 1032, 0,
2237 0, 26, 0, 130, 131, 0, 0, 203, 203, 203,
2238 7, 8, 9, 10, 167, 12, 13, 102, 0, 102,
2239 102, 14, 0, 1233, 0, 203, 8, 9, 0, 0,
2240 12, 13, 0, 0, 0, 16, 14, 17, 18, 641,
2241 0, 0, 0, 0, 20, 0, 504, 0, 0, 21,
2242 16, 0, 17, 23, 0, 0, 0, 0, 0, 20,
2243 0, 0, 26, 102, 27, 28, 0, 0, 23, 301,
2244 8, 9, 10, 0, 0, 13, 0, 26, 30, 130,
2245 131, 0, 102, 0, 0, 0, 0, 0, 31, 102,
2246 0, 0, 102, 0, 0, 0, 32, 18, 0, 0,
2247 33, 0, 0, 0, 102, 0, 0, 0, 21, 0,
2248 0, 0, 0, 641, 641, 0, 0, 641, 0, 0,
2249 641, 26, 0, 27, 321, 935, 0, 0, 0, 641,
2250 0, 0, 0, 953, 953, 953, 258, 778, 0, 641,
2251 0, 0, 0, 0, 0, 0, 0, 779, 0, 0,
2252 0, 0, 0, 0, 0, 32, 0, 0, 0, 780,
2253 592, 593, 594, 595, 596, 597, 598, 599, 600, 601,
2254 602, 603, 604, 605, 606, 607, 608, 609, 203, 203,
2255 203, 203, 203, 1032, 0, 578, 203, 0, 0, 0,
2256 0, 102, 0, 802, 0, 0, 203, 203, 203, 203,
2257 0, 0, 0, 705, 1381, 127, 128, 10, 0, 641,
2258 641, 641, 641, 641, 641, 641, 0, 102, 203, 641,
2259 953, 953, 953, 7, 8, 9, 10, 206, 12, 207,
2260 0, 0, 0, 0, 14, 0, 0, 0, 0, 0,
2261 0, 0, 0, 21, 0, 0, 0, 0, 16, 0,
2262 17, 18, 0, 0, 0, 0, 26, 20, 27, 28,
2263 0, 0, 21, 0, 1383, 0, 23, 0, 0, 0,
2264 0, 0, 30, 0, 0, 26, 0, 27, 28, 0,
2265 0, 0, 31, 0, 0, 0, 0, 0, 0, 0,
2266 32, 30, 102, 18, 33, 0, 0, 0, 0, 0,
2267 0, 31, 0, 102, 102, 0, 102, 102, 203, 32,
2268 203, 0, 0, 33, 0, 0, 0, 0, 0, 0,
2269 0, 203, 203, 1225, 203, 0, 588, 589, 590, 591,
2270 592, 593, 594, 595, 596, 597, 598, 599, 600, 601,
2271 602, 603, 604, 605, 606, 607, 608, 609, 0, 0,
2272 0, 0, 0, 0, 641, 0, 0, 641, 641, 641,
2273 102, 0, 0, 0, 0, 0, 0, 102, 121, 0,
2274 0, 0, 0, 0, 0, 0, 236, 0, 0, 0,
2275 7, 8, 9, 10, 215, 216, 217, 0, 0, 0,
2276 0, 14, 0, 0, 0, 0, 0, 0, 0, 802,
2277 0, 0, 641, 641, 641, 641, 641, 641, 18, 0,
2278 641, 0, 0, 0, 20, 0, 0, 1032, 0, 21,
2279 0, 0, 0, 23, 0, 636, 203, 203, 1032, 203,
2280 0, 0, 26, 0, 27, 28, 0, 0, 0, 0,
2281 0, 0, 0, 0, 0, 0, 0, 0, 194, 8,
2282 9, 0, 167, 12, 13, 0, 0, 466, 195, 14,
2283 0, 0, 0, 0, 0, 0, 32, 0, 0, 0,
2284 1457, 0, 0, 16, 0, 17, 18, 0, 802, 0,
2285 0, 102, 20, 0, 0, 0, 1032, 1032, 1032, 0,
2286 0, 23, 203, 636, 0, 0, 0, 0, 0, 0,
2287 26, 0, 130, 131, 0, 0, 0, 0, 0, 0,
2288 0, 203, 0, 102, 102, 102, 1466, 8, 9, 0,
2289 206, 12, 207, 0, 102, 0, 1467, 14, 0, 0,
2290 0, 0, 0, 0, 0, 0, 0, 0, 1468, 640,
2291 0, 16, 0, 17, 18, 641, 641, 0, 641, 0,
2292 20, 0, 0, 0, 0, 0, 0, 0, 0, 23,
2293 0, 0, 0, 0, 0, 0, 0, 0, 26, 0,
2294 130, 131, 588, 589, 590, 591, 592, 593, 594, 595,
2295 596, 597, 598, 599, 600, 601, 602, 603, 604, 605,
2296 606, 607, 608, 609, 0, 0, 0, 0, 102, 102,
2297 0, 0, 102, 0, 0, 102, 0, 0, 0, 0,
2298 0, 0, 0, 0, 102, 0, 0, 0, 0, 1282,
2299 0, 0, 0, 0, 102, 0, 0, 0, 0, 0,
2300 0, 1540, 0, -478, -478, -478, -478, -478, -478, -478,
2301 0, 0, -478, 0, -478, 0, 0, 0, 0, 0,
2302 641, 641, 641, 641, 0, -478, 0, -478, 0, 0,
2303 0, -478, 0, 0, 0, 0, 0, -478, 0, 0,
2304 0, 0, -478, 0, 0, 0, -478, 0, -478, 0,
2305 0, 0, 0, 0, 0, -478, 0, -478, -478, -478,
2306 -478, -478, 0, -478, -478, -478, -478, -478, -478, -478,
80048418 2307 -478, -478, -478, -478, -478, -478, -478, -478, -478, -478,
eca1bd08
UD
2308 -478, -478, -478, -478, -478, -478, 641, -478, -478, -478,
2309 0, -478, -478, -478, -478, -478, 0, 0, 0, 802,
2310 0, 1541, -478, 0, 0, 0, 0, -478, -478, -478,
2311 570, -478, 7, 8, 9, 10, 167, 12, 302, 303,
2312 304, 466, 305, 14, 0, 0, 102, 0, 0, 0,
80048418
MM
2313 0, 0, 0, 0, 0, 0, 0, 16, 306, 17,
2314 18, 19, 0, 307, 308, 309, 20, 0, 310, 311,
eca1bd08
UD
2315 312, 21, 313, 314, 0, 23, 0, 636, 0, 315,
2316 316, 317, 318, 319, 26, 0, 27, 28, -312, 0,
2317 0, 322, 0, 0, 0, 0, 0, 323, 0, 0,
2318 1036, 0, 0, 102, 102, 0, 102, 0, 325, 326,
2319 1037, 0, 0, 0, 0, 0, 328, 329, 330, 0,
2320 0, 0, 1038, 640, 0, 0, 0, 0, 0, 102,
2321 0, 0, 102, 102, 0, 0, 0, 0, 0, 332,
2322 594, 595, 596, 597, 598, 599, 600, 601, 602, 603,
2323 604, 605, 606, 607, 608, 609, 0, 0, 0, 0,
2324 0, 802, 588, 589, 590, 591, 592, 593, 594, 595,
2325 596, 597, 598, 599, 600, 601, 602, 603, 604, 605,
2326 606, 607, 608, 609, 595, 596, 597, 598, 599, 600,
2327 601, 602, 603, 604, 605, 606, 607, 608, 609, 0,
2328 0, 0, 802, 0, 0, 1598, 596, 597, 598, 599,
2329 600, 601, 602, 603, 604, 605, 606, 607, 608, 609,
2330 102, 1321, 102, 1322, 1323, 1324, 10, 167, 12, 302,
2331 303, 304, 0, 305, 14, 1325, 0, 1326, 1327, 1328,
2332 1329, 1330, 1331, 1332, 1333, 1334, 1335, 15, 16, 306,
2333 17, 18, 19, 0, 307, 308, 309, 20, 0, 310,
2334 311, 312, 21, 313, 314, 1336, 23, 1337, 0, 0,
2335 315, 316, 317, 318, 319, 26, 0, 1338, 321, 733,
2336 0, 1339, 322, 0, 0, 0, 0, 0, 323, 0,
80048418
MM
2337 0, 324, 0, 0, 0, 0, 0, 0, 0, 325,
2338 326, 327, 0, 0, 0, 0, 0, 328, 329, 330,
eca1bd08
UD
2339 0, 0, 0, 331, 465, 1340, 301, 8, 9, 10,
2340 167, 12, 302, 303, 304, 466, 305, 14, 0, 0,
80048418 2341 332, 0, 0, 0, 0, 0, 0, 0, 0, 0,
eca1bd08
UD
2342 0, 16, 306, 17, 18, 19, 0, 307, 308, 309,
2343 20, 0, 310, 311, 312, 21, 313, 314, 0, 23,
2344 0, 0, 0, 315, 316, 317, 318, 319, 26, 0,
2345 27, 321, 0, 0, 0, 322, 0, 0, 0, 0,
2346 0, 323, 0, 0, 324, 0, 0, 0, 0, 0,
2347 0, 0, 325, 326, 327, 0, 0, 0, 0, 0,
2348 328, 329, 330, 0, 0, 878, 331, 301, 8, 9,
2349 10, 167, 12, 302, 303, 304, 0, 305, 14, 0,
2350 0, -799, 0, 332, 0, 0, 0, 0, 0, 0,
80048418
MM
2351 0, 0, 16, 306, 17, 18, 19, 0, 307, 308,
2352 309, 20, 0, 310, 311, 312, 21, 313, 314, 0,
2353 23, 0, 0, 0, 315, 316, 317, 318, 319, 26,
eca1bd08
UD
2354 0, 27, 321, 1556, 0, -789, 322, 0, 0, 0,
2355 0, 0, 323, 0, 0, 324, 0, 0, 0, 0,
2356 0, 0, 0, 325, 326, 327, 0, 0, 0, 0,
2357 0, 328, 329, 330, 0, 0, 736, 331, 866, 867,
80048418
MM
2358 868, 10, 0, 12, 482, 303, 304, 0, 305, 14,
2359 0, 0, 0, 0, 332, 0, 0, 0, 0, 0,
2360 0, 0, 0, 16, 306, 17, 0, 19, 0, 307,
2361 308, 309, 20, 0, 310, 311, 312, 21, 313, 314,
2362 0, 23, 0, 0, 0, 315, 316, 317, 318, 319,
2363 26, 0, 869, 870, 737, 0, 0, 322, 0, 0,
2364 0, 0, 0, 323, 0, 0, 324, 0, 0, 0,
2365 0, 0, 0, 0, 325, 326, 327, 0, 0, 0,
2366 0, 0, 328, 329, 330, 0, 0, 0, 331, 871,
eca1bd08
UD
2367 570, 0, 301, 8, 9, 10, 0, 12, 302, 303,
2368 304, 0, 305, 14, 1022, 332, 0, 0, 0, 0,
80048418 2369 0, 0, 0, 0, 0, 0, 0, 16, 306, 17,
eca1bd08 2370 18, 19, 0, 307, 308, 309, 20, 0, 310, 311,
80048418 2371 312, 21, 313, 314, 0, 23, 0, 0, 0, 315,
eca1bd08 2372 316, 317, 318, 319, 26, 0, 27, 321, -312, 0,
80048418 2373 0, 322, 0, 0, 0, 0, 0, 323, 0, 0,
eca1bd08
UD
2374 571, 0, 0, 0, 0, 0, 0, 0, 325, 326,
2375 572, 0, 0, 0, 0, 0, 328, 329, 330, 0,
2376 0, 736, 573, 866, 867, 868, 10, 0, 12, 482,
2377 303, 304, 0, 305, 14, 0, 0, 0, 0, 332,
2378 0, 0, 0, 0, 0, 0, 0, 0, 16, 306,
2379 17, 0, 19, 0, 307, 308, 309, 20, 0, 310,
2380 311, 312, 21, 313, 314, 0, 23, 0, 0, 0,
2381 315, 316, 317, 318, 319, 26, 0, 869, 870, 737,
2382 0, 0, 322, 0, 0, 0, 0, 0, 323, 0,
2383 0, 324, 0, 0, 0, 0, 0, 0, 0, 325,
2384 326, 327, 0, 0, 0, 0, 0, 328, 329, 330,
2385 0, 0, 0, 331, 871, 736, 0, 301, 8, 9,
2386 10, 0, 12, 482, 303, 304, 0, 305, 14, 0,
2387 332, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2388 0, 0, 16, 306, 17, 0, 19, 0, 307, 308,
2389 309, 20, 0, 310, 311, 312, 21, 313, 314, 0,
2390 23, 0, 0, 0, 315, 316, 317, 318, 319, 26,
2391 0, 27, 321, 737, 0, 0, 322, 0, 0, 0,
2392 0, 0, 323, 0, 0, 324, 0, 0, 0, 0,
2393 0, 0, 0, 325, 326, 327, 0, 0, 0, 0,
2394 0, 328, 329, 330, 0, 0, 0, 331, 736, 0,
2395 866, 867, 868, 10, 1230, 12, 482, 303, 304, 0,
2396 305, 14, 0, 0, 332, 0, 0, 0, 0, 0,
2397 0, 0, 0, 0, 0, 16, 306, 17, 0, 19,
2398 0, 307, 308, 309, 20, 0, 310, 311, 312, 21,
2399 313, 314, 0, 23, 0, 0, 0, 315, 316, 317,
2400 318, 319, 26, 0, 869, 870, 737, 0, 0, 322,
2401 0, 0, 0, 0, 0, 323, 0, 0, 324, 0,
2402 0, 0, 0, 0, 0, 0, 325, 326, 327, 0,
2403 0, 0, 0, 0, 328, 329, 330, 0, 0, 736,
2404 331, 866, 867, 868, 10, 0, 12, 482, 303, 304,
2405 0, 305, 14, 0, 0, 0, -482, 332, 0, 0,
2406 0, 0, 0, 0, 0, 0, 16, 306, 17, 0,
2407 19, 0, 307, 308, 309, 20, 0, 310, 311, 312,
2408 21, 313, 314, 0, 23, 0, 0, 0, 315, 316,
2409 317, 318, 319, 26, 0, 869, 870, 737, 0, 0,
2410 322, 0, 0, 0, 0, 0, 323, 0, 0, 324,
2411 0, 0, 0, 0, 0, 0, 0, 325, 326, 327,
2412 0, 0, 0, 0, 0, 328, 329, 330, 0, 0,
2413 570, 331, 7, 8, 9, 10, 0, 12, 302, 303,
2414 304, 0, 305, 14, 0, 0, 0, 1360, 332, 0,
2415 0, 0, 0, 0, 0, 0, 0, 16, 306, 17,
2416 18, 19, 0, 307, 308, 309, 20, 0, 310, 311,
2417 312, 21, 313, 314, 0, 23, 0, 0, 0, 315,
2418 316, 317, 318, 319, 26, 0, 27, 28, -312, 0,
2419 0, 322, 0, 0, 0, 0, 0, 323, 0, 0,
2420 1526, 0, 0, 0, 0, 0, 0, 0, 325, 326,
2421 1527, 0, 0, 0, 0, 0, 328, 329, 330, 0,
2422 0, 736, 1528, 301, 8, 9, 10, 0, 12, 482,
2423 303, 304, 0, 305, 14, 0, 0, 0, 0, 332,
2424 0, 0, 0, 0, 0, 0, 0, 0, 16, 306,
2425 17, 0, 19, 0, 307, 308, 309, 20, 0, 310,
2426 311, 312, 21, 313, 314, 0, 23, 0, 0, 0,
2427 315, 316, 317, 318, 319, 26, 0, 27, 321, 737,
2428 0, 0, 322, 0, 0, 0, 0, 0, 323, 0,
2429 0, 324, 0, 0, 0, 0, 0, 0, 0, 325,
2430 326, 327, 0, 0, 0, 0, 0, 328, 329, 330,
2431 0, 0, 878, 331, 301, 8, 9, 10, 0, 12,
2432 482, 303, 304, 0, 305, 14, 0, 0, 0, 0,
2433 332, 0, 0, 0, 0, 0, 0, 0, 0, 16,
2434 306, 17, 0, 19, 0, 307, 308, 309, 20, 0,
2435 310, 311, 312, 21, 313, 314, 0, 23, 0, 0,
2436 0, 315, 316, 317, 318, 319, 26, 0, 27, 321,
2437 0, 0, 0, 322, -789, 0, 0, 0, 0, 323,
2438 0, 0, 324, 0, 0, 0, 0, 0, 0, 0,
2439 325, 326, 327, 0, 0, 0, 0, 0, 328, 329,
2440 330, 0, 0, 1610, 331, 301, 8, 9, 10, 0,
2441 12, 302, 303, 304, 0, 305, 14, 0, 0, 0,
2442 0, 332, 0, 0, 0, 0, 0, 0, 0, 0,
80048418
MM
2443 16, 306, 17, 0, 19, 0, 307, 308, 309, 20,
2444 0, 310, 311, 312, 21, 313, 314, 0, 23, 0,
eca1bd08
UD
2445 0, 0, 315, 316, 317, 318, 319, 26, 0, 27,
2446 321, 0, 0, -197, 322, 0, 0, 0, 0, 0,
80048418
MM
2447 323, 0, 0, 324, 0, 0, 0, 0, 0, 0,
2448 0, 325, 326, 327, 0, 0, 0, 0, 0, 328,
eca1bd08 2449 329, 330, 0, 0, 878, 331, 301, 8, 9, 10,
80048418 2450 0, 12, 482, 303, 304, 0, 305, 14, 0, 0,
eca1bd08 2451 0, 0, 332, 0, 0, 0, 0, 0, 0, 0,
80048418
MM
2452 0, 16, 306, 17, 0, 19, 0, 307, 308, 309,
2453 20, 0, 310, 311, 312, 21, 313, 314, 0, 23,
2454 0, 0, 0, 315, 316, 317, 318, 319, 26, 0,
eca1bd08 2455 27, 321, 0, 0, 0, 322, 0, 0, 0, 0,
80048418
MM
2456 0, 323, 0, 0, 324, 0, 0, 0, 0, 0,
2457 0, 0, 325, 326, 327, 0, 0, 0, 0, 0,
eca1bd08
UD
2458 328, 329, 330, 0, 0, 972, 331, 301, 8, 9,
2459 10, 0, 12, 482, 303, 304, 0, 305, 14, 0,
2460 0, -789, 0, 332, 0, 0, 0, 0, 0, 0,
2461 0, 0, 16, 306, 17, 0, 19, 0, 307, 308,
80048418
MM
2462 309, 20, 0, 310, 311, 312, 21, 313, 314, 0,
2463 23, 0, 0, 0, 315, 316, 317, 318, 319, 26,
eca1bd08
UD
2464 0, 27, 321, 0, 0, 0, 322, 0, 0, 0,
2465 0, 0, 323, 0, 0, 324, 0, 0, 0, 0,
2466 0, 0, 0, 325, 326, 327, 0, 0, 0, 0,
2467 0, 328, 329, 330, 0, 0, 974, 331, 301, 8,
80048418
MM
2468 9, 10, 0, 12, 482, 303, 304, 0, 305, 14,
2469 0, 0, 0, 0, 332, 0, 0, 0, 0, 0,
2470 0, 0, 0, 16, 306, 17, 0, 19, 0, 307,
2471 308, 309, 20, 0, 310, 311, 312, 21, 313, 314,
2472 0, 23, 0, 0, 0, 315, 316, 317, 318, 319,
eca1bd08 2473 26, 0, 27, 321, 0, 0, 0, 322, 0, 0,
80048418
MM
2474 0, 0, 0, 323, 0, 0, 324, 0, 0, 0,
2475 0, 0, 0, 0, 325, 326, 327, 0, 0, 0,
eca1bd08 2476 0, 0, 328, 329, 330, 0, 0, 1574, 331, 301,
80048418
MM
2477 8, 9, 10, 0, 12, 482, 303, 304, 0, 305,
2478 14, 0, 0, 0, 0, 332, 0, 0, 0, 0,
2479 0, 0, 0, 0, 16, 306, 17, 0, 19, 0,
2480 307, 308, 309, 20, 0, 310, 311, 312, 21, 313,
2481 314, 0, 23, 0, 0, 0, 315, 316, 317, 318,
eca1bd08 2482 319, 26, 0, 27, 321, 0, 0, 0, 322, 0,
80048418
MM
2483 0, 0, 0, 0, 323, 0, 0, 324, 0, 0,
2484 0, 0, 0, 0, 0, 325, 326, 327, 0, 0,
eca1bd08
UD
2485 0, 0, 0, 328, 329, 330, 0, 0, 0, 331,
2486 301, 8, 9, 10, 0, 12, 482, 303, 304, 0,
80048418
MM
2487 305, 14, 0, 0, 0, 0, 332, 0, 0, 0,
2488 0, 0, 0, 0, 0, 16, 306, 17, 0, 19,
2489 0, 307, 308, 309, 20, 0, 310, 311, 312, 21,
2490 313, 314, 0, 23, 0, 0, 0, 315, 316, 317,
eca1bd08 2491 318, 319, 26, 0, 27, 321, 0, 0, 0, 322,
80048418
MM
2492 0, 0, 0, 0, 0, 323, 0, 0, 324, 0,
2493 0, 0, 0, 0, 0, 0, 325, 326, 327, 0,
eca1bd08 2494 0, 0, 0, 0, 328, 329, 330, 0, 0, 0,
80048418 2495 331, 301, 8, 9, 10, 0, 12, 482, 303, 304,
eca1bd08 2496 0, 305, 14, 0, 0, 0, 0, 332, 483, 0,
80048418
MM
2497 0, 0, 0, 0, 0, 0, 16, 306, 17, 0,
2498 19, 0, 307, 308, 309, 20, 0, 310, 311, 312,
2499 21, 313, 314, 0, 23, 0, 0, 0, 315, 316,
2500 317, 318, 319, 26, 0, 27, 321, 0, 0, 0,
2501 322, 0, 0, 0, 0, 0, 323, 0, 0, 324,
2502 0, 0, 0, 0, 0, 0, 0, 325, 326, 327,
2503 0, 0, 0, 0, 0, 328, 329, 330, 0, 0,
eca1bd08
UD
2504 0, 331, 301, 8, 9, 10, 0, 12, 482, 303,
2505 304, 0, 305, 14, 0, 0, 0, 0, 332, 788,
80048418
MM
2506 0, 0, 0, 0, 0, 0, 0, 16, 306, 17,
2507 0, 19, 0, 307, 308, 309, 20, 0, 310, 311,
2508 312, 21, 313, 314, 0, 23, 0, 0, 0, 315,
2509 316, 317, 318, 319, 26, 0, 27, 321, 0, 0,
2510 0, 322, 0, 0, 0, 0, 0, 323, 0, 0,
2511 324, 0, 0, 0, 0, 0, 0, 0, 325, 326,
2512 327, 0, 0, 0, 0, 0, 328, 329, 330, 0,
eca1bd08 2513 0, 0, 331, 301, 8, 9, 10, 0, 12, 482,
80048418 2514 303, 304, 0, 305, 14, 0, 0, 0, 0, 332,
eca1bd08 2515 918, 0, 0, 0, 0, 0, 0, 0, 16, 306,
80048418
MM
2516 17, 0, 19, 0, 307, 308, 309, 20, 0, 310,
2517 311, 312, 21, 313, 314, 0, 23, 0, 0, 0,
2518 315, 316, 317, 318, 319, 26, 0, 27, 321, 0,
2519 0, 0, 322, 0, 0, 0, 0, 0, 323, 0,
2520 0, 324, 0, 0, 0, 0, 0, 0, 0, 325,
2521 326, 327, 0, 0, 0, 0, 0, 328, 329, 330,
eca1bd08 2522 0, 0, 0, 331, 301, 8, 9, 10, 0, 12,
80048418 2523 482, 303, 304, 0, 305, 14, 0, 0, 0, 0,
eca1bd08 2524 332, 939, 0, 0, 0, 0, 0, 0, 0, 16,
80048418
MM
2525 306, 17, 0, 19, 0, 307, 308, 309, 20, 0,
2526 310, 311, 312, 21, 313, 314, 0, 23, 0, 0,
2527 0, 315, 316, 317, 318, 319, 26, 0, 27, 321,
2528 0, 0, 0, 322, 0, 0, 0, 0, 0, 323,
2529 0, 0, 324, 0, 0, 0, 0, 0, 0, 0,
2530 325, 326, 327, 0, 0, 0, 0, 0, 328, 329,
eca1bd08 2531 330, 0, 0, 0, 331, 0, 0, 0, 0, 0,
6eabb241 2532 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
eca1bd08
UD
2533 0, 332, 1168, 1322, 1323, 1324, 10, 167, 12, 302,
2534 303, 304, 0, 305, 14, 1325, 0, 1326, 1327, 1328,
2535 1329, 1330, 1331, 1332, 1333, 1334, 1335, 15, 16, 306,
2536 17, 18, 19, 0, 307, 308, 309, 20, 0, 310,
2537 311, 312, 21, 313, 314, 1336, 23, 1337, 0, 0,
2538 315, 316, 317, 318, 319, 26, 0, 1338, 321, 733,
2539 0, 1339, 322, 0, 0, 0, 0, 0, 323, 0,
2540 0, 324, 0, 0, 0, 0, 0, 0, 0, 325,
2541 326, 327, 0, 0, 0, 0, 0, 328, 329, 330,
2542 0, 0, 0, 331, 0, 1340, 0, 0, 0, 0,
2543 0, 0, 0, 0, 0, 0, 0, 0, 0, 1464,
2544 332, 1322, 1323, 1324, 10, 167, 12, 302, 303, 304,
2545 0, 305, 14, 1325, 0, 1326, 1327, 1328, 1329, 1330,
2546 1331, 1332, 1333, 1334, 1335, 15, 16, 306, 17, 18,
2547 19, 0, 307, 308, 309, 20, 0, 310, 311, 312,
2548 21, 313, 314, 1336, 23, 1337, 0, 0, 315, 316,
2549 317, 318, 319, 26, 0, 1338, 321, 733, 0, 1339,
2550 322, 0, 0, 0, 0, 0, 323, 0, 0, 324,
2551 0, 0, 0, 0, 0, 0, 0, 325, 326, 327,
2552 0, 0, 0, 0, 0, 328, 329, 330, 0, 0,
2553 0, 331, 0, 1340, 0, 1322, 1323, 1324, 10, 167,
2554 12, 302, 303, 304, 0, 305, 14, 1325, 332, 1326,
80048418
MM
2555 1327, 1328, 1329, 1330, 1331, 1332, 1333, 1334, 1335, 15,
2556 16, 306, 17, 18, 19, 0, 307, 308, 309, 20,
2557 0, 310, 311, 312, 21, 313, 314, 1336, 23, 1337,
2558 0, 0, 315, 316, 317, 318, 319, 26, 0, 1338,
eca1bd08 2559 321, 1583, 0, 1339, 322, 0, 0, 0, 0, 0,
80048418
MM
2560 323, 0, 0, 324, 0, 0, 0, 0, 0, 0,
2561 0, 325, 326, 327, 0, 0, 0, 0, 0, 328,
2562 329, 330, 0, 0, 0, 331, 0, 1340, 0, 1322,
2563 1323, 1324, 10, 167, 12, 302, 303, 304, 0, 305,
2564 14, 1325, 332, 1326, 1327, 1328, 1329, 1330, 1331, 1332,
2565 1333, 1334, 1335, 15, 16, 306, 17, 18, 19, 0,
2566 307, 308, 309, 20, 0, 310, 311, 312, 21, 313,
2567 314, 1336, 23, 1337, 0, 0, 315, 316, 317, 318,
eca1bd08 2568 319, 26, 0, 1338, 321, 0, 0, 1339, 322, 0,
80048418
MM
2569 0, 0, 0, 0, 323, 0, 0, 324, 0, 0,
2570 0, 0, 0, 0, 0, 325, 326, 327, 0, 0,
2571 0, 0, 0, 328, 329, 330, 0, 0, 0, 331,
eca1bd08
UD
2572 0, 1340, 301, 8, 9, 10, 167, 12, 302, 303,
2573 304, 466, 305, 14, 0, 0, 332, 0, 0, 0,
2574 0, 0, 0, 0, 0, 0, 0, 16, 306, 17,
2575 18, 19, 0, 307, 308, 309, 20, 0, 310, 311,
2576 312, 21, 313, 314, 0, 23, 0, 636, 0, 315,
2577 316, 317, 318, 319, 26, 0, 27, 321, 0, 0,
2578 0, 322, 0, 0, 0, 0, 0, 323, 0, 0,
2579 949, 0, 0, 0, 0, 0, 0, 0, 325, 326,
2580 950, 0, 0, 0, 0, 0, 328, 329, 330, 0,
2581 0, 0, 951, 640, 7, 8, 9, 10, 167, 12,
2582 302, 303, 304, 466, 305, 14, 0, 0, 0, 332,
2583 0, 0, 0, 0, 0, 0, 0, 0, 0, 16,
2584 306, 17, 18, 19, 0, 307, 308, 309, 20, 0,
2585 310, 311, 312, 21, 313, 314, 0, 23, 0, 636,
2586 0, 315, 316, 317, 318, 319, 26, 0, 27, 28,
2587 0, 0, 0, 322, 0, 0, 0, 0, 0, 323,
2588 0, 0, 1036, 0, 0, 0, 0, 0, 0, 0,
2589 325, 326, 1037, 0, 0, 0, 0, 0, 328, 329,
2590 330, 0, 0, 0, 1038, 640, 301, 8, 9, 10,
2591 0, 12, 302, 303, 304, 0, 305, 14, 0, 0,
2592 0, 332, 0, 0, 0, 0, 0, 0, 0, 0,
80048418
MM
2593 0, 16, 306, 17, 18, 19, 0, 307, 308, 309,
2594 20, 0, 310, 311, 312, 21, 313, 314, 0, 23,
2595 0, 636, 0, 315, 316, 317, 318, 319, 26, 0,
eca1bd08 2596 27, 321, 0, 0, 0, 0, 0, 0, 0, 0,
80048418
MM
2597 0, 323, 0, 0, 949, 0, 0, 0, 0, 0,
2598 0, 0, 325, 326, 950, 0, 0, 0, 0, 0,
2599 328, 329, 330, 0, 0, 0, 951, 640, 7, 8,
eca1bd08 2600 9, 10, 0, 12, 302, 303, 304, 0, 305, 14,
80048418
MM
2601 0, 0, 0, 332, 0, 0, 0, 0, 0, 0,
2602 0, 0, 0, 16, 306, 17, 18, 19, 0, 307,
2603 308, 309, 20, 0, 310, 311, 312, 21, 313, 314,
2604 0, 23, 0, 636, 0, 315, 316, 317, 318, 319,
eca1bd08 2605 26, 0, 27, 28, 0, 0, 0, 0, 0, 0,
80048418
MM
2606 0, 0, 0, 323, 0, 0, 1036, 0, 0, 0,
2607 0, 0, 0, 0, 325, 326, 1037, 0, 0, 0,
2608 0, 0, 328, 329, 330, 0, 0, 0, 1038, 640,
eca1bd08 2609 301, 8, 9, 10, 0, 12, 482, 303, 304, 0,
80048418
MM
2610 305, 14, 0, 0, 0, 332, 0, 0, 0, 0,
2611 0, 0, 0, 0, 0, 16, 306, 17, 18, 19,
2612 0, 307, 308, 309, 20, 0, 310, 311, 312, 21,
eca1bd08
UD
2613 313, 314, 0, 23, 0, 0, 0, 315, 316, 317,
2614 318, 319, 26, 0, 27, 321, 0, 0, 0, 322,
2615 0, 0, 0, 0, 0, 323, 0, 0, 571, 0,
2616 0, 0, 0, 0, 0, 0, 325, 326, 572, 0,
80048418 2617 0, 0, 0, 0, 328, 329, 330, 0, 0, 0,
eca1bd08
UD
2618 573, 301, 8, 9, 10, 0, 12, 482, 303, 304,
2619 0, 305, 14, 0, 0, 0, 0, 332, 0, 0,
2620 0, 0, 0, 0, 0, 0, 16, 306, 17, 0,
2621 19, 0, 307, 308, 309, 20, 0, 310, 311, 312,
2622 21, 313, 314, 0, 23, 0, 0, 0, 315, 316,
2623 317, 318, 319, 26, 0, 27, 321, 0, 0, 1437,
2624 322, 0, 0, 0, 0, 0, 323, 0, 0, 324,
2625 0, 0, 0, 0, 0, 0, 0, 325, 326, 327,
2626 0, 0, 0, 0, 0, 328, 329, 330, 0, 0,
2627 0, 331, 301, 8, 9, 10, 167, 12, 302, 303,
2628 304, 0, 305, 14, 0, 0, 0, 0, 332, 0,
80048418
MM
2629 0, 0, 0, 0, 0, 0, 0, 16, 306, 17,
2630 18, 19, 0, 307, 308, 309, 20, 0, 310, 311,
eca1bd08
UD
2631 312, 21, 313, 314, 0, 23, 0, 0, 0, 315,
2632 316, 317, 318, 319, 26, 0, 27, 321, 0, 0,
80048418 2633 0, 0, 0, 0, 0, 0, 0, 323, 0, 0,
eca1bd08
UD
2634 324, 0, 0, 0, 0, 0, 0, 0, 325, 326,
2635 327, 0, 0, 0, 0, 0, 328, 329, 330, 0,
2636 0, 0, 331, 7, 8, 9, 10, 0, 12, 482,
2637 303, 304, 0, 305, 14, 0, 0, 0, 0, 332,
2638 0, 0, 0, 0, 0, 0, 0, 0, 16, 306,
2639 17, 18, 19, 0, 307, 308, 309, 20, 0, 310,
2640 311, 312, 21, 313, 314, 0, 23, 0, 0, 0,
2641 315, 316, 317, 318, 319, 26, 0, 27, 28, 0,
2642 0, 0, 322, 0, 0, 0, 0, 0, 323, 0,
2643 0, 1526, 0, 0, 0, 0, 0, 0, 0, 325,
2644 326, 1527, 0, 0, 0, 0, 0, 328, 329, 330,
2645 0, 0, 0, 1528, 301, 8, 9, 10, 0, 12,
2646 302, 303, 304, 0, 305, 14, 0, 0, 0, 0,
2647 332, 0, 0, 0, 0, 0, 0, 0, 0, 16,
2648 306, 17, 0, 19, 0, 307, 308, 309, 20, 0,
80048418 2649 310, 311, 312, 21, 313, 314, 0, 23, 0, 0,
eca1bd08 2650 0, 315, 316, 317, 318, 319, 26, 0, 320, 321,
80048418 2651 0, 0, 0, 322, 0, 0, 0, 0, 0, 323,
eca1bd08
UD
2652 0, 0, 324, 0, 0, 0, 0, 0, 0, 0,
2653 325, 326, 327, 0, 0, 0, 0, 0, 328, 329,
2654 330, 0, 0, 0, 331, 301, 8, 9, 10, 0,
2655 12, 302, 303, 304, 0, 305, 14, 0, 0, 0,
80048418
MM
2656 0, 332, 0, 0, 0, 0, 0, 0, 0, 0,
2657 16, 306, 17, 0, 19, 0, 307, 308, 309, 20,
2658 0, 310, 311, 312, 21, 313, 314, 0, 23, 0,
2659 0, 0, 315, 316, 317, 318, 319, 26, 0, 27,
eca1bd08 2660 321, 0, 0, 0, 322, 0, 0, 0, 0, 0,
80048418
MM
2661 323, 0, 0, 324, 0, 0, 0, 0, 0, 0,
2662 0, 325, 326, 327, 0, 0, 0, 0, 0, 328,
2663 329, 330, 0, 0, 0, 331, 301, 8, 9, 10,
eca1bd08 2664 0, 12, 482, 303, 304, 0, 305, 14, 0, 0,
80048418 2665 0, 0, 332, 0, 0, 0, 0, 0, 0, 0,
eca1bd08 2666 0, 16, 306, 17, 0, 19, 0, 307, 308, 309,
80048418
MM
2667 20, 0, 310, 311, 312, 21, 313, 314, 0, 23,
2668 0, 0, 0, 315, 316, 317, 318, 319, 26, 0,
eca1bd08 2669 27, 321, 0, 0, 0, 322, 0, 0, 0, 0,
80048418
MM
2670 0, 323, 0, 0, 324, 0, 0, 0, 0, 0,
2671 0, 0, 325, 326, 327, 0, 0, 0, 0, 0,
eca1bd08 2672 328, 329, 330, 0, 0, 0, 331, 301, 8, 9,
80048418
MM
2673 10, 0, 12, 482, 303, 304, 0, 305, 14, 0,
2674 0, 0, 0, 332, 0, 0, 0, 0, 0, 0,
eca1bd08 2675 0, 0, 16, 306, 17, 0, 19, 0, 307, 308,
80048418
MM
2676 309, 20, 0, 310, 311, 312, 21, 313, 314, 0,
2677 23, 0, 0, 0, 315, 316, 317, 318, 319, 26,
eca1bd08
UD
2678 0, 27, 321, 585, 0, 0, 0, 0, 0, 0,
2679 0, 0, 323, 0, 0, 324, 0, 0, 0, 0,
2680 0, 0, 0, 325, 326, 327, 0, 0, 0, 0,
2681 0, 328, 329, 330, 0, 0, 0, 586, 301, 8,
2682 9, 10, 0, 12, 482, 303, 304, 0, 305, 14,
80048418
MM
2683 0, 0, 0, 0, 332, 0, 0, 0, 0, 0,
2684 0, 0, 0, 16, 306, 17, 0, 19, 0, 307,
2685 308, 309, 20, 0, 310, 311, 312, 21, 313, 314,
2686 0, 23, 0, 0, 0, 315, 316, 317, 318, 319,
eca1bd08 2687 26, 0, 27, 321, 0, 0, 0, 0, 0, 0,
80048418
MM
2688 0, 0, 0, 323, 0, 0, 324, 0, 0, 0,
2689 0, 0, 0, 0, 325, 326, 327, 0, 0, 0,
eca1bd08 2690 0, 0, 328, 329, 330, 0, 0, 0, 331, 624,
80048418 2691 301, 8, 9, 10, 0, 12, 482, 303, 304, 0,
eca1bd08
UD
2692 305, 14, 0, 0, 0, 332, 0, 0, 0, 0,
2693 0, 0, 0, 0, 0, 16, 306, 17, 18, 19,
80048418
MM
2694 0, 307, 308, 309, 20, 0, 310, 311, 312, 21,
2695 313, 314, 0, 23, 0, 0, 0, 315, 316, 317,
eca1bd08
UD
2696 318, 319, 26, 0, 27, 321, 0, 0, 0, 0,
2697 0, 0, 0, 0, 0, 323, 0, 0, 571, 0,
2698 0, 0, 0, 0, 0, 0, 325, 326, 572, 0,
80048418 2699 0, 0, 0, 0, 328, 329, 330, 0, 0, 0,
eca1bd08 2700 573, 1187, 8, 9, 10, 0, 12, 482, 303, 304,
80048418
MM
2701 0, 305, 14, 0, 0, 0, 0, 332, 0, 0,
2702 0, 0, 0, 0, 0, 0, 16, 306, 17, 0,
2703 19, 0, 307, 308, 309, 20, 0, 310, 311, 312,
2704 21, 313, 314, 0, 23, 0, 0, 0, 315, 316,
eca1bd08
UD
2705 317, 318, 319, 26, 0, 27, 321, 0, 0, 0,
2706 322, 0, 0, 0, 0, 0, 323, 0, 0, 324,
80048418
MM
2707 0, 0, 0, 0, 0, 0, 0, 325, 326, 327,
2708 0, 0, 0, 0, 0, 328, 329, 330, 0, 0,
eca1bd08 2709 0, 331, 7, 8, 9, 10, 0, 12, 302, 303,
80048418
MM
2710 304, 0, 305, 14, 0, 0, 0, 0, 332, 0,
2711 0, 0, 0, 0, 0, 0, 0, 16, 306, 17,
eca1bd08 2712 18, 19, 0, 307, 308, 309, 20, 0, 310, 311,
80048418 2713 312, 21, 313, 314, 0, 23, 0, 0, 0, 315,
eca1bd08 2714 316, 317, 318, 319, 26, 0, 27, 28, 0, 0,
80048418 2715 0, 0, 0, 0, 0, 0, 0, 323, 0, 0,
eca1bd08
UD
2716 1526, 0, 0, 0, 0, 0, 0, 0, 325, 326,
2717 1527, 0, 0, 0, 0, 0, 328, 329, 330, 0,
2718 0, 0, 1528, 301, 8, 9, 10, 0, 12, 482,
2719 303, 304, 0, 305, 14, 0, 0, 0, 0, 332,
2720 0, 0, 0, 0, 0, 0, 0, 0, 16, 306,
2721 17, 0, 19, 0, 307, 308, 309, 20, 0, 310,
2722 311, 312, 21, 313, 314, 0, 23, 0, 0, 0,
2723 315, 316, 317, 318, 319, 26, 0, 27, 321, 0,
2724 0, 0, 0, 0, 0, 0, 0, 0, 323, 0,
2725 0, 324, 0, 0, 0, 0, 0, 0, 0, 325,
2726 326, 327, 0, 0, 0, 0, 0, 328, 329, 330,
2727 0, 0, 0, 553, 301, 8, 9, 10, 0, 12,
2728 482, 303, 304, 0, 305, 14, 0, 0, 0, 0,
2729 332, 0, 0, 0, 0, 0, 0, 0, 0, 16,
2730 306, 17, 0, 19, 0, 307, 308, 309, 20, 0,
80048418
MM
2731 310, 311, 312, 21, 313, 314, 0, 23, 0, 0,
2732 0, 315, 316, 317, 318, 319, 26, 0, 27, 321,
2733 0, 0, 0, 0, 0, 0, 0, 0, 0, 323,
eca1bd08
UD
2734 0, 0, 324, 0, 0, 0, 0, 0, 0, 0,
2735 325, 326, 327, 0, 0, 0, 0, 0, 328, 329,
2736 330, 0, 0, 0, 555, 301, 8, 9, 10, 0,
80048418
MM
2737 12, 482, 303, 304, 0, 305, 14, 0, 0, 0,
2738 0, 332, 0, 0, 0, 0, 0, 0, 0, 0,
2739 16, 306, 17, 0, 19, 0, 307, 308, 309, 20,
2740 0, 310, 311, 312, 21, 313, 314, 0, 23, 0,
2741 0, 0, 315, 316, 317, 318, 319, 26, 0, 27,
eca1bd08 2742 321, 0, 0, 0, 0, 0, 0, 0, 0, 0,
80048418
MM
2743 323, 0, 0, 324, 0, 0, 0, 0, 0, 0,
2744 0, 325, 326, 327, 0, 0, 0, 0, 0, 328,
eca1bd08
UD
2745 329, 330, 0, 0, 0, 331, 0, 0, 0, 0,
2746 0, 0, 0, 0, 0, 0, 0, 0, 0, 678,
2747 0, 0, 332, 588, 589, 590, 591, 592, 593, 594,
2748 595, 596, 597, 598, 599, 600, 601, 602, 603, 604,
2749 605, 606, 607, 608, 609, 1118, 0, 0, 0, 588,
80048418
MM
2750 589, 590, 591, 592, 593, 594, 595, 596, 597, 598,
2751 599, 600, 601, 602, 603, 604, 605, 606, 607, 608,
eca1bd08 2752 609, 1591, 588, 589, 590, 591, 592, 593, 594, 595,
80048418 2753 596, 597, 598, 599, 600, 601, 602, 603, 604, 605,
eca1bd08
UD
2754 606, 607, 608, 609, 588, 589, 590, 591, 592, 593,
2755 594, 595, 596, 597, 598, 599, 600, 601, 602, 603,
2756 604, 605, 606, 607, 608, 609, 588, 589, 590, 591,
2757 592, 593, 594, 595, 596, 597, 598, 599, 0, 601,
80048418 2758 602, 603, 604, 605, 606, 607, 608, 609
861bb6c1
JL
2759};
2760
2761static const short yycheck[] = { 4,
eca1bd08
UD
2762 175, 126, 161, 4, 23, 149, 150, 57, 210, 4,
2763 174, 524, 42, 55, 80, 307, 308, 731, 252, 176,
2764 403, 357, 351, 461, 583, 305, 306, 357, 907, 59,
2765 35, 133, 324, 403, 35, 327, 42, 42, 330, 156,
2766 35, 333, 42, 403, 124, 337, 248, 42, 707, 14,
2767 84, 374, 57, 345, 662, 244, 210, 441, 80, 339,
2768 190, 1419, 4, 133, 134, 219, 90, 72, 92, 1341,
2769 815, 42, 817, 42, 1509, 134, 218, 219, 144, 84,
2770 825, 60, 1508, 88, 456, 90, 136, 92, 30, 31,
2771 11, 9, 1634, 35, 1507, 297, 479, 4, 4, 11,
2772 42, 33, 107, 108, 1531, 63, 714, 11, 713, 479,
2773 60, 61, 38, 137, 4, 5, 1658, 75, 83, 9,
2774 1351, 358, 359, 357, 4, 1552, 176, 1358, 35, 35,
2775 109, 136, 137, 175, 139, 42, 42, 62, 204, 169,
2776 1553, 106, 84, 55, 62, 474, 55, 1556, 55, 351,
2777 57, 63, 46, 1588, 63, 35, 485, 4, 5, 165,
2778 165, 12, 42, 169, 169, 55, 1, 57, 58, 169,
2779 7, 176, 409, 410, 169, 1250, 1251, 109, 831, 1595,
2780 210, 71, 76, 109, 837, 190, 1613, 108, 218, 219,
2781 75, 81, 1267, 0, 136, 48, 108, 1606, 169, 108,
2782 169, 38, 49, 1, 108, 577, 33, 149, 150, 60,
2783 57, 58, 63, 4, 4, 140, 1642, 730, 248, 1635,
2784 63, 63, 55, 165, 59, 0, 48, 169, 63, 136,
2785 63, 156, 75, 140, 81, 1593, 1508, 1, 48, 4,
2786 93, 263, 48, 61, 35, 35, 348, 48, 190, 4,
2787 5, 42, 194, 195, 1667, 108, 136, 108, 165, 1138,
2788 95, 59, 169, 169, 65, 63, 108, 297, 175, 176,
2789 35, 93, 94, 3, 4, 5, 6, 42, 348, 571,
2790 572, 1512, 510, 93, 249, 165, 108, 93, 213, 169,
2791 449, 109, 93, 298, 947, 59, 221, 95, 108, 527,
2792 27, 48, 57, 58, 31, 1380, 386, 48, 75, 80,
2793 344, 361, 42, 238, 1389, 1390, 223, 1392, 65, 84,
2794 214, 351, 149, 150, 151, 55, 331, 57, 58, 659,
2795 989, 1562, 60, 104, 61, 394, 360, 61, 65, 344,
2796 700, 725, 726, 60, 48, 136, 93, 352, 55, 493,
2797 494, 182, 93, 507, 49, 360, 361, 93, 963, 89,
2798 732, 966, 133, 405, 506, 507, 12, 690, 75, 196,
2799 48, 136, 514, 144, 165, 60, 60, 407, 169, 496,
2800 108, 4, 109, 1614, 526, 109, 350, 351, 352, 93,
2801 94, 108, 357, 998, 999, 629, 48, 61, 403, 61,
2802 165, 406, 344, 545, 169, 3, 4, 5, 403, 1062,
2803 60, 1290, 35, 443, 60, 93, 94, 63, 93, 361,
2804 48, 1074, 4, 108, 108, 190, 663, 63, 63, 471,
2805 108, 473, 474, 204, 993, 60, 61, 443, 443, 75,
2806 75, 93, 94, 443, 474, 109, 1054, 109, 1, 60,
2807 3, 4, 5, 35, 361, 1108, 108, 1110, 108, 57,
2808 58, 403, 55, 1538, 1539, 93, 94, 472, 239, 48,
2809 475, 909, 48, 48, 479, 525, 506, 507, 48, 55,
2810 108, 361, 75, 81, 514, 1, 48, 3, 4, 5,
2811 48, 25, 263, 27, 518, 48, 526, 108, 405, 75,
2812 48, 443, 55, 525, 57, 58, 39, 471, 48, 473,
2813 474, 475, 59, 518, 93, 545, 63, 93, 93, 94,
2814 525, 1266, 55, 93, 94, 59, 451, 551, 48, 63,
2815 93, 93, 48, 108, 75, 93, 443, 479, 12, 55,
2816 93, 57, 58, 59, 60, 93, 551, 1060, 553, 48,
2817 555, 493, 494, 93, 94, 560, 561, 562, 563, 564,
2818 724, 95, 487, 443, 471, 472, 473, 474, 573, 75,
2819 361, 496, 479, 93, 1179, 1180, 60, 93, 583, 344,
2820 487, 586, 60, 525, 93, 356, 60, 621, 513, 63,
2821 48, 65, 76, 500, 93, 25, 361, 27, 76, 48,
2822 78, 508, 4, 5, 48, 1043, 1044, 990, 8, 9,
2823 847, 800, 801, 59, 14, 620, 621, 806, 525, 525,
2824 990, 957, 516, 665, 61, 48, 918, 957, 698, 59,
2825 990, 107, 691, 63, 639, 93, 666, 37, 403, 698,
2826 25, 646, 413, 25, 93, 525, 46, 1019, 48, 93,
2827 792, 97, 443, 855, 61, 57, 58, 949, 950, 55,
2828 48, 3, 4, 5, 706, 95, 493, 494, 495, 693,
2829 93, 9, 48, 953, 12, 48, 706, 59, 443, 621,
2830 699, 63, 4, 5, 809, 650, 48, 753, 693, 1202,
2831 1128, 1129, 65, 93, 63, 637, 638, 639, 3, 4,
2832 5, 831, 60, 61, 646, 93, 55, 837, 55, 31,
2833 48, 730, 31, 95, 479, 57, 58, 93, 60, 63,
2834 93, 94, 60, 957, 62, 63, 75, 65, 75, 3,
2835 1243, 93, 6, 55, 525, 57, 58, 93, 76, 108,
2836 78, 59, 706, 748, 1036, 1037, 983, 65, 60, 71,
2837 755, 522, 57, 58, 59, 93, 94, 31, 665, 81,
2838 525, 55, 792, 75, 76, 815, 78, 817, 42, 63,
2839 108, 93, 822, 823, 55, 825, 55, 548, 1216, 45,
2840 822, 75, 63, 57, 58, 3, 4, 5, 6, 55,
2841 500, 59, 58, 815, 75, 817, 75, 71, 508, 706,
2842 75, 823, 1240, 825, 746, 747, 748, 81, 832, 833,
2843 815, 835, 817, 755, 1143, 89, 55, 947, 823, 93,
2844 825, 55, 59, 33, 42, 855, 831, 832, 833, 63,
2845 835, 49, 837, 3, 4, 5, 778, 779, 955, 57,
2846 58, 75, 1006, 55, 1282, 844, 845, 846, 3, 4,
2847 5, 55, 7, 8, 9, 55, 621, 55, 1150, 76,
2848 25, 78, 27, 634, 108, 1102, 1103, 1104, 1057, 1058,
2849 1059, 89, 108, 815, 639, 817, 31, 75, 649, 49,
2850 76, 646, 37, 825, 1028, 1029, 108, 57, 58, 831,
2851 11, 855, 1036, 1037, 59, 837, 1144, 1145, 63, 1147,
2852 55, 906, 57, 58, 59, 910, 108, 1621, 815, 815,
2853 817, 817, 48, 97, 1031, 822, 823, 109, 825, 825,
2854 61, 748, 4, 5, 818, 819, 48, 9, 755, 93,
2855 95, 1369, 1062, 55, 828, 815, 941, 817, 3, 149,
2856 150, 151, 947, 61, 1074, 825, 951, 75, 103, 104,
2857 105, 87, 88, 75, 55, 91, 92, 93, 94, 25,
2858 63, 27, 63, 94, 795, 929, 111, 1033, 1406, 60,
2859 61, 93, 936, 55, 75, 57, 58, 94, 1108, 93,
2860 1110, 93, 753, 748, 93, 990, 196, 992, 993, 71,
2861 755, 955, 957, 59, 55, 990, 75, 63, 75, 81,
2862 60, 61, 63, 75, 929, 947, 75, 949, 950, 951,
2863 781, 936, 94, 60, 75, 1065, 3, 4, 5, 6,
2864 1086, 1350, 11, 1065, 815, 1030, 817, 108, 55, 95,
2865 955, 4, 5, 1038, 825, 1, 60, 3, 4, 5,
2866 6, 1046, 8, 60, 61, 1095, 84, 85, 990, 1341,
2867 815, 108, 817, 1170, 108, 42, 190, 1062, 1430, 108,
2868 825, 1025, 49, 1300, 1086, 75, 831, 1031, 75, 1074,
2869 57, 58, 837, 1095, 1446, 55, 42, 4, 5, 75,
2870 4, 5, 55, 49, 57, 58, 1028, 1029, 1030, 55,
2871 1095, 57, 58, 108, 1036, 1037, 1038, 48, 71, 55,
2872 1025, 1218, 89, 1108, 55, 1110, 1031, 63, 81, 109,
2873 3, 4, 5, 1118, 7, 8, 9, 109, 1025, 75,
2874 1062, 94, 49, 89, 75, 49, 60, 61, 1152, 108,
2875 57, 58, 1074, 57, 58, 33, 108, 108, 31, 65,
2876 8, 9, 93, 65, 37, 108, 14, 1152, 175, 111,
2877 3, 4, 5, 1095, 81, 27, 60, 81, 1065, 1531,
2878 75, 65, 75, 1546, 57, 58, 1108, 75, 1110, 37,
2879 1175, 75, 76, 1348, 55, 1350, 1546, 108, 46, 111,
2880 1552, 111, 947, 1202, 1078, 956, 951, 958, 1095, 1095,
2881 1084, 1085, 1349, 59, 1088, 1089, 223, 108, 1092, 60,
2882 61, 1028, 1029, 1030, 57, 58, 1170, 1579, 1213, 1036,
2883 1037, 1038, 1213, 108, 1652, 1095, 1266, 108, 1223, 60,
2884 61, 1550, 3, 4, 5, 990, 7, 8, 9, 60,
2885 61, 1173, 1174, 1175, 1526, 1527, 1067, 1068, 55, 1261,
2886 8, 1613, 93, 48, 1266, 1170, 4, 5, 60, 65,
2887 109, 93, 150, 151, 1218, 109, 55, 61, 4, 5,
2888 37, 1266, 1033, 1094, 65, 1030, 1638, 65, 1099, 65,
2889 108, 1213, 108, 1038, 107, 108, 57, 58, 61, 1221,
2890 1222, 1223, 108, 493, 494, 495, 65, 3, 4, 5,
2891 6, 49, 63, 1218, 1236, 1237, 65, 1062, 196, 57,
2892 58, 111, 190, 49, 1095, 60, 1348, 1213, 1350, 1074,
2893 76, 57, 58, 108, 1239, 1086, 108, 14, 4, 5,
2894 1350, 4, 5, 81, 1266, 22, 42, 76, 462, 76,
2895 1095, 76, 108, 1213, 108, 81, 1341, 4, 5, 55,
2896 76, 57, 58, 1108, 1349, 1110, 1351, 63, 1550, 108,
2897 1351, 1258, 108, 1358, 108, 71, 1263, 1358, 191, 1266,
2898 1266, 1366, 48, 27, 1523, 81, 49, 31, 65, 55,
2899 63, 57, 58, 89, 57, 58, 63, 93, 405, 60,
2900 108, 63, 1526, 1527, 108, 71, 1266, 108, 55, 27,
2901 57, 58, 111, 31, 109, 81, 60, 61, 81, 1341,
2902 108, 65, 108, 94, 71, 1176, 111, 93, 94, 1351,
2903 1175, 3, 4, 5, 81, 89, 1358, 75, 552, 48,
2904 108, 111, 60, 61, 108, 1256, 1257, 124, 1259, 1260,
2905 108, 1262, 108, 331, 109, 1341, 108, 1601, 4, 5,
2906 108, 1348, 1349, 1350, 471, 1351, 473, 474, 1213, 109,
2907 61, 148, 1358, 30, 31, 60, 33, 49, 1223, 108,
2908 487, 1341, 65, 1468, 63, 57, 58, 60, 108, 496,
2909 60, 1351, 108, 500, 93, 1266, 93, 611, 1358, 45,
2910 57, 508, 59, 617, 93, 619, 620, 93, 65, 55,
2911 1261, 57, 58, 1387, 1388, 109, 108, 1502, 331, 8,
2912 108, 1266, 1507, 1508, 1509, 1469, 1507, 1512, 108, 1551,
2913 111, 1512, 33, 108, 108, 403, 65, 108, 55, 653,
2914 1550, 108, 111, 1528, 1466, 1467, 1468, 3, 4, 5,
2915 108, 63, 430, 431, 108, 3, 4, 5, 748, 108,
2916 108, 1546, 239, 240, 1469, 755, 1377, 1378, 1553, 108,
2917 108, 108, 1553, 48, 108, 252, 111, 1562, 108, 63,
2918 1502, 1562, 1456, 108, 141, 1507, 1508, 1509, 1532, 146,
2919 1512, 96, 149, 150, 151, 63, 1341, 61, 61, 55,
2920 9, 57, 58, 1588, 1526, 1527, 1351, 55, 61, 57,
2921 58, 479, 1363, 1358, 190, 16, 494, 495, 108, 176,
2922 108, 1507, 1508, 108, 1546, 182, 1512, 1532, 108, 1614,
2923 111, 1553, 108, 1614, 93, 93, 61, 194, 195, 196,
2924 1562, 61, 65, 3, 4, 5, 323, 1507, 1508, 55,
2925 1457, 93, 1512, 210, 93, 17, 61, 55, 665, 108,
2926 107, 218, 219, 108, 1551, 61, 1588, 1553, 1479, 1480,
2927 1481, 790, 3, 4, 5, 553, 1562, 555, 102, 108,
2928 4, 5, 1667, 11, 8, 9, 1667, 364, 61, 502,
2929 14, 108, 1614, 1553, 572, 573, 373, 57, 58, 706,
2930 61, 93, 1562, 260, 28, 61, 30, 1581, 586, 386,
2931 60, 830, 65, 37, 108, 11, 61, 836, 61, 1526,
2932 1527, 1528, 46, 1468, 1535, 1536, 57, 58, 1614, 108,
2933 108, 55, 11, 57, 58, 59, 3, 4, 5, 6,
2934 553, 61, 555, 61, 61, 1667, 61, 560, 3, 4,
2935 5, 6, 0, 0, 1614, 0, 170, 1502, 2, 35,
2936 573, 1444, 1507, 1508, 1509, 691, 169, 1512, 646, 93,
2937 990, 639, 165, 586, 331, 42, 1600, 590, 646, 823,
2938 12, 1667, 49, 443, 1202, 94, 1429, 42, 239, 1667,
2939 57, 58, 139, 300, 1605, 27, 910, 976, 737, 31,
2940 672, 1546, 57, 58, 1243, 618, 243, 1667, 1553, 1060,
2941 924, 624, 926, 1095, 928, 822, 48, 1562, 823, 1263,
2942 674, 969, 89, 942, 201, 944, 621, 640, 60, 61,
2943 348, 63, 124, 65, 89, 3, 4, 5, 1028, 1029,
2944 1030, 1351, 1214, 1588, 1638, 522, 1036, 1037, 1038, 406,
2945 407, 1633, 1621, 1567, 1366, 3, 4, 5, 6, 764,
2946 -1, 93, 94, 420, 978, -1, 423, 4, 5, 1614,
2947 748, -1, 429, 430, 431, -1, 108, 755, 435, -1,
2948 748, -1, -1, 31, -1, -1, 462, 755, -1, 57,
2949 58, 769, -1, -1, 42, -1, -1, -1, -1, 1013,
2950 48, 779, 780, -1, 3, 4, 5, 55, 585, 57,
2951 58, -1, 49, -1, -1, 472, -1, 474, -1, -1,
2952 57, 58, 1667, 71, -1, -1, -1, 3, 4, 5,
2953 6, 488, -1, 81, 491, -1, 493, 494, 495, -1,
2954 -1, 89, 499, -1, -1, 93, 94, -1, 505, 506,
2955 507, -1, 629, 510, -1, -1, 55, 514, 57, 58,
2956 59, -1, -1, 831, -1, -1, 42, -1, -1, 837,
2957 527, -1, 4, 5, -1, -1, 552, 9, -1, 55,
2958 -1, 57, 58, 4, 5, 61, -1, 63, 1107, -1,
2959 1109, 3, 4, 5, -1, 71, 553, -1, 555, 31,
2960 81, 82, 83, 84, 85, 81, 79, 80, 81, 82,
2961 83, 84, 85, 89, 571, 572, 573, 93, 1025, -1,
2962 -1, -1, 699, 55, 1031, 57, 58, -1, -1, 586,
2963 707, -1, -1, -1, 55, 611, 57, 58, -1, 71,
2964 -1, 617, -1, 619, 620, 57, 58, 1166, -1, 81,
2965 -1, -1, -1, -1, -1, 88, -1, 90, 1065, 92,
2966 737, 93, -1, 3, 4, 5, 6, -1, -1, -1,
2967 646, -1, 950, 951, -1, -1, -1, 653, -1, 947,
2968 637, 638, 639, 951, -1, 3, 4, 5, 6, 646,
2969 1204, 9, 1206, -1, 1208, -1, -1, -1, -1, 39,
2970 40, 914, 42, -1, 137, -1, 139, -1, -1, 666,
2971 3, 4, 5, 31, -1, 55, -1, 57, 58, 3,
2972 4, 5, 990, -1, 42, -1, -1, -1, 1247, -1,
2973 48, -1, -1, 1252, -1, 948, -1, 55, 951, 57,
2974 58, -1, -1, -1, -1, 3, 4, 5, 6, 706,
2975 707, 1029, 1030, 71, -1, -1, -1, 190, -1, 1037,
2976 1038, -1, 1030, 81, 57, 58, -1, -1, -1, -1,
2977 1038, 89, -1, 57, 58, 93, 94, -1, -1, 755,
2978 -1, -1, -1, -1, 42, 1304, -1, -1, -1, 746,
2979 747, 748, -1, 769, 1062, -1, 1310, -1, 755, 57,
2980 58, -1, 3, 4, 5, 6, 1074, -1, 9, 4,
2981 5, 1218, 769, -1, 9, -1, -1, -1, -1, 776,
2982 777, 778, 779, 780, -1, 1038, -1, 784, 4, 5,
2983 31, -1, 1239, 9, -1, 792, 31, -1, 795, -1,
2984 1108, 42, 1110, -1, -1, -1, -1, 48, 3, 4,
2985 5, 1258, 7, -1, 55, 31, 57, 58, -1, -1,
2986 55, -1, 57, 58, -1, -1, 823, 1457, -1, -1,
2987 71, -1, 48, -1, -1, -1, 71, 1396, 1397, 55,
2988 81, 57, 58, 38, -1, 82, 81, -1, 89, 322,
2989 -1, -1, 93, 94, 1413, 71, 1174, 1175, 93, 976,
2990 55, -1, 57, 58, -1, 81, -1, 1175, -1, -1,
2991 -1, -1, 989, -1, -1, -1, -1, 93, 94, -1,
2992 3, 4, 5, -1, -1, -1, -1, 360, 3, 4,
2993 5, 6, -1, -1, 910, 1148, 1526, 1527, 1528, -1,
2994 -1, 1348, -1, 1350, 1222, 1223, -1, -1, 924, -1,
2995 926, -1, 928, 1472, 1473, 1223, 31, -1, 3, 4,
2996 5, 6, 159, -1, 9, -1, -1, 42, -1, 1488,
2997 1489, -1, 55, 930, 57, 58, 933, 7, 8, 9,
2998 55, -1, 57, 58, 14, -1, 31, -1, 945, -1,
2999 -1, -1, 949, 950, 951, 192, 71, 42, -1, -1,
3000 -1, 31, 978, 48, -1, -1, 81, 37, 205, -1,
3001 55, -1, 57, 58, 89, -1, 46, -1, 93, -1,
3002 -1, -1, -1, -1, -1, -1, 71, -1, 461, 462,
3003 -1, 61, 989, -1, -1, -1, 81, 1013, -1, -1,
3004 -1, -1, -1, -1, 89, -1, -1, -1, 93, 94,
3005 -1, -1, 1129, -1, 3, 4, 5, 6, -1, -1,
3006 -1, -1, 1469, -1, -1, 1278, 1279, 1280, 1281, 1026,
3007 1027, 1028, 1029, 1030, -1, 1288, -1, -1, 1035, 1036,
3008 1037, 1038, -1, -1, -1, 518, -1, -1, -1, -1,
3009 1047, 1048, 1049, 42, -1, -1, -1, -1, -1, -1,
3010 49, -1, -1, -1, -1, -1, -1, -1, 57, 58,
3011 1067, 1068, -1, -1, -1, -1, -1, -1, 551, 552,
3012 -1, 1334, -1, -1, -1, 1532, 559, -1, -1, -1,
3013 -1, -1, 81, 1210, -1, -1, -1, 1094, -1, 1216,
3014 89, -1, 1099, -1, 1551, -1, -1, -1, -1, -1,
3015 583, -1, 585, -1, -1, 588, 589, -1, 591, 592,
3016 593, 594, 595, 596, 597, 598, 599, 600, 601, 602,
3017 603, 604, 605, 606, 607, 608, 609, -1, 611, 1457,
3018 -1, -1, -1, -1, 617, -1, 619, 620, 74, 75,
80048418 3019 76, 77, 78, 79, 80, 81, 82, 83, 84, 85,
eca1bd08
UD
3020 1468, 4, 5, -1, -1, 8, 9, 7, 8, 9,
3021 -1, 14, -1, 646, 14, -1, 1173, 1174, 1175, -1,
3022 653, -1, -1, -1, -1, 28, 1439, 30, 1204, -1,
3023 1206, 31, 1208, -1, 37, -1, -1, 37, -1, -1,
3024 4, 5, -1, 46, 677, 678, 46, -1, -1, 1527,
3025 1528, -1, 55, -1, 57, 58, -1, -1, 1335, 1336,
3026 693, 61, 1219, 1220, 1221, 1222, 1223, 31, -1, 1226,
3027 -1, -1, -1, 3, 4, 5, 6, -1, 1546, 1236,
3028 1237, 1238, -1, -1, 48, -1, -1, -1, -1, 1502,
3029 93, 55, -1, 57, 58, 1508, 1509, -1, -1, 1256,
3030 1257, 498, 1259, 1260, 737, 1262, 503, 71, -1, 7,
3031 8, 9, 42, -1, -1, 1528, 14, 81, 48, -1,
3032 -1, -1, 755, -1, -1, 55, -1, 57, 58, 93,
3033 94, 528, -1, 31, 1310, -1, 769, 534, -1, 37,
3034 -1, 71, -1, -1, 1421, -1, -1, -1, 46, 546,
3035 547, 81, 549, -1, -1, 4, 5, -1, -1, 89,
3036 9, -1, -1, 93, 94, -1, 1443, 1444, -1, -1,
3037 -1, -1, -1, -1, -1, 1588, -1, -1, -1, -1,
3038 -1, 814, 31, 1, -1, 3, 4, 5, 6, 7,
3039 8, 9, 1349, 1350, -1, 1608, 14, -1, 31, 832,
3040 833, -1, 835, -1, 1361, 1362, 55, 1364, 57, 58,
3041 28, -1, 30, 31, 32, 4, 5, 1630, -1, 37,
3042 1377, 1378, 71, -1, 42, -1, -1, -1, 46, 1642,
3043 -1, 49, 81, -1, 7, 8, 9, 55, 871, 57,
3044 58, 14, 31, 1520, 93, 642, 643, -1, -1, -1,
3045 647, -1, -1, 71, -1, -1, -1, -1, 31, 48,
3046 -1, -1, -1, 81, 37, -1, 55, -1, 57, 58,
3047 -1, 89, -1, 46, -1, 93, 909, 910, -1, 97,
3048 -1, 1457, 71, -1, -1, -1, -1, -1, -1, -1,
3049 -1, 924, 81, 926, -1, 928, -1, -1, -1, -1,
3050 1457, -1, -1, -1, 93, 94, -1, -1, 141, 1466,
3051 1467, 1468, -1, 146, -1, 637, 638, -1, -1, -1,
3052 -1, 4, 1479, 1480, 1481, -1, -1, -1, -1, -1,
3053 -1, 14, -1, -1, 967, -1, 3, 4, 5, 6,
3054 -1, 24, 194, 195, -1, 978, -1, 30, 31, -1,
3055 33, -1, 35, 750, -1, -1, -1, -1, -1, 42,
3056 993, -1, 195, 996, -1, -1, -1, -1, -1, 1526,
3057 1527, 1528, 55, -1, 57, 42, -1, -1, 1535, 1536,
3058 1013, -1, 65, -1, -1, 782, -1, -1, 55, 72,
3059 57, 58, -1, -1, 61, -1, -1, -1, -1, -1,
3060 83, 84, -1, -1, 71, -1, -1, -1, -1, -1,
3061 1043, 1044, -1, -1, 81, -1, -1, -1, -1, -1,
3062 -1, -1, 89, 106, 746, 747, 93, 260, -1, -1,
3063 -1, -1, -1, -1, -1, -1, 3, 4, 5, 6,
3064 -1, 838, 9, 840, 1077, -1, -1, -1, 1605, -1,
3065 -1, 134, -1, 136, -1, -1, -1, 140, 141, -1,
3066 -1, -1, 145, 146, 31, -1, 149, 150, 151, -1,
3067 -1, -1, -1, -1, -1, 42, -1, -1, -1, -1,
3068 -1, 48, 165, -1, -1, -1, 169, -1, 55, -1,
3069 57, 58, 175, 176, -1, 1128, 1129, -1, -1, 1132,
3070 -1, -1, -1, -1, 71, -1, 3, 4, 5, 6,
3071 -1, 194, 195, 196, 81, 912, 913, -1, 915, 1152,
3072 -1, -1, 89, -1, -1, -1, 93, 94, 4, 5,
3073 -1, -1, -1, 9, 31, -1, -1, -1, -1, -1,
3074 223, -1, -1, -1, -1, 42, -1, -1, -1, 946,
3075 -1, 48, -1, -1, -1, 31, -1, 240, 55, -1,
3076 57, 58, -1, -1, -1, -1, 249, -1, -1, -1,
3077 -1, 1204, 48, 1206, 71, 1208, -1, 260, -1, 55,
3078 -1, 57, 58, 1216, 81, -1, -1, 420, -1, -1,
3079 423, -1, 89, -1, -1, 71, 93, 94, -1, -1,
3080 -1, -1, 435, -1, -1, 81, -1, 1240, 930, -1,
3081 -1, 933, -1, -1, -1, 298, 299, 93, 94, -1,
3082 -1, 1254, 1255, 945, -1, -1, -1, 949, 950, -1,
3083 -1, 3, 4, 5, 6, -1, 488, 1034, -1, 491,
3084 -1, 493, 494, -1, -1, -1, -1, -1, -1, 1282,
3085 -1, -1, -1, 505, -1, 488, -1, -1, 491, 31,
3086 -1, 344, -1, -1, 1061, 348, -1, 350, 351, 352,
3087 42, -1, 505, -1, -1, -1, 1073, 1310, 361, -1,
3088 -1, -1, -1, 55, -1, 57, 58, -1, -1, -1,
3089 3, 4, 5, 6, 7, 8, 9, 1330, -1, 71,
3090 -1, 14, -1, -1, 1026, 1027, 1028, 1029, -1, 81,
3091 -1, 394, -1, 1035, 1036, 1037, -1, 89, 31, -1,
3092 403, 93, 405, 406, 37, -1, -1, -1, -1, 42,
3093 -1, -1, -1, 46, -1, 48, 1369, 420, -1, -1,
3094 423, -1, 55, -1, 57, 58, -1, -1, -1, -1,
3095 1383, -1, 435, -1, -1, -1, -1, -1, 71, -1,
3096 443, -1, -1, -1, 1161, -1, -1, -1, 81, -1,
3097 -1, -1, -1, 1406, -1, -1, 89, -1, -1, -1,
3098 93, 94, 3, 4, 5, 6, -1, -1, 471, 472,
3099 473, 474, 475, -1, -1, -1, 479, -1, -1, -1,
3100 -1, -1, -1, -1, 487, 488, -1, -1, 491, -1,
3101 493, 494, 495, 496, -1, -1, -1, 500, -1, -1,
3102 -1, 42, 505, -1, 1457, 508, -1, 1224, -1, -1,
80048418 3103 -1, -1, -1, -1, 55, -1, 57, 58, -1, -1,
eca1bd08
UD
3104 61, -1, 525, -1, 1477, 1478, -1, -1, -1, -1,
3105 71, 1173, 1174, -1, -1, -1, -1, -1, -1, -1,
3106 81, -1, -1, 3, 4, 5, 6, -1, 89, 9,
3107 -1, 1268, 93, -1, -1, 1272, -1, 1510, 561, 562,
3108 563, 564, 77, 78, 79, 80, 81, 82, 83, 84,
3109 85, 31, -1, -1, 746, 747, -1, 1219, 1220, 1221,
3110 1222, -1, 42, -1, 1226, -1, -1, -1, 1541, 1306,
3111 -1, -1, -1, -1, 747, 55, -1, 57, 58, 3,
3112 4, 5, 6, -1, 776, 777, 778, 779, -1, -1,
3113 -1, 71, 784, -1, -1, -1, -1, -1, 621, -1,
3114 623, 81, -1, 776, 777, -1, -1, 31, -1, 89,
3115 -1, 784, 635, 93, 637, 638, 639, -1, 42, -1,
3116 -1, -1, -1, 646, 48, -1, -1, 650, -1, -1,
3117 -1, 55, -1, 57, 58, 1372, -1, -1, -1, 1376,
3118 -1, -1, 665, -1, -1, -1, -1, 71, -1, -1,
3119 -1, -1, -1, -1, -1, -1, -1, 81, -1, -1,
3120 -1, 1398, 1399, -1, -1, 89, -1, -1, 691, 93,
3121 94, -1, -1, -1, -1, 698, -1, -1, -1, 1652,
3122 -1, -1, -1, 706, 707, -1, -1, -1, -1, -1,
3123 1, -1, 3, 4, 5, 6, 7, 8, 9, 1361,
3124 1362, -1, 1364, 14, 73, 74, 75, 76, 77, 78,
3125 79, 80, 81, 82, 83, 84, 85, 28, -1, 30,
3126 31, 32, -1, 746, 747, 748, 37, 38, -1, -1,
3127 -1, 42, 755, -1, -1, 46, 47, -1, 49, -1,
3128 -1, -1, -1, -1, 55, -1, 57, 58, -1, -1,
3129 61, -1, 63, 776, 777, 778, 779, 780, -1, -1,
3130 71, 784, -1, -1, -1, -1, -1, -1, -1, -1,
3131 81, -1, -1, -1, 3, 4, 5, 6, 89, -1,
3132 -1, -1, 93, -1, -1, -1, -1, -1, -1, 812,
3133 -1, -1, 815, -1, 817, -1, -1, -1, 109, 822,
3134 823, -1, 825, -1, 1466, 1467, -1, -1, 831, -1,
3135 -1, -1, -1, 42, 837, -1, -1, -1, -1, -1,
3136 -1, 844, 845, 846, -1, -1, 55, -1, 57, 58,
3137 -1, -1, 855, -1, 1026, 1027, 1028, 1029, -1, -1,
3138 -1, -1, 71, 1035, 1036, 1037, -1, -1, -1, -1,
3139 -1, -1, 81, 1026, 1027, 1047, 1048, 1049, -1, -1,
3140 89, -1, 1035, 1, 93, 3, 4, 5, 6, 7,
3141 8, 9, -1, -1, -1, -1, 14, -1, -1, -1,
3142 -1, -1, -1, 906, -1, -1, -1, -1, -1, -1,
3143 28, -1, 30, 31, 32, -1, -1, -1, -1, 37,
3144 38, -1, -1, -1, 42, -1, 929, 930, 46, 47,
3145 933, 49, -1, 936, -1, -1, -1, 55, 941, 57,
3146 58, 12, 945, 61, 947, 63, 949, 950, 951, -1,
3147 -1, -1, 955, 71, 957, -1, -1, -1, -1, -1,
3148 -1, -1, -1, 81, -1, -1, -1, -1, -1, -1,
3149 -1, 89, -1, -1, -1, 93, -1, -1, -1, -1,
3150 -1, -1, -1, -1, -1, -1, -1, 990, -1, 992,
3151 -1, 109, 63, 64, 65, 66, 67, 68, 69, 70,
3152 71, 72, 73, 74, 75, 76, 77, 78, 79, 80,
3153 81, 82, 83, 84, 85, -1, -1, -1, -1, -1,
3154 -1, -1, 1025, 1026, 1027, 1028, 1029, 1030, 1031, -1,
3155 -1, -1, 1035, 1036, 1037, 1038, -1, -1, -1, -1,
3156 -1, -1, -1, 1046, 1047, 1048, 1049, 1219, 1220, 1221,
3157 1222, -1, -1, -1, 1226, -1, -1, -1, -1, 1062,
3158 -1, -1, 1065, -1, 1236, 1237, 1219, 1220, -1, -1,
3159 -1, 1074, -1, 1226, -1, 3, 4, 5, 6, 7,
3160 8, 9, -1, -1, 1087, -1, 14, -1, -1, -1,
3161 -1, -1, 1095, -1, -1, 3, 4, 5, 6, -1,
3162 28, 9, 30, 31, 32, 1108, -1, 1110, -1, 37,
3163 -1, -1, -1, -1, 42, 1118, -1, -1, 46, -1,
3164 -1, 49, -1, 31, -1, -1, -1, 55, -1, 57,
3165 58, -1, -1, -1, 42, -1, -1, -1, -1, -1,
3166 48, 1144, 1145, 71, 1147, -1, -1, 55, -1, 57,
3167 58, -1, -1, 81, 3, 4, 5, 6, -1, -1,
3168 9, 89, -1, 71, -1, 93, -1, 1170, -1, 97,
3169 1173, 1174, 1175, 81, -1, 3, 4, 5, 6, -1,
3170 -1, 89, 31, -1, -1, 93, 94, -1, -1, 1361,
3171 1362, -1, 1364, 42, -1, -1, -1, -1, -1, 48,
3172 -1, -1, -1, -1, -1, -1, 55, -1, 57, 58,
3173 -1, -1, -1, -1, 42, 1218, 1219, 1220, 1221, 1222,
3174 1223, 49, 71, 1226, -1, -1, -1, -1, -1, 57,
3175 58, -1, 81, 1236, 1237, 1238, 1239, -1, 4, -1,
3176 89, -1, -1, -1, 93, 94, -1, -1, 14, -1,
3177 -1, -1, -1, 81, -1, 1258, -1, 23, 24, -1,
3178 1263, 89, -1, 1266, 30, 31, -1, 33, -1, 35,
3179 -1, -1, -1, -1, -1, -1, 42, -1, -1, -1,
3180 1, -1, 3, 4, 5, 6, 7, 8, 9, 55,
3181 -1, 57, -1, 14, 1466, 1467, -1, -1, -1, 65,
3182 -1, -1, -1, -1, -1, -1, 72, 28, -1, 30,
3183 31, 32, -1, -1, -1, -1, 37, 38, 84, -1,
3184 -1, 42, -1, -1, -1, 46, 47, -1, 49, -1,
3185 -1, -1, -1, -1, 55, -1, 57, 58, -1, -1,
3186 61, -1, 63, -1, -1, 1348, 1349, 1350, -1, -1,
3187 71, -1, -1, -1, 1526, 1527, -1, -1, 1361, 1362,
3188 81, 1364, -1, 1366, -1, -1, -1, -1, 89, -1,
3189 136, -1, 93, -1, 140, 141, -1, -1, -1, -1,
3190 146, -1, -1, 149, 150, 151, -1, -1, 109, -1,
3191 -1, -1, -1, -1, -1, -1, -1, -1, -1, 165,
3192 -1, -1, -1, 169, -1, -1, -1, -1, -1, 175,
3193 176, -1, -1, -1, -1, -1, -1, -1, -1, -1,
3194 -1, -1, 3, 4, 5, 6, -1, -1, 194, 195,
3195 196, -1, -1, -1, -1, -1, -1, -1, -1, -1,
3196 -1, -1, 1, -1, 3, 4, 5, 6, 7, 8,
3197 9, -1, -1, -1, 1457, 14, -1, 223, -1, -1,
3198 -1, 42, -1, 1466, 1467, 1468, 1469, -1, 49, 28,
3199 -1, 30, 31, 32, -1, -1, 57, 58, 37, 38,
3200 -1, -1, -1, 42, 4, 5, -1, 46, 47, 9,
3201 49, -1, -1, -1, 260, -1, 55, -1, 57, 58,
3202 81, -1, 61, -1, 63, -1, -1, -1, 89, -1,
3203 -1, 31, 71, -1, -1, -1, -1, -1, -1, -1,
3204 -1, -1, 81, 1526, 1527, 1528, -1, -1, 48, 1532,
3205 89, -1, 298, 299, 93, 55, -1, 57, 58, -1,
3206 -1, -1, -1, 1546, -1, -1, -1, -1, 1551, -1,
3207 109, 71, -1, -1, -1, -1, -1, -1, -1, -1,
3208 -1, 81, -1, 1, -1, 3, 4, 5, 6, 7,
3209 8, 9, -1, 93, 94, -1, 14, -1, 344, -1,
3210 -1, -1, 348, -1, 350, 351, 352, -1, -1, 27,
3211 28, 357, 30, 31, 32, 361, -1, -1, -1, 37,
3212 -1, -1, -1, -1, 42, -1, -1, 45, 46, 47,
3213 -1, 49, -1, -1, -1, -1, -1, 55, -1, 57,
3214 58, -1, -1, 61, 3, 4, 5, 6, 394, -1,
3215 9, -1, -1, 71, -1, -1, -1, 403, -1, 405,
3216 406, -1, -1, 81, -1, 3, 4, 5, 6, -1,
3217 -1, 89, 31, -1, 420, 93, -1, 423, -1, 97,
3218 -1, -1, -1, 42, -1, 3, 4, 5, 6, 435,
3219 -1, 9, -1, -1, -1, -1, 55, 443, 57, 58,
3220 -1, -1, -1, -1, 42, -1, -1, -1, -1, -1,
3221 -1, 49, 71, 31, -1, -1, -1, -1, -1, 57,
3222 58, -1, 81, -1, 42, 471, 472, 473, 474, 475,
3223 89, -1, -1, 479, 93, -1, -1, 55, -1, 57,
3224 58, 487, 488, 81, -1, 491, -1, 493, 494, 495,
3225 496, 89, -1, 71, 500, -1, -1, -1, -1, 505,
3226 -1, -1, 508, 81, -1, -1, -1, -1, -1, -1,
3227 -1, 89, -1, -1, -1, 93, -1, -1, 524, 525,
3228 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
3229 -1, -1, 1, -1, 3, 4, 5, 6, 7, 8,
3230 9, 10, 11, 12, 13, 14, -1, -1, -1, -1,
3231 -1, -1, -1, -1, -1, 561, 562, 563, 564, 28,
3232 29, 30, 31, 32, -1, 34, 35, 36, 37, -1,
3233 39, 40, 41, 42, 43, 44, -1, 46, -1, 48,
3234 -1, 50, 51, 52, 53, 54, 55, -1, 57, 58,
3235 59, -1, -1, 62, -1, -1, -1, -1, -1, 68,
3236 -1, -1, 71, -1, -1, -1, -1, -1, -1, -1,
3237 79, 80, 81, -1, -1, 621, -1, 623, 87, 88,
3238 89, -1, -1, -1, 93, 94, -1, -1, -1, -1,
3239 -1, 637, 638, 639, -1, -1, -1, -1, 4, 5,
3240 646, 110, 1, 9, 3, 4, 5, 6, 7, 8,
3241 9, -1, -1, 659, -1, 14, -1, -1, -1, 665,
3242 -1, -1, -1, -1, -1, 31, -1, -1, -1, 28,
3243 -1, 30, 31, 32, -1, -1, -1, -1, 37, -1,
3244 -1, -1, 48, 42, -1, 691, -1, 46, 47, 55,
3245 49, 57, 58, 699, -1, -1, 55, -1, 57, 58,
3246 706, 707, 61, -1, 63, 71, -1, -1, -1, -1,
3247 -1, -1, 71, -1, -1, 81, -1, -1, -1, -1,
3248 -1, -1, 81, -1, 730, -1, -1, 93, 94, -1,
3249 89, -1, -1, -1, 93, -1, 3, 4, 5, 6,
3250 746, 747, 748, -1, -1, -1, -1, -1, -1, 755,
3251 -1, -1, -1, -1, -1, -1, -1, -1, 3, 4,
3252 5, 6, 7, 8, 9, -1, -1, 12, -1, 14,
3253 776, 777, 778, 779, 780, 42, -1, -1, 784, -1,
3254 -1, -1, 49, 28, -1, 30, 31, -1, -1, -1,
3255 57, 58, 37, -1, -1, -1, -1, 42, -1, -1,
3256 -1, 46, -1, -1, -1, -1, 812, -1, -1, 815,
3257 55, 817, 57, 58, 81, -1, 822, 823, -1, 825,
3258 -1, -1, 89, -1, -1, 831, 71, -1, -1, -1,
3259 -1, 837, -1, -1, -1, -1, 81, -1, 844, 845,
3260 846, -1, -1, -1, 89, 4, -1, -1, 93, 855,
3261 3, 4, 5, 6, 7, 8, 9, -1, -1, -1,
3262 -1, 14, -1, -1, -1, -1, -1, -1, -1, -1,
3263 -1, 30, 31, -1, 33, 28, 35, 30, 31, -1,
3264 -1, -1, -1, 42, 37, -1, -1, -1, -1, 42,
3265 -1, -1, -1, 46, -1, -1, 55, -1, 57, -1,
3266 906, -1, 55, -1, 57, 58, -1, -1, 61, -1,
3267 -1, -1, -1, -1, -1, -1, -1, -1, 71, -1,
3268 -1, 80, -1, 929, 930, -1, -1, 933, 81, -1,
3269 936, -1, -1, -1, -1, 941, 89, -1, -1, 945,
3270 93, 947, -1, 949, 950, 951, -1, -1, -1, 955,
3271 -1, 957, -1, -1, -1, -1, -1, -1, -1, -1,
3272 3, 4, 5, 6, 7, 8, 9, -1, -1, -1,
3273 -1, 14, -1, -1, 133, 134, -1, 136, -1, -1,
3274 -1, 140, 141, -1, 990, 144, 992, 146, 31, -1,
3275 149, 150, 151, -1, 37, -1, -1, 156, -1, 42,
3276 -1, -1, -1, 46, -1, 48, 165, -1, -1, -1,
3277 169, -1, 55, -1, 57, 58, 175, 176, -1, 1025,
3278 1026, 1027, 1028, 1029, 1030, 1031, -1, -1, 71, 1035,
3279 1036, 1037, 1038, -1, -1, 194, 195, 196, 81, -1,
3280 1046, 1047, 1048, 1049, -1, 204, 89, -1, -1, -1,
3281 93, 94, -1, -1, 1060, -1, 1062, -1, -1, 1065,
3282 -1, -1, -1, -1, 223, -1, -1, -1, 1074, -1,
3283 1, -1, 3, 4, 5, 6, 7, 8, 9, -1,
3284 -1, -1, -1, 14, -1, -1, -1, -1, -1, 1095,
3285 -1, -1, 3, 4, 5, 6, -1, 28, 9, 30,
3286 31, 260, 1108, -1, 1110, -1, 37, -1, -1, -1,
3287 -1, 42, 1118, -1, -1, 46, -1, -1, 49, -1,
3288 31, -1, -1, -1, 55, -1, 57, 58, -1, -1,
3289 61, 42, 4, 5, -1, -1, 8, 9, 1144, 1145,
3290 71, 1147, 14, -1, 55, -1, 57, 58, -1, -1,
3291 81, -1, -1, -1, -1, -1, -1, -1, 89, -1,
3292 71, -1, 93, -1, 1170, 37, -1, 1173, 1174, 1175,
3293 81, -1, 331, -1, 46, -1, 48, -1, 89, -1,
3294 -1, -1, 93, 55, -1, 57, 58, -1, -1, 348,
3295 -1, -1, -1, -1, -1, -1, 1202, 356, -1, 71,
3296 -1, -1, 361, -1, -1, -1, -1, -1, -1, 81,
3297 -1, -1, 1218, 1219, 1220, 1221, 1222, 1223, -1, -1,
3298 1226, 93, 94, -1, -1, -1, -1, -1, -1, -1,
3299 1236, 1237, 1238, 1239, -1, 394, -1, 1243, -1, -1,
3300 -1, -1, -1, -1, -1, -1, 405, -1, -1, 4,
3301 5, -1, 1258, 8, 9, -1, -1, 1263, -1, 14,
3302 1266, 420, -1, -1, 423, -1, -1, -1, -1, -1,
3303 429, 430, 431, 28, -1, 30, 435, -1, -1, -1,
3304 -1, -1, 37, -1, 443, -1, -1, -1, -1, -1,
3305 -1, 46, -1, 48, -1, -1, -1, -1, -1, -1,
3306 55, -1, 57, 58, -1, -1, -1, -1, -1, -1,
3307 -1, -1, 471, 472, 473, 474, 71, -1, -1, -1,
3308 479, -1, -1, -1, -1, -1, 81, -1, 487, 488,
3309 -1, 1337, 491, -1, 493, 494, 495, 496, 93, 94,
3310 -1, 500, 1348, 1349, 1350, -1, 505, 4, 5, 508,
3311 -1, 8, 9, -1, -1, 1361, 1362, 14, 1364, -1,
3312 1366, -1, -1, -1, 4, 5, 525, 7, 8, 9,
3313 -1, 28, 12, 30, 14, -1, -1, -1, -1, -1,
3314 37, -1, -1, -1, -1, -1, -1, -1, 28, 46,
3315 30, 31, -1, -1, 553, -1, 555, 37, 55, -1,
3316 57, 58, -1, -1, -1, -1, 46, -1, 48, -1,
3317 -1, -1, 571, 572, 573, 55, -1, 57, 58, -1,
3318 -1, 4, -1, -1, -1, 4, 5, 586, -1, 8,
3319 9, 71, -1, -1, -1, 14, -1, -1, -1, -1,
3320 -1, 81, -1, -1, -1, -1, -1, 30, 31, -1,
3321 33, 1457, 35, 93, 94, -1, -1, -1, 37, 42,
3322 1466, 1467, 1468, 1469, -1, -1, -1, 46, -1, 48,
3323 -1, -1, 55, -1, 57, 634, 55, -1, 57, 58,
3324 -1, -1, -1, -1, -1, -1, -1, 646, -1, -1,
3325 -1, -1, 71, -1, 3, 4, 5, 6, -1, -1,
3326 -1, -1, 81, -1, -1, -1, 665, -1, -1, -1,
3327 -1, -1, -1, 33, 93, 94, -1, -1, -1, -1,
3328 1526, 1527, 1528, -1, -1, -1, 1532, -1, -1, -1,
3329 -1, -1, 691, 42, -1, 55, -1, -1, -1, 698,
3330 1546, -1, -1, -1, -1, 1551, 55, 706, 57, 58,
3331 -1, -1, -1, 136, 63, -1, -1, 140, 141, -1,
3332 -1, -1, 71, 146, -1, -1, 149, 150, 151, -1,
80048418 3333 -1, -1, 81, -1, -1, -1, -1, -1, -1, -1,
eca1bd08
UD
3334 89, -1, 165, -1, 93, -1, 169, 746, 747, 748,
3335 -1, -1, 175, 176, 753, -1, 755, -1, -1, -1,
3336 -1, -1, -1, -1, -1, 3, 4, 5, 6, -1,
3337 769, 194, 195, 196, -1, -1, -1, 776, 777, 778,
3338 779, 780, -1, -1, -1, 784, -1, -1, -1, 149,
3339 150, 151, -1, 31, -1, -1, -1, -1, -1, -1,
3340 223, -1, -1, -1, 42, -1, -1, -1, -1, -1,
3341 -1, -1, -1, -1, -1, 175, 815, 55, 817, 57,
3342 58, -1, -1, 822, 823, -1, 825, -1, -1, -1,
3343 -1, -1, -1, 71, 194, 195, 196, 260, -1, -1,
3344 -1, -1, -1, 81, -1, -1, -1, -1, -1, -1,
3345 -1, 89, -1, -1, -1, 93, -1, -1, -1, -1,
3346 -1, -1, -1, 223, -1, -1, -1, -1, -1, -1,
3347 -1, -1, -1, -1, -1, 1, -1, 3, 4, 5,
3348 6, 7, 8, 9, 10, 11, -1, 13, 14, 15,
3349 -1, 17, 18, 19, 20, 21, 22, 23, 24, 25,
3350 26, 27, 28, 29, 30, 31, 32, -1, 34, 35,
3351 36, 37, -1, 39, 40, 41, 42, 43, 44, 45,
3352 46, 47, -1, -1, 50, 51, 52, 53, 54, 55,
3353 -1, 57, 58, 59, 357, 61, 62, -1, 361, 299,
3354 -1, -1, 68, -1, -1, 71, -1, -1, -1, -1,
3355 949, 950, 951, 79, 80, 81, 955, 956, -1, -1,
3356 -1, 87, 88, 89, -1, -1, -1, 93, -1, 95,
e88e3c0b 3357 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
eca1bd08
UD
3358 -1, -1, 405, 109, 110, -1, -1, -1, -1, -1,
3359 350, 351, 352, -1, -1, -1, -1, 420, -1, -1,
3360 423, -1, -1, -1, -1, 3, 4, 5, 6, -1,
3361 -1, 9, 435, -1, -1, -1, -1, -1, -1, -1,
3362 443, -1, -1, -1, -1, -1, 1025, 1026, 1027, 1028,
3363 1029, 1030, 1031, 31, 1033, -1, 1035, 1036, 1037, 1038,
3364 -1, -1, -1, -1, 42, 405, -1, -1, 471, 472,
3365 473, 474, -1, 4, 5, -1, 479, 55, 9, 57,
3366 58, -1, -1, -1, 487, 488, 1065, -1, 491, -1,
3367 493, 494, 495, 71, -1, -1, -1, 500, -1, -1,
3368 31, -1, 505, 81, -1, 508, -1, 1086, -1, -1,
3369 -1, 89, -1, -1, -1, 93, 1095, 48, -1, -1,
3370 -1, -1, 525, -1, 55, -1, 57, 58, -1, -1,
3371 -1, 471, -1, 473, 474, 475, -1, -1, -1, -1,
3372 71, -1, -1, -1, -1, -1, -1, 487, 488, -1,
3373 81, 491, -1, 493, 494, 495, 496, -1, -1, -1,
3374 500, -1, 93, 94, -1, 505, -1, -1, 508, -1,
80048418 3375 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
eca1bd08
UD
3376 -1, 3, 4, 5, 6, 7, 8, 9, -1, -1,
3377 12, 1170, 14, -1, 1173, 1174, 1175, 1176, -1, -1,
3378 -1, -1, -1, -1, -1, -1, 28, -1, 30, 31,
3379 -1, -1, -1, -1, -1, 37, -1, -1, -1, -1,
3380 42, -1, -1, -1, 46, -1, 48, -1, -1, -1,
3381 -1, -1, 635, 55, -1, 57, 58, -1, -1, 1218,
3382 1219, 1220, 1221, 1222, 1223, -1, -1, 1226, -1, 71,
3383 -1, 4, 5, -1, -1, -1, 9, -1, -1, 81,
3384 -1, -1, 665, -1, -1, -1, -1, 89, -1, -1,
3385 -1, 93, 94, -1, 107, 108, -1, -1, 31, 1258,
3386 -1, -1, -1, 623, 1263, -1, -1, 1266, -1, -1,
3387 -1, -1, -1, -1, -1, 48, -1, 637, 638, 639,
3388 -1, -1, 55, 706, 57, 58, 646, -1, 3, 4,
3389 5, 6, 7, 8, 9, -1, -1, 12, 71, 14,
3390 -1, -1, -1, -1, -1, 665, -1, -1, 81, -1,
3391 -1, -1, -1, 28, -1, 30, 31, -1, -1, -1,
3392 93, 94, 37, 746, 747, 748, -1, 42, -1, -1,
3393 -1, 46, 755, 48, -1, -1, -1, 190, -1, -1,
3394 55, -1, 57, 58, -1, -1, 706, -1, -1, 1348,
3395 1349, 1350, -1, 776, 777, -1, 71, -1, -1, -1,
3396 -1, 784, -1, -1, -1, -1, 81, -1, -1, -1,
3397 -1, -1, -1, -1, 89, -1, -1, -1, 93, 94,
3398 -1, -1, -1, -1, -1, -1, 746, 747, 748, -1,
3399 -1, -1, 815, -1, 817, 755, -1, -1, -1, 822,
3400 823, -1, 825, -1, -1, -1, -1, -1, -1, -1,
3401 -1, -1, -1, -1, -1, -1, 776, 777, 778, 779,
3402 780, -1, -1, -1, 784, 3, 4, 5, 6, 7,
3403 8, 9, -1, -1, 12, -1, 14, -1, -1, -1,
80048418 3404 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
eca1bd08
UD
3405 28, -1, 30, 31, -1, -1, -1, -1, 1457, 37,
3406 -1, -1, 822, -1, 42, -1, -1, -1, 46, -1,
3407 48, 3, 4, 5, 6, -1, -1, 55, 331, 57,
3408 58, -1, -1, -1, 844, 845, 846, -1, -1, -1,
3409 -1, -1, -1, 71, -1, 855, -1, -1, -1, 31,
3410 -1, -1, -1, 81, -1, 55, -1, -1, -1, -1,
3411 42, 89, -1, -1, -1, 93, 94, -1, -1, -1,
3412 -1, -1, -1, 55, -1, 57, 58, 1526, 1527, 1528,
3413 80, -1, -1, 83, 957, -1, -1, -1, -1, 71,
80048418 3414 -1, -1, -1, -1, -1, -1, -1, -1, -1, 81,
eca1bd08
UD
3415 403, -1, 1551, -1, 104, -1, 106, 89, -1, -1,
3416 -1, 93, -1, -1, -1, -1, -1, -1, -1, 929,
3417 930, -1, -1, 933, -1, -1, 936, -1, -1, -1,
3418 -1, -1, -1, -1, -1, 945, -1, -1, -1, 949,
3419 950, 951, -1, -1, -1, 955, 3, 4, 5, 6,
3420 -1, -1, 1025, 1026, 1027, 1028, 1029, 1030, -1, -1,
3421 -1, -1, 1035, 1036, 1037, 1038, -1, -1, -1, -1,
3422 -1, -1, -1, -1, 31, 175, 479, -1, -1, -1,
3423 -1, -1, -1, -1, -1, 42, -1, -1, -1, -1,
3424 -1, -1, 1065, -1, 194, 195, 196, -1, 55, -1,
3425 57, 58, -1, -1, 204, -1, -1, -1, -1, -1,
3426 -1, -1, -1, -1, 71, 1025, 1026, 1027, 1028, 1029,
3427 1030, 1031, 1095, 223, 81, 1035, 1036, 1037, 1038, -1,
3428 -1, -1, 89, -1, -1, -1, 93, 1047, 1048, 1049,
3429 -1, -1, -1, -1, -1, -1, -1, -1, -1, 249,
3430 553, -1, 555, -1, -1, 1065, -1, 560, 561, 562,
3431 563, 564, -1, 263, -1, -1, -1, -1, -1, -1,
3432 573, -1, -1, -1, -1, -1, 3, 4, 5, 6,
3433 7, 8, 9, 586, -1, -1, -1, 14, -1, -1,
3434 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
3435 -1, 28, -1, 30, 31, -1, -1, -1, -1, -1,
3436 37, -1, -1, -1, -1, 42, -1, 620, -1, 46,
3437 -1, 48, -1, -1, -1, -1, -1, -1, 55, -1,
3438 57, 58, -1, -1, 1144, 1145, 639, 1147, -1, -1,
3439 -1, -1, -1, 646, 71, -1, 1219, 1220, -1, -1,
3440 -1, -1, -1, 1226, 81, -1, 356, 357, -1, -1,
3441 1170, -1, 89, 1173, 1174, 1175, 93, 94, 69, 70,
3442 71, 72, 73, 74, 75, 76, 77, 78, 79, 80,
3443 81, 82, 83, 84, 85, 1258, -1, -1, -1, -1,
3444 1263, -1, -1, 1266, -1, -1, -1, -1, -1, -1,
3445 -1, -1, -1, -1, -1, 405, -1, -1, 1218, 1219,
3446 1220, 1221, 1222, 1223, 4, 5, 1226, 7, 8, 9,
3447 -1, -1, 12, -1, 14, -1, 1236, 1237, 1238, 1239,
3448 -1, -1, -1, -1, -1, -1, -1, -1, 28, -1,
3449 30, 31, -1, -1, -1, 748, -1, 37, 1258, -1,
3450 -1, -1, 755, -1, -1, -1, 46, -1, 3, 4,
3451 5, 6, 7, 8, 9, 55, -1, 57, 58, 14,
3452 -1, 471, -1, 473, 474, 1348, 1349, 1350, -1, -1,
3453 -1, -1, -1, 28, -1, 30, 31, 487, 488, -1,
3454 -1, 491, 37, 493, 494, 495, 496, 42, -1, -1,
3455 500, 46, -1, -1, -1, 505, -1, -1, 508, -1,
3456 55, -1, 57, 58, -1, -1, -1, -1, 63, -1,
3457 -1, -1, -1, -1, -1, -1, 71, -1, 831, -1,
3458 -1, -1, -1, -1, 837, -1, 81, -1, 1348, -1,
3459 1350, -1, 1, -1, 89, 4, 5, -1, 93, 8,
3460 9, 1361, 1362, -1, 1364, 14, -1, -1, -1, -1,
3461 -1, -1, -1, -1, -1, -1, -1, -1, -1, 28,
3462 -1, 30, -1, -1, 350, 351, 352, -1, 37, -1,
3463 39, 40, -1, -1, 1457, -1, -1, 46, -1, 48,
80048418 3464 -1, -1, -1, -1, -1, -1, 55, -1, 57, 58,
eca1bd08 3465 -1, 60, -1, 906, -1, 64, 65, 66, 67, 68,
80048418 3466 69, 70, 71, 72, 73, 74, 75, 76, 77, 78,
eca1bd08
UD
3467 79, 80, 81, 82, 83, 84, -1, -1, 87, 88,
3468 89, -1, 91, -1, -1, 94, -1, -1, 941, -1,
3469 -1, -1, -1, -1, 947, -1, -1, 1457, 951, 649,
3470 650, 110, -1, 1526, 1527, 1528, 1466, 1467, 1468, 1469,
3471 -1, -1, -1, -1, -1, 665, -1, -1, -1, -1,
3472 -1, -1, -1, -1, -1, -1, -1, -1, 1551, -1,
3473 -1, -1, 3, 4, 5, 6, -1, 990, 9, 992,
3474 -1, -1, -1, -1, -1, 471, -1, 473, 474, 475,
3475 -1, -1, -1, -1, -1, -1, 706, -1, -1, -1,
3476 31, -1, -1, -1, -1, -1, 1526, 1527, 1528, -1,
3477 -1, 42, 1532, 14, -1, -1, -1, 1030, -1, -1,
3478 -1, -1, 23, 24, 55, 1038, 57, 58, -1, 30,
3479 31, 1551, 33, 1046, -1, -1, 746, 747, 748, -1,
3480 71, -1, -1, 753, -1, 755, -1, -1, -1, 1062,
3481 81, -1, -1, -1, -1, -1, -1, -1, 89, -1,
3482 -1, 1074, 93, -1, 65, -1, 776, 777, 778, 779,
3483 780, 781, -1, -1, 784, -1, -1, -1, -1, -1,
3484 -1, -1, -1, -1, 4, 5, -1, 7, 8, 9,
3485 -1, -1, -1, -1, 14, 1108, -1, 1110, -1, 809,
3486 -1, -1, -1, -1, -1, 1118, -1, -1, 28, -1,
3487 30, 31, 822, -1, -1, -1, -1, 37, 3, 4,
3488 5, 6, -1, 124, 9, 126, 46, -1, -1, 49,
3489 -1, -1, 133, 134, -1, 55, -1, 57, 58, 140,
3490 141, -1, -1, 144, 145, 146, 31, 148, 149, 150,
3491 151, 637, 638, 639, -1, -1, -1, 42, -1, -1,
3492 646, -1, 1175, 3, 4, 5, 6, 7, 8, 9,
3493 55, -1, 57, 58, 14, -1, -1, -1, -1, -1,
3494 -1, -1, -1, -1, -1, -1, 71, -1, 28, -1,
3495 30, 31, -1, -1, -1, -1, 81, 37, -1, -1,
3496 -1, -1, 42, -1, 89, -1, 46, -1, 93, -1,
3497 1223, -1, -1, -1, -1, 55, -1, 57, 58, -1,
3498 706, 61, -1, -1, 3, 4, 5, 6, -1, -1,
3499 9, 71, -1, -1, -1, -1, -1, -1, 239, 240,
3500 -1, 81, -1, -1, -1, -1, 956, 957, 958, 89,
3501 -1, -1, 31, 93, -1, -1, -1, -1, -1, 260,
3502 746, 747, 748, 42, -1, -1, -1, -1, -1, 755,
3503 -1, -1, -1, -1, -1, -1, 55, -1, 57, 58,
3504 4, 5, -1, 7, 8, 9, -1, -1, 12, -1,
3505 14, -1, 71, -1, -1, -1, -1, -1, 299, -1,
3506 -1, -1, 81, -1, 28, -1, 30, 31, -1, -1,
3507 89, -1, -1, 37, 93, 1025, 1026, 1027, 1028, 1029,
3508 1030, 1031, 46, 1033, -1, 1035, 1036, 1037, 1038, -1,
3509 -1, 55, -1, 57, 58, -1, -1, 1047, 1048, 1049,
3510 3, 4, 5, 6, 7, 8, 9, 348, -1, 350,
3511 351, 14, -1, 1366, -1, 1065, 4, 5, -1, -1,
3512 8, 9, -1, -1, -1, 28, 14, 30, 31, 855,
3513 -1, -1, -1, -1, 37, -1, 1086, -1, -1, 42,
3514 28, -1, 30, 46, -1, -1, -1, -1, -1, 37,
3515 -1, -1, 55, 394, 57, 58, -1, -1, 46, 3,
3516 4, 5, 6, -1, -1, 9, -1, 55, 71, 57,
3517 58, -1, 413, -1, -1, -1, -1, -1, 81, 420,
3518 -1, -1, 423, -1, -1, -1, 89, 31, -1, -1,
3519 93, -1, -1, -1, 435, -1, -1, -1, 42, -1,
3520 -1, -1, -1, 929, 930, -1, -1, 933, -1, -1,
3521 936, 55, -1, 57, 58, 1468, -1, -1, -1, 945,
3522 -1, -1, -1, 949, 950, 951, 1176, 71, -1, 955,
3523 -1, -1, -1, -1, -1, -1, -1, 81, -1, -1,
3524 -1, -1, -1, -1, -1, 89, -1, -1, -1, 93,
3525 68, 69, 70, 71, 72, 73, 74, 75, 76, 77,
3526 78, 79, 80, 81, 82, 83, 84, 85, 1218, 1219,
3527 1220, 1221, 1222, 1223, -1, 1528, 1226, -1, -1, -1,
3528 -1, 522, -1, 524, -1, -1, 1236, 1237, 1238, 1239,
3529 -1, -1, -1, 1546, 3, 4, 5, 6, -1, 1025,
3530 1026, 1027, 1028, 1029, 1030, 1031, -1, 548, 1258, 1035,
3531 1036, 1037, 1038, 3, 4, 5, 6, 7, 8, 9,
3532 -1, -1, -1, -1, 14, -1, -1, -1, -1, -1,
3533 -1, -1, -1, 42, -1, -1, -1, -1, 28, -1,
3534 30, 31, -1, -1, -1, -1, 55, 37, 57, 58,
3535 -1, -1, 42, -1, 63, -1, 46, -1, -1, -1,
3536 -1, -1, 71, -1, -1, 55, -1, 57, 58, -1,
3537 -1, -1, 81, -1, -1, -1, -1, -1, -1, -1,
3538 89, 71, 623, 31, 93, -1, -1, -1, -1, -1,
3539 -1, 81, -1, 634, 635, -1, 637, 638, 1348, 89,
3540 1350, -1, -1, 93, -1, -1, -1, -1, -1, -1,
3541 -1, 1361, 1362, 1363, 1364, -1, 64, 65, 66, 67,
3542 68, 69, 70, 71, 72, 73, 74, 75, 76, 77,
3543 78, 79, 80, 81, 82, 83, 84, 85, -1, -1,
3544 -1, -1, -1, -1, 1170, -1, -1, 1173, 1174, 1175,
3545 691, -1, -1, -1, -1, -1, -1, 698, 699, -1,
3546 -1, -1, -1, -1, -1, -1, 707, -1, -1, -1,
3547 3, 4, 5, 6, 7, 8, 9, -1, -1, -1,
3548 -1, 14, -1, -1, -1, -1, -1, -1, -1, 730,
3549 -1, -1, 1218, 1219, 1220, 1221, 1222, 1223, 31, -1,
3550 1226, -1, -1, -1, 37, -1, -1, 1457, -1, 42,
3551 -1, -1, -1, 46, -1, 48, 1466, 1467, 1468, 1469,
3552 -1, -1, 55, -1, 57, 58, -1, -1, -1, -1,
3553 -1, -1, -1, -1, -1, -1, -1, -1, 71, 4,
3554 5, -1, 7, 8, 9, -1, -1, 12, 81, 14,
3555 -1, -1, -1, -1, -1, -1, 89, -1, -1, -1,
3556 93, -1, -1, 28, -1, 30, 31, -1, 809, -1,
3557 -1, 812, 37, -1, -1, -1, 1526, 1527, 1528, -1,
3558 -1, 46, 1532, 48, -1, -1, -1, -1, -1, -1,
3559 55, -1, 57, 58, -1, -1, -1, -1, -1, -1,
3560 -1, 1551, -1, 844, 845, 846, 71, 4, 5, -1,
3561 7, 8, 9, -1, 855, -1, 81, 14, -1, -1,
3562 -1, -1, -1, -1, -1, -1, -1, -1, 93, 94,
3563 -1, 28, -1, 30, 31, 1361, 1362, -1, 1364, -1,
3564 37, -1, -1, -1, -1, -1, -1, -1, -1, 46,
3565 -1, -1, -1, -1, -1, -1, -1, -1, 55, -1,
3566 57, 58, 64, 65, 66, 67, 68, 69, 70, 71,
3567 72, 73, 74, 75, 76, 77, 78, 79, 80, 81,
3568 82, 83, 84, 85, -1, -1, -1, -1, 929, 930,
3569 -1, -1, 933, -1, -1, 936, -1, -1, -1, -1,
3570 -1, -1, -1, -1, 945, -1, -1, -1, -1, 111,
3571 -1, -1, -1, -1, 955, -1, -1, -1, -1, -1,
3572 -1, 1, -1, 3, 4, 5, 6, 7, 8, 9,
3573 -1, -1, 12, -1, 14, -1, -1, -1, -1, -1,
3574 1466, 1467, 1468, 1469, -1, 25, -1, 27, -1, -1,
3575 -1, 31, -1, -1, -1, -1, -1, 37, -1, -1,
3576 -1, -1, 42, -1, -1, -1, 46, -1, 48, -1,
3577 -1, -1, -1, -1, -1, 55, -1, 57, 58, 59,
3578 60, 61, -1, 63, 64, 65, 66, 67, 68, 69,
3579 70, 71, 72, 73, 74, 75, 76, 77, 78, 79,
3580 80, 81, 82, 83, 84, 85, 1532, 87, 88, 89,
3581 -1, 91, 92, 93, 94, 95, -1, -1, -1, 1060,
3582 -1, 101, 102, -1, -1, -1, -1, 107, 108, 109,
3583 1, 111, 3, 4, 5, 6, 7, 8, 9, 10,
3584 11, 12, 13, 14, -1, -1, 1087, -1, -1, -1,
3585 -1, -1, -1, -1, -1, -1, -1, 28, 29, 30,
3586 31, 32, -1, 34, 35, 36, 37, -1, 39, 40,
3587 41, 42, 43, 44, -1, 46, -1, 48, -1, 50,
3588 51, 52, 53, 54, 55, -1, 57, 58, 59, -1,
3589 -1, 62, -1, -1, -1, -1, -1, 68, -1, -1,
3590 71, -1, -1, 1144, 1145, -1, 1147, -1, 79, 80,
3591 81, -1, -1, -1, -1, -1, 87, 88, 89, -1,
3592 -1, -1, 93, 94, -1, -1, -1, -1, -1, 1170,
3593 -1, -1, 1173, 1174, -1, -1, -1, -1, -1, 110,
3594 70, 71, 72, 73, 74, 75, 76, 77, 78, 79,
3595 80, 81, 82, 83, 84, 85, -1, -1, -1, -1,
3596 -1, 1202, 64, 65, 66, 67, 68, 69, 70, 71,
3597 72, 73, 74, 75, 76, 77, 78, 79, 80, 81,
3598 82, 83, 84, 85, 71, 72, 73, 74, 75, 76,
3599 77, 78, 79, 80, 81, 82, 83, 84, 85, -1,
3600 -1, -1, 1243, -1, -1, 107, 72, 73, 74, 75,
3601 76, 77, 78, 79, 80, 81, 82, 83, 84, 85,
3602 1261, 1, 1263, 3, 4, 5, 6, 7, 8, 9,
3603 10, 11, -1, 13, 14, 15, -1, 17, 18, 19,
3604 20, 21, 22, 23, 24, 25, 26, 27, 28, 29,
3605 30, 31, 32, -1, 34, 35, 36, 37, -1, 39,
3606 40, 41, 42, 43, 44, 45, 46, 47, -1, -1,
3607 50, 51, 52, 53, 54, 55, -1, 57, 58, 59,
3608 -1, 61, 62, -1, -1, -1, -1, -1, 68, -1,
3609 -1, 71, -1, -1, -1, -1, -1, -1, -1, 79,
3610 80, 81, -1, -1, -1, -1, -1, 87, 88, 89,
3611 -1, -1, -1, 93, 1, 95, 3, 4, 5, 6,
3612 7, 8, 9, 10, 11, 12, 13, 14, -1, -1,
3613 110, -1, -1, -1, -1, -1, -1, -1, -1, -1,
3614 -1, 28, 29, 30, 31, 32, -1, 34, 35, 36,
3615 37, -1, 39, 40, 41, 42, 43, 44, -1, 46,
3616 -1, -1, -1, 50, 51, 52, 53, 54, 55, -1,
3617 57, 58, -1, -1, -1, 62, -1, -1, -1, -1,
3618 -1, 68, -1, -1, 71, -1, -1, -1, -1, -1,
3619 -1, -1, 79, 80, 81, -1, -1, -1, -1, -1,
3620 87, 88, 89, -1, -1, 1, 93, 3, 4, 5,
3621 6, 7, 8, 9, 10, 11, -1, 13, 14, -1,
3622 -1, 108, -1, 110, -1, -1, -1, -1, -1, -1,
3623 -1, -1, 28, 29, 30, 31, 32, -1, 34, 35,
3624 36, 37, -1, 39, 40, 41, 42, 43, 44, -1,
3625 46, -1, -1, -1, 50, 51, 52, 53, 54, 55,
3626 -1, 57, 58, 59, -1, 61, 62, -1, -1, -1,
3627 -1, -1, 68, -1, -1, 71, -1, -1, -1, -1,
3628 -1, -1, -1, 79, 80, 81, -1, -1, -1, -1,
3629 -1, 87, 88, 89, -1, -1, 1, 93, 3, 4,
3630 5, 6, -1, 8, 9, 10, 11, -1, 13, 14,
3631 -1, -1, -1, -1, 110, -1, -1, -1, -1, -1,
3632 -1, -1, -1, 28, 29, 30, -1, 32, -1, 34,
273a708f 3633 35, 36, 37, -1, 39, 40, 41, 42, 43, 44,
eca1bd08
UD
3634 -1, 46, -1, -1, -1, 50, 51, 52, 53, 54,
3635 55, -1, 57, 58, 59, -1, -1, 62, -1, -1,
273a708f
MM
3636 -1, -1, -1, 68, -1, -1, 71, -1, -1, -1,
3637 -1, -1, -1, -1, 79, 80, 81, -1, -1, -1,
eca1bd08
UD
3638 -1, -1, 87, 88, 89, -1, -1, -1, 93, 94,
3639 1, -1, 3, 4, 5, 6, -1, 8, 9, 10,
3640 11, -1, 13, 14, 109, 110, -1, -1, -1, -1,
273a708f 3641 -1, -1, -1, -1, -1, -1, -1, 28, 29, 30,
80048418 3642 31, 32, -1, 34, 35, 36, 37, -1, 39, 40,
273a708f
MM
3643 41, 42, 43, 44, -1, 46, -1, -1, -1, 50,
3644 51, 52, 53, 54, 55, -1, 57, 58, 59, -1,
eca1bd08 3645 -1, 62, -1, -1, -1, -1, -1, 68, -1, -1,
273a708f
MM
3646 71, -1, -1, -1, -1, -1, -1, -1, 79, 80,
3647 81, -1, -1, -1, -1, -1, 87, 88, 89, -1,
80048418
MM
3648 -1, 1, 93, 3, 4, 5, 6, -1, 8, 9,
3649 10, 11, -1, 13, 14, -1, -1, -1, -1, 110,
3650 -1, -1, -1, -1, -1, -1, -1, -1, 28, 29,
3651 30, -1, 32, -1, 34, 35, 36, 37, -1, 39,
3652 40, 41, 42, 43, 44, -1, 46, -1, -1, -1,
3653 50, 51, 52, 53, 54, 55, -1, 57, 58, 59,
3654 -1, -1, 62, -1, -1, -1, -1, -1, 68, -1,
3655 -1, 71, -1, -1, -1, -1, -1, -1, -1, 79,
3656 80, 81, -1, -1, -1, -1, -1, 87, 88, 89,
3657 -1, -1, -1, 93, 94, 1, -1, 3, 4, 5,
eca1bd08 3658 6, -1, 8, 9, 10, 11, -1, 13, 14, -1,
80048418 3659 110, -1, -1, -1, -1, -1, -1, -1, -1, -1,
eca1bd08 3660 -1, -1, 28, 29, 30, -1, 32, -1, 34, 35,
273a708f
MM
3661 36, 37, -1, 39, 40, 41, 42, 43, 44, -1,
3662 46, -1, -1, -1, 50, 51, 52, 53, 54, 55,
3663 -1, 57, 58, 59, -1, -1, 62, -1, -1, -1,
3664 -1, -1, 68, -1, -1, 71, -1, -1, -1, -1,
3665 -1, -1, -1, 79, 80, 81, -1, -1, -1, -1,
eca1bd08
UD
3666 -1, 87, 88, 89, -1, -1, -1, 93, 1, -1,
3667 3, 4, 5, 6, 100, 8, 9, 10, 11, -1,
3668 13, 14, -1, -1, 110, -1, -1, -1, -1, -1,
3669 -1, -1, -1, -1, -1, 28, 29, 30, -1, 32,
3670 -1, 34, 35, 36, 37, -1, 39, 40, 41, 42,
3671 43, 44, -1, 46, -1, -1, -1, 50, 51, 52,
3672 53, 54, 55, -1, 57, 58, 59, -1, -1, 62,
3673 -1, -1, -1, -1, -1, 68, -1, -1, 71, -1,
3674 -1, -1, -1, -1, -1, -1, 79, 80, 81, -1,
3675 -1, -1, -1, -1, 87, 88, 89, -1, -1, 1,
3676 93, 3, 4, 5, 6, -1, 8, 9, 10, 11,
3677 -1, 13, 14, -1, -1, -1, 109, 110, -1, -1,
3678 -1, -1, -1, -1, -1, -1, 28, 29, 30, -1,
3679 32, -1, 34, 35, 36, 37, -1, 39, 40, 41,
3680 42, 43, 44, -1, 46, -1, -1, -1, 50, 51,
3681 52, 53, 54, 55, -1, 57, 58, 59, -1, -1,
3682 62, -1, -1, -1, -1, -1, 68, -1, -1, 71,
3683 -1, -1, -1, -1, -1, -1, -1, 79, 80, 81,
3684 -1, -1, -1, -1, -1, 87, 88, 89, -1, -1,
3685 1, 93, 3, 4, 5, 6, -1, 8, 9, 10,
3686 11, -1, 13, 14, -1, -1, -1, 109, 110, -1,
273a708f 3687 -1, -1, -1, -1, -1, -1, -1, 28, 29, 30,
eca1bd08 3688 31, 32, -1, 34, 35, 36, 37, -1, 39, 40,
273a708f
MM
3689 41, 42, 43, 44, -1, 46, -1, -1, -1, 50,
3690 51, 52, 53, 54, 55, -1, 57, 58, 59, -1,
3691 -1, 62, -1, -1, -1, -1, -1, 68, -1, -1,
3692 71, -1, -1, -1, -1, -1, -1, -1, 79, 80,
3693 81, -1, -1, -1, -1, -1, 87, 88, 89, -1,
eca1bd08
UD
3694 -1, 1, 93, 3, 4, 5, 6, -1, 8, 9,
3695 10, 11, -1, 13, 14, -1, -1, -1, -1, 110,
3696 -1, -1, -1, -1, -1, -1, -1, -1, 28, 29,
3697 30, -1, 32, -1, 34, 35, 36, 37, -1, 39,
3698 40, 41, 42, 43, 44, -1, 46, -1, -1, -1,
3699 50, 51, 52, 53, 54, 55, -1, 57, 58, 59,
3700 -1, -1, 62, -1, -1, -1, -1, -1, 68, -1,
3701 -1, 71, -1, -1, -1, -1, -1, -1, -1, 79,
3702 80, 81, -1, -1, -1, -1, -1, 87, 88, 89,
3703 -1, -1, 1, 93, 3, 4, 5, 6, -1, 8,
3704 9, 10, 11, -1, 13, 14, -1, -1, -1, -1,
3705 110, -1, -1, -1, -1, -1, -1, -1, -1, 28,
3706 29, 30, -1, 32, -1, 34, 35, 36, 37, -1,
3707 39, 40, 41, 42, 43, 44, -1, 46, -1, -1,
3708 -1, 50, 51, 52, 53, 54, 55, -1, 57, 58,
3709 -1, -1, -1, 62, 63, -1, -1, -1, -1, 68,
3710 -1, -1, 71, -1, -1, -1, -1, -1, -1, -1,
3711 79, 80, 81, -1, -1, -1, -1, -1, 87, 88,
3712 89, -1, -1, 1, 93, 3, 4, 5, 6, -1,
3713 8, 9, 10, 11, -1, 13, 14, -1, -1, -1,
3714 -1, 110, -1, -1, -1, -1, -1, -1, -1, -1,
80048418
MM
3715 28, 29, 30, -1, 32, -1, 34, 35, 36, 37,
3716 -1, 39, 40, 41, 42, 43, 44, -1, 46, -1,
3717 -1, -1, 50, 51, 52, 53, 54, 55, -1, 57,
eca1bd08 3718 58, -1, -1, 61, 62, -1, -1, -1, -1, -1,
80048418
MM
3719 68, -1, -1, 71, -1, -1, -1, -1, -1, -1,
3720 -1, 79, 80, 81, -1, -1, -1, -1, -1, 87,
3721 88, 89, -1, -1, 1, 93, 3, 4, 5, 6,
3722 -1, 8, 9, 10, 11, -1, 13, 14, -1, -1,
eca1bd08 3723 -1, -1, 110, -1, -1, -1, -1, -1, -1, -1,
80048418 3724 -1, 28, 29, 30, -1, 32, -1, 34, 35, 36,
4a4b0aa3
RH
3725 37, -1, 39, 40, 41, 42, 43, 44, -1, 46,
3726 -1, -1, -1, 50, 51, 52, 53, 54, 55, -1,
eca1bd08 3727 57, 58, -1, -1, -1, 62, -1, -1, -1, -1,
4a4b0aa3
RH
3728 -1, 68, -1, -1, 71, -1, -1, -1, -1, -1,
3729 -1, -1, 79, 80, 81, -1, -1, -1, -1, -1,
6eabb241 3730 87, 88, 89, -1, -1, 1, 93, 3, 4, 5,
4a4b0aa3 3731 6, -1, 8, 9, 10, 11, -1, 13, 14, -1,
eca1bd08
UD
3732 -1, 108, -1, 110, -1, -1, -1, -1, -1, -1,
3733 -1, -1, 28, 29, 30, -1, 32, -1, 34, 35,
4a4b0aa3
RH
3734 36, 37, -1, 39, 40, 41, 42, 43, 44, -1,
3735 46, -1, -1, -1, 50, 51, 52, 53, 54, 55,
eca1bd08 3736 -1, 57, 58, -1, -1, -1, 62, -1, -1, -1,
4a4b0aa3
RH
3737 -1, -1, 68, -1, -1, 71, -1, -1, -1, -1,
3738 -1, -1, -1, 79, 80, 81, -1, -1, -1, -1,
6eabb241
MM
3739 -1, 87, 88, 89, -1, -1, 1, 93, 3, 4,
3740 5, 6, -1, 8, 9, 10, 11, -1, 13, 14,
3741 -1, -1, -1, -1, 110, -1, -1, -1, -1, -1,
3742 -1, -1, -1, 28, 29, 30, -1, 32, -1, 34,
3743 35, 36, 37, -1, 39, 40, 41, 42, 43, 44,
3744 -1, 46, -1, -1, -1, 50, 51, 52, 53, 54,
eca1bd08 3745 55, -1, 57, 58, -1, -1, -1, 62, -1, -1,
6eabb241
MM
3746 -1, -1, -1, 68, -1, -1, 71, -1, -1, -1,
3747 -1, -1, -1, -1, 79, 80, 81, -1, -1, -1,
3748 -1, -1, 87, 88, 89, -1, -1, 1, 93, 3,
3749 4, 5, 6, -1, 8, 9, 10, 11, -1, 13,
273a708f 3750 14, -1, -1, -1, -1, 110, -1, -1, -1, -1,
6eabb241
MM
3751 -1, -1, -1, -1, 28, 29, 30, -1, 32, -1,
3752 34, 35, 36, 37, -1, 39, 40, 41, 42, 43,
3753 44, -1, 46, -1, -1, -1, 50, 51, 52, 53,
eca1bd08 3754 54, 55, -1, 57, 58, -1, -1, -1, 62, -1,
6eabb241
MM
3755 -1, -1, -1, -1, 68, -1, -1, 71, -1, -1,
3756 -1, -1, -1, -1, -1, 79, 80, 81, -1, -1,
eca1bd08 3757 -1, -1, -1, 87, 88, 89, -1, -1, -1, 93,
6eabb241 3758 3, 4, 5, 6, -1, 8, 9, 10, 11, -1,
87e3dbc9 3759 13, 14, -1, -1, -1, -1, 110, -1, -1, -1,
6eabb241
MM
3760 -1, -1, -1, -1, -1, 28, 29, 30, -1, 32,
3761 -1, 34, 35, 36, 37, -1, 39, 40, 41, 42,
3762 43, 44, -1, 46, -1, -1, -1, 50, 51, 52,
eca1bd08 3763 53, 54, 55, -1, 57, 58, -1, -1, -1, 62,
6eabb241
MM
3764 -1, -1, -1, -1, -1, 68, -1, -1, 71, -1,
3765 -1, -1, -1, -1, -1, -1, 79, 80, 81, -1,
eca1bd08 3766 -1, -1, -1, -1, 87, 88, 89, -1, -1, -1,
6eabb241 3767 93, 3, 4, 5, 6, -1, 8, 9, 10, 11,
eca1bd08 3768 -1, 13, 14, -1, -1, -1, -1, 110, 111, -1,
6eabb241
MM
3769 -1, -1, -1, -1, -1, -1, 28, 29, 30, -1,
3770 32, -1, 34, 35, 36, 37, -1, 39, 40, 41,
3771 42, 43, 44, -1, 46, -1, -1, -1, 50, 51,
3772 52, 53, 54, 55, -1, 57, 58, -1, -1, -1,
3773 62, -1, -1, -1, -1, -1, 68, -1, -1, 71,
3774 -1, -1, -1, -1, -1, -1, -1, 79, 80, 81,
3775 -1, -1, -1, -1, -1, 87, 88, 89, -1, -1,
eca1bd08
UD
3776 -1, 93, 3, 4, 5, 6, -1, 8, 9, 10,
3777 11, -1, 13, 14, -1, -1, -1, -1, 110, 111,
6eabb241
MM
3778 -1, -1, -1, -1, -1, -1, -1, 28, 29, 30,
3779 -1, 32, -1, 34, 35, 36, 37, -1, 39, 40,
3780 41, 42, 43, 44, -1, 46, -1, -1, -1, 50,
3781 51, 52, 53, 54, 55, -1, 57, 58, -1, -1,
3782 -1, 62, -1, -1, -1, -1, -1, 68, -1, -1,
3783 71, -1, -1, -1, -1, -1, -1, -1, 79, 80,
3784 81, -1, -1, -1, -1, -1, 87, 88, 89, -1,
eca1bd08 3785 -1, -1, 93, 3, 4, 5, 6, -1, 8, 9,
273a708f 3786 10, 11, -1, 13, 14, -1, -1, -1, -1, 110,
eca1bd08 3787 111, -1, -1, -1, -1, -1, -1, -1, 28, 29,
273a708f
MM
3788 30, -1, 32, -1, 34, 35, 36, 37, -1, 39,
3789 40, 41, 42, 43, 44, -1, 46, -1, -1, -1,
3790 50, 51, 52, 53, 54, 55, -1, 57, 58, -1,
3791 -1, -1, 62, -1, -1, -1, -1, -1, 68, -1,
3792 -1, 71, -1, -1, -1, -1, -1, -1, -1, 79,
3793 80, 81, -1, -1, -1, -1, -1, 87, 88, 89,
eca1bd08 3794 -1, -1, -1, 93, 3, 4, 5, 6, -1, 8,
273a708f 3795 9, 10, 11, -1, 13, 14, -1, -1, -1, -1,
eca1bd08 3796 110, 111, -1, -1, -1, -1, -1, -1, -1, 28,
273a708f
MM
3797 29, 30, -1, 32, -1, 34, 35, 36, 37, -1,
3798 39, 40, 41, 42, 43, 44, -1, 46, -1, -1,
3799 -1, 50, 51, 52, 53, 54, 55, -1, 57, 58,
3800 -1, -1, -1, 62, -1, -1, -1, -1, -1, 68,
3801 -1, -1, 71, -1, -1, -1, -1, -1, -1, -1,
3802 79, 80, 81, -1, -1, -1, -1, -1, 87, 88,
eca1bd08 3803 89, -1, -1, -1, 93, -1, -1, -1, -1, -1,
273a708f 3804 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
eca1bd08
UD
3805 -1, 110, 111, 3, 4, 5, 6, 7, 8, 9,
3806 10, 11, -1, 13, 14, 15, -1, 17, 18, 19,
3807 20, 21, 22, 23, 24, 25, 26, 27, 28, 29,
3808 30, 31, 32, -1, 34, 35, 36, 37, -1, 39,
3809 40, 41, 42, 43, 44, 45, 46, 47, -1, -1,
3810 50, 51, 52, 53, 54, 55, -1, 57, 58, 59,
3811 -1, 61, 62, -1, -1, -1, -1, -1, 68, -1,
3812 -1, 71, -1, -1, -1, -1, -1, -1, -1, 79,
3813 80, 81, -1, -1, -1, -1, -1, 87, 88, 89,
3814 -1, -1, -1, 93, -1, 95, -1, -1, -1, -1,
3815 -1, -1, -1, -1, -1, -1, -1, -1, -1, 109,
3816 110, 3, 4, 5, 6, 7, 8, 9, 10, 11,
3817 -1, 13, 14, 15, -1, 17, 18, 19, 20, 21,
3818 22, 23, 24, 25, 26, 27, 28, 29, 30, 31,
3819 32, -1, 34, 35, 36, 37, -1, 39, 40, 41,
3820 42, 43, 44, 45, 46, 47, -1, -1, 50, 51,
3821 52, 53, 54, 55, -1, 57, 58, 59, -1, 61,
3822 62, -1, -1, -1, -1, -1, 68, -1, -1, 71,
3823 -1, -1, -1, -1, -1, -1, -1, 79, 80, 81,
3824 -1, -1, -1, -1, -1, 87, 88, 89, -1, -1,
3825 -1, 93, -1, 95, -1, 3, 4, 5, 6, 7,
3826 8, 9, 10, 11, -1, 13, 14, 15, 110, 17,
273a708f
MM
3827 18, 19, 20, 21, 22, 23, 24, 25, 26, 27,
3828 28, 29, 30, 31, 32, -1, 34, 35, 36, 37,
3829 -1, 39, 40, 41, 42, 43, 44, 45, 46, 47,
3830 -1, -1, 50, 51, 52, 53, 54, 55, -1, 57,
3831 58, 59, -1, 61, 62, -1, -1, -1, -1, -1,
3832 68, -1, -1, 71, -1, -1, -1, -1, -1, -1,
3833 -1, 79, 80, 81, -1, -1, -1, -1, -1, 87,
3834 88, 89, -1, -1, -1, 93, -1, 95, -1, 3,
87e3dbc9 3835 4, 5, 6, 7, 8, 9, 10, 11, -1, 13,
273a708f 3836 14, 15, 110, 17, 18, 19, 20, 21, 22, 23,
87e3dbc9
MM
3837 24, 25, 26, 27, 28, 29, 30, 31, 32, -1,
3838 34, 35, 36, 37, -1, 39, 40, 41, 42, 43,
3839 44, 45, 46, 47, -1, -1, 50, 51, 52, 53,
eca1bd08 3840 54, 55, -1, 57, 58, -1, -1, 61, 62, -1,
87e3dbc9
MM
3841 -1, -1, -1, -1, 68, -1, -1, 71, -1, -1,
3842 -1, -1, -1, -1, -1, 79, 80, 81, -1, -1,
3843 -1, -1, -1, 87, 88, 89, -1, -1, -1, 93,
eca1bd08
UD
3844 -1, 95, 3, 4, 5, 6, 7, 8, 9, 10,
3845 11, 12, 13, 14, -1, -1, 110, -1, -1, -1,
3846 -1, -1, -1, -1, -1, -1, -1, 28, 29, 30,
3847 31, 32, -1, 34, 35, 36, 37, -1, 39, 40,
3848 41, 42, 43, 44, -1, 46, -1, 48, -1, 50,
3849 51, 52, 53, 54, 55, -1, 57, 58, -1, -1,
3850 -1, 62, -1, -1, -1, -1, -1, 68, -1, -1,
3851 71, -1, -1, -1, -1, -1, -1, -1, 79, 80,
3852 81, -1, -1, -1, -1, -1, 87, 88, 89, -1,
3853 -1, -1, 93, 94, 3, 4, 5, 6, 7, 8,
3854 9, 10, 11, 12, 13, 14, -1, -1, -1, 110,
3855 -1, -1, -1, -1, -1, -1, -1, -1, -1, 28,
3856 29, 30, 31, 32, -1, 34, 35, 36, 37, -1,
3857 39, 40, 41, 42, 43, 44, -1, 46, -1, 48,
3858 -1, 50, 51, 52, 53, 54, 55, -1, 57, 58,
3859 -1, -1, -1, 62, -1, -1, -1, -1, -1, 68,
3860 -1, -1, 71, -1, -1, -1, -1, -1, -1, -1,
3861 79, 80, 81, -1, -1, -1, -1, -1, 87, 88,
3862 89, -1, -1, -1, 93, 94, 3, 4, 5, 6,
3863 -1, 8, 9, 10, 11, -1, 13, 14, -1, -1,
3864 -1, 110, -1, -1, -1, -1, -1, -1, -1, -1,
87e3dbc9
MM
3865 -1, 28, 29, 30, 31, 32, -1, 34, 35, 36,
3866 37, -1, 39, 40, 41, 42, 43, 44, -1, 46,
3867 -1, 48, -1, 50, 51, 52, 53, 54, 55, -1,
eca1bd08 3868 57, 58, -1, -1, -1, -1, -1, -1, -1, -1,
87e3dbc9
MM
3869 -1, 68, -1, -1, 71, -1, -1, -1, -1, -1,
3870 -1, -1, 79, 80, 81, -1, -1, -1, -1, -1,
3871 87, 88, 89, -1, -1, -1, 93, 94, 3, 4,
eca1bd08 3872 5, 6, -1, 8, 9, 10, 11, -1, 13, 14,
87e3dbc9
MM
3873 -1, -1, -1, 110, -1, -1, -1, -1, -1, -1,
3874 -1, -1, -1, 28, 29, 30, 31, 32, -1, 34,
e88e3c0b 3875 35, 36, 37, -1, 39, 40, 41, 42, 43, 44,
273a708f 3876 -1, 46, -1, 48, -1, 50, 51, 52, 53, 54,
eca1bd08 3877 55, -1, 57, 58, -1, -1, -1, -1, -1, -1,
e88e3c0b
JM
3878 -1, -1, -1, 68, -1, -1, 71, -1, -1, -1,
3879 -1, -1, -1, -1, 79, 80, 81, -1, -1, -1,
273a708f
MM
3880 -1, -1, 87, 88, 89, -1, -1, -1, 93, 94,
3881 3, 4, 5, 6, -1, 8, 9, 10, 11, -1,
3882 13, 14, -1, -1, -1, 110, -1, -1, -1, -1,
87e3dbc9 3883 -1, -1, -1, -1, -1, 28, 29, 30, 31, 32,
6eabb241 3884 -1, 34, 35, 36, 37, -1, 39, 40, 41, 42,
eca1bd08
UD
3885 43, 44, -1, 46, -1, -1, -1, 50, 51, 52,
3886 53, 54, 55, -1, 57, 58, -1, -1, -1, 62,
6eabb241
MM
3887 -1, -1, -1, -1, -1, 68, -1, -1, 71, -1,
3888 -1, -1, -1, -1, -1, -1, 79, 80, 81, -1,
3889 -1, -1, -1, -1, 87, 88, 89, -1, -1, -1,
eca1bd08
UD
3890 93, 3, 4, 5, 6, -1, 8, 9, 10, 11,
3891 -1, 13, 14, -1, -1, -1, -1, 110, -1, -1,
3892 -1, -1, -1, -1, -1, -1, 28, 29, 30, -1,
3893 32, -1, 34, 35, 36, 37, -1, 39, 40, 41,
3894 42, 43, 44, -1, 46, -1, -1, -1, 50, 51,
3895 52, 53, 54, 55, -1, 57, 58, -1, -1, 61,
3896 62, -1, -1, -1, -1, -1, 68, -1, -1, 71,
3897 -1, -1, -1, -1, -1, -1, -1, 79, 80, 81,
3898 -1, -1, -1, -1, -1, 87, 88, 89, -1, -1,
3899 -1, 93, 3, 4, 5, 6, 7, 8, 9, 10,
3900 11, -1, 13, 14, -1, -1, -1, -1, 110, -1,
4a4b0aa3 3901 -1, -1, -1, -1, -1, -1, -1, 28, 29, 30,
273a708f 3902 31, 32, -1, 34, 35, 36, 37, -1, 39, 40,
eca1bd08 3903 41, 42, 43, 44, -1, 46, -1, -1, -1, 50,
4a4b0aa3 3904 51, 52, 53, 54, 55, -1, 57, 58, -1, -1,
273a708f 3905 -1, -1, -1, -1, -1, -1, -1, 68, -1, -1,
4a4b0aa3
RH
3906 71, -1, -1, -1, -1, -1, -1, -1, 79, 80,
3907 81, -1, -1, -1, -1, -1, 87, 88, 89, -1,
eca1bd08
UD
3908 -1, -1, 93, 3, 4, 5, 6, -1, 8, 9,
3909 10, 11, -1, 13, 14, -1, -1, -1, -1, 110,
3910 -1, -1, -1, -1, -1, -1, -1, -1, 28, 29,
3911 30, 31, 32, -1, 34, 35, 36, 37, -1, 39,
3912 40, 41, 42, 43, 44, -1, 46, -1, -1, -1,
3913 50, 51, 52, 53, 54, 55, -1, 57, 58, -1,
3914 -1, -1, 62, -1, -1, -1, -1, -1, 68, -1,
3915 -1, 71, -1, -1, -1, -1, -1, -1, -1, 79,
3916 80, 81, -1, -1, -1, -1, -1, 87, 88, 89,
3917 -1, -1, -1, 93, 3, 4, 5, 6, -1, 8,
3918 9, 10, 11, -1, 13, 14, -1, -1, -1, -1,
3919 110, -1, -1, -1, -1, -1, -1, -1, -1, 28,
3920 29, 30, -1, 32, -1, 34, 35, 36, 37, -1,
4a4b0aa3
RH
3921 39, 40, 41, 42, 43, 44, -1, 46, -1, -1,
3922 -1, 50, 51, 52, 53, 54, 55, -1, 57, 58,
3923 -1, -1, -1, 62, -1, -1, -1, -1, -1, 68,
3924 -1, -1, 71, -1, -1, -1, -1, -1, -1, -1,
3925 79, 80, 81, -1, -1, -1, -1, -1, 87, 88,
3926 89, -1, -1, -1, 93, 3, 4, 5, 6, -1,
3927 8, 9, 10, 11, -1, 13, 14, -1, -1, -1,
3928 -1, 110, -1, -1, -1, -1, -1, -1, -1, -1,
3929 28, 29, 30, -1, 32, -1, 34, 35, 36, 37,
3930 -1, 39, 40, 41, 42, 43, 44, -1, 46, -1,
3931 -1, -1, 50, 51, 52, 53, 54, 55, -1, 57,
eca1bd08 3932 58, -1, -1, -1, 62, -1, -1, -1, -1, -1,
4a4b0aa3
RH
3933 68, -1, -1, 71, -1, -1, -1, -1, -1, -1,
3934 -1, 79, 80, 81, -1, -1, -1, -1, -1, 87,
3935 88, 89, -1, -1, -1, 93, 3, 4, 5, 6,
eca1bd08 3936 -1, 8, 9, 10, 11, -1, 13, 14, -1, -1,
4a4b0aa3 3937 -1, -1, 110, -1, -1, -1, -1, -1, -1, -1,
eca1bd08 3938 -1, 28, 29, 30, -1, 32, -1, 34, 35, 36,
4a4b0aa3
RH
3939 37, -1, 39, 40, 41, 42, 43, 44, -1, 46,
3940 -1, -1, -1, 50, 51, 52, 53, 54, 55, -1,
eca1bd08 3941 57, 58, -1, -1, -1, 62, -1, -1, -1, -1,
4a4b0aa3
RH
3942 -1, 68, -1, -1, 71, -1, -1, -1, -1, -1,
3943 -1, -1, 79, 80, 81, -1, -1, -1, -1, -1,
273a708f
MM
3944 87, 88, 89, -1, -1, -1, 93, 3, 4, 5,
3945 6, -1, 8, 9, 10, 11, -1, 13, 14, -1,
4a4b0aa3 3946 -1, -1, -1, 110, -1, -1, -1, -1, -1, -1,
eca1bd08 3947 -1, -1, 28, 29, 30, -1, 32, -1, 34, 35,
273a708f
MM
3948 36, 37, -1, 39, 40, 41, 42, 43, 44, -1,
3949 46, -1, -1, -1, 50, 51, 52, 53, 54, 55,
eca1bd08 3950 -1, 57, 58, 59, -1, -1, -1, -1, -1, -1,
273a708f
MM
3951 -1, -1, 68, -1, -1, 71, -1, -1, -1, -1,
3952 -1, -1, -1, 79, 80, 81, -1, -1, -1, -1,
3953 -1, 87, 88, 89, -1, -1, -1, 93, 3, 4,
3954 5, 6, -1, 8, 9, 10, 11, -1, 13, 14,
3955 -1, -1, -1, -1, 110, -1, -1, -1, -1, -1,
3956 -1, -1, -1, 28, 29, 30, -1, 32, -1, 34,
87e3dbc9
MM
3957 35, 36, 37, -1, 39, 40, 41, 42, 43, 44,
3958 -1, 46, -1, -1, -1, 50, 51, 52, 53, 54,
eca1bd08 3959 55, -1, 57, 58, -1, -1, -1, -1, -1, -1,
87e3dbc9
MM
3960 -1, -1, -1, 68, -1, -1, 71, -1, -1, -1,
3961 -1, -1, -1, -1, 79, 80, 81, -1, -1, -1,
eca1bd08 3962 -1, -1, 87, 88, 89, -1, -1, -1, 93, 94,
6eabb241 3963 3, 4, 5, 6, -1, 8, 9, 10, 11, -1,
eca1bd08
UD
3964 13, 14, -1, -1, -1, 110, -1, -1, -1, -1,
3965 -1, -1, -1, -1, -1, 28, 29, 30, 31, 32,
6eabb241
MM
3966 -1, 34, 35, 36, 37, -1, 39, 40, 41, 42,
3967 43, 44, -1, 46, -1, -1, -1, 50, 51, 52,
eca1bd08 3968 53, 54, 55, -1, 57, 58, -1, -1, -1, -1,
6eabb241
MM
3969 -1, -1, -1, -1, -1, 68, -1, -1, 71, -1,
3970 -1, -1, -1, -1, -1, -1, 79, 80, 81, -1,
3971 -1, -1, -1, -1, 87, 88, 89, -1, -1, -1,
3972 93, 3, 4, 5, 6, -1, 8, 9, 10, 11,
3973 -1, 13, 14, -1, -1, -1, -1, 110, -1, -1,
87e3dbc9 3974 -1, -1, -1, -1, -1, -1, 28, 29, 30, -1,
4a4b0aa3
RH
3975 32, -1, 34, 35, 36, 37, -1, 39, 40, 41,
3976 42, 43, 44, -1, 46, -1, -1, -1, 50, 51,
eca1bd08
UD
3977 52, 53, 54, 55, -1, 57, 58, -1, -1, -1,
3978 62, -1, -1, -1, -1, -1, 68, -1, -1, 71,
4a4b0aa3
RH
3979 -1, -1, -1, -1, -1, -1, -1, 79, 80, 81,
3980 -1, -1, -1, -1, -1, 87, 88, 89, -1, -1,
3981 -1, 93, 3, 4, 5, 6, -1, 8, 9, 10,
3982 11, -1, 13, 14, -1, -1, -1, -1, 110, -1,
46ff11fd 3983 -1, -1, -1, -1, -1, -1, -1, 28, 29, 30,
eca1bd08 3984 31, 32, -1, 34, 35, 36, 37, -1, 39, 40,
4a4b0aa3
RH
3985 41, 42, 43, 44, -1, 46, -1, -1, -1, 50,
3986 51, 52, 53, 54, 55, -1, 57, 58, -1, -1,
6eabb241 3987 -1, -1, -1, -1, -1, -1, -1, 68, -1, -1,
4a4b0aa3
RH
3988 71, -1, -1, -1, -1, -1, -1, -1, 79, 80,
3989 81, -1, -1, -1, -1, -1, 87, 88, 89, -1,
eca1bd08
UD
3990 -1, -1, 93, 3, 4, 5, 6, -1, 8, 9,
3991 10, 11, -1, 13, 14, -1, -1, -1, -1, 110,
3992 -1, -1, -1, -1, -1, -1, -1, -1, 28, 29,
3993 30, -1, 32, -1, 34, 35, 36, 37, -1, 39,
3994 40, 41, 42, 43, 44, -1, 46, -1, -1, -1,
3995 50, 51, 52, 53, 54, 55, -1, 57, 58, -1,
3996 -1, -1, -1, -1, -1, -1, -1, -1, 68, -1,
3997 -1, 71, -1, -1, -1, -1, -1, -1, -1, 79,
3998 80, 81, -1, -1, -1, -1, -1, 87, 88, 89,
3999 -1, -1, -1, 93, 3, 4, 5, 6, -1, 8,
4000 9, 10, 11, -1, 13, 14, -1, -1, -1, -1,
4001 110, -1, -1, -1, -1, -1, -1, -1, -1, 28,
4002 29, 30, -1, 32, -1, 34, 35, 36, 37, -1,
273a708f
MM
4003 39, 40, 41, 42, 43, 44, -1, 46, -1, -1,
4004 -1, 50, 51, 52, 53, 54, 55, -1, 57, 58,
4005 -1, -1, -1, -1, -1, -1, -1, -1, -1, 68,
4006 -1, -1, 71, -1, -1, -1, -1, -1, -1, -1,
4007 79, 80, 81, -1, -1, -1, -1, -1, 87, 88,
4008 89, -1, -1, -1, 93, 3, 4, 5, 6, -1,
4009 8, 9, 10, 11, -1, 13, 14, -1, -1, -1,
4010 -1, 110, -1, -1, -1, -1, -1, -1, -1, -1,
4011 28, 29, 30, -1, 32, -1, 34, 35, 36, 37,
4012 -1, 39, 40, 41, 42, 43, 44, -1, 46, -1,
4013 -1, -1, 50, 51, 52, 53, 54, 55, -1, 57,
eca1bd08 4014 58, -1, -1, -1, -1, -1, -1, -1, -1, -1,
273a708f
MM
4015 68, -1, -1, 71, -1, -1, -1, -1, -1, -1,
4016 -1, 79, 80, 81, -1, -1, -1, -1, -1, 87,
eca1bd08
UD
4017 88, 89, -1, -1, -1, 93, -1, -1, -1, -1,
4018 -1, -1, -1, -1, -1, -1, -1, -1, -1, 60,
4019 -1, -1, 110, 64, 65, 66, 67, 68, 69, 70,
4020 71, 72, 73, 74, 75, 76, 77, 78, 79, 80,
4021 81, 82, 83, 84, 85, 60, -1, -1, -1, 64,
80048418
MM
4022 65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
4023 75, 76, 77, 78, 79, 80, 81, 82, 83, 84,
eca1bd08 4024 85, 63, 64, 65, 66, 67, 68, 69, 70, 71,
80048418 4025 72, 73, 74, 75, 76, 77, 78, 79, 80, 81,
eca1bd08
UD
4026 82, 83, 84, 85, 64, 65, 66, 67, 68, 69,
4027 70, 71, 72, 73, 74, 75, 76, 77, 78, 79,
4028 80, 81, 82, 83, 84, 85, 64, 65, 66, 67,
4029 68, 69, 70, 71, 72, 73, 74, 75, -1, 77,
80048418 4030 78, 79, 80, 81, 82, 83, 84, 85
861bb6c1
JL
4031};
4032/* -*-C-*- Note some compilers choke on comments on `#line' lines. */
d0f062fb
NS
4033#line 3 "/usr/lib/bison.simple"
4034/* This file comes from bison-1.28. */
861bb6c1
JL
4035
4036/* Skeleton output parser for bison,
4037 Copyright (C) 1984, 1989, 1990 Free Software Foundation, Inc.
4038
4039 This program is free software; you can redistribute it and/or modify
4040 it under the terms of the GNU General Public License as published by
4041 the Free Software Foundation; either version 2, or (at your option)
4042 any later version.
4043
4044 This program is distributed in the hope that it will be useful,
4045 but WITHOUT ANY WARRANTY; without even the implied warranty of
4046 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
4047 GNU General Public License for more details.
4048
4049 You should have received a copy of the GNU General Public License
4050 along with this program; if not, write to the Free Software
f1dedc31
MM
4051 Foundation, Inc., 59 Temple Place - Suite 330,
4052 Boston, MA 02111-1307, USA. */
861bb6c1
JL
4053
4054/* As a special exception, when this file is copied by Bison into a
4055 Bison output file, you may use that output file without restriction.
4056 This special exception was added by the Free Software Foundation
4057 in version 1.24 of Bison. */
4058
f1dedc31
MM
4059/* This is the parser code that is written into each bison parser
4060 when the %semantic_parser declaration is not specified in the grammar.
4061 It was written by Richard Stallman by simplifying the hairy parser
4062 used when %semantic_parser is specified. */
4063
4064#ifndef YYSTACK_USE_ALLOCA
4065#ifdef alloca
4066#define YYSTACK_USE_ALLOCA
4067#else /* alloca not defined */
861bb6c1 4068#ifdef __GNUC__
f1dedc31 4069#define YYSTACK_USE_ALLOCA
861bb6c1
JL
4070#define alloca __builtin_alloca
4071#else /* not GNU C. */
f1dedc31
MM
4072#if (!defined (__STDC__) && defined (sparc)) || defined (__sparc__) || defined (__sparc) || defined (__sgi) || (defined (__sun) && defined (__i386))
4073#define YYSTACK_USE_ALLOCA
861bb6c1
JL
4074#include <alloca.h>
4075#else /* not sparc */
f1dedc31
MM
4076/* We think this test detects Watcom and Microsoft C. */
4077/* This used to test MSDOS, but that is a bad idea
4078 since that symbol is in the user namespace. */
4079#if (defined (_MSDOS) || defined (_MSDOS_)) && !defined (__TURBOC__)
4080#if 0 /* No need for malloc.h, which pollutes the namespace;
4081 instead, just don't use alloca. */
861bb6c1 4082#include <malloc.h>
f1dedc31 4083#endif
861bb6c1
JL
4084#else /* not MSDOS, or __TURBOC__ */
4085#if defined(_AIX)
f1dedc31
MM
4086/* I don't know what this was needed for, but it pollutes the namespace.
4087 So I turned it off. rms, 2 May 1997. */
4088/* #include <malloc.h> */
861bb6c1 4089 #pragma alloca
f1dedc31
MM
4090#define YYSTACK_USE_ALLOCA
4091#else /* not MSDOS, or __TURBOC__, or _AIX */
4092#if 0
4093#ifdef __hpux /* haible@ilog.fr says this works for HPUX 9.05 and up,
4094 and on HPUX 10. Eventually we can turn this on. */
4095#define YYSTACK_USE_ALLOCA
4096#define alloca __builtin_alloca
861bb6c1 4097#endif /* __hpux */
f1dedc31 4098#endif
861bb6c1
JL
4099#endif /* not _AIX */
4100#endif /* not MSDOS, or __TURBOC__ */
f1dedc31
MM
4101#endif /* not sparc */
4102#endif /* not GNU C */
4103#endif /* alloca not defined */
4104#endif /* YYSTACK_USE_ALLOCA not defined */
861bb6c1 4105
f1dedc31
MM
4106#ifdef YYSTACK_USE_ALLOCA
4107#define YYSTACK_ALLOC alloca
4108#else
4109#define YYSTACK_ALLOC malloc
4110#endif
861bb6c1
JL
4111
4112/* Note: there must be only one dollar sign in this file.
4113 It is replaced by the list of actions, each action
4114 as one case of the switch. */
4115
4116#define yyerrok (yyerrstatus = 0)
4117#define yyclearin (yychar = YYEMPTY)
4118#define YYEMPTY -2
4119#define YYEOF 0
f1dedc31
MM
4120#define YYACCEPT goto yyacceptlab
4121#define YYABORT goto yyabortlab
861bb6c1
JL
4122#define YYERROR goto yyerrlab1
4123/* Like YYERROR except do call yyerror.
4124 This remains here temporarily to ease the
4125 transition to the new meaning of YYERROR, for GCC.
4126 Once GCC version 2 has supplanted version 1, this can go. */
4127#define YYFAIL goto yyerrlab
4128#define YYRECOVERING() (!!yyerrstatus)
4129#define YYBACKUP(token, value) \
4130do \
4131 if (yychar == YYEMPTY && yylen == 1) \
4132 { yychar = (token), yylval = (value); \
4133 yychar1 = YYTRANSLATE (yychar); \
4134 YYPOPSTACK; \
4135 goto yybackup; \
4136 } \
4137 else \
4138 { yyerror ("syntax error: cannot back up"); YYERROR; } \
4139while (0)
4140
4141#define YYTERROR 1
4142#define YYERRCODE 256
4143
4144#ifndef YYPURE
4145#define YYLEX yylex()
4146#endif
4147
4148#ifdef YYPURE
4149#ifdef YYLSP_NEEDED
4150#ifdef YYLEX_PARAM
4151#define YYLEX yylex(&yylval, &yylloc, YYLEX_PARAM)
4152#else
4153#define YYLEX yylex(&yylval, &yylloc)
4154#endif
4155#else /* not YYLSP_NEEDED */
4156#ifdef YYLEX_PARAM
4157#define YYLEX yylex(&yylval, YYLEX_PARAM)
4158#else
4159#define YYLEX yylex(&yylval)
4160#endif
4161#endif /* not YYLSP_NEEDED */
4162#endif
4163
4164/* If nonreentrant, generate the variables here */
4165
4166#ifndef YYPURE
4167
4168int yychar; /* the lookahead symbol */
4169YYSTYPE yylval; /* the semantic value of the */
4170 /* lookahead symbol */
4171
4172#ifdef YYLSP_NEEDED
4173YYLTYPE yylloc; /* location data for the lookahead */
4174 /* symbol */
4175#endif
4176
4177int yynerrs; /* number of parse errors so far */
4178#endif /* not YYPURE */
4179
4180#if YYDEBUG != 0
4181int yydebug; /* nonzero means print parse trace */
4182/* Since this is uninitialized, it does not stop multiple parsers
4183 from coexisting. */
4184#endif
4185
4186/* YYINITDEPTH indicates the initial size of the parser's stacks */
4187
4188#ifndef YYINITDEPTH
4189#define YYINITDEPTH 200
4190#endif
4191
4192/* YYMAXDEPTH is the maximum size the stacks can grow to
4193 (effective only if the built-in stack extension method is used). */
4194
4195#if YYMAXDEPTH == 0
4196#undef YYMAXDEPTH
4197#endif
4198
4199#ifndef YYMAXDEPTH
4200#define YYMAXDEPTH 10000
4201#endif
e88e3c0b 4202\f
f1dedc31
MM
4203/* Define __yy_memcpy. Note that the size argument
4204 should be passed with type unsigned int, because that is what the non-GCC
4205 definitions require. With GCC, __builtin_memcpy takes an arg
4206 of type size_t, but it can handle unsigned int. */
4207
861bb6c1 4208#if __GNUC__ > 1 /* GNU C and GNU C++ define this. */
8eeda2ec 4209#define __yy_memcpy(TO,FROM,COUNT) __builtin_memcpy(TO,FROM,COUNT)
861bb6c1
JL
4210#else /* not GNU C or C++ */
4211#ifndef __cplusplus
4212
4213/* This is the most reliable way to avoid incompatibilities
4214 in available built-in functions on various systems. */
4215static void
8eeda2ec 4216__yy_memcpy (to, from, count)
861bb6c1 4217 char *to;
8eeda2ec 4218 char *from;
f1dedc31 4219 unsigned int count;
861bb6c1
JL
4220{
4221 register char *f = from;
4222 register char *t = to;
4223 register int i = count;
4224
4225 while (i-- > 0)
4226 *t++ = *f++;
4227}
4228
4229#else /* __cplusplus */
4230
4231/* This is the most reliable way to avoid incompatibilities
4232 in available built-in functions on various systems. */
4233static void
f1dedc31 4234__yy_memcpy (char *to, char *from, unsigned int count)
861bb6c1 4235{
e88e3c0b 4236 register char *t = to;
f1dedc31 4237 register char *f = from;
861bb6c1
JL
4238 register int i = count;
4239
4240 while (i-- > 0)
4241 *t++ = *f++;
4242}
4243
4244#endif
4245#endif
4246\f
d0f062fb 4247#line 217 "/usr/lib/bison.simple"
861bb6c1
JL
4248
4249/* The user can define YYPARSE_PARAM as the name of an argument to be passed
4250 into yyparse. The argument should have type void *.
4251 It should actually point to an object.
4252 Grammar actions can access the variable by casting it
4253 to the proper pointer type. */
4254
4255#ifdef YYPARSE_PARAM
8eeda2ec
JM
4256#ifdef __cplusplus
4257#define YYPARSE_PARAM_ARG void *YYPARSE_PARAM
4258#define YYPARSE_PARAM_DECL
4259#else /* not __cplusplus */
4260#define YYPARSE_PARAM_ARG YYPARSE_PARAM
861bb6c1 4261#define YYPARSE_PARAM_DECL void *YYPARSE_PARAM;
8eeda2ec
JM
4262#endif /* not __cplusplus */
4263#else /* not YYPARSE_PARAM */
4264#define YYPARSE_PARAM_ARG
861bb6c1 4265#define YYPARSE_PARAM_DECL
8eeda2ec 4266#endif /* not YYPARSE_PARAM */
861bb6c1 4267
f1dedc31
MM
4268/* Prevent warning if -Wstrict-prototypes. */
4269#ifdef __GNUC__
4270#ifdef YYPARSE_PARAM
4271int yyparse (void *);
4272#else
4273int yyparse (void);
4274#endif
4275#endif
4276
861bb6c1 4277int
8eeda2ec 4278yyparse(YYPARSE_PARAM_ARG)
861bb6c1
JL
4279 YYPARSE_PARAM_DECL
4280{
4281 register int yystate;
4282 register int yyn;
4283 register short *yyssp;
4284 register YYSTYPE *yyvsp;
4285 int yyerrstatus; /* number of tokens to shift before error messages enabled */
4286 int yychar1 = 0; /* lookahead token as an internal (translated) token number */
4287
4288 short yyssa[YYINITDEPTH]; /* the state stack */
4289 YYSTYPE yyvsa[YYINITDEPTH]; /* the semantic value stack */
4290
4291 short *yyss = yyssa; /* refer to the stacks thru separate pointers */
4292 YYSTYPE *yyvs = yyvsa; /* to allow yyoverflow to reallocate them elsewhere */
4293
4294#ifdef YYLSP_NEEDED
4295 YYLTYPE yylsa[YYINITDEPTH]; /* the location stack */
4296 YYLTYPE *yyls = yylsa;
4297 YYLTYPE *yylsp;
4298
4299#define YYPOPSTACK (yyvsp--, yyssp--, yylsp--)
4300#else
4301#define YYPOPSTACK (yyvsp--, yyssp--)
4302#endif
4303
4304 int yystacksize = YYINITDEPTH;
f1dedc31 4305 int yyfree_stacks = 0;
861bb6c1
JL
4306
4307#ifdef YYPURE
4308 int yychar;
4309 YYSTYPE yylval;
4310 int yynerrs;
4311#ifdef YYLSP_NEEDED
4312 YYLTYPE yylloc;
4313#endif
4314#endif
4315
4316 YYSTYPE yyval; /* the variable used to return */
4317 /* semantic values from the action */
4318 /* routines */
4319
4320 int yylen;
4321
4322#if YYDEBUG != 0
4323 if (yydebug)
4324 fprintf(stderr, "Starting parse\n");
4325#endif
4326
4327 yystate = 0;
4328 yyerrstatus = 0;
4329 yynerrs = 0;
4330 yychar = YYEMPTY; /* Cause a token to be read. */
4331
4332 /* Initialize stack pointers.
4333 Waste one element of value and location stack
4334 so that they stay on the same level as the state stack.
4335 The wasted elements are never initialized. */
4336
4337 yyssp = yyss - 1;
4338 yyvsp = yyvs;
4339#ifdef YYLSP_NEEDED
4340 yylsp = yyls;
4341#endif
4342
4343/* Push a new state, which is found in yystate . */
4344/* In all cases, when you get here, the value and location stacks
4345 have just been pushed. so pushing a state here evens the stacks. */
4346yynewstate:
4347
4348 *++yyssp = yystate;
4349
4350 if (yyssp >= yyss + yystacksize - 1)
4351 {
4352 /* Give user a chance to reallocate the stack */
4353 /* Use copies of these so that the &'s don't force the real ones into memory. */
4354 YYSTYPE *yyvs1 = yyvs;
4355 short *yyss1 = yyss;
4356#ifdef YYLSP_NEEDED
4357 YYLTYPE *yyls1 = yyls;
4358#endif
4359
4360 /* Get the current used size of the three stacks, in elements. */
4361 int size = yyssp - yyss + 1;
4362
4363#ifdef yyoverflow
4364 /* Each stack pointer address is followed by the size of
4365 the data in use in that stack, in bytes. */
4366#ifdef YYLSP_NEEDED
4367 /* This used to be a conditional around just the two extra args,
4368 but that might be undefined if yyoverflow is a macro. */
4369 yyoverflow("parser stack overflow",
4370 &yyss1, size * sizeof (*yyssp),
4371 &yyvs1, size * sizeof (*yyvsp),
4372 &yyls1, size * sizeof (*yylsp),
4373 &yystacksize);
4374#else
4375 yyoverflow("parser stack overflow",
4376 &yyss1, size * sizeof (*yyssp),
4377 &yyvs1, size * sizeof (*yyvsp),
4378 &yystacksize);
4379#endif
4380
4381 yyss = yyss1; yyvs = yyvs1;
4382#ifdef YYLSP_NEEDED
4383 yyls = yyls1;
4384#endif
4385#else /* no yyoverflow */
4386 /* Extend the stack our own way. */
4387 if (yystacksize >= YYMAXDEPTH)
4388 {
4389 yyerror("parser stack overflow");
f1dedc31
MM
4390 if (yyfree_stacks)
4391 {
4392 free (yyss);
4393 free (yyvs);
4394#ifdef YYLSP_NEEDED
4395 free (yyls);
4396#endif
4397 }
861bb6c1
JL
4398 return 2;
4399 }
4400 yystacksize *= 2;
4401 if (yystacksize > YYMAXDEPTH)
4402 yystacksize = YYMAXDEPTH;
f1dedc31
MM
4403#ifndef YYSTACK_USE_ALLOCA
4404 yyfree_stacks = 1;
4405#endif
4406 yyss = (short *) YYSTACK_ALLOC (yystacksize * sizeof (*yyssp));
4407 __yy_memcpy ((char *)yyss, (char *)yyss1,
4408 size * (unsigned int) sizeof (*yyssp));
4409 yyvs = (YYSTYPE *) YYSTACK_ALLOC (yystacksize * sizeof (*yyvsp));
4410 __yy_memcpy ((char *)yyvs, (char *)yyvs1,
4411 size * (unsigned int) sizeof (*yyvsp));
861bb6c1 4412#ifdef YYLSP_NEEDED
f1dedc31
MM
4413 yyls = (YYLTYPE *) YYSTACK_ALLOC (yystacksize * sizeof (*yylsp));
4414 __yy_memcpy ((char *)yyls, (char *)yyls1,
4415 size * (unsigned int) sizeof (*yylsp));
861bb6c1
JL
4416#endif
4417#endif /* no yyoverflow */
4418
4419 yyssp = yyss + size - 1;
4420 yyvsp = yyvs + size - 1;
4421#ifdef YYLSP_NEEDED
4422 yylsp = yyls + size - 1;
4423#endif
4424
4425#if YYDEBUG != 0
4426 if (yydebug)
4427 fprintf(stderr, "Stack size increased to %d\n", yystacksize);
4428#endif
4429
4430 if (yyssp >= yyss + yystacksize - 1)
4431 YYABORT;
4432 }
4433
4434#if YYDEBUG != 0
4435 if (yydebug)
4436 fprintf(stderr, "Entering state %d\n", yystate);
4437#endif
4438
4439 goto yybackup;
4440 yybackup:
4441
4442/* Do appropriate processing given the current state. */
4443/* Read a lookahead token if we need one and don't already have one. */
4444/* yyresume: */
4445
4446 /* First try to decide what to do without reference to lookahead token. */
4447
4448 yyn = yypact[yystate];
4449 if (yyn == YYFLAG)
4450 goto yydefault;
4451
4452 /* Not known => get a lookahead token if don't already have one. */
4453
4454 /* yychar is either YYEMPTY or YYEOF
4455 or a valid token in external form. */
4456
4457 if (yychar == YYEMPTY)
4458 {
4459#if YYDEBUG != 0
4460 if (yydebug)
4461 fprintf(stderr, "Reading a token: ");
4462#endif
4463 yychar = YYLEX;
4464 }
4465
4466 /* Convert token to internal form (in yychar1) for indexing tables with */
4467
4468 if (yychar <= 0) /* This means end of input. */
4469 {
4470 yychar1 = 0;
4471 yychar = YYEOF; /* Don't call YYLEX any more */
4472
4473#if YYDEBUG != 0
4474 if (yydebug)
4475 fprintf(stderr, "Now at end of input.\n");
4476#endif
4477 }
4478 else
4479 {
4480 yychar1 = YYTRANSLATE(yychar);
4481
4482#if YYDEBUG != 0
4483 if (yydebug)
4484 {
4485 fprintf (stderr, "Next token is %d (%s", yychar, yytname[yychar1]);
4486 /* Give the individual parser a way to print the precise meaning
4487 of a token, for further debugging info. */
4488#ifdef YYPRINT
4489 YYPRINT (stderr, yychar, yylval);
4490#endif
4491 fprintf (stderr, ")\n");
4492 }
4493#endif
4494 }
4495
4496 yyn += yychar1;
4497 if (yyn < 0 || yyn > YYLAST || yycheck[yyn] != yychar1)
4498 goto yydefault;
4499
4500 yyn = yytable[yyn];
4501
4502 /* yyn is what to do for this token type in this state.
4503 Negative => reduce, -yyn is rule number.
4504 Positive => shift, yyn is new state.
4505 New state is final state => don't bother to shift,
4506 just return success.
4507 0, or most negative number => error. */
4508
4509 if (yyn < 0)
4510 {
4511 if (yyn == YYFLAG)
4512 goto yyerrlab;
4513 yyn = -yyn;
4514 goto yyreduce;
4515 }
4516 else if (yyn == 0)
4517 goto yyerrlab;
4518
4519 if (yyn == YYFINAL)
4520 YYACCEPT;
4521
4522 /* Shift the lookahead token. */
4523
4524#if YYDEBUG != 0
4525 if (yydebug)
4526 fprintf(stderr, "Shifting token %d (%s), ", yychar, yytname[yychar1]);
4527#endif
4528
4529 /* Discard the token being shifted unless it is eof. */
4530 if (yychar != YYEOF)
4531 yychar = YYEMPTY;
4532
4533 *++yyvsp = yylval;
4534#ifdef YYLSP_NEEDED
4535 *++yylsp = yylloc;
4536#endif
4537
4538 /* count tokens shifted since error; after three, turn off error status. */
4539 if (yyerrstatus) yyerrstatus--;
4540
4541 yystate = yyn;
4542 goto yynewstate;
4543
4544/* Do the default action for the current state. */
4545yydefault:
4546
4547 yyn = yydefact[yystate];
4548 if (yyn == 0)
4549 goto yyerrlab;
4550
4551/* Do a reduction. yyn is the number of a rule to reduce with. */
4552yyreduce:
4553 yylen = yyr2[yyn];
4554 if (yylen > 0)
4555 yyval = yyvsp[1-yylen]; /* implement default value of the action */
4556
4557#if YYDEBUG != 0
4558 if (yydebug)
4559 {
4560 int i;
4561
4562 fprintf (stderr, "Reducing via rule %d (line %d), ",
4563 yyn, yyrline[yyn]);
4564
4565 /* Print the symbols being reduced, and their result. */
4566 for (i = yyprhs[yyn]; yyrhs[i] > 0; i++)
4567 fprintf (stderr, "%s ", yytname[yyrhs[i]]);
4568 fprintf (stderr, " -> %s\n", yytname[yyr1[yyn]]);
4569 }
4570#endif
4571
4572
4573 switch (yyn) {
4574
4575case 2:
b6a6823e 4576#line 434 "parse.y"
89ad74a3 4577{ finish_translation_unit (); ;
861bb6c1
JL
4578 break;}
4579case 3:
b6a6823e 4580#line 442 "parse.y"
861bb6c1
JL
4581{ yyval.ttype = NULL_TREE; ;
4582 break;}
4583case 4:
b6a6823e 4584#line 444 "parse.y"
b6c5a81c 4585{ yyval.ttype = NULL_TREE; ggc_collect (); ;
861bb6c1
JL
4586 break;}
4587case 5:
b6a6823e 4588#line 446 "parse.y"
b6c5a81c 4589{ yyval.ttype = NULL_TREE; ggc_collect (); ;
861bb6c1
JL
4590 break;}
4591case 8:
b6a6823e 4592#line 455 "parse.y"
861bb6c1
JL
4593{ have_extern_spec = 1;
4594 used_extern_spec = 0;
4595 yyval.ttype = NULL_TREE; ;
4596 break;}
4597case 9:
b6a6823e 4598#line 460 "parse.y"
861bb6c1
JL
4599{ have_extern_spec = 0; ;
4600 break;}
4601case 10:
b6a6823e 4602#line 465 "parse.y"
861bb6c1
JL
4603{ yyval.itype = pedantic;
4604 pedantic = 0; ;
4605 break;}
89ad74a3 4606case 12:
b6a6823e 4607#line 474 "parse.y"
70adf8a9
JM
4608{ if (pending_lang_change) do_pending_lang_change();
4609 type_lookups = NULL_TREE; ;
861bb6c1 4610 break;}
89ad74a3 4611case 13:
b6a6823e 4612#line 477 "parse.y"
9188c363 4613{ if (! toplevel_bindings_p ())
861bb6c1
JL
4614 pop_everything (); ;
4615 break;}
89ad74a3 4616case 14:
b6a6823e 4617#line 483 "parse.y"
89ad74a3
MM
4618{ if (pending_inlines) do_pending_inlines (); ;
4619 break;}
861bb6c1 4620case 15:
b6a6823e 4621#line 485 "parse.y"
861bb6c1
JL
4622{ if (pending_inlines) do_pending_inlines (); ;
4623 break;}
4624case 16:
b6a6823e 4625#line 487 "parse.y"
861bb6c1
JL
4626{ if (pending_inlines) do_pending_inlines (); ;
4627 break;}
4628case 17:
b6a6823e 4629#line 489 "parse.y"
861bb6c1
JL
4630{ if (TREE_CHAIN (yyvsp[-2].ttype)) yyvsp[-2].ttype = combine_strings (yyvsp[-2].ttype);
4631 assemble_asm (yyvsp[-2].ttype); ;
4632 break;}
89ad74a3 4633case 18:
b6a6823e 4634#line 492 "parse.y"
861bb6c1
JL
4635{ pop_lang_context (); ;
4636 break;}
89ad74a3 4637case 19:
b6a6823e 4638#line 494 "parse.y"
861bb6c1
JL
4639{ if (pending_inlines) do_pending_inlines ();
4640 pop_lang_context (); ;
4641 break;}
89ad74a3 4642case 20:
b6a6823e 4643#line 497 "parse.y"
861bb6c1
JL
4644{ if (pending_inlines) do_pending_inlines ();
4645 pop_lang_context (); ;
4646 break;}
89ad74a3 4647case 21:
b6a6823e 4648#line 500 "parse.y"
861bb6c1
JL
4649{ push_namespace (yyvsp[-1].ttype); ;
4650 break;}
89ad74a3 4651case 22:
b6a6823e 4652#line 502 "parse.y"
861bb6c1
JL
4653{ pop_namespace (); ;
4654 break;}
89ad74a3 4655case 23:
b6a6823e 4656#line 504 "parse.y"
861bb6c1
JL
4657{ push_namespace (NULL_TREE); ;
4658 break;}
89ad74a3 4659case 24:
b6a6823e 4660#line 506 "parse.y"
861bb6c1
JL
4661{ pop_namespace (); ;
4662 break;}
85c6cbaf 4663case 26:
b6a6823e 4664#line 509 "parse.y"
85c6cbaf
ML
4665{ do_toplevel_using_decl (yyvsp[-1].ttype); ;
4666 break;}
4667case 28:
b6a6823e 4668#line 512 "parse.y"
85c6cbaf
ML
4669{ pedantic = yyvsp[-1].itype; ;
4670 break;}
4671case 29:
b6a6823e 4672#line 517 "parse.y"
3e3f722c 4673{ begin_only_namespace_names (); ;
861bb6c1 4674 break;}
85c6cbaf 4675case 30:
b6a6823e 4676#line 519 "parse.y"
3e3f722c
ML
4677{
4678 end_only_namespace_names ();
4679 if (lastiddecl)
4680 yyvsp[-1].ttype = lastiddecl;
4681 do_namespace_alias (yyvsp[-4].ttype, yyvsp[-1].ttype);
4682 ;
861bb6c1 4683 break;}
3e3f722c 4684case 31:
b6a6823e 4685#line 529 "parse.y"
89ad74a3
MM
4686{ yyval.ttype = yyvsp[0].ttype; ;
4687 break;}
3e3f722c 4688case 32:
b6a6823e 4689#line 531 "parse.y"
861bb6c1
JL
4690{ yyval.ttype = yyvsp[0].ttype; ;
4691 break;}
3e3f722c 4692case 33:
b6a6823e 4693#line 533 "parse.y"
85c6cbaf 4694{ yyval.ttype = yyvsp[0].ttype; ;
861bb6c1 4695 break;}
a759e627 4696case 34:
b6a6823e 4697#line 538 "parse.y"
26877584 4698{ yyval.ttype = build_parse_node (SCOPE_REF, yyvsp[-1].ttype, yyvsp[0].ttype); ;
a759e627 4699 break;}
85c6cbaf 4700case 35:
b6a6823e 4701#line 540 "parse.y"
85c6cbaf
ML
4702{ yyval.ttype = build_parse_node (SCOPE_REF, global_namespace, yyvsp[0].ttype); ;
4703 break;}
3e3f722c 4704case 36:
b6a6823e 4705#line 542 "parse.y"
85c6cbaf 4706{ yyval.ttype = build_parse_node (SCOPE_REF, yyvsp[-1].ttype, yyvsp[0].ttype); ;
861bb6c1 4707 break;}
3e3f722c 4708case 37:
b6a6823e 4709#line 547 "parse.y"
85c6cbaf
ML
4710{ begin_only_namespace_names (); ;
4711 break;}
4712case 38:
b6a6823e 4713#line 549 "parse.y"
a759e627 4714{
26877584
JM
4715 end_only_namespace_names ();
4716 /* If no declaration was found, the using-directive is
4717 invalid. Since that was not reported, we need the
4718 identifier for the error message. */
4719 if (TREE_CODE (yyvsp[-1].ttype) == IDENTIFIER_NODE && lastiddecl)
4720 yyvsp[-1].ttype = lastiddecl;
4721 do_using_directive (yyvsp[-1].ttype);
a759e627 4722 ;
861bb6c1 4723 break;}
85c6cbaf 4724case 39:
b6a6823e 4725#line 562 "parse.y"
a759e627
ML
4726{
4727 if (TREE_CODE (yyval.ttype) == IDENTIFIER_NODE)
4728 yyval.ttype = lastiddecl;
4729 got_scope = yyval.ttype;
4730 ;
4731 break;}
85c6cbaf 4732case 40:
b6a6823e 4733#line 568 "parse.y"
26877584
JM
4734{
4735 yyval.ttype = yyvsp[-1].ttype;
4736 if (TREE_CODE (yyval.ttype) == IDENTIFIER_NODE)
4737 yyval.ttype = lastiddecl;
4738 got_scope = yyval.ttype;
4739 ;
a759e627 4740 break;}
a759e627 4741case 43:
b6a6823e 4742#line 579 "parse.y"
26877584 4743{ yyval.ttype = yyvsp[0].ttype; ;
861bb6c1 4744 break;}
a759e627 4745case 44:
b6a6823e 4746#line 581 "parse.y"
85c6cbaf 4747{ yyval.ttype = yyvsp[0].ttype; ;
26877584
JM
4748 break;}
4749case 45:
b6a6823e 4750#line 586 "parse.y"
85c6cbaf
ML
4751{ push_lang_context (yyvsp[0].ttype); ;
4752 break;}
4753case 46:
b6a6823e 4754#line 588 "parse.y"
861bb6c1 4755{ if (current_lang_name != yyvsp[0].ttype)
8251199e 4756 cp_error ("use of linkage spec `%D' is different from previous spec `%D'", yyvsp[0].ttype, current_lang_name);
861bb6c1
JL
4757 pop_lang_context (); push_lang_context (yyvsp[0].ttype); ;
4758 break;}
85c6cbaf 4759case 47:
b6a6823e 4760#line 595 "parse.y"
861bb6c1
JL
4761{ begin_template_parm_list (); ;
4762 break;}
85c6cbaf 4763case 48:
b6a6823e 4764#line 597 "parse.y"
861bb6c1
JL
4765{ yyval.ttype = end_template_parm_list (yyvsp[-1].ttype); ;
4766 break;}
85c6cbaf 4767case 49:
b6a6823e 4768#line 599 "parse.y"
386b8a85
JM
4769{ begin_specialization();
4770 yyval.ttype = NULL_TREE; ;
861bb6c1 4771 break;}
a759e627 4772case 50:
b6a6823e 4773#line 605 "parse.y"
85c6cbaf 4774{ yyval.ttype = process_template_parm (NULL_TREE, yyvsp[0].ttype); ;
73b0fce8 4775 break;}
a759e627 4776case 51:
b6a6823e 4777#line 607 "parse.y"
85c6cbaf 4778{ yyval.ttype = process_template_parm (yyvsp[-2].ttype, yyvsp[0].ttype); ;
73b0fce8 4779 break;}
a759e627 4780case 52:
b6a6823e 4781#line 612 "parse.y"
85c6cbaf 4782{ yyval.ttype = yyvsp[0].ttype; ;
861bb6c1 4783 break;}
a759e627 4784case 53:
b6a6823e 4785#line 614 "parse.y"
85c6cbaf 4786{ yyval.ttype = NULL_TREE; ;
861bb6c1 4787 break;}
a759e627 4788case 54:
b6a6823e 4789#line 618 "parse.y"
85c6cbaf 4790{ yyval.ttype = finish_template_type_parm (yyvsp[-1].ttype, yyvsp[0].ttype); ;
73b0fce8 4791 break;}
a759e627 4792case 55:
b6a6823e 4793#line 620 "parse.y"
85c6cbaf 4794{ yyval.ttype = finish_template_type_parm (class_type_node, yyvsp[0].ttype); ;
861bb6c1 4795 break;}
a759e627 4796case 56:
b6a6823e 4797#line 625 "parse.y"
85c6cbaf 4798{ yyval.ttype = finish_template_template_parm (yyvsp[-1].ttype, yyvsp[0].ttype); ;
861bb6c1 4799 break;}
a759e627 4800case 57:
b6a6823e 4801#line 637 "parse.y"
85c6cbaf 4802{ yyval.ttype = build_tree_list (NULL_TREE, yyvsp[0].ttype); ;
861bb6c1 4803 break;}
a759e627 4804case 58:
b6a6823e 4805#line 639 "parse.y"
85c6cbaf 4806{ yyval.ttype = build_tree_list (groktypename (yyvsp[0].ftype.t), yyvsp[-2].ttype); ;
861bb6c1 4807 break;}
a759e627 4808case 59:
b6a6823e 4809#line 641 "parse.y"
85c6cbaf 4810{ yyval.ttype = build_tree_list (NULL_TREE, yyvsp[0].ftype.t); ;
73b0fce8 4811 break;}
a759e627 4812case 60:
b6a6823e 4813#line 643 "parse.y"
85c6cbaf 4814{ yyval.ttype = build_tree_list (yyvsp[0].ttype, yyvsp[-2].ftype.t); ;
26877584
JM
4815 break;}
4816case 61:
b6a6823e 4817#line 645 "parse.y"
85c6cbaf
ML
4818{ yyval.ttype = build_tree_list (NULL_TREE, yyvsp[0].ttype); ;
4819 break;}
4820case 62:
b6a6823e 4821#line 647 "parse.y"
73b0fce8 4822{
e7e66632
KL
4823 if (TREE_CODE (yyvsp[0].ttype) != TEMPLATE_DECL
4824 && TREE_CODE (yyvsp[0].ttype) != TEMPLATE_TEMPLATE_PARM
4825 && TREE_CODE (yyvsp[0].ttype) != TYPE_DECL)
4826 {
8251199e 4827 error ("invalid default template argument");
e7e66632
KL
4828 yyvsp[0].ttype = error_mark_node;
4829 }
4830 yyval.ttype = build_tree_list (yyvsp[0].ttype, yyvsp[-2].ttype);
4831 ;
73b0fce8 4832 break;}
85c6cbaf 4833case 63:
b6a6823e 4834#line 661 "parse.y"
282a221c 4835{ finish_template_decl (yyvsp[-1].ttype); ;
861bb6c1 4836 break;}
85c6cbaf 4837case 64:
b6a6823e 4838#line 663 "parse.y"
282a221c
JM
4839{ finish_template_decl (yyvsp[-1].ttype); ;
4840 break;}
4841case 65:
b6a6823e 4842#line 668 "parse.y"
282a221c 4843{ if (pending_inlines) do_pending_inlines (); ;
861bb6c1 4844 break;}
85c6cbaf 4845case 66:
b6a6823e 4846#line 670 "parse.y"
282a221c 4847{ if (pending_inlines) do_pending_inlines (); ;
861bb6c1 4848 break;}
85c6cbaf 4849case 67:
b6a6823e 4850#line 672 "parse.y"
282a221c 4851{ if (pending_inlines) do_pending_inlines (); ;
861bb6c1 4852 break;}
85c6cbaf 4853case 68:
b6a6823e 4854#line 674 "parse.y"
282a221c
JM
4855{ if (pending_inlines) do_pending_inlines ();
4856 pop_lang_context (); ;
4857 break;}
4858case 69:
b6a6823e 4859#line 677 "parse.y"
282a221c
JM
4860{ if (pending_inlines) do_pending_inlines ();
4861 pop_lang_context (); ;
861bb6c1 4862 break;}
85c6cbaf 4863case 70:
b6a6823e 4864#line 680 "parse.y"
282a221c
JM
4865{ pedantic = yyvsp[-1].itype; ;
4866 break;}
4867case 72:
b6a6823e 4868#line 686 "parse.y"
282a221c
JM
4869{;
4870 break;}
4871case 73:
b6a6823e 4872#line 688 "parse.y"
282a221c
JM
4873{ note_list_got_semicolon (yyvsp[-2].ftype.t); ;
4874 break;}
4875case 74:
b6a6823e 4876#line 690 "parse.y"
282a221c
JM
4877{ maybe_process_partial_specialization (yyvsp[-1].ftype.t);
4878 note_got_semicolon (yyvsp[-1].ftype.t); ;
4879 break;}
4880case 76:
b6a6823e 4881#line 697 "parse.y"
282a221c
JM
4882{;
4883 break;}
4884case 77:
b6a6823e 4885#line 699 "parse.y"
282a221c
JM
4886{ note_list_got_semicolon (yyvsp[-2].ftype.t); ;
4887 break;}
4888case 78:
b6a6823e 4889#line 701 "parse.y"
8251199e 4890{ pedwarn ("empty declaration"); ;
282a221c
JM
4891 break;}
4892case 80:
b6a6823e 4893#line 704 "parse.y"
861bb6c1
JL
4894{
4895 tree t, attrs;
4896 split_specs_attrs (yyvsp[-1].ftype.t, &t, &attrs);
4897 shadow_tag (t);
4898 note_list_got_semicolon (yyvsp[-1].ftype.t);
4899 ;
4900 break;}
282a221c 4901case 84:
b6a6823e 4902#line 717 "parse.y"
861bb6c1
JL
4903{ yyval.itype = 0; ;
4904 break;}
282a221c 4905case 85:
b6a6823e 4906#line 719 "parse.y"
861bb6c1
JL
4907{ yyval.itype = 1; ;
4908 break;}
282a221c 4909case 91:
b6a6823e 4910#line 735 "parse.y"
0acf7199 4911{ expand_body (finish_function ((int)yyvsp[-1].itype)); ;
861bb6c1 4912 break;}
282a221c 4913case 92:
b6a6823e 4914#line 737 "parse.y"
0acf7199 4915{ expand_body (finish_function ((int)yyvsp[0].itype)); ;
861bb6c1 4916 break;}
282a221c 4917case 93:
b6a6823e 4918#line 739 "parse.y"
85c6cbaf 4919{ ;
861bb6c1 4920 break;}
282a221c 4921case 94:
b6a6823e 4922#line 744 "parse.y"
85c6cbaf 4923{ yyval.ttype = begin_constructor_declarator (yyvsp[-2].ttype, yyvsp[-1].ttype); ;
26877584 4924 break;}
282a221c 4925case 95:
b6a6823e 4926#line 746 "parse.y"
85c6cbaf
ML
4927{ yyval.ttype = make_call_declarator (yyvsp[-4].ttype, yyvsp[-3].ttype, yyvsp[-1].ttype, yyvsp[0].ttype); ;
4928 break;}
282a221c 4929case 96:
b6a6823e 4930#line 748 "parse.y"
b4c4a9ec 4931{ yyval.ttype = begin_constructor_declarator (yyvsp[-4].ttype, yyvsp[-3].ttype);
861bb6c1
JL
4932 yyval.ttype = make_call_declarator (yyval.ttype, empty_parms (), yyvsp[-1].ttype, yyvsp[0].ttype);
4933 ;
4934 break;}
282a221c 4935case 97:
b6a6823e 4936#line 752 "parse.y"
b4c4a9ec 4937{ yyval.ttype = begin_constructor_declarator (yyvsp[-2].ttype, yyvsp[-1].ttype); ;
861bb6c1 4938 break;}
282a221c 4939case 98:
b6a6823e 4940#line 754 "parse.y"
861bb6c1
JL
4941{ yyval.ttype = make_call_declarator (yyvsp[-4].ttype, yyvsp[-3].ttype, yyvsp[-1].ttype, yyvsp[0].ttype); ;
4942 break;}
282a221c 4943case 99:
b6a6823e 4944#line 756 "parse.y"
b4c4a9ec 4945{ yyval.ttype = begin_constructor_declarator (yyvsp[-4].ttype, yyvsp[-3].ttype);
861bb6c1
JL
4946 yyval.ttype = make_call_declarator (yyval.ttype, empty_parms (), yyvsp[-1].ttype, yyvsp[0].ttype);
4947 ;
4948 break;}
282a221c 4949case 100:
b6a6823e 4950#line 760 "parse.y"
b4c4a9ec 4951{ yyval.ttype = begin_constructor_declarator (yyvsp[-2].ttype, yyvsp[-1].ttype); ;
861bb6c1 4952 break;}
282a221c 4953case 101:
b6a6823e 4954#line 762 "parse.y"
861bb6c1
JL
4955{ yyval.ttype = make_call_declarator (yyvsp[-4].ttype, yyvsp[-3].ttype, yyvsp[-1].ttype, yyvsp[0].ttype); ;
4956 break;}
282a221c 4957case 102:
b6a6823e 4958#line 764 "parse.y"
b4c4a9ec 4959{ yyval.ttype = begin_constructor_declarator (yyvsp[-4].ttype, yyvsp[-3].ttype);
861bb6c1
JL
4960 yyval.ttype = make_call_declarator (yyval.ttype, empty_parms (), yyvsp[-1].ttype, yyvsp[0].ttype);
4961 ;
4962 break;}
282a221c 4963case 103:
b6a6823e 4964#line 768 "parse.y"
b4c4a9ec 4965{ yyval.ttype = begin_constructor_declarator (yyvsp[-2].ttype, yyvsp[-1].ttype); ;
861bb6c1 4966 break;}
282a221c 4967case 104:
b6a6823e 4968#line 770 "parse.y"
861bb6c1
JL
4969{ yyval.ttype = make_call_declarator (yyvsp[-4].ttype, yyvsp[-3].ttype, yyvsp[-1].ttype, yyvsp[0].ttype); ;
4970 break;}
282a221c 4971case 105:
b6a6823e 4972#line 772 "parse.y"
b4c4a9ec 4973{ yyval.ttype = begin_constructor_declarator (yyvsp[-4].ttype, yyvsp[-3].ttype);
861bb6c1
JL
4974 yyval.ttype = make_call_declarator (yyval.ttype, empty_parms (), yyvsp[-1].ttype, yyvsp[0].ttype);
4975 ;
4976 break;}
282a221c 4977case 106:
b6a6823e 4978#line 779 "parse.y"
2bdb0643
JM
4979{ check_for_new_type ("return type", yyvsp[-1].ftype);
4980 if (!begin_function_definition (yyvsp[-1].ftype.t, yyvsp[0].ttype))
b4c4a9ec 4981 YYERROR1; ;
861bb6c1 4982 break;}
282a221c 4983case 107:
2bdb0643 4984#line 783 "parse.y"
1f51a992 4985{ if (!begin_function_definition (yyvsp[-1].ftype.t, yyvsp[0].ttype))
b4c4a9ec 4986 YYERROR1; ;
861bb6c1 4987 break;}
282a221c 4988case 108:
2bdb0643 4989#line 786 "parse.y"
1f51a992 4990{ if (!begin_function_definition (NULL_TREE, yyvsp[0].ttype))
b4c4a9ec 4991 YYERROR1; ;
861bb6c1 4992 break;}
282a221c 4993case 109:
2bdb0643 4994#line 789 "parse.y"
1f51a992 4995{ if (!begin_function_definition (yyvsp[-1].ftype.t, yyvsp[0].ttype))
b4c4a9ec 4996 YYERROR1; ;
861bb6c1 4997 break;}
282a221c 4998case 110:
2bdb0643 4999#line 792 "parse.y"
1f51a992 5000{ if (!begin_function_definition (NULL_TREE, yyvsp[0].ttype))
b4c4a9ec 5001 YYERROR1; ;
861bb6c1 5002 break;}
282a221c 5003case 111:
2bdb0643 5004#line 798 "parse.y"
26877584
JM
5005{ yyval.ttype = make_call_declarator (yyvsp[-5].ttype, yyvsp[-3].ttype, yyvsp[-1].ttype, yyvsp[0].ttype); ;
5006 break;}
282a221c 5007case 112:
2bdb0643 5008#line 800 "parse.y"
26877584
JM
5009{ yyval.ttype = make_call_declarator (yyvsp[-3].ttype, empty_parms (), yyvsp[-1].ttype, yyvsp[0].ttype); ;
5010 break;}
282a221c 5011case 113:
2bdb0643 5012#line 802 "parse.y"
85c6cbaf
ML
5013{ yyval.ttype = make_call_declarator (yyvsp[-5].ttype, yyvsp[-3].ttype, yyvsp[-1].ttype, yyvsp[0].ttype); ;
5014 break;}
282a221c 5015case 114:
2bdb0643 5016#line 804 "parse.y"
85c6cbaf
ML
5017{ yyval.ttype = make_call_declarator (yyvsp[-3].ttype, empty_parms (), yyvsp[-1].ttype, yyvsp[0].ttype); ;
5018 break;}
282a221c 5019case 115:
2bdb0643 5020#line 811 "parse.y"
1f51a992 5021{ yyval.ttype = parse_method (yyvsp[0].ttype, yyvsp[-1].ftype.t, yyvsp[-1].ftype.lookups);
861bb6c1
JL
5022 rest_of_mdef:
5023 if (! yyval.ttype)
5024 YYERROR1;
5025 if (yychar == YYEMPTY)
5026 yychar = YYLEX;
5027 reinit_parse_for_method (yychar, yyval.ttype); ;
5028 break;}
282a221c 5029case 116:
2bdb0643 5030#line 819 "parse.y"
1f51a992 5031{ yyval.ttype = parse_method (yyvsp[0].ttype, NULL_TREE, NULL_TREE);
acf82af2 5032 goto rest_of_mdef; ;
a759e627 5033 break;}
282a221c 5034case 117:
2bdb0643 5035#line 822 "parse.y"
1f51a992 5036{ yyval.ttype = parse_method (yyvsp[0].ttype, yyvsp[-1].ftype.t, yyvsp[-1].ftype.lookups); goto rest_of_mdef;;
861bb6c1 5037 break;}
282a221c 5038case 118:
2bdb0643 5039#line 824 "parse.y"
1f51a992 5040{ yyval.ttype = parse_method (yyvsp[0].ttype, yyvsp[-1].ftype.t, yyvsp[-1].ftype.lookups); goto rest_of_mdef;;
861bb6c1 5041 break;}
282a221c 5042case 119:
2bdb0643 5043#line 826 "parse.y"
1f51a992 5044{ yyval.ttype = parse_method (yyvsp[0].ttype, NULL_TREE, NULL_TREE);
acf82af2 5045 goto rest_of_mdef; ;
861bb6c1 5046 break;}
282a221c 5047case 120:
2bdb0643 5048#line 829 "parse.y"
1f51a992 5049{ yyval.ttype = parse_method (yyvsp[0].ttype, yyvsp[-1].ftype.t, yyvsp[-1].ftype.lookups); goto rest_of_mdef;;
861bb6c1 5050 break;}
282a221c 5051case 121:
2bdb0643 5052#line 831 "parse.y"
1f51a992 5053{ yyval.ttype = parse_method (yyvsp[0].ttype, NULL_TREE, NULL_TREE);
acf82af2 5054 goto rest_of_mdef; ;
861bb6c1 5055 break;}
282a221c 5056case 122:
2bdb0643 5057#line 837 "parse.y"
861bb6c1
JL
5058{
5059 if (! current_function_parms_stored)
5060 store_parm_decls ();
5061 yyval.ttype = yyvsp[0].ttype;
5062 ;
5063 break;}
282a221c 5064case 123:
2bdb0643 5065#line 846 "parse.y"
558475f0 5066{ finish_named_return_value (yyval.ttype, yyvsp[0].ttype); ;
93cdc044 5067 break;}
282a221c 5068case 124:
2bdb0643 5069#line 848 "parse.y"
558475f0 5070{ finish_named_return_value (yyval.ttype, yyvsp[-1].ttype); ;
861bb6c1 5071 break;}
282a221c 5072case 125:
2bdb0643 5073#line 850 "parse.y"
558475f0 5074{ finish_named_return_value (yyval.ttype, NULL_TREE); ;
861bb6c1 5075 break;}
282a221c 5076case 126:
2bdb0643 5077#line 855 "parse.y"
861bb6c1
JL
5078{
5079 if (yyvsp[0].itype == 0)
8251199e 5080 error ("no base initializers given following ':'");
861bb6c1 5081 setup_vtbl_ptr ();
861bb6c1
JL
5082 ;
5083 break;}
282a221c 5084case 127:
2bdb0643 5085#line 864 "parse.y"
861bb6c1
JL
5086{
5087 if (! current_function_parms_stored)
5088 store_parm_decls ();
5089
5090 if (DECL_CONSTRUCTOR_P (current_function_decl))
b35d4555
MM
5091 /* Make a contour for the initializer list. */
5092 do_pushlevel ();
861bb6c1 5093 else if (current_class_type == NULL_TREE)
8251199e 5094 error ("base initializers not allowed for non-member functions");
861bb6c1 5095 else if (! DECL_CONSTRUCTOR_P (current_function_decl))
8251199e 5096 error ("only constructors take base initializers");
861bb6c1
JL
5097 ;
5098 break;}
282a221c 5099case 128:
2bdb0643 5100#line 880 "parse.y"
861bb6c1
JL
5101{ yyval.itype = 0; ;
5102 break;}
282a221c 5103case 129:
2bdb0643 5104#line 882 "parse.y"
861bb6c1
JL
5105{ yyval.itype = 1; ;
5106 break;}
282a221c 5107case 132:
2bdb0643 5108#line 889 "parse.y"
861bb6c1
JL
5109{
5110 if (current_class_name)
8251199e 5111 pedwarn ("anachronistic old style base class initializer");
861bb6c1
JL
5112 expand_member_init (current_class_ref, NULL_TREE, yyvsp[-1].ttype);
5113 ;
5114 break;}
282a221c 5115case 133:
2bdb0643 5116#line 895 "parse.y"
861bb6c1
JL
5117{
5118 if (current_class_name)
8251199e 5119 pedwarn ("anachronistic old style base class initializer");
861bb6c1
JL
5120 expand_member_init (current_class_ref, NULL_TREE, void_type_node);
5121 ;
5122 break;}
282a221c 5123case 134:
2bdb0643 5124#line 901 "parse.y"
26877584
JM
5125{ expand_member_init (current_class_ref, yyvsp[-3].ttype, yyvsp[-1].ttype); ;
5126 break;}
282a221c 5127case 135:
2bdb0643 5128#line 903 "parse.y"
26877584
JM
5129{ expand_member_init (current_class_ref, yyvsp[-1].ttype, void_type_node); ;
5130 break;}
282a221c 5131case 136:
2bdb0643 5132#line 905 "parse.y"
85c6cbaf
ML
5133{ expand_member_init (current_class_ref, yyvsp[-3].ttype, yyvsp[-1].ttype); ;
5134 break;}
282a221c 5135case 137:
2bdb0643 5136#line 907 "parse.y"
85c6cbaf
ML
5137{ expand_member_init (current_class_ref, yyvsp[-1].ttype, void_type_node); ;
5138 break;}
282a221c 5139case 138:
2bdb0643 5140#line 909 "parse.y"
faf199a6
JM
5141{ expand_member_init (current_class_ref, TYPE_MAIN_DECL (yyvsp[-3].ttype),
5142 yyvsp[-1].ttype); ;
861bb6c1 5143 break;}
282a221c 5144case 139:
2bdb0643 5145#line 912 "parse.y"
faf199a6
JM
5146{ expand_member_init (current_class_ref, TYPE_MAIN_DECL (yyvsp[-1].ttype),
5147 void_type_node); ;
861bb6c1 5148 break;}
273a708f 5149case 152:
2bdb0643 5150#line 939 "parse.y"
a2676865
JM
5151{ do_type_instantiation (yyvsp[-1].ftype.t, NULL_TREE);
5152 yyungetc (';', 1); ;
861bb6c1 5153 break;}
273a708f 5154case 154:
2bdb0643 5155#line 943 "parse.y"
a2676865
JM
5156{ tree specs = strip_attrs (yyvsp[-1].ftype.t);
5157 do_decl_instantiation (specs, yyvsp[0].ttype, NULL_TREE); ;
861bb6c1 5158 break;}
273a708f 5159case 156:
2bdb0643 5160#line 947 "parse.y"
a2676865 5161{ do_decl_instantiation (NULL_TREE, yyvsp[0].ttype, NULL_TREE); ;
861bb6c1 5162 break;}
273a708f 5163case 158:
2bdb0643 5164#line 950 "parse.y"
3e3f722c
ML
5165{ do_decl_instantiation (NULL_TREE, yyvsp[0].ttype, NULL_TREE); ;
5166 break;}
273a708f 5167case 160:
2bdb0643 5168#line 953 "parse.y"
6a88a0c0 5169{ do_type_instantiation (yyvsp[-1].ftype.t, yyvsp[-4].ttype);
a2676865 5170 yyungetc (';', 1); ;
861bb6c1 5171 break;}
273a708f 5172case 162:
2bdb0643 5173#line 958 "parse.y"
a2676865 5174{ tree specs = strip_attrs (yyvsp[-1].ftype.t);
6a88a0c0 5175 do_decl_instantiation (specs, yyvsp[0].ttype, yyvsp[-4].ttype); ;
861bb6c1 5176 break;}
273a708f 5177case 164:
2bdb0643 5178#line 962 "parse.y"
6a88a0c0 5179{ do_decl_instantiation (NULL_TREE, yyvsp[0].ttype, yyvsp[-3].ttype); ;
861bb6c1 5180 break;}
273a708f 5181case 166:
2bdb0643 5182#line 965 "parse.y"
3e3f722c
ML
5183{ do_decl_instantiation (NULL_TREE, yyvsp[0].ttype, yyvsp[-3].ttype); ;
5184 break;}
282a221c 5185case 168:
2bdb0643 5186#line 970 "parse.y"
273a708f 5187{ begin_explicit_instantiation(); ;
861bb6c1 5188 break;}
282a221c 5189case 169:
2bdb0643 5190#line 973 "parse.y"
273a708f 5191{ end_explicit_instantiation(); ;
861bb6c1 5192 break;}
282a221c 5193case 170:
2bdb0643 5194#line 982 "parse.y"
282a221c 5195{ yyval.ttype = yyvsp[0].ttype; ;
861bb6c1 5196 break;}
273a708f 5197case 171:
2bdb0643 5198#line 985 "parse.y"
f3400fe2 5199{ yyval.ttype = yyvsp[0].ttype; ;
2e6eddfc
AO
5200 break;}
5201case 174:
2bdb0643 5202#line 993 "parse.y"
282a221c
JM
5203{ yyval.ttype = yyvsp[0].ttype; ;
5204 break;}
2e6eddfc 5205case 175:
2bdb0643 5206#line 998 "parse.y"
273a708f
MM
5207{ yyval.ttype = yyvsp[0].ttype; ;
5208 break;}
5209case 176:
2bdb0643 5210#line 1002 "parse.y"
282a221c
JM
5211{
5212 if (yychar == YYEMPTY)
5213 yychar = YYLEX;
5214
5215 yyval.ttype = finish_template_type (yyvsp[-3].ttype, yyvsp[-1].ttype,
5216 yychar == SCOPE);
861bb6c1
JL
5217 ;
5218 break;}
273a708f 5219case 178:
2bdb0643 5220#line 1013 "parse.y"
861bb6c1
JL
5221{
5222 /* Handle `Class<Class<Type>>' without space in the `>>' */
8251199e 5223 pedwarn ("`>>' should be `> >' in template class name");
861bb6c1
JL
5224 yyungetc ('>', 1);
5225 ;
5226 break;}
273a708f 5227case 179:
2bdb0643 5228#line 1022 "parse.y"
6a88a0c0
JM
5229{ yyval.ttype = NULL_TREE; ;
5230 break;}
273a708f 5231case 181:
2bdb0643 5232#line 1028 "parse.y"
861bb6c1
JL
5233{ yyval.ttype = build_tree_list (NULL_TREE, yyval.ttype); ;
5234 break;}
273a708f 5235case 182:
2bdb0643 5236#line 1030 "parse.y"
861bb6c1
JL
5237{ yyval.ttype = chainon (yyval.ttype, build_tree_list (NULL_TREE, yyvsp[0].ttype)); ;
5238 break;}
273a708f 5239case 183:
2bdb0643 5240#line 1035 "parse.y"
861bb6c1
JL
5241{ yyval.ttype = groktypename (yyvsp[0].ftype.t); ;
5242 break;}
273a708f 5243case 184:
2bdb0643 5244#line 1037 "parse.y"
0e607f34 5245{ yyval.ttype = lastiddecl; ;
93cdc044 5246 break;}
273a708f 5247case 186:
2bdb0643 5248#line 1043 "parse.y"
0e607f34 5249{ yyval.code = NEGATE_EXPR; ;
861bb6c1 5250 break;}
273a708f 5251case 187:
2bdb0643 5252#line 1045 "parse.y"
0e607f34 5253{ yyval.code = CONVERT_EXPR; ;
861bb6c1 5254 break;}
273a708f 5255case 188:
2bdb0643 5256#line 1047 "parse.y"
0e607f34 5257{ yyval.code = PREINCREMENT_EXPR; ;
861bb6c1 5258 break;}
273a708f 5259case 189:
2bdb0643 5260#line 1049 "parse.y"
0e607f34 5261{ yyval.code = PREDECREMENT_EXPR; ;
861bb6c1 5262 break;}
273a708f 5263case 190:
2bdb0643 5264#line 1051 "parse.y"
0e607f34
JM
5265{ yyval.code = TRUTH_NOT_EXPR; ;
5266 break;}
273a708f 5267case 191:
2bdb0643 5268#line 1056 "parse.y"
861bb6c1
JL
5269{ yyval.ttype = build_x_compound_expr (yyval.ttype); ;
5270 break;}
273a708f 5271case 193:
2bdb0643 5272#line 1062 "parse.y"
cab1f180 5273{ error ("ISO C++ forbids an empty condition for `%s'",
861bb6c1
JL
5274 cond_stmt_keyword);
5275 yyval.ttype = integer_zero_node; ;
5276 break;}
273a708f 5277case 194:
2bdb0643 5278#line 1066 "parse.y"
ad321293 5279{ yyval.ttype = yyvsp[-1].ttype; ;
861bb6c1 5280 break;}
273a708f 5281case 195:
2bdb0643 5282#line 1071 "parse.y"
cab1f180 5283{ error ("ISO C++ forbids an empty condition for `%s'",
861bb6c1
JL
5284 cond_stmt_keyword);
5285 yyval.ttype = integer_zero_node; ;
5286 break;}
273a708f 5287case 196:
2bdb0643 5288#line 1075 "parse.y"
ad321293 5289{ yyval.ttype = yyvsp[-1].ttype; ;
861bb6c1 5290 break;}
273a708f 5291case 197:
2bdb0643 5292#line 1080 "parse.y"
93cdc044
JM
5293{ yyval.ttype = NULL_TREE; ;
5294 break;}
273a708f 5295case 199:
2bdb0643 5296#line 1083 "parse.y"
861bb6c1
JL
5297{ yyval.ttype = NULL_TREE; ;
5298 break;}
273a708f 5299case 200:
2bdb0643 5300#line 1088 "parse.y"
861bb6c1
JL
5301{ {
5302 tree d;
5303 for (d = getdecls (); d; d = TREE_CHAIN (d))
5304 if (TREE_CODE (d) == TYPE_DECL) {
5305 tree s = TREE_TYPE (d);
5306 if (TREE_CODE (s) == RECORD_TYPE)
8251199e 5307 cp_error ("definition of class `%T' in condition", s);
861bb6c1 5308 else if (TREE_CODE (s) == ENUMERAL_TYPE)
8251199e 5309 cp_error ("definition of enum `%T' in condition", s);
861bb6c1
JL
5310 }
5311 }
5312 current_declspecs = yyvsp[-4].ftype.t;
1f51a992 5313 yyval.ttype = parse_decl (yyvsp[-3].ttype, yyvsp[-1].ttype, 1);
861bb6c1
JL
5314 ;
5315 break;}
273a708f 5316case 201:
2bdb0643 5317#line 1103 "parse.y"
861bb6c1 5318{
1f51a992 5319 parse_end_decl (yyvsp[-1].ttype, yyvsp[0].ttype, yyvsp[-3].ttype);
79df6670 5320 yyval.ttype = convert_from_reference (yyvsp[-1].ttype);
861bb6c1 5321 if (TREE_CODE (TREE_TYPE (yyval.ttype)) == ARRAY_TYPE)
8251199e 5322 cp_error ("definition of array `%#D' in condition", yyval.ttype);
861bb6c1
JL
5323 ;
5324 break;}
273a708f 5325case 207:
2bdb0643 5326#line 1121 "parse.y"
0e607f34
JM
5327{ yyval.ttype = begin_compound_stmt (1); ;
5328 break;}
273a708f 5329case 208:
2bdb0643 5330#line 1123 "parse.y"
ad321293 5331{ finish_compound_stmt (1, yyvsp[-1].ttype); ;
861bb6c1 5332 break;}
273a708f 5333case 210:
2bdb0643 5334#line 1130 "parse.y"
e1b3e07d 5335{ yyval.ttype = tree_cons (NULL_TREE, yyval.ttype,
051e6fd7 5336 build_tree_list (NULL_TREE, yyvsp[0].ttype)); ;
861bb6c1 5337 break;}
273a708f 5338case 211:
2bdb0643 5339#line 1133 "parse.y"
e1b3e07d 5340{ yyval.ttype = tree_cons (NULL_TREE, yyval.ttype,
051e6fd7 5341 build_tree_list (NULL_TREE, error_mark_node)); ;
861bb6c1 5342 break;}
273a708f 5343case 212:
2bdb0643 5344#line 1136 "parse.y"
051e6fd7 5345{ chainon (yyval.ttype, build_tree_list (NULL_TREE, yyvsp[0].ttype)); ;
861bb6c1 5346 break;}
273a708f 5347case 213:
2bdb0643 5348#line 1138 "parse.y"
051e6fd7 5349{ chainon (yyval.ttype, build_tree_list (NULL_TREE, error_mark_node)); ;
0e607f34 5350 break;}
273a708f 5351case 214:
2bdb0643 5352#line 1143 "parse.y"
051e6fd7 5353{ yyval.ttype = build_tree_list (NULL_TREE, yyval.ttype); ;
861bb6c1 5354 break;}
273a708f 5355case 216:
2bdb0643 5356#line 1149 "parse.y"
861bb6c1
JL
5357{ yyval.ttype = yyvsp[0].ttype; ;
5358 break;}
273a708f 5359case 217:
2bdb0643 5360#line 1152 "parse.y"
861bb6c1
JL
5361{ yyval.ttype = yyvsp[0].ttype;
5362 pedantic = yyvsp[-1].itype; ;
5363 break;}
273a708f 5364case 218:
2bdb0643 5365#line 1155 "parse.y"
0e607f34 5366{ yyval.ttype = build_x_indirect_ref (yyvsp[0].ttype, "unary *"); ;
861bb6c1 5367 break;}
273a708f 5368case 219:
2bdb0643 5369#line 1157 "parse.y"
0e607f34 5370{ yyval.ttype = build_x_unary_op (ADDR_EXPR, yyvsp[0].ttype); ;
861bb6c1 5371 break;}
273a708f 5372case 220:
2bdb0643 5373#line 1159 "parse.y"
0e607f34 5374{ yyval.ttype = build_x_unary_op (BIT_NOT_EXPR, yyvsp[0].ttype); ;
861bb6c1 5375 break;}
273a708f 5376case 221:
2bdb0643 5377#line 1161 "parse.y"
0e607f34
JM
5378{ yyval.ttype = finish_unary_op_expr (yyvsp[-1].code, yyvsp[0].ttype); ;
5379 break;}
273a708f 5380case 222:
2bdb0643 5381#line 1164 "parse.y"
b4c4a9ec 5382{ if (pedantic)
cab1f180 5383 pedwarn ("ISO C++ forbids `&&'");
b4c4a9ec 5384 yyval.ttype = finish_label_address_expr (yyvsp[0].ttype); ;
861bb6c1 5385 break;}
273a708f 5386case 223:
2bdb0643 5387#line 1168 "parse.y"
0e607f34 5388{ yyval.ttype = expr_sizeof (yyvsp[0].ttype); ;
861bb6c1 5389 break;}
273a708f 5390case 224:
2bdb0643 5391#line 1170 "parse.y"
6a8f78d5
JM
5392{ yyval.ttype = c_sizeof (groktypename (yyvsp[-1].ftype.t));
5393 check_for_new_type ("sizeof", yyvsp[-1].ftype); ;
861bb6c1 5394 break;}
273a708f 5395case 225:
2bdb0643 5396#line 1173 "parse.y"
0e607f34
JM
5397{ yyval.ttype = grok_alignof (yyvsp[0].ttype); ;
5398 break;}
273a708f 5399case 226:
2bdb0643 5400#line 1175 "parse.y"
861bb6c1
JL
5401{ yyval.ttype = c_alignof (groktypename (yyvsp[-1].ftype.t));
5402 check_for_new_type ("alignof", yyvsp[-1].ftype); ;
5403 break;}
273a708f 5404case 227:
2bdb0643 5405#line 1181 "parse.y"
861bb6c1
JL
5406{ yyval.ttype = build_new (NULL_TREE, yyvsp[0].ftype.t, NULL_TREE, yyvsp[-1].itype);
5407 check_for_new_type ("new", yyvsp[0].ftype); ;
5408 break;}
273a708f 5409case 228:
2bdb0643 5410#line 1184 "parse.y"
861bb6c1
JL
5411{ yyval.ttype = build_new (NULL_TREE, yyvsp[-1].ftype.t, yyvsp[0].ttype, yyvsp[-2].itype);
5412 check_for_new_type ("new", yyvsp[-1].ftype); ;
5413 break;}
273a708f 5414case 229:
2bdb0643 5415#line 1187 "parse.y"
861bb6c1
JL
5416{ yyval.ttype = build_new (yyvsp[-1].ttype, yyvsp[0].ftype.t, NULL_TREE, yyvsp[-2].itype);
5417 check_for_new_type ("new", yyvsp[0].ftype); ;
5418 break;}
273a708f 5419case 230:
2bdb0643 5420#line 1190 "parse.y"
861bb6c1
JL
5421{ yyval.ttype = build_new (yyvsp[-2].ttype, yyvsp[-1].ftype.t, yyvsp[0].ttype, yyvsp[-3].itype);
5422 check_for_new_type ("new", yyvsp[-1].ftype); ;
5423 break;}
273a708f 5424case 231:
2bdb0643 5425#line 1194 "parse.y"
6d73fddc 5426{ yyval.ttype = build_new (NULL_TREE, groktypename(yyvsp[-1].ftype.t),
80048418 5427 NULL_TREE, yyvsp[-3].itype);
6d73fddc 5428 check_for_new_type ("new", yyvsp[-1].ftype); ;
861bb6c1 5429 break;}
273a708f 5430case 232:
2bdb0643 5431#line 1198 "parse.y"
80048418 5432{ yyval.ttype = build_new (NULL_TREE, groktypename(yyvsp[-2].ftype.t), yyvsp[0].ttype, yyvsp[-4].itype);
85c6cbaf 5433 check_for_new_type ("new", yyvsp[-2].ftype); ;
861bb6c1 5434 break;}
273a708f 5435case 233:
2bdb0643 5436#line 1201 "parse.y"
80048418 5437{ yyval.ttype = build_new (yyvsp[-3].ttype, groktypename(yyvsp[-1].ftype.t), NULL_TREE, yyvsp[-4].itype);
85c6cbaf 5438 check_for_new_type ("new", yyvsp[-1].ftype); ;
0e607f34 5439 break;}
273a708f 5440case 234:
2bdb0643 5441#line 1204 "parse.y"
80048418 5442{ yyval.ttype = build_new (yyvsp[-4].ttype, groktypename(yyvsp[-2].ftype.t), yyvsp[0].ttype, yyvsp[-5].itype);
85c6cbaf 5443 check_for_new_type ("new", yyvsp[-2].ftype); ;
861bb6c1 5444 break;}
273a708f 5445case 235:
2bdb0643 5446#line 1208 "parse.y"
85c6cbaf 5447{ yyval.ttype = delete_sanity (yyvsp[0].ttype, NULL_TREE, 0, yyvsp[-1].itype); ;
861bb6c1 5448 break;}
273a708f 5449case 236:
2bdb0643 5450#line 1210 "parse.y"
85c6cbaf 5451{ yyval.ttype = delete_sanity (yyvsp[0].ttype, NULL_TREE, 1, yyvsp[-3].itype);
26877584
JM
5452 if (yychar == YYEMPTY)
5453 yychar = YYLEX; ;
861bb6c1 5454 break;}
273a708f 5455case 237:
2bdb0643 5456#line 1214 "parse.y"
85c6cbaf
ML
5457{ yyval.ttype = delete_sanity (yyvsp[0].ttype, yyvsp[-2].ttype, 2, yyvsp[-4].itype);
5458 if (yychar == YYEMPTY)
5459 yychar = YYLEX; ;
6d73fddc 5460 break;}
273a708f 5461case 238:
2bdb0643 5462#line 1218 "parse.y"
85c6cbaf 5463{ yyval.ttype = build_x_unary_op (REALPART_EXPR, yyvsp[0].ttype); ;
861bb6c1 5464 break;}
273a708f 5465case 239:
2bdb0643 5466#line 1220 "parse.y"
85c6cbaf 5467{ yyval.ttype = build_x_unary_op (IMAGPART_EXPR, yyvsp[0].ttype); ;
93cdc044 5468 break;}
273a708f 5469case 240:
2bdb0643 5470#line 1222 "parse.y"
ecb2452b 5471{ yyval.ttype = build_x_va_arg (yyvsp[-3].ttype, groktypename (yyvsp[-1].ftype.t));
4a4b0aa3 5472 check_for_new_type ("__builtin_va_arg", yyvsp[-1].ftype); ;
861bb6c1 5473 break;}
273a708f 5474case 241:
2bdb0643 5475#line 1228 "parse.y"
80048418 5476{ yyval.ttype = yyvsp[-1].ttype; ;
26877584 5477 break;}
273a708f 5478case 242:
2bdb0643 5479#line 1230 "parse.y"
8251199e 5480{ cp_pedwarn ("old style placement syntax, use () instead");
80048418 5481 yyval.ttype = yyvsp[-1].ttype; ;
89ad74a3 5482 break;}
80048418 5483case 243:
2bdb0643 5484#line 1236 "parse.y"
0e607f34 5485{ yyval.ttype = yyvsp[-1].ttype; ;
1702d32e 5486 break;}
80048418 5487case 244:
2bdb0643 5488#line 1238 "parse.y"
0e607f34
JM
5489{ yyval.ttype = NULL_TREE; ;
5490 break;}
80048418 5491case 245:
2bdb0643 5492#line 1240 "parse.y"
861bb6c1 5493{
8251199e 5494 cp_error ("`%T' is not a valid expression", yyvsp[-1].ftype.t);
861bb6c1
JL
5495 yyval.ttype = error_mark_node;
5496 ;
5497 break;}
80048418 5498case 246:
2bdb0643 5499#line 1248 "parse.y"
861bb6c1
JL
5500{
5501 if (pedantic)
cab1f180 5502 pedwarn ("ISO C++ forbids initialization of new expression with `='");
8b1616ad
MM
5503 if (TREE_CODE (yyvsp[0].ttype) != TREE_LIST
5504 && TREE_CODE (yyvsp[0].ttype) != CONSTRUCTOR)
051e6fd7 5505 yyval.ttype = build_tree_list (NULL_TREE, yyvsp[0].ttype);
be387cb2
JM
5506 else
5507 yyval.ttype = yyvsp[0].ttype;
861bb6c1
JL
5508 ;
5509 break;}
80048418 5510case 247:
2bdb0643 5511#line 1262 "parse.y"
89ad74a3 5512{ yyvsp[-1].ftype.t = finish_parmlist (build_tree_list (NULL_TREE, yyvsp[-1].ftype.t), 0);
861bb6c1
JL
5513 yyval.ttype = make_call_declarator (NULL_TREE, yyvsp[-1].ftype.t, NULL_TREE, NULL_TREE);
5514 check_for_new_type ("cast", yyvsp[-1].ftype); ;
5515 break;}
80048418 5516case 248:
2bdb0643 5517#line 1266 "parse.y"
89ad74a3 5518{ yyvsp[-1].ftype.t = finish_parmlist (build_tree_list (NULL_TREE, yyvsp[-1].ftype.t), 0);
861bb6c1
JL
5519 yyval.ttype = make_call_declarator (yyval.ttype, yyvsp[-1].ftype.t, NULL_TREE, NULL_TREE);
5520 check_for_new_type ("cast", yyvsp[-1].ftype); ;
5521 break;}
80048418 5522case 250:
2bdb0643 5523#line 1274 "parse.y"
0e607f34
JM
5524{ yyval.ttype = reparse_absdcl_as_casts (yyval.ttype, yyvsp[0].ttype); ;
5525 break;}
80048418 5526case 251:
2bdb0643 5527#line 1276 "parse.y"
861bb6c1
JL
5528{
5529 tree init = build_nt (CONSTRUCTOR, NULL_TREE,
5530 nreverse (yyvsp[-2].ttype));
5531 if (pedantic)
cab1f180 5532 pedwarn ("ISO C++ forbids constructor-expressions");
861bb6c1
JL
5533 /* Indicate that this was a GNU C constructor expression. */
5534 TREE_HAS_CONSTRUCTOR (init) = 1;
5535
5536 yyval.ttype = reparse_absdcl_as_casts (yyval.ttype, init);
5537 ;
5538 break;}
80048418 5539case 253:
2bdb0643 5540#line 1292 "parse.y"
273a708f 5541{ yyval.ttype = build_x_binary_op (MEMBER_REF, yyval.ttype, yyvsp[0].ttype); ;
861bb6c1 5542 break;}
80048418 5543case 254:
2bdb0643 5544#line 1294 "parse.y"
273a708f 5545{ yyval.ttype = build_m_component_ref (yyval.ttype, yyvsp[0].ttype); ;
861bb6c1 5546 break;}
80048418 5547case 255:
2bdb0643 5548#line 1296 "parse.y"
80048418
MM
5549{ yyval.ttype = build_x_binary_op (yyvsp[-1].code, yyval.ttype, yyvsp[0].ttype); ;
5550 break;}
5551case 256:
2bdb0643 5552#line 1298 "parse.y"
80048418
MM
5553{ yyval.ttype = build_x_binary_op (yyvsp[-1].code, yyval.ttype, yyvsp[0].ttype); ;
5554 break;}
282a221c 5555case 257:
2bdb0643 5556#line 1300 "parse.y"
3e3f722c 5557{ yyval.ttype = build_x_binary_op (yyvsp[-1].code, yyval.ttype, yyvsp[0].ttype); ;
861bb6c1 5558 break;}
282a221c 5559case 258:
2bdb0643 5560#line 1302 "parse.y"
0e607f34 5561{ yyval.ttype = build_x_binary_op (yyvsp[-1].code, yyval.ttype, yyvsp[0].ttype); ;
861bb6c1 5562 break;}
282a221c 5563case 259:
2bdb0643 5564#line 1304 "parse.y"
26877584 5565{ yyval.ttype = build_x_binary_op (yyvsp[-1].code, yyval.ttype, yyvsp[0].ttype); ;
861bb6c1 5566 break;}
282a221c 5567case 260:
2bdb0643 5568#line 1306 "parse.y"
85c6cbaf 5569{ yyval.ttype = build_x_binary_op (yyvsp[-1].code, yyval.ttype, yyvsp[0].ttype); ;
861bb6c1 5570 break;}
282a221c 5571case 261:
2bdb0643 5572#line 1308 "parse.y"
2e6eddfc 5573{ yyval.ttype = build_x_binary_op (yyvsp[-1].code, yyval.ttype, yyvsp[0].ttype); ;
861bb6c1 5574 break;}
282a221c 5575case 262:
2bdb0643 5576#line 1310 "parse.y"
2e6eddfc 5577{ yyval.ttype = build_x_binary_op (yyvsp[-1].code, yyval.ttype, yyvsp[0].ttype); ;
861bb6c1 5578 break;}
282a221c 5579case 263:
2bdb0643 5580#line 1312 "parse.y"
80048418 5581{ yyval.ttype = build_x_binary_op (LT_EXPR, yyval.ttype, yyvsp[0].ttype); ;
861bb6c1 5582 break;}
282a221c 5583case 264:
2bdb0643 5584#line 1314 "parse.y"
80048418 5585{ yyval.ttype = build_x_binary_op (GT_EXPR, yyval.ttype, yyvsp[0].ttype); ;
89ad74a3 5586 break;}
282a221c 5587case 265:
2bdb0643 5588#line 1316 "parse.y"
80048418 5589{ yyval.ttype = build_x_binary_op (yyvsp[-1].code, yyval.ttype, yyvsp[0].ttype); ;
1702d32e 5590 break;}
282a221c 5591case 266:
2bdb0643 5592#line 1318 "parse.y"
80048418 5593{ yyval.ttype = build_x_binary_op (yyvsp[-1].code, yyval.ttype, yyvsp[0].ttype); ;
3e3f722c 5594 break;}
282a221c 5595case 267:
2bdb0643 5596#line 1320 "parse.y"
85c6cbaf 5597{ yyval.ttype = build_x_binary_op (yyvsp[-1].code, yyval.ttype, yyvsp[0].ttype); ;
3e3f722c 5598 break;}
282a221c 5599case 268:
2bdb0643 5600#line 1322 "parse.y"
2e6eddfc 5601{ yyval.ttype = build_x_binary_op (yyvsp[-1].code, yyval.ttype, yyvsp[0].ttype); ;
0e607f34 5602 break;}
282a221c 5603case 269:
2bdb0643 5604#line 1324 "parse.y"
2e6eddfc 5605{ yyval.ttype = build_x_binary_op (yyvsp[-1].code, yyval.ttype, yyvsp[0].ttype); ;
26877584 5606 break;}
282a221c 5607case 270:
2bdb0643 5608#line 1326 "parse.y"
273a708f 5609{ yyval.ttype = build_x_binary_op (TRUTH_ANDIF_EXPR, yyval.ttype, yyvsp[0].ttype); ;
2e6eddfc 5610 break;}
80048418 5611case 271:
2bdb0643 5612#line 1328 "parse.y"
273a708f 5613{ yyval.ttype = build_x_binary_op (TRUTH_ORIF_EXPR, yyval.ttype, yyvsp[0].ttype); ;
4a4b0aa3 5614 break;}
80048418 5615case 272:
2bdb0643 5616#line 1330 "parse.y"
273a708f
MM
5617{ yyval.ttype = build_x_conditional_expr (yyval.ttype, yyvsp[-2].ttype, yyvsp[0].ttype); ;
5618 break;}
80048418 5619case 273:
2bdb0643 5620#line 1332 "parse.y"
861bb6c1
JL
5621{ yyval.ttype = build_x_modify_expr (yyval.ttype, NOP_EXPR, yyvsp[0].ttype);
5622 if (yyval.ttype != error_mark_node)
5623 C_SET_EXP_ORIGINAL_CODE (yyval.ttype, MODIFY_EXPR); ;
5624 break;}
80048418 5625case 274:
2bdb0643 5626#line 1336 "parse.y"
0e607f34 5627{ yyval.ttype = build_x_modify_expr (yyval.ttype, yyvsp[-1].code, yyvsp[0].ttype); ;
861bb6c1 5628 break;}
80048418 5629case 275:
2bdb0643 5630#line 1338 "parse.y"
0e607f34 5631{ yyval.ttype = build_throw (NULL_TREE); ;
a2676865 5632 break;}
80048418 5633case 276:
2bdb0643 5634#line 1340 "parse.y"
0e607f34 5635{ yyval.ttype = build_throw (yyvsp[0].ttype); ;
861bb6c1 5636 break;}
80048418 5637case 277:
2bdb0643 5638#line 1358 "parse.y"
0e607f34 5639{ yyval.ttype = build_parse_node (BIT_NOT_EXPR, yyvsp[0].ttype); ;
386b8a85 5640 break;}
80048418 5641case 278:
2bdb0643 5642#line 1360 "parse.y"
68caa397 5643{ yyval.ttype = build_parse_node (BIT_NOT_EXPR, yyvsp[0].ttype); ;
386b8a85 5644 break;}
80048418 5645case 284:
2bdb0643 5646#line 1369 "parse.y"
161c12b0
JM
5647{
5648 /* If lastiddecl is a TREE_LIST, it's a baselink, which
5649 means that we're in an expression like S::f<int>, so
5650 don't do_identifier; we only do that for unqualified
5651 identifiers. */
5652 if (lastiddecl && TREE_CODE (lastiddecl) != TREE_LIST)
5653 yyval.ttype = do_identifier (yyvsp[-1].ttype, 1, NULL_TREE);
5654 else
5655 yyval.ttype = yyvsp[-1].ttype;
5656 ;
386b8a85 5657 break;}
80048418 5658case 285:
2bdb0643 5659#line 1382 "parse.y"
4a4b0aa3 5660{ yyval.ttype = lookup_template_function (yyvsp[-2].ttype, yyvsp[-1].ttype); ;
386b8a85 5661 break;}
80048418 5662case 286:
2bdb0643 5663#line 1384 "parse.y"
273a708f 5664{ yyval.ttype = lookup_template_function (yyvsp[-2].ttype, yyvsp[-1].ttype); ;
386b8a85 5665 break;}
80048418 5666case 287:
2bdb0643 5667#line 1389 "parse.y"
68caa397 5668{ yyval.ttype = lookup_template_function (yyvsp[-3].ttype, yyvsp[-1].ttype); ;
956d6950 5669 break;}
80048418 5670case 288:
2bdb0643 5671#line 1391 "parse.y"
273a708f
MM
5672{ yyval.ttype = lookup_template_function (yyvsp[-3].ttype, yyvsp[-1].ttype); ;
5673 break;}
80048418 5674case 289:
2bdb0643 5675#line 1394 "parse.y"
4a4b0aa3
RH
5676{ yyval.ttype = lookup_template_function (yyvsp[-3].ttype, yyvsp[-1].ttype); ;
5677 break;}
80048418 5678case 294:
2bdb0643 5679#line 1406 "parse.y"
52fbc847
JM
5680{
5681 /* Provide support for '(' attributes '*' declarator ')'
5682 etc */
5683 yyval.ttype = decl_tree_cons (yyvsp[-1].ttype, yyvsp[0].ttype, NULL_TREE);
5684 ;
5685 break;}
80048418 5686case 296:
2bdb0643 5687#line 1416 "parse.y"
68caa397 5688{ yyval.ttype = build_parse_node (INDIRECT_REF, yyvsp[0].ttype); ;
89ad74a3 5689 break;}
80048418 5690case 297:
2bdb0643 5691#line 1418 "parse.y"
68caa397 5692{ yyval.ttype = build_parse_node (ADDR_EXPR, yyvsp[0].ttype); ;
1702d32e 5693 break;}
80048418 5694case 298:
2bdb0643 5695#line 1420 "parse.y"
68caa397 5696{ yyval.ttype = yyvsp[-1].ttype; ;
0e607f34 5697 break;}
80048418 5698case 299:
2bdb0643 5699#line 1425 "parse.y"
85c6cbaf 5700{ yyval.ttype = lookup_template_function (yyvsp[-3].ttype, yyvsp[-1].ttype); ;
26877584 5701 break;}
80048418 5702case 300:
2bdb0643 5703#line 1427 "parse.y"
68caa397 5704{ yyval.ttype = lookup_template_function (yyvsp[-3].ttype, yyvsp[-1].ttype); ;
85c6cbaf 5705 break;}
80048418 5706case 304:
2bdb0643 5707#line 1437 "parse.y"
68caa397
JM
5708{ yyval.ttype = finish_decl_parsing (yyvsp[-1].ttype); ;
5709 break;}
80048418 5710case 305:
2bdb0643 5711#line 1442 "parse.y"
861bb6c1 5712{
89ad74a3
MM
5713 if (TREE_CODE (yyvsp[0].ttype) == BIT_NOT_EXPR)
5714 yyval.ttype = build_x_unary_op (BIT_NOT_EXPR, TREE_OPERAND (yyvsp[0].ttype, 0));
5715 else
5716 yyval.ttype = finish_id_expr (yyvsp[0].ttype);
861bb6c1
JL
5717 ;
5718 break;}
80048418 5719case 308:
2bdb0643 5720#line 1451 "parse.y"
861bb6c1 5721{
861bb6c1 5722 yyval.ttype = combine_strings (yyval.ttype);
dc469f59
JM
5723 /* combine_strings doesn't set up TYPE_MAIN_VARIANT of
5724 a const array the way we want, so fix it. */
479aecf1
JM
5725 if (flag_const_strings)
5726 TREE_TYPE (yyval.ttype) = build_cplus_array_type
5727 (TREE_TYPE (TREE_TYPE (yyval.ttype)),
5728 TYPE_DOMAIN (TREE_TYPE (yyval.ttype)));
861bb6c1
JL
5729 ;
5730 break;}
80048418 5731case 309:
2bdb0643 5732#line 1461 "parse.y"
68caa397 5733{ yyval.ttype = finish_parenthesized_expr (yyvsp[-1].ttype); ;
89ad74a3 5734 break;}
80048418 5735case 310:
2bdb0643 5736#line 1463 "parse.y"
68caa397
JM
5737{ yyvsp[-1].ttype = reparse_decl_as_expr (NULL_TREE, yyvsp[-1].ttype);
5738 yyval.ttype = finish_parenthesized_expr (yyvsp[-1].ttype); ;
0e607f34 5739 break;}
80048418 5740case 311:
2bdb0643 5741#line 1466 "parse.y"
68caa397
JM
5742{ yyval.ttype = error_mark_node; ;
5743 break;}
80048418 5744case 312:
2bdb0643 5745#line 1468 "parse.y"
818c8883
MM
5746{ tree scope = current_scope ();
5747 if (!scope || TREE_CODE (scope) != FUNCTION_DECL)
861bb6c1 5748 {
8251199e 5749 error ("braced-group within expression allowed only inside a function");
861bb6c1
JL
5750 YYERROR;
5751 }
b4c4a9ec 5752 if (pedantic)
cab1f180 5753 pedwarn ("ISO C++ forbids braced-groups within expressions");
b4c4a9ec 5754 yyval.ttype = begin_stmt_expr ();
67da3287 5755 ;
861bb6c1 5756 break;}
80048418 5757case 313:
2bdb0643 5758#line 1479 "parse.y"
bce9471e 5759{ yyval.ttype = finish_stmt_expr (yyvsp[-2].ttype); ;
861bb6c1 5760 break;}
80048418 5761case 314:
2bdb0643 5762#line 1484 "parse.y"
4a4b0aa3 5763{ yyval.ttype = finish_call_expr (yyvsp[-3].ttype, yyvsp[-1].ttype, 1); ;
a759e627 5764 break;}
80048418 5765case 315:
2bdb0643 5766#line 1486 "parse.y"
4a4b0aa3 5767{ yyval.ttype = finish_call_expr (yyvsp[-1].ttype, NULL_TREE, 1); ;
a759e627 5768 break;}
80048418 5769case 316:
2bdb0643 5770#line 1488 "parse.y"
4a4b0aa3 5771{ yyval.ttype = finish_call_expr (yyvsp[-3].ttype, yyvsp[-1].ttype, 0); ;
861bb6c1 5772 break;}
80048418 5773case 317:
2bdb0643 5774#line 1490 "parse.y"
4a4b0aa3 5775{ yyval.ttype = finish_call_expr (yyvsp[-1].ttype, NULL_TREE, 0); ;
861bb6c1 5776 break;}
80048418 5777case 318:
2bdb0643 5778#line 1492 "parse.y"
4a4b0aa3 5779{ yyval.ttype = grok_array_decl (yyval.ttype, yyvsp[-1].ttype); ;
861bb6c1 5780 break;}
80048418 5781case 319:
2bdb0643 5782#line 1494 "parse.y"
4a4b0aa3 5783{ yyval.ttype = finish_increment_expr (yyvsp[-1].ttype, POSTINCREMENT_EXPR); ;
0e607f34 5784 break;}
80048418 5785case 320:
2bdb0643 5786#line 1496 "parse.y"
4a4b0aa3 5787{ yyval.ttype = finish_increment_expr (yyvsp[-1].ttype, POSTDECREMENT_EXPR); ;
68caa397 5788 break;}
80048418 5789case 321:
2bdb0643 5790#line 1499 "parse.y"
4a4b0aa3
RH
5791{ yyval.ttype = finish_this_expr (); ;
5792 break;}
80048418 5793case 322:
2bdb0643 5794#line 1501 "parse.y"
861bb6c1 5795{
91063b51
MM
5796 /* This is a C cast in C++'s `functional' notation
5797 using the "implicit int" extension so that:
5798 `const (3)' is equivalent to `const int (3)'. */
5799 tree type;
861bb6c1 5800
bce9471e
MM
5801 type = hash_tree_cons (NULL_TREE, yyvsp[-3].ttype, NULL_TREE);
5802 type = groktypename (build_decl_list (type, NULL_TREE));
5803 yyval.ttype = build_functional_cast (type, yyvsp[-1].ttype);
861bb6c1
JL
5804 ;
5805 break;}
80048418 5806case 324:
2bdb0643 5807#line 1513 "parse.y"
861bb6c1
JL
5808{ tree type = groktypename (yyvsp[-4].ftype.t);
5809 check_for_new_type ("dynamic_cast", yyvsp[-4].ftype);
5810 yyval.ttype = build_dynamic_cast (type, yyvsp[-1].ttype); ;
5811 break;}
80048418 5812case 325:
2bdb0643 5813#line 1517 "parse.y"
861bb6c1
JL
5814{ tree type = groktypename (yyvsp[-4].ftype.t);
5815 check_for_new_type ("static_cast", yyvsp[-4].ftype);
5816 yyval.ttype = build_static_cast (type, yyvsp[-1].ttype); ;
5817 break;}
80048418 5818case 326:
2bdb0643 5819#line 1521 "parse.y"
861bb6c1
JL
5820{ tree type = groktypename (yyvsp[-4].ftype.t);
5821 check_for_new_type ("reinterpret_cast", yyvsp[-4].ftype);
5822 yyval.ttype = build_reinterpret_cast (type, yyvsp[-1].ttype); ;
5823 break;}
80048418 5824case 327:
2bdb0643 5825#line 1525 "parse.y"
861bb6c1
JL
5826{ tree type = groktypename (yyvsp[-4].ftype.t);
5827 check_for_new_type ("const_cast", yyvsp[-4].ftype);
5828 yyval.ttype = build_const_cast (type, yyvsp[-1].ttype); ;
5829 break;}
80048418 5830case 328:
2bdb0643 5831#line 1529 "parse.y"
e5f614d7 5832{ yyval.ttype = build_typeid (yyvsp[-1].ttype); ;
2e6eddfc 5833 break;}
80048418 5834case 329:
2bdb0643 5835#line 1531 "parse.y"
861bb6c1
JL
5836{ tree type = groktypename (yyvsp[-1].ftype.t);
5837 check_for_new_type ("typeid", yyvsp[-1].ftype);
5838 yyval.ttype = get_typeid (TYPE_MAIN_VARIANT (type)); ;
5839 break;}
80048418 5840case 330:
2bdb0643 5841#line 1535 "parse.y"
68caa397 5842{ yyval.ttype = do_scoped_id (yyvsp[0].ttype, 1); ;
0e607f34 5843 break;}
80048418 5844case 331:
2bdb0643 5845#line 1537 "parse.y"
68caa397
JM
5846{ yyval.ttype = yyvsp[0].ttype; ;
5847 break;}
80048418 5848case 332:
2bdb0643 5849#line 1539 "parse.y"
861bb6c1
JL
5850{
5851 got_scope = NULL_TREE;
5852 if (TREE_CODE (yyvsp[0].ttype) == IDENTIFIER_NODE)
5853 yyval.ttype = do_scoped_id (yyvsp[0].ttype, 1);
5854 else
5855 yyval.ttype = yyvsp[0].ttype;
5856 ;
5857 break;}
80048418 5858case 333:
2bdb0643 5859#line 1547 "parse.y"
68caa397 5860{ yyval.ttype = build_offset_ref (OP0 (yyval.ttype), OP1 (yyval.ttype)); ;
72e61a07 5861 break;}
80048418 5862case 334:
2bdb0643 5863#line 1549 "parse.y"
c6a54ad5 5864{ yyval.ttype = finish_qualified_call_expr (yyvsp[-3].ttype, yyvsp[-1].ttype); ;
0e607f34 5865 break;}
80048418 5866case 335:
2bdb0643 5867#line 1551 "parse.y"
c6a54ad5 5868{ yyval.ttype = finish_qualified_call_expr (yyvsp[-1].ttype, NULL_TREE); ;
68caa397 5869 break;}
80048418 5870case 336:
2bdb0643 5871#line 1553 "parse.y"
386b8a85
JM
5872{
5873 yyval.ttype = build_x_component_ref (yyval.ttype, yyvsp[0].ttype, NULL_TREE, 1);
5874 ;
5875 break;}
80048418 5876case 337:
2bdb0643 5877#line 1557 "parse.y"
68caa397 5878{ yyval.ttype = finish_object_call_expr (yyvsp[-3].ttype, yyvsp[-4].ttype, yyvsp[-1].ttype); ;
72e61a07 5879 break;}
80048418 5880case 338:
2bdb0643 5881#line 1559 "parse.y"
68caa397 5882{ yyval.ttype = finish_object_call_expr (yyvsp[-1].ttype, yyvsp[-2].ttype, NULL_TREE); ;
0e607f34 5883 break;}
80048418 5884case 339:
2bdb0643 5885#line 1561 "parse.y"
68caa397
JM
5886{ yyval.ttype = build_x_component_ref (yyval.ttype, yyvsp[0].ttype, NULL_TREE, 1); ;
5887 break;}
80048418 5888case 340:
2bdb0643 5889#line 1563 "parse.y"
861bb6c1 5890{ if (processing_template_decl)
2a1e9fdd 5891 yyval.ttype = build_min_nt (COMPONENT_REF, yyvsp[-1].ttype, yyvsp[0].ttype);
861bb6c1
JL
5892 else
5893 yyval.ttype = build_object_ref (yyval.ttype, OP0 (yyvsp[0].ttype), OP1 (yyvsp[0].ttype)); ;
5894 break;}
80048418 5895case 341:
2bdb0643 5896#line 1568 "parse.y"
4a4b0aa3 5897{ yyval.ttype = finish_object_call_expr (yyvsp[-3].ttype, yyvsp[-4].ttype, yyvsp[-1].ttype); ;
861bb6c1 5898 break;}
80048418 5899case 342:
2bdb0643 5900#line 1570 "parse.y"
4a4b0aa3 5901{ yyval.ttype = finish_object_call_expr (yyvsp[-1].ttype, yyvsp[-2].ttype, NULL_TREE); ;
861bb6c1 5902 break;}
80048418 5903case 343:
2bdb0643 5904#line 1572 "parse.y"
4a4b0aa3 5905{ yyval.ttype = finish_qualified_object_call_expr (yyvsp[-3].ttype, yyvsp[-4].ttype, yyvsp[-1].ttype); ;
72e61a07 5906 break;}
80048418 5907case 344:
2bdb0643 5908#line 1574 "parse.y"
4a4b0aa3 5909{ yyval.ttype = finish_qualified_object_call_expr (yyvsp[-1].ttype, yyvsp[-2].ttype, NULL_TREE); ;
0e607f34 5910 break;}
80048418 5911case 345:
2bdb0643 5912#line 1577 "parse.y"
4a4b0aa3 5913{ yyval.ttype = finish_pseudo_destructor_call_expr (yyvsp[-3].ttype, NULL_TREE, yyvsp[-1].ttype); ;
68caa397 5914 break;}
80048418 5915case 346:
2bdb0643 5916#line 1579 "parse.y"
4a4b0aa3
RH
5917{ yyval.ttype = finish_pseudo_destructor_call_expr (yyvsp[-5].ttype, yyvsp[-4].ttype, yyvsp[-1].ttype); ;
5918 break;}
80048418 5919case 347:
2bdb0643 5920#line 1581 "parse.y"
861bb6c1
JL
5921{
5922 yyval.ttype = error_mark_node;
5923 ;
5924 break;}
80048418 5925case 348:
2bdb0643 5926#line 1626 "parse.y"
68caa397 5927{ yyval.itype = 0; ;
6d73fddc 5928 break;}
80048418 5929case 349:
2bdb0643 5930#line 1628 "parse.y"
68caa397 5931{ got_scope = NULL_TREE; yyval.itype = 1; ;
861bb6c1 5932 break;}
80048418 5933case 350:
2bdb0643 5934#line 1633 "parse.y"
68caa397 5935{ yyval.itype = 0; ;
72e61a07 5936 break;}
80048418 5937case 351:
2bdb0643 5938#line 1635 "parse.y"
68caa397 5939{ got_scope = NULL_TREE; yyval.itype = 1; ;
0e607f34 5940 break;}
80048418 5941case 352:
2bdb0643 5942#line 1640 "parse.y"
68caa397
JM
5943{ yyval.ttype = boolean_true_node; ;
5944 break;}
80048418 5945case 353:
2bdb0643 5946#line 1642 "parse.y"
861bb6c1
JL
5947{ yyval.ttype = boolean_false_node; ;
5948 break;}
80048418 5949case 355:
2bdb0643 5950#line 1649 "parse.y"
861bb6c1
JL
5951{ yyval.ttype = chainon (yyval.ttype, yyvsp[0].ttype); ;
5952 break;}
80048418 5953case 356:
2bdb0643 5954#line 1654 "parse.y"
861bb6c1
JL
5955{
5956 if (! current_function_parms_stored)
5957 store_parm_decls ();
5958 setup_vtbl_ptr ();
861bb6c1
JL
5959 ;
5960 break;}
80048418 5961case 357:
2bdb0643 5962#line 1663 "parse.y"
68caa397
JM
5963{ got_object = TREE_TYPE (yyval.ttype); ;
5964 break;}
80048418 5965case 358:
2bdb0643 5966#line 1665 "parse.y"
861bb6c1
JL
5967{
5968 yyval.ttype = build_x_arrow (yyval.ttype);
5969 got_object = TREE_TYPE (yyval.ttype);
5970 ;
5971 break;}
80048418 5972case 359:
2bdb0643 5973#line 1673 "parse.y"
861bb6c1 5974{
861bb6c1
JL
5975 if (yyvsp[-2].ftype.t && IS_AGGR_TYPE_CODE (TREE_CODE (yyvsp[-2].ftype.t)))
5976 note_got_semicolon (yyvsp[-2].ftype.t);
5977 ;
5978 break;}
80048418 5979case 360:
2bdb0643 5980#line 1678 "parse.y"
861bb6c1 5981{
861bb6c1
JL
5982 note_list_got_semicolon (yyvsp[-2].ftype.t);
5983 ;
5984 break;}
80048418 5985case 361:
2bdb0643 5986#line 1682 "parse.y"
80048418 5987{;
68caa397 5988 break;}
80048418 5989case 362:
2bdb0643 5990#line 1684 "parse.y"
861bb6c1
JL
5991{
5992 shadow_tag (yyvsp[-1].ftype.t);
5993 note_list_got_semicolon (yyvsp[-1].ftype.t);
5994 ;
5995 break;}
80048418 5996case 363:
2bdb0643 5997#line 1689 "parse.y"
8251199e 5998{ warning ("empty declaration"); ;
68caa397 5999 break;}
80048418 6000case 364:
2bdb0643 6001#line 1691 "parse.y"
861bb6c1
JL
6002{ pedantic = yyvsp[-1].itype; ;
6003 break;}
80048418 6004case 367:
2bdb0643 6005#line 1705 "parse.y"
861bb6c1
JL
6006{ yyval.ttype = make_call_declarator (NULL_TREE, empty_parms (),
6007 NULL_TREE, NULL_TREE); ;
6008 break;}
80048418 6009case 368:
2bdb0643 6010#line 1708 "parse.y"
861bb6c1
JL
6011{ yyval.ttype = make_call_declarator (yyval.ttype, empty_parms (), NULL_TREE,
6012 NULL_TREE); ;
6013 break;}
80048418 6014case 369:
2bdb0643 6015#line 1715 "parse.y"
861bb6c1
JL
6016{ yyval.ftype.t = build_decl_list (yyvsp[-1].ftype.t, yyvsp[0].ttype);
6017 yyval.ftype.new_type_flag = yyvsp[-1].ftype.new_type_flag; ;
6018 break;}
80048418 6019case 370:
2bdb0643 6020#line 1718 "parse.y"
4a4b0aa3
RH
6021{ yyval.ftype.t = build_decl_list (yyvsp[-1].ftype.t, yyvsp[0].ttype);
6022 yyval.ftype.new_type_flag = yyvsp[-1].ftype.new_type_flag; ;
6023 break;}
80048418 6024case 371:
2bdb0643 6025#line 1721 "parse.y"
9e0781b5
JM
6026{ yyval.ftype.t = build_decl_list (build_decl_list (NULL_TREE, yyvsp[-1].ftype.t),
6027 yyvsp[0].ttype);
861bb6c1
JL
6028 yyval.ftype.new_type_flag = yyvsp[-1].ftype.new_type_flag; ;
6029 break;}
80048418 6030case 372:
2bdb0643 6031#line 1725 "parse.y"
861bb6c1
JL
6032{ yyval.ftype.t = build_decl_list (yyvsp[0].ftype.t, NULL_TREE);
6033 yyval.ftype.new_type_flag = yyvsp[0].ftype.new_type_flag; ;
6034 break;}
80048418 6035case 373:
2bdb0643 6036#line 1728 "parse.y"
861bb6c1
JL
6037{ yyval.ftype.t = build_decl_list (yyvsp[0].ftype.t, NULL_TREE);
6038 yyval.ftype.new_type_flag = yyvsp[0].ftype.new_type_flag; ;
6039 break;}
70adf8a9 6040case 374:
2bdb0643 6041#line 1739 "parse.y"
70adf8a9
JM
6042{ yyval.ftype.lookups = type_lookups; ;
6043 break;}
6044case 375:
2bdb0643 6045#line 1741 "parse.y"
70adf8a9
JM
6046{ yyval.ftype.lookups = type_lookups; ;
6047 break;}
80048418 6048case 376:
2bdb0643 6049#line 1746 "parse.y"
70adf8a9 6050{ yyval.ftype.t = decl_tree_cons (NULL_TREE, yyvsp[0].ftype.t, yyvsp[-1].ftype.t);
4a4b0aa3 6051 yyval.ftype.new_type_flag = yyvsp[0].ftype.new_type_flag; ;
861bb6c1 6052 break;}
80048418 6053case 377:
2bdb0643 6054#line 1749 "parse.y"
4a4b0aa3
RH
6055{ yyval.ftype.t = decl_tree_cons (NULL_TREE, yyvsp[-1].ftype.t, yyvsp[0].ttype);
6056 yyval.ftype.new_type_flag = yyvsp[-1].ftype.new_type_flag; ;
861bb6c1 6057 break;}
80048418 6058case 378:
2bdb0643 6059#line 1752 "parse.y"
4a4b0aa3
RH
6060{ yyval.ftype.t = decl_tree_cons (NULL_TREE, yyvsp[-2].ftype.t, chainon (yyvsp[-1].ttype, yyvsp[0].ttype));
6061 yyval.ftype.new_type_flag = yyvsp[-2].ftype.new_type_flag; ;
861bb6c1 6062 break;}
80048418 6063case 379:
2bdb0643 6064#line 1755 "parse.y"
70adf8a9 6065{ yyval.ftype.t = decl_tree_cons (NULL_TREE, yyvsp[-1].ftype.t, chainon (yyvsp[0].ttype, yyvsp[-2].ftype.t));
861bb6c1
JL
6066 yyval.ftype.new_type_flag = yyvsp[-1].ftype.new_type_flag; ;
6067 break;}
80048418 6068case 380:
2bdb0643 6069#line 1758 "parse.y"
70adf8a9 6070{ yyval.ftype.t = decl_tree_cons (NULL_TREE, yyvsp[-1].ftype.t, chainon (yyvsp[0].ttype, yyvsp[-2].ftype.t));
4a4b0aa3
RH
6071 yyval.ftype.new_type_flag = yyvsp[-1].ftype.new_type_flag; ;
6072 break;}
80048418 6073case 381:
2bdb0643 6074#line 1761 "parse.y"
861bb6c1 6075{ yyval.ftype.t = decl_tree_cons (NULL_TREE, yyvsp[-2].ftype.t,
70adf8a9 6076 chainon (yyvsp[-1].ttype, chainon (yyvsp[0].ttype, yyvsp[-3].ftype.t)));
861bb6c1
JL
6077 yyval.ftype.new_type_flag = yyvsp[-2].ftype.new_type_flag; ;
6078 break;}
80048418 6079case 382:
2bdb0643 6080#line 1768 "parse.y"
861bb6c1 6081{ if (extra_warnings)
8251199e 6082 warning ("`%s' is not at beginning of declaration",
861bb6c1
JL
6083 IDENTIFIER_POINTER (yyval.ttype));
6084 yyval.ttype = build_decl_list (NULL_TREE, yyval.ttype); ;
6085 break;}
80048418 6086case 383:
2bdb0643 6087#line 1773 "parse.y"
68caa397
JM
6088{ yyval.ttype = decl_tree_cons (NULL_TREE, yyvsp[0].ftype.t, yyval.ttype); ;
6089 break;}
80048418 6090case 384:
2bdb0643 6091#line 1775 "parse.y"
861bb6c1 6092{ if (extra_warnings)
8251199e 6093 warning ("`%s' is not at beginning of declaration",
861bb6c1
JL
6094 IDENTIFIER_POINTER (yyvsp[0].ttype));
6095 yyval.ttype = decl_tree_cons (NULL_TREE, yyvsp[0].ttype, yyval.ttype); ;
6096 break;}
80048418 6097case 385:
2bdb0643 6098#line 1780 "parse.y"
68caa397 6099{ yyval.ttype = decl_tree_cons (yyvsp[0].ttype, NULL_TREE, yyvsp[-1].ttype); ;
861bb6c1 6100 break;}
80048418 6101case 386:
2bdb0643 6102#line 1782 "parse.y"
68caa397 6103{ yyval.ttype = decl_tree_cons (yyvsp[0].ttype, NULL_TREE, NULL_TREE); ;
72e61a07 6104 break;}
80048418 6105case 387:
2bdb0643 6106#line 1801 "parse.y"
70adf8a9 6107{ yyval.ftype.lookups = NULL_TREE; TREE_STATIC (yyval.ftype.t) = 1; ;
0e607f34 6108 break;}
80048418 6109case 388:
2bdb0643 6110#line 1803 "parse.y"
70adf8a9
JM
6111{
6112 yyval.ftype.t = hash_tree_cons (NULL_TREE, yyvsp[0].ttype, NULL_TREE);
6113 yyval.ftype.new_type_flag = 0; yyval.ftype.lookups = NULL_TREE;
6114 ;
68caa397 6115 break;}
80048418 6116case 389:
2bdb0643 6117#line 1808 "parse.y"
70adf8a9
JM
6118{
6119 yyval.ftype.t = hash_tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ftype.t);
6120 TREE_STATIC (yyval.ftype.t) = 1;
6121 ;
861bb6c1 6122 break;}
80048418 6123case 390:
2bdb0643 6124#line 1813 "parse.y"
70adf8a9
JM
6125{
6126 if (extra_warnings && TREE_STATIC (yyval.ftype.t))
8251199e 6127 warning ("`%s' is not at beginning of declaration",
861bb6c1 6128 IDENTIFIER_POINTER (yyvsp[0].ttype));
70adf8a9
JM
6129 yyval.ftype.t = hash_tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ftype.t);
6130 TREE_STATIC (yyval.ftype.t) = TREE_STATIC (yyvsp[-1].ftype.t);
6131 ;
861bb6c1 6132 break;}
80048418 6133case 391:
2bdb0643 6134#line 1821 "parse.y"
70adf8a9 6135{ yyval.ftype.t = hash_tree_cons (yyvsp[0].ttype, NULL_TREE, yyvsp[-1].ftype.t); ;
68caa397 6136 break;}
80048418 6137case 392:
2bdb0643 6138#line 1823 "parse.y"
70adf8a9
JM
6139{
6140 yyval.ftype.t = hash_tree_cons (yyvsp[0].ttype, NULL_TREE, NULL_TREE);
6141 yyval.ftype.new_type_flag = 0; yyval.ftype.lookups = NULL_TREE;
6142 ;
861bb6c1 6143 break;}
80048418 6144case 393:
2bdb0643 6145#line 1837 "parse.y"
4a4b0aa3 6146{ yyval.ftype.t = build_decl_list (NULL_TREE, yyvsp[0].ftype.t);
861bb6c1
JL
6147 yyval.ftype.new_type_flag = yyvsp[0].ftype.new_type_flag; ;
6148 break;}
80048418 6149case 394:
2bdb0643 6150#line 1840 "parse.y"
4a4b0aa3
RH
6151{ yyval.ftype.t = decl_tree_cons (NULL_TREE, yyvsp[0].ftype.t, yyvsp[-1].ftype.t);
6152 yyval.ftype.new_type_flag = yyvsp[0].ftype.new_type_flag; ;
861bb6c1 6153 break;}
80048418 6154case 395:
2bdb0643 6155#line 1843 "parse.y"
4a4b0aa3
RH
6156{ yyval.ftype.t = decl_tree_cons (NULL_TREE, yyvsp[-1].ftype.t, yyvsp[0].ttype);
6157 yyval.ftype.new_type_flag = yyvsp[-1].ftype.new_type_flag; ;
6158 break;}
80048418 6159case 396:
2bdb0643 6160#line 1846 "parse.y"
0e607f34 6161{ yyval.ftype.t = decl_tree_cons (NULL_TREE, yyvsp[-1].ftype.t, chainon (yyvsp[0].ttype, yyvsp[-2].ftype.t));
70adf8a9 6162 yyval.ftype.new_type_flag = yyvsp[-1].ftype.new_type_flag; ;
861bb6c1 6163 break;}
80048418 6164case 397:
2bdb0643 6165#line 1852 "parse.y"
68caa397 6166{ yyval.ttype = build_decl_list (NULL_TREE, yyvsp[0].ftype.t); ;
1702d32e 6167 break;}
80048418 6168case 398:
2bdb0643 6169#line 1854 "parse.y"
2e6eddfc
AO
6170{ yyval.ttype = decl_tree_cons (NULL_TREE, yyvsp[0].ftype.t, yyvsp[-1].ttype); ;
6171 break;}
70adf8a9 6172case 399:
2bdb0643 6173#line 1863 "parse.y"
70adf8a9
JM
6174{ yyval.ftype.lookups = NULL_TREE; ;
6175 break;}
80048418 6176case 400:
2bdb0643 6177#line 1865 "parse.y"
70adf8a9 6178{ yyval.ftype.t = yyvsp[0].ttype; yyval.ftype.new_type_flag = 0; yyval.ftype.lookups = NULL_TREE; ;
861bb6c1 6179 break;}
80048418 6180case 401:
2bdb0643 6181#line 1867 "parse.y"
70adf8a9 6182{ yyval.ftype.t = yyvsp[0].ttype; yyval.ftype.new_type_flag = 0; yyval.ftype.lookups = NULL_TREE; ;
273a708f 6183 break;}
80048418 6184case 402:
2bdb0643 6185#line 1869 "parse.y"
4a4b0aa3 6186{ yyval.ftype.t = finish_typeof (yyvsp[-1].ttype);
70adf8a9 6187 yyval.ftype.new_type_flag = 0; yyval.ftype.lookups = NULL_TREE; ;
861bb6c1 6188 break;}
80048418 6189case 403:
2bdb0643 6190#line 1872 "parse.y"
4a4b0aa3 6191{ yyval.ftype.t = groktypename (yyvsp[-1].ftype.t);
70adf8a9 6192 yyval.ftype.new_type_flag = 0; yyval.ftype.lookups = NULL_TREE; ;
4a4b0aa3 6193 break;}
80048418 6194case 404:
2bdb0643 6195#line 1875 "parse.y"
861bb6c1
JL
6196{ tree type = TREE_TYPE (yyvsp[-1].ttype);
6197
70adf8a9 6198 yyval.ftype.new_type_flag = 0; yyval.ftype.lookups = NULL_TREE;
861bb6c1
JL
6199 if (IS_AGGR_TYPE (type))
6200 {
6201 sorry ("sigof type specifier");
6202 yyval.ftype.t = type;
6203 }
6204 else
6205 {
8251199e 6206 error ("`sigof' applied to non-aggregate expression");
861bb6c1
JL
6207 yyval.ftype.t = error_mark_node;
6208 }
6209 ;
6210 break;}
80048418 6211case 405:
2bdb0643 6212#line 1890 "parse.y"
861bb6c1
JL
6213{ tree type = groktypename (yyvsp[-1].ftype.t);
6214
70adf8a9 6215 yyval.ftype.new_type_flag = 0; yyval.ftype.lookups = NULL_TREE;
861bb6c1
JL
6216 if (IS_AGGR_TYPE (type))
6217 {
6218 sorry ("sigof type specifier");
6219 yyval.ftype.t = type;
6220 }
6221 else
6222 {
8251199e 6223 error("`sigof' applied to non-aggregate type");
861bb6c1
JL
6224 yyval.ftype.t = error_mark_node;
6225 }
6226 ;
6227 break;}
80048418 6228case 406:
2bdb0643 6229#line 1910 "parse.y"
0e607f34 6230{ yyval.ftype.t = yyvsp[0].ttype; yyval.ftype.new_type_flag = 0; ;
861bb6c1 6231 break;}
80048418 6232case 407:
2bdb0643 6233#line 1912 "parse.y"
68caa397 6234{ yyval.ftype.t = yyvsp[0].ttype; yyval.ftype.new_type_flag = 0; ;
861bb6c1 6235 break;}
80048418 6236case 410:
2bdb0643 6237#line 1919 "parse.y"
52fbc847
JM
6238{ check_multiple_declarators (); ;
6239 break;}
80048418 6240case 412:
2bdb0643 6241#line 1925 "parse.y"
2e6eddfc
AO
6242{ check_multiple_declarators (); ;
6243 break;}
80048418 6244case 414:
2bdb0643 6245#line 1931 "parse.y"
61a127b3
MM
6246{ check_multiple_declarators (); ;
6247 break;}
80048418 6248case 415:
2bdb0643 6249#line 1936 "parse.y"
68caa397 6250{ yyval.ttype = NULL_TREE; ;
861bb6c1 6251 break;}
80048418 6252case 416:
2bdb0643 6253#line 1938 "parse.y"
68caa397 6254{ if (TREE_CHAIN (yyvsp[-1].ttype)) yyvsp[-1].ttype = combine_strings (yyvsp[-1].ttype); yyval.ttype = yyvsp[-1].ttype; ;
72e61a07 6255 break;}
80048418 6256case 417:
2bdb0643 6257#line 1943 "parse.y"
1f51a992 6258{ yyval.ttype = parse_decl (yyvsp[-3].ttype, yyvsp[-1].ttype, 1); ;
0e607f34 6259 break;}
80048418 6260case 418:
2bdb0643 6261#line 1946 "parse.y"
1f51a992 6262{ parse_end_decl (yyvsp[-1].ttype, yyvsp[0].ttype, yyvsp[-4].ttype); ;
68caa397 6263 break;}
80048418 6264case 419:
2bdb0643 6265#line 1948 "parse.y"
70adf8a9 6266{
1f51a992
JM
6267 yyval.ttype = parse_decl (yyvsp[-2].ttype, yyvsp[0].ttype, 0);
6268 parse_end_decl (yyval.ttype, NULL_TREE, yyvsp[-1].ttype);
70adf8a9 6269 ;
861bb6c1 6270 break;}
80048418 6271case 420:
2bdb0643 6272#line 1962 "parse.y"
1f51a992
JM
6273{ yyval.ttype = parse_decl0 (yyvsp[-3].ttype, yyvsp[-4].ftype.t,
6274 yyvsp[-4].ftype.lookups, yyvsp[-1].ttype, 1); ;
861bb6c1 6275 break;}
80048418 6276case 421:
2bdb0643 6277#line 1967 "parse.y"
1f51a992 6278{ parse_end_decl (yyvsp[-1].ttype, yyvsp[0].ttype, yyvsp[-4].ttype); ;
861bb6c1 6279 break;}
80048418 6280case 422:
2bdb0643 6281#line 1969 "parse.y"
1f51a992
JM
6282{ tree d = parse_decl0 (yyvsp[-2].ttype, yyvsp[-3].ftype.t,
6283 yyvsp[-3].ftype.lookups, yyvsp[0].ttype, 0);
6284 parse_end_decl (d, NULL_TREE, yyvsp[-1].ttype); ;
861bb6c1 6285 break;}
80048418 6286case 423:
2bdb0643 6287#line 1976 "parse.y"
80048418 6288{;
4a4b0aa3 6289 break;}
80048418 6290case 424:
2bdb0643 6291#line 1981 "parse.y"
80048418 6292{;
273a708f 6293 break;}
80048418 6294case 425:
2bdb0643 6295#line 1986 "parse.y"
153305b0 6296{ /* Set things up as initdcl0_innards expects. */
5f5fc7eb 6297 yyvsp[0].ttype = yyvsp[-1].ttype;
22531e51 6298 yyvsp[-1].ttype = NULL_TREE; ;
861bb6c1 6299 break;}
80048418 6300case 426:
2bdb0643 6301#line 1990 "parse.y"
68caa397
JM
6302{;
6303 break;}
80048418 6304case 427:
2bdb0643 6305#line 1992 "parse.y"
1f51a992
JM
6306{ tree d = parse_decl0 (yyvsp[-2].ttype, NULL_TREE, NULL_TREE, yyvsp[0].ttype, 0);
6307 parse_end_decl (d, NULL_TREE, yyvsp[-1].ttype); ;
861bb6c1 6308 break;}
80048418 6309case 428:
2bdb0643 6310#line 2000 "parse.y"
273a708f 6311{ yyval.ttype = NULL_TREE; ;
a2676865 6312 break;}
80048418 6313case 429:
2bdb0643 6314#line 2002 "parse.y"
4a4b0aa3 6315{ yyval.ttype = yyvsp[0].ttype; ;
956d6950 6316 break;}
80048418 6317case 430:
2bdb0643 6318#line 2007 "parse.y"
273a708f 6319{ yyval.ttype = yyvsp[0].ttype; ;
89ad74a3 6320 break;}
80048418 6321case 431:
2bdb0643 6322#line 2009 "parse.y"
273a708f 6323{ yyval.ttype = chainon (yyvsp[-1].ttype, yyvsp[0].ttype); ;
861bb6c1 6324 break;}
80048418 6325case 432:
2bdb0643 6326#line 2014 "parse.y"
273a708f 6327{ yyval.ttype = yyvsp[-2].ttype; ;
93cdc044 6328 break;}
80048418 6329case 433:
2bdb0643 6330#line 2019 "parse.y"
273a708f 6331{ yyval.ttype = yyvsp[0].ttype; ;
861bb6c1 6332 break;}
80048418 6333case 434:
2bdb0643 6334#line 2021 "parse.y"
273a708f 6335{ yyval.ttype = chainon (yyvsp[-2].ttype, yyvsp[0].ttype); ;
26877584 6336 break;}
80048418 6337case 435:
2bdb0643 6338#line 2026 "parse.y"
273a708f 6339{ yyval.ttype = NULL_TREE; ;
85c6cbaf 6340 break;}
80048418 6341case 436:
2bdb0643 6342#line 2028 "parse.y"
273a708f 6343{ yyval.ttype = build_tree_list (yyvsp[0].ttype, NULL_TREE); ;
861bb6c1 6344 break;}
80048418 6345case 437:
2bdb0643 6346#line 2030 "parse.y"
273a708f 6347{ yyval.ttype = build_tree_list (yyvsp[-3].ttype, build_tree_list (NULL_TREE, yyvsp[-1].ttype)); ;
4a4b0aa3 6348 break;}
80048418 6349case 438:
2bdb0643 6350#line 2032 "parse.y"
273a708f
MM
6351{ yyval.ttype = build_tree_list (yyvsp[-5].ttype, tree_cons (NULL_TREE, yyvsp[-3].ttype, yyvsp[-1].ttype)); ;
6352 break;}
80048418 6353case 439:
2bdb0643 6354#line 2034 "parse.y"
68caa397 6355{ yyval.ttype = build_tree_list (yyvsp[-3].ttype, yyvsp[-1].ttype); ;
1702d32e 6356 break;}
80048418 6357case 444:
2bdb0643 6358#line 2050 "parse.y"
68caa397 6359{ yyval.ttype = build_tree_list (NULL_TREE, yyvsp[0].ttype); ;
72e61a07 6360 break;}
80048418 6361case 445:
2bdb0643 6362#line 2052 "parse.y"
68caa397 6363{ yyval.ttype = chainon (yyvsp[-2].ttype, build_tree_list (NULL_TREE, yyvsp[0].ttype)); ;
0e607f34 6364 break;}
80048418 6365case 446:
2bdb0643 6366#line 2057 "parse.y"
68caa397
JM
6367{ yyval.ttype = NULL_TREE; ;
6368 break;}
80048418 6369case 447:
2bdb0643 6370#line 2059 "parse.y"
861bb6c1
JL
6371{ yyval.ttype = yyvsp[0].ttype; ;
6372 break;}
80048418 6373case 449:
2bdb0643 6374#line 2067 "parse.y"
4a4b0aa3 6375{ yyval.ttype = build_nt (CONSTRUCTOR, NULL_TREE, NULL_TREE);
861bb6c1
JL
6376 TREE_HAS_CONSTRUCTOR (yyval.ttype) = 1; ;
6377 break;}
80048418 6378case 450:
2bdb0643 6379#line 2070 "parse.y"
4a4b0aa3 6380{ yyval.ttype = build_nt (CONSTRUCTOR, NULL_TREE, nreverse (yyvsp[-1].ttype));
861bb6c1
JL
6381 TREE_HAS_CONSTRUCTOR (yyval.ttype) = 1; ;
6382 break;}
80048418 6383case 451:
2bdb0643 6384#line 2073 "parse.y"
4a4b0aa3
RH
6385{ yyval.ttype = build_nt (CONSTRUCTOR, NULL_TREE, nreverse (yyvsp[-2].ttype));
6386 TREE_HAS_CONSTRUCTOR (yyval.ttype) = 1; ;
861bb6c1 6387 break;}
80048418 6388case 452:
2bdb0643 6389#line 2076 "parse.y"
4a4b0aa3 6390{ yyval.ttype = NULL_TREE; ;
c8fcb331 6391 break;}
80048418 6392case 453:
2bdb0643 6393#line 2083 "parse.y"
4a4b0aa3 6394{ yyval.ttype = build_tree_list (NULL_TREE, yyval.ttype); ;
c8fcb331 6395 break;}
80048418 6396case 454:
2bdb0643 6397#line 2085 "parse.y"
e1b3e07d 6398{ yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyval.ttype); ;
72e61a07 6399 break;}
80048418 6400case 455:
2bdb0643 6401#line 2088 "parse.y"
051e6fd7 6402{ yyval.ttype = build_tree_list (yyvsp[-2].ttype, yyvsp[0].ttype); ;
0e607f34 6403 break;}
80048418 6404case 456:
2bdb0643 6405#line 2090 "parse.y"
051e6fd7 6406{ yyval.ttype = build_tree_list (yyval.ttype, yyvsp[0].ttype); ;
68caa397 6407 break;}
80048418 6408case 457:
2bdb0643 6409#line 2092 "parse.y"
e1b3e07d 6410{ yyval.ttype = tree_cons (yyvsp[-2].ttype, yyvsp[0].ttype, yyval.ttype); ;
4a4b0aa3 6411 break;}
80048418 6412case 458:
2bdb0643 6413#line 2097 "parse.y"
a8f73d4b
MM
6414{ start_function (NULL_TREE, yyvsp[0].pi->fndecl, NULL_TREE,
6415 (SF_DEFAULT | SF_PRE_PARSED
6416 | SF_INCLASS_INLINE));
861bb6c1
JL
6417 reinit_parse_for_function (); ;
6418 break;}
80048418 6419case 459:
2bdb0643 6420#line 2104 "parse.y"
861bb6c1 6421{
0acf7199 6422 expand_body (finish_function ((int)yyvsp[-1].itype | 2));
87e3dbc9 6423 process_next_inline (yyvsp[-3].pi);
861bb6c1
JL
6424 ;
6425 break;}
80048418 6426case 460:
2bdb0643 6427#line 2109 "parse.y"
ac31b8d9 6428{
0acf7199 6429 expand_body (finish_function ((int)yyvsp[0].itype | 2));
87e3dbc9 6430 process_next_inline (yyvsp[-2].pi);
ac31b8d9 6431 ;
861bb6c1 6432 break;}
80048418 6433case 461:
2bdb0643 6434#line 2114 "parse.y"
273a708f 6435{
0acf7199 6436 finish_function (2);
a8f73d4b 6437 process_next_inline (yyvsp[-2].pi); ;
89ad74a3 6438 break;}
80048418 6439case 464:
2bdb0643 6440#line 2128 "parse.y"
68caa397 6441{ replace_defarg (yyvsp[-2].ttype, yyvsp[-1].ttype); ;
1702d32e 6442 break;}
80048418 6443case 465:
2bdb0643 6444#line 2130 "parse.y"
68caa397 6445{ replace_defarg (yyvsp[-2].ttype, error_mark_node); ;
26877584 6446 break;}
80048418 6447case 467:
2bdb0643 6448#line 2135 "parse.y"
4a4b0aa3
RH
6449{ do_pending_defargs (); ;
6450 break;}
80048418 6451case 468:
2bdb0643 6452#line 2137 "parse.y"
273a708f
MM
6453{ do_pending_defargs (); ;
6454 break;}
80048418 6455case 469:
2bdb0643 6456#line 2142 "parse.y"
80048418 6457{ yyval.ttype = current_enum_type;
818c8883 6458 current_enum_type = start_enum (yyvsp[-1].ttype); ;
861bb6c1 6459 break;}
80048418 6460case 470:
2bdb0643 6461#line 2145 "parse.y"
58595203 6462{ yyval.ftype.t = finish_enum (current_enum_type);
861bb6c1 6463 yyval.ftype.new_type_flag = 1;
e88e3c0b 6464 current_enum_type = yyvsp[-2].ttype;
818c8883 6465 check_for_missing_semicolon (yyval.ftype.t); ;
861bb6c1 6466 break;}
80048418 6467case 471:
2bdb0643 6468#line 2150 "parse.y"
80048418 6469{ yyval.ttype = current_enum_type;
818c8883 6470 current_enum_type = start_enum (make_anon_name ()); ;
861bb6c1 6471 break;}
80048418 6472case 472:
2bdb0643 6473#line 2153 "parse.y"
58595203 6474{ yyval.ftype.t = finish_enum (current_enum_type);
818c8883 6475 yyval.ftype.new_type_flag = 1;
e88e3c0b 6476 current_enum_type = yyvsp[-2].ttype;
861bb6c1
JL
6477 check_for_missing_semicolon (yyval.ftype.t); ;
6478 break;}
80048418 6479case 473:
2bdb0643 6480#line 2158 "parse.y"
ca107ded 6481{ yyval.ftype.t = xref_tag (enum_type_node, yyvsp[0].ttype, 1);
861bb6c1
JL
6482 yyval.ftype.new_type_flag = 0; ;
6483 break;}
80048418 6484case 474:
2bdb0643 6485#line 2161 "parse.y"
4a4b0aa3
RH
6486{ yyval.ftype.t = xref_tag (enum_type_node, yyvsp[0].ttype, 1);
6487 yyval.ftype.new_type_flag = 0; ;
6488 break;}
80048418 6489case 475:
2bdb0643 6490#line 2164 "parse.y"
faf199a6 6491{ yyval.ftype.t = yyvsp[0].ttype;
ea6021e8
MM
6492 yyval.ftype.new_type_flag = 0;
6493 if (!processing_template_decl)
8251199e 6494 cp_pedwarn ("using `typename' outside of template"); ;
861bb6c1 6495 break;}
80048418 6496case 476:
2bdb0643 6497#line 2170 "parse.y"
3d7de1fa 6498{ yyvsp[-1].ftype.t = begin_class_definition (yyvsp[-1].ftype.t); ;
8f032717 6499 break;}
80048418 6500case 477:
2bdb0643 6501#line 2172 "parse.y"
89ad74a3 6502{
861bb6c1 6503 int semi;
861bb6c1 6504
861bb6c1
JL
6505 if (yychar == YYEMPTY)
6506 yychar = YYLEX;
6507 semi = yychar == ';';
861bb6c1 6508
fbdd0024
MM
6509 yyval.ttype = finish_class_definition (yyvsp[-5].ftype.t, yyvsp[0].ttype, semi,
6510 yyvsp[-5].ftype.new_type_flag);
861bb6c1
JL
6511 ;
6512 break;}
80048418 6513case 478:
2bdb0643 6514#line 2183 "parse.y"
51632249
JM
6515{
6516 begin_inline_definitions ();
6517 ;
68caa397 6518 break;}
80048418 6519case 479:
2bdb0643 6520#line 2187 "parse.y"
51632249
JM
6521{
6522 finish_inline_definitions ();
6523 yyval.ftype.t = yyvsp[-3].ttype;
89ad74a3 6524 yyval.ftype.new_type_flag = 1;
51632249 6525 ;
89ad74a3 6526 break;}
80048418 6527case 480:
2bdb0643 6528#line 2193 "parse.y"
861bb6c1 6529{
8bcc97de 6530 if (yyvsp[0].ftype.new_type_flag && yyvsp[0].ftype.t != error_mark_node)
3d7de1fa 6531 pop_scope (CP_DECL_CONTEXT (TYPE_MAIN_DECL (yyvsp[0].ftype.t)));
861bb6c1 6532 yyval.ftype.new_type_flag = 0;
8bcc97de
MM
6533 if (yyvsp[0].ftype.t == error_mark_node)
6534 yyval.ftype.t = yyvsp[0].ftype.t;
6535 else if (TYPE_BINFO (yyvsp[0].ftype.t) == NULL_TREE)
abff8e06 6536 {
3d7de1fa 6537 cp_error ("%T is not a class type", yyvsp[0].ftype.t);
abff8e06
JM
6538 yyval.ftype.t = error_mark_node;
6539 }
6540 else
6541 {
3d7de1fa 6542 yyval.ftype.t = yyvsp[0].ftype.t;
cab1f180 6543 /* struct B: public A; is not accepted by the standard grammar. */
07c88314
MM
6544 if (CLASS_TYPE_P (yyval.ftype.t)
6545 && TYPE_BINFO_BASETYPES (yyval.ftype.t)
d0f062fb 6546 && !COMPLETE_TYPE_P (yyval.ftype.t)
abff8e06 6547 && ! TYPE_BEING_DEFINED (yyval.ftype.t))
8251199e 6548 cp_error ("base clause without member specification for `%#T'",
abff8e06
JM
6549 yyval.ftype.t);
6550 }
861bb6c1
JL
6551 ;
6552 break;}
80048418 6553case 484:
2bdb0643 6554#line 2226 "parse.y"
861bb6c1 6555{ if (pedantic && !in_system_header)
8251199e 6556 pedwarn ("comma at end of enumerator list"); ;
861bb6c1 6557 break;}
80048418 6558case 486:
2bdb0643 6559#line 2233 "parse.y"
8251199e 6560{ error ("storage class specifier `%s' not allowed after struct or class", IDENTIFIER_POINTER (yyvsp[0].ttype)); ;
6d73fddc 6561 break;}
80048418 6562case 487:
2bdb0643 6563#line 2235 "parse.y"
8251199e 6564{ error ("type specifier `%s' not allowed after struct or class", IDENTIFIER_POINTER (yyvsp[0].ttype)); ;
72e61a07 6565 break;}
80048418 6566case 488:
2bdb0643 6567#line 2237 "parse.y"
8251199e 6568{ error ("type qualifier `%s' not allowed after struct or class", IDENTIFIER_POINTER (yyvsp[0].ttype)); ;
0e607f34 6569 break;}
80048418 6570case 489:
2bdb0643 6571#line 2239 "parse.y"
8251199e 6572{ error ("no body nor ';' separates two class, struct or union declarations"); ;
dc8263bc 6573 break;}
80048418 6574case 490:
2bdb0643 6575#line 2241 "parse.y"
68caa397 6576{ yyval.ttype = build_decl_list (yyvsp[0].ttype, yyvsp[-1].ttype); ;
26877584 6577 break;}
80048418 6578case 491:
2bdb0643 6579#line 2246 "parse.y"
61a127b3
MM
6580{
6581 current_aggr = yyvsp[-1].ttype;
6582 yyval.ttype = yyvsp[0].ttype;
6583 ;
85c6cbaf 6584 break;}
80048418 6585case 492:
2bdb0643 6586#line 2254 "parse.y"
68caa397 6587{ current_aggr = yyval.ttype; yyval.ttype = yyvsp[0].ttype; ;
268ae1b0 6588 break;}
80048418 6589case 493:
2bdb0643 6590#line 2256 "parse.y"
68caa397 6591{ yyungetc ('{', 1); ;
268ae1b0 6592 break;}
80048418 6593case 494:
2bdb0643 6594#line 2258 "parse.y"
68caa397
JM
6595{ yyungetc (':', 1); ;
6596 break;}
80048418 6597case 495:
2bdb0643 6598#line 2263 "parse.y"
861bb6c1
JL
6599{
6600 current_aggr = yyvsp[-2].ttype;
3d7de1fa
MM
6601 yyval.ftype.t = handle_class_head (yyvsp[-2].ttype, yyvsp[-1].ttype, yyvsp[0].ttype);
6602 yyval.ftype.new_type_flag = 1;
861bb6c1
JL
6603 ;
6604 break;}
80048418 6605case 496:
2bdb0643 6606#line 2269 "parse.y"
8eeda2ec
JM
6607{
6608 current_aggr = yyvsp[-3].ttype;
3d7de1fa
MM
6609 yyval.ftype.t = handle_class_head (yyvsp[-3].ttype, yyvsp[-1].ttype, yyvsp[0].ttype);
6610 yyval.ftype.new_type_flag = 1;
8eeda2ec 6611 ;
861bb6c1 6612 break;}
80048418 6613case 497:
2bdb0643 6614#line 2275 "parse.y"
8eeda2ec
JM
6615{
6616 current_aggr = yyvsp[-2].ttype;
3d7de1fa
MM
6617 yyval.ftype.t = handle_class_head (yyvsp[-2].ttype, NULL_TREE, yyvsp[0].ttype);
6618 yyval.ftype.new_type_flag = 1;
8eeda2ec 6619 ;
861bb6c1 6620 break;}
80048418 6621case 498:
2bdb0643 6622#line 2281 "parse.y"
3d7de1fa
MM
6623{
6624 current_aggr = yyvsp[-1].ttype;
6625 yyval.ftype.t = yyvsp[0].ttype;
6626 yyval.ftype.new_type_flag = 0;
6627 ;
26877584 6628 break;}
80048418 6629case 499:
2bdb0643 6630#line 2287 "parse.y"
3d7de1fa
MM
6631{
6632 current_aggr = yyvsp[-2].ttype;
6633 yyval.ftype.t = yyvsp[0].ttype;
6634 if (CP_DECL_CONTEXT (yyval.ftype.t))
6635 push_scope (CP_DECL_CONTEXT (yyval.ftype.t));
6636 yyval.ftype.new_type_flag = 1;
6637 ;
68caa397 6638 break;}
80048418 6639case 500:
2bdb0643 6640#line 2298 "parse.y"
3d7de1fa
MM
6641{
6642 yyval.ftype.t = xref_tag (current_aggr, yyvsp[0].ttype, 1);
6643 yyval.ftype.new_type_flag = 0;
6644 ;
61a127b3 6645 break;}
80048418 6646case 501:
2bdb0643 6647#line 2303 "parse.y"
8f032717
MM
6648{ yyval.ttype = xref_tag (current_aggr, yyvsp[0].ttype, 0); ;
6649 break;}
80048418 6650case 502:
2bdb0643 6651#line 2307 "parse.y"
861bb6c1 6652{
3d7de1fa
MM
6653 yyval.ftype.t = yyvsp[-1].ttype;
6654 yyval.ftype.new_type_flag = 0;
861bb6c1
JL
6655 if (yyvsp[0].ttype)
6656 xref_basetypes (current_aggr, yyvsp[-2].ttype, yyvsp[-1].ttype, yyvsp[0].ttype);
6657 ;
6658 break;}
80048418 6659case 503:
2bdb0643 6660#line 2315 "parse.y"
861bb6c1 6661{
3d7de1fa 6662 if (yyvsp[-1].ftype.t != error_mark_node)
861bb6c1 6663 {
3d7de1fa
MM
6664 yyval.ftype.t = TREE_TYPE (yyvsp[-1].ftype.t);
6665 yyval.ftype.new_type_flag = yyvsp[-1].ftype.new_type_flag;
44689c12 6666 if (current_aggr == union_type_node
3d7de1fa
MM
6667 && TREE_CODE (yyval.ftype.t) != UNION_TYPE)
6668 cp_pedwarn ("`union' tag used in declaring `%#T'",
6669 yyval.ftype.t);
6670 else if (TREE_CODE (yyval.ftype.t) == UNION_TYPE
44689c12 6671 && current_aggr != union_type_node)
3d7de1fa
MM
6672 cp_pedwarn ("non-`union' tag used in declaring `%#T'", yyval.ftype);
6673 else if (TREE_CODE (yyval.ftype.t) == RECORD_TYPE)
44689c12
ML
6674 /* We might be specializing a template with a different
6675 class-key; deal. */
3d7de1fa
MM
6676 CLASSTYPE_DECLARED_CLASS (yyval.ftype.t)
6677 = (current_aggr == class_type_node);
44689c12
ML
6678 if (yyvsp[0].ttype)
6679 {
3d7de1fa
MM
6680 maybe_process_partial_specialization (yyval.ftype.t);
6681 xref_basetypes (current_aggr, yyvsp[-1].ftype.t, yyval.ftype.t, yyvsp[0].ttype);
44689c12 6682 }
861bb6c1
JL
6683 }
6684 ;
6685 break;}
80048418 6686case 504:
2bdb0643 6687#line 2343 "parse.y"
ca107ded 6688{ yyval.ttype = xref_tag (yyval.ttype, make_anon_name (), 0);
861bb6c1
JL
6689 yyungetc ('{', 1); ;
6690 break;}
80048418 6691case 505:
2bdb0643 6692#line 2353 "parse.y"
3d7de1fa
MM
6693{
6694 yyval.ftype.t = yyvsp[0].ttype;
6695 yyval.ftype.new_type_flag = 0;
6696 ;
6697 break;}
80048418 6698case 507:
2bdb0643 6699#line 2362 "parse.y"
68caa397 6700{ yyval.ttype = NULL_TREE; ;
dc8263bc 6701 break;}
80048418 6702case 508:
2bdb0643 6703#line 2364 "parse.y"
68caa397
JM
6704{ yyungetc(':', 1); yyval.ttype = NULL_TREE; ;
6705 break;}
80048418 6706case 509:
2bdb0643 6707#line 2366 "parse.y"
861bb6c1
JL
6708{ yyval.ttype = yyvsp[0].ttype; ;
6709 break;}
80048418 6710case 511:
2bdb0643 6711#line 2372 "parse.y"
273a708f 6712{ yyval.ttype = chainon (yyval.ttype, yyvsp[0].ttype); ;
861bb6c1 6713 break;}
80048418 6714case 512:
2bdb0643 6715#line 2377 "parse.y"
273a708f 6716{ yyval.ttype = finish_base_specifier (access_default_node, yyvsp[0].ttype); ;
861bb6c1 6717 break;}
80048418 6718case 513:
2bdb0643 6719#line 2379 "parse.y"
273a708f
MM
6720{ yyval.ttype = finish_base_specifier (yyvsp[-2].ttype, yyvsp[0].ttype); ;
6721 break;}
80048418 6722case 514:
2bdb0643 6723#line 2384 "parse.y"
07c88314
MM
6724{ if (yyval.ttype == error_mark_node)
6725 ;
6726 else if (!TYPE_P (yyval.ttype))
6727 yyval.ttype = error_mark_node;
6728 else
6729 yyval.ttype = TYPE_MAIN_DECL (yyvsp[0].ttype); ;
a2676865 6730 break;}
80048418 6731case 517:
2bdb0643 6732#line 2396 "parse.y"
d8b55a76 6733{ if (yyvsp[-1].ttype != ridpointers[(int)RID_VIRTUAL])
8251199e 6734 cp_error ("`%D' access", yyvsp[-1].ttype);
861bb6c1
JL
6735 yyval.ttype = access_default_virtual_node; ;
6736 break;}
80048418 6737case 518:
2bdb0643 6738#line 2400 "parse.y"
d8b55a76
JM
6739{
6740 if (yyvsp[-2].ttype != access_default_virtual_node)
8251199e 6741 error ("multiple access specifiers");
861bb6c1 6742 else if (yyvsp[-1].ttype == access_public_node)
d8b55a76
JM
6743 yyval.ttype = access_public_virtual_node;
6744 else if (yyvsp[-1].ttype == access_protected_node)
6745 yyval.ttype = access_protected_virtual_node;
861bb6c1 6746 else /* $2 == access_private_node */
d8b55a76 6747 yyval.ttype = access_private_virtual_node;
861bb6c1
JL
6748 ;
6749 break;}
80048418 6750case 519:
2bdb0643 6751#line 2411 "parse.y"
861bb6c1 6752{ if (yyvsp[-1].ttype != ridpointers[(int)RID_VIRTUAL])
8251199e 6753 cp_error ("`%D' access", yyvsp[-1].ttype);
d8b55a76 6754 else if (yyval.ttype == access_public_node)
861bb6c1 6755 yyval.ttype = access_public_virtual_node;
d8b55a76
JM
6756 else if (yyval.ttype == access_protected_node)
6757 yyval.ttype = access_protected_virtual_node;
861bb6c1 6758 else if (yyval.ttype == access_private_node)
d8b55a76
JM
6759 yyval.ttype = access_private_virtual_node;
6760 else
8251199e 6761 error ("multiple `virtual' specifiers");
d8b55a76 6762 ;
861bb6c1 6763 break;}
80048418 6764case 524:
2bdb0643 6765#line 2432 "parse.y"
861bb6c1 6766{
61a127b3
MM
6767 current_access_specifier = yyvsp[-1].ttype;
6768 ;
861bb6c1 6769 break;}
80048418 6770case 525:
2bdb0643 6771#line 2441 "parse.y"
61a127b3
MM
6772{
6773 finish_member_declaration (yyvsp[0].ttype);
861bb6c1
JL
6774 ;
6775 break;}
80048418 6776case 526:
2bdb0643 6777#line 2445 "parse.y"
61a127b3
MM
6778{
6779 finish_member_declaration (yyvsp[0].ttype);
6780 ;
1702d32e 6781 break;}
80048418 6782case 528:
2bdb0643 6783#line 2453 "parse.y"
8251199e 6784{ error ("missing ';' before right brace");
68caa397 6785 yyungetc ('}', 0); ;
861bb6c1 6786 break;}
80048418 6787case 529:
2bdb0643 6788#line 2458 "parse.y"
268ae1b0 6789{ yyval.ttype = finish_method (yyval.ttype); ;
861bb6c1 6790 break;}
80048418 6791case 530:
2bdb0643 6792#line 2460 "parse.y"
68caa397 6793{ yyval.ttype = finish_method (yyval.ttype); ;
3e3f722c 6794 break;}
80048418 6795case 531:
2bdb0643 6796#line 2462 "parse.y"
4a4b0aa3 6797{ yyval.ttype = finish_method (yyval.ttype); ;
91063b51 6798 break;}
80048418 6799case 532:
2bdb0643 6800#line 2464 "parse.y"
273a708f 6801{ yyval.ttype = finish_method (yyval.ttype); ;
861bb6c1 6802 break;}
80048418 6803case 533:
2bdb0643 6804#line 2466 "parse.y"
273a708f
MM
6805{ yyval.ttype = NULL_TREE; ;
6806 break;}
80048418 6807case 534:
2bdb0643 6808#line 2468 "parse.y"
4a4b0aa3
RH
6809{ yyval.ttype = yyvsp[0].ttype;
6810 pedantic = yyvsp[-1].itype; ;
6811 break;}
80048418 6812case 535:
2bdb0643 6813#line 2471 "parse.y"
61a127b3
MM
6814{
6815 if (yyvsp[0].ttype)
6816 yyval.ttype = finish_member_template_decl (yyvsp[0].ttype);
6817 else
6818 /* The component was already processed. */
6819 yyval.ttype = NULL_TREE;
6820
6821 finish_template_decl (yyvsp[-1].ttype);
6822 ;
268ae1b0 6823 break;}
80048418 6824case 536:
2bdb0643 6825#line 2481 "parse.y"
61a127b3
MM
6826{
6827 yyval.ttype = finish_member_class_template (yyvsp[-1].ftype.t);
6828 finish_template_decl (yyvsp[-2].ttype);
6829 ;
268ae1b0 6830 break;}
80048418 6831case 537:
2bdb0643 6832#line 2492 "parse.y"
61a127b3
MM
6833{
6834 /* Most of the productions for component_decl only
6835 allow the creation of one new member, so we call
6836 finish_member_declaration in component_decl_list.
6837 For this rule and the next, however, there can be
6838 more than one member, e.g.:
6839
6840 int i, j;
6841
6842 and we need the first member to be fully
6843 registered before the second is processed.
6844 Therefore, the rules for components take care of
6845 this processing. To avoid registering the
6846 components more than once, we send NULL_TREE up
41bc80f4 6847 here; that lets finish_member_declaration know
61a127b3
MM
6848 that there is nothing to do. */
6849 if (!yyvsp[0].itype)
6850 grok_x_components (yyvsp[-1].ftype.t);
6851 yyval.ttype = NULL_TREE;
6852 ;
93cdc044 6853 break;}
80048418 6854case 538:
2bdb0643 6855#line 2513 "parse.y"
61a127b3
MM
6856{
6857 if (!yyvsp[0].itype)
70adf8a9 6858 grok_x_components (yyvsp[-1].ftype.t);
61a127b3
MM
6859 yyval.ttype = NULL_TREE;
6860 ;
72e61a07 6861 break;}
80048418 6862case 539:
2bdb0643 6863#line 2519 "parse.y"
61a127b3
MM
6864{ yyval.ttype = grokfield (yyval.ttype, NULL_TREE, yyvsp[0].ttype, yyvsp[-2].ttype,
6865 build_tree_list (yyvsp[-1].ttype, NULL_TREE)); ;
dc8263bc 6866 break;}
80048418 6867case 540:
2bdb0643 6868#line 2522 "parse.y"
4a4b0aa3
RH
6869{ yyval.ttype = grokfield (yyval.ttype, NULL_TREE, yyvsp[0].ttype, yyvsp[-2].ttype,
6870 build_tree_list (yyvsp[-1].ttype, NULL_TREE)); ;
68caa397 6871 break;}
80048418 6872case 541:
2bdb0643 6873#line 2525 "parse.y"
4a4b0aa3 6874{ yyval.ttype = grokbitfield (NULL_TREE, NULL_TREE, yyvsp[0].ttype); ;
861bb6c1 6875 break;}
80048418 6876case 542:
2bdb0643 6877#line 2527 "parse.y"
4a4b0aa3
RH
6878{ yyval.ttype = NULL_TREE; ;
6879 break;}
80048418 6880case 543:
2bdb0643 6881#line 2538 "parse.y"
61a127b3 6882{ tree specs, attrs;
70adf8a9 6883 split_specs_attrs (yyvsp[-4].ftype.t, &specs, &attrs);
61a127b3
MM
6884 yyval.ttype = grokfield (yyvsp[-3].ttype, specs, yyvsp[0].ttype, yyvsp[-2].ttype,
6885 build_tree_list (yyvsp[-1].ttype, attrs)); ;
6886 break;}
80048418 6887case 544:
2bdb0643 6888#line 2543 "parse.y"
861bb6c1
JL
6889{ yyval.ttype = grokfield (yyval.ttype, NULL_TREE, yyvsp[0].ttype, yyvsp[-2].ttype,
6890 build_tree_list (yyvsp[-1].ttype, NULL_TREE)); ;
6891 break;}
80048418 6892case 545:
2bdb0643 6893#line 2546 "parse.y"
93cdc044 6894{ yyval.ttype = do_class_using_decl (yyvsp[0].ttype); ;
861bb6c1 6895 break;}
80048418 6896case 546:
2bdb0643 6897#line 2552 "parse.y"
61a127b3 6898{ yyval.itype = 0; ;
a2676865 6899 break;}
80048418 6900case 547:
2bdb0643 6901#line 2554 "parse.y"
61a127b3
MM
6902{
6903 if (PROCESSING_REAL_TEMPLATE_DECL_P ())
6904 yyvsp[0].ttype = finish_member_template_decl (yyvsp[0].ttype);
6905 finish_member_declaration (yyvsp[0].ttype);
6906 yyval.itype = 1;
861bb6c1
JL
6907 ;
6908 break;}
80048418 6909case 548:
2bdb0643 6910#line 2561 "parse.y"
61a127b3
MM
6911{
6912 check_multiple_declarators ();
6913 if (PROCESSING_REAL_TEMPLATE_DECL_P ())
6914 yyvsp[0].ttype = finish_member_template_decl (yyvsp[0].ttype);
6915 finish_member_declaration (yyvsp[0].ttype);
6916 yyval.itype = 2;
6917 ;
6918 break;}
80048418 6919case 549:
2bdb0643 6920#line 2572 "parse.y"
61a127b3 6921{ yyval.itype = 0; ;
861bb6c1 6922 break;}
80048418 6923case 550:
2bdb0643 6924#line 2574 "parse.y"
61a127b3
MM
6925{
6926 if (PROCESSING_REAL_TEMPLATE_DECL_P ())
6927 yyvsp[0].ttype = finish_member_template_decl (yyvsp[0].ttype);
6928 finish_member_declaration (yyvsp[0].ttype);
6929 yyval.itype = 1;
6930 ;
6931 break;}
80048418 6932case 551:
2bdb0643 6933#line 2581 "parse.y"
61a127b3
MM
6934{
6935 check_multiple_declarators ();
6936 if (PROCESSING_REAL_TEMPLATE_DECL_P ())
6937 yyvsp[0].ttype = finish_member_template_decl (yyvsp[0].ttype);
6938 finish_member_declaration (yyvsp[0].ttype);
6939 yyval.itype = 2;
861bb6c1
JL
6940 ;
6941 break;}
80048418 6942case 556:
2bdb0643 6943#line 2602 "parse.y"
1f51a992
JM
6944{ yyval.ttype = parse_field0 (yyvsp[-3].ttype, yyvsp[-4].ftype.t, yyvsp[-4].ftype.lookups,
6945 yyvsp[-1].ttype, yyvsp[-2].ttype, yyvsp[0].ttype); ;
861bb6c1 6946 break;}
80048418 6947case 557:
2bdb0643 6948#line 2605 "parse.y"
1f51a992
JM
6949{ yyval.ttype = parse_bitfield0 (yyvsp[-3].ttype, yyvsp[-4].ftype.t, yyvsp[-4].ftype.lookups,
6950 yyvsp[0].ttype, yyvsp[-1].ttype); ;
861bb6c1 6951 break;}
80048418 6952case 558:
2bdb0643 6953#line 2611 "parse.y"
1f51a992
JM
6954{ yyval.ttype = parse_field0 (yyvsp[-3].ttype, yyvsp[-4].ftype.t, yyvsp[-4].ftype.lookups,
6955 yyvsp[-1].ttype, yyvsp[-2].ttype, yyvsp[0].ttype); ;
861bb6c1 6956 break;}
80048418 6957case 559:
2bdb0643 6958#line 2614 "parse.y"
1f51a992
JM
6959{ yyval.ttype = parse_field0 (yyvsp[-3].ttype, yyvsp[-4].ftype.t, yyvsp[-4].ftype.lookups,
6960 yyvsp[-1].ttype, yyvsp[-2].ttype, yyvsp[0].ttype); ;
861bb6c1 6961 break;}
80048418 6962case 560:
2bdb0643 6963#line 2617 "parse.y"
1f51a992
JM
6964{ yyval.ttype = parse_bitfield0 (yyvsp[-3].ttype, yyvsp[-4].ftype.t, yyvsp[-4].ftype.lookups,
6965 yyvsp[0].ttype, yyvsp[-1].ttype); ;
861bb6c1 6966 break;}
80048418 6967case 561:
2bdb0643 6968#line 2620 "parse.y"
1f51a992
JM
6969{ yyval.ttype = parse_bitfield0 (NULL_TREE, yyvsp[-3].ftype.t,
6970 yyvsp[-3].ftype.lookups, yyvsp[0].ttype, yyvsp[-1].ttype); ;
861bb6c1 6971 break;}
80048418 6972case 562:
2bdb0643 6973#line 2626 "parse.y"
1f51a992 6974{ yyval.ttype = parse_field (yyvsp[-3].ttype, yyvsp[-1].ttype, yyvsp[-2].ttype, yyvsp[0].ttype); ;
861bb6c1 6975 break;}
80048418 6976case 563:
2bdb0643 6977#line 2628 "parse.y"
1f51a992 6978{ yyval.ttype = parse_bitfield (yyvsp[-3].ttype, yyvsp[0].ttype, yyvsp[-1].ttype); ;
861bb6c1 6979 break;}
80048418 6980case 564:
2bdb0643 6981#line 2633 "parse.y"
1f51a992 6982{ yyval.ttype = parse_field (yyvsp[-3].ttype, yyvsp[-1].ttype, yyvsp[-2].ttype, yyvsp[0].ttype); ;
861bb6c1 6983 break;}
80048418 6984case 565:
2bdb0643 6985#line 2635 "parse.y"
1f51a992 6986{ yyval.ttype = parse_bitfield (yyvsp[-3].ttype, yyvsp[0].ttype, yyvsp[-1].ttype); ;
861bb6c1 6987 break;}
80048418 6988case 566:
2bdb0643 6989#line 2637 "parse.y"
1f51a992 6990{ yyval.ttype = parse_bitfield (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ;
861bb6c1 6991 break;}
80048418 6992case 571:
2bdb0643 6993#line 2656 "parse.y"
58595203 6994{ build_enumerator (yyvsp[0].ttype, NULL_TREE, current_enum_type); ;
dc8263bc 6995 break;}
80048418 6996case 572:
2bdb0643 6997#line 2658 "parse.y"
58595203 6998{ build_enumerator (yyvsp[-2].ttype, yyvsp[0].ttype, current_enum_type); ;
68caa397 6999 break;}
80048418 7000case 573:
2bdb0643 7001#line 2664 "parse.y"
861bb6c1
JL
7002{ yyval.ftype.t = build_decl_list (yyvsp[-1].ftype.t, yyvsp[0].ttype);
7003 yyval.ftype.new_type_flag = yyvsp[-1].ftype.new_type_flag; ;
7004 break;}
80048418 7005case 574:
2bdb0643 7006#line 2667 "parse.y"
861bb6c1
JL
7007{ yyval.ftype.t = build_decl_list (yyvsp[0].ftype.t, NULL_TREE);
7008 yyval.ftype.new_type_flag = yyvsp[0].ftype.new_type_flag; ;
7009 break;}
80048418 7010case 575:
2bdb0643 7011#line 2672 "parse.y"
861bb6c1
JL
7012{
7013 if (pedantic)
cab1f180 7014 pedwarn ("ISO C++ forbids array dimensions with parenthesized type in new");
6d73fddc
MM
7015 yyval.ftype.t = build_parse_node (ARRAY_REF, TREE_VALUE (yyvsp[-4].ftype.t), yyvsp[-1].ttype);
7016 yyval.ftype.t = build_decl_list (TREE_PURPOSE (yyvsp[-4].ftype.t), yyval.ftype.t);
7017 yyval.ftype.new_type_flag = yyvsp[-4].ftype.new_type_flag;
861bb6c1
JL
7018 ;
7019 break;}
80048418 7020case 576:
2bdb0643 7021#line 2683 "parse.y"
68caa397 7022{ yyval.ttype = NULL_TREE; ;
dc8263bc 7023 break;}
80048418 7024case 577:
2bdb0643 7025#line 2685 "parse.y"
68caa397
JM
7026{ yyval.ttype = decl_tree_cons (NULL_TREE, yyvsp[0].ttype, yyval.ttype); ;
7027 break;}
80048418 7028case 578:
2bdb0643 7029#line 2690 "parse.y"
51632249 7030{ yyval.ftype.t = hash_tree_cons (NULL_TREE, yyvsp[0].ttype, NULL_TREE);
861bb6c1
JL
7031 yyval.ftype.new_type_flag = 0; ;
7032 break;}
80048418 7033case 579:
2bdb0643 7034#line 2693 "parse.y"
51632249 7035{ yyval.ftype.t = hash_tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ftype.t);
268ae1b0 7036 yyval.ftype.new_type_flag = yyvsp[-1].ftype.new_type_flag; ;
861bb6c1 7037 break;}
80048418 7038case 580:
2bdb0643 7039#line 2703 "parse.y"
80048418
MM
7040{ yyval.ttype = yyvsp[-1].ttype; ;
7041 break;}
7042case 581:
2bdb0643 7043#line 2705 "parse.y"
80048418
MM
7044{ yyval.ttype = yyvsp[-1].ttype; ;
7045 break;}
6eabb241 7046case 582:
2bdb0643 7047#line 2707 "parse.y"
80048418 7048{ yyval.ttype = empty_parms (); ;
dc8263bc 7049 break;}
6eabb241 7050case 583:
2bdb0643 7051#line 2709 "parse.y"
80048418 7052{ yyval.ttype = NULL_TREE; ;
85c6cbaf 7053 break;}
6eabb241 7054case 585:
2bdb0643 7055#line 2717 "parse.y"
b607c87f
JM
7056{
7057 /* Provide support for '(' attributes '*' declarator ')'
7058 etc */
7059 yyval.ttype = decl_tree_cons (yyvsp[-1].ttype, yyvsp[0].ttype, NULL_TREE);
7060 ;
68caa397 7061 break;}
80048418 7062case 586:
2bdb0643 7063#line 2727 "parse.y"
b607c87f 7064{ yyval.ttype = make_pointer_declarator (yyvsp[-1].ftype.t, yyvsp[0].ttype); ;
61a127b3 7065 break;}
80048418 7066case 587:
2bdb0643 7067#line 2729 "parse.y"
b607c87f 7068{ yyval.ttype = make_reference_declarator (yyvsp[-1].ftype.t, yyvsp[0].ttype); ;
91063b51 7069 break;}
80048418 7070case 588:
2bdb0643 7071#line 2731 "parse.y"
b607c87f
JM
7072{ yyval.ttype = make_pointer_declarator (NULL_TREE, yyvsp[0].ttype); ;
7073 break;}
80048418 7074case 589:
2bdb0643 7075#line 2733 "parse.y"
b607c87f
JM
7076{ yyval.ttype = make_reference_declarator (NULL_TREE, yyvsp[0].ttype); ;
7077 break;}
80048418 7078case 590:
2bdb0643 7079#line 2735 "parse.y"
861bb6c1
JL
7080{ tree arg = make_pointer_declarator (yyvsp[-1].ttype, yyvsp[0].ttype);
7081 yyval.ttype = build_parse_node (SCOPE_REF, yyvsp[-2].ttype, arg);
7082 ;
7083 break;}
80048418 7084case 592:
2bdb0643 7085#line 2743 "parse.y"
b607c87f
JM
7086{ yyval.ttype = make_call_declarator (yyval.ttype, yyvsp[-2].ttype, yyvsp[-1].ttype, yyvsp[0].ttype); ;
7087 break;}
80048418 7088case 593:
2bdb0643 7089#line 2745 "parse.y"
b607c87f
JM
7090{ yyval.ttype = build_parse_node (ARRAY_REF, yyval.ttype, yyvsp[-1].ttype); ;
7091 break;}
80048418 7092case 594:
2bdb0643 7093#line 2747 "parse.y"
b607c87f
JM
7094{ yyval.ttype = build_parse_node (ARRAY_REF, yyval.ttype, NULL_TREE); ;
7095 break;}
80048418 7096case 595:
2bdb0643 7097#line 2749 "parse.y"
b607c87f
JM
7098{ yyval.ttype = yyvsp[-1].ttype; ;
7099 break;}
80048418 7100case 596:
2bdb0643 7101#line 2751 "parse.y"
b607c87f
JM
7102{ push_nested_class (yyvsp[-1].ttype, 3);
7103 yyval.ttype = build_parse_node (SCOPE_REF, yyval.ttype, yyvsp[0].ttype);
7104 TREE_COMPLEXITY (yyval.ttype) = current_class_depth; ;
7105 break;}
80048418 7106case 598:
2bdb0643 7107#line 2759 "parse.y"
861bb6c1
JL
7108{
7109 if (TREE_CODE (yyvsp[0].ttype) == IDENTIFIER_NODE)
7110 {
3cd08147 7111 yyval.ttype = lookup_name (yyvsp[0].ttype, 1);
8f032717 7112 maybe_note_name_used_in_class (yyvsp[0].ttype, yyval.ttype);
861bb6c1
JL
7113 }
7114 else
7115 yyval.ttype = yyvsp[0].ttype;
7116 ;
7117 break;}
80048418 7118case 599:
2bdb0643 7119#line 2769 "parse.y"
861bb6c1
JL
7120{
7121 if (TREE_CODE (yyvsp[0].ttype) == IDENTIFIER_NODE)
3cd08147 7122 yyval.ttype = IDENTIFIER_GLOBAL_VALUE (yyvsp[0].ttype);
861bb6c1
JL
7123 else
7124 yyval.ttype = yyvsp[0].ttype;
7125 got_scope = NULL_TREE;
7126 ;
7127 break;}
80048418 7128case 602:
2bdb0643 7129#line 2782 "parse.y"
68caa397 7130{ yyval.ttype = yyvsp[0].ttype; ;
72e61a07 7131 break;}
80048418 7132case 603:
2bdb0643 7133#line 2787 "parse.y"
68caa397 7134{ yyval.ttype = get_type_decl (yyvsp[0].ttype); ;
0e607f34 7135 break;}
80048418 7136case 605:
2bdb0643 7137#line 2796 "parse.y"
52fbc847
JM
7138{
7139 /* Provide support for '(' attributes '*' declarator ')'
7140 etc */
7141 yyval.ttype = decl_tree_cons (yyvsp[-1].ttype, yyvsp[0].ttype, NULL_TREE);
7142 ;
7143 break;}
80048418 7144case 606:
2bdb0643 7145#line 2805 "parse.y"
68caa397 7146{ yyval.ttype = make_pointer_declarator (yyvsp[-1].ftype.t, yyvsp[0].ttype); ;
dc8263bc 7147 break;}
80048418 7148case 607:
2bdb0643 7149#line 2807 "parse.y"
68caa397 7150{ yyval.ttype = make_reference_declarator (yyvsp[-1].ftype.t, yyvsp[0].ttype); ;
268ae1b0 7151 break;}
80048418 7152case 608:
2bdb0643 7153#line 2809 "parse.y"
68caa397 7154{ yyval.ttype = make_pointer_declarator (NULL_TREE, yyvsp[0].ttype); ;
268ae1b0 7155 break;}
80048418 7156case 609:
2bdb0643 7157#line 2811 "parse.y"
68caa397
JM
7158{ yyval.ttype = make_reference_declarator (NULL_TREE, yyvsp[0].ttype); ;
7159 break;}
80048418 7160case 610:
2bdb0643 7161#line 2813 "parse.y"
861bb6c1
JL
7162{ tree arg = make_pointer_declarator (yyvsp[-1].ttype, yyvsp[0].ttype);
7163 yyval.ttype = build_parse_node (SCOPE_REF, yyvsp[-2].ttype, arg);
7164 ;
7165 break;}
80048418 7166case 612:
2bdb0643 7167#line 2821 "parse.y"
68caa397 7168{ yyval.ttype = make_pointer_declarator (yyvsp[-1].ftype.t, yyvsp[0].ttype); ;
dc8263bc 7169 break;}
80048418 7170case 613:
2bdb0643 7171#line 2823 "parse.y"
68caa397 7172{ yyval.ttype = make_reference_declarator (yyvsp[-1].ftype.t, yyvsp[0].ttype); ;
268ae1b0 7173 break;}
80048418 7174case 614:
2bdb0643 7175#line 2825 "parse.y"
68caa397 7176{ yyval.ttype = make_pointer_declarator (NULL_TREE, yyvsp[0].ttype); ;
268ae1b0 7177 break;}
80048418 7178case 615:
2bdb0643 7179#line 2827 "parse.y"
68caa397
JM
7180{ yyval.ttype = make_reference_declarator (NULL_TREE, yyvsp[0].ttype); ;
7181 break;}
80048418 7182case 616:
2bdb0643 7183#line 2829 "parse.y"
861bb6c1
JL
7184{ tree arg = make_pointer_declarator (yyvsp[-1].ttype, yyvsp[0].ttype);
7185 yyval.ttype = build_parse_node (SCOPE_REF, yyvsp[-2].ttype, arg);
7186 ;
7187 break;}
80048418 7188case 618:
2bdb0643 7189#line 2837 "parse.y"
68caa397 7190{ yyval.ttype = make_call_declarator (yyval.ttype, yyvsp[-2].ttype, yyvsp[-1].ttype, yyvsp[0].ttype); ;
dc8263bc 7191 break;}
80048418 7192case 619:
2bdb0643 7193#line 2839 "parse.y"
68caa397 7194{ yyval.ttype = yyvsp[-1].ttype; ;
268ae1b0 7195 break;}
80048418 7196case 620:
2bdb0643 7197#line 2841 "parse.y"
68caa397 7198{ yyval.ttype = build_parse_node (ARRAY_REF, yyval.ttype, yyvsp[-1].ttype); ;
268ae1b0 7199 break;}
80048418 7200case 621:
2bdb0643 7201#line 2843 "parse.y"
68caa397 7202{ yyval.ttype = build_parse_node (ARRAY_REF, yyval.ttype, NULL_TREE); ;
861bb6c1 7203 break;}
80048418 7204case 622:
2bdb0643 7205#line 2845 "parse.y"
68caa397
JM
7206{ enter_scope_of (yyvsp[0].ttype); ;
7207 break;}
80048418 7208case 623:
2bdb0643 7209#line 2847 "parse.y"
386b8a85
JM
7210{ got_scope = NULL_TREE;
7211 yyval.ttype = build_parse_node (SCOPE_REF, yyvsp[-1].ttype, yyvsp[0].ttype);
648f19f6 7212 enter_scope_of (yyval.ttype);
386b8a85
JM
7213 ;
7214 break;}
80048418 7215case 624:
2bdb0643 7216#line 2855 "parse.y"
386b8a85 7217{ got_scope = NULL_TREE;
4a4b0aa3 7218 yyval.ttype = build_parse_node (SCOPE_REF, yyval.ttype, yyvsp[0].ttype); ;
386b8a85 7219 break;}
80048418 7220case 625:
2bdb0643 7221#line 2858 "parse.y"
861bb6c1 7222{ got_scope = NULL_TREE;
4a4b0aa3 7223 yyval.ttype = build_parse_node (SCOPE_REF, yyvsp[-1].ttype, yyvsp[0].ttype); ;
861bb6c1 7224 break;}
80048418 7225case 626:
2bdb0643 7226#line 2864 "parse.y"
4a4b0aa3
RH
7227{ got_scope = NULL_TREE;
7228 yyval.ttype = build_parse_node (SCOPE_REF, yyval.ttype, yyvsp[0].ttype); ;
7229 break;}
80048418 7230case 627:
2bdb0643 7231#line 2867 "parse.y"
386b8a85
JM
7232{ got_scope = NULL_TREE;
7233 yyval.ttype = build_parse_node (SCOPE_REF, yyvsp[-1].ttype, yyvsp[0].ttype); ;
7234 break;}
80048418 7235case 629:
2bdb0643 7236#line 2874 "parse.y"
68caa397 7237{ yyval.ttype = yyvsp[0].ttype; ;
861bb6c1 7238 break;}
80048418 7239case 630:
2bdb0643 7240#line 2879 "parse.y"
68caa397 7241{ yyval.ttype = build_functional_cast (yyvsp[-3].ftype.t, yyvsp[-1].ttype); ;
b2b7d40a 7242 break;}
80048418 7243case 631:
2bdb0643 7244#line 2881 "parse.y"
68caa397 7245{ yyval.ttype = reparse_decl_as_expr (yyvsp[-3].ftype.t, yyvsp[-1].ttype); ;
72e61a07 7246 break;}
80048418 7247case 632:
2bdb0643 7248#line 2883 "parse.y"
68caa397 7249{ yyval.ttype = reparse_absdcl_as_expr (yyvsp[-1].ftype.t, yyvsp[0].ttype); ;
0e607f34 7250 break;}
80048418 7251case 637:
2bdb0643 7252#line 2895 "parse.y"
68caa397 7253{ yyval.ttype = yyvsp[0].ttype; ;
dc8263bc 7254 break;}
80048418 7255case 638:
2bdb0643 7256#line 2897 "parse.y"
3baa501d
MM
7257{ got_scope = yyval.ttype
7258 = make_typename_type (yyvsp[-3].ttype, yyvsp[-1].ttype, /*complain=*/1); ;
68caa397 7259 break;}
80048418 7260case 639:
2bdb0643 7261#line 2905 "parse.y"
861bb6c1
JL
7262{
7263 if (TREE_CODE (yyvsp[-1].ttype) == IDENTIFIER_NODE)
7264 {
7265 yyval.ttype = lastiddecl;
8f032717 7266 maybe_note_name_used_in_class (yyvsp[-1].ttype, yyval.ttype);
861bb6c1 7267 }
b3f738da
MM
7268 got_scope = yyval.ttype =
7269 complete_type (TYPE_MAIN_VARIANT (TREE_TYPE (yyval.ttype)));
861bb6c1
JL
7270 ;
7271 break;}
80048418 7272case 640:
2bdb0643 7273#line 2915 "parse.y"
861bb6c1
JL
7274{
7275 if (TREE_CODE (yyvsp[-1].ttype) == IDENTIFIER_NODE)
7276 yyval.ttype = lastiddecl;
7277 got_scope = yyval.ttype = TREE_TYPE (yyval.ttype);
7278 ;
7279 break;}
80048418 7280case 641:
2bdb0643 7281#line 2921 "parse.y"
861bb6c1
JL
7282{
7283 if (TREE_CODE (yyval.ttype) == IDENTIFIER_NODE)
7284 yyval.ttype = lastiddecl;
faf199a6 7285 got_scope = yyval.ttype;
861bb6c1
JL
7286 ;
7287 break;}
80048418 7288case 642:
2bdb0643 7289#line 2927 "parse.y"
861bb6c1
JL
7290{ got_scope = yyval.ttype = complete_type (TREE_TYPE (yyvsp[-1].ttype)); ;
7291 break;}
80048418 7292case 644:
2bdb0643 7293#line 2943 "parse.y"
faf199a6
JM
7294{ yyval.ttype = yyvsp[0].ttype; ;
7295 break;}
80048418 7296case 645:
2bdb0643 7297#line 2948 "parse.y"
faf199a6 7298{
2f939d94 7299 if (TYPE_P (yyvsp[-1].ttype))
3baa501d 7300 yyval.ttype = make_typename_type (yyvsp[-1].ttype, yyvsp[0].ttype, /*complain=*/1);
faf199a6 7301 else if (TREE_CODE (yyvsp[0].ttype) == IDENTIFIER_NODE)
8251199e 7302 cp_error ("`%T' is not a class or namespace", yyvsp[0].ttype);
faf199a6 7303 else
d3959d60
JM
7304 {
7305 yyval.ttype = yyvsp[0].ttype;
7306 if (TREE_CODE (yyval.ttype) == TYPE_DECL)
7307 yyval.ttype = TREE_TYPE (yyval.ttype);
7308 }
faf199a6
JM
7309 ;
7310 break;}
80048418 7311case 646:
2bdb0643 7312#line 2961 "parse.y"
68caa397 7313{ yyval.ttype = TREE_TYPE (yyvsp[0].ttype); ;
0e607f34 7314 break;}
80048418 7315case 647:
2bdb0643 7316#line 2963 "parse.y"
3baa501d 7317{ yyval.ttype = make_typename_type (yyvsp[-1].ttype, yyvsp[0].ttype, /*complain=*/1); ;
dc8263bc 7318 break;}
80048418 7319case 648:
2bdb0643 7320#line 2965 "parse.y"
3baa501d 7321{ yyval.ttype = make_typename_type (yyvsp[-2].ttype, yyvsp[0].ttype, /*complain=*/1); ;
68caa397 7322 break;}
80048418 7323case 649:
2bdb0643 7324#line 2970 "parse.y"
faf199a6
JM
7325{
7326 if (TREE_CODE (yyvsp[0].ttype) == IDENTIFIER_NODE)
8251199e 7327 cp_error ("`%T' is not a class or namespace", yyvsp[0].ttype);
faf199a6
JM
7328 ;
7329 break;}
80048418 7330case 650:
2bdb0643 7331#line 2975 "parse.y"
faf199a6 7332{
2f939d94 7333 if (TYPE_P (yyvsp[-1].ttype))
3baa501d 7334 yyval.ttype = make_typename_type (yyvsp[-1].ttype, yyvsp[0].ttype, /*complain=*/1);
faf199a6 7335 else if (TREE_CODE (yyvsp[0].ttype) == IDENTIFIER_NODE)
8251199e 7336 cp_error ("`%T' is not a class or namespace", yyvsp[0].ttype);
faf199a6 7337 else
d3959d60
JM
7338 {
7339 yyval.ttype = yyvsp[0].ttype;
7340 if (TREE_CODE (yyval.ttype) == TYPE_DECL)
7341 yyval.ttype = TREE_TYPE (yyval.ttype);
7342 }
faf199a6
JM
7343 ;
7344 break;}
80048418 7345case 651:
2bdb0643 7346#line 2988 "parse.y"
3baa501d
MM
7347{ got_scope = yyval.ttype
7348 = make_typename_type (yyvsp[-2].ttype, yyvsp[-1].ttype, /*complain=*/1); ;
dc8263bc 7349 break;}
80048418 7350case 652:
2bdb0643 7351#line 2991 "parse.y"
3baa501d
MM
7352{ got_scope = yyval.ttype
7353 = make_typename_type (yyvsp[-3].ttype, yyvsp[-1].ttype, /*complain=*/1); ;
68caa397 7354 break;}
80048418 7355case 653:
2bdb0643 7356#line 2997 "parse.y"
faf199a6
JM
7357{
7358 if (TREE_CODE (yyvsp[-1].ttype) != IDENTIFIER_NODE)
8857f91e
MM
7359 yyvsp[-1].ttype = lastiddecl;
7360
2c73f9f5
ML
7361 /* Retrieve the type for the identifier, which might involve
7362 some computation. */
7363 got_scope = yyval.ttype = complete_type (IDENTIFIER_TYPE_VALUE (yyvsp[-1].ttype));
8857f91e
MM
7364
7365 if (yyval.ttype == error_mark_node)
8251199e 7366 cp_error ("`%T' is not a class or namespace", yyvsp[-1].ttype);
faf199a6
JM
7367 ;
7368 break;}
80048418 7369case 654:
2bdb0643 7370#line 3009 "parse.y"
faf199a6
JM
7371{
7372 if (TREE_CODE (yyvsp[-1].ttype) != IDENTIFIER_NODE)
7373 yyval.ttype = lastiddecl;
7374 got_scope = yyval.ttype = complete_type (TREE_TYPE (yyval.ttype));
7375 ;
7376 break;}
80048418 7377case 655:
2bdb0643 7378#line 3015 "parse.y"
faf199a6
JM
7379{ got_scope = yyval.ttype = complete_type (TREE_TYPE (yyval.ttype)); ;
7380 break;}
80048418 7381case 658:
2bdb0643 7382#line 3019 "parse.y"
faf199a6
JM
7383{
7384 if (TREE_CODE (yyval.ttype) == IDENTIFIER_NODE)
7385 yyval.ttype = lastiddecl;
7386 got_scope = yyval.ttype;
7387 ;
7388 break;}
80048418 7389case 659:
2bdb0643 7390#line 3028 "parse.y"
b2b7d40a
JM
7391{ yyval.ttype = build_min_nt (TEMPLATE_ID_EXPR, yyvsp[-3].ttype, yyvsp[-1].ttype); ;
7392 break;}
80048418 7393case 660:
2bdb0643 7394#line 3033 "parse.y"
861bb6c1
JL
7395{
7396 if (TREE_CODE (yyvsp[0].ttype) == IDENTIFIER_NODE)
3cd08147 7397 yyval.ttype = IDENTIFIER_GLOBAL_VALUE (yyvsp[0].ttype);
861bb6c1
JL
7398 else
7399 yyval.ttype = yyvsp[0].ttype;
7400 got_scope = NULL_TREE;
7401 ;
7402 break;}
80048418 7403case 662:
2bdb0643 7404#line 3042 "parse.y"
68caa397 7405{ yyval.ttype = yyvsp[0].ttype; ;
861bb6c1 7406 break;}
80048418 7407case 663:
2bdb0643 7408#line 3047 "parse.y"
68caa397 7409{ got_scope = NULL_TREE; ;
861bb6c1 7410 break;}
80048418 7411case 664:
2bdb0643 7412#line 3049 "parse.y"
68caa397 7413{ yyval.ttype = yyvsp[-1].ttype; got_scope = NULL_TREE; ;
72e61a07 7414 break;}
80048418 7415case 665:
2bdb0643 7416#line 3056 "parse.y"
68caa397 7417{ got_scope = void_type_node; ;
0e607f34 7418 break;}
80048418 7419case 666:
2bdb0643 7420#line 3062 "parse.y"
68caa397 7421{ yyval.ttype = make_pointer_declarator (yyvsp[-1].ttype, yyvsp[0].ttype); ;
dc8263bc 7422 break;}
80048418 7423case 667:
2bdb0643 7424#line 3064 "parse.y"
68caa397 7425{ yyval.ttype = make_pointer_declarator (yyvsp[0].ttype, NULL_TREE); ;
268ae1b0 7426 break;}
80048418 7427case 668:
2bdb0643 7428#line 3066 "parse.y"
68caa397 7429{ yyval.ttype = make_reference_declarator (yyvsp[-1].ttype, yyvsp[0].ttype); ;
268ae1b0 7430 break;}
80048418 7431case 669:
2bdb0643 7432#line 3068 "parse.y"
68caa397
JM
7433{ yyval.ttype = make_reference_declarator (yyvsp[0].ttype, NULL_TREE); ;
7434 break;}
80048418 7435case 670:
2bdb0643 7436#line 3070 "parse.y"
861bb6c1
JL
7437{ tree arg = make_pointer_declarator (yyvsp[0].ttype, NULL_TREE);
7438 yyval.ttype = build_parse_node (SCOPE_REF, yyvsp[-1].ttype, arg);
7439 ;
7440 break;}
80048418 7441case 671:
2bdb0643 7442#line 3074 "parse.y"
861bb6c1
JL
7443{ tree arg = make_pointer_declarator (yyvsp[-1].ttype, yyvsp[0].ttype);
7444 yyval.ttype = build_parse_node (SCOPE_REF, yyvsp[-2].ttype, arg);
7445 ;
7446 break;}
80048418 7447case 673:
2bdb0643 7448#line 3083 "parse.y"
68caa397 7449{ yyval.ttype = build_parse_node (ARRAY_REF, NULL_TREE, yyvsp[-1].ttype); ;
861bb6c1 7450 break;}
80048418 7451case 674:
2bdb0643 7452#line 3085 "parse.y"
68caa397 7453{ yyval.ttype = build_parse_node (ARRAY_REF, yyval.ttype, yyvsp[-1].ttype); ;
861bb6c1 7454 break;}
80048418 7455case 676:
2bdb0643 7456#line 3091 "parse.y"
46ff11fd
JM
7457{
7458 /* Provide support for '(' attributes '*' declarator ')'
7459 etc */
7460 yyval.ttype = decl_tree_cons (yyvsp[-1].ttype, yyvsp[0].ttype, NULL_TREE);
7461 ;
7462 break;}
80048418 7463case 677:
2bdb0643 7464#line 3101 "parse.y"
68caa397 7465{ yyval.ttype = make_pointer_declarator (yyvsp[-1].ftype.t, yyvsp[0].ttype); ;
861bb6c1 7466 break;}
80048418 7467case 678:
2bdb0643 7468#line 3103 "parse.y"
68caa397 7469{ yyval.ttype = make_pointer_declarator (NULL_TREE, yyvsp[0].ttype); ;
861bb6c1 7470 break;}
80048418 7471case 679:
2bdb0643 7472#line 3105 "parse.y"
68caa397 7473{ yyval.ttype = make_pointer_declarator (yyvsp[0].ftype.t, NULL_TREE); ;
72e61a07 7474 break;}
80048418 7475case 680:
2bdb0643 7476#line 3107 "parse.y"
68caa397 7477{ yyval.ttype = make_pointer_declarator (NULL_TREE, NULL_TREE); ;
0e607f34 7478 break;}
80048418 7479case 681:
2bdb0643 7480#line 3109 "parse.y"
68caa397 7481{ yyval.ttype = make_reference_declarator (yyvsp[-1].ftype.t, yyvsp[0].ttype); ;
dc8263bc 7482 break;}
80048418 7483case 682:
2bdb0643 7484#line 3111 "parse.y"
68caa397 7485{ yyval.ttype = make_reference_declarator (NULL_TREE, yyvsp[0].ttype); ;
268ae1b0 7486 break;}
80048418 7487case 683:
2bdb0643 7488#line 3113 "parse.y"
68caa397 7489{ yyval.ttype = make_reference_declarator (yyvsp[0].ftype.t, NULL_TREE); ;
268ae1b0 7490 break;}
80048418 7491case 684:
2bdb0643 7492#line 3115 "parse.y"
68caa397
JM
7493{ yyval.ttype = make_reference_declarator (NULL_TREE, NULL_TREE); ;
7494 break;}
80048418 7495case 685:
2bdb0643 7496#line 3117 "parse.y"
861bb6c1
JL
7497{ tree arg = make_pointer_declarator (yyvsp[0].ttype, NULL_TREE);
7498 yyval.ttype = build_parse_node (SCOPE_REF, yyvsp[-1].ttype, arg);
7499 ;
7500 break;}
80048418 7501case 686:
2bdb0643 7502#line 3121 "parse.y"
861bb6c1
JL
7503{ tree arg = make_pointer_declarator (yyvsp[-1].ttype, yyvsp[0].ttype);
7504 yyval.ttype = build_parse_node (SCOPE_REF, yyvsp[-2].ttype, arg);
7505 ;
7506 break;}
80048418 7507case 688:
2bdb0643 7508#line 3130 "parse.y"
273a708f 7509{ yyval.ttype = yyvsp[-1].ttype; ;
26877584 7510 break;}
80048418 7511case 689:
2bdb0643 7512#line 3133 "parse.y"
273a708f 7513{ yyval.ttype = make_call_declarator (yyval.ttype, yyvsp[-3].ttype, yyvsp[-1].ttype, yyvsp[0].ttype); ;
85c6cbaf 7514 break;}
80048418 7515case 690:
2bdb0643 7516#line 3135 "parse.y"
273a708f 7517{ yyval.ttype = make_call_declarator (yyval.ttype, empty_parms (), yyvsp[-1].ttype, yyvsp[0].ttype); ;
268ae1b0 7518 break;}
80048418 7519case 691:
2bdb0643 7520#line 3137 "parse.y"
273a708f 7521{ yyval.ttype = build_parse_node (ARRAY_REF, yyval.ttype, yyvsp[-1].ttype); ;
66a6250f 7522 break;}
80048418 7523case 692:
2bdb0643 7524#line 3139 "parse.y"
273a708f 7525{ yyval.ttype = build_parse_node (ARRAY_REF, yyval.ttype, NULL_TREE); ;
268ae1b0 7526 break;}
80048418 7527case 693:
2bdb0643 7528#line 3141 "parse.y"
273a708f 7529{ yyval.ttype = make_call_declarator (NULL_TREE, yyvsp[-3].ttype, yyvsp[-1].ttype, yyvsp[0].ttype); ;
68caa397 7530 break;}
80048418 7531case 694:
2bdb0643 7532#line 3143 "parse.y"
4a4b0aa3 7533{ set_quals_and_spec (yyval.ttype, yyvsp[-1].ttype, yyvsp[0].ttype); ;
91063b51 7534 break;}
80048418 7535case 695:
2bdb0643 7536#line 3145 "parse.y"
273a708f 7537{ set_quals_and_spec (yyval.ttype, yyvsp[-1].ttype, yyvsp[0].ttype); ;
4a4b0aa3 7538 break;}
80048418 7539case 696:
2bdb0643 7540#line 3147 "parse.y"
273a708f
MM
7541{ yyval.ttype = build_parse_node (ARRAY_REF, NULL_TREE, yyvsp[-1].ttype); ;
7542 break;}
80048418 7543case 697:
2bdb0643 7544#line 3149 "parse.y"
861bb6c1
JL
7545{ yyval.ttype = build_parse_node (ARRAY_REF, NULL_TREE, NULL_TREE); ;
7546 break;}
80048418 7547case 704:
2bdb0643 7548#line 3172 "parse.y"
861bb6c1 7549{ if (pedantic)
cab1f180 7550 pedwarn ("ISO C++ forbids label declarations"); ;
861bb6c1 7551 break;}
80048418 7552case 707:
2bdb0643 7553#line 3183 "parse.y"
acef433b
MM
7554{
7555 while (yyvsp[-1].ttype)
861bb6c1 7556 {
acef433b
MM
7557 finish_label_decl (TREE_VALUE (yyvsp[-1].ttype));
7558 yyvsp[-1].ttype = TREE_CHAIN (yyvsp[-1].ttype);
861bb6c1
JL
7559 }
7560 ;
7561 break;}
80048418 7562case 708:
2bdb0643 7563#line 3196 "parse.y"
861bb6c1
JL
7564{;
7565 break;}
80048418 7566case 710:
2bdb0643 7567#line 3202 "parse.y"
68caa397 7568{ yyval.ttype = begin_compound_stmt (0); ;
dc8263bc 7569 break;}
80048418 7570case 711:
2bdb0643 7571#line 3204 "parse.y"
68caa397
JM
7572{ yyval.ttype = finish_compound_stmt (0, yyvsp[-1].ttype); ;
7573 break;}
80048418 7574case 712:
2bdb0643 7575#line 3209 "parse.y"
861bb6c1 7576{
ad321293
MM
7577 yyval.ttype = begin_if_stmt ();
7578 cond_stmt_keyword = "if";
861bb6c1
JL
7579 ;
7580 break;}
80048418 7581case 713:
2bdb0643 7582#line 3214 "parse.y"
68caa397 7583{ finish_if_stmt_cond (yyvsp[0].ttype, yyvsp[-1].ttype); ;
861bb6c1 7584 break;}
80048418 7585case 714:
2bdb0643 7586#line 3216 "parse.y"
68caa397 7587{ yyval.ttype = finish_then_clause (yyvsp[-3].ttype); ;
861bb6c1 7588 break;}
80048418 7589case 716:
2bdb0643 7590#line 3221 "parse.y"
68caa397 7591{ yyval.ttype = begin_compound_stmt (0); ;
ad321293 7592 break;}
80048418 7593case 717:
2bdb0643 7594#line 3223 "parse.y"
68caa397 7595{ yyval.ttype = finish_compound_stmt (0, yyvsp[-1].ttype); ;
861bb6c1 7596 break;}
80048418 7597case 718:
2bdb0643 7598#line 3228 "parse.y"
68caa397 7599{;
861bb6c1 7600 break;}
80048418 7601case 720:
2bdb0643 7602#line 3234 "parse.y"
68caa397 7603{ finish_stmt (); ;
861bb6c1 7604 break;}
80048418 7605case 721:
2bdb0643 7606#line 3236 "parse.y"
68caa397 7607{ finish_expr_stmt (yyvsp[-1].ttype); ;
72e61a07 7608 break;}
80048418 7609case 722:
2bdb0643 7610#line 3238 "parse.y"
68caa397 7611{ begin_else_clause (); ;
0e607f34 7612 break;}
80048418 7613case 723:
2bdb0643 7614#line 3240 "parse.y"
68caa397
JM
7615{
7616 finish_else_clause (yyvsp[-3].ttype);
7617 finish_if_stmt ();
7618 ;
dc8263bc 7619 break;}
80048418 7620case 724:
2bdb0643 7621#line 3245 "parse.y"
68caa397
JM
7622{ finish_if_stmt (); ;
7623 break;}
80048418 7624case 725:
2bdb0643 7625#line 3247 "parse.y"
861bb6c1 7626{
ad321293
MM
7627 yyval.ttype = begin_while_stmt ();
7628 cond_stmt_keyword = "while";
861bb6c1
JL
7629 ;
7630 break;}
80048418 7631case 726:
2bdb0643 7632#line 3252 "parse.y"
4a4b0aa3 7633{ finish_while_stmt_cond (yyvsp[0].ttype, yyvsp[-1].ttype); ;
26877584 7634 break;}
80048418 7635case 727:
2bdb0643 7636#line 3254 "parse.y"
4a4b0aa3 7637{ finish_while_stmt (yyvsp[-3].ttype); ;
68caa397 7638 break;}
80048418 7639case 728:
2bdb0643 7640#line 3256 "parse.y"
4a4b0aa3
RH
7641{ yyval.ttype = begin_do_stmt (); ;
7642 break;}
80048418 7643case 729:
2bdb0643 7644#line 3258 "parse.y"
861bb6c1 7645{
ad321293
MM
7646 finish_do_body (yyvsp[-2].ttype);
7647 cond_stmt_keyword = "do";
861bb6c1
JL
7648 ;
7649 break;}
80048418 7650case 730:
2bdb0643 7651#line 3263 "parse.y"
68caa397 7652{ finish_do_stmt (yyvsp[-1].ttype, yyvsp[-5].ttype); ;
861bb6c1 7653 break;}
80048418 7654case 731:
2bdb0643 7655#line 3265 "parse.y"
68caa397 7656{ yyval.ttype = begin_for_stmt (); ;
861bb6c1 7657 break;}
80048418 7658case 732:
2bdb0643 7659#line 3267 "parse.y"
68caa397 7660{ finish_for_init_stmt (yyvsp[-2].ttype); ;
861bb6c1 7661 break;}
80048418 7662case 733:
2bdb0643 7663#line 3269 "parse.y"
68caa397 7664{ finish_for_cond (yyvsp[-1].ttype, yyvsp[-5].ttype); ;
72e61a07 7665 break;}
80048418 7666case 734:
2bdb0643 7667#line 3271 "parse.y"
68caa397 7668{ finish_for_expr (yyvsp[-1].ttype, yyvsp[-8].ttype); ;
0e607f34 7669 break;}
80048418 7670case 735:
2bdb0643 7671#line 3273 "parse.y"
68caa397 7672{ finish_for_stmt (yyvsp[-3].ttype, yyvsp[-10].ttype); ;
dc8263bc 7673 break;}
80048418 7674case 736:
2bdb0643 7675#line 3275 "parse.y"
527f0080 7676{ yyval.ttype = begin_switch_stmt (); ;
268ae1b0 7677 break;}
80048418 7678case 737:
2bdb0643 7679#line 3277 "parse.y"
527f0080 7680{ finish_switch_cond (yyvsp[-1].ttype, yyvsp[-3].ttype); ;
861bb6c1 7681 break;}
80048418 7682case 738:
2bdb0643 7683#line 3279 "parse.y"
6a26a9ea 7684{ finish_switch_stmt (yyvsp[-3].ttype, yyvsp[-5].ttype); ;
68caa397 7685 break;}
80048418 7686case 739:
2bdb0643 7687#line 3281 "parse.y"
268ae1b0 7688{ finish_case_label (yyvsp[-1].ttype, NULL_TREE); ;
861bb6c1 7689 break;}
80048418 7690case 741:
2bdb0643 7691#line 3284 "parse.y"
268ae1b0 7692{ finish_case_label (yyvsp[-3].ttype, yyvsp[-1].ttype); ;
861bb6c1 7693 break;}
80048418 7694case 743:
2bdb0643 7695#line 3287 "parse.y"
268ae1b0 7696{ finish_case_label (NULL_TREE, NULL_TREE); ;
72e61a07 7697 break;}
80048418 7698case 745:
2bdb0643 7699#line 3290 "parse.y"
68caa397 7700{ finish_break_stmt (); ;
dc8263bc 7701 break;}
80048418 7702case 746:
2bdb0643 7703#line 3292 "parse.y"
68caa397 7704{ finish_continue_stmt (); ;
268ae1b0 7705 break;}
80048418 7706case 747:
2bdb0643 7707#line 3294 "parse.y"
68caa397 7708{ finish_return_stmt (NULL_TREE); ;
268ae1b0 7709 break;}
80048418 7710case 748:
2bdb0643 7711#line 3296 "parse.y"
68caa397
JM
7712{ finish_return_stmt (yyvsp[-1].ttype); ;
7713 break;}
80048418 7714case 749:
2bdb0643 7715#line 3298 "parse.y"
ad321293
MM
7716{
7717 finish_asm_stmt (yyvsp[-4].ttype, yyvsp[-2].ttype, NULL_TREE, NULL_TREE,
7718 NULL_TREE);
7719 ;
861bb6c1 7720 break;}
80048418 7721case 750:
2bdb0643 7722#line 3304 "parse.y"
ad321293
MM
7723{
7724 finish_asm_stmt (yyvsp[-6].ttype, yyvsp[-4].ttype, yyvsp[-2].ttype, NULL_TREE,
7725 NULL_TREE);
7726 ;
861bb6c1 7727 break;}
80048418 7728case 751:
2bdb0643 7729#line 3310 "parse.y"
68caa397 7730{ finish_asm_stmt (yyvsp[-8].ttype, yyvsp[-6].ttype, yyvsp[-4].ttype, yyvsp[-2].ttype, NULL_TREE); ;
85c6cbaf 7731 break;}
80048418 7732case 752:
2bdb0643 7733#line 3312 "parse.y"
eca1bd08 7734{ finish_asm_stmt (yyvsp[-6].ttype, yyvsp[-4].ttype, NULL_TREE, yyvsp[-2].ttype, NULL_TREE); ;
68caa397 7735 break;}
80048418 7736case 753:
2bdb0643 7737#line 3316 "parse.y"
eca1bd08
UD
7738{ finish_asm_stmt (yyvsp[-10].ttype, yyvsp[-8].ttype, yyvsp[-6].ttype, yyvsp[-4].ttype, yyvsp[-2].ttype); ;
7739 break;}
7740case 754:
2bdb0643 7741#line 3319 "parse.y"
eca1bd08
UD
7742{ finish_asm_stmt (yyvsp[-8].ttype, yyvsp[-6].ttype, NULL_TREE, yyvsp[-4].ttype, yyvsp[-2].ttype); ;
7743 break;}
7744case 755:
2bdb0643 7745#line 3322 "parse.y"
eca1bd08
UD
7746{ finish_asm_stmt (yyvsp[-8].ttype, yyvsp[-6].ttype, yyvsp[-4].ttype, NULL_TREE, yyvsp[-2].ttype); ;
7747 break;}
7748case 756:
2bdb0643 7749#line 3324 "parse.y"
ad321293
MM
7750{
7751 if (pedantic)
cab1f180 7752 pedwarn ("ISO C++ forbids computed gotos");
ad321293 7753 finish_goto_stmt (yyvsp[-1].ttype);
861bb6c1
JL
7754 ;
7755 break;}
eca1bd08 7756case 757:
2bdb0643 7757#line 3330 "parse.y"
68caa397 7758{ finish_goto_stmt (yyvsp[-1].ttype); ;
dc8263bc 7759 break;}
eca1bd08 7760case 759:
2bdb0643 7761#line 3333 "parse.y"
8251199e 7762{ error ("label must be followed by statement");
6f80451c 7763 yyungetc ('}', 0); ;
861bb6c1 7764 break;}
80048418 7765case 760:
2bdb0643 7766#line 3336 "parse.y"
eca1bd08
UD
7767{ finish_stmt (); ;
7768 break;}
7769case 763:
2bdb0643 7770#line 3340 "parse.y"
b607c87f
JM
7771{ do_local_using_decl (yyvsp[0].ttype); ;
7772 break;}
eca1bd08 7773case 765:
2bdb0643 7774#line 3346 "parse.y"
0dde4175 7775{ yyval.ttype = begin_function_try_block (); ;
861bb6c1 7776 break;}
eca1bd08 7777case 766:
2bdb0643 7778#line 3348 "parse.y"
0dde4175 7779{ finish_function_try_block (yyvsp[-2].ttype); ;
861bb6c1 7780 break;}
eca1bd08 7781case 767:
2bdb0643 7782#line 3350 "parse.y"
861bb6c1 7783{
0dde4175 7784 finish_function_handler_sequence (yyvsp[-4].ttype);
ac31b8d9 7785 yyval.itype = yyvsp[-3].itype;
861bb6c1
JL
7786 ;
7787 break;}
eca1bd08 7788case 768:
2bdb0643 7789#line 3358 "parse.y"
68caa397 7790{ yyval.ttype = begin_try_block (); ;
861bb6c1 7791 break;}
eca1bd08 7792case 769:
2bdb0643 7793#line 3360 "parse.y"
68caa397 7794{ finish_try_block (yyvsp[-1].ttype); ;
72e61a07 7795 break;}
eca1bd08 7796case 770:
2bdb0643 7797#line 3362 "parse.y"
68caa397 7798{ finish_handler_sequence (yyvsp[-3].ttype); ;
0e607f34 7799 break;}
eca1bd08 7800case 773:
2bdb0643 7801#line 3372 "parse.y"
68caa397 7802{ yyval.ttype = begin_handler(); ;
dc8263bc 7803 break;}
eca1bd08 7804case 774:
2bdb0643 7805#line 3374 "parse.y"
b35d4555 7806{ yyval.ttype = finish_handler_parms (yyvsp[0].ttype, yyvsp[-1].ttype); ;
68caa397 7807 break;}
eca1bd08 7808case 775:
2bdb0643 7809#line 3376 "parse.y"
b35d4555 7810{ finish_handler (yyvsp[-1].ttype, yyvsp[-3].ttype); ;
861bb6c1 7811 break;}
eca1bd08 7812case 778:
2bdb0643 7813#line 3386 "parse.y"
b35d4555 7814{ yyval.ttype = NULL_TREE; ;
861bb6c1 7815 break;}
eca1bd08 7816case 779:
2bdb0643 7817#line 3402 "parse.y"
3c5c0849
MM
7818{
7819 check_for_new_type ("inside exception declarations", yyvsp[-1].ftype);
b35d4555
MM
7820 yyval.ttype = start_handler_parms (TREE_PURPOSE (yyvsp[-1].ftype.t),
7821 TREE_VALUE (yyvsp[-1].ftype.t));
3c5c0849 7822 ;
861bb6c1 7823 break;}
eca1bd08 7824case 780:
2bdb0643 7825#line 3411 "parse.y"
f01b0acb 7826{ finish_label_stmt (yyvsp[-1].ttype); ;
3d7de1fa 7827 break;}
eca1bd08 7828case 781:
2bdb0643 7829#line 3413 "parse.y"
f01b0acb 7830{ finish_label_stmt (yyvsp[-1].ttype); ;
d6479fe7 7831 break;}
eca1bd08 7832case 782:
2bdb0643 7833#line 3415 "parse.y"
f01b0acb 7834{ finish_label_stmt (yyvsp[-1].ttype); ;
861bb6c1 7835 break;}
eca1bd08 7836case 783:
2bdb0643 7837#line 3417 "parse.y"
273a708f
MM
7838{ finish_label_stmt (yyvsp[-1].ttype); ;
7839 break;}
eca1bd08 7840case 784:
2bdb0643 7841#line 3422 "parse.y"
558475f0 7842{ finish_expr_stmt (yyvsp[-1].ttype); ;
4a4b0aa3 7843 break;}
eca1bd08 7844case 786:
2bdb0643 7845#line 3425 "parse.y"
861bb6c1 7846{ if (pedantic)
cab1f180 7847 pedwarn ("ISO C++ forbids compound statements inside for initializations");
861bb6c1
JL
7848 ;
7849 break;}
eca1bd08 7850case 787:
2bdb0643 7851#line 3434 "parse.y"
574a0ef5 7852{ yyval.ttype = NULL_TREE; ;
861bb6c1 7853 break;}
eca1bd08 7854case 789:
2bdb0643 7855#line 3440 "parse.y"
dc8263bc 7856{ yyval.ttype = NULL_TREE; ;
861bb6c1 7857 break;}
eca1bd08 7858case 791:
2bdb0643 7859#line 3443 "parse.y"
68caa397 7860{ yyval.ttype = NULL_TREE; ;
861bb6c1 7861 break;}
eca1bd08 7862case 792:
2bdb0643 7863#line 3450 "parse.y"
4a4b0aa3 7864{ yyval.ttype = NULL_TREE; ;
72e61a07 7865 break;}
eca1bd08 7866case 795:
2bdb0643 7867#line 3457 "parse.y"
4a4b0aa3 7868{ yyval.ttype = chainon (yyval.ttype, yyvsp[0].ttype); ;
0e607f34 7869 break;}
eca1bd08 7870case 796:
2bdb0643 7871#line 3462 "parse.y"
4a4b0aa3 7872{ yyval.ttype = build_tree_list (yyval.ttype, yyvsp[-1].ttype); ;
dc8263bc 7873 break;}
eca1bd08 7874case 797:
2bdb0643 7875#line 3467 "parse.y"
4a4b0aa3 7876{ yyval.ttype = tree_cons (NULL_TREE, yyval.ttype, NULL_TREE); ;
68caa397 7877 break;}
eca1bd08 7878case 798:
2bdb0643 7879#line 3469 "parse.y"
4a4b0aa3
RH
7880{ yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyval.ttype); ;
7881 break;}
eca1bd08 7882case 799:
2bdb0643 7883#line 3480 "parse.y"
861bb6c1
JL
7884{
7885 yyval.ttype = empty_parms();
7886 ;
7887 break;}
eca1bd08 7888case 801:
2bdb0643 7889#line 3485 "parse.y"
89ad74a3
MM
7890{ yyval.ttype = finish_parmlist (build_tree_list (NULL_TREE, yyvsp[0].ftype.t), 0);
7891 check_for_new_type ("inside parameter list", yyvsp[0].ftype); ;
861bb6c1 7892 break;}
eca1bd08 7893case 802:
2bdb0643 7894#line 3493 "parse.y"
273a708f 7895{ yyval.ttype = finish_parmlist (yyval.ttype, 0); ;
91063b51 7896 break;}
eca1bd08 7897case 803:
2bdb0643 7898#line 3495 "parse.y"
4a4b0aa3 7899{ yyval.ttype = finish_parmlist (yyvsp[-1].ttype, 1); ;
85c6cbaf 7900 break;}
eca1bd08 7901case 804:
2bdb0643 7902#line 3498 "parse.y"
273a708f
MM
7903{ yyval.ttype = finish_parmlist (yyvsp[-1].ttype, 1); ;
7904 break;}
eca1bd08 7905case 805:
2bdb0643 7906#line 3500 "parse.y"
4a4b0aa3
RH
7907{ yyval.ttype = finish_parmlist (build_tree_list (NULL_TREE,
7908 yyvsp[-1].ftype.t), 1); ;
68caa397 7909 break;}
eca1bd08 7910case 806:
2bdb0643 7911#line 3503 "parse.y"
4a4b0aa3
RH
7912{ yyval.ttype = finish_parmlist (NULL_TREE, 1); ;
7913 break;}
eca1bd08 7914case 807:
2bdb0643 7915#line 3505 "parse.y"
861bb6c1
JL
7916{
7917 /* This helps us recover from really nasty
7918 parse errors, for example, a missing right
7919 parenthesis. */
7920 yyerror ("possibly missing ')'");
89ad74a3 7921 yyval.ttype = finish_parmlist (yyvsp[-1].ttype, 0);
861bb6c1
JL
7922 yyungetc (':', 0);
7923 yychar = ')';
7924 ;
7925 break;}
eca1bd08 7926case 808:
2bdb0643 7927#line 3515 "parse.y"
861bb6c1
JL
7928{
7929 /* This helps us recover from really nasty
7930 parse errors, for example, a missing right
7931 parenthesis. */
7932 yyerror ("possibly missing ')'");
89ad74a3
MM
7933 yyval.ttype = finish_parmlist (build_tree_list (NULL_TREE,
7934 yyvsp[-1].ftype.t), 0);
861bb6c1
JL
7935 yyungetc (':', 0);
7936 yychar = ')';
7937 ;
7938 break;}
eca1bd08 7939case 809:
2bdb0643 7940#line 3530 "parse.y"
68caa397
JM
7941{ maybe_snarf_defarg (); ;
7942 break;}
eca1bd08 7943case 810:
2bdb0643 7944#line 3532 "parse.y"
861bb6c1
JL
7945{ yyval.ttype = yyvsp[0].ttype; ;
7946 break;}
eca1bd08 7947case 813:
2bdb0643 7948#line 3543 "parse.y"
861bb6c1
JL
7949{ check_for_new_type ("in a parameter list", yyvsp[0].ftype);
7950 yyval.ttype = build_tree_list (NULL_TREE, yyvsp[0].ftype.t); ;
7951 break;}
eca1bd08 7952case 814:
2bdb0643 7953#line 3546 "parse.y"
861bb6c1
JL
7954{ check_for_new_type ("in a parameter list", yyvsp[-1].ftype);
7955 yyval.ttype = build_tree_list (yyvsp[0].ttype, yyvsp[-1].ftype.t); ;
7956 break;}
eca1bd08 7957case 815:
2bdb0643 7958#line 3549 "parse.y"
861bb6c1
JL
7959{ check_for_new_type ("in a parameter list", yyvsp[0].ftype);
7960 yyval.ttype = chainon (yyval.ttype, yyvsp[0].ftype.t); ;
7961 break;}
eca1bd08 7962case 816:
2bdb0643 7963#line 3552 "parse.y"
68caa397
JM
7964{ yyval.ttype = chainon (yyval.ttype, build_tree_list (NULL_TREE, yyvsp[0].ttype)); ;
7965 break;}
eca1bd08 7966case 817:
2bdb0643 7967#line 3554 "parse.y"
861bb6c1
JL
7968{ yyval.ttype = chainon (yyval.ttype, build_tree_list (yyvsp[0].ttype, yyvsp[-2].ttype)); ;
7969 break;}
eca1bd08 7970case 819:
2bdb0643 7971#line 3560 "parse.y"
861bb6c1
JL
7972{ check_for_new_type ("in a parameter list", yyvsp[-1].ftype);
7973 yyval.ttype = build_tree_list (NULL_TREE, yyvsp[-1].ftype.t); ;
7974 break;}
eca1bd08 7975case 820:
2bdb0643 7976#line 3570 "parse.y"
861bb6c1
JL
7977{ tree specs = strip_attrs (yyvsp[-1].ftype.t);
7978 yyval.ftype.new_type_flag = yyvsp[-1].ftype.new_type_flag;
7979 yyval.ftype.t = build_tree_list (specs, yyvsp[0].ttype); ;
7980 break;}
eca1bd08 7981case 821:
2bdb0643 7982#line 3574 "parse.y"
861bb6c1
JL
7983{ yyval.ftype.t = build_tree_list (yyvsp[-1].ftype.t, yyvsp[0].ttype);
7984 yyval.ftype.new_type_flag = yyvsp[-1].ftype.new_type_flag; ;
7985 break;}
eca1bd08 7986case 822:
2bdb0643 7987#line 3577 "parse.y"
9e0781b5
JM
7988{ yyval.ftype.t = build_tree_list (build_decl_list (NULL_TREE, yyvsp[-1].ftype.t),
7989 yyvsp[0].ttype);
861bb6c1
JL
7990 yyval.ftype.new_type_flag = yyvsp[-1].ftype.new_type_flag; ;
7991 break;}
eca1bd08 7992case 823:
2bdb0643 7993#line 3581 "parse.y"
861bb6c1
JL
7994{ tree specs = strip_attrs (yyvsp[-1].ftype.t);
7995 yyval.ftype.t = build_tree_list (specs, yyvsp[0].ttype);
7996 yyval.ftype.new_type_flag = yyvsp[-1].ftype.new_type_flag; ;
7997 break;}
eca1bd08 7998case 824:
2bdb0643 7999#line 3585 "parse.y"
861bb6c1
JL
8000{ tree specs = strip_attrs (yyvsp[0].ftype.t);
8001 yyval.ftype.t = build_tree_list (specs, NULL_TREE);
8002 yyval.ftype.new_type_flag = yyvsp[0].ftype.new_type_flag; ;
8003 break;}
eca1bd08 8004case 825:
2bdb0643 8005#line 3589 "parse.y"
70adf8a9 8006{ tree specs = strip_attrs (yyvsp[-1].ftype.t);
861bb6c1
JL
8007 yyval.ftype.t = build_tree_list (specs, yyvsp[0].ttype);
8008 yyval.ftype.new_type_flag = 0; ;
8009 break;}
eca1bd08 8010case 826:
2bdb0643 8011#line 3596 "parse.y"
861bb6c1
JL
8012{ yyval.ftype.t = build_tree_list (NULL_TREE, yyvsp[0].ftype.t);
8013 yyval.ftype.new_type_flag = yyvsp[0].ftype.new_type_flag; ;
8014 break;}
eca1bd08 8015case 827:
2bdb0643 8016#line 3599 "parse.y"
861bb6c1
JL
8017{ yyval.ftype.t = build_tree_list (yyvsp[0].ttype, yyvsp[-1].ftype.t);
8018 yyval.ftype.new_type_flag = yyvsp[-1].ftype.new_type_flag; ;
8019 break;}
eca1bd08 8020case 830:
2bdb0643 8021#line 3610 "parse.y"
861bb6c1
JL
8022{ see_typename (); ;
8023 break;}
eca1bd08 8024case 831:
2bdb0643 8025#line 3615 "parse.y"
861bb6c1 8026{
8251199e 8027 error ("type specifier omitted for parameter");
861bb6c1
JL
8028 yyval.ttype = build_tree_list (integer_type_node, NULL_TREE);
8029 ;
8030 break;}
eca1bd08 8031case 832:
2bdb0643 8032#line 3620 "parse.y"
861bb6c1 8033{
8251199e 8034 error ("type specifier omitted for parameter");
861bb6c1 8035 if (TREE_CODE (yyval.ttype) == SCOPE_REF
73b0fce8
KL
8036 && (TREE_CODE (TREE_OPERAND (yyval.ttype, 0)) == TEMPLATE_TYPE_PARM
8037 || TREE_CODE (TREE_OPERAND (yyval.ttype, 0)) == TEMPLATE_TEMPLATE_PARM))
8251199e 8038 cp_error (" perhaps you want `typename %E' to make it a type", yyval.ttype);
861bb6c1
JL
8039 yyval.ttype = build_tree_list (integer_type_node, yyval.ttype);
8040 ;
8041 break;}
eca1bd08 8042case 833:
2bdb0643 8043#line 3632 "parse.y"
68caa397 8044{ yyval.ttype = NULL_TREE; ;
0e607f34 8045 break;}
eca1bd08 8046case 834:
2bdb0643 8047#line 3634 "parse.y"
68caa397 8048{ yyval.ttype = yyvsp[-1].ttype; ;
dc8263bc 8049 break;}
eca1bd08 8050case 835:
2bdb0643 8051#line 3636 "parse.y"
e88e3c0b 8052{ yyval.ttype = empty_except_spec; ;
68caa397 8053 break;}
eca1bd08 8054case 836:
2bdb0643 8055#line 3641 "parse.y"
861bb6c1 8056{
e88e3c0b
JM
8057 check_for_new_type ("exception specifier", yyvsp[0].ftype);
8058 yyval.ttype = groktypename (yyvsp[0].ftype.t);
861bb6c1
JL
8059 ;
8060 break;}
eca1bd08 8061case 837:
2bdb0643 8062#line 3649 "parse.y"
e88e3c0b
JM
8063{ yyval.ttype = add_exception_specifier (NULL_TREE, yyvsp[0].ttype, 1); ;
8064 break;}
eca1bd08 8065case 838:
2bdb0643 8066#line 3651 "parse.y"
e88e3c0b
JM
8067{ yyval.ttype = add_exception_specifier (yyvsp[-2].ttype, yyvsp[0].ttype, 1); ;
8068 break;}
eca1bd08 8069case 839:
2bdb0643 8070#line 3656 "parse.y"
68caa397 8071{ yyval.ttype = NULL_TREE; ;
861bb6c1 8072 break;}
eca1bd08 8073case 840:
2bdb0643 8074#line 3658 "parse.y"
68caa397 8075{ yyval.ttype = make_pointer_declarator (yyvsp[-1].ttype, yyvsp[0].ttype); ;
861bb6c1 8076 break;}
eca1bd08 8077case 841:
2bdb0643 8078#line 3660 "parse.y"
68caa397
JM
8079{ yyval.ttype = make_reference_declarator (yyvsp[-1].ttype, yyvsp[0].ttype); ;
8080 break;}
eca1bd08 8081case 842:
2bdb0643 8082#line 3662 "parse.y"
268ae1b0
JM
8083{ tree arg = make_pointer_declarator (yyvsp[-1].ttype, yyvsp[0].ttype);
8084 yyval.ttype = build_parse_node (SCOPE_REF, yyvsp[-2].ttype, arg);
8085 ;
861bb6c1 8086 break;}
eca1bd08 8087case 843:
2bdb0643 8088#line 3669 "parse.y"
273a708f 8089{ got_scope = NULL_TREE; ;
861bb6c1 8090 break;}
eca1bd08 8091case 844:
2bdb0643 8092#line 3674 "parse.y"
596ea4e5 8093{ yyval.ttype = ansi_opname (MULT_EXPR); ;
861bb6c1 8094 break;}
eca1bd08 8095case 845:
2bdb0643 8096#line 3676 "parse.y"
596ea4e5 8097{ yyval.ttype = ansi_opname (TRUNC_DIV_EXPR); ;
861bb6c1 8098 break;}
eca1bd08 8099case 846:
2bdb0643 8100#line 3678 "parse.y"
596ea4e5 8101{ yyval.ttype = ansi_opname (TRUNC_MOD_EXPR); ;
861bb6c1 8102 break;}
eca1bd08 8103case 847:
2bdb0643 8104#line 3680 "parse.y"
596ea4e5 8105{ yyval.ttype = ansi_opname (PLUS_EXPR); ;
861bb6c1 8106 break;}
eca1bd08 8107case 848:
2bdb0643 8108#line 3682 "parse.y"
596ea4e5 8109{ yyval.ttype = ansi_opname (MINUS_EXPR); ;
861bb6c1 8110 break;}
eca1bd08 8111case 849:
2bdb0643 8112#line 3684 "parse.y"
596ea4e5 8113{ yyval.ttype = ansi_opname (BIT_AND_EXPR); ;
861bb6c1 8114 break;}
eca1bd08 8115case 850:
2bdb0643 8116#line 3686 "parse.y"
596ea4e5 8117{ yyval.ttype = ansi_opname (BIT_IOR_EXPR); ;
861bb6c1 8118 break;}
eca1bd08 8119case 851:
2bdb0643 8120#line 3688 "parse.y"
596ea4e5 8121{ yyval.ttype = ansi_opname (BIT_XOR_EXPR); ;
861bb6c1 8122 break;}
eca1bd08 8123case 852:
2bdb0643 8124#line 3690 "parse.y"
596ea4e5 8125{ yyval.ttype = ansi_opname (BIT_NOT_EXPR); ;
861bb6c1 8126 break;}
eca1bd08 8127case 853:
2bdb0643 8128#line 3692 "parse.y"
596ea4e5 8129{ yyval.ttype = ansi_opname (COMPOUND_EXPR); ;
861bb6c1 8130 break;}
eca1bd08 8131case 854:
2bdb0643 8132#line 3694 "parse.y"
596ea4e5 8133{ yyval.ttype = ansi_opname (yyvsp[0].code); ;
861bb6c1 8134 break;}
eca1bd08 8135case 855:
2bdb0643 8136#line 3696 "parse.y"
596ea4e5 8137{ yyval.ttype = ansi_opname (LT_EXPR); ;
861bb6c1 8138 break;}
eca1bd08 8139case 856:
2bdb0643 8140#line 3698 "parse.y"
596ea4e5 8141{ yyval.ttype = ansi_opname (GT_EXPR); ;
861bb6c1 8142 break;}
eca1bd08 8143case 857:
2bdb0643 8144#line 3700 "parse.y"
596ea4e5 8145{ yyval.ttype = ansi_opname (yyvsp[0].code); ;
861bb6c1 8146 break;}
eca1bd08 8147case 858:
2bdb0643 8148#line 3702 "parse.y"
596ea4e5 8149{ yyval.ttype = ansi_assopname (yyvsp[0].code); ;
861bb6c1 8150 break;}
eca1bd08 8151case 859:
2bdb0643 8152#line 3704 "parse.y"
596ea4e5 8153{ yyval.ttype = ansi_assopname (NOP_EXPR); ;
861bb6c1 8154 break;}
eca1bd08 8155case 860:
2bdb0643 8156#line 3706 "parse.y"
596ea4e5 8157{ yyval.ttype = ansi_opname (yyvsp[0].code); ;
861bb6c1 8158 break;}
eca1bd08 8159case 861:
2bdb0643 8160#line 3708 "parse.y"
596ea4e5 8161{ yyval.ttype = ansi_opname (yyvsp[0].code); ;
861bb6c1 8162 break;}
eca1bd08 8163case 862:
2bdb0643 8164#line 3710 "parse.y"
596ea4e5 8165{ yyval.ttype = ansi_opname (POSTINCREMENT_EXPR); ;
861bb6c1 8166 break;}
eca1bd08 8167case 863:
2bdb0643 8168#line 3712 "parse.y"
596ea4e5 8169{ yyval.ttype = ansi_opname (PREDECREMENT_EXPR); ;
861bb6c1 8170 break;}
eca1bd08 8171case 864:
2bdb0643 8172#line 3714 "parse.y"
596ea4e5 8173{ yyval.ttype = ansi_opname (TRUTH_ANDIF_EXPR); ;
956d6950 8174 break;}
eca1bd08 8175case 865:
2bdb0643 8176#line 3716 "parse.y"
596ea4e5 8177{ yyval.ttype = ansi_opname (TRUTH_ORIF_EXPR); ;
ced68160 8178 break;}
eca1bd08 8179case 866:
2bdb0643 8180#line 3718 "parse.y"
596ea4e5 8181{ yyval.ttype = ansi_opname (TRUTH_NOT_EXPR); ;
2604412d 8182 break;}
eca1bd08 8183case 867:
2bdb0643 8184#line 3720 "parse.y"
596ea4e5 8185{ yyval.ttype = ansi_opname (COND_EXPR); ;
72e61a07 8186 break;}
eca1bd08 8187case 868:
2bdb0643 8188#line 3722 "parse.y"
596ea4e5 8189{ yyval.ttype = ansi_opname (yyvsp[0].code); ;
0e607f34 8190 break;}
eca1bd08 8191case 869:
2bdb0643 8192#line 3724 "parse.y"
596ea4e5 8193{ yyval.ttype = ansi_opname (COMPONENT_REF); ;
dc8263bc 8194 break;}
eca1bd08 8195case 870:
2bdb0643 8196#line 3726 "parse.y"
596ea4e5 8197{ yyval.ttype = ansi_opname (MEMBER_REF); ;
26877584 8198 break;}
eca1bd08 8199case 871:
2bdb0643 8200#line 3728 "parse.y"
596ea4e5 8201{ yyval.ttype = ansi_opname (CALL_EXPR); ;
268ae1b0 8202 break;}
eca1bd08 8203case 872:
2bdb0643 8204#line 3730 "parse.y"
596ea4e5 8205{ yyval.ttype = ansi_opname (ARRAY_REF); ;
268ae1b0 8206 break;}
eca1bd08 8207case 873:
2bdb0643 8208#line 3732 "parse.y"
596ea4e5 8209{ yyval.ttype = ansi_opname (NEW_EXPR); ;
68caa397 8210 break;}
eca1bd08 8211case 874:
2bdb0643 8212#line 3734 "parse.y"
596ea4e5 8213{ yyval.ttype = ansi_opname (DELETE_EXPR); ;
61a127b3 8214 break;}
eca1bd08 8215case 875:
2bdb0643 8216#line 3736 "parse.y"
596ea4e5 8217{ yyval.ttype = ansi_opname (VEC_NEW_EXPR); ;
91063b51 8218 break;}
eca1bd08 8219case 876:
2bdb0643 8220#line 3738 "parse.y"
596ea4e5 8221{ yyval.ttype = ansi_opname (VEC_DELETE_EXPR); ;
4a4b0aa3 8222 break;}
eca1bd08 8223case 877:
2bdb0643 8224#line 3741 "parse.y"
273a708f
MM
8225{ yyval.ttype = grokoptypename (yyvsp[-1].ftype.t, yyvsp[0].ttype); ;
8226 break;}
eca1bd08 8227case 878:
2bdb0643 8228#line 3743 "parse.y"
596ea4e5 8229{ yyval.ttype = ansi_opname (ERROR_MARK); ;
861bb6c1
JL
8230 break;}
8231}
8232 /* the action file gets copied in in place of this dollarsign */
d0f062fb 8233#line 543 "/usr/lib/bison.simple"
861bb6c1
JL
8234\f
8235 yyvsp -= yylen;
8236 yyssp -= yylen;
8237#ifdef YYLSP_NEEDED
8238 yylsp -= yylen;
8239#endif
8240
8241#if YYDEBUG != 0
8242 if (yydebug)
8243 {
8244 short *ssp1 = yyss - 1;
8245 fprintf (stderr, "state stack now");
8246 while (ssp1 != yyssp)
8247 fprintf (stderr, " %d", *++ssp1);
8248 fprintf (stderr, "\n");
8249 }
8250#endif
8251
8252 *++yyvsp = yyval;
8253
8254#ifdef YYLSP_NEEDED
8255 yylsp++;
8256 if (yylen == 0)
8257 {
8258 yylsp->first_line = yylloc.first_line;
8259 yylsp->first_column = yylloc.first_column;
8260 yylsp->last_line = (yylsp-1)->last_line;
8261 yylsp->last_column = (yylsp-1)->last_column;
8262 yylsp->text = 0;
8263 }
8264 else
8265 {
8266 yylsp->last_line = (yylsp+yylen-1)->last_line;
8267 yylsp->last_column = (yylsp+yylen-1)->last_column;
8268 }
8269#endif
8270
8271 /* Now "shift" the result of the reduction.
8272 Determine what state that goes to,
8273 based on the state we popped back to
8274 and the rule number reduced by. */
8275
8276 yyn = yyr1[yyn];
8277
8278 yystate = yypgoto[yyn - YYNTBASE] + *yyssp;
8279 if (yystate >= 0 && yystate <= YYLAST && yycheck[yystate] == *yyssp)
8280 yystate = yytable[yystate];
8281 else
8282 yystate = yydefgoto[yyn - YYNTBASE];
8283
8284 goto yynewstate;
8285
8286yyerrlab: /* here on detecting error */
8287
8288 if (! yyerrstatus)
8289 /* If not already recovering from an error, report this error. */
8290 {
8291 ++yynerrs;
8292
8293#ifdef YYERROR_VERBOSE
8294 yyn = yypact[yystate];
8295
8296 if (yyn > YYFLAG && yyn < YYLAST)
8297 {
8298 int size = 0;
8299 char *msg;
8300 int x, count;
8301
8302 count = 0;
8303 /* Start X at -yyn if nec to avoid negative indexes in yycheck. */
8304 for (x = (yyn < 0 ? -yyn : 0);
8305 x < (sizeof(yytname) / sizeof(char *)); x++)
8306 if (yycheck[x + yyn] == x)
8307 size += strlen(yytname[x]) + 15, count++;
8308 msg = (char *) malloc(size + 15);
8309 if (msg != 0)
8310 {
8311 strcpy(msg, "parse error");
8312
8313 if (count < 5)
8314 {
8315 count = 0;
8316 for (x = (yyn < 0 ? -yyn : 0);
8317 x < (sizeof(yytname) / sizeof(char *)); x++)
8318 if (yycheck[x + yyn] == x)
8319 {
8320 strcat(msg, count == 0 ? ", expecting `" : " or `");
8321 strcat(msg, yytname[x]);
8322 strcat(msg, "'");
8323 count++;
8324 }
8325 }
8326 yyerror(msg);
8327 free(msg);
8328 }
8329 else
8330 yyerror ("parse error; also virtual memory exceeded");
8331 }
8332 else
8333#endif /* YYERROR_VERBOSE */
8334 yyerror("parse error");
8335 }
8336
8337 goto yyerrlab1;
8338yyerrlab1: /* here on error raised explicitly by an action */
8339
8340 if (yyerrstatus == 3)
8341 {
8342 /* if just tried and failed to reuse lookahead token after an error, discard it. */
8343
8344 /* return failure if at end of input */
8345 if (yychar == YYEOF)
8346 YYABORT;
8347
8348#if YYDEBUG != 0
8349 if (yydebug)
8350 fprintf(stderr, "Discarding token %d (%s).\n", yychar, yytname[yychar1]);
8351#endif
8352
8353 yychar = YYEMPTY;
8354 }
8355
8356 /* Else will try to reuse lookahead token
8357 after shifting the error token. */
8358
8359 yyerrstatus = 3; /* Each real token shifted decrements this */
8360
8361 goto yyerrhandle;
8362
8363yyerrdefault: /* current state does not do anything special for the error token. */
8364
8365#if 0
8366 /* This is wrong; only states that explicitly want error tokens
8367 should shift them. */
8368 yyn = yydefact[yystate]; /* If its default is to accept any token, ok. Otherwise pop it.*/
8369 if (yyn) goto yydefault;
8370#endif
8371
8372yyerrpop: /* pop the current state because it cannot handle the error token */
8373
8374 if (yyssp == yyss) YYABORT;
8375 yyvsp--;
8376 yystate = *--yyssp;
8377#ifdef YYLSP_NEEDED
8378 yylsp--;
8379#endif
8380
8381#if YYDEBUG != 0
8382 if (yydebug)
8383 {
8384 short *ssp1 = yyss - 1;
8385 fprintf (stderr, "Error: state stack now");
8386 while (ssp1 != yyssp)
8387 fprintf (stderr, " %d", *++ssp1);
8388 fprintf (stderr, "\n");
8389 }
8390#endif
8391
8392yyerrhandle:
8393
8394 yyn = yypact[yystate];
8395 if (yyn == YYFLAG)
8396 goto yyerrdefault;
8397
8398 yyn += YYTERROR;
8399 if (yyn < 0 || yyn > YYLAST || yycheck[yyn] != YYTERROR)
8400 goto yyerrdefault;
8401
8402 yyn = yytable[yyn];
8403 if (yyn < 0)
8404 {
8405 if (yyn == YYFLAG)
8406 goto yyerrpop;
8407 yyn = -yyn;
8408 goto yyreduce;
8409 }
8410 else if (yyn == 0)
8411 goto yyerrpop;
8412
8413 if (yyn == YYFINAL)
8414 YYACCEPT;
8415
8416#if YYDEBUG != 0
8417 if (yydebug)
8418 fprintf(stderr, "Shifting error token, ");
8419#endif
8420
8421 *++yyvsp = yylval;
8422#ifdef YYLSP_NEEDED
8423 *++yylsp = yylloc;
8424#endif
8425
8426 yystate = yyn;
8427 goto yynewstate;
f1dedc31
MM
8428
8429 yyacceptlab:
8430 /* YYACCEPT comes here. */
8431 if (yyfree_stacks)
8432 {
8433 free (yyss);
8434 free (yyvs);
8435#ifdef YYLSP_NEEDED
8436 free (yyls);
8437#endif
8438 }
8439 return 0;
8440
8441 yyabortlab:
8442 /* YYABORT comes here. */
8443 if (yyfree_stacks)
8444 {
8445 free (yyss);
8446 free (yyvs);
8447#ifdef YYLSP_NEEDED
8448 free (yyls);
8449#endif
8450 }
8451 return 1;
861bb6c1 8452}
2bdb0643 8453#line 3746 "parse.y"
861bb6c1
JL
8454
8455
8456#ifdef SPEW_DEBUG
8457const char *
8458debug_yytranslate (value)
8459 int value;
8460{
8461 return yytname[YYTRANSLATE (value)];
8462}
8463
8464#endif
This page took 2.029314 seconds and 5 git commands to generate.