Annotation of gcc/cp/parse.c, revision 1.1.1.1

1.1       root        1: 
                      2: /*  A Bison parser, made from parse.y with Bison version GNU Bison version 1.22
                      3:   */
                      4: 
                      5: #define YYBISON 1  /* Identify Bison output.  */
                      6: 
                      7: #define        IDENTIFIER      258
                      8: #define        TYPENAME        259
                      9: #define        SCSPEC  260
                     10: #define        TYPESPEC        261
                     11: #define        TYPE_QUAL       262
                     12: #define        CONSTANT        263
                     13: #define        STRING  264
                     14: #define        ELLIPSIS        265
                     15: #define        SIZEOF  266
                     16: #define        ENUM    267
                     17: #define        IF      268
                     18: #define        ELSE    269
                     19: #define        WHILE   270
                     20: #define        DO      271
                     21: #define        FOR     272
                     22: #define        SWITCH  273
                     23: #define        CASE    274
                     24: #define        DEFAULT 275
                     25: #define        BREAK   276
                     26: #define        CONTINUE        277
                     27: #define        RETURN  278
                     28: #define        GOTO    279
                     29: #define        ASM_KEYWORD     280
                     30: #define        GCC_ASM_KEYWORD 281
                     31: #define        TYPEOF  282
                     32: #define        ALIGNOF 283
                     33: #define        HEADOF  284
                     34: #define        CLASSOF 285
                     35: #define        SIGOF   286
                     36: #define        ATTRIBUTE       287
                     37: #define        EXTENSION       288
                     38: #define        LABEL   289
                     39: #define        AGGR    290
                     40: #define        VISSPEC 291
                     41: #define        DELETE  292
                     42: #define        NEW     293
                     43: #define        OVERLOAD        294
                     44: #define        THIS    295
                     45: #define        OPERATOR        296
                     46: #define        CXX_TRUE        297
                     47: #define        CXX_FALSE       298
                     48: #define        LEFT_RIGHT      299
                     49: #define        TEMPLATE        300
                     50: #define        TYPEID  301
                     51: #define        DYNAMIC_CAST    302
                     52: #define        STATIC_CAST     303
                     53: #define        REINTERPRET_CAST        304
                     54: #define        CONST_CAST      305
                     55: #define        SCOPE   306
                     56: #define        EMPTY   307
                     57: #define        PTYPENAME       308
                     58: #define        ASSIGN  309
                     59: #define        OROR    310
                     60: #define        ANDAND  311
                     61: #define        MIN_MAX 312
                     62: #define        EQCOMPARE       313
                     63: #define        ARITHCOMPARE    314
                     64: #define        LSHIFT  315
                     65: #define        RSHIFT  316
                     66: #define        POINTSAT_STAR   317
                     67: #define        DOT_STAR        318
                     68: #define        UNARY   319
                     69: #define        PLUSPLUS        320
                     70: #define        MINUSMINUS      321
                     71: #define        HYPERUNARY      322
                     72: #define        PAREN_STAR_PAREN        323
                     73: #define        POINTSAT        324
                     74: #define        TRY     325
                     75: #define        CATCH   326
                     76: #define        THROW   327
                     77: #define        TYPENAME_ELLIPSIS       328
                     78: #define        PRE_PARSED_FUNCTION_DECL        329
                     79: #define        EXTERN_LANG_STRING      330
                     80: #define        ALL     331
                     81: #define        PRE_PARSED_CLASS_DECL   332
                     82: #define        TYPENAME_DEFN   333
                     83: #define        IDENTIFIER_DEFN 334
                     84: #define        PTYPENAME_DEFN  335
                     85: #define        END_OF_SAVED_INPUT      336
                     86: 
                     87: #line 42 "parse.y"
                     88: 
                     89: /* Cause the `yydebug' variable to be defined.  */
                     90: #define YYDEBUG 1
                     91: 
                     92: #include "config.h"
                     93: 
                     94: #include <stdio.h>
                     95: #include <errno.h>
                     96: 
                     97: #include "tree.h"
                     98: #include "input.h"
                     99: #include "flags.h"
                    100: #include "lex.h"
                    101: #include "cp-tree.h"
                    102: 
                    103: /* Since parsers are distinct for each language, put the language string
                    104:    definition here.  (fnf) */
                    105: char *language_string = "GNU C++";
                    106: 
                    107: extern tree void_list_node;
                    108: extern struct obstack permanent_obstack;
                    109: 
                    110: #ifndef errno
                    111: extern int errno;
                    112: #endif
                    113: 
                    114: extern int end_of_file;
                    115: extern int current_class_depth;
                    116: 
                    117: void yyerror ();
                    118: 
                    119: /* Like YYERROR but do call yyerror.  */
                    120: #define YYERROR1 { yyerror ("syntax error"); YYERROR; }
                    121: 
                    122: #define OP0(NODE) (TREE_OPERAND (NODE, 0))
                    123: #define OP1(NODE) (TREE_OPERAND (NODE, 1))
                    124: 
                    125: /* Contains the statement keyword (if/while/do) to include in an
                    126:    error message if the user supplies an empty conditional expression.  */
                    127: static char *cond_stmt_keyword;
                    128: 
                    129: /* Nonzero if we have an `extern "C"' acting as an extern specifier.  */
                    130: int have_extern_spec;
                    131: int used_extern_spec;
                    132: 
                    133: void yyhook ();
                    134: 
                    135: /* Cons up an empty parameter list.  */
                    136: #ifdef __GNUC__
                    137: __inline
                    138: #endif
                    139: static tree
                    140: empty_parms ()
                    141: {
                    142:   tree parms;
                    143: 
                    144:   if (strict_prototype)
                    145:     parms = void_list_node;
                    146:   else
                    147:     parms = NULL_TREE;
                    148:   return parms;
                    149: }
                    150: 
                    151: #line 108 "parse.y"
                    152: typedef union {long itype; tree ttype; char *strtype; enum tree_code code; } YYSTYPE;
                    153: #line 277 "parse.y"
                    154: 
                    155: /* List of types and structure classes of the current declaration.  */
                    156: static tree current_declspecs;
                    157: 
                    158: /* When defining an aggregate, this is the most recent one being defined.  */
                    159: static tree current_aggr;
                    160: 
                    161: /* Tell yyparse how to print a token's value, if yydebug is set.  */
                    162: 
                    163: #define YYPRINT(FILE,YYCHAR,YYLVAL) yyprint(FILE,YYCHAR,YYLVAL)
                    164: extern void yyprint ();
                    165: extern tree combine_strings            PROTO((tree));
                    166: 
                    167: #ifndef YYLTYPE
                    168: typedef
                    169:   struct yyltype
                    170:     {
                    171:       int timestamp;
                    172:       int first_line;
                    173:       int first_column;
                    174:       int last_line;
                    175:       int last_column;
                    176:       char *text;
                    177:    }
                    178:   yyltype;
                    179: 
                    180: #define YYLTYPE yyltype
                    181: #endif
                    182: 
                    183: #include <stdio.h>
                    184: 
                    185: #ifndef __cplusplus
                    186: #ifndef __STDC__
                    187: #define const
                    188: #endif
                    189: #endif
                    190: 
                    191: 
                    192: 
                    193: #define        YYFINAL         1350
                    194: #define        YYFLAG          -32768
                    195: #define        YYNTBASE        106
                    196: 
                    197: #define YYTRANSLATE(x) ((unsigned)(x) <= 336 ? yytranslate[x] : 338)
                    198: 
                    199: static const char yytranslate[] = {     0,
                    200:      2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
                    201:      2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
                    202:      2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
                    203:      2,     2,   104,     2,     2,     2,    77,    65,     2,    88,
                    204:    102,    75,    73,    55,    74,    87,    76,     2,     2,     2,
                    205:      2,     2,     2,     2,     2,     2,     2,    60,    56,    69,
                    206:     58,    70,    59,     2,     2,     2,     2,     2,     2,     2,
                    207:      2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
                    208:      2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
                    209:     89,     2,   105,    64,     2,     2,     2,     2,     2,     2,
                    210:      2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
                    211:      2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
                    212:      2,     2,    54,    63,   103,    83,     2,     2,     2,     2,
                    213:      2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
                    214:      2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
                    215:      2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
                    216:      2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
                    217:      2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
                    218:      2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
                    219:      2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
                    220:      2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
                    221:      2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
                    222:      2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
                    223:      2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
                    224:      2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
                    225:      2,     2,     2,     2,     2,     1,     2,     3,     4,     5,
                    226:      6,     7,     8,     9,    10,    11,    12,    13,    14,    15,
                    227:     16,    17,    18,    19,    20,    21,    22,    23,    24,    25,
                    228:     26,    27,    28,    29,    30,    31,    32,    33,    34,    35,
                    229:     36,    37,    38,    39,    40,    41,    42,    43,    44,    45,
                    230:     46,    47,    48,    49,    50,    51,    52,    53,    57,    61,
                    231:     62,    66,    67,    68,    71,    72,    78,    79,    80,    81,
                    232:     82,    84,    85,    86,    90,    91,    92,    93,    94,    95,
                    233:     96,    97,    98,    99,   100,   101
                    234: };
                    235: 
                    236: #if YYDEBUG != 0
                    237: static const short yyprhs[] = {     0,
                    238:      0,     1,     3,     4,     7,    10,    11,    12,    14,    16,
                    239:     17,    20,    22,    24,    26,    28,    34,    39,    43,    48,
                    240:     53,    55,    56,    62,    64,    68,    70,    73,    75,    79,
                    241:     81,    85,    87,    91,    92,    98,    99,   105,   106,   112,
                    242:    113,   119,   123,   127,   134,   142,   147,   151,   155,   157,
                    243:    159,   161,   163,   165,   168,   172,   176,   180,   184,   187,
                    244:    190,   193,   196,   199,   201,   205,   210,   214,   220,   225,
                    245:    229,   233,   236,   240,   244,   247,   249,   256,   261,   265,
                    246:    269,   272,   275,   277,   281,   286,   289,   293,   294,   295,
                    247:    297,   301,   304,   308,   310,   315,   318,   323,   326,   331,
                    248:    334,   336,   338,   340,   342,   344,   346,   348,   350,   354,
                    249:    358,   363,   368,   372,   377,   381,   386,   387,   389,   393,
                    250:    395,   397,   398,   405,   406,   408,   409,   412,   414,   416,
                    251:    418,   420,   422,   424,   426,   428,   432,   434,   438,   439,
                    252:    441,   443,   444,   453,   455,   458,   463,   468,   470,   474,
                    253:    478,   482,   486,   488,   490,   492,   493,   497,   500,   503,
                    254:    506,   509,   512,   515,   520,   523,   528,   531,   535,   539,
                    255:    544,   549,   555,   561,   568,   571,   576,   582,   586,   590,
                    256:    594,   596,   600,   603,   607,   612,   614,   617,   623,   625,
                    257:    630,   635,   640,   642,   646,   650,   654,   658,   662,   666,
                    258:    670,   674,   678,   682,   686,   690,   694,   698,   702,   706,
                    259:    710,   714,   718,   724,   728,   732,   734,   737,   741,   743,
                    260:    745,   747,   749,   751,   753,   755,   758,   761,   763,   765,
                    261:    767,   769,   771,   773,   775,   779,   783,   784,   789,   790,
                    262:    797,   800,   805,   808,   811,   813,   818,   820,   828,   836,
                    263:    844,   852,   857,   862,   865,   868,   870,   875,   878,   881,
                    264:    884,   890,   894,   900,   904,   909,   916,   918,   921,   923,
                    265:    926,   928,   930,   932,   935,   936,   939,   942,   946,   950,
                    266:    954,   958,   962,   965,   968,   970,   972,   974,   977,   980,
                    267:    983,   986,   988,   990,   992,   994,   997,  1000,  1004,  1008,
                    268:   1013,  1015,  1018,  1021,  1023,  1025,  1028,  1031,  1033,  1036,
                    269:   1039,  1043,  1045,  1048,  1050,  1052,  1054,  1059,  1064,  1069,
                    270:   1074,  1076,  1078,  1080,  1082,  1086,  1088,  1092,  1094,  1098,
                    271:   1099,  1104,  1105,  1113,  1118,  1119,  1127,  1132,  1133,  1141,
                    272:   1146,  1147,  1155,  1160,  1161,  1163,  1165,  1168,  1175,  1177,
                    273:   1181,  1182,  1184,  1189,  1196,  1201,  1203,  1205,  1207,  1209,
                    274:   1211,  1215,  1217,  1220,  1224,  1229,  1231,  1233,  1237,  1242,
                    275:   1249,  1253,  1259,  1260,  1268,  1273,  1274,  1281,  1285,  1288,
                    276:   1291,  1296,  1298,  1299,  1301,  1302,  1304,  1306,  1309,  1312,
                    277:   1315,  1318,  1322,  1325,  1328,  1331,  1335,  1339,  1341,  1344,
                    278:   1345,  1346,  1350,  1354,  1357,  1359,  1361,  1362,  1364,  1367,
                    279:   1369,  1373,  1375,  1378,  1380,  1385,  1390,  1392,  1394,  1397,
                    280:   1400,  1402,  1403,  1405,  1410,  1414,  1416,  1419,  1422,  1425,
                    281:   1428,  1431,  1434,  1437,  1440,  1445,  1448,  1450,  1456,  1460,
                    282:   1461,  1463,  1467,  1468,  1470,  1474,  1476,  1478,  1480,  1482,
                    283:   1487,  1494,  1499,  1504,  1511,  1516,  1520,  1525,  1532,  1537,
                    284:   1542,  1549,  1554,  1558,  1560,  1564,  1566,  1570,  1573,  1575,
                    285:   1582,  1583,  1586,  1588,  1591,  1592,  1595,  1599,  1603,  1606,
                    286:   1609,  1613,  1615,  1617,  1619,  1622,  1628,  1634,  1638,  1644,
                    287:   1649,  1653,  1657,  1660,  1662,  1666,  1670,  1673,  1676,  1680,
                    288:   1682,  1686,  1690,  1693,  1696,  1700,  1702,  1708,  1714,  1718,
                    289:   1724,  1728,  1732,  1737,  1741,  1744,  1747,  1749,  1752,  1757,
                    290:   1762,  1765,  1767,  1769,  1771,  1774,  1777,  1780,  1782,  1785,
                    291:   1787,  1790,  1793,  1797,  1799,  1803,  1806,  1810,  1813,  1816,
                    292:   1820,  1822,  1826,  1831,  1835,  1838,  1841,  1843,  1847,  1850,
                    293:   1853,  1855,  1858,  1862,  1864,  1868,  1870,  1876,  1880,  1885,
                    294:   1889,  1894,  1897,  1900,  1904,  1907,  1909,  1911,  1914,  1917,
                    295:   1920,  1921,  1922,  1924,  1926,  1929,  1933,  1935,  1938,  1942,
                    296:   1948,  1955,  1961,  1962,  1963,  1970,  1972,  1975,  1977,  1979,
                    297:   1981,  1984,  1985,  1990,  1992,  1993,  1994,  2001,  2002,  2003,
                    298:   2011,  2012,  2013,  2014,  2025,  2026,  2027,  2028,  2039,  2040,
                    299:   2048,  2049,  2055,  2056,  2064,  2065,  2070,  2073,  2076,  2079,
                    300:   2083,  2090,  2099,  2110,  2123,  2128,  2132,  2135,  2138,  2140,
                    301:   2142,  2143,  2144,  2152,  2154,  2157,  2160,  2161,  2162,  2168,
                    302:   2170,  2172,  2176,  2180,  2183,  2186,  2189,  2193,  2198,  2203,
                    303:   2207,  2212,  2219,  2226,  2227,  2229,  2230,  2232,  2234,  2235,
                    304:   2237,  2239,  2243,  2248,  2250,  2254,  2255,  2257,  2259,  2261,
                    305:   2264,  2267,  2270,  2272,  2274,  2277,  2280,  2283,  2286,  2288,
                    306:   2292,  2295,  2298,  2303,  2306,  2309,  2312,  2315,  2318,  2321,
                    307:   2323,  2326,  2328,  2332,  2334,  2336,  2337,  2338,  2340,  2341,
                    308:   2346,  2348,  2350,  2354,  2355,  2359,  2363,  2367,  2369,  2372,
                    309:   2375,  2378,  2381,  2384,  2387,  2390,  2393,  2396,  2399,  2402,
                    310:   2405,  2408,  2411,  2414,  2417,  2420,  2423,  2426,  2429,  2432,
                    311:   2435,  2438,  2442,  2445,  2448,  2451,  2454,  2458,  2461,  2464,
                    312:   2469,  2474,  2478
                    313: };
                    314: 
                    315: static const short yyrhs[] = {    -1,
                    316:    107,     0,     0,   108,   112,     0,   107,   112,     0,     0,
                    317:      0,    25,     0,    26,     0,     0,   113,   114,     0,   130,
                    318:      0,   129,     0,   123,     0,   121,     0,   111,    88,   180,
                    319:    102,    56,     0,   115,    54,   107,   103,     0,   115,    54,
                    320:    103,     0,   115,   109,   130,   110,     0,   115,   109,   129,
                    321:    110,     0,    95,     0,     0,    45,    69,   117,   118,    70,
                    322:      0,   120,     0,   118,    55,   120,     0,   221,     0,   221,
                    323:    139,     0,   119,     0,   119,    58,   193,     0,   328,     0,
                    324:     39,   122,    56,     0,     3,     0,   122,    55,     3,     0,
                    325:      0,   116,   223,    54,   124,    56,     0,     0,   116,   224,
                    326:     54,   125,    56,     0,     0,   116,   223,    60,   126,    56,
                    327:      0,     0,   116,   224,    60,   127,    56,     0,   116,   223,
                    328:     56,     0,   116,   224,    56,     0,   116,   259,   332,   198,
                    329:    207,   128,     0,   116,   187,   184,   332,   198,   207,   128,
                    330:      0,   116,   190,   259,   128,     0,   116,     1,   103,     0,
                    331:    116,     1,    56,     0,    54,     0,    60,     0,    56,     0,
                    332:     58,     0,    23,     0,   197,    56,     0,   190,   196,    56,
                    333:      0,   190,   259,    56,     0,   187,   195,    56,     0,   187,
                    334:    184,    56,     0,   190,    56,     0,   142,    56,     0,   187,
                    335:     56,     0,     1,    56,     0,     1,   103,     0,    56,     0,
                    336:    131,   135,   283,     0,   131,   134,   135,   283,     0,   131,
                    337:    181,   283,     0,   131,   134,    56,   181,   283,     0,   131,
                    338:    134,   181,   283,     0,   187,   184,     1,     0,   190,   259,
                    339:      1,     0,   259,     1,     0,   187,   184,   332,     0,   190,
                    340:    259,   332,     0,   259,   332,     0,    94,     0,   187,    88,
                    341:    323,   102,   251,   332,     0,   187,    44,   251,   332,     0,
                    342:    187,   184,   332,     0,   190,   259,   332,     0,   259,   332,
                    343:      0,    23,     3,     0,   133,     0,   133,    58,   214,     0,
                    344:    133,    88,   161,   102,     0,   133,    44,     0,    60,   136,
                    345:    137,     0,     0,     0,   138,     0,   137,    55,   138,     0,
                    346:    137,     1,     0,    88,   161,   102,     0,    44,     0,   140,
                    347:     88,   161,   102,     0,   140,    44,     0,   269,    88,   161,
                    348:    102,     0,   269,    44,     0,   263,    88,   161,   102,     0,
                    349:    263,    44,     0,     3,     0,     4,     0,    53,     0,     3,
                    350:      0,    53,     0,    99,     0,    98,     0,   100,     0,    45,
                    351:    222,   150,     0,    45,   187,   184,     0,     5,    45,   222,
                    352:    150,     0,     5,    45,   187,   184,     0,   144,   145,   150,
                    353:      0,    53,    69,   146,    70,     0,    53,    69,    70,     0,
                    354:      4,    69,   146,    70,     0,     0,   147,     0,   146,    55,
                    355:    147,     0,   186,     0,   169,     0,     0,    97,   230,   149,
                    356:    235,   236,   103,     0,     0,   148,     0,     0,   148,   151,
                    357:      0,    74,     0,    73,     0,    81,     0,    82,     0,   104,
                    358:      0,   160,     0,   169,     0,    44,     0,    88,   153,   102,
                    359:      0,    44,     0,    88,   157,   102,     0,     0,   157,     0,
                    360:      1,     0,     0,   312,   184,   332,   198,   207,    58,   158,
                    361:    214,     0,   153,     0,    54,   103,     0,    54,   280,   277,
                    362:    103,     0,    54,   280,     1,   103,     0,   290,     0,   169,
                    363:     55,   169,     0,   169,    55,     1,     0,   160,    55,   169,
                    364:      0,   160,    55,     1,     0,   169,     0,   160,     0,   174,
                    365:      0,     0,    33,   163,   167,     0,    75,   167,     0,    65,
                    366:    167,     0,    83,   167,     0,   152,   167,     0,    62,   139,
                    367:      0,    11,   162,     0,    11,    88,   186,   102,     0,    28,
                    368:    162,     0,    28,    88,   186,   102,     0,   177,   250,     0,
                    369:    177,   250,   165,     0,   177,   164,   250,     0,   177,   164,
                    370:    250,   165,     0,   177,    88,   186,   102,     0,   177,    88,
                    371:    186,   102,   165,     0,   177,   164,    88,   186,   102,     0,
                    372:    177,   164,    88,   186,   102,   165,     0,   178,   167,     0,
                    373:    178,    89,   105,   167,     0,   178,    89,   153,   105,   167,
                    374:      0,    88,   161,   102,     0,    54,   161,   103,     0,    88,
                    375:    161,   102,     0,    44,     0,    88,   193,   102,     0,    58,
                    376:    214,     0,    88,   186,   102,     0,   166,    88,   186,   102,
                    377:      0,   168,     0,   166,   168,     0,   166,    54,   215,   219,
                    378:    103,     0,   162,     0,    29,    88,   153,   102,     0,    30,
                    379:     88,   153,   102,     0,    30,    88,     4,   102,     0,   167,
                    380:      0,   169,    78,   169,     0,   169,    79,   169,     0,   169,
                    381:     73,   169,     0,   169,    74,   169,     0,   169,    75,   169,
                    382:      0,   169,    76,   169,     0,   169,    77,   169,     0,   169,
                    383:     71,   169,     0,   169,    72,   169,     0,   169,    68,   169,
                    384:      0,   169,    69,   169,     0,   169,    70,   169,     0,   169,
                    385:     67,   169,     0,   169,    66,   169,     0,   169,    65,   169,
                    386:      0,   169,    63,   169,     0,   169,    64,   169,     0,   169,
                    387:     62,   169,     0,   169,    61,   169,     0,   169,    59,   318,
                    388:     60,   169,     0,   169,    58,   169,     0,   169,    57,   169,
                    389:      0,    92,     0,    92,   169,     0,    83,   330,   139,     0,
                    390:    337,     0,     3,     0,    53,     0,   170,     0,     4,     0,
                    391:    170,     0,   263,     0,    75,   172,     0,    65,   172,     0,
                    392:    261,     0,   170,     0,   263,     0,   170,     0,     8,     0,
                    393:    179,     0,   180,     0,    88,   153,   102,     0,    88,     1,
                    394:    102,     0,     0,    88,   175,   284,   102,     0,     0,   174,
                    395:     88,   161,   102,   176,   151,     0,   174,    44,     0,   174,
                    396:     89,   153,   105,     0,   174,    81,     0,   174,    82,     0,
                    397:     40,     0,     7,    88,   161,   102,     0,   265,     0,    47,
                    398:     69,   186,    70,    88,   153,   102,     0,    48,    69,   186,
                    399:     70,    88,   153,   102,     0,    49,    69,   186,    70,    88,
                    400:    153,   102,     0,    50,    69,   186,    70,    88,   153,   102,
                    401:      0,    46,    88,   153,   102,     0,    46,    88,   186,   102,
                    402:      0,   272,     3,     0,   272,   337,     0,   264,     0,   264,
                    403:     88,   161,   102,     0,   264,    44,     0,   182,   171,     0,
                    404:    182,   262,     0,   182,   171,    88,   161,   102,     0,   182,
                    405:    171,    44,     0,   182,   262,    88,   161,   102,     0,   182,
                    406:    262,    44,     0,   182,    83,     6,    44,     0,   182,     6,
                    407:     51,    83,     6,    44,     0,    38,     0,   272,    38,     0,
                    408:     37,     0,   272,   178,     0,    42,     0,    43,     0,     9,
                    409:      0,   180,     9,     0,     0,   174,    87,     0,   174,    86,
                    410:      0,   193,   184,    56,     0,   187,   184,    56,     0,   193,
                    411:    195,    56,     0,   187,   195,    56,     0,   190,   196,    56,
                    412:      0,   187,    56,     0,   190,    56,     0,   255,     0,   259,
                    413:      0,    44,     0,   185,    44,     0,   191,   275,     0,   252,
                    414:    275,     0,   193,   275,     0,   191,     0,   252,     0,   191,
                    415:      0,   188,     0,   190,   193,     0,   193,   189,     0,   190,
                    416:    193,   189,     0,   190,   193,   192,     0,   190,   193,   192,
                    417:    189,     0,     5,     0,   189,   194,     0,   189,     5,     0,
                    418:    252,     0,     5,     0,   190,     7,     0,   190,     5,     0,
                    419:    193,     0,   252,   193,     0,   193,   192,     0,   252,   193,
                    420:    192,     0,   194,     0,   192,   194,     0,   216,     0,     6,
                    421:      0,   269,     0,    27,    88,   153,   102,     0,    27,    88,
                    422:    186,   102,     0,    31,    88,   153,   102,     0,    31,    88,
                    423:    186,   102,     0,     6,     0,     7,     0,   216,     0,   199,
                    424:      0,   195,    55,   201,     0,   203,     0,   196,    55,   201,
                    425:      0,   205,     0,   197,    55,   201,     0,     0,   111,    88,
                    426:    180,   102,     0,     0,   184,   332,   198,   207,    58,   200,
                    427:    214,     0,   184,   332,   198,   207,     0,     0,   184,   332,
                    428:    198,   207,    58,   202,   214,     0,   184,   332,   198,   207,
                    429:      0,     0,   259,   332,   198,   207,    58,   204,   214,     0,
                    430:    259,   332,   198,   207,     0,     0,   259,   332,   198,   207,
                    431:     58,   206,   214,     0,   259,   332,   198,   207,     0,     0,
                    432:    208,     0,   209,     0,   208,   209,     0,    32,    88,    88,
                    433:    210,   102,   102,     0,   211,     0,   210,    55,   211,     0,
                    434:      0,   212,     0,   212,    88,     3,   102,     0,   212,    88,
                    435:      3,    55,   161,   102,     0,   212,    88,   161,   102,     0,
                    436:    139,     0,     5,     0,     6,     0,     7,     0,   139,     0,
                    437:    213,    55,   139,     0,   169,     0,    54,   103,     0,    54,
                    438:    215,   103,     0,    54,   215,    55,   103,     0,     1,     0,
                    439:    214,     0,   215,    55,   214,     0,    89,   169,   105,   214,
                    440:      0,   215,    55,    19,   169,    60,   214,     0,   139,    60,
                    441:    214,     0,   215,    55,   139,    60,   214,     0,     0,    12,
                    442:    139,    54,   217,   248,   220,   103,     0,    12,   139,    54,
                    443:    103,     0,     0,    12,    54,   218,   248,   220,   103,     0,
                    444:     12,    54,   103,     0,    12,   139,     0,    12,   270,     0,
                    445:    229,   235,   236,   103,     0,   229,     0,     0,    55,     0,
                    446:      0,    55,     0,    35,     0,   221,     5,     0,   221,     6,
                    447:      0,   221,     7,     0,   221,    35,     0,   221,   144,    56,
                    448:      0,   221,   139,     0,   221,   270,     0,   221,   143,     0,
                    449:    221,   144,    54,     0,   221,   144,    60,     0,   222,     0,
                    450:    221,   141,     0,     0,     0,   223,   225,   230,     0,   224,
                    451:    226,   230,     0,   221,    54,     0,   228,     0,   227,     0,
                    452:      0,    60,     0,    60,   231,     0,   232,     0,   231,    55,
                    453:    232,     0,   233,     0,   234,   233,     0,   269,     0,    31,
                    454:     88,   153,   102,     0,    31,    88,   186,   102,     0,    36,
                    455:      0,     5,     0,   234,    36,     0,   234,     5,     0,    54,
                    456:      0,     0,   237,     0,   236,    36,    60,   237,     0,   236,
                    457:     36,    60,     0,   238,     0,   237,   238,     0,   237,    56,
                    458:      0,   239,    56,     0,   239,   103,     0,   132,    60,     0,
                    459:    132,    54,     0,   187,   240,     0,   190,   241,     0,   259,
                    460:    332,   198,   207,     0,    60,   169,     0,     1,     0,   187,
                    461:     88,   323,   102,   251,     0,   187,    44,   251,     0,     0,
                    462:    242,     0,   240,    55,   243,     0,     0,   245,     0,   241,
                    463:     55,   247,     0,   244,     0,   245,     0,   246,     0,   247,
                    464:      0,   255,   332,   198,   207,     0,   255,   332,   198,   207,
                    465:     58,   214,     0,     4,    60,   169,   207,     0,   259,   332,
                    466:    198,   207,     0,   259,   332,   198,   207,    58,   214,     0,
                    467:      3,    60,   169,   207,     0,    60,   169,   207,     0,   255,
                    468:    332,   198,   207,     0,   255,   332,   198,   207,    58,   214,
                    469:      0,     4,    60,   169,   207,     0,   259,   332,   198,   207,
                    470:      0,   259,   332,   198,   207,    58,   214,     0,     3,    60,
                    471:    169,   207,     0,    60,   169,   207,     0,   249,     0,   248,
                    472:     55,   249,     0,   139,     0,   139,    58,   169,     0,   312,
                    473:    273,     0,   312,     0,    88,   186,   102,    89,   153,   105,
                    474:      0,     0,   251,     7,     0,     7,     0,   252,     7,     0,
                    475:      0,   254,   153,     0,    75,   252,   255,     0,    65,   252,
                    476:    255,     0,    75,   255,     0,    65,   255,     0,   271,   251,
                    477:    255,     0,   258,     0,   266,     0,   257,     0,   267,   266,
                    478:      0,   258,    88,   161,   102,   251,     0,   258,    88,   323,
                    479:    102,   251,     0,   258,    44,   251,     0,   258,    88,     1,
                    480:    102,   251,     0,   258,    89,   253,   105,     0,   258,    89,
                    481:    105,     0,    88,   255,   102,     0,   267,   266,     0,   266,
                    482:      0,    75,   252,   259,     0,    65,   252,   259,     0,    75,
                    483:    259,     0,    65,   259,     0,   271,   251,   259,     0,   173,
                    484:      0,    75,   252,   259,     0,    65,   252,   259,     0,    75,
                    485:    260,     0,    65,   260,     0,   271,   251,   259,     0,   261,
                    486:      0,   173,    88,   161,   102,   251,     0,   173,    88,   323,
                    487:    102,   251,     0,   173,    44,   251,     0,   173,    88,     1,
                    488:    102,   251,     0,    88,   172,   102,     0,    88,   260,   102,
                    489:      0,   173,    89,   253,   105,     0,   173,    89,   105,     0,
                    490:    267,   171,     0,   267,   170,     0,   263,     0,   272,   263,
                    491:      0,   193,    88,   161,   102,     0,   193,    88,   172,   102,
                    492:      0,   193,   185,     0,     4,     0,   143,     0,   268,     0,
                    493:    267,   268,     0,     4,    51,     0,   143,    51,     0,   256,
                    494:      0,   272,   256,     0,   257,     0,   272,   256,     0,   267,
                    495:     75,     0,   272,   267,    75,     0,    51,     0,    75,   251,
                    496:    273,     0,    75,   251,     0,    65,   251,   273,     0,    65,
                    497:    251,     0,   271,   251,     0,   271,   251,   273,     0,   274,
                    498:      0,    89,   153,   105,     0,   274,    89,   253,   105,     0,
                    499:     75,   252,   275,     0,    75,   275,     0,    75,   252,     0,
                    500:     75,     0,    65,   252,   275,     0,    65,   275,     0,    65,
                    501:    252,     0,    65,     0,   271,   251,     0,   271,   251,   275,
                    502:      0,   276,     0,    88,   275,   102,     0,    85,     0,   276,
                    503:     88,   323,   102,   251,     0,   276,    44,   251,     0,   276,
                    504:     89,   253,   105,     0,   276,    89,   105,     0,    88,   324,
                    505:    102,   251,     0,   166,   251,     0,   185,   251,     0,    89,
                    506:    253,   105,     0,    89,   105,     0,   289,     0,   278,     0,
                    507:    277,   289,     0,   277,   278,     0,     1,    56,     0,     0,
                    508:      0,   281,     0,   282,     0,   281,   282,     0,    34,   213,
                    509:     56,     0,   284,     0,     1,   284,     0,    54,   279,   103,
                    510:      0,    54,   279,   280,   277,   103,     0,    54,   279,   280,
                    511:    277,     1,   103,     0,    54,   279,   280,     1,   103,     0,
                    512:      0,     0,    13,   286,   279,   155,   287,   288,     0,   284,
                    513:      0,   279,   290,     0,   284,     0,   290,     0,   183,     0,
                    514:    153,    56,     0,     0,   285,    14,   291,   288,     0,   285,
                    515:      0,     0,     0,    15,   292,   279,   155,   293,   159,     0,
                    516:      0,     0,    16,   294,   288,    15,   295,   154,    56,     0,
                    517:      0,     0,     0,   315,   296,   279,   156,    56,   297,   318,
                    518:    102,   298,   159,     0,     0,     0,     0,   316,   299,   279,
                    519:    156,    56,   300,   318,   102,   301,   159,     0,     0,    18,
                    520:    279,    88,   157,   102,   302,   288,     0,     0,    19,   169,
                    521:     60,   303,   289,     0,     0,    19,   169,    10,   169,    60,
                    522:    304,   289,     0,     0,    20,    60,   305,   289,     0,    21,
                    523:     56,     0,    22,    56,     0,    23,    56,     0,    23,   153,
                    524:     56,     0,   111,   317,    88,   180,   102,    56,     0,   111,
                    525:    317,    88,   180,    60,   319,   102,    56,     0,   111,   317,
                    526:     88,   180,    60,   319,    60,   319,   102,    56,     0,   111,
                    527:    317,    88,   180,    60,   319,    60,   319,    60,   322,   102,
                    528:     56,     0,    24,    75,   153,    56,     0,    24,   139,    56,
                    529:      0,   314,   289,     0,   314,   103,     0,    56,     0,   306,
                    530:      0,     0,     0,    90,    54,   279,   307,   309,   308,   310,
                    531:      0,   103,     0,   277,   103,     0,     1,   103,     0,     0,
                    532:      0,   310,    91,   311,   313,   284,     0,   191,     0,   252,
                    533:      0,    88,    10,   102,     0,    88,   329,   102,     0,     3,
                    534:     60,     0,    53,    60,     0,     4,    60,     0,    17,    88,
                    535:     56,     0,    17,    88,   153,    56,     0,    17,    88,    54,
                    536:    103,     0,    17,    88,   183,     0,    17,    88,     1,    56,
                    537:      0,    17,    88,    54,   279,   277,   103,     0,    17,    88,
                    538:     54,   279,     1,   103,     0,     0,     7,     0,     0,   153,
                    539:      0,     1,     0,     0,   320,     0,   321,     0,   320,    55,
                    540:    321,     0,     9,    88,   153,   102,     0,     9,     0,   322,
                    541:     55,     9,     0,     0,   324,     0,   186,     0,   325,     0,
                    542:    326,    10,     0,   325,    10,     0,   186,    10,     0,    10,
                    543:      0,    93,     0,   325,    93,     0,   186,    93,     0,   325,
                    544:     60,     0,   186,    60,     0,   327,     0,   329,    58,   214,
                    545:      0,   326,   328,     0,   326,   331,     0,   326,   331,    58,
                    546:    214,     0,   325,    55,     0,   186,    55,     0,   188,   184,
                    547:      0,   191,   184,     0,   193,   184,     0,   188,   275,     0,
                    548:    188,     0,   190,   259,     0,   329,     0,   329,    58,   214,
                    549:      0,   327,     0,   186,     0,     0,     0,   259,     0,     0,
                    550:     92,    88,   334,   102,     0,   186,     0,   333,     0,   334,
                    551:     55,   333,     0,     0,    75,   251,   335,     0,    65,   251,
                    552:    335,     0,   271,   251,   335,     0,    41,     0,   336,    75,
                    553:      0,   336,    76,     0,   336,    77,     0,   336,    73,     0,
                    554:    336,    74,     0,   336,    65,     0,   336,    63,     0,   336,
                    555:     64,     0,   336,    83,     0,   336,    55,     0,   336,    68,
                    556:      0,   336,    69,     0,   336,    70,     0,   336,    67,     0,
                    557:    336,    57,     0,   336,    58,     0,   336,    71,     0,   336,
                    558:     72,     0,   336,    81,     0,   336,    82,     0,   336,    62,
                    559:      0,   336,    61,     0,   336,   104,     0,   336,    59,    60,
                    560:      0,   336,    66,     0,   336,    86,     0,   336,    78,     0,
                    561:    336,    44,     0,   336,    89,   105,     0,   336,    38,     0,
                    562:    336,    37,     0,   336,    38,    89,   105,     0,   336,    37,
                    563:     89,   105,     0,   336,   312,   335,     0,   336,     1,     0
                    564: };
                    565: 
                    566: #endif
                    567: 
                    568: #if YYDEBUG != 0
                    569: static const short yyrline[] = { 0,
                    570:    292,   293,   307,   309,   310,   314,   319,   323,   325,   328,
                    571:    331,   335,   338,   340,   342,   343,   346,   348,   350,   353,
                    572:    358,   363,   366,   370,   373,   377,   387,   391,   401,   403,
                    573:    406,   411,   413,   417,   423,   423,   426,   426,   429,   429,
                    574:    444,   444,   449,   454,   471,   494,   504,   505,   508,   509,
                    575:    510,   511,   512,   515,   518,   521,   526,   531,   537,   539,
                    576:    540,   559,   560,   561,   564,   578,   591,   594,   597,   600,
                    577:    602,   604,   608,   614,   619,   624,   631,   642,   649,   651,
                    578:    653,   657,   665,   667,   669,   671,   675,   688,   711,   714,
                    579:    716,   717,   720,   726,   732,   734,   736,   738,   741,   745,
                    580:    751,   753,   754,   757,   759,   762,   764,   765,   768,   771,
                    581:    773,   775,   779,   784,   787,   789,   793,   798,   801,   805,
                    582:    808,   811,   845,   861,   864,   868,   871,   875,   877,   879,
                    583:    881,   883,   887,   889,   892,   897,   902,   907,   912,   915,
                    584:    918,   922,   941,   948,   951,   954,   956,   958,   962,   966,
                    585:    969,   971,   975,   978,   981,   990,   993,   996,   998,  1000,
                    586:   1002,  1009,  1020,  1040,  1042,  1044,  1049,  1051,  1053,  1055,
                    587:   1057,  1060,  1062,  1064,  1067,  1069,  1073,  1079,  1082,  1089,
                    588:   1092,  1094,  1102,  1111,  1117,  1123,  1125,  1127,  1140,  1142,
                    589:   1144,  1146,  1163,  1166,  1168,  1170,  1172,  1174,  1176,  1178,
                    590:   1180,  1182,  1184,  1186,  1188,  1190,  1192,  1194,  1196,  1198,
                    591:   1200,  1202,  1204,  1206,  1208,  1215,  1217,  1234,  1237,  1238,
                    592:   1239,  1242,  1244,  1247,  1249,  1250,  1252,  1256,  1258,  1259,
                    593:   1264,  1284,  1285,  1286,  1288,  1290,  1292,  1300,  1321,  1326,
                    594:   1333,  1340,  1342,  1351,  1356,  1379,  1423,  1424,  1427,  1430,
                    595:   1433,  1436,  1438,  1441,  1480,  1487,  1489,  1491,  1493,  1495,
                    596:   1497,  1512,  1527,  1538,  1550,  1557,  1606,  1608,  1612,  1614,
                    597:   1618,  1621,  1626,  1628,  1632,  1645,  1646,  1652,  1663,  1671,
                    598:   1677,  1682,  1684,  1689,  1696,  1698,  1702,  1706,  1712,  1715,
                    599:   1717,  1719,  1721,  1729,  1731,  1733,  1736,  1738,  1740,  1742,
                    600:   1747,  1753,  1755,  1766,  1769,  1771,  1774,  1789,  1792,  1794,
                    601:   1796,  1800,  1803,  1811,  1812,  1813,  1814,  1818,  1822,  1836,
                    602:   1854,  1855,  1856,  1859,  1861,  1864,  1866,  1869,  1871,  1874,
                    603:   1877,  1881,  1898,  1900,  1918,  1924,  1925,  1931,  1939,  1941,
                    604:   1950,  1958,  1960,  1971,  1974,  1978,  1981,  1985,  1990,  1993,
                    605:   1997,  2000,  2002,  2004,  2006,  2013,  2015,  2016,  2017,  2021,
                    606:   2024,  2028,  2030,  2033,  2036,  2039,  2045,  2048,  2051,  2053,
                    607:   2055,  2057,  2061,  2065,  2069,  2072,  2075,  2079,  2082,  2084,
                    608:   2088,  2139,  2154,  2156,  2159,  2161,  2165,  2166,  2168,  2170,
                    609:   2172,  2176,  2185,  2188,  2190,  2192,  2198,  2200,  2203,  2208,
                    610:   2211,  2214,  2223,  2234,  2239,  2239,  2241,  2244,  2246,  2250,
                    611:   2252,  2256,  2284,  2315,  2317,  2339,  2363,  2365,  2369,  2395,
                    612:   2404,  2466,  2469,  2476,  2487,  2496,  2500,  2513,  2516,  2518,
                    613:   2523,  2525,  2529,  2537,  2541,  2544,  2546,  2557,  2562,  2570,
                    614:   2573,  2574,  2585,  2588,  2589,  2600,  2602,  2605,  2607,  2610,
                    615:   2615,  2619,  2625,  2630,  2634,  2638,  2644,  2648,  2651,  2656,
                    616:   2660,  2663,  2666,  2675,  2677,  2681,  2684,  2689,  2692,  2696,
                    617:   2705,  2708,  2712,  2715,  2723,  2725,  2730,  2733,  2735,  2737,
                    618:   2739,  2743,  2746,  2760,  2763,  2768,  2771,  2773,  2775,  2777,
                    619:   2779,  2781,  2783,  2787,  2793,  2796,  2798,  2800,  2802,  2806,
                    620:   2809,  2812,  2814,  2816,  2818,  2822,  2825,  2828,  2830,  2832,
                    621:   2834,  2836,  2838,  2840,  2844,  2850,  2856,  2858,  2862,  2865,
                    622:   2867,  2871,  2873,  2876,  2878,  2884,  2887,  2901,  2903,  2907,
                    623:   2909,  2913,  2916,  2922,  2928,  2931,  2933,  2935,  2937,  2941,
                    624:   2945,  2949,  2952,  2957,  2960,  2962,  2964,  2966,  2968,  2970,
                    625:   2972,  2974,  2978,  2982,  2986,  2990,  2991,  2993,  2995,  2997,
                    626:   2999,  3001,  3003,  3005,  3007,  3015,  3017,  3018,  3019,  3022,
                    627:   3029,  3039,  3041,  3046,  3048,  3051,  3065,  3068,  3071,  3075,
                    628:   3079,  3083,  3089,  3092,  3096,  3098,  3101,  3107,  3110,  3113,
                    629:   3116,  3129,  3132,  3137,  3143,  3148,  3151,  3156,  3160,  3163,
                    630:   3169,  3174,  3177,  3182,  3191,  3195,  3198,  3204,  3214,  3221,
                    631:   3227,  3252,  3252,  3284,  3284,  3300,  3300,  3304,  3308,  3311,
                    632:   3316,  3323,  3332,  3341,  3350,  3353,  3359,  3361,  3365,  3367,
                    633:   3370,  3374,  3377,  3380,  3388,  3392,  3398,  3400,  3402,  3406,
                    634:   3408,  3411,  3424,  3429,  3437,  3439,  3443,  3446,  3448,  3452,
                    635:   3455,  3457,  3459,  3465,  3469,  3473,  3476,  3477,  3483,  3485,
                    636:   3488,  3490,  3494,  3499,  3502,  3512,  3519,  3520,  3527,  3533,
                    637:   3538,  3542,  3547,  3554,  3558,  3562,  3567,  3578,  3592,  3595,
                    638:   3597,  3599,  3601,  3605,  3607,  3615,  3632,  3634,  3636,  3638,
                    639:   3640,  3644,  3647,  3651,  3653,  3656,  3678,  3684,  3691,  3694,
                    640:   3698,  3703,  3705,  3712,  3715,  3717,  3719,  3725,  3729,  3732,
                    641:   3734,  3736,  3738,  3740,  3742,  3744,  3746,  3748,  3750,  3752,
                    642:   3754,  3756,  3758,  3760,  3762,  3764,  3766,  3768,  3770,  3772,
                    643:   3774,  3776,  3778,  3780,  3782,  3784,  3786,  3788,  3790,  3792,
                    644:   3794,  3797,  3799
                    645: };
                    646: 
                    647: static const char * const yytname[] = {   "$","error","$illegal.","IDENTIFIER",
                    648: "TYPENAME","SCSPEC","TYPESPEC","TYPE_QUAL","CONSTANT","STRING","ELLIPSIS","SIZEOF",
                    649: "ENUM","IF","ELSE","WHILE","DO","FOR","SWITCH","CASE","DEFAULT","BREAK","CONTINUE",
                    650: "RETURN","GOTO","ASM_KEYWORD","GCC_ASM_KEYWORD","TYPEOF","ALIGNOF","HEADOF",
                    651: "CLASSOF","SIGOF","ATTRIBUTE","EXTENSION","LABEL","AGGR","VISSPEC","DELETE",
                    652: "NEW","OVERLOAD","THIS","OPERATOR","CXX_TRUE","CXX_FALSE","LEFT_RIGHT","TEMPLATE",
                    653: "TYPEID","DYNAMIC_CAST","STATIC_CAST","REINTERPRET_CAST","CONST_CAST","SCOPE",
                    654: "EMPTY","PTYPENAME","'{'","','","';'","ASSIGN","'='","'?'","':'","OROR","ANDAND",
                    655: "'|'","'^'","'&'","MIN_MAX","EQCOMPARE","ARITHCOMPARE","'<'","'>'","LSHIFT",
                    656: "RSHIFT","'+'","'-'","'*'","'/'","'%'","POINTSAT_STAR","DOT_STAR","UNARY","PLUSPLUS",
                    657: "MINUSMINUS","'~'","HYPERUNARY","PAREN_STAR_PAREN","POINTSAT","'.'","'('","'['",
                    658: "TRY","CATCH","THROW","TYPENAME_ELLIPSIS","PRE_PARSED_FUNCTION_DECL","EXTERN_LANG_STRING",
                    659: "ALL","PRE_PARSED_CLASS_DECL","TYPENAME_DEFN","IDENTIFIER_DEFN","PTYPENAME_DEFN",
                    660: "END_OF_SAVED_INPUT","')'","'}'","'!'","']'","program","extdefs","@1",".hush_warning",
                    661: ".warning_ok","asm_keyword","lang_extdef","@2","extdef","extern_lang_string",
                    662: "template_header","@3","template_parm_list","template_type_parm","template_parm",
                    663: "overloaddef","ov_identifiers","template_def","@4","@5","@6","@7","fn_tmpl_end",
                    664: "datadef","fndef","fn.def1","fn.def2","return_id","return_init","base_init",
                    665: ".set_base_init","member_init_list","member_init","identifier","notype_identifier",
                    666: "identifier_defn","explicit_instantiation","template_type","template_type_name",
                    667: "tmpl.2","template_arg_list","template_arg","template_instantiate_once","@8",
                    668: "template_instantiation","template_instantiate_some","unop","expr","paren_expr_or_null",
                    669: "paren_cond_or_null","xcond","condition","@9","already_scoped_stmt","nontrivial_exprlist",
                    670: "nonnull_exprlist","unary_expr","@10","new_placement","new_initializer","regcast_or_absdcl",
                    671: "cast_expr","sub_cast_expr","expr_no_commas","notype_unqualified_id","unqualified_id",
                    672: "expr_or_declarator","direct_notype_declarator","primary","@11","@12","new",
                    673: "delete","boolean.literal","string","nodecls","object","decl","declarator","fcast_or_absdcl",
                    674: "type_id","typed_declspecs","typed_declspecs1","reserved_declspecs","declmods",
                    675: "typed_typespecs","reserved_typespecquals","typespec","typespecqual_reserved",
                    676: "initdecls","notype_initdecls","nomods_initdecls","maybeasm","initdcl0","@13",
                    677: "initdcl","@14","notype_initdcl0","@15","nomods_initdcl0","@16","maybe_attribute",
                    678: "attributes","attribute","attribute_list","attrib","any_word","identifiers_or_typenames",
                    679: "init","initlist","structsp","@17","@18","maybecomma","maybecomma_warn","aggr",
                    680: "specialization","named_class_head_sans_basetype","named_class_head_sans_basetype_defn",
                    681: "do_xref","do_xref_defn","named_class_head","unnamed_class_head","class_head",
                    682: "maybe_base_class_list","base_class_list","base_class","base_class.1","base_class_access_list",
                    683: "left_curly","opt.component_decl_list","component_decl_list","component_decl",
                    684: "component_decl_1","components","notype_components","component_declarator0",
                    685: "component_declarator","after_type_component_declarator0","notype_component_declarator0",
                    686: "after_type_component_declarator","notype_component_declarator","enumlist","enumerator",
                    687: "new_type_id","type_quals","nonempty_type_quals","nonmomentary_expr","@19","after_type_declarator",
                    688: "qualified_type_name","nested_type","direct_after_type_declarator","notype_declarator",
                    689: "complex_notype_declarator","complex_direct_notype_declarator","qualified_id",
                    690: "notype_qualified_id","overqualified_id","functional_cast","type_name","nested_name_specifier",
                    691: "nested_name_specifier_1","complete_type_name","complex_type_name","ptr_to_mem",
                    692: "global_scope","new_declarator","direct_new_declarator","absdcl","direct_abstract_declarator",
                    693: "stmts","errstmt",".pushlevel","maybe_label_decls","label_decls","label_decl",
                    694: "compstmt_or_error","compstmt","simple_if","@20","@21","implicitly_scoped_stmt",
                    695: "stmt","simple_stmt","@22","@23","@24","@25","@26","@27","@28","@29","@30","@31",
                    696: "@32","@33","@34","@35","@36","try_block","@37","@38","ansi_try_stmts","handler_seq",
                    697: "@39","type_specifier_seq","handler_args","label_colon","forhead.1","forhead.2",
                    698: "maybe_type_qual","xexpr","asm_operands","nonnull_asm_operands","asm_operand",
                    699: "asm_clobbers","parmlist","complex_parmlist","parms","parms_comma","named_parm",
                    700: "full_parm","parm","see_typename","bad_parm","maybe_raises","ansi_raise_identifier",
                    701: "ansi_raise_identifiers","conversion_declarator","operator","operator_name",
                    702: ""
                    703: };
                    704: #endif
                    705: 
                    706: static const short yyr1[] = {     0,
                    707:    106,   106,   108,   107,   107,   109,   110,   111,   111,   113,
                    708:    112,   114,   114,   114,   114,   114,   114,   114,   114,   114,
                    709:    115,   117,   116,   118,   118,   119,   119,   120,   120,   120,
                    710:    121,   122,   122,   124,   123,   125,   123,   126,   123,   127,
                    711:    123,   123,   123,   123,   123,   123,   123,   123,   128,   128,
                    712:    128,   128,   128,   129,   129,   129,   129,   129,   129,   129,
                    713:    129,   129,   129,   129,   130,   130,   130,   130,   130,   130,
                    714:    130,   130,   131,   131,   131,   131,   132,   132,   132,   132,
                    715:    132,   133,   134,   134,   134,   134,   135,   136,   137,   137,
                    716:    137,   137,   138,   138,   138,   138,   138,   138,   138,   138,
                    717:    139,   139,   139,   140,   140,   141,   141,   141,   142,   142,
                    718:    142,   142,   143,   144,   144,   144,   145,   146,   146,   147,
                    719:    147,   149,   148,   150,   150,   151,   151,   152,   152,   152,
                    720:    152,   152,   153,   153,   154,   154,   155,   155,   156,   156,
                    721:    156,   158,   157,   157,   159,   159,   159,   159,   160,   160,
                    722:    160,   160,   161,   161,   162,   163,   162,   162,   162,   162,
                    723:    162,   162,   162,   162,   162,   162,   162,   162,   162,   162,
                    724:    162,   162,   162,   162,   162,   162,   162,   164,   164,   165,
                    725:    165,   165,   165,   166,   166,   167,   167,   167,   168,   168,
                    726:    168,   168,   169,   169,   169,   169,   169,   169,   169,   169,
                    727:    169,   169,   169,   169,   169,   169,   169,   169,   169,   169,
                    728:    169,   169,   169,   169,   169,   169,   169,   170,   170,   170,
                    729:    170,   171,   171,   172,   172,   172,   172,   173,   173,   173,
                    730:    174,   174,   174,   174,   174,   174,   175,   174,   176,   174,
                    731:    174,   174,   174,   174,   174,   174,   174,   174,   174,   174,
                    732:    174,   174,   174,   174,   174,   174,   174,   174,   174,   174,
                    733:    174,   174,   174,   174,   174,   174,   177,   177,   178,   178,
                    734:    179,   179,   180,   180,   181,   182,   182,   183,   183,   183,
                    735:    183,   183,   183,   183,   184,   184,   185,   185,   186,   186,
                    736:    186,   186,   186,   187,   187,   188,   188,   188,   188,   188,
                    737:    189,   189,   189,   190,   190,   190,   190,   191,   191,   191,
                    738:    191,   192,   192,   193,   193,   193,   193,   193,   193,   193,
                    739:    194,   194,   194,   195,   195,   196,   196,   197,   197,   198,
                    740:    198,   200,   199,   199,   202,   201,   201,   204,   203,   203,
                    741:    206,   205,   205,   207,   207,   208,   208,   209,   210,   210,
                    742:    211,   211,   211,   211,   211,   212,   212,   212,   212,   213,
                    743:    213,   214,   214,   214,   214,   214,   215,   215,   215,   215,
                    744:    215,   215,   217,   216,   216,   218,   216,   216,   216,   216,
                    745:    216,   216,   219,   219,   220,   220,   221,   221,   221,   221,
                    746:    221,   222,   223,   223,   223,   223,   223,   223,   224,   225,
                    747:    226,   227,   227,   228,   229,   229,   230,   230,   230,   231,
                    748:    231,   232,   232,   233,   233,   233,   234,   234,   234,   234,
                    749:    235,   236,   236,   236,   236,   237,   237,   237,   238,   238,
                    750:    238,   238,   239,   239,   239,   239,   239,   239,   239,   240,
                    751:    240,   240,   241,   241,   241,   242,   242,   243,   243,   244,
                    752:    244,   244,   245,   245,   245,   245,   246,   246,   246,   247,
                    753:    247,   247,   247,   248,   248,   249,   249,   250,   250,   250,
                    754:    251,   251,   252,   252,   254,   253,   255,   255,   255,   255,
                    755:    255,   255,   256,   256,   257,   258,   258,   258,   258,   258,
                    756:    258,   258,   258,   258,   259,   259,   259,   259,   259,   259,
                    757:    260,   260,   260,   260,   260,   260,   261,   261,   261,   261,
                    758:    261,   261,   261,   261,   262,   263,   264,   264,   265,   265,
                    759:    265,   266,   266,   267,   267,   268,   268,   269,   269,   270,
                    760:    270,   271,   271,   272,   273,   273,   273,   273,   273,   273,
                    761:    273,   274,   274,   275,   275,   275,   275,   275,   275,   275,
                    762:    275,   275,   275,   275,   276,   276,   276,   276,   276,   276,
                    763:    276,   276,   276,   276,   276,   277,   277,   277,   277,   278,
                    764:    279,   280,   280,   281,   281,   282,   283,   283,   284,   284,
                    765:    284,   284,   286,   287,   285,   288,   288,   289,   289,   290,
                    766:    290,   291,   290,   290,   292,   293,   290,   294,   295,   290,
                    767:    296,   297,   298,   290,   299,   300,   301,   290,   302,   290,
                    768:    303,   290,   304,   290,   305,   290,   290,   290,   290,   290,
                    769:    290,   290,   290,   290,   290,   290,   290,   290,   290,   290,
                    770:    307,   308,   306,   309,   309,   309,   310,   311,   310,   312,
                    771:    312,   313,   313,   314,   314,   314,   315,   315,   315,   316,
                    772:    316,   316,   316,   317,   317,   318,   318,   318,   319,   319,
                    773:    320,   320,   321,   322,   322,   323,   323,   323,   324,   324,
                    774:    324,   324,   324,   324,   324,   324,   324,   324,   325,   325,
                    775:    325,   325,   325,   326,   326,   327,   327,   327,   327,   327,
                    776:    327,   328,   328,   329,   329,   330,   331,   331,   332,   332,
                    777:    333,   334,   334,   335,   335,   335,   335,   336,   337,   337,
                    778:    337,   337,   337,   337,   337,   337,   337,   337,   337,   337,
                    779:    337,   337,   337,   337,   337,   337,   337,   337,   337,   337,
                    780:    337,   337,   337,   337,   337,   337,   337,   337,   337,   337,
                    781:    337,   337,   337
                    782: };
                    783: 
                    784: static const short yyr2[] = {     0,
                    785:      0,     1,     0,     2,     2,     0,     0,     1,     1,     0,
                    786:      2,     1,     1,     1,     1,     5,     4,     3,     4,     4,
                    787:      1,     0,     5,     1,     3,     1,     2,     1,     3,     1,
                    788:      3,     1,     3,     0,     5,     0,     5,     0,     5,     0,
                    789:      5,     3,     3,     6,     7,     4,     3,     3,     1,     1,
                    790:      1,     1,     1,     2,     3,     3,     3,     3,     2,     2,
                    791:      2,     2,     2,     1,     3,     4,     3,     5,     4,     3,
                    792:      3,     2,     3,     3,     2,     1,     6,     4,     3,     3,
                    793:      2,     2,     1,     3,     4,     2,     3,     0,     0,     1,
                    794:      3,     2,     3,     1,     4,     2,     4,     2,     4,     2,
                    795:      1,     1,     1,     1,     1,     1,     1,     1,     3,     3,
                    796:      4,     4,     3,     4,     3,     4,     0,     1,     3,     1,
                    797:      1,     0,     6,     0,     1,     0,     2,     1,     1,     1,
                    798:      1,     1,     1,     1,     1,     3,     1,     3,     0,     1,
                    799:      1,     0,     8,     1,     2,     4,     4,     1,     3,     3,
                    800:      3,     3,     1,     1,     1,     0,     3,     2,     2,     2,
                    801:      2,     2,     2,     4,     2,     4,     2,     3,     3,     4,
                    802:      4,     5,     5,     6,     2,     4,     5,     3,     3,     3,
                    803:      1,     3,     2,     3,     4,     1,     2,     5,     1,     4,
                    804:      4,     4,     1,     3,     3,     3,     3,     3,     3,     3,
                    805:      3,     3,     3,     3,     3,     3,     3,     3,     3,     3,
                    806:      3,     3,     5,     3,     3,     1,     2,     3,     1,     1,
                    807:      1,     1,     1,     1,     1,     2,     2,     1,     1,     1,
                    808:      1,     1,     1,     1,     3,     3,     0,     4,     0,     6,
                    809:      2,     4,     2,     2,     1,     4,     1,     7,     7,     7,
                    810:      7,     4,     4,     2,     2,     1,     4,     2,     2,     2,
                    811:      5,     3,     5,     3,     4,     6,     1,     2,     1,     2,
                    812:      1,     1,     1,     2,     0,     2,     2,     3,     3,     3,
                    813:      3,     3,     2,     2,     1,     1,     1,     2,     2,     2,
                    814:      2,     1,     1,     1,     1,     2,     2,     3,     3,     4,
                    815:      1,     2,     2,     1,     1,     2,     2,     1,     2,     2,
                    816:      3,     1,     2,     1,     1,     1,     4,     4,     4,     4,
                    817:      1,     1,     1,     1,     3,     1,     3,     1,     3,     0,
                    818:      4,     0,     7,     4,     0,     7,     4,     0,     7,     4,
                    819:      0,     7,     4,     0,     1,     1,     2,     6,     1,     3,
                    820:      0,     1,     4,     6,     4,     1,     1,     1,     1,     1,
                    821:      3,     1,     2,     3,     4,     1,     1,     3,     4,     6,
                    822:      3,     5,     0,     7,     4,     0,     6,     3,     2,     2,
                    823:      4,     1,     0,     1,     0,     1,     1,     2,     2,     2,
                    824:      2,     3,     2,     2,     2,     3,     3,     1,     2,     0,
                    825:      0,     3,     3,     2,     1,     1,     0,     1,     2,     1,
                    826:      3,     1,     2,     1,     4,     4,     1,     1,     2,     2,
                    827:      1,     0,     1,     4,     3,     1,     2,     2,     2,     2,
                    828:      2,     2,     2,     2,     4,     2,     1,     5,     3,     0,
                    829:      1,     3,     0,     1,     3,     1,     1,     1,     1,     4,
                    830:      6,     4,     4,     6,     4,     3,     4,     6,     4,     4,
                    831:      6,     4,     3,     1,     3,     1,     3,     2,     1,     6,
                    832:      0,     2,     1,     2,     0,     2,     3,     3,     2,     2,
                    833:      3,     1,     1,     1,     2,     5,     5,     3,     5,     4,
                    834:      3,     3,     2,     1,     3,     3,     2,     2,     3,     1,
                    835:      3,     3,     2,     2,     3,     1,     5,     5,     3,     5,
                    836:      3,     3,     4,     3,     2,     2,     1,     2,     4,     4,
                    837:      2,     1,     1,     1,     2,     2,     2,     1,     2,     1,
                    838:      2,     2,     3,     1,     3,     2,     3,     2,     2,     3,
                    839:      1,     3,     4,     3,     2,     2,     1,     3,     2,     2,
                    840:      1,     2,     3,     1,     3,     1,     5,     3,     4,     3,
                    841:      4,     2,     2,     3,     2,     1,     1,     2,     2,     2,
                    842:      0,     0,     1,     1,     2,     3,     1,     2,     3,     5,
                    843:      6,     5,     0,     0,     6,     1,     2,     1,     1,     1,
                    844:      2,     0,     4,     1,     0,     0,     6,     0,     0,     7,
                    845:      0,     0,     0,    10,     0,     0,     0,    10,     0,     7,
                    846:      0,     5,     0,     7,     0,     4,     2,     2,     2,     3,
                    847:      6,     8,    10,    12,     4,     3,     2,     2,     1,     1,
                    848:      0,     0,     7,     1,     2,     2,     0,     0,     5,     1,
                    849:      1,     3,     3,     2,     2,     2,     3,     4,     4,     3,
                    850:      4,     6,     6,     0,     1,     0,     1,     1,     0,     1,
                    851:      1,     3,     4,     1,     3,     0,     1,     1,     1,     2,
                    852:      2,     2,     1,     1,     2,     2,     2,     2,     1,     3,
                    853:      2,     2,     4,     2,     2,     2,     2,     2,     2,     1,
                    854:      2,     1,     3,     1,     1,     0,     0,     1,     0,     4,
                    855:      1,     1,     3,     0,     3,     3,     3,     1,     2,     2,
                    856:      2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
                    857:      2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
                    858:      2,     3,     2,     2,     2,     2,     3,     2,     2,     4,
                    859:      4,     3,     2
                    860: };
                    861: 
                    862: static const short yydefact[] = {     3,
                    863:     10,    10,     5,     0,     4,     0,   220,   522,   305,   315,
                    864:    473,     0,     8,     9,     0,     0,   387,     0,   708,     0,
                    865:    534,   221,    64,     0,     0,   696,     0,    76,    21,     0,
                    866:     11,     6,     0,    15,    14,    13,    12,   275,     0,   523,
                    867:    117,   229,   500,     0,   295,     0,   294,   308,     0,   328,
                    868:    314,     0,   398,   400,   401,   406,   405,   382,   304,   528,
                    869:    484,     0,   228,   230,   483,     0,   524,   316,   471,     0,
                    870:      0,   219,    62,    63,   526,     0,     0,   101,   102,   103,
                    871:    376,   379,     0,   530,     0,   380,     0,     0,     0,    32,
                    872:      0,   305,     0,    22,     0,     0,   398,     0,     0,     0,
                    873:      0,   498,     0,     0,     0,   497,     0,     0,     0,   229,
                    874:      0,     0,     0,   228,   230,   471,     0,     3,     0,     0,
                    875:      0,     0,   400,   401,   699,     0,    88,    83,   275,     0,
                    876:      0,    60,   527,   124,   471,     0,   475,    61,     0,     0,
                    877:      0,     0,     0,   324,   285,   482,   286,   494,     0,   471,
                    878:    307,   306,    59,   296,     0,   326,     0,   301,   321,   322,
                    879:    297,   310,   312,   323,     0,    54,   388,   389,   390,   391,
                    880:    404,   107,   106,   108,   393,   399,   395,   117,   394,   407,
                    881:    407,   421,     0,   474,   309,    72,     0,    75,   532,   516,
                    882:    485,   525,     0,   529,     0,   743,   739,   738,   736,   718,
                    883:    723,   724,     0,   730,   729,   715,   716,   714,   733,   722,
                    884:    719,   720,   721,   725,   726,   712,   713,   709,   710,   711,
                    885:    735,   727,   728,   717,   734,     0,   731,   640,   308,   641,
                    886:    704,   473,   232,   273,     0,     0,     0,     0,   156,   269,
                    887:    267,   245,   271,   272,     0,     0,     0,     0,     0,     0,
                    888:      0,   129,   128,     0,   130,   131,     0,     0,   216,   132,
                    889:      0,   118,     0,   189,     0,   193,   186,   121,   231,   155,
                    890:      0,     0,   233,   234,     0,   120,   292,   308,   293,   517,
                    891:    256,   247,     0,     0,     0,   398,   378,     0,   373,   531,
                    892:      0,   133,   134,     0,     0,     0,     0,    31,     0,   110,
                    893:    407,   125,   109,   115,     0,   496,     0,   495,   102,   103,
                    894:    218,   227,     0,   504,   226,     0,   503,   511,   512,     0,
                    895:      0,    18,    10,     0,     7,     7,    48,    47,   699,     0,
                    896:     34,    42,    38,    36,    43,    40,   330,    82,    89,    86,
                    897:      0,     0,   275,     0,     0,     0,   571,    65,   577,    67,
                    898:    113,   509,     0,   673,   674,   154,     0,   153,   668,   690,
                    899:      0,   292,   308,   293,     0,   667,   669,   697,   679,     0,
                    900:    514,     0,     0,     0,   480,     0,   479,     0,     0,     0,
                    901:    471,    70,    58,    73,     0,    57,   471,     0,   475,   493,
                    902:      0,   298,   299,     0,    55,    71,    56,    74,   303,   302,
                    903:    313,   699,   329,   396,   392,   397,   408,   402,   403,   437,
                    904:      0,     0,   440,   443,     0,     0,   426,     0,   699,   311,
                    905:      0,     0,   344,   472,   499,   533,     0,     0,   732,   737,
                    906:    471,   471,     0,   471,   742,     0,     0,     0,   163,     0,
                    907:      0,   165,     0,     0,     0,     0,     0,     0,     0,     0,
                    908:    162,   159,   158,   160,     0,     0,     0,     0,   217,     0,
                    909:    116,   161,     0,     0,   187,     0,     0,     0,     0,     0,
                    910:      0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
                    911:      0,     0,     0,     0,     0,     0,     0,   241,   243,   244,
                    912:    277,   276,     0,     0,     0,     0,     0,   167,   469,     0,
                    913:    175,   274,   223,     0,   696,   222,   259,   260,     0,   287,
                    914:    551,   547,   556,     0,   475,   471,   471,   471,   289,   554,
                    915:      0,   521,   291,     0,   290,   258,     0,   254,   268,   270,
                    916:    518,     0,   255,   112,   111,   466,   385,   464,   375,     0,
                    917:    317,     0,     0,   318,   319,   320,    33,     0,    28,    24,
                    918:    695,   308,    26,   694,    30,   692,   122,   114,   502,   501,
                    919:    505,     0,    17,    20,    19,   330,    53,    49,    51,    52,
                    920:     50,    46,     0,     0,     0,     0,   344,   104,    94,   105,
                    921:      0,    87,    90,     0,     0,     0,   366,     0,   362,    84,
                    922:      0,     0,    66,    69,   578,   572,   471,   471,   672,   685,
                    923:    678,   676,   551,   547,     0,   686,   471,   689,   691,   687,
                    924:      0,   688,   471,   671,   684,   677,   675,   670,   698,   681,
                    925:    682,     0,   513,   476,   478,   477,     0,     0,   492,     0,
                    926:    344,   325,   488,     0,     0,     0,   491,     0,   481,   300,
                    927:    327,   344,   330,   418,     0,   417,   409,   410,   412,     0,
                    928:    414,   436,   432,   431,   220,   522,   471,     0,   666,   699,
                    929:    433,   441,   446,   447,   699,   699,   434,   444,   699,     0,
                    930:    381,   428,   427,   429,   430,   330,   701,   308,   702,     0,
                    931:      0,     0,   343,   345,   346,   741,   740,   704,   704,   704,
                    932:      0,     0,     0,   521,     0,     0,   522,     0,   157,     0,
                    933:      0,     0,     0,     0,     0,   236,   235,     0,   184,   119,
                    934:    220,   522,   221,     0,     0,   367,   383,     0,   215,   214,
                    935:    658,   657,     0,   212,   211,   209,   210,   208,   207,   206,
                    936:    203,   204,   205,   201,   202,   196,   197,   198,   199,   200,
                    937:    194,   195,     0,     0,     0,     0,     0,     0,   169,   181,
                    938:      0,     0,   168,   471,   471,     0,   471,   468,   541,     0,
                    939:      0,     0,     0,   262,     0,   264,     0,   515,   550,   549,
                    940:    546,   545,   695,     0,     0,   565,     0,     0,   562,   288,
                    941:    563,   552,   471,   666,   475,   551,   547,     0,     0,   471,
                    942:    231,     0,   517,     0,     0,     0,   386,     0,   385,   152,
                    943:    151,   150,   149,     0,    23,     0,   393,     0,     0,    16,
                    944:    344,    35,    39,    37,    41,     0,     0,    92,     0,    96,
                    945:      0,   100,     0,    98,     0,   363,     0,    85,    68,     0,
                    946:    579,     0,   573,   574,   510,   507,   550,   546,   551,   547,
                    947:    483,     0,   471,   552,   551,   547,     0,   231,     0,   517,
                    948:    508,     0,   680,   334,   471,   471,   471,   490,   340,   344,
                    949:      0,     0,   420,   419,   413,     0,     0,   439,   344,     0,
                    950:     79,     0,   330,   330,     0,   330,     0,   344,     0,   700,
                    951:      0,     0,   341,   347,   706,   705,   707,   246,   164,     0,
                    952:      0,   166,   190,   192,   191,   252,   253,     0,     0,     0,
                    953:      0,   238,     0,     0,     0,     0,   185,     0,   239,   242,
                    954:    179,   178,   171,     0,   170,   183,     0,     0,   538,   536,
                    955:      0,   539,   475,   176,     0,     0,   265,     0,     0,   548,
                    956:    544,   555,   471,   564,   553,   558,     0,   560,     0,   551,
                    957:    547,   519,   520,     0,   257,   467,   465,   377,     0,    25,
                    958:     29,   693,     0,     0,    44,    93,    91,     0,     0,     0,
                    959:      0,   364,   360,     0,     0,   220,   522,   583,   595,   598,
                    960:      0,   571,     0,     0,     0,     0,     0,     0,   221,   629,
                    961:      0,   654,     0,   590,     0,     0,   308,     0,   567,   588,
                    962:    594,   566,   589,   630,     0,   601,   605,   575,   550,   546,
                    963:    485,   552,   520,   683,   332,   489,   486,   487,   338,   337,
                    964:      0,     0,   411,   344,   344,    78,   456,   471,   220,   522,
                    965:      0,   442,   448,   449,   699,   699,   344,   344,   445,     0,
                    966:    435,   703,   331,   351,     0,     0,     0,     0,     0,     0,
                    967:    371,     0,     0,   368,   188,   213,   126,     0,   172,   173,
                    968:    180,   182,   537,   535,   542,   540,     0,   177,     0,   261,
                    969:    263,   561,   471,   559,   374,     0,    45,    95,    99,    97,
                    970:    365,     0,   576,   570,   582,   644,   646,   571,   571,   571,
                    971:      0,     0,     0,   615,   617,   618,   619,     0,     0,     0,
                    972:    645,   571,   655,     0,   591,   283,   699,     0,   284,     0,
                    973:    699,     0,   699,     0,     0,   580,   569,   568,   592,   628,
                    974:    627,   571,   571,     0,     0,   335,   415,   416,   455,   452,
                    975:    438,     0,     0,   344,   330,   330,   450,   453,   357,   358,
                    976:    359,   356,     0,   349,   352,   342,     0,     0,     0,     0,
                    977:    369,     0,     0,   126,   240,     0,   174,   543,   266,   557,
                    978:    123,   361,     0,     0,     0,   586,     0,     0,   571,   647,
                    979:      0,   650,     0,     0,   611,     0,   620,     0,   626,   631,
                    980:      0,   279,   330,   281,   282,   330,     0,     0,     0,   278,
                    981:    280,   581,   571,     0,     0,   333,   339,     0,    77,   344,
                    982:    344,   463,   344,   344,     0,     0,   351,     0,     0,   248,
                    983:    249,   250,   251,     0,   372,   127,   470,   137,     0,   584,
                    984:    596,   587,   599,   651,   649,     0,   648,   144,     0,   308,
                    985:      0,     0,     0,   616,   625,     0,     0,   593,   141,     0,
                    986:    140,     0,   336,   462,   459,   457,   460,   451,   454,   350,
                    987:    348,   220,     0,   370,     0,   571,     0,     0,     0,     0,
                    988:    609,   699,   613,   612,     0,   634,     0,   632,   659,     0,
                    989:    602,   606,     0,     0,     0,   353,   355,   138,   585,   572,
                    990:    597,   148,   135,     0,     0,   653,     0,   652,   571,   330,
                    991:      0,   636,   635,   637,     0,     0,   660,   661,   621,     0,
                    992:      0,   458,   461,     0,   145,     0,     0,   600,   610,   344,
                    993:    614,   633,     0,   659,     0,     0,     0,     0,   354,     0,
                    994:      0,   136,     0,   638,     0,     0,   622,   662,   603,   607,
                    995:    147,   146,   142,     0,   663,     0,     0,     0,     0,     0,
                    996:      0,     0,   664,     0,   623,   604,   608,   143,     0,     0,
                    997:    639,     0,     0,   642,   643,   665,   624,     0,     0,     0
                    998: };
                    999: 
                   1000: static const short yydefgoto[] = {  1348,
                   1001:      1,     2,   119,   564,   982,     3,     4,    31,    32,    33,
                   1002:    299,   548,   549,   550,    34,    91,    35,   573,   575,   574,
                   1003:    576,   572,    36,    37,    38,   412,   128,   129,   130,   339,
                   1004:    582,   583,   536,   584,   176,    39,    40,    41,   134,   261,
                   1005:    262,   302,   809,   303,  1145,   263,   983,  1275,  1210,  1230,
                   1006:   1231,  1330,  1271,   292,   789,   264,   445,   497,   753,   265,
                   1007:    266,   267,   293,   269,   507,   312,    43,   270,   457,  1047,
                   1008:    271,   272,   273,   274,   131,   275,   984,   402,   517,   773,
                   1009:    985,    45,   161,   986,    47,   162,   440,   163,   143,   155,
                   1010:     49,   631,   144,  1114,   403,  1188,   156,  1115,    50,  1035,
                   1011:    683,   684,   685,  1133,  1134,  1135,   964,   716,   717,    51,
                   1012:    540,   288,   906,   798,    52,    53,    54,    55,   180,   181,
                   1013:     56,    57,    58,   408,   647,   648,   649,   650,   183,   415,
                   1014:    416,   417,   418,   661,   667,   662,  1022,   663,   664,  1023,
                   1015:   1024,   537,   538,   498,   779,    59,   372,   373,   145,    60,
                   1016:     61,   146,   147,   113,    63,   508,   280,   281,   282,    65,
                   1017:    283,    67,    68,   179,    69,   284,   758,   759,   770,   520,
                   1018:    988,   989,  1155,   832,   833,   834,   348,   990,   991,  1078,
                   1019:   1246,  1157,   992,   993,  1183,  1079,  1247,  1080,  1248,  1112,
                   1020:   1290,  1328,  1113,  1291,  1329,  1279,  1223,  1281,  1166,   994,
                   1021:   1226,  1284,  1258,  1302,  1324,  1221,  1332,   995,   996,   997,
                   1022:   1094,   723,  1286,  1287,  1288,  1334,   365,   775,   367,   368,
                   1023:    369,   555,   370,   107,   621,  1173,   679,   680,   435,    71,
                   1024:     72
                   1025: };
                   1026: 
                   1027: static const short yypact[] = {   203,
                   1028:    236,-32768,-32768,  1874,-32768,    85,-32768,    55,   300,-32768,
                   1029: -32768,   590,-32768,-32768,   -23,   252,-32768,   365,-32768,  1493,
                   1030: -32768,   355,-32768,   963,   963,-32768,  2214,-32768,-32768,   349,
                   1031: -32768,   429,  3939,-32768,-32768,-32768,-32768,   279,   435,   443,
                   1032: -32768,-32768,   396,  1052,-32768,  9215,-32768,   704,    30,-32768,
                   1033: -32768,   698,-32768,-32768,-32768,-32768,-32768,   488,  1610,-32768,
                   1034: -32768,   410,-32768,-32768,-32768,   397,-32768,-32768,-32768,    89,
                   1035:   6309,-32768,-32768,-32768,-32768,  8124,  2133,-32768,    55,   355,
                   1036:    461,   515,   443,-32768,    89,-32768,    89,  8124,  8124,-32768,
                   1037:    363,-32768,   355,-32768,  3239,  4205,   230,    89,  7950,    55,
                   1038:   2347,-32768,   484,   103,  2347,-32768,    92,  2356,  2356,   479,
                   1039:    501,   396,   514,   519,   540,-32768,   629,   555,  2912,   144,
                   1040:   3239,  9396,   593,   706,   572,   666,-32768,   149,   306,    57,
                   1041:     57,-32768,-32768,   575,-32768,  4662,   589,-32768,  3833,  3833,
                   1042:   3542,  1266,   393,-32768,-32768,   408,-32768,-32768,   397,-32768,
                   1043: -32768,-32768,-32768,   704,   536,-32768,  1285,-32768,-32768,-32768,
                   1044:    907,   654,-32768,-32768,  3239,-32768,-32768,-32768,-32768,-32768,
                   1045: -32768,-32768,-32768,-32768,-32768,-32768,   443,   719,-32768,   617,
                   1046:    617,-32768,  2447,-32768,   654,-32768,   608,   875,-32768,-32768,
                   1047: -32768,-32768,  4014,-32768,    56,-32768,   609,   647,-32768,-32768,
                   1048: -32768,-32768,   683,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
                   1049: -32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
                   1050: -32768,-32768,-32768,-32768,-32768,   601,-32768,-32768,   654,  1610,
                   1051:    351,   657,-32768,-32768,  3117,  9065,   660,   662,-32768,-32768,
                   1052: -32768,-32768,-32768,-32768,   665,   690,   692,   699,   703,    92,
                   1053:   8816,-32768,-32768,  8816,-32768,-32768,  8816,  6393,  9148,-32768,
                   1054:     29,-32768,  8816,-32768,  8211,-32768,-32768,  9444,-32768,  1334,
                   1055:   2712,  8294,-32768,   767,   557,-32768,   160,  2819,  9439,-32768,
                   1056:    266,-32768,   579,   809,  3239,   230,-32768,    92,   685,-32768,
                   1057:    684,   738,  9497,   693,   697,   701,   808,-32768,  2133,-32768,
                   1058:    617,-32768,-32768,-32768,   154,-32768,   139,-32768,-32768,-32768,
                   1059: -32768,-32768,  2347,-32768,-32768,  2347,-32768,-32768,-32768,  4014,
                   1060:     50,-32768,   711,  2133,-32768,-32768,-32768,-32768,   572,   766,
                   1061: -32768,-32768,-32768,-32768,-32768,-32768,   656,-32768,   254,-32768,
                   1062:   6483,  8381,-32768,    57,    57,   765,-32768,-32768,-32768,-32768,
                   1063: -32768,   818,   730,-32768,-32768,   738,   735,  9497,   328,  1775,
                   1064:   9396,  1775,  4904,  4548,   737,-32768,    72,  9289,   763,   787,
                   1065: -32768,   746,  8381,  4250,-32768,  4250,-32768,  4314,  4314,   753,
                   1066: -32768,-32768,-32768,   875,  3239,-32768,-32768,  5854,   752,-32768,
                   1067:   4433,   907,   704,  3239,-32768,-32768,-32768,   875,-32768,-32768,
                   1068: -32768,   572,-32768,-32768,-32768,-32768,  1191,-32768,-32768,-32768,
                   1069:   8381,   156,  1389,  9306,    54,  2311,-32768,   167,   572,   654,
                   1070:   2569,   771,   831,-32768,-32768,-32768,   773,   777,-32768,-32768,
                   1071: -32768,-32768,   169,-32768,-32768,  8381,   657,  6393,-32768,   381,
                   1072:   6393,-32768,  8381,  8468,  8816,  8124,  2569,  2569,  2569,  2569,
                   1073: -32768,-32768,-32768,-32768,   782,   784,   765,   793,-32768,  8124,
                   1074: -32768,-32768,  3487,  6393,-32768,  8381,  8381,  3006,  8381,  8381,
                   1075:   8381,  8381,  8381,  8381,  8381,  8381,  8381,  8381,  8381,  8381,
                   1076:   8381,  8381,  8381,  8381,  8381,  8381,  8381,-32768,-32768,-32768,
                   1077: -32768,-32768,  8381,  8381,  8381,  8124,  3398,   497,   109,  7032,
                   1078: -32768,-32768,    55,   848,   896,-32768,   387,   415,   592,-32768,
                   1079:    388,   388,-32768,  3838,   798,   817,   864,-32768,-32768,   412,
                   1080:   7507,  1099,-32768,   251,-32768,-32768,  8381,-32768,-32768,-32768,
                   1081: -32768,   597,-32768,-32768,-32768,   851,   855,-32768,-32768,    92,
                   1082: -32768,  6855,  6945,-32768,-32768,-32768,-32768,   419,   859,-32768,
                   1083: -32768,  9200,   698,-32768,-32768,   862,-32768,-32768,-32768,-32768,
                   1084: -32768,   865,-32768,-32768,-32768,   656,-32768,-32768,-32768,-32768,
                   1085: -32768,-32768,   866,   868,   869,   870,   831,-32768,-32768,   355,
                   1086:   8381,   877,-32768,   434,   438,   462,-32768,  5956,  9590,-32768,
                   1087:    836,    57,-32768,-32768,-32768,    20,-32768,-32768,-32768,-32768,
                   1088: -32768,-32768,  1506,  1506,  3333,-32768,-32768,-32768,-32768,-32768,
                   1089:   7598,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
                   1090:    887,  6483,-32768,-32768,-32768,-32768,  4250,  4250,-32768,  4433,
                   1091:    831,-32768,   818,   849,   856,   861,-32768,   863,-32768,   907,
                   1092: -32768,   831,   656,-32768,   881,-32768,   899,-32768,-32768,  1243,
                   1093: -32768,  9590,-32768,-32768,   912,   146,-32768,  8381,  2808,   572,
                   1094:    921,-32768,-32768,-32768,   368,   407,   922,-32768,   572,   920,
                   1095: -32768,-32768,-32768,-32768,-32768,   551,-32768,  4154,-32768,   187,
                   1096:    629,   897,   926,   831,-32768,-32768,-32768,   505,   505,   505,
                   1097:    885,   886,  8555,   864,   895,   900,   248,   901,-32768,   906,
                   1098:    909,   919,   942,   943,   945,-32768,-32768,   918,-32768,-32768,
                   1099:    962,   553,   136,  8381,   969,-32768,   968,   928,  9590,  9590,
                   1100: -32768,-32768,   973,  9629,  4583,  9645,  9660,  5903,  6801,  3406,
                   1101:   1324,  1324,  1324,  1664,  1664,   814,   814,   640,   640,   640,
                   1102: -32768,-32768,   932,   934,   940,   935,   946,  2569,   497,-32768,
                   1103:   6483,  8381,-32768,-32768,-32768,  8381,-32768,-32768,   955,  8816,
                   1104:    944,   964,  1008,-32768,  8381,-32768,  8381,-32768,   890,-32768,
                   1105:    890,-32768,    65,   951,   952,-32768,   953,  2569,   818,-32768,
                   1106:    818,  2046,-32768,  1065,   957,  7689,  7689,  4811,   966,  8211,
                   1107:    479,   972,   540,   809,   974,  8381,    92,   961,   855,-32768,
                   1108:   9590,-32768,  9590,  2133,-32768,   664,   520,  6483,   488,-32768,
                   1109:    831,-32768,-32768,-32768,-32768,   766,   978,-32768,   254,-32768,
                   1110:   8381,-32768,  8381,-32768,  8381,-32768,     9,-32768,-32768,    92,
                   1111: -32768,  5584,  1032,-32768,   818,   818,  2757,  2757,  3282,  3282,
                   1112: -32768,   397,-32768,  3954,  7776,  7776,  5016,   174,   979,   244,
                   1113:    818,  6483,-32768,  1030,-32768,-32768,-32768,-32768,  1037,   831,
                   1114:   8124,  1191,-32768,-32768,-32768,  8381,  8381,    74,  9521,   995,
                   1115: -32768,  2416,   656,   656,  3185,   603,  3228,   831,  2569,-32768,
                   1116:     52,  1011,-32768,-32768,-32768,-32768,-32768,-32768,-32768,  8899,
                   1117:   8899,-32768,-32768,-32768,-32768,-32768,-32768,  1013,  1014,  1019,
                   1118:   1022,-32768,  9472,  6483,  6046,  1009,-32768,  8381,-32768,-32768,
                   1119: -32768,-32768,   143,  1012,-32768,-32768,  1017,    75,   278,   278,
                   1120:   1006,   278,-32768,-32768,  8816,  1107,-32768,  1018,  1020,-32768,
                   1121: -32768,-32768,-32768,-32768,-32768,   818,  1023,-32768,  1010,  7863,
                   1122:   7863,-32768,-32768,   584,-32768,  9590,-32768,-32768,  1021,-32768,
                   1123: -32768,-32768,  2447,   766,-32768,-32768,-32768,  1024,  1026,  1036,
                   1124:   6136,-32768,-32768,   668,   231,  1061,   567,-32768,-32768,-32768,
                   1125:   1046,-32768,  8381,  1079,  1085,  1088,  8037,    73,   476,-32768,
                   1126:   1093,  1139,  1094,-32768,  1971,  9379,  2582,  3725,-32768,-32768,
                   1127:   1135,-32768,-32768,-32768,  7135,-32768,-32768,-32768,  2757,  2757,
                   1128: -32768,  3954,  1989,-32768,-32768,   818,   818,   818,-32768,  1095,
                   1129:   1053,  1054,-32768,  9521,  9521,-32768,-32768,-32768,  1103,   661,
                   1130:   8381,-32768,-32768,-32768,   572,   572,   831,   831,-32768,  2607,
                   1131: -32768,-32768,-32768,   801,  6483,  8381,  8381,  8381,  8381,  6483,
                   1132: -32768,  8381,  1104,-32768,-32768,  9611,   575,  8381,-32768,   143,
                   1133: -32768,-32768,-32768,-32768,-32768,-32768,  1062,-32768,  1122,-32768,
                   1134: -32768,   818,-32768,-32768,-32768,    66,-32768,-32768,-32768,-32768,
                   1135: -32768,    92,-32768,-32768,-32768,-32768,-32768,-32768,-32768,   765,
                   1136:   6226,  1082,  5075,-32768,-32768,-32768,-32768,  1115,  8381,  1121,
                   1137: -32768,-32768,-32768,  1090,-32768,-32768,   238,   672,-32768,   772,
                   1138:    572,  8642,   459,   774,   258,-32768,-32768,-32768,-32768,-32768,
                   1139: -32768,-32768,-32768,  6483,  6483,-32768,-32768,-32768,-32768,-32768,
                   1140:     74,  8381,  8381,  9521,   656,   656,  1124,  1126,-32768,-32768,
                   1141: -32768,-32768,   269,-32768,  1091,-32768,  1084,  1087,  1097,  1098,
                   1142: -32768,  9544,  6483,   575,-32768,  1089,-32768,-32768,-32768,   818,
                   1143: -32768,-32768,   509,   509,  7417,-32768,  1175,  1137,  1100,-32768,
                   1144:   1141,-32768,  8124,  8381,-32768,  7237,-32768,  1146,-32768,-32768,
                   1145:    629,-32768,   656,-32768,-32768,   656,  8982,  8982,  6573,-32768,
                   1146: -32768,-32768,   765,  6663,  6663,-32768,-32768,  6483,-32768,  9521,
                   1147:   9521,-32768,   831,   831,  6483,  6483,   801,  1102,  8729,-32768,
                   1148: -32768,-32768,-32768,  6483,-32768,-32768,-32768,-32768,  8124,-32768,
                   1149: -32768,-32768,-32768,-32768,-32768,  5674,-32768,-32768,  1109,   234,
                   1150:   3239,  9567,  7237,-32768,-32768,  5168,    48,-32768,-32768,  1149,
                   1151: -32768,  1150,-32768,-32768,-32768,  1160,  1163,-32768,-32768,-32768,
                   1152: -32768,   282,  1123,-32768,  1127,   765,  7327,   518,   295,  5272,
                   1153: -32768,   572,-32768,-32768,   296,-32768,  5376,-32768,  1214,  1168,
                   1154: -32768,-32768,  6483,  6483,  8381,-32768,-32768,-32768,-32768,    37,
                   1155: -32768,-32768,-32768,  8381,  1176,-32768,  1177,-32768,   765,   656,
                   1156:   7237,-32768,-32768,-32768,  1147,   201,  1181,-32768,-32768,  6753,
                   1157:   6753,-32768,-32768,  1143,-32768,  5764,  1148,-32768,-32768,   831,
                   1158: -32768,  1158,  8381,  1214,  1183,  1214,  1151,  1152,-32768,   317,
                   1159:   5480,-32768,  1198,-32768,  1156,   246,-32768,-32768,-32768,-32768,
                   1160: -32768,-32768,-32768,  1153,-32768,  1254,  1208,  7327,  7327,  6483,
                   1161:   1355,   765,-32768,   353,-32768,-32768,-32768,-32768,  1167,  1170,
                   1162: -32768,  1271,  1219,-32768,-32768,-32768,-32768,  1281,  1282,-32768
                   1163: };
                   1164: 
                   1165: static const short yypgoto[] = {-32768,
                   1166:   1165,-32768,-32768,   958,     7,  1283,-32768,-32768,-32768,-32768,
                   1167: -32768,-32768,-32768,   486,-32768,-32768,-32768,-32768,-32768,-32768,
                   1168: -32768,  -773,  1169,  1174,-32768,-32768,-32768,-32768,  1166,-32768,
                   1169: -32768,   478,   126,-32768,-32768,-32768,  4325,   -30,-32768,  1204,
                   1170:    844,  -998,-32768,   -96,   162,-32768,   171,-32768,   153,   124,
                   1171:   -980,-32768,  -480,   242,   564,   630,-32768,-32768,  -722,  3685,
                   1172:   1316,  -262,  2309,  2833,   804,   159,   431,-32768,-32768,-32768,
                   1173: -32768,  -278,-32768,  -110,   -90,-32768,   233,    34,  -210,    83,
                   1174:     11,   -91,  -121,    -3,  1446,   -82,  1348,  -127,  -674,   329,
                   1175: -32768,  -186,-32768,-32768,   180,-32768,-32768,-32768,-32768,-32768,
                   1176:   1092,-32768,   634,-32768,   122,-32768,-32768,   821,   742,    14,
                   1177: -32768,-32768,-32768,   526,  -285,    12,  1299,  1300,-32768,-32768,
                   1178: -32768,-32768,-32768,  -131,-32768,   473,   686,-32768,   533,   394,
                   1179:    469,  -411,-32768,-32768,-32768,-32768,-32768,-32768,   939,-32768,
                   1180:    482,   829,   573,   857,  1683,  1544,  -371,-32768,  1375,     0,
                   1181:      1,-32768,  4129,   -99,   646,-32768,  3274,-32768,-32768,  3935,
                   1182:     -4,   198,  -327,  1336,  3574,   852,  -188,-32768,  1912,-32768,
                   1183:  -1147,  -942,  -321,   101,-32768,   539,  -106,   -94,-32768,-32768,
                   1184: -32768, -1132,  -932, -1108,-32768,-32768,-32768,-32768,-32768,-32768,
                   1185: -32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
                   1186: -32768,-32768,-32768,-32768,-32768,   -43,-32768,-32768,-32768,-32768,
                   1187: -32768,  -421,    70,-32768,    69,-32768,  -369,  -132,-32768,-32768,
                   1188:   -258,  1015,  -247,-32768,-32768,    60,   500,-32768,   127,-32768,
                   1189:   -260
                   1190: };
                   1191: 
                   1192: 
                   1193: #define        YYLAST          9739
                   1194: 
                   1195: 
                   1196: static const short yytable[] = {    66,
                   1197:     46,   423,   465,   366,   673,   530,   321,    85,   314,   317,
                   1198:     30,   586,    84,   553,    44,    85,    96,   638,   636,   103,
                   1199:    103,   178,   103,   533,   350,   596,   915,   231,    66,   122,
                   1200:     95,    97,   392,   400,   401,   349,   349,   351,   345,   149,
                   1201:    554,    66,   955,   121,   360,  1107,  1212,    85,  1144,   409,
                   1202:   1228,   556,    84,   830,    85,  1108,   502,   346,   502,     8,
                   1203:    502,   164,  1111,   961,    88,   195,    85,   522,  1250,   194,
                   1204:    830,   393,    85,    96,   599,    78,   309,   142,  1257,   651,
                   1205:    424,   614,    85,   460,   165,   166,   290,   285,   286,   670,
                   1206:    149,    85,     8,    85,    78,   309,   103,   194,   461,   307,
                   1207:    103,   670,   420,   103,   103,    75,   100,  1259,    93,   554,
                   1208:    347,   962,   100,  1269,    66,    46,   149,    66,   510,   600,
                   1209:    556,   188,   831,    76,   601,   310,   615,  -699,   300,    44,
                   1210:    426,   616,   361,  -699,   149,   149,   149,    82,  1272,  1295,
                   1211:     73,    93,   100,   777,   310,  1144,  1299,  1089,  1311,  1260,
                   1212:    577,   562,   522,  1033,   329,    93,   671,   602,   276,    21,
                   1213:    149,    93,   693,   100,   617,   187,   709,   164,  1151,   557,
                   1214:    294,   296,   100,   754,   164,   164,  1052,   175,    66,   414,
                   1215:   1067,   276,  1219,   755,   337,   111,   750,    74,   103,   535,
                   1216:   1049,    93,   340,   413,   422,  -103,    75,   756,   164,   327,
                   1217:    751,   384,    -1,   510,    99,   867,   341,   360,   460,   653,
                   1218:     21,   642,    93,   426,    76,   654,   398,  -229,   359,  1272,
                   1219:   1272,    93,   674,   558,   511,    85,   433,   499,  1245,   694,
                   1220:    752,  1048,   311,  1224,   512,    -2,   342,   593,   594,   159,
                   1221:    160,   879,   164,   189,   513,    12,   328,   514,   515,   349,
                   1222:    349,   595,   592,   530,     8,   366,   578,     8,   291,   295,
                   1223:   1304,  -229,  -229,   192,   400,   401,    85,   315,    17,   675,
                   1224:    509,   640,   433,   433,   524,  -224,   360,   510,   314,   317,
                   1225:    149,   100,   192,   194,   424,  -124,  1074,  -230,   880,   870,
                   1226:   1254,   164,   401,  1172,    85,   361,   360,   579,    75,   111,
                   1227:    192,   126,  1305,    93,    21,  1326,   580,  1107,   103,   526,
                   1228:   1098,   103,  1104,  1074,  1107,   103,    76,  1108,   534,    85,
                   1229:     96,   693,   651,  1197,  1108,   189,   301,  1147,    21,   187,
                   1230:     93,  -230,  -230,  1075,    95,    97,  1265,   599,   127,    89,
                   1231:    458,   581,   754,   422,    77,  -225,   192,  1327,  1301,   894,
                   1232:   1074,  1074,   755,   527,   100,   149,    66,   149,   149,   524,
                   1233:   1182,   343,   708,    66,   361,   127,   756,    90,  1107,   149,
                   1234:   1198,   149,  1074,   149,   149,   451,   164,   356,  1108,   811,
                   1235:    149,   551,   600,  1266,   361,  -695,   149,   601,   566,   149,
                   1236:    422,   100,   192,   606,    11,   610,   612,  1276,  1282,     7,
                   1237:      8,    21,    85,    93,   422,   164,   164,  1342,   149,    66,
                   1238:    186,    66,   414,   939,   937,   431,    85,   297,   298,  1321,
                   1239:    602,  -285,   360,    99,   510,   432,   413,  -285,   456,   360,
                   1240:    764,   510,  -699,   164,  -699,  -699,   117,    19,    21,   135,
                   1241:     93,  -699,    85,    85,    85,    85,   660,   385,   386,    22,
                   1242:    551,   387,   511,   499,  1343,   783,   860,   112,   766,   187,
                   1243:   -286,   643,   512,  -699,  -699,  -699,  -286,  -699,   693,  -699,
                   1244:    359,   189,   513,   804,   765,   514,   515,   820,   676,    26,
                   1245:    192,   822,   118,   136,   137,   829,     7,   100,   805,   878,
                   1246:    132,   586,    85,   133,   433,   388,   389,   349,   187,   784,
                   1247:    785,   187,   767,   677,   192,   824,   433,   433,   100,   524,
                   1248:    361,   424,   400,   360,  1180,   530,    66,   361,   553,   360,
                   1249:    692,   821,   178,   695,    19,   823,   366,   465,   701,   702,
                   1250:    703,   704,   705,   533,   651,  1091,    22,   315,   112,   112,
                   1251:    750,   182,   276,   624,    99,   554,   718,   149,    85,   825,
                   1252:    187,  1057,  1208,    84,   751,    21,   556,    93,   189,     7,
                   1253:    503,  1273,   504,   287,   632,   164,    26,   360,   289,   431,
                   1254:    881,   112,   422,   641,   -27,    13,    14,   -27,   747,   432,
                   1255:   -224,     7,     8,   356,   752,   612,     7,     8,   715,   -27,
                   1256:    394,   395,    78,    79,     7,   503,  1209,    19,   149,   149,
                   1257:    842,   361,   318,    75,   -81,  1274,   842,   361,   456,    22,
                   1258:    -81,   456,  -102,   696,   698,   319,   700,    75,   673,    19,
                   1259:   -506,    76,   149,   149,    19,   149,  1077,    13,    14,   356,
                   1260:    192,    22,    19,   240,   456,    76,    22,   234,   722,   505,
                   1261:     21,  -225,    80,    81,    22,    85,   331,    21,   332,   422,
                   1262:   1082,   366,   333,   164,   842,   361,   -80,   322,   426,   159,
                   1263:    160,    26,   -80,   187,   744,    12,    26,     8,   338,    10,
                   1264:    761,   301,   114,   433,    26,    12,   407,   356,   807,   792,
                   1265:     13,    14,   422,   433,   433,   433,  1027,  1028,    17,  1028,
                   1266:     15,   164,   360,   371,    16,   421,   360,   427,    17,   357,
                   1267:     78,    79,   167,   168,   169,   430,   192,   694,   158,   159,
                   1268:    160,    75,   360,   715,    21,    12,    93,   486,   487,   871,
                   1269:   1123,   192,  1072,  1073,   873,   874,   385,  1174,   876,    76,
                   1270:   1053,  1054,   170,  1056,   356,   428,   356,   356,    17,   314,
                   1271:    317,   359,   429,    85,   436,   314,   317,   443,    21,   444,
                   1272:     80,   171,   446,   114,   114,   360,  1153,  1154,   447,   334,
                   1273:    448,   335,   356,   111,   433,   336,   433,   449,   356,   849,
                   1274:   1170,   450,   404,    85,   405,   502,   694,   433,   406,    85,
                   1275:    361,    66,    66,    66,   361,   541,   114,   539,   567,   944,
                   1276:   1184,  1185,   542,   194,   544,   172,   173,   174,   545,    85,
                   1277:    361,    85,   546,    78,   309,  1129,  1130,  1131,   112,   112,
                   1278:    547,   528,     8,   563,   885,   886,   887,   111,   347,   568,
                   1279:   -694,   569,   356,   570,   424,   571,   394,  1175,   385,  1181,
                   1280:    914,   597,   149,   149,   149,   149,   598,  1216,   613,   149,
                   1281:    842,   842,   842,   361,   622,   240,   529,  1336,  1337,    19,
                   1282:    623,   792,   356,   310,   629,    70,   637,    85,   681,    21,
                   1283:    718,    93,   682,    87,   439,   442,   359,   149,  1307,  1308,
                   1284:    103,    98,    66,   414,    85,   104,   104,   686,   104,   422,
                   1285:    422,   687,   422,   706,    70,   707,   551,   413,   483,   484,
                   1286:    485,   486,   487,   100,   709,   104,   184,    70,   762,    13,
                   1287:     14,   763,   776,    87,   778,   591,  -330,   780,   796,   797,
                   1288:     98,   399,   159,   160,   433,   433,   806,   433,    12,   808,
                   1289:    810,   812,    98,   813,   814,   815,   921,  1016,    98,  -330,
                   1290:   -330,   819,  -330,   510,   356,    66,    66,   828,  1193,  1194,
                   1291:     21,    17,    93,  1012,   852,   315,   104,    98,    66,   414,
                   1292:    855,   635,   104,   862,   511,   963,   104,   856,   456,   104,
                   1293:    104,   677,   857,   413,   512,     7,   100,   858,   861,    11,
                   1294:     70,   866,   104,    70,   513,   872,   875,   514,   515,   877,
                   1295:    149,    66,   149,   883,   882,  1156,   888,   889,   898,   642,
                   1296:    104,   104,   104,   356,   149,   149,   892,   149,   315,   691,
                   1297:    164,   893,   895,    19,   315,   111,   356,   896,   356,   694,
                   1298:    897,   899,   900,    21,   901,    22,   104,   456,  1097,   902,
                   1299:   1103,  -101,   905,   114,   114,    66,   414,    24,   904,   907,
                   1300:   1043,  1011,   908,   909,    70,   112,   912,    25,   910,   192,
                   1301:    413,   112,   911,   923,   104,    26,   926,   913,   925,   315,
                   1302:     27,   927,   932,   933,     7,     8,   743,   934,   745,   746,
                   1303:   1227,   938,   356,   948,   356,   830,   356,   942,     8,    92,
                   1304:     10,    11,   554,   943,   354,   945,    12,   314,   317,   956,
                   1305:   1003,    98,   104,  1340,  1125,  1126,  1043,  1005,  1156,   112,
                   1306:    795,    15,    19,  1300,  1009,    16,  1018,   842,  1034,    17,
                   1307:   1036,  1037,    21,  1090,    22,  -471,  1038,   138,  -471,  1039,
                   1308:   1055,  1045,  1059,  1050,  1064,    21,   139,    93,  1051,  1060,
                   1309:   1076,  1061,    98,  1065,  1063,  1068,   140,  1069,   104,   104,
                   1310:     70,   422,   422,  1081,    26,   532,   104,  1070,  1084,   141,
                   1311:   1085,   192,   780,  1086,   817,  1093,  1092,  1088,  1109,  1095,
                   1312:     98,  1156,  1116,  -471,  1117,  1118,  -471,   355,  -471,  1132,
                   1313:   1176,   590,  1122,  1143,   104,  1149,  1148,   104,  -471,  1163,
                   1314:   1167,   104,   842,   842,   842,    98,  1169,  1171,  1199,   422,
                   1315:   1189,  1195,   422,  1196,  1156,  1200,  -471,  -471,  1201,  1213,
                   1316:     98,  -471,  1214,  1207,     8,   644,  1217,  1152,  1202,  1203,
                   1317:   -471,  1225,  1215,  1241,  1261,  1262,  1137,  1138,  1139,  1140,
                   1318:   1251,   104,    70,   104,   104,    70,   149,  1263,  1146,    70,
                   1319:   1264,   645,  1285,  1289,  1267,   104,   646,   104,  1268,   104,
                   1320:    104,  1298,  1074,   164,  1303,  1306,   104,  1341,  1317,   360,
                   1321:   1331,    21,   104,    93,  1309,   104,     8,   863,  1314,  1312,
                   1322:    114,  1161,  1319,  1320,  1252,  1323,   114,  1325,    98,  1168,
                   1323:    849,   458,  1333,  1335,   104,    70,   382,    70,  1344,   112,
                   1324:    112,  1345,    98,   645,  1347,   112,   112,   112,   864,  1346,
                   1325:   1349,  1350,   323,   565,     5,   396,   422,   325,  -699,   950,
                   1326:   -699,  -699,   326,    21,   344,    93,   957,  -699,    98,    98,
                   1327:     98,    98,   305,   710,   114,  1206,  1211,  -699,  1232,  -699,
                   1328:   -699,  1280,   768,  1162,  1100,   917,  -699,   884,  1240,  -699,
                   1329:   -699,   383,  1132,  -699,   949,  -699,    85,   361,   928,   827,
                   1330:    929,   123,   124,  1218,  1013,   865,   315,   111,  -699,  -699,
                   1331:    397,   953,  -699,   356,  -699,  1030,  1066,    86,    98,   456,
                   1332:    104,    48,   668,   749,  1218,  1218,  1029,   187,     8,    92,
                   1333:     10,    11,   104,   104,  1339,    70,    12,    48,   799,   947,
                   1334:   1296,   998,   794,  1316,  1318,     0,   187,   488,  1032,  1218,
                   1335:     48,    15,   620,   532,   958,    16,   959,     0,   960,    17,
                   1336:      0,   655,   656,   154,   479,   480,   481,   482,   483,   484,
                   1337:    485,   486,   487,   104,    87,    21,   185,    93,     0,     0,
                   1338:      0,     0,     0,   551,   489,   490,     0,     0,   229,   491,
                   1339:    492,   493,   494,   278,    48,     0,     0,     0,     0,    19,
                   1340:      0,     0,   657,     0,     0,   278,   278,     0,     0,    21,
                   1341:    356,    22,   853,   154,  1297,     0,   278,     0,   658,     0,
                   1342:      0,     0,     0,   139,   104,   104,    70,     0,     0,     0,
                   1343:    722,   722,   794,   140,     0,     0,    48,     0,     0,   154,
                   1344:      0,    26,     0,  1315,     0,     0,   659,     0,   104,   104,
                   1345:      0,   104,     0,   363,   114,   114,     0,     0,     0,     0,
                   1346:    114,   114,   114,     0,     0,     0,     8,    92,    10,    11,
                   1347:      0,    98,     0,     0,    12,     0,   356,     0,     7,     8,
                   1348:     70,     0,    11,   375,   377,   380,   228,     0,     0,    15,
                   1349:      0,   277,     0,    16,     0,     0,     0,    17,     0,   104,
                   1350:     48,     0,   112,   277,   277,     0,     0,     0,     0,   104,
                   1351:    104,   104,     0,    21,   277,    93,    19,     0,     0,   510,
                   1352:      0,     0,     0,     0,     0,     0,    21,     0,    22,     0,
                   1353:      0,    94,     0,     0,     0,     0,   452,   101,   105,   453,
                   1354:    603,   916,   454,     0,     0,     0,     0,   185,   462,     0,
                   1355:    604,   362,     0,     0,     0,     0,     0,   501,    26,     0,
                   1356:    513,     0,     0,   605,   515,     0,     0,     0,     0,    98,
                   1357:      0,     0,     0,     0,     0,   278,     0,   112,   112,   112,
                   1358:      0,     0,     0,     8,   230,    10,   184,     0,   229,   279,
                   1359:    104,    12,   104,     0,     0,     0,   185,     0,   952,    98,
                   1360:      0,   279,   279,   104,     0,    98,    15,   794,   794,   794,
                   1361:     16,     0,   279,     0,    17,   532,   552,     0,     0,     0,
                   1362:      0,   313,   316,     0,     0,    98,     0,    98,     0,     0,
                   1363:     21,     0,    93,     0,     0,     0,     0,     0,   816,     0,
                   1364:     98,    48,  1004,     0,     0,     0,     0,     0,     0,   364,
                   1365:      0,     0,   374,   376,     0,     0,     0,     0,   104,   104,
                   1366:    104,   104,     0,     0,     0,   104,   794,   794,   794,     0,
                   1367:      0,     0,     0,   277,     0,     0,     0,     0,   154,     0,
                   1368:      0,   185,     0,    98,     0,   552,   228,     0,     0,     0,
                   1369:      0,     0,   854,   104,  1041,  1044,   104,     0,    70,     0,
                   1370:     98,     0,     0,   859,     0,   363,   481,   482,   483,   484,
                   1371:    485,   486,   487,     0,   362,     0,     0,   114,   625,     0,
                   1372:    626,   193,   375,   377,     0,     0,     0,     0,     0,     0,
                   1373:    699,   154,  1243,    48,     0,   639,     0,     0,   678,     0,
                   1374:    104,   104,     0,   104,     0,     0,     0,     7,     8,     0,
                   1375:      0,  1044,     0,     0,     0,   278,     0,   665,   278,     0,
                   1376:      0,   794,   794,   278,   678,   678,   678,   678,   320,     0,
                   1377:      0,   279,     0,     0,    70,     0,     0,   278,     0,     0,
                   1378:      0,   278,     0,   362,   230,    19,     0,   352,   510,     0,
                   1379:      0,     0,   114,   114,   114,    21,     0,    22,  1294,     0,
                   1380:      0,     0,   391,   362,     0,     0,   104,    70,   104,   603,
                   1381:      0,     0,   364,   278,   229,     0,     0,     0,     0,   604,
                   1382:    104,   104,     0,   104,     0,  1136,     0,    26,     0,   513,
                   1383:   1141,   552,   605,   515,     0,     0,   277,     0,   363,     0,
                   1384:      0,     0,     0,     0,     6,     0,     7,     8,     9,    10,
                   1385:     11,    70,     0,   277,     0,    12,   277,     0,     0,     0,
                   1386:      0,   277,   277,   277,   277,   277,     0,     0,    13,    14,
                   1387:     15,     0,   954,     0,    16,   277,     0,     0,    17,   277,
                   1388:      0,   364,    18,     0,    19,     0,     0,     0,    20,     0,
                   1389:      0,   627,   628,     0,    21,     0,    22,     0,     0,    23,
                   1390:      0,   364,     0,     0,  1186,  1187,     0,     0,    24,     0,
                   1391:      0,   277,   228,     0,     0,     0,     0,     0,    25,     0,
                   1392:      0,  1010,   552,   794,     0,     0,    26,     0,   363,   362,
                   1393:   1017,    27,     0,  1205,   279,     0,   362,    28,    29,  1031,
                   1394:      0,     0,     0,     7,     8,     0,     0,   375,   377,   380,
                   1395:      0,   279,     0,     0,   279,   380,     0,     0,     0,   279,
                   1396:    279,   279,   279,   279,     0,     0,     0,     0,  -511,     0,
                   1397:      0,   625,   626,   279,   639,     0,   552,   279,  1233,     0,
                   1398:      0,    19,     0,  -511,  -511,  1238,  1239,     0,     0,     0,
                   1399:   -511,    21,     0,    22,  1244,     0,  1096,     0,   794,   794,
                   1400:    794,     0,  -511,   380,     0,   139,     0,     0,     0,   279,
                   1401:    230,     0,     0,  -511,  -511,   140,  -511,     0,  -511,   100,
                   1402:    362,     0,   424,    26,   769,   771,   362,   364,   141,     0,
                   1403:      0,     0,     0,   630,   364,     0,     0,     0,     0,   633,
                   1404:      0,     0,   104,     0,     0,   924,  -511,  -511,     0,     0,
                   1405:   -511,  -511,     0,  1292,  1293,     0,     0,     0,     0,   510,
                   1406:   -511,     0,     0,     0,     0,   678,    21,     0,    93,   918,
                   1407:      0,   452,   453,     0,   362,  1119,  1120,     0,     0,     0,
                   1408:    511,     0,     0,   688,   689,     0,   690,     0,  1127,  1128,
                   1409:    512,     0,     0,     0,     0,   678,     0,     0,     0,     0,
                   1410:    513,   552,     0,   514,   515,   363,     8,    92,    10,    11,
                   1411:      0,     0,     0,     0,    12,     0,   837,   838,   364,     0,
                   1412:   1338,   552,     0,   951,   364,     0,     0,     0,     0,    15,
                   1413:    452,   453,     0,    16,     0,     0,     0,    17,     0,     0,
                   1414:      0,     0,     0,     0,     0,     0,     0,     0,     0,   987,
                   1415:      0,     0,    98,    21,     0,    93,     0,     0,   519,   523,
                   1416:    525,     0,     0,   277,   363,     0,     0,     0,     0,   781,
                   1417:    782,     0,   364,     0,   781,   452,   453,     0,   278,     0,
                   1418:      0,   625,   626,   375,   377,  1192,     7,   100,   639,   375,
                   1419:    377,   380,     0,   277,    48,     0,   678,     0,     0,   362,
                   1420:      0,     0,     0,   362,     0,     0,     0,     0,     0,     0,
                   1421:   1058,     0,     0,     0,     0,     0,  1025,     0,     0,   362,
                   1422:      0,     0,     0,     0,    19,   452,   453,     0,     0,     0,
                   1423:      0,     0,     0,     0,    21,     0,    22,     0,     0,     0,
                   1424:      0,   608,     0,   519,   523,   525,     0,     0,   108,   835,
                   1425:    836,  1234,  1235,     0,  1236,  1237,     0,     0,   109,   844,
                   1426:      0,   279,   362,     0,     0,   851,    26,     0,     0,     0,
                   1427:     48,    27,     0,     0,     0,     0,   277,     0,     0,     0,
                   1428:      0,   410,     0,     7,     8,    92,    10,    11,     0,     0,
                   1429:      0,   279,    12,     0,   277,     0,     0,   364,     0,   769,
                   1430:    771,   364,     0,   154,     0,   987,     0,    15,     0,   868,
                   1431:      0,    16,   987,     0,     0,    17,  -423,   364,     0,     7,
                   1432:    100,    19,     0,   184,     0,     0,     0,     0,     7,   100,
                   1433:      0,    21,    11,    22,     0,     0,   672,     0,     0,     0,
                   1434:    411,     0,     0,   625,   626,    24,   639,    48,     0,     0,
                   1435:      0,     0,   999,  1000,   268,    25,     0,    19,   999,  1000,
                   1436:    364,  1313,     0,    26,     0,     0,    19,    21,    27,    22,
                   1437:      0,     0,     0,     0,   279,     0,    21,   268,    22,     0,
                   1438:      0,    24,     0,  -423,     0,     0,     0,     0,  1019,  1020,
                   1439:    108,    25,   279,   772,     0,   774,     0,     0,   987,    26,
                   1440:    109,     0,   774,     0,    27,     0,   919,   920,    26,   922,
                   1441:      0,     0,     0,    27,   358,     0,     0,   410,     0,     7,
                   1442:      8,    92,    10,    11,     0,     0,    19,     0,    12,     0,
                   1443:      0,     0,     0,   523,     0,   936,    21,     0,    22,     0,
                   1444:      0,     0,     0,    15,     0,  1021,   380,    16,     0,     0,
                   1445:    139,    17,  -422,   769,   771,     0,     0,    19,     0,     0,
                   1446:    140,     0,   452,   453,     0,     0,     0,    21,    26,    22,
                   1447:      0,     0,   987,   141,     0,     0,   411,     0,     0,     0,
                   1448:   1220,    24,     0,   987,     0,   772,   774,     0,     0,     0,
                   1449:      0,    25,   774,     0,     0,  1002,   278,     0,     0,    26,
                   1450:      0,  1220,  1220,     0,    27,     0,     0,  1006,  1007,  1008,
                   1451:      0,     0,     0,     0,     0,     0,     0,     0,     0,  -422,
                   1452:      0,   375,   377,   380,     0,     0,  1220,     0,     0,     0,
                   1453:      0,     0,     0,   987,     0,     0,     0,   459,     0,     0,
                   1454:    987,     0,     8,   987,    10,    11,     0,     0,     0,     0,
                   1455:     12,     0,     0,     0,     7,     8,   158,   159,   160,   523,
                   1456:      0,     0,     0,    12,   987,    15,     0,   987,     0,    16,
                   1457:      0,     0,     0,    17,   987,     0,     0,   410,   228,     7,
                   1458:      8,    92,    10,    11,     0,  1062,    17,     0,    12,    21,
                   1459:      0,    93,    19,     0,   277,   510,     0,     0,   987,   228,
                   1460:    228,     0,    21,    15,    22,     0,     0,    16,     0,     0,
                   1461:      0,    17,  -424,   987,     0,     0,   139,    19,     0,   589,
                   1462:    358,     0,     0,     0,   228,     0,   140,    21,   987,    22,
                   1463:      0,     0,   672,     0,    26,     0,   411,     0,     0,  1102,
                   1464:      0,    24,     0,     0,     0,   987,   987,     0,   552,     0,
                   1465:    930,    25,   931,     0,     0,     0,     0,     0,     0,    26,
                   1466:      0,     0,     0,   935,    27,     0,   358,     0,   772,   774,
                   1467:   1121,     0,     0,     0,     0,     0,   230,     0,     0,  -424,
                   1468:      0,     0,     0,     0,     0,     8,     0,    10,    11,   652,
                   1469:    627,   628,   279,    12,     0,     0,     0,   230,   230,     0,
                   1470:      0,     0,     0,     0,     0,     0,     0,     0,    15,     0,
                   1471:      0,     0,    16,     0,   358,  1150,    17,     0,   930,   931,
                   1472:      0,   772,   230,     0,     0,   935,     0,   772,   774,     7,
                   1473:      8,     0,    21,   184,    93,   495,     0,     0,   268,     0,
                   1474:      0,   589,     0,     0,   719,   720,   362,   724,   725,   726,
                   1475:    727,   728,   729,   730,   731,   732,   733,   734,   735,   736,
                   1476:    737,   738,   739,   740,   741,   742,     0,    19,     0,   496,
                   1477:    510,   358,     0,   358,   358,     0,     0,    21,     0,    22,
                   1478:      7,     8,    92,    10,    11,     0,     0,   354,     0,    12,
                   1479:      0,   603,   100,     0,   159,   160,     0,     0,     0,   358,
                   1480:     12,   604,     0,     0,    15,   358,    42,     0,    16,    26,
                   1481:      0,   513,    17,     0,   605,   515,     0,     0,    19,     0,
                   1482:    801,   803,   772,    17,     0,     0,    42,    42,    21,   110,
                   1483:     22,     0,   510,     0,     0,    42,     0,     0,     0,    21,
                   1484:      0,    93,   378,     0,   364,     0,    42,     0,    42,     0,
                   1485:      0,     0,   379,   511,     0,     0,     0,     0,     0,   358,
                   1486:     26,     0,     0,   512,     0,   141,   589,     0,   190,     0,
                   1487:    355,     0,     0,   513,     0,     0,   521,   515,     0,     0,
                   1488:    930,   931,     6,   935,     7,     8,     9,    10,    11,   358,
                   1489:      0,     0,     0,    12,     0,     0,     0,    42,     0,     0,
                   1490:    589,     0,     0,    42,     0,   190,     0,    42,    15,     0,
                   1491:    110,   110,    16,     0,     0,     0,    17,     0,     0,     0,
                   1492:      0,    42,    19,    42,    42,     0,   324,     0,     0,     0,
                   1493:      0,     0,    21,     0,    22,     0,   869,    23,     0,     0,
                   1494:      0,    42,    42,   110,     0,     0,    24,     0,     0,     0,
                   1495:      0,   190,     0,     0,     0,     0,    25,     0,     0,     0,
                   1496:      0,     0,     0,     0,    26,     0,     0,    42,     0,    27,
                   1497:      0,   358,     0,     0,     0,    28,   721,     0,     7,     8,
                   1498:      0,    10,   437,   233,   234,    42,   235,    12,     0,     0,
                   1499:      0,     0,   903,     0,     0,    42,     0,     0,     0,     0,
                   1500:      0,     0,    15,   236,   237,   238,    16,     0,   239,     0,
                   1501:     17,     0,   240,   241,     0,   242,    19,   243,   244,     0,
                   1502:      0,   245,   246,   247,   248,   249,    21,     0,    22,   589,
                   1503:    358,     0,     0,     0,     0,  -656,     0,   250,     0,     0,
                   1504:    251,     0,     0,   358,     0,   358,     0,     0,   252,   253,
                   1505:    254,     0,     0,     0,     0,     0,   255,   256,   257,     0,
                   1506:      0,     0,     0,   258,     0,     0,     0,   259,     0,     0,
                   1507:      0,     0,     0,     0,   946,     0,     0,   506,     0,   260,
                   1508:      0,     0,     0,     0,     0,   190,   589,    42,     0,     7,
                   1509:      8,     0,    10,   437,   233,   234,     0,   235,    12,   358,
                   1510:      0,   358,     0,   358,     0,     0,     0,     0,     0,     0,
                   1511:      0,     0,     0,    15,   236,    42,     0,    16,    42,   239,
                   1512:      0,    17,    42,   240,   241,     0,   242,    19,   243,   244,
                   1513:    589,     0,   245,   246,   247,   248,   249,    21,     0,    22,
                   1514:      0,     0,     0,     0,  1014,  1015,     0,     0,   250,     0,
                   1515:      0,   251,     0,     0,     0,     0,     0,  1019,   100,   252,
                   1516:    253,   254,    42,    42,    42,    42,     0,   255,   256,   257,
                   1517:     42,     0,     0,     0,   438,     0,    42,     0,    42,     0,
                   1518:    110,   110,   589,   589,     0,     0,  1046,    42,     0,     0,
                   1519:    260,     0,     0,    42,     0,    19,    42,     0,   410,     0,
                   1520:      7,     8,    92,    10,    11,    21,     0,    22,     0,    12,
                   1521:      0,     7,     8,     0,  1021,    42,    42,     0,    42,    24,
                   1522:      0,     0,     0,     0,    15,     0,     0,     0,    16,    25,
                   1523:      0,     0,    17,  -425,     0,     0,     0,    26,    19,   589,
                   1524:      0,     0,    27,     0,     0,     0,     0,    64,    21,    19,
                   1525:     22,  1083,     0,     0,     7,     8,     0,   411,    11,    21,
                   1526:      0,    22,    24,     0,     0,     0,     0,    64,    64,     0,
                   1527:    115,     0,    25,   139,     0,     0,    64,     0,     0,     0,
                   1528:     26,     0,     0,   140,     0,    27,     0,    64,     0,    64,
                   1529:      0,    26,    19,     0,     0,   510,   141,     0,     0,  1124,
                   1530:   -425,     0,    21,     0,    22,     7,     8,    92,    10,    11,
                   1531:      0,   506,   354,   589,    12,     0,   839,     0,   589,     0,
                   1532:   1142,     0,     0,   791,     0,     0,   840,     0,     0,    15,
                   1533:      0,     0,     0,    16,    26,     0,   513,    17,    64,   605,
                   1534:    515,     0,     0,    19,    64,     0,   510,     0,    64,     0,
                   1535:      0,   115,   115,    21,    42,    22,     0,     0,     0,     0,
                   1536:      0,     0,    64,     0,    64,    64,     0,   839,     0,     0,
                   1537:      0,     8,     0,    10,    11,     0,     0,   840,     0,    12,
                   1538:    358,     0,    64,    64,   115,    26,     0,   513,     0,     0,
                   1539:    605,   515,   589,   589,    15,   355,     0,     0,    16,     0,
                   1540:   1190,  1191,    17,     0,     0,    42,    42,   110,    64,     0,
                   1541:      0,     0,     0,   848,     0,     0,     0,     0,    21,     0,
                   1542:     93,   589,     0,     0,     0,     0,    64,     0,     0,    42,
                   1543:     42,     0,    42,     0,     0,     0,    64,     0,     0,     0,
                   1544:      0,     0,  1222,   476,   477,   478,   479,   480,   481,   482,
                   1545:    483,   484,   485,   486,   487,   748,     0,   587,     0,   711,
                   1546:    712,   110,    10,   437,   233,   234,   589,   235,    12,     0,
                   1547:      0,     0,     0,   589,   589,     0,     0,   358,     0,     0,
                   1548:      0,     0,   589,    15,   236,   237,   238,    16,     0,   239,
                   1549:      0,    17,     0,   240,   241,   791,   242,    19,   243,   244,
                   1550:      0,     0,   245,   246,   247,   248,   249,    21,     0,   713,
                   1551:    588,     0,     0,     0,     7,     8,     0,     0,   250,     0,
                   1552:      0,   251,     0,     0,     0,     0,     0,   531,    64,   252,
                   1553:    253,   254,     0,     0,     0,     0,     0,   255,   256,   257,
                   1554:      0,   589,   589,   358,   258,   714,     0,     0,   259,     0,
                   1555:      0,     0,    19,     0,     0,     0,    64,     0,     0,    64,
                   1556:    260,     0,    21,    64,    22,     0,     0,     0,     0,     0,
                   1557:    116,     0,     0,     0,     0,     0,   378,     0,     0,     0,
                   1558:      0,     0,   585,     0,     0,     0,   379,   150,   791,   791,
                   1559:      0,     0,     0,     0,    26,     0,     0,     0,     0,   141,
                   1560:      0,     0,     0,    64,    64,    64,    64,     0,   589,     0,
                   1561:      0,    64,     0,     0,     0,     0,     0,    64,     0,    64,
                   1562:      0,   115,   115,     0,     0,     0,     0,     0,    64,     0,
                   1563:      0,     0,     0,     0,    64,     0,     0,    64,   150,    42,
                   1564:     42,   110,   110,     0,   190,     0,    42,   848,   848,   848,
                   1565:      0,   116,   116,     0,     0,     0,    64,    64,     0,    64,
                   1566:      0,     0,     0,     0,   150,     0,     0,     0,     0,     0,
                   1567:      0,     0,     0,     0,    42,     0,     0,    42,     0,    42,
                   1568:      0,     0,   150,   150,   381,     0,     0,     0,     0,     0,
                   1569:      0,     0,   791,   791,     0,  1105,     0,   966,   967,    92,
                   1570:     10,   232,   233,   234,     0,   235,    12,   968,   150,   969,
                   1571:    970,   971,   972,   973,   974,   975,   976,   977,   978,    13,
                   1572:     14,    15,   236,   237,   238,    16,     0,   239,     0,    17,
                   1573:      0,   240,   241,     0,   242,    19,   243,   244,     0,     0,
                   1574:    245,   246,   247,   248,   249,    21,   190,   979,   347,     0,
                   1575:    980,     0,     0,     0,     0,    42,   250,     0,     0,   251,
                   1576:      0,     0,     0,     0,   793,     0,     0,   252,   253,   254,
                   1577:      0,     0,     0,     0,   434,   255,   256,   257,     0,     0,
                   1578:      0,     0,   258,     0,   981,     0,   259,    42,    42,    42,
                   1579:      0,     0,     0,     0,     0,    64,     0,  1106,   260,     0,
                   1580:      0,    42,    42,     0,    42,     7,     8,     0,     0,    11,
                   1581:      0,     8,    92,    10,    11,     0,     0,   354,     0,    12,
                   1582:    518,   518,   518,     0,     0,     0,     0,     0,   150,     0,
                   1583:      0,     0,    42,     0,    15,     0,     0,     0,    16,     0,
                   1584:      0,     0,    17,    19,     0,     0,    64,    64,   115,     0,
                   1585:      0,   510,     0,    21,   850,    22,     0,     0,    21,     0,
                   1586:     93,     0,     0,     0,     0,     0,     0,   139,     0,     0,
                   1587:     64,    64,   511,    64,     0,     0,     0,   140,     0,     0,
                   1588:      0,     0,   512,     0,     0,    26,     0,     0,     0,     0,
                   1589:    141,     0,   513,     0,     0,   514,   515,     0,     0,     0,
                   1590:    355,     0,   115,   607,   848,   607,   607,   518,     0,   120,
                   1591:      0,     7,     8,    92,    10,    11,     0,   150,     0,   150,
                   1592:     12,   381,   381,     0,     0,     0,     7,     8,   150,     0,
                   1593:    424,   516,   516,   516,   150,    15,   793,   150,     0,    16,
                   1594:      0,     0,     0,    17,     0,     0,     0,     0,   148,    19,
                   1595:      0,     0,     0,     0,     0,     0,   150,     0,     0,    21,
                   1596:      0,    22,     0,     0,    19,     0,     0,   510,     0,     0,
                   1597:    191,     0,     0,    24,    21,     0,    22,     0,     0,   848,
                   1598:    848,   848,     0,    25,     0,     0,     7,   100,   603,   191,
                   1599:    424,    26,     0,     0,     0,     0,    27,     0,   604,   148,
                   1600:      0,     0,     0,     0,     0,     0,    26,     0,   513,     0,
                   1601:      0,   605,   515,     0,   516,     0,   516,   516,   516,     0,
                   1602:      0,     0,     0,    42,    19,   148,     0,     0,     0,   793,
                   1603:    793,     0,     0,     0,    21,     0,    22,   531,     0,     0,
                   1604:      0,     0,   757,   148,   148,   148,     0,     0,    24,     0,
                   1605:      0,     0,     0,   390,   518,   518,     0,   518,    25,     0,
                   1606:      0,     0,   585,     0,   518,     0,    26,     0,     0,   148,
                   1607:      0,    27,     0,     0,     0,     0,     0,     0,     0,     0,
                   1608:     64,    64,   115,   115,     0,     0,     0,    64,   850,   850,
                   1609:    850,     0,     0,     0,     0,   607,     0,     0,     0,   191,
                   1610:      0,     0,    62,     0,     0,     0,     0,     0,     0,     0,
                   1611:      0,     0,     0,     0,     0,    64,     0,     0,    64,     0,
                   1612:     64,     0,   102,   106,     0,     0,     0,   100,     0,   159,
                   1613:    160,   125,     0,   793,   793,    12,     0,     0,     0,     0,
                   1614:      0,     0,     0,     0,   157,     0,   607,   607,   843,     0,
                   1615:      0,     0,     0,     0,   843,     0,     0,     0,    17,     0,
                   1616:      0,     0,     0,     0,     0,   516,   516,   510,   516,     0,
                   1617:    150,   150,     0,   150,    21,   790,    93,     0,     8,   151,
                   1618:     10,   152,     0,     0,     0,     0,    12,   191,   511,   148,
                   1619:      0,     0,     0,     0,     0,     0,    64,     0,   512,   306,
                   1620:      0,    15,   381,   308,     0,    16,   516,     0,   513,    17,
                   1621:      0,   514,   515,     0,     0,     0,     0,    62,     0,     0,
                   1622:    330,   518,     7,     8,     0,    21,   184,    93,    64,    64,
                   1623:     64,   434,   434,   434,     0,     0,     0,   102,   106,     0,
                   1624:      0,     0,    64,    64,     0,    64,     0,     0,     0,     0,
                   1625:      0,     0,     0,     0,     0,     0,     0,   516,   516,   516,
                   1626:     19,     0,     0,     0,   148,   790,   148,   148,     0,     0,
                   1627:     21,     0,    22,    64,     0,     0,     0,     0,   148,     0,
                   1628:    148,   419,   148,   148,   139,     0,     7,     8,     0,   148,
                   1629:     11,   425,     0,     0,   140,   148,     0,     0,   148,     0,
                   1630:      0,     0,    26,     0,     0,     0,    83,   141,     0,     0,
                   1631:      0,     0,   518,     0,   518,     0,     0,   148,    83,    83,
                   1632:      0,    83,     0,     0,    19,   518,     0,     0,     0,   518,
                   1633:    518,   518,   516,     0,    21,     0,    22,     0,     0,     0,
                   1634:      0,     0,     0,     0,     0,   850,   177,     0,   378,     0,
                   1635:      0,     0,     0,     0,     0,     0,     0,     0,   379,     0,
                   1636:      0,     0,     0,     0,     0,     0,    26,     0,     0,     0,
                   1637:      0,   141,     0,     0,     0,     0,     0,     0,     0,     0,
                   1638:    607,   607,   843,   843,     0,     0,     0,   607,   843,   843,
                   1639:    843,     0,     0,     0,     0,    83,     0,    83,    83,    83,
                   1640:      0,     0,    83,    83,     0,     7,     8,     0,     0,   424,
                   1641:      0,   559,     0,     0,   560,   150,     0,     0,   561,     0,
                   1642:    850,   850,   850,   516,     0,   516,     0,     0,   191,     0,
                   1643:      0,     0,     0,     0,     0,     0,   516,     0,     0,     0,
                   1644:    790,   790,   790,    19,     0,     0,     0,     0,     0,     0,
                   1645:      0,     0,     0,    21,     0,    22,   148,     0,     0,   609,
                   1646:      0,     0,   757,   757,    64,   757,   619,   139,     0,     0,
                   1647:      0,     0,   306,     0,   308,     0,     0,   140,     0,     0,
                   1648:      0,     0,     0,   518,   518,    26,     0,    83,     0,   425,
                   1649:    141,   516,   516,   516,   516,     0,     0,     0,   516,   790,
                   1650:    790,   790,     0,     0,     0,     0,     0,   148,   148,   841,
                   1651:      0,   666,   669,     0,   419,   841,     0,     0,     0,     0,
                   1652:   -304,     8,  -304,    10,   184,    83,     0,     0,   150,    12,
                   1653:    150,   148,   148,     0,   148,     0,     0,     0,     0,     0,
                   1654:      0,     0,   607,   607,    15,   607,     0,     0,    16,     0,
                   1655:      0,     0,    17,     0,     0,     0,     0,     0,  -304,     0,
                   1656:      0,   510,     0,   841,     0,     0,     0,     0,    21,    83,
                   1657:     93,    83,    83,     0,     0,     0,     0,     0,     0,     0,
                   1658:      0,     0,   511,     0,     0,     0,     0,     0,     0,     0,
                   1659:      0,     0,   512,     0,   790,   790,     0,     0,     0,     0,
                   1660:   -304,    83,   513,     0,     0,   514,   515,    83,     0,     0,
                   1661:     83,     0,     0,     0,    83,   471,   472,   473,   474,   475,
                   1662:    476,   477,   478,   479,   480,   481,   482,   483,   484,   485,
                   1663:    486,   487,   353,     0,     7,     8,    92,    10,   232,   233,
                   1664:    234,   354,   235,    12,     0,   381,     0,     0,     0,     0,
                   1665:      0,     0,     0,   516,   516,     0,   516,     0,    15,   236,
                   1666:    237,   238,    16,     0,   239,     0,    17,     0,   240,   241,
                   1667:      0,   242,    19,   243,   244,     0,     0,   245,   246,   247,
                   1668:    248,   249,    21,     0,    22,     0,     0,     0,     0,     0,
                   1669:      0,     0,     0,   250,     0,     0,   251,     0,     0,     0,
                   1670:      0,   102,   106,     0,   252,   253,   254,     0,     0,     0,
                   1671:      0,     0,   255,   256,   257,     0,     0,     0,     0,   258,
                   1672:    381,   381,   381,   259,   355,   559,   560,    83,   561,     0,
                   1673:      0,     0,     0,  -666,     0,   260,     0,     0,     0,     0,
                   1674:      0,   148,   148,   148,   148,     0,  1001,     0,   148,   841,
                   1675:    841,   841,     0,     0,     0,     0,     0,     0,     0,     0,
                   1676:      0,     0,     0,     0,   150,     0,     0,     0,     0,     0,
                   1677:      0,     0,     0,     0,     0,     0,   148,     0,     0,     0,
                   1678:      0,   455,     0,     7,     8,    92,    10,   232,   233,   234,
                   1679:    354,   235,    12,    83,     0,     0,     0,     0,     0,     0,
                   1680:      0,     0,     0,    83,     0,    83,    83,    15,   236,   237,
                   1681:    238,    16,     0,   239,     0,    17,     0,   240,   241,     0,
                   1682:    242,    19,   243,   244,   510,     0,   245,   246,   247,   248,
                   1683:    249,    21,     0,    22,  -237,     0,     0,     0,     0,     0,
                   1684:      0,     0,   250,     0,     0,   940,     0,   177,   191,     0,
                   1685:      0,     0,     0,   252,   253,   941,     0,     0,     0,     0,
                   1686:      0,   255,   256,   257,     0,   513,     0,     0,   788,   515,
                   1687:      0,     0,   259,   355,     0,     0,     7,     8,   158,   159,
                   1688:    160,     0,     0,     0,   260,    12,     0,     0,     0,   148,
                   1689:      0,   148,     0,     0,     0,     0,     0,     0,     0,     0,
                   1690:      0,     0,     0,   148,   148,     0,   148,     0,    17,     0,
                   1691:      0,     0,     0,     0,    19,     0,     0,   510,     0,     0,
                   1692:      0,     0,     0,     0,    21,     0,    22,     0,     0,     0,
                   1693:      0,     0,     0,     0,     0,   306,   308,     0,   603,     0,
                   1694:      0,     0,   425,     0,     0,     0,     0,     0,   604,     0,
                   1695:      0,     0,     0,     0,     0,     0,    26,     0,   513,     0,
                   1696:      0,   611,   515,     0,     0,     0,     0,     0,     0,     0,
                   1697:   1026,     0,    83,  1026,     0,   419,     0,     0,     0,     0,
                   1698:      0,     0,    83,    83,    83,     0,   455,     0,     7,     8,
                   1699:     92,    10,   232,   233,   234,   354,   235,    12,     0,     0,
                   1700:      0,     0,     0,     0,     0,     0,   841,     0,     0,     0,
                   1701:      0,     0,    15,   236,   237,   238,    16,     0,   239,     0,
                   1702:     17,     0,   240,   241,     0,   242,    19,   243,   244,   510,
                   1703:      0,   245,   246,   247,   248,   249,    21,     0,    22,  -237,
                   1704:      0,     0,     0,     0,     0,     0,     0,   250,     0,     0,
                   1705:    845,   419,     0,     0,  1164,     0,     0,     0,   252,   253,
                   1706:    846,     0,     0,    83,     0,    83,   255,   256,   257,     0,
                   1707:    513,     0,     0,   847,   515,     0,    83,   259,   355,     0,
                   1708:      0,   841,   841,   841,  1101,     0,     0,     0,     0,   260,
                   1709:      0,     0,     0,     0,     0,     0,     0,   559,   560,     0,
                   1710:    561,   466,   467,   468,  1165,   469,   470,   471,   472,   473,
                   1711:    474,   475,   476,   477,   478,   479,   480,   481,   482,   483,
                   1712:    484,   485,   486,   487,     0,   148,     0,     0,   419,     0,
                   1713:      0,     0,     0,     0,     0,     0,     0,     0,  1255,     0,
                   1714:    966,   967,    92,    10,   232,   233,   234,     0,   235,    12,
                   1715:    968,     0,   969,   970,   971,   972,   973,   974,   975,   976,
                   1716:    977,   978,    13,    14,    15,   236,   237,   238,    16,    83,
                   1717:    239,     0,    17,     0,   240,   241,     0,   242,    19,   243,
                   1718:    244,     0,     0,   245,   246,   247,   248,   249,    21,     0,
                   1719:    979,   347,     0,   980,     0,     0,     0,     0,     0,   250,
                   1720:      0,     0,   251,     0,     0,     0,     0,     0,     0,     0,
                   1721:    252,   253,   254,    83,    83,     0,    83,     0,   255,   256,
                   1722:    257,     0,     0,     0,     0,   258,     0,   981,     0,   259,
                   1723:      0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
                   1724:   1256,   260,  1277,     0,   966,   967,    92,    10,   232,   233,
                   1725:    234,     0,   235,    12,   968,     0,   969,   970,   971,   972,
                   1726:    973,   974,   975,   976,   977,   978,    13,    14,    15,   236,
                   1727:    237,   238,    16,     0,   239,     0,    17,     0,   240,   241,
                   1728:      0,   242,    19,   243,   244,     0,     0,   245,   246,   247,
                   1729:    248,   249,    21,     0,   979,   347,     0,   980,     0,     0,
                   1730:      0,     0,     0,   250,     0,     0,   251,     0,     0,     0,
                   1731:      0,     0,     0,     0,   252,   253,   254,     0,     0,     0,
                   1732:      0,     0,   255,   256,   257,     0,     0,     0,     0,   258,
                   1733:      0,   981,     0,   259,     0,     0,     0,     0,     0,     0,
                   1734:      0,     0,     0,     0,  1278,   260,  1277,     0,   966,   967,
                   1735:     92,    10,   232,   233,   234,     0,   235,    12,   968,     0,
                   1736:    969,   970,   971,   972,   973,   974,   975,   976,   977,   978,
                   1737:     13,    14,    15,   236,   237,   238,    16,     0,   239,     0,
                   1738:     17,     0,   240,   241,     0,   242,    19,   243,   244,     0,
                   1739:      0,   245,   246,   247,   248,   249,    21,     0,   979,   347,
                   1740:      0,   980,     0,     0,     0,     0,     0,   250,     0,     0,
                   1741:    251,     0,     0,     0,     0,     0,     0,     0,   252,   253,
                   1742:    254,     0,     0,     0,     0,     0,   255,   256,   257,     0,
                   1743:      0,     0,     0,   258,     0,   981,     0,   259,     0,     0,
                   1744:      0,     0,     0,     0,     0,     0,     0,     0,  1283,   260,
                   1745:   1277,     0,   966,   967,    92,    10,   232,   233,   234,     0,
                   1746:    235,    12,   968,     0,   969,   970,   971,   972,   973,   974,
                   1747:    975,   976,   977,   978,    13,    14,    15,   236,   237,   238,
                   1748:     16,     0,   239,     0,    17,     0,   240,   241,     0,   242,
                   1749:     19,   243,   244,     0,     0,   245,   246,   247,   248,   249,
                   1750:     21,     0,   979,   347,     0,   980,     0,     0,     0,     0,
                   1751:      0,   250,     0,     0,   251,     0,     0,     0,     0,     0,
                   1752:      0,     0,   252,   253,   254,     0,     0,     0,     0,     0,
                   1753:    255,   256,   257,     0,     0,     0,     0,   258,     0,   981,
                   1754:      0,   259,     0,     0,     0,     0,     0,     0,     0,     0,
                   1755:      0,     0,  1322,   260,   965,     0,   966,   967,    92,    10,
                   1756:    232,   233,   234,     0,   235,    12,   968,     0,   969,   970,
                   1757:    971,   972,   973,   974,   975,   976,   977,   978,    13,    14,
                   1758:     15,   236,   237,   238,    16,     0,   239,     0,    17,     0,
                   1759:    240,   241,     0,   242,    19,   243,   244,     0,     0,   245,
                   1760:    246,   247,   248,   249,    21,     0,   979,   347,     0,   980,
                   1761:      0,     0,     0,     0,     0,   250,     0,     0,   251,     0,
                   1762:      0,     0,     0,     0,     0,     0,   252,   253,   254,     0,
                   1763:      0,     0,     0,     0,   255,   256,   257,     0,     0,     0,
                   1764:      0,   258,     0,   981,  1249,   259,   966,   967,    92,    10,
                   1765:    232,   233,   234,     0,   235,    12,   968,   260,   969,   970,
                   1766:    971,   972,   973,   974,   975,   976,   977,   978,    13,    14,
                   1767:     15,   236,   237,   238,    16,     0,   239,     0,    17,     0,
                   1768:    240,   241,     0,   242,    19,   243,   244,     0,     0,   245,
                   1769:    246,   247,   248,   249,    21,     0,   979,   347,     0,   980,
                   1770:      0,     0,     0,     0,     0,   250,     0,     0,   251,     0,
                   1771:      0,     0,     0,     0,     0,     0,   252,   253,   254,     0,
                   1772:      0,     0,     0,     0,   255,   256,   257,     0,     0,     0,
                   1773:      0,   258,     0,   981,  1310,   259,   966,   967,    92,    10,
                   1774:    232,   233,   234,     0,   235,    12,   968,   260,   969,   970,
                   1775:    971,   972,   973,   974,   975,   976,   977,   978,    13,    14,
                   1776:     15,   236,   237,   238,    16,     0,   239,     0,    17,     0,
                   1777:    240,   241,     0,   242,    19,   243,   244,     0,     0,   245,
                   1778:    246,   247,   248,   249,    21,     0,   979,   347,     0,   980,
                   1779:      0,     0,     0,     0,     0,   250,     0,     0,   251,     0,
                   1780:      0,     0,     0,     0,     0,     0,   252,   253,   254,     0,
                   1781:      0,     0,     0,     0,   255,   256,   257,     0,     0,     0,
                   1782:      0,   258,     0,   981,   634,   259,     7,     8,    92,    10,
                   1783:    232,   233,   234,   354,   235,    12,     0,   260,     0,     0,
                   1784:      0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
                   1785:     15,   236,   237,   238,    16,     0,   239,     0,    17,     0,
                   1786:    240,   241,     0,   242,    19,   243,   244,     0,     0,   245,
                   1787:    246,   247,   248,   249,    21,     0,    22,     0,     0,     0,
                   1788:      0,     0,     0,     0,     0,   250,     0,     0,   251,     0,
                   1789:      0,     0,     0,     0,     0,     0,   252,   253,   254,     0,
                   1790:      0,     0,     0,     0,   255,   256,   257,     0,     0,     0,
                   1791:      0,   258,     0,     0,     0,   259,   355,     0,     0,     0,
                   1792:      0,     0,     0,     0,     0,  -666,   587,   260,   711,   712,
                   1793:      0,    10,   437,   233,   234,     0,   235,    12,   474,   475,
                   1794:    476,   477,   478,   479,   480,   481,   482,   483,   484,   485,
                   1795:    486,   487,    15,   236,   237,   238,    16,     0,   239,     0,
                   1796:     17,     0,   240,   241,     0,   242,    19,   243,   244,     0,
                   1797:      0,   245,   246,   247,   248,   249,    21,     0,   713,   588,
                   1798:      0,     0,     0,     0,     0,     0,     0,   250,     0,     0,
                   1799:    251,     0,     0,     0,     0,     0,     0,     0,   252,   253,
                   1800:    254,     0,     0,     0,     0,     0,   255,   256,   257,     0,
                   1801:      0,     0,     0,   258,   714,     0,   587,   259,   711,   712,
                   1802:      0,    10,   437,   233,   234,     0,   235,    12,   826,   260,
                   1803:      0,     0,     0,     0,  1042,     0,     0,     0,     0,     0,
                   1804:      0,     0,    15,   236,   237,   238,    16,     0,   239,     0,
                   1805:     17,     0,   240,   241,     0,   242,    19,   243,   244,     0,
                   1806:      0,   245,   246,   247,   248,   249,    21,     0,   713,   588,
                   1807:      0,     0,     0,     0,     0,     0,     0,   250,     0,     0,
                   1808:    251,     0,     0,     0,     0,     0,     0,     0,   252,   253,
                   1809:    254,     0,     0,     0,     0,     0,   255,   256,   257,     0,
                   1810:      0,     0,     0,   258,     0,     0,   587,   259,   711,   712,
                   1811:      0,    10,   437,   233,   234,     0,   235,    12,  -384,   260,
                   1812:      0,     0,     0,     0,  1042,     0,     0,     0,     0,     0,
                   1813:      0,     0,    15,   236,   237,   238,    16,     0,   239,     0,
                   1814:     17,     0,   240,   241,     0,   242,    19,   243,   244,     0,
                   1815:      0,   245,   246,   247,   248,   249,    21,     0,   713,   588,
                   1816:      0,     0,     0,     0,     0,     0,     0,   250,     0,     0,
                   1817:    251,     0,     0,     0,     0,     0,     0,     0,   252,   253,
                   1818:    254,     0,     0,     0,     0,     0,   255,   256,   257,     0,
                   1819:      0,     0,     0,   258,     0,     0,  1158,   259,     7,     8,
                   1820:     92,    10,   232,   233,   234,     0,   235,    12,  1071,   260,
                   1821:      0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
                   1822:      0,     0,    15,   236,   237,   238,    16,     0,   239,     0,
                   1823:     17,     0,   240,   241,     0,   242,    19,   243,   244,     0,
                   1824:      0,   245,   246,   247,   248,   249,    21,     0,    22,  1159,
                   1825:      0,  1160,     0,     0,     0,     0,     0,   250,     0,     0,
                   1826:    251,     0,     0,     0,     0,     0,     0,     0,   252,   253,
                   1827:    254,     0,     0,     0,     0,     0,   255,   256,   257,   196,
                   1828:      0,     0,     8,   258,    10,    11,     0,   259,     0,     0,
                   1829:     12,     0,     0,     0,     0,     0,     0,     0,     0,   260,
                   1830:      0,     0,     0,     0,     0,    15,     0,     0,     0,    16,
                   1831:      0,     0,     0,    17,     0,   197,   198,     0,     0,     0,
                   1832:      0,     0,   199,     0,     0,     0,     0,     0,     0,    21,
                   1833:      0,    93,     0,   200,     0,   201,   202,   203,     0,   204,
                   1834:    205,   206,   207,   208,   209,   210,   211,   212,   213,   214,
                   1835:    215,   216,   217,   218,   219,   220,   221,     0,     0,   222,
                   1836:    223,   224,     0,   455,   225,     7,     8,   226,    10,   232,
                   1837:    233,   234,     0,   235,    12,     0,     0,     0,     0,     0,
                   1838:      0,     0,   227,     0,     0,     0,     0,     0,     0,    15,
                   1839:    236,   237,   238,    16,     0,   239,     0,    17,     0,   240,
                   1840:    241,     0,   242,    19,   243,   244,     0,     0,   245,   246,
                   1841:    247,   248,   249,    21,     0,    22,  -237,     0,     0,     0,
                   1842:      0,     0,     0,     0,   250,     0,     0,   251,     0,     0,
                   1843:      0,     0,     0,     0,     0,   252,   253,   254,     0,     0,
                   1844:      0,     0,     0,   255,   256,   257,     0,     0,     0,     0,
                   1845:    258,     0,     0,   587,   259,     7,     8,     0,    10,   437,
                   1846:    233,   234,     0,   235,    12,     0,   260,     0,     0,     0,
                   1847:      0,     0,     0,     0,     0,     0,     0,     0,     0,    15,
                   1848:    236,   237,   238,    16,     0,   239,     0,    17,     0,   240,
                   1849:    241,     0,   242,    19,   243,   244,     0,     0,   245,   246,
                   1850:    247,   248,   249,    21,     0,    22,   588,     0,     0,     0,
                   1851:      0,     0,     0,     0,   250,     0,     0,   251,     0,     0,
                   1852:      0,     0,     0,     0,     0,   252,   253,   254,     0,     0,
                   1853:      0,     0,     0,   255,   256,   257,     0,     0,     0,     0,
                   1854:    258,     0,     0,   455,   259,     7,     8,     0,    10,   232,
                   1855:    233,   234,     0,   235,    12,     0,   260,     0,     0,     0,
                   1856:      0,     0,     0,     0,     0,     0,     0,     0,     0,    15,
                   1857:    236,   237,   238,    16,     0,   239,     0,    17,     0,   240,
                   1858:    241,     0,   242,    19,   243,   244,     0,     0,   245,   246,
                   1859:    247,   248,   249,    21,     0,    22,  -237,     0,     0,     0,
                   1860:      0,     0,     0,     0,   250,     0,     0,  1177,     0,     0,
                   1861:      0,     0,     0,     0,     0,   252,   253,  1178,     0,     0,
                   1862:      0,     0,     0,   255,   256,   257,     0,     0,     0,     0,
                   1863:   1179,     0,     0,  1229,   259,     7,     8,     0,    10,   232,
                   1864:    233,   234,     0,   235,    12,     0,   260,     0,     0,     0,
                   1865:      0,     0,     0,     0,     0,     0,     0,     0,     0,    15,
                   1866:    236,   237,   238,    16,     0,   239,     0,    17,     0,   240,
                   1867:    241,     0,   242,    19,   243,   244,     0,     0,   245,   246,
                   1868:    247,   248,   249,    21,     0,    22,     0,     0,  -139,     0,
                   1869:      0,     0,     0,     0,   250,     0,     0,   251,     0,     0,
                   1870:      0,     0,     0,     0,     0,   252,   253,   254,     0,     0,
                   1871:      0,     0,     0,   255,   256,   257,     0,     0,     0,     0,
                   1872:    258,     0,     0,   721,   259,     7,     8,     0,    10,   437,
                   1873:    233,   234,     0,   235,    12,     0,   260,     0,     0,     0,
                   1874:      0,     0,     0,     0,     0,     0,     0,     0,     0,    15,
                   1875:    236,   237,   238,    16,     0,   239,     0,    17,     0,   240,
                   1876:    241,     0,   242,    19,   243,   244,     0,     0,   245,   246,
                   1877:    247,   248,   249,    21,     0,    22,     0,     0,     0,     0,
                   1878:      0,     0,     0,     0,   250,     0,     0,   251,     0,     0,
                   1879:      0,     0,     0,     0,     0,   252,   253,   254,     0,     0,
                   1880:      0,     0,     0,   255,   256,   257,     0,     0,     0,     0,
                   1881:    258,     0,     0,     0,   259,     0,     0,     0,     0,     0,
                   1882:      0,     0,     0,     0,  -656,   800,   260,     7,     8,     0,
                   1883:     10,   437,   233,   234,     0,   235,    12,   475,   476,   477,
                   1884:    478,   479,   480,   481,   482,   483,   484,   485,   486,   487,
                   1885:      0,    15,   236,   237,   238,    16,     0,   239,     0,    17,
                   1886:      0,   240,   241,     0,   242,    19,   243,   244,     0,     0,
                   1887:    245,   246,   247,   248,   249,    21,     0,    22,     0,     0,
                   1888:      0,     0,     0,     0,     0,     0,   250,     0,     0,   251,
                   1889:      0,     0,     0,     0,     0,     0,     0,   252,   253,   254,
                   1890:      0,     0,     0,     0,     0,   255,   256,   257,     0,     0,
                   1891:      0,     0,   258,     0,     0,   802,   259,     7,     8,     0,
                   1892:     10,   437,   233,   234,     0,   235,    12,     0,   260,     0,
                   1893:      0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
                   1894:      0,    15,   236,   237,   238,    16,     0,   239,     0,    17,
                   1895:      0,   240,   241,     0,   242,    19,   243,   244,     0,     0,
                   1896:    245,   246,   247,   248,   249,    21,     0,    22,     0,     0,
                   1897:      0,     0,     0,     0,     0,     0,   250,     0,     0,   251,
                   1898:      0,     0,     0,     0,     0,     0,     0,   252,   253,   254,
                   1899:      0,     0,     0,     0,     0,   255,   256,   257,     0,     0,
                   1900:      0,     0,   258,     0,     7,     8,   259,    10,   437,   233,
                   1901:    234,     0,   235,    12,     0,     0,     0,     0,   260,     0,
                   1902:      0,     0,     0,     0,     0,     0,     0,     0,    15,   236,
                   1903:    237,   238,    16,     0,   239,     0,    17,     0,   240,   241,
                   1904:      0,   242,    19,   243,   244,     0,     0,   245,   246,   247,
                   1905:    248,   249,    21,     0,    22,     0,     0,     0,     0,     0,
                   1906:      0,     0,     0,   250,     0,     0,   251,     0,     0,     0,
                   1907:      0,     0,     0,     0,   252,   253,   254,     0,     0,     0,
                   1908:      0,     0,   255,   256,   257,     0,     0,     0,     0,   258,
                   1909:      0,     0,     0,   259,     0,     0,     0,     0,     0,     0,
                   1910:      0,     0,     0,     0,     0,   260,   760,   966,   967,    92,
                   1911:     10,   232,   233,   234,     0,   235,    12,   968,     0,   969,
                   1912:    970,   971,   972,   973,   974,   975,   976,   977,   978,    13,
                   1913:     14,    15,   236,   237,   238,    16,     0,   239,     0,    17,
                   1914:      0,   240,   241,     0,   242,    19,   243,   244,     0,     0,
                   1915:    245,   246,   247,   248,   249,    21,     0,   979,   347,     0,
                   1916:    980,     0,     0,     0,     0,     0,   250,     0,     0,   251,
                   1917:      0,     0,     0,     0,     0,     0,     0,   252,   253,   254,
                   1918:      0,     0,     0,     0,     0,   255,   256,   257,     0,     0,
                   1919:      0,     0,   258,     0,   981,     0,   259,     0,     0,     0,
                   1920:      0,     0,     0,     0,     0,     0,     0,  1110,   260,   966,
                   1921:    967,    92,    10,   232,   233,   234,     0,   235,    12,   968,
                   1922:      0,   969,   970,   971,   972,   973,   974,   975,   976,   977,
                   1923:    978,    13,    14,    15,   236,   237,   238,    16,     0,   239,
                   1924:      0,    17,     0,   240,   241,     0,   242,    19,   243,   244,
                   1925:      0,     0,   245,   246,   247,   248,   249,    21,     0,   979,
                   1926:    347,     0,   980,     0,     0,     0,     0,     0,   250,     0,
                   1927:      0,   251,     0,     0,     0,     0,     0,     0,     0,   252,
                   1928:    253,   254,     0,     0,     0,     0,     0,   255,   256,   257,
                   1929:      0,     0,     0,     0,   258,     0,   981,     0,   259,   966,
                   1930:    967,    92,    10,   232,   233,   234,     0,   235,    12,   968,
                   1931:    260,   969,   970,   971,   972,   973,   974,   975,   976,   977,
                   1932:    978,    13,    14,    15,   236,   237,   238,    16,     0,   239,
                   1933:      0,    17,     0,   240,   241,     0,   242,    19,   243,   244,
                   1934:      0,     0,   245,   246,   247,   248,   249,    21,     0,   979,
                   1935:   1270,     0,   980,     0,     0,     0,     0,     0,   250,     0,
                   1936:      0,   251,     0,     0,     0,     0,     0,     0,     0,   252,
                   1937:    253,   254,     0,     0,     0,     0,     0,   255,   256,   257,
                   1938:      0,     0,     0,     0,   258,     0,   981,     0,   259,   966,
                   1939:    967,    92,    10,   232,   233,   234,     0,   235,    12,   968,
                   1940:    260,   969,   970,   971,   972,   973,   974,   975,   976,   977,
                   1941:    978,    13,    14,    15,   236,   237,   238,    16,     0,   239,
                   1942:      0,    17,     0,   240,   241,     0,   242,    19,   243,   244,
                   1943:      0,     0,   245,   246,   247,   248,   249,    21,     0,   979,
                   1944:      0,     0,   980,     0,     0,     0,     0,     0,   250,     0,
                   1945:      0,   251,     0,     0,     0,     0,     0,     0,     0,   252,
                   1946:    253,   254,     0,     0,     0,     0,     0,   255,   256,   257,
                   1947:      0,     0,     0,     0,   258,     0,   981,     0,   259,     7,
                   1948:      8,    92,    10,   232,   233,   234,   354,   235,    12,     0,
                   1949:    260,     0,     0,     0,     0,     0,     0,     0,     0,     0,
                   1950:      0,     0,     0,    15,   236,   237,   238,    16,     0,   239,
                   1951:      0,    17,     0,   240,   241,     0,   242,    19,   243,   244,
                   1952:    510,     0,   245,   246,   247,   248,   249,    21,     0,    22,
                   1953:      0,     0,     0,     0,     0,     0,     0,     0,   250,     0,
                   1954:      0,   786,     0,     0,     0,     0,     0,     0,     0,   252,
                   1955:    253,   787,     0,     0,     0,     0,     0,   255,   256,   257,
                   1956:      0,   513,     0,     0,   788,   515,     0,     0,   259,   355,
                   1957:      7,     8,    92,    10,   232,   233,   234,   354,   235,    12,
                   1958:    260,     0,     0,     0,     0,     0,     0,     0,     0,     0,
                   1959:      0,     0,     0,     0,    15,   236,   237,   238,    16,     0,
                   1960:    239,     0,    17,     0,   240,   241,     0,   242,    19,   243,
                   1961:    244,   510,     0,   245,   246,   247,   248,   249,    21,     0,
                   1962:     22,     0,     0,     0,     0,     0,     0,     0,     0,   250,
                   1963:      0,     0,   845,     0,     0,     0,     0,     0,     0,     0,
                   1964:    252,   253,   846,     0,     0,     0,     0,     0,   255,   256,
                   1965:    257,     0,   513,     0,     0,   847,   515,     0,     0,   259,
                   1966:    355,     7,     8,     0,    10,   232,   233,   234,     0,   235,
                   1967:     12,   260,     0,     0,     0,     0,     0,     0,     0,     0,
                   1968:      0,     0,     0,     0,     0,    15,   236,   237,   238,    16,
                   1969:      0,   239,     0,    17,     0,   240,   241,     0,   242,    19,
                   1970:    243,   244,   510,     0,   245,   246,   247,   248,   249,    21,
                   1971:      0,    22,     0,     0,     0,     0,     0,     0,     0,     0,
                   1972:    250,     0,     0,   786,     0,     0,     0,     0,     0,     0,
                   1973:      0,   252,   253,   787,     0,     0,     0,     0,     0,   255,
                   1974:    256,   257,     0,   513,     0,     0,   788,   515,     7,     8,
                   1975:      0,    10,   232,   233,   234,     0,   235,    12,     0,     0,
                   1976:      0,     0,   260,     0,     0,     0,     0,     0,     0,     0,
                   1977:      0,     0,    15,   236,   237,   238,    16,     0,   239,     0,
                   1978:     17,     0,   240,   241,     0,   242,    19,   243,   244,   510,
                   1979:      0,   245,   246,   247,   248,   249,    21,     0,    22,     0,
                   1980:      0,     0,     0,     0,     0,     0,     0,   250,     0,     0,
                   1981:    845,     0,     0,     0,     0,     0,     0,     0,   252,   253,
                   1982:    846,     0,     0,     0,     0,     0,   255,   256,   257,     0,
                   1983:    513,     0,     0,   847,   515,     7,     8,     0,    10,   232,
                   1984:    233,   234,     0,   235,    12,     0,     0,     0,     0,   260,
                   1985:      0,     0,     0,     0,     0,     0,     0,     0,     0,    15,
                   1986:    236,   237,   238,    16,     0,   239,     0,    17,     0,   240,
                   1987:    241,     0,   242,    19,   243,   244,   510,     0,   245,   246,
                   1988:    247,   248,   249,    21,     0,    22,     0,     0,     0,     0,
                   1989:      0,     0,     0,     0,   250,     0,     0,   940,     0,     0,
                   1990:      0,     0,     0,     0,     0,   252,   253,   941,     0,     0,
                   1991:      0,     0,     0,   255,   256,   257,     0,   513,     0,     0,
                   1992:    788,   515,     7,     8,     0,    10,   232,   233,   234,     0,
                   1993:    235,    12,     0,     0,     0,     0,   260,     0,     0,     0,
                   1994:      0,     0,     0,     0,     0,     0,    15,   236,   237,   238,
                   1995:     16,     0,   239,     0,    17,     0,   240,   241,     0,   242,
                   1996:     19,   243,   244,     0,     0,   245,   246,   247,   248,   249,
                   1997:     21,     0,    22,     0,     0,     0,     0,     0,     0,     0,
                   1998:      0,   250,     0,     0,   251,     0,     0,     0,     0,   304,
                   1999:      0,     0,   252,   253,   254,     0,     0,     0,     0,     0,
                   2000:    255,   256,   257,     0,     0,     0,     0,   258,     0,     7,
                   2001:      8,   259,    10,   437,   233,   234,     0,   235,    12,     0,
                   2002:      0,     0,     0,   260,     0,     0,     0,     0,     0,     0,
                   2003:      0,     0,     0,    15,   236,   237,   238,    16,     0,   239,
                   2004:      0,    17,     0,   240,   241,     0,   242,    19,   243,   244,
                   2005:      0,     0,   245,   246,   247,   248,   249,    21,     0,    22,
                   2006:      0,     0,  1087,     0,     0,     0,     0,     0,   250,     0,
                   2007:      0,   251,     0,     0,     0,     0,     0,     0,     0,   252,
                   2008:    253,   254,     0,     0,     0,     0,     0,   255,   256,   257,
                   2009:      0,     0,     0,     0,   258,     0,     7,     8,   259,    10,
                   2010:    232,   233,   234,     0,   235,    12,     0,     0,     0,     0,
                   2011:    260,     0,     0,     0,     0,     0,     0,     0,     0,     0,
                   2012:     15,   236,   237,   238,    16,     0,   239,     0,    17,     0,
                   2013:    240,   241,     0,   242,    19,   243,   244,     0,     0,   245,
                   2014:    246,   247,   248,   249,    21,     0,    22,     0,     0,     0,
                   2015:      0,     0,     0,     0,     0,   250,     0,     0,   251,     0,
                   2016:      0,     0,     0,     0,     0,     0,   252,   253,   254,     0,
                   2017:      0,     0,     0,     0,   255,   256,   257,     0,     0,     0,
                   2018:      0,   258,     0,     7,     8,   259,    10,   437,   233,   234,
                   2019:      0,   235,    12,     0,     0,     0,     0,   260,     0,     0,
                   2020:      0,     0,     0,     0,     0,     0,     0,    15,   236,   237,
                   2021:    238,    16,     0,   239,     0,    17,     0,   240,   241,     0,
                   2022:    242,    19,   243,   244,     0,     0,   245,   246,   247,   248,
                   2023:    249,    21,     0,    22,   463,     0,     0,     0,     0,     0,
                   2024:      0,     0,   250,     0,     0,   251,     0,     0,     0,     0,
                   2025:      0,     0,     0,   252,   253,   254,     0,     0,     0,     0,
                   2026:      0,   255,   256,   257,     0,     0,     7,     8,   464,    10,
                   2027:    437,   233,   234,     0,   235,    12,     0,     0,     0,     0,
                   2028:      0,     0,     0,     0,   260,     0,     0,     0,     0,     0,
                   2029:     15,   236,   237,   238,    16,     0,   239,     0,    17,     0,
                   2030:    240,   241,     0,   242,    19,   243,   244,     0,     0,   245,
                   2031:    246,   247,   248,   249,    21,     0,    22,     0,     0,     0,
                   2032:      0,     0,     0,     0,     0,   250,     0,     0,   251,     0,
                   2033:      0,     0,     0,     0,     0,     0,   252,   253,   254,     0,
                   2034:      0,     0,     0,     0,   255,   256,   257,     0,     0,     0,
                   2035:      0,   258,   500,     7,     8,     0,    10,   437,   233,   234,
                   2036:      0,   235,    12,     0,     0,     0,     0,   260,     0,     0,
                   2037:      0,     0,     0,     0,     0,     0,     0,    15,   236,   237,
                   2038:    238,    16,     0,   239,     0,    17,     0,   240,   241,     0,
                   2039:    242,    19,   243,   244,     0,     0,   245,   246,   247,   248,
                   2040:    249,    21,     0,    22,     0,     0,     0,     0,     0,     0,
                   2041:      0,     0,   250,     0,     0,   251,     0,     0,     0,     0,
                   2042:      0,     0,     0,   252,   253,   254,     0,     0,     0,     0,
                   2043:      0,   255,   256,   257,     0,     0,     0,     0,   258,     0,
                   2044:      7,   697,   259,    10,   437,   233,   234,     0,   235,    12,
                   2045:      0,     0,     0,     0,   260,     0,     0,     0,     0,     0,
                   2046:      0,     0,     0,     0,    15,   236,   237,   238,    16,     0,
                   2047:    239,     0,    17,     0,   240,   241,     0,   242,    19,   243,
                   2048:    244,     0,     0,   245,   246,   247,   248,   249,    21,     0,
                   2049:     22,     0,     0,     0,     0,     0,     0,     0,     0,   250,
                   2050:      0,     0,   251,     0,     0,     0,     0,     0,     0,     0,
                   2051:    252,   253,   254,     0,     0,     0,     0,     0,   255,   256,
                   2052:    257,     0,     0,     0,     0,   258,     0,     7,     8,   259,
                   2053:     10,   437,   233,   234,     0,   235,    12,     0,     0,     0,
                   2054:      0,   260,     0,     0,     0,     0,     0,     0,     0,     0,
                   2055:      0,    15,   236,   237,   238,    16,     0,   239,     0,    17,
                   2056:      0,   240,   241,     0,   242,    19,   243,   244,     0,     0,
                   2057:    245,   246,   247,   248,   249,    21,     0,    22,     0,     0,
                   2058:      0,     0,     0,     0,     0,     0,   250,     0,     0,   890,
                   2059:      0,     0,     0,     0,     0,     0,     0,   252,   253,   891,
                   2060:      0,     0,     0,     0,     0,   255,   256,   257,     0,     0,
                   2061:      0,     0,   258,     0,     7,     8,   259,    10,   437,   233,
                   2062:    234,     0,   235,    12,     0,     0,     0,     0,   260,     0,
                   2063:      0,     0,     0,     0,     0,     0,     0,     0,    15,   236,
                   2064:    237,   238,    16,     0,   239,     0,    17,     0,   240,   241,
                   2065:      0,   242,    19,   243,   244,     0,     0,   245,   246,   247,
                   2066:    248,   249,    21,     0,    22,     0,     0,     0,     0,     0,
                   2067:      0,     0,     0,   250,     0,     0,  1177,     0,     0,     0,
                   2068:      0,     0,     0,     0,   252,   253,  1178,     0,     0,     0,
                   2069:      0,     0,   255,   256,   257,     0,     0,     0,     0,  1179,
                   2070:      0,  1242,     8,   259,    10,   437,   233,   234,     0,   235,
                   2071:     12,     0,     0,     0,     0,   260,     0,     0,     0,     0,
                   2072:      0,     0,     0,     0,     0,    15,   236,   237,   238,    16,
                   2073:      0,   239,     0,    17,     0,   240,   241,     0,   242,    19,
                   2074:    243,   244,     0,     0,   245,   246,   247,   248,   249,    21,
                   2075:      0,    22,     0,     0,     0,     0,     0,     0,     0,     0,
                   2076:    250,     0,     0,   251,     0,     0,     0,     0,     0,     0,
                   2077:      0,   252,   253,   254,     0,     0,     0,     0,     0,   255,
                   2078:    256,   257,     0,     0,     0,     0,   258,     0,     7,     8,
                   2079:    259,    10,   437,   233,   234,     0,   235,    12,     0,     0,
                   2080:      0,     0,   260,     0,     0,     0,     0,     0,     0,     0,
                   2081:      0,     0,    15,   236,   237,   238,    16,     0,   239,     0,
                   2082:     17,     0,   240,   241,     0,   242,    19,   243,   244,     0,
                   2083:      0,   245,   246,   247,   248,   249,    21,     0,    22,     0,
                   2084:      0,     0,     0,     0,     0,     0,     0,   250,     0,     0,
                   2085:    251,     0,     0,     0,     0,     0,     0,     0,   252,   253,
                   2086:    254,     0,     0,     0,     0,     0,   255,   256,   257,     0,
                   2087:      0,     7,     8,   258,    10,   437,   233,   234,     0,   235,
                   2088:     12,     0,     0,     0,     0,     0,     0,     0,     0,   260,
                   2089:      0,     0,     0,     0,     0,    15,   236,   237,   238,    16,
                   2090:      0,   239,     0,    17,     0,   240,   241,     0,   242,    19,
                   2091:    243,   244,     0,     0,   245,   246,   247,   248,   249,    21,
                   2092:      0,    22,     0,     0,     0,     0,     0,     0,     0,     0,
                   2093:    250,     0,     0,   890,     0,     0,     0,     0,     0,     0,
                   2094:      0,   252,   253,   891,     0,     0,     0,     0,     0,   255,
                   2095:    256,   257,     0,     0,     7,     8,   258,    10,   232,   233,
                   2096:    234,     0,   235,    12,     0,     0,     0,     0,     0,     0,
                   2097:      0,     0,   260,     0,     0,     0,     0,     0,    15,   236,
                   2098:    237,   238,    16,     0,   239,     0,    17,     0,   240,   241,
                   2099:      0,   242,    19,   243,   244,     0,     0,   245,   246,   247,
                   2100:    248,   249,    21,     0,    22,     0,     0,     0,     0,     0,
                   2101:      0,     0,     0,   250,     0,     0,  1177,     0,     0,     0,
                   2102:      0,     0,     0,     0,   252,   253,  1178,     0,     0,     0,
                   2103:      0,     0,   255,   256,   257,     0,     0,     7,     8,  1179,
                   2104:     10,   437,   233,   234,     0,   235,    12,     0,     0,     0,
                   2105:      0,     0,     0,     0,     0,   260,     0,     0,     0,     0,
                   2106:      0,    15,   236,     0,     0,    16,     0,   239,     0,    17,
                   2107:      0,   240,   241,     0,   242,    19,   243,   244,     0,     0,
                   2108:    245,   246,   247,   248,   249,    21,     0,    22,     0,     0,
                   2109:      0,     0,     0,     0,     0,     0,   250,     0,     0,   251,
                   2110:      0,     0,     0,     0,     0,     0,     0,   252,   253,   254,
                   2111:      0,     0,     0,     0,     0,   255,   256,   257,     0,     0,
                   2112:      7,     8,   441,    10,   437,   233,   234,     0,   235,    12,
                   2113:      0,     0,     0,     0,     0,     0,     0,     0,   260,     0,
                   2114:      0,     0,     0,     0,    15,   236,   237,   238,    16,     0,
                   2115:    239,     0,    17,     0,   240,   241,     0,   242,    19,   243,
                   2116:    244,     0,     0,   245,   246,   247,   248,   249,    21,     0,
                   2117:     22,     0,     7,     8,   158,   159,   160,     0,     0,     0,
                   2118:      0,    12,     0,     0,     0,     0,     0,     7,     8,   151,
                   2119:     10,   152,     0,     0,     0,     0,    12,     0,   255,   256,
                   2120:    257,     0,     0,     0,    17,   258,     0,     0,     0,   259,
                   2121:     19,    15,     0,   510,     0,    16,     0,     0,     0,    17,
                   2122:     21,   260,    22,     0,     0,    19,     0,     0,     0,     0,
                   2123:      0,     0,     0,     0,   603,    21,     0,    22,     0,     0,
                   2124:    153,     0,     0,     0,   604,     0,     0,     0,     0,    24,
                   2125:      0,     0,    26,     0,   513,     0,     0,   605,   515,    25,
                   2126:      0,     7,     8,    92,    10,    11,     0,    26,   618,     0,
                   2127:     12,     0,    27,     0,     0,     0,     0,     0,   655,     8,
                   2128:    151,    10,   152,     0,     0,    15,     0,    12,     0,    16,
                   2129:      0,     0,     0,    17,     0,     0,     0,     0,     0,    19,
                   2130:      0,     0,    15,     0,     0,     0,    16,     0,     0,    21,
                   2131:     17,    22,     0,     0,     0,     0,    19,     0,     0,     0,
                   2132:      0,     0,     0,    24,     0,     0,    21,     0,    22,     0,
                   2133:      0,     0,     0,    25,     0,   658,     0,     0,     0,     0,
                   2134:     24,    26,     0,     0,     0,     0,    27,     0,     0,     0,
                   2135:     25,     7,     8,   151,    10,   152,     0,     0,    26,     0,
                   2136:     12,     0,     0,    27,     0,     0,     0,     0,     7,     8,
                   2137:    151,    10,   152,     0,     0,    15,     0,    12,     0,    16,
                   2138:      0,     0,     0,    17,     0,     0,     0,     0,     0,    19,
                   2139:      0,     0,    15,     0,     0,     0,    16,     0,     0,    21,
                   2140:     17,    22,     0,     0,  1099,     0,    19,     0,     0,     0,
                   2141:      0,     0,     8,    24,    10,   184,    21,     0,    22,     0,
                   2142:     12,     0,     0,    25,     0,     0,     0,     0,     0,     0,
                   2143:     24,    26,     0,     0,     0,    15,    27,     0,     0,    16,
                   2144:     25,     0,     0,    17,     0,     0,     0,     0,    26,     0,
                   2145:      0,     0,   510,    27,     0,     0,     0,     0,     0,    21,
                   2146:      0,    93,     0,     0,     0,     0,     0,     0,     0,     0,
                   2147:    466,   467,   468,   511,   469,   470,   471,   472,   473,   474,
                   2148:    475,   476,   477,   512,   479,   480,   481,   482,   483,   484,
                   2149:    485,   486,   487,   513,     0,     0,   514,   515,   466,   467,
                   2150:    468,     0,   469,   470,   471,   472,   473,   474,   475,   476,
                   2151:    477,   478,   479,   480,   481,   482,   483,   484,   485,   486,
                   2152:    487,   543,   682,   466,   467,   468,     0,   469,   470,   471,
                   2153:    472,   473,   474,   475,   476,   477,   478,   479,   480,   481,
                   2154:    482,   483,   484,   485,   486,   487,  1040,   466,   467,   468,
                   2155:      0,   469,   470,   471,   472,   473,   474,   475,   476,   477,
                   2156:    478,   479,   480,   481,   482,   483,   484,   485,   486,   487,
                   2157:    466,   467,   468,  1204,   469,   470,   471,   472,   473,   474,
                   2158:    475,   476,   477,   478,   479,   480,   481,   482,   483,   484,
                   2159:    485,   486,   487,   466,   467,   468,  1253,   469,   470,   471,
                   2160:    472,   473,   474,   475,   476,   477,   478,   479,   480,   481,
                   2161:    482,   483,   484,   485,   486,   487,   466,   467,   468,     0,
                   2162:    469,   470,   471,   472,   473,   474,   475,   476,   477,   478,
                   2163:    479,   480,   481,   482,   483,   484,   485,   486,   487,   468,
                   2164:      0,   469,   470,   471,   472,   473,   474,   475,   476,   477,
                   2165:    478,   479,   480,   481,   482,   483,   484,   485,   486,   487,
                   2166:    470,   471,   472,   473,   474,   475,   476,   477,   478,   479,
                   2167:    480,   481,   482,   483,   484,   485,   486,   487,   472,   473,
                   2168:    474,   475,   476,   477,   478,   479,   480,   481,   482,   483,
                   2169:    484,   485,   486,   487,   473,   474,   475,   476,   477,   478,
                   2170:    479,   480,   481,   482,   483,   484,   485,   486,   487
                   2171: };
                   2172: 
                   2173: static const short yycheck[] = {     4,
                   2174:      4,   188,   265,   136,   416,   284,   117,    12,   108,   109,
                   2175:      4,   339,    12,   299,     4,    20,    20,   389,   388,    24,
                   2176:     25,    52,    27,   284,   131,   347,   749,    71,    33,    33,
                   2177:     20,    20,   154,   161,   162,   130,   131,   134,   129,    44,
                   2178:    299,    46,   816,    33,   136,   988,  1155,    52,  1047,   181,
                   2179:   1183,   299,    52,    34,    59,   988,     9,     1,     9,     4,
                   2180:      9,    48,   995,    55,    88,    70,    71,   278,  1216,    70,
                   2181:     34,   154,    77,    77,    10,     3,     4,    44,  1226,   407,
                   2182:      7,    10,    87,    55,    55,    56,    87,    77,    77,    36,
                   2183:     95,    96,     4,    98,     3,     4,   101,    98,    70,   104,
                   2184:    105,    36,   185,   108,   109,    51,     4,    60,    53,   368,
                   2185:     54,   103,     4,  1246,   119,   119,   121,   122,    44,    55,
                   2186:    368,    62,   103,    69,    60,    53,    55,    54,    95,   119,
                   2187:     75,    60,   136,    60,   139,   140,   141,    12,  1247,   103,
                   2188:     56,    53,     4,   515,    53,  1144,  1279,    75,  1296,   102,
                   2189:    337,   102,   363,   102,   121,    53,   103,    93,    76,    51,
                   2190:    165,    53,    88,     4,    93,    92,   102,   154,   103,   301,
                   2191:     88,    89,     4,    65,   161,   162,   102,    52,   183,   183,
                   2192:    954,    99,  1163,    75,   125,    27,    44,   103,   193,   286,
                   2193:    913,    53,    44,   183,   188,    60,    51,    89,   185,    56,
                   2194:     58,   142,     0,    44,    69,    60,    58,   299,    55,    54,
                   2195:     51,   398,    53,    75,    69,    60,   157,    44,   136,  1328,
                   2196:   1329,    53,    56,    70,    65,   230,   231,   271,  1209,   440,
                   2197:     88,    89,   107,  1166,    75,     0,    88,   344,   345,     6,
                   2198:      7,    55,   229,    75,    85,    12,   103,    88,    89,   344,
                   2199:    345,   346,   343,   532,     4,   388,     3,     4,    88,    89,
                   2200:     60,    88,    89,    66,   392,   393,   271,   109,    35,   103,
                   2201:    275,   393,   277,   278,   279,   102,   368,    44,   378,   379,
                   2202:    285,     4,    85,   284,     7,    56,    56,    44,   102,   659,
                   2203:   1223,   278,   420,    56,   299,   299,   388,    44,    51,   141,
                   2204:    103,    23,   102,    53,    51,    60,    53,  1250,   313,    44,
                   2205:    985,   316,   987,    56,  1257,   320,    69,  1250,   285,   324,
                   2206:    324,    88,   650,    55,  1257,    75,    97,  1050,    51,    92,
                   2207:     53,    88,    89,   103,   324,   324,    55,    10,    60,    88,
                   2208:    258,    88,    65,   337,    45,   102,   149,   102,  1281,   102,
                   2209:     56,    56,    75,    88,     4,   360,   361,   362,   363,   364,
                   2210:    103,    56,   457,   368,   368,    60,    89,     3,  1311,   374,
                   2211:    102,   376,    56,   378,   379,   250,   363,   136,  1311,   566,
                   2212:    385,   299,    55,   102,   388,    58,   391,    60,   329,   394,
                   2213:    384,     4,   195,   360,     7,   362,   363,   103,   103,     3,
                   2214:      4,    51,   407,    53,   398,   392,   393,    55,   413,   414,
                   2215:      1,   416,   416,   785,   784,    65,   421,    55,    56,   103,
                   2216:     93,    54,   514,    69,    44,    75,   416,    60,   258,   521,
                   2217:     44,    44,    23,   420,    25,    26,    88,    41,    51,    44,
                   2218:     53,    32,   447,   448,   449,   450,   413,    55,    56,    53,
                   2219:    368,    44,    65,   497,   102,    44,   643,    27,    44,    92,
                   2220:     54,   402,    75,    54,    55,    56,    60,    58,    88,    60,
                   2221:    388,    75,    85,    55,    88,    88,    89,    44,   419,    83,
                   2222:    283,    44,    54,    88,    89,   592,     3,     4,    70,   676,
                   2223:     56,   819,   497,    51,   499,    88,    89,   592,    92,    88,
                   2224:     89,    92,    88,   421,   307,    44,   511,   512,     4,   514,
                   2225:    514,     7,   640,   605,    56,   794,   521,   521,   804,   611,
                   2226:    438,    88,   553,   441,    41,    88,   659,   790,   446,   447,
                   2227:    448,   449,   450,   794,   862,    60,    53,   379,   108,   109,
                   2228:     44,    54,   460,   373,    69,   804,   464,   552,   553,    88,
                   2229:     92,   923,    44,   553,    58,    51,   804,    53,    75,     3,
                   2230:      4,    44,     6,   103,   385,   552,    83,   659,    54,    65,
                   2231:    681,   141,   566,   394,    55,    25,    26,    58,   496,    75,
                   2232:    102,     3,     4,   342,    88,   552,     3,     4,   463,    70,
                   2233:     55,    56,     3,     4,     3,     4,    88,    41,   603,   604,
                   2234:    605,   605,   102,    51,    54,    88,   611,   611,   438,    53,
                   2235:     60,   441,    60,   443,   444,   102,   446,    51,  1030,    41,
                   2236:    102,    69,   627,   628,    41,   630,    60,    25,    26,   388,
                   2237:    433,    53,    41,    37,   464,    69,    53,     9,   468,    83,
                   2238:     51,   102,    53,    54,    53,   650,    54,    51,    56,   643,
                   2239:    972,   784,    60,   640,   659,   659,    54,   103,    75,     6,
                   2240:      7,    83,    60,    92,   494,    12,    83,     4,     3,     6,
                   2241:    500,    97,    27,   678,    83,    12,    60,   436,   553,   521,
                   2242:     25,    26,   676,   688,   689,   690,   873,   874,    35,   876,
                   2243:     27,   678,   784,   105,    31,    88,   788,    89,    35,   136,
                   2244:      3,     4,     5,     6,     7,   105,   509,   918,     5,     6,
                   2245:      7,    51,   804,   588,    51,    12,    53,    78,    79,   660,
                   2246:     60,   524,    55,    56,   665,   666,    55,    56,   669,    69,
                   2247:    919,   920,    35,   922,   493,    89,   495,   496,    35,   839,
                   2248:    840,   659,    60,   748,    88,   845,   846,    88,    51,    88,
                   2249:     53,    54,    88,   108,   109,   847,  1078,  1079,    69,    54,
                   2250:     69,    56,   521,   605,   769,    60,   771,    69,   527,   611,
                   2251:   1092,    69,    54,   778,    56,     9,   987,   782,    60,   784,
                   2252:    784,   786,   787,   788,   788,   102,   141,   103,    23,   794,
                   2253:   1112,  1113,    55,   794,   102,    98,    99,   100,   102,   804,
                   2254:    804,   806,   102,     3,     4,     5,     6,     7,   378,   379,
                   2255:      3,     3,     4,   103,   688,   689,   690,   659,    54,    54,
                   2256:     58,    56,   581,    58,     7,    60,    55,    56,    55,    56,
                   2257:    748,   102,   837,   838,   839,   840,   102,  1159,   102,   844,
                   2258:    845,   846,   847,   847,    58,    37,    38,  1328,  1329,    41,
                   2259:    105,   693,   611,    53,   102,     4,   105,   862,    88,    51,
                   2260:    778,    53,    32,    12,   235,   236,   784,   872,  1290,  1291,
                   2261:    875,    20,   877,   877,   879,    24,    25,   105,    27,   873,
                   2262:    874,   105,   876,   102,    33,   102,   804,   877,    75,    76,
                   2263:     77,    78,    79,     4,   102,    44,     7,    46,    51,    25,
                   2264:     26,     6,   105,    52,    88,   342,    32,    44,    58,    55,
                   2265:     59,     5,     6,     7,   919,   920,    58,   922,    12,    58,
                   2266:     56,    56,    71,    56,    56,    56,   756,   868,    77,    55,
                   2267:     56,    55,    58,    44,   693,   940,   941,   102,  1125,  1126,
                   2268:     51,    35,    53,   861,    58,   787,    95,    96,   953,   953,
                   2269:    102,   388,   101,    55,    65,   830,   105,   102,   788,   108,
                   2270:    109,   879,   102,   953,    75,     3,     4,   105,    88,     7,
                   2271:    119,    60,   121,   122,    85,    55,    55,    88,    89,    60,
                   2272:    985,   986,   987,    58,    88,  1080,   102,   102,    70,  1176,
                   2273:    139,   140,   141,   752,   999,  1000,   102,  1002,   840,   436,
                   2274:    987,   102,   102,    41,   846,   847,   765,   102,   767,  1220,
                   2275:    102,    70,    70,    51,    70,    53,   165,   847,   985,   102,
                   2276:    987,    60,    55,   378,   379,  1030,  1030,    65,    60,   102,
                   2277:    905,   861,    60,   102,   183,   605,   102,    75,   105,   842,
                   2278:   1030,   611,   103,    89,   193,    83,    83,   102,   105,   891,
                   2279:     88,    44,   102,   102,     3,     4,   493,   105,   495,   496,
                   2280:   1171,   105,   821,   103,   823,    34,   825,   102,     4,     5,
                   2281:      6,     7,  1331,   102,    10,   102,    12,  1177,  1178,   102,
                   2282:    102,   230,   231,  1331,  1025,  1026,   961,    58,  1183,   659,
                   2283:    527,    27,    41,  1280,    58,    31,   102,  1102,    88,    35,
                   2284:     88,    88,    51,   978,    53,     7,    88,    56,    10,    88,
                   2285:    105,   103,     6,   102,   105,    51,    65,    53,   102,   102,
                   2286:     60,   102,   271,   103,   102,   102,    75,   102,   277,   278,
                   2287:    279,  1125,  1126,    88,    83,   284,   285,   102,    60,    88,
                   2288:     56,   944,    44,    56,   581,     7,    54,   977,    14,    56,
                   2289:    299,  1246,    58,    55,   102,   102,    58,    93,    60,  1034,
                   2290:   1101,   341,    60,    60,   313,    44,   105,   316,    70,    88,
                   2291:     56,   320,  1177,  1178,  1179,   324,    56,    88,    88,  1173,
                   2292:   1121,    58,  1176,    58,  1279,   102,    88,    89,   102,    15,
                   2293:    339,    93,    56,   105,     4,     5,    56,  1072,   102,   102,
                   2294:    102,    56,   103,   102,    56,    56,  1036,  1037,  1038,  1039,
                   2295:    102,   360,   361,   362,   363,   364,  1221,    58,  1048,   368,
                   2296:     58,    31,     9,    56,   102,   374,    36,   376,   102,   378,
                   2297:    379,    56,    56,  1220,    88,    55,   385,  1332,    56,  1331,
                   2298:     88,    51,   391,    53,   102,   394,     4,     5,    91,   102,
                   2299:    605,  1081,   102,   102,  1221,    58,   611,   102,   407,  1089,
                   2300:   1102,  1179,     9,    56,   413,   414,     1,   416,   102,   839,
                   2301:    840,   102,   421,    31,    56,   845,   846,   847,    36,     9,
                   2302:      0,     0,   118,   326,     2,     1,  1280,   119,    23,   804,
                   2303:     25,    26,   119,    51,   129,    53,   819,    32,   447,   448,
                   2304:    449,   450,    99,   460,   659,  1144,  1154,    23,  1185,    25,
                   2305:     26,  1252,   509,  1081,   986,   752,    32,   684,  1197,    54,
                   2306:     55,    56,  1197,    58,   799,    60,  1331,  1331,   765,   588,
                   2307:    767,    33,    33,  1163,   862,   650,  1178,  1179,    54,    55,
                   2308:     56,   809,    58,  1102,    60,   877,   953,    12,   497,  1179,
                   2309:    499,     4,   414,   497,  1184,  1185,   875,    92,     4,     5,
                   2310:      6,     7,   511,   512,    10,   514,    12,    20,   540,   797,
                   2311:   1270,   833,   521,  1304,  1306,    -1,    92,    44,   879,  1209,
                   2312:     33,    27,   368,   532,   821,    31,   823,    -1,   825,    35,
                   2313:     -1,     3,     4,    46,    71,    72,    73,    74,    75,    76,
                   2314:     77,    78,    79,   552,   553,    51,    59,    53,    -1,    -1,
                   2315:     -1,    -1,    -1,  1331,    81,    82,    -1,    -1,    71,    86,
                   2316:     87,    88,    89,    76,    77,    -1,    -1,    -1,    -1,    41,
                   2317:     -1,    -1,    44,    -1,    -1,    88,    89,    -1,    -1,    51,
                   2318:   1199,    53,   622,    96,  1274,    -1,    99,    -1,    60,    -1,
                   2319:     -1,    -1,    -1,    65,   603,   604,   605,    -1,    -1,    -1,
                   2320:   1290,  1291,   611,    75,    -1,    -1,   119,    -1,    -1,   122,
                   2321:     -1,    83,    -1,  1303,    -1,    -1,    88,    -1,   627,   628,
                   2322:     -1,   630,    -1,   136,   839,   840,    -1,    -1,    -1,    -1,
                   2323:    845,   846,   847,    -1,    -1,    -1,     4,     5,     6,     7,
                   2324:     -1,   650,    -1,    -1,    12,    -1,  1265,    -1,     3,     4,
                   2325:    659,    -1,     7,   139,   140,   141,    71,    -1,    -1,    27,
                   2326:     -1,    76,    -1,    31,    -1,    -1,    -1,    35,    -1,   678,
                   2327:    183,    -1,  1102,    88,    89,    -1,    -1,    -1,    -1,   688,
                   2328:    689,   690,    -1,    51,    99,    53,    41,    -1,    -1,    44,
                   2329:     -1,    -1,    -1,    -1,    -1,    -1,    51,    -1,    53,    -1,
                   2330:     -1,    69,    -1,    -1,    -1,    -1,   251,    24,    25,   254,
                   2331:     65,   751,   257,    -1,    -1,    -1,    -1,   230,   263,    -1,
                   2332:     75,   136,    -1,    -1,    -1,    -1,    -1,   272,    83,    -1,
                   2333:     85,    -1,    -1,    88,    89,    -1,    -1,    -1,    -1,   748,
                   2334:     -1,    -1,    -1,    -1,    -1,   258,    -1,  1177,  1178,  1179,
                   2335:     -1,    -1,    -1,     4,    71,     6,     7,    -1,   271,    76,
                   2336:    769,    12,   771,    -1,    -1,    -1,   279,    -1,   808,   778,
                   2337:     -1,    88,    89,   782,    -1,   784,    27,   786,   787,   788,
                   2338:     31,    -1,    99,    -1,    35,   794,   299,    -1,    -1,    -1,
                   2339:     -1,   108,   109,    -1,    -1,   804,    -1,   806,    -1,    -1,
                   2340:     51,    -1,    53,    -1,    -1,    -1,    -1,    -1,   577,    -1,
                   2341:    819,   324,   852,    -1,    -1,    -1,    -1,    -1,    -1,   136,
                   2342:     -1,    -1,   139,   140,    -1,    -1,    -1,    -1,   837,   838,
                   2343:    839,   840,    -1,    -1,    -1,   844,   845,   846,   847,    -1,
                   2344:     -1,    -1,    -1,   258,    -1,    -1,    -1,    -1,   361,    -1,
                   2345:     -1,   364,    -1,   862,    -1,   368,   271,    -1,    -1,    -1,
                   2346:     -1,    -1,   631,   872,   904,   905,   875,    -1,   877,    -1,
                   2347:    879,    -1,    -1,   642,    -1,   388,    73,    74,    75,    76,
                   2348:     77,    78,    79,    -1,   299,    -1,    -1,  1102,   374,    -1,
                   2349:    376,    69,   378,   379,    -1,    -1,    -1,    -1,    -1,    -1,
                   2350:    445,   414,  1199,   416,    -1,   391,    -1,    -1,   421,    -1,
                   2351:    919,   920,    -1,   922,    -1,    -1,    -1,     3,     4,    -1,
                   2352:     -1,   961,    -1,    -1,    -1,   438,    -1,   413,   441,    -1,
                   2353:     -1,   940,   941,   446,   447,   448,   449,   450,   116,    -1,
                   2354:     -1,   258,    -1,    -1,   953,    -1,    -1,   460,    -1,    -1,
                   2355:     -1,   464,    -1,   368,   271,    41,    -1,   135,    44,    -1,
                   2356:     -1,    -1,  1177,  1178,  1179,    51,    -1,    53,  1265,    -1,
                   2357:     -1,    -1,   150,   388,    -1,    -1,   985,   986,   987,    65,
                   2358:     -1,    -1,   299,   496,   497,    -1,    -1,    -1,    -1,    75,
                   2359:    999,  1000,    -1,  1002,    -1,  1035,    -1,    83,    -1,    85,
                   2360:   1040,   514,    88,    89,    -1,    -1,   421,    -1,   521,    -1,
                   2361:     -1,    -1,    -1,    -1,     1,    -1,     3,     4,     5,     6,
                   2362:      7,  1030,    -1,   438,    -1,    12,   441,    -1,    -1,    -1,
                   2363:     -1,   446,   447,   448,   449,   450,    -1,    -1,    25,    26,
                   2364:     27,    -1,   811,    -1,    31,   460,    -1,    -1,    35,   464,
                   2365:     -1,   368,    39,    -1,    41,    -1,    -1,    -1,    45,    -1,
                   2366:     -1,   378,   379,    -1,    51,    -1,    53,    -1,    -1,    56,
                   2367:     -1,   388,    -1,    -1,  1114,  1115,    -1,    -1,    65,    -1,
                   2368:     -1,   496,   497,    -1,    -1,    -1,    -1,    -1,    75,    -1,
                   2369:     -1,   860,   605,  1102,    -1,    -1,    83,    -1,   611,   514,
                   2370:    869,    88,    -1,  1143,   421,    -1,   521,    94,    95,   878,
                   2371:     -1,    -1,    -1,     3,     4,    -1,    -1,   603,   604,   605,
                   2372:     -1,   438,    -1,    -1,   441,   611,    -1,    -1,    -1,   446,
                   2373:    447,   448,   449,   450,    -1,    -1,    -1,    -1,    10,    -1,
                   2374:     -1,   627,   628,   460,   630,    -1,   659,   464,  1188,    -1,
                   2375:     -1,    41,    -1,    25,    26,  1195,  1196,    -1,    -1,    -1,
                   2376:     32,    51,    -1,    53,  1204,    -1,    56,    -1,  1177,  1178,
                   2377:   1179,    -1,    44,   659,    -1,    65,    -1,    -1,    -1,   496,
                   2378:    497,    -1,    -1,    55,    56,    75,    58,    -1,    60,     4,
                   2379:    605,    -1,     7,    83,   511,   512,   611,   514,    88,    -1,
                   2380:     -1,    -1,    -1,   381,   521,    -1,    -1,    -1,    -1,   387,
                   2381:     -1,    -1,  1221,    -1,    -1,   760,    88,    89,    -1,    -1,
                   2382:     92,    93,    -1,  1263,  1264,    -1,    -1,    -1,    -1,    44,
                   2383:    102,    -1,    -1,    -1,    -1,   748,    51,    -1,    53,   752,
                   2384:     -1,   786,   787,    -1,   659,  1014,  1015,    -1,    -1,    -1,
                   2385:     65,    -1,    -1,   431,   432,    -1,   434,    -1,  1027,  1028,
                   2386:     75,    -1,    -1,    -1,    -1,   778,    -1,    -1,    -1,    -1,
                   2387:     85,   784,    -1,    88,    89,   788,     4,     5,     6,     7,
                   2388:     -1,    -1,    -1,    -1,    12,    -1,   603,   604,   605,    -1,
                   2389:   1330,   804,    -1,   806,   611,    -1,    -1,    -1,    -1,    27,
                   2390:    845,   846,    -1,    31,    -1,    -1,    -1,    35,    -1,    -1,
                   2391:     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   832,
                   2392:     -1,    -1,  1331,    51,    -1,    53,    -1,    -1,   277,   278,
                   2393:    279,    -1,    -1,   748,   847,    -1,    -1,    -1,    -1,   517,
                   2394:    518,    -1,   659,    -1,   522,   890,   891,    -1,   861,    -1,
                   2395:     -1,   837,   838,   839,   840,  1124,     3,     4,   844,   845,
                   2396:    846,   847,    -1,   778,   877,    -1,   879,    -1,    -1,   784,
                   2397:     -1,    -1,    -1,   788,    -1,    -1,    -1,    -1,    -1,    -1,
                   2398:    925,    -1,    -1,    -1,    -1,    -1,   872,    -1,    -1,   804,
                   2399:     -1,    -1,    -1,    -1,    41,   940,   941,    -1,    -1,    -1,
                   2400:     -1,    -1,    -1,    -1,    51,    -1,    53,    -1,    -1,    -1,
                   2401:     -1,   360,    -1,   362,   363,   364,    -1,    -1,    65,   597,
                   2402:    598,  1190,  1191,    -1,  1193,  1194,    -1,    -1,    75,   607,
                   2403:     -1,   748,   847,    -1,    -1,   613,    83,    -1,    -1,    -1,
                   2404:    953,    88,    -1,    -1,    -1,    -1,   861,    -1,    -1,    -1,
                   2405:     -1,     1,    -1,     3,     4,     5,     6,     7,    -1,    -1,
                   2406:     -1,   778,    12,    -1,   879,    -1,    -1,   784,    -1,   786,
                   2407:    787,   788,    -1,   986,    -1,   988,    -1,    27,    -1,   657,
                   2408:     -1,    31,   995,    -1,    -1,    35,    36,   804,    -1,     3,
                   2409:      4,    41,    -1,     7,    -1,    -1,    -1,    -1,     3,     4,
                   2410:     -1,    51,     7,    53,    -1,    -1,    56,    -1,    -1,    -1,
                   2411:     60,    -1,    -1,   999,  1000,    65,  1002,  1030,    -1,    -1,
                   2412:     -1,    -1,   839,   840,    76,    75,    -1,    41,   845,   846,
                   2413:    847,  1300,    -1,    83,    -1,    -1,    41,    51,    88,    53,
                   2414:     -1,    -1,    -1,    -1,   861,    -1,    51,    99,    53,    -1,
                   2415:     -1,    65,    -1,   103,    -1,    -1,    -1,    -1,     3,     4,
                   2416:     65,    75,   879,   512,    -1,   514,    -1,    -1,  1081,    83,
                   2417:     75,    -1,   521,    -1,    88,    -1,   754,   755,    83,   757,
                   2418:     -1,    -1,    -1,    88,   136,    -1,    -1,     1,    -1,     3,
                   2419:      4,     5,     6,     7,    -1,    -1,    41,    -1,    12,    -1,
                   2420:     -1,    -1,    -1,   552,    -1,   783,    51,    -1,    53,    -1,
                   2421:     -1,    -1,    -1,    27,    -1,    60,  1102,    31,    -1,    -1,
                   2422:     65,    35,    36,   940,   941,    -1,    -1,    41,    -1,    -1,
                   2423:     75,    -1,  1177,  1178,    -1,    -1,    -1,    51,    83,    53,
                   2424:     -1,    -1,  1155,    88,    -1,    -1,    60,    -1,    -1,    -1,
                   2425:   1163,    65,    -1,  1166,    -1,   604,   605,    -1,    -1,    -1,
                   2426:     -1,    75,   611,    -1,    -1,   843,  1179,    -1,    -1,    83,
                   2427:     -1,  1184,  1185,    -1,    88,    -1,    -1,   855,   856,   857,
                   2428:     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   103,
                   2429:     -1,  1177,  1178,  1179,    -1,    -1,  1209,    -1,    -1,    -1,
                   2430:     -1,    -1,    -1,  1216,    -1,    -1,    -1,   259,    -1,    -1,
                   2431:   1223,    -1,     4,  1226,     6,     7,    -1,    -1,    -1,    -1,
                   2432:     12,    -1,    -1,    -1,     3,     4,     5,     6,     7,   678,
                   2433:     -1,    -1,    -1,    12,  1247,    27,    -1,  1250,    -1,    31,
                   2434:     -1,    -1,    -1,    35,  1257,    -1,    -1,     1,  1163,     3,
                   2435:      4,     5,     6,     7,    -1,   933,    35,    -1,    12,    51,
                   2436:     -1,    53,    41,    -1,  1179,    44,    -1,    -1,  1281,  1184,
                   2437:   1185,    -1,    51,    27,    53,    -1,    -1,    31,    -1,    -1,
                   2438:     -1,    35,    36,  1296,    -1,    -1,    65,    41,    -1,   341,
                   2439:    342,    -1,    -1,    -1,  1209,    -1,    75,    51,  1311,    53,
                   2440:     -1,    -1,    56,    -1,    83,    -1,    60,    -1,    -1,    88,
                   2441:     -1,    65,    -1,    -1,    -1,  1328,  1329,    -1,  1331,    -1,
                   2442:    769,    75,   771,    -1,    -1,    -1,    -1,    -1,    -1,    83,
                   2443:     -1,    -1,    -1,   782,    88,    -1,   388,    -1,   787,   788,
                   2444:   1018,    -1,    -1,    -1,    -1,    -1,  1163,    -1,    -1,   103,
                   2445:     -1,    -1,    -1,    -1,    -1,     4,    -1,     6,     7,   411,
                   2446:   1177,  1178,  1179,    12,    -1,    -1,    -1,  1184,  1185,    -1,
                   2447:     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    27,    -1,
                   2448:     -1,    -1,    31,    -1,   436,  1063,    35,    -1,   837,   838,
                   2449:     -1,   840,  1209,    -1,    -1,   844,    -1,   846,   847,     3,
                   2450:      4,    -1,    51,     7,    53,    54,    -1,    -1,   460,    -1,
                   2451:     -1,   463,    -1,    -1,   466,   467,  1331,   469,   470,   471,
                   2452:    472,   473,   474,   475,   476,   477,   478,   479,   480,   481,
                   2453:    482,   483,   484,   485,   486,   487,    -1,    41,    -1,    88,
                   2454:     44,   493,    -1,   495,   496,    -1,    -1,    51,    -1,    53,
                   2455:      3,     4,     5,     6,     7,    -1,    -1,    10,    -1,    12,
                   2456:     -1,    65,     4,    -1,     6,     7,    -1,    -1,    -1,   521,
                   2457:     12,    75,    -1,    -1,    27,   527,     4,    -1,    31,    83,
                   2458:     -1,    85,    35,    -1,    88,    89,    -1,    -1,    41,    -1,
                   2459:    542,   543,   941,    35,    -1,    -1,    24,    25,    51,    27,
                   2460:     53,    -1,    44,    -1,    -1,    33,    -1,    -1,    -1,    51,
                   2461:     -1,    53,    65,    -1,  1331,    -1,    44,    -1,    46,    -1,
                   2462:     -1,    -1,    75,    65,    -1,    -1,    -1,    -1,    -1,   581,
                   2463:     83,    -1,    -1,    75,    -1,    88,   588,    -1,    66,    -1,
                   2464:     93,    -1,    -1,    85,    -1,    -1,    88,    89,    -1,    -1,
                   2465:    999,  1000,     1,  1002,     3,     4,     5,     6,     7,   611,
                   2466:     -1,    -1,    -1,    12,    -1,    -1,    -1,    95,    -1,    -1,
                   2467:    622,    -1,    -1,   101,    -1,   103,    -1,   105,    27,    -1,
                   2468:    108,   109,    31,    -1,    -1,    -1,    35,    -1,    -1,    -1,
                   2469:     -1,   119,    41,   121,   122,    -1,    45,    -1,    -1,    -1,
                   2470:     -1,    -1,    51,    -1,    53,    -1,   658,    56,    -1,    -1,
                   2471:     -1,   139,   140,   141,    -1,    -1,    65,    -1,    -1,    -1,
                   2472:     -1,   149,    -1,    -1,    -1,    -1,    75,    -1,    -1,    -1,
                   2473:     -1,    -1,    -1,    -1,    83,    -1,    -1,   165,    -1,    88,
                   2474:     -1,   693,    -1,    -1,    -1,    94,     1,    -1,     3,     4,
                   2475:     -1,     6,     7,     8,     9,   183,    11,    12,    -1,    -1,
                   2476:     -1,    -1,   714,    -1,    -1,   193,    -1,    -1,    -1,    -1,
                   2477:     -1,    -1,    27,    28,    29,    30,    31,    -1,    33,    -1,
                   2478:     35,    -1,    37,    38,    -1,    40,    41,    42,    43,    -1,
                   2479:     -1,    46,    47,    48,    49,    50,    51,    -1,    53,   751,
                   2480:    752,    -1,    -1,    -1,    -1,    60,    -1,    62,    -1,    -1,
                   2481:     65,    -1,    -1,   765,    -1,   767,    -1,    -1,    73,    74,
                   2482:     75,    -1,    -1,    -1,    -1,    -1,    81,    82,    83,    -1,
                   2483:     -1,    -1,    -1,    88,    -1,    -1,    -1,    92,    -1,    -1,
                   2484:     -1,    -1,    -1,    -1,   796,    -1,    -1,   275,    -1,   104,
                   2485:     -1,    -1,    -1,    -1,    -1,   283,   808,   285,    -1,     3,
                   2486:      4,    -1,     6,     7,     8,     9,    -1,    11,    12,   821,
                   2487:     -1,   823,    -1,   825,    -1,    -1,    -1,    -1,    -1,    -1,
                   2488:     -1,    -1,    -1,    27,    28,   313,    -1,    31,   316,    33,
                   2489:     -1,    35,   320,    37,    38,    -1,    40,    41,    42,    43,
                   2490:    852,    -1,    46,    47,    48,    49,    50,    51,    -1,    53,
                   2491:     -1,    -1,    -1,    -1,   866,   867,    -1,    -1,    62,    -1,
                   2492:     -1,    65,    -1,    -1,    -1,    -1,    -1,     3,     4,    73,
                   2493:     74,    75,   360,   361,   362,   363,    -1,    81,    82,    83,
                   2494:    368,    -1,    -1,    -1,    88,    -1,   374,    -1,   376,    -1,
                   2495:    378,   379,   904,   905,    -1,    -1,   908,   385,    -1,    -1,
                   2496:    104,    -1,    -1,   391,    -1,    41,   394,    -1,     1,    -1,
                   2497:      3,     4,     5,     6,     7,    51,    -1,    53,    -1,    12,
                   2498:     -1,     3,     4,    -1,    60,   413,   414,    -1,   416,    65,
                   2499:     -1,    -1,    -1,    -1,    27,    -1,    -1,    -1,    31,    75,
                   2500:     -1,    -1,    35,    36,    -1,    -1,    -1,    83,    41,   961,
                   2501:     -1,    -1,    88,    -1,    -1,    -1,    -1,     4,    51,    41,
                   2502:     53,   973,    -1,    -1,     3,     4,    -1,    60,     7,    51,
                   2503:     -1,    53,    65,    -1,    -1,    -1,    -1,    24,    25,    -1,
                   2504:     27,    -1,    75,    65,    -1,    -1,    33,    -1,    -1,    -1,
                   2505:     83,    -1,    -1,    75,    -1,    88,    -1,    44,    -1,    46,
                   2506:     -1,    83,    41,    -1,    -1,    44,    88,    -1,    -1,  1021,
                   2507:    103,    -1,    51,    -1,    53,     3,     4,     5,     6,     7,
                   2508:     -1,   509,    10,  1035,    12,    -1,    65,    -1,  1040,    -1,
                   2509:   1042,    -1,    -1,   521,    -1,    -1,    75,    -1,    -1,    27,
                   2510:     -1,    -1,    -1,    31,    83,    -1,    85,    35,    95,    88,
                   2511:     89,    -1,    -1,    41,   101,    -1,    44,    -1,   105,    -1,
                   2512:     -1,   108,   109,    51,   552,    53,    -1,    -1,    -1,    -1,
                   2513:     -1,    -1,   119,    -1,   121,   122,    -1,    65,    -1,    -1,
                   2514:     -1,     4,    -1,     6,     7,    -1,    -1,    75,    -1,    12,
                   2515:   1102,    -1,   139,   140,   141,    83,    -1,    85,    -1,    -1,
                   2516:     88,    89,  1114,  1115,    27,    93,    -1,    -1,    31,    -1,
                   2517:   1122,  1123,    35,    -1,    -1,   603,   604,   605,   165,    -1,
                   2518:     -1,    -1,    -1,   611,    -1,    -1,    -1,    -1,    51,    -1,
                   2519:     53,  1143,    -1,    -1,    -1,    -1,   183,    -1,    -1,   627,
                   2520:    628,    -1,   630,    -1,    -1,    -1,   193,    -1,    -1,    -1,
                   2521:     -1,    -1,  1164,    68,    69,    70,    71,    72,    73,    74,
                   2522:     75,    76,    77,    78,    79,    88,    -1,     1,    -1,     3,
                   2523:      4,   659,     6,     7,     8,     9,  1188,    11,    12,    -1,
                   2524:     -1,    -1,    -1,  1195,  1196,    -1,    -1,  1199,    -1,    -1,
                   2525:     -1,    -1,  1204,    27,    28,    29,    30,    31,    -1,    33,
                   2526:     -1,    35,    -1,    37,    38,   693,    40,    41,    42,    43,
                   2527:     -1,    -1,    46,    47,    48,    49,    50,    51,    -1,    53,
                   2528:     54,    -1,    -1,    -1,     3,     4,    -1,    -1,    62,    -1,
                   2529:     -1,    65,    -1,    -1,    -1,    -1,    -1,   284,   285,    73,
                   2530:     74,    75,    -1,    -1,    -1,    -1,    -1,    81,    82,    83,
                   2531:     -1,  1263,  1264,  1265,    88,    89,    -1,    -1,    92,    -1,
                   2532:     -1,    -1,    41,    -1,    -1,    -1,   313,    -1,    -1,   316,
                   2533:    104,    -1,    51,   320,    53,    -1,    -1,    -1,    -1,    -1,
                   2534:     27,    -1,    -1,    -1,    -1,    -1,    65,    -1,    -1,    -1,
                   2535:     -1,    -1,   339,    -1,    -1,    -1,    75,    44,   786,   787,
                   2536:     -1,    -1,    -1,    -1,    83,    -1,    -1,    -1,    -1,    88,
                   2537:     -1,    -1,    -1,   360,   361,   362,   363,    -1,  1330,    -1,
                   2538:     -1,   368,    -1,    -1,    -1,    -1,    -1,   374,    -1,   376,
                   2539:     -1,   378,   379,    -1,    -1,    -1,    -1,    -1,   385,    -1,
                   2540:     -1,    -1,    -1,    -1,   391,    -1,    -1,   394,    95,   837,
                   2541:    838,   839,   840,    -1,   842,    -1,   844,   845,   846,   847,
                   2542:     -1,   108,   109,    -1,    -1,    -1,   413,   414,    -1,   416,
                   2543:     -1,    -1,    -1,    -1,   121,    -1,    -1,    -1,    -1,    -1,
                   2544:     -1,    -1,    -1,    -1,   872,    -1,    -1,   875,    -1,   877,
                   2545:     -1,    -1,   139,   140,   141,    -1,    -1,    -1,    -1,    -1,
                   2546:     -1,    -1,   890,   891,    -1,     1,    -1,     3,     4,     5,
                   2547:      6,     7,     8,     9,    -1,    11,    12,    13,   165,    15,
                   2548:     16,    17,    18,    19,    20,    21,    22,    23,    24,    25,
                   2549:     26,    27,    28,    29,    30,    31,    -1,    33,    -1,    35,
                   2550:     -1,    37,    38,    -1,    40,    41,    42,    43,    -1,    -1,
                   2551:     46,    47,    48,    49,    50,    51,   944,    53,    54,    -1,
                   2552:     56,    -1,    -1,    -1,    -1,   953,    62,    -1,    -1,    65,
                   2553:     -1,    -1,    -1,    -1,   521,    -1,    -1,    73,    74,    75,
                   2554:     -1,    -1,    -1,    -1,   231,    81,    82,    83,    -1,    -1,
                   2555:     -1,    -1,    88,    -1,    90,    -1,    92,   985,   986,   987,
                   2556:     -1,    -1,    -1,    -1,    -1,   552,    -1,   103,   104,    -1,
                   2557:     -1,   999,  1000,    -1,  1002,     3,     4,    -1,    -1,     7,
                   2558:     -1,     4,     5,     6,     7,    -1,    -1,    10,    -1,    12,
                   2559:    277,   278,   279,    -1,    -1,    -1,    -1,    -1,   285,    -1,
                   2560:     -1,    -1,  1030,    -1,    27,    -1,    -1,    -1,    31,    -1,
                   2561:     -1,    -1,    35,    41,    -1,    -1,   603,   604,   605,    -1,
                   2562:     -1,    44,    -1,    51,   611,    53,    -1,    -1,    51,    -1,
                   2563:     53,    -1,    -1,    -1,    -1,    -1,    -1,    65,    -1,    -1,
                   2564:    627,   628,    65,   630,    -1,    -1,    -1,    75,    -1,    -1,
                   2565:     -1,    -1,    75,    -1,    -1,    83,    -1,    -1,    -1,    -1,
                   2566:     88,    -1,    85,    -1,    -1,    88,    89,    -1,    -1,    -1,
                   2567:     93,    -1,   659,   360,  1102,   362,   363,   364,    -1,     1,
                   2568:     -1,     3,     4,     5,     6,     7,    -1,   374,    -1,   376,
                   2569:     12,   378,   379,    -1,    -1,    -1,     3,     4,   385,    -1,
                   2570:      7,   277,   278,   279,   391,    27,   693,   394,    -1,    31,
                   2571:     -1,    -1,    -1,    35,    -1,    -1,    -1,    -1,    44,    41,
                   2572:     -1,    -1,    -1,    -1,    -1,    -1,   413,    -1,    -1,    51,
                   2573:     -1,    53,    -1,    -1,    41,    -1,    -1,    44,    -1,    -1,
                   2574:     66,    -1,    -1,    65,    51,    -1,    53,    -1,    -1,  1177,
                   2575:   1178,  1179,    -1,    75,    -1,    -1,     3,     4,    65,    85,
                   2576:      7,    83,    -1,    -1,    -1,    -1,    88,    -1,    75,    95,
                   2577:     -1,    -1,    -1,    -1,    -1,    -1,    83,    -1,    85,    -1,
                   2578:     -1,    88,    89,    -1,   360,    -1,   362,   363,   364,    -1,
                   2579:     -1,    -1,    -1,  1221,    41,   121,    -1,    -1,    -1,   786,
                   2580:    787,    -1,    -1,    -1,    51,    -1,    53,   794,    -1,    -1,
                   2581:     -1,    -1,   499,   139,   140,   141,    -1,    -1,    65,    -1,
                   2582:     -1,    -1,    -1,   149,   511,   512,    -1,   514,    75,    -1,
                   2583:     -1,    -1,   819,    -1,   521,    -1,    83,    -1,    -1,   165,
                   2584:     -1,    88,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   2585:    837,   838,   839,   840,    -1,    -1,    -1,   844,   845,   846,
                   2586:    847,    -1,    -1,    -1,    -1,   552,    -1,    -1,    -1,   195,
                   2587:     -1,    -1,     4,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   2588:     -1,    -1,    -1,    -1,    -1,   872,    -1,    -1,   875,    -1,
                   2589:    877,    -1,    24,    25,    -1,    -1,    -1,     4,    -1,     6,
                   2590:      7,    33,    -1,   890,   891,    12,    -1,    -1,    -1,    -1,
                   2591:     -1,    -1,    -1,    -1,    46,    -1,   603,   604,   605,    -1,
                   2592:     -1,    -1,    -1,    -1,   611,    -1,    -1,    -1,    35,    -1,
                   2593:     -1,    -1,    -1,    -1,    -1,   511,   512,    44,   514,    -1,
                   2594:    627,   628,    -1,   630,    51,   521,    53,    -1,     4,     5,
                   2595:      6,     7,    -1,    -1,    -1,    -1,    12,   283,    65,   285,
                   2596:     -1,    -1,    -1,    -1,    -1,    -1,   953,    -1,    75,   101,
                   2597:     -1,    27,   659,   105,    -1,    31,   552,    -1,    85,    35,
                   2598:     -1,    88,    89,    -1,    -1,    -1,    -1,   119,    -1,    -1,
                   2599:    122,   678,     3,     4,    -1,    51,     7,    53,   985,   986,
                   2600:    987,   688,   689,   690,    -1,    -1,    -1,   139,   140,    -1,
                   2601:     -1,    -1,   999,  1000,    -1,  1002,    -1,    -1,    -1,    -1,
                   2602:     -1,    -1,    -1,    -1,    -1,    -1,    -1,   603,   604,   605,
                   2603:     41,    -1,    -1,    -1,   360,   611,   362,   363,    -1,    -1,
                   2604:     51,    -1,    53,  1030,    -1,    -1,    -1,    -1,   374,    -1,
                   2605:    376,   183,   378,   379,    65,    -1,     3,     4,    -1,   385,
                   2606:      7,   193,    -1,    -1,    75,   391,    -1,    -1,   394,    -1,
                   2607:     -1,    -1,    83,    -1,    -1,    -1,    12,    88,    -1,    -1,
                   2608:     -1,    -1,   769,    -1,   771,    -1,    -1,   413,    24,    25,
                   2609:     -1,    27,    -1,    -1,    41,   782,    -1,    -1,    -1,   786,
                   2610:    787,   788,   678,    -1,    51,    -1,    53,    -1,    -1,    -1,
                   2611:     -1,    -1,    -1,    -1,    -1,  1102,    52,    -1,    65,    -1,
                   2612:     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    75,    -1,
                   2613:     -1,    -1,    -1,    -1,    -1,    -1,    83,    -1,    -1,    -1,
                   2614:     -1,    88,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   2615:    837,   838,   839,   840,    -1,    -1,    -1,   844,   845,   846,
                   2616:    847,    -1,    -1,    -1,    -1,   101,    -1,   103,   104,   105,
                   2617:     -1,    -1,   108,   109,    -1,     3,     4,    -1,    -1,     7,
                   2618:     -1,   313,    -1,    -1,   316,   872,    -1,    -1,   320,    -1,
                   2619:   1177,  1178,  1179,   769,    -1,   771,    -1,    -1,   524,    -1,
                   2620:     -1,    -1,    -1,    -1,    -1,    -1,   782,    -1,    -1,    -1,
                   2621:    786,   787,   788,    41,    -1,    -1,    -1,    -1,    -1,    -1,
                   2622:     -1,    -1,    -1,    51,    -1,    53,   552,    -1,    -1,   361,
                   2623:     -1,    -1,   919,   920,  1221,   922,   368,    65,    -1,    -1,
                   2624:     -1,    -1,   374,    -1,   376,    -1,    -1,    75,    -1,    -1,
                   2625:     -1,    -1,    -1,   940,   941,    83,    -1,   193,    -1,   391,
                   2626:     88,   837,   838,   839,   840,    -1,    -1,    -1,   844,   845,
                   2627:    846,   847,    -1,    -1,    -1,    -1,    -1,   603,   604,   605,
                   2628:     -1,   413,   414,    -1,   416,   611,    -1,    -1,    -1,    -1,
                   2629:      3,     4,     5,     6,     7,   231,    -1,    -1,   985,    12,
                   2630:    987,   627,   628,    -1,   630,    -1,    -1,    -1,    -1,    -1,
                   2631:     -1,    -1,   999,  1000,    27,  1002,    -1,    -1,    31,    -1,
                   2632:     -1,    -1,    35,    -1,    -1,    -1,    -1,    -1,    41,    -1,
                   2633:     -1,    44,    -1,   659,    -1,    -1,    -1,    -1,    51,   275,
                   2634:     53,   277,   278,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   2635:     -1,    -1,    65,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   2636:     -1,    -1,    75,    -1,   940,   941,    -1,    -1,    -1,    -1,
                   2637:     83,   307,    85,    -1,    -1,    88,    89,   313,    -1,    -1,
                   2638:    316,    -1,    -1,    -1,   320,    63,    64,    65,    66,    67,
                   2639:     68,    69,    70,    71,    72,    73,    74,    75,    76,    77,
                   2640:     78,    79,     1,    -1,     3,     4,     5,     6,     7,     8,
                   2641:      9,    10,    11,    12,    -1,  1102,    -1,    -1,    -1,    -1,
                   2642:     -1,    -1,    -1,   999,  1000,    -1,  1002,    -1,    27,    28,
                   2643:     29,    30,    31,    -1,    33,    -1,    35,    -1,    37,    38,
                   2644:     -1,    40,    41,    42,    43,    -1,    -1,    46,    47,    48,
                   2645:     49,    50,    51,    -1,    53,    -1,    -1,    -1,    -1,    -1,
                   2646:     -1,    -1,    -1,    62,    -1,    -1,    65,    -1,    -1,    -1,
                   2647:     -1,   603,   604,    -1,    73,    74,    75,    -1,    -1,    -1,
                   2648:     -1,    -1,    81,    82,    83,    -1,    -1,    -1,    -1,    88,
                   2649:   1177,  1178,  1179,    92,    93,   627,   628,   433,   630,    -1,
                   2650:     -1,    -1,    -1,   102,    -1,   104,    -1,    -1,    -1,    -1,
                   2651:     -1,   837,   838,   839,   840,    -1,   842,    -1,   844,   845,
                   2652:    846,   847,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   2653:     -1,    -1,    -1,    -1,  1221,    -1,    -1,    -1,    -1,    -1,
                   2654:     -1,    -1,    -1,    -1,    -1,    -1,   872,    -1,    -1,    -1,
                   2655:     -1,     1,    -1,     3,     4,     5,     6,     7,     8,     9,
                   2656:     10,    11,    12,   499,    -1,    -1,    -1,    -1,    -1,    -1,
                   2657:     -1,    -1,    -1,   509,    -1,   511,   512,    27,    28,    29,
                   2658:     30,    31,    -1,    33,    -1,    35,    -1,    37,    38,    -1,
                   2659:     40,    41,    42,    43,    44,    -1,    46,    47,    48,    49,
                   2660:     50,    51,    -1,    53,    54,    -1,    -1,    -1,    -1,    -1,
                   2661:     -1,    -1,    62,    -1,    -1,    65,    -1,   553,   944,    -1,
                   2662:     -1,    -1,    -1,    73,    74,    75,    -1,    -1,    -1,    -1,
                   2663:     -1,    81,    82,    83,    -1,    85,    -1,    -1,    88,    89,
                   2664:     -1,    -1,    92,    93,    -1,    -1,     3,     4,     5,     6,
                   2665:      7,    -1,    -1,    -1,   104,    12,    -1,    -1,    -1,   985,
                   2666:     -1,   987,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   2667:     -1,    -1,    -1,   999,  1000,    -1,  1002,    -1,    35,    -1,
                   2668:     -1,    -1,    -1,    -1,    41,    -1,    -1,    44,    -1,    -1,
                   2669:     -1,    -1,    -1,    -1,    51,    -1,    53,    -1,    -1,    -1,
                   2670:     -1,    -1,    -1,    -1,    -1,   837,   838,    -1,    65,    -1,
                   2671:     -1,    -1,   844,    -1,    -1,    -1,    -1,    -1,    75,    -1,
                   2672:     -1,    -1,    -1,    -1,    -1,    -1,    83,    -1,    85,    -1,
                   2673:     -1,    88,    89,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   2674:    872,    -1,   678,   875,    -1,   877,    -1,    -1,    -1,    -1,
                   2675:     -1,    -1,   688,   689,   690,    -1,     1,    -1,     3,     4,
                   2676:      5,     6,     7,     8,     9,    10,    11,    12,    -1,    -1,
                   2677:     -1,    -1,    -1,    -1,    -1,    -1,  1102,    -1,    -1,    -1,
                   2678:     -1,    -1,    27,    28,    29,    30,    31,    -1,    33,    -1,
                   2679:     35,    -1,    37,    38,    -1,    40,    41,    42,    43,    44,
                   2680:     -1,    46,    47,    48,    49,    50,    51,    -1,    53,    54,
                   2681:     -1,    -1,    -1,    -1,    -1,    -1,    -1,    62,    -1,    -1,
                   2682:     65,   953,    -1,    -1,    10,    -1,    -1,    -1,    73,    74,
                   2683:     75,    -1,    -1,   769,    -1,   771,    81,    82,    83,    -1,
                   2684:     85,    -1,    -1,    88,    89,    -1,   782,    92,    93,    -1,
                   2685:     -1,  1177,  1178,  1179,   986,    -1,    -1,    -1,    -1,   104,
                   2686:     -1,    -1,    -1,    -1,    -1,    -1,    -1,   999,  1000,    -1,
                   2687:   1002,    57,    58,    59,    60,    61,    62,    63,    64,    65,
                   2688:     66,    67,    68,    69,    70,    71,    72,    73,    74,    75,
                   2689:     76,    77,    78,    79,    -1,  1221,    -1,    -1,  1030,    -1,
                   2690:     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,     1,    -1,
                   2691:      3,     4,     5,     6,     7,     8,     9,    -1,    11,    12,
                   2692:     13,    -1,    15,    16,    17,    18,    19,    20,    21,    22,
                   2693:     23,    24,    25,    26,    27,    28,    29,    30,    31,   875,
                   2694:     33,    -1,    35,    -1,    37,    38,    -1,    40,    41,    42,
                   2695:     43,    -1,    -1,    46,    47,    48,    49,    50,    51,    -1,
                   2696:     53,    54,    -1,    56,    -1,    -1,    -1,    -1,    -1,    62,
                   2697:     -1,    -1,    65,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   2698:     73,    74,    75,   919,   920,    -1,   922,    -1,    81,    82,
                   2699:     83,    -1,    -1,    -1,    -1,    88,    -1,    90,    -1,    92,
                   2700:     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   2701:    103,   104,     1,    -1,     3,     4,     5,     6,     7,     8,
                   2702:      9,    -1,    11,    12,    13,    -1,    15,    16,    17,    18,
                   2703:     19,    20,    21,    22,    23,    24,    25,    26,    27,    28,
                   2704:     29,    30,    31,    -1,    33,    -1,    35,    -1,    37,    38,
                   2705:     -1,    40,    41,    42,    43,    -1,    -1,    46,    47,    48,
                   2706:     49,    50,    51,    -1,    53,    54,    -1,    56,    -1,    -1,
                   2707:     -1,    -1,    -1,    62,    -1,    -1,    65,    -1,    -1,    -1,
                   2708:     -1,    -1,    -1,    -1,    73,    74,    75,    -1,    -1,    -1,
                   2709:     -1,    -1,    81,    82,    83,    -1,    -1,    -1,    -1,    88,
                   2710:     -1,    90,    -1,    92,    -1,    -1,    -1,    -1,    -1,    -1,
                   2711:     -1,    -1,    -1,    -1,   103,   104,     1,    -1,     3,     4,
                   2712:      5,     6,     7,     8,     9,    -1,    11,    12,    13,    -1,
                   2713:     15,    16,    17,    18,    19,    20,    21,    22,    23,    24,
                   2714:     25,    26,    27,    28,    29,    30,    31,    -1,    33,    -1,
                   2715:     35,    -1,    37,    38,    -1,    40,    41,    42,    43,    -1,
                   2716:     -1,    46,    47,    48,    49,    50,    51,    -1,    53,    54,
                   2717:     -1,    56,    -1,    -1,    -1,    -1,    -1,    62,    -1,    -1,
                   2718:     65,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    73,    74,
                   2719:     75,    -1,    -1,    -1,    -1,    -1,    81,    82,    83,    -1,
                   2720:     -1,    -1,    -1,    88,    -1,    90,    -1,    92,    -1,    -1,
                   2721:     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   103,   104,
                   2722:      1,    -1,     3,     4,     5,     6,     7,     8,     9,    -1,
                   2723:     11,    12,    13,    -1,    15,    16,    17,    18,    19,    20,
                   2724:     21,    22,    23,    24,    25,    26,    27,    28,    29,    30,
                   2725:     31,    -1,    33,    -1,    35,    -1,    37,    38,    -1,    40,
                   2726:     41,    42,    43,    -1,    -1,    46,    47,    48,    49,    50,
                   2727:     51,    -1,    53,    54,    -1,    56,    -1,    -1,    -1,    -1,
                   2728:     -1,    62,    -1,    -1,    65,    -1,    -1,    -1,    -1,    -1,
                   2729:     -1,    -1,    73,    74,    75,    -1,    -1,    -1,    -1,    -1,
                   2730:     81,    82,    83,    -1,    -1,    -1,    -1,    88,    -1,    90,
                   2731:     -1,    92,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   2732:     -1,    -1,   103,   104,     1,    -1,     3,     4,     5,     6,
                   2733:      7,     8,     9,    -1,    11,    12,    13,    -1,    15,    16,
                   2734:     17,    18,    19,    20,    21,    22,    23,    24,    25,    26,
                   2735:     27,    28,    29,    30,    31,    -1,    33,    -1,    35,    -1,
                   2736:     37,    38,    -1,    40,    41,    42,    43,    -1,    -1,    46,
                   2737:     47,    48,    49,    50,    51,    -1,    53,    54,    -1,    56,
                   2738:     -1,    -1,    -1,    -1,    -1,    62,    -1,    -1,    65,    -1,
                   2739:     -1,    -1,    -1,    -1,    -1,    -1,    73,    74,    75,    -1,
                   2740:     -1,    -1,    -1,    -1,    81,    82,    83,    -1,    -1,    -1,
                   2741:     -1,    88,    -1,    90,     1,    92,     3,     4,     5,     6,
                   2742:      7,     8,     9,    -1,    11,    12,    13,   104,    15,    16,
                   2743:     17,    18,    19,    20,    21,    22,    23,    24,    25,    26,
                   2744:     27,    28,    29,    30,    31,    -1,    33,    -1,    35,    -1,
                   2745:     37,    38,    -1,    40,    41,    42,    43,    -1,    -1,    46,
                   2746:     47,    48,    49,    50,    51,    -1,    53,    54,    -1,    56,
                   2747:     -1,    -1,    -1,    -1,    -1,    62,    -1,    -1,    65,    -1,
                   2748:     -1,    -1,    -1,    -1,    -1,    -1,    73,    74,    75,    -1,
                   2749:     -1,    -1,    -1,    -1,    81,    82,    83,    -1,    -1,    -1,
                   2750:     -1,    88,    -1,    90,     1,    92,     3,     4,     5,     6,
                   2751:      7,     8,     9,    -1,    11,    12,    13,   104,    15,    16,
                   2752:     17,    18,    19,    20,    21,    22,    23,    24,    25,    26,
                   2753:     27,    28,    29,    30,    31,    -1,    33,    -1,    35,    -1,
                   2754:     37,    38,    -1,    40,    41,    42,    43,    -1,    -1,    46,
                   2755:     47,    48,    49,    50,    51,    -1,    53,    54,    -1,    56,
                   2756:     -1,    -1,    -1,    -1,    -1,    62,    -1,    -1,    65,    -1,
                   2757:     -1,    -1,    -1,    -1,    -1,    -1,    73,    74,    75,    -1,
                   2758:     -1,    -1,    -1,    -1,    81,    82,    83,    -1,    -1,    -1,
                   2759:     -1,    88,    -1,    90,     1,    92,     3,     4,     5,     6,
                   2760:      7,     8,     9,    10,    11,    12,    -1,   104,    -1,    -1,
                   2761:     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   2762:     27,    28,    29,    30,    31,    -1,    33,    -1,    35,    -1,
                   2763:     37,    38,    -1,    40,    41,    42,    43,    -1,    -1,    46,
                   2764:     47,    48,    49,    50,    51,    -1,    53,    -1,    -1,    -1,
                   2765:     -1,    -1,    -1,    -1,    -1,    62,    -1,    -1,    65,    -1,
                   2766:     -1,    -1,    -1,    -1,    -1,    -1,    73,    74,    75,    -1,
                   2767:     -1,    -1,    -1,    -1,    81,    82,    83,    -1,    -1,    -1,
                   2768:     -1,    88,    -1,    -1,    -1,    92,    93,    -1,    -1,    -1,
                   2769:     -1,    -1,    -1,    -1,    -1,   102,     1,   104,     3,     4,
                   2770:     -1,     6,     7,     8,     9,    -1,    11,    12,    66,    67,
                   2771:     68,    69,    70,    71,    72,    73,    74,    75,    76,    77,
                   2772:     78,    79,    27,    28,    29,    30,    31,    -1,    33,    -1,
                   2773:     35,    -1,    37,    38,    -1,    40,    41,    42,    43,    -1,
                   2774:     -1,    46,    47,    48,    49,    50,    51,    -1,    53,    54,
                   2775:     -1,    -1,    -1,    -1,    -1,    -1,    -1,    62,    -1,    -1,
                   2776:     65,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    73,    74,
                   2777:     75,    -1,    -1,    -1,    -1,    -1,    81,    82,    83,    -1,
                   2778:     -1,    -1,    -1,    88,    89,    -1,     1,    92,     3,     4,
                   2779:     -1,     6,     7,     8,     9,    -1,    11,    12,   103,   104,
                   2780:     -1,    -1,    -1,    -1,    19,    -1,    -1,    -1,    -1,    -1,
                   2781:     -1,    -1,    27,    28,    29,    30,    31,    -1,    33,    -1,
                   2782:     35,    -1,    37,    38,    -1,    40,    41,    42,    43,    -1,
                   2783:     -1,    46,    47,    48,    49,    50,    51,    -1,    53,    54,
                   2784:     -1,    -1,    -1,    -1,    -1,    -1,    -1,    62,    -1,    -1,
                   2785:     65,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    73,    74,
                   2786:     75,    -1,    -1,    -1,    -1,    -1,    81,    82,    83,    -1,
                   2787:     -1,    -1,    -1,    88,    -1,    -1,     1,    92,     3,     4,
                   2788:     -1,     6,     7,     8,     9,    -1,    11,    12,   103,   104,
                   2789:     -1,    -1,    -1,    -1,    19,    -1,    -1,    -1,    -1,    -1,
                   2790:     -1,    -1,    27,    28,    29,    30,    31,    -1,    33,    -1,
                   2791:     35,    -1,    37,    38,    -1,    40,    41,    42,    43,    -1,
                   2792:     -1,    46,    47,    48,    49,    50,    51,    -1,    53,    54,
                   2793:     -1,    -1,    -1,    -1,    -1,    -1,    -1,    62,    -1,    -1,
                   2794:     65,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    73,    74,
                   2795:     75,    -1,    -1,    -1,    -1,    -1,    81,    82,    83,    -1,
                   2796:     -1,    -1,    -1,    88,    -1,    -1,     1,    92,     3,     4,
                   2797:      5,     6,     7,     8,     9,    -1,    11,    12,   103,   104,
                   2798:     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   2799:     -1,    -1,    27,    28,    29,    30,    31,    -1,    33,    -1,
                   2800:     35,    -1,    37,    38,    -1,    40,    41,    42,    43,    -1,
                   2801:     -1,    46,    47,    48,    49,    50,    51,    -1,    53,    54,
                   2802:     -1,    56,    -1,    -1,    -1,    -1,    -1,    62,    -1,    -1,
                   2803:     65,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    73,    74,
                   2804:     75,    -1,    -1,    -1,    -1,    -1,    81,    82,    83,     1,
                   2805:     -1,    -1,     4,    88,     6,     7,    -1,    92,    -1,    -1,
                   2806:     12,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   104,
                   2807:     -1,    -1,    -1,    -1,    -1,    27,    -1,    -1,    -1,    31,
                   2808:     -1,    -1,    -1,    35,    -1,    37,    38,    -1,    -1,    -1,
                   2809:     -1,    -1,    44,    -1,    -1,    -1,    -1,    -1,    -1,    51,
                   2810:     -1,    53,    -1,    55,    -1,    57,    58,    59,    -1,    61,
                   2811:     62,    63,    64,    65,    66,    67,    68,    69,    70,    71,
                   2812:     72,    73,    74,    75,    76,    77,    78,    -1,    -1,    81,
                   2813:     82,    83,    -1,     1,    86,     3,     4,    89,     6,     7,
                   2814:      8,     9,    -1,    11,    12,    -1,    -1,    -1,    -1,    -1,
                   2815:     -1,    -1,   104,    -1,    -1,    -1,    -1,    -1,    -1,    27,
                   2816:     28,    29,    30,    31,    -1,    33,    -1,    35,    -1,    37,
                   2817:     38,    -1,    40,    41,    42,    43,    -1,    -1,    46,    47,
                   2818:     48,    49,    50,    51,    -1,    53,    54,    -1,    -1,    -1,
                   2819:     -1,    -1,    -1,    -1,    62,    -1,    -1,    65,    -1,    -1,
                   2820:     -1,    -1,    -1,    -1,    -1,    73,    74,    75,    -1,    -1,
                   2821:     -1,    -1,    -1,    81,    82,    83,    -1,    -1,    -1,    -1,
                   2822:     88,    -1,    -1,     1,    92,     3,     4,    -1,     6,     7,
                   2823:      8,     9,    -1,    11,    12,    -1,   104,    -1,    -1,    -1,
                   2824:     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    27,
                   2825:     28,    29,    30,    31,    -1,    33,    -1,    35,    -1,    37,
                   2826:     38,    -1,    40,    41,    42,    43,    -1,    -1,    46,    47,
                   2827:     48,    49,    50,    51,    -1,    53,    54,    -1,    -1,    -1,
                   2828:     -1,    -1,    -1,    -1,    62,    -1,    -1,    65,    -1,    -1,
                   2829:     -1,    -1,    -1,    -1,    -1,    73,    74,    75,    -1,    -1,
                   2830:     -1,    -1,    -1,    81,    82,    83,    -1,    -1,    -1,    -1,
                   2831:     88,    -1,    -1,     1,    92,     3,     4,    -1,     6,     7,
                   2832:      8,     9,    -1,    11,    12,    -1,   104,    -1,    -1,    -1,
                   2833:     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    27,
                   2834:     28,    29,    30,    31,    -1,    33,    -1,    35,    -1,    37,
                   2835:     38,    -1,    40,    41,    42,    43,    -1,    -1,    46,    47,
                   2836:     48,    49,    50,    51,    -1,    53,    54,    -1,    -1,    -1,
                   2837:     -1,    -1,    -1,    -1,    62,    -1,    -1,    65,    -1,    -1,
                   2838:     -1,    -1,    -1,    -1,    -1,    73,    74,    75,    -1,    -1,
                   2839:     -1,    -1,    -1,    81,    82,    83,    -1,    -1,    -1,    -1,
                   2840:     88,    -1,    -1,     1,    92,     3,     4,    -1,     6,     7,
                   2841:      8,     9,    -1,    11,    12,    -1,   104,    -1,    -1,    -1,
                   2842:     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    27,
                   2843:     28,    29,    30,    31,    -1,    33,    -1,    35,    -1,    37,
                   2844:     38,    -1,    40,    41,    42,    43,    -1,    -1,    46,    47,
                   2845:     48,    49,    50,    51,    -1,    53,    -1,    -1,    56,    -1,
                   2846:     -1,    -1,    -1,    -1,    62,    -1,    -1,    65,    -1,    -1,
                   2847:     -1,    -1,    -1,    -1,    -1,    73,    74,    75,    -1,    -1,
                   2848:     -1,    -1,    -1,    81,    82,    83,    -1,    -1,    -1,    -1,
                   2849:     88,    -1,    -1,     1,    92,     3,     4,    -1,     6,     7,
                   2850:      8,     9,    -1,    11,    12,    -1,   104,    -1,    -1,    -1,
                   2851:     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    27,
                   2852:     28,    29,    30,    31,    -1,    33,    -1,    35,    -1,    37,
                   2853:     38,    -1,    40,    41,    42,    43,    -1,    -1,    46,    47,
                   2854:     48,    49,    50,    51,    -1,    53,    -1,    -1,    -1,    -1,
                   2855:     -1,    -1,    -1,    -1,    62,    -1,    -1,    65,    -1,    -1,
                   2856:     -1,    -1,    -1,    -1,    -1,    73,    74,    75,    -1,    -1,
                   2857:     -1,    -1,    -1,    81,    82,    83,    -1,    -1,    -1,    -1,
                   2858:     88,    -1,    -1,    -1,    92,    -1,    -1,    -1,    -1,    -1,
                   2859:     -1,    -1,    -1,    -1,   102,     1,   104,     3,     4,    -1,
                   2860:      6,     7,     8,     9,    -1,    11,    12,    67,    68,    69,
                   2861:     70,    71,    72,    73,    74,    75,    76,    77,    78,    79,
                   2862:     -1,    27,    28,    29,    30,    31,    -1,    33,    -1,    35,
                   2863:     -1,    37,    38,    -1,    40,    41,    42,    43,    -1,    -1,
                   2864:     46,    47,    48,    49,    50,    51,    -1,    53,    -1,    -1,
                   2865:     -1,    -1,    -1,    -1,    -1,    -1,    62,    -1,    -1,    65,
                   2866:     -1,    -1,    -1,    -1,    -1,    -1,    -1,    73,    74,    75,
                   2867:     -1,    -1,    -1,    -1,    -1,    81,    82,    83,    -1,    -1,
                   2868:     -1,    -1,    88,    -1,    -1,     1,    92,     3,     4,    -1,
                   2869:      6,     7,     8,     9,    -1,    11,    12,    -1,   104,    -1,
                   2870:     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   2871:     -1,    27,    28,    29,    30,    31,    -1,    33,    -1,    35,
                   2872:     -1,    37,    38,    -1,    40,    41,    42,    43,    -1,    -1,
                   2873:     46,    47,    48,    49,    50,    51,    -1,    53,    -1,    -1,
                   2874:     -1,    -1,    -1,    -1,    -1,    -1,    62,    -1,    -1,    65,
                   2875:     -1,    -1,    -1,    -1,    -1,    -1,    -1,    73,    74,    75,
                   2876:     -1,    -1,    -1,    -1,    -1,    81,    82,    83,    -1,    -1,
                   2877:     -1,    -1,    88,    -1,     3,     4,    92,     6,     7,     8,
                   2878:      9,    -1,    11,    12,    -1,    -1,    -1,    -1,   104,    -1,
                   2879:     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    27,    28,
                   2880:     29,    30,    31,    -1,    33,    -1,    35,    -1,    37,    38,
                   2881:     -1,    40,    41,    42,    43,    -1,    -1,    46,    47,    48,
                   2882:     49,    50,    51,    -1,    53,    -1,    -1,    -1,    -1,    -1,
                   2883:     -1,    -1,    -1,    62,    -1,    -1,    65,    -1,    -1,    -1,
                   2884:     -1,    -1,    -1,    -1,    73,    74,    75,    -1,    -1,    -1,
                   2885:     -1,    -1,    81,    82,    83,    -1,    -1,    -1,    -1,    88,
                   2886:     -1,    -1,    -1,    92,    -1,    -1,    -1,    -1,    -1,    -1,
                   2887:     -1,    -1,    -1,    -1,    -1,   104,   105,     3,     4,     5,
                   2888:      6,     7,     8,     9,    -1,    11,    12,    13,    -1,    15,
                   2889:     16,    17,    18,    19,    20,    21,    22,    23,    24,    25,
                   2890:     26,    27,    28,    29,    30,    31,    -1,    33,    -1,    35,
                   2891:     -1,    37,    38,    -1,    40,    41,    42,    43,    -1,    -1,
                   2892:     46,    47,    48,    49,    50,    51,    -1,    53,    54,    -1,
                   2893:     56,    -1,    -1,    -1,    -1,    -1,    62,    -1,    -1,    65,
                   2894:     -1,    -1,    -1,    -1,    -1,    -1,    -1,    73,    74,    75,
                   2895:     -1,    -1,    -1,    -1,    -1,    81,    82,    83,    -1,    -1,
                   2896:     -1,    -1,    88,    -1,    90,    -1,    92,    -1,    -1,    -1,
                   2897:     -1,    -1,    -1,    -1,    -1,    -1,    -1,   103,   104,     3,
                   2898:      4,     5,     6,     7,     8,     9,    -1,    11,    12,    13,
                   2899:     -1,    15,    16,    17,    18,    19,    20,    21,    22,    23,
                   2900:     24,    25,    26,    27,    28,    29,    30,    31,    -1,    33,
                   2901:     -1,    35,    -1,    37,    38,    -1,    40,    41,    42,    43,
                   2902:     -1,    -1,    46,    47,    48,    49,    50,    51,    -1,    53,
                   2903:     54,    -1,    56,    -1,    -1,    -1,    -1,    -1,    62,    -1,
                   2904:     -1,    65,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    73,
                   2905:     74,    75,    -1,    -1,    -1,    -1,    -1,    81,    82,    83,
                   2906:     -1,    -1,    -1,    -1,    88,    -1,    90,    -1,    92,     3,
                   2907:      4,     5,     6,     7,     8,     9,    -1,    11,    12,    13,
                   2908:    104,    15,    16,    17,    18,    19,    20,    21,    22,    23,
                   2909:     24,    25,    26,    27,    28,    29,    30,    31,    -1,    33,
                   2910:     -1,    35,    -1,    37,    38,    -1,    40,    41,    42,    43,
                   2911:     -1,    -1,    46,    47,    48,    49,    50,    51,    -1,    53,
                   2912:     54,    -1,    56,    -1,    -1,    -1,    -1,    -1,    62,    -1,
                   2913:     -1,    65,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    73,
                   2914:     74,    75,    -1,    -1,    -1,    -1,    -1,    81,    82,    83,
                   2915:     -1,    -1,    -1,    -1,    88,    -1,    90,    -1,    92,     3,
                   2916:      4,     5,     6,     7,     8,     9,    -1,    11,    12,    13,
                   2917:    104,    15,    16,    17,    18,    19,    20,    21,    22,    23,
                   2918:     24,    25,    26,    27,    28,    29,    30,    31,    -1,    33,
                   2919:     -1,    35,    -1,    37,    38,    -1,    40,    41,    42,    43,
                   2920:     -1,    -1,    46,    47,    48,    49,    50,    51,    -1,    53,
                   2921:     -1,    -1,    56,    -1,    -1,    -1,    -1,    -1,    62,    -1,
                   2922:     -1,    65,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    73,
                   2923:     74,    75,    -1,    -1,    -1,    -1,    -1,    81,    82,    83,
                   2924:     -1,    -1,    -1,    -1,    88,    -1,    90,    -1,    92,     3,
                   2925:      4,     5,     6,     7,     8,     9,    10,    11,    12,    -1,
                   2926:    104,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   2927:     -1,    -1,    -1,    27,    28,    29,    30,    31,    -1,    33,
                   2928:     -1,    35,    -1,    37,    38,    -1,    40,    41,    42,    43,
                   2929:     44,    -1,    46,    47,    48,    49,    50,    51,    -1,    53,
                   2930:     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    62,    -1,
                   2931:     -1,    65,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    73,
                   2932:     74,    75,    -1,    -1,    -1,    -1,    -1,    81,    82,    83,
                   2933:     -1,    85,    -1,    -1,    88,    89,    -1,    -1,    92,    93,
                   2934:      3,     4,     5,     6,     7,     8,     9,    10,    11,    12,
                   2935:    104,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   2936:     -1,    -1,    -1,    -1,    27,    28,    29,    30,    31,    -1,
                   2937:     33,    -1,    35,    -1,    37,    38,    -1,    40,    41,    42,
                   2938:     43,    44,    -1,    46,    47,    48,    49,    50,    51,    -1,
                   2939:     53,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    62,
                   2940:     -1,    -1,    65,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   2941:     73,    74,    75,    -1,    -1,    -1,    -1,    -1,    81,    82,
                   2942:     83,    -1,    85,    -1,    -1,    88,    89,    -1,    -1,    92,
                   2943:     93,     3,     4,    -1,     6,     7,     8,     9,    -1,    11,
                   2944:     12,   104,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   2945:     -1,    -1,    -1,    -1,    -1,    27,    28,    29,    30,    31,
                   2946:     -1,    33,    -1,    35,    -1,    37,    38,    -1,    40,    41,
                   2947:     42,    43,    44,    -1,    46,    47,    48,    49,    50,    51,
                   2948:     -1,    53,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   2949:     62,    -1,    -1,    65,    -1,    -1,    -1,    -1,    -1,    -1,
                   2950:     -1,    73,    74,    75,    -1,    -1,    -1,    -1,    -1,    81,
                   2951:     82,    83,    -1,    85,    -1,    -1,    88,    89,     3,     4,
                   2952:     -1,     6,     7,     8,     9,    -1,    11,    12,    -1,    -1,
                   2953:     -1,    -1,   104,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   2954:     -1,    -1,    27,    28,    29,    30,    31,    -1,    33,    -1,
                   2955:     35,    -1,    37,    38,    -1,    40,    41,    42,    43,    44,
                   2956:     -1,    46,    47,    48,    49,    50,    51,    -1,    53,    -1,
                   2957:     -1,    -1,    -1,    -1,    -1,    -1,    -1,    62,    -1,    -1,
                   2958:     65,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    73,    74,
                   2959:     75,    -1,    -1,    -1,    -1,    -1,    81,    82,    83,    -1,
                   2960:     85,    -1,    -1,    88,    89,     3,     4,    -1,     6,     7,
                   2961:      8,     9,    -1,    11,    12,    -1,    -1,    -1,    -1,   104,
                   2962:     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    27,
                   2963:     28,    29,    30,    31,    -1,    33,    -1,    35,    -1,    37,
                   2964:     38,    -1,    40,    41,    42,    43,    44,    -1,    46,    47,
                   2965:     48,    49,    50,    51,    -1,    53,    -1,    -1,    -1,    -1,
                   2966:     -1,    -1,    -1,    -1,    62,    -1,    -1,    65,    -1,    -1,
                   2967:     -1,    -1,    -1,    -1,    -1,    73,    74,    75,    -1,    -1,
                   2968:     -1,    -1,    -1,    81,    82,    83,    -1,    85,    -1,    -1,
                   2969:     88,    89,     3,     4,    -1,     6,     7,     8,     9,    -1,
                   2970:     11,    12,    -1,    -1,    -1,    -1,   104,    -1,    -1,    -1,
                   2971:     -1,    -1,    -1,    -1,    -1,    -1,    27,    28,    29,    30,
                   2972:     31,    -1,    33,    -1,    35,    -1,    37,    38,    -1,    40,
                   2973:     41,    42,    43,    -1,    -1,    46,    47,    48,    49,    50,
                   2974:     51,    -1,    53,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   2975:     -1,    62,    -1,    -1,    65,    -1,    -1,    -1,    -1,    70,
                   2976:     -1,    -1,    73,    74,    75,    -1,    -1,    -1,    -1,    -1,
                   2977:     81,    82,    83,    -1,    -1,    -1,    -1,    88,    -1,     3,
                   2978:      4,    92,     6,     7,     8,     9,    -1,    11,    12,    -1,
                   2979:     -1,    -1,    -1,   104,    -1,    -1,    -1,    -1,    -1,    -1,
                   2980:     -1,    -1,    -1,    27,    28,    29,    30,    31,    -1,    33,
                   2981:     -1,    35,    -1,    37,    38,    -1,    40,    41,    42,    43,
                   2982:     -1,    -1,    46,    47,    48,    49,    50,    51,    -1,    53,
                   2983:     -1,    -1,    56,    -1,    -1,    -1,    -1,    -1,    62,    -1,
                   2984:     -1,    65,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    73,
                   2985:     74,    75,    -1,    -1,    -1,    -1,    -1,    81,    82,    83,
                   2986:     -1,    -1,    -1,    -1,    88,    -1,     3,     4,    92,     6,
                   2987:      7,     8,     9,    -1,    11,    12,    -1,    -1,    -1,    -1,
                   2988:    104,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   2989:     27,    28,    29,    30,    31,    -1,    33,    -1,    35,    -1,
                   2990:     37,    38,    -1,    40,    41,    42,    43,    -1,    -1,    46,
                   2991:     47,    48,    49,    50,    51,    -1,    53,    -1,    -1,    -1,
                   2992:     -1,    -1,    -1,    -1,    -1,    62,    -1,    -1,    65,    -1,
                   2993:     -1,    -1,    -1,    -1,    -1,    -1,    73,    74,    75,    -1,
                   2994:     -1,    -1,    -1,    -1,    81,    82,    83,    -1,    -1,    -1,
                   2995:     -1,    88,    -1,     3,     4,    92,     6,     7,     8,     9,
                   2996:     -1,    11,    12,    -1,    -1,    -1,    -1,   104,    -1,    -1,
                   2997:     -1,    -1,    -1,    -1,    -1,    -1,    -1,    27,    28,    29,
                   2998:     30,    31,    -1,    33,    -1,    35,    -1,    37,    38,    -1,
                   2999:     40,    41,    42,    43,    -1,    -1,    46,    47,    48,    49,
                   3000:     50,    51,    -1,    53,    54,    -1,    -1,    -1,    -1,    -1,
                   3001:     -1,    -1,    62,    -1,    -1,    65,    -1,    -1,    -1,    -1,
                   3002:     -1,    -1,    -1,    73,    74,    75,    -1,    -1,    -1,    -1,
                   3003:     -1,    81,    82,    83,    -1,    -1,     3,     4,    88,     6,
                   3004:      7,     8,     9,    -1,    11,    12,    -1,    -1,    -1,    -1,
                   3005:     -1,    -1,    -1,    -1,   104,    -1,    -1,    -1,    -1,    -1,
                   3006:     27,    28,    29,    30,    31,    -1,    33,    -1,    35,    -1,
                   3007:     37,    38,    -1,    40,    41,    42,    43,    -1,    -1,    46,
                   3008:     47,    48,    49,    50,    51,    -1,    53,    -1,    -1,    -1,
                   3009:     -1,    -1,    -1,    -1,    -1,    62,    -1,    -1,    65,    -1,
                   3010:     -1,    -1,    -1,    -1,    -1,    -1,    73,    74,    75,    -1,
                   3011:     -1,    -1,    -1,    -1,    81,    82,    83,    -1,    -1,    -1,
                   3012:     -1,    88,    89,     3,     4,    -1,     6,     7,     8,     9,
                   3013:     -1,    11,    12,    -1,    -1,    -1,    -1,   104,    -1,    -1,
                   3014:     -1,    -1,    -1,    -1,    -1,    -1,    -1,    27,    28,    29,
                   3015:     30,    31,    -1,    33,    -1,    35,    -1,    37,    38,    -1,
                   3016:     40,    41,    42,    43,    -1,    -1,    46,    47,    48,    49,
                   3017:     50,    51,    -1,    53,    -1,    -1,    -1,    -1,    -1,    -1,
                   3018:     -1,    -1,    62,    -1,    -1,    65,    -1,    -1,    -1,    -1,
                   3019:     -1,    -1,    -1,    73,    74,    75,    -1,    -1,    -1,    -1,
                   3020:     -1,    81,    82,    83,    -1,    -1,    -1,    -1,    88,    -1,
                   3021:      3,     4,    92,     6,     7,     8,     9,    -1,    11,    12,
                   3022:     -1,    -1,    -1,    -1,   104,    -1,    -1,    -1,    -1,    -1,
                   3023:     -1,    -1,    -1,    -1,    27,    28,    29,    30,    31,    -1,
                   3024:     33,    -1,    35,    -1,    37,    38,    -1,    40,    41,    42,
                   3025:     43,    -1,    -1,    46,    47,    48,    49,    50,    51,    -1,
                   3026:     53,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    62,
                   3027:     -1,    -1,    65,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   3028:     73,    74,    75,    -1,    -1,    -1,    -1,    -1,    81,    82,
                   3029:     83,    -1,    -1,    -1,    -1,    88,    -1,     3,     4,    92,
                   3030:      6,     7,     8,     9,    -1,    11,    12,    -1,    -1,    -1,
                   3031:     -1,   104,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   3032:     -1,    27,    28,    29,    30,    31,    -1,    33,    -1,    35,
                   3033:     -1,    37,    38,    -1,    40,    41,    42,    43,    -1,    -1,
                   3034:     46,    47,    48,    49,    50,    51,    -1,    53,    -1,    -1,
                   3035:     -1,    -1,    -1,    -1,    -1,    -1,    62,    -1,    -1,    65,
                   3036:     -1,    -1,    -1,    -1,    -1,    -1,    -1,    73,    74,    75,
                   3037:     -1,    -1,    -1,    -1,    -1,    81,    82,    83,    -1,    -1,
                   3038:     -1,    -1,    88,    -1,     3,     4,    92,     6,     7,     8,
                   3039:      9,    -1,    11,    12,    -1,    -1,    -1,    -1,   104,    -1,
                   3040:     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    27,    28,
                   3041:     29,    30,    31,    -1,    33,    -1,    35,    -1,    37,    38,
                   3042:     -1,    40,    41,    42,    43,    -1,    -1,    46,    47,    48,
                   3043:     49,    50,    51,    -1,    53,    -1,    -1,    -1,    -1,    -1,
                   3044:     -1,    -1,    -1,    62,    -1,    -1,    65,    -1,    -1,    -1,
                   3045:     -1,    -1,    -1,    -1,    73,    74,    75,    -1,    -1,    -1,
                   3046:     -1,    -1,    81,    82,    83,    -1,    -1,    -1,    -1,    88,
                   3047:     -1,     3,     4,    92,     6,     7,     8,     9,    -1,    11,
                   3048:     12,    -1,    -1,    -1,    -1,   104,    -1,    -1,    -1,    -1,
                   3049:     -1,    -1,    -1,    -1,    -1,    27,    28,    29,    30,    31,
                   3050:     -1,    33,    -1,    35,    -1,    37,    38,    -1,    40,    41,
                   3051:     42,    43,    -1,    -1,    46,    47,    48,    49,    50,    51,
                   3052:     -1,    53,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   3053:     62,    -1,    -1,    65,    -1,    -1,    -1,    -1,    -1,    -1,
                   3054:     -1,    73,    74,    75,    -1,    -1,    -1,    -1,    -1,    81,
                   3055:     82,    83,    -1,    -1,    -1,    -1,    88,    -1,     3,     4,
                   3056:     92,     6,     7,     8,     9,    -1,    11,    12,    -1,    -1,
                   3057:     -1,    -1,   104,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   3058:     -1,    -1,    27,    28,    29,    30,    31,    -1,    33,    -1,
                   3059:     35,    -1,    37,    38,    -1,    40,    41,    42,    43,    -1,
                   3060:     -1,    46,    47,    48,    49,    50,    51,    -1,    53,    -1,
                   3061:     -1,    -1,    -1,    -1,    -1,    -1,    -1,    62,    -1,    -1,
                   3062:     65,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    73,    74,
                   3063:     75,    -1,    -1,    -1,    -1,    -1,    81,    82,    83,    -1,
                   3064:     -1,     3,     4,    88,     6,     7,     8,     9,    -1,    11,
                   3065:     12,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   104,
                   3066:     -1,    -1,    -1,    -1,    -1,    27,    28,    29,    30,    31,
                   3067:     -1,    33,    -1,    35,    -1,    37,    38,    -1,    40,    41,
                   3068:     42,    43,    -1,    -1,    46,    47,    48,    49,    50,    51,
                   3069:     -1,    53,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   3070:     62,    -1,    -1,    65,    -1,    -1,    -1,    -1,    -1,    -1,
                   3071:     -1,    73,    74,    75,    -1,    -1,    -1,    -1,    -1,    81,
                   3072:     82,    83,    -1,    -1,     3,     4,    88,     6,     7,     8,
                   3073:      9,    -1,    11,    12,    -1,    -1,    -1,    -1,    -1,    -1,
                   3074:     -1,    -1,   104,    -1,    -1,    -1,    -1,    -1,    27,    28,
                   3075:     29,    30,    31,    -1,    33,    -1,    35,    -1,    37,    38,
                   3076:     -1,    40,    41,    42,    43,    -1,    -1,    46,    47,    48,
                   3077:     49,    50,    51,    -1,    53,    -1,    -1,    -1,    -1,    -1,
                   3078:     -1,    -1,    -1,    62,    -1,    -1,    65,    -1,    -1,    -1,
                   3079:     -1,    -1,    -1,    -1,    73,    74,    75,    -1,    -1,    -1,
                   3080:     -1,    -1,    81,    82,    83,    -1,    -1,     3,     4,    88,
                   3081:      6,     7,     8,     9,    -1,    11,    12,    -1,    -1,    -1,
                   3082:     -1,    -1,    -1,    -1,    -1,   104,    -1,    -1,    -1,    -1,
                   3083:     -1,    27,    28,    -1,    -1,    31,    -1,    33,    -1,    35,
                   3084:     -1,    37,    38,    -1,    40,    41,    42,    43,    -1,    -1,
                   3085:     46,    47,    48,    49,    50,    51,    -1,    53,    -1,    -1,
                   3086:     -1,    -1,    -1,    -1,    -1,    -1,    62,    -1,    -1,    65,
                   3087:     -1,    -1,    -1,    -1,    -1,    -1,    -1,    73,    74,    75,
                   3088:     -1,    -1,    -1,    -1,    -1,    81,    82,    83,    -1,    -1,
                   3089:      3,     4,    88,     6,     7,     8,     9,    -1,    11,    12,
                   3090:     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   104,    -1,
                   3091:     -1,    -1,    -1,    -1,    27,    28,    29,    30,    31,    -1,
                   3092:     33,    -1,    35,    -1,    37,    38,    -1,    40,    41,    42,
                   3093:     43,    -1,    -1,    46,    47,    48,    49,    50,    51,    -1,
                   3094:     53,    -1,     3,     4,     5,     6,     7,    -1,    -1,    -1,
                   3095:     -1,    12,    -1,    -1,    -1,    -1,    -1,     3,     4,     5,
                   3096:      6,     7,    -1,    -1,    -1,    -1,    12,    -1,    81,    82,
                   3097:     83,    -1,    -1,    -1,    35,    88,    -1,    -1,    -1,    92,
                   3098:     41,    27,    -1,    44,    -1,    31,    -1,    -1,    -1,    35,
                   3099:     51,   104,    53,    -1,    -1,    41,    -1,    -1,    -1,    -1,
                   3100:     -1,    -1,    -1,    -1,    65,    51,    -1,    53,    -1,    -1,
                   3101:     56,    -1,    -1,    -1,    75,    -1,    -1,    -1,    -1,    65,
                   3102:     -1,    -1,    83,    -1,    85,    -1,    -1,    88,    89,    75,
                   3103:     -1,     3,     4,     5,     6,     7,    -1,    83,    10,    -1,
                   3104:     12,    -1,    88,    -1,    -1,    -1,    -1,    -1,     3,     4,
                   3105:      5,     6,     7,    -1,    -1,    27,    -1,    12,    -1,    31,
                   3106:     -1,    -1,    -1,    35,    -1,    -1,    -1,    -1,    -1,    41,
                   3107:     -1,    -1,    27,    -1,    -1,    -1,    31,    -1,    -1,    51,
                   3108:     35,    53,    -1,    -1,    -1,    -1,    41,    -1,    -1,    -1,
                   3109:     -1,    -1,    -1,    65,    -1,    -1,    51,    -1,    53,    -1,
                   3110:     -1,    -1,    -1,    75,    -1,    60,    -1,    -1,    -1,    -1,
                   3111:     65,    83,    -1,    -1,    -1,    -1,    88,    -1,    -1,    -1,
                   3112:     75,     3,     4,     5,     6,     7,    -1,    -1,    83,    -1,
                   3113:     12,    -1,    -1,    88,    -1,    -1,    -1,    -1,     3,     4,
                   3114:      5,     6,     7,    -1,    -1,    27,    -1,    12,    -1,    31,
                   3115:     -1,    -1,    -1,    35,    -1,    -1,    -1,    -1,    -1,    41,
                   3116:     -1,    -1,    27,    -1,    -1,    -1,    31,    -1,    -1,    51,
                   3117:     35,    53,    -1,    -1,    56,    -1,    41,    -1,    -1,    -1,
                   3118:     -1,    -1,     4,    65,     6,     7,    51,    -1,    53,    -1,
                   3119:     12,    -1,    -1,    75,    -1,    -1,    -1,    -1,    -1,    -1,
                   3120:     65,    83,    -1,    -1,    -1,    27,    88,    -1,    -1,    31,
                   3121:     75,    -1,    -1,    35,    -1,    -1,    -1,    -1,    83,    -1,
                   3122:     -1,    -1,    44,    88,    -1,    -1,    -1,    -1,    -1,    51,
                   3123:     -1,    53,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   3124:     57,    58,    59,    65,    61,    62,    63,    64,    65,    66,
                   3125:     67,    68,    69,    75,    71,    72,    73,    74,    75,    76,
                   3126:     77,    78,    79,    85,    -1,    -1,    88,    89,    57,    58,
                   3127:     59,    -1,    61,    62,    63,    64,    65,    66,    67,    68,
                   3128:     69,    70,    71,    72,    73,    74,    75,    76,    77,    78,
                   3129:     79,    55,    32,    57,    58,    59,    -1,    61,    62,    63,
                   3130:     64,    65,    66,    67,    68,    69,    70,    71,    72,    73,
                   3131:     74,    75,    76,    77,    78,    79,   105,    57,    58,    59,
                   3132:     -1,    61,    62,    63,    64,    65,    66,    67,    68,    69,
                   3133:     70,    71,    72,    73,    74,    75,    76,    77,    78,    79,
                   3134:     57,    58,    59,    60,    61,    62,    63,    64,    65,    66,
                   3135:     67,    68,    69,    70,    71,    72,    73,    74,    75,    76,
                   3136:     77,    78,    79,    57,    58,    59,    60,    61,    62,    63,
                   3137:     64,    65,    66,    67,    68,    69,    70,    71,    72,    73,
                   3138:     74,    75,    76,    77,    78,    79,    57,    58,    59,    -1,
                   3139:     61,    62,    63,    64,    65,    66,    67,    68,    69,    70,
                   3140:     71,    72,    73,    74,    75,    76,    77,    78,    79,    59,
                   3141:     -1,    61,    62,    63,    64,    65,    66,    67,    68,    69,
                   3142:     70,    71,    72,    73,    74,    75,    76,    77,    78,    79,
                   3143:     62,    63,    64,    65,    66,    67,    68,    69,    70,    71,
                   3144:     72,    73,    74,    75,    76,    77,    78,    79,    64,    65,
                   3145:     66,    67,    68,    69,    70,    71,    72,    73,    74,    75,
                   3146:     76,    77,    78,    79,    65,    66,    67,    68,    69,    70,
                   3147:     71,    72,    73,    74,    75,    76,    77,    78,    79
                   3148: };
                   3149: /* -*-C-*-  Note some compilers choke on comments on `#line' lines.  */
                   3150: #line 3 "/usr/unsupported/lib/bison.simple"
                   3151: 
                   3152: /* Skeleton output parser for bison,
                   3153:    Copyright (C) 1984, 1989, 1990 Bob Corbett and Richard Stallman
                   3154: 
                   3155:    This program is free software; you can redistribute it and/or modify
                   3156:    it under the terms of the GNU General Public License as published by
                   3157:    the Free Software Foundation; either version 1, or (at your option)
                   3158:    any later version.
                   3159: 
                   3160:    This program is distributed in the hope that it will be useful,
                   3161:    but WITHOUT ANY WARRANTY; without even the implied warranty of
                   3162:    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
                   3163:    GNU General Public License for more details.
                   3164: 
                   3165:    You should have received a copy of the GNU General Public License
                   3166:    along with this program; if not, write to the Free Software
                   3167:    Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.  */
                   3168: 
                   3169: 
                   3170: #ifndef alloca
                   3171: #ifdef __GNUC__
                   3172: #define alloca __builtin_alloca
                   3173: #else /* not GNU C.  */
                   3174: #if (!defined (__STDC__) && defined (sparc)) || defined (__sparc__) || defined (__sparc) || defined (__sgi)
                   3175: #include <alloca.h>
                   3176: #else /* not sparc */
                   3177: #if defined (MSDOS) && !defined (__TURBOC__)
                   3178: #include <malloc.h>
                   3179: #else /* not MSDOS, or __TURBOC__ */
                   3180: #if defined(_AIX)
                   3181: #include <malloc.h>
                   3182:  #pragma alloca
                   3183: #else /* not MSDOS, __TURBOC__, or _AIX */
                   3184: #ifdef __hpux
                   3185: #ifdef __cplusplus
                   3186: extern "C" {
                   3187: void *alloca (unsigned int);
                   3188: };
                   3189: #else /* not __cplusplus */
                   3190: void *alloca ();
                   3191: #endif /* not __cplusplus */
                   3192: #endif /* __hpux */
                   3193: #endif /* not _AIX */
                   3194: #endif /* not MSDOS, or __TURBOC__ */
                   3195: #endif /* not sparc.  */
                   3196: #endif /* not GNU C.  */
                   3197: #endif /* alloca not defined.  */
                   3198: 
                   3199: /* This is the parser code that is written into each bison parser
                   3200:   when the %semantic_parser declaration is not specified in the grammar.
                   3201:   It was written by Richard Stallman by simplifying the hairy parser
                   3202:   used when %semantic_parser is specified.  */
                   3203: 
                   3204: /* Note: there must be only one dollar sign in this file.
                   3205:    It is replaced by the list of actions, each action
                   3206:    as one case of the switch.  */
                   3207: 
                   3208: #define yyerrok                (yyerrstatus = 0)
                   3209: #define yyclearin      (yychar = YYEMPTY)
                   3210: #define YYEMPTY                -2
                   3211: #define YYEOF          0
                   3212: #define YYACCEPT       return(0)
                   3213: #define YYABORT        return(1)
                   3214: #define YYERROR                goto yyerrlab1
                   3215: /* Like YYERROR except do call yyerror.
                   3216:    This remains here temporarily to ease the
                   3217:    transition to the new meaning of YYERROR, for GCC.
                   3218:    Once GCC version 2 has supplanted version 1, this can go.  */
                   3219: #define YYFAIL         goto yyerrlab
                   3220: #define YYRECOVERING()  (!!yyerrstatus)
                   3221: #define YYBACKUP(token, value) \
                   3222: do                                                             \
                   3223:   if (yychar == YYEMPTY && yylen == 1)                         \
                   3224:     { yychar = (token), yylval = (value);                      \
                   3225:       yychar1 = YYTRANSLATE (yychar);                          \
                   3226:       YYPOPSTACK;                                              \
                   3227:       goto yybackup;                                           \
                   3228:     }                                                          \
                   3229:   else                                                         \
                   3230:     { yyerror ("syntax error: cannot back up"); YYERROR; }     \
                   3231: while (0)
                   3232: 
                   3233: #define YYTERROR       1
                   3234: #define YYERRCODE      256
                   3235: 
                   3236: #ifndef YYPURE
                   3237: #define YYLEX          yylex()
                   3238: #endif
                   3239: 
                   3240: #ifdef YYPURE
                   3241: #ifdef YYLSP_NEEDED
                   3242: #define YYLEX          yylex(&yylval, &yylloc)
                   3243: #else
                   3244: #define YYLEX          yylex(&yylval)
                   3245: #endif
                   3246: #endif
                   3247: 
                   3248: /* If nonreentrant, generate the variables here */
                   3249: 
                   3250: #ifndef YYPURE
                   3251: 
                   3252: int    yychar;                 /*  the lookahead symbol                */
                   3253: YYSTYPE        yylval;                 /*  the semantic value of the           */
                   3254:                                /*  lookahead symbol                    */
                   3255: 
                   3256: #ifdef YYLSP_NEEDED
                   3257: YYLTYPE yylloc;                        /*  location data for the lookahead     */
                   3258:                                /*  symbol                              */
                   3259: #endif
                   3260: 
                   3261: int yynerrs;                   /*  number of parse errors so far       */
                   3262: #endif  /* not YYPURE */
                   3263: 
                   3264: #if YYDEBUG != 0
                   3265: int yydebug;                   /*  nonzero means print parse trace     */
                   3266: /* Since this is uninitialized, it does not stop multiple parsers
                   3267:    from coexisting.  */
                   3268: #endif
                   3269: 
                   3270: /*  YYINITDEPTH indicates the initial size of the parser's stacks      */
                   3271: 
                   3272: #ifndef        YYINITDEPTH
                   3273: #define YYINITDEPTH 200
                   3274: #endif
                   3275: 
                   3276: /*  YYMAXDEPTH is the maximum size the stacks can grow to
                   3277:     (effective only if the built-in stack extension method is used).  */
                   3278: 
                   3279: #if YYMAXDEPTH == 0
                   3280: #undef YYMAXDEPTH
                   3281: #endif
                   3282: 
                   3283: #ifndef YYMAXDEPTH
                   3284: #define YYMAXDEPTH 10000
                   3285: #endif
                   3286: 
                   3287: /* Prevent warning if -Wstrict-prototypes.  */
                   3288: #ifdef __GNUC__
                   3289: int yyparse (void);
                   3290: #endif
                   3291: 
                   3292: #if __GNUC__ > 1               /* GNU C and GNU C++ define this.  */
                   3293: #define __yy_bcopy(FROM,TO,COUNT)      __builtin_memcpy(TO,FROM,COUNT)
                   3294: #else                          /* not GNU C or C++ */
                   3295: #ifndef __cplusplus
                   3296: 
                   3297: /* This is the most reliable way to avoid incompatibilities
                   3298:    in available built-in functions on various systems.  */
                   3299: static void
                   3300: __yy_bcopy (from, to, count)
                   3301:      char *from;
                   3302:      char *to;
                   3303:      int count;
                   3304: {
                   3305:   register char *f = from;
                   3306:   register char *t = to;
                   3307:   register int i = count;
                   3308: 
                   3309:   while (i-- > 0)
                   3310:     *t++ = *f++;
                   3311: }
                   3312: 
                   3313: #else /* __cplusplus */
                   3314: 
                   3315: /* This is the most reliable way to avoid incompatibilities
                   3316:    in available built-in functions on various systems.  */
                   3317: static void
                   3318: __yy_bcopy (char *from, char *to, int count)
                   3319: {
                   3320:   register char *f = from;
                   3321:   register char *t = to;
                   3322:   register int i = count;
                   3323: 
                   3324:   while (i-- > 0)
                   3325:     *t++ = *f++;
                   3326: }
                   3327: 
                   3328: #endif
                   3329: #endif
                   3330: 
                   3331: #line 184 "/usr/unsupported/lib/bison.simple"
                   3332: int
                   3333: yyparse()
                   3334: {
                   3335:   register int yystate;
                   3336:   register int yyn;
                   3337:   register short *yyssp;
                   3338:   register YYSTYPE *yyvsp;
                   3339:   int yyerrstatus;     /*  number of tokens to shift before error messages enabled */
                   3340:   int yychar1 = 0;             /*  lookahead token as an internal (translated) token number */
                   3341: 
                   3342:   short        yyssa[YYINITDEPTH];     /*  the state stack                     */
                   3343:   YYSTYPE yyvsa[YYINITDEPTH];  /*  the semantic value stack            */
                   3344: 
                   3345:   short *yyss = yyssa;         /*  refer to the stacks thru separate pointers */
                   3346:   YYSTYPE *yyvs = yyvsa;       /*  to allow yyoverflow to reallocate them elsewhere */
                   3347: 
                   3348: #ifdef YYLSP_NEEDED
                   3349:   YYLTYPE yylsa[YYINITDEPTH];  /*  the location stack                  */
                   3350:   YYLTYPE *yyls = yylsa;
                   3351:   YYLTYPE *yylsp;
                   3352: 
                   3353: #define YYPOPSTACK   (yyvsp--, yyssp--, yylsp--)
                   3354: #else
                   3355: #define YYPOPSTACK   (yyvsp--, yyssp--)
                   3356: #endif
                   3357: 
                   3358:   int yystacksize = YYINITDEPTH;
                   3359: 
                   3360: #ifdef YYPURE
                   3361:   int yychar;
                   3362:   YYSTYPE yylval;
                   3363:   int yynerrs;
                   3364: #ifdef YYLSP_NEEDED
                   3365:   YYLTYPE yylloc;
                   3366: #endif
                   3367: #endif
                   3368: 
                   3369:   YYSTYPE yyval;               /*  the variable used to return         */
                   3370:                                /*  semantic values from the action     */
                   3371:                                /*  routines                            */
                   3372: 
                   3373:   int yylen;
                   3374: 
                   3375: #if YYDEBUG != 0
                   3376:   if (yydebug)
                   3377:     fprintf(stderr, "Starting parse\n");
                   3378: #endif
                   3379: 
                   3380:   yystate = 0;
                   3381:   yyerrstatus = 0;
                   3382:   yynerrs = 0;
                   3383:   yychar = YYEMPTY;            /* Cause a token to be read.  */
                   3384: 
                   3385:   /* Initialize stack pointers.
                   3386:      Waste one element of value and location stack
                   3387:      so that they stay on the same level as the state stack.
                   3388:      The wasted elements are never initialized.  */
                   3389: 
                   3390:   yyssp = yyss - 1;
                   3391:   yyvsp = yyvs;
                   3392: #ifdef YYLSP_NEEDED
                   3393:   yylsp = yyls;
                   3394: #endif
                   3395: 
                   3396: /* Push a new state, which is found in  yystate  .  */
                   3397: /* In all cases, when you get here, the value and location stacks
                   3398:    have just been pushed. so pushing a state here evens the stacks.  */
                   3399: yynewstate:
                   3400: 
                   3401:   *++yyssp = yystate;
                   3402: 
                   3403:   if (yyssp >= yyss + yystacksize - 1)
                   3404:     {
                   3405:       /* Give user a chance to reallocate the stack */
                   3406:       /* Use copies of these so that the &'s don't force the real ones into memory. */
                   3407:       YYSTYPE *yyvs1 = yyvs;
                   3408:       short *yyss1 = yyss;
                   3409: #ifdef YYLSP_NEEDED
                   3410:       YYLTYPE *yyls1 = yyls;
                   3411: #endif
                   3412: 
                   3413:       /* Get the current used size of the three stacks, in elements.  */
                   3414:       int size = yyssp - yyss + 1;
                   3415: 
                   3416: #ifdef yyoverflow
                   3417:       /* Each stack pointer address is followed by the size of
                   3418:         the data in use in that stack, in bytes.  */
                   3419: #ifdef YYLSP_NEEDED
                   3420:       /* This used to be a conditional around just the two extra args,
                   3421:         but that might be undefined if yyoverflow is a macro.  */
                   3422:       yyoverflow("parser stack overflow",
                   3423:                 &yyss1, size * sizeof (*yyssp),
                   3424:                 &yyvs1, size * sizeof (*yyvsp),
                   3425:                 &yyls1, size * sizeof (*yylsp),
                   3426:                 &yystacksize);
                   3427: #else
                   3428:       yyoverflow("parser stack overflow",
                   3429:                 &yyss1, size * sizeof (*yyssp),
                   3430:                 &yyvs1, size * sizeof (*yyvsp),
                   3431:                 &yystacksize);
                   3432: #endif
                   3433: 
                   3434:       yyss = yyss1; yyvs = yyvs1;
                   3435: #ifdef YYLSP_NEEDED
                   3436:       yyls = yyls1;
                   3437: #endif
                   3438: #else /* no yyoverflow */
                   3439:       /* Extend the stack our own way.  */
                   3440:       if (yystacksize >= YYMAXDEPTH)
                   3441:        {
                   3442:          yyerror("parser stack overflow");
                   3443:          return 2;
                   3444:        }
                   3445:       yystacksize *= 2;
                   3446:       if (yystacksize > YYMAXDEPTH)
                   3447:        yystacksize = YYMAXDEPTH;
                   3448:       yyss = (short *) alloca (yystacksize * sizeof (*yyssp));
                   3449:       __yy_bcopy ((char *)yyss1, (char *)yyss, size * sizeof (*yyssp));
                   3450:       yyvs = (YYSTYPE *) alloca (yystacksize * sizeof (*yyvsp));
                   3451:       __yy_bcopy ((char *)yyvs1, (char *)yyvs, size * sizeof (*yyvsp));
                   3452: #ifdef YYLSP_NEEDED
                   3453:       yyls = (YYLTYPE *) alloca (yystacksize * sizeof (*yylsp));
                   3454:       __yy_bcopy ((char *)yyls1, (char *)yyls, size * sizeof (*yylsp));
                   3455: #endif
                   3456: #endif /* no yyoverflow */
                   3457: 
                   3458:       yyssp = yyss + size - 1;
                   3459:       yyvsp = yyvs + size - 1;
                   3460: #ifdef YYLSP_NEEDED
                   3461:       yylsp = yyls + size - 1;
                   3462: #endif
                   3463: 
                   3464: #if YYDEBUG != 0
                   3465:       if (yydebug)
                   3466:        fprintf(stderr, "Stack size increased to %d\n", yystacksize);
                   3467: #endif
                   3468: 
                   3469:       if (yyssp >= yyss + yystacksize - 1)
                   3470:        YYABORT;
                   3471:     }
                   3472: 
                   3473: #if YYDEBUG != 0
                   3474:   if (yydebug)
                   3475:     fprintf(stderr, "Entering state %d\n", yystate);
                   3476: #endif
                   3477: 
                   3478:   goto yybackup;
                   3479:  yybackup:
                   3480: 
                   3481: /* Do appropriate processing given the current state.  */
                   3482: /* Read a lookahead token if we need one and don't already have one.  */
                   3483: /* yyresume: */
                   3484: 
                   3485:   /* First try to decide what to do without reference to lookahead token.  */
                   3486: 
                   3487:   yyn = yypact[yystate];
                   3488:   if (yyn == YYFLAG)
                   3489:     goto yydefault;
                   3490: 
                   3491:   /* Not known => get a lookahead token if don't already have one.  */
                   3492: 
                   3493:   /* yychar is either YYEMPTY or YYEOF
                   3494:      or a valid token in external form.  */
                   3495: 
                   3496:   if (yychar == YYEMPTY)
                   3497:     {
                   3498: #if YYDEBUG != 0
                   3499:       if (yydebug)
                   3500:        fprintf(stderr, "Reading a token: ");
                   3501: #endif
                   3502:       yychar = YYLEX;
                   3503:     }
                   3504: 
                   3505:   /* Convert token to internal form (in yychar1) for indexing tables with */
                   3506: 
                   3507:   if (yychar <= 0)             /* This means end of input. */
                   3508:     {
                   3509:       yychar1 = 0;
                   3510:       yychar = YYEOF;          /* Don't call YYLEX any more */
                   3511: 
                   3512: #if YYDEBUG != 0
                   3513:       if (yydebug)
                   3514:        fprintf(stderr, "Now at end of input.\n");
                   3515: #endif
                   3516:     }
                   3517:   else
                   3518:     {
                   3519:       yychar1 = YYTRANSLATE(yychar);
                   3520: 
                   3521: #if YYDEBUG != 0
                   3522:       if (yydebug)
                   3523:        {
                   3524:          fprintf (stderr, "Next token is %d (%s", yychar, yytname[yychar1]);
                   3525:          /* Give the individual parser a way to print the precise meaning
                   3526:             of a token, for further debugging info.  */
                   3527: #ifdef YYPRINT
                   3528:          YYPRINT (stderr, yychar, yylval);
                   3529: #endif
                   3530:          fprintf (stderr, ")\n");
                   3531:        }
                   3532: #endif
                   3533:     }
                   3534: 
                   3535:   yyn += yychar1;
                   3536:   if (yyn < 0 || yyn > YYLAST || yycheck[yyn] != yychar1)
                   3537:     goto yydefault;
                   3538: 
                   3539:   yyn = yytable[yyn];
                   3540: 
                   3541:   /* yyn is what to do for this token type in this state.
                   3542:      Negative => reduce, -yyn is rule number.
                   3543:      Positive => shift, yyn is new state.
                   3544:        New state is final state => don't bother to shift,
                   3545:        just return success.
                   3546:      0, or most negative number => error.  */
                   3547: 
                   3548:   if (yyn < 0)
                   3549:     {
                   3550:       if (yyn == YYFLAG)
                   3551:        goto yyerrlab;
                   3552:       yyn = -yyn;
                   3553:       goto yyreduce;
                   3554:     }
                   3555:   else if (yyn == 0)
                   3556:     goto yyerrlab;
                   3557: 
                   3558:   if (yyn == YYFINAL)
                   3559:     YYACCEPT;
                   3560: 
                   3561:   /* Shift the lookahead token.  */
                   3562: 
                   3563: #if YYDEBUG != 0
                   3564:   if (yydebug)
                   3565:     fprintf(stderr, "Shifting token %d (%s), ", yychar, yytname[yychar1]);
                   3566: #endif
                   3567: 
                   3568:   /* Discard the token being shifted unless it is eof.  */
                   3569:   if (yychar != YYEOF)
                   3570:     yychar = YYEMPTY;
                   3571: 
                   3572:   *++yyvsp = yylval;
                   3573: #ifdef YYLSP_NEEDED
                   3574:   *++yylsp = yylloc;
                   3575: #endif
                   3576: 
                   3577:   /* count tokens shifted since error; after three, turn off error status.  */
                   3578:   if (yyerrstatus) yyerrstatus--;
                   3579: 
                   3580:   yystate = yyn;
                   3581:   goto yynewstate;
                   3582: 
                   3583: /* Do the default action for the current state.  */
                   3584: yydefault:
                   3585: 
                   3586:   yyn = yydefact[yystate];
                   3587:   if (yyn == 0)
                   3588:     goto yyerrlab;
                   3589: 
                   3590: /* Do a reduction.  yyn is the number of a rule to reduce with.  */
                   3591: yyreduce:
                   3592:   yylen = yyr2[yyn];
                   3593:   if (yylen > 0)
                   3594:     yyval = yyvsp[1-yylen]; /* implement default value of the action */
                   3595: 
                   3596: #if YYDEBUG != 0
                   3597:   if (yydebug)
                   3598:     {
                   3599:       int i;
                   3600: 
                   3601:       fprintf (stderr, "Reducing via rule %d (line %d), ",
                   3602:               yyn, yyrline[yyn]);
                   3603: 
                   3604:       /* Print the symbols being reduced, and their result.  */
                   3605:       for (i = yyprhs[yyn]; yyrhs[i] > 0; i++)
                   3606:        fprintf (stderr, "%s ", yytname[yyrhs[i]]);
                   3607:       fprintf (stderr, " -> %s\n", yytname[yyr1[yyn]]);
                   3608:     }
                   3609: #endif
                   3610: 
                   3611: 
                   3612:   switch (yyn) {
                   3613: 
                   3614: case 2:
                   3615: #line 294 "parse.y"
                   3616: {
                   3617:                  /* In case there were missing closebraces,
                   3618:                     get us back to the global binding level.  */
                   3619:                  while (! global_bindings_p ())
                   3620:                    poplevel (0, 0, 0);
                   3621:                  finish_file ();
                   3622:                ;
                   3623:     break;}
                   3624: case 3:
                   3625: #line 308 "parse.y"
                   3626: { yyval.ttype = NULL_TREE; ;
                   3627:     break;}
                   3628: case 4:
                   3629: #line 309 "parse.y"
                   3630: { yyval.ttype = NULL_TREE; ;
                   3631:     break;}
                   3632: case 5:
                   3633: #line 311 "parse.y"
                   3634: { yyval.ttype = NULL_TREE; ;
                   3635:     break;}
                   3636: case 6:
                   3637: #line 315 "parse.y"
                   3638: { have_extern_spec = 1;
                   3639:                  used_extern_spec = 0;
                   3640:                  yyval.ttype = NULL_TREE; ;
                   3641:     break;}
                   3642: case 7:
                   3643: #line 320 "parse.y"
                   3644: { have_extern_spec = 0; ;
                   3645:     break;}
                   3646: case 10:
                   3647: #line 329 "parse.y"
                   3648: { if (pending_lang_change) do_pending_lang_change(); ;
                   3649:     break;}
                   3650: case 11:
                   3651: #line 331 "parse.y"
                   3652: { if (! global_bindings_p () && ! pseudo_global_level_p())
                   3653:              pop_everything (); ;
                   3654:     break;}
                   3655: case 12:
                   3656: #line 337 "parse.y"
                   3657: { if (pending_inlines) do_pending_inlines (); ;
                   3658:     break;}
                   3659: case 13:
                   3660: #line 339 "parse.y"
                   3661: { if (pending_inlines) do_pending_inlines (); ;
                   3662:     break;}
                   3663: case 14:
                   3664: #line 341 "parse.y"
                   3665: { if (pending_inlines) do_pending_inlines (); ;
                   3666:     break;}
                   3667: case 16:
                   3668: #line 344 "parse.y"
                   3669: { if (TREE_CHAIN (yyvsp[-2].ttype)) yyvsp[-2].ttype = combine_strings (yyvsp[-2].ttype);
                   3670:                  assemble_asm (yyvsp[-2].ttype); ;
                   3671:     break;}
                   3672: case 17:
                   3673: #line 347 "parse.y"
                   3674: { pop_lang_context (); ;
                   3675:     break;}
                   3676: case 18:
                   3677: #line 349 "parse.y"
                   3678: { pop_lang_context (); ;
                   3679:     break;}
                   3680: case 19:
                   3681: #line 351 "parse.y"
                   3682: { if (pending_inlines) do_pending_inlines ();
                   3683:                  pop_lang_context (); ;
                   3684:     break;}
                   3685: case 20:
                   3686: #line 354 "parse.y"
                   3687: { if (pending_inlines) do_pending_inlines ();
                   3688:                  pop_lang_context (); ;
                   3689:     break;}
                   3690: case 21:
                   3691: #line 360 "parse.y"
                   3692: { push_lang_context (yyvsp[0].ttype); ;
                   3693:     break;}
                   3694: case 22:
                   3695: #line 365 "parse.y"
                   3696: { begin_template_parm_list (); ;
                   3697:     break;}
                   3698: case 23:
                   3699: #line 367 "parse.y"
                   3700: { yyval.ttype = end_template_parm_list (yyvsp[-1].ttype); ;
                   3701:     break;}
                   3702: case 24:
                   3703: #line 372 "parse.y"
                   3704: { yyval.ttype = process_template_parm (NULL_TREE, yyvsp[0].ttype); ;
                   3705:     break;}
                   3706: case 25:
                   3707: #line 374 "parse.y"
                   3708: { yyval.ttype = process_template_parm (yyvsp[-2].ttype, yyvsp[0].ttype); ;
                   3709:     break;}
                   3710: case 26:
                   3711: #line 379 "parse.y"
                   3712: { 
                   3713:                  yyval.ttype = build_tree_list (yyvsp[0].ttype, NULL_TREE);
                   3714:                 ttpa:
                   3715:                  if (TREE_PURPOSE (yyval.ttype) == signature_type_node)
                   3716:                    sorry ("signature as template type parameter");
                   3717:                  else if (TREE_PURPOSE (yyval.ttype) != class_type_node)
                   3718:                    pedwarn ("template type parameters must use the keyword `class'");
                   3719:                ;
                   3720:     break;}
                   3721: case 27:
                   3722: #line 388 "parse.y"
                   3723: { yyval.ttype = build_tree_list (yyvsp[-1].ttype, yyvsp[0].ttype); goto ttpa; ;
                   3724:     break;}
                   3725: case 28:
                   3726: #line 400 "parse.y"
                   3727: { yyval.ttype = build_tree_list (NULL_TREE, yyval.ttype); ;
                   3728:     break;}
                   3729: case 29:
                   3730: #line 402 "parse.y"
                   3731: { yyval.ttype = build_tree_list (yyvsp[0].ttype, yyval.ttype); ;
                   3732:     break;}
                   3733: case 31:
                   3734: #line 408 "parse.y"
                   3735: { warning ("use of `overload' is an anachronism"); ;
                   3736:     break;}
                   3737: case 32:
                   3738: #line 412 "parse.y"
                   3739: { declare_overloaded (yyvsp[0].ttype); ;
                   3740:     break;}
                   3741: case 33:
                   3742: #line 414 "parse.y"
                   3743: { declare_overloaded (yyvsp[0].ttype); ;
                   3744:     break;}
                   3745: case 34:
                   3746: #line 421 "parse.y"
                   3747: { yychar = '{'; goto template1; ;
                   3748:     break;}
                   3749: case 36:
                   3750: #line 424 "parse.y"
                   3751: { yychar = '{'; goto template1; ;
                   3752:     break;}
                   3753: case 38:
                   3754: #line 427 "parse.y"
                   3755: { yychar = ':'; goto template1; ;
                   3756:     break;}
                   3757: case 40:
                   3758: #line 430 "parse.y"
                   3759: {
                   3760:                  yychar = ':';
                   3761:                template1:
                   3762:                  if (current_aggr == exception_type_node)
                   3763:                    error ("template type must define an aggregate or union");
                   3764:                  else if (current_aggr == signature_type_node)
                   3765:                    sorry ("template type defining a signature");
                   3766:                  /* Maybe pedantic warning for union?
                   3767:                     How about an enum? :-)  */
                   3768:                  end_template_decl (yyvsp[-2].ttype, yyvsp[-1].ttype, current_aggr, 1);
                   3769:                  reinit_parse_for_template (yychar, yyvsp[-2].ttype, yyvsp[-1].ttype);
                   3770:                  yychar = YYEMPTY;
                   3771:                ;
                   3772:     break;}
                   3773: case 42:
                   3774: #line 445 "parse.y"
                   3775: {
                   3776:                  end_template_decl (yyvsp[-2].ttype, yyvsp[-1].ttype, current_aggr, 0);
                   3777:                  /* declare $2 as template name with $1 parm list */
                   3778:                ;
                   3779:     break;}
                   3780: case 43:
                   3781: #line 450 "parse.y"
                   3782: {
                   3783:                  end_template_decl (yyvsp[-2].ttype, yyvsp[-1].ttype, current_aggr, 0);
                   3784:                  /* declare $2 as template name with $1 parm list */
                   3785:                ;
                   3786:     break;}
                   3787: case 44:
                   3788: #line 457 "parse.y"
                   3789: {
                   3790:                  tree d;
                   3791:                  int momentary;
                   3792:                  int def = (yyvsp[0].itype != ';');
                   3793:                  momentary = suspend_momentary ();
                   3794:                  d = start_decl (yyvsp[-4].ttype, /*current_declspecs*/NULL_TREE, 0,
                   3795:                                  yyvsp[-3].ttype);
                   3796:                  cplus_decl_attributes (d, yyvsp[-1].ttype);
                   3797:                  finish_decl (d, NULL_TREE, yyvsp[-2].ttype, 0);
                   3798:                  end_template_decl (yyvsp[-5].ttype, d, 0, def);
                   3799:                  if (def)
                   3800:                    reinit_parse_for_template ((int) yyvsp[0].itype, yyvsp[-5].ttype, d);
                   3801:                  resume_momentary (momentary);
                   3802:                ;
                   3803:     break;}
                   3804: case 45:
                   3805: #line 474 "parse.y"
                   3806: {
                   3807:                  tree d;
                   3808:                  int momentary;
                   3809:                  int def = (yyvsp[0].itype != ';');
                   3810: 
                   3811:                  current_declspecs = yyvsp[-5].ttype;
                   3812:                  momentary = suspend_momentary ();
                   3813:                  d = start_decl (yyvsp[-4].ttype, current_declspecs,
                   3814:                                  0, yyvsp[-3].ttype);
                   3815:                  cplus_decl_attributes (d, yyvsp[-1].ttype);
                   3816:                  finish_decl (d, NULL_TREE, yyvsp[-2].ttype, 0);
                   3817:                  end_template_decl (yyvsp[-6].ttype, d, 0, def);
                   3818:                  if (def)
                   3819:                    {
                   3820:                      reinit_parse_for_template ((int) yyvsp[0].itype, yyvsp[-6].ttype, d);
                   3821:                      yychar = YYEMPTY;
                   3822:                    }
                   3823:                  note_list_got_semicolon (yyvsp[-5].ttype);
                   3824:                  resume_momentary (momentary);
                   3825:                ;
                   3826:     break;}
                   3827: case 46:
                   3828: #line 495 "parse.y"
                   3829: {
                   3830:                  int def = (yyvsp[0].itype != ';');
                   3831:                  tree d = start_decl (yyvsp[-1].ttype, yyvsp[-2].ttype, 0, NULL_TREE);
                   3832:                  finish_decl (d, NULL_TREE, NULL_TREE, 0);
                   3833:                  end_template_decl (yyvsp[-3].ttype, d, 0, def);
                   3834:                  if (def)
                   3835:                    reinit_parse_for_template ((int) yyvsp[0].itype, yyvsp[-3].ttype, d);
                   3836:                ;
                   3837:     break;}
                   3838: case 47:
                   3839: #line 504 "parse.y"
                   3840: { end_template_decl (yyvsp[-2].ttype, 0, 0, 0); ;
                   3841:     break;}
                   3842: case 48:
                   3843: #line 505 "parse.y"
                   3844: { end_template_decl (yyvsp[-2].ttype, 0, 0, 0); ;
                   3845:     break;}
                   3846: case 49:
                   3847: #line 508 "parse.y"
                   3848: { yyval.itype = '{'; ;
                   3849:     break;}
                   3850: case 50:
                   3851: #line 509 "parse.y"
                   3852: { yyval.itype = ':'; ;
                   3853:     break;}
                   3854: case 51:
                   3855: #line 510 "parse.y"
                   3856: { yyval.itype = ';'; ;
                   3857:     break;}
                   3858: case 52:
                   3859: #line 511 "parse.y"
                   3860: { yyval.itype = '='; ;
                   3861:     break;}
                   3862: case 53:
                   3863: #line 512 "parse.y"
                   3864: { yyval.itype = RETURN; ;
                   3865:     break;}
                   3866: case 54:
                   3867: #line 517 "parse.y"
                   3868: {;
                   3869:     break;}
                   3870: case 55:
                   3871: #line 519 "parse.y"
                   3872: {;
                   3873:     break;}
                   3874: case 56:
                   3875: #line 522 "parse.y"
                   3876: { tree d;
                   3877:                  d = start_decl (yyvsp[-1].ttype, yyval.ttype, 0, NULL_TREE);
                   3878:                  finish_decl (d, NULL_TREE, NULL_TREE, 0);
                   3879:                ;
                   3880:     break;}
                   3881: case 57:
                   3882: #line 527 "parse.y"
                   3883: {
                   3884:                  note_list_got_semicolon (yyval.ttype);
                   3885:                ;
                   3886:     break;}
                   3887: case 58:
                   3888: #line 532 "parse.y"
                   3889: { tree d;
                   3890:                  d = start_decl (yyvsp[-1].ttype, yyval.ttype, 0, NULL_TREE);
                   3891:                  finish_decl (d, NULL_TREE, NULL_TREE, 0);
                   3892:                  note_list_got_semicolon (yyval.ttype);
                   3893:                ;
                   3894:     break;}
                   3895: case 59:
                   3896: #line 538 "parse.y"
                   3897: { pedwarn ("empty declaration"); ;
                   3898:     break;}
                   3899: case 61:
                   3900: #line 541 "parse.y"
                   3901: {
                   3902:            tree t = yyval.ttype;
                   3903:            shadow_tag (t);
                   3904:            if (TREE_CODE (t) == TREE_LIST
                   3905:                && TREE_PURPOSE (t) == NULL_TREE)
                   3906:              {
                   3907:                t = TREE_VALUE (t);
                   3908:                if (IS_AGGR_TYPE (t)
                   3909:                    && IDENTIFIER_TEMPLATE (TYPE_IDENTIFIER (t)))
                   3910:                  {
                   3911:                    if (CLASSTYPE_USE_TEMPLATE (t) == 0)
                   3912:                      SET_CLASSTYPE_TEMPLATE_SPECIALIZATION (t);
                   3913:                    else if (CLASSTYPE_TEMPLATE_INSTANTIATION (t))
                   3914:                      error ("override declaration for already-expanded template");
                   3915:                  }
                   3916:              }
                   3917:            note_list_got_semicolon (yyval.ttype);
                   3918:          ;
                   3919:     break;}
                   3920: case 65:
                   3921: #line 566 "parse.y"
                   3922: {
                   3923:                  finish_function (lineno, 1);
                   3924:                  /* finish_function performs these three statements:
                   3925: 
                   3926:                     expand_end_bindings (getdecls (), 1, 0);
                   3927:                     poplevel (1, 1, 0);
                   3928: 
                   3929:                     expand_end_bindings (0, 0, 0);
                   3930:                     poplevel (0, 0, 1);
                   3931:                     */
                   3932:                  if (yyval.ttype) process_next_inline (yyval.ttype);
                   3933:                ;
                   3934:     break;}
                   3935: case 66:
                   3936: #line 579 "parse.y"
                   3937: {
                   3938:                  finish_function (lineno, 1);
                   3939:                  /* finish_function performs these three statements:
                   3940: 
                   3941:                     expand_end_bindings (getdecls (), 1, 0);
                   3942:                     poplevel (1, 1, 0);
                   3943: 
                   3944:                     expand_end_bindings (0, 0, 0);
                   3945:                     poplevel (0, 0, 1);
                   3946:                     */
                   3947:                  if (yyval.ttype) process_next_inline (yyval.ttype);
                   3948:                ;
                   3949:     break;}
                   3950: case 67:
                   3951: #line 592 "parse.y"
                   3952: { finish_function (lineno, 0);
                   3953:                  if (yyval.ttype) process_next_inline (yyval.ttype); ;
                   3954:     break;}
                   3955: case 68:
                   3956: #line 595 "parse.y"
                   3957: { finish_function (lineno, 0);
                   3958:                  if (yyval.ttype) process_next_inline (yyval.ttype); ;
                   3959:     break;}
                   3960: case 69:
                   3961: #line 598 "parse.y"
                   3962: { finish_function (lineno, 0);
                   3963:                  if (yyval.ttype) process_next_inline (yyval.ttype); ;
                   3964:     break;}
                   3965: case 70:
                   3966: #line 601 "parse.y"
                   3967: {;
                   3968:     break;}
                   3969: case 71:
                   3970: #line 603 "parse.y"
                   3971: {;
                   3972:     break;}
                   3973: case 72:
                   3974: #line 605 "parse.y"
                   3975: {;
                   3976:     break;}
                   3977: case 73:
                   3978: #line 610 "parse.y"
                   3979: { if (! start_function (yyval.ttype, yyvsp[-1].ttype, yyvsp[0].ttype, 0))
                   3980:                    YYERROR1;
                   3981:                  reinit_parse_for_function ();
                   3982:                  yyval.ttype = NULL_TREE; ;
                   3983:     break;}
                   3984: case 74:
                   3985: #line 615 "parse.y"
                   3986: { if (! start_function (yyval.ttype, yyvsp[-1].ttype, yyvsp[0].ttype, 0))
                   3987:                    YYERROR1;
                   3988:                  reinit_parse_for_function ();
                   3989:                  yyval.ttype = NULL_TREE; ;
                   3990:     break;}
                   3991: case 75:
                   3992: #line 620 "parse.y"
                   3993: { if (! start_function (NULL_TREE, yyval.ttype, yyvsp[0].ttype, 0))
                   3994:                    YYERROR1;
                   3995:                  reinit_parse_for_function ();
                   3996:                  yyval.ttype = NULL_TREE; ;
                   3997:     break;}
                   3998: case 76:
                   3999: #line 625 "parse.y"
                   4000: { start_function (NULL_TREE, TREE_VALUE (yyval.ttype), NULL_TREE, 1);
                   4001:                  reinit_parse_for_function (); ;
                   4002:     break;}
                   4003: case 77:
                   4004: #line 633 "parse.y"
                   4005: {
                   4006:                  yyval.ttype = build_parse_node (CALL_EXPR, TREE_VALUE (yyvsp[-5].ttype), yyvsp[-3].ttype, yyvsp[-1].ttype);
                   4007:                  yyval.ttype = start_method (TREE_CHAIN (yyvsp[-5].ttype), yyval.ttype, yyvsp[0].ttype);
                   4008:                 rest_of_mdef:
                   4009:                  if (! yyval.ttype)
                   4010:                    YYERROR1;
                   4011:                  if (yychar == YYEMPTY)
                   4012:                    yychar = YYLEX;
                   4013:                  reinit_parse_for_method (yychar, yyval.ttype); ;
                   4014:     break;}
                   4015: case 78:
                   4016: #line 643 "parse.y"
                   4017: {
                   4018:                  yyval.ttype = build_parse_node (CALL_EXPR, TREE_VALUE (yyvsp[-3].ttype),
                   4019:                                         empty_parms (), yyvsp[-1].ttype);
                   4020:                  yyval.ttype = start_method (TREE_CHAIN (yyvsp[-3].ttype), yyval.ttype, yyvsp[0].ttype);
                   4021:                  goto rest_of_mdef;
                   4022:                ;
                   4023:     break;}
                   4024: case 79:
                   4025: #line 650 "parse.y"
                   4026: { yyval.ttype = start_method (yyval.ttype, yyvsp[-1].ttype, yyvsp[0].ttype); goto rest_of_mdef; ;
                   4027:     break;}
                   4028: case 80:
                   4029: #line 652 "parse.y"
                   4030: { yyval.ttype = start_method (yyval.ttype, yyvsp[-1].ttype, yyvsp[0].ttype); goto rest_of_mdef; ;
                   4031:     break;}
                   4032: case 81:
                   4033: #line 654 "parse.y"
                   4034: { yyval.ttype = start_method (NULL_TREE, yyval.ttype, yyvsp[0].ttype); goto rest_of_mdef; ;
                   4035:     break;}
                   4036: case 82:
                   4037: #line 658 "parse.y"
                   4038: {
                   4039:                  if (! current_function_parms_stored)
                   4040:                    store_parm_decls ();
                   4041:                  yyval.ttype = yyvsp[0].ttype;
                   4042:                ;
                   4043:     break;}
                   4044: case 83:
                   4045: #line 666 "parse.y"
                   4046: { store_return_init (yyval.ttype, NULL_TREE); ;
                   4047:     break;}
                   4048: case 84:
                   4049: #line 668 "parse.y"
                   4050: { store_return_init (yyval.ttype, yyvsp[0].ttype); ;
                   4051:     break;}
                   4052: case 85:
                   4053: #line 670 "parse.y"
                   4054: { store_return_init (yyval.ttype, yyvsp[-1].ttype); ;
                   4055:     break;}
                   4056: case 86:
                   4057: #line 672 "parse.y"
                   4058: { store_return_init (yyval.ttype, NULL_TREE); ;
                   4059:     break;}
                   4060: case 87:
                   4061: #line 677 "parse.y"
                   4062: {
                   4063:                  if (yyvsp[0].itype == 0)
                   4064:                    error ("no base initializers given following ':'");
                   4065:                  setup_vtbl_ptr ();
                   4066:                  /* Always keep the BLOCK node associated with the outermost
                   4067:                     pair of curley braces of a function.  These are needed
                   4068:                     for correct operation of dwarfout.c.  */
                   4069:                  keep_next_level ();
                   4070:                ;
                   4071:     break;}
                   4072: case 88:
                   4073: #line 690 "parse.y"
                   4074: {
                   4075:                  if (! current_function_parms_stored)
                   4076:                    store_parm_decls ();
                   4077: 
                   4078:                  /* Flag that we are processing base and member initializers.  */
                   4079:                  current_vtable_decl = error_mark_node;
                   4080: 
                   4081:                  if (DECL_CONSTRUCTOR_P (current_function_decl))
                   4082:                    {
                   4083:                      /* Make a contour for the initializer list.  */
                   4084:                      pushlevel (0);
                   4085:                      clear_last_expr ();
                   4086:                      expand_start_bindings (0);
                   4087:                    }
                   4088:                  else if (current_class_type == NULL_TREE)
                   4089:                    error ("base initializers not allowed for non-member functions");
                   4090:                  else if (! DECL_CONSTRUCTOR_P (current_function_decl))
                   4091:                    error ("only constructors take base initializers");
                   4092:                ;
                   4093:     break;}
                   4094: case 89:
                   4095: #line 713 "parse.y"
                   4096: { yyval.itype = 0; ;
                   4097:     break;}
                   4098: case 90:
                   4099: #line 715 "parse.y"
                   4100: { yyval.itype = 1; ;
                   4101:     break;}
                   4102: case 93:
                   4103: #line 721 "parse.y"
                   4104: {
                   4105:                  if (current_class_name && !flag_traditional)
                   4106:                    pedwarn ("anachronistic old style base class initializer");
                   4107:                  expand_member_init (C_C_D, NULL_TREE, yyvsp[-1].ttype);
                   4108:                ;
                   4109:     break;}
                   4110: case 94:
                   4111: #line 727 "parse.y"
                   4112: {
                   4113:                  if (current_class_name && !flag_traditional)
                   4114:                    pedwarn ("anachronistic old style base class initializer");
                   4115:                  expand_member_init (C_C_D, NULL_TREE, void_type_node);
                   4116:                ;
                   4117:     break;}
                   4118: case 95:
                   4119: #line 733 "parse.y"
                   4120: { expand_member_init (C_C_D, yyval.ttype, yyvsp[-1].ttype); ;
                   4121:     break;}
                   4122: case 96:
                   4123: #line 735 "parse.y"
                   4124: { expand_member_init (C_C_D, yyval.ttype, void_type_node); ;
                   4125:     break;}
                   4126: case 97:
                   4127: #line 737 "parse.y"
                   4128: { expand_member_init (C_C_D, yyval.ttype, yyvsp[-1].ttype); ;
                   4129:     break;}
                   4130: case 98:
                   4131: #line 739 "parse.y"
                   4132: { expand_member_init (C_C_D, yyval.ttype, void_type_node); ;
                   4133:     break;}
                   4134: case 99:
                   4135: #line 742 "parse.y"
                   4136: {
                   4137:                  do_member_init (OP0 (yyvsp[-3].ttype), OP1 (yyvsp[-3].ttype), yyvsp[-1].ttype);
                   4138:                ;
                   4139:     break;}
                   4140: case 100:
                   4141: #line 746 "parse.y"
                   4142: {
                   4143:                  do_member_init (OP0 (yyvsp[-1].ttype), OP1 (yyvsp[-1].ttype), void_type_node);
                   4144:                ;
                   4145:     break;}
                   4146: case 109:
                   4147: #line 770 "parse.y"
                   4148: { do_type_instantiation (yyvsp[0].ttype ? yyvsp[0].ttype : yyvsp[-1].ttype, NULL_TREE); ;
                   4149:     break;}
                   4150: case 110:
                   4151: #line 772 "parse.y"
                   4152: { do_function_instantiation (yyvsp[-1].ttype, yyvsp[0].ttype, NULL_TREE); ;
                   4153:     break;}
                   4154: case 111:
                   4155: #line 774 "parse.y"
                   4156: { do_type_instantiation (yyvsp[0].ttype ? yyvsp[0].ttype : yyvsp[-1].ttype, yyvsp[-3].ttype); ;
                   4157:     break;}
                   4158: case 112:
                   4159: #line 776 "parse.y"
                   4160: { do_function_instantiation (yyvsp[-1].ttype, yyvsp[0].ttype, yyvsp[-3].ttype); ;
                   4161:     break;}
                   4162: case 113:
                   4163: #line 781 "parse.y"
                   4164: { if (yyvsp[0].ttype) yyval.ttype = yyvsp[0].ttype; ;
                   4165:     break;}
                   4166: case 114:
                   4167: #line 786 "parse.y"
                   4168: { yyval.ttype = lookup_template_class (yyval.ttype, yyvsp[-1].ttype, NULL_TREE); ;
                   4169:     break;}
                   4170: case 115:
                   4171: #line 788 "parse.y"
                   4172: { yyval.ttype = lookup_template_class (yyval.ttype, NULL_TREE, NULL_TREE); ;
                   4173:     break;}
                   4174: case 116:
                   4175: #line 790 "parse.y"
                   4176: { yyval.ttype = lookup_template_class (yyval.ttype, yyvsp[-1].ttype, NULL_TREE); ;
                   4177:     break;}
                   4178: case 117:
                   4179: #line 795 "parse.y"
                   4180: { yyval.ttype = instantiate_class_template (yyvsp[0].ttype, 1); ;
                   4181:     break;}
                   4182: case 118:
                   4183: #line 800 "parse.y"
                   4184: { yyval.ttype = build_tree_list (NULL_TREE, yyval.ttype); ;
                   4185:     break;}
                   4186: case 119:
                   4187: #line 802 "parse.y"
                   4188: { yyval.ttype = chainon (yyval.ttype, build_tree_list (NULL_TREE, yyvsp[0].ttype)); ;
                   4189:     break;}
                   4190: case 120:
                   4191: #line 807 "parse.y"
                   4192: { yyval.ttype = groktypename (yyval.ttype); ;
                   4193:     break;}
                   4194: case 122:
                   4195: #line 813 "parse.y"
                   4196: {
                   4197:                  tree t, decl, tmpl;
                   4198: 
                   4199:                  tmpl = TREE_PURPOSE (IDENTIFIER_TEMPLATE (yyvsp[-1].ttype));
                   4200:                  t = xref_tag (DECL_TEMPLATE_INFO (tmpl)->aggr, yyvsp[-1].ttype, yyvsp[0].ttype, 0);
                   4201:                  set_current_level_tags_transparency (1);
                   4202:                  my_friendly_assert (TREE_CODE (t) == RECORD_TYPE
                   4203:                                      || TREE_CODE (t) == UNION_TYPE, 257);
                   4204:                  yyval.ttype = t;
                   4205: 
                   4206:                  /* Now, put a copy of the decl in global scope, to avoid
                   4207:                     recursive expansion.  */
                   4208:                  decl = IDENTIFIER_LOCAL_VALUE (yyvsp[-1].ttype);
                   4209:                  if (!decl)
                   4210:                    decl = IDENTIFIER_CLASS_VALUE (yyvsp[-1].ttype);
                   4211:                  /* Now, put a copy of the decl in global scope, to avoid
                   4212:                     recursive expansion.  */
                   4213:                   if (decl)
                   4214:                     {
                   4215:                      /* Need to copy it to clear the chain pointer,
                   4216:                         and need to get it into permanent storage.  */
                   4217:                       my_friendly_assert (TREE_CODE (decl) == TYPE_DECL, 258);
                   4218:                      push_obstacks (&permanent_obstack, &permanent_obstack);
                   4219:                       decl = copy_node (decl);
                   4220:                      if (DECL_LANG_SPECIFIC (decl))
                   4221:                        copy_lang_decl (decl);
                   4222:                      pop_obstacks ();
                   4223:                      pushdecl_top_level (decl);
                   4224:                    }
                   4225:                  /* Kludge; see instantiate_class_template.  */
                   4226:                  TYPE_BEING_DEFINED (t) = 0;
                   4227:                ;
                   4228:     break;}
                   4229: case 123:
                   4230: #line 846 "parse.y"
                   4231: {
                   4232:                  tree t = finish_struct (yyvsp[-3].ttype, yyvsp[-1].ttype, 0);
                   4233: 
                   4234:                  pop_obstacks ();
                   4235:                  end_template_instantiation (yyvsp[-5].ttype);
                   4236: 
                   4237:                   /* Now go after the methods & class data.  */
                   4238:                   instantiate_member_templates (yyvsp[-5].ttype);
                   4239: 
                   4240:                  pop_tinst_level();
                   4241: 
                   4242:                  CLASSTYPE_GOT_SEMICOLON (t) = 1;
                   4243:                ;
                   4244:     break;}
                   4245: case 124:
                   4246: #line 863 "parse.y"
                   4247: { yyval.ttype = NULL_TREE; ;
                   4248:     break;}
                   4249: case 125:
                   4250: #line 865 "parse.y"
                   4251: { yyval.ttype = yyvsp[0].ttype; ;
                   4252:     break;}
                   4253: case 126:
                   4254: #line 870 "parse.y"
                   4255: { yyval.ttype = NULL_TREE; /* never used from here... */;
                   4256:     break;}
                   4257: case 127:
                   4258: #line 872 "parse.y"
                   4259: { yyval.ttype = yyvsp[-1].ttype; /*???*/ ;
                   4260:     break;}
                   4261: case 128:
                   4262: #line 876 "parse.y"
                   4263: { yyval.code = NEGATE_EXPR; ;
                   4264:     break;}
                   4265: case 129:
                   4266: #line 878 "parse.y"
                   4267: { yyval.code = CONVERT_EXPR; ;
                   4268:     break;}
                   4269: case 130:
                   4270: #line 880 "parse.y"
                   4271: { yyval.code = PREINCREMENT_EXPR; ;
                   4272:     break;}
                   4273: case 131:
                   4274: #line 882 "parse.y"
                   4275: { yyval.code = PREDECREMENT_EXPR; ;
                   4276:     break;}
                   4277: case 132:
                   4278: #line 884 "parse.y"
                   4279: { yyval.code = TRUTH_NOT_EXPR; ;
                   4280:     break;}
                   4281: case 133:
                   4282: #line 888 "parse.y"
                   4283: { yyval.ttype = build_x_compound_expr (yyval.ttype); ;
                   4284:     break;}
                   4285: case 135:
                   4286: #line 894 "parse.y"
                   4287: { error ("ANSI C++ forbids an empty condition for `%s'",
                   4288:                         cond_stmt_keyword);
                   4289:                  yyval.ttype = integer_zero_node; ;
                   4290:     break;}
                   4291: case 136:
                   4292: #line 898 "parse.y"
                   4293: { yyval.ttype = build1 (CLEANUP_POINT_EXPR, bool_type_node, 
                   4294:                               bool_truthvalue_conversion (yyvsp[-1].ttype)); ;
                   4295:     break;}
                   4296: case 137:
                   4297: #line 904 "parse.y"
                   4298: { error ("ANSI C++ forbids an empty condition for `%s'",
                   4299:                         cond_stmt_keyword);
                   4300:                  yyval.ttype = integer_zero_node; ;
                   4301:     break;}
                   4302: case 138:
                   4303: #line 908 "parse.y"
                   4304: { yyval.ttype = build1 (CLEANUP_POINT_EXPR, bool_type_node, 
                   4305:                               bool_truthvalue_conversion (yyvsp[-1].ttype)); ;
                   4306:     break;}
                   4307: case 139:
                   4308: #line 914 "parse.y"
                   4309: { yyval.ttype = NULL_TREE; ;
                   4310:     break;}
                   4311: case 140:
                   4312: #line 916 "parse.y"
                   4313: { yyval.ttype = build1 (CLEANUP_POINT_EXPR, bool_type_node, 
                   4314:                               bool_truthvalue_conversion (yyval.ttype)); ;
                   4315:     break;}
                   4316: case 141:
                   4317: #line 919 "parse.y"
                   4318: { yyval.ttype = NULL_TREE; ;
                   4319:     break;}
                   4320: case 142:
                   4321: #line 924 "parse.y"
                   4322: { {
                   4323:                  tree d;
                   4324:                  for (d = getdecls (); d; d = TREE_CHAIN (d))
                   4325:                    if (TREE_CODE (d) == TYPE_DECL) {
                   4326:                      tree s = TREE_TYPE (d);
                   4327:                      if (TREE_CODE (s) == RECORD_TYPE)
                   4328:                        cp_error ("definition of class `%T' in condition", s);
                   4329:                      else if (TREE_CODE (s) == ENUMERAL_TYPE)
                   4330:                        cp_error ("definition of enum `%T' in condition", s);
                   4331:                    }
                   4332:                  }
                   4333:                  current_declspecs = yyvsp[-5].ttype;
                   4334:                  yyvsp[0].itype = suspend_momentary ();
                   4335:                  yyval.ttype = start_decl (yyvsp[-4].ttype, current_declspecs, 1, yyvsp[-3].ttype);
                   4336:                  cplus_decl_attributes (yyval.ttype, yyvsp[-1].ttype);
                   4337:                ;
                   4338:     break;}
                   4339: case 143:
                   4340: #line 941 "parse.y"
                   4341: { 
                   4342:                  finish_decl (yyvsp[-1].ttype, yyvsp[0].ttype, yyvsp[-3].ttype, 0);
                   4343:                  resume_momentary (yyvsp[-2].itype);
                   4344:                  yyval.ttype = yyvsp[-1].ttype; 
                   4345:                  if (TREE_CODE (TREE_TYPE (yyval.ttype)) == ARRAY_TYPE)
                   4346:                    cp_error ("definition of array `%#D' in condition", yyval.ttype); 
                   4347:                ;
                   4348:     break;}
                   4349: case 145:
                   4350: #line 953 "parse.y"
                   4351: { finish_stmt (); ;
                   4352:     break;}
                   4353: case 146:
                   4354: #line 955 "parse.y"
                   4355: { finish_stmt (); ;
                   4356:     break;}
                   4357: case 147:
                   4358: #line 957 "parse.y"
                   4359: { finish_stmt (); ;
                   4360:     break;}
                   4361: case 149:
                   4362: #line 964 "parse.y"
                   4363: { yyval.ttype = tree_cons (NULL_TREE, yyval.ttype, 
                   4364:                                  build_tree_list (NULL_TREE, yyvsp[0].ttype)); ;
                   4365:     break;}
                   4366: case 150:
                   4367: #line 967 "parse.y"
                   4368: { yyval.ttype = tree_cons (NULL_TREE, yyval.ttype, 
                   4369:                                  build_tree_list (NULL_TREE, error_mark_node)); ;
                   4370:     break;}
                   4371: case 151:
                   4372: #line 970 "parse.y"
                   4373: { chainon (yyval.ttype, build_tree_list (NULL_TREE, yyvsp[0].ttype)); ;
                   4374:     break;}
                   4375: case 152:
                   4376: #line 972 "parse.y"
                   4377: { chainon (yyval.ttype, build_tree_list (NULL_TREE, error_mark_node)); ;
                   4378:     break;}
                   4379: case 153:
                   4380: #line 977 "parse.y"
                   4381: { yyval.ttype = build_tree_list (NULL_TREE, yyval.ttype); ;
                   4382:     break;}
                   4383: case 155:
                   4384: #line 983 "parse.y"
                   4385: {
                   4386: #if 0
                   4387:                  if (TREE_CODE (yyval.ttype) == TYPE_EXPR)
                   4388:                    yyval.ttype = build_component_type_expr (C_C_D, yyval.ttype, NULL_TREE, 1);
                   4389: #endif
                   4390:                ;
                   4391:     break;}
                   4392: case 156:
                   4393: #line 991 "parse.y"
                   4394: { yyvsp[0].itype = pedantic;
                   4395:                  pedantic = 0; ;
                   4396:     break;}
                   4397: case 157:
                   4398: #line 994 "parse.y"
                   4399: { yyval.ttype = yyvsp[0].ttype;
                   4400:                  pedantic = yyvsp[-2].itype; ;
                   4401:     break;}
                   4402: case 158:
                   4403: #line 997 "parse.y"
                   4404: { yyval.ttype = build_x_indirect_ref (yyvsp[0].ttype, "unary *"); ;
                   4405:     break;}
                   4406: case 159:
                   4407: #line 999 "parse.y"
                   4408: { yyval.ttype = build_x_unary_op (ADDR_EXPR, yyvsp[0].ttype); ;
                   4409:     break;}
                   4410: case 160:
                   4411: #line 1001 "parse.y"
                   4412: { yyval.ttype = build_x_unary_op (BIT_NOT_EXPR, yyvsp[0].ttype); ;
                   4413:     break;}
                   4414: case 161:
                   4415: #line 1003 "parse.y"
                   4416: { yyval.ttype = build_x_unary_op (yyvsp[-1].code, yyvsp[0].ttype);
                   4417:                  if (yyvsp[-1].code == NEGATE_EXPR && TREE_CODE (yyvsp[0].ttype) == INTEGER_CST)
                   4418:                    TREE_NEGATED_INT (yyval.ttype) = 1;
                   4419:                  overflow_warning (yyval.ttype);
                   4420:                ;
                   4421:     break;}
                   4422: case 162:
                   4423: #line 1010 "parse.y"
                   4424: { tree label = lookup_label (yyvsp[0].ttype);
                   4425:                  if (label == NULL_TREE)
                   4426:                    yyval.ttype = null_pointer_node;
                   4427:                  else
                   4428:                    {
                   4429:                      TREE_USED (label) = 1;
                   4430:                      yyval.ttype = build1 (ADDR_EXPR, ptr_type_node, label);
                   4431:                      TREE_CONSTANT (yyval.ttype) = 1;
                   4432:                    }
                   4433:                ;
                   4434:     break;}
                   4435: case 163:
                   4436: #line 1021 "parse.y"
                   4437: { if (TREE_CODE (yyvsp[0].ttype) == COMPONENT_REF
                   4438:                      && DECL_BIT_FIELD (TREE_OPERAND (yyvsp[0].ttype, 1)))
                   4439:                    error ("sizeof applied to a bit-field");
                   4440:                  /* ANSI says arrays and functions are converted inside comma.
                   4441:                     But we can't really convert them in build_compound_expr
                   4442:                     because that would break commas in lvalues.
                   4443:                     So do the conversion here if operand was a comma.  */
                   4444:                  if (TREE_CODE (yyvsp[0].ttype) == COMPOUND_EXPR
                   4445:                      && (TREE_CODE (TREE_TYPE (yyvsp[0].ttype)) == ARRAY_TYPE
                   4446:                          || TREE_CODE (TREE_TYPE (yyvsp[0].ttype)) == FUNCTION_TYPE))
                   4447:                    yyvsp[0].ttype = default_conversion (yyvsp[0].ttype);
                   4448:                  else if (TREE_CODE (yyvsp[0].ttype) == TREE_LIST)
                   4449:                    {
                   4450:                      tree t = TREE_VALUE (yyvsp[0].ttype);
                   4451:                      if (t != NULL_TREE
                   4452:                          && TREE_CODE (TREE_TYPE (t)) == FUNCTION_TYPE)
                   4453:                        pedwarn ("ANSI C++ forbids using sizeof() on a function");
                   4454:                    }
                   4455:                  yyval.ttype = c_sizeof (TREE_TYPE (yyvsp[0].ttype)); ;
                   4456:     break;}
                   4457: case 164:
                   4458: #line 1041 "parse.y"
                   4459: { yyval.ttype = c_sizeof (groktypename (yyvsp[-1].ttype)); ;
                   4460:     break;}
                   4461: case 165:
                   4462: #line 1043 "parse.y"
                   4463: { yyval.ttype = grok_alignof (yyvsp[0].ttype); ;
                   4464:     break;}
                   4465: case 166:
                   4466: #line 1045 "parse.y"
                   4467: { yyval.ttype = c_alignof (groktypename (yyvsp[-1].ttype)); ;
                   4468:     break;}
                   4469: case 167:
                   4470: #line 1050 "parse.y"
                   4471: { yyval.ttype = build_new (NULL_TREE, yyvsp[0].ttype, NULL_TREE, yyvsp[-1].itype); ;
                   4472:     break;}
                   4473: case 168:
                   4474: #line 1052 "parse.y"
                   4475: { yyval.ttype = build_new (NULL_TREE, yyvsp[-1].ttype, yyvsp[0].ttype, yyvsp[-2].itype); ;
                   4476:     break;}
                   4477: case 169:
                   4478: #line 1054 "parse.y"
                   4479: { yyval.ttype = build_new (yyvsp[-1].ttype, yyvsp[0].ttype, NULL_TREE, yyvsp[-2].itype); ;
                   4480:     break;}
                   4481: case 170:
                   4482: #line 1056 "parse.y"
                   4483: { yyval.ttype = build_new (yyvsp[-2].ttype, yyvsp[-1].ttype, yyvsp[0].ttype, yyvsp[-3].itype); ;
                   4484:     break;}
                   4485: case 171:
                   4486: #line 1058 "parse.y"
                   4487: { yyval.ttype = build_new (NULL_TREE, groktypename(yyvsp[-1].ttype),
                   4488:                                  NULL_TREE, yyvsp[-3].itype); ;
                   4489:     break;}
                   4490: case 172:
                   4491: #line 1061 "parse.y"
                   4492: { yyval.ttype = build_new (NULL_TREE, groktypename(yyvsp[-2].ttype), yyvsp[0].ttype, yyvsp[-4].itype); ;
                   4493:     break;}
                   4494: case 173:
                   4495: #line 1063 "parse.y"
                   4496: { yyval.ttype = build_new (yyvsp[-3].ttype, groktypename(yyvsp[-1].ttype), NULL_TREE, yyvsp[-4].itype); ;
                   4497:     break;}
                   4498: case 174:
                   4499: #line 1065 "parse.y"
                   4500: { yyval.ttype = build_new (yyvsp[-4].ttype, groktypename(yyvsp[-2].ttype), yyvsp[0].ttype, yyvsp[-5].itype); ;
                   4501:     break;}
                   4502: case 175:
                   4503: #line 1068 "parse.y"
                   4504: { yyval.ttype = delete_sanity (yyvsp[0].ttype, NULL_TREE, 0, yyvsp[-1].itype); ;
                   4505:     break;}
                   4506: case 176:
                   4507: #line 1070 "parse.y"
                   4508: { yyval.ttype = delete_sanity (yyvsp[0].ttype, NULL_TREE, 1, yyvsp[-3].itype);
                   4509:                  if (yychar == YYEMPTY)
                   4510:                    yychar = YYLEX; ;
                   4511:     break;}
                   4512: case 177:
                   4513: #line 1074 "parse.y"
                   4514: { yyval.ttype = delete_sanity (yyvsp[0].ttype, yyvsp[-2].ttype, 2, yyvsp[-4].itype);
                   4515:                  if (yychar == YYEMPTY)
                   4516:                    yychar = YYLEX; ;
                   4517:     break;}
                   4518: case 178:
                   4519: #line 1081 "parse.y"
                   4520: { yyval.ttype = yyvsp[-1].ttype; ;
                   4521:     break;}
                   4522: case 179:
                   4523: #line 1083 "parse.y"
                   4524: {
                   4525:                  yyval.ttype = yyvsp[-1].ttype; 
                   4526:                  pedwarn ("old style placement syntax, use () instead");
                   4527:                ;
                   4528:     break;}
                   4529: case 180:
                   4530: #line 1091 "parse.y"
                   4531: { yyval.ttype = yyvsp[-1].ttype; ;
                   4532:     break;}
                   4533: case 181:
                   4534: #line 1093 "parse.y"
                   4535: { yyval.ttype = NULL_TREE; ;
                   4536:     break;}
                   4537: case 182:
                   4538: #line 1095 "parse.y"
                   4539: {
                   4540:                  cp_error ("`%T' is not a valid expression", yyvsp[-1].ttype);
                   4541:                  yyval.ttype = error_mark_node;
                   4542:                ;
                   4543:     break;}
                   4544: case 183:
                   4545: #line 1103 "parse.y"
                   4546: {
                   4547:                  if (flag_ansi)
                   4548:                    pedwarn ("ANSI C++ forbids initialization of new expression with `='");
                   4549:                  yyval.ttype = yyvsp[0].ttype;
                   4550:                ;
                   4551:     break;}
                   4552: case 184:
                   4553: #line 1113 "parse.y"
                   4554: { yyvsp[-1].ttype = tree_cons (NULL_TREE, yyvsp[-1].ttype, void_list_node);
                   4555:                  TREE_PARMLIST (yyvsp[-1].ttype) = 1;
                   4556:                  yyval.ttype = build_parse_node (CALL_EXPR, NULL_TREE, yyvsp[-1].ttype, 
                   4557:                                         NULL_TREE); ;
                   4558:     break;}
                   4559: case 185:
                   4560: #line 1118 "parse.y"
                   4561: { yyvsp[-1].ttype = tree_cons (NULL_TREE, yyvsp[-1].ttype, void_list_node);
                   4562:                  TREE_PARMLIST (yyvsp[-1].ttype) = 1;
                   4563:                  yyval.ttype = build_parse_node (CALL_EXPR, yyval.ttype, yyvsp[-1].ttype, NULL_TREE); ;
                   4564:     break;}
                   4565: case 187:
                   4566: #line 1126 "parse.y"
                   4567: { yyval.ttype = reparse_absdcl_as_casts (yyval.ttype, yyvsp[0].ttype); ;
                   4568:     break;}
                   4569: case 188:
                   4570: #line 1128 "parse.y"
                   4571: { 
                   4572:                  tree init = build_nt (CONSTRUCTOR, NULL_TREE,
                   4573:                                        nreverse (yyvsp[-2].ttype)); 
                   4574:                  if (flag_ansi)
                   4575:                    pedwarn ("ANSI C++ forbids constructor-expressions");
                   4576:                  /* Indicate that this was a GNU C constructor expression.  */
                   4577:                  TREE_HAS_CONSTRUCTOR (init) = 1;
                   4578: 
                   4579:                  yyval.ttype = reparse_absdcl_as_casts (yyval.ttype, init);
                   4580:                ;
                   4581:     break;}
                   4582: case 190:
                   4583: #line 1143 "parse.y"
                   4584: { yyval.ttype = build_headof (yyvsp[-1].ttype); ;
                   4585:     break;}
                   4586: case 191:
                   4587: #line 1145 "parse.y"
                   4588: { yyval.ttype = build_classof (yyvsp[-1].ttype); ;
                   4589:     break;}
                   4590: case 192:
                   4591: #line 1147 "parse.y"
                   4592: { if (is_aggr_typedef (yyvsp[-1].ttype, 1))
                   4593:                    {
                   4594:                      tree type = IDENTIFIER_TYPE_VALUE (yyvsp[-1].ttype);
                   4595:                      if (! IS_SIGNATURE(type))
                   4596:                        yyval.ttype = CLASSTYPE_DOSSIER (type);
                   4597:                      else
                   4598:                        {
                   4599:                          sorry ("signature name as argument of `classof'");
                   4600:                          yyval.ttype = error_mark_node;
                   4601:                        }
                   4602:                    }
                   4603:                  else
                   4604:                    yyval.ttype = error_mark_node;
                   4605:                ;
                   4606:     break;}
                   4607: case 194:
                   4608: #line 1167 "parse.y"
                   4609: { yyval.ttype = build_x_binary_op (MEMBER_REF, yyval.ttype, yyvsp[0].ttype); ;
                   4610:     break;}
                   4611: case 195:
                   4612: #line 1169 "parse.y"
                   4613: { yyval.ttype = build_m_component_ref (yyval.ttype, yyvsp[0].ttype); ;
                   4614:     break;}
                   4615: case 196:
                   4616: #line 1171 "parse.y"
                   4617: { yyval.ttype = build_x_binary_op (yyvsp[-1].code, yyval.ttype, yyvsp[0].ttype); ;
                   4618:     break;}
                   4619: case 197:
                   4620: #line 1173 "parse.y"
                   4621: { yyval.ttype = build_x_binary_op (yyvsp[-1].code, yyval.ttype, yyvsp[0].ttype); ;
                   4622:     break;}
                   4623: case 198:
                   4624: #line 1175 "parse.y"
                   4625: { yyval.ttype = build_x_binary_op (yyvsp[-1].code, yyval.ttype, yyvsp[0].ttype); ;
                   4626:     break;}
                   4627: case 199:
                   4628: #line 1177 "parse.y"
                   4629: { yyval.ttype = build_x_binary_op (yyvsp[-1].code, yyval.ttype, yyvsp[0].ttype); ;
                   4630:     break;}
                   4631: case 200:
                   4632: #line 1179 "parse.y"
                   4633: { yyval.ttype = build_x_binary_op (yyvsp[-1].code, yyval.ttype, yyvsp[0].ttype); ;
                   4634:     break;}
                   4635: case 201:
                   4636: #line 1181 "parse.y"
                   4637: { yyval.ttype = build_x_binary_op (yyvsp[-1].code, yyval.ttype, yyvsp[0].ttype); ;
                   4638:     break;}
                   4639: case 202:
                   4640: #line 1183 "parse.y"
                   4641: { yyval.ttype = build_x_binary_op (yyvsp[-1].code, yyval.ttype, yyvsp[0].ttype); ;
                   4642:     break;}
                   4643: case 203:
                   4644: #line 1185 "parse.y"
                   4645: { yyval.ttype = build_x_binary_op (yyvsp[-1].code, yyval.ttype, yyvsp[0].ttype); ;
                   4646:     break;}
                   4647: case 204:
                   4648: #line 1187 "parse.y"
                   4649: { yyval.ttype = build_x_binary_op (LT_EXPR, yyval.ttype, yyvsp[0].ttype); ;
                   4650:     break;}
                   4651: case 205:
                   4652: #line 1189 "parse.y"
                   4653: { yyval.ttype = build_x_binary_op (GT_EXPR, yyval.ttype, yyvsp[0].ttype); ;
                   4654:     break;}
                   4655: case 206:
                   4656: #line 1191 "parse.y"
                   4657: { yyval.ttype = build_x_binary_op (yyvsp[-1].code, yyval.ttype, yyvsp[0].ttype); ;
                   4658:     break;}
                   4659: case 207:
                   4660: #line 1193 "parse.y"
                   4661: { yyval.ttype = build_x_binary_op (yyvsp[-1].code, yyval.ttype, yyvsp[0].ttype); ;
                   4662:     break;}
                   4663: case 208:
                   4664: #line 1195 "parse.y"
                   4665: { yyval.ttype = build_x_binary_op (yyvsp[-1].code, yyval.ttype, yyvsp[0].ttype); ;
                   4666:     break;}
                   4667: case 209:
                   4668: #line 1197 "parse.y"
                   4669: { yyval.ttype = build_x_binary_op (yyvsp[-1].code, yyval.ttype, yyvsp[0].ttype); ;
                   4670:     break;}
                   4671: case 210:
                   4672: #line 1199 "parse.y"
                   4673: { yyval.ttype = build_x_binary_op (yyvsp[-1].code, yyval.ttype, yyvsp[0].ttype); ;
                   4674:     break;}
                   4675: case 211:
                   4676: #line 1201 "parse.y"
                   4677: { yyval.ttype = build_x_binary_op (TRUTH_ANDIF_EXPR, yyval.ttype, yyvsp[0].ttype); ;
                   4678:     break;}
                   4679: case 212:
                   4680: #line 1203 "parse.y"
                   4681: { yyval.ttype = build_x_binary_op (TRUTH_ORIF_EXPR, yyval.ttype, yyvsp[0].ttype); ;
                   4682:     break;}
                   4683: case 213:
                   4684: #line 1205 "parse.y"
                   4685: { yyval.ttype = build_x_conditional_expr (yyval.ttype, yyvsp[-2].ttype, yyvsp[0].ttype); ;
                   4686:     break;}
                   4687: case 214:
                   4688: #line 1207 "parse.y"
                   4689: { yyval.ttype = build_modify_expr (yyval.ttype, NOP_EXPR, yyvsp[0].ttype); ;
                   4690:     break;}
                   4691: case 215:
                   4692: #line 1209 "parse.y"
                   4693: { register tree rval;
                   4694:                  if ((rval = build_opfncall (MODIFY_EXPR, LOOKUP_NORMAL, yyval.ttype, yyvsp[0].ttype,
                   4695:                                             make_node (yyvsp[-1].code))))
                   4696:                    yyval.ttype = rval;
                   4697:                  else
                   4698:                    yyval.ttype = build_modify_expr (yyval.ttype, yyvsp[-1].code, yyvsp[0].ttype); ;
                   4699:     break;}
                   4700: case 216:
                   4701: #line 1216 "parse.y"
                   4702: { yyval.ttype = build_throw (NULL_TREE); ;
                   4703:     break;}
                   4704: case 217:
                   4705: #line 1218 "parse.y"
                   4706: { yyval.ttype = build_throw (yyvsp[0].ttype); ;
                   4707:     break;}
                   4708: case 218:
                   4709: #line 1236 "parse.y"
                   4710: { yyval.ttype = build_parse_node (BIT_NOT_EXPR, yyvsp[0].ttype); ;
                   4711:     break;}
                   4712: case 226:
                   4713: #line 1251 "parse.y"
                   4714: { yyval.ttype = build_parse_node (INDIRECT_REF, yyvsp[0].ttype); ;
                   4715:     break;}
                   4716: case 227:
                   4717: #line 1253 "parse.y"
                   4718: { yyval.ttype = build_parse_node (ADDR_EXPR, yyvsp[0].ttype); ;
                   4719:     break;}
                   4720: case 230:
                   4721: #line 1260 "parse.y"
                   4722: { push_nested_class (TREE_TYPE (OP0 (yyval.ttype)), 3);
                   4723:                  TREE_COMPLEXITY (yyval.ttype) = current_class_depth; ;
                   4724:     break;}
                   4725: case 231:
                   4726: #line 1266 "parse.y"
                   4727: {
                   4728:                  if (TREE_CODE (yyval.ttype) == BIT_NOT_EXPR)
                   4729:                    yyval.ttype = build_x_unary_op (BIT_NOT_EXPR, TREE_OPERAND (yyval.ttype, 0));
                   4730:                  else if (IDENTIFIER_OPNAME_P (yyval.ttype))
                   4731:                    {
                   4732:                      tree op = yyval.ttype;
                   4733:                      yyval.ttype = lookup_name (op, 0);
                   4734:                      if (yyval.ttype == NULL_TREE)
                   4735:                        {
                   4736:                          if (op != ansi_opname[ERROR_MARK])
                   4737:                            error ("operator %s not defined",
                   4738:                                   operator_name_string (op));
                   4739:                          yyval.ttype = error_mark_node;
                   4740:                        }
                   4741:                    }
                   4742:                  else
                   4743:                    yyval.ttype = do_identifier (yyval.ttype);
                   4744:                ;
                   4745:     break;}
                   4746: case 234:
                   4747: #line 1287 "parse.y"
                   4748: { yyval.ttype = combine_strings (yyval.ttype); ;
                   4749:     break;}
                   4750: case 235:
                   4751: #line 1289 "parse.y"
                   4752: { yyval.ttype = yyvsp[-1].ttype; ;
                   4753:     break;}
                   4754: case 236:
                   4755: #line 1291 "parse.y"
                   4756: { yyval.ttype = error_mark_node; ;
                   4757:     break;}
                   4758: case 237:
                   4759: #line 1293 "parse.y"
                   4760: { if (current_function_decl == 0)
                   4761:                    {
                   4762:                      error ("braced-group within expression allowed only inside a function");
                   4763:                      YYERROR;
                   4764:                    }
                   4765:                  keep_next_level ();
                   4766:                  yyval.ttype = expand_start_stmt_expr (); ;
                   4767:     break;}
                   4768: case 238:
                   4769: #line 1301 "parse.y"
                   4770: { tree rtl_exp;
                   4771:                  if (flag_ansi)
                   4772:                    pedwarn ("ANSI C++ forbids braced-groups within expressions");
                   4773:                  rtl_exp = expand_end_stmt_expr (yyvsp[-2].ttype);
                   4774:                  /* The statements have side effects, so the group does.  */
                   4775:                  TREE_SIDE_EFFECTS (rtl_exp) = 1;
                   4776: 
                   4777:                  if (TREE_CODE (yyvsp[-1].ttype) == BLOCK)
                   4778:                    {
                   4779:                      /* Make a BIND_EXPR for the BLOCK already made.  */
                   4780:                      yyval.ttype = build (BIND_EXPR, TREE_TYPE (rtl_exp),
                   4781:                                  NULL_TREE, rtl_exp, yyvsp[-1].ttype);
                   4782:                      /* Remove the block from the tree at this point.
                   4783:                         It gets put back at the proper place
                   4784:                         when the BIND_EXPR is expanded.  */
                   4785:                      delete_block (yyvsp[-1].ttype);
                   4786:                    }
                   4787:                  else
                   4788:                    yyval.ttype = yyvsp[-1].ttype;
                   4789:                ;
                   4790:     break;}
                   4791: case 239:
                   4792: #line 1322 "parse.y"
                   4793: { /* [eichin:19911016.1902EST] */
                   4794:                   yyval.ttype = build_x_function_call (yyvsp[-3].ttype, yyvsp[-1].ttype, current_class_decl); 
                   4795:                   /* here we instantiate_class_template as needed... */
                   4796:                   do_pending_templates ();
                   4797:                 ;
                   4798:     break;}
                   4799: case 240:
                   4800: #line 1326 "parse.y"
                   4801: {
                   4802:                   if (TREE_CODE (yyvsp[-1].ttype) == CALL_EXPR
                   4803:                       && TREE_TYPE (yyvsp[-1].ttype) != void_type_node)
                   4804:                    yyval.ttype = require_complete_type (yyvsp[-1].ttype);
                   4805:                   else
                   4806:                     yyval.ttype = yyvsp[-1].ttype;
                   4807:                 ;
                   4808:     break;}
                   4809: case 241:
                   4810: #line 1334 "parse.y"
                   4811: {
                   4812:                  yyval.ttype = build_x_function_call (yyval.ttype, NULL_TREE, current_class_decl);
                   4813:                  if (TREE_CODE (yyval.ttype) == CALL_EXPR
                   4814:                      && TREE_TYPE (yyval.ttype) != void_type_node)
                   4815:                    yyval.ttype = require_complete_type (yyval.ttype);
                   4816:                 ;
                   4817:     break;}
                   4818: case 242:
                   4819: #line 1341 "parse.y"
                   4820: { yyval.ttype = grok_array_decl (yyval.ttype, yyvsp[-1].ttype); ;
                   4821:     break;}
                   4822: case 243:
                   4823: #line 1343 "parse.y"
                   4824: { /* If we get an OFFSET_REF, turn it into what it really
                   4825:                     means (e.g., a COMPONENT_REF).  This way if we've got,
                   4826:                     say, a reference to a static member that's being operated
                   4827:                     on, we don't end up trying to find a member operator for
                   4828:                     the class it's in.  */
                   4829:                  if (TREE_CODE (yyval.ttype) == OFFSET_REF)
                   4830:                    yyval.ttype = resolve_offset_ref (yyval.ttype);
                   4831:                  yyval.ttype = build_x_unary_op (POSTINCREMENT_EXPR, yyval.ttype); ;
                   4832:     break;}
                   4833: case 244:
                   4834: #line 1352 "parse.y"
                   4835: { if (TREE_CODE (yyval.ttype) == OFFSET_REF)
                   4836:                    yyval.ttype = resolve_offset_ref (yyval.ttype);
                   4837:                  yyval.ttype = build_x_unary_op (POSTDECREMENT_EXPR, yyval.ttype); ;
                   4838:     break;}
                   4839: case 245:
                   4840: #line 1357 "parse.y"
                   4841: { if (current_class_decl)
                   4842:                    {
                   4843: #ifdef WARNING_ABOUT_CCD
                   4844:                      TREE_USED (current_class_decl) = 1;
                   4845: #endif
                   4846:                      yyval.ttype = current_class_decl;
                   4847:                    }
                   4848:                  else if (current_function_decl
                   4849:                           && DECL_STATIC_FUNCTION_P (current_function_decl))
                   4850:                    {
                   4851:                      error ("`this' is unavailable for static member functions");
                   4852:                      yyval.ttype = error_mark_node;
                   4853:                    }
                   4854:                  else
                   4855:                    {
                   4856:                      if (current_function_decl)
                   4857:                        error ("invalid use of `this' in non-member function");
                   4858:                      else
                   4859:                        error ("invalid use of `this' at top level");
                   4860:                      yyval.ttype = error_mark_node;
                   4861:                    }
                   4862:                ;
                   4863:     break;}
                   4864: case 246:
                   4865: #line 1380 "parse.y"
                   4866: {
                   4867:                  tree type;
                   4868:                  tree id = yyval.ttype;
                   4869: 
                   4870:                  /* This is a C cast in C++'s `functional' notation.  */
                   4871:                  if (yyvsp[-1].ttype == error_mark_node)
                   4872:                    {
                   4873:                      yyval.ttype = error_mark_node;
                   4874:                      break;
                   4875:                    }
                   4876: #if 0
                   4877:                  if (yyvsp[-1].ttype == NULL_TREE)
                   4878:                    {
                   4879:                      error ("cannot cast null list to type `%s'",
                   4880:                             IDENTIFIER_POINTER (TYPE_NAME (id)));
                   4881:                      yyval.ttype = error_mark_node;
                   4882:                      break;
                   4883:                    }
                   4884: #endif
                   4885: #if 0
                   4886:                  /* type is not set! (mrs) */
                   4887:                  if (type == error_mark_node)
                   4888:                    yyval.ttype = error_mark_node;
                   4889:                  else
                   4890: #endif
                   4891:                    {
                   4892:                      if (id == ridpointers[(int) RID_CONST])
                   4893:                        type = build_type_variant (integer_type_node, 1, 0);
                   4894:                      else if (id == ridpointers[(int) RID_VOLATILE])
                   4895:                        type = build_type_variant (integer_type_node, 0, 1);
                   4896: #if 0
                   4897:                      /* should not be able to get here (mrs) */
                   4898:                      else if (id == ridpointers[(int) RID_FRIEND])
                   4899:                        {
                   4900:                          error ("cannot cast expression to `friend' type");
                   4901:                          yyval.ttype = error_mark_node;
                   4902:                          break;
                   4903:                        }
                   4904: #endif
                   4905:                      else my_friendly_abort (79);
                   4906:                      yyval.ttype = build_c_cast (type, build_compound_expr (yyvsp[-1].ttype));
                   4907:                    }
                   4908:                ;
                   4909:     break;}
                   4910: case 248:
                   4911: #line 1425 "parse.y"
                   4912: { tree type = groktypename (yyvsp[-4].ttype);
                   4913:                  yyval.ttype = build_dynamic_cast (type, yyvsp[-1].ttype); ;
                   4914:     break;}
                   4915: case 249:
                   4916: #line 1428 "parse.y"
                   4917: { tree type = groktypename (yyvsp[-4].ttype);
                   4918:                  yyval.ttype = build_static_cast (type, yyvsp[-1].ttype); ;
                   4919:     break;}
                   4920: case 250:
                   4921: #line 1431 "parse.y"
                   4922: { tree type = groktypename (yyvsp[-4].ttype);
                   4923:                  yyval.ttype = build_reinterpret_cast (type, yyvsp[-1].ttype); ;
                   4924:     break;}
                   4925: case 251:
                   4926: #line 1434 "parse.y"
                   4927: { tree type = groktypename (yyvsp[-4].ttype);
                   4928:                  yyval.ttype = build_const_cast (type, yyvsp[-1].ttype); ;
                   4929:     break;}
                   4930: case 252:
                   4931: #line 1437 "parse.y"
                   4932: { yyval.ttype = build_typeid (yyvsp[-1].ttype); ;
                   4933:     break;}
                   4934: case 253:
                   4935: #line 1439 "parse.y"
                   4936: { tree type = groktypename (yyvsp[-1].ttype);
                   4937:                  yyval.ttype = get_typeid (type); ;
                   4938:     break;}
                   4939: case 254:
                   4940: #line 1442 "parse.y"
                   4941: {
                   4942:                do_scoped_id:
                   4943:                  yyval.ttype = IDENTIFIER_GLOBAL_VALUE (yyvsp[0].ttype);
                   4944:                  if (yychar == YYEMPTY)
                   4945:                    yychar = YYLEX;
                   4946:                  if (! yyval.ttype)
                   4947:                    {
                   4948:                      if (yychar == '(' || yychar == LEFT_RIGHT)
                   4949:                        yyval.ttype = implicitly_declare (yyvsp[0].ttype);
                   4950:                      else
                   4951:                        {
                   4952:                          if (IDENTIFIER_GLOBAL_VALUE (yyvsp[0].ttype) != error_mark_node)
                   4953:                            error ("undeclared variable `%s' (first use here)",
                   4954:                                   IDENTIFIER_POINTER (yyvsp[0].ttype));
                   4955:                          yyval.ttype = error_mark_node;
                   4956:                          /* Prevent repeated error messages.  */
                   4957:                          IDENTIFIER_GLOBAL_VALUE (yyvsp[0].ttype) = error_mark_node;
                   4958:                        }
                   4959:                    }
                   4960:                  else
                   4961:                    {
                   4962:                      if (TREE_CODE (yyval.ttype) == ADDR_EXPR)
                   4963:                        assemble_external (TREE_OPERAND (yyval.ttype, 0));
                   4964:                      else
                   4965:                        assemble_external (yyval.ttype);
                   4966:                      TREE_USED (yyval.ttype) = 1;
                   4967:                    }
                   4968:                  if (TREE_CODE (yyval.ttype) == CONST_DECL)
                   4969:                    {
                   4970:                      /* XXX CHS - should we set TREE_USED of the constant? */
                   4971:                      yyval.ttype = DECL_INITIAL (yyval.ttype);
                   4972:                      /* This is to prevent an enum whose value is 0
                   4973:                         from being considered a null pointer constant.  */
                   4974:                      yyval.ttype = build1 (NOP_EXPR, TREE_TYPE (yyval.ttype), yyval.ttype);
                   4975:                      TREE_CONSTANT (yyval.ttype) = 1;
                   4976:                    }
                   4977: 
                   4978:                ;
                   4979:     break;}
                   4980: case 255:
                   4981: #line 1481 "parse.y"
                   4982: {
                   4983:                  got_scope = NULL_TREE;
                   4984:                  if (TREE_CODE (yyvsp[0].ttype) == IDENTIFIER_NODE)
                   4985:                    goto do_scoped_id;
                   4986:                  yyval.ttype = yyvsp[0].ttype;
                   4987:                ;
                   4988:     break;}
                   4989: case 256:
                   4990: #line 1488 "parse.y"
                   4991: { yyval.ttype = build_offset_ref (OP0 (yyval.ttype), OP1 (yyval.ttype)); ;
                   4992:     break;}
                   4993: case 257:
                   4994: #line 1490 "parse.y"
                   4995: { yyval.ttype = build_member_call (OP0 (yyval.ttype), OP1 (yyval.ttype), yyvsp[-1].ttype); ;
                   4996:     break;}
                   4997: case 258:
                   4998: #line 1492 "parse.y"
                   4999: { yyval.ttype = build_member_call (OP0 (yyval.ttype), OP1 (yyval.ttype), NULL_TREE); ;
                   5000:     break;}
                   5001: case 259:
                   5002: #line 1494 "parse.y"
                   5003: { yyval.ttype = build_component_ref (yyval.ttype, yyvsp[0].ttype, NULL_TREE, 1); ;
                   5004:     break;}
                   5005: case 260:
                   5006: #line 1496 "parse.y"
                   5007: { yyval.ttype = build_object_ref (yyval.ttype, OP0 (yyvsp[0].ttype), OP1 (yyvsp[0].ttype)); ;
                   5008:     break;}
                   5009: case 261:
                   5010: #line 1498 "parse.y"
                   5011: {
                   5012: #if 0
                   5013:                  /* This is a future direction of this code, but because
                   5014:                     build_x_function_call cannot always undo what is done
                   5015:                     in build_component_ref entirely yet, we cannot do this. */
                   5016:                  yyval.ttype = build_x_function_call (build_component_ref (yyval.ttype, yyvsp[-3].ttype, NULL_TREE, 1), yyvsp[-1].ttype, yyval.ttype);
                   5017:                  if (TREE_CODE (yyval.ttype) == CALL_EXPR
                   5018:                      && TREE_TYPE (yyval.ttype) != void_type_node)
                   5019:                    yyval.ttype = require_complete_type (yyval.ttype);
                   5020: #else
                   5021:                  yyval.ttype = build_method_call (yyval.ttype, yyvsp[-3].ttype, yyvsp[-1].ttype, NULL_TREE,
                   5022:                                          (LOOKUP_NORMAL|LOOKUP_AGGR));
                   5023: #endif
                   5024:                ;
                   5025:     break;}
                   5026: case 262:
                   5027: #line 1513 "parse.y"
                   5028: {
                   5029: #if 0
                   5030:                  /* This is a future direction of this code, but because
                   5031:                     build_x_function_call cannot always undo what is done
                   5032:                     in build_component_ref entirely yet, we cannot do this. */
                   5033:                  yyval.ttype = build_x_function_call (build_component_ref (yyval.ttype, yyvsp[-1].ttype, NULL_TREE, 1), NULL_TREE, yyval.ttype);
                   5034:                  if (TREE_CODE (yyval.ttype) == CALL_EXPR
                   5035:                      && TREE_TYPE (yyval.ttype) != void_type_node)
                   5036:                    yyval.ttype = require_complete_type (yyval.ttype);
                   5037: #else
                   5038:                  yyval.ttype = build_method_call (yyval.ttype, yyvsp[-1].ttype, NULL_TREE, NULL_TREE,
                   5039:                                          (LOOKUP_NORMAL|LOOKUP_AGGR));
                   5040: #endif
                   5041:                ;
                   5042:     break;}
                   5043: case 263:
                   5044: #line 1528 "parse.y"
                   5045: {
                   5046:                  if (IS_SIGNATURE (IDENTIFIER_TYPE_VALUE (OP0 (yyvsp[-3].ttype))))
                   5047:                    {
                   5048:                      warning ("signature name in scope resolution ignored");
                   5049:                      yyval.ttype = build_method_call (yyval.ttype, OP1 (yyvsp[-3].ttype), yyvsp[-1].ttype, NULL_TREE,
                   5050:                                              (LOOKUP_NORMAL|LOOKUP_AGGR));
                   5051:                    }
                   5052:                  else
                   5053:                    yyval.ttype = build_scoped_method_call (yyval.ttype, OP0 (yyvsp[-3].ttype), OP1 (yyvsp[-3].ttype), yyvsp[-1].ttype);
                   5054:                ;
                   5055:     break;}
                   5056: case 264:
                   5057: #line 1539 "parse.y"
                   5058: {
                   5059:                  if (IS_SIGNATURE (IDENTIFIER_TYPE_VALUE (OP0 (yyvsp[-1].ttype))))
                   5060:                    {
                   5061:                      warning ("signature name in scope resolution ignored");
                   5062:                      yyval.ttype = build_method_call (yyval.ttype, OP1 (yyvsp[-1].ttype), NULL_TREE, NULL_TREE,
                   5063:                                              (LOOKUP_NORMAL|LOOKUP_AGGR));
                   5064:                    }
                   5065:                  else
                   5066:                    yyval.ttype = build_scoped_method_call (yyval.ttype, OP0 (yyvsp[-1].ttype), OP1 (yyvsp[-1].ttype), NULL_TREE);
                   5067:                ;
                   5068:     break;}
                   5069: case 265:
                   5070: #line 1551 "parse.y"
                   5071: { 
                   5072:                  if (TREE_CODE (TREE_TYPE (yyvsp[-3].ttype)) 
                   5073:                      != TREE_CODE (TREE_TYPE (IDENTIFIER_GLOBAL_VALUE (yyvsp[-1].ttype))))
                   5074:                    cp_error ("`%E' is not of type `%T'", yyvsp[-3].ttype, yyvsp[-1].ttype);
                   5075:                  yyval.ttype = convert (void_type_node, yyvsp[-3].ttype);
                   5076:                ;
                   5077:     break;}
                   5078: case 266:
                   5079: #line 1558 "parse.y"
                   5080: { 
                   5081:                  if (yyvsp[-4].ttype != yyvsp[-1].ttype)
                   5082:                    cp_error ("destructor specifier `%T::~%T()' must have matching names", yyvsp[-4].ttype, yyvsp[-1].ttype);
                   5083:                  if (TREE_CODE (TREE_TYPE (yyvsp[-5].ttype))
                   5084:                      != TREE_CODE (TREE_TYPE (IDENTIFIER_GLOBAL_VALUE (yyvsp[-4].ttype))))
                   5085:                    cp_error ("`%E' is not of type `%T'", yyvsp[-5].ttype, yyvsp[-4].ttype);
                   5086:                  yyval.ttype = convert (void_type_node, yyvsp[-5].ttype);
                   5087:                ;
                   5088:     break;}
                   5089: case 267:
                   5090: #line 1607 "parse.y"
                   5091: { yyval.itype = 0; ;
                   5092:     break;}
                   5093: case 268:
                   5094: #line 1609 "parse.y"
                   5095: { got_scope = NULL_TREE; yyval.itype = 1; ;
                   5096:     break;}
                   5097: case 269:
                   5098: #line 1613 "parse.y"
                   5099: { yyval.itype = 0; ;
                   5100:     break;}
                   5101: case 270:
                   5102: #line 1615 "parse.y"
                   5103: { got_scope = NULL_TREE; yyval.itype = 1; ;
                   5104:     break;}
                   5105: case 271:
                   5106: #line 1620 "parse.y"
                   5107: { yyval.ttype = true_node; ;
                   5108:     break;}
                   5109: case 272:
                   5110: #line 1622 "parse.y"
                   5111: { yyval.ttype = false_node; ;
                   5112:     break;}
                   5113: case 274:
                   5114: #line 1629 "parse.y"
                   5115: { yyval.ttype = chainon (yyval.ttype, yyvsp[0].ttype); ;
                   5116:     break;}
                   5117: case 275:
                   5118: #line 1634 "parse.y"
                   5119: {
                   5120:                  if (! current_function_parms_stored)
                   5121:                    store_parm_decls ();
                   5122:                  setup_vtbl_ptr ();
                   5123:                  /* Always keep the BLOCK node associated with the outermost
                   5124:                     pair of curley braces of a function.  These are needed
                   5125:                     for correct operation of dwarfout.c.  */
                   5126:                  keep_next_level ();
                   5127:                ;
                   5128:     break;}
                   5129: case 277:
                   5130: #line 1647 "parse.y"
                   5131: {
                   5132:                  yyval.ttype = build_x_arrow (yyval.ttype);
                   5133:                ;
                   5134:     break;}
                   5135: case 278:
                   5136: #line 1655 "parse.y"
                   5137: { tree d = get_decl_list (yyvsp[-2].ttype);
                   5138:                  int yes = suspend_momentary ();
                   5139:                  d = start_decl (yyvsp[-1].ttype, d, 0, NULL_TREE);
                   5140:                  finish_decl (d, NULL_TREE, NULL_TREE, 0);
                   5141:                  resume_momentary (yes);
                   5142:                  if (IS_AGGR_TYPE_CODE (TREE_CODE (yyvsp[-2].ttype)))
                   5143:                    note_got_semicolon (yyvsp[-2].ttype);
                   5144:                ;
                   5145:     break;}
                   5146: case 279:
                   5147: #line 1664 "parse.y"
                   5148: { tree d = yyvsp[-2].ttype;
                   5149:                  int yes = suspend_momentary ();
                   5150:                  d = start_decl (yyvsp[-1].ttype, d, 0, NULL_TREE);
                   5151:                  finish_decl (d, NULL_TREE, NULL_TREE, 0);
                   5152:                  resume_momentary (yes);
                   5153:                  note_list_got_semicolon (yyvsp[-2].ttype);
                   5154:                ;
                   5155:     break;}
                   5156: case 280:
                   5157: #line 1672 "parse.y"
                   5158: {
                   5159:                  resume_momentary (yyvsp[-1].itype);
                   5160:                  if (IS_AGGR_TYPE_CODE (TREE_CODE (yyvsp[-2].ttype)))
                   5161:                    note_got_semicolon (yyvsp[-2].ttype);
                   5162:                ;
                   5163:     break;}
                   5164: case 281:
                   5165: #line 1678 "parse.y"
                   5166: {
                   5167:                  resume_momentary (yyvsp[-1].itype);
                   5168:                  note_list_got_semicolon (yyvsp[-2].ttype);
                   5169:                ;
                   5170:     break;}
                   5171: case 282:
                   5172: #line 1683 "parse.y"
                   5173: { resume_momentary (yyvsp[-1].itype); ;
                   5174:     break;}
                   5175: case 283:
                   5176: #line 1685 "parse.y"
                   5177: {
                   5178:                  shadow_tag (yyvsp[-1].ttype);
                   5179:                  note_list_got_semicolon (yyvsp[-1].ttype);
                   5180:                ;
                   5181:     break;}
                   5182: case 284:
                   5183: #line 1690 "parse.y"
                   5184: { warning ("empty declaration"); ;
                   5185:     break;}
                   5186: case 287:
                   5187: #line 1704 "parse.y"
                   5188: { yyval.ttype = build_parse_node (CALL_EXPR, NULL_TREE, empty_parms (),
                   5189:                                         NULL_TREE); ;
                   5190:     break;}
                   5191: case 288:
                   5192: #line 1707 "parse.y"
                   5193: { yyval.ttype = build_parse_node (CALL_EXPR, yyval.ttype, empty_parms (), 
                   5194:                                         NULL_TREE); ;
                   5195:     break;}
                   5196: case 289:
                   5197: #line 1714 "parse.y"
                   5198: { yyval.ttype = build_decl_list (yyval.ttype, yyvsp[0].ttype); ;
                   5199:     break;}
                   5200: case 290:
                   5201: #line 1716 "parse.y"
                   5202: { yyval.ttype = build_decl_list (yyval.ttype, yyvsp[0].ttype); ;
                   5203:     break;}
                   5204: case 291:
                   5205: #line 1718 "parse.y"
                   5206: { yyval.ttype = build_decl_list (get_decl_list (yyval.ttype), yyvsp[0].ttype); ;
                   5207:     break;}
                   5208: case 292:
                   5209: #line 1720 "parse.y"
                   5210: { yyval.ttype = build_decl_list (yyval.ttype, NULL_TREE); ;
                   5211:     break;}
                   5212: case 293:
                   5213: #line 1722 "parse.y"
                   5214: { yyval.ttype = build_decl_list (yyval.ttype, NULL_TREE); ;
                   5215:     break;}
                   5216: case 296:
                   5217: #line 1735 "parse.y"
                   5218: { yyval.ttype = decl_tree_cons (NULL_TREE, yyvsp[0].ttype, yyval.ttype); ;
                   5219:     break;}
                   5220: case 297:
                   5221: #line 1737 "parse.y"
                   5222: { yyval.ttype = decl_tree_cons (NULL_TREE, yyval.ttype, yyvsp[0].ttype); ;
                   5223:     break;}
                   5224: case 298:
                   5225: #line 1739 "parse.y"
                   5226: { yyval.ttype = decl_tree_cons (NULL_TREE, yyvsp[-1].ttype, chainon (yyvsp[0].ttype, yyval.ttype)); ;
                   5227:     break;}
                   5228: case 299:
                   5229: #line 1741 "parse.y"
                   5230: { yyval.ttype = decl_tree_cons (NULL_TREE, yyvsp[-1].ttype, chainon (yyvsp[0].ttype, yyval.ttype)); ;
                   5231:     break;}
                   5232: case 300:
                   5233: #line 1743 "parse.y"
                   5234: { yyval.ttype = decl_tree_cons (NULL_TREE, yyvsp[-2].ttype, 
                   5235:                                       chainon (yyvsp[-1].ttype, chainon (yyvsp[0].ttype, yyval.ttype))); ;
                   5236:     break;}
                   5237: case 301:
                   5238: #line 1749 "parse.y"
                   5239: { if (extra_warnings)
                   5240:                    warning ("`%s' is not at beginning of declaration",
                   5241:                             IDENTIFIER_POINTER (yyval.ttype));
                   5242:                  yyval.ttype = build_decl_list (NULL_TREE, yyval.ttype); ;
                   5243:     break;}
                   5244: case 302:
                   5245: #line 1754 "parse.y"
                   5246: { yyval.ttype = decl_tree_cons (NULL_TREE, yyvsp[0].ttype, yyval.ttype); ;
                   5247:     break;}
                   5248: case 303:
                   5249: #line 1756 "parse.y"
                   5250: { if (extra_warnings)
                   5251:                    warning ("`%s' is not at beginning of declaration",
                   5252:                             IDENTIFIER_POINTER (yyvsp[0].ttype));
                   5253:                  yyval.ttype = decl_tree_cons (NULL_TREE, yyvsp[0].ttype, yyval.ttype); ;
                   5254:     break;}
                   5255: case 304:
                   5256: #line 1768 "parse.y"
                   5257: { TREE_STATIC (yyval.ttype) = 1; ;
                   5258:     break;}
                   5259: case 305:
                   5260: #line 1770 "parse.y"
                   5261: { yyval.ttype = IDENTIFIER_AS_LIST (yyval.ttype); ;
                   5262:     break;}
                   5263: case 306:
                   5264: #line 1772 "parse.y"
                   5265: { yyval.ttype = decl_tree_cons (NULL_TREE, yyvsp[0].ttype, yyval.ttype);
                   5266:                  TREE_STATIC (yyval.ttype) = 1; ;
                   5267:     break;}
                   5268: case 307:
                   5269: #line 1775 "parse.y"
                   5270: { if (extra_warnings && TREE_STATIC (yyval.ttype))
                   5271:                    warning ("`%s' is not at beginning of declaration",
                   5272:                             IDENTIFIER_POINTER (yyvsp[0].ttype));
                   5273:                  yyval.ttype = decl_tree_cons (NULL_TREE, yyvsp[0].ttype, yyval.ttype);
                   5274:                  TREE_STATIC (yyval.ttype) = TREE_STATIC (yyvsp[-1].ttype); ;
                   5275:     break;}
                   5276: case 308:
                   5277: #line 1791 "parse.y"
                   5278: { yyval.ttype = get_decl_list (yyval.ttype); ;
                   5279:     break;}
                   5280: case 309:
                   5281: #line 1793 "parse.y"
                   5282: { yyval.ttype = decl_tree_cons (NULL_TREE, yyvsp[0].ttype, yyval.ttype); ;
                   5283:     break;}
                   5284: case 310:
                   5285: #line 1795 "parse.y"
                   5286: { yyval.ttype = decl_tree_cons (NULL_TREE, yyval.ttype, yyvsp[0].ttype); ;
                   5287:     break;}
                   5288: case 311:
                   5289: #line 1797 "parse.y"
                   5290: { yyval.ttype = decl_tree_cons (NULL_TREE, yyvsp[-1].ttype, chainon (yyvsp[0].ttype, yyval.ttype)); ;
                   5291:     break;}
                   5292: case 312:
                   5293: #line 1802 "parse.y"
                   5294: { yyval.ttype = build_decl_list (NULL_TREE, yyval.ttype); ;
                   5295:     break;}
                   5296: case 313:
                   5297: #line 1804 "parse.y"
                   5298: { yyval.ttype = decl_tree_cons (NULL_TREE, yyvsp[0].ttype, yyval.ttype); ;
                   5299:     break;}
                   5300: case 317:
                   5301: #line 1815 "parse.y"
                   5302: { yyval.ttype = TREE_TYPE (yyvsp[-1].ttype);
                   5303:                  if (flag_ansi)
                   5304:                    pedwarn ("ANSI C++ forbids `typeof'"); ;
                   5305:     break;}
                   5306: case 318:
                   5307: #line 1819 "parse.y"
                   5308: { yyval.ttype = groktypename (yyvsp[-1].ttype);
                   5309:                  if (flag_ansi)
                   5310:                    pedwarn ("ANSI C++ forbids `typeof'"); ;
                   5311:     break;}
                   5312: case 319:
                   5313: #line 1823 "parse.y"
                   5314: { tree type = TREE_TYPE (yyvsp[-1].ttype);
                   5315: 
                   5316:                  if (IS_AGGR_TYPE (type))
                   5317:                    {
                   5318:                      sorry ("sigof type specifier");
                   5319:                      yyval.ttype = type;
                   5320:                    }
                   5321:                  else
                   5322:                    {
                   5323:                      error ("`sigof' applied to non-aggregate expression");
                   5324:                      yyval.ttype = error_mark_node;
                   5325:                    }
                   5326:                ;
                   5327:     break;}
                   5328: case 320:
                   5329: #line 1837 "parse.y"
                   5330: { tree type = groktypename (yyvsp[-1].ttype);
                   5331: 
                   5332:                  if (IS_AGGR_TYPE (type))
                   5333:                    {
                   5334:                      sorry ("sigof type specifier");
                   5335:                      yyval.ttype = type;
                   5336:                    }
                   5337:                  else
                   5338:                    {
                   5339:                      error("`sigof' applied to non-aggregate type");
                   5340:                      yyval.ttype = error_mark_node;
                   5341:                    }
                   5342:                ;
                   5343:     break;}
                   5344: case 330:
                   5345: #line 1876 "parse.y"
                   5346: { yyval.ttype = NULL_TREE; ;
                   5347:     break;}
                   5348: case 331:
                   5349: #line 1878 "parse.y"
                   5350: { if (TREE_CHAIN (yyvsp[-1].ttype)) yyvsp[-1].ttype = combine_strings (yyvsp[-1].ttype); yyval.ttype = yyvsp[-1].ttype; ;
                   5351:     break;}
                   5352: case 332:
                   5353: #line 1883 "parse.y"
                   5354: { current_declspecs = yyvsp[-5].ttype;
                   5355:                  if (TREE_CODE (current_declspecs) != TREE_LIST)
                   5356:                    current_declspecs = get_decl_list (current_declspecs);
                   5357:                  if (have_extern_spec && !used_extern_spec)
                   5358:                    {
                   5359:                      current_declspecs = decl_tree_cons
                   5360:                        (NULL_TREE, get_identifier ("extern"), 
                   5361:                         current_declspecs);
                   5362:                      used_extern_spec = 1;
                   5363:                    }
                   5364:                  yyvsp[0].itype = suspend_momentary ();
                   5365:                  yyval.ttype = start_decl (yyvsp[-4].ttype, current_declspecs, 1, yyvsp[-3].ttype);
                   5366:                  cplus_decl_attributes (yyval.ttype, yyvsp[-1].ttype); ;
                   5367:     break;}
                   5368: case 333:
                   5369: #line 1898 "parse.y"
                   5370: { finish_decl (yyvsp[-1].ttype, yyvsp[0].ttype, yyvsp[-4].ttype, 0);
                   5371:                  yyval.itype = yyvsp[-2].itype; ;
                   5372:     break;}
                   5373: case 334:
                   5374: #line 1901 "parse.y"
                   5375: { tree d;
                   5376:                  current_declspecs = yyvsp[-4].ttype;
                   5377:                  if (TREE_CODE (current_declspecs) != TREE_LIST)
                   5378:                    current_declspecs = get_decl_list (current_declspecs);
                   5379:                  if (have_extern_spec && !used_extern_spec)
                   5380:                    {
                   5381:                      current_declspecs = decl_tree_cons
                   5382:                        (NULL_TREE, get_identifier ("extern"), 
                   5383:                         current_declspecs);
                   5384:                      used_extern_spec = 1;
                   5385:                    }
                   5386:                  yyval.itype = suspend_momentary ();
                   5387:                  d = start_decl (yyvsp[-3].ttype, current_declspecs, 0, yyvsp[-2].ttype);
                   5388:                  cplus_decl_attributes (d, yyvsp[0].ttype);
                   5389:                  finish_decl (d, NULL_TREE, yyvsp[-1].ttype, 0); ;
                   5390:     break;}
                   5391: case 335:
                   5392: #line 1920 "parse.y"
                   5393: { yyval.ttype = start_decl (yyvsp[-4].ttype, current_declspecs, 1, yyvsp[-3].ttype);
                   5394:                  cplus_decl_attributes (yyval.ttype, yyvsp[-1].ttype); ;
                   5395:     break;}
                   5396: case 336:
                   5397: #line 1924 "parse.y"
                   5398: { finish_decl (yyvsp[-1].ttype, yyvsp[0].ttype, yyvsp[-4].ttype, 0); ;
                   5399:     break;}
                   5400: case 337:
                   5401: #line 1926 "parse.y"
                   5402: { yyval.ttype = start_decl (yyvsp[-3].ttype, current_declspecs, 0, yyvsp[-2].ttype);
                   5403:                  cplus_decl_attributes (yyval.ttype, yyvsp[0].ttype);
                   5404:                  finish_decl (yyval.ttype, NULL_TREE, yyvsp[-1].ttype, 0); ;
                   5405:     break;}
                   5406: case 338:
                   5407: #line 1933 "parse.y"
                   5408: { current_declspecs = yyvsp[-5].ttype;
                   5409:                  yyvsp[0].itype = suspend_momentary ();
                   5410:                  yyval.ttype = start_decl (yyvsp[-4].ttype, current_declspecs, 1, yyvsp[-3].ttype);
                   5411:                  cplus_decl_attributes (yyval.ttype, yyvsp[-1].ttype); ;
                   5412:     break;}
                   5413: case 339:
                   5414: #line 1939 "parse.y"
                   5415: { finish_decl (yyvsp[-1].ttype, yyvsp[0].ttype, yyvsp[-4].ttype, 0);
                   5416:                  yyval.itype = yyvsp[-2].itype; ;
                   5417:     break;}
                   5418: case 340:
                   5419: #line 1942 "parse.y"
                   5420: { tree d;
                   5421:                  current_declspecs = yyvsp[-4].ttype;
                   5422:                  yyval.itype = suspend_momentary ();
                   5423:                  d = start_decl (yyvsp[-3].ttype, current_declspecs, 0, yyvsp[-2].ttype);
                   5424:                  cplus_decl_attributes (d, yyvsp[0].ttype);
                   5425:                  finish_decl (d, NULL_TREE, yyvsp[-1].ttype, 0); ;
                   5426:     break;}
                   5427: case 341:
                   5428: #line 1952 "parse.y"
                   5429: { current_declspecs = NULL_TREE;
                   5430:                  yyvsp[0].itype = suspend_momentary ();
                   5431:                  yyval.ttype = start_decl (yyvsp[-4].ttype, current_declspecs, 1, yyvsp[-3].ttype);
                   5432:                  cplus_decl_attributes (yyval.ttype, yyvsp[-1].ttype); ;
                   5433:     break;}
                   5434: case 342:
                   5435: #line 1958 "parse.y"
                   5436: { finish_decl (yyvsp[-1].ttype, yyvsp[0].ttype, yyvsp[-4].ttype, 0);
                   5437:                  yyval.itype = yyvsp[-2].itype; ;
                   5438:     break;}
                   5439: case 343:
                   5440: #line 1961 "parse.y"
                   5441: { tree d;
                   5442:                  current_declspecs = NULL_TREE;
                   5443:                  yyval.itype = suspend_momentary ();
                   5444:                  d = start_decl (yyvsp[-3].ttype, current_declspecs, 0, yyvsp[-2].ttype);
                   5445:                  cplus_decl_attributes (d, yyvsp[0].ttype);
                   5446:                  finish_decl (d, NULL_TREE, yyvsp[-1].ttype, 0); ;
                   5447:     break;}
                   5448: case 344:
                   5449: #line 1973 "parse.y"
                   5450: { yyval.ttype = NULL_TREE; ;
                   5451:     break;}
                   5452: case 345:
                   5453: #line 1975 "parse.y"
                   5454: { yyval.ttype = yyvsp[0].ttype; ;
                   5455:     break;}
                   5456: case 346:
                   5457: #line 1980 "parse.y"
                   5458: { yyval.ttype = yyvsp[0].ttype; ;
                   5459:     break;}
                   5460: case 347:
                   5461: #line 1982 "parse.y"
                   5462: { yyval.ttype = chainon (yyvsp[-1].ttype, yyvsp[0].ttype); ;
                   5463:     break;}
                   5464: case 348:
                   5465: #line 1987 "parse.y"
                   5466: { yyval.ttype = yyvsp[-2].ttype; ;
                   5467:     break;}
                   5468: case 349:
                   5469: #line 1992 "parse.y"
                   5470: { yyval.ttype = build_tree_list (NULL_TREE, yyvsp[0].ttype); ;
                   5471:     break;}
                   5472: case 350:
                   5473: #line 1994 "parse.y"
                   5474: { yyval.ttype = chainon (yyvsp[-2].ttype, build_tree_list (NULL_TREE, yyvsp[0].ttype)); ;
                   5475:     break;}
                   5476: case 351:
                   5477: #line 1999 "parse.y"
                   5478: { yyval.ttype = NULL_TREE; ;
                   5479:     break;}
                   5480: case 352:
                   5481: #line 2001 "parse.y"
                   5482: { yyval.ttype = yyvsp[0].ttype; ;
                   5483:     break;}
                   5484: case 353:
                   5485: #line 2003 "parse.y"
                   5486: { yyval.ttype = tree_cons (yyvsp[-3].ttype, NULL_TREE, build_tree_list (NULL_TREE, yyvsp[-1].ttype)); ;
                   5487:     break;}
                   5488: case 354:
                   5489: #line 2005 "parse.y"
                   5490: { yyval.ttype = tree_cons (yyvsp[-5].ttype, NULL_TREE, tree_cons (NULL_TREE, yyvsp[-3].ttype, yyvsp[-1].ttype)); ;
                   5491:     break;}
                   5492: case 355:
                   5493: #line 2007 "parse.y"
                   5494: { yyval.ttype = tree_cons (yyvsp[-3].ttype, NULL_TREE, yyvsp[-1].ttype); ;
                   5495:     break;}
                   5496: case 360:
                   5497: #line 2023 "parse.y"
                   5498: { yyval.ttype = build_tree_list (NULL_TREE, yyvsp[0].ttype); ;
                   5499:     break;}
                   5500: case 361:
                   5501: #line 2025 "parse.y"
                   5502: { yyval.ttype = chainon (yyvsp[-2].ttype, build_tree_list (NULL_TREE, yyvsp[0].ttype)); ;
                   5503:     break;}
                   5504: case 363:
                   5505: #line 2031 "parse.y"
                   5506: { yyval.ttype = build_nt (CONSTRUCTOR, NULL_TREE, NULL_TREE);
                   5507:                  TREE_HAS_CONSTRUCTOR (yyval.ttype) = 1; ;
                   5508:     break;}
                   5509: case 364:
                   5510: #line 2034 "parse.y"
                   5511: { yyval.ttype = build_nt (CONSTRUCTOR, NULL_TREE, nreverse (yyvsp[-1].ttype));
                   5512:                  TREE_HAS_CONSTRUCTOR (yyval.ttype) = 1; ;
                   5513:     break;}
                   5514: case 365:
                   5515: #line 2037 "parse.y"
                   5516: { yyval.ttype = build_nt (CONSTRUCTOR, NULL_TREE, nreverse (yyvsp[-2].ttype));
                   5517:                  TREE_HAS_CONSTRUCTOR (yyval.ttype) = 1; ;
                   5518:     break;}
                   5519: case 366:
                   5520: #line 2040 "parse.y"
                   5521: { yyval.ttype = NULL_TREE; ;
                   5522:     break;}
                   5523: case 367:
                   5524: #line 2047 "parse.y"
                   5525: { yyval.ttype = build_tree_list (NULL_TREE, yyval.ttype); ;
                   5526:     break;}
                   5527: case 368:
                   5528: #line 2049 "parse.y"
                   5529: { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyval.ttype); ;
                   5530:     break;}
                   5531: case 369:
                   5532: #line 2052 "parse.y"
                   5533: { yyval.ttype = build_tree_list (yyvsp[-2].ttype, yyvsp[0].ttype); ;
                   5534:     break;}
                   5535: case 370:
                   5536: #line 2054 "parse.y"
                   5537: { yyval.ttype = tree_cons (yyvsp[-2].ttype, yyvsp[0].ttype, yyval.ttype); ;
                   5538:     break;}
                   5539: case 371:
                   5540: #line 2056 "parse.y"
                   5541: { yyval.ttype = build_tree_list (yyval.ttype, yyvsp[0].ttype); ;
                   5542:     break;}
                   5543: case 372:
                   5544: #line 2058 "parse.y"
                   5545: { yyval.ttype = tree_cons (yyvsp[-2].ttype, yyvsp[0].ttype, yyval.ttype); ;
                   5546:     break;}
                   5547: case 373:
                   5548: #line 2063 "parse.y"
                   5549: { yyvsp[0].itype = suspend_momentary ();
                   5550:                  yyval.ttype = start_enum (yyvsp[-1].ttype); ;
                   5551:     break;}
                   5552: case 374:
                   5553: #line 2066 "parse.y"
                   5554: { yyval.ttype = finish_enum (yyvsp[-3].ttype, yyvsp[-2].ttype);
                   5555:                  resume_momentary ((int) yyvsp[-4].itype);
                   5556:                  check_for_missing_semicolon (yyvsp[-3].ttype); ;
                   5557:     break;}
                   5558: case 375:
                   5559: #line 2070 "parse.y"
                   5560: { yyval.ttype = finish_enum (start_enum (yyvsp[-2].ttype), NULL_TREE);
                   5561:                  check_for_missing_semicolon (yyval.ttype); ;
                   5562:     break;}
                   5563: case 376:
                   5564: #line 2073 "parse.y"
                   5565: { yyvsp[0].itype = suspend_momentary ();
                   5566:                  yyval.ttype = start_enum (make_anon_name ()); ;
                   5567:     break;}
                   5568: case 377:
                   5569: #line 2076 "parse.y"
                   5570: { yyval.ttype = finish_enum (yyvsp[-3].ttype, yyvsp[-2].ttype);
                   5571:                  resume_momentary ((int) yyvsp[-5].itype);
                   5572:                  check_for_missing_semicolon (yyvsp[-3].ttype); ;
                   5573:     break;}
                   5574: case 378:
                   5575: #line 2080 "parse.y"
                   5576: { yyval.ttype = finish_enum (start_enum (make_anon_name()), NULL_TREE);
                   5577:                  check_for_missing_semicolon (yyval.ttype); ;
                   5578:     break;}
                   5579: case 379:
                   5580: #line 2083 "parse.y"
                   5581: { yyval.ttype = xref_tag (enum_type_node, yyvsp[0].ttype, NULL_TREE, 0); ;
                   5582:     break;}
                   5583: case 380:
                   5584: #line 2085 "parse.y"
                   5585: { yyval.ttype = xref_tag (enum_type_node, yyvsp[0].ttype, NULL_TREE, 0); ;
                   5586:     break;}
                   5587: case 381:
                   5588: #line 2089 "parse.y"
                   5589: {
                   5590:                  int semi;
                   5591:                  tree id;
                   5592: 
                   5593: #if 0
                   5594:                  /* Need to rework class nesting in the
                   5595:                     presence of nested classes, etc.  */
                   5596:                  shadow_tag (CLASSTYPE_AS_LIST (yyval.ttype)); */
                   5597: #endif
                   5598:                  if (yychar == YYEMPTY)
                   5599:                    yychar = YYLEX;
                   5600:                  semi = yychar == ';';
                   5601:                  /* finish_struct nukes this anyway; if
                   5602:                     finish_exception does too, then it can go. */
                   5603:                  if (semi)
                   5604:                    note_got_semicolon (yyval.ttype);
                   5605: 
                   5606:                  if (TREE_CODE (yyval.ttype) == ENUMERAL_TYPE)
                   5607:                    /* $$ = $1 from default rule.  */;
                   5608:                  else if (CLASSTYPE_DECLARED_EXCEPTION (yyval.ttype))
                   5609:                    {
                   5610:                    }
                   5611:                  else
                   5612:                    {
                   5613:                      yyval.ttype = finish_struct (yyval.ttype, yyvsp[-1].ttype, semi);
                   5614:                      if (semi) note_got_semicolon (yyval.ttype);
                   5615:                    }
                   5616: 
                   5617:                  pop_obstacks ();
                   5618: 
                   5619:                  id = TYPE_IDENTIFIER (yyval.ttype);
                   5620:                  if (id && IDENTIFIER_TEMPLATE (id))
                   5621:                    {
                   5622:                      tree decl;
                   5623: 
                   5624:                      /* I don't know if the copying of this TYPE_DECL is
                   5625:                       * really needed.  However, it's such a small per-
                   5626:                       * formance penalty that the extra safety is a bargain.
                   5627:                       * - [email protected]
                   5628:                       */
                   5629:                      push_obstacks (&permanent_obstack, &permanent_obstack);
                   5630:                      decl = copy_node (lookup_name (id, 0));
                   5631:                      if (DECL_LANG_SPECIFIC (decl))
                   5632:                        copy_lang_decl (decl);
                   5633:                      pop_obstacks ();
                   5634:                      undo_template_name_overload (id, 0);
                   5635:                      pushdecl_top_level (decl);
                   5636:                    }
                   5637:                  if (! semi)
                   5638:                    check_for_missing_semicolon (yyval.ttype); ;
                   5639:     break;}
                   5640: case 382:
                   5641: #line 2140 "parse.y"
                   5642: {
                   5643: #if 0
                   5644:   /* It's no longer clear what the following error is supposed to
                   5645:      accomplish.  If it turns out to be needed, add a comment why.  */
                   5646:                  if (TYPE_BINFO_BASETYPES (yyval.ttype) && !TYPE_SIZE (yyval.ttype))
                   5647:                    {
                   5648:                      error ("incomplete definition of type `%s'",
                   5649:                             TYPE_NAME_STRING (yyval.ttype));
                   5650:                      yyval.ttype = error_mark_node;
                   5651:                    }
                   5652: #endif
                   5653:                ;
                   5654:     break;}
                   5655: case 386:
                   5656: #line 2162 "parse.y"
                   5657: { if (pedantic) pedwarn ("comma at end of enumerator list"); ;
                   5658:     break;}
                   5659: case 388:
                   5660: #line 2167 "parse.y"
                   5661: { error ("storage class specifier `%s' not allowed after struct or class", IDENTIFIER_POINTER (yyvsp[0].ttype)); ;
                   5662:     break;}
                   5663: case 389:
                   5664: #line 2169 "parse.y"
                   5665: { error ("type specifier `%s' not allowed after struct or class", IDENTIFIER_POINTER (yyvsp[0].ttype)); ;
                   5666:     break;}
                   5667: case 390:
                   5668: #line 2171 "parse.y"
                   5669: { error ("type qualifier `%s' not allowed after struct or class", IDENTIFIER_POINTER (yyvsp[0].ttype)); ;
                   5670:     break;}
                   5671: case 391:
                   5672: #line 2173 "parse.y"
                   5673: { error ("no body nor ';' separates two class, struct or union declarations"); ;
                   5674:     break;}
                   5675: case 392:
                   5676: #line 2178 "parse.y"
                   5677: { 
                   5678:                  yyungetc (';', 1); current_aggr = yyval.ttype; yyval.ttype = yyvsp[-1].ttype; 
                   5679:                  if (yyvsp[-3].ttype == ridpointers[(int) RID_TEMPLATE])
                   5680:                    instantiate_class_template (yyval.ttype, 2);
                   5681:                ;
                   5682:     break;}
                   5683: case 393:
                   5684: #line 2187 "parse.y"
                   5685: { current_aggr = yyval.ttype; yyval.ttype = yyvsp[0].ttype; ;
                   5686:     break;}
                   5687: case 394:
                   5688: #line 2189 "parse.y"
                   5689: { current_aggr = yyval.ttype; yyval.ttype = yyvsp[0].ttype; ;
                   5690:     break;}
                   5691: case 395:
                   5692: #line 2191 "parse.y"
                   5693: { current_aggr = yyval.ttype; yyval.ttype = yyvsp[0].ttype; ;
                   5694:     break;}
                   5695: case 396:
                   5696: #line 2193 "parse.y"
                   5697: { yyungetc ('{', 1);
                   5698:                aggr2:
                   5699:                  current_aggr = yyval.ttype;
                   5700:                  yyval.ttype = yyvsp[-1].ttype;
                   5701:                  overload_template_name (yyval.ttype, 0); ;
                   5702:     break;}
                   5703: case 397:
                   5704: #line 2199 "parse.y"
                   5705: { yyungetc (':', 1); goto aggr2; ;
                   5706:     break;}
                   5707: case 399:
                   5708: #line 2205 "parse.y"
                   5709: { current_aggr = yyval.ttype; yyval.ttype = yyvsp[0].ttype; ;
                   5710:     break;}
                   5711: case 400:
                   5712: #line 2209 "parse.y"
                   5713: { yyval.ttype = xref_tag (current_aggr, yyvsp[0].ttype, NULL_TREE, 1); ;
                   5714:     break;}
                   5715: case 401:
                   5716: #line 2212 "parse.y"
                   5717: { yyval.ttype = xref_defn_tag (current_aggr, yyvsp[0].ttype, NULL_TREE); ;
                   5718:     break;}
                   5719: case 402:
                   5720: #line 2217 "parse.y"
                   5721: {
                   5722:                  if (yyvsp[0].ttype)
                   5723:                    yyval.ttype = xref_tag (current_aggr, yyvsp[-2].ttype, yyvsp[0].ttype, 1);
                   5724:                  else
                   5725:                    yyval.ttype = yyvsp[-1].ttype;
                   5726:                ;
                   5727:     break;}
                   5728: case 403:
                   5729: #line 2226 "parse.y"
                   5730: {
                   5731:                  if (yyvsp[0].ttype)
                   5732:                    yyval.ttype = xref_defn_tag (current_aggr, yyvsp[-2].ttype, yyvsp[0].ttype);
                   5733:                  else
                   5734:                    yyval.ttype = yyvsp[-1].ttype;
                   5735:                ;
                   5736:     break;}
                   5737: case 404:
                   5738: #line 2235 "parse.y"
                   5739: { yyval.ttype = xref_tag (yyval.ttype, make_anon_name (), NULL_TREE, 0);
                   5740:                  yyungetc ('{', 1); ;
                   5741:     break;}
                   5742: case 407:
                   5743: #line 2243 "parse.y"
                   5744: { yyval.ttype = NULL_TREE; ;
                   5745:     break;}
                   5746: case 408:
                   5747: #line 2245 "parse.y"
                   5748: { yyungetc(':', 1); yyval.ttype = NULL_TREE; ;
                   5749:     break;}
                   5750: case 409:
                   5751: #line 2247 "parse.y"
                   5752: { yyval.ttype = yyvsp[0].ttype; ;
                   5753:     break;}
                   5754: case 411:
                   5755: #line 2253 "parse.y"
                   5756: { yyval.ttype = chainon (yyval.ttype, yyvsp[0].ttype); ;
                   5757:     break;}
                   5758: case 412:
                   5759: #line 2258 "parse.y"
                   5760: {
                   5761:                  tree type;
                   5762:                 do_base_class1:
                   5763:                  type = IDENTIFIER_TYPE_VALUE (yyval.ttype);
                   5764:                  if (! is_aggr_typedef (yyval.ttype, 1))
                   5765:                    yyval.ttype = NULL_TREE;
                   5766:                  else if (current_aggr == signature_type_node
                   5767:                           && (! type) && (! IS_SIGNATURE (type)))
                   5768:                    {
                   5769:                      error ("class name not allowed as base signature");
                   5770:                      yyval.ttype = NULL_TREE;
                   5771:                    }
                   5772:                  else if (current_aggr == signature_type_node)
                   5773:                    {
                   5774:                      sorry ("signature inheritance, base type `%s' ignored",
                   5775:                             IDENTIFIER_POINTER (yyval.ttype));
                   5776:                      yyval.ttype = build_tree_list ((tree)access_public, yyval.ttype);
                   5777:                    }
                   5778:                  else if (type && IS_SIGNATURE (type))
                   5779:                    {
                   5780:                      error ("signature name not allowed as base class");
                   5781:                      yyval.ttype = NULL_TREE;
                   5782:                    }
                   5783:                  else
                   5784:                    yyval.ttype = build_tree_list ((tree)access_default, yyval.ttype);
                   5785:                ;
                   5786:     break;}
                   5787: case 413:
                   5788: #line 2285 "parse.y"
                   5789: {
                   5790:                  tree type;
                   5791:                 do_base_class2:
                   5792:                  type = IDENTIFIER_TYPE_VALUE (yyvsp[0].ttype);
                   5793:                  if (current_aggr == signature_type_node)
                   5794:                    error ("access and source specifiers not allowed in signature");
                   5795:                  if (! is_aggr_typedef (yyvsp[0].ttype, 1))
                   5796:                    yyval.ttype = NULL_TREE;
                   5797:                  else if (current_aggr == signature_type_node
                   5798:                           && (! type) && (! IS_SIGNATURE (type)))
                   5799:                    {
                   5800:                      error ("class name not allowed as base signature");
                   5801:                      yyval.ttype = NULL_TREE;
                   5802:                    }
                   5803:                  else if (current_aggr == signature_type_node)
                   5804:                    {
                   5805:                      sorry ("signature inheritance, base type `%s' ignored",
                   5806:                             IDENTIFIER_POINTER (yyval.ttype));
                   5807:                      yyval.ttype = build_tree_list ((tree)access_public, yyvsp[0].ttype);
                   5808:                    }
                   5809:                  else if (type && IS_SIGNATURE (type))
                   5810:                    {
                   5811:                      error ("signature name not allowed as base class");
                   5812:                      yyval.ttype = NULL_TREE;
                   5813:                    }
                   5814:                  else
                   5815:                    yyval.ttype = build_tree_list ((tree) yyval.ttype, yyvsp[0].ttype);
                   5816:                ;
                   5817:     break;}
                   5818: case 415:
                   5819: #line 2318 "parse.y"
                   5820: {
                   5821:                  if (current_aggr == signature_type_node)
                   5822:                    {
                   5823:                      if (IS_AGGR_TYPE (TREE_TYPE (yyvsp[-1].ttype)))
                   5824:                        {
                   5825:                          sorry ("`sigof' as base signature specifier");
                   5826:                          /* need to return some dummy signature identifier */
                   5827:                          yyval.ttype = yyvsp[-1].ttype;
                   5828:                        }
                   5829:                      else
                   5830:                        {
                   5831:                          error ("`sigof' applied to non-aggregate expression");
                   5832:                          yyval.ttype = error_mark_node;
                   5833:                        }
                   5834:                    }
                   5835:                  else
                   5836:                    {
                   5837:                      error ("`sigof' in struct or class declaration");
                   5838:                      yyval.ttype = error_mark_node;
                   5839:                    }
                   5840:                ;
                   5841:     break;}
                   5842: case 416:
                   5843: #line 2340 "parse.y"
                   5844: {
                   5845:                  if (current_aggr == signature_type_node)
                   5846:                    {
                   5847:                      if (IS_AGGR_TYPE (groktypename (yyvsp[-1].ttype)))
                   5848:                        {
                   5849:                          sorry ("`sigof' as base signature specifier");
                   5850:                          /* need to return some dummy signature identifier */
                   5851:                          yyval.ttype = yyvsp[-1].ttype;
                   5852:                        }
                   5853:                      else
                   5854:                        {
                   5855:                          error ("`sigof' applied to non-aggregate expression");
                   5856:                          yyval.ttype = error_mark_node;
                   5857:                        }
                   5858:                    }
                   5859:                  else
                   5860:                    {
                   5861:                      error ("`sigof' in struct or class declaration");
                   5862:                      yyval.ttype = error_mark_node;
                   5863:                    }
                   5864:                ;
                   5865:     break;}
                   5866: case 418:
                   5867: #line 2366 "parse.y"
                   5868: { if (yyval.ttype != ridpointers[(int)RID_VIRTUAL])
                   5869:                    sorry ("non-virtual access");
                   5870:                  yyval.itype = access_default_virtual; ;
                   5871:     break;}
                   5872: case 419:
                   5873: #line 2370 "parse.y"
                   5874: { int err = 0;
                   5875:                  if (yyvsp[0].itype == access_protected)
                   5876:                    {
                   5877:                      warning ("`protected' access not implemented");
                   5878:                      yyvsp[0].itype = access_public;
                   5879:                      err++;
                   5880:                    }
                   5881:                  else if (yyvsp[0].itype == access_public)
                   5882:                    {
                   5883:                      if (yyvsp[-1].itype == access_private)
                   5884:                        {
                   5885:                        mixed:
                   5886:                          error ("base class cannot be public and private");
                   5887:                        }
                   5888:                      else if (yyvsp[-1].itype == access_default_virtual)
                   5889:                        yyval.itype = access_public_virtual;
                   5890:                    }
                   5891:                  else /* $2 == access_private */
                   5892:                    {
                   5893:                      if (yyvsp[-1].itype == access_public)
                   5894:                        goto mixed;
                   5895:                      else if (yyvsp[-1].itype == access_default_virtual)
                   5896:                        yyval.itype = access_private_virtual;
                   5897:                    }
                   5898:                ;
                   5899:     break;}
                   5900: case 420:
                   5901: #line 2396 "parse.y"
                   5902: { if (yyvsp[0].ttype != ridpointers[(int)RID_VIRTUAL])
                   5903:                    sorry ("non-virtual access");
                   5904:                  if (yyval.itype == access_public)
                   5905:                    yyval.itype = access_public_virtual;
                   5906:                  else if (yyval.itype == access_private)
                   5907:                    yyval.itype = access_private_virtual; ;
                   5908:     break;}
                   5909: case 421:
                   5910: #line 2405 "parse.y"
                   5911: { tree t = yyvsp[-1].ttype;
                   5912:                  push_obstacks_nochange ();
                   5913:                  end_temporary_allocation ();
                   5914: 
                   5915:                  if (! IS_AGGR_TYPE (t))
                   5916:                    {
                   5917:                      t = yyvsp[-1].ttype = make_lang_type (RECORD_TYPE);
                   5918:                      TYPE_NAME (t) = get_identifier ("erroneous type");
                   5919:                    }
                   5920:                  if (TYPE_SIZE (t))
                   5921:                    duplicate_tag_error (t);
                   5922:                   if (TYPE_SIZE (t) || TYPE_BEING_DEFINED (t))
                   5923:                     {
                   5924:                       t = make_lang_type (TREE_CODE (t));
                   5925:                       pushtag (TYPE_IDENTIFIER (yyvsp[-1].ttype), t, 0);
                   5926:                       yyvsp[-1].ttype = t;
                   5927:                     }
                   5928:                  pushclass (t, 0);
                   5929:                  TYPE_BEING_DEFINED (t) = 1;
                   5930:                  /* Reset the interface data, at the earliest possible
                   5931:                     moment, as it might have been set via a class foo;
                   5932:                     before.  */
                   5933:                  /* Don't change signatures.  */
                   5934:                  if (! IS_SIGNATURE (t))
                   5935:                    {
                   5936:                      extern tree pending_vtables;
                   5937:                      int needs_writing;
                   5938:                      tree name = TYPE_IDENTIFIER (t);
                   5939: 
                   5940:                      CLASSTYPE_INTERFACE_ONLY (t) = interface_only;
                   5941:                      SET_CLASSTYPE_INTERFACE_UNKNOWN_X (t, interface_unknown);
                   5942: 
                   5943:                      /* Record how to set the access of this class's
                   5944:                         virtual functions.  If write_virtuals == 2 or 3, then
                   5945:                         inline virtuals are ``extern inline''.  */
                   5946:                      switch (write_virtuals)
                   5947:                        {
                   5948:                        case 0:
                   5949:                        case 1:
                   5950:                          needs_writing = 1;
                   5951:                          break;
                   5952:                        case 2:
                   5953:                          needs_writing = !! value_member (name, pending_vtables);
                   5954:                          break;
                   5955:                        case 3:
                   5956:                          needs_writing = ! CLASSTYPE_INTERFACE_ONLY (t)
                   5957:                            && CLASSTYPE_INTERFACE_KNOWN (t);
                   5958:                          break;
                   5959:                        default:
                   5960:                          needs_writing = 0;
                   5961:                        }
                   5962:                      CLASSTYPE_VTABLE_NEEDS_WRITING (t) = needs_writing;
                   5963:                    }
                   5964: #if 0
                   5965:                  t = TYPE_IDENTIFIER (yyvsp[-1].ttype);
                   5966:                  if (t && IDENTIFIER_TEMPLATE (t))
                   5967:                    overload_template_name (t, 1);
                   5968: #endif
                   5969:                ;
                   5970:     break;}
                   5971: case 422:
                   5972: #line 2468 "parse.y"
                   5973: { yyval.ttype = NULL_TREE; ;
                   5974:     break;}
                   5975: case 423:
                   5976: #line 2470 "parse.y"
                   5977: {
                   5978:                  if (current_aggr == signature_type_node)
                   5979:                    yyval.ttype = build_tree_list ((tree) access_public, yyval.ttype);
                   5980:                  else
                   5981:                    yyval.ttype = build_tree_list ((tree) access_default, yyval.ttype);
                   5982:                ;
                   5983:     break;}
                   5984: case 424:
                   5985: #line 2477 "parse.y"
                   5986: {
                   5987:                  tree visspec = (tree) yyvsp[-2].itype;
                   5988: 
                   5989:                  if (current_aggr == signature_type_node)
                   5990:                    {
                   5991:                      error ("access specifier not allowed in signature");
                   5992:                      visspec = (tree) access_public;
                   5993:                    }
                   5994:                  yyval.ttype = chainon (yyval.ttype, build_tree_list (visspec, yyvsp[0].ttype));
                   5995:                ;
                   5996:     break;}
                   5997: case 425:
                   5998: #line 2488 "parse.y"
                   5999: {
                   6000:                  if (current_aggr == signature_type_node)
                   6001:                    error ("access specifier not allowed in signature");
                   6002:                ;
                   6003:     break;}
                   6004: case 426:
                   6005: #line 2498 "parse.y"
                   6006: { if (yyval.ttype == void_type_node) yyval.ttype = NULL_TREE; 
                   6007:                ;
                   6008:     break;}
                   6009: case 427:
                   6010: #line 2501 "parse.y"
                   6011: { /* In pushdecl, we created a reverse list of names
                   6012:                     in this binding level.  Make sure that the chain
                   6013:                     of what we're trying to add isn't the item itself
                   6014:                     (which can happen with what pushdecl's doing).  */
                   6015:                  if (yyvsp[0].ttype != NULL_TREE && yyvsp[0].ttype != void_type_node)
                   6016:                    {
                   6017:                      if (TREE_CHAIN (yyvsp[0].ttype) != yyval.ttype)
                   6018:                        yyval.ttype = chainon (yyval.ttype, yyvsp[0].ttype);
                   6019:                      else
                   6020:                        yyval.ttype = yyvsp[0].ttype;
                   6021:                    }
                   6022:                ;
                   6023:     break;}
                   6024: case 430:
                   6025: #line 2519 "parse.y"
                   6026: { error ("missing ';' before right brace");
                   6027:                  yyungetc ('}', 0); ;
                   6028:     break;}
                   6029: case 431:
                   6030: #line 2524 "parse.y"
                   6031: { yyval.ttype = finish_method (yyval.ttype); ;
                   6032:     break;}
                   6033: case 432:
                   6034: #line 2526 "parse.y"
                   6035: { yyval.ttype = finish_method (yyval.ttype); ;
                   6036:     break;}
                   6037: case 433:
                   6038: #line 2534 "parse.y"
                   6039: {
                   6040:                  yyval.ttype = grok_x_components (yyval.ttype, yyvsp[0].ttype);
                   6041:                ;
                   6042:     break;}
                   6043: case 434:
                   6044: #line 2538 "parse.y"
                   6045: { 
                   6046:                  yyval.ttype = grok_x_components (yyval.ttype, yyvsp[0].ttype);
                   6047:                ;
                   6048:     break;}
                   6049: case 435:
                   6050: #line 2542 "parse.y"
                   6051: { yyval.ttype = grokfield (yyval.ttype, NULL_TREE, yyvsp[-2].ttype, NULL_TREE, yyvsp[-1].ttype);
                   6052:                  cplus_decl_attributes (yyval.ttype, yyvsp[0].ttype); ;
                   6053:     break;}
                   6054: case 436:
                   6055: #line 2545 "parse.y"
                   6056: { yyval.ttype = grokbitfield (NULL_TREE, NULL_TREE, yyvsp[0].ttype); ;
                   6057:     break;}
                   6058: case 437:
                   6059: #line 2547 "parse.y"
                   6060: { yyval.ttype = NULL_TREE; ;
                   6061:     break;}
                   6062: case 438:
                   6063: #line 2558 "parse.y"
                   6064: { yyval.ttype = build_parse_node (CALL_EXPR, TREE_VALUE (yyvsp[-4].ttype),
                   6065:                                         yyvsp[-2].ttype, yyvsp[0].ttype);
                   6066:                  yyval.ttype = grokfield (yyval.ttype, TREE_CHAIN (yyvsp[-4].ttype), NULL_TREE, NULL_TREE,
                   6067:                                  NULL_TREE); ;
                   6068:     break;}
                   6069: case 439:
                   6070: #line 2563 "parse.y"
                   6071: { yyval.ttype = build_parse_node (CALL_EXPR, TREE_VALUE (yyvsp[-2].ttype),
                   6072:                                         empty_parms (), yyvsp[0].ttype);
                   6073:                  yyval.ttype = grokfield (yyval.ttype, TREE_CHAIN (yyvsp[-2].ttype), NULL_TREE, NULL_TREE,
                   6074:                                  NULL_TREE); ;
                   6075:     break;}
                   6076: case 440:
                   6077: #line 2572 "parse.y"
                   6078: { yyval.ttype = NULL_TREE; ;
                   6079:     break;}
                   6080: case 442:
                   6081: #line 2575 "parse.y"
                   6082: {
                   6083:                  /* In this context, void_type_node encodes
                   6084:                     friends.  They have been recorded elsewhere.  */
                   6085:                  if (yyval.ttype == void_type_node)
                   6086:                    yyval.ttype = yyvsp[0].ttype;
                   6087:                  else
                   6088:                    yyval.ttype = chainon (yyval.ttype, yyvsp[0].ttype);
                   6089:                ;
                   6090:     break;}
                   6091: case 443:
                   6092: #line 2587 "parse.y"
                   6093: { yyval.ttype = NULL_TREE; ;
                   6094:     break;}
                   6095: case 445:
                   6096: #line 2590 "parse.y"
                   6097: {
                   6098:                  /* In this context, void_type_node encodes
                   6099:                     friends.  They have been recorded elsewhere.  */
                   6100:                  if (yyval.ttype == void_type_node)
                   6101:                    yyval.ttype = yyvsp[0].ttype;
                   6102:                  else
                   6103:                    yyval.ttype = chainon (yyval.ttype, yyvsp[0].ttype);
                   6104:                ;
                   6105:     break;}
                   6106: case 450:
                   6107: #line 2612 "parse.y"
                   6108: { current_declspecs = yyvsp[-4].ttype;
                   6109:                  yyval.ttype = grokfield (yyval.ttype, current_declspecs, yyvsp[-2].ttype, NULL_TREE, yyvsp[-1].ttype);
                   6110:                  cplus_decl_attributes (yyval.ttype, yyvsp[0].ttype); ;
                   6111:     break;}
                   6112: case 451:
                   6113: #line 2616 "parse.y"
                   6114: { current_declspecs = yyvsp[-6].ttype;
                   6115:                  yyval.ttype = grokfield (yyval.ttype, current_declspecs, yyvsp[-4].ttype, yyvsp[0].ttype, yyvsp[-3].ttype);
                   6116:                  cplus_decl_attributes (yyval.ttype, yyvsp[-2].ttype); ;
                   6117:     break;}
                   6118: case 452:
                   6119: #line 2620 "parse.y"
                   6120: { current_declspecs = yyvsp[-4].ttype;
                   6121:                  yyval.ttype = grokbitfield (yyval.ttype, current_declspecs, yyvsp[-1].ttype);
                   6122:                  cplus_decl_attributes (yyval.ttype, yyvsp[0].ttype); ;
                   6123:     break;}
                   6124: case 453:
                   6125: #line 2627 "parse.y"
                   6126: { current_declspecs = yyvsp[-4].ttype;
                   6127:                  yyval.ttype = grokfield (yyval.ttype, current_declspecs, yyvsp[-2].ttype, NULL_TREE, yyvsp[-1].ttype);
                   6128:                  cplus_decl_attributes (yyval.ttype, yyvsp[0].ttype); ;
                   6129:     break;}
                   6130: case 454:
                   6131: #line 2631 "parse.y"
                   6132: { current_declspecs = yyvsp[-6].ttype;
                   6133:                  yyval.ttype = grokfield (yyval.ttype, current_declspecs, yyvsp[-4].ttype, yyvsp[0].ttype, yyvsp[-3].ttype);
                   6134:                  cplus_decl_attributes (yyval.ttype, yyvsp[-2].ttype); ;
                   6135:     break;}
                   6136: case 455:
                   6137: #line 2635 "parse.y"
                   6138: { current_declspecs = yyvsp[-4].ttype;
                   6139:                  yyval.ttype = grokbitfield (yyval.ttype, current_declspecs, yyvsp[-1].ttype);
                   6140:                  cplus_decl_attributes (yyval.ttype, yyvsp[0].ttype); ;
                   6141:     break;}
                   6142: case 456:
                   6143: #line 2639 "parse.y"
                   6144: { current_declspecs = yyvsp[-3].ttype;
                   6145:                  yyval.ttype = grokbitfield (NULL_TREE, current_declspecs, yyvsp[-1].ttype);
                   6146:                  cplus_decl_attributes (yyval.ttype, yyvsp[0].ttype); ;
                   6147:     break;}
                   6148: case 457:
                   6149: #line 2646 "parse.y"
                   6150: { yyval.ttype = grokfield (yyval.ttype, current_declspecs, yyvsp[-2].ttype, NULL_TREE, yyvsp[-1].ttype);
                   6151:                  cplus_decl_attributes (yyval.ttype, yyvsp[0].ttype); ;
                   6152:     break;}
                   6153: case 458:
                   6154: #line 2649 "parse.y"
                   6155: { yyval.ttype = grokfield (yyval.ttype, current_declspecs, yyvsp[-4].ttype, yyvsp[0].ttype, yyvsp[-3].ttype);
                   6156:                  cplus_decl_attributes (yyval.ttype, yyvsp[-2].ttype); ;
                   6157:     break;}
                   6158: case 459:
                   6159: #line 2652 "parse.y"
                   6160: { yyval.ttype = grokbitfield (yyval.ttype, current_declspecs, yyvsp[-1].ttype);
                   6161:                  cplus_decl_attributes (yyval.ttype, yyvsp[0].ttype); ;
                   6162:     break;}
                   6163: case 460:
                   6164: #line 2658 "parse.y"
                   6165: { yyval.ttype = grokfield (yyval.ttype, current_declspecs, yyvsp[-2].ttype, NULL_TREE, yyvsp[-1].ttype);
                   6166:                  cplus_decl_attributes (yyval.ttype, yyvsp[0].ttype); ;
                   6167:     break;}
                   6168: case 461:
                   6169: #line 2661 "parse.y"
                   6170: { yyval.ttype = grokfield (yyval.ttype, current_declspecs, yyvsp[-4].ttype, yyvsp[0].ttype, yyvsp[-3].ttype);
                   6171:                  cplus_decl_attributes (yyval.ttype, yyvsp[-2].ttype); ;
                   6172:     break;}
                   6173: case 462:
                   6174: #line 2664 "parse.y"
                   6175: { yyval.ttype = grokbitfield (yyval.ttype, current_declspecs, yyvsp[-1].ttype);
                   6176:                  cplus_decl_attributes (yyval.ttype, yyvsp[0].ttype); ;
                   6177:     break;}
                   6178: case 463:
                   6179: #line 2667 "parse.y"
                   6180: { yyval.ttype = grokbitfield (NULL_TREE, current_declspecs, yyvsp[-1].ttype);
                   6181:                  cplus_decl_attributes (yyval.ttype, yyvsp[0].ttype); ;
                   6182:     break;}
                   6183: case 465:
                   6184: #line 2678 "parse.y"
                   6185: { TREE_CHAIN (yyvsp[0].ttype) = yyval.ttype; yyval.ttype = yyvsp[0].ttype; ;
                   6186:     break;}
                   6187: case 466:
                   6188: #line 2683 "parse.y"
                   6189: { yyval.ttype = build_enumerator (yyval.ttype, NULL_TREE); ;
                   6190:     break;}
                   6191: case 467:
                   6192: #line 2685 "parse.y"
                   6193: { yyval.ttype = build_enumerator (yyval.ttype, yyvsp[0].ttype); ;
                   6194:     break;}
                   6195: case 468:
                   6196: #line 2691 "parse.y"
                   6197: { yyval.ttype = build_decl_list (yyval.ttype, yyvsp[0].ttype); ;
                   6198:     break;}
                   6199: case 469:
                   6200: #line 2693 "parse.y"
                   6201: { yyval.ttype = build_decl_list (yyval.ttype, NULL_TREE); ;
                   6202:     break;}
                   6203: case 470:
                   6204: #line 2697 "parse.y"
                   6205: {
                   6206:                  if (flag_ansi)
                   6207:                    pedwarn ("ANSI C++ forbids array dimensions with parenthesized type in new");
                   6208:                  yyval.ttype = build_parse_node (ARRAY_REF, TREE_VALUE (yyvsp[-4].ttype), yyvsp[-1].ttype);
                   6209:                  yyval.ttype = build_decl_list (TREE_PURPOSE (yyvsp[-4].ttype), yyval.ttype);
                   6210:                ;
                   6211:     break;}
                   6212: case 471:
                   6213: #line 2707 "parse.y"
                   6214: { yyval.ttype = NULL_TREE; ;
                   6215:     break;}
                   6216: case 472:
                   6217: #line 2709 "parse.y"
                   6218: { yyval.ttype = decl_tree_cons (NULL_TREE, yyvsp[0].ttype, yyval.ttype); ;
                   6219:     break;}
                   6220: case 473:
                   6221: #line 2714 "parse.y"
                   6222: { yyval.ttype = IDENTIFIER_AS_LIST (yyval.ttype); ;
                   6223:     break;}
                   6224: case 474:
                   6225: #line 2716 "parse.y"
                   6226: { yyval.ttype = decl_tree_cons (NULL_TREE, yyvsp[0].ttype, yyval.ttype); ;
                   6227:     break;}
                   6228: case 475:
                   6229: #line 2724 "parse.y"
                   6230: { yyval.itype = suspend_momentary (); ;
                   6231:     break;}
                   6232: case 476:
                   6233: #line 2725 "parse.y"
                   6234: { resume_momentary ((int) yyvsp[-1].itype); yyval.ttype = yyvsp[0].ttype; ;
                   6235:     break;}
                   6236: case 477:
                   6237: #line 2732 "parse.y"
                   6238: { yyval.ttype = make_pointer_declarator (yyvsp[-1].ttype, yyvsp[0].ttype); ;
                   6239:     break;}
                   6240: case 478:
                   6241: #line 2734 "parse.y"
                   6242: { yyval.ttype = make_reference_declarator (yyvsp[-1].ttype, yyvsp[0].ttype); ;
                   6243:     break;}
                   6244: case 479:
                   6245: #line 2736 "parse.y"
                   6246: { yyval.ttype = make_pointer_declarator (NULL_TREE, yyvsp[0].ttype); ;
                   6247:     break;}
                   6248: case 480:
                   6249: #line 2738 "parse.y"
                   6250: { yyval.ttype = make_reference_declarator (NULL_TREE, yyvsp[0].ttype); ;
                   6251:     break;}
                   6252: case 481:
                   6253: #line 2740 "parse.y"
                   6254: { tree arg = make_pointer_declarator (yyvsp[-1].ttype, yyvsp[0].ttype);
                   6255:                  yyval.ttype = build_parse_node (SCOPE_REF, yyvsp[-2].ttype, arg);
                   6256:                ;
                   6257:     break;}
                   6258: case 483:
                   6259: #line 2748 "parse.y"
                   6260: {
                   6261:                  /* Remember that this name has been used in the class
                   6262:                     definition, as per [class.scope0] */
                   6263:                  if (current_class_type
                   6264:                      && TYPE_BEING_DEFINED (current_class_type)
                   6265:                      && ! IDENTIFIER_CLASS_VALUE (yyval.ttype))
                   6266:                    {
                   6267:                      tree t = lookup_name (yyval.ttype, -2);
                   6268:                      if (t)
                   6269:                        pushdecl_class_level (t);
                   6270:                    }
                   6271:                ;
                   6272:     break;}
                   6273: case 485:
                   6274: #line 2765 "parse.y"
                   6275: { yyval.ttype = yyvsp[0].ttype; ;
                   6276:     break;}
                   6277: case 486:
                   6278: #line 2770 "parse.y"
                   6279: { yyval.ttype = build_parse_node (CALL_EXPR, yyval.ttype, yyvsp[-2].ttype, yyvsp[0].ttype); ;
                   6280:     break;}
                   6281: case 487:
                   6282: #line 2772 "parse.y"
                   6283: { yyval.ttype = build_parse_node (CALL_EXPR, yyval.ttype, yyvsp[-2].ttype, yyvsp[0].ttype); ;
                   6284:     break;}
                   6285: case 488:
                   6286: #line 2774 "parse.y"
                   6287: { yyval.ttype = build_parse_node (CALL_EXPR, yyval.ttype, empty_parms (), yyvsp[0].ttype); ;
                   6288:     break;}
                   6289: case 489:
                   6290: #line 2776 "parse.y"
                   6291: { yyval.ttype = build_parse_node (CALL_EXPR, yyval.ttype, NULL_TREE, NULL_TREE); ;
                   6292:     break;}
                   6293: case 490:
                   6294: #line 2778 "parse.y"
                   6295: { yyval.ttype = build_parse_node (ARRAY_REF, yyval.ttype, yyvsp[-1].ttype); ;
                   6296:     break;}
                   6297: case 491:
                   6298: #line 2780 "parse.y"
                   6299: { yyval.ttype = build_parse_node (ARRAY_REF, yyval.ttype, NULL_TREE); ;
                   6300:     break;}
                   6301: case 492:
                   6302: #line 2782 "parse.y"
                   6303: { yyval.ttype = yyvsp[-1].ttype; ;
                   6304:     break;}
                   6305: case 493:
                   6306: #line 2784 "parse.y"
                   6307: { push_nested_class (TREE_TYPE (yyval.ttype), 3);
                   6308:                  yyval.ttype = build_parse_node (SCOPE_REF, yyval.ttype, yyvsp[0].ttype);
                   6309:                  TREE_COMPLEXITY (yyval.ttype) = current_class_depth; ;
                   6310:     break;}
                   6311: case 495:
                   6312: #line 2795 "parse.y"
                   6313: { yyval.ttype = make_pointer_declarator (yyvsp[-1].ttype, yyvsp[0].ttype); ;
                   6314:     break;}
                   6315: case 496:
                   6316: #line 2797 "parse.y"
                   6317: { yyval.ttype = make_reference_declarator (yyvsp[-1].ttype, yyvsp[0].ttype); ;
                   6318:     break;}
                   6319: case 497:
                   6320: #line 2799 "parse.y"
                   6321: { yyval.ttype = make_pointer_declarator (NULL_TREE, yyvsp[0].ttype); ;
                   6322:     break;}
                   6323: case 498:
                   6324: #line 2801 "parse.y"
                   6325: { yyval.ttype = make_reference_declarator (NULL_TREE, yyvsp[0].ttype); ;
                   6326:     break;}
                   6327: case 499:
                   6328: #line 2803 "parse.y"
                   6329: { tree arg = make_pointer_declarator (yyvsp[-1].ttype, yyvsp[0].ttype);
                   6330:                  yyval.ttype = build_parse_node (SCOPE_REF, yyvsp[-2].ttype, arg);
                   6331:                ;
                   6332:     break;}
                   6333: case 501:
                   6334: #line 2811 "parse.y"
                   6335: { yyval.ttype = make_pointer_declarator (yyvsp[-1].ttype, yyvsp[0].ttype); ;
                   6336:     break;}
                   6337: case 502:
                   6338: #line 2813 "parse.y"
                   6339: { yyval.ttype = make_reference_declarator (yyvsp[-1].ttype, yyvsp[0].ttype); ;
                   6340:     break;}
                   6341: case 503:
                   6342: #line 2815 "parse.y"
                   6343: { yyval.ttype = make_pointer_declarator (NULL_TREE, yyvsp[0].ttype); ;
                   6344:     break;}
                   6345: case 504:
                   6346: #line 2817 "parse.y"
                   6347: { yyval.ttype = make_reference_declarator (NULL_TREE, yyvsp[0].ttype); ;
                   6348:     break;}
                   6349: case 505:
                   6350: #line 2819 "parse.y"
                   6351: { tree arg = make_pointer_declarator (yyvsp[-1].ttype, yyvsp[0].ttype);
                   6352:                  yyval.ttype = build_parse_node (SCOPE_REF, yyvsp[-2].ttype, arg);
                   6353:                ;
                   6354:     break;}
                   6355: case 507:
                   6356: #line 2827 "parse.y"
                   6357: { yyval.ttype = build_parse_node (CALL_EXPR, yyval.ttype, yyvsp[-2].ttype, yyvsp[0].ttype); ;
                   6358:     break;}
                   6359: case 508:
                   6360: #line 2829 "parse.y"
                   6361: { yyval.ttype = build_parse_node (CALL_EXPR, yyval.ttype, yyvsp[-2].ttype, yyvsp[0].ttype); ;
                   6362:     break;}
                   6363: case 509:
                   6364: #line 2831 "parse.y"
                   6365: { yyval.ttype = build_parse_node (CALL_EXPR, yyval.ttype, empty_parms (), yyvsp[0].ttype); ;
                   6366:     break;}
                   6367: case 510:
                   6368: #line 2833 "parse.y"
                   6369: { yyval.ttype = build_parse_node (CALL_EXPR, yyval.ttype, NULL_TREE, NULL_TREE); ;
                   6370:     break;}
                   6371: case 511:
                   6372: #line 2835 "parse.y"
                   6373: { yyval.ttype = finish_decl_parsing (yyvsp[-1].ttype); ;
                   6374:     break;}
                   6375: case 512:
                   6376: #line 2837 "parse.y"
                   6377: { yyval.ttype = yyvsp[-1].ttype; ;
                   6378:     break;}
                   6379: case 513:
                   6380: #line 2839 "parse.y"
                   6381: { yyval.ttype = build_parse_node (ARRAY_REF, yyval.ttype, yyvsp[-1].ttype); ;
                   6382:     break;}
                   6383: case 514:
                   6384: #line 2841 "parse.y"
                   6385: { yyval.ttype = build_parse_node (ARRAY_REF, yyval.ttype, NULL_TREE); ;
                   6386:     break;}
                   6387: case 515:
                   6388: #line 2846 "parse.y"
                   6389: { got_scope = NULL_TREE;
                   6390:                  yyval.ttype = build_parse_node (SCOPE_REF, yyval.ttype, yyvsp[0].ttype); ;
                   6391:     break;}
                   6392: case 516:
                   6393: #line 2852 "parse.y"
                   6394: { got_scope = NULL_TREE;
                   6395:                  yyval.ttype = build_parse_node (SCOPE_REF, yyval.ttype, yyvsp[0].ttype); ;
                   6396:     break;}
                   6397: case 518:
                   6398: #line 2859 "parse.y"
                   6399: { yyval.ttype = yyvsp[0].ttype; ;
                   6400:     break;}
                   6401: case 519:
                   6402: #line 2864 "parse.y"
                   6403: { yyval.ttype = build_functional_cast (yyval.ttype, yyvsp[-1].ttype); ;
                   6404:     break;}
                   6405: case 520:
                   6406: #line 2866 "parse.y"
                   6407: { yyval.ttype = reparse_decl_as_expr (yyval.ttype, yyvsp[-1].ttype); ;
                   6408:     break;}
                   6409: case 521:
                   6410: #line 2868 "parse.y"
                   6411: { yyval.ttype = reparse_absdcl_as_expr (yyval.ttype, yyvsp[0].ttype); ;
                   6412:     break;}
                   6413: case 525:
                   6414: #line 2879 "parse.y"
                   6415: { yyval.ttype = yyvsp[0].ttype; ;
                   6416:     break;}
                   6417: case 526:
                   6418: #line 2886 "parse.y"
                   6419: { got_scope = TREE_TYPE (yyval.ttype); ;
                   6420:     break;}
                   6421: case 527:
                   6422: #line 2888 "parse.y"
                   6423: { got_scope = TREE_TYPE (yyval.ttype); ;
                   6424:     break;}
                   6425: case 529:
                   6426: #line 2904 "parse.y"
                   6427: { yyval.ttype = yyvsp[0].ttype; ;
                   6428:     break;}
                   6429: case 531:
                   6430: #line 2910 "parse.y"
                   6431: { yyval.ttype = yyvsp[0].ttype; ;
                   6432:     break;}
                   6433: case 532:
                   6434: #line 2915 "parse.y"
                   6435: { got_scope = NULL_TREE; ;
                   6436:     break;}
                   6437: case 533:
                   6438: #line 2917 "parse.y"
                   6439: { yyval.ttype = yyvsp[-1].ttype; got_scope = NULL_TREE; ;
                   6440:     break;}
                   6441: case 534:
                   6442: #line 2924 "parse.y"
                   6443: { got_scope = void_type_node; ;
                   6444:     break;}
                   6445: case 535:
                   6446: #line 2930 "parse.y"
                   6447: { yyval.ttype = make_pointer_declarator (yyvsp[-1].ttype, yyvsp[0].ttype); ;
                   6448:     break;}
                   6449: case 536:
                   6450: #line 2932 "parse.y"
                   6451: { yyval.ttype = make_pointer_declarator (yyvsp[0].ttype, NULL_TREE); ;
                   6452:     break;}
                   6453: case 537:
                   6454: #line 2934 "parse.y"
                   6455: { yyval.ttype = make_reference_declarator (yyvsp[-1].ttype, yyvsp[0].ttype); ;
                   6456:     break;}
                   6457: case 538:
                   6458: #line 2936 "parse.y"
                   6459: { yyval.ttype = make_reference_declarator (yyvsp[0].ttype, NULL_TREE); ;
                   6460:     break;}
                   6461: case 539:
                   6462: #line 2938 "parse.y"
                   6463: { tree arg = make_pointer_declarator (yyvsp[0].ttype, NULL_TREE);
                   6464:                  yyval.ttype = build_parse_node (SCOPE_REF, yyvsp[-1].ttype, arg);
                   6465:                ;
                   6466:     break;}
                   6467: case 540:
                   6468: #line 2942 "parse.y"
                   6469: { tree arg = make_pointer_declarator (yyvsp[-1].ttype, yyvsp[0].ttype);
                   6470:                  yyval.ttype = build_parse_node (SCOPE_REF, yyvsp[-2].ttype, arg);
                   6471:                ;
                   6472:     break;}
                   6473: case 542:
                   6474: #line 2951 "parse.y"
                   6475: { yyval.ttype = build_parse_node (ARRAY_REF, NULL_TREE, yyvsp[-1].ttype); ;
                   6476:     break;}
                   6477: case 543:
                   6478: #line 2953 "parse.y"
                   6479: { yyval.ttype = build_parse_node (ARRAY_REF, yyval.ttype, yyvsp[-1].ttype); ;
                   6480:     break;}
                   6481: case 544:
                   6482: #line 2959 "parse.y"
                   6483: { yyval.ttype = make_pointer_declarator (yyvsp[-1].ttype, yyvsp[0].ttype); ;
                   6484:     break;}
                   6485: case 545:
                   6486: #line 2961 "parse.y"
                   6487: { yyval.ttype = make_pointer_declarator (NULL_TREE, yyvsp[0].ttype); ;
                   6488:     break;}
                   6489: case 546:
                   6490: #line 2963 "parse.y"
                   6491: { yyval.ttype = make_pointer_declarator (yyvsp[0].ttype, NULL_TREE); ;
                   6492:     break;}
                   6493: case 547:
                   6494: #line 2965 "parse.y"
                   6495: { yyval.ttype = make_pointer_declarator (NULL_TREE, NULL_TREE); ;
                   6496:     break;}
                   6497: case 548:
                   6498: #line 2967 "parse.y"
                   6499: { yyval.ttype = make_reference_declarator (yyvsp[-1].ttype, yyvsp[0].ttype); ;
                   6500:     break;}
                   6501: case 549:
                   6502: #line 2969 "parse.y"
                   6503: { yyval.ttype = make_reference_declarator (NULL_TREE, yyvsp[0].ttype); ;
                   6504:     break;}
                   6505: case 550:
                   6506: #line 2971 "parse.y"
                   6507: { yyval.ttype = make_reference_declarator (yyvsp[0].ttype, NULL_TREE); ;
                   6508:     break;}
                   6509: case 551:
                   6510: #line 2973 "parse.y"
                   6511: { yyval.ttype = make_reference_declarator (NULL_TREE, NULL_TREE); ;
                   6512:     break;}
                   6513: case 552:
                   6514: #line 2975 "parse.y"
                   6515: { tree arg = make_pointer_declarator (yyvsp[0].ttype, NULL_TREE);
                   6516:                  yyval.ttype = build_parse_node (SCOPE_REF, yyvsp[-1].ttype, arg);
                   6517:                ;
                   6518:     break;}
                   6519: case 553:
                   6520: #line 2979 "parse.y"
                   6521: { tree arg = make_pointer_declarator (yyvsp[-1].ttype, yyvsp[0].ttype);
                   6522:                  yyval.ttype = build_parse_node (SCOPE_REF, yyvsp[-2].ttype, arg);
                   6523:                ;
                   6524:     break;}
                   6525: case 555:
                   6526: #line 2988 "parse.y"
                   6527: { yyval.ttype = yyvsp[-1].ttype; ;
                   6528:     break;}
                   6529: case 557:
                   6530: #line 2992 "parse.y"
                   6531: { yyval.ttype = build_parse_node (CALL_EXPR, yyval.ttype, yyvsp[-2].ttype, yyvsp[0].ttype); ;
                   6532:     break;}
                   6533: case 558:
                   6534: #line 2994 "parse.y"
                   6535: { yyval.ttype = build_parse_node (CALL_EXPR, yyval.ttype, empty_parms (), yyvsp[0].ttype); ;
                   6536:     break;}
                   6537: case 559:
                   6538: #line 2996 "parse.y"
                   6539: { yyval.ttype = build_parse_node (ARRAY_REF, yyval.ttype, yyvsp[-1].ttype); ;
                   6540:     break;}
                   6541: case 560:
                   6542: #line 2998 "parse.y"
                   6543: { yyval.ttype = build_parse_node (ARRAY_REF, yyval.ttype, NULL_TREE); ;
                   6544:     break;}
                   6545: case 561:
                   6546: #line 3000 "parse.y"
                   6547: { yyval.ttype = build_parse_node (CALL_EXPR, NULL_TREE, yyvsp[-2].ttype, yyvsp[0].ttype); ;
                   6548:     break;}
                   6549: case 562:
                   6550: #line 3002 "parse.y"
                   6551: { TREE_OPERAND (yyval.ttype, 2) = yyvsp[0].ttype; ;
                   6552:     break;}
                   6553: case 563:
                   6554: #line 3004 "parse.y"
                   6555: { TREE_OPERAND (yyval.ttype, 2) = yyvsp[0].ttype; ;
                   6556:     break;}
                   6557: case 564:
                   6558: #line 3006 "parse.y"
                   6559: { yyval.ttype = build_parse_node (ARRAY_REF, NULL_TREE, yyvsp[-1].ttype); ;
                   6560:     break;}
                   6561: case 565:
                   6562: #line 3008 "parse.y"
                   6563: { yyval.ttype = build_parse_node (ARRAY_REF, NULL_TREE, NULL_TREE); ;
                   6564:     break;}
                   6565: case 571:
                   6566: #line 3030 "parse.y"
                   6567: { emit_line_note (input_filename, lineno);
                   6568:                  pushlevel (0);
                   6569:                  clear_last_expr ();
                   6570:                  push_momentary ();
                   6571:                  expand_start_bindings (0); ;
                   6572:     break;}
                   6573: case 573:
                   6574: #line 3042 "parse.y"
                   6575: { if (flag_ansi)
                   6576:                    pedwarn ("ANSI C++ forbids label declarations"); ;
                   6577:     break;}
                   6578: case 576:
                   6579: #line 3053 "parse.y"
                   6580: { tree link;
                   6581:                  for (link = yyvsp[-1].ttype; link; link = TREE_CHAIN (link))
                   6582:                    {
                   6583:                      tree label = shadow_label (TREE_VALUE (link));
                   6584:                      C_DECLARED_LABEL_FLAG (label) = 1;
                   6585:                      declare_nonlocal_label (label);
                   6586:                    }
                   6587:                ;
                   6588:     break;}
                   6589: case 577:
                   6590: #line 3067 "parse.y"
                   6591: {;
                   6592:     break;}
                   6593: case 579:
                   6594: #line 3072 "parse.y"
                   6595: { expand_end_bindings (getdecls (), kept_level_p(), 1);
                   6596:                  yyval.ttype = poplevel (kept_level_p (), 1, 0);
                   6597:                  pop_momentary (); ;
                   6598:     break;}
                   6599: case 580:
                   6600: #line 3076 "parse.y"
                   6601: { expand_end_bindings (getdecls (), kept_level_p(), 1);
                   6602:                  yyval.ttype = poplevel (kept_level_p (), 1, 0);
                   6603:                  pop_momentary (); ;
                   6604:     break;}
                   6605: case 581:
                   6606: #line 3080 "parse.y"
                   6607: { expand_end_bindings (getdecls (), kept_level_p(), 1);
                   6608:                  yyval.ttype = poplevel (kept_level_p (), 0, 0);
                   6609:                  pop_momentary (); ;
                   6610:     break;}
                   6611: case 582:
                   6612: #line 3084 "parse.y"
                   6613: { expand_end_bindings (getdecls (), kept_level_p(), 1);
                   6614:                  yyval.ttype = poplevel (kept_level_p (), 0, 0);
                   6615:                  pop_momentary (); ;
                   6616:     break;}
                   6617: case 583:
                   6618: #line 3091 "parse.y"
                   6619: { cond_stmt_keyword = "if"; ;
                   6620:     break;}
                   6621: case 584:
                   6622: #line 3093 "parse.y"
                   6623: { emit_line_note (input_filename, lineno);
                   6624:                  expand_start_cond (yyvsp[0].ttype, 0); ;
                   6625:     break;}
                   6626: case 586:
                   6627: #line 3100 "parse.y"
                   6628: { finish_stmt (); ;
                   6629:     break;}
                   6630: case 587:
                   6631: #line 3102 "parse.y"
                   6632: { expand_end_bindings (getdecls (), kept_level_p (), 1);
                   6633:                  yyval.ttype = poplevel (kept_level_p (), 1, 0);
                   6634:                  pop_momentary (); ;
                   6635:     break;}
                   6636: case 588:
                   6637: #line 3109 "parse.y"
                   6638: { finish_stmt (); ;
                   6639:     break;}
                   6640: case 590:
                   6641: #line 3115 "parse.y"
                   6642: { finish_stmt (); ;
                   6643:     break;}
                   6644: case 591:
                   6645: #line 3117 "parse.y"
                   6646: {
                   6647:                  tree expr = yyvsp[-1].ttype;
                   6648:                  emit_line_note (input_filename, lineno);
                   6649:                  /* Do default conversion if safe and possibly important,
                   6650:                     in case within ({...}).  */
                   6651:                  if ((TREE_CODE (TREE_TYPE (expr)) == ARRAY_TYPE
                   6652:                       && lvalue_p (expr))
                   6653:                      || TREE_CODE (TREE_TYPE (expr)) == FUNCTION_TYPE)
                   6654:                    expr = default_conversion (expr);
                   6655:                  cplus_expand_expr_stmt (expr);
                   6656:                  clear_momentary ();
                   6657:                  finish_stmt (); ;
                   6658:     break;}
                   6659: case 592:
                   6660: #line 3130 "parse.y"
                   6661: { expand_start_else (); ;
                   6662:     break;}
                   6663: case 593:
                   6664: #line 3132 "parse.y"
                   6665: { expand_end_cond ();
                   6666:                  expand_end_bindings (getdecls (), kept_level_p (), 1);
                   6667:                  poplevel (kept_level_p (), 1, 0);
                   6668:                  pop_momentary ();
                   6669:                  finish_stmt (); ;
                   6670:     break;}
                   6671: case 594:
                   6672: #line 3138 "parse.y"
                   6673: { expand_end_cond ();
                   6674:                  expand_end_bindings (getdecls (), kept_level_p (), 1);
                   6675:                  poplevel (kept_level_p (), 1, 0);
                   6676:                  pop_momentary ();
                   6677:                  finish_stmt (); ;
                   6678:     break;}
                   6679: case 595:
                   6680: #line 3144 "parse.y"
                   6681: { emit_nop ();
                   6682:                  emit_line_note (input_filename, lineno);
                   6683:                  expand_start_loop (1);
                   6684:                  cond_stmt_keyword = "while"; ;
                   6685:     break;}
                   6686: case 596:
                   6687: #line 3149 "parse.y"
                   6688: { expand_exit_loop_if_false (0, yyvsp[0].ttype); ;
                   6689:     break;}
                   6690: case 597:
                   6691: #line 3151 "parse.y"
                   6692: { expand_end_bindings (getdecls (), kept_level_p (), 1);
                   6693:                  poplevel (kept_level_p (), 1, 0);
                   6694:                  pop_momentary ();
                   6695:                  expand_end_loop ();
                   6696:                  finish_stmt (); ;
                   6697:     break;}
                   6698: case 598:
                   6699: #line 3157 "parse.y"
                   6700: { emit_nop ();
                   6701:                  emit_line_note (input_filename, lineno);
                   6702:                  expand_start_loop_continue_elsewhere (1); ;
                   6703:     break;}
                   6704: case 599:
                   6705: #line 3161 "parse.y"
                   6706: { expand_loop_continue_here ();
                   6707:                  cond_stmt_keyword = "do"; ;
                   6708:     break;}
                   6709: case 600:
                   6710: #line 3164 "parse.y"
                   6711: { emit_line_note (input_filename, lineno);
                   6712:                  expand_exit_loop_if_false (0, yyvsp[-1].ttype);
                   6713:                  expand_end_loop ();
                   6714:                  clear_momentary ();
                   6715:                  finish_stmt (); ;
                   6716:     break;}
                   6717: case 601:
                   6718: #line 3170 "parse.y"
                   6719: { emit_nop ();
                   6720:                  emit_line_note (input_filename, lineno);
                   6721:                  if (yyvsp[0].ttype) cplus_expand_expr_stmt (yyvsp[0].ttype);
                   6722:                  expand_start_loop_continue_elsewhere (1); ;
                   6723:     break;}
                   6724: case 602:
                   6725: #line 3175 "parse.y"
                   6726: { emit_line_note (input_filename, lineno);
                   6727:                  if (yyvsp[-1].ttype) expand_exit_loop_if_false (0, yyvsp[-1].ttype); ;
                   6728:     break;}
                   6729: case 603:
                   6730: #line 3180 "parse.y"
                   6731: { push_momentary (); ;
                   6732:     break;}
                   6733: case 604:
                   6734: #line 3182 "parse.y"
                   6735: { emit_line_note (input_filename, lineno);
                   6736:                  expand_end_bindings (getdecls (), kept_level_p (), 1);
                   6737:                  poplevel (kept_level_p (), 1, 0);
                   6738:                  pop_momentary ();
                   6739:                  expand_loop_continue_here ();
                   6740:                  if (yyvsp[-3].ttype) cplus_expand_expr_stmt (yyvsp[-3].ttype);
                   6741:                  pop_momentary ();
                   6742:                  expand_end_loop ();
                   6743:                  finish_stmt (); ;
                   6744:     break;}
                   6745: case 605:
                   6746: #line 3192 "parse.y"
                   6747: { emit_nop ();
                   6748:                  emit_line_note (input_filename, lineno);
                   6749:                  expand_start_loop_continue_elsewhere (1); ;
                   6750:     break;}
                   6751: case 606:
                   6752: #line 3196 "parse.y"
                   6753: { emit_line_note (input_filename, lineno);
                   6754:                  if (yyvsp[-1].ttype) expand_exit_loop_if_false (0, yyvsp[-1].ttype); ;
                   6755:     break;}
                   6756: case 607:
                   6757: #line 3201 "parse.y"
                   6758: { push_momentary ();
                   6759:                  yyvsp[0].itype = lineno; ;
                   6760:     break;}
                   6761: case 608:
                   6762: #line 3204 "parse.y"
                   6763: { emit_line_note (input_filename, (int) yyvsp[-2].itype);
                   6764:                  expand_end_bindings (getdecls (), kept_level_p (), 1);
                   6765:                  poplevel (kept_level_p (), 1, 0);
                   6766:                  pop_momentary ();
                   6767:                  expand_loop_continue_here ();
                   6768:                  if (yyvsp[-3].ttype) cplus_expand_expr_stmt (yyvsp[-3].ttype);
                   6769:                  pop_momentary ();
                   6770:                  expand_end_loop ();
                   6771:                  finish_stmt ();
                   6772:                ;
                   6773:     break;}
                   6774: case 609:
                   6775: #line 3215 "parse.y"
                   6776: { emit_line_note (input_filename, lineno);
                   6777:                  c_expand_start_case (yyvsp[-1].ttype);
                   6778:                  /* Don't let the tree nodes for $4 be discarded by
                   6779:                     clear_momentary during the parsing of the next stmt.  */
                   6780:                  push_momentary (); ;
                   6781:     break;}
                   6782: case 610:
                   6783: #line 3221 "parse.y"
                   6784: { expand_end_case (yyvsp[-3].ttype);
                   6785:                  pop_momentary ();
                   6786:                  expand_end_bindings (getdecls (), kept_level_p (), 1);
                   6787:                  poplevel (kept_level_p (), 1, 0);
                   6788:                  pop_momentary ();
                   6789:                  finish_stmt (); ;
                   6790:     break;}
                   6791: case 611:
                   6792: #line 3228 "parse.y"
                   6793: { register tree value = check_cp_case_value (yyvsp[-1].ttype);
                   6794:                  register tree label
                   6795:                    = build_decl (LABEL_DECL, NULL_TREE, NULL_TREE);
                   6796: 
                   6797:                  if (value != error_mark_node)
                   6798:                    {
                   6799:                      tree duplicate;
                   6800:                      int success = pushcase (value, convert_and_check,
                   6801:                                              label, &duplicate);
                   6802:                      if (success == 1)
                   6803:                        cp_error ("case label `%E' not within a switch statement", yyvsp[-1].ttype);
                   6804:                      else if (success == 2)
                   6805:                        {
                   6806:                          cp_error ("duplicate case value `%E'", yyvsp[-1].ttype);
                   6807:                          cp_error_at ("`%E' previously used here", duplicate);
                   6808:                        }
                   6809:                      else if (success == 3)
                   6810:                        warning ("case value out of range");
                   6811:                      else if (success == 5)
                   6812:                        cp_error ("case label `%E' within scope of cleanup or variable array", yyvsp[-1].ttype);
                   6813:                    }
                   6814:                  define_case_label (label);
                   6815:                ;
                   6816:     break;}
                   6817: case 613:
                   6818: #line 3253 "parse.y"
                   6819: { register tree value1 = check_cp_case_value (yyvsp[-3].ttype);
                   6820:                  register tree value2 = check_cp_case_value (yyvsp[-1].ttype);
                   6821:                  register tree label
                   6822:                    = build_decl (LABEL_DECL, NULL_TREE, NULL_TREE);
                   6823: 
                   6824:                  if (flag_ansi)
                   6825:                    pedwarn ("ANSI C++ forbids range expressions in switch statement");
                   6826:                  if (value1 != error_mark_node
                   6827:                      && value2 != error_mark_node)
                   6828:                    {
                   6829:                      tree duplicate;
                   6830:                      int success = pushcase_range (value1, value2,
                   6831:                                                    convert_and_check, label,
                   6832:                                                    &duplicate);
                   6833:                      if (success == 1)
                   6834:                        error ("case label not within a switch statement");
                   6835:                      else if (success == 2)
                   6836:                        {
                   6837:                          error ("duplicate (or overlapping) case value");
                   6838:                          error_with_decl (duplicate, "this is the first entry overlapping that value");
                   6839:                        }
                   6840:                      else if (success == 3)
                   6841:                        warning ("case value out of range");
                   6842:                      else if (success == 4)
                   6843:                        warning ("empty range specified");
                   6844:                      else if (success == 5)
                   6845:                        error ("case label within scope of cleanup or variable array");
                   6846:                    }
                   6847:                  define_case_label (label);
                   6848:                ;
                   6849:     break;}
                   6850: case 615:
                   6851: #line 3285 "parse.y"
                   6852: {
                   6853:                  tree duplicate;
                   6854:                  register tree label
                   6855:                    = build_decl (LABEL_DECL, NULL_TREE, NULL_TREE);
                   6856:                  int success = pushcase (NULL_TREE, 0, label, &duplicate);
                   6857:                  if (success == 1)
                   6858:                    error ("default label not within a switch statement");
                   6859:                  else if (success == 2)
                   6860:                    {
                   6861:                      error ("multiple default labels in one switch");
                   6862:                      error_with_decl (duplicate, "this is the first default label");
                   6863:                    }
                   6864:                  define_case_label (NULL_TREE);
                   6865:                ;
                   6866:     break;}
                   6867: case 617:
                   6868: #line 3301 "parse.y"
                   6869: { emit_line_note (input_filename, lineno);
                   6870:                  if ( ! expand_exit_something ())
                   6871:                    error ("break statement not within loop or switch"); ;
                   6872:     break;}
                   6873: case 618:
                   6874: #line 3305 "parse.y"
                   6875: { emit_line_note (input_filename, lineno);
                   6876:                  if (! expand_continue_loop (0))
                   6877:                    error ("continue statement not within a loop"); ;
                   6878:     break;}
                   6879: case 619:
                   6880: #line 3309 "parse.y"
                   6881: { emit_line_note (input_filename, lineno);
                   6882:                  c_expand_return (NULL_TREE); ;
                   6883:     break;}
                   6884: case 620:
                   6885: #line 3312 "parse.y"
                   6886: { emit_line_note (input_filename, lineno);
                   6887:                  c_expand_return (yyvsp[-1].ttype);
                   6888:                  finish_stmt ();
                   6889:                ;
                   6890:     break;}
                   6891: case 621:
                   6892: #line 3317 "parse.y"
                   6893: { if (TREE_CHAIN (yyvsp[-2].ttype)) yyvsp[-2].ttype = combine_strings (yyvsp[-2].ttype);
                   6894:                  emit_line_note (input_filename, lineno);
                   6895:                  expand_asm (yyvsp[-2].ttype);
                   6896:                  finish_stmt ();
                   6897:                ;
                   6898:     break;}
                   6899: case 622:
                   6900: #line 3324 "parse.y"
                   6901: { if (TREE_CHAIN (yyvsp[-4].ttype)) yyvsp[-4].ttype = combine_strings (yyvsp[-4].ttype);
                   6902:                  emit_line_note (input_filename, lineno);
                   6903:                  c_expand_asm_operands (yyvsp[-4].ttype, yyvsp[-2].ttype, NULL_TREE, NULL_TREE,
                   6904:                                         yyvsp[-6].ttype == ridpointers[(int)RID_VOLATILE],
                   6905:                                         input_filename, lineno);
                   6906:                  finish_stmt ();
                   6907:                ;
                   6908:     break;}
                   6909: case 623:
                   6910: #line 3333 "parse.y"
                   6911: { if (TREE_CHAIN (yyvsp[-6].ttype)) yyvsp[-6].ttype = combine_strings (yyvsp[-6].ttype);
                   6912:                  emit_line_note (input_filename, lineno);
                   6913:                  c_expand_asm_operands (yyvsp[-6].ttype, yyvsp[-4].ttype, yyvsp[-2].ttype, NULL_TREE,
                   6914:                                         yyvsp[-8].ttype == ridpointers[(int)RID_VOLATILE],
                   6915:                                         input_filename, lineno);
                   6916:                  finish_stmt ();
                   6917:                ;
                   6918:     break;}
                   6919: case 624:
                   6920: #line 3343 "parse.y"
                   6921: { if (TREE_CHAIN (yyvsp[-8].ttype)) yyvsp[-8].ttype = combine_strings (yyvsp[-8].ttype);
                   6922:                  emit_line_note (input_filename, lineno);
                   6923:                  c_expand_asm_operands (yyvsp[-8].ttype, yyvsp[-6].ttype, yyvsp[-4].ttype, yyvsp[-2].ttype,
                   6924:                                         yyvsp[-10].ttype == ridpointers[(int)RID_VOLATILE],
                   6925:                                         input_filename, lineno);
                   6926:                  finish_stmt ();
                   6927:                ;
                   6928:     break;}
                   6929: case 625:
                   6930: #line 3351 "parse.y"
                   6931: { emit_line_note (input_filename, lineno);
                   6932:                  expand_computed_goto (yyvsp[-1].ttype); ;
                   6933:     break;}
                   6934: case 626:
                   6935: #line 3354 "parse.y"
                   6936: { tree decl;
                   6937:                  emit_line_note (input_filename, lineno);
                   6938:                  decl = lookup_label (yyvsp[-1].ttype);
                   6939:                  TREE_USED (decl) = 1;
                   6940:                  expand_goto (decl); ;
                   6941:     break;}
                   6942: case 627:
                   6943: #line 3360 "parse.y"
                   6944: { finish_stmt (); ;
                   6945:     break;}
                   6946: case 628:
                   6947: #line 3362 "parse.y"
                   6948: { error ("label must be followed by statement");
                   6949:                  yyungetc ('}', 0);
                   6950:                  finish_stmt (); ;
                   6951:     break;}
                   6952: case 629:
                   6953: #line 3366 "parse.y"
                   6954: { finish_stmt (); ;
                   6955:     break;}
                   6956: case 631:
                   6957: #line 3372 "parse.y"
                   6958: { expand_start_try_stmts (); ;
                   6959:     break;}
                   6960: case 632:
                   6961: #line 3374 "parse.y"
                   6962: { expand_end_try_stmts ();
                   6963:                  expand_start_all_catch (); ;
                   6964:     break;}
                   6965: case 633:
                   6966: #line 3377 "parse.y"
                   6967: { expand_end_all_catch (); ;
                   6968:     break;}
                   6969: case 634:
                   6970: #line 3385 "parse.y"
                   6971: { expand_end_bindings (0,1,1);
                   6972:                  poplevel (2,0,0);
                   6973:                ;
                   6974:     break;}
                   6975: case 635:
                   6976: #line 3389 "parse.y"
                   6977: { expand_end_bindings (0,1,1);
                   6978:                  poplevel (2,0,0);
                   6979:                ;
                   6980:     break;}
                   6981: case 636:
                   6982: #line 3393 "parse.y"
                   6983: { expand_end_bindings (0,1,1);
                   6984:                  poplevel (2,0,0);
                   6985:                ;
                   6986:     break;}
                   6987: case 638:
                   6988: #line 3401 "parse.y"
                   6989: { emit_line_note (input_filename, lineno); ;
                   6990:     break;}
                   6991: case 639:
                   6992: #line 3403 "parse.y"
                   6993: { expand_end_catch_block (); ;
                   6994:     break;}
                   6995: case 642:
                   6996: #line 3413 "parse.y"
                   6997: { expand_start_catch_block (NULL_TREE, NULL_TREE); ;
                   6998:     break;}
                   6999: case 643:
                   7000: #line 3425 "parse.y"
                   7001: { expand_start_catch_block (TREE_PURPOSE (yyvsp[-1].ttype),
                   7002:                                            TREE_VALUE (yyvsp[-1].ttype)); ;
                   7003:     break;}
                   7004: case 644:
                   7005: #line 3431 "parse.y"
                   7006: { tree label;
                   7007:                do_label:
                   7008:                  label = define_label (input_filename, lineno, yyvsp[-1].ttype);
                   7009:                  if (label)
                   7010:                    expand_label (label);
                   7011:                ;
                   7012:     break;}
                   7013: case 645:
                   7014: #line 3438 "parse.y"
                   7015: { goto do_label; ;
                   7016:     break;}
                   7017: case 646:
                   7018: #line 3440 "parse.y"
                   7019: { goto do_label; ;
                   7020:     break;}
                   7021: case 647:
                   7022: #line 3445 "parse.y"
                   7023: { yyval.ttype = NULL_TREE; ;
                   7024:     break;}
                   7025: case 648:
                   7026: #line 3447 "parse.y"
                   7027: { yyval.ttype = yyvsp[-1].ttype; ;
                   7028:     break;}
                   7029: case 649:
                   7030: #line 3449 "parse.y"
                   7031: { yyval.ttype = NULL_TREE; ;
                   7032:     break;}
                   7033: case 650:
                   7034: #line 3454 "parse.y"
                   7035: { yyval.itype = 0; ;
                   7036:     break;}
                   7037: case 651:
                   7038: #line 3456 "parse.y"
                   7039: { yyval.itype = 0; ;
                   7040:     break;}
                   7041: case 652:
                   7042: #line 3458 "parse.y"
                   7043: { yyval.itype = 1; ;
                   7044:     break;}
                   7045: case 653:
                   7046: #line 3460 "parse.y"
                   7047: { yyval.itype = -1; ;
                   7048:     break;}
                   7049: case 654:
                   7050: #line 3467 "parse.y"
                   7051: { emit_line_note (input_filename, lineno);
                   7052:                  yyval.ttype = NULL_TREE; ;
                   7053:     break;}
                   7054: case 655:
                   7055: #line 3470 "parse.y"
                   7056: { emit_line_note (input_filename, lineno); ;
                   7057:     break;}
                   7058: case 656:
                   7059: #line 3475 "parse.y"
                   7060: { yyval.ttype = NULL_TREE; ;
                   7061:     break;}
                   7062: case 658:
                   7063: #line 3478 "parse.y"
                   7064: { yyval.ttype = NULL_TREE; ;
                   7065:     break;}
                   7066: case 659:
                   7067: #line 3484 "parse.y"
                   7068: { yyval.ttype = NULL_TREE; ;
                   7069:     break;}
                   7070: case 662:
                   7071: #line 3491 "parse.y"
                   7072: { yyval.ttype = chainon (yyval.ttype, yyvsp[0].ttype); ;
                   7073:     break;}
                   7074: case 663:
                   7075: #line 3496 "parse.y"
                   7076: { yyval.ttype = build_tree_list (yyval.ttype, yyvsp[-1].ttype); ;
                   7077:     break;}
                   7078: case 664:
                   7079: #line 3501 "parse.y"
                   7080: { yyval.ttype = tree_cons (NULL_TREE, yyval.ttype, NULL_TREE); ;
                   7081:     break;}
                   7082: case 665:
                   7083: #line 3503 "parse.y"
                   7084: { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyval.ttype); ;
                   7085:     break;}
                   7086: case 666:
                   7087: #line 3513 "parse.y"
                   7088: {
                   7089:                  if (strict_prototype)
                   7090:                    yyval.ttype = void_list_node;
                   7091:                  else
                   7092:                    yyval.ttype = NULL_TREE;
                   7093:                ;
                   7094:     break;}
                   7095: case 668:
                   7096: #line 3521 "parse.y"
                   7097: { yyval.ttype = tree_cons (NULL_TREE, yyval.ttype, void_list_node);
                   7098:                  TREE_PARMLIST (yyval.ttype) = 1; ;
                   7099:     break;}
                   7100: case 669:
                   7101: #line 3529 "parse.y"
                   7102: {
                   7103:                  yyval.ttype = chainon (yyval.ttype, void_list_node);
                   7104:                  TREE_PARMLIST (yyval.ttype) = 1;
                   7105:                ;
                   7106:     break;}
                   7107: case 670:
                   7108: #line 3534 "parse.y"
                   7109: {
                   7110:                  TREE_PARMLIST (yyval.ttype) = 1;
                   7111:                ;
                   7112:     break;}
                   7113: case 671:
                   7114: #line 3539 "parse.y"
                   7115: {
                   7116:                  TREE_PARMLIST (yyval.ttype) = 1;
                   7117:                ;
                   7118:     break;}
                   7119: case 672:
                   7120: #line 3543 "parse.y"
                   7121: {
                   7122:                  yyval.ttype = build_tree_list (NULL_TREE, yyval.ttype); 
                   7123:                  TREE_PARMLIST (yyval.ttype) = 1;
                   7124:                ;
                   7125:     break;}
                   7126: case 673:
                   7127: #line 3548 "parse.y"
                   7128: {
                   7129:                  /* ARM $8.2.5 has this as a boxed-off comment.  */
                   7130:                  if (pedantic)
                   7131:                    warning ("use of `...' without a first argument is non-portable");
                   7132:                  yyval.ttype = NULL_TREE;
                   7133:                ;
                   7134:     break;}
                   7135: case 674:
                   7136: #line 3555 "parse.y"
                   7137: {
                   7138:                  TREE_PARMLIST (yyval.ttype) = 1;
                   7139:                ;
                   7140:     break;}
                   7141: case 675:
                   7142: #line 3559 "parse.y"
                   7143: {
                   7144:                  TREE_PARMLIST (yyval.ttype) = 1;
                   7145:                ;
                   7146:     break;}
                   7147: case 676:
                   7148: #line 3563 "parse.y"
                   7149: {
                   7150:                  yyval.ttype = build_tree_list (NULL_TREE, yyval.ttype);
                   7151:                  TREE_PARMLIST (yyval.ttype) = 1;
                   7152:                ;
                   7153:     break;}
                   7154: case 677:
                   7155: #line 3568 "parse.y"
                   7156: {
                   7157:                  /* This helps us recover from really nasty
                   7158:                     parse errors, for example, a missing right
                   7159:                     parenthesis.  */
                   7160:                  yyerror ("possibly missing ')'");
                   7161:                  yyval.ttype = chainon (yyval.ttype, void_list_node);
                   7162:                  TREE_PARMLIST (yyval.ttype) = 1;
                   7163:                  yyungetc (':', 0);
                   7164:                  yychar = ')';
                   7165:                ;
                   7166:     break;}
                   7167: case 678:
                   7168: #line 3579 "parse.y"
                   7169: {
                   7170:                  /* This helps us recover from really nasty
                   7171:                     parse errors, for example, a missing right
                   7172:                     parenthesis.  */
                   7173:                  yyerror ("possibly missing ')'");
                   7174:                  yyval.ttype = tree_cons (NULL_TREE, yyval.ttype, void_list_node);
                   7175:                  TREE_PARMLIST (yyval.ttype) = 1;
                   7176:                  yyungetc (':', 0);
                   7177:                  yychar = ')';
                   7178:                ;
                   7179:     break;}
                   7180: case 679:
                   7181: #line 3594 "parse.y"
                   7182: { yyval.ttype = build_tree_list (NULL_TREE, yyval.ttype); ;
                   7183:     break;}
                   7184: case 680:
                   7185: #line 3596 "parse.y"
                   7186: { yyval.ttype = build_tree_list (yyvsp[0].ttype, yyval.ttype); ;
                   7187:     break;}
                   7188: case 681:
                   7189: #line 3598 "parse.y"
                   7190: { yyval.ttype = chainon (yyval.ttype, yyvsp[0].ttype); ;
                   7191:     break;}
                   7192: case 682:
                   7193: #line 3600 "parse.y"
                   7194: { yyval.ttype = chainon (yyval.ttype, build_tree_list (NULL_TREE, yyvsp[0].ttype)); ;
                   7195:     break;}
                   7196: case 683:
                   7197: #line 3602 "parse.y"
                   7198: { yyval.ttype = chainon (yyval.ttype, build_tree_list (yyvsp[0].ttype, yyvsp[-2].ttype)); ;
                   7199:     break;}
                   7200: case 685:
                   7201: #line 3608 "parse.y"
                   7202: { yyval.ttype = build_tree_list (NULL_TREE, yyval.ttype); ;
                   7203:     break;}
                   7204: case 686:
                   7205: #line 3631 "parse.y"
                   7206: { yyval.ttype = build_tree_list (yyval.ttype, yyvsp[0].ttype); ;
                   7207:     break;}
                   7208: case 687:
                   7209: #line 3633 "parse.y"
                   7210: { yyval.ttype = build_tree_list (yyval.ttype, yyvsp[0].ttype); ;
                   7211:     break;}
                   7212: case 688:
                   7213: #line 3635 "parse.y"
                   7214: { yyval.ttype = build_tree_list (get_decl_list (yyval.ttype), yyvsp[0].ttype); ;
                   7215:     break;}
                   7216: case 689:
                   7217: #line 3637 "parse.y"
                   7218: { yyval.ttype = build_tree_list (yyval.ttype, yyvsp[0].ttype); ;
                   7219:     break;}
                   7220: case 690:
                   7221: #line 3639 "parse.y"
                   7222: { yyval.ttype = build_tree_list (yyval.ttype, NULL_TREE); ;
                   7223:     break;}
                   7224: case 691:
                   7225: #line 3641 "parse.y"
                   7226: { yyval.ttype = build_tree_list (yyval.ttype, yyvsp[0].ttype); ;
                   7227:     break;}
                   7228: case 692:
                   7229: #line 3646 "parse.y"
                   7230: { yyval.ttype = build_tree_list (NULL_TREE, yyval.ttype); ;
                   7231:     break;}
                   7232: case 693:
                   7233: #line 3648 "parse.y"
                   7234: { yyval.ttype = build_tree_list (yyvsp[0].ttype, yyval.ttype); ;
                   7235:     break;}
                   7236: case 696:
                   7237: #line 3657 "parse.y"
                   7238: { see_typename (); ;
                   7239:     break;}
                   7240: case 697:
                   7241: #line 3680 "parse.y"
                   7242: {
                   7243:                  warning ("type specifier omitted for parameter");
                   7244:                  yyval.ttype = build_tree_list (TREE_PURPOSE (TREE_VALUE (yyvsp[-1].ttype)), NULL_TREE);
                   7245:                ;
                   7246:     break;}
                   7247: case 698:
                   7248: #line 3685 "parse.y"
                   7249: {
                   7250:                  warning ("type specifier omitted for parameter");
                   7251:                  yyval.ttype = build_tree_list (TREE_PURPOSE (TREE_VALUE (yyvsp[-2].ttype)), yyval.ttype);
                   7252:                ;
                   7253:     break;}
                   7254: case 699:
                   7255: #line 3693 "parse.y"
                   7256: { yyval.ttype = NULL_TREE; ;
                   7257:     break;}
                   7258: case 700:
                   7259: #line 3695 "parse.y"
                   7260: { yyval.ttype = yyvsp[-1].ttype; ;
                   7261:     break;}
                   7262: case 701:
                   7263: #line 3700 "parse.y"
                   7264: { yyval.ttype = build_decl_list (NULL_TREE, yyval.ttype); ;
                   7265:     break;}
                   7266: case 703:
                   7267: #line 3706 "parse.y"
                   7268: {
                   7269:                  TREE_CHAIN (yyvsp[0].ttype) = yyval.ttype;
                   7270:                  yyval.ttype = yyvsp[0].ttype;
                   7271:                ;
                   7272:     break;}
                   7273: case 704:
                   7274: #line 3714 "parse.y"
                   7275: { yyval.ttype = NULL_TREE; ;
                   7276:     break;}
                   7277: case 705:
                   7278: #line 3716 "parse.y"
                   7279: { yyval.ttype = make_pointer_declarator (yyvsp[-1].ttype, yyvsp[0].ttype); ;
                   7280:     break;}
                   7281: case 706:
                   7282: #line 3718 "parse.y"
                   7283: { yyval.ttype = make_reference_declarator (yyvsp[-1].ttype, yyvsp[0].ttype); ;
                   7284:     break;}
                   7285: case 707:
                   7286: #line 3720 "parse.y"
                   7287: { tree arg = make_pointer_declarator (yyvsp[-1].ttype, yyvsp[0].ttype);
                   7288:                  yyval.ttype = build_parse_node (SCOPE_REF, yyvsp[-2].ttype, arg);
                   7289:                ;
                   7290:     break;}
                   7291: case 708:
                   7292: #line 3726 "parse.y"
                   7293: { got_scope = NULL_TREE; ;
                   7294:     break;}
                   7295: case 709:
                   7296: #line 3731 "parse.y"
                   7297: { yyval.ttype = ansi_opname[MULT_EXPR]; ;
                   7298:     break;}
                   7299: case 710:
                   7300: #line 3733 "parse.y"
                   7301: { yyval.ttype = ansi_opname[TRUNC_DIV_EXPR]; ;
                   7302:     break;}
                   7303: case 711:
                   7304: #line 3735 "parse.y"
                   7305: { yyval.ttype = ansi_opname[TRUNC_MOD_EXPR]; ;
                   7306:     break;}
                   7307: case 712:
                   7308: #line 3737 "parse.y"
                   7309: { yyval.ttype = ansi_opname[PLUS_EXPR]; ;
                   7310:     break;}
                   7311: case 713:
                   7312: #line 3739 "parse.y"
                   7313: { yyval.ttype = ansi_opname[MINUS_EXPR]; ;
                   7314:     break;}
                   7315: case 714:
                   7316: #line 3741 "parse.y"
                   7317: { yyval.ttype = ansi_opname[BIT_AND_EXPR]; ;
                   7318:     break;}
                   7319: case 715:
                   7320: #line 3743 "parse.y"
                   7321: { yyval.ttype = ansi_opname[BIT_IOR_EXPR]; ;
                   7322:     break;}
                   7323: case 716:
                   7324: #line 3745 "parse.y"
                   7325: { yyval.ttype = ansi_opname[BIT_XOR_EXPR]; ;
                   7326:     break;}
                   7327: case 717:
                   7328: #line 3747 "parse.y"
                   7329: { yyval.ttype = ansi_opname[BIT_NOT_EXPR]; ;
                   7330:     break;}
                   7331: case 718:
                   7332: #line 3749 "parse.y"
                   7333: { yyval.ttype = ansi_opname[COMPOUND_EXPR]; ;
                   7334:     break;}
                   7335: case 719:
                   7336: #line 3751 "parse.y"
                   7337: { yyval.ttype = ansi_opname[yyvsp[0].code]; ;
                   7338:     break;}
                   7339: case 720:
                   7340: #line 3753 "parse.y"
                   7341: { yyval.ttype = ansi_opname[LT_EXPR]; ;
                   7342:     break;}
                   7343: case 721:
                   7344: #line 3755 "parse.y"
                   7345: { yyval.ttype = ansi_opname[GT_EXPR]; ;
                   7346:     break;}
                   7347: case 722:
                   7348: #line 3757 "parse.y"
                   7349: { yyval.ttype = ansi_opname[yyvsp[0].code]; ;
                   7350:     break;}
                   7351: case 723:
                   7352: #line 3759 "parse.y"
                   7353: { yyval.ttype = ansi_assopname[yyvsp[0].code]; ;
                   7354:     break;}
                   7355: case 724:
                   7356: #line 3761 "parse.y"
                   7357: { yyval.ttype = ansi_opname [MODIFY_EXPR]; ;
                   7358:     break;}
                   7359: case 725:
                   7360: #line 3763 "parse.y"
                   7361: { yyval.ttype = ansi_opname[yyvsp[0].code]; ;
                   7362:     break;}
                   7363: case 726:
                   7364: #line 3765 "parse.y"
                   7365: { yyval.ttype = ansi_opname[yyvsp[0].code]; ;
                   7366:     break;}
                   7367: case 727:
                   7368: #line 3767 "parse.y"
                   7369: { yyval.ttype = ansi_opname[POSTINCREMENT_EXPR]; ;
                   7370:     break;}
                   7371: case 728:
                   7372: #line 3769 "parse.y"
                   7373: { yyval.ttype = ansi_opname[PREDECREMENT_EXPR]; ;
                   7374:     break;}
                   7375: case 729:
                   7376: #line 3771 "parse.y"
                   7377: { yyval.ttype = ansi_opname[TRUTH_ANDIF_EXPR]; ;
                   7378:     break;}
                   7379: case 730:
                   7380: #line 3773 "parse.y"
                   7381: { yyval.ttype = ansi_opname[TRUTH_ORIF_EXPR]; ;
                   7382:     break;}
                   7383: case 731:
                   7384: #line 3775 "parse.y"
                   7385: { yyval.ttype = ansi_opname[TRUTH_NOT_EXPR]; ;
                   7386:     break;}
                   7387: case 732:
                   7388: #line 3777 "parse.y"
                   7389: { yyval.ttype = ansi_opname[COND_EXPR]; ;
                   7390:     break;}
                   7391: case 733:
                   7392: #line 3779 "parse.y"
                   7393: { yyval.ttype = ansi_opname[yyvsp[0].code]; ;
                   7394:     break;}
                   7395: case 734:
                   7396: #line 3781 "parse.y"
                   7397: { yyval.ttype = ansi_opname[COMPONENT_REF]; ;
                   7398:     break;}
                   7399: case 735:
                   7400: #line 3783 "parse.y"
                   7401: { yyval.ttype = ansi_opname[MEMBER_REF]; ;
                   7402:     break;}
                   7403: case 736:
                   7404: #line 3785 "parse.y"
                   7405: { yyval.ttype = ansi_opname[CALL_EXPR]; ;
                   7406:     break;}
                   7407: case 737:
                   7408: #line 3787 "parse.y"
                   7409: { yyval.ttype = ansi_opname[ARRAY_REF]; ;
                   7410:     break;}
                   7411: case 738:
                   7412: #line 3789 "parse.y"
                   7413: { yyval.ttype = ansi_opname[NEW_EXPR]; ;
                   7414:     break;}
                   7415: case 739:
                   7416: #line 3791 "parse.y"
                   7417: { yyval.ttype = ansi_opname[DELETE_EXPR]; ;
                   7418:     break;}
                   7419: case 740:
                   7420: #line 3793 "parse.y"
                   7421: { yyval.ttype = ansi_opname[VEC_NEW_EXPR]; ;
                   7422:     break;}
                   7423: case 741:
                   7424: #line 3795 "parse.y"
                   7425: { yyval.ttype = ansi_opname[VEC_DELETE_EXPR]; ;
                   7426:     break;}
                   7427: case 742:
                   7428: #line 3798 "parse.y"
                   7429: { yyval.ttype = grokoptypename (yyvsp[-1].ttype, yyvsp[0].ttype); ;
                   7430:     break;}
                   7431: case 743:
                   7432: #line 3800 "parse.y"
                   7433: { yyval.ttype = ansi_opname[ERROR_MARK]; ;
                   7434:     break;}
                   7435: }
                   7436:    /* the action file gets copied in in place of this dollarsign */
                   7437: #line 465 "/usr/unsupported/lib/bison.simple"
                   7438: 
                   7439:   yyvsp -= yylen;
                   7440:   yyssp -= yylen;
                   7441: #ifdef YYLSP_NEEDED
                   7442:   yylsp -= yylen;
                   7443: #endif
                   7444: 
                   7445: #if YYDEBUG != 0
                   7446:   if (yydebug)
                   7447:     {
                   7448:       short *ssp1 = yyss - 1;
                   7449:       fprintf (stderr, "state stack now");
                   7450:       while (ssp1 != yyssp)
                   7451:        fprintf (stderr, " %d", *++ssp1);
                   7452:       fprintf (stderr, "\n");
                   7453:     }
                   7454: #endif
                   7455: 
                   7456:   *++yyvsp = yyval;
                   7457: 
                   7458: #ifdef YYLSP_NEEDED
                   7459:   yylsp++;
                   7460:   if (yylen == 0)
                   7461:     {
                   7462:       yylsp->first_line = yylloc.first_line;
                   7463:       yylsp->first_column = yylloc.first_column;
                   7464:       yylsp->last_line = (yylsp-1)->last_line;
                   7465:       yylsp->last_column = (yylsp-1)->last_column;
                   7466:       yylsp->text = 0;
                   7467:     }
                   7468:   else
                   7469:     {
                   7470:       yylsp->last_line = (yylsp+yylen-1)->last_line;
                   7471:       yylsp->last_column = (yylsp+yylen-1)->last_column;
                   7472:     }
                   7473: #endif
                   7474: 
                   7475:   /* Now "shift" the result of the reduction.
                   7476:      Determine what state that goes to,
                   7477:      based on the state we popped back to
                   7478:      and the rule number reduced by.  */
                   7479: 
                   7480:   yyn = yyr1[yyn];
                   7481: 
                   7482:   yystate = yypgoto[yyn - YYNTBASE] + *yyssp;
                   7483:   if (yystate >= 0 && yystate <= YYLAST && yycheck[yystate] == *yyssp)
                   7484:     yystate = yytable[yystate];
                   7485:   else
                   7486:     yystate = yydefgoto[yyn - YYNTBASE];
                   7487: 
                   7488:   goto yynewstate;
                   7489: 
                   7490: yyerrlab:   /* here on detecting error */
                   7491: 
                   7492:   if (! yyerrstatus)
                   7493:     /* If not already recovering from an error, report this error.  */
                   7494:     {
                   7495:       ++yynerrs;
                   7496: 
                   7497: #ifdef YYERROR_VERBOSE
                   7498:       yyn = yypact[yystate];
                   7499: 
                   7500:       if (yyn > YYFLAG && yyn < YYLAST)
                   7501:        {
                   7502:          int size = 0;
                   7503:          char *msg;
                   7504:          int x, count;
                   7505: 
                   7506:          count = 0;
                   7507:          /* Start X at -yyn if nec to avoid negative indexes in yycheck.  */
                   7508:          for (x = (yyn < 0 ? -yyn : 0);
                   7509:               x < (sizeof(yytname) / sizeof(char *)); x++)
                   7510:            if (yycheck[x + yyn] == x)
                   7511:              size += strlen(yytname[x]) + 15, count++;
                   7512:          msg = (char *) malloc(size + 15);
                   7513:          if (msg != 0)
                   7514:            {
                   7515:              strcpy(msg, "parse error");
                   7516: 
                   7517:              if (count < 5)
                   7518:                {
                   7519:                  count = 0;
                   7520:                  for (x = (yyn < 0 ? -yyn : 0);
                   7521:                       x < (sizeof(yytname) / sizeof(char *)); x++)
                   7522:                    if (yycheck[x + yyn] == x)
                   7523:                      {
                   7524:                        strcat(msg, count == 0 ? ", expecting `" : " or `");
                   7525:                        strcat(msg, yytname[x]);
                   7526:                        strcat(msg, "'");
                   7527:                        count++;
                   7528:                      }
                   7529:                }
                   7530:              yyerror(msg);
                   7531:              free(msg);
                   7532:            }
                   7533:          else
                   7534:            yyerror ("parse error; also virtual memory exceeded");
                   7535:        }
                   7536:       else
                   7537: #endif /* YYERROR_VERBOSE */
                   7538:        yyerror("parse error");
                   7539:     }
                   7540: 
                   7541:   goto yyerrlab1;
                   7542: yyerrlab1:   /* here on error raised explicitly by an action */
                   7543: 
                   7544:   if (yyerrstatus == 3)
                   7545:     {
                   7546:       /* if just tried and failed to reuse lookahead token after an error, discard it.  */
                   7547: 
                   7548:       /* return failure if at end of input */
                   7549:       if (yychar == YYEOF)
                   7550:        YYABORT;
                   7551: 
                   7552: #if YYDEBUG != 0
                   7553:       if (yydebug)
                   7554:        fprintf(stderr, "Discarding token %d (%s).\n", yychar, yytname[yychar1]);
                   7555: #endif
                   7556: 
                   7557:       yychar = YYEMPTY;
                   7558:     }
                   7559: 
                   7560:   /* Else will try to reuse lookahead token
                   7561:      after shifting the error token.  */
                   7562: 
                   7563:   yyerrstatus = 3;             /* Each real token shifted decrements this */
                   7564: 
                   7565:   goto yyerrhandle;
                   7566: 
                   7567: yyerrdefault:  /* current state does not do anything special for the error token. */
                   7568: 
                   7569: #if 0
                   7570:   /* This is wrong; only states that explicitly want error tokens
                   7571:      should shift them.  */
                   7572:   yyn = yydefact[yystate];  /* If its default is to accept any token, ok.  Otherwise pop it.*/
                   7573:   if (yyn) goto yydefault;
                   7574: #endif
                   7575: 
                   7576: yyerrpop:   /* pop the current state because it cannot handle the error token */
                   7577: 
                   7578:   if (yyssp == yyss) YYABORT;
                   7579:   yyvsp--;
                   7580:   yystate = *--yyssp;
                   7581: #ifdef YYLSP_NEEDED
                   7582:   yylsp--;
                   7583: #endif
                   7584: 
                   7585: #if YYDEBUG != 0
                   7586:   if (yydebug)
                   7587:     {
                   7588:       short *ssp1 = yyss - 1;
                   7589:       fprintf (stderr, "Error: state stack now");
                   7590:       while (ssp1 != yyssp)
                   7591:        fprintf (stderr, " %d", *++ssp1);
                   7592:       fprintf (stderr, "\n");
                   7593:     }
                   7594: #endif
                   7595: 
                   7596: yyerrhandle:
                   7597: 
                   7598:   yyn = yypact[yystate];
                   7599:   if (yyn == YYFLAG)
                   7600:     goto yyerrdefault;
                   7601: 
                   7602:   yyn += YYTERROR;
                   7603:   if (yyn < 0 || yyn > YYLAST || yycheck[yyn] != YYTERROR)
                   7604:     goto yyerrdefault;
                   7605: 
                   7606:   yyn = yytable[yyn];
                   7607:   if (yyn < 0)
                   7608:     {
                   7609:       if (yyn == YYFLAG)
                   7610:        goto yyerrpop;
                   7611:       yyn = -yyn;
                   7612:       goto yyreduce;
                   7613:     }
                   7614:   else if (yyn == 0)
                   7615:     goto yyerrpop;
                   7616: 
                   7617:   if (yyn == YYFINAL)
                   7618:     YYACCEPT;
                   7619: 
                   7620: #if YYDEBUG != 0
                   7621:   if (yydebug)
                   7622:     fprintf(stderr, "Shifting error token, ");
                   7623: #endif
                   7624: 
                   7625:   *++yyvsp = yylval;
                   7626: #ifdef YYLSP_NEEDED
                   7627:   *++yylsp = yylloc;
                   7628: #endif
                   7629: 
                   7630:   yystate = yyn;
                   7631:   goto yynewstate;
                   7632: }
                   7633: #line 3803 "parse.y"
                   7634: 
                   7635: 
                   7636: #ifdef SPEW_DEBUG
                   7637: const char *
                   7638: debug_yytranslate (value)
                   7639:     int value;
                   7640: {
                   7641:   return yytname[YYTRANSLATE (value)];
                   7642: }
                   7643: 
                   7644: #endif

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.