Changes in / [4dcea3f:e39aa0f]


Ignore:
Location:
src
Files:
59 added
59 deleted
7 edited

Legend:

Unmodified
Added
Removed
  • src/Parser/lex.cc

    r4dcea3f re39aa0f  
    14671467 * Created On       : Sat Sep 22 08:58:10 2001
    14681468 * Last Modified By : Peter A. Buhr
    1469  * Last Modified On : Thu Jun 23 07:29:30 2016
    1470  * Update Count     : 457
     1469 * Last Modified On : Wed Jun 22 21:20:18 2016
     1470 * Update Count     : 456
    14711471 */
    14721472#line 20 "lex.ll"
  • src/Parser/lex.ll

    r4dcea3f re39aa0f  
    1010 * Created On       : Sat Sep 22 08:58:10 2001
    1111 * Last Modified By : Peter A. Buhr
    12  * Last Modified On : Thu Jun 23 07:29:30 2016
    13  * Update Count     : 457
     12 * Last Modified On : Wed Jun 22 21:20:18 2016
     13 * Update Count     : 456
    1414 */
    1515
     
    273273{identifier}    { IDENTIFIER_RETURN(); }
    274274{attr_identifier} { ATTRIBUTE_RETURN(); }
    275 "`"                             { BEGIN BKQUOTE; }
     275"`"                     { BEGIN BKQUOTE; }
    276276<BKQUOTE>{identifier} { IDENTIFIER_RETURN(); }
    277277<BKQUOTE>"`"    { BEGIN 0; }
  • src/Parser/parser.cc

    r4dcea3f re39aa0f  
    588588
    589589/* YYFINAL -- State number of the termination state.  */
    590 #define YYFINAL  252
     590#define YYFINAL  251
    591591/* YYLAST -- Last index in YYTABLE.  */
    592 #define YYLAST   12094
     592#define YYLAST   11428
    593593
    594594/* YYNTOKENS -- Number of terminals.  */
     
    599599#define YYNRULES  755
    600600/* YYNRULES -- Number of states.  */
    601 #define YYNSTATES  1580
     601#define YYNSTATES  1581
    602602
    603603/* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX.  */
     
    661661     134,   136,   140,   142,   146,   154,   158,   166,   168,   170,
    662662     172,   175,   178,   181,   184,   187,   190,   195,   202,   204,
    663      209,   214,   217,   222,   224,   226,   228,   230,   232,   234,
    664      236,   238,   243,   248,   250,   254,   258,   262,   264,   268,
    665      272,   274,   278,   282,   284,   288,   292,   296,   300,   302,
    666      306,   310,   312,   316,   318,   322,   324,   328,   330,   334,
    667      336,   340,   342,   348,   353,   359,   361,   363,   367,   371,
    668      374,   375,   377,   380,   386,   393,   401,   403,   407,   409,
    669      411,   413,   415,   417,   419,   421,   423,   425,   427,   429,
    670      433,   434,   436,   438,   440,   442,   444,   446,   448,   450,
    671      452,   459,   464,   467,   475,   477,   481,   483,   486,   488,
    672      491,   493,   496,   499,   505,   513,   519,   529,   535,   545,
    673      547,   551,   553,   555,   559,   563,   566,   568,   571,   574,
    674      575,   577,   580,   584,   585,   587,   590,   594,   598,   603,
    675      604,   606,   608,   611,   617,   625,   632,   639,   644,   648,
    676      653,   656,   660,   663,   667,   671,   675,   679,   685,   689,
    677      693,   698,   700,   706,   713,   719,   726,   736,   747,   757,
    678      768,   771,   773,   776,   779,   782,   784,   791,   800,   811,
    679      824,   839,   840,   842,   843,   845,   847,   851,   856,   864,
    680      865,   867,   871,   873,   877,   879,   881,   883,   887,   889,
    681      891,   893,   897,   898,   900,   904,   909,   911,   915,   917,
    682      919,   923,   927,   931,   935,   939,   942,   946,   953,   957,
    683      961,   966,   968,   971,   974,   978,   984,   993,  1001,  1009,
    684     1015,  1025,  1028,  1031,  1037,  1041,  1047,  1052,  1056,  1061,
    685     1066,  1074,  1078,  1082,  1086,  1090,  1095,  1102,  1104,  1106,
    686     1108,  1110,  1112,  1114,  1116,  1118,  1119,  1121,  1123,  1126,
    687     1128,  1130,  1132,  1134,  1136,  1138,  1140,  1141,  1147,  1149,
    688     1152,  1156,  1158,  1161,  1163,  1165,  1167,  1169,  1171,  1173,
    689     1175,  1177,  1179,  1181,  1183,  1185,  1187,  1189,  1191,  1193,
    690     1195,  1197,  1199,  1201,  1203,  1205,  1207,  1210,  1213,  1217,
    691     1221,  1223,  1227,  1229,  1232,  1235,  1238,  1243,  1248,  1253,
    692     1258,  1260,  1263,  1266,  1270,  1272,  1275,  1278,  1280,  1283,
    693     1286,  1290,  1292,  1295,  1298,  1300,  1302,  1307,  1310,  1311,
    694     1318,  1326,  1329,  1332,  1335,  1337,  1340,  1343,  1347,  1350,
    695     1354,  1356,  1359,  1363,  1366,  1369,  1374,  1375,  1377,  1380,
    696     1383,  1385,  1386,  1388,  1391,  1394,  1400,  1403,  1404,  1412,
    697     1415,  1420,  1421,  1424,  1425,  1427,  1429,  1431,  1437,  1443,
    698     1449,  1451,  1457,  1463,  1473,  1475,  1481,  1482,  1484,  1486,
    699     1492,  1494,  1496,  1502,  1508,  1510,  1514,  1518,  1523,  1525,
    700     1527,  1529,  1531,  1534,  1536,  1540,  1544,  1546,  1549,  1551,
    701     1555,  1557,  1559,  1561,  1563,  1565,  1567,  1569,  1571,  1573,
    702     1575,  1577,  1580,  1582,  1584,  1586,  1589,  1590,  1593,  1596,
    703     1598,  1603,  1604,  1606,  1609,  1613,  1618,  1621,  1624,  1626,
    704     1629,  1631,  1634,  1640,  1646,  1654,  1661,  1663,  1666,  1669,
    705     1673,  1675,  1678,  1681,  1686,  1689,  1694,  1695,  1700,  1703,
    706     1705,  1707,  1709,  1710,  1713,  1719,  1725,  1739,  1741,  1743,
    707     1747,  1751,  1754,  1758,  1762,  1765,  1770,  1772,  1779,  1789,
    708     1790,  1802,  1804,  1808,  1812,  1816,  1818,  1820,  1826,  1829,
    709     1835,  1836,  1838,  1840,  1844,  1845,  1847,  1849,  1851,  1853,
    710     1854,  1861,  1864,  1866,  1869,  1874,  1877,  1881,  1885,  1889,
    711     1894,  1900,  1906,  1912,  1919,  1921,  1923,  1925,  1929,  1930,
    712     1936,  1937,  1939,  1941,  1944,  1951,  1953,  1957,  1958,  1960,
    713     1965,  1967,  1969,  1971,  1973,  1976,  1978,  1981,  1984,  1986,
    714     1990,  1993,  1997,  2001,  2004,  2009,  2014,  2018,  2027,  2031,
    715     2034,  2036,  2039,  2046,  2055,  2059,  2062,  2066,  2070,  2075,
    716     2080,  2084,  2086,  2088,  2090,  2095,  2102,  2106,  2109,  2113,
    717     2117,  2122,  2127,  2131,  2134,  2136,  2139,  2142,  2144,  2148,
    718     2151,  2155,  2159,  2162,  2167,  2172,  2176,  2183,  2192,  2196,
    719     2199,  2201,  2204,  2207,  2210,  2214,  2218,  2221,  2226,  2231,
    720     2235,  2242,  2251,  2255,  2258,  2260,  2263,  2266,  2268,  2270,
    721     2273,  2277,  2281,  2284,  2289,  2296,  2305,  2307,  2310,  2313,
    722     2315,  2318,  2321,  2325,  2329,  2331,  2336,  2341,  2345,  2351,
    723     2360,  2364,  2367,  2371,  2373,  2379,  2385,  2392,  2399,  2401,
    724     2404,  2407,  2409,  2412,  2415,  2419,  2423,  2425,  2430,  2435,
    725     2439,  2445,  2454,  2458,  2460,  2463,  2465,  2468,  2475,  2481,
    726     2488,  2496,  2504,  2506,  2509,  2512,  2514,  2517,  2520,  2524,
    727     2528,  2530,  2535,  2540,  2544,  2553,  2557,  2559,  2561,  2564,
    728     2566,  2568,  2571,  2575,  2578,  2582,  2585,  2589,  2593,  2596,
    729     2601,  2605,  2608,  2612,  2615,  2620,  2624,  2627,  2634,  2641,
    730     2648,  2656,  2658,  2661,  2663,  2665,  2667,  2670,  2674,  2677,
    731     2681,  2684,  2688,  2692,  2697,  2700,  2704,  2709,  2712,  2718,
    732     2724,  2731,  2738,  2739,  2741,  2742
     663     209,   214,   217,   222,   225,   227,   229,   231,   233,   235,
     664     237,   239,   244,   249,   251,   255,   259,   263,   265,   269,
     665     273,   275,   279,   283,   285,   289,   293,   297,   301,   303,
     666     307,   311,   313,   317,   319,   323,   325,   329,   331,   335,
     667     337,   341,   343,   349,   354,   360,   362,   364,   368,   372,
     668     375,   376,   378,   381,   387,   394,   402,   404,   408,   410,
     669     412,   414,   416,   418,   420,   422,   424,   426,   428,   430,
     670     434,   435,   437,   439,   441,   443,   445,   447,   449,   451,
     671     453,   460,   465,   468,   476,   478,   482,   484,   487,   489,
     672     492,   494,   497,   500,   506,   514,   520,   530,   536,   546,
     673     548,   552,   554,   556,   560,   564,   567,   569,   572,   575,
     674     576,   578,   581,   585,   586,   588,   591,   595,   599,   604,
     675     605,   607,   609,   612,   618,   626,   633,   640,   645,   649,
     676     654,   657,   661,   664,   668,   672,   676,   680,   686,   690,
     677     694,   699,   701,   707,   714,   720,   727,   737,   748,   758,
     678     769,   772,   774,   777,   780,   783,   785,   792,   801,   812,
     679     825,   840,   841,   843,   844,   846,   848,   852,   857,   865,
     680     866,   868,   872,   874,   878,   880,   882,   884,   888,   890,
     681     892,   894,   898,   899,   901,   905,   910,   912,   916,   918,
     682     920,   924,   928,   932,   936,   940,   943,   947,   954,   958,
     683     962,   967,   969,   972,   975,   979,   985,   994,  1002,  1010,
     684    1016,  1026,  1029,  1032,  1038,  1042,  1048,  1053,  1057,  1062,
     685    1067,  1075,  1079,  1083,  1087,  1091,  1096,  1103,  1105,  1107,
     686    1109,  1111,  1113,  1115,  1117,  1119,  1120,  1122,  1124,  1127,
     687    1129,  1131,  1133,  1135,  1137,  1139,  1141,  1142,  1148,  1150,
     688    1153,  1157,  1159,  1162,  1164,  1166,  1168,  1170,  1172,  1174,
     689    1176,  1178,  1180,  1182,  1184,  1186,  1188,  1190,  1192,  1194,
     690    1196,  1198,  1200,  1202,  1204,  1206,  1208,  1211,  1214,  1218,
     691    1222,  1224,  1228,  1230,  1233,  1236,  1239,  1244,  1249,  1254,
     692    1259,  1261,  1264,  1267,  1271,  1273,  1276,  1279,  1281,  1284,
     693    1287,  1291,  1293,  1296,  1299,  1301,  1303,  1308,  1311,  1312,
     694    1319,  1327,  1330,  1333,  1336,  1338,  1341,  1344,  1348,  1351,
     695    1355,  1357,  1360,  1364,  1367,  1370,  1375,  1376,  1378,  1381,
     696    1384,  1386,  1387,  1389,  1392,  1395,  1401,  1404,  1405,  1413,
     697    1416,  1421,  1422,  1425,  1426,  1428,  1430,  1432,  1438,  1444,
     698    1450,  1452,  1458,  1464,  1474,  1476,  1482,  1483,  1485,  1487,
     699    1493,  1495,  1497,  1503,  1509,  1511,  1515,  1519,  1524,  1526,
     700    1528,  1530,  1532,  1535,  1537,  1541,  1545,  1547,  1550,  1552,
     701    1556,  1558,  1560,  1562,  1564,  1566,  1568,  1570,  1572,  1574,
     702    1576,  1578,  1581,  1583,  1585,  1587,  1590,  1591,  1594,  1597,
     703    1599,  1604,  1605,  1607,  1610,  1614,  1619,  1622,  1625,  1627,
     704    1630,  1632,  1635,  1641,  1647,  1655,  1662,  1664,  1667,  1670,
     705    1674,  1676,  1679,  1682,  1687,  1690,  1695,  1696,  1701,  1704,
     706    1706,  1708,  1710,  1711,  1714,  1720,  1726,  1740,  1742,  1744,
     707    1748,  1752,  1755,  1759,  1763,  1766,  1771,  1773,  1780,  1790,
     708    1791,  1803,  1805,  1809,  1813,  1817,  1819,  1821,  1827,  1830,
     709    1836,  1837,  1839,  1841,  1845,  1846,  1848,  1850,  1852,  1854,
     710    1855,  1862,  1865,  1867,  1870,  1875,  1878,  1882,  1886,  1890,
     711    1895,  1901,  1907,  1913,  1920,  1922,  1924,  1926,  1930,  1931,
     712    1937,  1938,  1940,  1942,  1945,  1952,  1954,  1958,  1959,  1961,
     713    1966,  1968,  1970,  1972,  1974,  1977,  1979,  1982,  1985,  1987,
     714    1991,  1994,  1998,  2002,  2005,  2010,  2015,  2019,  2028,  2032,
     715    2035,  2037,  2040,  2047,  2056,  2060,  2063,  2067,  2071,  2076,
     716    2081,  2085,  2087,  2089,  2091,  2096,  2103,  2107,  2110,  2114,
     717    2118,  2123,  2128,  2132,  2135,  2137,  2140,  2143,  2145,  2149,
     718    2152,  2156,  2160,  2163,  2168,  2173,  2177,  2184,  2193,  2197,
     719    2200,  2202,  2205,  2208,  2211,  2215,  2219,  2222,  2227,  2232,
     720    2236,  2243,  2252,  2256,  2259,  2261,  2264,  2267,  2269,  2271,
     721    2274,  2278,  2282,  2285,  2290,  2297,  2306,  2308,  2311,  2314,
     722    2316,  2319,  2322,  2326,  2330,  2332,  2337,  2342,  2346,  2352,
     723    2361,  2365,  2368,  2372,  2374,  2380,  2386,  2393,  2400,  2402,
     724    2405,  2408,  2410,  2413,  2416,  2420,  2424,  2426,  2431,  2436,
     725    2440,  2446,  2455,  2459,  2461,  2464,  2466,  2469,  2476,  2482,
     726    2489,  2497,  2505,  2507,  2510,  2513,  2515,  2518,  2521,  2525,
     727    2529,  2531,  2536,  2541,  2545,  2554,  2558,  2560,  2562,  2565,
     728    2567,  2569,  2572,  2576,  2579,  2583,  2586,  2590,  2594,  2597,
     729    2602,  2606,  2609,  2613,  2616,  2621,  2625,  2628,  2635,  2642,
     730    2649,  2657,  2659,  2662,  2664,  2666,  2668,  2671,  2675,  2678,
     731    2682,  2685,  2689,  2693,  2698,  2701,  2705,  2710,  2713,  2719,
     732    2725,  2732,  2739,  2740,  2742,  2743
    733733};
    734734
     
    758758     110,    -1,    76,    -1,    76,   109,   276,   110,    -1,    76,
    759759     109,   145,   110,    -1,    66,   148,    -1,    66,   109,   275,
    760      110,    -1,   118,    -1,   119,    -1,    94,    -1,   120,    -1,
    761      121,    -1,   122,    -1,   123,    -1,   148,    -1,   109,   275,
    762      110,   151,    -1,   109,   275,   110,   166,    -1,   151,    -1,
    763      152,   118,   151,    -1,   152,   124,   151,    -1,   152,   125,
    764      151,    -1,   152,    -1,   153,   120,   152,    -1,   153,   121,
    765      152,    -1,   153,    -1,   154,    88,   153,    -1,   154,    89,
    766      153,    -1,   154,    -1,   155,   126,   154,    -1,   155,   127,
    767      154,    -1,   155,    90,   154,    -1,   155,    91,   154,    -1,
    768      155,    -1,   156,    92,   155,    -1,   156,    93,   155,    -1,
    769      156,    -1,   157,   119,   156,    -1,   157,    -1,   158,   128,
    770      157,    -1,   158,    -1,   159,   129,   158,    -1,   159,    -1,
    771      160,    94,   159,    -1,   160,    -1,   161,    95,   160,    -1,
    772      161,    -1,   161,   130,   169,   117,   162,    -1,   161,   130,
    773      117,   162,    -1,   161,   130,   169,   117,   166,    -1,   162,
    774       -1,   162,    -1,   148,   131,   164,    -1,   148,   168,   164,
    775       -1,   166,   373,    -1,    -1,   164,    -1,   111,   112,    -1,
    776      111,   134,   164,   135,   112,    -1,   111,   134,   116,   167,
    777      135,   112,    -1,   111,   134,   164,   116,   167,   135,   112,
    778       -1,   165,    -1,   167,   116,   165,    -1,    97,    -1,    98,
    779       -1,    99,    -1,   100,    -1,   101,    -1,   102,    -1,   103,
    780       -1,   104,    -1,   105,    -1,   106,    -1,   164,    -1,   169,
    781      116,   164,    -1,    -1,   169,    -1,   172,    -1,   173,    -1,
    782      177,    -1,   178,    -1,   190,    -1,   192,    -1,   193,    -1,
    783      198,    -1,   128,   143,   114,   144,   115,   132,    -1,    72,
    784      117,   312,   171,    -1,   114,   115,    -1,   114,   134,   134,
    785      209,   174,   135,   115,    -1,   175,    -1,   174,   134,   175,
    786       -1,   212,    -1,    40,   212,    -1,   308,    -1,   171,   135,
    787       -1,   171,    -1,   176,   171,    -1,   170,   132,    -1,    41,
    788      109,   169,   110,   171,    -1,    41,   109,   169,   110,   171,
    789       42,   171,    -1,    43,   109,   169,   110,   183,    -1,    43,
    790      109,   169,   110,   114,   134,   205,   184,   115,    -1,    53,
    791      109,   169,   110,   183,    -1,    53,   109,   169,   110,   114,
    792      134,   205,   186,   115,    -1,   163,    -1,   163,    96,   163,
    793       -1,   310,    -1,   179,    -1,   180,   116,   179,    -1,    44,
    794      180,   117,    -1,    45,   117,    -1,   181,    -1,   182,   181,
    795       -1,   182,   171,    -1,    -1,   185,    -1,   182,   176,    -1,
    796      185,   182,   176,    -1,    -1,   187,    -1,   182,   189,    -1,
    797      182,   176,   188,    -1,   187,   182,   189,    -1,   187,   182,
    798      176,   188,    -1,    -1,   189,    -1,    56,    -1,    56,   132,
    799       -1,    47,   109,   169,   110,   171,    -1,    46,   171,    47,
    800      109,   169,   110,   132,    -1,    48,   109,   134,   191,   110,
    801      171,    -1,   170,   135,   132,   170,   132,   170,    -1,   212,
    802      170,   132,   170,    -1,    51,    72,   132,    -1,    51,   118,
    803      169,   132,    -1,    50,   132,    -1,    50,    72,   132,    -1,
    804       49,   132,    -1,    49,    72,   132,    -1,    52,   170,   132,
    805       -1,    61,   165,   132,    -1,    62,   165,   132,    -1,    62,
    806      165,    63,   164,   132,    -1,    57,   173,   194,    -1,    57,
    807      173,   196,    -1,    57,   173,   194,   196,    -1,   195,    -1,
    808       58,   109,    96,   110,   173,    -1,   195,    58,   109,    96,
    809      110,   173,    -1,    59,   109,    96,   110,   173,    -1,   195,
    810       59,   109,    96,   110,   173,    -1,    58,   109,   134,   134,
    811      197,   135,   110,   173,   135,    -1,   195,    58,   109,   134,
    812      134,   197,   135,   110,   173,   135,    -1,    59,   109,   134,
    813      134,   197,   135,   110,   173,   135,    -1,   195,    59,   109,
    814      134,   134,   197,   135,   110,   173,   135,    -1,    60,   173,
    815       -1,   225,    -1,   225,   309,    -1,   225,   357,    -1,   366,
    816      139,    -1,   366,    -1,    64,   199,   109,   141,   110,   132,
    817       -1,    64,   199,   109,   141,   117,   200,   110,   132,    -1,
    818       64,   199,   109,   141,   117,   200,   117,   200,   110,   132,
    819       -1,    64,   199,   109,   141,   117,   200,   117,   200,   117,
    820      203,   110,   132,    -1,    64,   199,    51,   109,   141,   117,
    821      117,   200,   117,   203,   117,   204,   110,   132,    -1,    -1,
    822       11,    -1,    -1,   201,    -1,   202,    -1,   201,   116,   202,
    823       -1,   141,   109,   163,   110,    -1,   111,   163,   112,   141,
    824      109,   163,   110,    -1,    -1,   141,    -1,   203,   116,   141,
    825       -1,   139,    -1,   204,   116,   139,    -1,   135,    -1,   206,
    826       -1,   212,    -1,   206,   134,   212,    -1,   135,    -1,   208,
    827       -1,   222,    -1,   208,   134,   222,    -1,    -1,   210,    -1,
    828       29,   211,   132,    -1,   210,    29,   211,   132,    -1,   274,
    829       -1,   211,   116,   274,    -1,   213,    -1,   222,    -1,   214,
    830      135,   132,    -1,   219,   135,   132,    -1,   216,   135,   132,
    831       -1,   293,   135,   132,    -1,   296,   135,   132,    -1,   215,
    832      277,    -1,   231,   215,   277,    -1,   214,   135,   116,   134,
    833      272,   277,    -1,   367,   272,   311,    -1,   370,   272,   311,
    834       -1,   227,   370,   272,   311,    -1,   217,    -1,   227,   217,
    835       -1,   231,   217,    -1,   231,   227,   217,    -1,   216,   135,
    836      116,   134,   272,    -1,   111,   112,   272,   109,   134,   260,
    837      135,   110,    -1,   370,   272,   109,   134,   260,   135,   110,
    838       -1,   218,   272,   109,   134,   260,   135,   110,    -1,   111,
    839      134,   262,   135,   112,    -1,   111,   134,   262,   135,   116,
    840      134,   263,   135,   112,    -1,     3,   215,    -1,     3,   217,
    841       -1,   219,   135,   116,   134,   139,    -1,     3,   225,   309,
    842       -1,   220,   135,   116,   134,   309,    -1,   227,     3,   225,
    843      309,    -1,   225,     3,   309,    -1,   225,     3,   227,   309,
    844       -1,     3,   139,   131,   164,    -1,   221,   135,   116,   134,
    845      139,   131,   164,    -1,   223,   135,   132,    -1,   220,   135,
    846      132,    -1,   221,   135,   132,    -1,   240,   135,   132,    -1,
    847      224,   309,   311,   277,    -1,   223,   116,   312,   309,   311,
    848      277,    -1,   236,    -1,   240,    -1,   242,    -1,   283,    -1,
    849      237,    -1,   241,    -1,   243,    -1,   284,    -1,    -1,   227,
    850       -1,   228,    -1,   227,   228,    -1,   229,    -1,   314,    -1,
    851       10,    -1,    12,    -1,    11,    -1,    14,    -1,    67,    -1,
    852       -1,    13,   109,   230,   286,   110,    -1,   232,    -1,   227,
    853      232,    -1,   231,   227,   232,    -1,   233,    -1,   232,   233,
    854       -1,   234,    -1,     5,    -1,     7,    -1,     4,    -1,     6,
    855       -1,     8,    -1,     9,    -1,    69,    -1,    71,    -1,    16,
    856       -1,    21,    -1,    20,    -1,    18,    -1,    19,    -1,    17,
    857       -1,    22,    -1,    23,    -1,    15,    -1,    25,    -1,    26,
    858       -1,    27,    -1,    24,    -1,   237,    -1,   231,   237,    -1,
    859      236,   233,    -1,   236,   233,   227,    -1,   236,   233,   237,
    860       -1,   238,    -1,   226,   239,   226,    -1,   235,    -1,   227,
    861      235,    -1,   238,   228,    -1,   238,   235,    -1,    28,   109,
    862      276,   110,    -1,    28,   109,   169,   110,    -1,    78,   109,
    863      276,   110,    -1,    78,   109,   169,   110,    -1,   241,    -1,
    864      231,   241,    -1,   240,   233,    -1,   240,   233,   227,    -1,
    865      244,    -1,   227,   244,    -1,   241,   228,    -1,   243,    -1,
    866      231,   243,    -1,   242,   233,    -1,   242,   233,   227,    -1,
    867       74,    -1,   227,    74,    -1,   243,   228,    -1,   245,    -1,
    868      256,    -1,   247,   114,   248,   115,    -1,   247,   274,    -1,
    869       -1,   247,   274,   246,   114,   248,   115,    -1,   247,   109,
    870      292,   110,   114,   248,   115,    -1,   247,   285,    -1,    31,
    871      312,    -1,    32,   312,    -1,   249,    -1,   248,   249,    -1,
    872      250,   132,    -1,    40,   250,   132,    -1,   251,   132,    -1,
    873       40,   251,   132,    -1,   366,    -1,   366,   274,    -1,   250,
    874      116,   274,    -1,   250,   116,    -1,   225,   252,    -1,   251,
    875      116,   312,   252,    -1,    -1,   254,    -1,   318,   253,    -1,
    876      331,   253,    -1,   357,    -1,    -1,   254,    -1,   117,   163,
    877       -1,    30,   312,    -1,   255,   114,   258,   372,   115,    -1,
    878      255,   274,    -1,    -1,   255,   274,   257,   114,   258,   372,
    879      115,    -1,   274,   259,    -1,   258,   116,   274,   259,    -1,
    880       -1,   131,   163,    -1,    -1,   261,    -1,   263,    -1,   262,
    881       -1,   262,   135,   116,   134,   263,    -1,   263,   135,   116,
    882      134,    96,    -1,   262,   135,   116,   134,    96,    -1,   267,
    883       -1,   263,   135,   116,   134,   267,    -1,   262,   135,   116,
    884      134,   267,    -1,   262,   135,   116,   134,   263,   135,   116,
    885      134,   267,    -1,   268,    -1,   263,   135,   116,   134,   268,
    886       -1,    -1,   265,    -1,   266,    -1,   266,   135,   116,   134,
    887       96,    -1,   270,    -1,   269,    -1,   266,   135,   116,   134,
    888      270,    -1,   266,   135,   116,   134,   269,    -1,   269,    -1,
    889      362,   272,   373,    -1,   370,   272,   373,    -1,   227,   370,
    890      272,   373,    -1,   217,    -1,   270,    -1,   362,    -1,   370,
    891       -1,   227,   370,    -1,   371,    -1,   224,   336,   373,    -1,
    892      224,   340,   373,    -1,   224,    -1,   224,   351,    -1,   139,
    893       -1,   271,   116,   139,    -1,   137,    -1,    74,    -1,    75,
    894       -1,   138,    -1,    74,    -1,    75,    -1,   139,    -1,    74,
    895       -1,    75,    -1,   366,    -1,   225,    -1,   225,   357,    -1,
    896      366,    -1,   371,    -1,   225,    -1,   225,   345,    -1,    -1,
    897      131,   278,    -1,   107,   278,    -1,   164,    -1,   114,   279,
    898      372,   115,    -1,    -1,   278,    -1,   280,   278,    -1,   279,
    899      116,   278,    -1,   279,   116,   280,   278,    -1,   281,   117,
    900       -1,   274,   117,    -1,   282,    -1,   281,   282,    -1,    80,
    901       -1,   113,   274,    -1,   111,   134,   164,   135,   112,    -1,
    902      111,   134,   310,   135,   112,    -1,   111,   134,   163,    96,
    903      163,   135,   112,    -1,   113,   111,   134,   146,   135,   112,
    904       -1,   284,    -1,   231,   284,    -1,   283,   233,    -1,   283,
    905      233,   227,    -1,   285,    -1,   227,   285,    -1,   284,   228,
    906       -1,    75,   109,   292,   110,    -1,   287,   373,    -1,   286,
    907      116,   287,   373,    -1,    -1,   289,   274,   288,   290,    -1,
    908      225,   336,    -1,    33,    -1,    35,    -1,    34,    -1,    -1,
    909      290,   291,    -1,   129,   274,   109,   292,   110,    -1,   129,
    910      114,   134,   298,   115,    -1,   129,   109,   134,   286,   135,
    911      110,   114,   134,   298,   115,   109,   292,   110,    -1,   276,
    912       -1,   164,    -1,   292,   116,   276,    -1,   292,   116,   164,
    913       -1,    33,   294,    -1,   232,    33,   294,    -1,   293,   116,
    914      294,    -1,   295,   290,    -1,   295,   290,   131,   276,    -1,
    915      274,    -1,   273,   109,   134,   286,   135,   110,    -1,    36,
    916      274,   109,   134,   286,   135,   110,   114,   115,    -1,    -1,
    917       36,   274,   109,   134,   286,   135,   110,   114,   297,   298,
    918      115,    -1,   299,    -1,   298,   134,   299,    -1,   300,   135,
    919      132,    -1,   301,   135,   132,    -1,   215,    -1,   217,    -1,
    920      300,   135,   116,   134,   272,    -1,   225,   309,    -1,   301,
    921      135,   116,   134,   309,    -1,    -1,   303,    -1,   305,    -1,
    922      303,   134,   305,    -1,    -1,   303,    -1,   212,    -1,   307,
    923       -1,   198,    -1,    -1,     5,    82,   306,   114,   304,   115,
    924       -1,    40,   305,    -1,   308,    -1,   323,   173,    -1,   327,
    925      134,   207,   173,    -1,   216,   173,    -1,   224,   323,   173,
    926       -1,   227,   323,   173,    -1,   231,   323,   173,    -1,   231,
    927      227,   323,   173,    -1,   224,   327,   134,   207,   173,    -1,
    928      227,   327,   134,   207,   173,    -1,   231,   327,   134,   207,
    929      173,    -1,   231,   227,   327,   134,   207,   173,    -1,   318,
    930       -1,   331,    -1,   323,    -1,   163,   123,   163,    -1,    -1,
    931       64,   109,   141,   110,   312,    -1,    -1,   313,    -1,   314,
    932       -1,   313,   314,    -1,    39,   109,   109,   315,   110,   110,
    933       -1,   316,    -1,   315,   116,   316,    -1,    -1,   317,    -1,
    934      317,   109,   170,   110,    -1,   272,    -1,   234,    -1,   235,
    935       -1,   228,    -1,   319,   312,    -1,   320,    -1,   321,   312,
    936       -1,   322,   312,    -1,   137,    -1,   109,   319,   110,    -1,
    937      149,   318,    -1,   149,   227,   318,    -1,   109,   320,   110,
    938       -1,   319,   349,    -1,   109,   320,   110,   349,    -1,   109,
    939      321,   110,   350,    -1,   109,   321,   110,    -1,   109,   320,
    940      110,   109,   134,   264,   135,   110,    -1,   109,   322,   110,
    941       -1,   324,   312,    -1,   325,    -1,   326,   312,    -1,   319,
    942      109,   134,   264,   135,   110,    -1,   109,   325,   110,   109,
    943      134,   264,   135,   110,    -1,   109,   324,   110,    -1,   149,
    944      323,    -1,   149,   227,   323,    -1,   109,   325,   110,    -1,
    945      109,   325,   110,   349,    -1,   109,   326,   110,   350,    -1,
    946      109,   326,   110,    -1,   328,    -1,   329,    -1,   330,    -1,
    947      319,   109,   271,   110,    -1,   109,   329,   110,   109,   271,
    948      110,    -1,   109,   328,   110,    -1,   149,   327,    -1,   149,
    949      227,   327,    -1,   109,   329,   110,    -1,   109,   329,   110,
    950      349,    -1,   109,   330,   110,   350,    -1,   109,   330,   110,
    951       -1,   332,   312,    -1,   333,    -1,   334,   312,    -1,   335,
    952      312,    -1,   341,    -1,   109,   332,   110,    -1,   149,   331,
    953       -1,   149,   227,   331,    -1,   109,   333,   110,    -1,   332,
    954      349,    -1,   109,   333,   110,   349,    -1,   109,   334,   110,
    955      350,    -1,   109,   334,   110,    -1,   332,   109,   134,   264,
    956      135,   110,    -1,   109,   333,   110,   109,   134,   264,   135,
    957      110,    -1,   109,   335,   110,    -1,   319,   312,    -1,   337,
    958       -1,   338,   312,    -1,   339,   312,    -1,   149,   336,    -1,
    959      149,   227,   336,    -1,   109,   337,   110,    -1,   319,   355,
    960       -1,   109,   337,   110,   349,    -1,   109,   338,   110,   350,
    961       -1,   109,   338,   110,    -1,   319,   109,   134,   264,   135,
    962      110,    -1,   109,   337,   110,   109,   134,   264,   135,   110,
    963       -1,   109,   339,   110,    -1,   341,   312,    -1,   342,    -1,
    964      343,   312,    -1,   344,   312,    -1,    74,    -1,    75,    -1,
    965      149,   340,    -1,   149,   227,   340,    -1,   109,   342,   110,
    966       -1,   341,   355,    -1,   109,   342,   110,   355,    -1,   341,
    967      109,   134,   264,   135,   110,    -1,   109,   342,   110,   109,
    968      134,   264,   135,   110,    -1,   346,    -1,   347,   312,    -1,
    969      348,   312,    -1,   149,    -1,   149,   227,    -1,   149,   345,
    970       -1,   149,   227,   345,    -1,   109,   346,   110,    -1,   349,
    971       -1,   109,   346,   110,   349,    -1,   109,   347,   110,   350,
    972       -1,   109,   347,   110,    -1,   109,   134,   264,   135,   110,
    973       -1,   109,   346,   110,   109,   134,   264,   135,   110,    -1,
    974      109,   348,   110,    -1,   111,   112,    -1,   111,   112,   350,
    975       -1,   350,    -1,   111,   134,   164,   135,   112,    -1,   111,
    976      134,   118,   135,   112,    -1,   350,   111,   134,   164,   135,
    977      112,    -1,   350,   111,   134,   118,   135,   112,    -1,   352,
    978       -1,   353,   312,    -1,   354,   312,    -1,   149,    -1,   149,
    979      227,    -1,   149,   351,    -1,   149,   227,   351,    -1,   109,
    980      352,   110,    -1,   355,    -1,   109,   352,   110,   355,    -1,
    981      109,   353,   110,   350,    -1,   109,   353,   110,    -1,   109,
    982      134,   264,   135,   110,    -1,   109,   352,   110,   109,   134,
    983      264,   135,   110,    -1,   109,   354,   110,    -1,   356,    -1,
    984      356,   350,    -1,   350,    -1,   111,   112,    -1,   111,   134,
    985      227,   118,   135,   112,    -1,   111,   134,   227,   135,   112,
    986       -1,   111,   134,   227,   164,   135,   112,    -1,   111,   134,
    987        7,   226,   164,   135,   112,    -1,   111,   134,   227,     7,
    988      164,   135,   112,    -1,   358,    -1,   359,   312,    -1,   360,
    989      312,    -1,   149,    -1,   149,   227,    -1,   149,   357,    -1,
    990      149,   227,   357,    -1,   109,   358,   110,    -1,   349,    -1,
    991      109,   358,   110,   349,    -1,   109,   359,   110,   350,    -1,
    992      109,   359,   110,    -1,   109,   358,   110,   109,   134,   264,
    993      135,   110,    -1,   109,   360,   110,    -1,   362,    -1,   370,
    994       -1,   227,   370,    -1,   363,    -1,   364,    -1,   149,   225,
     760     110,    -1,    94,   139,    -1,   118,    -1,   119,    -1,   120,
     761      -1,   121,    -1,   122,    -1,   123,    -1,   148,    -1,   109,
     762     275,   110,   151,    -1,   109,   275,   110,   166,    -1,   151,
     763      -1,   152,   118,   151,    -1,   152,   124,   151,    -1,   152,
     764     125,   151,    -1,   152,    -1,   153,   120,   152,    -1,   153,
     765     121,   152,    -1,   153,    -1,   154,    88,   153,    -1,   154,
     766      89,   153,    -1,   154,    -1,   155,   126,   154,    -1,   155,
     767     127,   154,    -1,   155,    90,   154,    -1,   155,    91,   154,
     768      -1,   155,    -1,   156,    92,   155,    -1,   156,    93,   155,
     769      -1,   156,    -1,   157,   119,   156,    -1,   157,    -1,   158,
     770     128,   157,    -1,   158,    -1,   159,   129,   158,    -1,   159,
     771      -1,   160,    94,   159,    -1,   160,    -1,   161,    95,   160,
     772      -1,   161,    -1,   161,   130,   169,   117,   162,    -1,   161,
     773     130,   117,   162,    -1,   161,   130,   169,   117,   166,    -1,
     774     162,    -1,   162,    -1,   148,   131,   164,    -1,   148,   168,
     775     164,    -1,   166,   373,    -1,    -1,   164,    -1,   111,   112,
     776      -1,   111,   134,   164,   135,   112,    -1,   111,   134,   116,
     777     167,   135,   112,    -1,   111,   134,   164,   116,   167,   135,
     778     112,    -1,   165,    -1,   167,   116,   165,    -1,    97,    -1,
     779      98,    -1,    99,    -1,   100,    -1,   101,    -1,   102,    -1,
     780     103,    -1,   104,    -1,   105,    -1,   106,    -1,   164,    -1,
     781     169,   116,   164,    -1,    -1,   169,    -1,   172,    -1,   173,
     782      -1,   177,    -1,   178,    -1,   190,    -1,   192,    -1,   193,
     783      -1,   198,    -1,   128,   143,   114,   144,   115,   132,    -1,
     784     139,   117,   312,   171,    -1,   114,   115,    -1,   114,   134,
     785     134,   209,   174,   135,   115,    -1,   175,    -1,   174,   134,
     786     175,    -1,   212,    -1,    40,   212,    -1,   308,    -1,   171,
     787     135,    -1,   171,    -1,   176,   171,    -1,   170,   132,    -1,
     788      41,   109,   169,   110,   171,    -1,    41,   109,   169,   110,
     789     171,    42,   171,    -1,    43,   109,   169,   110,   183,    -1,
     790      43,   109,   169,   110,   114,   134,   205,   184,   115,    -1,
     791      53,   109,   169,   110,   183,    -1,    53,   109,   169,   110,
     792     114,   134,   205,   186,   115,    -1,   163,    -1,   163,    96,
     793     163,    -1,   310,    -1,   179,    -1,   180,   116,   179,    -1,
     794      44,   180,   117,    -1,    45,   117,    -1,   181,    -1,   182,
     795     181,    -1,   182,   171,    -1,    -1,   185,    -1,   182,   176,
     796      -1,   185,   182,   176,    -1,    -1,   187,    -1,   182,   189,
     797      -1,   182,   176,   188,    -1,   187,   182,   189,    -1,   187,
     798     182,   176,   188,    -1,    -1,   189,    -1,    56,    -1,    56,
     799     132,    -1,    47,   109,   169,   110,   171,    -1,    46,   171,
     800      47,   109,   169,   110,   132,    -1,    48,   109,   134,   191,
     801     110,   171,    -1,   170,   135,   132,   170,   132,   170,    -1,
     802     212,   170,   132,   170,    -1,    51,   139,   132,    -1,    51,
     803     118,   169,   132,    -1,    50,   132,    -1,    50,   139,   132,
     804      -1,    49,   132,    -1,    49,   139,   132,    -1,    52,   170,
     805     132,    -1,    61,   165,   132,    -1,    62,   165,   132,    -1,
     806      62,   165,    63,   164,   132,    -1,    57,   173,   194,    -1,
     807      57,   173,   196,    -1,    57,   173,   194,   196,    -1,   195,
     808      -1,    58,   109,    96,   110,   173,    -1,   195,    58,   109,
     809      96,   110,   173,    -1,    59,   109,    96,   110,   173,    -1,
     810     195,    59,   109,    96,   110,   173,    -1,    58,   109,   134,
     811     134,   197,   135,   110,   173,   135,    -1,   195,    58,   109,
     812     134,   134,   197,   135,   110,   173,   135,    -1,    59,   109,
     813     134,   134,   197,   135,   110,   173,   135,    -1,   195,    59,
     814     109,   134,   134,   197,   135,   110,   173,   135,    -1,    60,
     815     173,    -1,   225,    -1,   225,   309,    -1,   225,   357,    -1,
     816     366,   139,    -1,   366,    -1,    64,   199,   109,   141,   110,
     817     132,    -1,    64,   199,   109,   141,   117,   200,   110,   132,
     818      -1,    64,   199,   109,   141,   117,   200,   117,   200,   110,
     819     132,    -1,    64,   199,   109,   141,   117,   200,   117,   200,
     820     117,   203,   110,   132,    -1,    64,   199,    51,   109,   141,
     821     117,   117,   200,   117,   203,   117,   204,   110,   132,    -1,
     822      -1,    11,    -1,    -1,   201,    -1,   202,    -1,   201,   116,
     823     202,    -1,   141,   109,   163,   110,    -1,   111,   163,   112,
     824     141,   109,   163,   110,    -1,    -1,   141,    -1,   203,   116,
     825     141,    -1,   139,    -1,   204,   116,   139,    -1,   135,    -1,
     826     206,    -1,   212,    -1,   206,   134,   212,    -1,   135,    -1,
     827     208,    -1,   222,    -1,   208,   134,   222,    -1,    -1,   210,
     828      -1,    29,   211,   132,    -1,   210,    29,   211,   132,    -1,
     829     274,    -1,   211,   116,   274,    -1,   213,    -1,   222,    -1,
     830     214,   135,   132,    -1,   219,   135,   132,    -1,   216,   135,
     831     132,    -1,   293,   135,   132,    -1,   296,   135,   132,    -1,
     832     215,   277,    -1,   231,   215,   277,    -1,   214,   135,   116,
     833     134,   272,   277,    -1,   367,   272,   311,    -1,   370,   272,
     834     311,    -1,   227,   370,   272,   311,    -1,   217,    -1,   227,
     835     217,    -1,   231,   217,    -1,   231,   227,   217,    -1,   216,
     836     135,   116,   134,   272,    -1,   111,   112,   272,   109,   134,
     837     260,   135,   110,    -1,   370,   272,   109,   134,   260,   135,
     838     110,    -1,   218,   272,   109,   134,   260,   135,   110,    -1,
     839     111,   134,   262,   135,   112,    -1,   111,   134,   262,   135,
     840     116,   134,   263,   135,   112,    -1,     3,   215,    -1,     3,
     841     217,    -1,   219,   135,   116,   134,   139,    -1,     3,   225,
     842     309,    -1,   220,   135,   116,   134,   309,    -1,   227,     3,
     843     225,   309,    -1,   225,     3,   309,    -1,   225,     3,   227,
     844     309,    -1,     3,   139,   131,   164,    -1,   221,   135,   116,
     845     134,   139,   131,   164,    -1,   223,   135,   132,    -1,   220,
     846     135,   132,    -1,   221,   135,   132,    -1,   240,   135,   132,
     847      -1,   224,   309,   311,   277,    -1,   223,   116,   312,   309,
     848     311,   277,    -1,   236,    -1,   240,    -1,   242,    -1,   283,
     849      -1,   237,    -1,   241,    -1,   243,    -1,   284,    -1,    -1,
     850     227,    -1,   228,    -1,   227,   228,    -1,   229,    -1,   314,
     851      -1,    10,    -1,    12,    -1,    11,    -1,    14,    -1,    67,
     852      -1,    -1,    13,   109,   230,   286,   110,    -1,   232,    -1,
     853     227,   232,    -1,   231,   227,   232,    -1,   233,    -1,   232,
     854     233,    -1,   234,    -1,     5,    -1,     7,    -1,     4,    -1,
     855       6,    -1,     8,    -1,     9,    -1,    69,    -1,    71,    -1,
     856      16,    -1,    21,    -1,    20,    -1,    18,    -1,    19,    -1,
     857      17,    -1,    22,    -1,    23,    -1,    15,    -1,    25,    -1,
     858      26,    -1,    27,    -1,    24,    -1,   237,    -1,   231,   237,
     859      -1,   236,   233,    -1,   236,   233,   227,    -1,   236,   233,
     860     237,    -1,   238,    -1,   226,   239,   226,    -1,   235,    -1,
     861     227,   235,    -1,   238,   228,    -1,   238,   235,    -1,    28,
     862     109,   276,   110,    -1,    28,   109,   169,   110,    -1,    78,
     863     109,   276,   110,    -1,    78,   109,   169,   110,    -1,   241,
     864      -1,   231,   241,    -1,   240,   233,    -1,   240,   233,   227,
     865      -1,   244,    -1,   227,   244,    -1,   241,   228,    -1,   243,
     866      -1,   231,   243,    -1,   242,   233,    -1,   242,   233,   227,
     867      -1,    74,    -1,   227,    74,    -1,   243,   228,    -1,   245,
     868      -1,   256,    -1,   247,   114,   248,   115,    -1,   247,   274,
     869      -1,    -1,   247,   274,   246,   114,   248,   115,    -1,   247,
     870     109,   292,   110,   114,   248,   115,    -1,   247,   285,    -1,
     871      31,   312,    -1,    32,   312,    -1,   249,    -1,   248,   249,
     872      -1,   250,   132,    -1,    40,   250,   132,    -1,   251,   132,
     873      -1,    40,   251,   132,    -1,   366,    -1,   366,   274,    -1,
     874     250,   116,   274,    -1,   250,   116,    -1,   225,   252,    -1,
     875     251,   116,   312,   252,    -1,    -1,   254,    -1,   318,   253,
     876      -1,   331,   253,    -1,   357,    -1,    -1,   254,    -1,   117,
     877     163,    -1,    30,   312,    -1,   255,   114,   258,   372,   115,
     878      -1,   255,   274,    -1,    -1,   255,   274,   257,   114,   258,
     879     372,   115,    -1,   274,   259,    -1,   258,   116,   274,   259,
     880      -1,    -1,   131,   163,    -1,    -1,   261,    -1,   263,    -1,
     881     262,    -1,   262,   135,   116,   134,   263,    -1,   263,   135,
     882     116,   134,    96,    -1,   262,   135,   116,   134,    96,    -1,
     883     267,    -1,   263,   135,   116,   134,   267,    -1,   262,   135,
     884     116,   134,   267,    -1,   262,   135,   116,   134,   263,   135,
     885     116,   134,   267,    -1,   268,    -1,   263,   135,   116,   134,
     886     268,    -1,    -1,   265,    -1,   266,    -1,   266,   135,   116,
     887     134,    96,    -1,   270,    -1,   269,    -1,   266,   135,   116,
     888     134,   270,    -1,   266,   135,   116,   134,   269,    -1,   269,
     889      -1,   362,   272,   373,    -1,   370,   272,   373,    -1,   227,
     890     370,   272,   373,    -1,   217,    -1,   270,    -1,   362,    -1,
     891     370,    -1,   227,   370,    -1,   371,    -1,   224,   336,   373,
     892      -1,   224,   340,   373,    -1,   224,    -1,   224,   351,    -1,
     893     139,    -1,   271,   116,   139,    -1,   137,    -1,    74,    -1,
     894      75,    -1,   138,    -1,    74,    -1,    75,    -1,   139,    -1,
     895      74,    -1,    75,    -1,   366,    -1,   225,    -1,   225,   357,
     896      -1,   366,    -1,   371,    -1,   225,    -1,   225,   345,    -1,
     897      -1,   131,   278,    -1,   107,   278,    -1,   164,    -1,   114,
     898     279,   372,   115,    -1,    -1,   278,    -1,   280,   278,    -1,
     899     279,   116,   278,    -1,   279,   116,   280,   278,    -1,   281,
     900     117,    -1,   274,   117,    -1,   282,    -1,   281,   282,    -1,
     901      80,    -1,   113,   274,    -1,   111,   134,   164,   135,   112,
     902      -1,   111,   134,   310,   135,   112,    -1,   111,   134,   163,
     903      96,   163,   135,   112,    -1,   113,   111,   134,   146,   135,
     904     112,    -1,   284,    -1,   231,   284,    -1,   283,   233,    -1,
     905     283,   233,   227,    -1,   285,    -1,   227,   285,    -1,   284,
     906     228,    -1,    75,   109,   292,   110,    -1,   287,   373,    -1,
     907     286,   116,   287,   373,    -1,    -1,   289,   274,   288,   290,
     908      -1,   225,   336,    -1,    33,    -1,    35,    -1,    34,    -1,
     909      -1,   290,   291,    -1,   129,   274,   109,   292,   110,    -1,
     910     129,   114,   134,   298,   115,    -1,   129,   109,   134,   286,
     911     135,   110,   114,   134,   298,   115,   109,   292,   110,    -1,
     912     276,    -1,   164,    -1,   292,   116,   276,    -1,   292,   116,
     913     164,    -1,    33,   294,    -1,   232,    33,   294,    -1,   293,
     914     116,   294,    -1,   295,   290,    -1,   295,   290,   131,   276,
     915      -1,   274,    -1,   273,   109,   134,   286,   135,   110,    -1,
     916      36,   274,   109,   134,   286,   135,   110,   114,   115,    -1,
     917      -1,    36,   274,   109,   134,   286,   135,   110,   114,   297,
     918     298,   115,    -1,   299,    -1,   298,   134,   299,    -1,   300,
     919     135,   132,    -1,   301,   135,   132,    -1,   215,    -1,   217,
     920      -1,   300,   135,   116,   134,   272,    -1,   225,   309,    -1,
     921     301,   135,   116,   134,   309,    -1,    -1,   303,    -1,   305,
     922      -1,   303,   134,   305,    -1,    -1,   303,    -1,   212,    -1,
     923     307,    -1,   198,    -1,    -1,     5,    82,   306,   114,   304,
     924     115,    -1,    40,   305,    -1,   308,    -1,   323,   173,    -1,
     925     327,   134,   207,   173,    -1,   216,   173,    -1,   224,   323,
     926     173,    -1,   227,   323,   173,    -1,   231,   323,   173,    -1,
     927     231,   227,   323,   173,    -1,   224,   327,   134,   207,   173,
     928      -1,   227,   327,   134,   207,   173,    -1,   231,   327,   134,
     929     207,   173,    -1,   231,   227,   327,   134,   207,   173,    -1,
     930     318,    -1,   323,    -1,   331,    -1,   163,   123,   163,    -1,
     931      -1,    64,   109,   141,   110,   312,    -1,    -1,   313,    -1,
     932     314,    -1,   313,   314,    -1,    39,   109,   109,   315,   110,
     933     110,    -1,   316,    -1,   315,   116,   316,    -1,    -1,   317,
     934      -1,   317,   109,   170,   110,    -1,   272,    -1,   234,    -1,
     935     235,    -1,   228,    -1,   319,   312,    -1,   320,    -1,   321,
     936     312,    -1,   322,   312,    -1,   137,    -1,   109,   319,   110,
     937      -1,   149,   318,    -1,   149,   227,   318,    -1,   109,   320,
     938     110,    -1,   319,   349,    -1,   109,   320,   110,   349,    -1,
     939     109,   321,   110,   350,    -1,   109,   321,   110,    -1,   109,
     940     320,   110,   109,   134,   264,   135,   110,    -1,   109,   322,
     941     110,    -1,   324,   312,    -1,   325,    -1,   326,   312,    -1,
     942     319,   109,   134,   264,   135,   110,    -1,   109,   325,   110,
     943     109,   134,   264,   135,   110,    -1,   109,   324,   110,    -1,
     944     149,   323,    -1,   149,   227,   323,    -1,   109,   325,   110,
     945      -1,   109,   325,   110,   349,    -1,   109,   326,   110,   350,
     946      -1,   109,   326,   110,    -1,   328,    -1,   329,    -1,   330,
     947      -1,   319,   109,   271,   110,    -1,   109,   329,   110,   109,
     948     271,   110,    -1,   109,   328,   110,    -1,   149,   327,    -1,
     949     149,   227,   327,    -1,   109,   329,   110,    -1,   109,   329,
     950     110,   349,    -1,   109,   330,   110,   350,    -1,   109,   330,
     951     110,    -1,   332,   312,    -1,   333,    -1,   334,   312,    -1,
     952     335,   312,    -1,   341,    -1,   109,   332,   110,    -1,   149,
     953     331,    -1,   149,   227,   331,    -1,   109,   333,   110,    -1,
     954     332,   349,    -1,   109,   333,   110,   349,    -1,   109,   334,
     955     110,   350,    -1,   109,   334,   110,    -1,   332,   109,   134,
     956     264,   135,   110,    -1,   109,   333,   110,   109,   134,   264,
     957     135,   110,    -1,   109,   335,   110,    -1,   319,   312,    -1,
     958     337,    -1,   338,   312,    -1,   339,   312,    -1,   149,   336,
     959      -1,   149,   227,   336,    -1,   109,   337,   110,    -1,   319,
     960     355,    -1,   109,   337,   110,   349,    -1,   109,   338,   110,
     961     350,    -1,   109,   338,   110,    -1,   319,   109,   134,   264,
     962     135,   110,    -1,   109,   337,   110,   109,   134,   264,   135,
     963     110,    -1,   109,   339,   110,    -1,   341,   312,    -1,   342,
     964      -1,   343,   312,    -1,   344,   312,    -1,    74,    -1,    75,
     965      -1,   149,   340,    -1,   149,   227,   340,    -1,   109,   342,
     966     110,    -1,   341,   355,    -1,   109,   342,   110,   355,    -1,
     967     341,   109,   134,   264,   135,   110,    -1,   109,   342,   110,
     968     109,   134,   264,   135,   110,    -1,   346,    -1,   347,   312,
     969      -1,   348,   312,    -1,   149,    -1,   149,   227,    -1,   149,
     970     345,    -1,   149,   227,   345,    -1,   109,   346,   110,    -1,
     971     349,    -1,   109,   346,   110,   349,    -1,   109,   347,   110,
     972     350,    -1,   109,   347,   110,    -1,   109,   134,   264,   135,
     973     110,    -1,   109,   346,   110,   109,   134,   264,   135,   110,
     974      -1,   109,   348,   110,    -1,   111,   112,    -1,   111,   112,
     975     350,    -1,   350,    -1,   111,   134,   164,   135,   112,    -1,
     976     111,   134,   118,   135,   112,    -1,   350,   111,   134,   164,
     977     135,   112,    -1,   350,   111,   134,   118,   135,   112,    -1,
     978     352,    -1,   353,   312,    -1,   354,   312,    -1,   149,    -1,
     979     149,   227,    -1,   149,   351,    -1,   149,   227,   351,    -1,
     980     109,   352,   110,    -1,   355,    -1,   109,   352,   110,   355,
     981      -1,   109,   353,   110,   350,    -1,   109,   353,   110,    -1,
     982     109,   134,   264,   135,   110,    -1,   109,   352,   110,   109,
     983     134,   264,   135,   110,    -1,   109,   354,   110,    -1,   356,
     984      -1,   356,   350,    -1,   350,    -1,   111,   112,    -1,   111,
     985     134,   227,   118,   135,   112,    -1,   111,   134,   227,   135,
     986     112,    -1,   111,   134,   227,   164,   135,   112,    -1,   111,
     987     134,     7,   226,   164,   135,   112,    -1,   111,   134,   227,
     988       7,   164,   135,   112,    -1,   358,    -1,   359,   312,    -1,
     989     360,   312,    -1,   149,    -1,   149,   227,    -1,   149,   357,
     990      -1,   149,   227,   357,    -1,   109,   358,   110,    -1,   349,
     991      -1,   109,   358,   110,   349,    -1,   109,   359,   110,   350,
     992      -1,   109,   359,   110,    -1,   109,   358,   110,   109,   134,
     993     264,   135,   110,    -1,   109,   360,   110,    -1,   362,    -1,
     994     370,    -1,   227,   370,    -1,   363,    -1,   364,    -1,   149,
     995     225,    -1,   227,   149,   225,    -1,   149,   371,    -1,   227,
     996     149,   371,    -1,   149,   361,    -1,   227,   149,   361,    -1,
     997     111,   112,   225,    -1,   365,   225,    -1,   111,   112,   350,
     998     225,    -1,   365,   350,   225,    -1,   350,   225,    -1,   111,
     999     112,   363,    -1,   365,   363,    -1,   111,   112,   350,   363,
     1000      -1,   365,   350,   363,    -1,   350,   363,    -1,   111,   134,
     1001     227,   118,   135,   112,    -1,   111,   134,   227,   164,   135,
     1002     112,    -1,   111,   134,   231,   164,   135,   112,    -1,   111,
     1003     134,   231,   227,   164,   135,   112,    -1,   370,    -1,   227,
     1004     370,    -1,   367,    -1,   368,    -1,   369,    -1,   149,   225,
    9951005      -1,   227,   149,   225,    -1,   149,   371,    -1,   227,   149,
    996      371,    -1,   149,   361,    -1,   227,   149,   361,    -1,   111,
    997      112,   225,    -1,   365,   225,    -1,   111,   112,   350,   225,
    998       -1,   365,   350,   225,    -1,   350,   225,    -1,   111,   112,
    999      363,    -1,   365,   363,    -1,   111,   112,   350,   363,    -1,
    1000      365,   350,   363,    -1,   350,   363,    -1,   111,   134,   227,
    1001      118,   135,   112,    -1,   111,   134,   227,   164,   135,   112,
    1002       -1,   111,   134,   231,   164,   135,   112,    -1,   111,   134,
    1003      231,   227,   164,   135,   112,    -1,   370,    -1,   227,   370,
    1004       -1,   367,    -1,   368,    -1,   369,    -1,   149,   225,    -1,
    1005      227,   149,   225,    -1,   149,   371,    -1,   227,   149,   371,
    1006       -1,   149,   366,    -1,   227,   149,   366,    -1,   111,   112,
    1007      225,    -1,   111,   112,   350,   225,    -1,   350,   225,    -1,
    1008      111,   112,   368,    -1,   111,   112,   350,   368,    -1,   350,
    1009      368,    -1,   111,   134,   263,   135,   112,    -1,   111,   112,
    1010      109,   260,   110,    -1,   370,   109,   134,   260,   135,   110,
    1011       -1,   218,   109,   134,   260,   135,   110,    -1,    -1,   116,
    1012       -1,    -1,   131,   164,    -1
     1006     371,    -1,   149,   366,    -1,   227,   149,   366,    -1,   111,
     1007     112,   225,    -1,   111,   112,   350,   225,    -1,   350,   225,
     1008      -1,   111,   112,   368,    -1,   111,   112,   350,   368,    -1,
     1009     350,   368,    -1,   111,   134,   263,   135,   112,    -1,   111,
     1010     112,   109,   260,   110,    -1,   370,   109,   134,   260,   135,
     1011     110,    -1,   218,   109,   134,   260,   135,   110,    -1,    -1,
     1012     116,    -1,    -1,   131,   164,    -1
    10131013};
    10141014
     
    10221022     402,   403,   407,   411,   413,   415,   417,   422,   425,   427,
    10231023     429,   431,   436,   438,   440,   442,   444,   446,   448,   450,
    1024      452,   454,   456,   463,   464,   466,   470,   471,   472,   473,
    1025      477,   478,   480,   485,   486,   488,   490,   495,   496,   498,
    1026      503,   504,   506,   511,   512,   514,   516,   518,   523,   524,
    1027      526,   531,   532,   537,   538,   543,   544,   549,   550,   555,
    1028      556,   561,   562,   564,   566,   571,   576,   577,   579,   581,
    1029      587,   588,   594,   596,   598,   600,   605,   606,   611,   612,
    1030      613,   614,   615,   616,   617,   618,   619,   620,   624,   625,
    1031      631,   632,   638,   639,   640,   641,   642,   643,   644,   645,
    1032      646,   656,   663,   665,   675,   676,   681,   683,   685,   687,
    1033      691,   692,   697,   702,   705,   707,   709,   714,   716,   724,
    1034      725,   727,   731,   732,   737,   738,   743,   744,   748,   753,
    1035      754,   758,   760,   766,   767,   771,   773,   775,   777,   783,
    1036      784,   788,   789,   793,   795,   797,   802,   804,   809,   811,
    1037      815,   818,   822,   825,   829,   831,   835,   837,   844,   846,
    1038      848,   857,   859,   861,   863,   865,   870,   872,   874,   876,
    1039      881,   894,   895,   900,   902,   907,   911,   913,   915,   917,
    1040      919,   925,   926,   932,   933,   937,   938,   943,   945,   951,
    1041      952,   954,   959,   961,   968,   970,   974,   975,   980,   982,
    1042      986,   987,   991,   993,   997,   998,  1002,  1003,  1007,  1008,
    1043     1023,  1024,  1025,  1026,  1027,  1031,  1036,  1043,  1053,  1058,
    1044     1063,  1071,  1076,  1081,  1086,  1091,  1099,  1121,  1126,  1133,
    1045     1135,  1142,  1147,  1152,  1163,  1168,  1173,  1178,  1183,  1192,
    1046     1197,  1205,  1206,  1207,  1208,  1214,  1219,  1227,  1228,  1229,
    1047     1230,  1234,  1235,  1236,  1237,  1242,  1243,  1252,  1253,  1258,
    1048     1259,  1264,  1266,  1268,  1270,  1272,  1275,  1274,  1286,  1287,
    1049     1289,  1299,  1300,  1305,  1309,  1311,  1313,  1315,  1317,  1319,
    1050     1321,  1323,  1328,  1330,  1332,  1334,  1336,  1338,  1340,  1342,
    1051     1344,  1346,  1348,  1350,  1352,  1358,  1359,  1361,  1363,  1365,
    1052     1370,  1371,  1377,  1378,  1380,  1382,  1387,  1389,  1391,  1393,
    1053     1398,  1399,  1401,  1403,  1408,  1409,  1411,  1416,  1417,  1419,
    1054     1421,  1426,  1428,  1430,  1435,  1436,  1440,  1442,  1448,  1447,
    1055     1451,  1453,  1458,  1460,  1465,  1467,  1472,  1473,  1475,  1476,
    1056     1481,  1482,  1484,  1486,  1491,  1493,  1499,  1500,  1502,  1505,
    1057     1508,  1513,  1514,  1519,  1524,  1528,  1530,  1536,  1535,  1542,
    1058     1544,  1550,  1551,  1559,  1560,  1564,  1565,  1566,  1568,  1570,
    1059     1577,  1578,  1580,  1582,  1587,  1588,  1594,  1595,  1599,  1600,
    1060     1605,  1606,  1607,  1609,  1617,  1618,  1620,  1623,  1625,  1629,
    1061     1630,  1631,  1633,  1635,  1639,  1644,  1652,  1653,  1662,  1664,
    1062     1669,  1670,  1671,  1675,  1676,  1677,  1681,  1682,  1683,  1687,
    1063     1688,  1689,  1694,  1695,  1696,  1697,  1703,  1704,  1706,  1711,
    1064     1712,  1717,  1718,  1719,  1720,  1721,  1736,  1737,  1742,  1743,
    1065     1751,  1753,  1755,  1758,  1760,  1762,  1785,  1786,  1788,  1790,
    1066     1795,  1796,  1798,  1803,  1808,  1809,  1815,  1814,  1818,  1822,
    1067     1824,  1826,  1832,  1833,  1838,  1843,  1845,  1850,  1852,  1853,
    1068     1855,  1860,  1862,  1864,  1869,  1871,  1876,  1881,  1889,  1895,
    1069     1894,  1908,  1909,  1914,  1915,  1919,  1924,  1929,  1937,  1942,
    1070     1953,  1954,  1965,  1966,  1972,  1973,  1977,  1978,  1979,  1982,
    1071     1981,  1992,  1997,  2003,  2009,  2018,  2024,  2030,  2036,  2042,
    1072     2050,  2056,  2064,  2070,  2079,  2080,  2081,  2085,  2089,  2091,
    1073     2096,  2097,  2101,  2102,  2107,  2113,  2114,  2117,  2119,  2120,
    1074     2124,  2125,  2126,  2127,  2161,  2163,  2164,  2166,  2171,  2176,
    1075     2181,  2183,  2185,  2190,  2192,  2194,  2196,  2201,  2203,  2212,
    1076     2214,  2215,  2220,  2222,  2224,  2229,  2231,  2233,  2238,  2240,
    1077     2242,  2251,  2252,  2253,  2257,  2259,  2261,  2266,  2268,  2270,
    1078     2275,  2277,  2279,  2294,  2296,  2297,  2299,  2304,  2305,  2310,
    1079     2312,  2314,  2319,  2321,  2323,  2325,  2330,  2332,  2334,  2344,
    1080     2346,  2347,  2349,  2354,  2356,  2358,  2363,  2365,  2367,  2369,
    1081     2374,  2376,  2378,  2409,  2411,  2412,  2414,  2419,  2424,  2432,
    1082     2434,  2436,  2441,  2443,  2448,  2450,  2464,  2465,  2467,  2472,
    1083     2474,  2476,  2478,  2480,  2485,  2486,  2488,  2490,  2495,  2497,
    1084     2499,  2505,  2507,  2509,  2513,  2515,  2517,  2519,  2533,  2534,
    1085     2536,  2541,  2543,  2545,  2547,  2549,  2554,  2555,  2557,  2559,
    1086     2564,  2566,  2568,  2574,  2575,  2577,  2586,  2589,  2591,  2594,
    1087     2596,  2598,  2611,  2612,  2614,  2619,  2621,  2623,  2625,  2627,
    1088     2632,  2633,  2635,  2637,  2642,  2644,  2652,  2653,  2654,  2659,
    1089     2660,  2664,  2666,  2668,  2670,  2672,  2674,  2681,  2683,  2685,
    1090     2687,  2689,  2691,  2693,  2695,  2697,  2699,  2704,  2706,  2708,
    1091     2713,  2739,  2740,  2742,  2746,  2747,  2751,  2753,  2755,  2757,
    1092     2759,  2761,  2768,  2770,  2772,  2774,  2776,  2778,  2783,  2788,
    1093     2790,  2792,  2810,  2812,  2817,  2818
     1024     452,   454,   456,   458,   463,   464,   468,   469,   470,   471,
     1025     475,   476,   478,   483,   484,   486,   488,   493,   494,   496,
     1026     501,   502,   504,   509,   510,   512,   514,   516,   521,   522,
     1027     524,   529,   530,   535,   536,   541,   542,   547,   548,   553,
     1028     554,   559,   560,   562,   564,   569,   574,   575,   577,   579,
     1029     585,   586,   592,   594,   596,   598,   603,   604,   609,   610,
     1030     611,   612,   613,   614,   615,   616,   617,   618,   622,   623,
     1031     629,   630,   636,   637,   638,   639,   640,   641,   642,   643,
     1032     644,   653,   660,   662,   672,   673,   678,   680,   682,   684,
     1033     688,   689,   694,   699,   702,   704,   706,   711,   713,   721,
     1034     722,   724,   728,   729,   734,   735,   740,   741,   745,   750,
     1035     751,   755,   757,   763,   764,   768,   770,   772,   774,   780,
     1036     781,   785,   786,   790,   792,   794,   799,   801,   806,   808,
     1037     812,   815,   819,   822,   826,   828,   832,   834,   841,   843,
     1038     845,   854,   856,   858,   860,   862,   867,   869,   871,   873,
     1039     878,   891,   892,   897,   899,   904,   908,   910,   912,   914,
     1040     916,   922,   923,   929,   930,   934,   935,   940,   942,   948,
     1041     949,   951,   956,   958,   965,   967,   971,   972,   977,   979,
     1042     983,   984,   988,   990,   994,   995,   999,  1000,  1004,  1005,
     1043    1020,  1021,  1022,  1023,  1024,  1028,  1033,  1040,  1050,  1055,
     1044    1060,  1068,  1073,  1078,  1083,  1088,  1096,  1118,  1123,  1130,
     1045    1132,  1139,  1144,  1149,  1160,  1165,  1170,  1175,  1180,  1189,
     1046    1194,  1202,  1203,  1204,  1205,  1211,  1216,  1224,  1225,  1226,
     1047    1227,  1231,  1232,  1233,  1234,  1239,  1240,  1249,  1250,  1255,
     1048    1256,  1261,  1263,  1265,  1267,  1269,  1272,  1271,  1283,  1284,
     1049    1286,  1296,  1297,  1302,  1306,  1308,  1310,  1312,  1314,  1316,
     1050    1318,  1320,  1325,  1327,  1329,  1331,  1333,  1335,  1337,  1339,
     1051    1341,  1343,  1345,  1347,  1349,  1355,  1356,  1358,  1360,  1362,
     1052    1367,  1368,  1374,  1375,  1377,  1379,  1384,  1386,  1388,  1390,
     1053    1395,  1396,  1398,  1400,  1405,  1406,  1408,  1413,  1414,  1416,
     1054    1418,  1423,  1425,  1427,  1432,  1433,  1437,  1439,  1445,  1444,
     1055    1448,  1450,  1455,  1457,  1462,  1464,  1469,  1470,  1472,  1473,
     1056    1478,  1479,  1481,  1483,  1488,  1490,  1496,  1497,  1499,  1502,
     1057    1505,  1510,  1511,  1516,  1521,  1525,  1527,  1533,  1532,  1539,
     1058    1541,  1547,  1548,  1556,  1557,  1561,  1562,  1563,  1565,  1567,
     1059    1574,  1575,  1577,  1579,  1584,  1585,  1591,  1592,  1596,  1597,
     1060    1602,  1603,  1604,  1606,  1614,  1615,  1617,  1620,  1622,  1626,
     1061    1627,  1628,  1630,  1632,  1636,  1641,  1649,  1650,  1659,  1661,
     1062    1666,  1667,  1668,  1672,  1673,  1674,  1678,  1679,  1680,  1684,
     1063    1685,  1686,  1691,  1692,  1693,  1694,  1700,  1701,  1703,  1708,
     1064    1709,  1714,  1715,  1716,  1717,  1718,  1733,  1734,  1739,  1740,
     1065    1748,  1750,  1752,  1755,  1757,  1759,  1782,  1783,  1785,  1787,
     1066    1792,  1793,  1795,  1800,  1805,  1806,  1812,  1811,  1815,  1819,
     1067    1821,  1823,  1829,  1830,  1835,  1840,  1842,  1847,  1849,  1850,
     1068    1852,  1857,  1859,  1861,  1866,  1868,  1873,  1878,  1886,  1892,
     1069    1891,  1905,  1906,  1911,  1912,  1916,  1921,  1926,  1934,  1939,
     1070    1950,  1951,  1962,  1963,  1969,  1970,  1974,  1975,  1976,  1979,
     1071    1978,  1989,  1994,  1999,  2005,  2014,  2020,  2026,  2032,  2038,
     1072    2046,  2052,  2060,  2066,  2075,  2076,  2077,  2081,  2085,  2087,
     1073    2092,  2093,  2097,  2098,  2103,  2109,  2110,  2113,  2115,  2116,
     1074    2120,  2121,  2122,  2123,  2157,  2159,  2160,  2162,  2167,  2172,
     1075    2177,  2179,  2181,  2186,  2188,  2190,  2192,  2197,  2199,  2209,
     1076    2211,  2212,  2217,  2219,  2221,  2226,  2228,  2230,  2235,  2237,
     1077    2239,  2248,  2249,  2250,  2254,  2256,  2258,  2263,  2265,  2267,
     1078    2272,  2274,  2276,  2291,  2293,  2294,  2296,  2301,  2302,  2307,
     1079    2309,  2311,  2316,  2318,  2320,  2322,  2327,  2329,  2331,  2341,
     1080    2343,  2344,  2346,  2351,  2353,  2355,  2360,  2362,  2364,  2366,
     1081    2371,  2373,  2375,  2406,  2408,  2409,  2411,  2416,  2421,  2429,
     1082    2431,  2433,  2438,  2440,  2445,  2447,  2461,  2462,  2464,  2469,
     1083    2471,  2473,  2475,  2477,  2482,  2483,  2485,  2487,  2492,  2494,
     1084    2496,  2502,  2504,  2506,  2510,  2512,  2514,  2516,  2530,  2531,
     1085    2533,  2538,  2540,  2542,  2544,  2546,  2551,  2552,  2554,  2556,
     1086    2561,  2563,  2565,  2571,  2572,  2574,  2583,  2586,  2588,  2591,
     1087    2593,  2595,  2608,  2609,  2611,  2616,  2618,  2620,  2622,  2624,
     1088    2629,  2630,  2632,  2634,  2639,  2641,  2649,  2650,  2651,  2656,
     1089    2657,  2661,  2663,  2665,  2667,  2669,  2671,  2678,  2680,  2682,
     1090    2684,  2686,  2688,  2690,  2692,  2694,  2696,  2701,  2703,  2705,
     1091    2710,  2736,  2737,  2739,  2743,  2744,  2748,  2750,  2752,  2754,
     1092    2756,  2758,  2765,  2767,  2769,  2771,  2773,  2775,  2780,  2785,
     1093    2787,  2789,  2807,  2809,  2814,  2815
    10941094};
    10951095#endif
     
    11851185  "function_ptr", "function_array", "old_function_declarator",
    11861186  "old_function_no_ptr", "old_function_ptr", "old_function_array",
    1187   "variable_type_redeclarator", "paren_type", "type_ptr", "type_array",
     1187  "type_redeclarator", "paren_type", "type_ptr", "type_array",
    11881188  "type_function", "identifier_parameter_declarator",
    11891189  "identifier_parameter_ptr", "identifier_parameter_array",
     
    12391239     146,   146,   147,   147,   147,   147,   147,   148,   148,   148,
    12401240     148,   148,   148,   148,   148,   148,   148,   148,   148,   148,
    1241      148,   148,   148,   149,   149,   149,   150,   150,   150,   150,
     1241     148,   148,   148,   148,   149,   149,   150,   150,   150,   150,
    12421242     151,   151,   151,   152,   152,   152,   152,   153,   153,   153,
    12431243     154,   154,   154,   155,   155,   155,   155,   155,   156,   156,
     
    13201320       1,     3,     1,     3,     7,     3,     7,     1,     1,     1,
    13211321       2,     2,     2,     2,     2,     2,     4,     6,     1,     4,
    1322        4,     2,     4,     1,     1,     1,     1,     1,     1,     1,
     1322       4,     2,     4,     2,     1,     1,     1,     1,     1,     1,
    13231323       1,     4,     4,     1,     3,     3,     3,     1,     3,     3,
    13241324       1,     3,     3,     1,     3,     3,     3,     3,     1,     3,
     
    14011401     328,   329,   334,   331,   332,   333,   550,   550,   550,     0,
    14021402       0,     0,   295,   221,   305,   320,   321,     7,   361,     0,
    1403        8,    14,    15,    65,     0,     2,    63,    64,   568,     9,
    1404      295,   528,   526,   248,     3,   456,     3,   261,     0,     3,
    1405        3,     3,   249,     3,     0,     0,     0,   296,   297,   299,
    1406      295,   308,   311,   313,   342,   287,   335,   340,   288,   350,
    1407      289,   357,   354,   364,     0,     0,   365,   290,   476,   480,
    1408        3,     3,     0,     2,   522,   527,   532,   300,     0,     0,
    1409      550,   580,   550,     2,   591,   592,   593,   295,     0,   734,
    1410      735,     0,    12,     0,    13,   295,   271,   272,     0,   296,
    1411      291,   292,   293,   294,   529,   306,   394,   551,   552,   372,
    1412      373,    12,   447,   448,    11,   443,   446,     0,   506,   501,
    1413      492,   447,   448,     0,     0,   531,   222,     0,   295,     0,
    1414        0,     0,     0,     0,     0,     0,     0,   295,   295,     2,
    1415        0,   736,   296,   585,   597,   740,   733,   731,   738,     0,
    1416        0,     0,   255,     2,     0,   535,   441,   442,   440,     0,
    1417        0,     0,     0,   550,     0,   637,   638,     0,     0,   548,
    1418      544,   550,   565,   550,   550,   546,     2,   545,   550,   604,
    1419      550,   550,   607,     0,     0,     0,   295,   295,   314,   362,
    1420        2,   295,   262,   298,   309,   343,   355,   481,     0,     2,
    1421        0,   456,   263,   296,   336,   351,   358,   477,     0,     2,
    1422        0,   312,   337,   344,   345,     0,   352,   356,   359,   363,
    1423      448,   295,   295,   367,   371,     0,   396,   478,   482,     0,
    1424        0,     0,     1,   295,     2,   533,   579,   581,   295,     2,
    1425      744,   296,   747,   548,   548,     0,   296,     0,     0,   274,
    1426      550,   546,     2,   295,     0,     0,   295,   553,     2,   504,
    1427        2,   557,     0,     0,     0,     0,     0,     0,    18,    58,
    1428        4,     5,     6,    16,     0,     0,   295,     2,    66,    67,
     1403       8,    14,    15,     0,     2,    64,    65,   568,     9,   295,
     1404     528,   526,   248,     3,   456,     3,   261,     0,     3,     3,
     1405       3,   249,     3,     0,     0,     0,   296,   297,   299,   295,
     1406     308,   311,   313,   342,   287,   335,   340,   288,   350,   289,
     1407     357,   354,   364,     0,     0,   365,   290,   476,   480,     3,
     1408       3,     0,     2,   522,   527,   532,   300,     0,     0,   550,
     1409     580,   550,     2,   591,   592,   593,   295,     0,   734,   735,
     1410       0,    12,     0,    13,   295,   271,   272,     0,   296,   291,
     1411     292,   293,   294,   529,   306,   394,   551,   552,   372,   373,
     1412      12,   447,   448,    11,   443,   446,     0,   506,   501,   492,
     1413     447,   448,     0,     0,   531,   222,     0,   295,     0,     0,
     1414       0,     0,     0,     0,     0,     0,   295,   295,     2,     0,
     1415     736,   296,   585,   597,   740,   733,   731,   738,     0,     0,
     1416       0,   255,     2,     0,   535,   441,   442,   440,     0,     0,
     1417       0,     0,   550,     0,   637,   638,     0,     0,   548,   544,
     1418     550,   565,   550,   550,   545,     2,   546,   550,   604,   550,
     1419     550,   607,     0,     0,     0,   295,   295,   314,   362,     2,
     1420     295,   262,   298,   309,   343,   355,   481,     0,     2,     0,
     1421     456,   263,   296,   336,   351,   358,   477,     0,     2,     0,
     1422     312,   337,   344,   345,     0,   352,   356,   359,   363,   448,
     1423     295,   295,   367,   371,     0,   396,   478,   482,     0,     0,
     1424       0,     1,   295,     2,   533,   579,   581,   295,     2,   744,
     1425     296,   747,   548,   548,     0,   296,     0,     0,   274,   550,
     1426     545,     2,   295,     0,     0,   295,   553,     2,   504,     2,
     1427     557,     0,     0,     0,     0,     0,     0,    18,    58,     4,
     1428       5,     6,    16,     0,     0,     0,   295,     2,    66,    67,
    14291429      68,    69,    48,    19,    49,    22,    47,    70,   295,     0,
    14301430      73,    77,    80,    83,    88,    91,    93,    95,    97,    99,
    14311431     101,   106,   498,   754,   454,   497,     0,   452,   453,     0,
    14321432     569,   584,   587,   590,   596,   599,   602,   361,     0,     2,
    1433      742,     0,   295,   745,     2,    63,   295,     3,   428,     0,
     1433     742,     0,   295,   745,     2,    64,   295,     3,   428,     0,
    14341434     436,   296,   295,   308,   335,   288,   350,   357,     3,     3,
    14351435     410,   414,   424,   429,   476,   295,   430,   709,   710,   295,
     
    14491449       0,   295,     0,   295,   493,   295,   563,   561,   562,   560,
    14501450       0,   555,   558,     0,     0,   295,    55,   295,    70,    50,
    1451      295,    61,   295,   295,    53,    54,     2,   128,     0,     0,
    1452      450,     0,   449,   112,   295,    17,     0,    29,    30,    35,
    1453        2,     0,    35,   118,   119,   120,   121,   122,   123,   124,
    1454      125,   126,   127,     0,     0,    51,    52,     0,     0,     0,
     1451     295,    61,   295,   295,    53,    54,    63,     2,   128,     0,
     1452       0,   450,     0,   449,   112,   295,    17,     0,    29,    30,
     1453      35,     2,     0,    35,   118,   119,   120,   121,   122,   123,
     1454     124,   125,   126,   127,     0,     0,    51,    52,     0,     0,
    14551455       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    1456        0,     0,     0,     0,     0,     0,     0,   109,     2,   649,
    1457      455,   646,   550,   550,   654,   483,   295,     2,   588,   589,
    1458        0,   600,   601,     0,     2,   743,   746,   112,   295,     0,
    1459        2,   711,   296,   715,   706,   707,   713,     0,     2,     2,
    1460      671,   550,   754,   620,   550,   550,   754,   550,   634,   550,
    1461      550,   685,   437,   668,   550,   550,   676,   683,   295,   432,
    1462      296,     0,     0,   295,   721,   296,   726,   754,   718,   295,
    1463      723,   754,   295,   295,   295,     0,   112,     0,    18,     5,
    1464        2,     0,    19,     0,   462,   752,     0,     0,   468,   242,
    1465        0,   295,     0,     0,     0,   548,   572,   576,   578,   608,
    1466      611,   615,   618,   571,   610,     0,   285,   661,     0,   295,
    1467      278,     0,     0,     0,     0,   276,     2,     0,   260,   539,
    1468      295,     0,     0,     0,     0,   295,   295,     0,     0,   695,
    1469      384,   387,   391,   550,   391,   700,   390,   692,   550,   550,
    1470      366,   375,   383,   376,   550,   378,   381,   295,   753,     0,
    1471        0,   399,     0,   296,     3,   417,     3,   421,   420,   594,
    1472        0,   534,   295,    63,     3,   295,   436,   296,     3,   430,
    1473      431,     2,     0,     0,     0,   488,   307,   295,   484,   486,
    1474        3,     2,     2,     0,   505,     3,     0,   557,   130,     0,
    1475        0,   223,     0,     0,     0,     2,     0,     0,    36,     0,
    1476        0,   112,   295,    20,     0,    21,     0,   695,   451,     0,
    1477      110,     3,     2,    27,     2,     0,    33,     0,     2,    25,
    1478        0,   107,   108,    74,    75,    76,    78,    79,    81,    82,
    1479       86,    87,    84,    85,    89,    90,    92,    94,    96,    98,
    1480      100,     0,     0,   755,   295,     0,     0,     0,   650,   651,
    1481      647,   648,   500,   499,   295,     0,   295,   717,   295,   722,
    1482      296,   295,   665,   295,   295,   708,   664,     2,   295,     0,
    1483        0,     0,     0,     0,     0,     0,     0,   686,     0,   672,
    1484      623,   639,   673,     2,   619,   626,   434,   621,   622,   435,
    1485        2,   633,   642,   635,   636,   669,   670,   684,   712,   716,
    1486      714,   754,   269,     2,   748,     2,   425,   720,   725,   426,
    1487        0,   404,     3,     3,     3,     3,   456,     3,     0,     2,
    1488      471,   467,   753,     0,   463,   470,     2,   466,   469,     0,
    1489      295,   243,   265,     3,   273,   275,     0,   456,     2,   574,
    1490      575,     2,   613,   614,     0,   662,   540,     3,   347,   346,
    1491      349,   348,   295,   541,     0,   542,   295,   377,   379,     2,
    1492        0,     0,     0,     0,   105,   393,   696,   697,   388,   392,
    1493      389,   693,   694,   382,   386,   295,   401,   395,   402,   752,
    1494        0,     0,   439,   241,     0,     0,     3,     2,   671,   432,
    1495        0,   530,     0,   754,   492,     0,   295,   295,   295,     0,
    1496      554,   556,   131,     0,     0,   216,     0,     0,     0,   224,
    1497      225,    56,     0,    62,   295,     0,    60,    59,     0,   129,
    1498      696,   461,    71,    72,   111,   116,     3,   110,     0,     0,
    1499        0,    24,    35,     3,     0,    32,   103,     0,     3,   653,
    1500      657,   660,   652,     3,   595,     3,   719,   724,     2,    63,
    1501      295,     3,     3,   296,     0,     3,   625,   629,   632,   641,
    1502      675,   679,   682,   295,     3,   624,   640,   674,   295,   295,
    1503      427,   295,   295,   749,     0,     0,     0,     0,   257,     0,
    1504      105,     0,     3,     3,     0,   464,     0,   460,     0,     0,
    1505      246,   295,     0,     0,   130,     0,     0,     0,     0,     0,
    1506      130,     0,     0,   110,   110,    18,     2,     0,     0,     3,
    1507      132,   133,     2,   144,   134,   135,   136,   137,   138,   139,
    1508      146,   148,     0,     0,     0,   286,   295,   295,   550,     0,
    1509      543,   295,   112,   699,   703,   705,   698,   385,   369,   400,
    1510        0,   582,     2,   667,   666,     0,   672,     2,   485,   487,
    1511      507,     3,   515,   516,     0,     2,   511,     3,     3,     0,
    1512        0,   559,   223,     0,     0,     0,   223,     0,     0,     3,
    1513       37,   752,   110,     0,     3,   664,    42,     3,    40,     3,
    1514       34,     0,     3,   102,   104,     0,     2,   655,   656,     0,
    1515        0,   295,     0,     0,     0,     3,   641,     0,     2,   627,
    1516      628,     2,   643,     2,   677,   678,     0,     0,    63,     0,
    1517        3,     3,     3,     3,   412,   411,   415,     2,     2,   751,
    1518      750,   113,     0,     0,     0,     0,     3,   465,     3,     0,
    1519      244,   147,     3,   296,   295,     0,     0,     0,     0,     2,
    1520        0,   192,     0,   190,     0,     0,     0,     0,     0,     0,
    1521        0,   550,   112,     0,   152,   149,   295,     0,     0,   268,
    1522      280,     3,     3,   549,   616,   370,     2,   701,   702,   398,
    1523      295,   267,   295,     0,   518,   495,   295,     0,     0,   494,
    1524      509,     0,     0,     0,   217,     0,   226,    57,   110,     0,
    1525        0,   117,   114,     0,     0,     0,     0,     0,     0,    23,
    1526        0,   658,   295,   583,   266,   727,   728,   729,     0,   680,
    1527      295,   295,   295,     3,     3,     0,   688,     0,     0,     0,
    1528        0,   295,   295,     3,   547,   472,   473,     0,     0,   247,
    1529      296,     0,     0,     0,     0,   295,   193,   191,   188,     0,
    1530      194,     0,     0,     0,     0,   198,   201,   199,   195,     0,
    1531      196,   130,    35,   145,   143,   245,     0,     0,   295,   419,
    1532      423,   422,     0,   512,     2,   513,     2,   514,   508,   295,
    1533      229,     0,   227,     0,   229,     3,   664,    31,   115,     2,
    1534       45,     2,    43,    41,    28,   113,    26,     3,   730,     3,
    1535        3,     3,     0,     0,   687,   689,   630,   644,   270,     2,
    1536      409,     3,   408,     0,   475,   472,   130,     0,     0,   130,
    1537        3,     0,   130,   189,     0,     2,     2,   210,   200,     0,
    1538        0,     0,   141,     0,   577,   617,     3,     2,     0,     0,
    1539        2,   230,     0,     0,   218,     0,     0,     0,     0,     0,
    1540        0,     0,     0,     0,   690,   691,   295,     0,   474,   153,
    1541        0,     0,     2,   166,   130,   155,     0,   183,     0,   130,
    1542        0,     2,   157,     0,     2,     0,     2,     2,     2,   197,
    1543       32,     0,   295,   517,   519,   510,     0,     0,     0,     0,
    1544      115,    38,     3,     3,   659,   631,   645,   681,   413,   130,
    1545      159,   162,     0,   161,   165,     3,   168,   167,     0,   130,
    1546      185,   130,     3,     0,   295,     0,   295,     0,     2,     0,
    1547        2,   140,   704,     2,   231,   232,     0,   228,   219,     0,
    1548        0,     0,   154,     0,     0,   164,   234,   169,     2,   236,
    1549      184,     0,   187,   173,   202,     3,   211,   215,   204,     3,
    1550        0,   295,     0,   295,     0,     0,     0,    39,    46,    44,
    1551      160,   163,   130,     0,   170,   295,   130,   130,     0,   174,
    1552        0,     0,   695,   212,   213,   214,     0,   203,     3,   205,
    1553        3,   295,   220,   233,   150,   171,   156,   130,   237,   186,
    1554      181,   179,   175,   158,   130,     0,   696,     0,     0,     0,
    1555        0,   151,   172,   182,   176,   180,   179,   177,     3,     3,
    1556        0,     0,   496,   178,   206,   208,     3,     3,   207,   209
     1456       0,     0,     0,     0,     0,     0,     0,     0,   109,     2,
     1457     649,   455,   646,   550,   550,   654,   483,   295,     2,   588,
     1458     589,     0,   600,   601,     0,     2,   743,   746,   112,   295,
     1459       0,     2,   711,   296,   715,   706,   707,   713,     0,     2,
     1460       2,   671,   550,   754,   620,   550,   550,   754,   550,   634,
     1461     550,   550,   685,   437,   668,   550,   550,   676,   683,   295,
     1462     432,   296,     0,     0,   295,   721,   296,   726,   754,   718,
     1463     295,   723,   754,   295,   295,   295,     0,   112,     0,    18,
     1464       5,     2,     0,    19,     0,   462,   752,     0,     0,   468,
     1465     242,     0,   295,     0,     0,     0,   548,   572,   576,   578,
     1466     608,   611,   615,   618,   571,   610,     0,   285,   661,     0,
     1467     295,   278,     0,     0,     0,     0,   276,     2,     0,   260,
     1468     539,   295,     0,     0,     0,     0,   295,   295,     0,     0,
     1469     695,   384,   387,   391,   550,   391,   700,   390,   692,   550,
     1470     550,   366,   375,   383,   376,   550,   378,   381,   295,   753,
     1471       0,     0,   399,     0,   296,     3,   417,     3,   421,   420,
     1472     594,     0,   534,   295,    64,     3,   295,   436,   296,     3,
     1473     430,   431,     2,     0,     0,     0,   488,   307,   295,   484,
     1474     486,     3,     2,     2,     0,   505,     3,     0,   557,   130,
     1475       0,     0,   223,     0,     0,     0,     2,     0,     0,    36,
     1476       0,     0,   112,   295,    20,     0,    21,     0,   695,   451,
     1477       0,   110,     3,     2,    27,     2,     0,    33,     0,     2,
     1478      25,     0,   107,   108,    74,    75,    76,    78,    79,    81,
     1479      82,    86,    87,    84,    85,    89,    90,    92,    94,    96,
     1480      98,   100,     0,     0,   755,   295,     0,     0,     0,   650,
     1481     651,   647,   648,   500,   499,   295,     0,   295,   717,   295,
     1482     722,   296,   295,   665,   295,   295,   708,   664,     2,   295,
     1483       0,     0,     0,     0,     0,     0,     0,     0,   686,     0,
     1484     672,   623,   639,   673,     2,   619,   626,   434,   621,   622,
     1485     435,     2,   633,   642,   635,   636,   669,   670,   684,   712,
     1486     716,   714,   754,   269,     2,   748,     2,   425,   720,   725,
     1487     426,     0,   404,     3,     3,     3,     3,   456,     3,     0,
     1488       2,   471,   467,   753,     0,   463,   470,     2,   466,   469,
     1489       0,   295,   243,   265,     3,   273,   275,     0,   456,     2,
     1490     574,   575,     2,   613,   614,     0,   662,   540,     3,   347,
     1491     346,   349,   348,   295,   541,     0,   542,   295,   377,   379,
     1492       2,     0,     0,     0,     0,   105,   393,   696,   697,   388,
     1493     392,   389,   693,   694,   382,   386,   295,   401,   395,   402,
     1494     752,     0,     0,   439,   241,     0,     0,     3,     2,   671,
     1495     432,     0,   530,     0,   754,   492,     0,   295,   295,   295,
     1496       0,   554,   556,   131,     0,     0,   216,     0,     0,     0,
     1497     224,   225,    56,     0,    62,   295,     0,    60,    59,     0,
     1498     129,   696,   461,    71,    72,   111,   116,     3,   110,     0,
     1499       0,     0,    24,    35,     3,     0,    32,   103,     0,     3,
     1500     653,   657,   660,   652,     3,   595,     3,   719,   724,     2,
     1501      64,   295,     3,     3,   296,     0,     3,   625,   629,   632,
     1502     641,   675,   679,   682,   295,     3,   624,   640,   674,   295,
     1503     295,   427,   295,   295,   749,     0,     0,     0,     0,   257,
     1504       0,   105,     0,     3,     3,     0,   464,     0,   460,     0,
     1505       0,   246,   295,     0,     0,   130,     0,     0,     0,     0,
     1506       0,   130,     0,     0,   110,   110,     2,     0,     0,     0,
     1507       3,   132,   133,     2,   144,   134,   135,   136,   137,   138,
     1508     139,   146,   148,     0,     0,     0,   286,   295,   295,   550,
     1509       0,   543,   295,   112,   699,   703,   705,   698,   385,   369,
     1510     400,     0,   582,     2,   667,   666,     0,   672,     2,   485,
     1511     487,   507,     3,   515,   516,     0,     2,   511,     3,     3,
     1512       0,     0,   559,   223,     0,     0,     0,   223,     0,     0,
     1513       3,    37,   752,   110,     0,     3,   664,    42,     3,    40,
     1514       3,    34,     0,     3,   102,   104,     0,     2,   655,   656,
     1515       0,     0,   295,     0,     0,     0,     3,   641,     0,     2,
     1516     627,   628,     2,   643,     2,   677,   678,     0,     0,    64,
     1517       0,     3,     3,     3,     3,   412,   411,   415,     2,     2,
     1518     751,   750,   113,     0,     0,     0,     0,     3,   465,     3,
     1519       0,   244,   147,     3,   296,   295,     0,     0,     0,     0,
     1520       2,   192,     0,   190,     0,     0,     0,     0,     0,     0,
     1521       0,     0,   112,     0,   550,   152,   149,   295,     0,     0,
     1522     268,   280,     3,     3,   549,   616,   370,     2,   701,   702,
     1523     398,   295,   267,   295,     0,   518,   495,   295,     0,     0,
     1524     494,   509,     0,     0,     0,   217,     0,   226,    57,   110,
     1525       0,     0,   117,   114,     0,     0,     0,     0,     0,     0,
     1526      23,     0,   658,   295,   583,   266,   727,   728,   729,     0,
     1527     680,   295,   295,   295,     3,     3,     0,   688,     0,     0,
     1528       0,     0,   295,   295,     3,   547,   472,   473,     0,     0,
     1529     247,   296,     0,     0,     0,     0,   295,   193,   191,     0,
     1530     188,   194,     0,     0,     0,     0,   198,   201,   199,   195,
     1531       0,   196,    35,   130,   145,   143,   245,     0,     0,   295,
     1532     419,   423,   422,     0,   512,     2,   513,     2,   514,   508,
     1533     295,   229,     0,   227,     0,   229,     3,   664,    31,   115,
     1534       2,    45,     2,    43,    41,    28,   113,    26,     3,   730,
     1535       3,     3,     3,     0,     0,   687,   689,   630,   644,   270,
     1536       2,   409,     3,   408,     0,   475,   472,   130,     0,     0,
     1537     130,     3,     0,   130,   189,     0,     2,     2,   210,   200,
     1538       0,     0,     0,     0,   141,   577,   617,     3,     2,     0,
     1539       0,     2,   230,     0,     0,   218,     0,     0,     0,     0,
     1540       0,     0,     0,     0,     0,   690,   691,   295,     0,   474,
     1541     153,     0,     0,     2,   166,   130,   155,     0,   183,     0,
     1542     130,     0,     2,   157,     0,     2,     0,     2,     2,     2,
     1543     197,    32,     0,   295,   517,   519,   510,     0,     0,     0,
     1544       0,   115,    38,     3,     3,   659,   631,   645,   681,   413,
     1545     130,   159,   162,     0,   161,   165,     3,   168,   167,     0,
     1546     130,   185,   130,     3,     0,   295,     0,   295,     0,     2,
     1547       0,     2,   140,   704,     2,   231,   232,     0,   228,   219,
     1548       0,     0,     0,   154,     0,     0,   164,   234,   169,     2,
     1549     236,   184,     0,   187,   173,   202,     3,   211,   215,   204,
     1550       3,     0,   295,     0,   295,     0,     0,     0,    39,    46,
     1551      44,   160,   163,   130,     0,   170,   295,   130,   130,     0,
     1552     174,     0,     0,   695,   212,   213,   214,     0,   203,     3,
     1553     205,     3,   295,   220,   233,   150,   171,   156,   130,   237,
     1554     186,   181,   179,   175,   158,   130,     0,   696,     0,     0,
     1555       0,     0,   151,   172,   182,   176,   180,   179,   177,     3,
     1556       3,     0,     0,   496,   178,   206,   208,     3,     3,   207,
     1557     209
    15571558};
    15581559
     
    15601561static const yytype_int16 yydefgoto[] =
    15611562{
    1562       -1,   838,   477,   302,    48,   135,   136,   303,   304,   305,
    1563      306,   785,   786,  1147,  1148,   307,   382,   309,   310,   311,
     1563      -1,   839,   477,   302,    47,   134,   135,   303,   304,   305,
     1564     306,   786,   787,  1148,  1149,   307,   382,   309,   310,   311,
    15641565     312,   313,   314,   315,   316,   317,   318,   319,   320,   321,
    1565     1051,   527,   995,   323,   996,   554,   972,  1078,  1544,  1080,
    1566     1081,  1082,  1083,  1545,  1084,  1085,  1461,  1462,  1423,  1424,
    1567     1425,  1523,  1524,  1528,  1529,  1564,  1565,  1086,  1381,  1087,
    1568     1088,  1315,  1316,  1317,  1505,  1089,   147,   978,   979,   980,
    1569     1402,  1486,  1497,  1498,   478,   479,   900,   901,  1059,    52,
    1570       53,    54,    55,    56,   348,   160,    59,    60,    61,    62,
    1571       63,   350,    65,    66,   266,    68,    69,   276,   352,   353,
    1572       72,    73,    74,    75,   120,    77,   206,   355,   121,    80,
    1573      122,    82,    83,   464,    84,   458,   459,   460,   461,   700,
    1574      938,   701,    85,    86,   467,   465,   721,   880,   881,   358,
    1575      359,   724,   725,   726,   360,   361,   362,   363,   475,   341,
    1576      137,   138,   531,   325,   172,   654,   655,   656,   657,   658,
    1577       87,   123,    89,   498,   499,   964,   500,   279,   504,   326,
    1578       90,   139,   140,    91,  1339,  1125,  1126,  1127,  1128,    92,
    1579       93,   742,    94,   275,    95,    96,   189,  1053,   688,   413,
    1580      127,    97,   510,   511,   512,   190,   270,   192,   193,   194,
    1581      271,   100,   101,   102,   103,   104,   105,   106,   197,   198,
    1582      199,   200,   201,   850,   613,   614,   615,   616,   202,   618,
    1583      619,   620,   580,   581,   582,   583,   705,   107,   622,   623,
    1584      624,   625,   626,   627,   937,   707,   708,   709,   603,   366,
    1585      367,   368,   369,   327,   166,   109,   110,   111,   371,   719,
    1586      577
     1566    1052,   528,   996,   323,   997,   555,   973,  1079,  1545,  1081,
     1567    1082,  1083,  1084,  1546,  1085,  1086,  1462,  1463,  1424,  1425,
     1568    1426,  1524,  1525,  1529,  1530,  1565,  1566,  1087,  1382,  1088,
     1569    1089,  1316,  1317,  1318,  1506,  1090,   146,   979,   980,   981,
     1570    1403,  1487,  1498,  1499,   478,   479,   901,   902,  1060,    51,
     1571      52,    53,    54,    55,   348,   159,    58,    59,    60,    61,
     1572      62,   350,    64,    65,   265,    67,    68,   275,   352,   353,
     1573      71,    72,    73,    74,   119,    76,   205,   355,   120,    79,
     1574     121,    81,    82,   464,    83,   458,   459,   460,   461,   701,
     1575     939,   702,    84,    85,   467,   465,   722,   881,   882,   358,
     1576     359,   725,   726,   727,   360,   361,   362,   363,   475,   341,
     1577     136,   137,   532,   325,   171,   655,   656,   657,   658,   659,
     1578      86,   122,    88,   498,   499,   965,   500,   278,   504,   326,
     1579      89,   138,   139,    90,  1340,  1126,  1127,  1128,  1129,    91,
     1580      92,   743,    93,   274,    94,    95,   188,  1054,   689,   413,
     1581     126,    96,   510,   511,   512,   189,   269,   191,   192,   193,
     1582     270,    99,   100,   101,   102,   103,   104,   105,   196,   197,
     1583     198,   199,   200,   851,   614,   615,   616,   617,   201,   619,
     1584     620,   621,   581,   582,   583,   584,   706,   106,   623,   624,
     1585     625,   626,   627,   628,   938,   708,   709,   710,   604,   366,
     1586     367,   368,   369,   327,   165,   108,   109,   110,   371,   720,
     1587     578
    15871588};
    15881589
    15891590/* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
    15901591   STATE-NUM.  */
    1591 #define YYPACT_NINF -1355
     1592#define YYPACT_NINF -1328
    15921593static const yytype_int16 yypact[] =
    15931594{
    1594     6526, 10132, -1355,   -28, -1355, -1355, -1355, -1355, -1355, -1355,
    1595    -1355,    11, -1355, -1355, -1355, -1355, -1355, -1355, -1355, -1355,
    1596    -1355, -1355, -1355, -1355, -1355, -1355,   124,   124,   124,  1122,
    1597     1178,   105,  7752,   206, -1355, -1355, -1355, -1355, -1355,   125,
    1598    -1355, -1355, -1355, -1355,   698,   190, -1355, -1355, -1355, -1355,
    1599     9742, -1355, -1355, -1355, -1355,   293,   199, -1355,  1161, -1355,
    1600    -1355, -1355, -1355,   216,  2006,   341,   106,  7869, -1355, -1355,
    1601     9852,   758, -1355, -1355, -1355,   704,   346,  7545,   680,   713,
    1602      704,   967, -1355, -1355,   498,   800, -1355,   704,  1060, -1355,
    1603      248, -1355,   421,   449, -1355, -1355, -1355, -1355,   290,   199,
    1604      124, -1355,   124, -1355, -1355, -1355, -1355, 10443,  1161, -1355,
    1605    -1355,  1161, -1355,   279, -1355, 10553, -1355, -1355,  2175, 10583,
    1606    -1355,   774,   774,   774, -1355, -1355, -1355,   124, -1355, -1355,
    1607    -1355,   350,   392,   395, -1355, -1355, -1355,   403, -1355, -1355,
    1608    -1355, -1355, -1355,   439,   468, -1355, -1355,    66,  9208,  3295,
    1609      571,   369,   448,   481,   484,   491,   516, 10022,  7154,   536,
    1610      559, -1355,  9882, -1355, -1355, -1355, -1355,   562, -1355,   184,
    1611     3734,  3734, -1355,   579,   187, -1355, -1355, -1355, -1355,   597,
    1612      328,   353,   423,   124,   608, -1355, -1355,  2006,  2873,   686,
    1613    -1355,    61, -1355,   124,   124,   199, -1355, -1355,    96, -1355,
    1614      124,   124, -1355,  3264,   646,   699,   774,  7305, -1355, -1355,
    1615      733,  9742, -1355, -1355,   704, -1355, -1355, -1355,   199, -1355,
    1616     1161,   293, -1355,  8102, -1355,   774,   774,   774,   199, -1355,
    1617     1122, -1355,  5636, -1355, -1355,   724,   774, -1355,   774, -1355,
    1618      125,  9208, 10303,   751, -1355,  1178,   766,   774, -1355,  1122,
    1619      767,   775, -1355,  7752,   512, -1355, -1355, -1355,  9671, -1355,
    1620    -1355, 10973, -1355,   686,   134,  4776, 10583,  2175,  3264, -1355,
    1621      153, -1355, -1355, 10553,  1161,   778,  7900, -1355, -1355,   361,
    1622    -1355, 11792,   829,   859,  4180,   841, 11595, 11653, -1355,   852,
    1623    -1355, -1355, -1355, -1355, 11672, 11672,  8980,   854, -1355, -1355,
    1624    -1355, -1355, -1355, -1355,   912, -1355,   878,  2284,  9322, 11595,
    1625    -1355,   629,   677,   734,   265,   760,   882,   884,   890,   928,
    1626       13, -1355, -1355,   895,   936, -1355,    57, -1355, -1355,  3295,
    1627    -1355, -1355,   410,   929, -1355,   621,   929,   953,   125, -1355,
    1628    -1355,   960, 10443, -1355,   963,   971,  9436, -1355, -1355,  1106,
    1629     1778,  8566,  7305,   704, -1355,   704,   774,   774, -1355, -1355,
    1630    -1355, -1355, -1355, -1355,   774, 10443,  1161, -1355, -1355, 10693,
    1631     1309, -1355, 10413, -1355, -1355, -1355, -1355, -1355, -1355, -1355,
    1632      998,  3508, 11595, -1355, -1355, -1355, -1355, -1355, -1355, -1355,
    1633    -1355, -1355, -1355, -1355, -1355, -1355, -1355,  2175, -1355,   793,
    1634     1004,  1008,  1011,   926,  1015,  1019,  1023,  2873, -1355, -1355,
    1635     1032,   293,  1065, -1355, -1355,  1068, -1355, -1355, -1355,  9671,
    1636    -1355, -1355, -1355, -1355, -1355,  3264, -1355,  9208,  9208, -1355,
    1637      774,  2175,  7425,  1161,  8682, -1355, -1355, -1355, -1355,  9671,
    1638      134, -1355, -1355,   704,   199, -1355, -1355,  9671, -1355,  7188,
    1639    -1355, -1355,   774,   774,   550, 10723,  1071,  1646,  4966, -1355,
    1640      435,   455,  1178, -1355,  1077,  1033,  1061,  1081,   774, -1355,
    1641    -1355, -1355, -1355, 11011, -1355,   705,  7065, -1355,   199,  1085,
    1642    -1355,  2175, 11874,  6076, -1355, -1355, -1355, -1355,   939,  3264,
    1643    -1355,  8798,   686,  7635, -1355, -1355, -1355,  1254,   709,   895,
    1644     1178,  7900,   685, 10553, -1355,  7900, -1355, -1355, -1355, -1355,
    1645      769, -1355,  1093,   859,   494,  8980, -1355, 10723, -1355, -1355,
    1646     8980, -1355,  9094,  8980, -1355, -1355,  1096, -1355,   781,  1103,
    1647     1017,  1104, -1355,  3922,  6360, -1355,   553, -1355, -1355, 11518,
    1648    -1355,   618, 11518, -1355, -1355, -1355, -1355, -1355, -1355, -1355,
    1649    -1355, -1355, -1355,  4776,  4776, -1355, -1355, 11595, 11595, 11595,
    1650    11595, 11595, 11595, 11595, 11595, 11595, 11595, 11595, 11595, 11595,
    1651    11595, 11595, 11595, 11595, 11595,  3966,  4776, -1355,   936,  1162,
    1652    -1355, -1355,   124,   124, -1355, -1355,  9208, -1355, -1355,  1068,
    1653      512, -1355,  1068, 11576, -1355, -1355, -1355,  4432,  6360,  1105,
    1654     1107, -1355, 10583, -1355, -1355,   562, -1355,  1108,  1721,  1109,
    1655     2038,   284,   895, -1355,   124,   124,   895,   308, -1355,   124,
    1656      124,  1068, -1355, -1355,   124,   124, -1355,   929, 10833,  1161,
    1657    12019,   503,   537, 10833, -1355, 10973, -1355,   895, -1355, 10443,
    1658    -1355,   239,  8218,  8218,  8218,  1161, -1355,  4062,  1099,   177,
    1659      998,   367,  1110,  1113, -1355,  1118,  3734,   565, -1355,  1194,
    1660     1161,  8218,   512,  2175,   512,   686,   727,   929, -1355, -1355,
    1661      752,   929, -1355, -1355, -1355,   859, -1355,   929,   199, 11011,
    1662    -1355,   801,  1115,   813,  1130, -1355,  1129,   199, -1355, -1355,
    1663     9671,   199,  1133,   506,   530, 10693,  7274,  1915, 11595,  2471,
    1664    -1355, -1355,  1126,    82,  1126, -1355, -1355, -1355,   124,   124,
    1665    -1355, -1355,  1178, -1355,   124, -1355, -1355, 10303,  1178,  1134,
    1666    11595, -1355,  1178, 12019, -1355, -1355,  1138, -1355, -1355, -1355,
    1667      512, -1355, 11947,   971, -1355,  8218,  1021,  8566, -1355, -1355,
    1668      562,  1142,  1143,  1254,  3424, -1355, -1355,  7900, -1355, -1355,
    1669     1147, -1355, -1355,  1155, -1355,  1147,  1157, 11792,  4776,    34,
    1670     1136,   168,  1159,  1156,  1164,   854,  1160,  1169, -1355,  1172,
    1671     1173,  5598,  6914, -1355,  4776, -1355,  1017,  1789, -1355,  5215,
    1672     4776,  1168, -1355, -1355,   998,   814, -1355,  4776, -1355, -1355,
    1673      893, -1355, -1355, -1355, -1355, -1355,   629,   629,   677,   677,
    1674      734,   734,   734,   734,   265,   265,   760,   882,   884,   890,
    1675      928, 11595,   927, -1355, 11011,  1175,  1177,  1180,  1162, -1355,
    1676    -1355, -1355, -1355, -1355, 11011,   818,  8218, -1355, 10443, -1355,
    1677     7394,  9550, -1355, 10413,  7154, -1355, -1355,  1721, 11011,   969,
    1678     1183,  1185,  1187,  1189,  1191,  1192,  1193, -1355,  4666,  2038,
    1679    -1355, -1355, -1355, -1355, -1355, -1355, -1355, -1355, -1355, -1355,
    1680    -1355, -1355, -1355, -1355, -1355, -1355, -1355,  1068, -1355, -1355,
    1681    -1355,   895, -1355, -1355, -1355, -1355, -1355, -1355, -1355, -1355,
    1682     1199, -1355,  1202,  1203, -1355, -1355,   293,  1168,  4062, -1355,
    1683    -1355, -1355,  3508,  1200, -1355, -1355, -1355, -1355, -1355,  1178,
    1684     6657,  1259, -1355, -1355, -1355, -1355,  1186,   293, -1355, -1355,
    1685     1068, -1355, -1355,  1068,    73,  1068, -1355, -1355, -1355, -1355,
    1686    -1355, -1355,  9992, -1355,   199, -1355, 10303, -1355, -1355,  1204,
    1687      942,  1208,  1209,  1211, -1355, -1355,  2471, -1355, -1355, -1355,
    1688    -1355, -1355, -1355, -1355,  1646, 10162,  1061, -1355, -1355,  1033,
    1689     1213,  1188, -1355, -1355,  1212,  1215, -1355,  1021,  1927, -1355,
    1690      567, -1355,  3424,   895, -1355,  1219,  7900, 10863,  9208,  1221,
    1691    -1355, -1355,  1216,  1223,  1217, -1355, 11595,   122,    20,  1224,
    1692    -1355,  1228,   512,  1228,  6360,  4776, -1355, -1355,  1228, -1355,
    1693     1789,  3508, -1355, -1355, -1355, -1355,  1229,  4776,  1237,   512,
    1694     4062, -1355, 11518, -1355,   512, -1355, -1355,  4776, -1355,   759,
    1695      929, -1355, -1355, -1355, -1355, -1355, -1355, -1355,   998,   971,
    1696     9436, -1355, -1355,  7514,  1225, -1355,   816,   929, -1355,   860,
    1697      874,   929, -1355,   774,  5096, -1355, -1355, -1355, 11011, 11011,
    1698    -1355,  8682,  8682, -1355,  1234,  1239,  1246,  1258, -1355,  1262,
    1699      602,   133,  1168, -1355,   512, -1355,  3734, -1355,  4776,   540,
    1700    -1355,  6787,  1267,  1270, 11460,  1271,  1278,    50,    78,    53,
    1701     4776,  1279,   199,  4776,  4776,  1277,  1283,   399,  1266, -1355,
    1702    -1355, -1355,  1256, -1355, -1355, -1355, -1355, -1355, -1355, -1355,
    1703    -1355, -1355,  1178,  1290,  4776, -1355, 11011, 11011,   124,  1291,
    1704    -1355, 10272,  3922,   877,   929, -1355, -1355, -1355, -1355, -1355,
    1705     1288, -1355, -1355, -1355, -1355,  1295,  1927, -1355, -1355,  1280,
    1706    -1355,  1147, -1355, -1355,  2175,  1292, -1355, -1355, -1355,   827,
    1707     1294, -1355,   168,  1298, 11595,  1274,   168,   168,  1303,  1304,
    1708    -1355,  1118,  4776,  1302,  1229,   750,   131,  1306, -1355,  1304,
    1709    -1355,  1311,  1306, -1355, -1355,  1314, -1355, -1355,  1068,  1317,
    1710     1322,  7034,  1321,  1323,  1324, -1355, -1355,  1328, -1355, -1355,
    1711     1068, -1355, -1355, -1355, -1355,  1068,  4776,  4776,   971,  1329,
    1712    -1355, -1355, -1355, -1355, -1355, -1355, -1355, -1355, -1355, -1355,
    1713    -1355, -1355, 11595, 11595,  1331,  1332,  1306, -1355, -1355,  1178,
    1714    -1355, -1355, -1355,  5878, 10863,  4776,  4776,  1387,  4776, -1355,
    1715     1316, -1355,  1319, -1355,  1320,  4776,  1325,  4776,  1035,  1326,
    1716       64,   124,  9704,   973, -1355, -1355,  6657,  1334,   542, -1355,
    1717    -1355, -1355, -1355, -1355, -1355, -1355, -1355, -1355,  1068, -1355,
    1718    11278, -1355,  8798,  1336, -1355, -1355, 10863,   543,   587, -1355,
    1719     1338,  1337,   859,  1346, -1355,   370, -1355, -1355,  4776,  1347,
    1720     1348, -1355, -1355,  1349,   650,   721,   512,  1355,  1356, -1355,
    1721     1357, -1355, 11011, -1355, -1355, -1355, -1355, -1355,  1361, -1355,
    1722    11011, 11011, 11011, -1355, -1355,  1363, -1355,  1366,  1370,  1371,
    1723      667,  8334,  8450, -1355, -1355,   490, -1355,  1375,  1380, -1355,
    1724     8914,   832,   839,  1373,   844,  6216, -1355, -1355, -1355,   588,
    1725    -1355,   866,  1384,  1385,   199,  1435,  1031, -1355, -1355,  4776,
    1726    -1355, 11460, 11518, -1355, -1355, -1355,  1390,  1392, 11011, -1355,
    1727    -1355, -1355,  1391, -1355, -1355, -1355, -1355, -1355, -1355, 10863,
    1728      859,   253, -1355,  1376,   859,  1229,   337, -1355, -1355, -1355,
    1729    -1355, -1355, -1355, -1355, -1355,  1393, -1355, -1355, -1355, -1355,
    1730    -1355, -1355,  1395,  1402, -1355, -1355, -1355, -1355, -1355, -1355,
    1731    -1355,  1405, -1355,  1404, -1355, -1355, 11460,   155,  4776, 11460,
    1732    -1355,  1409,  4776, -1355,   195,  1424,  1425, -1355, -1355,  1417,
    1733     1418,  1396, -1355,  1037, -1355, -1355, -1355, -1355,  1161,  2175,
    1734     1414,   912,  1038, 11595, -1355,   886,  1421,  4776,   512,   512,
    1735     1426,  1428,  1432,  1433, -1355, -1355,  8682,  1419, -1355,  1502,
    1736    11595,  1430, -1355, -1355, 11371, -1355,   888, -1355,  1413, 11460,
    1737     1416, -1355, -1355,  1440, -1355,  1444, -1355,  1459,  1461, -1355,
    1738     1427,  1448, 10863, -1355, -1355, -1355,   859,   512,  1450,  1436,
    1739     1445, -1355,  1306,  1306, -1355, -1355, -1355, -1355, -1355, 11460,
    1740      340, -1355,  1042, -1355, -1355,  5372, -1355, -1355,  1438,  4776,
    1741    -1355,  4776,  5372,   199, 10723,   199, 10723,  1455, -1355,  1457,
    1742    -1355, -1355, -1355,  1458,   912, -1355,   901, -1355, -1355,  4776,
    1743     1460,  1462, -1355, 11595, 11595, -1355, -1355,  1120,   121, -1355,
    1744    -1355,  1451, -1355,  1120, -1355, -1355,  2159,   512, -1355, -1355,
    1745      199, 10723,   199, 10723,  1467,  1452,   512, -1355, -1355, -1355,
    1746    -1355, -1355, 11371,  1470,  1120,  7986,  4776, 11282,  1472,  1120,
    1747     1479,  2159,  2686, -1355, -1355, -1355,  1482, -1355, -1355, -1355,
    1748    -1355,  9208, -1355, -1355, -1355, 11149, -1355, 11371, -1355, -1355,
    1749     1463, 11056, -1355, -1355, 11282,   199,  2686,   199,  1483,  1489,
    1750      913, -1355, 11149, -1355, -1355, -1355, 11056, -1355, -1355, -1355,
    1751      199,   199, -1355, -1355, -1355, -1355, -1355, -1355, -1355, -1355
     1595    7162,  9347, -1328,    62, -1328, -1328, -1328, -1328, -1328, -1328,
     1596   -1328,    38, -1328, -1328, -1328, -1328, -1328, -1328, -1328, -1328,
     1597   -1328, -1328, -1328, -1328, -1328, -1328,   207,   207,   207,  1203,
     1598    1016,    43,  8157,   275, -1328, -1328, -1328, -1328, -1328,   222,
     1599   -1328, -1328, -1328,   557,   264, -1328, -1328, -1328, -1328,  3410,
     1600   -1328, -1328, -1328, -1328,     6,   284, -1328,  1270, -1328, -1328,
     1601   -1328, -1328,   295,  1095,   444,   105,  5843, -1328, -1328,  9886,
     1602    1150, -1328, -1328, -1328,  1157,   453,  3851,  1007,   683,  1157,
     1603     795, -1328, -1328,   654,   738, -1328,  1157,  1633, -1328,   323,
     1604   -1328,   507,   534, -1328, -1328, -1328, -1328,   477,   284,   207,
     1605   -1328,   207, -1328, -1328, -1328, -1328,  9575,  1270, -1328, -1328,
     1606    1270, -1328,   485, -1328,  9689, -1328, -1328,  2141, 10207, -1328,
     1607     954,   954,   954, -1328, -1328, -1328,   207, -1328, -1328, -1328,
     1608     515,   550,   565, -1328, -1328, -1328,   568, -1328, -1328, -1328,
     1609   -1328, -1328,   578,   624, -1328, -1328,   103,  9430,  2160,   312,
     1610     511,   638,   641,   646,   657,   661,  8834,  7559,   662,   709,
     1611   -1328,  9916, -1328, -1328, -1328, -1328,   722, -1328,    13,  3378,
     1612    3378, -1328,   721,   108, -1328, -1328, -1328, -1328,   731,   161,
     1613     310,   313,   207,   724, -1328, -1328,  1095,  1965,   797, -1328,
     1614      79, -1328,   207,   207,   284, -1328, -1328,    80, -1328,   207,
     1615     207, -1328,  2460,   764,   779,   954,  7590, -1328, -1328,   794,
     1616    3410, -1328, -1328,  1157, -1328, -1328, -1328,   284, -1328,  1270,
     1617       6, -1328,  8496, -1328,   954,   954,   954,   284, -1328,  1203,
     1618   -1328,  3975, -1328, -1328,   760,   954, -1328,   954, -1328,   222,
     1619    9430,  9461,   756, -1328,  1016,   796,   954, -1328,  1203,   781,
     1620     808, -1328,  8157,   907, -1328, -1328, -1328,  4258, -1328, -1328,
     1621    6530, -1328,   797,   109,  4971, 10207,  2141,  2460, -1328,   140,
     1622   -1328, -1328,  9689,  1270,   846, 11353, -1328, -1328,   570, -1328,
     1623   11095,   861,   898,  6606,   875,  6875,  7175, -1328,   885, -1328,
     1624   -1328, -1328, -1328, 10975, 10975,   907,  9202,   892, -1328, -1328,
     1625   -1328, -1328, -1328, -1328,   924, -1328,   845,  2420,  9544,  6875,
     1626   -1328,   469,   445,   777,   634,   925,   901,   902,   909,   956,
     1627      32, -1328, -1328,   922,   940, -1328,   107, -1328, -1328,  2160,
     1628   -1328, -1328,   525,   945, -1328,   601,   945,   952,   222, -1328,
     1629   -1328,   980,  9575, -1328,   982,   995,  9658, -1328, -1328,  1834,
     1630     953,  8917,  7590,  1157, -1328,  1157,   954,   954, -1328, -1328,
     1631   -1328, -1328, -1328, -1328,   954,  9575,  1270, -1328, -1328, 10280,
     1632    2053, -1328,  8646, -1328, -1328, -1328, -1328, -1328, -1328, -1328,
     1633    1002,  3599,  6875, -1328, -1328, -1328, -1328, -1328, -1328, -1328,
     1634   -1328, -1328, -1328, -1328, -1328, -1328, -1328,  2141, -1328,   993,
     1635    1014,  1018,  1020,  1011,  1040,  1050,  1075,  1965, -1328, -1328,
     1636    1017,     6,  1082, -1328, -1328,  1078, -1328, -1328, -1328,  4258,
     1637   -1328, -1328, -1328, -1328, -1328,  2460, -1328,  9430,  9430, -1328,
     1638     954,  2141,  7710,  1270,  8990, -1328, -1328, -1328, -1328,  4258,
     1639     109, -1328, -1328,  1157,   284, -1328, -1328,  4258, -1328,  5377,
     1640   -1328, -1328,   954,   954,   193, 10318,  1091,   803,  5956, -1328,
     1641     316,   338,  1016, -1328,  1094,  1108,  1109,  1128,   954, -1328,
     1642   -1328, -1328, -1328, 10468, -1328,   229,  7332, -1328,   284,  1130,
     1643   -1328,  2141, 11177,  5632, -1328, -1328, -1328, -1328,  1033,  2460,
     1644   -1328,  9063,   797,  8040, -1328, -1328, -1328,   867,   238,   922,
     1645    1016, 11353,  1127,  9689, -1328, 11353, -1328, -1328, -1328, -1328,
     1646     355, -1328,  1155,   898,   274,  9202, -1328, 10318, -1328, -1328,
     1647    9202, -1328,  9316,  9202, -1328, -1328, -1328,  1158, -1328,   464,
     1648    1159,  1077,  1172, -1328,  5577,  4344, -1328,   377, -1328, -1328,
     1649    6047, -1328,   394,  6047, -1328, -1328, -1328, -1328, -1328, -1328,
     1650   -1328, -1328, -1328, -1328,  4971,  4971, -1328, -1328,  6875,  6875,
     1651    6875,  6875,  6875,  6875,  6875,  6875,  6875,  6875,  6875,  6875,
     1652    6875,  6875,  6875,  6875,  6875,  6875,  4543,  4971, -1328,   940,
     1653    1073, -1328, -1328,   207,   207, -1328, -1328,  9430, -1328, -1328,
     1654    1078,   907, -1328,  1078,  6220, -1328, -1328, -1328,  2379,  4344,
     1655    1173,  1178, -1328, 10207, -1328, -1328,   722, -1328,  1180,   771,
     1656    1181,  2349,   160,   922, -1328,   207,   207,   922,   206, -1328,
     1657     207,   207,  1078, -1328, -1328,   207,   207, -1328,   945, 10348,
     1658    1270, 11322,    23,   374, 10348, -1328,  6530, -1328,   922, -1328,
     1659    9575, -1328,    89,  8612,  8612,  8612,  1270, -1328,  4738,  1179,
     1660     282,  1002,   344,  1184,  1188, -1328,  1182,  3378,   493, -1328,
     1661    1266,  1270,  8612,   907,  2141,   907,   797,   670,   945, -1328,
     1662   -1328,   706,   945, -1328, -1328, -1328,   898, -1328,   945,   284,
     1663   10468, -1328,   491,  1206,   529,  1207, -1328,  1201,   284, -1328,
     1664   -1328,  4258,   284,  1218,   435,   476, 10280,  7679,  1689,  6875,
     1665    2634, -1328, -1328,  1204,    84,  1204, -1328, -1328, -1328,   207,
     1666     207, -1328, -1328,  1016, -1328,   207, -1328, -1328,  9461,  1016,
     1667    1205,  6875, -1328,  1016, 11322, -1328, -1328,  1225, -1328, -1328,
     1668   -1328,   907, -1328, 11250,   995, -1328,  8612,  1114,  8917, -1328,
     1669   -1328,   722,  1221,  1223,   867,  2656, -1328, -1328, 11353, -1328,
     1670   -1328,  1224, -1328, -1328,  1234, -1328,  1224,  1237, 11095,  4971,
     1671      83,  1217,    93,  1240,  1243,  1246,   892,  1252,  1262, -1328,
     1672    1265,  1271, 10056,  4468, -1328,  4971, -1328,  1077,  1872, -1328,
     1673    4836,  4971,  1255, -1328, -1328,  1002,   562, -1328,  4971, -1328,
     1674   -1328,   951, -1328, -1328, -1328, -1328, -1328,   469,   469,   445,
     1675     445,   777,   777,   777,   777,   634,   634,   925,   901,   902,
     1676     909,   956,  6875,   906, -1328, 10468,  1272,  1274,  1276,  1073,
     1677   -1328, -1328, -1328, -1328, -1328, 10468,   636,  8612, -1328,  9575,
     1678   -1328,  7799,  9772, -1328,  8646,  7559, -1328, -1328,   771, 10468,
     1679    1063,  1277,  1279,  1283,  1286,  1287,  1292,  1293, -1328,  3021,
     1680    2349, -1328, -1328, -1328, -1328, -1328, -1328, -1328, -1328, -1328,
     1681   -1328, -1328, -1328, -1328, -1328, -1328, -1328, -1328,  1078, -1328,
     1682   -1328, -1328,   922, -1328, -1328, -1328, -1328, -1328, -1328, -1328,
     1683   -1328,  1294, -1328,  1295,  1296, -1328, -1328,     6,  1255,  4738,
     1684   -1328, -1328, -1328,  3599,  1300, -1328, -1328, -1328, -1328, -1328,
     1685    1016,  7010,  1347, -1328, -1328, -1328, -1328,  1288,     6, -1328,
     1686   -1328,  1078, -1328, -1328,  1078,    50,  1078, -1328, -1328, -1328,
     1687   -1328, -1328, -1328, 10026, -1328,   284, -1328,  9461, -1328, -1328,
     1688    1305,   963,  1297,  1298,  1310, -1328, -1328,  2634, -1328, -1328,
     1689   -1328, -1328, -1328, -1328, -1328,   803, 10138,  1109, -1328, -1328,
     1690    1108,  1316,  1312, -1328, -1328,  1317,  1320, -1328,  1114,  1935,
     1691   -1328,   436, -1328,  2656,   922, -1328,  1324, 11353, 10430,  9430,
     1692    1326, -1328, -1328,  1319,  1327,  1321, -1328,  6875,   112,   182,
     1693    1330, -1328,  1331,   907,  1331,  4344,  4971, -1328, -1328,  1331,
     1694   -1328,  1872,  3599, -1328, -1328, -1328, -1328,  1336,  4971,  1335,
     1695     907,  4738, -1328,  6047, -1328,   907, -1328, -1328,  4971, -1328,
     1696     740,   945, -1328, -1328, -1328, -1328, -1328, -1328, -1328,  1002,
     1697     995,  9658, -1328, -1328,  7919,  1344, -1328,   772,   945, -1328,
     1698     788,   818,   945, -1328,   954,  5460, -1328, -1328, -1328, 10468,
     1699   10468, -1328,  8990,  8990, -1328,  1339,  1340,  1348,  1349, -1328,
     1700    1350,   503,   115,  1255, -1328,   907, -1328,  3378, -1328,  4971,
     1701     506, -1328,  7436,  1332,  1355, 10917,  1358,  1365,   260,   584,
     1702     505,  4971,  1366,   284,  4971,  4971,  1367,   608,  1361,  1353,
     1703   -1328, -1328, -1328,  1373, -1328, -1328, -1328, -1328, -1328, -1328,
     1704   -1328, -1328, -1328,  1016,  1370,  4971, -1328, 10468, 10468,   207,
     1705    1383, -1328, 10169,  5577,   866,   945, -1328, -1328, -1328, -1328,
     1706   -1328,  1379, -1328, -1328, -1328, -1328,  1385,  1935, -1328, -1328,
     1707    1369, -1328,  1224, -1328, -1328,  2141,  1387, -1328, -1328, -1328,
     1708     659,  1386, -1328,    93,  1391,  6875,  1377,    93,    93,  1395,
     1709    1394, -1328,  1182,  4971,  1402,  1336,  1003,   123,  1399, -1328,
     1710    1394, -1328,  1407,  1399, -1328, -1328,  1410, -1328, -1328,  1078,
     1711    1414,  1420,  6815,  1419,  1422,  1425, -1328, -1328,  1430, -1328,
     1712   -1328,  1078, -1328, -1328, -1328, -1328,  1078,  4971,  4971,   995,
     1713    1431, -1328, -1328, -1328, -1328, -1328, -1328, -1328, -1328, -1328,
     1714   -1328, -1328, -1328,  6875,  6875,  1433,  1438,  1399, -1328, -1328,
     1715    1016, -1328, -1328, -1328,  8423, 10430,  4971,  4971,  1506,  4971,
     1716   -1328, -1328,  1428, -1328,  1436,  4971,  1439,  1441,  4971,  1214,
     1717    1442,    52,  9804,  1144,   207, -1328, -1328,  7010,  1455,   510,
     1718   -1328, -1328, -1328, -1328, -1328, -1328, -1328, -1328, -1328,  1078,
     1719   -1328, 10735, -1328,  9063,  1444, -1328, -1328, 10430,   512,   604,
     1720   -1328,  1460,  1459,   898,  1471, -1328,   592, -1328, -1328,  4971,
     1721    1468,  1469, -1328, -1328,  1474,   693,   716,   907,  1482,  1483,
     1722   -1328,  1487, -1328, 10468, -1328, -1328, -1328, -1328, -1328,  1489,
     1723   -1328, 10468, 10468, 10468, -1328, -1328,  1490, -1328,  1491,  1473,
     1724    1495,   618,  8685,  8801, -1328, -1328,   293, -1328,  1494,  1498,
     1725   -1328,  9136,   674,   725,  1504,   758,  7301, -1328, -1328,   611,
     1726   -1328, -1328,   792,  1505,  1508,   284,  1558,  1023, -1328, -1328,
     1727    4971, -1328,  6047, 10917, -1328, -1328, -1328,  1509,  1510, 10468,
     1728   -1328, -1328, -1328,  1511, -1328, -1328, -1328, -1328, -1328, -1328,
     1729   10430,   898,   150, -1328,  1492,   898,  1336,   370, -1328, -1328,
     1730   -1328, -1328, -1328, -1328, -1328, -1328,  1512, -1328, -1328, -1328,
     1731   -1328, -1328, -1328,  1514,  1515, -1328, -1328, -1328, -1328, -1328,
     1732   -1328, -1328,  1513, -1328,  1516, -1328, -1328, 10917,   125,  4971,
     1733   10917, -1328,  1524,  4971, -1328,   136,  1526,  1539, -1328, -1328,
     1734    1528,  1529,  1507,  1001, -1328, -1328, -1328, -1328, -1328,  1270,
     1735    2141,  1525,   924,  1036,  6875, -1328,   837,  1530,  4971,   907,
     1736     907,  1531,  1538,  1540,  1541, -1328, -1328,  8990,  1537, -1328,
     1737    1613,  6875,  1542, -1328, -1328, 10828, -1328,   879, -1328,  1532,
     1738   10917,  1533, -1328, -1328,  1546, -1328,  1551, -1328,  1566,  1572,
     1739   -1328,  1545,  1559, 10430, -1328, -1328, -1328,   898,   907,  1563,
     1740    1547,  1557, -1328,  1399,  1399, -1328, -1328, -1328, -1328, -1328,
     1741   10917,   237, -1328,  1060, -1328, -1328,  8274, -1328, -1328,  1548,
     1742    4971, -1328,  4971,  8274,   284, 10318,   284, 10318,  1568, -1328,
     1743    1573, -1328, -1328, -1328,  1567,   924, -1328,   923, -1328, -1328,
     1744    4971,  1575,  1576, -1328,  6875,  6875, -1328, -1328,  1088,   113,
     1745   -1328, -1328,  1553, -1328,  1088, -1328, -1328,  2465,   907, -1328,
     1746   -1328,   284, 10318,   284, 10318,  1580,  1564,   907, -1328, -1328,
     1747   -1328, -1328, -1328, 10828,  1583,  1088,  8350,  4971, 10739,  1584,
     1748    1088,  1585,  2465,  2931, -1328, -1328, -1328,  1591, -1328, -1328,
     1749   -1328, -1328,  9430, -1328, -1328, -1328, 10606, -1328, 10828, -1328,
     1750   -1328,  1570, 10513, -1328, -1328, 10739,   284,  2931,   284,  1593,
     1751    1595,   938, -1328, 10606, -1328, -1328, -1328, 10513, -1328, -1328,
     1752   -1328,   284,   284, -1328, -1328, -1328, -1328, -1328, -1328, -1328,
     1753   -1328
    17521754};
    17531755
     
    17551757static const yytype_int16 yypgoto[] =
    17561758{
    1757    -1355,  4671,  3340, -1355,   -29, -1355,  1206,   889,  -259, -1355,
    1758      526,  -532,  -488,  -865,  -161,  3194,     0, -1355,   549,   606,
    1759      623,   581,   600,  1034,  1041,  1036,  1040,  1043, -1355,   464,
    1760     -283,  5428,  -920,  -733,  -959, -1355,  -190,  -730,   365, -1355,
    1761     1538, -1355,   379, -1141, -1355, -1355,   112, -1355, -1341,  -609,
    1762      225, -1355, -1355, -1355, -1355,    48, -1087, -1355, -1355, -1355,
    1763    -1355, -1355, -1355,   300, -1335,    81, -1355,  -312, -1355,   479,
    1764      274, -1355,   149, -1355,  -359, -1355, -1355, -1355,   531,  -852,
    1765    -1355, -1355,     8,  -988,   376,  2486, -1355, -1355, -1355,   -81,
    1766    -1355,    99,  1389,  -187,  1960,  4204, -1355, -1355,    52,   394,
    1767     1565,  -246,  1300, -1355,  1933, -1355, -1355,   110,  2272, -1355,
    1768     2685,  1719, -1355, -1355, -1355,  -675,  -409,  1170,  1171,   683,
    1769      924,   329, -1355, -1355, -1355,   907,   692,   -78, -1355,  -241,
    1770     -263,   674, -1355, -1355,  -862,  -881,  -184,    26,  1049,    86,
    1771    -1355,   983,  -133,  -208,  -209,  -150,   651,   749, -1355,   987,
    1772    -1355,  2825,   209,  -478,   902, -1355, -1355,   684, -1355,  -230,
    1773    -1355,    35, -1355, -1355, -1355, -1207,   404, -1355, -1355, -1355,
    1774     1165, -1355,    44, -1355, -1355,  -853,  -110, -1354,  -104,  3033,
    1775    -1355,  4412, -1355,   896, -1355,  -135,    59,  -173,  -172,  -171,
    1776        7,   -42,   -41,   -40,  1597,    25,    28,    46,  -130,  -170,
    1777     -169,  -165,  -156,  -307,  -519,  -494,  -484,  -542,  -299,  -546,
    1778    -1355, -1355,  -514,  1076,  1082,  1088,  1849,  5102,  -569,  -582,
    1779     -552,  -545,  -556, -1355,  -356,  -684,  -672,  -664,  -598,  -210,
    1780     -201, -1355, -1355,   -10,     5,   -71, -1355,  4129,    37,  -610,
    1781      -23
     1759   -1328,  5033,  3981, -1328,   462, -1328,    41,     0,  -266, -1328,
     1760     629,  -530,  -491,  -946,    44,  6093,  1325, -1328,  -145,   685,
     1761     687,   763,   628,  1136,  1140,  1135,  1139,  1142, -1328,   121,
     1762    -486,  5463,  -869,  -668,  -953, -1328,    82,  -669,   286, -1328,
     1763     761, -1328,   487, -1173, -1328, -1328,   220, -1328, -1056,  -711,
     1764     333, -1328, -1328, -1328, -1328,   153, -1149, -1328, -1328, -1328,
     1765   -1328, -1328, -1328,   407, -1194,    53, -1328,  -367, -1328,   586,
     1766     380, -1328,   254, -1328,  -311, -1328, -1328, -1328,   635,  -853,
     1767   -1328, -1328,     1, -1043,    33,   825, -1328, -1328, -1328,  -137,
     1768   -1328,    56,  1849,  -201,  2484,  4445, -1328, -1328,    18,   403,
     1769     583,  -228,  1261, -1328,  2554, -1328, -1328,   106,  2921, -1328,
     1770    3406,  1470, -1328, -1328, -1328,  -638,  -431,  1278,  1282,   784,
     1771    1026,   294, -1328, -1328, -1328,  1019,   787,  -503, -1328,  -383,
     1772    -257,   -66, -1328, -1328,  -966,  -965,  -357,  -136,  1148,    24,
     1773   -1328,  1219,   429,  -306,  -197,  -129,   749,   851, -1328,  1087,
     1774   -1328,  3476,   780,  -426,   999, -1328, -1328,   783, -1328,  -230,
     1775   -1328,    87, -1328, -1328, -1328, -1267,   502, -1328, -1328, -1328,
     1776    1258, -1328,    59, -1328, -1328,  -855,  -106, -1327,   -91,  2314,
     1777   -1328,  1987, -1328,   996, -1328,  -143,   298,  -180,  -177,  -174,
     1778       5,   -40,   -36,   -35,  1329,    39,    55,    68,  -100,  -171,
     1779    -166,  -165,  -162,  -312,  -570,  -551,  -548,  -549,  -290,  -542,
     1780   -1328, -1328,  -477,  1176,  1183,  1187,   244,  5746,  -594,  -573,
     1781    -562,  -554,  -469, -1328,  -406,  -684,  -672,  -663,  -604,  -191,
     1782    -239, -1328, -1328,   263,   351,   -84, -1328,  4721,   128,  -628,
     1783    -435
    17821784};
    17831785
     
    17881790static const yytype_int16 yytable[] =
    17891791{
    1790       50,   115,   151,   152,   153,   108,   108,    99,   269,   116,
    1791      790,   454,   441,   931,   400,   401,   402,   403,   404,   429,
    1792      384,   385,   405,   750,   514,   932,   844,   755,   973,   178,
    1793      869,   406,    50,   933,   767,   507,   262,   108,  1144,    99,
    1794      165,   852,   945,   612,   149,   893,   993,  1091,  1090,   711,
    1795       50,   617,    70,   408,   124,   855,   845,   163,   409,    98,
    1796      678,   862,   843,   846,   188,   819,  1463,   211,   851,   154,
    1797       50,   195,   155,  1202,   218,   108,   145,   228,   221,   178,
    1798      687,    51,   178,  1467,    70,   411,   343,   168,   691,   840,
    1799      156,    98,   931,   426,   400,   401,   402,   403,   404,    64,
    1800       31,   706,   405,   150,   932,   165,   528,   115,   574,    98,
    1801       78,   406,   933,    51,   841,   115,   535,   282,   268,   273,
    1802      125,    31,  1210,   191,   842,  1214,    98,  1319,   178,    98,
    1803     1135,    64,  1400,   408,   204,    31,   604,  1136,   409,  1152,
    1804     1463,  1509,    78,   575,   179,   151,   152,   153,   308,   149,
    1805     1212,   974,   168,  1219,  1220,   535,   163,   115,   346,   484,
    1806      486,  1186,   211,    31,   636,  -235,  -235,   585,   640,   374,
    1807      254,  1215,   412,   586,   778,   283,  1538,   480,  1540,  1184,
    1808     1185,  1467,  1211,  1098,   205,   328,  1467,   188,   188,  1196,
    1809      745,   178,    31,   412,   263,   163,  1320,   264,   410,  1420,
    1810     1421,   436,   676,   268,   535,   420,  1467,   412,    98,  1201,
    1811     1213,    50,   154,  1467,   144,   155,  1264,   146,   163,   682,
    1812      684,    98,  1261,   211,   840,   151,   152,   153,   738,  1192,
    1813      444,  1134,   462,   156,   148,  1483,  -235,   681,   683,  1420,
    1814     1421,   308,   115,   485,  1265,   178,   399,   191,   437,   841,
    1815      293,  1101,   178,    50,   759,   844,  1193,  -470,   108,   842,
    1816       99,   273,   490,   436,   412,   448,   273,   268,   268,  1422,
    1817       98,   596,   673,   115,  1154,   163,   217,   674,   328,   976,
    1818     1037,   739,    98,   855,   469,   845,   532,   665,  -470,   727,
    1819     -470,  1024,   846,   244,  -470,   754,   308,   472,   165,  1345,
    1820      378,   343,   157,   388,  1012,    70,   440,  1036,   308,  1431,
    1821      437,   617,    98,   173,   769,   680,   379,  1202,   840,   389,
    1822      178,   685,   702,    31,   579,   528,   488,   704,   217,   149,
    1823      528,   924,   183,   528,    51,   535,   374,   178,   480,  1110,
    1824     1216,   178,   115,   841,   203,   168,   346,    31,   485,  -291,
    1825      610,   628,    64,   842,   673,   564,   565,   481,   480,   674,
    1826      492,  1186,  1403,    78,   249,   633,   480,   509,    78,   633,
    1827      576,   217,   115,  1091,  1090,   844,    57,   117,   823,   883,
    1828      883,   883,   762,   606,   763,   812,  1551,   764,    98,   852,
    1829      770,   566,   567,   853,    71,   609,   829,   268,   883,   254,
    1830      170,   882,   882,   882,   178,   845,  1562,   188,    57,   611,
    1831      265,  1186,   846,  1566,   374,   935,   914,   860,   604,   609,
    1832      882,   252,   869,   604,   171,   268,    71,   308,   308,  1184,
    1833     1185,   268,   217,   738,   633,   179,  1493,   948,   878,   112,
    1834     1552,   141,   142,   212,   391,   462,   222,  -113,   462,  -521,
    1835       41,    42,   637,  1382,  1407,   115,   641,   699,   115,   -10,
    1836      392,   214,   343,  1193,   328,   328,   191,  1567,  -113,   393,
    1837      217,   288,   883,  1172,  1174,   217,   748,  1202,   889,   331,
    1838     1343,   268,    41,    42,  1202,   394,   739,  1344,  1121,   268,
    1839      502,   633,   503,    50,   882,   727,   374,   744,   108,   728,
    1840       99,  -444,   977,   115,  -445,   532,   894,   532,   523,   738,
    1841      532,   507,   278,   532,  1150,   308,   703,   115,   481,   587,
    1842      308,   412,   308,   308,   400,   401,   402,   403,   404,    78,
    1843      777,  1260,   405,   115,   346,  1186,   711,  1202,   481,   395,
    1844      328,   406,  1035,  1452,  1453,    70,   481,  1037,   280,    78,
    1845      617,   712,    98,   905,  1458,   396,   611,    78,   332,   328,
    1846      217,   907,   739,   883,   408,   884,   885,   713,   178,   409,
    1847      112,   714,   141,   240,    51,  1380,   535,   281,   579,   579,
    1848     1106,    41,    42,   903,   112,   882,   308,   715,   706,   856,
    1849      736,   333,    64,   859,   334,    41,    42,   633,   346,   442,
    1850      178,   335,   628,    78,   760,  -113,  -113,   241,   610,   480,
    1851      610,   761,   242,  1499,   876,   872,   178,   443,   879,   873,
    1852     1499,  -113,   712,   328,   343,   112,   336,  1017,   633,    57,
    1853      727,   178,   829,   633,  1106,   628,    41,    42,   927,   633,
    1854      727,   217,   633,   633,   633,   895,   714,    71,   372,   874,
    1855      831,   953,  1430,   875,   727,  1035,  1199,   956,  1199,  1334,
    1856      692,   633,   928,   268,   782,   870,   586,   839,   373,   611,
    1857      606,   377,  1200,  1548,  1325,  1335,   896,  1048,   651,   874,
    1858      254,   330,   897,  1117,     2,   208,     4,     5,     6,     7,
    1859      112,   217,   711,  1133,   386,   115,   346,   699,  1095,   699,
    1860      343,    41,    42,  1336,   774,   728,   390,   462,     2,   208,
    1861        4,     5,     6,     7,  -106,   871,  -292,   115,  -106,  1337,
    1862     1383,   829,   112,     8,     9,    10,    11,    12,   178,   788,
    1863      590,   886,   412,    41,    42,   633,   958,   628,  1129,  1501,
    1864      398,  1502,  1055,   744,   744,   214,   902,   557,  1015,    35,
    1865      410,    36,    31,   558,   559,   427,   930,   112,   703,   141,
    1866      142,  1349,     2,   208,     4,     5,     6,     7,    41,    42,
    1867       37,   115,   346,    35,    40,    36,   777,   777,  1183,  1368,
    1868       34,    41,    42,  1369,     8,     9,    10,    11,    12,   481,
    1869     1393,   230,    43,   112,   751,   736,  1549,   560,   561,   752,
    1870       78,   673,   839,   611,    41,    42,   674,    44,   428,   702,
    1871      604,   217,    -3,    31,   704,   729,    46,    47,   579,   746,
    1872     1251,   730,   562,   563,  1255,   747,   633,    35,   633,    36,
    1873     1020,   481,  1351,   633,   346,   519,   908,   610,   412,   217,
    1874      728,    34,    78,   509,   217,   433,  1176,   931,  1040,   610,
    1875      728,  1253,   568,   569,   727,   727,   451,   555,   556,   932,
    1876     -113,   911,  -113,   412,   728,  -368,  -113,   933,  1156,    57,
    1877      412,   736,   112,   977,   141,   142,   214,   977,   977,   756,
    1878     -397,  -113,  -113,    41,    42,   757,   831,    71,  1522,    49,
    1879      114,   773,   493,   178,  1527,   555,   839,   774,   738,   470,
    1880      308,   829,   254,   330,   412,   108,  1197,   471,   611,  1293,
    1881     1294,   918,   727,   727,   245,  1547,   462,   774,   114,   114,
    1882     1554,    49,   633,   920,  1001,  1168,   115,   412,  1014,   774,
    1883     1002,   555,   217,    49,   730,   462,   699,  1249,   513,    49,
    1884     1118,   293,  1376,   586,   699,   115,   217,    49,   774,  1377,
    1885      517,   739,    70,    49,  1379,   774,    49,   958,   958,    49,
    1886      774,   522,   744,   536,   537,   538,   533,   115,   308,  1171,
    1887     -293,   609,   108,   114,   114,  1122,  1384,     8,     9,    10,
    1888       11,    12,   774,  1173,   346,   609,  1236,   539,   412,   540,
    1889      777,   541,   542,  1341,   535,   703,  1449,    49,  1468,    64,
    1890       49,   570,  1446,   703,   774,   328,    31,    49,  1005,  1002,
    1891       78,  1515,   571,   143,  1244,  1301,  1302,  1516,  1304,   572,
    1892      346,   611,   573,  1572,   443,  1309,   576,  1311,  1371,   586,
    1893       43,   939,   739,   939,    34,   420,   669,   412,    49,   217,
    1894      339,   633,   633,   774,  1007,   578,    49,   412,   490,   330,
    1895      412,    49,   330,   412,    46,    47,  1330,   870,   536,   537,
    1896      538,   308,  -441,  -294,   728,   728,   108,   243,   246,   594,
    1897        8,     9,    10,    11,    12,   597,    49,    49,   853,   330,
    1898      609,  1401,   539,    -3,   540,  1401,   541,  1322,   727,  1389,
    1899     1390,   462,    49,  1312,  1313,  1314,   727,   727,   727,    31,
    1900       49,   115,   633,  1350,  1352,  1353,   793,   794,   795,    49,
    1901      646,    43,    49,  1204,   666,    43,   958,   214,   667,   114,
    1902     1448,   668,   728,   728,   268,   670,   776,    34,   412,   671,
    1903      957,   214,   609,   672,   114,    46,    47,  1460,   114,    46,
    1904       47,   675,    49,   114,   727,   800,   801,   802,   803,   718,
    1905     1534,   343,  1440,  1002,  1446,  1447,    49,    49,  1494,  1495,
    1906      481,   346,   934,    49,  1420,  1421,   796,   797,   804,   805,
    1907       49,    78,     8,     9,    10,    11,    12,   677,    37,   259,
    1908      176,   177,    40,   695,   934,   798,   799,  1484,  1426,    41,
    1909       42,   717,   720,   178,   131,   722,   132,   133,   134,  -239,
    1910     1106,    31,   758,   273,   115,    41,    42,   113,   771,   108,
    1911     1520,  1460,   221,   775,   779,   373,   -12,   832,    49,   833,
    1912      836,   847,   115,   899,   214,   919,   308,   -13,   466,    34,
    1913      891,   108,   217,    37,   892,   176,   177,    40,    49,    49,
    1914      921,   922,   633,   698,    41,    42,   115,   926,  -418,   947,
    1915      112,   108,   141,   142,  1122,    49,    43,  -525,   961,    49,
    1916      736,    41,    42,   747,   968,  1079,  1331,   970,   975,   981,
    1917      652,   578,   982,   412,   983,  1006,    57,   985,    70,   986,
    1918       46,    47,   987,   988,   997,  1009,    49,  1010,  1092,  1444,
    1919     1011,   633,   633,  1026,    71,  1027,    49,  1028,   728,  1029,
    1920      273,  1030,  1031,  1032,  1112,   308,   728,   728,   728,  1043,
    1921      108,  1560,  -406,  -405,    49,  1057,  1102,  1094,  1103,  1104,
    1922       49,  1105,    49,  1111,  1113,    64,    37,  1114,   992,  1120,
    1923       40,  1130,   774,  1131,  1132,  1166,    78,    41,    42,   115,
    1924     1137,   736,   991,  1123,   108,  1142,    49,  1122,    43,  1145,
    1925     1187,   114,  1050,   917,   728,  1188,  1189,  1204,   400,   401,
    1926      402,   403,   404,   743,   653,   114,   405,   215,  1190,   178,
    1927       49,    -3,    46,    47,  1191,   406,  1205,   234,    49,  1206,
    1928     1208,    37,    49,   176,   177,    40,    49,  1209,  1217,   114,
    1929      118,   114,    41,    42,  1221,  1222,  1533,   408,  1224,   268,
    1930     1229,  1234,   409,  1239,   481,  1241,  1254,  1245,  1250,   502,
    1931     1252,   652,   217,  1257,  1262,    78,   633,   443,   377,   215,
    1932     1258,   673,  1266,  1269,  1271,   114,   674,  1273,   652,  1207,
    1933      114,   652,  1274,  1275,  1303,  1276,  1277,    57,  1279,   161,
    1934      934,  1286,   115,  1295,  1296,   716,  1332,   108,  1306,  1324,
    1935     1122,  1307,  1308,  1338,  1340,    71,  1342,  1310,  1318,  1346,
    1936      474,  1348,   215,  1347,  1507,   115,  1507,  1354,  1355,  1356,
    1937      108,  1153,   115,  1358,   115,  1364,   115,   108,  1365,   114,
    1938     1366,  1367,  1378,   749,  1443,   753,    49,  1374,  1008,   151,
    1939      152,   153,  1375,  1385,  1386,  1314,   260,    49,  1013,    49,
    1940     1394,  1507,  1395,  1507,   161,  1397,  1532,  1414,  1404,   217,
    1941     1407,   115,  1025,   115,  1415,  -407,  1418,  1204,    49,  1429,
    1942     1433,  1435,  1050,   215,  1204,   115,  1437,  1438,  1439,  1445,
    1943      108,  1532,  1532,  1450,    49,  1369,  1454,   324,  1455,   163,
    1944      114,   308,  1456,  1457,  1459,  1469,   340,  1464,  1471,    49,
    1945     1473,   114,    49,   114,  1475,  1477,  1532,  1479,  1482,  1481,
    1946     1487,   215,  1489,   374,   481,  1510,   215,  1512,  1488,   555,
    1947     1500,   481,  1518,  1514,  1519,    78,  1541,  1204,   328,   212,
    1948      222,   508,    78,  1526,  1542,  1546,    49,  1553,    49,  1555,
    1949      488,  1079,  1557,  1570,   175,  1563,   431,   214,   934,  1571,
    1950      435,   114,    57,  1223,   806,  1323,  1521,   114,   808,  1432,
    1951      519,   114,   807,   809,  1573,  1388,  1256,   810,  1405,   114,
    1952       71,  1503,  1123,  1228,   481,   693,   694,  1107,   940,   949,
    1953      324,   457,    49,    49,   890,    78,   231,   255,  1109,   825,
    1954      232,  1056,  1141,   236,   898,   238,    49,   164,  1119,   963,
    1955     1333,   215,   247,   971,   815,     0,   934,   934,   741,     0,
    1956      816,   196,   435,     0,   219,   497,   817,   229,     0,     0,
    1957        0,     0,     0,     0,     0,     0,   442,     0,     0,     0,
    1958        0,    57,   113,     0,     0,   530,  1392,     0,     0,     0,
    1959        0,     0,     0,     0,   443,   943,     0,   161,     0,    71,
    1960        0,   946,     0,     0,     0,   466,     0,     0,     0,     0,
    1961        0,     0,  1181,  1182,     0,  1123,     0,     0,    37,     0,
    1962      185,   186,    40,     0,     0,     0,    49,     0,   766,    41,
    1963       42,   595,   215,   418,     0,   601,     0,     0,    49,     0,
    1964       43,  1419,   783,     0,  1427,   766,   164,   789,   766,   215,
    1965        0,     0,     0,     0,   634,   697,   438,   412,   638,   375,
    1966        0,   340,     0,   698,    46,    47,   446,     0,     0,     0,
    1967     1231,  1232,     0,     0,     0,     0,     0,     0,     0,   231,
    1968        0,   652,   215,     0,     0,   164,   216,     0,   114,  1466,
    1969        0,     0,     0,    37,  1470,     0,   474,    40,     0,     8,
    1970        9,    10,    11,    12,    41,    42,     0,     0,   164,     0,
    1971        0,    49,     0,     0,     0,    43,   324,   324,  1123,     0,
    1972      445,     0,     0,     0,  1492,    49,     0,     0,    31,     0,
    1973      837,     0,   609,    49,   529,     0,     0,     0,   216,    46,
    1974       47,    57,     0,     0,   457,     0,     0,   457,    57,     0,
    1975       37,    49,   185,   186,    40,     0,    34,     0,     0,    71,
    1976        0,    41,    42,     0,     0,   118,    71,   934,   904,     0,
    1977      906,   114,    43,     0,     0,   653,     0,     0,     0,     0,
    1978      652,   216,  1060,    43,   934,     0,     0,   608,   114,   609,
    1979      497,   652,   324,   114,   497,     0,    46,    47,   776,     0,
    1980      412,    57,   215,     0,   530,     0,   530,    46,    47,   530,
    1981     1561,   324,   530,     0,     0,     0,  1561,     0,   231,    71,
    1982      236,     0,   340,     0,     0,     0,   375,  1561,     0,     0,
    1983      215,  1561,     0,    76,     0,   215,   952,     8,     9,    10,
    1984       11,    12,   216,   114,     0,     0,  1357,     0,     0,     0,
    1985        0,     0,     0,     0,  1359,  1360,  1361,   934,   934,     0,
    1986       67,   119,     0,     0,     0,    76,    31,     0,     0,     0,
    1987        0,     0,     0,     0,   653,   324,     0,     0,     0,     0,
    1988      216,   114,   689,     0,     0,   216,   827,    37,     0,   185,
    1989      186,    40,    67,     0,    34,     0,     0,     0,    41,    42,
    1990        0,     0,  1396,   224,   375,     0,     0,     0,   231,    43,
    1991      162,     0,     0,    49,     0,     0,   731,   868,     0,     0,
    1992        0,    43,   601,   215,   697,     0,   412,     0,   877,     0,
    1993      223,     0,     0,    46,    47,     0,   957,   215,   609,     0,
    1994      414,     0,     0,     0,     0,    46,    47,   422,     8,     9,
    1995       10,    11,    12,   529,     0,     0,     0,   508,   529,     0,
    1996        0,   529,     0,     0,     0,     0,     0,   261,     0,     0,
    1997      216,     0,     0,     0,     0,  1060,     0,    31,    37,     0,
    1998      185,   186,    40,     0,   340,     0,     0,     0,   114,    41,
    1999       42,   354,     0,     0,     0,     0,     0,     0,     0,     0,
    2000       43,     0,     0,     0,     0,    34,   457,     0,     0,   329,
    2001       37,    49,   185,   186,    40,   187,     0,   261,   351,   414,
    2002        0,    41,    42,     0,    46,    47,     0,     0,     0,     0,
    2003      215,     0,    43,     0,     0,     0,   497,     0,     0,     0,
    2004        0,     0,     0,     0,     0,     0,     0,   608,   407,   609,
    2005        0,   216,     0,   114,   114,   114,    46,    47,     0,     0,
    2006      340,     0,     0,   425,     0,   450,   430,   432,     0,     0,
    2007        0,   162,     0,   584,     0,     0,     0,     0,     0,     0,
    2008        0,   588,  1299,     0,   591,     0,    76,     0,  1138,     0,
    2009        0,    76,   449,     0,     0,     0,   452,     0,   453,     0,
    2010        0,   216,     0,     0,     0,  1146,     0,   468,   766,     0,
    2011     1146,   652,     0,    67,     0,     0,   916,  1016,   482,     0,
    2012        0,     0,   827,     0,     0,   923,     0,     0,   489,   925,
    2013        0,    37,     0,   185,   186,    40,   432,     0,     0,     0,
    2014        0,     0,    41,    42,     0,     0,     0,    37,   414,   185,
    2015      186,    40,   422,    43,     0,     0,     0,     0,    41,    42,
    2016     1146,     0,     0,     0,     0,     0,     0,     0,  1531,    43,
    2017      412,     0,    79,     0,     0,     0,     0,    46,    47,     0,
    2018        0,     0,     0,     0,   267,   224,     0,    49,    49,     0,
    2019        0,     0,     0,    46,    47,     0,     0,   114,   114,     0,
    2020        0,     0,   261,     0,    79,     0,   602,     0,     0,     0,
    2021        0,   827,   630,     0,     0,   457,     0,     0,     0,     0,
    2022        0,   216,     0,   215,     0,   635,     0,     0,     0,   635,
    2023        0,     0,   261,     0,   457,     0,   114,   414,     0,     0,
    2024        0,     0,   225,     0,     0,     0,     0,     0,     0,   216,
    2025        0,     0,    76,     0,   216,   497,  1124,   324,     0,     0,
    2026        0,     0,     0,     0,     0,     0,     0,   354,     0,     0,
    2027        0,     0,    76,     0,     0,     0,     0,     0,     0,   482,
    2028       76,   543,   544,   545,   546,   547,   548,   549,   550,   551,
    2029      552,     0,     0,     0,   351,    49,   114,     0,     0,   482,
    2030        0,     0,     0,     0,     0,   114,   354,   482,     0,   868,
    2031        0,     0,     0,     0,     0,   553,     0,     0,     0,     0,
    2032       49,    49,     0,     0,   354,     0,    76,   584,   584,     0,
    2033      356,     0,     0,   723,     0,     0,   432,     0,     0,     0,
    2034        0,     0,   216,     0,     0,    49,     0,     0,     0,     0,
    2035        0,   737,     0,    67,     0,     0,   216,     0,     0,     0,
    2036        0,   432,  1100,     0,     0,   432,     0,   354,     0,     0,
    2037     1146,  1146,  1146,     0,     0,     0,     0,     0,     0,     0,
    2038        0,     8,     9,    10,    11,    12,    58,    58,     0,     0,
    2039      457,   827,     0,   261,   351,     0,     0,     0,     0,     0,
    2040        0,     0,     0,   215,     0,     0,     0,     0,     0,     0,
    2041       31,     0,     0,     0,     0,   909,     0,     0,    58,   912,
    2042        0,     0,     0,     0,     0,    79,     0,     0,   766,     0,
    2043       79,   354,     0,     0,     0,     0,     0,     0,    34,   818,
    2044        0,     0,     0,    37,     0,   185,   186,    40,     0,   216,
    2045        0,     0,   414,    58,    41,    42,    58,   635,   830,     0,
    2046        0,     0,     0,     0,     0,    43,     0,     0,     0,     0,
    2047      849,     0,     0,     0,     0,   354,   354,   354,     0,     0,
    2048      697,     0,   412,     0,     0,     0,     0,     0,   602,    46,
    2049       47,     0,     0,   602,   354,     0,     0,     0,     0,   635,
    2050      215,     0,   351,   351,   351,     0,     0,     0,     0,     0,
    2051     1218,   340,   354,     0,  1146,  1146,     0,     0,     0,     0,
    2052        0,   351,     0,    76,   225,     0,     0,     0,     0,   354,
    2053        0,     0,     0,     0,     0,  1124,     0,     0,     0,   723,
    2054        0,     0,     0,     0,   349,     0,     0,     0,     0,     0,
    2055      482,     0,     0,  1485,     0,   261,   737,     0,     0,   936,
    2056        0,     0,     0,     0,     0,    76,     0,   584,   354,     0,
     1792      48,   113,   115,   150,   429,    98,   400,   151,   152,   401,
     1793     454,   268,   402,   791,   932,   403,   514,   853,    69,  1203,
     1794     404,   405,   261,   441,   406,   870,   933,   712,   894,   113,
     1795     113,   768,    48,    56,   116,   934,   845,    98,   613,   841,
     1796     384,   385,   112,    48,   408,  1145,  1092,   846,  1091,    48,
     1797      69,   707,   507,    50,   162,   847,    63,    48,   842,  1153,
     1798     618,   843,   852,    48,   749,    56,    48,   844,   194,    48,
     1799     220,   217,   343,  1401,   227,   751,  1185,  1186,  1187,   756,
     1800     946,   178,   153,   113,   113,    50,   400,   409,    63,   401,
     1801     974,   144,   402,   932,  1464,   403,   426,   411,   154,   211,
     1802     404,   405,   221,   820,   406,   933,    77,    48,   679,  1197,
     1803      48,   155,   994,   169,   934,  1320,   728,    48,    31,    31,
     1804     480,   683,   685,    31,   408,   779,   637,   575,   688,   378,
     1805     641,   262,   536,   203,   263,   873,   692,   170,    77,   874,
     1806     519,   885,   886,   856,   123,   379,   150,   124,    48,   863,
     1807     151,   152,   143,   162,   281,   605,    48,  -235,  -235,   904,
     1808    1099,    48,   576,   556,   557,   536,   374,   409,  1464,  1421,
     1809    1422,   484,   486,   410,   841,   292,  1484,   167,   857,    31,
     1810    1421,  1422,   860,   204,  1321,   746,    48,    48,   253,   420,
     1811     412,   412,   162,   842,   536,   412,   843,   755,   485,    31,
     1812     975,   556,    48,   877,   977,  1220,  1221,   880,  1265,  1202,
     1813      48,  1193,   282,   936,   677,   162,   770,   586,   485,    48,
     1814     577,  1135,    48,   587,   388,   153,   150,   444,  -235,   113,
     1815     151,   152,   536,   957,   739,   949,  1266,   556,  1194,  1423,
     1816     389,   154,   167,   440,   113,    31,    31,   760,   113,   490,
     1817    1432,   412,    48,   113,   155,   442,  1038,    98,   597,  1404,
     1818     883,   883,   883,  1203,   674,   845,    48,    48,   841,   854,
     1819      69,   610,   162,    48,  1262,   328,   846,   391,  1187,   883,
     1820      48,   824,   480,  1510,   847,    56,   145,   842,   343,  1102,
     1821     843,   666,  1136,   392,   474,   113,  1025,   492,    97,  1137,
     1822     740,  1037,   480,   693,   509,    50,  1346,   675,    63,   587,
     1823     480,   472,   164,   481,   703,   861,   448,   610,  1539,   681,
     1824    1541,   618,  1111,   728,  1016,   686,  1185,  1186,  1187,    48,
     1825      97,   147,   111,  1494,   374,   469,   526,   729,   437,   730,
     1826    1155,   149,  1013,    41,    42,   731,   674,    97,   747,    48,
     1827      48,   107,   107,   883,   748,  1552,   536,   705,    77,   830,
     1828    1194,   190,  -470,    77,    97,   853,    48,    97,   328,  1468,
     1829      48,   856,  1092,   178,  1091,  1563,   156,   164,   529,  1553,
     1830     925,   653,  1567,   107,   761,   845,   884,   884,   884,   675,
     1831     638,   762,  1211,  -470,   642,  -470,   846,    48,   172,  -470,
     1832     437,   879,  1217,    70,   847,   884,  1568,    48,  -113,  -113,
     1833     915,   182,   374,   794,   795,   796,   111,   870,   140,   141,
     1834     107,   253,   330,  1203,  -113,    48,   393,    41,    42,   395,
     1835    1203,    48,   713,    48,   414,    70,   167,  1041,   605,   248,
     1836     739,   422,   394,   605,   883,   396,    97,   202,   714,   111,
     1837     343,  1459,  1187,  1383,   715,   890,  -291,    48,   728,    97,
     1838      41,    42,   113,  1453,  1454,   757,   111,  1468,   728,   213,
     1839     716,   758,  1468,   436,   607,   481,   113,    41,    42,   884,
     1840    -113,    48,   728,  1203,   399,   190,   875,  1408,   783,    48,
     1841     876,  1134,  1468,    48,   374,   481,   978,    48,    98,  1468,
     1842     113,  -113,   113,   481,   462,   789,   740,   251,    97,   682,
     1843     684,    69,  1151,   414,  1261,   712,   739,   112,   400,   177,
     1844      97,   401,   653,  1038,   402,    77,    56,   403,   895,  1119,
     1845     507,  1107,   404,   405,  -521,   436,   406,   113,  1036,   707,
     1846     653,  1122,   113,   653,   729,    77,    50,   737,   875,    63,
     1847      97,   713,  1118,    77,   480,   328,   328,   408,   906,   533,
     1848     618,  1173,  1175,   767,   488,   561,   562,   928,   585,   177,
     1849     884,   164,   177,   896,   774,   908,   589,   111,   784,   592,
     1850     775,   767,   740,   790,   767,  1107,   253,   558,    41,    42,
     1851    1018,   113,   715,   559,   560,   830,   954,   529,    48,    77,
     1852     409,   919,   529,   107,   897,   529,   652,   775,   929,    48,
     1853     898,    48,   343,  1500,   918,  -106,   264,   832,   177,  -106,
     1854    1500,   331,  1200,  1215,   -10,   443,  1200,    97,  1335,    37,
     1855      48,   328,   474,    40,   588,   993,   412,  1381,  1201,   921,
     1856      41,    42,  1326,   414,  1336,   775,    48,   422,   612,  1254,
     1857     328,  1036,   113,   230,   872,    70,   111,   231,   813,  -444,
     1858     235,    48,   237,   113,    48,   113,    43,    41,    42,   246,
     1859     887,   712,  1002,  1549,  -445,    45,    46,   277,  1003,   729,
     1860     287,   177,   728,   728,   830,   903,  -292,   279,   343,   729,
     1861    1049,    41,    42,     8,     9,    10,    11,    12,    48,   502,
     1862      48,   503,  1344,   729,   905,   190,   907,  1294,  1295,  1345,
     1863     591,  1096,   412,   113,  1431,   328,  1213,   523,   462,   113,
     1864    1337,   462,    31,   113,   565,   566,   111,   775,   140,   239,
     1865    1369,   113,   414,   280,  1370,   177,  1338,    41,    42,  1130,
     1866     728,   728,   177,  1384,    48,    48,  1015,   481,   332,  1009,
     1867      34,   333,   731,   737,   213,   704,   334,   871,    48,  1014,
     1868     567,   568,   607,   240,  1056,   111,  1252,   335,   241,  1250,
     1869    1256,   336,   953,  1026,   372,   587,    41,    42,   533,   909,
     1870     533,   412,   509,   533,  1377,  1184,   533,  1523,   111,   481,
     1871     775,    97,  1393,  1528,   674,   612,   230,    77,  -293,    41,
     1872      42,  1502,   703,  1503,  1350,     8,     9,    10,    11,    12,
     1873     111,   177,   140,   141,  1548,   912,   174,   412,   373,  1555,
     1874     935,    41,    42,   585,   585,    57,    57,  1352,   177,   737,
     1875     605,   377,   177,  1177,    31,  1378,   386,   675,    48,    77,
     1876     390,   775,   935,    37,   107,   705,   216,    40,   932,  1157,
     1877      48,   412,   244,   832,    41,    42,   398,    57,  1550,   254,
     1878     933,   410,    34,   243,   830,   563,   564,   978,  1380,   934,
     1879    -368,   978,   978,   427,   775,    37,   556,   184,   185,    40,
     1880     838,  1169,   610,   412,  1331,   213,    41,    42,   428,    45,
     1881      46,    57,   451,   653,    57,   177,    70,  1172,   216,   610,
     1882     113,   653,  1385,   729,   729,   739,   433,   840,   775,   612,
     1883    -397,   910,   698,   470,   412,   913,   728,   519,  1449,    69,
     1884     699,    45,    46,    48,   728,   728,   728,  1174,  1198,   610,
     1885     537,   538,   539,  1007,    56,  1461,   230,    48,   235,    37,
     1886     471,   216,  1078,    40,   763,    48,   764,  1450,   414,   765,
     1887      41,    42,   771,  1447,   540,   418,   541,    63,   542,   543,
     1888     493,   729,   729,    48,     8,     9,    10,    11,    12,  1123,
     1889     513,   740,   728,  1182,  1183,  1237,   744,   412,   438,   111,
     1890     292,   462,   349,   113,   517,    45,    46,  1342,   446,  1469,
     1891      41,    42,   653,    31,   522,   775,   931,   940,   704,   940,
     1892     113,  1124,   216,   653,   534,   113,   536,    77,  1521,  1461,
     1893    1051,     2,   207,     4,     5,     6,     7,   569,   570,  1245,
     1894     571,    34,   775,  1008,  1139,    37,   230,   184,   185,    40,
     1895     572,  1232,  1233,  1516,   443,  1372,    41,    42,   573,  1517,
     1896     216,  1147,   840,   612,   767,   216,  1147,    57,  1573,   579,
     1897     574,   412,   740,   577,   587,   113,   339,   530,    45,    46,
     1898     177,  -441,   609,   585,   610,   653,  1006,  1003,   113,   113,
     1899     113,    45,    46,   330,   412,  1402,    35,    57,    36,  1402,
     1900    1205,  1390,  1391,     8,     9,    10,    11,    12,   111,   595,
     1901     140,   141,   177,   113,   598,    56,  1147,   328,   935,    41,
     1902      42,  1535,   253,   330,   412,  1332,  1078,    -3,   177,  1212,
     1903    1214,  1216,    31,  -113,   647,  -113,  1441,  1003,   481,  -113,
     1904     420,   670,   412,   177,   667,    48,   676,   213,   668,  1154,
     1905     669,   216,  1421,  1422,  -113,  -113,   840,   729,   343,    -3,
     1906      34,   213,   490,   330,   412,   729,   729,   729,   612,   871,
     1907     671,  1107,  1447,  1448,     2,   207,     4,     5,     6,     7,
     1908     672,     2,   207,     4,     5,     6,     7,    37,    77,   184,
     1909     185,    40,   854,   330,   610,   414,  1495,  1496,    41,    42,
     1910    1051,  1485,   579,   229,   412,   673,   777,  1080,   412,   258,
     1911     462,    45,    46,   729,   678,    45,    46,   805,   806,   111,
     1912     113,   140,   141,   696,   186,   690,   220,  1358,   718,   462,
     1913      41,    42,   216,    45,    46,  1360,  1361,  1362,   737,    35,
     1914     177,    36,    48,   958,   719,   610,    35,   653,    36,   537,
     1915     538,   539,    45,    46,   213,   704,   752,   211,   221,   732,
     1916     721,   753,   723,   704,  -239,    69,   797,   798,  1123,   142,
     1917     799,   800,   107,   540,  1158,   541,   935,   542,  1322,   349,
     1918      56,   612,   216,  1397,   759,   113,   113,   113,  1078,   776,
     1919     772,  1170,  1313,  1314,  1315,   130,   530,   131,   132,   133,
     1920    1124,   530,   780,    63,   530,   833,    41,    42,  1302,  1303,
     1921     834,  1305,   837,   848,  1445,   900,   -12,  1309,   893,   737,
     1922    1312,   -13,   242,   245,    70,   892,  1147,  1147,  1147,  1351,
     1923    1353,  1354,  1561,   923,   935,   935,   920,   922,    57,   107,
     1924     948,   699,   653,   653,  1205,    49,   114,   214,   801,   802,
     1925     803,   804,   927,    77,   442,  -418,  -525,   233,   962,    56,
     1926     748,  1123,    37,   969,   175,   176,    40,   971,  1238,   976,
     1927     982,  1208,   400,    41,    42,   401,   984,    49,   402,   983,
     1928     349,   403,   481,   767,  1078,   462,   404,   405,   148,   986,
     1929     406,   998,   987,  1124,    49,   988,  1093,   653,   163,   214,
     1930     653,   989,  1010,   216,  1011,   177,  1012,  1027,   187,  1028,
     1931     408,   210,   195,  1029,    49,   218,  1030,  1031,   228,    48,
     1932      48,  1534,  1032,  1033,  1044,  -406,  -405,  1104,  1105,   113,
     1933     113,   216,    77,   107,   674,  1058,   216,  1103,  1078,  1095,
     1934    1106,  1078,   214,  1444,   349,   653,  1112,   443,  1113,  1114,
     1935     653,   114,  1115,   409,  1121,   775,  1131,  1132,  1133,   114,
     1936     917,  1206,   267,   272,  1123,   992,  1138,  1146,   113,   924,
     1937    1147,  1147,  1143,   926,  1167,  1188,  1189,   675,  1190,  1191,
     1938     653,  1427,  1192,   466,  1207,    70,  1078,  1209,   349,   349,
     1939     349,  1078,   308,   148,  1210,  1218,  1124,   163,  1224,  1222,
     1940    1230,   114,   346,   214,  1205,  1225,   210,   349,    -3,  1486,
     1941     375,  1205,   150,  1235,  1240,  1242,   151,   152,   502,    56,
     1942    1251,  1078,  1246,  1253,   216,  1258,    56,    48,   113,  1255,
     1943    1259,   187,   187,  1080,  1263,  1267,   163,   113,   216,  1270,
     1944    1272,   214,   481,   653,  1274,   935,   214,   267,   653,   481,
     1945    1275,  1276,    48,    48,  1277,    49,   215,  1278,   162,   163,
     1946    1280,   508,   935,  1287,  1205,  1296,   653,   210,   653,  1536,
     1947    1297,   445,   653,  1304,  1333,   653,   107,    48,  1544,    56,
     1948    1307,   349,   374,   653,  1078,   308,   114,   653,  1308,  1078,
     1949    1325,  1310,    77,  1311,  1319,  1339,  1341,    49,   107,    77,
     1950    1347,  1343,   481,  1367,  1348,   272,  1349,  1078,   215,  1078,
     1951     272,   267,   267,  1078,  1355,  1356,  1078,   114,   107,  1357,
     1952     654,  1359,  1365,  1366,  1078,  1368,  1375,   213,  1078,  1394,
     1953    1376,   216,   214,  1379,  1386,   935,   935,  1387,  1315,  1395,
     1954    1396,   308,  1434,  -407,  1405,  1398,  1415,  1416,  1419,  1408,
     1955      70,   215,    77,   308,  1430,  1436,  -294,  1438,  1439,  1440,
     1956    1446,  1455,  1451,     8,     9,    10,    11,    12,  1456,   580,
     1957    1457,  1458,   349,  1370,   148,  1460,  1474,   107,   375,  1465,
     1958     349,  1476,  1478,  1420,  1470,  1472,  1428,   114,  1480,  1483,
     1959     328,   346,    31,  1488,  1490,   611,   629,  1482,  1511,  1489,
     1960    1501,   717,  1515,  1513,   177,  1527,  1101,  1519,  1520,  1542,
     1961     634,   107,   215,   214,   634,  1556,  1543,   114,  1547,  1554,
     1962      34,  1558,  1564,  1571,   443,  1572,  1223,   807,   809,    70,
     1963     214,  1467,   808,   810,  1324,  1522,  1471,   811,  1433,   750,
     1964    1574,   754,   267,  1389,  1257,  1406,    57,  1504,  1229,  1108,
     1965     215,   941,   187,   694,  1110,   215,   375,   695,  1508,   826,
     1966    1508,  1142,   950,   214,  1057,   899,  1493,   964,  1120,  1334,
     1967     267,   742,   308,   308,   972,   816,   267,     0,     0,   634,
     1968       0,    37,   817,   184,   185,    40,   818,     0,     0,     0,
     1969       0,     0,    41,    42,     0,  1508,     0,  1508,     0,     0,
     1970     114,     0,   700,   114,     0,     0,     0,     0,     0,     0,
     1971       0,     0,     0,    57,   107,     0,     0,     0,   698,     0,
     1972     412,     0,     0,     0,   216,     0,   267,    45,    46,     0,
     1973     349,     0,     0,     0,   267,     0,   634,   107,    49,     0,
     1974       0,   215,   745,     0,   107,     0,     0,     0,   114,     0,
     1975     488,     0,  1562,     0,  1219,     0,     0,     0,  1562,     0,
     1976     308,     0,   114,     0,     0,   308,     0,   308,   308,  1562,
     1977     117,     0,     0,  1562,     0,     0,   778,     0,     0,   114,
     1978     346,   177,     0,     0,   214,     0,     0,   349,   349,    70,
     1979       0,   891,     0,     0,     0,     0,    70,   107,     0,     0,
     1980       0,     0,     8,     9,    10,    11,    12,    57,     0,     0,
     1981       0,     0,   214,     0,     0,     0,     0,   214,   160,     0,
     1982       0,     0,   215,     0,   580,   580,    37,     0,   175,   176,
     1983      40,    31,   308,     0,     0,     0,     0,    41,    42,     0,
     1984       0,     0,     0,   634,   346,     0,     0,     0,   629,    70,
     1985       0,     0,   944,     0,   611,     0,   611,     0,   947,    34,
     1986       0,     0,   466,   373,     0,     8,     9,    10,    11,    12,
     1987       0,     0,   215,     0,   634,   259,     0,     0,     0,   634,
     1988       0,   629,     0,   160,     0,   634,     0,     0,   634,   634,
     1989     634,     0,     0,     0,    31,     8,     9,    10,    11,    12,
     1990       0,   777,     0,   412,   216,   214,     0,   634,     0,   267,
     1991      45,    46,     0,     0,     0,     0,   324,     0,     0,   214,
     1992       0,     0,    34,     0,    31,   340,     0,     0,     0,     0,
     1993       0,     0,     0,   127,   127,   127,     0,     0,     0,   508,
     1994       0,   114,   346,   700,     0,   700,     0,     0,     0,    57,
     1995      57,     0,    34,     0,     0,     0,     0,    37,     0,   184,
     1996     185,    40,     0,   114,   958,     0,   610,     0,    41,    42,
     1997       0,     0,    57,    45,    46,   431,     0,     0,     0,   435,
     1998       0,   634,   959,   629,     0,     0,     0,     0,     0,   745,
     1999     745,     0,    57,   215,   186,     0,  1388,     0,     0,     0,
     2000       0,   216,     0,    45,    46,     0,   127,     0,   127,   324,
     2001     457,     0,   214,     0,     0,     0,     0,   114,   346,     0,
     2002       0,   215,   778,   778,     0,     0,   215,     0,     0,     0,
     2003       0,     0,   654,   276,     0,     0,     0,   349,   349,  1061,
     2004       0,   435,     0,     0,   497,    37,    57,   175,   176,    40,
     2005       0,    57,     0,     0,     0,     0,    41,    42,     0,     0,
     2006       0,     0,     0,     0,   580,   531,     0,     0,     0,     0,
     2007       0,     0,   634,     0,   634,     0,  1021,   160,     0,   634,
     2008     346,     0,   377,   611,     0,    57,     0,     0,     0,   127,
     2009       8,     9,    10,    11,    12,   611,     0,   127,     0,   127,
     2010     127,     0,     0,     0,   127,     0,   127,   127,     0,     0,
     2011       0,   596,     0,     0,   215,   602,     0,     0,     0,    31,
     2012       0,     0,     0,     0,     0,     0,     0,     0,   215,     0,
     2013       0,   654,     0,    37,   635,   184,   185,    40,   639,     0,
     2014       0,   340,     0,     0,    41,    42,   308,    34,     0,     0,
     2015       0,     0,    37,     0,     0,  1505,    40,  1509,     0,     0,
     2016       0,     0,   349,    41,    42,     0,     0,     0,   634,     0,
     2017     266,     0,   114,     0,     0,     0,   127,     0,     0,    45,
     2018      46,     0,   700,     0,     0,     0,     0,     0,    57,    43,
     2019     700,   114,  1538,     0,  1540,     0,   324,   324,    45,    46,
     2020       0,     0,     0,   959,   959,   214,     0,     0,   745,     0,
     2021       0,    57,     0,   114,   308,     0,     0,     0,    57,     0,
     2022       0,   215,     0,     0,   457,     0,     0,   457,     0,     0,
     2023     346,     0,  1061,     0,     0,     0,   778,  1569,     0,  1570,
     2024       0,     0,     0,     0,     0,   117,     0,     0,     0,     0,
     2025       0,     0,  1577,  1578,     0,     0,     0,     0,     0,     0,
     2026     125,   128,   129,     0,     0,     0,   346,     0,     0,     0,
     2027     497,    57,   324,     0,   497,     0,     0,     0,     0,     8,
     2028       9,    10,    11,    12,   531,     0,   531,   634,   634,   531,
     2029       0,   324,   531,     0,     0,     0,     0,     0,     0,     0,
     2030       0,     0,     0,   340,     0,     0,     0,   308,    31,     8,
     2031       9,    10,    11,    12,    13,    14,    15,    16,    17,    18,
     2032      19,    20,    21,    22,    23,    24,    25,  -295,     0,    26,
     2033      27,    28,     0,   255,     0,   256,    34,     0,    31,  1300,
     2034       0,    37,     0,   184,   185,    40,     0,   114,   634,     0,
     2035       0,     0,    41,    42,     0,     0,   324,     0,     0,     0,
     2036       0,     0,   959,     0,     0,     0,    34,   828,     0,     0,
     2037     267,    37,     0,   337,   338,    40,     0,  -295,   609,     0,
     2038     610,     0,    41,    42,     0,   214,     0,    45,    46,     0,
     2039       8,     9,    10,    11,    12,     0,     0,     0,   869,     0,
     2040       0,     0,     0,   602,    66,   118,     0,   346,   643,   878,
     2041     339,     0,     0,     0,   215,     0,   397,    45,    46,    31,
     2042       0,     0,     0,     0,     0,     0,   416,   417,     0,     0,
     2043       0,   421,     0,   423,   424,     0,    66,   544,   545,   546,
     2044     547,   548,   549,   550,   551,   552,   553,    34,     0,   272,
     2045     114,     0,    37,   161,   184,   185,    40,    37,     0,   184,
     2046     185,    40,     0,    41,    42,   340,     0,   114,    41,    42,
     2047       0,   554,   308,   222,    75,     0,     0,     0,     0,     0,
     2048       0,     0,   214,     0,     0,     0,     0,   457,   634,   266,
     2049     127,   127,   114,     0,  1532,     0,   412,     0,    45,    46,
     2050       0,     0,     0,    45,    46,     0,    75,     0,     0,     0,
     2051     260,     0,     0,     0,     0,     0,     0,   497,     0,   127,
     2052       0,     0,   127,   127,     0,   127,     0,   127,   127,     0,
     2053       0,     0,   127,   127,     0,     0,     0,   634,   634,     0,
     2054       0,   340,     0,   223,     0,     0,   272,     0,     0,     0,
     2055       0,   308,   329,     0,     0,     0,     0,     0,     0,     0,
     2056     260,   351,     0,     0,     8,     9,    10,    11,    12,     0,
    20572057       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2058        0,     0,     0,     0,     0,    81,     0,     0,     0,     0,
    2059        0,    79,   482,     0,     0,   351,     8,     9,    10,    11,
    2060       12,     0,     0,     0,   962,   354,   356,   432,     0,    58,
    2061        0,    79,     0,  1535,     0,     0,     0,    81,     0,    79,
    2062        0,     0,  1543,     0,     0,    31,     0,     0,  1124,     0,
    2063        0,   261,   737,     0,     0,     0,     0,   990,     0,    58,
    2064        0,     0,   216,     0,     0,   356,     0,   354,     0,     0,
    2065        0,     0,     0,    34,     0,   226,     0,   354,    37,   354,
    2066      185,   186,    40,   356,   224,    79,     0,   354,     0,    41,
    2067       42,   354,     0,     0,   723,     0,     0,     0,     0,   414,
    2068       43,     0,     0,     0,   723,     0,   351,     0,   635,     0,
    2069        0,  1023,     0,   635,   830,  1531,     0,   412,   723,     0,
    2070        0,     0,     0,     0,    46,    47,   356,     0,  1034,     0,
     2058       0,     0,     0,     0,     0,   114,     8,     9,    10,    11,
     2059      12,   407,     0,    31,   215,     0,     0,     0,  1017,     0,
     2060       0,     0,     0,   828,     0,     0,   425,     0,     0,   430,
     2061     432,   127,     0,     0,   161,    31,   127,   127,     0,     0,
     2062       0,    34,   127,     0,     0,     0,    37,     0,   184,   185,
     2063      40,   354,     0,     0,     0,   449,     0,    41,    42,   452,
     2064       0,   453,     0,    34,     0,   267,     0,     0,    37,     0,
     2065     468,     0,    40,     0,     0,     0,    66,     0,     0,    41,
     2066      42,   482,   634,   698,     0,   412,     0,     0,     0,     0,
     2067       0,   489,    45,    46,     0,     0,     0,     0,     0,   432,
     2068       0,     0,     0,     0,     0,   744,     0,     0,   114,     0,
     2069       0,   215,   828,     0,    45,    46,   457,     0,     0,     0,
     2070       0,     0,     0,     0,     0,   450,     0,     0,     0,     0,
     2071       0,   114,     0,     0,     0,   457,     0,     0,   114,     0,
     2072     114,     0,   114,     0,     0,     0,    75,     0,     0,     0,
     2073       0,    75,     0,     0,     0,     0,   497,  1125,   324,     0,
     2074       0,     0,     0,     0,     0,     0,   260,     0,     0,     0,
     2075     603,     0,  1533,     0,     0,     0,   631,   114,     0,   114,
     2076       0,     0,     0,     0,     0,     0,     0,     0,     0,   636,
     2077       0,   114,     0,   636,     0,     0,   260,  1533,  1533,     0,
     2078       0,     0,     0,     0,     0,     0,     0,   308,     0,     0,
     2079     869,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     2080       0,     0,  1533,     0,     0,     0,     0,     0,     0,     0,
     2081       0,     0,     0,     0,     0,     0,     0,   821,   822,     0,
     2082       0,     0,     0,   482,     0,     0,   223,     0,     0,     0,
     2083       0,     0,     0,     0,     0,     0,     0,     0,   351,     0,
     2084       0,    78,     0,   482,     0,     0,   855,     0,     0,   858,
     2085     859,   482,   862,     0,   864,   865,     0,     0,     0,   866,
     2086     867,     8,     9,    10,    11,    12,     0,     0,     0,     0,
     2087       0,   457,   828,    78,     0,     0,     0,   724,     0,     0,
     2088     432,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     2089      31,     0,     0,    75,     0,   738,     0,    66,     0,     0,
     2090       0,     0,     0,     0,     0,   432,     0,     0,   354,   432,
     2091     224,     0,     0,    75,     0,     0,     0,     0,    34,     0,
     2092       0,    75,     0,    37,     0,   184,   185,    40,     0,     0,
     2093       0,     0,     0,     0,    41,    42,     0,     0,   260,   351,
     2094       0,     0,     0,   942,   943,     0,     0,   354,  1034,   945,
     2095       0,     8,     9,    10,    11,    12,     0,     0,     0,     0,
     2096    1532,     0,   412,     0,     0,   354,     0,    75,     0,    45,
     2097      46,     0,     0,     0,     0,     0,     0,     0,   283,   284,
     2098      31,   285,     0,     0,   819,     0,     0,     0,     0,     0,
     2099       0,   340,     0,     0,     0,     0,     0,     0,   356,     0,
     2100       0,     0,   636,   831,     0,     0,   127,   286,    34,   354,
     2101       0,     0,     0,   287,     0,   850,  1125,   288,     0,     0,
     2102     289,   290,   291,   292,    41,    42,     0,   293,   294,     0,
     2103       0,     0,     0,   603,     0,   295,     0,     0,   603,     0,
     2104       0,     0,     0,     0,   636,     0,     0,   351,   351,   351,
     2105     296,     0,   380,     0,     0,     0,     0,     0,     0,   345,
     2106      46,   298,   299,   300,   301,     0,   351,     0,     0,     0,
     2107       0,     0,     0,   354,     0,     0,     0,     0,     0,     0,
     2108       0,     0,     0,     0,   724,     0,     0,     0,     0,     0,
     2109       0,     0,     0,    78,     0,   482,     0,     0,    78,     0,
     2110     260,   738,     0,     0,   937,     0,     0,     0,     0,  1125,
     2111       0,     0,     0,     0,     0,     0,     0,   354,   354,   354,
    20712112       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2072        0,     0,     0,     0,     0,    88,     0,     0,     0,     0,
    2073        0,  1124,     0,    76,     0,     0,     0,     0,     0,     0,
     2113       0,   127,     0,     0,     0,     0,   354,   482,     0,     0,
     2114     351,     0,     0,     0,     0,     0,     0,     0,     0,   963,
     2115       0,     0,   432,     0,   354,     0,     0,     0,     0,     0,
     2116       0,     0,     0,     0,     0,    75,     0,     0,     0,     0,
     2117       0,   354,     0,     0,     0,     0,   260,   738,     0,     0,
     2118       0,     0,   991,     0,     0,     0,     0,     0,     0,     0,
     2119       0,     0,     0,   224,     0,     0,     0,     0,     0,     0,
     2120       0,     0,     0,     0,     0,     0,     0,    75,     0,     0,
     2121     354,     0,  1125,     0,     0,     0,     0,     0,     0,   724,
     2122       0,     0,     0,     0,     0,     0,     0,     0,     0,   724,
     2123       0,   351,     0,   636,     0,     0,  1024,     0,   636,   831,
     2124       0,     0,     0,   724,  1507,     0,  1507,   354,     0,     0,
     2125       0,     0,     0,  1035,     0,     0,     0,     0,     0,     0,
     2126      78,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     2127       0,     0,     0,     0,     0,   356,     0,     0,     0,     0,
     2128      78,  1507,     0,  1507,     0,     0,     0,     0,    78,   354,
     2129       0,     0,     0,     0,     0,     0,     0,     0,     0,   354,
     2130       0,   354,     0,     0,     0,    66,   223,     0,     0,   354,
     2131       0,   324,     0,   354,   356,     0,     0,     0,     0,     0,
     2132       0,     0,     0,     0,     0,     0,    80,   636,     0,     0,
     2133       0,     0,   356,  1234,    78,   283,   284,     0,   285,     0,
     2134       8,     9,    10,    11,    12,    13,    14,    15,    16,    17,
     2135      18,    19,    20,    21,    22,    23,    24,    25,    80,     0,
     2136      26,    27,    28,  1117,   286,     0,     0,     0,     0,    31,
     2137     287,   432,   118,     0,   288,    75,   356,   289,   290,   291,
     2138     292,    41,    42,     0,   293,   294,     0,     0,     0,   351,
     2139       0,     0,   295,     0,     0,   225,    87,    34,     0,     0,
     2140       0,     0,    37,     0,    38,    39,    40,   296,     0,   380,
     2141       0,     0,   381,    41,    42,     0,    45,    46,   298,   299,
     2142     300,   301,     0,     0,     0,   603,     0,     0,    87,     0,
     2143       0,     0,     0,     0,     0,     0,     0,     0,   430,    43,
     2144     356,   158,     0,   724,   724,     0,   351,   351,    45,    46,
     2145       0,     0,     0,     0,     0,     0,     0,     0,  1323,   354,
     2146       0,     0,     0,     0,     0,   226,  1204,     0,     0,     0,
     2147       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     2148       0,     0,     0,   357,   356,   356,   356,     0,     0,     0,
     2149       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     2150       0,   724,   724,   356,     0,     0,     0,   636,     0,     0,
     2151       0,     0,     0,   354,   354,     0,   354,   354,     0,     0,
     2152       0,   356,     0,     0,     0,     0,     0,     0,     0,     0,
     2153       0,     0,    78,     0,     0,     0,    75,     0,   356,     0,
     2154       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     2155       0,     0,     0,   364,     0,     0,   283,   284,     0,   285,
     2156       0,     0,     0,     0,     0,     0,   738,     0,     0,     0,
     2157       0,   354,   354,     0,    78,     0,     0,   356,    80,     0,
     2158       0,     0,     0,    80,     0,   286,     0,     0,     0,     0,
     2159       0,   649,     0,   140,   141,   288,     0,     0,   289,   650,
     2160     291,   292,    41,    42,     0,   293,   294,     0,     0,  1301,
     2161       0,     0,     0,   295,   356,     0,     0,     0,     0,     0,
     2162       0,     0,     0,     0,     0,     0,   260,     0,   296,     0,
     2163     651,    66,   652,   381,     0,     0,   354,    45,    46,   298,
     2164     299,   300,   301,     0,     0,   724,     0,   738,    87,     0,
     2165       0,   118,     0,    87,     0,     0,   356,     0,     0,     0,
     2166       0,     0,     0,     0,     0,     0,   356,     0,   356,     0,
     2167       0,     0,     0,   224,     0,     0,   356,   724,   225,   223,
     2168     356,     0,     0,     0,     0,   724,   724,   724,     0,     0,
     2169       0,     0,     0,     0,     0,     0,   351,   351,     0,     0,
     2170       0,    75,     0,     0,     0,     0,     0,     0,     0,     0,
     2171    1204,     0,     0,     0,     0,   354,     0,   354,     0,     0,
     2172       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     2173       0,     0,     0,   724,     0,     0,     0,     0,     0,     0,
     2174       0,     0,    78,     0,   118,    80,     0,   354,   226,     0,
     2175       0,     0,     0,     0,     0,   354,   354,   354,     0,     0,
     2176     357,     0,     0,     0,     0,    80,   354,   354,     0,     0,
     2177       0,     0,     0,    80,     0,     0,     0,     0,     0,     0,
     2178      75,     8,     9,    10,    11,    12,    13,    14,    15,    16,
     2179      17,    18,    19,    20,    21,    22,    23,    24,    25,   357,
     2180       0,     0,     0,   354,     0,     0,     0,     0,     0,     0,
     2181      31,     0,     0,     0,     0,    87,     0,   357,     0,    80,
     2182       0,   351,     0,     0,     0,     0,   356,     0,     0,     0,
     2183     364,     0,     0,     0,     0,    87,     0,     0,    34,     0,
     2184       0,     0,     0,    87,     0,     0,     0,   118,     0,     0,
     2185       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     2186       0,   357,     0,     0,     0,     0,     0,     0,     0,   364,
     2187    1204,     0,     0,     0,     0,     0,     0,  1204,     0,     0,
     2188     356,   356,     0,   356,   356,     0,     0,   364,     0,    87,
     2189       0,   354,     0,     0,     0,     0,     0,     0,     0,     0,
     2190       0,     0,     0,    78,     0,     8,     9,    10,    11,    12,
     2191      13,    14,    15,    16,    17,    18,    19,    20,    21,    22,
     2192      23,    24,    25,  -295,     0,   357,     0,     0,     0,     0,
     2193    1204,   364,     0,     0,    31,     0,     0,  1557,   356,   356,
     2194      75,     0,     0,     0,     0,     0,     0,    75,     0,     0,
     2195       0,     0,     0,     0,   168,     0,   173,     0,     0,   179,
     2196     180,   181,    34,   183,     0,     0,     0,     0,     0,   357,
     2197     357,   357,     0,  -295,     0,     0,     0,     0,   234,     0,
     2198       0,     0,     0,     0,     0,     0,     0,     0,   357,     0,
     2199     249,   250,     0,     0,     0,   364,     0,     0,     0,     0,
     2200      75,     0,     0,   356,     0,     0,   357,     0,     0,     0,
     2201       0,     0,     0,     0,     0,     0,     0,    80,     0,     0,
    20742202       0,     0,     0,   357,     0,     0,     0,     0,     0,     0,
    2075        0,     0,  1387,     0,     0,     0,     0,    88,  1157,     0,
    2076       67,     0,     0,  1506,     0,  1506,     0,     0,     0,     0,
    2077      356,     0,     0,     0,     0,  1169,     0,     0,     0,     0,
    2078        0,     0,   635,     8,     9,    10,    11,    12,     0,     0,
    2079        0,     0,     0,     0,     0,   227,     0,     0,     0,     0,
    2080     1506,     0,  1506,     0,     0,     0,     0,     0,     0,     0,
    2081        0,     0,    31,     0,   356,   356,   356,   354,  1116,     0,
    2082      349,     0,   216,     0,     0,     0,   432,   119,     0,     0,
    2083      324,     0,     0,   356,     0,     0,     0,     0,    81,     0,
    2084       34,     0,     0,    81,   351,    37,     0,   185,   186,    40,
    2085        0,   356,  1237,     0,     0,     0,    41,    42,     0,     0,
    2086        0,     0,    79,     0,     0,     0,     0,    43,   356,     0,
    2087        0,   354,   354,     0,   354,   354,     0,     0,     0,    58,
    2088      602,     0,   187,   364,     0,     0,     0,     0,     0,     0,
    2089        0,    46,    47,   430,    76,     0,     0,     0,   723,   723,
    2090        0,   351,   351,     0,    79,     0,     0,   356,     0,     0,
    2091        0,  1504,     0,  1508,     0,     0,     0,     0,     0,   216,
    2092      349,  1203,     0,     0,     0,     0,     0,     0,     0,   354,
    2093      354,     0,     0,     0,     0,     0,     0,   226,     0,     0,
    2094        0,     0,     0,     0,   356,     0,     0,     0,  1537,     0,
    2095     1539,     0,     0,     0,     0,     0,   723,   723,     0,   126,
    2096      129,   130,   635,     0,     0,     0,     0,     0,     0,     0,
    2097        0,     0,     0,     0,     0,     0,     0,     0,    88,     0,
    2098        0,     0,     0,    88,   349,     0,   356,     0,     0,     0,
    2099        0,     0,     0,  1568,   354,  1569,   356,     0,   356,     0,
    2100        0,     0,     0,   225,    81,     0,   356,     0,  1576,  1577,
    2101      356,     0,     0,     0,     0,     0,     0,     0,     0,   357,
    2102        0,   737,     0,     0,    81,     0,     0,     0,   349,   349,
    2103      349,     0,    81,   256,     0,   257,     0,   224,     0,     0,
    2104        0,     0,     0,     0,     0,     0,     0,   349,     0,     0,
    2105        0,     0,     0,     0,     0,     0,     0,     0,   357,    76,
    2106        0,     0,     0,     0,  1300,     0,     0,     0,     0,     0,
    2107        0,     0,    79,   354,     0,   354,   357,   227,    81,     0,
    2108        0,     0,   261,     0,     0,     0,    67,     0,     0,     0,
    2109        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2110      723,     0,   737,     0,     0,   354,   119,     0,     0,     0,
    2111        0,     0,     0,   354,   354,   354,   397,     0,     0,   357,
    2112        0,   349,     0,     0,   354,   354,   416,   417,     0,     0,
    2113        0,   421,   723,   423,   424,     0,     0,     0,    76,     0,
    2114      723,   723,   723,     0,    88,     0,     0,     0,     0,     0,
    2115        0,   351,   351,     0,     0,     0,   356,     0,     0,   364,
    2116        0,   354,     0,     0,    88,  1203,     0,     0,     0,     0,
    2117        0,     0,    88,     0,     8,     9,    10,    11,    12,     0,
    2118        0,     0,     0,   357,     0,     0,     0,     0,   723,     0,
    2119        0,     0,     0,     0,     0,     0,     0,     0,   364,   119,
    2120        0,     0,     0,    31,     0,     8,     9,    10,    11,    12,
    2121      356,   356,   349,   356,   356,     0,   364,     0,    88,     0,
    2122      349,     0,     0,     0,     0,     0,     0,   357,   357,   357,
    2123        0,    34,     0,    79,    31,     0,    37,     0,   185,   186,
    2124       40,     0,     0,     0,     0,     0,   357,    41,    42,   354,
    2125        0,     0,     0,     0,     0,     0,     0,     0,    43,   364,
    2126        0,     0,    34,     0,   357,     0,     0,    37,   356,   356,
    2127        0,    40,     0,   267,     0,    81,   351,     0,    41,    42,
    2128        0,   357,    46,    47,     0,     0,    58,     0,     0,    43,
    2129        0,     0,     0,     0,   169,     0,   174,     0,    76,   180,
    2130      181,   182,   119,   184,    44,    76,     0,     0,     0,     0,
    2131        0,     0,     0,    46,    47,     0,     0,    81,   235,     0,
    2132      357,     0,     0,   364,     0,  1203,     0,     0,     0,     0,
    2133      250,   251,  1203,   356,     8,     9,    10,    11,    12,     0,
    2134        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2135        0,     0,     0,    58,     0,     0,     0,   357,    76,     0,
    2136        0,     0,     0,    31,     0,     0,     0,   364,   364,   364,
    2137      349,     0,     0,     0,     0,     0,   225,     0,   516,     0,
    2138      518,   521,     0,     0,     0,  1203,   364,     0,   524,   525,
    2139        0,    34,  1556,     0,     0,     0,    37,     0,    79,   357,
    2140       40,     0,   518,   518,   364,     0,     0,    41,    42,   357,
    2141        0,   357,   356,     0,   356,    88,   226,     0,    43,   357,
    2142        0,   364,     0,   357,     0,     0,     0,   349,   349,     0,
    2143        0,     0,     0,   743,     0,     0,     0,     0,     0,     0,
    2144      518,     0,    46,    47,   356,   284,   285,    58,   286,     0,
    2145        0,     0,   356,   356,   356,     0,     0,    88,     0,     0,
    2146      364,     0,     0,   356,   356,     0,     0,     0,     0,     0,
    2147        0,     0,     0,     0,   287,     0,   518,    79,     0,     0,
    2148      648,     0,   141,   142,   289,    81,     0,   290,   649,   292,
    2149      293,    41,    42,     0,   294,   295,     0,   364,     0,     0,
    2150      356,     0,    43,     0,     0,     0,     0,     0,     0,     0,
    2151        0,     0,     0,     0,     0,   820,   821,   296,     0,   650,
    2152        0,   651,   381,     0,     0,     0,    46,    47,   298,   299,
    2153      300,   301,     0,     0,     0,     0,     0,     0,     0,   364,
    2154        0,     0,     0,     0,   854,     0,     0,   857,   858,   364,
    2155      861,   364,   863,   864,     0,     0,   227,   865,   866,   364,
     2203       0,     0,     0,     0,     0,     0,     0,     0,     0,   364,
     2204     364,   364,     0,     0,     0,     0,   224,     0,     0,     0,
     2205       0,     0,     0,     0,     0,     0,     0,     0,   364,    80,
     2206       0,     0,   357,     0,     0,     0,     0,     0,    78,     0,
     2207       0,     0,     0,     0,     0,     0,   364,     0,     0,     0,
     2208       0,     0,   356,     0,   356,     0,     0,    87,     0,     0,
    21562209       0,     0,     0,   364,     0,     0,     0,     0,     0,   357,
    21572210       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2158        0,     0,     0,     0,     0,   599,     0,   607,   356,    58,
    2159       58,     0,     0,     0,     0,     0,     0,     0,   631,   632,
    2160        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2161        0,     0,    58,     0,     0,     0,     0,     0,     0,     0,
    2162        0,     0,     0,   357,   357,    88,   357,   357,     0,     0,
    2163        0,     0,    58,     0,     0,     0,     0,    79,     0,     0,
    2164        0,   941,   942,     0,    79,     0,    81,   944,     0,     0,
    2165        0,   518,   518,   518,   518,   518,   518,   518,   518,   518,
    2166      518,   518,   518,   518,   518,   518,   518,   518,   518,     0,
    2167        0,   284,   285,     0,   286,     0,     0,   349,   349,     0,
    2168        0,   357,   357,     0,     0,     0,    58,     0,     0,     0,
    2169        0,    58,     0,     0,     0,     0,     0,    79,     0,     0,
    2170      287,     0,     0,     0,     0,     0,   288,     0,     0,   364,
    2171      289,     0,     0,   290,   291,   292,   293,    41,    42,     0,
    2172      294,   295,     0,     0,     0,    58,     0,     0,    43,     0,
    2173        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2174        0,     0,     0,   296,     0,   380,   357,     0,   381,     0,
    2175        0,     0,    46,    47,   298,   299,   300,   301,     0,     0,
    2176        0,     0,     0,   364,   364,     0,   364,   364,     0,     0,
    2177        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2178        0,     0,     0,     0,     0,     0,    88,     0,     0,   226,
    2179        0,     0,   518,     0,     0,     0,     0,     0,     0,     0,
    2180        0,     0,   349,     0,     0,     0,     0,     0,     0,     0,
    2181        0,    81,     0,     0,   518,     0,     0,     0,     0,     0,
    2182        0,   364,   364,     0,     0,   357,     0,   357,    58,     0,
    2183        0,     0,     8,     9,    10,    11,    12,    13,    14,    15,
    2184       16,    17,    18,    19,    20,    21,    22,    23,    24,    25,
    2185     -295,    58,    26,    27,    28,     0,     0,   357,    58,     0,
    2186        0,    31,     0,     0,     0,   357,   357,   357,     0,     0,
    2187        0,     0,     0,   518,     0,     0,   357,   357,     0,     0,
    2188        0,     0,     0,     0,     0,     0,   364,     0,     0,    34,
    2189       81,     0,     0,     0,     0,     0,    38,    39,     0,     0,
    2190     -295,     0,     0,   284,   285,   518,   286,     0,     0,     0,
    2191        0,    58,     0,   357,     0,     0,    43,     0,     0,     0,
    2192        0,     0,     0,     0,     0,     0,     0,     0,     0,   227,
    2193        0,   642,   287,   339,     0,     0,     0,     0,   288,     0,
    2194       46,    47,   289,     0,     0,   290,   291,   292,   293,    41,
    2195       42,    88,   294,   295,     0,     0,     0,     0,     0,     0,
    2196       43,     0,     0,     0,   950,   364,   951,   364,     0,     0,
    2197        0,     0,     0,   954,   955,   296,     0,   380,   960,     0,
    2198        0,     0,     0,   811,    46,    47,   298,   299,   300,   301,
    2199      965,     0,     0,     0,     0,   969,     0,   364,     0,   284,
    2200      285,   357,   286,     0,     0,   364,   364,   364,     0,     0,
    2201        0,     0,     0,     0,     0,     0,   364,   364,     0,     0,
    2202        0,   998,     0,     0,     0,     0,     0,     0,   287,     0,
    2203       88,  1233,     0,     0,   288,     0,     0,     0,   289,     0,
    2204        0,   290,   291,   292,   293,    41,    42,     0,   294,   295,
    2205       81,     0,     0,   364,     0,     0,    43,    81,     0,     0,
    2206        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2207      518,   296,     0,   380,     0,     0,     0,     0,   780,   167,
    2208       46,    47,   298,   299,   300,   301,     0,     0,     0,     0,
    2209        0,     0,     0,     0,     0,     0,   220,     0,     0,     0,
    2210        0,   518,     0,     0,     0,     0,     0,     0,     0,     0,
    2211       81,     0,     0,     0,   518,     0,     0,   284,   285,     0,
    2212      286,     0,  1044,  1045,  1046,  1047,     0,  1049,     0,     0,
    2213        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2214        0,   364,     0,  1093,   167,     0,   287,     0,   274,     0,
    2215        0,     0,   288,     0,  1321,   518,   289,  1099,     0,   290,
    2216      291,   292,   293,    41,    42,     0,   294,   295,     0,     0,
    2217        0,   213,     0,     0,    43,     0,     0,   167,     0,     0,
    2218        0,   233,     0,   237,     0,   239,     0,   370,     0,   515,
    2219       88,   376,   248,     0,     0,     0,  1115,    88,    46,    47,
    2220      298,   299,   300,   301,     0,     0,     0,     0,     0,     0,
    2221        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2222        0,     0,     0,   213,     0,   237,   239,   248,   518,     0,
    2223        0,     0,     0,     0,     0,     0,  1143,     0,     0,     0,
    2224      167,     0,     0,  1151,     0,     0,     0,     0,  1155,     0,
    2225       88,     0,   220,  1159,     0,  1160,     0,     0,     0,  1162,
    2226        0,  1163,  1164,     0,     0,  1167,   213,     0,     0,     0,
    2227      167,   463,     0,     0,  1179,     0,     0,     0,     0,     0,
    2228        0,     0,     0,     0,     0,     0,   518,   518,     0,     0,
    2229        0,     0,  1194,  1195,     0,   376,     0,     0,     0,     0,
    2230        0,     0,   167,     0,     0,     0,     0,     0,     0,     0,
    2231        0,     0,     0,     0,     0,     0,     0,     0,     0,  1225,
    2232        0,     0,  1227,     0,     0,   463,     0,   213,     0,   237,
    2233      239,   248,     0,     0,     0,     0,     0,   167,   128,   128,
    2234      128,     0,     8,     9,    10,    11,    12,    13,    14,    15,
    2235       16,    17,    18,    19,    20,    21,    22,    23,    24,    25,
    2236     -295,  1243,    26,    27,    28,   213,     0,  1247,  1248,     0,
    2237      213,    31,     0,     0,     0,   605,     0,     0,     0,  1259,
    2238      629,     0,     0,     0,  1263,   506,     0,  1267,     0,  1268,
    2239        0,     0,  1270,     0,     0,     0,     0,     0,     0,    34,
    2240        0,     0,     0,     0,    37,  1278,   337,   338,    40,     0,
    2241     -295,     0,   128,     0,   128,    41,    42,     0,  1285,     0,
    2242     1287,  1288,  1289,  1290,     0,     0,    43,     0,     0,     0,
    2243        0,     0,     0,   213,     0,     0,  1297,     0,  1298,   277,
    2244        0,   642,   174,   339,     0,     0,     0,     0,     0,     0,
    2245       46,    47,     0,     0,     0,   213,   167,   167,     0,     0,
    2246      237,   239,     0,   370,     0,     0,     0,     0,   248,     0,
    2247        0,  1326,  1327,     0,     0,     0,     0,     0,     0,     0,
    2248        0,     0,     0,     0,   463,     0,     0,   463,     0,     0,
    2249        0,     0,     0,     0,     0,   128,     0,   518,     0,     0,
    2250        0,     0,     0,   128,     0,   128,   128,     0,     0,     0,
    2251      128,   213,   128,   128,   518,     0,     0,     0,     0,     0,
    2252      740,     0,     0,  1362,  1363,     0,     0,     0,     0,   213,
    2253        0,     0,   167,  1373,   213,     0,   213,     0,     0,     0,
    2254        0,     0,     0,     0,   463,     0,   463,     0,     0,   463,
    2255        0,   167,   463,   213,     0,     0,   213,   213,     0,     0,
    2256        0,     0,     0,   370,     0,     0,     0,     0,     0,     0,
    2257        0,     0,   213,  1033,     0,     0,     8,     9,    10,    11,
    2258       12,     0,   128,     0,     0,  1406,   213,   518,   518,     0,
    2259        0,     0,     0,   213,     0,     0,     0,  1410,     0,  1411,
    2260     1412,  1413,     0,   284,   285,    31,   286,     0,     0,     0,
    2261        0,  1417,     0,     0,     0,   167,   158,     0,     0,     0,
    2262     1428,     0,     0,     0,     0,     0,     0,   370,     0,     0,
    2263        0,   835,   287,    34,     0,     0,  1441,     0,   288,     0,
    2264        0,     0,   289,     0,     0,   290,   291,   292,   293,    41,
    2265       42,     0,   294,   295,     0,     0,     0,   605,     0,     0,
    2266       43,     0,   605,     0,   253,     0,     0,     0,     0,     0,
    2267        0,   370,   370,   370,   258,   296,     0,   380,     0,     0,
    2268        0,     0,     0,     0,   345,    47,   298,   299,   300,   301,
    2269      370,     0,  1490,  1491,     0,     0,     0,     0,     0,     0,
    2270        0,     0,     0,     0,     0,  1496,   213,     0,     0,     0,
    2271        0,     0,  1496,   284,   285,     0,   286,     0,     0,     0,
    2272        0,     0,     0,     0,     0,   740,     0,     0,     0,     0,
    2273      158,     0,     0,     0,   213,     0,     0,     0,     0,   213,
    2274        0,     0,   287,     0,   387,  1530,   463,     0,   288,  1536,
    2275        0,     0,   289,     0,     0,   290,   291,   292,   293,    41,
    2276       42,     0,   294,   295,   370,     0,   959,   419,     0,     0,
    2277       43,     0,     0,     0,     0,     0,     0,     0,  1558,     0,
    2278     1559,   434,     0,     0,     0,   296,     0,   380,     0,     0,
    2279      439,     0,     0,     0,    46,    47,   298,   299,   300,   301,
    2280      447,   740,     0,     0,     0,     0,     0,     0,  1574,  1575,
    2281        0,     0,     0,     0,     0,     0,  1578,  1579,     0,     0,
    2282        0,     0,     0,     0,     0,   473,     0,   213,     0,     0,
    2283      483,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2284        0,   213,     0,   491,     0,     0,     0,     0,     0,   501,
    2285        0,   505,     0,     0,     0,   370,     0,     0,     0,   629,
    2286        0,   506,     0,   370,     0,     0,     0,     0,   534,     0,
    2287        0,     0,     0,     0,     0,     0,     8,     9,    10,    11,
    2288       12,    13,    14,    15,    16,    17,    18,    19,    20,    21,
    2289       22,    23,    24,    25,   128,   128,    26,    27,    28,     0,
    2290        0,     0,     0,     0,     0,    31,   455,     0,     0,     0,
    2291      593,     0,     0,     0,     0,   598,     0,     0,     0,     0,
    2292        0,     0,   213,   128,     0,     0,   128,   128,     0,   128,
    2293        0,   128,   128,    34,   213,     0,   128,   128,     0,     0,
    2294       38,    39,     0,     0,   643,     0,     0,     0,   644,   645,
    2295        0,   647,     0,   213,     0,   463,     0,     0,   659,   660,
    2296       43,   661,   662,     0,   663,     0,   664,     0,     0,     0,
    2297        0,     0,     0,     0,   463,     0,     0,   456,     0,     0,
    2298        0,   710,     0,   593,    46,    47,     0,     0,     0,     0,
    2299        0,   679,     0,     0,     0,     0,     0,   167,     0,     0,
    2300        0,     0,     0,  1177,     0,     0,     8,     9,    10,    11,
    2301       12,     0,     0,   370,     0,   128,   690,     0,     0,     0,
    2302      128,   128,     0,     0,     0,     0,   128,   696,     0,     0,
    2303        0,     0,     0,   284,   285,    31,   286,     0,     0,     0,
    2304      213,     0,     0,     0,     0,     0,     0,     0,     0,   605,
    2305      732,     0,     0,     0,     0,     0,   735,     0,     0,     0,
    2306        0,   473,   287,    34,     0,     0,   213,     0,   288,     0,
    2307      370,   370,   289,     0,     0,   290,   291,   292,   293,    41,
    2308       42,     0,   294,   295,     0,     0,     0,     0,     0,     0,
    2309       43,     0,     0,     0,   213,     0,     0,   772,     0,     0,
    2310        0,     0,     0,     0,     0,   296,     0,   380,     0,     0,
    2311        0,   787,     0,     0,  1178,    47,   298,   299,   300,   301,
    2312        0,     0,     0,     0,     0,     0,     0,   213,     0,     0,
    2313      463,     0,     0,     0,     0,     0,     0,     0,   213,     0,
    2314        0,     0,     0,     0,     0,     0,     0,     0,     0,   814,
    2315        0,     0,   284,   285,     0,   286,     0,     0,   824,   342,
    2316      365,     0,     0,     0,     0,   826,     0,     0,     0,     0,
    2317        0,   834,     0,     0,     0,     0,     0,     0,     0,     0,
    2318      848,   287,     0,     0,     0,     0,     0,   288,     0,     0,
    2319      740,   289,     0,   415,   290,   291,   292,   293,    41,    42,
    2320      415,   294,   295,     0,     0,     0,     0,     0,     0,    43,
    2321        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2322      213,   888,     0,     0,   296,     0,   380,     0,     0,   991,
    2323        0,     0,   220,    46,    47,   298,   299,   300,   301,     0,
    2324        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2325        0,     0,     0,     0,     0,     0,     0,   834,     0,     0,
    2326        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2327        0,   740,   415,     0,     0,     1,     2,   208,     4,     5,
    2328        6,     7,     8,     9,    10,    11,    12,    13,    14,    15,
    2329       16,    17,    18,    19,    20,    21,    22,    23,    24,    25,
    2330     -295,     0,    26,    27,    28,    29,     0,   213,    30,     0,
    2331        0,    31,   253,     0,     0,     0,     0,     0,     0,     0,
    2332      370,   370,   966,   967,     0,     0,   415,     0,     0,   220,
    2333        0,     0,     0,     0,   415,   589,   984,   415,   592,    34,
    2334        0,    35,     0,    36,     0,     0,    38,    39,   365,     0,
    2335     -295,     0,   621,   999,     0,  1000,     0,     0,     0,  1004,
    2336        0,     0,     0,     0,     0,     0,    43,     0,     0,     0,
    2337        0,   639,     0,     0,   342,     0,     0,     0,     0,     0,
    2338        0,     0,     0,    45,     0,     0,     0,     0,     0,     0,
    2339       46,    47,     0,     0,     0,     0,     0,     0,     0,     0,
    2340        0,   415,     0,     0,   213,   415,     0,     0,     0,     0,
    2341      128,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2342        0,     0,     0,     0,  1038,     0,     0,     0,     0,     0,
    2343        0,  1039,     0,     0,     0,     0,   365,     0,     0,     0,
    2344        0,     0,     0,     0,  1041,   370,  1042,     0,     0,     0,
    2345        0,     0,     0,     0,     0,     0,     0,     0,     0,   415,
    2346     1054,     0,     0,     0,     0,     0,     0,  1058,     0,     0,
    2347        0,     0,     0,     0,     0,     0,   322,     0,     0,  1096,
    2348        0,     0,  1097,     0,     0,     0,   347,     0,     0,     0,
    2349      415,     0,     0,   365,     0,     0,     0,     0,   383,   383,
    2350      598,     0,     0,   463,     0,   463,     0,     0,     8,     9,
     2211       0,     0,     0,     0,   356,     0,     0,     0,     0,     0,
     2212       0,     0,   356,   356,   356,     0,     0,     0,     0,    87,
     2213       0,     0,   364,   356,   356,     0,     0,     0,     0,     0,
     2214       0,   357,     0,     0,     0,     0,     0,    78,     0,     0,
     2215       0,   357,     0,   357,     0,     0,     0,     0,   225,     0,
     2216       0,   357,     0,     0,     0,   357,     0,     0,     0,   364,
     2217     356,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     2218       0,   476,     2,   207,     4,     5,     6,     7,     8,     9,
    23512219      10,    11,    12,    13,    14,    15,    16,    17,    18,    19,
    2352       20,    21,    22,    23,    24,    25,  -295,     0,    26,    27,
    2353       28,     0,   415,   128,     0,   342,   365,    31,     0,     0,
    2354      463,     0,   463,     0,     0,     0,     8,     9,    10,    11,
    2355       12,    13,    14,    15,    16,    17,    18,    19,    20,    21,
    2356       22,    23,    24,    25,  -295,    34,     0,     0,     0,   322,
    2357      167,     0,    38,    39,     0,    31,  -295,     0,     0,     0,
    2358      415,   415,     0,     0,     0,     0,     0,     0,     0,  1161,
    2359        0,     0,    43,   487,     0,     0,     0,     0,     0,   828,
    2360      365,     0,     0,    34,     0,     0,     0,     0,     0,   339,
    2361      621,     0,   621,   621,  -295,     0,    46,    47,     0,   621,
    2362        0,     0,     0,     0,     0,     0,     0,     0,     0,   867,
    2363      365,     0,     0,     0,     0,   365,     0,     0,     0,     0,
    2364        0,     0,     0,     0,   365,   365,   365,   534,     0,     0,
    2365        0,     0,     0,  1226,     0,     0,     0,     0,     0,     0,
    2366      213,     0,     0,   365,     0,     0,     0,     0,   415,   910,
    2367        0,     0,   415,   913,     0,     0,     0,     0,     0,   915,
    2368        0,     0,     0,  1240,     0,     0,     0,     0,  1242,     0,
    2369        0,     0,     0,     0,     0,     0,  1246,   342,   365,   415,
    2370        0,   415,     0,     0,     0,   415,     0,     0,     0,   383,
    2371        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2372        0,     0,     0,     0,     0,     0,     0,  1272,     0,     0,
    2373        0,     0,     0,     0,     0,     0,     0,   365,   621,  1280,
    2374        0,     0,  1281,     0,  1282,     0,     0,     0,     0,     0,
    2375        0,     0,     0,     0,     0,     0,     0,     0,  1291,  1292,
    2376        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2377        0,     0,     0,   342,   365,     0,     0,     0,   415,   415,
    2378     1305,   207,     2,   208,     4,     5,     6,     7,     8,     9,
    2379       10,    11,    12,    13,    14,    15,    16,    17,    18,    19,
    2380       20,    21,    22,    23,    24,    25,     0,  1328,    26,    27,
    2381       28,   734,     0,     0,     0,     0,     0,    31,     0,     0,
    2382      415,     0,     0,     0,     0,     0,     0,     0,   365,     0,
    2383        0,     0,     0,     0,     0,   828,   365,     0,     0,   621,
    2384        0,   621,     0,     0,     0,    34,     0,    35,     0,    36,
    2385      768,   621,   209,    39,     0,     0,     0,     0,     0,     0,
    2386        0,     0,   781,     0,     0,     0,     0,   768,     0,     0,
    2387      768,     0,    43,     0,     0,     0,     0,     0,     0,     0,
    2388        0,   791,   792,     0,     0,     0,     0,     0,     0,   210,
    2389        0,     0,     0,     0,     0,     0,    46,    47,     0,     0,
    2390        0,     0,     0,     0,   813,  1398,     0,  1399,     0,     0,
    2391        0,     0,     0,     0,   822,     0,     0,     0,     0,     0,
    2392     1408,   347,  1409,     0,   828,     0,   781,     0,     0,     0,
    2393        0,     0,   415,     0,     0,     0,     0,     0,   415,     0,
    2394     1416,     0,     0,     0,     0,     0,   415,     0,     0,     0,
    2395        0,     0,     0,     0,     0,     0,  1434,  1436,     0,   621,
    2396      621,     0,     0,     0,     0,     0,     0,     0,  1442,     0,
    2397        0,  1246,     0,     0,     0,   887,     0,     0,     0,     0,
    2398        0,     0,     0,     0,   383,     0,   365,     0,     0,     0,
    2399        0,     0,   415,  1465,     0,     0,     0,     0,     0,     0,
    2400        0,     0,  1472,     0,     0,  1474,     0,  1476,  1478,  1480,
    2401        0,   415,  1158,   284,   285,     0,   286,     0,     0,     0,
    2402        0,     0,   365,     0,   347,     0,     0,     0,   415,  1170,
    2403        0,   621,   621,  1175,     0,     0,     0,     0,     0,     0,
    2404        0,     0,   287,   365,   365,     0,     0,     0,   288,  1511,
    2405        0,  1513,   289,     0,  1246,   290,   291,   292,   293,    41,
    2406       42,     0,   294,   295,     0,     0,     0,     0,     0,  1525,
    2407       43,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2408        0,     0,     0,     0,     0,   296,     0,   380,     0,     0,
    2409        0,     0,     0,     0,   733,    47,   298,   299,   300,   301,
    2410      781,     0,   989,     0,   828,   415,  1238,     0,   994,     0,
    2411        0,     0,     0,     0,     0,  1003,     0,     0,   621,     1,
    2412        2,   208,     4,     5,     6,     7,     8,     9,    10,    11,
    2413       12,    13,    14,    15,    16,    17,    18,    19,    20,    21,
    2414       22,    23,    24,    25,     0,     0,    26,    27,    28,    29,
    2415        0,     0,    30,   284,   285,    31,   286,     0,  1021,  1022,
    2416        0,     0,   347,   365,     0,     0,     0,     0,     0,     0,
    2417        0,     0,     0,     0,     0,     0,   347,     0,     0,     0,
    2418        0,     0,   287,    34,     0,    35,     0,    36,   288,     0,
    2419       38,    39,   289,     0,     0,   290,   291,   292,   293,    41,
    2420       42,     0,   294,   295,     0,     0,     0,     0,     0,     0,
    2421       43,     0,     0,     0,     0,     0,  1052,     0,     0,     0,
    2422      383,     0,     0,     0,   342,   296,     0,  1076,     0,     0,
    2423        0,     0,     0,     0,    46,    47,   298,   299,   300,   301,
    2424        0,     0,     0,     0,   365,     0,     0,     0,  -130,     0,
    2425        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2426        0,     0,     0,     0,     2,   208,     4,     5,     6,     7,
    2427        8,     9,    10,    11,    12,    13,    14,    15,    16,    17,
    2428       18,    19,    20,    21,    22,    23,    24,    25,     0,     0,
    2429       26,    27,    28,   365,   365,     0,   322,   284,   285,    31,
    2430      286,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2431        0,     0,  1139,  1140,     0,     0,     0,     0,     0,   383,
    2432        0,     0,     0,     0,     0,   994,   287,    34,  1149,    35,
    2433      768,    36,   288,     0,    38,    39,   289,     0,     0,   290,
    2434      291,   292,   293,    41,    42,     0,   294,   295,     0,     0,
    2435        0,  1165,     0,     0,    43,     0,     0,     0,     0,     0,
    2436        0,     0,  1180,     0,     0,     0,     0,     0,     0,   296,
    2437        0,   344,     0,     0,     0,     0,   780,     0,   345,    47,
    2438      298,   299,   300,   301,   383,     0,  1198,     0,     0,     0,
    2439        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2440        0,   994,   994,     0,     0,     0,     0,     0,     0,     0,
    2441        0,     0,     0,     0,     0,     0,     0,     0,   365,     0,
    2442        0,     0,  1230,     0,     0,     0,  -520,     0,     0,     1,
    2443        2,     3,     4,     5,     6,     7,     8,     9,    10,    11,
    2444       12,    13,    14,    15,    16,    17,    18,    19,    20,    21,
    2445       22,    23,    24,    25,     0,     0,    26,    27,    28,    29,
    2446        0,     0,    30,     0,     0,    31,    32,     0,     0,     0,
    2447      994,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2448        0,     0,     0,     0,     0,     0,     0,     0,     0,   887,
    2449       33,     0,     0,    34,     0,    35,     0,    36,    37,     0,
    2450       38,    39,    40,     0,  1283,  1284,     0,     0,   415,    41,
    2451       42,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2452       43,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2453        0,     0,     0,   415,   415,    44,     0,    45,     0,     0,
    2454        0,     0,     0,     0,    46,    47,     0,     0,     0,     0,
    2455        0,     0,     0,     0,     0,     0,     0,     0,   415,     0,
    2456        1,     2,   208,     4,     5,     6,     7,     8,     9,    10,
    2457       11,    12,    13,    14,    15,    16,    17,    18,    19,    20,
    2458       21,    22,    23,    24,    25,     0,   994,    26,    27,    28,
    2459       29,     0,     0,    30,   284,   285,    31,  1061,  1062,     0,
    2460     1063,     0,     0,  1064,  1065,  1066,  1067,  1068,  1069,  1070,
    2461     1071,     0,     0,     0,  1072,     0,     0,     0,  1073,  1074,
    2462        0,    33,     0,   287,    34,     0,    35,     0,    36,  1075,
    2463        0,    38,    39,   289,     0,     0,   290,   291,   292,   293,
    2464       41,    42,     0,   294,   295,     0,     0,  1391,     0,     0,
    2465      768,    43,     0,     0,     0,     0,     0,     0,     0,     0,
    2466        0,     0,     0,     0,     0,     0,   296,     0,  1076,     0,
    2467        0,   173,     0,     0,     0,    46,    47,   298,   299,   300,
    2468      301,     0,     0,     0,     0,  1077,     0,     0,     0,  -130,
    2469        1,     2,   208,     4,     5,     6,     7,     8,     9,    10,
    2470       11,    12,    13,    14,    15,    16,    17,    18,    19,    20,
    2471       21,    22,    23,    24,    25,     0,     0,    26,    27,    28,
    2472       29,     0,     0,    30,   284,   285,    31,   286,     0,     0,
    2473        0,     0,     0,     0,     0,  1451,     0,     0,     0,     0,
    2474        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2475        0,     0,     0,   287,    34,     0,    35,     0,    36,   288,
    2476        0,    38,    39,   289,     0,     0,   290,   291,   292,   293,
    2477       41,    42,     0,   294,   295,     0,     0,     0,     0,     0,
    2478        0,    43,     0,     0,     0,     0,     0,     0,     0,     0,
    2479        0,     0,     0,     0,     0,     0,   296,     0,    45,     0,
    2480        0,     0,     0,     0,     0,    46,    47,   298,   299,   300,
    2481      301,     0,     0,     0,     0,     0,     0,  1517,     2,   208,
     2220      20,    21,    22,    23,    24,    25,     0,     0,    26,    27,
     2221      28,   364,     0,     0,     0,     0,     0,    31,     0,     0,
     2222       0,   364,     0,   364,     0,     0,     0,    80,   226,     0,
     2223       0,   364,     0,     0,     0,   364,     0,     0,     0,     0,
     2224       0,     0,     0,     0,     0,    34,   600,    35,   608,    36,
     2225       0,     0,    38,    39,     0,     0,     0,     0,   356,   632,
     2226     633,     0,     0,     0,     0,     0,     0,     0,     2,   207,
    24822227       4,     5,     6,     7,     8,     9,    10,    11,    12,    13,
    24832228      14,    15,    16,    17,    18,    19,    20,    21,    22,    23,
    2484       24,    25,     0,     0,    26,    27,    28,     0,     0,     0,
    2485        0,   284,   285,    31,   286,     0,     0,     0,     0,     0,
    2486        0,     0,     0,     0,     0,     0,     0,     0,     0,   322,
     2229      24,    25,    -3,     0,    26,    27,    28,    87,     0,     0,
     2230       0,   283,   284,    31,   285,     0,     0,    78,     0,     0,
     2231       0,   357,     0,     0,    78,     0,     0,     0,     0,     0,
    24872232       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2488      287,    34,     0,    35,     0,    36,   288,     0,    38,    39,
    2489      289,     0,     0,   290,   291,   292,   293,    41,    42,     0,
    2490      294,   295,     0,     0,     0,     0,     0,     0,    43,     0,
     2233     286,    34,     0,    35,     0,    36,   287,     0,    38,    39,
     2234     288,     0,     0,   289,   290,   291,   292,    41,    42,     0,
     2235     293,   294,     0,     0,     0,     0,     0,     0,   295,     0,
     2236       0,     0,     0,     0,     0,   357,   357,    78,   357,   357,
     2237       0,     0,     0,   296,     0,   344,     0,     0,     0,     0,
     2238     781,   364,   345,    46,   298,   299,   300,   301,    80,     0,
     2239       0,     0,     2,   207,     4,     5,     6,     7,     8,     9,
     2240      10,    11,    12,    13,    14,    15,    16,    17,    18,    19,
     2241      20,    21,    22,    23,    24,    25,     0,     0,    26,    27,
     2242      28,     0,     0,   357,   357,   283,   284,    31,   285,     0,
     2243       0,   212,     0,     0,     0,   364,   364,     0,   364,   364,
     2244       0,   232,     0,   236,     0,   238,     0,     0,     0,     0,
     2245       0,     0,   247,     0,   286,    34,     0,    35,    87,    36,
     2246     287,     0,    38,    39,   288,     0,     0,   289,   290,   291,
     2247     292,    41,    42,     0,   293,   294,     0,     0,     0,     0,
     2248       0,     0,   295,   212,     0,   236,   238,   247,   357,     0,
     2249       0,     0,     0,   364,   364,     0,     0,   296,     0,   930,
     2250     283,   284,     0,   285,   781,     0,   345,    46,   298,   299,
     2251     300,   301,     0,     0,     0,     0,     0,     0,     0,     0,
     2252       0,     0,     0,     0,     0,     0,   212,     0,     0,   286,
     2253       0,   225,     0,     0,     0,   287,     0,     0,     0,   288,
     2254       0,     0,   289,   290,   291,   292,    41,    42,     0,   293,
     2255     294,     0,     0,    80,     0,     0,     0,   295,   364,     0,
     2256       0,     0,     0,     0,     0,     0,     0,   357,     0,   357,
     2257       0,     0,   296,     0,   380,     0,     0,     0,     0,     0,
     2258     812,    45,    46,   298,   299,   300,   301,   212,     0,   236,
     2259     238,   247,     0,     0,     0,     0,     0,     0,     0,   357,
     2260       0,   226,     0,     0,     0,     0,     0,   357,   357,   357,
     2261       0,     0,     0,     0,     0,     0,     0,     0,   357,   357,
     2262       0,     0,     0,    87,     0,   212,   951,     0,   952,     0,
     2263     212,     0,    80,     0,     0,   955,   956,   364,     0,   364,
     2264     961,     0,     0,     0,     0,   506,     0,     0,     0,     0,
     2265       0,     0,   966,     0,     0,   357,     0,   970,     0,     0,
     2266       0,     0,     0,     0,     0,     0,     0,     0,     0,   364,
     2267       0,     0,     0,     0,     0,     0,     0,   364,   364,   364,
     2268       0,     0,     0,   999,     0,     0,     0,     0,   364,   364,
     2269     166,     0,     0,     0,   212,   283,   284,     0,   285,     0,
     2270       0,     0,    87,     0,     0,     0,     0,   219,     0,     0,
     2271       0,     0,     0,     0,     0,     0,   212,     0,     0,     0,
     2272       0,   236,   238,     0,   286,   364,     0,     0,     0,   247,
     2273     287,     0,     0,     0,   288,     0,     0,   289,   290,   291,
     2274     292,    41,    42,   357,   293,   294,     0,     0,     0,     0,
     2275       0,     0,   295,     0,     0,   166,     0,     0,     0,   273,
     2276       0,     0,     0,     0,     0,     0,     0,   296,     0,   380,
     2277       0,     0,   212,     0,   781,     0,    45,    46,   298,   299,
     2278     300,   301,     0,     0,  1045,  1046,  1047,  1048,   166,  1050,
     2279     212,     0,    80,   283,   284,   212,   285,   212,   370,    80,
     2280       0,     0,   376,     0,     0,  1094,     0,     0,     0,     0,
     2281       0,     0,     0,   364,   212,     0,     0,   212,   212,  1100,
     2282       0,     0,   286,     0,     0,     0,     0,     0,   287,     0,
     2283       0,     0,   288,   212,     0,   289,   290,   291,   292,    41,
     2284      42,     0,   293,   294,     0,     0,     0,   212,     0,     0,
     2285     295,   166,    80,     0,   212,     0,     0,     0,  1116,     0,
     2286       0,     0,    87,   219,     0,   296,     0,   380,     0,    87,
     2287     992,     0,     0,     0,    45,    46,   298,   299,   300,   301,
     2288       0,   166,   463,     0,     0,     0,     0,     0,     0,     0,
     2289       0,     0,     0,     0,     0,     0,     0,     0,  1144,     0,
     2290       0,     0,     0,     0,     0,  1152,   376,     0,     0,     0,
     2291    1156,     0,     0,   166,     0,  1160,     0,  1161,     0,     0,
     2292       0,  1163,    87,  1164,  1165,     0,     0,  1168,   283,   284,
     2293       0,   285,     0,     0,     0,     0,  1180,   463,     0,     0,
     2294       0,     0,     0,     0,     0,     0,     0,     0,     0,   166,
     2295       0,     0,     0,     0,  1195,  1196,     0,   286,     0,     0,
     2296       0,     0,     0,   287,     0,     0,     0,   288,   212,     0,
     2297     289,   290,   291,   292,    41,    42,     0,   293,   294,     0,
     2298       0,  1226,     0,     0,  1228,   295,     0,   606,     0,     0,
     2299       0,     0,   630,     0,     0,     0,   212,   157,     0,     0,
     2300     296,   212,   380,     0,     0,     0,     0,     0,     0,    45,
     2301      46,   298,   299,   300,   301,     0,     0,     0,     0,     0,
     2302       0,     0,     0,  1244,     0,     0,     0,     0,     0,  1248,
     2303    1249,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     2304       0,  1260,     0,     0,     0,   252,  1264,     0,     0,  1268,
     2305       0,  1269,     0,     0,  1271,   257,     0,     0,     0,     0,
     2306       0,     0,     0,     0,     0,     0,     0,  1279,   166,   166,
     2307       0,     0,     0,     0,     0,   370,     0,     0,     0,     0,
     2308    1286,     0,  1288,  1289,  1290,  1291,     0,     0,     0,   212,
     2309       0,     0,     0,     0,     0,     0,   463,     0,  1298,   463,
     2310    1299,     0,     0,   212,   173,     0,     0,     0,     0,     0,
     2311       0,   157,     0,     0,     0,     0,     0,     0,     0,     0,
     2312       0,     0,     0,   506,     0,   387,     0,     0,     0,     0,
     2313       0,     0,   741,  1327,  1328,     0,     0,     0,     0,     0,
     2314       0,     0,     0,     0,   166,     0,     0,     0,   419,     0,
     2315       0,     0,     0,     0,     0,     0,   463,     0,   463,     0,
     2316       0,   463,   434,   166,   463,     0,     0,     0,     0,     0,
     2317       0,   439,     0,     0,     0,     0,   370,     0,     0,     0,
     2318       0,   447,     0,     0,   212,  1363,  1364,     0,     0,     0,
     2319       0,     0,     0,     0,     0,  1374,   212,     0,     0,     0,
     2320       0,     0,     0,     0,     0,     0,   473,     0,     0,     0,
     2321       0,   483,     0,     0,     0,   212,     0,     0,     0,     0,
     2322       0,     0,     0,     0,   491,     0,     0,     0,   166,     0,
     2323     501,     0,   505,     0,     0,     0,     0,     0,     0,     0,
     2324     370,     0,     0,     0,   836,     0,     0,  1407,     0,     0,
     2325     535,     0,     0,     0,     0,     0,     0,     0,     0,  1411,
     2326       0,  1412,  1413,  1414,     0,     0,     0,     0,     0,     0,
     2327     606,     0,     0,  1418,     0,   606,     0,     0,     0,     0,
     2328       0,     0,  1429,     0,   370,   370,   370,     0,     0,     0,
     2329       0,     0,   594,     0,     0,     0,     0,   599,  1442,     0,
     2330       0,     0,   212,   370,     0,     0,     0,     8,     9,    10,
     2331      11,    12,    13,    14,    15,    16,    17,    18,    19,    20,
     2332      21,    22,    23,    24,    25,  -296,   644,     0,   212,     0,
     2333     645,   646,     0,   648,     0,     0,    31,     0,   741,     0,
     2334     660,   661,     0,   662,   663,     0,   664,     0,   665,     0,
     2335       0,     0,     0,     0,  1491,  1492,   212,     0,     0,   463,
     2336       0,     0,     0,     0,    34,   594,     0,  1497,     0,     0,
     2337       0,     0,     0,   680,  1497,  -296,     0,   370,     0,   960,
     2338       0,     0,     0,     0,     0,     0,     0,  1178,     0,   212,
     2339       8,     9,    10,    11,    12,     0,     0,     0,   691,     0,
     2340     212,     0,     0,     0,     0,     0,     0,  1531,     0,   697,
     2341       0,  1537,     0,     0,   741,     0,     0,   283,   284,    31,
     2342     285,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     2343       0,     0,   733,     0,     0,     0,     0,     0,   736,     0,
     2344    1559,     0,  1560,   473,     0,     0,   286,    34,     0,     0,
     2345       0,     0,   287,     0,     0,     0,   288,     0,     0,   289,
     2346     290,   291,   292,    41,    42,     0,   293,   294,   370,     0,
     2347    1575,  1576,   630,     0,   295,     0,   370,     0,  1579,  1580,
     2348     773,     0,   212,     0,     0,     0,     0,     0,     0,   296,
     2349       0,   380,     0,     0,   788,     0,     0,     0,  1179,    46,
     2350     298,   299,   300,   301,     0,     0,     0,     8,     9,    10,
     2351      11,    12,    13,    14,    15,    16,    17,    18,    19,    20,
     2352      21,    22,    23,    24,    25,  -295,     0,    26,    27,    28,
     2353     322,     0,   815,     0,     0,     0,    31,     0,     0,     0,
     2354     347,   825,     0,     0,     0,     0,     0,     0,   827,     0,
     2355       0,     0,   383,   383,   835,     0,     0,     0,     0,     0,
     2356       0,     0,     0,   849,    34,     0,     0,     0,   463,   212,
     2357       0,    38,    39,     0,     0,  -295,     0,     0,     0,     0,
     2358       0,     0,     0,     0,     0,     0,     0,   463,     0,   283,
     2359     284,     0,   285,     0,     0,     0,     0,     0,     0,     0,
     2360       0,     0,     0,     0,   889,     0,   643,     0,   339,     0,
     2361     166,     0,     0,     0,     0,    45,    46,     0,   286,     0,
     2362       0,     0,     0,   322,   287,     0,   370,     0,   288,     0,
     2363       0,   289,   290,   291,   292,    41,    42,     0,   293,   294,
     2364     835,     0,     0,     0,     0,     0,   295,   487,     0,     0,
    24912365       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2492        0,     0,     0,   296,     0,   929,     0,     0,     0,     0,
    2493      780,     0,   345,    47,   298,   299,   300,   301,     2,   208,
    2494        4,     5,     6,     7,     8,     9,    10,    11,    12,    13,
    2495       14,    15,    16,    17,    18,    19,    20,    21,    22,    23,
    2496       24,    25,     0,     0,    26,    27,    28,     0,     0,     0,
    2497        0,   284,   285,    31,   286,     8,     9,    10,    11,    12,
     2366       0,   296,   606,   380,     0,     0,   212,     0,     0,     0,
     2367     734,    46,   298,   299,   300,   301,     0,     0,     0,     0,
     2368       0,     0,     0,   370,   370,     0,     0,     0,     0,     0,
     2369       0,     0,     0,     0,     0,   252,     0,     0,     0,     0,
     2370       0,     0,     0,     0,     0,   967,   968,     0,     0,     0,
     2371       0,     0,     0,     0,     0,     0,     0,     0,     0,   985,
     2372       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     2373       0,     0,     0,     0,     0,     0,  1000,     0,  1001,     0,
     2374       0,     0,  1005,   463,     0,     0,     0,     0,     0,     0,
     2375       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     2376       0,     0,     0,     0,   383,     0,   206,     2,   207,     4,
     2377       5,     6,     7,     8,     9,    10,    11,    12,    13,    14,
     2378      15,    16,    17,    18,    19,    20,    21,    22,    23,    24,
     2379      25,     0,     0,    26,    27,    28,     0,     0,     0,     0,
     2380       0,     0,    31,   741,     0,     0,     0,  1039,     0,     0,
     2381       0,     0,     0,     0,  1040,     0,     0,     0,     0,     0,
     2382       0,     0,   342,   365,     0,     0,     0,  1042,     0,  1043,
     2383      34,     0,    35,     0,    36,    37,     0,   208,    39,    40,
     2384       0,     0,     0,  1055,     0,   219,    41,    42,     0,     0,
     2385    1059,     0,     0,     0,     0,     0,   415,     0,     0,     0,
     2386       0,     0,  1097,   415,     0,  1098,   735,     0,     0,     0,
     2387       0,     0,    43,     0,   209,     0,     0,     0,     0,     0,
     2388       0,    45,    46,   599,   741,     0,     8,     9,    10,    11,
     2389      12,    13,    14,    15,    16,    17,    18,    19,    20,    21,
     2390      22,    23,    24,    25,     0,   769,    26,    27,    28,     0,
     2391       0,     0,     0,     0,     0,    31,   455,     0,   782,     0,
     2392       0,     0,   212,   769,     0,     0,   769,     0,     0,     0,
     2393       0,     0,     0,   370,   370,   415,     0,   792,   793,     0,
     2394       0,     0,   219,    34,     0,     0,     0,     0,     0,     0,
     2395      38,    39,     0,     0,     0,     0,     0,     0,     0,     0,
     2396     814,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     2397     823,     0,  1162,     0,     0,     0,     0,   347,     0,     0,
     2398       0,     0,   782,     0,     0,     0,     0,   456,     0,     0,
     2399     415,   711,     0,     0,    45,    46,     0,     0,   415,   590,
     2400       0,   415,   593,     0,   283,   284,     0,   285,     0,     0,
     2401       0,     0,   365,     0,     0,     0,   622,     0,     0,     0,
     2402       0,     0,     0,     0,     0,     0,     0,     0,     0,   535,
     2403       0,   888,     0,   286,     0,   640,  1227,     0,   342,   649,
     2404     383,     0,     0,   288,     0,     0,   289,   290,   291,   292,
     2405      41,    42,     0,   293,   294,     0,     0,     0,   370,     0,
     2406       0,   295,     0,     0,     0,   415,  1241,     0,     0,   415,
     2407       0,  1243,     0,     0,     0,     0,   296,     0,   785,  1247,
     2408     347,     0,     0,     0,     0,    45,    46,   298,   299,   300,
     2409     301,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     2410     365,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     2411    1273,     0,     0,     0,     0,     0,   463,     0,   463,     0,
     2412       0,     0,  1281,   415,     0,  1282,     0,  1283,     0,     0,
     2413       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     2414       0,  1292,  1293,     0,     0,     0,     0,     0,     0,     0,
     2415       0,     0,     0,   463,   415,   463,   782,   365,   990,     0,
     2416       0,     0,     0,  1306,   995,     0,     0,     0,     0,     0,
     2417       0,  1004,     0,     0,     0,     0,     0,   283,   284,     0,
     2418     285,     0,     0,   166,     0,     0,     0,     0,     0,     0,
     2419    1329,     0,     0,     0,     0,     0,     0,   415,     0,     0,
     2420     342,   365,     0,     0,     0,     0,   286,     0,     0,     0,
     2421       0,     0,   287,     0,  1022,  1023,   288,     0,   347,   289,
     2422     290,   291,   292,    41,    42,     0,   293,   294,     0,     0,
     2423       0,     0,   347,     0,   295,     0,     0,     0,     0,     0,
     2424       0,     0,     0,     0,     0,   415,   415,     0,     0,   296,
     2425       0,   380,     0,     0,     0,     0,     0,     0,   345,    46,
     2426     298,   299,   300,   301,   829,   365,     0,     0,     0,     0,
     2427       0,     0,  1053,     0,     0,   622,   383,   622,   622,     0,
     2428       0,     0,     0,     0,   622,     0,     0,     0,  1399,     0,
     2429    1400,     0,     0,     0,   868,   365,   516,     0,   518,   521,
     2430     365,     0,     0,  1409,     0,  1410,   524,   525,     0,   365,
     2431     365,   365,     0,     0,     0,     0,     0,     0,     0,     0,
     2432       0,   518,   518,  1417,     0,     0,     0,     0,   365,     0,
     2433       0,     0,     0,   415,   911,     0,     0,   415,   914,  1435,
     2434    1437,     0,     0,     0,   916,     0,     0,     0,     0,     0,
     2435       0,  1443,   322,     0,  1247,     0,     0,     0,     0,   518,
     2436       0,     0,   342,   365,   415,     0,   415,     0,  1140,  1141,
     2437     415,     0,     0,     0,     0,   383,  1466,     0,     0,     0,
     2438       0,   995,     0,     0,  1150,  1473,   769,     0,  1475,     0,
     2439    1477,  1479,  1481,     0,     0,   518,     0,     0,     0,     0,
     2440       0,     0,   365,   622,     0,     0,     0,  1166,     0,     0,
     2441       0,     0,     0,     0,     0,     0,     0,     0,  1181,     0,
     2442       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     2443       0,     0,  1512,     0,  1514,     0,     0,  1247,   342,   365,
     2444     383,     0,  1199,   415,   415,     0,     0,     0,     0,     0,
     2445       0,     0,  1526,     0,     0,     0,     0,   995,   995,     0,
     2446       8,     9,    10,    11,    12,    13,    14,    15,    16,    17,
     2447      18,    19,    20,    21,    22,    23,    24,    25,  1231,     0,
     2448      26,    27,    28,     0,     0,   415,     0,     0,     0,    31,
     2449       0,     0,     0,   365,     0,     0,     0,     0,     0,     0,
     2450     829,   365,     0,     0,   622,     0,   622,     0,     0,     0,
     2451       0,     0,     0,     0,     0,     0,   622,    34,     0,     0,
     2452       0,     0,     0,     0,   208,    39,   995,     0,     0,     0,
     2453       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     2454       0,     0,     0,     0,     0,   888,     0,     0,     0,     0,
     2455       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     2456    1284,  1285,     0,   283,   284,     0,   285,     0,    45,    46,
     2457       0,   518,   518,   518,   518,   518,   518,   518,   518,   518,
     2458     518,   518,   518,   518,   518,   518,   518,   518,   518,   829,
     2459       0,     0,   286,     0,     0,     0,     0,   415,   287,     0,
     2460       0,     0,   288,   415,     0,   289,   290,   291,   292,    41,
     2461      42,   415,   293,   294,     0,     0,     0,     0,     0,     0,
     2462     295,     0,     0,     0,   622,   622,     0,     0,     0,     0,
     2463       0,     0,     0,     0,     0,   515,     0,     0,     0,     0,
     2464       0,     0,   995,     0,    45,    46,   298,   299,   300,   301,
     2465       0,   365,     0,     0,     0,     0,     0,   415,     0,     0,
     2466       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     2467       0,     0,     0,     0,     0,     0,   415,  1159,     0,     0,
     2468       0,     0,     0,     0,     0,     0,     0,   365,     0,     0,
     2469       0,     0,     0,   415,  1171,     0,   622,   622,  1176,     0,
     2470       0,     0,     0,  1392,     0,   769,     0,     0,   365,   365,
     2471       0,     0,   518,     0,     0,     0,     0,     0,     0,     0,
     2472       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     2473       0,     0,     0,     0,   518,     0,     0,     0,     0,     2,
     2474     207,     4,     5,     6,     7,     8,     9,    10,    11,    12,
    24982475      13,    14,    15,    16,    17,    18,    19,    20,    21,    22,
    2499       23,    24,    25,     0,     0,    26,    27,    28,     0,     0,
    2500      287,    34,     0,    35,    31,    36,   288,     0,    38,    39,
    2501      289,     0,     0,   290,   291,   292,   293,    41,    42,     0,
    2502      294,   295,     0,     0,     0,     0,     0,     0,    43,     0,
    2503        0,     0,    34,     0,     0,     0,     0,   112,     0,    38,
    2504       39,     0,     0,   296,     0,   929,     0,     0,    41,    42,
    2505      780,     0,    46,    47,   298,   299,   300,   301,     2,   208,
    2506        4,     5,     6,     7,     8,     9,    10,    11,    12,    13,
    2507       14,    15,    16,    17,    18,    19,    20,    21,    22,    23,
    2508       24,    25,     0,     0,    26,    27,    28,     0,     0,     0,
    2509        0,   284,   285,    31,   286,     0,     0,     0,     8,     9,
    2510       10,    11,    12,    13,    14,    15,    16,    17,    18,    19,
    2511       20,    21,    22,    23,    24,    25,  -296,     0,     0,     0,
    2512      287,    34,     0,    35,     0,    36,   288,    31,    38,    39,
    2513      289,     0,     0,   290,   291,   292,   293,    41,    42,     0,
    2514      294,   295,     0,     0,     0,     0,     0,     0,    43,     0,
    2515        0,     0,     0,     0,     0,    34,     0,     0,     0,     0,
    2516        0,     0,     0,   296,     0,   344,  -296,     0,     0,     0,
    2517        0,     0,   345,    47,   298,   299,   300,   301,     2,   208,
    2518        4,     5,     6,     7,     8,     9,    10,    11,    12,    13,
    2519       14,    15,    16,    17,    18,    19,    20,    21,    22,    23,
    2520       24,    25,     0,     0,    26,    27,    28,     0,     0,     0,
    2521        0,   284,   285,    31,   286,     8,     9,    10,    11,    12,
    2522       13,    14,    15,    16,    17,    18,    19,    20,    21,    22,
    2523       23,    24,    25,     0,     0,    26,    27,    28,     0,     0,
    2524      287,    34,     0,    35,    31,    36,   288,     0,    38,    39,
    2525      289,     0,     0,   290,   291,   292,   293,    41,    42,     0,
    2526      294,   295,     0,     0,     0,     0,     0,     0,    43,     0,
    2527        0,     0,    34,     0,     0,     0,     0,     0,     0,    38,
    2528       39,     0,     0,   296,     0,   929,     0,     0,     0,     0,
    2529        0,     0,   345,    47,   298,   299,   300,   301,     2,   208,
    2530        4,     5,     6,     7,     8,     9,    10,    11,    12,    13,
    2531       14,    15,    16,    17,    18,    19,    20,    21,    22,    23,
    2532       24,    25,     0,     0,    26,    27,    28,     0,     0,     0,
    2533        0,   284,   285,    31,   286,     8,     9,    10,    11,    12,
    2534       13,    14,    15,    16,    17,    18,    19,    20,    21,    22,
    2535       23,    24,    25,     0,     0,    26,    27,    28,     0,     0,
    2536      287,    34,     0,    35,    31,    36,   288,     0,   209,    39,
    2537      289,     0,     0,   290,   291,   292,   293,    41,    42,     0,
    2538      294,   295,     0,     0,     0,     0,     0,     0,    43,     0,
    2539        0,     0,    34,     0,     0,     0,     0,     0,     0,   209,
    2540       39,     0,     0,   296,     0,  1018,     0,     0,     0,     0,
    2541        0,     0,  1019,    47,   298,   299,   300,   301,     2,   208,
    2542        4,     5,     6,     7,     8,     9,    10,    11,    12,    13,
    2543       14,    15,    16,    17,    18,    19,    20,    21,    22,    23,
    2544       24,    25,     0,     0,    26,    27,    28,     0,     0,     0,
    2545        0,   284,   285,    31,   286,     8,     9,    10,    11,    12,
    2546       13,    14,    15,    16,    17,    18,    19,    20,    21,    22,
    2547       23,    24,    25,     0,     0,     0,     0,     0,     0,     0,
    2548      287,    34,     0,    35,    31,    36,   288,     0,   209,    39,
    2549      289,     0,     0,   290,   291,   292,   293,    41,    42,     0,
    2550      294,   295,     0,     0,     0,     0,     0,     0,    43,     0,
    2551        0,     0,    34,     0,     0,     0,     0,     0,     0,     0,
    2552        0,     0,     0,   296,     0,   380,     0,     0,     0,     0,
    2553        0,     0,    46,    47,   298,   299,   300,   301,     1,     2,
    2554        3,     4,     5,     6,     7,     8,     9,    10,    11,    12,
    2555       13,    14,    15,    16,    17,    18,    19,    20,    21,    22,
    2556       23,    24,    25,     0,     0,    26,    27,    28,    29,     0,
    2557        0,    30,     0,     0,    31,    32,     0,     0,     0,     0,
     2476      23,    24,    25,     0,     0,    26,    27,    28,     0,   829,
     2477     415,  1239,   283,   284,    31,   285,     0,     0,     0,     0,
     2478       0,     0,     0,   622,     0,     0,     0,     0,     0,     0,
     2479       0,  1452,     0,   518,     0,     0,     0,     0,     0,     0,
     2480       0,   286,    34,     0,    35,     0,    36,   287,     0,    38,
     2481      39,   288,     0,     0,   289,   290,   291,   292,    41,    42,
     2482       0,   293,   294,     0,     0,   518,     0,     0,   365,   295,
     2483       0,     0,   283,   284,     0,   285,     0,     0,     0,     0,
     2484       0,     0,     0,     0,   296,     0,   930,     0,     0,     0,
     2485       0,   781,     0,    45,    46,   298,   299,   300,   301,     0,
     2486       0,   286,     0,     0,     0,     0,     0,   287,     0,     0,
     2487       0,   288,     0,  1518,   289,   290,   291,   292,    41,    42,
     2488       0,   293,   294,     0,     0,     0,     0,     0,   342,   295,
    25582489       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2559        0,     0,     0,     0,     0,     0,     0,     0,     0,    33,
    2560        0,     0,    34,     0,    35,     0,    36,    37,     0,    38,
    2561       39,    40,     0,     0,     0,     0,     0,     0,    41,    42,
    2562        0,     0,     0,     0,     0,     0,     0,     0,     0,    43,
    2563        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2564        0,     0,     0,     0,    44,     0,    45,     0,     0,     0,
    2565     -524,     0,     0,    46,    47,     1,     2,     3,     4,     5,
     2490       0,     0,     0,     0,   296,     0,     0,     0,     0,   365,
     2491       0,     0,     0,    45,    46,   298,   299,   300,   301,     0,
     2492       0,     0,     0,     0,     0,   322,     0,     0,     0,     0,
     2493       0,     0,     0,     1,     2,   207,     4,     5,     6,     7,
     2494       8,     9,    10,    11,    12,    13,    14,    15,    16,    17,
     2495      18,    19,    20,    21,    22,    23,    24,    25,   365,   365,
     2496      26,    27,    28,    29,     0,     0,    30,   283,   284,    31,
     2497    1062,  1063,     0,  1064,     0,     0,  1065,  1066,  1067,  1068,
     2498    1069,  1070,  1071,  1072,     0,     0,     0,  1073,     0,     0,
     2499     518,  1074,  1075,     0,    33,     0,   286,    34,     0,    35,
     2500       0,    36,   649,     0,    38,    39,   288,     0,     0,   289,
     2501     290,   291,   292,    41,    42,     0,   293,   294,     0,     0,
     2502       0,   518,     0,     0,   295,     0,     0,     0,     0,     0,
     2503       0,     0,     0,     0,   518,     0,     0,     0,     0,   296,
     2504       0,  1076,     0,     0,   172,     0,     0,     0,    45,    46,
     2505     298,   299,   300,   301,     0,     0,     0,     0,  1077,     0,
     2506       0,     0,  -130,     0,     0,     0,     0,     0,     0,     0,
     2507       0,     0,     0,     0,     0,   518,     0,     0,     0,     0,
     2508       0,     0,  -520,   365,     0,     1,     2,     3,     4,     5,
    25662509       6,     7,     8,     9,    10,    11,    12,    13,    14,    15,
    25672510      16,    17,    18,    19,    20,    21,    22,    23,    24,    25,
    25682511       0,     0,    26,    27,    28,    29,     0,     0,    30,     0,
    25692512       0,    31,    32,     0,     0,     0,     0,     0,     0,     0,
     2513       0,     0,   283,   284,     0,   285,     0,     0,     0,     0,
     2514       0,     0,     0,     0,     0,     0,    33,     0,   518,    34,
     2515       0,    35,     0,    36,    37,     0,    38,    39,    40,     0,
     2516       0,   286,     0,     0,     0,    41,    42,   287,     0,     0,
     2517       0,   288,     0,   415,   289,   290,   291,   292,    41,    42,
     2518       0,   293,   294,     0,     0,     0,     0,     0,     0,   295,
     2519       0,    43,     0,    44,     0,     0,     0,     0,   415,   415,
     2520      45,    46,     0,     0,   520,     0,   518,   518,     0,     0,
     2521       0,     0,     0,    45,    46,   298,   299,   300,   301,     0,
     2522       0,     0,     0,   415,     1,     2,   207,     4,     5,     6,
     2523       7,     8,     9,    10,    11,    12,    13,    14,    15,    16,
     2524      17,    18,    19,    20,    21,    22,    23,    24,    25,     0,
     2525       0,    26,    27,    28,    29,     0,     0,    30,   283,   284,
     2526      31,   285,     8,     9,    10,    11,    12,    13,    14,    15,
     2527      16,    17,    18,    19,    20,    21,    22,    23,    24,    25,
     2528       0,     0,    26,    27,    28,     0,     0,   286,    34,     0,
     2529      35,    31,    36,   287,     0,    38,    39,   288,     0,     0,
     2530     289,   290,   291,   292,    41,    42,     0,   293,   294,     0,
     2531       0,     0,     0,     0,     0,   295,     0,     0,     0,    34,
     2532       0,     0,     0,     0,   111,     0,    38,    39,     0,     0,
     2533     296,     0,  1076,     0,     0,    41,    42,     0,     0,    45,
     2534      46,   298,   299,   300,   301,     0,     0,     0,     0,     0,
     2535       0,     0,     0,  -130,     0,     0,     0,     0,     0,     1,
     2536       2,   207,     4,     5,     6,     7,     8,     9,    10,    11,
     2537      12,    13,    14,    15,    16,    17,    18,    19,    20,    21,
     2538      22,    23,    24,    25,     0,     0,    26,    27,    28,    29,
     2539       0,     0,    30,   283,   284,    31,   285,     0,     0,     0,
    25702540       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2571        0,     0,     0,     0,     0,     0,    33,     0,     0,    34,
    2572        0,    35,     0,    36,    37,     0,    38,    39,    40,     0,
    2573        0,     0,     0,     0,     0,    41,    42,     0,     0,     0,
    2574        0,     0,     0,     0,     0,     0,    43,     0,     0,     0,
    2575        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2576        0,    44,     0,    45,     0,     0,     0,     0,     0,     0,
    2577       46,    47,   207,     2,   208,     4,     5,     6,     7,     8,
     2541       0,     0,     0,     0,     0,     0,     0,   518,     0,     0,
     2542       0,     0,   286,    34,     0,    35,     0,    36,   287,     0,
     2543      38,    39,   288,     0,   518,   289,   290,   291,   292,    41,
     2544      42,     0,   293,   294,     0,     0,     0,     0,     0,     0,
     2545     295,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     2546       0,     0,     0,     0,     0,   296,     0,    44,     0,     0,
     2547       0,     0,     0,     0,    45,    46,   298,   299,   300,   301,
     2548       0,     0,     0,     2,   207,     4,     5,     6,     7,     8,
     2549       9,    10,    11,    12,    13,    14,    15,    16,    17,    18,
     2550      19,    20,    21,    22,    23,    24,    25,   518,   518,    26,
     2551      27,    28,     0,     0,     0,     0,   283,   284,    31,   285,
     2552       8,     9,    10,    11,    12,    13,    14,    15,    16,    17,
     2553      18,    19,    20,    21,    22,    23,    24,    25,     0,     0,
     2554      26,    27,    28,     0,     0,   286,    34,     0,    35,    31,
     2555      36,   287,     0,    38,    39,   288,     0,     0,   289,   290,
     2556     291,   292,    41,    42,     0,   293,   294,     0,     0,     0,
     2557       0,     0,     0,   295,     0,     0,     0,    34,     0,     0,
     2558       0,     0,     0,     0,    38,    39,     0,     0,   296,     0,
     2559     344,     0,     0,     0,     0,     0,     0,   345,    46,   298,
     2560     299,   300,   301,     2,   207,     4,     5,     6,     7,     8,
    25782561       9,    10,    11,    12,    13,    14,    15,    16,    17,    18,
    25792562      19,    20,    21,    22,    23,    24,    25,     0,     0,    26,
    2580       27,    28,     0,     0,     0,     0,     0,     0,    31,     0,
     2563      27,    28,     0,     0,     0,     0,   283,   284,    31,   285,
    25812564       8,     9,    10,    11,    12,    13,    14,    15,    16,    17,
    25822565      18,    19,    20,    21,    22,    23,    24,    25,     0,     0,
    2583       26,    27,    28,   494,   495,   496,    34,     0,    35,    31,
    2584       36,    37,     0,   209,    39,    40,     0,     0,     0,     0,
    2585        0,     0,    41,    42,     0,     0,     0,     0,     0,     0,
    2586        0,     0,     0,    43,     0,     0,     0,    34,     0,     0,
    2587        0,     0,     0,     0,    38,    39,     0,     0,    44,     0,
    2588      210,     0,     0,     0,     0,     0,     0,    46,    47,     1,
    2589        2,   208,     4,     5,     6,     7,     8,     9,    10,    11,
    2590       12,    13,    14,    15,    16,    17,    18,    19,    20,    21,
    2591       22,    23,    24,    25,     0,     0,    26,    27,    28,    29,
    2592        0,     0,    30,     0,     0,    31,     0,     0,     0,     0,
     2566      26,    27,    28,     0,     0,   286,    34,     0,    35,    31,
     2567      36,   287,     0,    38,    39,   288,     0,     0,   289,   290,
     2568     291,   292,    41,    42,     0,   293,   294,     0,     0,     0,
     2569       0,     0,     0,   295,     0,     0,     0,    34,     0,     0,
     2570       0,     0,     0,     0,   208,    39,     0,     0,   296,     0,
     2571     930,     0,     0,     0,     0,     0,     0,   345,    46,   298,
     2572     299,   300,   301,     2,   207,     4,     5,     6,     7,     8,
     2573       9,    10,    11,    12,    13,    14,    15,    16,    17,    18,
     2574      19,    20,    21,    22,    23,    24,    25,     0,     0,    26,
     2575      27,    28,     0,     0,     0,     0,   283,   284,    31,   285,
    25932576       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    25942577       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2595        0,     0,     0,    34,     0,    35,     0,    36,     0,     0,
    2596       38,    39,     0,     0,     0,     0,     0,     0,     0,     0,
     2578       0,     0,     0,     0,     0,   286,    34,     0,    35,     0,
     2579      36,   287,     0,   208,    39,   288,     0,     0,   289,   290,
     2580     291,   292,    41,    42,     0,   293,   294,     0,     0,     0,
     2581       0,     0,     0,   295,     0,     0,     0,     0,     0,     0,
     2582       0,     0,     0,     0,     0,     0,     0,     0,   296,     0,
     2583    1019,     0,     0,     0,     0,     0,     0,  1020,    46,   298,
     2584     299,   300,   301,     2,   207,     4,     5,     6,     7,     8,
     2585       9,    10,    11,    12,    13,    14,    15,    16,    17,    18,
     2586      19,    20,    21,    22,    23,    24,    25,     0,     0,    26,
     2587      27,    28,     0,     0,     0,     0,   283,   284,    31,   285,
    25972588       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2598       43,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2599        0,     0,     0,     0,     0,     0,     0,    45,     0,     0,
    2600        0,     0,     0,     0,    46,    47,     2,   208,     4,     5,
     2589       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     2590       0,     0,     0,     0,     0,   286,    34,     0,    35,     0,
     2591      36,   287,     0,   208,    39,   288,     0,     0,   289,   290,
     2592     291,   292,    41,    42,     0,   293,   294,     0,     0,     0,
     2593       0,     0,     0,   295,     0,     0,     0,     0,     0,     0,
     2594       0,     0,     0,     0,     0,     0,     0,     0,   296,     0,
     2595     380,     0,     0,     0,     0,     0,     0,    45,    46,   298,
     2596     299,   300,   301,     1,     2,     3,     4,     5,     6,     7,
     2597       8,     9,    10,    11,    12,    13,    14,    15,    16,    17,
     2598      18,    19,    20,    21,    22,    23,    24,    25,     0,     0,
     2599      26,    27,    28,    29,     0,     0,    30,     0,     0,    31,
     2600      32,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     2601       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     2602       0,     0,     0,     0,    33,     0,     0,    34,     0,    35,
     2603       0,    36,    37,     0,    38,    39,    40,     0,     0,     0,
     2604       0,     0,     0,    41,    42,     0,     0,     0,     0,     0,
     2605       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     2606       0,     0,     0,     0,     0,     0,     0,     0,     0,    43,
     2607       0,    44,     0,     0,     0,  -524,     0,     0,    45,    46,
     2608       1,     2,     3,     4,     5,     6,     7,     8,     9,    10,
     2609      11,    12,    13,    14,    15,    16,    17,    18,    19,    20,
     2610      21,    22,    23,    24,    25,     0,     0,    26,    27,    28,
     2611      29,     0,     0,    30,     0,     0,    31,    32,     0,     0,
     2612       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     2613       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     2614       0,    33,     0,     0,    34,     0,    35,     0,    36,    37,
     2615       0,    38,    39,    40,     0,     0,     0,     0,     0,     0,
     2616      41,    42,     0,     0,     0,     0,     0,     0,     0,     0,
     2617       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     2618       0,     0,     0,     0,     0,     0,    43,     0,    44,     0,
     2619       0,     0,     0,     0,     0,    45,    46,     1,     2,   207,
     2620       4,     5,     6,     7,     8,     9,    10,    11,    12,    13,
     2621      14,    15,    16,    17,    18,    19,    20,    21,    22,    23,
     2622      24,    25,  -295,     0,    26,    27,    28,    29,     0,     0,
     2623      30,     0,     0,    31,     0,     0,     0,     0,     0,     0,
     2624       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     2625       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     2626       0,    34,     0,    35,     0,    36,     0,     0,    38,    39,
     2627       0,     0,  -295,     1,     2,   207,     4,     5,     6,     7,
     2628       8,     9,    10,    11,    12,    13,    14,    15,    16,    17,
     2629      18,    19,    20,    21,    22,    23,    24,    25,     0,     0,
     2630      26,    27,    28,    29,     0,    44,    30,     0,     0,    31,
     2631       0,     0,    45,    46,     0,     0,     0,     0,     0,     0,
     2632       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     2633       0,     0,     0,     0,     0,     0,     0,    34,     0,    35,
     2634       0,    36,     0,     0,    38,    39,   206,     2,   207,     4,
     2635       5,     6,     7,     8,     9,    10,    11,    12,    13,    14,
     2636      15,    16,    17,    18,    19,    20,    21,    22,    23,    24,
     2637      25,     0,     0,    26,    27,    28,     0,     0,     0,     0,
     2638       0,    44,    31,     0,     0,     0,     0,     0,    45,    46,
     2639       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     2640       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     2641      34,     0,    35,     0,    36,     0,     0,   208,    39,     0,
     2642       2,   207,     4,     5,     6,     7,     8,     9,    10,    11,
     2643      12,    13,    14,    15,    16,    17,    18,    19,    20,    21,
     2644      22,    23,    24,    25,     0,     0,    26,    27,    28,     0,
     2645       0,     0,     0,     0,   209,    31,     0,     0,     0,     0,
     2646       0,    45,    46,     0,     0,     0,     0,     0,     0,     0,
     2647       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     2648       0,     0,     0,    34,     0,    35,     0,    36,    37,     0,
     2649     208,    39,    40,     0,     0,     0,     0,     0,     0,    41,
     2650      42,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     2651       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     2652       0,     0,     0,     0,     0,    43,     0,   209,     0,     0,
     2653       0,     0,     0,     0,    45,    46,     2,   207,     4,     5,
    26012654       6,     7,     8,     9,    10,    11,    12,    13,    14,    15,
    26022655      16,    17,    18,    19,    20,    21,    22,    23,    24,    25,
    26032656       0,     0,    26,    27,    28,     0,     0,     0,     0,     0,
    2604        0,    31,     0,     0,     0,     0,     0,     0,     0,     0,
     2657       0,    31,     0,     0,     0,     0,     8,     9,    10,    11,
     2658      12,    13,    14,    15,    16,    17,    18,    19,    20,    21,
     2659      22,    23,    24,    25,     0,     0,    26,    27,    28,    34,
     2660       0,    35,     0,    36,     0,    31,    38,    39,     0,     2,
     2661     207,     4,     5,     6,     7,     8,     9,    10,    11,    12,
     2662      13,    14,    15,    16,    17,    18,    19,    20,    21,    22,
     2663      23,    24,    25,    34,     0,    26,    27,    28,     0,     0,
     2664      38,    39,  -403,   687,    31,     0,     0,     0,     0,     0,
     2665      45,    46,     0,     0,     0,     0,     0,     0,     0,     0,
    26052666       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2606        0,     0,     0,     0,     0,     0,     0,     0,     0,    34,
    2607        0,    35,     0,    36,    37,     0,   209,    39,    40,     0,
    2608        0,     0,     0,     0,     0,    41,    42,     0,     0,     0,
    2609        0,     0,     0,     0,     0,     0,    43,     0,     0,     0,
     2667       0,     0,    34,     0,    35,   643,    36,   339,     0,    38,
     2668      39,     0,     0,     0,    45,    46,     0,     0,     0,     0,
    26102669       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2611        0,    44,     0,   210,     0,     0,     0,     0,     0,     0,
    2612       46,    47,     2,   208,     4,     5,     6,     7,     8,     9,
     2670       0,  1371,     0,     0,     0,     0,     0,     0,     0,     0,
     2671       0,     0,     0,     0,     0,     0,   687,     0,     0,     0,
     2672       0,     0,     0,    45,    46,     2,   207,     4,     5,     6,
     2673       7,     8,     9,    10,    11,    12,    13,    14,    15,    16,
     2674      17,    18,    19,    20,    21,    22,    23,    24,    25,     0,
     2675       0,    26,    27,    28,     0,     0,     0,     0,     0,     0,
     2676      31,     0,     0,     0,     8,     9,    10,    11,    12,    13,
     2677      14,    15,    16,    17,    18,    19,    20,    21,    22,    23,
     2678      24,    25,     0,     0,    26,    27,    28,     0,    34,     0,
     2679      35,     0,    36,    31,     0,    38,    39,     0,     0,     0,
     2680       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     2681       0,     0,     0,     0,     0,     0,     0,  1373,     0,     0,
     2682       0,    34,     0,     0,     0,     0,    37,     0,   337,   338,
     2683      40,     0,   687,     0,     0,     0,     0,    41,    42,    45,
     2684      46,     2,   207,     4,     5,     6,     7,     8,     9,    10,
     2685      11,    12,    13,    14,    15,    16,    17,    18,    19,    20,
     2686      21,    22,    23,    24,    25,   339,     0,    26,    27,    28,
     2687       0,     0,    45,    46,     0,     0,    31,     0,     0,     0,
     2688       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     2689       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     2690       0,     0,     0,     0,    34,     0,    35,     0,    36,     0,
     2691       0,   208,    39,     0,     2,   207,     4,     5,     6,     7,
     2692       8,     9,    10,    11,    12,    13,    14,    15,    16,    17,
     2693      18,    19,    20,    21,    22,    23,    24,    25,     0,     0,
     2694      26,    27,    28,     0,     0,     0,     0,     0,   271,    31,
     2695       0,     0,     0,     0,     0,    45,    46,     0,     0,     0,
     2696       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     2697       0,     0,     0,     0,     0,     0,     0,    34,     0,    35,
     2698       0,    36,     0,     0,    38,    39,     0,     2,   207,     4,
     2699       5,     6,     7,     8,     9,    10,    11,    12,    13,    14,
     2700      15,    16,    17,    18,    19,    20,    21,    22,    23,    24,
     2701      25,     0,     0,    26,    27,    28,     0,     0,     0,     0,
     2702       0,   687,    31,     0,     0,     0,     0,     0,    45,    46,
     2703       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     2704       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     2705      34,     0,    35,     0,    36,     0,     0,    38,    39,     0,
     2706       2,   207,     4,     5,     6,     7,     8,     9,    10,    11,
     2707      12,    13,    14,    15,    16,    17,    18,    19,    20,    21,
     2708      22,    23,    24,    25,     0,     0,    26,    27,    28,     0,
     2709       0,     0,     0,     0,   601,    31,     0,     0,     0,     0,
     2710       0,    45,    46,     0,     0,     0,     0,     0,     0,     0,
     2711       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     2712       0,     0,     0,    34,     0,    35,     0,    36,     0,     0,
     2713     208,    39,     8,     9,    10,    11,    12,    13,    14,    15,
     2714      16,    17,    18,    19,    20,    21,    22,    23,    24,    25,
     2715       0,     0,    26,    27,    28,     0,     0,     0,     0,   283,
     2716     284,    31,   285,     0,     0,     0,     0,   209,     0,     0,
     2717       0,     0,     0,     0,    45,    46,     0,     0,     0,     0,
     2718       0,     0,     0,     0,     0,     0,     0,     0,   286,    34,
     2719       0,     0,     0,     0,   287,     0,    38,    39,   288,     0,
     2720       0,   289,   290,   291,   292,    41,    42,     0,   293,   294,
     2721       0,     0,     0,     0,     0,     0,   295,     0,     0,     0,
     2722       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     2723       0,   296,     0,   527,     0,     0,   172,     0,     0,     0,
     2724      45,    46,   298,   299,   300,   301,     8,     9,    10,    11,
     2725      12,    13,    14,    15,    16,    17,    18,    19,    20,    21,
     2726      22,    23,    24,    25,     0,     0,    26,    27,    28,     0,
     2727       0,     0,     0,   283,   284,    31,   285,     8,     9,    10,
     2728      11,    12,    13,    14,    15,    16,    17,    18,    19,    20,
     2729      21,    22,    23,    24,    25,     0,     0,    26,    27,    28,
     2730       0,     0,   286,    34,     0,     0,    31,     0,   649,     0,
     2731      38,    39,   288,     0,     0,   289,   290,   291,   292,    41,
     2732      42,     0,   293,   294,     0,     0,     0,     0,     0,     0,
     2733     295,     0,     0,     0,    34,     0,     0,     0,     0,   111,
     2734       0,    38,    39,     0,     0,   296,   -35,   766,     0,     0,
     2735      41,    42,     0,     0,    45,    46,   298,   299,   300,   301,
     2736       8,     9,    10,    11,    12,    13,    14,    15,    16,    17,
     2737      18,    19,    20,    21,    22,    23,    24,    25,    44,     0,
     2738      26,    27,    28,     0,     0,    45,    46,   283,   284,    31,
     2739     285,     8,     9,    10,    11,    12,    13,    14,    15,    16,
     2740      17,    18,    19,    20,    21,    22,    23,    24,    25,     0,
     2741       0,    26,    27,    28,     0,     0,   286,    34,     0,     0,
     2742      31,   455,   287,     0,    38,    39,   288,     0,     0,   289,
     2743     290,   291,   292,    41,    42,     0,   293,   294,     0,     0,
     2744       0,     0,     0,     0,   295,     0,     0,     0,    34,     0,
     2745       0,     0,     0,     0,     0,    38,    39,     0,     0,   296,
     2746       0,   297,     0,     0,     0,     0,     0,     0,    45,    46,
     2747     298,   299,   300,   301,     8,     9,    10,    11,    12,    13,
     2748      14,    15,    16,    17,    18,    19,    20,    21,    22,    23,
     2749      24,    25,   456,     0,    26,    27,    28,     0,     0,    45,
     2750      46,   283,   284,    31,   285,     8,     9,    10,    11,    12,
     2751      13,    14,    15,    16,    17,    18,    19,    20,    21,    22,
     2752      23,    24,    25,     0,     0,    26,    27,    28,     0,     0,
     2753     286,    34,     0,     0,    31,     0,   287,     0,    38,    39,
     2754     288,     0,     0,   289,   290,   291,   292,    41,    42,     0,
     2755     293,   294,     0,     0,     0,     0,     0,     0,   295,     0,
     2756       0,     0,    34,     0,     0,     0,     0,     0,     0,    38,
     2757      39,     0,     0,   296,     0,   158,     0,     0,     0,     0,
     2758       0,     0,    45,    46,   298,   299,   300,   301,     8,     9,
     2759      10,    11,    12,    13,    14,    15,    16,    17,    18,    19,
     2760      20,    21,    22,    23,    24,    25,   258,     0,    26,    27,
     2761      28,     0,     0,    45,    46,   283,   284,    31,   285,     8,
     2762       9,    10,    11,    12,    13,    14,    15,    16,    17,    18,
     2763      19,    20,    21,    22,    23,    24,    25,     0,     0,    26,
     2764      27,    28,     0,     0,   286,    34,     0,     0,    31,     0,
     2765     287,     0,    38,    39,   288,     0,     0,   289,   290,   291,
     2766     292,    41,    42,     0,   293,   294,     0,     0,     0,     0,
     2767       0,     0,   295,     0,     0,     0,    34,     0,     0,     0,
     2768       0,     0,     0,    38,    39,     0,     0,   296,     0,   601,
     2769       0,     0,     0,     0,     0,     0,    45,    46,   298,   299,
     2770     300,   301,     8,     9,    10,    11,    12,    13,    14,    15,
     2771      16,    17,    18,    19,    20,    21,    22,    23,    24,    25,
     2772     158,     0,    26,    27,    28,     0,     0,    45,    46,   283,
     2773     284,    31,   285,     0,     8,     9,    10,    11,    12,    13,
     2774      14,    15,    16,    17,    18,    19,    20,    21,    22,    23,
     2775      24,    25,  -295,     0,    26,    27,    28,     0,   286,    34,
     2776       0,     0,     0,    31,   287,     0,    38,    39,   288,     0,
     2777       0,   289,   290,   291,   292,    41,    42,     0,   293,   294,
     2778       0,     0,     0,     0,     0,     0,   295,     0,     0,     0,
     2779       0,    34,     0,     0,     0,     0,    37,     0,   337,   338,
     2780      40,   296,  -295,   380,     0,     0,     0,    41,    42,     0,
     2781      45,    46,   298,   299,   300,   301,     8,     9,    10,    11,
     2782      12,    13,    14,    15,    16,    17,    18,    19,    20,    21,
     2783      22,    23,    24,    25,     0,   339,    26,    27,    28,     0,
     2784       0,     0,    45,    46,     0,    31,     8,     9,    10,    11,
     2785      12,    13,    14,    15,    16,    17,    18,    19,    20,    21,
     2786      22,    23,    24,    25,     0,     0,    26,    27,    28,     0,
     2787       0,     0,     0,    34,     0,    31,     0,     0,    37,     0,
     2788      38,    39,    40,     0,     0,     0,     0,     0,     0,    41,
     2789      42,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     2790       0,     0,     0,    34,     0,     0,     0,     0,    37,     0,
     2791     208,    39,    40,     0,     0,    43,     0,    44,     0,    41,
     2792      42,     0,     0,     0,    45,    46,     0,     0,     0,     0,
     2793       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     2794       0,     0,     0,     0,     0,    43,     0,   271,     0,     0,
     2795       0,     0,     0,     0,    45,    46,     8,     9,    10,    11,
     2796      12,    13,    14,    15,    16,    17,    18,    19,    20,    21,
     2797      22,    23,    24,    25,     0,     0,    26,    27,    28,     0,
     2798       0,     0,     0,     0,     0,    31,     8,     9,    10,    11,
     2799      12,    13,    14,    15,    16,    17,    18,    19,    20,    21,
     2800      22,    23,    24,    25,  -295,     0,    26,    27,    28,     0,
     2801       0,     0,     0,    34,     0,    31,     0,     0,    37,     0,
     2802     337,   338,    40,     0,     0,     0,     0,     0,     0,    41,
     2803      42,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     2804       0,     0,     0,    34,     0,     0,     0,     0,     0,     0,
     2805      38,    39,     0,     0,  -295,   643,     0,   339,     0,     0,
     2806       0,     0,     0,     0,    45,    46,     0,     0,     8,     9,
     2807      10,    11,    12,    13,    14,    15,    16,    17,    18,    19,
     2808      20,    21,    22,    23,    24,    25,     0,   339,    26,    27,
     2809      28,     0,     0,     0,    45,    46,     0,    31,   455,     8,
     2810       9,    10,    11,    12,    13,    14,    15,    16,    17,    18,
     2811      19,    20,    21,    22,    23,    24,    25,     0,     0,    26,
     2812      27,    28,     0,     0,     0,    34,     0,     0,    31,   455,
     2813       0,     0,    38,    39,     0,     0,     0,     8,     9,    10,
     2814      11,    12,    13,    14,    15,    16,    17,    18,    19,    20,
     2815      21,    22,    23,    24,    25,     0,    34,    26,    27,    28,
     2816       0,     0,     0,    38,    39,     0,    31,     0,     0,   456,
     2817       0,     0,     0,  1109,     0,     0,    45,    46,     0,     0,
     2818       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     2819       0,     0,     0,     0,    34,     0,     0,     0,     0,     0,
     2820     456,   208,    39,     0,  1236,     0,     0,    45,    46,     0,
     2821       8,     9,    10,    11,    12,    13,    14,    15,    16,    17,
     2822      18,    19,    20,    21,    22,    23,    24,    25,     0,     0,
     2823      26,    27,    28,     0,     0,     0,     0,     0,   271,    31,
     2824       0,     0,     0,     0,     0,    45,    46,     0,     8,     9,
     2825      10,    11,    12,    13,    14,    15,    16,    17,    18,    19,
     2826      20,    21,    22,    23,    24,    25,     0,    34,    26,    27,
     2827      28,     0,     0,     0,    38,    39,     0,    31,     8,     9,
    26132828      10,    11,    12,    13,    14,    15,    16,    17,    18,    19,
    26142829      20,    21,    22,    23,    24,    25,     0,     0,    26,    27,
    2615       28,     0,     0,     0,     0,     0,     0,    31,     0,     0,
     2830      28,     0,     0,     0,     0,    34,     0,    31,     0,     0,
     2831       0,   339,    38,    39,     0,     0,     0,     0,    45,    46,
     2832       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     2833       0,     0,     0,     0,     0,    34,     0,     0,     0,     0,
     2834       0,     0,    38,    39,     0,     0,     0,     0,     0,   456,
     2835       0,     0,     0,     0,     0,     0,    45,    46,     0,     0,
     2836       8,     9,    10,    11,    12,    13,    14,    15,    16,    17,
     2837      18,    19,    20,    21,    22,    23,    24,    25,     0,   601,
     2838      26,    27,    28,     0,     0,     0,    45,    46,     0,    31,
     2839       0,     0,     2,   207,     4,     5,     6,     7,     8,     9,
     2840      10,    11,    12,    13,    14,    15,    16,    17,    18,    19,
     2841      20,    21,    22,    23,    24,    25,     0,    34,    26,    27,
     2842      28,     0,     0,     0,    38,    39,     0,    31,     0,     0,
    26162843       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    26172844       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    26182845       0,     0,     0,     0,     0,    34,     0,    35,     0,    36,
    2619        0,     0,    38,    39,     0,     0,     0,     0,     0,     0,
     2846       0,    44,    38,    39,     0,     0,     0,     0,    45,    46,
     2847     283,   284,     0,   285,  1063,     0,  1064,     0,     0,  1065,
     2848    1066,  1067,  1068,  1069,  1070,  1071,  1072,     0,     0,  1551,
     2849    1073,     0,     0,     0,  1074,  1075,     0,    33,  -416,   286,
     2850       0,     0,     0,     0,     0,   649,     0,     0,     0,   288,
     2851       0,     0,   289,   290,   291,   292,    41,    42,     0,   293,
     2852     294,     0,     0,     0,     0,     0,     0,   295,     0,     0,
    26202853       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2621        0,     0,    43,     0,     0,     0,     0,     0,     0,     0,
    2622        0,     0,     0,     0,     0,     0,     0,     0,  -403,   686,
    2623        0,     0,     0,     0,     0,     0,    46,    47,     2,   208,
    2624        4,     5,     6,     7,     8,     9,    10,    11,    12,    13,
    2625       14,    15,    16,    17,    18,    19,    20,    21,    22,    23,
    2626       24,    25,     0,     0,    26,    27,    28,     0,     0,     0,
    2627        0,     0,     0,    31,     0,     0,     0,     0,     0,     0,
     2854       0,     0,   296,     0,   380,     0,     0,   172,     0,     0,
     2855       0,    45,    46,   298,   299,   300,   301,     0,     0,     0,
     2856       0,  1077,     0,   283,   284,  -130,   285,  1063,     0,  1064,
     2857       0,     0,  1065,  1066,  1067,  1068,  1069,  1070,  1071,  1072,
     2858       0,     0,     0,  1073,     0,     0,     0,  1074,  1075,     0,
     2859      33,     0,   286,     0,     0,     0,     0,     0,   649,     0,
     2860       0,     0,   288,     0,     0,   289,   290,   291,   292,    41,
     2861      42,     0,   293,   294,     0,     0,     0,     0,     0,     0,
     2862     295,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     2863       0,     0,     0,     0,     0,   296,     0,   380,     0,     0,
     2864     172,     0,     0,     0,    45,    46,   298,   299,   300,   301,
     2865       0,     0,     0,     0,  1077,     0,     0,     0,  -130,     2,
     2866     207,     4,     5,     6,     7,     8,     9,    10,    11,    12,
     2867      13,    14,    15,    16,    17,    18,    19,    20,    21,    22,
     2868      23,    24,    25,     0,     0,    26,    27,    28,     0,     0,
     2869       0,     0,     0,     0,    31,     0,   283,   284,     0,   285,
     2870    1063,     0,  1064,  1421,  1422,  1065,  1066,  1067,  1068,  1069,
     2871    1070,  1071,  1072,     0,     0,  1551,  1073,     0,     0,     0,
     2872    1074,  1075,    34,    33,    35,   286,    36,     0,     0,    38,
     2873      39,   649,     0,     0,     0,   288,     0,     0,   289,   290,
     2874     291,   292,    41,    42,     0,   293,   294,     0,     0,     0,
     2875       0,  1330,     0,   295,     0,     0,     0,     0,     0,     0,
     2876       0,     0,     0,     0,     0,     0,     0,     0,   296,     0,
     2877     380,     0,     0,   172,     0,     0,     0,    45,    46,   298,
     2878     299,   300,   301,     0,     0,   283,   284,  1077,   285,  1063,
     2879       0,  1064,  1421,  1422,  1065,  1066,  1067,  1068,  1069,  1070,
     2880    1071,  1072,     0,     0,     0,  1073,     0,     0,     0,  1074,
     2881    1075,     0,    33,     0,   286,     0,     0,     0,     0,     0,
     2882     649,     0,     0,     0,   288,     0,     0,   289,   290,   291,
     2883     292,    41,    42,     0,   293,   294,     0,     0,     0,     0,
     2884       0,     0,   295,     0,     0,     0,     0,     0,     0,     0,
     2885       0,     0,     0,     0,     0,     0,     0,   296,     0,   380,
     2886       0,     0,   172,     0,     0,     0,    45,    46,   298,   299,
     2887     300,   301,     0,     0,   283,   284,  1077,   285,  1063,     0,
     2888    1064,     0,     0,  1065,  1066,  1067,  1068,  1069,  1070,  1071,
     2889    1072,     0,     0,     0,  1073,     0,     0,     0,  1074,  1075,
     2890       0,    33,     0,   286,     0,     0,     0,     0,     0,   649,
     2891       0,     0,     0,   288,     0,     0,   289,   290,   291,   292,
     2892      41,    42,     0,   293,   294,     0,     0,     0,     0,     0,
     2893       0,   295,   283,   284,     0,   285,     0,     0,     0,     0,
     2894       0,     0,     0,     0,     0,     0,   296,     0,   380,     0,
     2895       0,   172,     0,     0,     0,    45,    46,   298,   299,   300,
     2896     301,   286,     0,     0,     0,  1077,     0,   287,     0,     0,
     2897       0,   288,     0,     0,   289,   290,   291,   292,    41,    42,
     2898       0,   293,   294,     0,     0,     0,     0,     0,     0,   295,
     2899       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     2900       0,     0,     0,     0,   523,     0,     0,     0,     0,     0,
     2901       0,     0,     0,    45,    46,   298,   299,   300,   301,     2,
     2902     207,     4,     5,     6,     7,     8,     9,    10,    11,    12,
     2903      13,    14,    15,    16,    17,    18,    19,    20,    21,    22,
     2904      23,    24,    25,     0,     0,     0,     0,     0,     0,     0,
     2905       0,     0,     0,     0,    31,     0,     0,     0,     0,     0,
    26282906       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    26292907       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2630        0,    34,     0,    35,     0,    36,     0,     0,    38,    39,
     2908       0,     0,    34,     0,    35,     0,    36,    37,     0,   175,
     2909     176,    40,     0,     0,     0,     0,     0,     0,    41,    42,
     2910     206,     2,   207,     4,     5,     6,     7,     8,     9,    10,
     2911      11,    12,    13,    14,    15,    16,    17,    18,    19,    20,
     2912      21,    22,    23,    24,    25,     0,     0,    26,    27,    28,
     2913       0,     0,     0,     0,     0,     0,    31,     0,     0,     0,
    26312914       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2632        0,     0,     0,     0,     0,     0,     0,     0,    43,     0,
    2633     1370,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2634        0,     0,     0,     0,     0,   686,     0,     0,     0,     0,
    2635        0,     0,    46,    47,     2,   208,     4,     5,     6,     7,
     2915       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     2916       0,     0,     0,     0,    34,     0,    35,     0,    36,     0,
     2917       0,   208,    39,   476,     2,   207,     4,     5,     6,     7,
    26362918       8,     9,    10,    11,    12,    13,    14,    15,    16,    17,
    26372919      18,    19,    20,    21,    22,    23,    24,    25,     0,     0,
     
    26402922       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    26412923       0,     0,     0,     0,     0,     0,     0,    34,     0,    35,
    2642        0,    36,     0,     0,    38,    39,     0,     0,     0,     0,
    2643        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2644        0,     0,     0,     0,    43,     0,  1372,     0,     0,     0,
    2645        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2646        0,   686,     0,     0,     0,     0,     0,     0,    46,    47,
    2647        2,   208,     4,     5,     6,     7,     8,     9,    10,    11,
    2648       12,    13,    14,    15,    16,    17,    18,    19,    20,    21,
    2649       22,    23,    24,    25,     0,     0,    26,    27,    28,     0,
    2650        0,     0,     0,     0,     0,    31,     0,     0,     0,     0,
    2651        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2652        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2653        0,     0,     0,    34,     0,    35,     0,    36,     0,     0,
    2654      209,    39,     0,     0,     0,     0,     0,     0,     0,     0,
    2655        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2656       43,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2657        0,     0,     0,     0,     0,     0,     0,   272,     0,     0,
    2658        0,     0,     0,     0,    46,    47,     2,   208,     4,     5,
     2924       0,    36,     0,     0,    38,    39,     2,   207,     4,     5,
    26592925       6,     7,     8,     9,    10,    11,    12,    13,    14,    15,
    26602926      16,    17,    18,    19,    20,    21,    22,    23,    24,    25,
    26612927       0,     0,    26,    27,    28,     0,     0,     0,     0,     0,
    2662        0,    31,     0,     0,     0,     0,     0,     0,     0,     0,
    2663        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2664        0,     0,     0,     0,     0,     0,     0,     0,     0,    34,
    2665        0,    35,     0,    36,     0,     0,    38,    39,     0,     0,
    2666        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2667        0,     0,     0,     0,     0,     0,    43,     0,     0,     0,
    2668        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2669        0,     0,     0,   686,     0,     0,     0,     0,     0,     0,
    2670       46,    47,     2,   208,     4,     5,     6,     7,     8,     9,
    2671       10,    11,    12,    13,    14,    15,    16,    17,    18,    19,
    2672       20,    21,    22,    23,    24,    25,     0,     0,    26,    27,
    2673       28,     0,     0,     0,     0,     0,     0,    31,     0,     0,
     2928       0,    31,     0,     8,     9,    10,    11,    12,    13,    14,
     2929      15,    16,    17,    18,    19,    20,    21,    22,    23,    24,
     2930      25,     0,     0,    26,    27,    28,   494,   495,   496,    34,
     2931       0,    35,    31,    36,     0,     0,   208,    39,     0,     0,
    26742932       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    26752933       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2676        0,     0,     0,     0,     0,    34,     0,    35,     0,    36,
    2677        0,     0,    38,    39,     0,     0,     0,     0,     0,     0,
    2678        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2679        0,     0,    43,     0,     0,     0,     0,     0,     0,     0,
    2680        0,     0,     0,     0,     0,     0,     0,     0,     0,   600,
    2681        0,     0,     0,     0,     0,     0,    46,    47,     2,   208,
    2682        4,     5,     6,     7,     8,     9,    10,    11,    12,    13,
    2683       14,    15,    16,    17,    18,    19,    20,    21,    22,    23,
    2684       24,    25,     0,     0,    26,    27,    28,     0,     0,     0,
    2685        0,     0,     0,    31,     0,     0,     0,     0,     0,     0,
    2686        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2687        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2688        0,    34,     0,    35,     0,    36,     0,     0,   209,    39,
    2689        8,     9,    10,    11,    12,    13,    14,    15,    16,    17,
    2690       18,    19,    20,    21,    22,    23,    24,    25,    43,     0,
    2691       26,    27,    28,     0,     0,     0,     0,   284,   285,    31,
    2692      286,     0,     0,     0,     0,   210,     0,     0,     0,     0,
    2693        0,     0,    46,    47,     0,     0,     0,     0,     0,     0,
    2694        0,     0,     0,     0,     0,     0,   287,    34,     0,     0,
    2695        0,     0,   288,     0,    38,    39,   289,     0,     0,   290,
    2696      291,   292,   293,    41,    42,     0,   294,   295,     0,     0,
    2697        0,     0,     0,     0,    43,     0,     0,     0,     0,     0,
    2698        0,     0,     0,     0,     0,     0,     0,     0,     0,   296,
    2699        0,   526,     0,     0,   173,     0,     0,     0,    46,    47,
    2700      298,   299,   300,   301,     8,     9,    10,    11,    12,    13,
    2701       14,    15,    16,    17,    18,    19,    20,    21,    22,    23,
    2702       24,    25,     0,     0,    26,    27,    28,     0,     0,     0,
    2703        0,   284,   285,    31,   286,     0,     0,     0,     0,     0,
    2704        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2705        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2706      287,    34,     0,     0,     0,     0,   648,     0,    38,    39,
    2707      289,     0,     0,   290,   291,   292,   293,    41,    42,     0,
    2708      294,   295,     0,     0,     0,     0,     0,     0,    43,     0,
    2709        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2710        0,     0,     0,   296,   -35,   765,     0,     0,     0,     0,
    2711        0,     0,    46,    47,   298,   299,   300,   301,     8,     9,
     2934      34,     0,     0,     0,     0,     0,     0,    38,    39
     2935};
     2936
     2937#define yypact_value_is_default(yystate) \
     2938  ((yystate) == (-1328))
     2939
     2940#define yytable_value_is_error(yytable_value) \
     2941  YYID (0)
     2942
     2943static const yytype_int16 yycheck[] =
     2944{
     2945       0,     1,     1,    43,   205,     0,   186,    43,    43,   186,
     2946     240,   117,   186,   543,   698,   186,   282,   611,     0,  1062,
     2947     186,   186,   106,   220,   186,   629,   698,   458,   656,    29,
     2948      30,   522,    32,     0,     1,   698,   609,    32,   350,   609,
     2949     169,   170,     1,    43,   187,   998,   901,   609,   901,    49,
     2950      32,   457,   280,     0,    49,   609,     0,    57,   609,  1005,
     2951     350,   609,   611,    63,   499,    32,    66,   609,    63,    69,
     2952      69,    66,   156,  1340,    69,   501,  1042,  1043,  1043,   505,
     2953     718,    57,    43,    83,    84,    32,   266,   187,    32,   266,
     2954     759,    32,   266,   777,  1421,   266,   202,   188,    43,    66,
     2955     266,   266,    69,   580,   266,   777,     0,   107,   419,  1055,
     2956     110,    43,   780,   107,   777,    63,   473,   117,    39,    39,
     2957     257,   427,   428,    39,   267,   531,   365,    95,   439,   116,
     2958     369,   107,    82,    28,   110,   112,   447,   131,    32,   116,
     2959     285,   644,   645,   612,    82,   132,   186,   109,   148,   618,
     2960     186,   186,   109,   148,    51,   346,   156,    44,    45,   662,
     2961     110,   161,   130,   308,   309,    82,   161,   267,  1495,    44,
     2962      45,   262,   263,    64,   744,    82,  1443,    49,   613,    39,
     2963      44,    45,   617,    78,   132,   497,   186,   187,   109,   109,
     2964     111,   111,   187,   744,    82,   111,   744,   503,   109,    39,
     2965     117,   346,   202,   638,   111,  1074,  1075,   642,    85,  1062,
     2966     210,    96,   109,   699,   411,   210,   522,   110,   109,   219,
     2967     131,   109,   222,   116,   116,   186,   266,   222,   115,   229,
     2968     266,   266,    82,   736,   491,   721,   113,   382,   123,   114,
     2969     132,   186,   114,   219,   244,    39,    39,   513,   248,   109,
     2970     114,   111,   252,   253,   186,   222,   850,   252,   342,   109,
     2971     643,   644,   645,  1306,   407,   838,   266,   267,   838,   109,
     2972     252,   111,   267,   273,  1143,   147,   838,   116,  1243,   662,
     2973     280,   587,   419,  1477,   838,   252,    11,   838,   372,   927,
     2974     838,   397,   110,   132,   253,   295,   838,   273,     0,   117,
     2975     491,   850,   439,   110,   280,   252,  1259,   407,   252,   116,
     2976     447,   252,    49,   257,   457,   109,   229,   111,  1512,   425,
     2977    1514,   611,   950,   680,   827,   431,  1292,  1293,  1293,   329,
     2978      32,   109,    72,    96,   329,   248,   295,   473,   210,   110,
     2979    1008,    43,   819,    83,    84,   116,   489,    49,   110,   349,
     2980     350,     0,     1,   736,   116,  1528,    82,   457,   252,   598,
     2981     123,    63,    80,   257,    66,   959,   366,    69,   240,  1425,
     2982     370,   840,  1227,   349,  1227,  1548,   112,   114,   296,  1528,
     2983     691,   381,  1555,    32,   110,   958,   643,   644,   645,   489,
     2984     366,   117,   132,   111,   370,   113,   958,   397,   114,   117,
     2985     272,   640,  1071,     0,   958,   662,  1555,   407,   115,   116,
     2986     676,   116,   407,   558,   559,   560,    72,  1021,    74,    75,
     2987      69,   109,   110,  1466,   131,   425,   116,    83,    84,   116,
     2988    1473,   431,   116,   433,   190,    32,   308,   872,   629,   116,
     2989     697,   197,   132,   634,   827,   132,   148,     3,   132,    72,
     2990     534,  1417,  1417,  1306,   116,   111,     3,   457,   815,   161,
     2991      83,    84,   462,  1409,  1410,   110,    72,  1523,   825,    66,
     2992     132,   116,  1528,   210,   346,   419,   476,    83,    84,   736,
     2993     110,   481,   839,  1526,   186,   187,   112,   117,   111,   489,
     2994     116,   977,  1548,   493,   489,   439,   762,   497,   493,  1555,
     2995     500,   131,   502,   447,   241,   111,   697,     0,   210,   427,
     2996     428,   493,  1003,   269,  1142,   946,   773,   476,   698,    57,
     2997     222,   698,   522,  1117,   698,   419,   493,   698,   657,   964,
     2998     758,   937,   698,   698,     0,   272,   698,   537,   850,   945,
     2999     540,   967,   542,   543,   680,   439,   493,   491,   112,   493,
     3000     252,   116,   116,   447,   691,   427,   428,   700,   664,   296,
     3001     850,  1030,  1031,   522,   266,   120,   121,   132,   324,   107,
     3002     827,   308,   110,    80,   110,   666,   332,    72,   537,   335,
     3003     116,   540,   773,   542,   543,   991,   109,   118,    83,    84,
     3004     829,   591,   116,   124,   125,   834,   733,   515,   598,   493,
     3005     700,   110,   520,   252,   111,   523,   113,   116,   132,   609,
     3006     117,   611,   696,  1466,   680,   112,   131,   599,   156,   116,
     3007    1473,   110,   116,   118,   109,   222,   116,   329,   116,    72,
     3008     630,   503,   591,    76,   109,   780,   111,  1306,   132,   110,
     3009      83,    84,   132,   399,   132,   116,   646,   403,   350,  1135,
     3010     522,   963,   652,    70,   630,   252,    72,    74,   576,   109,
     3011      77,   661,    79,   663,   664,   665,   109,    83,    84,    86,
     3012     646,  1102,   110,  1526,   109,   118,   119,   109,   116,   815,
     3013      72,   219,  1039,  1040,   923,   661,     3,   109,   772,   825,
     3014     887,    83,    84,    10,    11,    12,    13,    14,   698,   129,
     3015     700,   131,   110,   839,   663,   407,   665,  1193,  1194,   117,
     3016     109,   908,   111,   713,  1383,   587,   132,   109,   455,   719,
     3017     116,   458,    39,   723,    90,    91,    72,   116,    74,    75,
     3018     112,   731,   488,   109,   116,   273,   132,    83,    84,   969,
     3019    1097,  1098,   280,   132,   744,   745,   110,   691,   110,   815,
     3020      67,   110,   116,   697,   351,   457,   110,   629,   758,   825,
     3021     126,   127,   634,   109,   893,    72,  1133,   110,   114,   110,
     3022    1137,   110,   731,   839,   112,   116,    83,    84,   515,   109,
     3023     517,   111,   758,   520,   110,  1042,   523,  1498,    72,   733,
     3024     116,   493,  1322,  1504,   937,   497,   213,   691,     3,    83,
     3025      84,  1470,   945,  1472,   111,    10,    11,    12,    13,    14,
     3026      72,   349,    74,    75,  1525,   109,    55,   111,   109,  1530,
     3027     699,    83,    84,   579,   580,     0,     1,   111,   366,   773,
     3028    1021,   109,   370,  1034,    39,   110,   115,   937,   838,   733,
     3029     109,   116,   721,    72,   493,   945,    66,    76,  1532,   109,
     3030     850,   111,   114,   835,    83,    84,   132,    32,  1527,    98,
     3031    1532,    64,    67,    83,  1103,    88,    89,  1133,   110,  1532,
     3032     114,  1137,  1138,   109,   116,    72,  1021,    74,    75,    76,
     3033     109,   109,   111,   111,  1241,   482,    83,    84,   109,   118,
     3034     119,    66,   132,   893,    69,   433,   493,   109,   118,   111,
     3035     900,   901,   110,  1039,  1040,  1162,   112,   609,   116,   611,
     3036     114,   667,   109,   132,   111,   671,  1273,  1062,  1404,   901,
     3037     117,   118,   119,   923,  1281,  1282,  1283,   109,  1057,   111,
     3038      85,    86,    87,   812,   901,  1421,   353,   937,   355,    72,
     3039     132,   161,   901,    76,   515,   945,   517,   110,   704,   520,
     3040      83,    84,   523,   116,   109,   194,   111,   901,   113,   114,
     3041     114,  1097,  1098,   963,    10,    11,    12,    13,    14,   968,
     3042     109,  1162,  1329,  1039,  1040,   109,   109,   111,   217,    72,
     3043      82,   718,   157,   983,   109,   118,   119,  1253,   227,   110,
     3044      83,    84,   992,    39,   109,   116,   698,   703,   700,   705,
     3045    1000,   968,   222,  1003,   112,  1005,    82,   901,  1494,  1495,
     3046     889,     4,     5,     6,     7,     8,     9,    92,    93,  1125,
     3047     119,    67,   116,   117,   983,    72,   443,    74,    75,    76,
     3048     128,  1097,  1098,   110,   631,  1292,    83,    84,   129,   116,
     3049     260,  1000,   744,   745,  1003,   265,  1005,   222,   110,   109,
     3050      94,   111,  1243,   131,   116,  1055,   111,   296,   118,   119,
     3051     598,   109,   109,   819,   111,  1065,   115,   116,  1068,  1069,
     3052    1070,   118,   119,   110,   111,  1341,    69,   252,    71,  1345,
     3053    1062,    58,    59,    10,    11,    12,    13,    14,    72,   109,
     3054      74,    75,   630,  1093,   112,  1062,  1055,   969,   977,    83,
     3055      84,  1507,   109,   110,   111,  1241,  1065,   112,   646,  1068,
     3056    1069,  1070,    39,   110,   112,   112,   115,   116,  1062,   116,
     3057     109,   110,   111,   661,   110,  1125,   109,   724,   110,  1008,
     3058     110,   351,    44,    45,   131,   132,   838,  1273,  1222,   132,
     3059      67,   738,   109,   110,   111,  1281,  1282,  1283,   850,  1021,
     3060     110,  1557,   116,   117,     4,     5,     6,     7,     8,     9,
     3061     110,     4,     5,     6,     7,     8,     9,    72,  1062,    74,
     3062      75,    76,   109,   110,   111,   931,   116,   117,    83,    84,
     3063    1059,  1447,   109,    33,   111,   110,   109,   901,   111,   111,
     3064     927,   118,   119,  1329,   112,   118,   119,   569,   570,    72,
     3065    1200,    74,    75,   112,   109,   444,  1205,  1273,   114,   946,
     3066      83,    84,   432,   118,   119,  1281,  1282,  1283,  1162,    69,
     3067     758,    71,  1222,   109,   116,   111,    69,  1227,    71,    85,
     3068      86,    87,   118,   119,   831,   937,   109,  1204,  1205,   478,
     3069     131,   114,   114,   945,   114,  1227,   561,   562,  1247,    30,
     3070     563,   564,   901,   109,  1010,   111,  1135,   113,   114,   434,
     3071    1227,   963,   482,  1329,   109,  1265,  1266,  1267,  1227,   110,
     3072     112,  1027,    58,    59,    60,    72,   515,    74,    75,    76,
     3073    1247,   520,   110,  1227,   523,   112,    83,    84,  1206,  1207,
     3074     112,  1209,   112,   112,  1400,    29,   117,  1215,   116,  1243,
     3075    1218,   117,    83,    84,   901,   117,  1265,  1266,  1267,  1265,
     3076    1266,  1267,  1542,   112,  1193,  1194,   110,   110,   493,   968,
     3077     115,   117,  1322,  1323,  1306,     0,     1,    66,   565,   566,
     3078     567,   568,   114,  1227,  1301,   110,   115,    76,   115,  1306,
     3079     116,  1340,    72,   109,    74,    75,    76,   110,  1104,   132,
     3080     110,  1065,  1532,    83,    84,  1532,   110,    32,  1532,   116,
     3081     535,  1532,  1306,  1322,  1323,  1102,  1532,  1532,    43,   117,
     3082    1532,   116,   110,  1340,    49,   110,    29,  1377,    49,   118,
     3083    1380,   110,   110,   603,   110,   923,   110,   110,    63,   110,
     3084    1533,    66,    63,   110,    69,    66,   110,   110,    69,  1399,
     3085    1400,  1507,   110,   110,   110,   110,   110,   110,   110,  1409,
     3086    1410,   631,  1306,  1062,  1557,   115,   636,   112,  1377,   131,
     3087     110,  1380,   161,  1399,   599,  1425,   110,  1024,   116,   112,
     3088    1430,   106,   112,  1533,   110,   116,   110,   110,   117,   114,
     3089     679,   109,   117,   118,  1443,   114,   116,   112,  1448,   688,
     3090    1409,  1410,   116,   692,   110,   116,   116,  1557,   110,   110,
     3091    1460,  1379,   112,   244,   109,  1062,  1425,   109,   643,   644,
     3092     645,  1430,   147,   148,   109,   109,  1443,   148,   117,   112,
     3093     110,   156,   157,   222,  1466,   132,   161,   662,   115,  1448,
     3094     161,  1473,  1532,   110,   115,   110,  1532,  1532,   129,  1466,
     3095     114,  1460,   115,   112,   724,   110,  1473,  1507,  1508,   132,
     3096     116,   186,   187,  1227,   112,   116,   187,  1517,   738,   112,
     3097     110,   260,  1466,  1523,   110,  1404,   265,   202,  1528,  1473,
     3098     110,   112,  1532,  1533,   112,   210,    66,   112,  1533,   210,
     3099     110,   280,  1421,   112,  1526,   112,  1546,   222,  1548,  1508,
     3100     112,   222,  1552,    47,   110,  1555,  1205,  1557,  1517,  1526,
     3101     132,   736,  1557,  1563,  1523,   240,   241,  1567,   132,  1528,
     3102     115,   132,  1466,   132,   132,   115,   117,   252,  1227,  1473,
     3103     112,   110,  1526,   110,   115,   260,   112,  1546,   118,  1548,
     3104     265,   266,   267,  1552,   112,   112,  1555,   272,  1247,   112,
     3105     381,   112,   112,   112,  1563,   110,   112,  1204,  1567,  1323,
     3106     112,   831,   351,   109,   109,  1494,  1495,   109,    60,   110,
     3107     110,   296,    96,   110,   132,   114,   112,   112,   112,   117,
     3108    1227,   161,  1526,   308,   110,    96,     3,   109,   109,   132,
     3109     115,   110,   112,    10,    11,    12,    13,    14,   110,   324,
     3110     110,   110,   827,   116,   329,    42,   110,  1306,   329,   117,
     3111     835,   110,    96,  1377,   132,   132,  1380,   342,    96,   110,
     3112    1542,   346,    39,   110,   117,   350,   351,   132,   110,   132,
     3113     132,   462,   115,   110,  1222,   132,   925,   112,   112,   109,
     3114     365,  1340,   222,   432,   369,   110,   132,   372,   115,   115,
     3115      67,   110,   132,   110,  1301,   110,  1077,   571,   573,  1306,
     3116     449,  1425,   572,   574,  1227,  1495,  1430,   575,  1385,   500,
     3117    1567,   502,   397,  1316,  1138,  1345,   901,  1473,  1093,   945,
     3118     260,   705,   407,   455,   947,   265,   407,   455,  1475,   591,
     3119    1477,   992,   723,   482,   893,   658,  1460,   748,   965,  1247,
     3120     425,   493,   427,   428,   758,   579,   431,    -1,    -1,   434,
     3121      -1,    72,   579,    74,    75,    76,   579,    -1,    -1,    -1,
     3122      -1,    -1,    83,    84,    -1,  1512,    -1,  1514,    -1,    -1,
     3123     455,    -1,   457,   458,    -1,    -1,    -1,    -1,    -1,    -1,
     3124      -1,    -1,    -1,   968,  1443,    -1,    -1,    -1,   109,    -1,
     3125     111,    -1,    -1,    -1,  1024,    -1,   481,   118,   119,    -1,
     3126     985,    -1,    -1,    -1,   489,    -1,   491,  1466,   493,    -1,
     3127      -1,   351,   497,    -1,  1473,    -1,    -1,    -1,   503,    -1,
     3128    1532,    -1,  1546,    -1,  1073,    -1,    -1,    -1,  1552,    -1,
     3129     515,    -1,   517,    -1,    -1,   520,    -1,   522,   523,  1563,
     3130       1,    -1,    -1,  1567,    -1,    -1,   531,    -1,    -1,   534,
     3131     535,  1399,    -1,    -1,   603,    -1,    -1,  1042,  1043,  1466,
     3132      -1,   652,    -1,    -1,    -1,    -1,  1473,  1526,    -1,    -1,
     3133      -1,    -1,    10,    11,    12,    13,    14,  1062,    -1,    -1,
     3134      -1,    -1,   631,    -1,    -1,    -1,    -1,   636,    49,    -1,
     3135      -1,    -1,   432,    -1,   579,   580,    72,    -1,    74,    75,
     3136      76,    39,   587,    -1,    -1,    -1,    -1,    83,    84,    -1,
     3137      -1,    -1,    -1,   598,   599,    -1,    -1,    -1,   603,  1526,
     3138      -1,    -1,   713,    -1,   609,    -1,   611,    -1,   719,    67,
     3139      -1,    -1,   723,   109,    -1,    10,    11,    12,    13,    14,
     3140      -1,    -1,   482,    -1,   629,   106,    -1,    -1,    -1,   634,
     3141      -1,   636,    -1,   114,    -1,   640,    -1,    -1,   643,   644,
     3142     645,    -1,    -1,    -1,    39,    10,    11,    12,    13,    14,
     3143      -1,   109,    -1,   111,  1204,   724,    -1,   662,    -1,   664,
     3144     118,   119,    -1,    -1,    -1,    -1,   147,    -1,    -1,   738,
     3145      -1,    -1,    67,    -1,    39,   156,    -1,    -1,    -1,    -1,
     3146      -1,    -1,    -1,    26,    27,    28,    -1,    -1,    -1,   758,
     3147      -1,   696,   697,   698,    -1,   700,    -1,    -1,    -1,  1204,
     3148    1205,    -1,    67,    -1,    -1,    -1,    -1,    72,    -1,    74,
     3149      75,    76,    -1,   718,   109,    -1,   111,    -1,    83,    84,
     3150      -1,    -1,  1227,   118,   119,   206,    -1,    -1,    -1,   210,
     3151      -1,   736,   737,   738,    -1,    -1,    -1,    -1,    -1,   744,
     3152     745,    -1,  1247,   603,   109,    -1,  1315,    -1,    -1,    -1,
     3153      -1,  1301,    -1,   118,   119,    -1,    99,    -1,   101,   240,
     3154     241,    -1,   831,    -1,    -1,    -1,    -1,   772,   773,    -1,
     3155      -1,   631,   777,   778,    -1,    -1,   636,    -1,    -1,    -1,
     3156      -1,    -1,   893,   126,    -1,    -1,    -1,  1292,  1293,   900,
     3157      -1,   272,    -1,    -1,   275,    72,  1301,    74,    75,    76,
     3158      -1,  1306,    -1,    -1,    -1,    -1,    83,    84,    -1,    -1,
     3159      -1,    -1,    -1,    -1,   819,   296,    -1,    -1,    -1,    -1,
     3160      -1,    -1,   827,    -1,   829,    -1,   831,   308,    -1,   834,
     3161     835,    -1,   109,   838,    -1,  1340,    -1,    -1,    -1,   182,
     3162      10,    11,    12,    13,    14,   850,    -1,   190,    -1,   192,
     3163     193,    -1,    -1,    -1,   197,    -1,   199,   200,    -1,    -1,
     3164      -1,   342,    -1,    -1,   724,   346,    -1,    -1,    -1,    39,
     3165      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   738,    -1,
     3166      -1,   992,    -1,    72,   365,    74,    75,    76,   369,    -1,
     3167      -1,   372,    -1,    -1,    83,    84,   901,    67,    -1,    -1,
     3168      -1,    -1,    72,    -1,    -1,  1474,    76,  1476,    -1,    -1,
     3169      -1,    -1,  1417,    83,    84,    -1,    -1,    -1,   923,    -1,
     3170     109,    -1,   927,    -1,    -1,    -1,   269,    -1,    -1,   118,
     3171     119,    -1,   937,    -1,    -1,    -1,    -1,    -1,  1443,   109,
     3172     945,   946,  1511,    -1,  1513,    -1,   427,   428,   118,   119,
     3173      -1,    -1,    -1,   958,   959,  1024,    -1,    -1,   963,    -1,
     3174      -1,  1466,    -1,   968,   969,    -1,    -1,    -1,  1473,    -1,
     3175      -1,   831,    -1,    -1,   455,    -1,    -1,   458,    -1,    -1,
     3176     985,    -1,  1093,    -1,    -1,    -1,   991,  1556,    -1,  1558,
     3177      -1,    -1,    -1,    -1,    -1,   476,    -1,    -1,    -1,    -1,
     3178      -1,    -1,  1571,  1572,    -1,    -1,    -1,    -1,    -1,    -1,
     3179      26,    27,    28,    -1,    -1,    -1,  1021,    -1,    -1,    -1,
     3180     501,  1526,   503,    -1,   505,    -1,    -1,    -1,    -1,    10,
     3181      11,    12,    13,    14,   515,    -1,   517,  1042,  1043,   520,
     3182      -1,   522,   523,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     3183      -1,    -1,    -1,   534,    -1,    -1,    -1,  1062,    39,    10,
     3184      11,    12,    13,    14,    15,    16,    17,    18,    19,    20,
     3185      21,    22,    23,    24,    25,    26,    27,    28,    -1,    30,
     3186      31,    32,    -1,    99,    -1,   101,    67,    -1,    39,  1200,
     3187      -1,    72,    -1,    74,    75,    76,    -1,  1102,  1103,    -1,
     3188      -1,    -1,    83,    84,    -1,    -1,   587,    -1,    -1,    -1,
     3189      -1,    -1,  1117,    -1,    -1,    -1,    67,   598,    -1,    -1,
     3190    1125,    72,    -1,    74,    75,    76,    -1,    78,   109,    -1,
     3191     111,    -1,    83,    84,    -1,  1204,    -1,   118,   119,    -1,
     3192      10,    11,    12,    13,    14,    -1,    -1,    -1,   629,    -1,
     3193      -1,    -1,    -1,   634,     0,     1,    -1,  1162,   109,   640,
     3194     111,    -1,    -1,    -1,  1024,    -1,   182,   118,   119,    39,
     3195      -1,    -1,    -1,    -1,    -1,    -1,   192,   193,    -1,    -1,
     3196      -1,   197,    -1,   199,   200,    -1,    32,    97,    98,    99,
     3197     100,   101,   102,   103,   104,   105,   106,    67,    -1,  1204,
     3198    1205,    -1,    72,    49,    74,    75,    76,    72,    -1,    74,
     3199      75,    76,    -1,    83,    84,   696,    -1,  1222,    83,    84,
     3200      -1,   131,  1227,    69,     0,    -1,    -1,    -1,    -1,    -1,
     3201      -1,    -1,  1301,    -1,    -1,    -1,    -1,   718,  1243,   109,
     3202     583,   584,  1247,    -1,   109,    -1,   111,    -1,   118,   119,
     3203      -1,    -1,    -1,   118,   119,    -1,    32,    -1,    -1,    -1,
     3204     106,    -1,    -1,    -1,    -1,    -1,    -1,   748,    -1,   612,
     3205      -1,    -1,   615,   616,    -1,   618,    -1,   620,   621,    -1,
     3206      -1,    -1,   625,   626,    -1,    -1,    -1,  1292,  1293,    -1,
     3207      -1,   772,    -1,    69,    -1,    -1,  1301,    -1,    -1,    -1,
     3208      -1,  1306,   148,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     3209     156,   157,    -1,    -1,    10,    11,    12,    13,    14,    -1,
     3210      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     3211      -1,    -1,    -1,    -1,    -1,  1340,    10,    11,    12,    13,
     3212      14,   187,    -1,    39,  1204,    -1,    -1,    -1,   829,    -1,
     3213      -1,    -1,    -1,   834,    -1,    -1,   202,    -1,    -1,   205,
     3214     206,   704,    -1,    -1,   210,    39,   709,   710,    -1,    -1,
     3215      -1,    67,   715,    -1,    -1,    -1,    72,    -1,    74,    75,
     3216      76,   157,    -1,    -1,    -1,   231,    -1,    83,    84,   235,
     3217      -1,   237,    -1,    67,    -1,  1400,    -1,    -1,    72,    -1,
     3218     246,    -1,    76,    -1,    -1,    -1,   252,    -1,    -1,    83,
     3219      84,   257,  1417,   109,    -1,   111,    -1,    -1,    -1,    -1,
     3220      -1,   267,   118,   119,    -1,    -1,    -1,    -1,    -1,   275,
     3221      -1,    -1,    -1,    -1,    -1,   109,    -1,    -1,  1443,    -1,
     3222      -1,  1301,   923,    -1,   118,   119,   927,    -1,    -1,    -1,
     3223      -1,    -1,    -1,    -1,    -1,   231,    -1,    -1,    -1,    -1,
     3224      -1,  1466,    -1,    -1,    -1,   946,    -1,    -1,  1473,    -1,
     3225    1475,    -1,  1477,    -1,    -1,    -1,   252,    -1,    -1,    -1,
     3226      -1,   257,    -1,    -1,    -1,    -1,   967,   968,   969,    -1,
     3227      -1,    -1,    -1,    -1,    -1,    -1,   342,    -1,    -1,    -1,
     3228     346,    -1,  1507,    -1,    -1,    -1,   352,  1512,    -1,  1514,
     3229      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   365,
     3230      -1,  1526,    -1,   369,    -1,    -1,   372,  1532,  1533,    -1,
     3231      -1,    -1,    -1,    -1,    -1,    -1,    -1,  1542,    -1,    -1,
     3232    1021,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     3233      -1,    -1,  1557,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     3234      -1,    -1,    -1,    -1,    -1,    -1,    -1,   583,   584,    -1,
     3235      -1,    -1,    -1,   419,    -1,    -1,   352,    -1,    -1,    -1,
     3236      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   434,    -1,
     3237      -1,     0,    -1,   439,    -1,    -1,   612,    -1,    -1,   615,
     3238     616,   447,   618,    -1,   620,   621,    -1,    -1,    -1,   625,
     3239     626,    10,    11,    12,    13,    14,    -1,    -1,    -1,    -1,
     3240      -1,  1102,  1103,    32,    -1,    -1,    -1,   473,    -1,    -1,
     3241     476,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     3242      39,    -1,    -1,   419,    -1,   491,    -1,   493,    -1,    -1,
     3243      -1,    -1,    -1,    -1,    -1,   501,    -1,    -1,   434,   505,
     3244      69,    -1,    -1,   439,    -1,    -1,    -1,    -1,    67,    -1,
     3245      -1,   447,    -1,    72,    -1,    74,    75,    76,    -1,    -1,
     3246      -1,    -1,    -1,    -1,    83,    84,    -1,    -1,   534,   535,
     3247      -1,    -1,    -1,   709,   710,    -1,    -1,   473,     7,   715,
     3248      -1,    10,    11,    12,    13,    14,    -1,    -1,    -1,    -1,
     3249     109,    -1,   111,    -1,    -1,   491,    -1,   493,    -1,   118,
     3250     119,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    37,    38,
     3251      39,    40,    -1,    -1,   580,    -1,    -1,    -1,    -1,    -1,
     3252      -1,  1222,    -1,    -1,    -1,    -1,    -1,    -1,   157,    -1,
     3253      -1,    -1,   598,   599,    -1,    -1,  1099,    66,    67,   535,
     3254      -1,    -1,    -1,    72,    -1,   611,  1247,    76,    -1,    -1,
     3255      79,    80,    81,    82,    83,    84,    -1,    86,    87,    -1,
     3256      -1,    -1,    -1,   629,    -1,    94,    -1,    -1,   634,    -1,
     3257      -1,    -1,    -1,    -1,   640,    -1,    -1,   643,   644,   645,
     3258     109,    -1,   111,    -1,    -1,    -1,    -1,    -1,    -1,   118,
     3259     119,   120,   121,   122,   123,    -1,   662,    -1,    -1,    -1,
     3260      -1,    -1,    -1,   599,    -1,    -1,    -1,    -1,    -1,    -1,
     3261      -1,    -1,    -1,    -1,   680,    -1,    -1,    -1,    -1,    -1,
     3262      -1,    -1,    -1,   252,    -1,   691,    -1,    -1,   257,    -1,
     3263     696,   697,    -1,    -1,   700,    -1,    -1,    -1,    -1,  1340,
     3264      -1,    -1,    -1,    -1,    -1,    -1,    -1,   643,   644,   645,
     3265      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     3266      -1,  1224,    -1,    -1,    -1,    -1,   662,   733,    -1,    -1,
     3267     736,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   745,
     3268      -1,    -1,   748,    -1,   680,    -1,    -1,    -1,    -1,    -1,
     3269      -1,    -1,    -1,    -1,    -1,   691,    -1,    -1,    -1,    -1,
     3270      -1,   697,    -1,    -1,    -1,    -1,   772,   773,    -1,    -1,
     3271      -1,    -1,   778,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     3272      -1,    -1,    -1,   352,    -1,    -1,    -1,    -1,    -1,    -1,
     3273      -1,    -1,    -1,    -1,    -1,    -1,    -1,   733,    -1,    -1,
     3274     736,    -1,  1443,    -1,    -1,    -1,    -1,    -1,    -1,   815,
     3275      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   825,
     3276      -1,   827,    -1,   829,    -1,    -1,   832,    -1,   834,   835,
     3277      -1,    -1,    -1,   839,  1475,    -1,  1477,   773,    -1,    -1,
     3278      -1,    -1,    -1,   849,    -1,    -1,    -1,    -1,    -1,    -1,
     3279     419,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     3280      -1,    -1,    -1,    -1,    -1,   434,    -1,    -1,    -1,    -1,
     3281     439,  1512,    -1,  1514,    -1,    -1,    -1,    -1,   447,   815,
     3282      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   825,
     3283      -1,   827,    -1,    -1,    -1,   901,   832,    -1,    -1,   835,
     3284      -1,  1542,    -1,   839,   473,    -1,    -1,    -1,    -1,    -1,
     3285      -1,    -1,    -1,    -1,    -1,    -1,     0,   923,    -1,    -1,
     3286      -1,    -1,   491,  1099,   493,    37,    38,    -1,    40,    -1,
    27123287      10,    11,    12,    13,    14,    15,    16,    17,    18,    19,
    2713       20,    21,    22,    23,    24,    25,     0,     0,    26,    27,
    2714       28,     0,     0,     0,     0,   284,   285,    31,   286,     0,
    2715        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2716        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2717        0,     0,     0,     0,   287,    34,     0,     0,     0,     0,
    2718      288,     0,    38,    39,   289,     0,     0,   290,   291,   292,
    2719      293,    41,    42,     0,   294,   295,     0,     0,     0,     0,
    2720        0,     0,    43,     0,     0,     0,     0,     0,     0,     0,
    2721        0,     0,     0,     0,     0,     0,     0,   296,     0,   297,
    2722        0,     0,     0,     0,     0,     0,    46,    47,   298,   299,
    2723      300,   301,     8,     9,    10,    11,    12,    13,    14,    15,
    2724       16,    17,    18,    19,    20,    21,    22,    23,    24,    25,
    2725        0,     0,    26,    27,    28,     0,     0,     0,     0,   284,
    2726      285,    31,   286,     0,     0,     0,     0,     0,     0,     0,
    2727        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2728        0,     0,     0,     0,     0,     0,     0,     0,   287,    34,
    2729        0,     0,     0,     0,   288,     0,    38,    39,   289,     0,
    2730        0,   290,   291,   292,   293,    41,    42,     0,   294,   295,
    2731        0,     0,     0,     0,     0,     0,    43,     0,     0,     0,
    2732        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2733        0,   296,     0,   159,     0,     0,     0,     0,     0,     0,
    2734       46,    47,   298,   299,   300,   301,     8,     9,    10,    11,
     3288      20,    21,    22,    23,    24,    25,    26,    27,    32,    -1,
     3289      30,    31,    32,   959,    66,    -1,    -1,    -1,    -1,    39,
     3290      72,   967,   968,    -1,    76,   901,   535,    79,    80,    81,
     3291      82,    83,    84,    -1,    86,    87,    -1,    -1,    -1,   985,
     3292      -1,    -1,    94,    -1,    -1,    69,     0,    67,    -1,    -1,
     3293      -1,    -1,    72,    -1,    74,    75,    76,   109,    -1,   111,
     3294      -1,    -1,   114,    83,    84,    -1,   118,   119,   120,   121,
     3295     122,   123,    -1,    -1,    -1,  1021,    -1,    -1,    32,    -1,
     3296      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  1034,   109,
     3297     599,   111,    -1,  1039,  1040,    -1,  1042,  1043,   118,   119,
     3298      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  1224,   985,
     3299      -1,    -1,    -1,    -1,    -1,    69,  1062,    -1,    -1,    -1,
     3300      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     3301      -1,    -1,    -1,   157,   643,   644,   645,    -1,    -1,    -1,
     3302      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     3303      -1,  1097,  1098,   662,    -1,    -1,    -1,  1103,    -1,    -1,
     3304      -1,    -1,    -1,  1039,  1040,    -1,  1042,  1043,    -1,    -1,
     3305      -1,   680,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     3306      -1,    -1,   691,    -1,    -1,    -1,  1062,    -1,   697,    -1,
     3307      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     3308      -1,    -1,    -1,   157,    -1,    -1,    37,    38,    -1,    40,
     3309      -1,    -1,    -1,    -1,    -1,    -1,  1162,    -1,    -1,    -1,
     3310      -1,  1097,  1098,    -1,   733,    -1,    -1,   736,   252,    -1,
     3311      -1,    -1,    -1,   257,    -1,    66,    -1,    -1,    -1,    -1,
     3312      -1,    72,    -1,    74,    75,    76,    -1,    -1,    79,    80,
     3313      81,    82,    83,    84,    -1,    86,    87,    -1,    -1,  1205,
     3314      -1,    -1,    -1,    94,   773,    -1,    -1,    -1,    -1,    -1,
     3315      -1,    -1,    -1,    -1,    -1,    -1,  1222,    -1,   109,    -1,
     3316     111,  1227,   113,   114,    -1,    -1,  1162,   118,   119,   120,
     3317     121,   122,   123,    -1,    -1,  1241,    -1,  1243,   252,    -1,
     3318      -1,  1247,    -1,   257,    -1,    -1,   815,    -1,    -1,    -1,
     3319      -1,    -1,    -1,    -1,    -1,    -1,   825,    -1,   827,    -1,
     3320      -1,    -1,    -1,   832,    -1,    -1,   835,  1273,   352,  1205,
     3321     839,    -1,    -1,    -1,    -1,  1281,  1282,  1283,    -1,    -1,
     3322      -1,    -1,    -1,    -1,    -1,    -1,  1292,  1293,    -1,    -1,
     3323      -1,  1227,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     3324    1306,    -1,    -1,    -1,    -1,  1241,    -1,  1243,    -1,    -1,
     3325      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     3326      -1,    -1,    -1,  1329,    -1,    -1,    -1,    -1,    -1,    -1,
     3327      -1,    -1,   901,    -1,  1340,   419,    -1,  1273,   352,    -1,
     3328      -1,    -1,    -1,    -1,    -1,  1281,  1282,  1283,    -1,    -1,
     3329     434,    -1,    -1,    -1,    -1,   439,  1292,  1293,    -1,    -1,
     3330      -1,    -1,    -1,   447,    -1,    -1,    -1,    -1,    -1,    -1,
     3331    1306,    10,    11,    12,    13,    14,    15,    16,    17,    18,
     3332      19,    20,    21,    22,    23,    24,    25,    26,    27,   473,
     3333      -1,    -1,    -1,  1329,    -1,    -1,    -1,    -1,    -1,    -1,
     3334      39,    -1,    -1,    -1,    -1,   419,    -1,   491,    -1,   493,
     3335      -1,  1417,    -1,    -1,    -1,    -1,   985,    -1,    -1,    -1,
     3336     434,    -1,    -1,    -1,    -1,   439,    -1,    -1,    67,    -1,
     3337      -1,    -1,    -1,   447,    -1,    -1,    -1,  1443,    -1,    -1,
     3338      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     3339      -1,   535,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   473,
     3340    1466,    -1,    -1,    -1,    -1,    -1,    -1,  1473,    -1,    -1,
     3341    1039,  1040,    -1,  1042,  1043,    -1,    -1,   491,    -1,   493,
     3342      -1,  1417,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     3343      -1,    -1,    -1,  1062,    -1,    10,    11,    12,    13,    14,
     3344      15,    16,    17,    18,    19,    20,    21,    22,    23,    24,
     3345      25,    26,    27,    28,    -1,   599,    -1,    -1,    -1,    -1,
     3346    1526,   535,    -1,    -1,    39,    -1,    -1,  1533,  1097,  1098,
     3347    1466,    -1,    -1,    -1,    -1,    -1,    -1,  1473,    -1,    -1,
     3348      -1,    -1,    -1,    -1,    53,    -1,    55,    -1,    -1,    58,
     3349      59,    60,    67,    62,    -1,    -1,    -1,    -1,    -1,   643,
     3350     644,   645,    -1,    78,    -1,    -1,    -1,    -1,    77,    -1,
     3351      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   662,    -1,
     3352      89,    90,    -1,    -1,    -1,   599,    -1,    -1,    -1,    -1,
     3353    1526,    -1,    -1,  1162,    -1,    -1,   680,    -1,    -1,    -1,
     3354      -1,    -1,    -1,    -1,    -1,    -1,    -1,   691,    -1,    -1,
     3355      -1,    -1,    -1,   697,    -1,    -1,    -1,    -1,    -1,    -1,
     3356      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   643,
     3357     644,   645,    -1,    -1,    -1,    -1,  1205,    -1,    -1,    -1,
     3358      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   662,   733,
     3359      -1,    -1,   736,    -1,    -1,    -1,    -1,    -1,  1227,    -1,
     3360      -1,    -1,    -1,    -1,    -1,    -1,   680,    -1,    -1,    -1,
     3361      -1,    -1,  1241,    -1,  1243,    -1,    -1,   691,    -1,    -1,
     3362      -1,    -1,    -1,   697,    -1,    -1,    -1,    -1,    -1,   773,
     3363      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     3364      -1,    -1,    -1,    -1,  1273,    -1,    -1,    -1,    -1,    -1,
     3365      -1,    -1,  1281,  1282,  1283,    -1,    -1,    -1,    -1,   733,
     3366      -1,    -1,   736,  1292,  1293,    -1,    -1,    -1,    -1,    -1,
     3367      -1,   815,    -1,    -1,    -1,    -1,    -1,  1306,    -1,    -1,
     3368      -1,   825,    -1,   827,    -1,    -1,    -1,    -1,   832,    -1,
     3369      -1,   835,    -1,    -1,    -1,   839,    -1,    -1,    -1,   773,
     3370    1329,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     3371      -1,     3,     4,     5,     6,     7,     8,     9,    10,    11,
    27353372      12,    13,    14,    15,    16,    17,    18,    19,    20,    21,
    2736       22,    23,    24,    25,     0,     0,    26,    27,    28,     0,
    2737        0,     0,     0,   284,   285,    31,   286,     0,     0,     0,
    2738        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2739        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2740        0,     0,   287,    34,     0,     0,     0,     0,   288,     0,
    2741       38,    39,   289,     0,     0,   290,   291,   292,   293,    41,
    2742       42,     0,   294,   295,     0,     0,     0,     0,     0,     0,
    2743       43,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2744        0,     0,     0,     0,     0,   296,     0,   600,     0,     0,
    2745        0,     0,     0,     0,    46,    47,   298,   299,   300,   301,
    2746        8,     9,    10,    11,    12,    13,    14,    15,    16,    17,
    2747       18,    19,    20,    21,    22,    23,    24,    25,     0,     0,
    2748       26,    27,    28,     0,     0,     0,     0,   284,   285,    31,
    2749      286,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2750        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2751        0,     0,     0,     0,     0,     0,   287,    34,     0,     0,
    2752        0,     0,   288,     0,    38,    39,   289,     0,     0,   290,
    2753      291,   292,   293,    41,    42,     0,   294,   295,     0,     0,
    2754        0,     0,     0,     0,    43,     0,     0,     0,     0,     0,
    2755        0,     0,     0,     0,     0,     0,     0,     0,     0,   296,
    2756        0,   380,     0,     0,     0,     0,     0,     0,    46,    47,
    2757      298,   299,   300,   301,   476,     2,   208,     4,     5,     6,
    2758        7,     8,     9,    10,    11,    12,    13,    14,    15,    16,
    2759       17,    18,    19,    20,    21,    22,    23,    24,    25,     0,
    2760        0,    26,    27,    28,     0,     0,     0,     0,     0,     0,
    2761       31,     0,     0,     0,     8,     9,    10,    11,    12,    13,
    2762       14,    15,    16,    17,    18,    19,    20,    21,    22,    23,
    2763       24,    25,  -295,     0,    26,    27,    28,     0,    34,     0,
    2764       35,     0,    36,    31,     0,    38,    39,     0,     0,     0,
    2765        0,     0,     8,     9,    10,    11,    12,    13,    14,    15,
    2766       16,    17,    18,    19,    20,    21,    22,    23,    24,    25,
    2767        0,    34,    26,    27,    28,     0,    37,     0,   337,   338,
    2768       40,    31,  -295,     0,     0,    -3,     0,    41,    42,     0,
    2769        0,     0,     0,     0,     0,     0,     0,     0,    43,     0,
    2770        0,     0,     0,     0,     0,     0,     0,     0,     0,    34,
    2771        0,     0,     0,     0,    37,   339,    38,    39,    40,     0,
    2772        0,     0,    46,    47,     0,    41,    42,     0,     0,     0,
    2773        0,     0,     0,     0,     0,     0,    43,     0,     0,     0,
    2774        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2775        0,    44,     0,   159,     0,     0,     0,     0,     0,     0,
    2776       46,    47,     8,     9,    10,    11,    12,    13,    14,    15,
    2777       16,    17,    18,    19,    20,    21,    22,    23,    24,    25,
    2778        0,     0,    26,    27,    28,     0,     0,     0,     0,     0,
    2779        0,    31,     8,     9,    10,    11,    12,    13,    14,    15,
    2780       16,    17,    18,    19,    20,    21,    22,    23,    24,    25,
    2781        0,     0,    26,    27,    28,     0,     0,     0,     0,    34,
    2782        0,    31,     0,     0,    37,     0,    38,    39,    40,     0,
    2783        0,     0,     0,     0,     0,    41,    42,     0,     0,     0,
    2784        0,     0,     0,     0,     0,     0,    43,     0,     0,    34,
    2785        0,     0,     0,     0,    37,     0,   209,    39,    40,     0,
    2786        0,    44,     0,    45,     0,    41,    42,     0,     0,     0,
    2787       46,    47,     0,     0,     0,     0,    43,     0,     0,     0,
    2788        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2789        0,    44,     0,   272,     0,     0,     0,     0,     0,     0,
    2790       46,    47,     8,     9,    10,    11,    12,    13,    14,    15,
    2791       16,    17,    18,    19,    20,    21,    22,    23,    24,    25,
    2792        0,     0,    26,    27,    28,     0,     0,     0,     0,     0,
    2793        0,    31,     8,     9,    10,    11,    12,    13,    14,    15,
    2794       16,    17,    18,    19,    20,    21,    22,    23,    24,    25,
    2795        0,     0,    26,    27,    28,     0,     0,     0,     0,    34,
    2796        0,    31,     0,     0,    37,     0,   337,   338,    40,     0,
    2797        0,     0,     0,     0,     0,    41,    42,     0,     0,     0,
    2798        0,     0,     0,     0,     0,     0,    43,     0,     0,    34,
    2799        0,     0,     0,     0,    37,     0,   337,   338,    40,     0,
    2800        0,   642,     0,   339,     0,    41,    42,     0,     0,     0,
    2801       46,    47,     0,     0,     0,     0,    43,     0,     0,     0,
    2802        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2803        0,     0,     0,   339,     0,     0,     0,     0,     0,     0,
    2804       46,    47,     8,     9,    10,    11,    12,    13,    14,    15,
    2805       16,    17,    18,    19,    20,    21,    22,    23,    24,    25,
    2806        0,     0,    26,    27,    28,     0,     0,     0,     0,     0,
    2807        0,    31,     8,     9,    10,    11,    12,    13,    14,    15,
    2808       16,    17,    18,    19,    20,    21,    22,    23,    24,    25,
    2809        0,     0,    26,    27,    28,     0,     0,     0,     0,    34,
    2810        0,    31,   455,     0,   112,     0,    38,    39,     0,     0,
    2811        0,     0,     0,     0,     0,    41,    42,     0,     0,     0,
    2812        0,     0,     0,     0,     0,     0,    43,     0,     0,    34,
    2813        0,     0,     0,     0,     0,     0,    38,    39,     0,     0,
    2814        0,     0,     0,    45,     0,     0,     0,     0,     0,     0,
    2815       46,    47,     0,     0,     0,     0,    43,     0,     0,     0,
    2816        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2817        0,     0,     0,   456,     0,     0,     0,  1108,     0,     0,
    2818       46,    47,     8,     9,    10,    11,    12,    13,    14,    15,
    2819       16,    17,    18,    19,    20,    21,    22,    23,    24,    25,
    2820        0,     0,    26,    27,    28,     0,     0,     0,     0,     0,
    2821        0,    31,   455,     8,     9,    10,    11,    12,    13,    14,
    2822       15,    16,    17,    18,    19,    20,    21,    22,    23,    24,
    2823       25,     0,     0,    26,    27,    28,     0,     0,     0,    34,
    2824        0,     0,    31,   455,     0,     0,    38,    39,     0,     0,
    2825        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2826        0,     0,     0,     0,     0,     0,    43,     0,     0,     0,
    2827       34,     0,     0,     0,     0,     0,     0,    38,    39,     0,
    2828        0,     0,     0,   456,     0,     0,     0,  1235,     0,     0,
    2829       46,    47,     0,     0,     0,     0,     0,    43,     0,     0,
    2830        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2831        0,     0,     0,     0,   456,     0,     0,     0,     0,     0,
    2832        0,    46,    47,     8,     9,    10,    11,    12,    13,    14,
    2833       15,    16,    17,    18,    19,    20,    21,    22,    23,    24,
    2834       25,     0,     0,    26,    27,    28,     0,     0,     0,     0,
    2835        0,     0,    31,     8,     9,    10,    11,    12,    13,    14,
    2836       15,    16,    17,    18,    19,    20,    21,    22,    23,    24,
    2837       25,     0,     0,    26,    27,    28,     0,     0,     0,     0,
    2838       34,     0,    31,     0,     0,     0,     0,    38,    39,     0,
    2839        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2840        0,     0,     0,     0,     0,     0,     0,    43,     0,     0,
    2841       34,     0,     0,     0,     0,     0,     0,    38,    39,     0,
    2842        0,     0,   642,     0,   339,     0,     0,     0,     0,     0,
    2843        0,    46,    47,     0,     0,     0,     0,    43,     0,     0,
    2844        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2845        0,     0,     0,     0,   259,     0,     0,     0,     0,     0,
    2846        0,    46,    47,     8,     9,    10,    11,    12,    13,    14,
    2847       15,    16,    17,    18,    19,    20,    21,    22,    23,    24,
    2848       25,     0,     0,    26,    27,    28,     0,     0,     0,     0,
    2849        0,     0,    31,     8,     9,    10,    11,    12,    13,    14,
    2850       15,    16,    17,    18,    19,    20,    21,    22,    23,    24,
    2851       25,     0,     0,    26,    27,    28,     0,     0,     0,     0,
    2852       34,     0,    31,     0,     0,     0,     0,    38,    39,     0,
    2853        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2854        0,     0,     0,     0,     0,     0,     0,    43,     0,     0,
    2855       34,     0,     0,     0,     0,     0,     0,   209,    39,     0,
    2856        0,     0,     0,     0,   159,     0,     0,     0,     0,     0,
    2857        0,    46,    47,     0,     0,     0,     0,    43,     0,     0,
    2858        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2859        0,     0,     0,     0,   272,     0,     0,     0,     0,     0,
    2860        0,    46,    47,     8,     9,    10,    11,    12,    13,    14,
    2861       15,    16,    17,    18,    19,    20,    21,    22,    23,    24,
    2862       25,     0,     0,    26,    27,    28,     0,     0,     0,     0,
    2863        0,     0,    31,     8,     9,    10,    11,    12,    13,    14,
    2864       15,    16,    17,    18,    19,    20,    21,    22,    23,    24,
    2865       25,     0,     0,    26,    27,    28,     0,     0,     0,     0,
    2866       34,     0,    31,     0,     0,     0,     0,    38,    39,     0,
    2867        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2868        0,     0,     0,     0,     0,     0,     0,    43,     0,     0,
    2869       34,     0,     0,     0,     0,     0,     0,    38,    39,     0,
    2870        0,     0,     0,     0,   339,     0,     0,     0,     0,     0,
    2871        0,    46,    47,     0,     0,     0,     0,    43,     0,     0,
    2872        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2873        0,     0,     0,     0,   456,     0,     0,     0,     0,     0,
    2874        0,    46,    47,     8,     9,    10,    11,    12,    13,    14,
    2875       15,    16,    17,    18,    19,    20,    21,    22,    23,    24,
    2876       25,     0,     0,    26,    27,    28,     0,     0,     0,     0,
    2877        0,     0,    31,     8,     9,    10,    11,    12,    13,    14,
    2878       15,    16,    17,    18,    19,    20,    21,    22,    23,    24,
    2879       25,     0,     0,    26,    27,    28,     0,     0,     0,     0,
    2880       34,     0,    31,     0,     0,     0,     0,    38,    39,     0,
    2881        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2882        0,     0,     0,     0,     0,     0,     0,    43,     0,     0,
    2883       34,     0,     0,     0,     0,     0,     0,    38,    39,     0,
    2884        0,     0,     0,     0,   600,     0,     0,     0,     0,     0,
    2885        0,    46,    47,     0,     0,     0,     0,    43,     0,     0,
    2886        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2887        0,     0,     0,     0,    45,     0,     0,     0,     0,     0,
    2888        0,    46,    47,     8,     9,    10,    11,    12,    13,    14,
    2889       15,    16,    17,    18,    19,    20,    21,    22,    23,    24,
    2890       25,     0,     0,    26,    27,    28,     0,     0,     0,     0,
    2891        0,     0,    31,     0,     0,     2,   208,     4,     5,     6,
    2892        7,     8,     9,    10,    11,    12,    13,    14,    15,    16,
    2893       17,    18,    19,    20,    21,    22,    23,    24,    25,     0,
    2894       34,    26,    27,    28,     0,     0,     0,   209,    39,     0,
    2895       31,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2896        0,     0,     0,     0,     0,     0,     0,    43,     0,     0,
    2897        0,     0,     0,     0,     0,     0,     0,     0,    34,     0,
    2898       35,     0,    36,     0,     0,    38,    39,     0,     0,     0,
    2899        0,    46,    47,   284,   285,     0,   286,  1062,     0,  1063,
    2900        0,     0,  1064,  1065,  1066,  1067,  1068,  1069,  1070,  1071,
    2901        0,     0,  1550,  1072,     0,     0,     0,  1073,  1074,     0,
    2902       33,  -416,   287,     0,     0,     0,     0,     0,  1075,     0,
    2903        0,     0,   289,     0,     0,   290,   291,   292,   293,    41,
    2904       42,     0,   294,   295,     0,     0,     0,     0,     0,     0,
    2905       43,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2906        0,     0,     0,     0,     0,   296,     0,   380,     0,     0,
    2907      173,     0,     0,     0,    46,    47,   298,   299,   300,   301,
    2908        0,     0,     0,     0,  1077,     0,   284,   285,  -130,   286,
    2909     1062,     0,  1063,     0,     0,  1064,  1065,  1066,  1067,  1068,
    2910     1069,  1070,  1071,     0,     0,     0,  1072,     0,     0,     0,
    2911     1073,  1074,     0,    33,     0,   287,     0,     0,     0,     0,
    2912        0,  1075,     0,     0,     0,   289,     0,     0,   290,   291,
    2913      292,   293,    41,    42,     0,   294,   295,     0,     0,     0,
    2914        0,     0,     0,    43,     0,     0,     0,     0,     0,     0,
    2915        0,     0,     0,     0,     0,     0,     0,     0,   296,     0,
    2916      380,     0,     0,   173,     0,     0,     0,    46,    47,   298,
    2917      299,   300,   301,     0,     0,     0,     0,  1077,     0,     0,
    2918        0,  -130,     2,   208,     4,     5,     6,     7,     8,     9,
    2919       10,    11,    12,    13,    14,    15,    16,    17,    18,    19,
    2920       20,    21,    22,    23,    24,    25,     0,     0,    26,    27,
    2921       28,     0,     0,     0,     0,     0,     0,    31,     0,   284,
    2922      285,     0,   286,  1062,     0,  1063,  1420,  1421,  1064,  1065,
    2923     1066,  1067,  1068,  1069,  1070,  1071,     0,     0,  1550,  1072,
    2924        0,     0,     0,  1073,  1074,    34,    33,    35,   287,    36,
    2925        0,     0,    38,    39,  1075,     0,     0,     0,   289,     0,
    2926        0,   290,   291,   292,   293,    41,    42,     0,   294,   295,
    2927        0,     0,     0,     0,  1329,     0,    43,     0,     0,     0,
    2928        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2929        0,   296,     0,   380,     0,     0,   173,     0,     0,     0,
    2930       46,    47,   298,   299,   300,   301,     0,     0,   284,   285,
    2931     1077,   286,  1062,     0,  1063,  1420,  1421,  1064,  1065,  1066,
    2932     1067,  1068,  1069,  1070,  1071,     0,     0,     0,  1072,     0,
    2933        0,     0,  1073,  1074,     0,    33,     0,   287,     0,     0,
    2934        0,     0,     0,  1075,     0,     0,     0,   289,     0,     0,
    2935      290,   291,   292,   293,    41,    42,     0,   294,   295,     0,
    2936        0,     0,     0,     0,     0,    43,     0,     0,     0,     0,
    2937        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2938      296,     0,   380,     0,     0,   173,     0,     0,     0,    46,
    2939       47,   298,   299,   300,   301,     0,     0,   284,   285,  1077,
    2940      286,  1062,     0,  1063,     0,     0,  1064,  1065,  1066,  1067,
    2941     1068,  1069,  1070,  1071,     0,     0,     0,  1072,     0,     0,
    2942        0,  1073,  1074,     0,    33,     0,   287,     0,     0,     0,
    2943        0,     0,  1075,     0,     0,     0,   289,     0,     0,   290,
    2944      291,   292,   293,    41,    42,     0,   294,   295,     0,     0,
    2945        0,     0,     0,     0,    43,   284,   285,     0,   286,     0,
    2946        0,     0,     0,     0,     0,     0,     0,     0,     0,   296,
    2947        0,   380,     0,     0,   173,     0,     0,     0,    46,    47,
    2948      298,   299,   300,   301,   287,     0,     0,     0,  1077,     0,
    2949      648,     0,     0,     0,   289,     0,     0,   290,   291,   292,
    2950      293,    41,    42,     0,   294,   295,     0,     0,     0,     0,
    2951        0,     0,    43,   284,   285,     0,   286,     0,     0,     0,
    2952        0,     0,     0,     0,     0,     0,     0,   296,     0,   784,
    2953        0,     0,   284,   285,     0,   286,    46,    47,   298,   299,
    2954      300,   301,   287,     0,     0,     0,     0,     0,   288,     0,
    2955        0,     0,   289,     0,     0,   290,   291,   292,   293,    41,
    2956       42,   287,   294,   295,     0,     0,     0,   288,     0,     0,
    2957       43,   289,     0,     0,   290,   291,   292,   293,    41,    42,
    2958        0,   294,   295,     0,     0,   296,     0,   380,     0,    43,
    2959      284,   285,     0,   286,   345,    47,   298,   299,   300,   301,
    2960        0,     0,     0,     0,   296,     0,     0,     0,     0,   284,
    2961      285,     0,   286,    46,    47,   298,   299,   300,   301,   287,
    2962        0,     0,     0,     0,     0,   288,     0,     0,     0,   289,
    2963        0,     0,   290,   291,   292,   293,    41,    42,   287,   294,
    2964      295,     0,     0,     0,   288,     0,     0,    43,   289,     0,
    2965        0,   290,   291,   292,   293,    41,    42,     0,   294,   295,
    2966        0,     0,   520,     0,     0,     0,    43,     0,     0,     0,
    2967        0,    46,    47,   298,   299,   300,   301,     0,     0,     0,
    2968        0,   523,     0,     0,     0,     0,     0,     0,     0,     0,
    2969       46,    47,   298,   299,   300,   301,     2,   208,     4,     5,
     3373      22,    23,    24,    25,    26,    27,    -1,    -1,    30,    31,
     3374      32,   815,    -1,    -1,    -1,    -1,    -1,    39,    -1,    -1,
     3375      -1,   825,    -1,   827,    -1,    -1,    -1,   901,   832,    -1,
     3376      -1,   835,    -1,    -1,    -1,   839,    -1,    -1,    -1,    -1,
     3377      -1,    -1,    -1,    -1,    -1,    67,   345,    69,   347,    71,
     3378      -1,    -1,    74,    75,    -1,    -1,    -1,    -1,  1417,   358,
     3379     359,    -1,    -1,    -1,    -1,    -1,    -1,    -1,     4,     5,
    29703380       6,     7,     8,     9,    10,    11,    12,    13,    14,    15,
    29713381      16,    17,    18,    19,    20,    21,    22,    23,    24,    25,
    2972        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2973        0,    31,     0,     0,     0,     0,     0,     0,     0,     0,
    2974        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2975        0,     0,     0,     0,     0,     0,     0,     0,     0,    34,
    2976        0,    35,     0,    36,    37,     0,   176,   177,    40,     0,
    2977        0,     0,     0,     0,     0,    41,    42,   207,     2,   208,
    2978        4,     5,     6,     7,     8,     9,    10,    11,    12,    13,
    2979       14,    15,    16,    17,    18,    19,    20,    21,    22,    23,
    2980       24,    25,     0,     0,    26,    27,    28,     0,     0,     0,
    2981        0,     0,     0,    31,     0,     0,     0,     0,     0,     0,
    2982        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2983        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2984        0,    34,     0,    35,     0,    36,     0,     0,   209,    39,
    2985      476,     2,   208,     4,     5,     6,     7,     8,     9,    10,
    2986       11,    12,    13,    14,    15,    16,    17,    18,    19,    20,
    2987       21,    22,    23,    24,    25,     0,     0,    26,    27,    28,
    2988        0,     0,     0,     0,     0,     0,    31,     0,     0,     0,
    2989        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2990        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2991        0,     0,     0,     0,    34,     0,    35,     0,    36,     0,
    2992        0,    38,    39,     2,   208,     4,     5,     6,     7,     8,
    2993        9,    10,    11,    12,    13,    14,    15,    16,    17,    18,
    2994       19,    20,    21,    22,    23,    24,    25,     0,     0,    26,
    2995       27,    28,     0,     0,     0,     0,     0,     0,    31,     0,
    2996        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2997        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    2998        0,     0,     0,     0,     0,     0,    34,     0,    35,     0,
    2999       36,     0,     0,   209,    39
    3000 };
    3001 
    3002 #define yypact_value_is_default(yystate) \
    3003   ((yystate) == (-1355))
    3004 
    3005 #define yytable_value_is_error(yytable_value) \
    3006   YYID (0)
    3007 
    3008 static const yytype_int16 yycheck[] =
    3009 {
    3010        0,     1,    44,    44,    44,     0,     1,     0,   118,     1,
    3011      542,   241,   221,   697,   187,   187,   187,   187,   187,   206,
    3012      170,   171,   187,   501,   283,   697,   608,   505,   758,    58,
    3013      628,   187,    32,   697,   522,   281,   107,    32,   997,    32,
    3014       50,   610,   717,   350,    44,   655,   779,   900,   900,   458,
    3015       50,   350,     0,   188,    82,   611,   608,    50,   188,     0,
    3016      419,   617,   608,   608,    64,   579,  1420,    67,   610,    44,
    3017       70,    64,    44,  1061,    67,    70,    32,    70,    70,   108,
    3018      439,     0,   111,  1424,    32,   189,   157,    50,   447,   608,
    3019       44,    32,   776,   203,   267,   267,   267,   267,   267,     0,
    3020       39,   457,   267,    44,   776,   115,   296,   107,    95,    50,
    3021        0,   267,   776,    32,   608,   115,    82,    51,   118,   119,
    3022      109,    39,    72,    64,   608,    72,    67,    63,   157,    70,
    3023      110,    32,  1339,   268,    28,    39,   346,   117,   268,  1004,
    3024     1494,  1476,    32,   130,    58,   187,   187,   187,   148,   149,
    3025       72,   117,   115,  1073,  1074,    82,   149,   157,   158,   263,
    3026      264,  1042,   162,    39,   365,    44,    45,   110,   369,   162,
    3027      109,   118,   111,   116,   530,   109,  1511,   258,  1513,  1041,
    3028     1042,  1522,   132,   110,    78,   148,  1527,   187,   188,  1054,
    3029      497,   220,    39,   111,   108,   188,   132,   111,    64,    44,
    3030       45,   211,   411,   203,    82,   109,  1547,   111,   149,  1061,
    3031      132,   211,   187,  1554,   109,   187,    85,    11,   211,   427,
    3032      428,   162,  1142,   223,   743,   267,   267,   267,   491,    96,
    3033      223,   109,   242,   187,   109,  1442,   115,   427,   428,    44,
    3034       45,   241,   242,   109,   113,   274,   187,   188,   211,   743,
    3035       82,   926,   281,   253,   513,   837,   123,    80,   253,   743,
    3036      253,   261,   109,   273,   111,   230,   266,   267,   268,   114,
    3037      211,   342,   407,   273,  1007,   268,    67,   407,   241,   111,
    3038      849,   491,   223,   839,   249,   837,   296,   397,   111,   473,
    3039      113,   837,   837,    84,   117,   503,   296,   253,   308,  1258,
    3040      116,   372,   112,   116,   818,   253,   220,   849,   308,   114,
    3041      273,   610,   253,   114,   522,   425,   132,  1305,   837,   132,
    3042      349,   431,   457,    39,   324,   515,   267,   457,   119,   329,
    3043      520,   690,   116,   523,   253,    82,   329,   366,   419,   949,
    3044     1070,   370,   342,   837,     3,   308,   346,    39,   109,     3,
    3045      350,   351,   253,   837,   489,    90,    91,   258,   439,   489,
    3046      274,  1242,   109,   253,   116,   365,   447,   281,   258,   369,
    3047      131,   162,   372,  1226,  1226,   957,     0,     1,   586,   642,
    3048      643,   644,   515,   346,   517,   575,  1527,   520,   329,   958,
    3049      523,   126,   127,   109,     0,   111,   597,   397,   661,   109,
    3050      107,   642,   643,   644,   433,   957,  1547,   407,    32,   350,
    3051      131,  1292,   957,  1554,   407,   698,   675,   109,   628,   111,
    3052      661,     0,  1020,   633,   131,   425,    32,   427,   428,  1291,
    3053     1292,   431,   223,   696,   434,   349,    96,   720,   639,    72,
    3054     1527,    74,    75,    67,   116,   455,    70,   110,   458,     0,
    3055       83,    84,   366,  1305,   117,   455,   370,   457,   458,   109,
    3056      132,    67,   533,   123,   427,   428,   407,  1554,   131,   116,
    3057      261,    72,   735,  1029,  1030,   266,   499,  1465,   111,   110,
    3058      110,   481,    83,    84,  1472,   132,   696,   117,   966,   489,
    3059      129,   491,   131,   493,   735,   679,   489,   497,   493,   473,
    3060      493,   109,   761,   503,   109,   515,   656,   517,   109,   772,
    3061      520,   757,   109,   523,  1002,   515,   457,   517,   419,   109,
    3062      520,   111,   522,   523,   697,   697,   697,   697,   697,   419,
    3063      530,  1141,   697,   533,   534,  1416,   945,  1525,   439,   116,
    3064      503,   697,   849,  1408,  1409,   493,   447,  1116,   109,   439,
    3065      849,   116,   493,   663,  1416,   132,   497,   447,   110,   522,
    3066      351,   665,   772,   826,   699,   643,   644,   132,   597,   699,
    3067       72,   116,    74,    75,   493,  1305,    82,   109,   578,   579,
    3068      936,    83,    84,   661,    72,   826,   586,   132,   944,   612,
    3069      491,   110,   493,   616,   110,    83,    84,   597,   598,   223,
    3070      629,   110,   602,   493,   110,   115,   116,   109,   608,   690,
    3071      610,   117,   114,  1465,   637,   112,   645,   223,   641,   116,
    3072     1472,   131,   116,   586,   695,    72,   110,   828,   628,   253,
    3073      814,   660,   833,   633,   990,   635,    83,    84,   132,   639,
    3074      824,   432,   642,   643,   644,    80,   116,   253,   112,   112,
    3075      598,   732,  1382,   116,   838,   962,   116,   735,   116,   116,
    3076      110,   661,   132,   663,   111,   628,   116,   608,   109,   610,
    3077      633,   109,   132,  1525,   132,   132,   111,   886,   113,   112,
    3078      109,   110,   117,   116,     4,     5,     6,     7,     8,     9,
    3079       72,   482,  1101,   976,   115,   695,   696,   697,   907,   699,
    3080      771,    83,    84,   116,   116,   679,   109,   717,     4,     5,
    3081        6,     7,     8,     9,   112,   629,     3,   717,   116,   132,
    3082      132,   922,    72,    10,    11,    12,    13,    14,   757,   111,
    3083      109,   645,   111,    83,    84,   735,   736,   737,   968,  1469,
    3084      132,  1471,   892,   743,   744,   351,   660,   118,   826,    69,
    3085       64,    71,    39,   124,   125,   109,   697,    72,   699,    74,
    3086       75,   111,     4,     5,     6,     7,     8,     9,    83,    84,
    3087       72,   771,   772,    69,    76,    71,   776,   777,  1041,   112,
    3088       67,    83,    84,   116,    10,    11,    12,    13,    14,   690,
    3089     1322,    33,    94,    72,   109,   696,  1526,   120,   121,   114,
    3090      690,   936,   743,   744,    83,    84,   936,   109,   109,   944,
    3091     1020,   602,   132,    39,   944,   110,   118,   119,   818,   110,
    3092     1132,   116,    88,    89,  1136,   116,   826,    69,   828,    71,
    3093      830,   732,   111,   833,   834,   286,   109,   837,   111,   630,
    3094      814,    67,   732,   757,   635,   112,  1033,  1531,   871,   849,
    3095      824,  1134,    92,    93,  1038,  1039,   132,   308,   309,  1531,
    3096      110,   109,   112,   111,   838,   114,   116,  1531,   109,   493,
    3097      111,   772,    72,  1132,    74,    75,   482,  1136,  1137,   110,
    3098      114,   131,   132,    83,    84,   116,   834,   493,  1497,     0,
    3099        1,   110,   114,   922,  1503,   346,   837,   116,  1161,   132,
    3100      900,  1102,   109,   110,   111,   900,  1056,   132,   849,  1192,
    3101     1193,   110,  1096,  1097,   114,  1524,   926,   116,    29,    30,
    3102     1529,    32,   922,   110,   110,   109,   926,   111,   110,   116,
    3103      116,   382,   723,    44,   116,   945,   936,   110,   109,    50,
    3104      963,    82,   110,   116,   944,   945,   737,    58,   116,   110,
    3105      109,  1161,   900,    64,   110,   116,    67,   957,   958,    70,
    3106      116,   109,   962,    85,    86,    87,   112,   967,   968,   109,
    3107        3,   111,   967,    84,    85,   967,   110,    10,    11,    12,
    3108       13,    14,   116,   109,   984,   111,   109,   109,   111,   111,
    3109      990,   113,   114,  1252,    82,   936,   110,   108,   110,   900,
    3110      111,   119,   116,   944,   116,   968,    39,   118,   115,   116,
    3111      900,   110,   128,    30,  1124,  1205,  1206,   116,  1208,   129,
    3112     1020,   962,    94,   110,   630,  1215,   131,  1217,  1291,   116,
    3113       94,   702,  1242,   704,    67,   109,   110,   111,   149,   830,
    3114      111,  1041,  1042,   116,   117,   109,   157,   111,   109,   110,
    3115      111,   162,   110,   111,   118,   119,  1240,  1020,    85,    86,
    3116       87,  1061,   109,     3,  1038,  1039,  1061,    84,    85,   109,
    3117       10,    11,    12,    13,    14,   112,   187,   188,   109,   110,
    3118      111,  1340,   109,   112,   111,  1344,   113,   114,  1272,    58,
    3119       59,  1101,   203,    58,    59,    60,  1280,  1281,  1282,    39,
    3120      211,  1101,  1102,  1264,  1265,  1266,   557,   558,   559,   220,
    3121      112,    94,   223,  1061,   110,    94,  1116,   723,   110,   230,
    3122     1403,   110,  1096,  1097,  1124,   110,   109,    67,   111,   110,
    3123      109,   737,   111,   110,   245,   118,   119,  1420,   249,   118,
    3124      119,   109,   253,   254,  1328,   564,   565,   566,   567,   116,
    3125     1506,  1222,   115,   116,   116,   117,   267,   268,   116,   117,
    3126     1061,  1161,   698,   274,    44,    45,   560,   561,   568,   569,
    3127      281,  1061,    10,    11,    12,    13,    14,   112,    72,   111,
    3128       74,    75,    76,   112,   720,   562,   563,  1446,  1378,    83,
    3129       84,   114,   131,  1222,    72,   114,    74,    75,    76,   114,
    3130     1556,    39,   109,  1203,  1204,    83,    84,     1,   112,  1204,
    3131     1493,  1494,  1204,   110,   110,   109,   117,   112,   329,   112,
    3132      112,   112,  1222,    29,   830,   110,  1226,   117,   245,    67,
    3133      117,  1226,  1023,    72,   116,    74,    75,    76,   349,   350,
    3134      110,   112,  1242,   117,    83,    84,  1246,   114,   110,   115,
    3135       72,  1246,    74,    75,  1246,   366,    94,   115,   115,   370,
    3136     1161,    83,    84,   116,   109,   900,  1240,   110,   132,   110,
    3137      381,   109,   116,   111,   110,   811,   900,   117,  1226,   110,
    3138      118,   119,   110,   110,   116,   110,   397,   110,    29,  1399,
    3139      110,  1291,  1292,   110,   900,   110,   407,   110,  1272,   110,
    3140     1300,   110,   110,   110,   116,  1305,  1280,  1281,  1282,   110,
    3141     1305,  1541,   110,   110,   425,   115,   112,   131,   110,   110,
    3142      431,   110,   433,   110,   112,  1226,    72,   112,   779,   110,
    3143       76,   110,   116,   110,   117,   110,  1226,    83,    84,  1339,
    3144      116,  1242,   114,   967,  1339,   116,   457,  1339,    94,   112,
    3145      116,   462,   888,   679,  1328,   116,   110,  1305,  1531,  1531,
    3146     1531,  1531,  1531,   109,   381,   476,  1531,    67,   110,  1398,
    3147      481,   115,   118,   119,   112,  1531,   109,    77,   489,   109,
    3148      109,    72,   493,    74,    75,    76,   497,   109,   109,   500,
    3149        1,   502,    83,    84,   117,   112,  1506,  1532,   132,  1399,
    3150      110,   110,  1532,   115,  1305,   110,   132,   115,   114,   129,
    3151      112,   522,  1203,   110,   112,  1305,  1416,  1023,   109,   119,
    3152      116,  1556,   116,   112,   110,   536,  1556,   110,   539,  1064,
    3153      541,   542,   110,   112,    47,   112,   112,  1061,   110,    50,
    3154      976,   112,  1442,   112,   112,   462,   110,  1442,   132,   115,
    3155     1442,   132,   132,   115,   117,  1061,   110,   132,   132,   112,
    3156      254,   112,   162,   115,  1474,  1465,  1476,   112,   112,   112,
    3157     1465,  1007,  1472,   112,  1474,   112,  1476,  1472,   112,   590,
    3158      110,   110,   109,   500,  1398,   502,   597,   112,   814,  1531,
    3159     1531,  1531,   112,   109,   109,    60,   107,   608,   824,   610,
    3160      110,  1511,   110,  1513,   115,   114,  1506,   112,   132,  1300,
    3161      117,  1511,   838,  1513,   112,   110,   112,  1465,   629,   110,
    3162       96,    96,  1058,   223,  1472,  1525,   109,   109,   132,   115,
    3163     1525,  1531,  1532,   112,   645,   116,   110,   148,   110,  1532,
    3164      651,  1541,   110,   110,    42,   132,   157,   117,   132,   660,
    3165      110,   662,   663,   664,   110,    96,  1556,    96,   110,   132,
    3166      110,   261,   117,  1556,  1465,   110,   266,   110,   132,  1020,
    3167      132,  1472,   112,   115,   112,  1465,   109,  1525,  1541,  1203,
    3168     1204,   281,  1472,   132,   132,   115,   697,   115,   699,   110,
    3169     1531,  1226,   110,   110,    56,   132,   207,  1203,  1134,   110,
    3170      211,   712,  1226,  1077,   570,  1226,  1494,   718,   572,  1384,
    3171     1061,   722,   571,   573,  1566,  1315,  1137,   574,  1344,   730,
    3172     1226,  1472,  1246,  1092,  1525,   455,   455,   944,   704,   722,
    3173      241,   242,   743,   744,   651,  1525,    71,    99,   946,   590,
    3174       75,   892,   991,    78,   657,    80,   757,    50,   964,   747,
    3175     1246,   351,    87,   757,   578,    -1,  1192,  1193,   493,    -1,
    3176      578,    64,   273,    -1,    67,   276,   578,    70,    -1,    -1,
    3177       -1,    -1,    -1,    -1,    -1,    -1,  1300,    -1,    -1,    -1,
    3178       -1,  1305,   476,    -1,    -1,   296,  1321,    -1,    -1,    -1,
    3179       -1,    -1,    -1,    -1,  1300,   712,    -1,   308,    -1,  1305,
    3180       -1,   718,    -1,    -1,    -1,   722,    -1,    -1,    -1,    -1,
    3181       -1,    -1,  1038,  1039,    -1,  1339,    -1,    -1,    72,    -1,
    3182       74,    75,    76,    -1,    -1,    -1,   837,    -1,   522,    83,
    3183       84,   342,   432,   195,    -1,   346,    -1,    -1,   849,    -1,
    3184       94,  1376,   536,    -1,  1379,   539,   149,   541,   542,   449,
    3185       -1,    -1,    -1,    -1,   365,   109,   218,   111,   369,   162,
    3186       -1,   372,    -1,   117,   118,   119,   228,    -1,    -1,    -1,
    3187     1096,  1097,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   214,
    3188       -1,   892,   482,    -1,    -1,   188,    67,    -1,   899,  1424,
    3189       -1,    -1,    -1,    72,  1429,    -1,   590,    76,    -1,    10,
    3190       11,    12,    13,    14,    83,    84,    -1,    -1,   211,    -1,
    3191       -1,   922,    -1,    -1,    -1,    94,   427,   428,  1442,    -1,
    3192      223,    -1,    -1,    -1,  1459,   936,    -1,    -1,    39,    -1,
    3193      109,    -1,   111,   944,   296,    -1,    -1,    -1,   119,   118,
    3194      119,  1465,    -1,    -1,   455,    -1,    -1,   458,  1472,    -1,
    3195       72,   962,    74,    75,    76,    -1,    67,    -1,    -1,  1465,
    3196       -1,    83,    84,    -1,    -1,   476,  1472,  1403,   662,    -1,
    3197      664,   982,    94,    -1,    -1,   892,    -1,    -1,    -1,    -1,
    3198      991,   162,   899,    94,  1420,    -1,    -1,   109,   999,   111,
    3199      501,  1002,   503,  1004,   505,    -1,   118,   119,   109,    -1,
    3200      111,  1525,   602,    -1,   515,    -1,   517,   118,   119,   520,
    3201     1545,   522,   523,    -1,    -1,    -1,  1551,    -1,   353,  1525,
    3202      355,    -1,   533,    -1,    -1,    -1,   329,  1562,    -1,    -1,
    3203      630,  1566,    -1,     0,    -1,   635,   730,    10,    11,    12,
    3204       13,    14,   223,  1054,    -1,    -1,  1272,    -1,    -1,    -1,
    3205       -1,    -1,    -1,    -1,  1280,  1281,  1282,  1493,  1494,    -1,
    3206        0,     1,    -1,    -1,    -1,    32,    39,    -1,    -1,    -1,
    3207       -1,    -1,    -1,    -1,   991,   586,    -1,    -1,    -1,    -1,
    3208      261,  1092,   444,    -1,    -1,   266,   597,    72,    -1,    74,
    3209       75,    76,    32,    -1,    67,    -1,    -1,    -1,    83,    84,
    3210       -1,    -1,  1328,    70,   407,    -1,    -1,    -1,   443,    94,
    3211       50,    -1,    -1,  1124,    -1,    -1,   478,   628,    -1,    -1,
    3212       -1,    94,   633,   723,   109,    -1,   111,    -1,   639,    -1,
    3213       70,    -1,    -1,   118,   119,    -1,   109,   737,   111,    -1,
    3214      191,    -1,    -1,    -1,    -1,   118,   119,   198,    10,    11,
    3215       12,    13,    14,   515,    -1,    -1,    -1,   757,   520,    -1,
    3216       -1,   523,    -1,    -1,    -1,    -1,    -1,   107,    -1,    -1,
    3217      351,    -1,    -1,    -1,    -1,  1092,    -1,    39,    72,    -1,
    3218       74,    75,    76,    -1,   695,    -1,    -1,    -1,  1199,    83,
    3219       84,   158,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3220       94,    -1,    -1,    -1,    -1,    67,   717,    -1,    -1,   149,
    3221       72,  1222,    74,    75,    76,   109,    -1,   157,   158,   270,
    3222       -1,    83,    84,    -1,   118,   119,    -1,    -1,    -1,    -1,
    3223      830,    -1,    94,    -1,    -1,    -1,   747,    -1,    -1,    -1,
    3224       -1,    -1,    -1,    -1,    -1,    -1,    -1,   109,   188,   111,
    3225       -1,   432,    -1,  1264,  1265,  1266,   118,   119,    -1,    -1,
    3226      771,    -1,    -1,   203,    -1,   232,   206,   207,    -1,    -1,
    3227       -1,   211,    -1,   324,    -1,    -1,    -1,    -1,    -1,    -1,
    3228       -1,   332,  1199,    -1,   335,    -1,   253,    -1,   982,    -1,
    3229       -1,   258,   232,    -1,    -1,    -1,   236,    -1,   238,    -1,
    3230       -1,   482,    -1,    -1,    -1,   999,    -1,   247,  1002,    -1,
    3231     1004,  1322,    -1,   253,    -1,    -1,   678,   828,   258,    -1,
    3232       -1,    -1,   833,    -1,    -1,   687,    -1,    -1,   268,   691,
    3233       -1,    72,    -1,    74,    75,    76,   276,    -1,    -1,    -1,
    3234       -1,    -1,    83,    84,    -1,    -1,    -1,    72,   399,    74,
    3235       75,    76,   403,    94,    -1,    -1,    -1,    -1,    83,    84,
    3236     1054,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   109,    94,
    3237      111,    -1,     0,    -1,    -1,    -1,    -1,   118,   119,    -1,
    3238       -1,    -1,    -1,    -1,   109,   352,    -1,  1398,  1399,    -1,
    3239       -1,    -1,    -1,   118,   119,    -1,    -1,  1408,  1409,    -1,
    3240       -1,    -1,   342,    -1,    32,    -1,   346,    -1,    -1,    -1,
    3241       -1,   922,   352,    -1,    -1,   926,    -1,    -1,    -1,    -1,
    3242       -1,   602,    -1,  1023,    -1,   365,    -1,    -1,    -1,   369,
    3243       -1,    -1,   372,    -1,   945,    -1,  1447,   488,    -1,    -1,
    3244       -1,    -1,    70,    -1,    -1,    -1,    -1,    -1,    -1,   630,
    3245       -1,    -1,   419,    -1,   635,   966,   967,   968,    -1,    -1,
    3246       -1,    -1,    -1,    -1,    -1,    -1,    -1,   434,    -1,    -1,
    3247       -1,    -1,   439,    -1,    -1,    -1,    -1,    -1,    -1,   419,
    3248      447,    97,    98,    99,   100,   101,   102,   103,   104,   105,
    3249      106,    -1,    -1,    -1,   434,  1506,  1507,    -1,    -1,   439,
    3250       -1,    -1,    -1,    -1,    -1,  1516,   473,   447,    -1,  1020,
    3251       -1,    -1,    -1,    -1,    -1,   131,    -1,    -1,    -1,    -1,
    3252     1531,  1532,    -1,    -1,   491,    -1,   493,   578,   579,    -1,
    3253      158,    -1,    -1,   473,    -1,    -1,   476,    -1,    -1,    -1,
    3254       -1,    -1,   723,    -1,    -1,  1556,    -1,    -1,    -1,    -1,
    3255       -1,   491,    -1,   493,    -1,    -1,   737,    -1,    -1,    -1,
    3256       -1,   501,   924,    -1,    -1,   505,    -1,   534,    -1,    -1,
    3257     1264,  1265,  1266,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3258       -1,    10,    11,    12,    13,    14,     0,     1,    -1,    -1,
    3259     1101,  1102,    -1,   533,   534,    -1,    -1,    -1,    -1,    -1,
    3260       -1,    -1,    -1,  1203,    -1,    -1,    -1,    -1,    -1,    -1,
    3261       39,    -1,    -1,    -1,    -1,   666,    -1,    -1,    32,   670,
    3262       -1,    -1,    -1,    -1,    -1,   253,    -1,    -1,  1322,    -1,
    3263      258,   598,    -1,    -1,    -1,    -1,    -1,    -1,    67,   579,
    3264       -1,    -1,    -1,    72,    -1,    74,    75,    76,    -1,   830,
    3265       -1,    -1,   703,    67,    83,    84,    70,   597,   598,    -1,
    3266       -1,    -1,    -1,    -1,    -1,    94,    -1,    -1,    -1,    -1,
    3267      610,    -1,    -1,    -1,    -1,   642,   643,   644,    -1,    -1,
    3268      109,    -1,   111,    -1,    -1,    -1,    -1,    -1,   628,   118,
    3269      119,    -1,    -1,   633,   661,    -1,    -1,    -1,    -1,   639,
    3270     1300,    -1,   642,   643,   644,    -1,    -1,    -1,    -1,    -1,
    3271     1072,  1222,   679,    -1,  1408,  1409,    -1,    -1,    -1,    -1,
    3272       -1,   661,    -1,   690,   352,    -1,    -1,    -1,    -1,   696,
    3273       -1,    -1,    -1,    -1,    -1,  1246,    -1,    -1,    -1,   679,
    3274       -1,    -1,    -1,    -1,   158,    -1,    -1,    -1,    -1,    -1,
    3275      690,    -1,    -1,  1447,    -1,   695,   696,    -1,    -1,   699,
    3276       -1,    -1,    -1,    -1,    -1,   732,    -1,   818,   735,    -1,
    3277       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3278       -1,    -1,    -1,    -1,    -1,     0,    -1,    -1,    -1,    -1,
    3279       -1,   419,   732,    -1,    -1,   735,    10,    11,    12,    13,
    3280       14,    -1,    -1,    -1,   744,   772,   434,   747,    -1,   223,
    3281       -1,   439,    -1,  1507,    -1,    -1,    -1,    32,    -1,   447,
    3282       -1,    -1,  1516,    -1,    -1,    39,    -1,    -1,  1339,    -1,
    3283       -1,   771,   772,    -1,    -1,    -1,    -1,   777,    -1,   253,
    3284       -1,    -1,  1023,    -1,    -1,   473,    -1,   814,    -1,    -1,
    3285       -1,    -1,    -1,    67,    -1,    70,    -1,   824,    72,   826,
    3286       74,    75,    76,   491,   831,   493,    -1,   834,    -1,    83,
    3287       84,   838,    -1,    -1,   814,    -1,    -1,    -1,    -1,   930,
    3288       94,    -1,    -1,    -1,   824,    -1,   826,    -1,   828,    -1,
    3289       -1,   831,    -1,   833,   834,   109,    -1,   111,   838,    -1,
    3290       -1,    -1,    -1,    -1,   118,   119,   534,    -1,   848,    -1,
    3291       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3292       -1,    -1,    -1,    -1,    -1,     0,    -1,    -1,    -1,    -1,
    3293       -1,  1442,    -1,   900,    -1,    -1,    -1,    -1,    -1,    -1,
    3294       -1,    -1,    -1,   158,    -1,    -1,    -1,    -1,    -1,    -1,
    3295       -1,    -1,  1314,    -1,    -1,    -1,    -1,    32,  1009,    -1,
    3296      900,    -1,    -1,  1474,    -1,  1476,    -1,    -1,    -1,    -1,
    3297      598,    -1,    -1,    -1,    -1,  1026,    -1,    -1,    -1,    -1,
    3298       -1,    -1,   922,    10,    11,    12,    13,    14,    -1,    -1,
    3299       -1,    -1,    -1,    -1,    -1,    70,    -1,    -1,    -1,    -1,
    3300     1511,    -1,  1513,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3301       -1,    -1,    39,    -1,   642,   643,   644,   984,   958,    -1,
    3302      434,    -1,  1203,    -1,    -1,    -1,   966,   967,    -1,    -1,
    3303     1541,    -1,    -1,   661,    -1,    -1,    -1,    -1,   253,    -1,
    3304       67,    -1,    -1,   258,   984,    72,    -1,    74,    75,    76,
    3305       -1,   679,  1103,    -1,    -1,    -1,    83,    84,    -1,    -1,
    3306       -1,    -1,   690,    -1,    -1,    -1,    -1,    94,   696,    -1,
    3307       -1,  1038,  1039,    -1,  1041,  1042,    -1,    -1,    -1,   493,
    3308     1020,    -1,   109,   158,    -1,    -1,    -1,    -1,    -1,    -1,
    3309       -1,   118,   119,  1033,  1061,    -1,    -1,    -1,  1038,  1039,
    3310       -1,  1041,  1042,    -1,   732,    -1,    -1,   735,    -1,    -1,
    3311       -1,  1473,    -1,  1475,    -1,    -1,    -1,    -1,    -1,  1300,
    3312      534,  1061,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  1096,
    3313     1097,    -1,    -1,    -1,    -1,    -1,    -1,   352,    -1,    -1,
    3314       -1,    -1,    -1,    -1,   772,    -1,    -1,    -1,  1510,    -1,
    3315     1512,    -1,    -1,    -1,    -1,    -1,  1096,  1097,    -1,    26,
    3316       27,    28,  1102,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3317       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   253,    -1,
    3318       -1,    -1,    -1,   258,   598,    -1,   814,    -1,    -1,    -1,
    3319       -1,    -1,    -1,  1555,  1161,  1557,   824,    -1,   826,    -1,
    3320       -1,    -1,    -1,   831,   419,    -1,   834,    -1,  1570,  1571,
    3321      838,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   434,
    3322       -1,  1161,    -1,    -1,   439,    -1,    -1,    -1,   642,   643,
    3323      644,    -1,   447,   100,    -1,   102,    -1,  1204,    -1,    -1,
    3324       -1,    -1,    -1,    -1,    -1,    -1,    -1,   661,    -1,    -1,
    3325       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   473,  1226,
    3326       -1,    -1,    -1,    -1,  1204,    -1,    -1,    -1,    -1,    -1,
    3327       -1,    -1,   900,  1240,    -1,  1242,   491,   352,   493,    -1,
    3328       -1,    -1,  1222,    -1,    -1,    -1,  1226,    -1,    -1,    -1,
    3329       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3330     1240,    -1,  1242,    -1,    -1,  1272,  1246,    -1,    -1,    -1,
    3331       -1,    -1,    -1,  1280,  1281,  1282,   183,    -1,    -1,   534,
    3332       -1,   735,    -1,    -1,  1291,  1292,   193,   194,    -1,    -1,
    3333       -1,   198,  1272,   200,   201,    -1,    -1,    -1,  1305,    -1,
    3334     1280,  1281,  1282,    -1,   419,    -1,    -1,    -1,    -1,    -1,
    3335       -1,  1291,  1292,    -1,    -1,    -1,   984,    -1,    -1,   434,
    3336       -1,  1328,    -1,    -1,   439,  1305,    -1,    -1,    -1,    -1,
    3337       -1,    -1,   447,    -1,    10,    11,    12,    13,    14,    -1,
    3338       -1,    -1,    -1,   598,    -1,    -1,    -1,    -1,  1328,    -1,
    3339       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   473,  1339,
    3340       -1,    -1,    -1,    39,    -1,    10,    11,    12,    13,    14,
    3341     1038,  1039,   826,  1041,  1042,    -1,   491,    -1,   493,    -1,
    3342      834,    -1,    -1,    -1,    -1,    -1,    -1,   642,   643,   644,
    3343       -1,    67,    -1,  1061,    39,    -1,    72,    -1,    74,    75,
    3344       76,    -1,    -1,    -1,    -1,    -1,   661,    83,    84,  1416,
    3345       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    94,   534,
    3346       -1,    -1,    67,    -1,   679,    -1,    -1,    72,  1096,  1097,
    3347       -1,    76,    -1,   109,    -1,   690,  1416,    -1,    83,    84,
    3348       -1,   696,   118,   119,    -1,    -1,   900,    -1,    -1,    94,
    3349       -1,    -1,    -1,    -1,    54,    -1,    56,    -1,  1465,    59,
    3350       60,    61,  1442,    63,   109,  1472,    -1,    -1,    -1,    -1,
    3351       -1,    -1,    -1,   118,   119,    -1,    -1,   732,    78,    -1,
    3352      735,    -1,    -1,   598,    -1,  1465,    -1,    -1,    -1,    -1,
    3353       90,    91,  1472,  1161,    10,    11,    12,    13,    14,    -1,
    3354       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3355       -1,    -1,    -1,   967,    -1,    -1,    -1,   772,  1525,    -1,
    3356       -1,    -1,    -1,    39,    -1,    -1,    -1,   642,   643,   644,
    3357      984,    -1,    -1,    -1,    -1,    -1,  1204,    -1,   284,    -1,
    3358      286,   287,    -1,    -1,    -1,  1525,   661,    -1,   294,   295,
    3359       -1,    67,  1532,    -1,    -1,    -1,    72,    -1,  1226,   814,
    3360       76,    -1,   308,   309,   679,    -1,    -1,    83,    84,   824,
    3361       -1,   826,  1240,    -1,  1242,   690,   831,    -1,    94,   834,
    3362       -1,   696,    -1,   838,    -1,    -1,    -1,  1041,  1042,    -1,
    3363       -1,    -1,    -1,   109,    -1,    -1,    -1,    -1,    -1,    -1,
    3364      346,    -1,   118,   119,  1272,    37,    38,  1061,    40,    -1,
    3365       -1,    -1,  1280,  1281,  1282,    -1,    -1,   732,    -1,    -1,
    3366      735,    -1,    -1,  1291,  1292,    -1,    -1,    -1,    -1,    -1,
    3367       -1,    -1,    -1,    -1,    66,    -1,   382,  1305,    -1,    -1,
    3368       72,    -1,    74,    75,    76,   900,    -1,    79,    80,    81,
    3369       82,    83,    84,    -1,    86,    87,    -1,   772,    -1,    -1,
    3370     1328,    -1,    94,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3371       -1,    -1,    -1,    -1,    -1,   582,   583,   109,    -1,   111,
    3372       -1,   113,   114,    -1,    -1,    -1,   118,   119,   120,   121,
    3373      122,   123,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   814,
    3374       -1,    -1,    -1,    -1,   611,    -1,    -1,   614,   615,   824,
    3375      617,   826,   619,   620,    -1,    -1,   831,   624,   625,   834,
    3376       -1,    -1,    -1,   838,    -1,    -1,    -1,    -1,    -1,   984,
    3377       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3378       -1,    -1,    -1,    -1,    -1,   345,    -1,   347,  1416,  1203,
    3379     1204,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   358,   359,
    3380       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3381       -1,    -1,  1226,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3382       -1,    -1,    -1,  1038,  1039,   900,  1041,  1042,    -1,    -1,
    3383       -1,    -1,  1246,    -1,    -1,    -1,    -1,  1465,    -1,    -1,
    3384       -1,   708,   709,    -1,  1472,    -1,  1061,   714,    -1,    -1,
    3385       -1,   557,   558,   559,   560,   561,   562,   563,   564,   565,
    3386      566,   567,   568,   569,   570,   571,   572,   573,   574,    -1,
    3387       -1,    37,    38,    -1,    40,    -1,    -1,  1291,  1292,    -1,
    3388       -1,  1096,  1097,    -1,    -1,    -1,  1300,    -1,    -1,    -1,
    3389       -1,  1305,    -1,    -1,    -1,    -1,    -1,  1525,    -1,    -1,
    3390       66,    -1,    -1,    -1,    -1,    -1,    72,    -1,    -1,   984,
    3391       76,    -1,    -1,    79,    80,    81,    82,    83,    84,    -1,
    3392       86,    87,    -1,    -1,    -1,  1339,    -1,    -1,    94,    -1,
    3393       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3394       -1,    -1,    -1,   109,    -1,   111,  1161,    -1,   114,    -1,
    3395       -1,    -1,   118,   119,   120,   121,   122,   123,    -1,    -1,
    3396       -1,    -1,    -1,  1038,  1039,    -1,  1041,  1042,    -1,    -1,
    3397       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3398       -1,    -1,    -1,    -1,    -1,    -1,  1061,    -1,    -1,  1204,
    3399       -1,    -1,   698,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3400       -1,    -1,  1416,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3401       -1,  1226,    -1,    -1,   720,    -1,    -1,    -1,    -1,    -1,
    3402       -1,  1096,  1097,    -1,    -1,  1240,    -1,  1242,  1442,    -1,
    3403       -1,    -1,    10,    11,    12,    13,    14,    15,    16,    17,
    3404       18,    19,    20,    21,    22,    23,    24,    25,    26,    27,
    3405       28,  1465,    30,    31,    32,    -1,    -1,  1272,  1472,    -1,
    3406       -1,    39,    -1,    -1,    -1,  1280,  1281,  1282,    -1,    -1,
    3407       -1,    -1,    -1,   779,    -1,    -1,  1291,  1292,    -1,    -1,
    3408       -1,    -1,    -1,    -1,    -1,    -1,  1161,    -1,    -1,    67,
    3409     1305,    -1,    -1,    -1,    -1,    -1,    74,    75,    -1,    -1,
    3410       78,    -1,    -1,    37,    38,   811,    40,    -1,    -1,    -1,
    3411       -1,  1525,    -1,  1328,    -1,    -1,    94,    -1,    -1,    -1,
    3412       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  1204,
    3413       -1,   109,    66,   111,    -1,    -1,    -1,    -1,    72,    -1,
    3414      118,   119,    76,    -1,    -1,    79,    80,    81,    82,    83,
    3415       84,  1226,    86,    87,    -1,    -1,    -1,    -1,    -1,    -1,
    3416       94,    -1,    -1,    -1,   724,  1240,   726,  1242,    -1,    -1,
    3417       -1,    -1,    -1,   733,   734,   109,    -1,   111,   738,    -1,
    3418       -1,    -1,    -1,   117,   118,   119,   120,   121,   122,   123,
    3419      750,    -1,    -1,    -1,    -1,   755,    -1,  1272,    -1,    37,
    3420       38,  1416,    40,    -1,    -1,  1280,  1281,  1282,    -1,    -1,
    3421       -1,    -1,    -1,    -1,    -1,    -1,  1291,  1292,    -1,    -1,
    3422       -1,   781,    -1,    -1,    -1,    -1,    -1,    -1,    66,    -1,
    3423     1305,  1098,    -1,    -1,    72,    -1,    -1,    -1,    76,    -1,
    3424       -1,    79,    80,    81,    82,    83,    84,    -1,    86,    87,
    3425     1465,    -1,    -1,  1328,    -1,    -1,    94,  1472,    -1,    -1,
    3426       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3427      976,   109,    -1,   111,    -1,    -1,    -1,    -1,   116,    50,
    3428      118,   119,   120,   121,   122,   123,    -1,    -1,    -1,    -1,
    3429       -1,    -1,    -1,    -1,    -1,    -1,    67,    -1,    -1,    -1,
    3430       -1,  1007,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3431     1525,    -1,    -1,    -1,  1020,    -1,    -1,    37,    38,    -1,
    3432       40,    -1,   882,   883,   884,   885,    -1,   887,    -1,    -1,
    3433       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3434       -1,  1416,    -1,   903,   115,    -1,    66,    -1,   119,    -1,
    3435       -1,    -1,    72,    -1,  1221,  1061,    76,   917,    -1,    79,
    3436       80,    81,    82,    83,    84,    -1,    86,    87,    -1,    -1,
    3437       -1,    67,    -1,    -1,    94,    -1,    -1,   148,    -1,    -1,
    3438       -1,    77,    -1,    79,    -1,    81,    -1,   158,    -1,   109,
    3439     1465,   162,    88,    -1,    -1,    -1,   956,  1472,   118,   119,
    3440      120,   121,   122,   123,    -1,    -1,    -1,    -1,    -1,    -1,
    3441       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3442       -1,    -1,    -1,   119,    -1,   121,   122,   123,  1134,    -1,
    3443       -1,    -1,    -1,    -1,    -1,    -1,   996,    -1,    -1,    -1,
    3444      211,    -1,    -1,  1003,    -1,    -1,    -1,    -1,  1008,    -1,
    3445     1525,    -1,   223,  1013,    -1,  1015,    -1,    -1,    -1,  1019,
    3446       -1,  1021,  1022,    -1,    -1,  1025,   162,    -1,    -1,    -1,
    3447      241,   242,    -1,    -1,  1034,    -1,    -1,    -1,    -1,    -1,
    3448       -1,    -1,    -1,    -1,    -1,    -1,  1192,  1193,    -1,    -1,
    3449       -1,    -1,  1052,  1053,    -1,   266,    -1,    -1,    -1,    -1,
    3450       -1,    -1,   273,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3451       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  1079,
    3452       -1,    -1,  1082,    -1,    -1,   296,    -1,   223,    -1,   225,
    3453      226,   227,    -1,    -1,    -1,    -1,    -1,   308,    26,    27,
    3454       28,    -1,    10,    11,    12,    13,    14,    15,    16,    17,
    3455       18,    19,    20,    21,    22,    23,    24,    25,    26,    27,
    3456       28,  1121,    30,    31,    32,   261,    -1,  1127,  1128,    -1,
    3457      266,    39,    -1,    -1,    -1,   346,    -1,    -1,    -1,  1139,
    3458      351,    -1,    -1,    -1,  1144,   281,    -1,  1147,    -1,  1149,
    3459       -1,    -1,  1152,    -1,    -1,    -1,    -1,    -1,    -1,    67,
    3460       -1,    -1,    -1,    -1,    72,  1165,    74,    75,    76,    -1,
    3461       78,    -1,   100,    -1,   102,    83,    84,    -1,  1178,    -1,
    3462     1180,  1181,  1182,  1183,    -1,    -1,    94,    -1,    -1,    -1,
    3463       -1,    -1,    -1,   329,    -1,    -1,  1196,    -1,  1198,   127,
    3464       -1,   109,  1202,   111,    -1,    -1,    -1,    -1,    -1,    -1,
    3465      118,   119,    -1,    -1,    -1,   351,   427,   428,    -1,    -1,
    3466      356,   357,    -1,   434,    -1,    -1,    -1,    -1,   364,    -1,
    3467       -1,  1231,  1232,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3468       -1,    -1,    -1,    -1,   455,    -1,    -1,   458,    -1,    -1,
    3469       -1,    -1,    -1,    -1,    -1,   183,    -1,  1403,    -1,    -1,
    3470       -1,    -1,    -1,   191,    -1,   193,   194,    -1,    -1,    -1,
    3471      198,   407,   200,   201,  1420,    -1,    -1,    -1,    -1,    -1,
    3472      491,    -1,    -1,  1283,  1284,    -1,    -1,    -1,    -1,   425,
    3473       -1,    -1,   503,  1293,   430,    -1,   432,    -1,    -1,    -1,
    3474       -1,    -1,    -1,    -1,   515,    -1,   517,    -1,    -1,   520,
    3475       -1,   522,   523,   449,    -1,    -1,   452,   453,    -1,    -1,
    3476       -1,    -1,    -1,   534,    -1,    -1,    -1,    -1,    -1,    -1,
    3477       -1,    -1,   468,     7,    -1,    -1,    10,    11,    12,    13,
    3478       14,    -1,   270,    -1,    -1,  1345,   482,  1493,  1494,    -1,
    3479       -1,    -1,    -1,   489,    -1,    -1,    -1,  1357,    -1,  1359,
    3480     1360,  1361,    -1,    37,    38,    39,    40,    -1,    -1,    -1,
    3481       -1,  1371,    -1,    -1,    -1,   586,    45,    -1,    -1,    -1,
    3482     1380,    -1,    -1,    -1,    -1,    -1,    -1,   598,    -1,    -1,
    3483       -1,   602,    66,    67,    -1,    -1,  1396,    -1,    72,    -1,
    3484       -1,    -1,    76,    -1,    -1,    79,    80,    81,    82,    83,
    3485       84,    -1,    86,    87,    -1,    -1,    -1,   628,    -1,    -1,
    3486       94,    -1,   633,    -1,    93,    -1,    -1,    -1,    -1,    -1,
    3487       -1,   642,   643,   644,   103,   109,    -1,   111,    -1,    -1,
    3488       -1,    -1,    -1,    -1,   118,   119,   120,   121,   122,   123,
    3489      661,    -1,  1452,  1453,    -1,    -1,    -1,    -1,    -1,    -1,
    3490       -1,    -1,    -1,    -1,    -1,  1465,   602,    -1,    -1,    -1,
    3491       -1,    -1,  1472,    37,    38,    -1,    40,    -1,    -1,    -1,
    3492       -1,    -1,    -1,    -1,    -1,   696,    -1,    -1,    -1,    -1,
    3493      159,    -1,    -1,    -1,   630,    -1,    -1,    -1,    -1,   635,
    3494       -1,    -1,    66,    -1,   173,  1505,   717,    -1,    72,  1509,
    3495       -1,    -1,    76,    -1,    -1,    79,    80,    81,    82,    83,
    3496       84,    -1,    86,    87,   735,    -1,   737,   196,    -1,    -1,
    3497       94,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  1538,    -1,
    3498     1540,   210,    -1,    -1,    -1,   109,    -1,   111,    -1,    -1,
    3499      219,    -1,    -1,    -1,   118,   119,   120,   121,   122,   123,
    3500      229,   772,    -1,    -1,    -1,    -1,    -1,    -1,  1568,  1569,
    3501       -1,    -1,    -1,    -1,    -1,    -1,  1576,  1577,    -1,    -1,
    3502       -1,    -1,    -1,    -1,    -1,   254,    -1,   723,    -1,    -1,
    3503      259,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3504       -1,   737,    -1,   272,    -1,    -1,    -1,    -1,    -1,   278,
    3505       -1,   280,    -1,    -1,    -1,   826,    -1,    -1,    -1,   830,
    3506       -1,   757,    -1,   834,    -1,    -1,    -1,    -1,   297,    -1,
    3507       -1,    -1,    -1,    -1,    -1,    -1,    10,    11,    12,    13,
    3508       14,    15,    16,    17,    18,    19,    20,    21,    22,    23,
    3509       24,    25,    26,    27,   582,   583,    30,    31,    32,    -1,
    3510       -1,    -1,    -1,    -1,    -1,    39,    40,    -1,    -1,    -1,
    3511      339,    -1,    -1,    -1,    -1,   344,    -1,    -1,    -1,    -1,
    3512       -1,    -1,   818,   611,    -1,    -1,   614,   615,    -1,   617,
    3513       -1,   619,   620,    67,   830,    -1,   624,   625,    -1,    -1,
    3514       74,    75,    -1,    -1,   373,    -1,    -1,    -1,   377,   378,
    3515       -1,   380,    -1,   849,    -1,   926,    -1,    -1,   387,   388,
    3516       94,   390,   391,    -1,   393,    -1,   395,    -1,    -1,    -1,
    3517       -1,    -1,    -1,    -1,   945,    -1,    -1,   111,    -1,    -1,
    3518       -1,   115,    -1,   412,   118,   119,    -1,    -1,    -1,    -1,
    3519       -1,   420,    -1,    -1,    -1,    -1,    -1,   968,    -1,    -1,
    3520       -1,    -1,    -1,     7,    -1,    -1,    10,    11,    12,    13,
    3521       14,    -1,    -1,   984,    -1,   703,   445,    -1,    -1,    -1,
    3522      708,   709,    -1,    -1,    -1,    -1,   714,   456,    -1,    -1,
    3523       -1,    -1,    -1,    37,    38,    39,    40,    -1,    -1,    -1,
    3524      936,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  1020,
    3525      479,    -1,    -1,    -1,    -1,    -1,   485,    -1,    -1,    -1,
    3526       -1,   490,    66,    67,    -1,    -1,   962,    -1,    72,    -1,
    3527     1041,  1042,    76,    -1,    -1,    79,    80,    81,    82,    83,
    3528       84,    -1,    86,    87,    -1,    -1,    -1,    -1,    -1,    -1,
    3529       94,    -1,    -1,    -1,   990,    -1,    -1,   526,    -1,    -1,
    3530       -1,    -1,    -1,    -1,    -1,   109,    -1,   111,    -1,    -1,
    3531       -1,   540,    -1,    -1,   118,   119,   120,   121,   122,   123,
    3532       -1,    -1,    -1,    -1,    -1,    -1,    -1,  1023,    -1,    -1,
    3533     1101,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  1034,    -1,
    3534       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   578,
    3535       -1,    -1,    37,    38,    -1,    40,    -1,    -1,   587,   157,
    3536      158,    -1,    -1,    -1,    -1,   594,    -1,    -1,    -1,    -1,
    3537       -1,   600,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3538      609,    66,    -1,    -1,    -1,    -1,    -1,    72,    -1,    -1,
    3539     1161,    76,    -1,   191,    79,    80,    81,    82,    83,    84,
    3540      198,    86,    87,    -1,    -1,    -1,    -1,    -1,    -1,    94,
    3541       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3542     1116,   650,    -1,    -1,   109,    -1,   111,    -1,    -1,   114,
    3543       -1,    -1,  1203,   118,   119,   120,   121,   122,   123,    -1,
    3544       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3545       -1,    -1,    -1,    -1,    -1,    -1,    -1,   686,    -1,    -1,
    3546       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3547       -1,  1242,   270,    -1,    -1,     3,     4,     5,     6,     7,
    3548        8,     9,    10,    11,    12,    13,    14,    15,    16,    17,
    3549       18,    19,    20,    21,    22,    23,    24,    25,    26,    27,
    3550       28,    -1,    30,    31,    32,    33,    -1,  1203,    36,    -1,
    3551       -1,    39,   741,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3552     1291,  1292,   751,   752,    -1,    -1,   324,    -1,    -1,  1300,
    3553       -1,    -1,    -1,    -1,   332,   333,   765,   335,   336,    67,
    3554       -1,    69,    -1,    71,    -1,    -1,    74,    75,   346,    -1,
    3555       78,    -1,   350,   782,    -1,   784,    -1,    -1,    -1,   788,
    3556       -1,    -1,    -1,    -1,    -1,    -1,    94,    -1,    -1,    -1,
    3557       -1,   369,    -1,    -1,   372,    -1,    -1,    -1,    -1,    -1,
    3558       -1,    -1,    -1,   111,    -1,    -1,    -1,    -1,    -1,    -1,
    3559      118,   119,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3560       -1,   399,    -1,    -1,  1300,   403,    -1,    -1,    -1,    -1,
    3561     1098,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3562       -1,    -1,    -1,    -1,   853,    -1,    -1,    -1,    -1,    -1,
    3563       -1,   860,    -1,    -1,    -1,    -1,   434,    -1,    -1,    -1,
    3564       -1,    -1,    -1,    -1,   873,  1416,   875,    -1,    -1,    -1,
    3565       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   457,
    3566      889,    -1,    -1,    -1,    -1,    -1,    -1,   896,    -1,    -1,
    3567       -1,    -1,    -1,    -1,    -1,    -1,   148,    -1,    -1,   908,
    3568       -1,    -1,   911,    -1,    -1,    -1,   158,    -1,    -1,    -1,
    3569      488,    -1,    -1,   491,    -1,    -1,    -1,    -1,   170,   171,
    3570      929,    -1,    -1,  1474,    -1,  1476,    -1,    -1,    10,    11,
    3571       12,    13,    14,    15,    16,    17,    18,    19,    20,    21,
    3572       22,    23,    24,    25,    26,    27,    28,    -1,    30,    31,
    3573       32,    -1,   530,  1221,    -1,   533,   534,    39,    -1,    -1,
    3574     1511,    -1,  1513,    -1,    -1,    -1,    10,    11,    12,    13,
    3575       14,    15,    16,    17,    18,    19,    20,    21,    22,    23,
    3576       24,    25,    26,    27,    28,    67,    -1,    -1,    -1,   241,
    3577     1541,    -1,    74,    75,    -1,    39,    78,    -1,    -1,    -1,
    3578      578,   579,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  1018,
    3579       -1,    -1,    94,   265,    -1,    -1,    -1,    -1,    -1,   597,
    3580      598,    -1,    -1,    67,    -1,    -1,    -1,    -1,    -1,   111,
    3581      608,    -1,   610,   611,    78,    -1,   118,   119,    -1,   617,
    3582       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   627,
    3583      628,    -1,    -1,    -1,    -1,   633,    -1,    -1,    -1,    -1,
    3584       -1,    -1,    -1,    -1,   642,   643,   644,  1076,    -1,    -1,
    3585       -1,    -1,    -1,  1082,    -1,    -1,    -1,    -1,    -1,    -1,
    3586     1556,    -1,    -1,   661,    -1,    -1,    -1,    -1,   666,   667,
    3587       -1,    -1,   670,   671,    -1,    -1,    -1,    -1,    -1,   677,
    3588       -1,    -1,    -1,  1112,    -1,    -1,    -1,    -1,  1117,    -1,
    3589       -1,    -1,    -1,    -1,    -1,    -1,  1125,   695,   696,   697,
    3590       -1,   699,    -1,    -1,    -1,   703,    -1,    -1,    -1,   381,
    3591       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3592       -1,    -1,    -1,    -1,    -1,    -1,    -1,  1156,    -1,    -1,
    3593       -1,    -1,    -1,    -1,    -1,    -1,    -1,   735,   736,  1168,
    3594       -1,    -1,  1171,    -1,  1173,    -1,    -1,    -1,    -1,    -1,
    3595       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  1187,  1188,
    3596       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3597       -1,    -1,    -1,   771,   772,    -1,    -1,    -1,   776,   777,
    3598     1209,     3,     4,     5,     6,     7,     8,     9,    10,    11,
    3599       12,    13,    14,    15,    16,    17,    18,    19,    20,    21,
    3600       22,    23,    24,    25,    26,    27,    -1,  1236,    30,    31,
    3601       32,   483,    -1,    -1,    -1,    -1,    -1,    39,    -1,    -1,
    3602      818,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   826,    -1,
    3603       -1,    -1,    -1,    -1,    -1,   833,   834,    -1,    -1,   837,
    3604       -1,   839,    -1,    -1,    -1,    67,    -1,    69,    -1,    71,
    3605      522,   849,    74,    75,    -1,    -1,    -1,    -1,    -1,    -1,
    3606       -1,    -1,   534,    -1,    -1,    -1,    -1,   539,    -1,    -1,
    3607      542,    -1,    94,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3608       -1,   553,   554,    -1,    -1,    -1,    -1,    -1,    -1,   111,
    3609       -1,    -1,    -1,    -1,    -1,    -1,   118,   119,    -1,    -1,
    3610       -1,    -1,    -1,    -1,   576,  1334,    -1,  1336,    -1,    -1,
    3611       -1,    -1,    -1,    -1,   586,    -1,    -1,    -1,    -1,    -1,
    3612     1349,   593,  1351,    -1,   922,    -1,   598,    -1,    -1,    -1,
    3613       -1,    -1,   930,    -1,    -1,    -1,    -1,    -1,   936,    -1,
    3614     1369,    -1,    -1,    -1,    -1,    -1,   944,    -1,    -1,    -1,
    3615       -1,    -1,    -1,    -1,    -1,    -1,  1385,  1386,    -1,   957,
    3616      958,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  1397,    -1,
    3617       -1,  1400,    -1,    -1,    -1,   647,    -1,    -1,    -1,    -1,
    3618       -1,    -1,    -1,    -1,   656,    -1,   984,    -1,    -1,    -1,
    3619       -1,    -1,   990,  1422,    -1,    -1,    -1,    -1,    -1,    -1,
    3620       -1,    -1,  1431,    -1,    -1,  1434,    -1,  1436,  1437,  1438,
    3621       -1,  1009,  1010,    37,    38,    -1,    40,    -1,    -1,    -1,
    3622       -1,    -1,  1020,    -1,   696,    -1,    -1,    -1,  1026,  1027,
    3623       -1,  1029,  1030,  1031,    -1,    -1,    -1,    -1,    -1,    -1,
    3624       -1,    -1,    66,  1041,  1042,    -1,    -1,    -1,    72,  1478,
    3625       -1,  1480,    76,    -1,  1483,    79,    80,    81,    82,    83,
    3626       84,    -1,    86,    87,    -1,    -1,    -1,    -1,    -1,  1498,
    3627       94,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3628       -1,    -1,    -1,    -1,    -1,   109,    -1,   111,    -1,    -1,
    3629       -1,    -1,    -1,    -1,   118,   119,   120,   121,   122,   123,
    3630      772,    -1,   774,    -1,  1102,  1103,  1104,    -1,   780,    -1,
    3631       -1,    -1,    -1,    -1,    -1,   787,    -1,    -1,  1116,     3,
    3632        4,     5,     6,     7,     8,     9,    10,    11,    12,    13,
    3633       14,    15,    16,    17,    18,    19,    20,    21,    22,    23,
    3634       24,    25,    26,    27,    -1,    -1,    30,    31,    32,    33,
    3635       -1,    -1,    36,    37,    38,    39,    40,    -1,   830,   831,
    3636       -1,    -1,   834,  1161,    -1,    -1,    -1,    -1,    -1,    -1,
    3637       -1,    -1,    -1,    -1,    -1,    -1,   848,    -1,    -1,    -1,
    3638       -1,    -1,    66,    67,    -1,    69,    -1,    71,    72,    -1,
    3639       74,    75,    76,    -1,    -1,    79,    80,    81,    82,    83,
    3640       84,    -1,    86,    87,    -1,    -1,    -1,    -1,    -1,    -1,
    3641       94,    -1,    -1,    -1,    -1,    -1,   888,    -1,    -1,    -1,
    3642      892,    -1,    -1,    -1,  1222,   109,    -1,   111,    -1,    -1,
    3643       -1,    -1,    -1,    -1,   118,   119,   120,   121,   122,   123,
    3644       -1,    -1,    -1,    -1,  1242,    -1,    -1,    -1,   132,    -1,
    3645       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3646       -1,    -1,    -1,    -1,     4,     5,     6,     7,     8,     9,
    3647       10,    11,    12,    13,    14,    15,    16,    17,    18,    19,
    3648       20,    21,    22,    23,    24,    25,    26,    27,    -1,    -1,
    3649       30,    31,    32,  1291,  1292,    -1,   968,    37,    38,    39,
    3650       40,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3651       -1,    -1,   984,   985,    -1,    -1,    -1,    -1,    -1,   991,
    3652       -1,    -1,    -1,    -1,    -1,   997,    66,    67,  1000,    69,
    3653     1002,    71,    72,    -1,    74,    75,    76,    -1,    -1,    79,
    3654       80,    81,    82,    83,    84,    -1,    86,    87,    -1,    -1,
    3655       -1,  1023,    -1,    -1,    94,    -1,    -1,    -1,    -1,    -1,
    3656       -1,    -1,  1034,    -1,    -1,    -1,    -1,    -1,    -1,   109,
    3657       -1,   111,    -1,    -1,    -1,    -1,   116,    -1,   118,   119,
    3658      120,   121,   122,   123,  1056,    -1,  1058,    -1,    -1,    -1,
    3659       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3660       -1,  1073,  1074,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3661       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  1416,    -1,
    3662       -1,    -1,  1094,    -1,    -1,    -1,     0,    -1,    -1,     3,
    3663        4,     5,     6,     7,     8,     9,    10,    11,    12,    13,
    3664       14,    15,    16,    17,    18,    19,    20,    21,    22,    23,
    3665       24,    25,    26,    27,    -1,    -1,    30,    31,    32,    33,
    3666       -1,    -1,    36,    -1,    -1,    39,    40,    -1,    -1,    -1,
    3667     1142,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3668       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  1161,
    3669       64,    -1,    -1,    67,    -1,    69,    -1,    71,    72,    -1,
    3670       74,    75,    76,    -1,  1176,  1177,    -1,    -1,  1506,    83,
    3671       84,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3672       94,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3673       -1,    -1,    -1,  1531,  1532,   109,    -1,   111,    -1,    -1,
    3674       -1,    -1,    -1,    -1,   118,   119,    -1,    -1,    -1,    -1,
    3675       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  1556,    -1,
    3676        3,     4,     5,     6,     7,     8,     9,    10,    11,    12,
    3677       13,    14,    15,    16,    17,    18,    19,    20,    21,    22,
    3678       23,    24,    25,    26,    27,    -1,  1258,    30,    31,    32,
    3679       33,    -1,    -1,    36,    37,    38,    39,    40,    41,    -1,
    3680       43,    -1,    -1,    46,    47,    48,    49,    50,    51,    52,
    3681       53,    -1,    -1,    -1,    57,    -1,    -1,    -1,    61,    62,
    3682       -1,    64,    -1,    66,    67,    -1,    69,    -1,    71,    72,
    3683       -1,    74,    75,    76,    -1,    -1,    79,    80,    81,    82,
    3684       83,    84,    -1,    86,    87,    -1,    -1,  1319,    -1,    -1,
    3685     1322,    94,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3686       -1,    -1,    -1,    -1,    -1,    -1,   109,    -1,   111,    -1,
    3687       -1,   114,    -1,    -1,    -1,   118,   119,   120,   121,   122,
    3688      123,    -1,    -1,    -1,    -1,   128,    -1,    -1,    -1,   132,
    3689        3,     4,     5,     6,     7,     8,     9,    10,    11,    12,
    3690       13,    14,    15,    16,    17,    18,    19,    20,    21,    22,
    3691       23,    24,    25,    26,    27,    -1,    -1,    30,    31,    32,
    3692       33,    -1,    -1,    36,    37,    38,    39,    40,    -1,    -1,
    3693       -1,    -1,    -1,    -1,    -1,  1407,    -1,    -1,    -1,    -1,
    3694       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3695       -1,    -1,    -1,    66,    67,    -1,    69,    -1,    71,    72,
    3696       -1,    74,    75,    76,    -1,    -1,    79,    80,    81,    82,
    3697       83,    84,    -1,    86,    87,    -1,    -1,    -1,    -1,    -1,
    3698       -1,    94,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3699       -1,    -1,    -1,    -1,    -1,    -1,   109,    -1,   111,    -1,
    3700       -1,    -1,    -1,    -1,    -1,   118,   119,   120,   121,   122,
    3701      123,    -1,    -1,    -1,    -1,    -1,    -1,  1489,     4,     5,
    3702        6,     7,     8,     9,    10,    11,    12,    13,    14,    15,
    3703       16,    17,    18,    19,    20,    21,    22,    23,    24,    25,
    3704       26,    27,    -1,    -1,    30,    31,    32,    -1,    -1,    -1,
    3705       -1,    37,    38,    39,    40,    -1,    -1,    -1,    -1,    -1,
    3706       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  1541,
     3382      26,    27,   114,    -1,    30,    31,    32,   901,    -1,    -1,
     3383      -1,    37,    38,    39,    40,    -1,    -1,  1466,    -1,    -1,
     3384      -1,   985,    -1,    -1,  1473,    -1,    -1,    -1,    -1,    -1,
    37073385      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    37083386      66,    67,    -1,    69,    -1,    71,    72,    -1,    74,    75,
    37093387      76,    -1,    -1,    79,    80,    81,    82,    83,    84,    -1,
    37103388      86,    87,    -1,    -1,    -1,    -1,    -1,    -1,    94,    -1,
     3389      -1,    -1,    -1,    -1,    -1,  1039,  1040,  1526,  1042,  1043,
     3390      -1,    -1,    -1,   109,    -1,   111,    -1,    -1,    -1,    -1,
     3391     116,   985,   118,   119,   120,   121,   122,   123,  1062,    -1,
     3392      -1,    -1,     4,     5,     6,     7,     8,     9,    10,    11,
     3393      12,    13,    14,    15,    16,    17,    18,    19,    20,    21,
     3394      22,    23,    24,    25,    26,    27,    -1,    -1,    30,    31,
     3395      32,    -1,    -1,  1097,  1098,    37,    38,    39,    40,    -1,
     3396      -1,    66,    -1,    -1,    -1,  1039,  1040,    -1,  1042,  1043,
     3397      -1,    76,    -1,    78,    -1,    80,    -1,    -1,    -1,    -1,
     3398      -1,    -1,    87,    -1,    66,    67,    -1,    69,  1062,    71,
     3399      72,    -1,    74,    75,    76,    -1,    -1,    79,    80,    81,
     3400      82,    83,    84,    -1,    86,    87,    -1,    -1,    -1,    -1,
     3401      -1,    -1,    94,   118,    -1,   120,   121,   122,  1162,    -1,
     3402      -1,    -1,    -1,  1097,  1098,    -1,    -1,   109,    -1,   111,
     3403      37,    38,    -1,    40,   116,    -1,   118,   119,   120,   121,
     3404     122,   123,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     3405      -1,    -1,    -1,    -1,    -1,    -1,   161,    -1,    -1,    66,
     3406      -1,  1205,    -1,    -1,    -1,    72,    -1,    -1,    -1,    76,
     3407      -1,    -1,    79,    80,    81,    82,    83,    84,    -1,    86,
     3408      87,    -1,    -1,  1227,    -1,    -1,    -1,    94,  1162,    -1,
     3409      -1,    -1,    -1,    -1,    -1,    -1,    -1,  1241,    -1,  1243,
     3410      -1,    -1,   109,    -1,   111,    -1,    -1,    -1,    -1,    -1,
     3411     117,   118,   119,   120,   121,   122,   123,   222,    -1,   224,
     3412     225,   226,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  1273,
     3413      -1,  1205,    -1,    -1,    -1,    -1,    -1,  1281,  1282,  1283,
     3414      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  1292,  1293,
     3415      -1,    -1,    -1,  1227,    -1,   260,   725,    -1,   727,    -1,
     3416     265,    -1,  1306,    -1,    -1,   734,   735,  1241,    -1,  1243,
     3417     739,    -1,    -1,    -1,    -1,   280,    -1,    -1,    -1,    -1,
     3418      -1,    -1,   751,    -1,    -1,  1329,    -1,   756,    -1,    -1,
     3419      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  1273,
     3420      -1,    -1,    -1,    -1,    -1,    -1,    -1,  1281,  1282,  1283,
     3421      -1,    -1,    -1,   782,    -1,    -1,    -1,    -1,  1292,  1293,
     3422      49,    -1,    -1,    -1,   329,    37,    38,    -1,    40,    -1,
     3423      -1,    -1,  1306,    -1,    -1,    -1,    -1,    66,    -1,    -1,
     3424      -1,    -1,    -1,    -1,    -1,    -1,   351,    -1,    -1,    -1,
     3425      -1,   356,   357,    -1,    66,  1329,    -1,    -1,    -1,   364,
     3426      72,    -1,    -1,    -1,    76,    -1,    -1,    79,    80,    81,
     3427      82,    83,    84,  1417,    86,    87,    -1,    -1,    -1,    -1,
     3428      -1,    -1,    94,    -1,    -1,   114,    -1,    -1,    -1,   118,
     3429      -1,    -1,    -1,    -1,    -1,    -1,    -1,   109,    -1,   111,
     3430      -1,    -1,   407,    -1,   116,    -1,   118,   119,   120,   121,
     3431     122,   123,    -1,    -1,   883,   884,   885,   886,   147,   888,
     3432     425,    -1,  1466,    37,    38,   430,    40,   432,   157,  1473,
     3433      -1,    -1,   161,    -1,    -1,   904,    -1,    -1,    -1,    -1,
     3434      -1,    -1,    -1,  1417,   449,    -1,    -1,   452,   453,   918,
     3435      -1,    -1,    66,    -1,    -1,    -1,    -1,    -1,    72,    -1,
     3436      -1,    -1,    76,   468,    -1,    79,    80,    81,    82,    83,
     3437      84,    -1,    86,    87,    -1,    -1,    -1,   482,    -1,    -1,
     3438      94,   210,  1526,    -1,   489,    -1,    -1,    -1,   957,    -1,
     3439      -1,    -1,  1466,   222,    -1,   109,    -1,   111,    -1,  1473,
     3440     114,    -1,    -1,    -1,   118,   119,   120,   121,   122,   123,
     3441      -1,   240,   241,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     3442      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   997,    -1,
     3443      -1,    -1,    -1,    -1,    -1,  1004,   265,    -1,    -1,    -1,
     3444    1009,    -1,    -1,   272,    -1,  1014,    -1,  1016,    -1,    -1,
     3445      -1,  1020,  1526,  1022,  1023,    -1,    -1,  1026,    37,    38,
     3446      -1,    40,    -1,    -1,    -1,    -1,  1035,   296,    -1,    -1,
     3447      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   308,
     3448      -1,    -1,    -1,    -1,  1053,  1054,    -1,    66,    -1,    -1,
     3449      -1,    -1,    -1,    72,    -1,    -1,    -1,    76,   603,    -1,
     3450      79,    80,    81,    82,    83,    84,    -1,    86,    87,    -1,
     3451      -1,  1080,    -1,    -1,  1083,    94,    -1,   346,    -1,    -1,
     3452      -1,    -1,   351,    -1,    -1,    -1,   631,    44,    -1,    -1,
     3453     109,   636,   111,    -1,    -1,    -1,    -1,    -1,    -1,   118,
     3454     119,   120,   121,   122,   123,    -1,    -1,    -1,    -1,    -1,
     3455      -1,    -1,    -1,  1122,    -1,    -1,    -1,    -1,    -1,  1128,
     3456    1129,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     3457      -1,  1140,    -1,    -1,    -1,    92,  1145,    -1,    -1,  1148,
     3458      -1,  1150,    -1,    -1,  1153,   102,    -1,    -1,    -1,    -1,
     3459      -1,    -1,    -1,    -1,    -1,    -1,    -1,  1166,   427,   428,
     3460      -1,    -1,    -1,    -1,    -1,   434,    -1,    -1,    -1,    -1,
     3461    1179,    -1,  1181,  1182,  1183,  1184,    -1,    -1,    -1,   724,
     3462      -1,    -1,    -1,    -1,    -1,    -1,   455,    -1,  1197,   458,
     3463    1199,    -1,    -1,   738,  1203,    -1,    -1,    -1,    -1,    -1,
     3464      -1,   158,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     3465      -1,    -1,    -1,   758,    -1,   172,    -1,    -1,    -1,    -1,
     3466      -1,    -1,   491,  1232,  1233,    -1,    -1,    -1,    -1,    -1,
     3467      -1,    -1,    -1,    -1,   503,    -1,    -1,    -1,   195,    -1,
     3468      -1,    -1,    -1,    -1,    -1,    -1,   515,    -1,   517,    -1,
     3469      -1,   520,   209,   522,   523,    -1,    -1,    -1,    -1,    -1,
     3470      -1,   218,    -1,    -1,    -1,    -1,   535,    -1,    -1,    -1,
     3471      -1,   228,    -1,    -1,   819,  1284,  1285,    -1,    -1,    -1,
     3472      -1,    -1,    -1,    -1,    -1,  1294,   831,    -1,    -1,    -1,
     3473      -1,    -1,    -1,    -1,    -1,    -1,   253,    -1,    -1,    -1,
     3474      -1,   258,    -1,    -1,    -1,   850,    -1,    -1,    -1,    -1,
     3475      -1,    -1,    -1,    -1,   271,    -1,    -1,    -1,   587,    -1,
     3476     277,    -1,   279,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     3477     599,    -1,    -1,    -1,   603,    -1,    -1,  1346,    -1,    -1,
     3478     297,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  1358,
     3479      -1,  1360,  1361,  1362,    -1,    -1,    -1,    -1,    -1,    -1,
     3480     629,    -1,    -1,  1372,    -1,   634,    -1,    -1,    -1,    -1,
     3481      -1,    -1,  1381,    -1,   643,   644,   645,    -1,    -1,    -1,
     3482      -1,    -1,   339,    -1,    -1,    -1,    -1,   344,  1397,    -1,
     3483      -1,    -1,   937,   662,    -1,    -1,    -1,    10,    11,    12,
     3484      13,    14,    15,    16,    17,    18,    19,    20,    21,    22,
     3485      23,    24,    25,    26,    27,    28,   373,    -1,   963,    -1,
     3486     377,   378,    -1,   380,    -1,    -1,    39,    -1,   697,    -1,
     3487     387,   388,    -1,   390,   391,    -1,   393,    -1,   395,    -1,
     3488      -1,    -1,    -1,    -1,  1453,  1454,   991,    -1,    -1,   718,
     3489      -1,    -1,    -1,    -1,    67,   412,    -1,  1466,    -1,    -1,
     3490      -1,    -1,    -1,   420,  1473,    78,    -1,   736,    -1,   738,
     3491      -1,    -1,    -1,    -1,    -1,    -1,    -1,     7,    -1,  1024,
     3492      10,    11,    12,    13,    14,    -1,    -1,    -1,   445,    -1,
     3493    1035,    -1,    -1,    -1,    -1,    -1,    -1,  1506,    -1,   456,
     3494      -1,  1510,    -1,    -1,   773,    -1,    -1,    37,    38,    39,
     3495      40,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     3496      -1,    -1,   479,    -1,    -1,    -1,    -1,    -1,   485,    -1,
     3497    1539,    -1,  1541,   490,    -1,    -1,    66,    67,    -1,    -1,
     3498      -1,    -1,    72,    -1,    -1,    -1,    76,    -1,    -1,    79,
     3499      80,    81,    82,    83,    84,    -1,    86,    87,   827,    -1,
     3500    1569,  1570,   831,    -1,    94,    -1,   835,    -1,  1577,  1578,
     3501     527,    -1,  1117,    -1,    -1,    -1,    -1,    -1,    -1,   109,
     3502      -1,   111,    -1,    -1,   541,    -1,    -1,    -1,   118,   119,
     3503     120,   121,   122,   123,    -1,    -1,    -1,    10,    11,    12,
     3504      13,    14,    15,    16,    17,    18,    19,    20,    21,    22,
     3505      23,    24,    25,    26,    27,    28,    -1,    30,    31,    32,
     3506     147,    -1,   579,    -1,    -1,    -1,    39,    -1,    -1,    -1,
     3507     157,   588,    -1,    -1,    -1,    -1,    -1,    -1,   595,    -1,
     3508      -1,    -1,   169,   170,   601,    -1,    -1,    -1,    -1,    -1,
     3509      -1,    -1,    -1,   610,    67,    -1,    -1,    -1,   927,  1204,
     3510      -1,    74,    75,    -1,    -1,    78,    -1,    -1,    -1,    -1,
     3511      -1,    -1,    -1,    -1,    -1,    -1,    -1,   946,    -1,    37,
     3512      38,    -1,    40,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     3513      -1,    -1,    -1,    -1,   651,    -1,   109,    -1,   111,    -1,
     3514     969,    -1,    -1,    -1,    -1,   118,   119,    -1,    66,    -1,
     3515      -1,    -1,    -1,   240,    72,    -1,   985,    -1,    76,    -1,
     3516      -1,    79,    80,    81,    82,    83,    84,    -1,    86,    87,
     3517     687,    -1,    -1,    -1,    -1,    -1,    94,   264,    -1,    -1,
    37113518      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3712       -1,    -1,    -1,   109,    -1,   111,    -1,    -1,    -1,    -1,
    3713      116,    -1,   118,   119,   120,   121,   122,   123,     4,     5,
    3714        6,     7,     8,     9,    10,    11,    12,    13,    14,    15,
    3715       16,    17,    18,    19,    20,    21,    22,    23,    24,    25,
    3716       26,    27,    -1,    -1,    30,    31,    32,    -1,    -1,    -1,
    3717       -1,    37,    38,    39,    40,    10,    11,    12,    13,    14,
    3718       15,    16,    17,    18,    19,    20,    21,    22,    23,    24,
    3719       25,    26,    27,    -1,    -1,    30,    31,    32,    -1,    -1,
    3720       66,    67,    -1,    69,    39,    71,    72,    -1,    74,    75,
    3721       76,    -1,    -1,    79,    80,    81,    82,    83,    84,    -1,
    3722       86,    87,    -1,    -1,    -1,    -1,    -1,    -1,    94,    -1,
    3723       -1,    -1,    67,    -1,    -1,    -1,    -1,    72,    -1,    74,
    3724       75,    -1,    -1,   109,    -1,   111,    -1,    -1,    83,    84,
    3725      116,    -1,   118,   119,   120,   121,   122,   123,     4,     5,
    3726        6,     7,     8,     9,    10,    11,    12,    13,    14,    15,
    3727       16,    17,    18,    19,    20,    21,    22,    23,    24,    25,
    3728       26,    27,    -1,    -1,    30,    31,    32,    -1,    -1,    -1,
    3729       -1,    37,    38,    39,    40,    -1,    -1,    -1,    10,    11,
    3730       12,    13,    14,    15,    16,    17,    18,    19,    20,    21,
    3731       22,    23,    24,    25,    26,    27,    28,    -1,    -1,    -1,
    3732       66,    67,    -1,    69,    -1,    71,    72,    39,    74,    75,
    3733       76,    -1,    -1,    79,    80,    81,    82,    83,    84,    -1,
    3734       86,    87,    -1,    -1,    -1,    -1,    -1,    -1,    94,    -1,
    3735       -1,    -1,    -1,    -1,    -1,    67,    -1,    -1,    -1,    -1,
    3736       -1,    -1,    -1,   109,    -1,   111,    78,    -1,    -1,    -1,
    3737       -1,    -1,   118,   119,   120,   121,   122,   123,     4,     5,
    3738        6,     7,     8,     9,    10,    11,    12,    13,    14,    15,
    3739       16,    17,    18,    19,    20,    21,    22,    23,    24,    25,
    3740       26,    27,    -1,    -1,    30,    31,    32,    -1,    -1,    -1,
    3741       -1,    37,    38,    39,    40,    10,    11,    12,    13,    14,
    3742       15,    16,    17,    18,    19,    20,    21,    22,    23,    24,
    3743       25,    26,    27,    -1,    -1,    30,    31,    32,    -1,    -1,
    3744       66,    67,    -1,    69,    39,    71,    72,    -1,    74,    75,
    3745       76,    -1,    -1,    79,    80,    81,    82,    83,    84,    -1,
    3746       86,    87,    -1,    -1,    -1,    -1,    -1,    -1,    94,    -1,
    3747       -1,    -1,    67,    -1,    -1,    -1,    -1,    -1,    -1,    74,
    3748       75,    -1,    -1,   109,    -1,   111,    -1,    -1,    -1,    -1,
    3749       -1,    -1,   118,   119,   120,   121,   122,   123,     4,     5,
    3750        6,     7,     8,     9,    10,    11,    12,    13,    14,    15,
    3751       16,    17,    18,    19,    20,    21,    22,    23,    24,    25,
    3752       26,    27,    -1,    -1,    30,    31,    32,    -1,    -1,    -1,
    3753       -1,    37,    38,    39,    40,    10,    11,    12,    13,    14,
    3754       15,    16,    17,    18,    19,    20,    21,    22,    23,    24,
    3755       25,    26,    27,    -1,    -1,    30,    31,    32,    -1,    -1,
    3756       66,    67,    -1,    69,    39,    71,    72,    -1,    74,    75,
    3757       76,    -1,    -1,    79,    80,    81,    82,    83,    84,    -1,
    3758       86,    87,    -1,    -1,    -1,    -1,    -1,    -1,    94,    -1,
    3759       -1,    -1,    67,    -1,    -1,    -1,    -1,    -1,    -1,    74,
    3760       75,    -1,    -1,   109,    -1,   111,    -1,    -1,    -1,    -1,
    3761       -1,    -1,   118,   119,   120,   121,   122,   123,     4,     5,
    3762        6,     7,     8,     9,    10,    11,    12,    13,    14,    15,
    3763       16,    17,    18,    19,    20,    21,    22,    23,    24,    25,
    3764       26,    27,    -1,    -1,    30,    31,    32,    -1,    -1,    -1,
    3765       -1,    37,    38,    39,    40,    10,    11,    12,    13,    14,
    3766       15,    16,    17,    18,    19,    20,    21,    22,    23,    24,
    3767       25,    26,    27,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3768       66,    67,    -1,    69,    39,    71,    72,    -1,    74,    75,
    3769       76,    -1,    -1,    79,    80,    81,    82,    83,    84,    -1,
    3770       86,    87,    -1,    -1,    -1,    -1,    -1,    -1,    94,    -1,
    3771       -1,    -1,    67,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3772       -1,    -1,    -1,   109,    -1,   111,    -1,    -1,    -1,    -1,
    3773       -1,    -1,   118,   119,   120,   121,   122,   123,     3,     4,
     3519      -1,   109,  1021,   111,    -1,    -1,  1301,    -1,    -1,    -1,
     3520     118,   119,   120,   121,   122,   123,    -1,    -1,    -1,    -1,
     3521      -1,    -1,    -1,  1042,  1043,    -1,    -1,    -1,    -1,    -1,
     3522      -1,    -1,    -1,    -1,    -1,   742,    -1,    -1,    -1,    -1,
     3523      -1,    -1,    -1,    -1,    -1,   752,   753,    -1,    -1,    -1,
     3524      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   766,
     3525      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     3526      -1,    -1,    -1,    -1,    -1,    -1,   783,    -1,   785,    -1,
     3527      -1,    -1,   789,  1102,    -1,    -1,    -1,    -1,    -1,    -1,
     3528      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     3529      -1,    -1,    -1,    -1,   381,    -1,     3,     4,     5,     6,
     3530       7,     8,     9,    10,    11,    12,    13,    14,    15,    16,
     3531      17,    18,    19,    20,    21,    22,    23,    24,    25,    26,
     3532      27,    -1,    -1,    30,    31,    32,    -1,    -1,    -1,    -1,
     3533      -1,    -1,    39,  1162,    -1,    -1,    -1,   854,    -1,    -1,
     3534      -1,    -1,    -1,    -1,   861,    -1,    -1,    -1,    -1,    -1,
     3535      -1,    -1,   156,   157,    -1,    -1,    -1,   874,    -1,   876,
     3536      67,    -1,    69,    -1,    71,    72,    -1,    74,    75,    76,
     3537      -1,    -1,    -1,   890,    -1,  1204,    83,    84,    -1,    -1,
     3538     897,    -1,    -1,    -1,    -1,    -1,   190,    -1,    -1,    -1,
     3539      -1,    -1,   909,   197,    -1,   912,   483,    -1,    -1,    -1,
     3540      -1,    -1,   109,    -1,   111,    -1,    -1,    -1,    -1,    -1,
     3541      -1,   118,   119,   930,  1243,    -1,    10,    11,    12,    13,
     3542      14,    15,    16,    17,    18,    19,    20,    21,    22,    23,
     3543      24,    25,    26,    27,    -1,   522,    30,    31,    32,    -1,
     3544      -1,    -1,    -1,    -1,    -1,    39,    40,    -1,   535,    -1,
     3545      -1,    -1,  1557,   540,    -1,    -1,   543,    -1,    -1,    -1,
     3546      -1,    -1,    -1,  1292,  1293,   269,    -1,   554,   555,    -1,
     3547      -1,    -1,  1301,    67,    -1,    -1,    -1,    -1,    -1,    -1,
     3548      74,    75,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     3549     577,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     3550     587,    -1,  1019,    -1,    -1,    -1,    -1,   594,    -1,    -1,
     3551      -1,    -1,   599,    -1,    -1,    -1,    -1,   111,    -1,    -1,
     3552     324,   115,    -1,    -1,   118,   119,    -1,    -1,   332,   333,
     3553      -1,   335,   336,    -1,    37,    38,    -1,    40,    -1,    -1,
     3554      -1,    -1,   346,    -1,    -1,    -1,   350,    -1,    -1,    -1,
     3555      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  1076,
     3556      -1,   648,    -1,    66,    -1,   369,  1083,    -1,   372,    72,
     3557     657,    -1,    -1,    76,    -1,    -1,    79,    80,    81,    82,
     3558      83,    84,    -1,    86,    87,    -1,    -1,    -1,  1417,    -1,
     3559      -1,    94,    -1,    -1,    -1,   399,  1113,    -1,    -1,   403,
     3560      -1,  1118,    -1,    -1,    -1,    -1,   109,    -1,   111,  1126,
     3561     697,    -1,    -1,    -1,    -1,   118,   119,   120,   121,   122,
     3562     123,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     3563     434,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     3564    1157,    -1,    -1,    -1,    -1,    -1,  1475,    -1,  1477,    -1,
     3565      -1,    -1,  1169,   457,    -1,  1172,    -1,  1174,    -1,    -1,
     3566      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     3567      -1,  1188,  1189,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     3568      -1,    -1,    -1,  1512,   488,  1514,   773,   491,   775,    -1,
     3569      -1,    -1,    -1,  1210,   781,    -1,    -1,    -1,    -1,    -1,
     3570      -1,   788,    -1,    -1,    -1,    -1,    -1,    37,    38,    -1,
     3571      40,    -1,    -1,  1542,    -1,    -1,    -1,    -1,    -1,    -1,
     3572    1237,    -1,    -1,    -1,    -1,    -1,    -1,   531,    -1,    -1,
     3573     534,   535,    -1,    -1,    -1,    -1,    66,    -1,    -1,    -1,
     3574      -1,    -1,    72,    -1,   831,   832,    76,    -1,   835,    79,
     3575      80,    81,    82,    83,    84,    -1,    86,    87,    -1,    -1,
     3576      -1,    -1,   849,    -1,    94,    -1,    -1,    -1,    -1,    -1,
     3577      -1,    -1,    -1,    -1,    -1,   579,   580,    -1,    -1,   109,
     3578      -1,   111,    -1,    -1,    -1,    -1,    -1,    -1,   118,   119,
     3579     120,   121,   122,   123,   598,   599,    -1,    -1,    -1,    -1,
     3580      -1,    -1,   889,    -1,    -1,   609,   893,   611,   612,    -1,
     3581      -1,    -1,    -1,    -1,   618,    -1,    -1,    -1,  1335,    -1,
     3582    1337,    -1,    -1,    -1,   628,   629,   283,    -1,   285,   286,
     3583     634,    -1,    -1,  1350,    -1,  1352,   293,   294,    -1,   643,
     3584     644,   645,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     3585      -1,   308,   309,  1370,    -1,    -1,    -1,    -1,   662,    -1,
     3586      -1,    -1,    -1,   667,   668,    -1,    -1,   671,   672,  1386,
     3587    1387,    -1,    -1,    -1,   678,    -1,    -1,    -1,    -1,    -1,
     3588      -1,  1398,   969,    -1,  1401,    -1,    -1,    -1,    -1,   346,
     3589      -1,    -1,   696,   697,   698,    -1,   700,    -1,   985,   986,
     3590     704,    -1,    -1,    -1,    -1,   992,  1423,    -1,    -1,    -1,
     3591      -1,   998,    -1,    -1,  1001,  1432,  1003,    -1,  1435,    -1,
     3592    1437,  1438,  1439,    -1,    -1,   382,    -1,    -1,    -1,    -1,
     3593      -1,    -1,   736,   737,    -1,    -1,    -1,  1024,    -1,    -1,
     3594      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  1035,    -1,
     3595      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     3596      -1,    -1,  1479,    -1,  1481,    -1,    -1,  1484,   772,   773,
     3597    1057,    -1,  1059,   777,   778,    -1,    -1,    -1,    -1,    -1,
     3598      -1,    -1,  1499,    -1,    -1,    -1,    -1,  1074,  1075,    -1,
     3599      10,    11,    12,    13,    14,    15,    16,    17,    18,    19,
     3600      20,    21,    22,    23,    24,    25,    26,    27,  1095,    -1,
     3601      30,    31,    32,    -1,    -1,   819,    -1,    -1,    -1,    39,
     3602      -1,    -1,    -1,   827,    -1,    -1,    -1,    -1,    -1,    -1,
     3603     834,   835,    -1,    -1,   838,    -1,   840,    -1,    -1,    -1,
     3604      -1,    -1,    -1,    -1,    -1,    -1,   850,    67,    -1,    -1,
     3605      -1,    -1,    -1,    -1,    74,    75,  1143,    -1,    -1,    -1,
     3606      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     3607      -1,    -1,    -1,    -1,    -1,  1162,    -1,    -1,    -1,    -1,
     3608      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     3609    1177,  1178,    -1,    37,    38,    -1,    40,    -1,   118,   119,
     3610      -1,   558,   559,   560,   561,   562,   563,   564,   565,   566,
     3611     567,   568,   569,   570,   571,   572,   573,   574,   575,   923,
     3612      -1,    -1,    66,    -1,    -1,    -1,    -1,   931,    72,    -1,
     3613      -1,    -1,    76,   937,    -1,    79,    80,    81,    82,    83,
     3614      84,   945,    86,    87,    -1,    -1,    -1,    -1,    -1,    -1,
     3615      94,    -1,    -1,    -1,   958,   959,    -1,    -1,    -1,    -1,
     3616      -1,    -1,    -1,    -1,    -1,   109,    -1,    -1,    -1,    -1,
     3617      -1,    -1,  1259,    -1,   118,   119,   120,   121,   122,   123,
     3618      -1,   985,    -1,    -1,    -1,    -1,    -1,   991,    -1,    -1,
     3619      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     3620      -1,    -1,    -1,    -1,    -1,    -1,  1010,  1011,    -1,    -1,
     3621      -1,    -1,    -1,    -1,    -1,    -1,    -1,  1021,    -1,    -1,
     3622      -1,    -1,    -1,  1027,  1028,    -1,  1030,  1031,  1032,    -1,
     3623      -1,    -1,    -1,  1320,    -1,  1322,    -1,    -1,  1042,  1043,
     3624      -1,    -1,   699,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     3625      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     3626      -1,    -1,    -1,    -1,   721,    -1,    -1,    -1,    -1,     4,
    37743627       5,     6,     7,     8,     9,    10,    11,    12,    13,    14,
    37753628      15,    16,    17,    18,    19,    20,    21,    22,    23,    24,
    3776       25,    26,    27,    -1,    -1,    30,    31,    32,    33,    -1,
    3777       -1,    36,    -1,    -1,    39,    40,    -1,    -1,    -1,    -1,
     3629      25,    26,    27,    -1,    -1,    30,    31,    32,    -1,  1103,
     3630    1104,  1105,    37,    38,    39,    40,    -1,    -1,    -1,    -1,
     3631      -1,    -1,    -1,  1117,    -1,    -1,    -1,    -1,    -1,    -1,
     3632      -1,  1408,    -1,   780,    -1,    -1,    -1,    -1,    -1,    -1,
     3633      -1,    66,    67,    -1,    69,    -1,    71,    72,    -1,    74,
     3634      75,    76,    -1,    -1,    79,    80,    81,    82,    83,    84,
     3635      -1,    86,    87,    -1,    -1,   812,    -1,    -1,  1162,    94,
     3636      -1,    -1,    37,    38,    -1,    40,    -1,    -1,    -1,    -1,
     3637      -1,    -1,    -1,    -1,   109,    -1,   111,    -1,    -1,    -1,
     3638      -1,   116,    -1,   118,   119,   120,   121,   122,   123,    -1,
     3639      -1,    66,    -1,    -1,    -1,    -1,    -1,    72,    -1,    -1,
     3640      -1,    76,    -1,  1490,    79,    80,    81,    82,    83,    84,
     3641      -1,    86,    87,    -1,    -1,    -1,    -1,    -1,  1222,    94,
    37783642      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3779       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    64,
    3780       -1,    -1,    67,    -1,    69,    -1,    71,    72,    -1,    74,
    3781       75,    76,    -1,    -1,    -1,    -1,    -1,    -1,    83,    84,
    3782       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    94,
    3783       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3784       -1,    -1,    -1,    -1,   109,    -1,   111,    -1,    -1,    -1,
    3785      115,    -1,    -1,   118,   119,     3,     4,     5,     6,     7,
     3643      -1,    -1,    -1,    -1,   109,    -1,    -1,    -1,    -1,  1243,
     3644      -1,    -1,    -1,   118,   119,   120,   121,   122,   123,    -1,
     3645      -1,    -1,    -1,    -1,    -1,  1542,    -1,    -1,    -1,    -1,
     3646      -1,    -1,    -1,     3,     4,     5,     6,     7,     8,     9,
     3647      10,    11,    12,    13,    14,    15,    16,    17,    18,    19,
     3648      20,    21,    22,    23,    24,    25,    26,    27,  1292,  1293,
     3649      30,    31,    32,    33,    -1,    -1,    36,    37,    38,    39,
     3650      40,    41,    -1,    43,    -1,    -1,    46,    47,    48,    49,
     3651      50,    51,    52,    53,    -1,    -1,    -1,    57,    -1,    -1,
     3652     977,    61,    62,    -1,    64,    -1,    66,    67,    -1,    69,
     3653      -1,    71,    72,    -1,    74,    75,    76,    -1,    -1,    79,
     3654      80,    81,    82,    83,    84,    -1,    86,    87,    -1,    -1,
     3655      -1,  1008,    -1,    -1,    94,    -1,    -1,    -1,    -1,    -1,
     3656      -1,    -1,    -1,    -1,  1021,    -1,    -1,    -1,    -1,   109,
     3657      -1,   111,    -1,    -1,   114,    -1,    -1,    -1,   118,   119,
     3658     120,   121,   122,   123,    -1,    -1,    -1,    -1,   128,    -1,
     3659      -1,    -1,   132,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     3660      -1,    -1,    -1,    -1,    -1,  1062,    -1,    -1,    -1,    -1,
     3661      -1,    -1,     0,  1417,    -1,     3,     4,     5,     6,     7,
    37863662       8,     9,    10,    11,    12,    13,    14,    15,    16,    17,
    37873663      18,    19,    20,    21,    22,    23,    24,    25,    26,    27,
    37883664      -1,    -1,    30,    31,    32,    33,    -1,    -1,    36,    -1,
    37893665      -1,    39,    40,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3790       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3791       -1,    -1,    -1,    -1,    -1,    -1,    64,    -1,    -1,    67,
     3666      -1,    -1,    37,    38,    -1,    40,    -1,    -1,    -1,    -1,
     3667      -1,    -1,    -1,    -1,    -1,    -1,    64,    -1,  1135,    67,
    37923668      -1,    69,    -1,    71,    72,    -1,    74,    75,    76,    -1,
    3793       -1,    -1,    -1,    -1,    -1,    83,    84,    -1,    -1,    -1,
    3794       -1,    -1,    -1,    -1,    -1,    -1,    94,    -1,    -1,    -1,
    3795       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3796       -1,   109,    -1,   111,    -1,    -1,    -1,    -1,    -1,    -1,
    3797      118,   119,     3,     4,     5,     6,     7,     8,     9,    10,
    3798       11,    12,    13,    14,    15,    16,    17,    18,    19,    20,
    3799       21,    22,    23,    24,    25,    26,    27,    -1,    -1,    30,
    3800       31,    32,    -1,    -1,    -1,    -1,    -1,    -1,    39,    -1,
    3801       10,    11,    12,    13,    14,    15,    16,    17,    18,    19,
    3802       20,    21,    22,    23,    24,    25,    26,    27,    -1,    -1,
    3803       30,    31,    32,    33,    34,    35,    67,    -1,    69,    39,
    3804       71,    72,    -1,    74,    75,    76,    -1,    -1,    -1,    -1,
    3805       -1,    -1,    83,    84,    -1,    -1,    -1,    -1,    -1,    -1,
    3806       -1,    -1,    -1,    94,    -1,    -1,    -1,    67,    -1,    -1,
    3807       -1,    -1,    -1,    -1,    74,    75,    -1,    -1,   109,    -1,
    3808      111,    -1,    -1,    -1,    -1,    -1,    -1,   118,   119,     3,
     3669      -1,    66,    -1,    -1,    -1,    83,    84,    72,    -1,    -1,
     3670      -1,    76,    -1,  1507,    79,    80,    81,    82,    83,    84,
     3671      -1,    86,    87,    -1,    -1,    -1,    -1,    -1,    -1,    94,
     3672      -1,   109,    -1,   111,    -1,    -1,    -1,    -1,  1532,  1533,
     3673     118,   119,    -1,    -1,   109,    -1,  1193,  1194,    -1,    -1,
     3674      -1,    -1,    -1,   118,   119,   120,   121,   122,   123,    -1,
     3675      -1,    -1,    -1,  1557,     3,     4,     5,     6,     7,     8,
     3676       9,    10,    11,    12,    13,    14,    15,    16,    17,    18,
     3677      19,    20,    21,    22,    23,    24,    25,    26,    27,    -1,
     3678      -1,    30,    31,    32,    33,    -1,    -1,    36,    37,    38,
     3679      39,    40,    10,    11,    12,    13,    14,    15,    16,    17,
     3680      18,    19,    20,    21,    22,    23,    24,    25,    26,    27,
     3681      -1,    -1,    30,    31,    32,    -1,    -1,    66,    67,    -1,
     3682      69,    39,    71,    72,    -1,    74,    75,    76,    -1,    -1,
     3683      79,    80,    81,    82,    83,    84,    -1,    86,    87,    -1,
     3684      -1,    -1,    -1,    -1,    -1,    94,    -1,    -1,    -1,    67,
     3685      -1,    -1,    -1,    -1,    72,    -1,    74,    75,    -1,    -1,
     3686     109,    -1,   111,    -1,    -1,    83,    84,    -1,    -1,   118,
     3687     119,   120,   121,   122,   123,    -1,    -1,    -1,    -1,    -1,
     3688      -1,    -1,    -1,   132,    -1,    -1,    -1,    -1,    -1,     3,
    38093689       4,     5,     6,     7,     8,     9,    10,    11,    12,    13,
    38103690      14,    15,    16,    17,    18,    19,    20,    21,    22,    23,
    38113691      24,    25,    26,    27,    -1,    -1,    30,    31,    32,    33,
    3812       -1,    -1,    36,    -1,    -1,    39,    -1,    -1,    -1,    -1,
     3692      -1,    -1,    36,    37,    38,    39,    40,    -1,    -1,    -1,
     3693      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     3694      -1,    -1,    -1,    -1,    -1,    -1,    -1,  1404,    -1,    -1,
     3695      -1,    -1,    66,    67,    -1,    69,    -1,    71,    72,    -1,
     3696      74,    75,    76,    -1,  1421,    79,    80,    81,    82,    83,
     3697      84,    -1,    86,    87,    -1,    -1,    -1,    -1,    -1,    -1,
     3698      94,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     3699      -1,    -1,    -1,    -1,    -1,   109,    -1,   111,    -1,    -1,
     3700      -1,    -1,    -1,    -1,   118,   119,   120,   121,   122,   123,
     3701      -1,    -1,    -1,     4,     5,     6,     7,     8,     9,    10,
     3702      11,    12,    13,    14,    15,    16,    17,    18,    19,    20,
     3703      21,    22,    23,    24,    25,    26,    27,  1494,  1495,    30,
     3704      31,    32,    -1,    -1,    -1,    -1,    37,    38,    39,    40,
     3705      10,    11,    12,    13,    14,    15,    16,    17,    18,    19,
     3706      20,    21,    22,    23,    24,    25,    26,    27,    -1,    -1,
     3707      30,    31,    32,    -1,    -1,    66,    67,    -1,    69,    39,
     3708      71,    72,    -1,    74,    75,    76,    -1,    -1,    79,    80,
     3709      81,    82,    83,    84,    -1,    86,    87,    -1,    -1,    -1,
     3710      -1,    -1,    -1,    94,    -1,    -1,    -1,    67,    -1,    -1,
     3711      -1,    -1,    -1,    -1,    74,    75,    -1,    -1,   109,    -1,
     3712     111,    -1,    -1,    -1,    -1,    -1,    -1,   118,   119,   120,
     3713     121,   122,   123,     4,     5,     6,     7,     8,     9,    10,
     3714      11,    12,    13,    14,    15,    16,    17,    18,    19,    20,
     3715      21,    22,    23,    24,    25,    26,    27,    -1,    -1,    30,
     3716      31,    32,    -1,    -1,    -1,    -1,    37,    38,    39,    40,
     3717      10,    11,    12,    13,    14,    15,    16,    17,    18,    19,
     3718      20,    21,    22,    23,    24,    25,    26,    27,    -1,    -1,
     3719      30,    31,    32,    -1,    -1,    66,    67,    -1,    69,    39,
     3720      71,    72,    -1,    74,    75,    76,    -1,    -1,    79,    80,
     3721      81,    82,    83,    84,    -1,    86,    87,    -1,    -1,    -1,
     3722      -1,    -1,    -1,    94,    -1,    -1,    -1,    67,    -1,    -1,
     3723      -1,    -1,    -1,    -1,    74,    75,    -1,    -1,   109,    -1,
     3724     111,    -1,    -1,    -1,    -1,    -1,    -1,   118,   119,   120,
     3725     121,   122,   123,     4,     5,     6,     7,     8,     9,    10,
     3726      11,    12,    13,    14,    15,    16,    17,    18,    19,    20,
     3727      21,    22,    23,    24,    25,    26,    27,    -1,    -1,    30,
     3728      31,    32,    -1,    -1,    -1,    -1,    37,    38,    39,    40,
    38133729      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    38143730      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3815       -1,    -1,    -1,    67,    -1,    69,    -1,    71,    -1,    -1,
    3816       74,    75,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     3731      -1,    -1,    -1,    -1,    -1,    66,    67,    -1,    69,    -1,
     3732      71,    72,    -1,    74,    75,    76,    -1,    -1,    79,    80,
     3733      81,    82,    83,    84,    -1,    86,    87,    -1,    -1,    -1,
     3734      -1,    -1,    -1,    94,    -1,    -1,    -1,    -1,    -1,    -1,
     3735      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   109,    -1,
     3736     111,    -1,    -1,    -1,    -1,    -1,    -1,   118,   119,   120,
     3737     121,   122,   123,     4,     5,     6,     7,     8,     9,    10,
     3738      11,    12,    13,    14,    15,    16,    17,    18,    19,    20,
     3739      21,    22,    23,    24,    25,    26,    27,    -1,    -1,    30,
     3740      31,    32,    -1,    -1,    -1,    -1,    37,    38,    39,    40,
    38173741      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3818       94,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3819       -1,    -1,    -1,    -1,    -1,    -1,    -1,   111,    -1,    -1,
     3742      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     3743      -1,    -1,    -1,    -1,    -1,    66,    67,    -1,    69,    -1,
     3744      71,    72,    -1,    74,    75,    76,    -1,    -1,    79,    80,
     3745      81,    82,    83,    84,    -1,    86,    87,    -1,    -1,    -1,
     3746      -1,    -1,    -1,    94,    -1,    -1,    -1,    -1,    -1,    -1,
     3747      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   109,    -1,
     3748     111,    -1,    -1,    -1,    -1,    -1,    -1,   118,   119,   120,
     3749     121,   122,   123,     3,     4,     5,     6,     7,     8,     9,
     3750      10,    11,    12,    13,    14,    15,    16,    17,    18,    19,
     3751      20,    21,    22,    23,    24,    25,    26,    27,    -1,    -1,
     3752      30,    31,    32,    33,    -1,    -1,    36,    -1,    -1,    39,
     3753      40,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     3754      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     3755      -1,    -1,    -1,    -1,    64,    -1,    -1,    67,    -1,    69,
     3756      -1,    71,    72,    -1,    74,    75,    76,    -1,    -1,    -1,
     3757      -1,    -1,    -1,    83,    84,    -1,    -1,    -1,    -1,    -1,
     3758      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     3759      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   109,
     3760      -1,   111,    -1,    -1,    -1,   115,    -1,    -1,   118,   119,
     3761       3,     4,     5,     6,     7,     8,     9,    10,    11,    12,
     3762      13,    14,    15,    16,    17,    18,    19,    20,    21,    22,
     3763      23,    24,    25,    26,    27,    -1,    -1,    30,    31,    32,
     3764      33,    -1,    -1,    36,    -1,    -1,    39,    40,    -1,    -1,
     3765      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     3766      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     3767      -1,    64,    -1,    -1,    67,    -1,    69,    -1,    71,    72,
     3768      -1,    74,    75,    76,    -1,    -1,    -1,    -1,    -1,    -1,
     3769      83,    84,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     3770      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     3771      -1,    -1,    -1,    -1,    -1,    -1,   109,    -1,   111,    -1,
     3772      -1,    -1,    -1,    -1,    -1,   118,   119,     3,     4,     5,
     3773       6,     7,     8,     9,    10,    11,    12,    13,    14,    15,
     3774      16,    17,    18,    19,    20,    21,    22,    23,    24,    25,
     3775      26,    27,    28,    -1,    30,    31,    32,    33,    -1,    -1,
     3776      36,    -1,    -1,    39,    -1,    -1,    -1,    -1,    -1,    -1,
     3777      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     3778      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     3779      -1,    67,    -1,    69,    -1,    71,    -1,    -1,    74,    75,
     3780      -1,    -1,    78,     3,     4,     5,     6,     7,     8,     9,
     3781      10,    11,    12,    13,    14,    15,    16,    17,    18,    19,
     3782      20,    21,    22,    23,    24,    25,    26,    27,    -1,    -1,
     3783      30,    31,    32,    33,    -1,   111,    36,    -1,    -1,    39,
     3784      -1,    -1,   118,   119,    -1,    -1,    -1,    -1,    -1,    -1,
     3785      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     3786      -1,    -1,    -1,    -1,    -1,    -1,    -1,    67,    -1,    69,
     3787      -1,    71,    -1,    -1,    74,    75,     3,     4,     5,     6,
     3788       7,     8,     9,    10,    11,    12,    13,    14,    15,    16,
     3789      17,    18,    19,    20,    21,    22,    23,    24,    25,    26,
     3790      27,    -1,    -1,    30,    31,    32,    -1,    -1,    -1,    -1,
     3791      -1,   111,    39,    -1,    -1,    -1,    -1,    -1,   118,   119,
     3792      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     3793      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     3794      67,    -1,    69,    -1,    71,    -1,    -1,    74,    75,    -1,
     3795       4,     5,     6,     7,     8,     9,    10,    11,    12,    13,
     3796      14,    15,    16,    17,    18,    19,    20,    21,    22,    23,
     3797      24,    25,    26,    27,    -1,    -1,    30,    31,    32,    -1,
     3798      -1,    -1,    -1,    -1,   111,    39,    -1,    -1,    -1,    -1,
     3799      -1,   118,   119,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     3800      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     3801      -1,    -1,    -1,    67,    -1,    69,    -1,    71,    72,    -1,
     3802      74,    75,    76,    -1,    -1,    -1,    -1,    -1,    -1,    83,
     3803      84,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     3804      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     3805      -1,    -1,    -1,    -1,    -1,   109,    -1,   111,    -1,    -1,
    38203806      -1,    -1,    -1,    -1,   118,   119,     4,     5,     6,     7,
    38213807       8,     9,    10,    11,    12,    13,    14,    15,    16,    17,
    38223808      18,    19,    20,    21,    22,    23,    24,    25,    26,    27,
    38233809      -1,    -1,    30,    31,    32,    -1,    -1,    -1,    -1,    -1,
    3824       -1,    39,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     3810      -1,    39,    -1,    -1,    -1,    -1,    10,    11,    12,    13,
     3811      14,    15,    16,    17,    18,    19,    20,    21,    22,    23,
     3812      24,    25,    26,    27,    -1,    -1,    30,    31,    32,    67,
     3813      -1,    69,    -1,    71,    -1,    39,    74,    75,    -1,     4,
     3814       5,     6,     7,     8,     9,    10,    11,    12,    13,    14,
     3815      15,    16,    17,    18,    19,    20,    21,    22,    23,    24,
     3816      25,    26,    27,    67,    -1,    30,    31,    32,    -1,    -1,
     3817      74,    75,   110,   111,    39,    -1,    -1,    -1,    -1,    -1,
     3818     118,   119,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    38253819      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3826       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    67,
    3827       -1,    69,    -1,    71,    72,    -1,    74,    75,    76,    -1,
    3828       -1,    -1,    -1,    -1,    -1,    83,    84,    -1,    -1,    -1,
    3829       -1,    -1,    -1,    -1,    -1,    -1,    94,    -1,    -1,    -1,
     3820      -1,    -1,    67,    -1,    69,   109,    71,   111,    -1,    74,
     3821      75,    -1,    -1,    -1,   118,   119,    -1,    -1,    -1,    -1,
    38303822      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3831       -1,   109,    -1,   111,    -1,    -1,    -1,    -1,    -1,    -1,
    3832      118,   119,     4,     5,     6,     7,     8,     9,    10,    11,
    3833       12,    13,    14,    15,    16,    17,    18,    19,    20,    21,
    3834       22,    23,    24,    25,    26,    27,    -1,    -1,    30,    31,
    3835       32,    -1,    -1,    -1,    -1,    -1,    -1,    39,    -1,    -1,
     3823      -1,    96,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     3824      -1,    -1,    -1,    -1,    -1,    -1,   111,    -1,    -1,    -1,
     3825      -1,    -1,    -1,   118,   119,     4,     5,     6,     7,     8,
     3826       9,    10,    11,    12,    13,    14,    15,    16,    17,    18,
     3827      19,    20,    21,    22,    23,    24,    25,    26,    27,    -1,
     3828      -1,    30,    31,    32,    -1,    -1,    -1,    -1,    -1,    -1,
     3829      39,    -1,    -1,    -1,    10,    11,    12,    13,    14,    15,
     3830      16,    17,    18,    19,    20,    21,    22,    23,    24,    25,
     3831      26,    27,    -1,    -1,    30,    31,    32,    -1,    67,    -1,
     3832      69,    -1,    71,    39,    -1,    74,    75,    -1,    -1,    -1,
     3833      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     3834      -1,    -1,    -1,    -1,    -1,    -1,    -1,    96,    -1,    -1,
     3835      -1,    67,    -1,    -1,    -1,    -1,    72,    -1,    74,    75,
     3836      76,    -1,   111,    -1,    -1,    -1,    -1,    83,    84,   118,
     3837     119,     4,     5,     6,     7,     8,     9,    10,    11,    12,
     3838      13,    14,    15,    16,    17,    18,    19,    20,    21,    22,
     3839      23,    24,    25,    26,    27,   111,    -1,    30,    31,    32,
     3840      -1,    -1,   118,   119,    -1,    -1,    39,    -1,    -1,    -1,
    38363841      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    38373842      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3838       -1,    -1,    -1,    -1,    -1,    67,    -1,    69,    -1,    71,
    3839       -1,    -1,    74,    75,    -1,    -1,    -1,    -1,    -1,    -1,
     3843      -1,    -1,    -1,    -1,    67,    -1,    69,    -1,    71,    -1,
     3844      -1,    74,    75,    -1,     4,     5,     6,     7,     8,     9,
     3845      10,    11,    12,    13,    14,    15,    16,    17,    18,    19,
     3846      20,    21,    22,    23,    24,    25,    26,    27,    -1,    -1,
     3847      30,    31,    32,    -1,    -1,    -1,    -1,    -1,   111,    39,
     3848      -1,    -1,    -1,    -1,    -1,   118,   119,    -1,    -1,    -1,
    38403849      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3841       -1,    -1,    94,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3842       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   110,   111,
    3843       -1,    -1,    -1,    -1,    -1,    -1,   118,   119,     4,     5,
    3844        6,     7,     8,     9,    10,    11,    12,    13,    14,    15,
    3845       16,    17,    18,    19,    20,    21,    22,    23,    24,    25,
    3846       26,    27,    -1,    -1,    30,    31,    32,    -1,    -1,    -1,
    3847       -1,    -1,    -1,    39,    -1,    -1,    -1,    -1,    -1,    -1,
     3850      -1,    -1,    -1,    -1,    -1,    -1,    -1,    67,    -1,    69,
     3851      -1,    71,    -1,    -1,    74,    75,    -1,     4,     5,     6,
     3852       7,     8,     9,    10,    11,    12,    13,    14,    15,    16,
     3853      17,    18,    19,    20,    21,    22,    23,    24,    25,    26,
     3854      27,    -1,    -1,    30,    31,    32,    -1,    -1,    -1,    -1,
     3855      -1,   111,    39,    -1,    -1,    -1,    -1,    -1,   118,   119,
    38483856      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    38493857      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3850       -1,    67,    -1,    69,    -1,    71,    -1,    -1,    74,    75,
    3851       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3852       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    94,    -1,
    3853       96,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3854       -1,    -1,    -1,    -1,    -1,   111,    -1,    -1,    -1,    -1,
    3855       -1,    -1,   118,   119,     4,     5,     6,     7,     8,     9,
    3856       10,    11,    12,    13,    14,    15,    16,    17,    18,    19,
    3857       20,    21,    22,    23,    24,    25,    26,    27,    -1,    -1,
    3858       30,    31,    32,    -1,    -1,    -1,    -1,    -1,    -1,    39,
    3859       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3860       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3861       -1,    -1,    -1,    -1,    -1,    -1,    -1,    67,    -1,    69,
    3862       -1,    71,    -1,    -1,    74,    75,    -1,    -1,    -1,    -1,
    3863       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3864       -1,    -1,    -1,    -1,    94,    -1,    96,    -1,    -1,    -1,
    3865       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3866       -1,   111,    -1,    -1,    -1,    -1,    -1,    -1,   118,   119,
     3858      67,    -1,    69,    -1,    71,    -1,    -1,    74,    75,    -1,
    38673859       4,     5,     6,     7,     8,     9,    10,    11,    12,    13,
    38683860      14,    15,    16,    17,    18,    19,    20,    21,    22,    23,
    38693861      24,    25,    26,    27,    -1,    -1,    30,    31,    32,    -1,
    3870       -1,    -1,    -1,    -1,    -1,    39,    -1,    -1,    -1,    -1,
    3871       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     3862      -1,    -1,    -1,    -1,   111,    39,    -1,    -1,    -1,    -1,
     3863      -1,   118,   119,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    38723864      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    38733865      -1,    -1,    -1,    67,    -1,    69,    -1,    71,    -1,    -1,
    3874       74,    75,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3875       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3876       94,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3877       -1,    -1,    -1,    -1,    -1,    -1,    -1,   111,    -1,    -1,
    3878       -1,    -1,    -1,    -1,   118,   119,     4,     5,     6,     7,
    3879        8,     9,    10,    11,    12,    13,    14,    15,    16,    17,
    3880       18,    19,    20,    21,    22,    23,    24,    25,    26,    27,
    3881       -1,    -1,    30,    31,    32,    -1,    -1,    -1,    -1,    -1,
    3882       -1,    39,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3883       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3884       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    67,
    3885       -1,    69,    -1,    71,    -1,    -1,    74,    75,    -1,    -1,
    3886       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3887       -1,    -1,    -1,    -1,    -1,    -1,    94,    -1,    -1,    -1,
    3888       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3889       -1,    -1,    -1,   111,    -1,    -1,    -1,    -1,    -1,    -1,
    3890      118,   119,     4,     5,     6,     7,     8,     9,    10,    11,
    3891       12,    13,    14,    15,    16,    17,    18,    19,    20,    21,
    3892       22,    23,    24,    25,    26,    27,    -1,    -1,    30,    31,
    3893       32,    -1,    -1,    -1,    -1,    -1,    -1,    39,    -1,    -1,
    3894       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3895       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3896       -1,    -1,    -1,    -1,    -1,    67,    -1,    69,    -1,    71,
    3897       -1,    -1,    74,    75,    -1,    -1,    -1,    -1,    -1,    -1,
    3898       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3899       -1,    -1,    94,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3900       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   111,
    3901       -1,    -1,    -1,    -1,    -1,    -1,   118,   119,     4,     5,
    3902        6,     7,     8,     9,    10,    11,    12,    13,    14,    15,
    3903       16,    17,    18,    19,    20,    21,    22,    23,    24,    25,
    3904       26,    27,    -1,    -1,    30,    31,    32,    -1,    -1,    -1,
    3905       -1,    -1,    -1,    39,    -1,    -1,    -1,    -1,    -1,    -1,
    3906       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3907       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3908       -1,    67,    -1,    69,    -1,    71,    -1,    -1,    74,    75,
    3909       10,    11,    12,    13,    14,    15,    16,    17,    18,    19,
    3910       20,    21,    22,    23,    24,    25,    26,    27,    94,    -1,
    3911       30,    31,    32,    -1,    -1,    -1,    -1,    37,    38,    39,
    3912       40,    -1,    -1,    -1,    -1,   111,    -1,    -1,    -1,    -1,
    3913       -1,    -1,   118,   119,    -1,    -1,    -1,    -1,    -1,    -1,
    3914       -1,    -1,    -1,    -1,    -1,    -1,    66,    67,    -1,    -1,
    3915       -1,    -1,    72,    -1,    74,    75,    76,    -1,    -1,    79,
    3916       80,    81,    82,    83,    84,    -1,    86,    87,    -1,    -1,
    3917       -1,    -1,    -1,    -1,    94,    -1,    -1,    -1,    -1,    -1,
    3918       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   109,
    3919       -1,   111,    -1,    -1,   114,    -1,    -1,    -1,   118,   119,
    3920      120,   121,   122,   123,    10,    11,    12,    13,    14,    15,
    3921       16,    17,    18,    19,    20,    21,    22,    23,    24,    25,
    3922       26,    27,    -1,    -1,    30,    31,    32,    -1,    -1,    -1,
    3923       -1,    37,    38,    39,    40,    -1,    -1,    -1,    -1,    -1,
    3924       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3925       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3926       66,    67,    -1,    -1,    -1,    -1,    72,    -1,    74,    75,
    3927       76,    -1,    -1,    79,    80,    81,    82,    83,    84,    -1,
    3928       86,    87,    -1,    -1,    -1,    -1,    -1,    -1,    94,    -1,
    3929       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3930       -1,    -1,    -1,   109,   110,   111,    -1,    -1,    -1,    -1,
    3931       -1,    -1,   118,   119,   120,   121,   122,   123,    10,    11,
    3932       12,    13,    14,    15,    16,    17,    18,    19,    20,    21,
    3933       22,    23,    24,    25,    26,    27,    -1,    -1,    30,    31,
    3934       32,    -1,    -1,    -1,    -1,    37,    38,    39,    40,    -1,
    3935       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3936       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3937       -1,    -1,    -1,    -1,    66,    67,    -1,    -1,    -1,    -1,
    3938       72,    -1,    74,    75,    76,    -1,    -1,    79,    80,    81,
    3939       82,    83,    84,    -1,    86,    87,    -1,    -1,    -1,    -1,
    3940       -1,    -1,    94,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3941       -1,    -1,    -1,    -1,    -1,    -1,    -1,   109,    -1,   111,
    3942       -1,    -1,    -1,    -1,    -1,    -1,   118,   119,   120,   121,
    3943      122,   123,    10,    11,    12,    13,    14,    15,    16,    17,
     3866      74,    75,    10,    11,    12,    13,    14,    15,    16,    17,
    39443867      18,    19,    20,    21,    22,    23,    24,    25,    26,    27,
    39453868      -1,    -1,    30,    31,    32,    -1,    -1,    -1,    -1,    37,
    3946       38,    39,    40,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3947       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     3869      38,    39,    40,    -1,    -1,    -1,    -1,   111,    -1,    -1,
     3870      -1,    -1,    -1,    -1,   118,   119,    -1,    -1,    -1,    -1,
    39483871      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    66,    67,
    39493872      -1,    -1,    -1,    -1,    72,    -1,    74,    75,    76,    -1,
     
    39513874      -1,    -1,    -1,    -1,    -1,    -1,    94,    -1,    -1,    -1,
    39523875      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3953       -1,   109,    -1,   111,    -1,    -1,    -1,    -1,    -1,    -1,
     3876      -1,   109,    -1,   111,    -1,    -1,   114,    -1,    -1,    -1,
    39543877     118,   119,   120,   121,   122,   123,    10,    11,    12,    13,
    39553878      14,    15,    16,    17,    18,    19,    20,    21,    22,    23,
    39563879      24,    25,    26,    27,    -1,    -1,    30,    31,    32,    -1,
    3957       -1,    -1,    -1,    37,    38,    39,    40,    -1,    -1,    -1,
     3880      -1,    -1,    -1,    37,    38,    39,    40,    10,    11,    12,
     3881      13,    14,    15,    16,    17,    18,    19,    20,    21,    22,
     3882      23,    24,    25,    26,    27,    -1,    -1,    30,    31,    32,
     3883      -1,    -1,    66,    67,    -1,    -1,    39,    -1,    72,    -1,
     3884      74,    75,    76,    -1,    -1,    79,    80,    81,    82,    83,
     3885      84,    -1,    86,    87,    -1,    -1,    -1,    -1,    -1,    -1,
     3886      94,    -1,    -1,    -1,    67,    -1,    -1,    -1,    -1,    72,
     3887      -1,    74,    75,    -1,    -1,   109,   110,   111,    -1,    -1,
     3888      83,    84,    -1,    -1,   118,   119,   120,   121,   122,   123,
     3889      10,    11,    12,    13,    14,    15,    16,    17,    18,    19,
     3890      20,    21,    22,    23,    24,    25,    26,    27,   111,    -1,
     3891      30,    31,    32,    -1,    -1,   118,   119,    37,    38,    39,
     3892      40,    10,    11,    12,    13,    14,    15,    16,    17,    18,
     3893      19,    20,    21,    22,    23,    24,    25,    26,    27,    -1,
     3894      -1,    30,    31,    32,    -1,    -1,    66,    67,    -1,    -1,
     3895      39,    40,    72,    -1,    74,    75,    76,    -1,    -1,    79,
     3896      80,    81,    82,    83,    84,    -1,    86,    87,    -1,    -1,
     3897      -1,    -1,    -1,    -1,    94,    -1,    -1,    -1,    67,    -1,
     3898      -1,    -1,    -1,    -1,    -1,    74,    75,    -1,    -1,   109,
     3899      -1,   111,    -1,    -1,    -1,    -1,    -1,    -1,   118,   119,
     3900     120,   121,   122,   123,    10,    11,    12,    13,    14,    15,
     3901      16,    17,    18,    19,    20,    21,    22,    23,    24,    25,
     3902      26,    27,   111,    -1,    30,    31,    32,    -1,    -1,   118,
     3903     119,    37,    38,    39,    40,    10,    11,    12,    13,    14,
     3904      15,    16,    17,    18,    19,    20,    21,    22,    23,    24,
     3905      25,    26,    27,    -1,    -1,    30,    31,    32,    -1,    -1,
     3906      66,    67,    -1,    -1,    39,    -1,    72,    -1,    74,    75,
     3907      76,    -1,    -1,    79,    80,    81,    82,    83,    84,    -1,
     3908      86,    87,    -1,    -1,    -1,    -1,    -1,    -1,    94,    -1,
     3909      -1,    -1,    67,    -1,    -1,    -1,    -1,    -1,    -1,    74,
     3910      75,    -1,    -1,   109,    -1,   111,    -1,    -1,    -1,    -1,
     3911      -1,    -1,   118,   119,   120,   121,   122,   123,    10,    11,
     3912      12,    13,    14,    15,    16,    17,    18,    19,    20,    21,
     3913      22,    23,    24,    25,    26,    27,   111,    -1,    30,    31,
     3914      32,    -1,    -1,   118,   119,    37,    38,    39,    40,    10,
     3915      11,    12,    13,    14,    15,    16,    17,    18,    19,    20,
     3916      21,    22,    23,    24,    25,    26,    27,    -1,    -1,    30,
     3917      31,    32,    -1,    -1,    66,    67,    -1,    -1,    39,    -1,
     3918      72,    -1,    74,    75,    76,    -1,    -1,    79,    80,    81,
     3919      82,    83,    84,    -1,    86,    87,    -1,    -1,    -1,    -1,
     3920      -1,    -1,    94,    -1,    -1,    -1,    67,    -1,    -1,    -1,
     3921      -1,    -1,    -1,    74,    75,    -1,    -1,   109,    -1,   111,
     3922      -1,    -1,    -1,    -1,    -1,    -1,   118,   119,   120,   121,
     3923     122,   123,    10,    11,    12,    13,    14,    15,    16,    17,
     3924      18,    19,    20,    21,    22,    23,    24,    25,    26,    27,
     3925     111,    -1,    30,    31,    32,    -1,    -1,   118,   119,    37,
     3926      38,    39,    40,    -1,    10,    11,    12,    13,    14,    15,
     3927      16,    17,    18,    19,    20,    21,    22,    23,    24,    25,
     3928      26,    27,    28,    -1,    30,    31,    32,    -1,    66,    67,
     3929      -1,    -1,    -1,    39,    72,    -1,    74,    75,    76,    -1,
     3930      -1,    79,    80,    81,    82,    83,    84,    -1,    86,    87,
     3931      -1,    -1,    -1,    -1,    -1,    -1,    94,    -1,    -1,    -1,
     3932      -1,    67,    -1,    -1,    -1,    -1,    72,    -1,    74,    75,
     3933      76,   109,    78,   111,    -1,    -1,    -1,    83,    84,    -1,
     3934     118,   119,   120,   121,   122,   123,    10,    11,    12,    13,
     3935      14,    15,    16,    17,    18,    19,    20,    21,    22,    23,
     3936      24,    25,    26,    27,    -1,   111,    30,    31,    32,    -1,
     3937      -1,    -1,   118,   119,    -1,    39,    10,    11,    12,    13,
     3938      14,    15,    16,    17,    18,    19,    20,    21,    22,    23,
     3939      24,    25,    26,    27,    -1,    -1,    30,    31,    32,    -1,
     3940      -1,    -1,    -1,    67,    -1,    39,    -1,    -1,    72,    -1,
     3941      74,    75,    76,    -1,    -1,    -1,    -1,    -1,    -1,    83,
     3942      84,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     3943      -1,    -1,    -1,    67,    -1,    -1,    -1,    -1,    72,    -1,
     3944      74,    75,    76,    -1,    -1,   109,    -1,   111,    -1,    83,
     3945      84,    -1,    -1,    -1,   118,   119,    -1,    -1,    -1,    -1,
     3946      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     3947      -1,    -1,    -1,    -1,    -1,   109,    -1,   111,    -1,    -1,
     3948      -1,    -1,    -1,    -1,   118,   119,    10,    11,    12,    13,
     3949      14,    15,    16,    17,    18,    19,    20,    21,    22,    23,
     3950      24,    25,    26,    27,    -1,    -1,    30,    31,    32,    -1,
     3951      -1,    -1,    -1,    -1,    -1,    39,    10,    11,    12,    13,
     3952      14,    15,    16,    17,    18,    19,    20,    21,    22,    23,
     3953      24,    25,    26,    27,    28,    -1,    30,    31,    32,    -1,
     3954      -1,    -1,    -1,    67,    -1,    39,    -1,    -1,    72,    -1,
     3955      74,    75,    76,    -1,    -1,    -1,    -1,    -1,    -1,    83,
     3956      84,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     3957      -1,    -1,    -1,    67,    -1,    -1,    -1,    -1,    -1,    -1,
     3958      74,    75,    -1,    -1,    78,   109,    -1,   111,    -1,    -1,
     3959      -1,    -1,    -1,    -1,   118,   119,    -1,    -1,    10,    11,
     3960      12,    13,    14,    15,    16,    17,    18,    19,    20,    21,
     3961      22,    23,    24,    25,    26,    27,    -1,   111,    30,    31,
     3962      32,    -1,    -1,    -1,   118,   119,    -1,    39,    40,    10,
     3963      11,    12,    13,    14,    15,    16,    17,    18,    19,    20,
     3964      21,    22,    23,    24,    25,    26,    27,    -1,    -1,    30,
     3965      31,    32,    -1,    -1,    -1,    67,    -1,    -1,    39,    40,
     3966      -1,    -1,    74,    75,    -1,    -1,    -1,    10,    11,    12,
     3967      13,    14,    15,    16,    17,    18,    19,    20,    21,    22,
     3968      23,    24,    25,    26,    27,    -1,    67,    30,    31,    32,
     3969      -1,    -1,    -1,    74,    75,    -1,    39,    -1,    -1,   111,
     3970      -1,    -1,    -1,   115,    -1,    -1,   118,   119,    -1,    -1,
     3971      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     3972      -1,    -1,    -1,    -1,    67,    -1,    -1,    -1,    -1,    -1,
     3973     111,    74,    75,    -1,   115,    -1,    -1,   118,   119,    -1,
     3974      10,    11,    12,    13,    14,    15,    16,    17,    18,    19,
     3975      20,    21,    22,    23,    24,    25,    26,    27,    -1,    -1,
     3976      30,    31,    32,    -1,    -1,    -1,    -1,    -1,   111,    39,
     3977      -1,    -1,    -1,    -1,    -1,   118,   119,    -1,    10,    11,
     3978      12,    13,    14,    15,    16,    17,    18,    19,    20,    21,
     3979      22,    23,    24,    25,    26,    27,    -1,    67,    30,    31,
     3980      32,    -1,    -1,    -1,    74,    75,    -1,    39,    10,    11,
     3981      12,    13,    14,    15,    16,    17,    18,    19,    20,    21,
     3982      22,    23,    24,    25,    26,    27,    -1,    -1,    30,    31,
     3983      32,    -1,    -1,    -1,    -1,    67,    -1,    39,    -1,    -1,
     3984      -1,   111,    74,    75,    -1,    -1,    -1,    -1,   118,   119,
     3985      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     3986      -1,    -1,    -1,    -1,    -1,    67,    -1,    -1,    -1,    -1,
     3987      -1,    -1,    74,    75,    -1,    -1,    -1,    -1,    -1,   111,
     3988      -1,    -1,    -1,    -1,    -1,    -1,   118,   119,    -1,    -1,
     3989      10,    11,    12,    13,    14,    15,    16,    17,    18,    19,
     3990      20,    21,    22,    23,    24,    25,    26,    27,    -1,   111,
     3991      30,    31,    32,    -1,    -1,    -1,   118,   119,    -1,    39,
     3992      -1,    -1,     4,     5,     6,     7,     8,     9,    10,    11,
     3993      12,    13,    14,    15,    16,    17,    18,    19,    20,    21,
     3994      22,    23,    24,    25,    26,    27,    -1,    67,    30,    31,
     3995      32,    -1,    -1,    -1,    74,    75,    -1,    39,    -1,    -1,
    39583996      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    39593997      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3960       -1,    -1,    66,    67,    -1,    -1,    -1,    -1,    72,    -1,
    3961       74,    75,    76,    -1,    -1,    79,    80,    81,    82,    83,
    3962       84,    -1,    86,    87,    -1,    -1,    -1,    -1,    -1,    -1,
    3963       94,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3964       -1,    -1,    -1,    -1,    -1,   109,    -1,   111,    -1,    -1,
    3965       -1,    -1,    -1,    -1,   118,   119,   120,   121,   122,   123,
    3966       10,    11,    12,    13,    14,    15,    16,    17,    18,    19,
    3967       20,    21,    22,    23,    24,    25,    26,    27,    -1,    -1,
    3968       30,    31,    32,    -1,    -1,    -1,    -1,    37,    38,    39,
    3969       40,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     3998      -1,    -1,    -1,    -1,    -1,    67,    -1,    69,    -1,    71,
     3999      -1,   111,    74,    75,    -1,    -1,    -1,    -1,   118,   119,
     4000      37,    38,    -1,    40,    41,    -1,    43,    -1,    -1,    46,
     4001      47,    48,    49,    50,    51,    52,    53,    -1,    -1,    56,
     4002      57,    -1,    -1,    -1,    61,    62,    -1,    64,   110,    66,
     4003      -1,    -1,    -1,    -1,    -1,    72,    -1,    -1,    -1,    76,
     4004      -1,    -1,    79,    80,    81,    82,    83,    84,    -1,    86,
     4005      87,    -1,    -1,    -1,    -1,    -1,    -1,    94,    -1,    -1,
    39704006      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3971       -1,    -1,    -1,    -1,    -1,    -1,    66,    67,    -1,    -1,
    3972       -1,    -1,    72,    -1,    74,    75,    76,    -1,    -1,    79,
    3973       80,    81,    82,    83,    84,    -1,    86,    87,    -1,    -1,
    3974       -1,    -1,    -1,    -1,    94,    -1,    -1,    -1,    -1,    -1,
    3975       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   109,
    3976       -1,   111,    -1,    -1,    -1,    -1,    -1,    -1,   118,   119,
    3977      120,   121,   122,   123,     3,     4,     5,     6,     7,     8,
    3978        9,    10,    11,    12,    13,    14,    15,    16,    17,    18,
    3979       19,    20,    21,    22,    23,    24,    25,    26,    27,    -1,
    3980       -1,    30,    31,    32,    -1,    -1,    -1,    -1,    -1,    -1,
    3981       39,    -1,    -1,    -1,    10,    11,    12,    13,    14,    15,
    3982       16,    17,    18,    19,    20,    21,    22,    23,    24,    25,
    3983       26,    27,    28,    -1,    30,    31,    32,    -1,    67,    -1,
    3984       69,    -1,    71,    39,    -1,    74,    75,    -1,    -1,    -1,
    3985       -1,    -1,    10,    11,    12,    13,    14,    15,    16,    17,
    3986       18,    19,    20,    21,    22,    23,    24,    25,    26,    27,
    3987       -1,    67,    30,    31,    32,    -1,    72,    -1,    74,    75,
    3988       76,    39,    78,    -1,    -1,   114,    -1,    83,    84,    -1,
    3989       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    94,    -1,
    3990       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    67,
    3991       -1,    -1,    -1,    -1,    72,   111,    74,    75,    76,    -1,
    3992       -1,    -1,   118,   119,    -1,    83,    84,    -1,    -1,    -1,
    3993       -1,    -1,    -1,    -1,    -1,    -1,    94,    -1,    -1,    -1,
    3994       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    3995       -1,   109,    -1,   111,    -1,    -1,    -1,    -1,    -1,    -1,
    3996      118,   119,    10,    11,    12,    13,    14,    15,    16,    17,
    3997       18,    19,    20,    21,    22,    23,    24,    25,    26,    27,
    3998       -1,    -1,    30,    31,    32,    -1,    -1,    -1,    -1,    -1,
    3999       -1,    39,    10,    11,    12,    13,    14,    15,    16,    17,
    4000       18,    19,    20,    21,    22,    23,    24,    25,    26,    27,
    4001       -1,    -1,    30,    31,    32,    -1,    -1,    -1,    -1,    67,
    4002       -1,    39,    -1,    -1,    72,    -1,    74,    75,    76,    -1,
    4003       -1,    -1,    -1,    -1,    -1,    83,    84,    -1,    -1,    -1,
    4004       -1,    -1,    -1,    -1,    -1,    -1,    94,    -1,    -1,    67,
    4005       -1,    -1,    -1,    -1,    72,    -1,    74,    75,    76,    -1,
    4006       -1,   109,    -1,   111,    -1,    83,    84,    -1,    -1,    -1,
    4007      118,   119,    -1,    -1,    -1,    -1,    94,    -1,    -1,    -1,
    4008       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    4009       -1,   109,    -1,   111,    -1,    -1,    -1,    -1,    -1,    -1,
    4010      118,   119,    10,    11,    12,    13,    14,    15,    16,    17,
    4011       18,    19,    20,    21,    22,    23,    24,    25,    26,    27,
    4012       -1,    -1,    30,    31,    32,    -1,    -1,    -1,    -1,    -1,
    4013       -1,    39,    10,    11,    12,    13,    14,    15,    16,    17,
    4014       18,    19,    20,    21,    22,    23,    24,    25,    26,    27,
    4015       -1,    -1,    30,    31,    32,    -1,    -1,    -1,    -1,    67,
    4016       -1,    39,    -1,    -1,    72,    -1,    74,    75,    76,    -1,
    4017       -1,    -1,    -1,    -1,    -1,    83,    84,    -1,    -1,    -1,
    4018       -1,    -1,    -1,    -1,    -1,    -1,    94,    -1,    -1,    67,
    4019       -1,    -1,    -1,    -1,    72,    -1,    74,    75,    76,    -1,
    4020       -1,   109,    -1,   111,    -1,    83,    84,    -1,    -1,    -1,
    4021      118,   119,    -1,    -1,    -1,    -1,    94,    -1,    -1,    -1,
    4022       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    4023       -1,    -1,    -1,   111,    -1,    -1,    -1,    -1,    -1,    -1,
    4024      118,   119,    10,    11,    12,    13,    14,    15,    16,    17,
    4025       18,    19,    20,    21,    22,    23,    24,    25,    26,    27,
    4026       -1,    -1,    30,    31,    32,    -1,    -1,    -1,    -1,    -1,
    4027       -1,    39,    10,    11,    12,    13,    14,    15,    16,    17,
    4028       18,    19,    20,    21,    22,    23,    24,    25,    26,    27,
    4029       -1,    -1,    30,    31,    32,    -1,    -1,    -1,    -1,    67,
    4030       -1,    39,    40,    -1,    72,    -1,    74,    75,    -1,    -1,
    4031       -1,    -1,    -1,    -1,    -1,    83,    84,    -1,    -1,    -1,
    4032       -1,    -1,    -1,    -1,    -1,    -1,    94,    -1,    -1,    67,
    4033       -1,    -1,    -1,    -1,    -1,    -1,    74,    75,    -1,    -1,
    4034       -1,    -1,    -1,   111,    -1,    -1,    -1,    -1,    -1,    -1,
    4035      118,   119,    -1,    -1,    -1,    -1,    94,    -1,    -1,    -1,
    4036       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    4037       -1,    -1,    -1,   111,    -1,    -1,    -1,   115,    -1,    -1,
    4038      118,   119,    10,    11,    12,    13,    14,    15,    16,    17,
    4039       18,    19,    20,    21,    22,    23,    24,    25,    26,    27,
    4040       -1,    -1,    30,    31,    32,    -1,    -1,    -1,    -1,    -1,
    4041       -1,    39,    40,    10,    11,    12,    13,    14,    15,    16,
    4042       17,    18,    19,    20,    21,    22,    23,    24,    25,    26,
    4043       27,    -1,    -1,    30,    31,    32,    -1,    -1,    -1,    67,
    4044       -1,    -1,    39,    40,    -1,    -1,    74,    75,    -1,    -1,
    4045       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    4046       -1,    -1,    -1,    -1,    -1,    -1,    94,    -1,    -1,    -1,
    4047       67,    -1,    -1,    -1,    -1,    -1,    -1,    74,    75,    -1,
    4048       -1,    -1,    -1,   111,    -1,    -1,    -1,   115,    -1,    -1,
    4049      118,   119,    -1,    -1,    -1,    -1,    -1,    94,    -1,    -1,
    4050       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    4051       -1,    -1,    -1,    -1,   111,    -1,    -1,    -1,    -1,    -1,
    4052       -1,   118,   119,    10,    11,    12,    13,    14,    15,    16,
    4053       17,    18,    19,    20,    21,    22,    23,    24,    25,    26,
    4054       27,    -1,    -1,    30,    31,    32,    -1,    -1,    -1,    -1,
    4055       -1,    -1,    39,    10,    11,    12,    13,    14,    15,    16,
    4056       17,    18,    19,    20,    21,    22,    23,    24,    25,    26,
    4057       27,    -1,    -1,    30,    31,    32,    -1,    -1,    -1,    -1,
    4058       67,    -1,    39,    -1,    -1,    -1,    -1,    74,    75,    -1,
    4059       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    4060       -1,    -1,    -1,    -1,    -1,    -1,    -1,    94,    -1,    -1,
    4061       67,    -1,    -1,    -1,    -1,    -1,    -1,    74,    75,    -1,
    4062       -1,    -1,   109,    -1,   111,    -1,    -1,    -1,    -1,    -1,
    4063       -1,   118,   119,    -1,    -1,    -1,    -1,    94,    -1,    -1,
    4064       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    4065       -1,    -1,    -1,    -1,   111,    -1,    -1,    -1,    -1,    -1,
    4066       -1,   118,   119,    10,    11,    12,    13,    14,    15,    16,
    4067       17,    18,    19,    20,    21,    22,    23,    24,    25,    26,
    4068       27,    -1,    -1,    30,    31,    32,    -1,    -1,    -1,    -1,
    4069       -1,    -1,    39,    10,    11,    12,    13,    14,    15,    16,
    4070       17,    18,    19,    20,    21,    22,    23,    24,    25,    26,
    4071       27,    -1,    -1,    30,    31,    32,    -1,    -1,    -1,    -1,
    4072       67,    -1,    39,    -1,    -1,    -1,    -1,    74,    75,    -1,
    4073       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    4074       -1,    -1,    -1,    -1,    -1,    -1,    -1,    94,    -1,    -1,
    4075       67,    -1,    -1,    -1,    -1,    -1,    -1,    74,    75,    -1,
    4076       -1,    -1,    -1,    -1,   111,    -1,    -1,    -1,    -1,    -1,
    4077       -1,   118,   119,    -1,    -1,    -1,    -1,    94,    -1,    -1,
    4078       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    4079       -1,    -1,    -1,    -1,   111,    -1,    -1,    -1,    -1,    -1,
    4080       -1,   118,   119,    10,    11,    12,    13,    14,    15,    16,
    4081       17,    18,    19,    20,    21,    22,    23,    24,    25,    26,
    4082       27,    -1,    -1,    30,    31,    32,    -1,    -1,    -1,    -1,
    4083       -1,    -1,    39,    10,    11,    12,    13,    14,    15,    16,
    4084       17,    18,    19,    20,    21,    22,    23,    24,    25,    26,
    4085       27,    -1,    -1,    30,    31,    32,    -1,    -1,    -1,    -1,
    4086       67,    -1,    39,    -1,    -1,    -1,    -1,    74,    75,    -1,
    4087       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    4088       -1,    -1,    -1,    -1,    -1,    -1,    -1,    94,    -1,    -1,
    4089       67,    -1,    -1,    -1,    -1,    -1,    -1,    74,    75,    -1,
    4090       -1,    -1,    -1,    -1,   111,    -1,    -1,    -1,    -1,    -1,
    4091       -1,   118,   119,    -1,    -1,    -1,    -1,    94,    -1,    -1,
    4092       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    4093       -1,    -1,    -1,    -1,   111,    -1,    -1,    -1,    -1,    -1,
    4094       -1,   118,   119,    10,    11,    12,    13,    14,    15,    16,
    4095       17,    18,    19,    20,    21,    22,    23,    24,    25,    26,
    4096       27,    -1,    -1,    30,    31,    32,    -1,    -1,    -1,    -1,
    4097       -1,    -1,    39,    10,    11,    12,    13,    14,    15,    16,
    4098       17,    18,    19,    20,    21,    22,    23,    24,    25,    26,
    4099       27,    -1,    -1,    30,    31,    32,    -1,    -1,    -1,    -1,
    4100       67,    -1,    39,    -1,    -1,    -1,    -1,    74,    75,    -1,
    4101       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    4102       -1,    -1,    -1,    -1,    -1,    -1,    -1,    94,    -1,    -1,
    4103       67,    -1,    -1,    -1,    -1,    -1,    -1,    74,    75,    -1,
    4104       -1,    -1,    -1,    -1,   111,    -1,    -1,    -1,    -1,    -1,
    4105       -1,   118,   119,    -1,    -1,    -1,    -1,    94,    -1,    -1,
    4106       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    4107       -1,    -1,    -1,    -1,   111,    -1,    -1,    -1,    -1,    -1,
    4108       -1,   118,   119,    10,    11,    12,    13,    14,    15,    16,
    4109       17,    18,    19,    20,    21,    22,    23,    24,    25,    26,
    4110       27,    -1,    -1,    30,    31,    32,    -1,    -1,    -1,    -1,
    4111       -1,    -1,    39,    -1,    -1,     4,     5,     6,     7,     8,
    4112        9,    10,    11,    12,    13,    14,    15,    16,    17,    18,
    4113       19,    20,    21,    22,    23,    24,    25,    26,    27,    -1,
    4114       67,    30,    31,    32,    -1,    -1,    -1,    74,    75,    -1,
    4115       39,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    4116       -1,    -1,    -1,    -1,    -1,    -1,    -1,    94,    -1,    -1,
    4117       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    67,    -1,
    4118       69,    -1,    71,    -1,    -1,    74,    75,    -1,    -1,    -1,
    4119       -1,   118,   119,    37,    38,    -1,    40,    41,    -1,    43,
     4007      -1,    -1,   109,    -1,   111,    -1,    -1,   114,    -1,    -1,
     4008      -1,   118,   119,   120,   121,   122,   123,    -1,    -1,    -1,
     4009      -1,   128,    -1,    37,    38,   132,    40,    41,    -1,    43,
    41204010      -1,    -1,    46,    47,    48,    49,    50,    51,    52,    53,
    4121       -1,    -1,    56,    57,    -1,    -1,    -1,    61,    62,    -1,
    4122       64,   110,    66,    -1,    -1,    -1,    -1,    -1,    72,    -1,
     4011      -1,    -1,    -1,    57,    -1,    -1,    -1,    61,    62,    -1,
     4012      64,    -1,    66,    -1,    -1,    -1,    -1,    -1,    72,    -1,
    41234013      -1,    -1,    76,    -1,    -1,    79,    80,    81,    82,    83,
    41244014      84,    -1,    86,    87,    -1,    -1,    -1,    -1,    -1,    -1,
     
    41264016      -1,    -1,    -1,    -1,    -1,   109,    -1,   111,    -1,    -1,
    41274017     114,    -1,    -1,    -1,   118,   119,   120,   121,   122,   123,
    4128       -1,    -1,    -1,    -1,   128,    -1,    37,    38,   132,    40,
    4129       41,    -1,    43,    -1,    -1,    46,    47,    48,    49,    50,
    4130       51,    52,    53,    -1,    -1,    -1,    57,    -1,    -1,    -1,
    4131       61,    62,    -1,    64,    -1,    66,    -1,    -1,    -1,    -1,
    4132       -1,    72,    -1,    -1,    -1,    76,    -1,    -1,    79,    80,
     4018      -1,    -1,    -1,    -1,   128,    -1,    -1,    -1,   132,     4,
     4019       5,     6,     7,     8,     9,    10,    11,    12,    13,    14,
     4020      15,    16,    17,    18,    19,    20,    21,    22,    23,    24,
     4021      25,    26,    27,    -1,    -1,    30,    31,    32,    -1,    -1,
     4022      -1,    -1,    -1,    -1,    39,    -1,    37,    38,    -1,    40,
     4023      41,    -1,    43,    44,    45,    46,    47,    48,    49,    50,
     4024      51,    52,    53,    -1,    -1,    56,    57,    -1,    -1,    -1,
     4025      61,    62,    67,    64,    69,    66,    71,    -1,    -1,    74,
     4026      75,    72,    -1,    -1,    -1,    76,    -1,    -1,    79,    80,
    41334027      81,    82,    83,    84,    -1,    86,    87,    -1,    -1,    -1,
    4134       -1,    -1,    -1,    94,    -1,    -1,    -1,    -1,    -1,    -1,
     4028      -1,    96,    -1,    94,    -1,    -1,    -1,    -1,    -1,    -1,
    41354029      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   109,    -1,
    41364030     111,    -1,    -1,   114,    -1,    -1,    -1,   118,   119,   120,
    4137      121,   122,   123,    -1,    -1,    -1,    -1,   128,    -1,    -1,
    4138       -1,   132,     4,     5,     6,     7,     8,     9,    10,    11,
    4139       12,    13,    14,    15,    16,    17,    18,    19,    20,    21,
    4140       22,    23,    24,    25,    26,    27,    -1,    -1,    30,    31,
    4141       32,    -1,    -1,    -1,    -1,    -1,    -1,    39,    -1,    37,
    4142       38,    -1,    40,    41,    -1,    43,    44,    45,    46,    47,
    4143       48,    49,    50,    51,    52,    53,    -1,    -1,    56,    57,
    4144       -1,    -1,    -1,    61,    62,    67,    64,    69,    66,    71,
    4145       -1,    -1,    74,    75,    72,    -1,    -1,    -1,    76,    -1,
    4146       -1,    79,    80,    81,    82,    83,    84,    -1,    86,    87,
    4147       -1,    -1,    -1,    -1,    96,    -1,    94,    -1,    -1,    -1,
    4148       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    4149       -1,   109,    -1,   111,    -1,    -1,   114,    -1,    -1,    -1,
    4150      118,   119,   120,   121,   122,   123,    -1,    -1,    37,    38,
    4151      128,    40,    41,    -1,    43,    44,    45,    46,    47,    48,
    4152       49,    50,    51,    52,    53,    -1,    -1,    -1,    57,    -1,
    4153       -1,    -1,    61,    62,    -1,    64,    -1,    66,    -1,    -1,
    4154       -1,    -1,    -1,    72,    -1,    -1,    -1,    76,    -1,    -1,
    4155       79,    80,    81,    82,    83,    84,    -1,    86,    87,    -1,
    4156       -1,    -1,    -1,    -1,    -1,    94,    -1,    -1,    -1,    -1,
    4157       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    4158      109,    -1,   111,    -1,    -1,   114,    -1,    -1,    -1,   118,
    4159      119,   120,   121,   122,   123,    -1,    -1,    37,    38,   128,
    4160       40,    41,    -1,    43,    -1,    -1,    46,    47,    48,    49,
    4161       50,    51,    52,    53,    -1,    -1,    -1,    57,    -1,    -1,
    4162       -1,    61,    62,    -1,    64,    -1,    66,    -1,    -1,    -1,
    4163       -1,    -1,    72,    -1,    -1,    -1,    76,    -1,    -1,    79,
    4164       80,    81,    82,    83,    84,    -1,    86,    87,    -1,    -1,
    4165       -1,    -1,    -1,    -1,    94,    37,    38,    -1,    40,    -1,
    4166       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   109,
    4167       -1,   111,    -1,    -1,   114,    -1,    -1,    -1,   118,   119,
    4168      120,   121,   122,   123,    66,    -1,    -1,    -1,   128,    -1,
     4031     121,   122,   123,    -1,    -1,    37,    38,   128,    40,    41,
     4032      -1,    43,    44,    45,    46,    47,    48,    49,    50,    51,
     4033      52,    53,    -1,    -1,    -1,    57,    -1,    -1,    -1,    61,
     4034      62,    -1,    64,    -1,    66,    -1,    -1,    -1,    -1,    -1,
    41694035      72,    -1,    -1,    -1,    76,    -1,    -1,    79,    80,    81,
    41704036      82,    83,    84,    -1,    86,    87,    -1,    -1,    -1,    -1,
    4171       -1,    -1,    94,    37,    38,    -1,    40,    -1,    -1,    -1,
     4037      -1,    -1,    94,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    41724038      -1,    -1,    -1,    -1,    -1,    -1,    -1,   109,    -1,   111,
    4173       -1,    -1,    37,    38,    -1,    40,   118,   119,   120,   121,
    4174      122,   123,    66,    -1,    -1,    -1,    -1,    -1,    72,    -1,
    4175       -1,    -1,    76,    -1,    -1,    79,    80,    81,    82,    83,
    4176       84,    66,    86,    87,    -1,    -1,    -1,    72,    -1,    -1,
    4177       94,    76,    -1,    -1,    79,    80,    81,    82,    83,    84,
    4178       -1,    86,    87,    -1,    -1,   109,    -1,   111,    -1,    94,
    4179       37,    38,    -1,    40,   118,   119,   120,   121,   122,   123,
    4180       -1,    -1,    -1,    -1,   109,    -1,    -1,    -1,    -1,    37,
    4181       38,    -1,    40,   118,   119,   120,   121,   122,   123,    66,
    4182       -1,    -1,    -1,    -1,    -1,    72,    -1,    -1,    -1,    76,
    4183       -1,    -1,    79,    80,    81,    82,    83,    84,    66,    86,
    4184       87,    -1,    -1,    -1,    72,    -1,    -1,    94,    76,    -1,
    4185       -1,    79,    80,    81,    82,    83,    84,    -1,    86,    87,
    4186       -1,    -1,   109,    -1,    -1,    -1,    94,    -1,    -1,    -1,
    4187       -1,   118,   119,   120,   121,   122,   123,    -1,    -1,    -1,
    4188       -1,   109,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    4189      118,   119,   120,   121,   122,   123,     4,     5,     6,     7,
    4190        8,     9,    10,    11,    12,    13,    14,    15,    16,    17,
    4191       18,    19,    20,    21,    22,    23,    24,    25,    26,    27,
     4039      -1,    -1,   114,    -1,    -1,    -1,   118,   119,   120,   121,
     4040     122,   123,    -1,    -1,    37,    38,   128,    40,    41,    -1,
     4041      43,    -1,    -1,    46,    47,    48,    49,    50,    51,    52,
     4042      53,    -1,    -1,    -1,    57,    -1,    -1,    -1,    61,    62,
     4043      -1,    64,    -1,    66,    -1,    -1,    -1,    -1,    -1,    72,
     4044      -1,    -1,    -1,    76,    -1,    -1,    79,    80,    81,    82,
     4045      83,    84,    -1,    86,    87,    -1,    -1,    -1,    -1,    -1,
     4046      -1,    94,    37,    38,    -1,    40,    -1,    -1,    -1,    -1,
     4047      -1,    -1,    -1,    -1,    -1,    -1,   109,    -1,   111,    -1,
     4048      -1,   114,    -1,    -1,    -1,   118,   119,   120,   121,   122,
     4049     123,    66,    -1,    -1,    -1,   128,    -1,    72,    -1,    -1,
     4050      -1,    76,    -1,    -1,    79,    80,    81,    82,    83,    84,
     4051      -1,    86,    87,    -1,    -1,    -1,    -1,    -1,    -1,    94,
    41924052      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    4193       -1,    39,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    4194       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    4195       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    67,
    4196       -1,    69,    -1,    71,    72,    -1,    74,    75,    76,    -1,
    4197       -1,    -1,    -1,    -1,    -1,    83,    84,     3,     4,     5,
    4198        6,     7,     8,     9,    10,    11,    12,    13,    14,    15,
    4199       16,    17,    18,    19,    20,    21,    22,    23,    24,    25,
    4200       26,    27,    -1,    -1,    30,    31,    32,    -1,    -1,    -1,
    4201       -1,    -1,    -1,    39,    -1,    -1,    -1,    -1,    -1,    -1,
     4053      -1,    -1,    -1,    -1,   109,    -1,    -1,    -1,    -1,    -1,
     4054      -1,    -1,    -1,   118,   119,   120,   121,   122,   123,     4,
     4055       5,     6,     7,     8,     9,    10,    11,    12,    13,    14,
     4056      15,    16,    17,    18,    19,    20,    21,    22,    23,    24,
     4057      25,    26,    27,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     4058      -1,    -1,    -1,    -1,    39,    -1,    -1,    -1,    -1,    -1,
    42024059      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    42034060      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    4204       -1,    67,    -1,    69,    -1,    71,    -1,    -1,    74,    75,
     4061      -1,    -1,    67,    -1,    69,    -1,    71,    72,    -1,    74,
     4062      75,    76,    -1,    -1,    -1,    -1,    -1,    -1,    83,    84,
    42054063       3,     4,     5,     6,     7,     8,     9,    10,    11,    12,
    42064064      13,    14,    15,    16,    17,    18,    19,    20,    21,    22,
     
    42104068      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    42114069      -1,    -1,    -1,    -1,    67,    -1,    69,    -1,    71,    -1,
    4212       -1,    74,    75,     4,     5,     6,     7,     8,     9,    10,
    4213       11,    12,    13,    14,    15,    16,    17,    18,    19,    20,
    4214       21,    22,    23,    24,    25,    26,    27,    -1,    -1,    30,
    4215       31,    32,    -1,    -1,    -1,    -1,    -1,    -1,    39,    -1,
     4070      -1,    74,    75,     3,     4,     5,     6,     7,     8,     9,
     4071      10,    11,    12,    13,    14,    15,    16,    17,    18,    19,
     4072      20,    21,    22,    23,    24,    25,    26,    27,    -1,    -1,
     4073      30,    31,    32,    -1,    -1,    -1,    -1,    -1,    -1,    39,
    42164074      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    42174075      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    4218       -1,    -1,    -1,    -1,    -1,    -1,    67,    -1,    69,    -1,
    4219       71,    -1,    -1,    74,    75
     4076      -1,    -1,    -1,    -1,    -1,    -1,    -1,    67,    -1,    69,
     4077      -1,    71,    -1,    -1,    74,    75,     4,     5,     6,     7,
     4078       8,     9,    10,    11,    12,    13,    14,    15,    16,    17,
     4079      18,    19,    20,    21,    22,    23,    24,    25,    26,    27,
     4080      -1,    -1,    30,    31,    32,    -1,    -1,    -1,    -1,    -1,
     4081      -1,    39,    -1,    10,    11,    12,    13,    14,    15,    16,
     4082      17,    18,    19,    20,    21,    22,    23,    24,    25,    26,
     4083      27,    -1,    -1,    30,    31,    32,    33,    34,    35,    67,
     4084      -1,    69,    39,    71,    -1,    -1,    74,    75,    -1,    -1,
     4085      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     4086      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     4087      67,    -1,    -1,    -1,    -1,    -1,    -1,    74,    75
    42204088};
    42214089
     
    42284096      22,    23,    24,    25,    26,    27,    30,    31,    32,    33,
    42294097      36,    39,    40,    64,    67,    69,    71,    72,    74,    75,
    4230       76,    83,    84,    94,   109,   111,   118,   119,   137,   140,
    4231      149,   198,   212,   213,   214,   215,   216,   217,   218,   219,
    4232      220,   221,   222,   223,   224,   225,   226,   227,   228,   229,
    4233      231,   232,   233,   234,   235,   236,   237,   238,   240,   241,
    4234      242,   243,   244,   245,   247,   255,   256,   283,   284,   285,
    4235      293,   296,   302,   303,   305,   307,   308,   314,   319,   323,
    4236      324,   325,   326,   327,   328,   329,   330,   350,   367,   368,
    4237      369,   370,    72,   139,   140,   149,   215,   217,   225,   227,
    4238      237,   241,   243,   284,    82,   109,   312,   313,   314,   312,
    4239      312,    72,    74,    75,    76,   138,   139,   273,   274,   294,
    4240      295,    74,    75,   274,   109,   305,    11,   199,   109,   149,
    4241      319,   324,   325,   326,   328,   329,   330,   112,   134,   111,
    4242      218,   225,   227,   323,   327,   366,   367,   370,   371,   135,
    4243      107,   131,   277,   114,   135,   173,    74,    75,   137,   272,
    4244      135,   135,   135,   116,   135,    74,    75,   109,   149,   309,
    4245      318,   319,   320,   321,   322,   323,   327,   331,   332,   333,
    4246      334,   335,   341,     3,    28,    78,   239,     3,     5,    74,
    4247      111,   149,   217,   228,   232,   235,   244,   285,   323,   327,
    4248      370,   215,   217,   227,   237,   241,   243,   284,   323,   327,
    4249       33,   233,   233,   228,   235,   135,   233,   228,   233,   228,
    4250       75,   109,   114,   274,   285,   114,   274,   233,   228,   116,
    4251      135,   135,     0,   134,   109,   173,   312,   312,   134,   111,
    4252      225,   227,   368,   272,   272,   131,   227,   109,   149,   309,
    4253      319,   323,   111,   149,   370,   306,   230,   314,   109,   290,
    4254      109,   109,    51,   109,    37,    38,    40,    66,    72,    76,
    4255       79,    80,    81,    82,    86,    87,   109,   111,   120,   121,
     4098      76,    83,    84,   109,   111,   118,   119,   137,   140,   149,
     4099     198,   212,   213,   214,   215,   216,   217,   218,   219,   220,
     4100     221,   222,   223,   224,   225,   226,   227,   228,   229,   231,
     4101     232,   233,   234,   235,   236,   237,   238,   240,   241,   242,
     4102     243,   244,   245,   247,   255,   256,   283,   284,   285,   293,
     4103     296,   302,   303,   305,   307,   308,   314,   319,   323,   324,
     4104     325,   326,   327,   328,   329,   330,   350,   367,   368,   369,
     4105     370,    72,   139,   140,   149,   215,   217,   225,   227,   237,
     4106     241,   243,   284,    82,   109,   312,   313,   314,   312,   312,
     4107      72,    74,    75,    76,   138,   139,   273,   274,   294,   295,
     4108      74,    75,   274,   109,   305,    11,   199,   109,   149,   319,
     4109     324,   325,   326,   328,   329,   330,   112,   134,   111,   218,
     4110     225,   227,   323,   327,   366,   367,   370,   371,   135,   107,
     4111     131,   277,   114,   135,   173,    74,    75,   137,   272,   135,
     4112     135,   135,   116,   135,    74,    75,   109,   149,   309,   318,
     4113     319,   320,   321,   322,   323,   327,   331,   332,   333,   334,
     4114     335,   341,     3,    28,    78,   239,     3,     5,    74,   111,
     4115     149,   217,   228,   232,   235,   244,   285,   323,   327,   370,
     4116     215,   217,   227,   237,   241,   243,   284,   323,   327,    33,
     4117     233,   233,   228,   235,   135,   233,   228,   233,   228,    75,
     4118     109,   114,   274,   285,   114,   274,   233,   228,   116,   135,
     4119     135,     0,   134,   109,   173,   312,   312,   134,   111,   225,
     4120     227,   368,   272,   272,   131,   227,   109,   149,   309,   319,
     4121     323,   111,   149,   370,   306,   230,   314,   109,   290,   109,
     4122     109,    51,   109,    37,    38,    40,    66,    72,    76,    79,
     4123      80,    81,    82,    86,    87,    94,   109,   111,   120,   121,
    42564124     122,   123,   136,   140,   141,   142,   143,   148,   149,   150,
    42574125     151,   152,   153,   154,   155,   156,   157,   158,   159,   160,
     
    42764144     289,   134,   129,   131,   291,   134,   228,   234,   235,   272,
    42774145     315,   316,   317,   109,   141,   109,   148,   109,   148,   151,
    4278      109,   148,   109,   109,   148,   148,   111,   164,   169,   173,
    4279      225,   275,   366,   112,   134,    82,    85,    86,    87,   109,
    4280      111,   113,   114,    97,    98,    99,   100,   101,   102,   103,
    4281      104,   105,   106,   131,   168,   151,   151,   118,   124,   125,
    4282      120,   121,    88,    89,    90,    91,   126,   127,    92,    93,
    4283      119,   128,   129,    94,    95,   130,   131,   373,   109,   149,
    4284      345,   346,   347,   348,   349,   110,   116,   109,   349,   350,
    4285      109,   349,   350,   134,   109,   225,   368,   112,   134,   135,
    4286      111,   225,   227,   361,   362,   370,   371,   135,   109,   111,
    4287      149,   319,   336,   337,   338,   339,   340,   341,   342,   343,
    4288      344,   350,   351,   352,   353,   354,   355,   356,   149,   370,
    4289      227,   135,   135,   149,   225,   227,   363,   272,   225,   350,
    4290      363,   272,   109,   134,   134,   134,   112,   134,    72,    80,
    4291      111,   113,   140,   274,   278,   279,   280,   281,   282,   134,
    4292      134,   134,   134,   134,   134,   309,   110,   110,   110,   110,
    4293      110,   110,   110,   318,   331,   109,   277,   112,   207,   134,
    4294      309,   169,   276,   169,   276,   309,   111,   207,   311,   173,
    4295      134,   207,   110,   250,   251,   112,   134,   109,   117,   149,
    4296      252,   254,   318,   319,   331,   349,   357,   358,   359,   360,
    4297      115,   249,   116,   132,   116,   132,   274,   114,   116,   372,
    4298      131,   259,   114,   227,   264,   265,   266,   269,   270,   110,
    4299      116,   173,   134,   118,   164,   134,   224,   227,   263,   362,
    4300      370,   303,   304,   109,   149,   336,   110,   116,   373,   274,
    4301      286,   109,   114,   274,   276,   286,   110,   116,   109,   141,
    4302      110,   117,   275,   275,   275,   111,   139,   145,   164,   276,
    4303      275,   112,   134,   110,   116,   110,   109,   149,   357,   110,
    4304      116,   164,   111,   139,   111,   144,   145,   134,   111,   139,
    4305      144,   164,   164,   151,   151,   151,   152,   152,   153,   153,
    4306      154,   154,   154,   154,   155,   155,   156,   157,   158,   159,
    4307      160,   117,   169,   164,   134,   346,   347,   348,   227,   345,
    4308      312,   312,   164,   276,   134,   271,   134,   225,   350,   363,
    4309      227,   231,   112,   112,   134,   370,   112,   109,   134,   319,
    4310      337,   338,   339,   342,   352,   353,   354,   112,   134,   227,
    4311      336,   340,   351,   109,   312,   355,   373,   312,   312,   373,
    4312      109,   312,   355,   312,   312,   312,   312,   350,   225,   361,
    4313      371,   272,   112,   116,   112,   116,   373,   225,   363,   373,
    4314      260,   261,   262,   263,   260,   260,   272,   164,   134,   111,
    4315      274,   117,   116,   372,   278,    80,   111,   117,   282,    29,
    4316      209,   210,   272,   260,   139,   309,   139,   311,   109,   349,
    4317      350,   109,   349,   350,   141,   350,   173,   264,   110,   110,
    4318      110,   110,   112,   173,   207,   173,   114,   132,   132,   111,
    4319      319,   358,   359,   360,   162,   163,   227,   357,   253,   254,
    4320      253,   312,   312,   274,   312,   248,   274,   115,   163,   258,
    4321      135,   135,   139,   222,   135,   135,   260,   109,   149,   370,
    4322      135,   115,   227,   287,   288,   135,   134,   134,   109,   135,
    4323      110,   316,   169,   170,   117,   132,   111,   141,   200,   201,
    4324      202,   110,   116,   110,   134,   117,   110,   110,   110,   164,
    4325      227,   114,   151,   166,   164,   165,   167,   116,   135,   134,
    4326      134,   110,   116,   164,   134,   115,   162,   117,   264,   110,
    4327      110,   110,   345,   264,   110,   260,   225,   363,   111,   118,
    4328      149,   164,   164,   227,   342,   264,   110,   110,   110,   110,
    4329      110,   110,   110,     7,   227,   336,   340,   351,   134,   134,
    4330      373,   134,   134,   110,   135,   135,   135,   135,   277,   135,
    4331      162,   163,   164,   310,   134,   278,   280,   115,   134,   211,
    4332      274,    40,    41,    43,    46,    47,    48,    49,    50,    51,
    4333       52,    53,    57,    61,    62,    72,   111,   128,   170,   171,
    4334      172,   173,   174,   175,   177,   178,   190,   192,   193,   198,
    4335      212,   308,    29,   135,   131,   277,   134,   134,   110,   135,
    4336      173,   248,   112,   110,   110,   110,   357,   252,   115,   259,
    4337      372,   110,   116,   112,   112,   135,   227,   116,   373,   290,
    4338      110,   286,   215,   217,   225,   298,   299,   300,   301,   292,
    4339      110,   110,   117,   163,   109,   110,   117,   116,   139,   164,
    4340      164,   279,   116,   135,   167,   112,   139,   146,   147,   164,
    4341      145,   135,   146,   162,   166,   135,   109,   349,   350,   135,
    4342      135,   134,   135,   135,   135,   164,   110,   135,   109,   349,
    4343      350,   109,   355,   109,   355,   350,   226,     7,   118,   135,
    4344      164,   264,   264,   263,   267,   267,   268,   116,   116,   110,
    4345      110,   112,    96,   123,   135,   135,   146,   278,   164,   116,
    4346      132,   212,   216,   227,   231,   109,   109,   171,   109,   109,
    4347       72,   132,    72,   132,    72,   118,   170,   109,   173,   165,
    4348      165,   117,   112,   143,   132,   135,   134,   135,   211,   110,
    4349      164,   264,   264,   312,   110,   115,   109,   349,   350,   115,
    4350      134,   110,   134,   135,   309,   115,   134,   135,   135,   110,
    4351      114,   200,   112,   163,   132,   200,   202,   110,   116,   135,
    4352      372,   165,   112,   135,    85,   113,   116,   135,   135,   112,
    4353      135,   110,   134,   110,   110,   112,   112,   112,   135,   110,
    4354      134,   134,   134,   164,   164,   135,   112,   135,   135,   135,
    4355      135,   134,   134,   163,   163,   112,   112,   135,   135,   274,
    4356      227,   169,   169,    47,   169,   134,   132,   132,   132,   169,
    4357      132,   169,    58,    59,    60,   194,   195,   196,   132,    63,
    4358      132,   312,   114,   175,   115,   132,   135,   135,   134,    96,
    4359      269,   270,   110,   299,   116,   132,   116,   132,   115,   297,
    4360      117,   141,   110,   110,   117,   167,   112,   115,   112,   111,
    4361      147,   111,   147,   147,   112,   112,   112,   264,   112,   264,
    4362      264,   264,   135,   135,   112,   112,   110,   110,   112,   116,
    4363       96,   263,    96,   135,   112,   112,   110,   110,   109,   110,
    4364      170,   191,   212,   132,   110,   109,   109,   173,   196,    58,
    4365       59,   164,   171,   144,   110,   110,   264,   114,   134,   134,
    4366      298,   141,   203,   109,   132,   203,   135,   117,   134,   134,
    4367      135,   135,   135,   135,   112,   112,   134,   135,   112,   171,
    4368       44,    45,   114,   181,   182,   183,   169,   171,   135,   110,
    4369      170,   114,   183,    96,   134,    96,   134,   109,   109,   132,
    4370      115,   135,   134,   272,   309,   115,   116,   117,   163,   110,
    4371      112,   164,   146,   146,   110,   110,   110,   110,   267,    42,
    4372      163,   179,   180,   310,   117,   134,   171,   181,   110,   132,
    4373      171,   132,   134,   110,   134,   110,   134,    96,   134,    96,
    4374      134,   132,   110,   298,   141,   139,   204,   110,   132,   117,
    4375      135,   135,   171,    96,   116,   117,   135,   205,   206,   212,
    4376      132,   170,   170,   205,   173,   197,   225,   366,   173,   197,
    4377      110,   134,   110,   134,   115,   110,   116,   164,   112,   112,
    4378      163,   179,   182,   184,   185,   134,   132,   182,   186,   187,
    4379      135,   109,   149,   309,   357,   139,   135,   173,   197,   173,
    4380      197,   109,   132,   139,   171,   176,   115,   182,   212,   170,
    4381       56,   176,   189,   115,   182,   110,   227,   110,   135,   135,
    4382      292,   171,   176,   132,   188,   189,   176,   189,   173,   173,
    4383      110,   110,   110,   188,   135,   135,   173,   173,   135,   135
     4146     109,   148,   109,   109,   148,   148,   139,   111,   164,   169,
     4147     173,   225,   275,   366,   112,   134,    82,    85,    86,    87,
     4148     109,   111,   113,   114,    97,    98,    99,   100,   101,   102,
     4149     103,   104,   105,   106,   131,   168,   151,   151,   118,   124,
     4150     125,   120,   121,    88,    89,    90,    91,   126,   127,    92,
     4151      93,   119,   128,   129,    94,    95,   130,   131,   373,   109,
     4152     149,   345,   346,   347,   348,   349,   110,   116,   109,   349,
     4153     350,   109,   349,   350,   134,   109,   225,   368,   112,   134,
     4154     135,   111,   225,   227,   361,   362,   370,   371,   135,   109,
     4155     111,   149,   319,   336,   337,   338,   339,   340,   341,   342,
     4156     343,   344,   350,   351,   352,   353,   354,   355,   356,   149,
     4157     370,   227,   135,   135,   149,   225,   227,   363,   272,   225,
     4158     350,   363,   272,   109,   134,   134,   134,   112,   134,    72,
     4159      80,   111,   113,   140,   274,   278,   279,   280,   281,   282,
     4160     134,   134,   134,   134,   134,   134,   309,   110,   110,   110,
     4161     110,   110,   110,   110,   318,   331,   109,   277,   112,   207,
     4162     134,   309,   169,   276,   169,   276,   309,   111,   207,   311,
     4163     173,   134,   207,   110,   250,   251,   112,   134,   109,   117,
     4164     149,   252,   254,   318,   319,   331,   349,   357,   358,   359,
     4165     360,   115,   249,   116,   132,   116,   132,   274,   114,   116,
     4166     372,   131,   259,   114,   227,   264,   265,   266,   269,   270,
     4167     110,   116,   173,   134,   118,   164,   134,   224,   227,   263,
     4168     362,   370,   303,   304,   109,   149,   336,   110,   116,   373,
     4169     274,   286,   109,   114,   274,   276,   286,   110,   116,   109,
     4170     141,   110,   117,   275,   275,   275,   111,   139,   145,   164,
     4171     276,   275,   112,   134,   110,   116,   110,   109,   149,   357,
     4172     110,   116,   164,   111,   139,   111,   144,   145,   134,   111,
     4173     139,   144,   164,   164,   151,   151,   151,   152,   152,   153,
     4174     153,   154,   154,   154,   154,   155,   155,   156,   157,   158,
     4175     159,   160,   117,   169,   164,   134,   346,   347,   348,   227,
     4176     345,   312,   312,   164,   276,   134,   271,   134,   225,   350,
     4177     363,   227,   231,   112,   112,   134,   370,   112,   109,   134,
     4178     319,   337,   338,   339,   342,   352,   353,   354,   112,   134,
     4179     227,   336,   340,   351,   109,   312,   355,   373,   312,   312,
     4180     373,   109,   312,   355,   312,   312,   312,   312,   350,   225,
     4181     361,   371,   272,   112,   116,   112,   116,   373,   225,   363,
     4182     373,   260,   261,   262,   263,   260,   260,   272,   164,   134,
     4183     111,   274,   117,   116,   372,   278,    80,   111,   117,   282,
     4184      29,   209,   210,   272,   260,   139,   309,   139,   311,   109,
     4185     349,   350,   109,   349,   350,   141,   350,   173,   264,   110,
     4186     110,   110,   110,   112,   173,   207,   173,   114,   132,   132,
     4187     111,   319,   358,   359,   360,   162,   163,   227,   357,   253,
     4188     254,   253,   312,   312,   274,   312,   248,   274,   115,   163,
     4189     258,   135,   135,   139,   222,   135,   135,   260,   109,   149,
     4190     370,   135,   115,   227,   287,   288,   135,   134,   134,   109,
     4191     135,   110,   316,   169,   170,   117,   132,   111,   141,   200,
     4192     201,   202,   110,   116,   110,   134,   117,   110,   110,   110,
     4193     164,   227,   114,   151,   166,   164,   165,   167,   116,   135,
     4194     134,   134,   110,   116,   164,   134,   115,   162,   117,   264,
     4195     110,   110,   110,   345,   264,   110,   260,   225,   363,   111,
     4196     118,   149,   164,   164,   227,   342,   264,   110,   110,   110,
     4197     110,   110,   110,   110,     7,   227,   336,   340,   351,   134,
     4198     134,   373,   134,   134,   110,   135,   135,   135,   135,   277,
     4199     135,   162,   163,   164,   310,   134,   278,   280,   115,   134,
     4200     211,   274,    40,    41,    43,    46,    47,    48,    49,    50,
     4201      51,    52,    53,    57,    61,    62,   111,   128,   139,   170,
     4202     171,   172,   173,   174,   175,   177,   178,   190,   192,   193,
     4203     198,   212,   308,    29,   135,   131,   277,   134,   134,   110,
     4204     135,   173,   248,   112,   110,   110,   110,   357,   252,   115,
     4205     259,   372,   110,   116,   112,   112,   135,   227,   116,   373,
     4206     290,   110,   286,   215,   217,   225,   298,   299,   300,   301,
     4207     292,   110,   110,   117,   163,   109,   110,   117,   116,   139,
     4208     164,   164,   279,   116,   135,   167,   112,   139,   146,   147,
     4209     164,   145,   135,   146,   162,   166,   135,   109,   349,   350,
     4210     135,   135,   134,   135,   135,   135,   164,   110,   135,   109,
     4211     349,   350,   109,   355,   109,   355,   350,   226,     7,   118,
     4212     135,   164,   264,   264,   263,   267,   267,   268,   116,   116,
     4213     110,   110,   112,    96,   123,   135,   135,   146,   278,   164,
     4214     116,   132,   212,   216,   227,   231,   109,   109,   171,   109,
     4215     109,   132,   139,   132,   139,   118,   139,   170,   109,   173,
     4216     165,   165,   112,   143,   117,   132,   135,   134,   135,   211,
     4217     110,   164,   264,   264,   312,   110,   115,   109,   349,   350,
     4218     115,   134,   110,   134,   135,   309,   115,   134,   135,   135,
     4219     110,   114,   200,   112,   163,   132,   200,   202,   110,   116,
     4220     135,   372,   165,   112,   135,    85,   113,   116,   135,   135,
     4221     112,   135,   110,   134,   110,   110,   112,   112,   112,   135,
     4222     110,   134,   134,   134,   164,   164,   135,   112,   135,   135,
     4223     135,   135,   134,   134,   163,   163,   112,   112,   135,   135,
     4224     274,   227,   169,   169,    47,   169,   134,   132,   132,   169,
     4225     132,   132,   169,    58,    59,    60,   194,   195,   196,   132,
     4226      63,   132,   114,   312,   175,   115,   132,   135,   135,   134,
     4227      96,   269,   270,   110,   299,   116,   132,   116,   132,   115,
     4228     297,   117,   141,   110,   110,   117,   167,   112,   115,   112,
     4229     111,   147,   111,   147,   147,   112,   112,   112,   264,   112,
     4230     264,   264,   264,   135,   135,   112,   112,   110,   110,   112,
     4231     116,    96,   263,    96,   135,   112,   112,   110,   110,   109,
     4232     110,   170,   191,   212,   132,   110,   109,   109,   173,   196,
     4233      58,    59,   164,   144,   171,   110,   110,   264,   114,   134,
     4234     134,   298,   141,   203,   109,   132,   203,   135,   117,   134,
     4235     134,   135,   135,   135,   135,   112,   112,   134,   135,   112,
     4236     171,    44,    45,   114,   181,   182,   183,   169,   171,   135,
     4237     110,   170,   114,   183,    96,   134,    96,   134,   109,   109,
     4238     132,   115,   135,   134,   272,   309,   115,   116,   117,   163,
     4239     110,   112,   164,   146,   146,   110,   110,   110,   110,   267,
     4240      42,   163,   179,   180,   310,   117,   134,   171,   181,   110,
     4241     132,   171,   132,   134,   110,   134,   110,   134,    96,   134,
     4242      96,   134,   132,   110,   298,   141,   139,   204,   110,   132,
     4243     117,   135,   135,   171,    96,   116,   117,   135,   205,   206,
     4244     212,   132,   170,   170,   205,   173,   197,   225,   366,   173,
     4245     197,   110,   134,   110,   134,   115,   110,   116,   164,   112,
     4246     112,   163,   179,   182,   184,   185,   134,   132,   182,   186,
     4247     187,   135,   109,   149,   309,   357,   139,   135,   173,   197,
     4248     173,   197,   109,   132,   139,   171,   176,   115,   182,   212,
     4249     170,    56,   176,   189,   115,   182,   110,   227,   110,   135,
     4250     135,   292,   171,   176,   132,   188,   189,   176,   189,   173,
     4251     173,   110,   110,   110,   188,   135,   135,   173,   173,   135,
     4252     135
    43844253};
    43854254
     
    55405409
    55415410/* Line 1806 of yacc.c  */
     5411#line 459 "parser.yy"
     5412    { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::LabelAddress ), new VarRefNode( (yyvsp[(2) - (2)].tok), true ) ); }
     5413    break;
     5414
     5415  case 64:
     5416
     5417/* Line 1806 of yacc.c  */
    55425418#line 463 "parser.yy"
    55435419    { (yyval.en) = new OperatorNode( OperatorNode::PointTo ); }
    55445420    break;
    55455421
    5546   case 64:
     5422  case 65:
    55475423
    55485424/* Line 1806 of yacc.c  */
     
    55515427    break;
    55525428
    5553   case 65:
    5554 
    5555 /* Line 1806 of yacc.c  */
    5556 #line 466 "parser.yy"
    5557     { (yyval.en) = new OperatorNode( OperatorNode::And ); }
    5558     break;
    5559 
    55605429  case 66:
    55615430
    55625431/* Line 1806 of yacc.c  */
     5432#line 468 "parser.yy"
     5433    { (yyval.en) = new OperatorNode( OperatorNode::UnPlus ); }
     5434    break;
     5435
     5436  case 67:
     5437
     5438/* Line 1806 of yacc.c  */
     5439#line 469 "parser.yy"
     5440    { (yyval.en) = new OperatorNode( OperatorNode::UnMinus ); }
     5441    break;
     5442
     5443  case 68:
     5444
     5445/* Line 1806 of yacc.c  */
    55635446#line 470 "parser.yy"
    5564     { (yyval.en) = new OperatorNode( OperatorNode::UnPlus ); }
    5565     break;
    5566 
    5567   case 67:
     5447    { (yyval.en) = new OperatorNode( OperatorNode::Neg ); }
     5448    break;
     5449
     5450  case 69:
    55685451
    55695452/* Line 1806 of yacc.c  */
    55705453#line 471 "parser.yy"
    5571     { (yyval.en) = new OperatorNode( OperatorNode::UnMinus ); }
    5572     break;
    5573 
    5574   case 68:
    5575 
    5576 /* Line 1806 of yacc.c  */
    5577 #line 472 "parser.yy"
    5578     { (yyval.en) = new OperatorNode( OperatorNode::Neg ); }
    5579     break;
    5580 
    5581   case 69:
    5582 
    5583 /* Line 1806 of yacc.c  */
    5584 #line 473 "parser.yy"
    55855454    { (yyval.en) = new OperatorNode( OperatorNode::BitNeg ); }
    55865455    break;
    55875456
    55885457  case 71:
     5458
     5459/* Line 1806 of yacc.c  */
     5460#line 477 "parser.yy"
     5461    { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::Cast ), new TypeValueNode( (yyvsp[(2) - (4)].decl) ), (yyvsp[(4) - (4)].en) ); }
     5462    break;
     5463
     5464  case 72:
    55895465
    55905466/* Line 1806 of yacc.c  */
     
    55935469    break;
    55945470
    5595   case 72:
    5596 
    5597 /* Line 1806 of yacc.c  */
    5598 #line 481 "parser.yy"
    5599     { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::Cast ), new TypeValueNode( (yyvsp[(2) - (4)].decl) ), (yyvsp[(4) - (4)].en) ); }
    5600     break;
    5601 
    56025471  case 74:
    56035472
    56045473/* Line 1806 of yacc.c  */
     5474#line 485 "parser.yy"
     5475    { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::Mul ), (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en) ); }
     5476    break;
     5477
     5478  case 75:
     5479
     5480/* Line 1806 of yacc.c  */
    56055481#line 487 "parser.yy"
    5606     { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::Mul ), (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en) ); }
    5607     break;
    5608 
    5609   case 75:
     5482    { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::Div ), (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en) ); }
     5483    break;
     5484
     5485  case 76:
    56105486
    56115487/* Line 1806 of yacc.c  */
    56125488#line 489 "parser.yy"
    5613     { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::Div ), (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en) ); }
    5614     break;
    5615 
    5616   case 76:
    5617 
    5618 /* Line 1806 of yacc.c  */
    5619 #line 491 "parser.yy"
    56205489    { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::Mod ), (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en) ); }
    56215490    break;
     
    56245493
    56255494/* Line 1806 of yacc.c  */
     5495#line 495 "parser.yy"
     5496    { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::Plus ), (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en) ); }
     5497    break;
     5498
     5499  case 79:
     5500
     5501/* Line 1806 of yacc.c  */
    56265502#line 497 "parser.yy"
    5627     { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::Plus ), (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en) ); }
    5628     break;
    5629 
    5630   case 79:
    5631 
    5632 /* Line 1806 of yacc.c  */
    5633 #line 499 "parser.yy"
    56345503    { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::Minus ), (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en) ); }
    56355504    break;
     
    56385507
    56395508/* Line 1806 of yacc.c  */
     5509#line 503 "parser.yy"
     5510    { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::LShift ), (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en) ); }
     5511    break;
     5512
     5513  case 82:
     5514
     5515/* Line 1806 of yacc.c  */
    56405516#line 505 "parser.yy"
    5641     { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::LShift ), (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en) ); }
    5642     break;
    5643 
    5644   case 82:
    5645 
    5646 /* Line 1806 of yacc.c  */
    5647 #line 507 "parser.yy"
    56485517    { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::RShift ), (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en) ); }
    56495518    break;
     
    56525521
    56535522/* Line 1806 of yacc.c  */
     5523#line 511 "parser.yy"
     5524    { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::LThan ), (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en) ); }
     5525    break;
     5526
     5527  case 85:
     5528
     5529/* Line 1806 of yacc.c  */
    56545530#line 513 "parser.yy"
    5655     { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::LThan ), (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en) ); }
    5656     break;
    5657 
    5658   case 85:
     5531    { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::GThan ), (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en) ); }
     5532    break;
     5533
     5534  case 86:
    56595535
    56605536/* Line 1806 of yacc.c  */
    56615537#line 515 "parser.yy"
    5662     { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::GThan ), (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en) ); }
    5663     break;
    5664 
    5665   case 86:
     5538    { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::LEThan ), (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en) ); }
     5539    break;
     5540
     5541  case 87:
    56665542
    56675543/* Line 1806 of yacc.c  */
    56685544#line 517 "parser.yy"
    5669     { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::LEThan ), (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en) ); }
    5670     break;
    5671 
    5672   case 87:
    5673 
    5674 /* Line 1806 of yacc.c  */
    5675 #line 519 "parser.yy"
    56765545    { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::GEThan ), (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en) ); }
    56775546    break;
     
    56805549
    56815550/* Line 1806 of yacc.c  */
     5551#line 523 "parser.yy"
     5552    { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::Eq ), (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en) ); }
     5553    break;
     5554
     5555  case 90:
     5556
     5557/* Line 1806 of yacc.c  */
    56825558#line 525 "parser.yy"
    5683     { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::Eq ), (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en) ); }
    5684     break;
    5685 
    5686   case 90:
    5687 
    5688 /* Line 1806 of yacc.c  */
    5689 #line 527 "parser.yy"
    56905559    { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::Neq ), (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en) ); }
    56915560    break;
     
    56945563
    56955564/* Line 1806 of yacc.c  */
    5696 #line 533 "parser.yy"
     5565#line 531 "parser.yy"
    56975566    { (yyval.en) =new CompositeExprNode( new OperatorNode( OperatorNode::BitAnd ), (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en) ); }
    56985567    break;
     
    57015570
    57025571/* Line 1806 of yacc.c  */
    5703 #line 539 "parser.yy"
     5572#line 537 "parser.yy"
    57045573    { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::Xor ), (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en) ); }
    57055574    break;
     
    57085577
    57095578/* Line 1806 of yacc.c  */
    5710 #line 545 "parser.yy"
     5579#line 543 "parser.yy"
    57115580    { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::BitOr ), (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en) ); }
    57125581    break;
     
    57155584
    57165585/* Line 1806 of yacc.c  */
    5717 #line 551 "parser.yy"
     5586#line 549 "parser.yy"
    57185587    { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::And ), (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en) ); }
    57195588    break;
     
    57225591
    57235592/* Line 1806 of yacc.c  */
    5724 #line 557 "parser.yy"
     5593#line 555 "parser.yy"
    57255594    { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::Or ), (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en) ); }
    57265595    break;
     
    57295598
    57305599/* Line 1806 of yacc.c  */
     5600#line 561 "parser.yy"
     5601    { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::Cond ), (ExpressionNode *)mkList( (*(yyvsp[(1) - (5)].en), *(yyvsp[(3) - (5)].en), *(yyvsp[(5) - (5)].en) ) ) ); }
     5602    break;
     5603
     5604  case 103:
     5605
     5606/* Line 1806 of yacc.c  */
    57315607#line 563 "parser.yy"
     5608    { (yyval.en)=new CompositeExprNode( new OperatorNode( OperatorNode::NCond ), (yyvsp[(1) - (4)].en), (yyvsp[(4) - (4)].en) ); }
     5609    break;
     5610
     5611  case 104:
     5612
     5613/* Line 1806 of yacc.c  */
     5614#line 565 "parser.yy"
    57325615    { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::Cond ), (ExpressionNode *)mkList( (*(yyvsp[(1) - (5)].en), *(yyvsp[(3) - (5)].en), *(yyvsp[(5) - (5)].en) ) ) ); }
    57335616    break;
    57345617
    5735   case 103:
    5736 
    5737 /* Line 1806 of yacc.c  */
    5738 #line 565 "parser.yy"
    5739     { (yyval.en)=new CompositeExprNode( new OperatorNode( OperatorNode::NCond ), (yyvsp[(1) - (4)].en), (yyvsp[(4) - (4)].en) ); }
    5740     break;
    5741 
    5742   case 104:
    5743 
    5744 /* Line 1806 of yacc.c  */
    5745 #line 567 "parser.yy"
    5746     { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::Cond ), (ExpressionNode *)mkList( (*(yyvsp[(1) - (5)].en), *(yyvsp[(3) - (5)].en), *(yyvsp[(5) - (5)].en) ) ) ); }
    5747     break;
    5748 
    57495618  case 107:
    57505619
    57515620/* Line 1806 of yacc.c  */
     5621#line 576 "parser.yy"
     5622    { (yyval.en) =new CompositeExprNode( new OperatorNode( OperatorNode::Assign ), (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en) ); }
     5623    break;
     5624
     5625  case 108:
     5626
     5627/* Line 1806 of yacc.c  */
    57525628#line 578 "parser.yy"
    5753     { (yyval.en) =new CompositeExprNode( new OperatorNode( OperatorNode::Assign ), (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en) ); }
    5754     break;
    5755 
    5756   case 108:
     5629    { (yyval.en) =new CompositeExprNode( (yyvsp[(2) - (3)].en), (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en) ); }
     5630    break;
     5631
     5632  case 109:
    57575633
    57585634/* Line 1806 of yacc.c  */
    57595635#line 580 "parser.yy"
    5760     { (yyval.en) =new CompositeExprNode( (yyvsp[(2) - (3)].en), (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en) ); }
    5761     break;
    5762 
    5763   case 109:
    5764 
    5765 /* Line 1806 of yacc.c  */
    5766 #line 582 "parser.yy"
    57675636    { (yyval.en) = ( (yyvsp[(2) - (2)].en) == 0 ) ? (yyvsp[(1) - (2)].en) : new CompositeExprNode( new OperatorNode( OperatorNode::Assign ), (yyvsp[(1) - (2)].en), (yyvsp[(2) - (2)].en) ); }
    57685637    break;
     
    57715640
    57725641/* Line 1806 of yacc.c  */
    5773 #line 587 "parser.yy"
     5642#line 585 "parser.yy"
    57745643    { (yyval.en) = new NullExprNode; }
    57755644    break;
     
    57785647
    57795648/* Line 1806 of yacc.c  */
     5649#line 593 "parser.yy"
     5650    { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::TupleC ) ); }
     5651    break;
     5652
     5653  case 113:
     5654
     5655/* Line 1806 of yacc.c  */
    57805656#line 595 "parser.yy"
    5781     { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::TupleC ) ); }
    5782     break;
    5783 
    5784   case 113:
     5657    { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::TupleC ), (yyvsp[(3) - (5)].en) ); }
     5658    break;
     5659
     5660  case 114:
    57855661
    57865662/* Line 1806 of yacc.c  */
    57875663#line 597 "parser.yy"
    5788     { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::TupleC ), (yyvsp[(3) - (5)].en) ); }
    5789     break;
    5790 
    5791   case 114:
     5664    { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::TupleC ), (ExpressionNode *)(new NullExprNode)->set_link( (yyvsp[(4) - (6)].en) ) ); }
     5665    break;
     5666
     5667  case 115:
    57925668
    57935669/* Line 1806 of yacc.c  */
    57945670#line 599 "parser.yy"
    5795     { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::TupleC ), (ExpressionNode *)(new NullExprNode)->set_link( (yyvsp[(4) - (6)].en) ) ); }
    5796     break;
    5797 
    5798   case 115:
    5799 
    5800 /* Line 1806 of yacc.c  */
    5801 #line 601 "parser.yy"
    58025671    { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::TupleC ), (ExpressionNode *)(yyvsp[(3) - (7)].en)->set_link( flattenCommas( (yyvsp[(5) - (7)].en) ) ) ); }
    58035672    break;
     
    58065675
    58075676/* Line 1806 of yacc.c  */
    5808 #line 607 "parser.yy"
     5677#line 605 "parser.yy"
    58095678    { (yyval.en) = (ExpressionNode *)(yyvsp[(1) - (3)].en)->set_link( (yyvsp[(3) - (3)].en) ); }
    58105679    break;
     
    58135682
    58145683/* Line 1806 of yacc.c  */
     5684#line 609 "parser.yy"
     5685    { (yyval.en) = new OperatorNode( OperatorNode::MulAssn ); }
     5686    break;
     5687
     5688  case 119:
     5689
     5690/* Line 1806 of yacc.c  */
     5691#line 610 "parser.yy"
     5692    { (yyval.en) = new OperatorNode( OperatorNode::DivAssn ); }
     5693    break;
     5694
     5695  case 120:
     5696
     5697/* Line 1806 of yacc.c  */
    58155698#line 611 "parser.yy"
    5816     { (yyval.en) = new OperatorNode( OperatorNode::MulAssn ); }
    5817     break;
    5818 
    5819   case 119:
     5699    { (yyval.en) = new OperatorNode( OperatorNode::ModAssn ); }
     5700    break;
     5701
     5702  case 121:
    58205703
    58215704/* Line 1806 of yacc.c  */
    58225705#line 612 "parser.yy"
    5823     { (yyval.en) = new OperatorNode( OperatorNode::DivAssn ); }
    5824     break;
    5825 
    5826   case 120:
     5706    { (yyval.en) = new OperatorNode( OperatorNode::PlusAssn ); }
     5707    break;
     5708
     5709  case 122:
    58275710
    58285711/* Line 1806 of yacc.c  */
    58295712#line 613 "parser.yy"
    5830     { (yyval.en) = new OperatorNode( OperatorNode::ModAssn ); }
    5831     break;
    5832 
    5833   case 121:
     5713    { (yyval.en) = new OperatorNode( OperatorNode::MinusAssn ); }
     5714    break;
     5715
     5716  case 123:
    58345717
    58355718/* Line 1806 of yacc.c  */
    58365719#line 614 "parser.yy"
    5837     { (yyval.en) = new OperatorNode( OperatorNode::PlusAssn ); }
    5838     break;
    5839 
    5840   case 122:
     5720    { (yyval.en) = new OperatorNode( OperatorNode::LSAssn ); }
     5721    break;
     5722
     5723  case 124:
    58415724
    58425725/* Line 1806 of yacc.c  */
    58435726#line 615 "parser.yy"
    5844     { (yyval.en) = new OperatorNode( OperatorNode::MinusAssn ); }
    5845     break;
    5846 
    5847   case 123:
     5727    { (yyval.en) = new OperatorNode( OperatorNode::RSAssn ); }
     5728    break;
     5729
     5730  case 125:
    58485731
    58495732/* Line 1806 of yacc.c  */
    58505733#line 616 "parser.yy"
    5851     { (yyval.en) = new OperatorNode( OperatorNode::LSAssn ); }
    5852     break;
    5853 
    5854   case 124:
     5734    { (yyval.en) = new OperatorNode( OperatorNode::AndAssn ); }
     5735    break;
     5736
     5737  case 126:
    58555738
    58565739/* Line 1806 of yacc.c  */
    58575740#line 617 "parser.yy"
    5858     { (yyval.en) = new OperatorNode( OperatorNode::RSAssn ); }
    5859     break;
    5860 
    5861   case 125:
     5741    { (yyval.en) = new OperatorNode( OperatorNode::ERAssn ); }
     5742    break;
     5743
     5744  case 127:
    58625745
    58635746/* Line 1806 of yacc.c  */
    58645747#line 618 "parser.yy"
    5865     { (yyval.en) = new OperatorNode( OperatorNode::AndAssn ); }
    5866     break;
    5867 
    5868   case 126:
    5869 
    5870 /* Line 1806 of yacc.c  */
    5871 #line 619 "parser.yy"
    5872     { (yyval.en) = new OperatorNode( OperatorNode::ERAssn ); }
    5873     break;
    5874 
    5875   case 127:
    5876 
    5877 /* Line 1806 of yacc.c  */
    5878 #line 620 "parser.yy"
    58795748    { (yyval.en) = new OperatorNode( OperatorNode::OrAssn ); }
    58805749    break;
     
    58835752
    58845753/* Line 1806 of yacc.c  */
    5885 #line 626 "parser.yy"
     5754#line 624 "parser.yy"
    58865755    { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::Comma ), (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en) ); }
    58875756    break;
     
    58905759
    58915760/* Line 1806 of yacc.c  */
    5892 #line 631 "parser.yy"
     5761#line 629 "parser.yy"
    58935762    { (yyval.en) = 0; }
    58945763    break;
     
    58975766
    58985767/* Line 1806 of yacc.c  */
    5899 #line 640 "parser.yy"
     5768#line 638 "parser.yy"
    59005769    { (yyval.sn) = (yyvsp[(1) - (1)].sn); }
    59015770    break;
     
    59045773
    59055774/* Line 1806 of yacc.c  */
    5906 #line 647 "parser.yy"
     5775#line 645 "parser.yy"
    59075776    {
    59085777                        Token fn; fn.str = new std::string( "^?{}" ); // location undefined
     
    59155784
    59165785/* Line 1806 of yacc.c  */
    5917 #line 657 "parser.yy"
     5786#line 654 "parser.yy"
    59185787    {
    59195788                        (yyval.sn) = (yyvsp[(4) - (4)].sn)->add_label( (yyvsp[(1) - (4)].tok) );
     
    59245793
    59255794/* Line 1806 of yacc.c  */
    5926 #line 664 "parser.yy"
     5795#line 661 "parser.yy"
    59275796    { (yyval.sn) = new CompoundStmtNode( (StatementNode *)0 ); }
    59285797    break;
     
    59315800
    59325801/* Line 1806 of yacc.c  */
    5933 #line 671 "parser.yy"
     5802#line 668 "parser.yy"
    59345803    { (yyval.sn) = new CompoundStmtNode( (yyvsp[(5) - (7)].sn) ); }
    59355804    break;
     
    59385807
    59395808/* Line 1806 of yacc.c  */
    5940 #line 677 "parser.yy"
     5809#line 674 "parser.yy"
    59415810    { if ( (yyvsp[(1) - (3)].sn) != 0 ) { (yyvsp[(1) - (3)].sn)->set_link( (yyvsp[(3) - (3)].sn) ); (yyval.sn) = (yyvsp[(1) - (3)].sn); } }
    59425811    break;
     
    59455814
    59465815/* Line 1806 of yacc.c  */
    5947 #line 682 "parser.yy"
     5816#line 679 "parser.yy"
    59485817    { (yyval.sn) = new StatementNode( (yyvsp[(1) - (1)].decl) ); }
    59495818    break;
     
    59525821
    59535822/* Line 1806 of yacc.c  */
    5954 #line 684 "parser.yy"
     5823#line 681 "parser.yy"
    59555824    { (yyval.sn) = new StatementNode( (yyvsp[(2) - (2)].decl) )/*->set_extension( true )*/; }
    59565825    break;
     
    59595828
    59605829/* Line 1806 of yacc.c  */
    5961 #line 686 "parser.yy"
     5830#line 683 "parser.yy"
    59625831    { (yyval.sn) = new StatementNode( (yyvsp[(1) - (1)].decl) ); }
    59635832    break;
     
    59665835
    59675836/* Line 1806 of yacc.c  */
    5968 #line 693 "parser.yy"
     5837#line 690 "parser.yy"
    59695838    { if ( (yyvsp[(1) - (2)].sn) != 0 ) { (yyvsp[(1) - (2)].sn)->set_link( (yyvsp[(2) - (2)].sn) ); (yyval.sn) = (yyvsp[(1) - (2)].sn); } }
    59705839    break;
     
    59735842
    59745843/* Line 1806 of yacc.c  */
    5975 #line 698 "parser.yy"
     5844#line 695 "parser.yy"
    59765845    { (yyval.sn) = new StatementNode( StatementNode::Exp, (yyvsp[(1) - (2)].en), 0 ); }
    59775846    break;
     
    59805849
    59815850/* Line 1806 of yacc.c  */
    5982 #line 704 "parser.yy"
     5851#line 701 "parser.yy"
    59835852    { (yyval.sn) = new StatementNode( StatementNode::If, (yyvsp[(3) - (5)].en), (yyvsp[(5) - (5)].sn) ); }
    59845853    break;
     
    59875856
    59885857/* Line 1806 of yacc.c  */
    5989 #line 706 "parser.yy"
     5858#line 703 "parser.yy"
    59905859    { (yyval.sn) = new StatementNode( StatementNode::If, (yyvsp[(3) - (7)].en), (StatementNode *)mkList((*(yyvsp[(5) - (7)].sn), *(yyvsp[(7) - (7)].sn) )) ); }
    59915860    break;
     
    59945863
    59955864/* Line 1806 of yacc.c  */
    5996 #line 708 "parser.yy"
     5865#line 705 "parser.yy"
    59975866    { (yyval.sn) = new StatementNode( StatementNode::Switch, (yyvsp[(3) - (5)].en), (yyvsp[(5) - (5)].sn) ); }
    59985867    break;
     
    60015870
    60025871/* Line 1806 of yacc.c  */
    6003 #line 710 "parser.yy"
     5872#line 707 "parser.yy"
    60045873    { (yyval.sn) = new StatementNode( StatementNode::Switch, (yyvsp[(3) - (9)].en), (yyvsp[(8) - (9)].sn) ); /* xxx */ }
    60055874    break;
     
    60085877
    60095878/* Line 1806 of yacc.c  */
    6010 #line 715 "parser.yy"
     5879#line 712 "parser.yy"
    60115880    { (yyval.sn) = new StatementNode( StatementNode::Choose, (yyvsp[(3) - (5)].en), (yyvsp[(5) - (5)].sn) ); }
    60125881    break;
     
    60155884
    60165885/* Line 1806 of yacc.c  */
    6017 #line 717 "parser.yy"
     5886#line 714 "parser.yy"
    60185887    { (yyval.sn) = new StatementNode( StatementNode::Choose, (yyvsp[(3) - (9)].en), (yyvsp[(8) - (9)].sn) ); }
    60195888    break;
     
    60225891
    60235892/* Line 1806 of yacc.c  */
    6024 #line 724 "parser.yy"
     5893#line 721 "parser.yy"
    60255894    { (yyval.en) = (yyvsp[(1) - (1)].en); }
    60265895    break;
     
    60295898
    60305899/* Line 1806 of yacc.c  */
    6031 #line 726 "parser.yy"
     5900#line 723 "parser.yy"
    60325901    { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::Range ), (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en) ); }
    60335902    break;
     
    60365905
    60375906/* Line 1806 of yacc.c  */
    6038 #line 733 "parser.yy"
     5907#line 730 "parser.yy"
    60395908    { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::TupleC ), (ExpressionNode *)(tupleContents( (yyvsp[(1) - (3)].en) ))->set_link( (yyvsp[(3) - (3)].en) ) ); }
    60405909    break;
     
    60435912
    60445913/* Line 1806 of yacc.c  */
    6045 #line 737 "parser.yy"
     5914#line 734 "parser.yy"
    60465915    { (yyval.sn) = new StatementNode( StatementNode::Case, (yyvsp[(2) - (3)].en), 0 ); }
    60475916    break;
     
    60505919
    60515920/* Line 1806 of yacc.c  */
    6052 #line 738 "parser.yy"
     5921#line 735 "parser.yy"
    60535922    { (yyval.sn) = new StatementNode( StatementNode::Default ); }
    60545923    break;
     
    60575926
    60585927/* Line 1806 of yacc.c  */
    6059 #line 744 "parser.yy"
     5928#line 741 "parser.yy"
    60605929    { (yyval.sn) = (StatementNode *)( (yyvsp[(1) - (2)].sn)->set_link( (yyvsp[(2) - (2)].sn) )); }
    60615930    break;
     
    60645933
    60655934/* Line 1806 of yacc.c  */
    6066 #line 748 "parser.yy"
     5935#line 745 "parser.yy"
    60675936    { (yyval.sn) = (yyvsp[(1) - (2)].sn)->append_last_case( (yyvsp[(2) - (2)].sn) ); }
    60685937    break;
     
    60715940
    60725941/* Line 1806 of yacc.c  */
    6073 #line 753 "parser.yy"
     5942#line 750 "parser.yy"
    60745943    { (yyval.sn) = 0; }
    60755944    break;
     
    60785947
    60795948/* Line 1806 of yacc.c  */
    6080 #line 759 "parser.yy"
     5949#line 756 "parser.yy"
    60815950    { (yyval.sn) = (yyvsp[(1) - (2)].sn)->append_last_case( (yyvsp[(2) - (2)].sn) ); }
    60825951    break;
     
    60855954
    60865955/* Line 1806 of yacc.c  */
    6087 #line 761 "parser.yy"
     5956#line 758 "parser.yy"
    60885957    { (yyval.sn) = (StatementNode *)( (yyvsp[(1) - (3)].sn)->set_link( (yyvsp[(2) - (3)].sn)->append_last_case( (yyvsp[(3) - (3)].sn) ))); }
    60895958    break;
     
    60925961
    60935962/* Line 1806 of yacc.c  */
    6094 #line 766 "parser.yy"
     5963#line 763 "parser.yy"
    60955964    { (yyval.sn) = 0; }
    60965965    break;
     
    60995968
    61005969/* Line 1806 of yacc.c  */
    6101 #line 772 "parser.yy"
     5970#line 769 "parser.yy"
    61025971    { (yyval.sn) = (yyvsp[(1) - (2)].sn)->append_last_case( (yyvsp[(2) - (2)].sn) ); }
    61035972    break;
     
    61065975
    61075976/* Line 1806 of yacc.c  */
    6108 #line 774 "parser.yy"
     5977#line 771 "parser.yy"
    61095978    { (yyval.sn) = (yyvsp[(1) - (3)].sn)->append_last_case((StatementNode *)mkList((*(yyvsp[(2) - (3)].sn),*(yyvsp[(3) - (3)].sn) ))); }
    61105979    break;
     
    61135982
    61145983/* Line 1806 of yacc.c  */
    6115 #line 776 "parser.yy"
     5984#line 773 "parser.yy"
    61165985    { (yyval.sn) = (StatementNode *)( (yyvsp[(1) - (3)].sn)->set_link( (yyvsp[(2) - (3)].sn)->append_last_case( (yyvsp[(3) - (3)].sn) ))); }
    61175986    break;
     
    61205989
    61215990/* Line 1806 of yacc.c  */
    6122 #line 778 "parser.yy"
     5991#line 775 "parser.yy"
    61235992    { (yyval.sn) = (StatementNode *)( (yyvsp[(1) - (4)].sn)->set_link( (yyvsp[(2) - (4)].sn)->append_last_case((StatementNode *)mkList((*(yyvsp[(3) - (4)].sn),*(yyvsp[(4) - (4)].sn) ))))); }
    61245993    break;
     
    61275996
    61285997/* Line 1806 of yacc.c  */
    6129 #line 783 "parser.yy"
     5998#line 780 "parser.yy"
    61305999    { (yyval.sn) = 0; }
    61316000    break;
     
    61346003
    61356004/* Line 1806 of yacc.c  */
    6136 #line 788 "parser.yy"
     6005#line 785 "parser.yy"
    61376006    { (yyval.sn) = new StatementNode( StatementNode::Fallthru ); }
    61386007    break;
     
    61416010
    61426011/* Line 1806 of yacc.c  */
    6143 #line 789 "parser.yy"
     6012#line 786 "parser.yy"
    61446013    { (yyval.sn) = new StatementNode( StatementNode::Fallthru ); }
    61456014    break;
     
    61486017
    61496018/* Line 1806 of yacc.c  */
    6150 #line 794 "parser.yy"
     6019#line 791 "parser.yy"
    61516020    { (yyval.sn) = new StatementNode( StatementNode::While, (yyvsp[(3) - (5)].en), (yyvsp[(5) - (5)].sn) ); }
    61526021    break;
     
    61556024
    61566025/* Line 1806 of yacc.c  */
    6157 #line 796 "parser.yy"
     6026#line 793 "parser.yy"
    61586027    { (yyval.sn) = new StatementNode( StatementNode::Do, (yyvsp[(5) - (7)].en), (yyvsp[(2) - (7)].sn) ); }
    61596028    break;
     
    61626031
    61636032/* Line 1806 of yacc.c  */
    6164 #line 798 "parser.yy"
     6033#line 795 "parser.yy"
    61656034    { (yyval.sn) = new StatementNode( StatementNode::For, (yyvsp[(4) - (6)].en), (yyvsp[(6) - (6)].sn) ); }
    61666035    break;
     
    61696038
    61706039/* Line 1806 of yacc.c  */
    6171 #line 803 "parser.yy"
     6040#line 800 "parser.yy"
    61726041    { (yyval.en) = new ForCtlExprNode( (yyvsp[(1) - (6)].en), (yyvsp[(4) - (6)].en), (yyvsp[(6) - (6)].en) ); }
    61736042    break;
     
    61766045
    61776046/* Line 1806 of yacc.c  */
    6178 #line 805 "parser.yy"
     6047#line 802 "parser.yy"
    61796048    { (yyval.en) = new ForCtlExprNode( (yyvsp[(1) - (4)].decl), (yyvsp[(2) - (4)].en), (yyvsp[(4) - (4)].en) ); }
    61806049    break;
     
    61836052
    61846053/* Line 1806 of yacc.c  */
    6185 #line 810 "parser.yy"
     6054#line 807 "parser.yy"
    61866055    { (yyval.sn) = new StatementNode( StatementNode::Goto, (yyvsp[(2) - (3)].tok) ); }
    61876056    break;
     
    61906059
    61916060/* Line 1806 of yacc.c  */
     6061#line 811 "parser.yy"
     6062    { (yyval.sn) = new StatementNode( StatementNode::Goto, (yyvsp[(3) - (4)].en) ); }
     6063    break;
     6064
     6065  case 190:
     6066
     6067/* Line 1806 of yacc.c  */
    61926068#line 814 "parser.yy"
    6193     { (yyval.sn) = new StatementNode( StatementNode::Goto, (yyvsp[(3) - (4)].en) ); }
    6194     break;
    6195 
    6196   case 190:
    6197 
    6198 /* Line 1806 of yacc.c  */
    6199 #line 817 "parser.yy"
    62006069    { (yyval.sn) = new StatementNode( StatementNode::Continue ); }
    62016070    break;
     
    62046073
    62056074/* Line 1806 of yacc.c  */
     6075#line 818 "parser.yy"
     6076    { (yyval.sn) = new StatementNode( StatementNode::Continue, (yyvsp[(2) - (3)].tok) ); }
     6077    break;
     6078
     6079  case 192:
     6080
     6081/* Line 1806 of yacc.c  */
    62066082#line 821 "parser.yy"
    6207     { (yyval.sn) = new StatementNode( StatementNode::Continue, (yyvsp[(2) - (3)].tok) ); }
    6208     break;
    6209 
    6210   case 192:
    6211 
    6212 /* Line 1806 of yacc.c  */
    6213 #line 824 "parser.yy"
    62146083    { (yyval.sn) = new StatementNode( StatementNode::Break ); }
    62156084    break;
     
    62186087
    62196088/* Line 1806 of yacc.c  */
    6220 #line 828 "parser.yy"
     6089#line 825 "parser.yy"
    62216090    { (yyval.sn) = new StatementNode( StatementNode::Break, (yyvsp[(2) - (3)].tok) ); }
    62226091    break;
     
    62256094
    62266095/* Line 1806 of yacc.c  */
    6227 #line 830 "parser.yy"
     6096#line 827 "parser.yy"
    62286097    { (yyval.sn) = new StatementNode( StatementNode::Return, (yyvsp[(2) - (3)].en), 0 ); }
    62296098    break;
     
    62326101
    62336102/* Line 1806 of yacc.c  */
    6234 #line 832 "parser.yy"
     6103#line 829 "parser.yy"
    62356104    { (yyval.sn) = new StatementNode( StatementNode::Throw, (yyvsp[(2) - (3)].en), 0 ); }
    62366105    break;
     
    62396108
    62406109/* Line 1806 of yacc.c  */
    6241 #line 836 "parser.yy"
     6110#line 833 "parser.yy"
    62426111    { (yyval.sn) = new StatementNode( StatementNode::Throw, (yyvsp[(2) - (3)].en), 0 ); }
    62436112    break;
     
    62466115
    62476116/* Line 1806 of yacc.c  */
    6248 #line 838 "parser.yy"
     6117#line 835 "parser.yy"
    62496118    { (yyval.sn) = new StatementNode( StatementNode::Throw, (yyvsp[(2) - (5)].en), 0 ); }
    62506119    break;
     
    62536122
    62546123/* Line 1806 of yacc.c  */
    6255 #line 845 "parser.yy"
     6124#line 842 "parser.yy"
    62566125    { (yyval.sn) = new StatementNode( StatementNode::Try, 0,(StatementNode *)(mkList((*(yyvsp[(2) - (3)].sn),*(yyvsp[(3) - (3)].pn) )))); }
    62576126    break;
     
    62606129
    62616130/* Line 1806 of yacc.c  */
    6262 #line 847 "parser.yy"
     6131#line 844 "parser.yy"
    62636132    { (yyval.sn) = new StatementNode( StatementNode::Try, 0,(StatementNode *)(mkList((*(yyvsp[(2) - (3)].sn),*(yyvsp[(3) - (3)].pn) )))); }
    62646133    break;
     
    62676136
    62686137/* Line 1806 of yacc.c  */
    6269 #line 849 "parser.yy"
     6138#line 846 "parser.yy"
    62706139    {
    62716140                        (yyvsp[(3) - (4)].pn)->set_link( (yyvsp[(4) - (4)].pn) );
     
    62776146
    62786147/* Line 1806 of yacc.c  */
    6279 #line 860 "parser.yy"
     6148#line 857 "parser.yy"
    62806149    { (yyval.pn) = StatementNode::newCatchStmt( 0, (yyvsp[(5) - (5)].sn), true ); }
    62816150    break;
     
    62846153
    62856154/* Line 1806 of yacc.c  */
    6286 #line 862 "parser.yy"
     6155#line 859 "parser.yy"
    62876156    { (yyval.pn) = (yyvsp[(1) - (6)].pn)->set_link( StatementNode::newCatchStmt( 0, (yyvsp[(6) - (6)].sn), true ) ); }
    62886157    break;
     
    62916160
    62926161/* Line 1806 of yacc.c  */
    6293 #line 864 "parser.yy"
     6162#line 861 "parser.yy"
    62946163    { (yyval.pn) = StatementNode::newCatchStmt( 0, (yyvsp[(5) - (5)].sn), true ); }
    62956164    break;
     
    62986167
    62996168/* Line 1806 of yacc.c  */
    6300 #line 866 "parser.yy"
     6169#line 863 "parser.yy"
    63016170    { (yyval.pn) = (yyvsp[(1) - (6)].pn)->set_link( StatementNode::newCatchStmt( 0, (yyvsp[(6) - (6)].sn), true ) ); }
    63026171    break;
     
    63056174
    63066175/* Line 1806 of yacc.c  */
    6307 #line 871 "parser.yy"
     6176#line 868 "parser.yy"
    63086177    { (yyval.pn) = StatementNode::newCatchStmt( (yyvsp[(5) - (9)].decl), (yyvsp[(8) - (9)].sn) ); }
    63096178    break;
     
    63126181
    63136182/* Line 1806 of yacc.c  */
    6314 #line 873 "parser.yy"
     6183#line 870 "parser.yy"
    63156184    { (yyval.pn) = (yyvsp[(1) - (10)].pn)->set_link( StatementNode::newCatchStmt( (yyvsp[(6) - (10)].decl), (yyvsp[(9) - (10)].sn) ) ); }
    63166185    break;
     
    63196188
    63206189/* Line 1806 of yacc.c  */
    6321 #line 875 "parser.yy"
     6190#line 872 "parser.yy"
    63226191    { (yyval.pn) = StatementNode::newCatchStmt( (yyvsp[(5) - (9)].decl), (yyvsp[(8) - (9)].sn) ); }
    63236192    break;
     
    63266195
    63276196/* Line 1806 of yacc.c  */
    6328 #line 877 "parser.yy"
     6197#line 874 "parser.yy"
    63296198    { (yyval.pn) = (yyvsp[(1) - (10)].pn)->set_link( StatementNode::newCatchStmt( (yyvsp[(6) - (10)].decl), (yyvsp[(9) - (10)].sn) ) ); }
    63306199    break;
     
    63336202
    63346203/* Line 1806 of yacc.c  */
    6335 #line 882 "parser.yy"
     6204#line 879 "parser.yy"
    63366205    {
    63376206                        (yyval.pn) = new StatementNode( StatementNode::Finally, 0, (yyvsp[(2) - (2)].sn) );
     
    63436212
    63446213/* Line 1806 of yacc.c  */
    6345 #line 896 "parser.yy"
     6214#line 893 "parser.yy"
    63466215    {
    63476216                        typedefTable.addToEnclosingScope( TypedefTable::ID );
     
    63536222
    63546223/* Line 1806 of yacc.c  */
    6355 #line 901 "parser.yy"
     6224#line 898 "parser.yy"
    63566225    { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addType( (yyvsp[(1) - (2)].decl) ); }
    63576226    break;
     
    63606229
    63616230/* Line 1806 of yacc.c  */
    6362 #line 903 "parser.yy"
     6231#line 900 "parser.yy"
    63636232    {
    63646233                        typedefTable.addToEnclosingScope( TypedefTable::ID );
     
    63706239
    63716240/* Line 1806 of yacc.c  */
    6372 #line 912 "parser.yy"
     6241#line 909 "parser.yy"
    63736242    { (yyval.sn) = new AsmStmtNode( StatementNode::Asm, (yyvsp[(2) - (6)].flag), (yyvsp[(4) - (6)].constant), 0 ); }
    63746243    break;
     
    63776246
    63786247/* Line 1806 of yacc.c  */
    6379 #line 914 "parser.yy"
     6248#line 911 "parser.yy"
    63806249    { (yyval.sn) = new AsmStmtNode( StatementNode::Asm, (yyvsp[(2) - (8)].flag), (yyvsp[(4) - (8)].constant), (yyvsp[(6) - (8)].en) ); }
    63816250    break;
     
    63846253
    63856254/* Line 1806 of yacc.c  */
    6386 #line 916 "parser.yy"
     6255#line 913 "parser.yy"
    63876256    { (yyval.sn) = new AsmStmtNode( StatementNode::Asm, (yyvsp[(2) - (10)].flag), (yyvsp[(4) - (10)].constant), (yyvsp[(6) - (10)].en), (yyvsp[(8) - (10)].en) ); }
    63886257    break;
     
    63916260
    63926261/* Line 1806 of yacc.c  */
    6393 #line 918 "parser.yy"
     6262#line 915 "parser.yy"
    63946263    { (yyval.sn) = new AsmStmtNode( StatementNode::Asm, (yyvsp[(2) - (12)].flag), (yyvsp[(4) - (12)].constant), (yyvsp[(6) - (12)].en), (yyvsp[(8) - (12)].en), (yyvsp[(10) - (12)].constant) ); }
    63956264    break;
     
    63986267
    63996268/* Line 1806 of yacc.c  */
    6400 #line 920 "parser.yy"
     6269#line 917 "parser.yy"
    64016270    { (yyval.sn) = new AsmStmtNode( StatementNode::Asm, (yyvsp[(2) - (14)].flag), (yyvsp[(5) - (14)].constant), 0, (yyvsp[(8) - (14)].en), (yyvsp[(10) - (14)].constant), (yyvsp[(12) - (14)].label) ); }
    64026271    break;
     
    64056274
    64066275/* Line 1806 of yacc.c  */
    6407 #line 925 "parser.yy"
     6276#line 922 "parser.yy"
    64086277    { (yyval.flag) = false; }
    64096278    break;
     
    64126281
    64136282/* Line 1806 of yacc.c  */
    6414 #line 927 "parser.yy"
     6283#line 924 "parser.yy"
    64156284    { (yyval.flag) = true; }
    64166285    break;
     
    64196288
    64206289/* Line 1806 of yacc.c  */
    6421 #line 932 "parser.yy"
     6290#line 929 "parser.yy"
    64226291    { (yyval.en) = 0; }
    64236292    break;
     
    64266295
    64276296/* Line 1806 of yacc.c  */
    6428 #line 939 "parser.yy"
     6297#line 936 "parser.yy"
    64296298    { (yyval.en) = (ExpressionNode *)(yyvsp[(1) - (3)].en)->set_link( (yyvsp[(3) - (3)].en) ); }
    64306299    break;
     
    64336302
    64346303/* Line 1806 of yacc.c  */
    6435 #line 944 "parser.yy"
     6304#line 941 "parser.yy"
    64366305    { (yyval.en) = new AsmExprNode( 0, (yyvsp[(1) - (4)].constant), (yyvsp[(3) - (4)].en) ); }
    64376306    break;
     
    64406309
    64416310/* Line 1806 of yacc.c  */
    6442 #line 946 "parser.yy"
     6311#line 943 "parser.yy"
    64436312    { (yyval.en) = new AsmExprNode( (yyvsp[(2) - (7)].en), (yyvsp[(4) - (7)].constant), (yyvsp[(6) - (7)].en) ); }
    64446313    break;
     
    64476316
    64486317/* Line 1806 of yacc.c  */
    6449 #line 951 "parser.yy"
     6318#line 948 "parser.yy"
    64506319    { (yyval.constant) = 0; }
    64516320    break;
     
    64546323
    64556324/* Line 1806 of yacc.c  */
    6456 #line 953 "parser.yy"
     6325#line 950 "parser.yy"
    64576326    { (yyval.constant) = (yyvsp[(1) - (1)].constant); }
    64586327    break;
     
    64616330
    64626331/* Line 1806 of yacc.c  */
    6463 #line 955 "parser.yy"
     6332#line 952 "parser.yy"
    64646333    { (yyval.constant) = (ConstantNode *)(yyvsp[(1) - (3)].constant)->set_link( (yyvsp[(3) - (3)].constant) ); }
    64656334    break;
     
    64686337
    64696338/* Line 1806 of yacc.c  */
    6470 #line 960 "parser.yy"
     6339#line 957 "parser.yy"
    64716340    { (yyval.label) = new LabelNode(); (yyval.label)->append_label( (yyvsp[(1) - (1)].tok) ); }
    64726341    break;
     
    64756344
    64766345/* Line 1806 of yacc.c  */
    6477 #line 962 "parser.yy"
     6346#line 959 "parser.yy"
    64786347    { (yyval.label) = (yyvsp[(1) - (3)].label); (yyvsp[(1) - (3)].label)->append_label( (yyvsp[(3) - (3)].tok) ); }
    64796348    break;
     
    64826351
    64836352/* Line 1806 of yacc.c  */
    6484 #line 969 "parser.yy"
     6353#line 966 "parser.yy"
    64856354    { (yyval.decl) = 0; }
    64866355    break;
     
    64896358
    64906359/* Line 1806 of yacc.c  */
    6491 #line 976 "parser.yy"
     6360#line 973 "parser.yy"
    64926361    { (yyval.decl) = (yyvsp[(1) - (3)].decl)->appendList( (yyvsp[(3) - (3)].decl) ); }
    64936362    break;
     
    64966365
    64976366/* Line 1806 of yacc.c  */
    6498 #line 981 "parser.yy"
     6367#line 978 "parser.yy"
    64996368    { (yyval.decl) = 0; }
    65006369    break;
     
    65036372
    65046373/* Line 1806 of yacc.c  */
    6505 #line 988 "parser.yy"
     6374#line 985 "parser.yy"
    65066375    { (yyval.decl) = (yyvsp[(1) - (3)].decl)->appendList( (yyvsp[(3) - (3)].decl) ); }
    65076376    break;
     
    65106379
    65116380/* Line 1806 of yacc.c  */
    6512 #line 1002 "parser.yy"
     6381#line 999 "parser.yy"
    65136382    {}
    65146383    break;
     
    65176386
    65186387/* Line 1806 of yacc.c  */
    6519 #line 1003 "parser.yy"
     6388#line 1000 "parser.yy"
    65206389    {}
    65216390    break;
     
    65246393
    65256394/* Line 1806 of yacc.c  */
    6526 #line 1032 "parser.yy"
     6395#line 1029 "parser.yy"
    65276396    {
    65286397                        typedefTable.addToEnclosingScope( TypedefTable::ID );
     
    65346403
    65356404/* Line 1806 of yacc.c  */
    6536 #line 1039 "parser.yy"
     6405#line 1036 "parser.yy"
    65376406    {
    65386407                        typedefTable.addToEnclosingScope( TypedefTable::ID );
     
    65446413
    65456414/* Line 1806 of yacc.c  */
    6546 #line 1044 "parser.yy"
     6415#line 1041 "parser.yy"
    65476416    {
    65486417                        typedefTable.addToEnclosingScope( *(yyvsp[(5) - (6)].tok), TypedefTable::ID );
     
    65546423
    65556424/* Line 1806 of yacc.c  */
    6556 #line 1054 "parser.yy"
     6425#line 1051 "parser.yy"
    65576426    {
    65586427                        typedefTable.setNextIdentifier( *(yyvsp[(2) - (3)].tok) );
     
    65646433
    65656434/* Line 1806 of yacc.c  */
    6566 #line 1059 "parser.yy"
     6435#line 1056 "parser.yy"
    65676436    {
    65686437                        typedefTable.setNextIdentifier( *(yyvsp[(2) - (3)].tok) );
     
    65746443
    65756444/* Line 1806 of yacc.c  */
    6576 #line 1064 "parser.yy"
     6445#line 1061 "parser.yy"
    65776446    {
    65786447                        typedefTable.setNextIdentifier( *(yyvsp[(3) - (4)].tok) );
     
    65846453
    65856454/* Line 1806 of yacc.c  */
    6586 #line 1072 "parser.yy"
     6455#line 1069 "parser.yy"
    65876456    {
    65886457                        typedefTable.addToEnclosingScope( TypedefTable::ID );
     
    65946463
    65956464/* Line 1806 of yacc.c  */
    6596 #line 1077 "parser.yy"
     6465#line 1074 "parser.yy"
    65976466    {
    65986467                        typedefTable.addToEnclosingScope( TypedefTable::ID );
     
    66046473
    66056474/* Line 1806 of yacc.c  */
    6606 #line 1082 "parser.yy"
     6475#line 1079 "parser.yy"
    66076476    {
    66086477                        typedefTable.addToEnclosingScope( TypedefTable::ID );
     
    66146483
    66156484/* Line 1806 of yacc.c  */
    6616 #line 1087 "parser.yy"
     6485#line 1084 "parser.yy"
    66176486    {
    66186487                        typedefTable.addToEnclosingScope( TypedefTable::ID );
     
    66246493
    66256494/* Line 1806 of yacc.c  */
    6626 #line 1092 "parser.yy"
     6495#line 1089 "parser.yy"
    66276496    {
    66286497                        typedefTable.addToEnclosingScope( *(yyvsp[(5) - (5)].tok), TypedefTable::ID );
     
    66346503
    66356504/* Line 1806 of yacc.c  */
    6636 #line 1100 "parser.yy"
     6505#line 1097 "parser.yy"
    66376506    {
    66386507                        (yyval.decl) = DeclarationNode::newFunction( (yyvsp[(3) - (8)].tok), DeclarationNode::newTuple( 0 ), (yyvsp[(6) - (8)].decl), 0, true );
     
    66436512
    66446513/* Line 1806 of yacc.c  */
    6645 #line 1123 "parser.yy"
     6514#line 1120 "parser.yy"
    66466515    {
    66476516                        (yyval.decl) = DeclarationNode::newFunction( (yyvsp[(2) - (7)].tok), (yyvsp[(1) - (7)].decl), (yyvsp[(5) - (7)].decl), 0, true );
     
    66526521
    66536522/* Line 1806 of yacc.c  */
    6654 #line 1127 "parser.yy"
     6523#line 1124 "parser.yy"
    66556524    {
    66566525                        (yyval.decl) = DeclarationNode::newFunction( (yyvsp[(2) - (7)].tok), (yyvsp[(1) - (7)].decl), (yyvsp[(5) - (7)].decl), 0, true );
     
    66616530
    66626531/* Line 1806 of yacc.c  */
    6663 #line 1134 "parser.yy"
     6532#line 1131 "parser.yy"
    66646533    { (yyval.decl) = DeclarationNode::newTuple( (yyvsp[(3) - (5)].decl) ); }
    66656534    break;
     
    66686537
    66696538/* Line 1806 of yacc.c  */
    6670 #line 1138 "parser.yy"
     6539#line 1135 "parser.yy"
    66716540    { (yyval.decl) = DeclarationNode::newTuple( (yyvsp[(3) - (9)].decl)->appendList( (yyvsp[(7) - (9)].decl) ) ); }
    66726541    break;
     
    66756544
    66766545/* Line 1806 of yacc.c  */
    6677 #line 1143 "parser.yy"
     6546#line 1140 "parser.yy"
    66786547    {
    66796548                        typedefTable.addToEnclosingScope( TypedefTable::TD );
     
    66856554
    66866555/* Line 1806 of yacc.c  */
    6687 #line 1148 "parser.yy"
     6556#line 1145 "parser.yy"
    66886557    {
    66896558                        typedefTable.addToEnclosingScope( TypedefTable::TD );
     
    66956564
    66966565/* Line 1806 of yacc.c  */
    6697 #line 1153 "parser.yy"
     6566#line 1150 "parser.yy"
    66986567    {
    66996568                        typedefTable.addToEnclosingScope( *(yyvsp[(5) - (5)].tok), TypedefTable::TD );
     
    67056574
    67066575/* Line 1806 of yacc.c  */
    6707 #line 1164 "parser.yy"
     6576#line 1161 "parser.yy"
    67086577    {
    67096578                        typedefTable.addToEnclosingScope( TypedefTable::TD );
     
    67156584
    67166585/* Line 1806 of yacc.c  */
    6717 #line 1169 "parser.yy"
     6586#line 1166 "parser.yy"
    67186587    {
    67196588                        typedefTable.addToEnclosingScope( TypedefTable::TD );
     
    67256594
    67266595/* Line 1806 of yacc.c  */
    6727 #line 1174 "parser.yy"
     6596#line 1171 "parser.yy"
    67286597    {
    67296598                        typedefTable.addToEnclosingScope( TypedefTable::TD );
     
    67356604
    67366605/* Line 1806 of yacc.c  */
    6737 #line 1179 "parser.yy"
     6606#line 1176 "parser.yy"
    67386607    {
    67396608                        typedefTable.addToEnclosingScope( TypedefTable::TD );
     
    67456614
    67466615/* Line 1806 of yacc.c  */
    6747 #line 1184 "parser.yy"
     6616#line 1181 "parser.yy"
    67486617    {
    67496618                        typedefTable.addToEnclosingScope( TypedefTable::TD );
     
    67556624
    67566625/* Line 1806 of yacc.c  */
    6757 #line 1193 "parser.yy"
     6626#line 1190 "parser.yy"
    67586627    {
    67596628                        typedefTable.addToEnclosingScope( *(yyvsp[(2) - (4)].tok), TypedefTable::TD );
     
    67656634
    67666635/* Line 1806 of yacc.c  */
    6767 #line 1198 "parser.yy"
     6636#line 1195 "parser.yy"
    67686637    {
    67696638                        typedefTable.addToEnclosingScope( *(yyvsp[(5) - (7)].tok), TypedefTable::TD );
     
    67756644
    67766645/* Line 1806 of yacc.c  */
    6777 #line 1215 "parser.yy"
     6646#line 1212 "parser.yy"
    67786647    {
    67796648                        typedefTable.addToEnclosingScope( TypedefTable::ID );
     
    67856654
    67866655/* Line 1806 of yacc.c  */
    6787 #line 1220 "parser.yy"
     6656#line 1217 "parser.yy"
    67886657    {
    67896658                        typedefTable.addToEnclosingScope( TypedefTable::ID );
     
    67956664
    67966665/* Line 1806 of yacc.c  */
    6797 #line 1242 "parser.yy"
     6666#line 1239 "parser.yy"
    67986667    { (yyval.decl) = 0; }
    67996668    break;
     
    68026671
    68036672/* Line 1806 of yacc.c  */
    6804 #line 1254 "parser.yy"
     6673#line 1251 "parser.yy"
    68056674    { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); }
    68066675    break;
     
    68096678
    68106679/* Line 1806 of yacc.c  */
    6811 #line 1265 "parser.yy"
     6680#line 1262 "parser.yy"
    68126681    { (yyval.decl) = DeclarationNode::newQualifier( DeclarationNode::Const ); }
    68136682    break;
     
    68166685
    68176686/* Line 1806 of yacc.c  */
    6818 #line 1267 "parser.yy"
     6687#line 1264 "parser.yy"
    68196688    { (yyval.decl) = DeclarationNode::newQualifier( DeclarationNode::Restrict ); }
    68206689    break;
     
    68236692
    68246693/* Line 1806 of yacc.c  */
    6825 #line 1269 "parser.yy"
     6694#line 1266 "parser.yy"
    68266695    { (yyval.decl) = DeclarationNode::newQualifier( DeclarationNode::Volatile ); }
    68276696    break;
     
    68306699
    68316700/* Line 1806 of yacc.c  */
    6832 #line 1271 "parser.yy"
     6701#line 1268 "parser.yy"
    68336702    { (yyval.decl) = DeclarationNode::newQualifier( DeclarationNode::Lvalue ); }
    68346703    break;
     
    68376706
    68386707/* Line 1806 of yacc.c  */
    6839 #line 1273 "parser.yy"
     6708#line 1270 "parser.yy"
    68406709    { (yyval.decl) = DeclarationNode::newQualifier( DeclarationNode::Atomic ); }
    68416710    break;
     
    68446713
    68456714/* Line 1806 of yacc.c  */
    6846 #line 1275 "parser.yy"
     6715#line 1272 "parser.yy"
    68476716    {
    68486717                        typedefTable.enterScope();
     
    68536722
    68546723/* Line 1806 of yacc.c  */
    6855 #line 1279 "parser.yy"
     6724#line 1276 "parser.yy"
    68566725    {
    68576726                        typedefTable.leaveScope();
     
    68636732
    68646733/* Line 1806 of yacc.c  */
    6865 #line 1288 "parser.yy"
     6734#line 1285 "parser.yy"
    68666735    { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); }
    68676736    break;
     
    68706739
    68716740/* Line 1806 of yacc.c  */
    6872 #line 1290 "parser.yy"
     6741#line 1287 "parser.yy"
    68736742    { (yyval.decl) = (yyvsp[(1) - (3)].decl)->addQualifiers( (yyvsp[(2) - (3)].decl) )->addQualifiers( (yyvsp[(3) - (3)].decl) ); }
    68746743    break;
     
    68776746
    68786747/* Line 1806 of yacc.c  */
    6879 #line 1301 "parser.yy"
     6748#line 1298 "parser.yy"
    68806749    { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); }
    68816750    break;
     
    68846753
    68856754/* Line 1806 of yacc.c  */
    6886 #line 1310 "parser.yy"
     6755#line 1307 "parser.yy"
    68876756    { (yyval.decl) = DeclarationNode::newStorageClass( DeclarationNode::Extern ); }
    68886757    break;
     
    68916760
    68926761/* Line 1806 of yacc.c  */
    6893 #line 1312 "parser.yy"
     6762#line 1309 "parser.yy"
    68946763    { (yyval.decl) = DeclarationNode::newStorageClass( DeclarationNode::Static ); }
    68956764    break;
     
    68986767
    68996768/* Line 1806 of yacc.c  */
    6900 #line 1314 "parser.yy"
     6769#line 1311 "parser.yy"
    69016770    { (yyval.decl) = DeclarationNode::newStorageClass( DeclarationNode::Auto ); }
    69026771    break;
     
    69056774
    69066775/* Line 1806 of yacc.c  */
    6907 #line 1316 "parser.yy"
     6776#line 1313 "parser.yy"
    69086777    { (yyval.decl) = DeclarationNode::newStorageClass( DeclarationNode::Register ); }
    69096778    break;
     
    69126781
    69136782/* Line 1806 of yacc.c  */
    6914 #line 1318 "parser.yy"
     6783#line 1315 "parser.yy"
    69156784    { (yyval.decl) = DeclarationNode::newStorageClass( DeclarationNode::Inline ); }
    69166785    break;
     
    69196788
    69206789/* Line 1806 of yacc.c  */
    6921 #line 1320 "parser.yy"
     6790#line 1317 "parser.yy"
    69226791    { (yyval.decl) = DeclarationNode::newStorageClass( DeclarationNode::Fortran ); }
    69236792    break;
     
    69266795
    69276796/* Line 1806 of yacc.c  */
    6928 #line 1322 "parser.yy"
     6797#line 1319 "parser.yy"
    69296798    { (yyval.decl) = DeclarationNode::newStorageClass( DeclarationNode::Noreturn ); }
    69306799    break;
     
    69336802
    69346803/* Line 1806 of yacc.c  */
    6935 #line 1324 "parser.yy"
     6804#line 1321 "parser.yy"
    69366805    { (yyval.decl) = DeclarationNode::newStorageClass( DeclarationNode::Threadlocal ); }
    69376806    break;
     
    69406809
    69416810/* Line 1806 of yacc.c  */
    6942 #line 1329 "parser.yy"
     6811#line 1326 "parser.yy"
    69436812    { (yyval.decl) = DeclarationNode::newBasicType( DeclarationNode::Char ); }
    69446813    break;
     
    69476816
    69486817/* Line 1806 of yacc.c  */
    6949 #line 1331 "parser.yy"
     6818#line 1328 "parser.yy"
    69506819    { (yyval.decl) = DeclarationNode::newBasicType( DeclarationNode::Double ); }
    69516820    break;
     
    69546823
    69556824/* Line 1806 of yacc.c  */
    6956 #line 1333 "parser.yy"
     6825#line 1330 "parser.yy"
    69576826    { (yyval.decl) = DeclarationNode::newBasicType( DeclarationNode::Float ); }
    69586827    break;
     
    69616830
    69626831/* Line 1806 of yacc.c  */
    6963 #line 1335 "parser.yy"
     6832#line 1332 "parser.yy"
    69646833    { (yyval.decl) = DeclarationNode::newBasicType( DeclarationNode::Int ); }
    69656834    break;
     
    69686837
    69696838/* Line 1806 of yacc.c  */
    6970 #line 1337 "parser.yy"
     6839#line 1334 "parser.yy"
    69716840    { (yyval.decl) = DeclarationNode::newModifier( DeclarationNode::Long ); }
    69726841    break;
     
    69756844
    69766845/* Line 1806 of yacc.c  */
    6977 #line 1339 "parser.yy"
     6846#line 1336 "parser.yy"
    69786847    { (yyval.decl) = DeclarationNode::newModifier( DeclarationNode::Short ); }
    69796848    break;
     
    69826851
    69836852/* Line 1806 of yacc.c  */
    6984 #line 1341 "parser.yy"
     6853#line 1338 "parser.yy"
    69856854    { (yyval.decl) = DeclarationNode::newModifier( DeclarationNode::Signed ); }
    69866855    break;
     
    69896858
    69906859/* Line 1806 of yacc.c  */
    6991 #line 1343 "parser.yy"
     6860#line 1340 "parser.yy"
    69926861    { (yyval.decl) = DeclarationNode::newModifier( DeclarationNode::Unsigned ); }
    69936862    break;
     
    69966865
    69976866/* Line 1806 of yacc.c  */
    6998 #line 1345 "parser.yy"
     6867#line 1342 "parser.yy"
    69996868    { (yyval.decl) = DeclarationNode::newBasicType( DeclarationNode::Void ); }
    70006869    break;
     
    70036872
    70046873/* Line 1806 of yacc.c  */
    7005 #line 1347 "parser.yy"
     6874#line 1344 "parser.yy"
    70066875    { (yyval.decl) = DeclarationNode::newBasicType( DeclarationNode::Bool ); }
    70076876    break;
     
    70106879
    70116880/* Line 1806 of yacc.c  */
    7012 #line 1349 "parser.yy"
     6881#line 1346 "parser.yy"
    70136882    { (yyval.decl) = DeclarationNode::newBasicType( DeclarationNode::Complex ); }
    70146883    break;
     
    70176886
    70186887/* Line 1806 of yacc.c  */
    7019 #line 1351 "parser.yy"
     6888#line 1348 "parser.yy"
    70206889    { (yyval.decl) = DeclarationNode::newBasicType( DeclarationNode::Imaginary ); }
    70216890    break;
     
    70246893
    70256894/* Line 1806 of yacc.c  */
    7026 #line 1353 "parser.yy"
     6895#line 1350 "parser.yy"
    70276896    { (yyval.decl) = DeclarationNode::newBuiltinType( DeclarationNode::Valist ); }
    70286897    break;
     
    70316900
    70326901/* Line 1806 of yacc.c  */
    7033 #line 1360 "parser.yy"
     6902#line 1357 "parser.yy"
    70346903    { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addQualifiers( (yyvsp[(1) - (2)].decl) ); }
    70356904    break;
     
    70386907
    70396908/* Line 1806 of yacc.c  */
    7040 #line 1362 "parser.yy"
     6909#line 1359 "parser.yy"
    70416910    { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); }
    70426911    break;
     
    70456914
    70466915/* Line 1806 of yacc.c  */
    7047 #line 1364 "parser.yy"
     6916#line 1361 "parser.yy"
    70486917    { (yyval.decl) = (yyvsp[(1) - (3)].decl)->addQualifiers( (yyvsp[(2) - (3)].decl) )->addQualifiers( (yyvsp[(3) - (3)].decl) ); }
    70496918    break;
     
    70526921
    70536922/* Line 1806 of yacc.c  */
    7054 #line 1366 "parser.yy"
     6923#line 1363 "parser.yy"
    70556924    { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addQualifiers( (yyvsp[(2) - (3)].decl) )->addType( (yyvsp[(1) - (3)].decl) ); }
    70566925    break;
     
    70596928
    70606929/* Line 1806 of yacc.c  */
    7061 #line 1372 "parser.yy"
     6930#line 1369 "parser.yy"
    70626931    { (yyval.decl) = (yyvsp[(2) - (3)].decl)->addQualifiers( (yyvsp[(1) - (3)].decl) )->addQualifiers( (yyvsp[(3) - (3)].decl) ); }
    70636932    break;
     
    70666935
    70676936/* Line 1806 of yacc.c  */
    7068 #line 1379 "parser.yy"
     6937#line 1376 "parser.yy"
    70696938    { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addQualifiers( (yyvsp[(1) - (2)].decl) ); }
    70706939    break;
     
    70736942
    70746943/* Line 1806 of yacc.c  */
    7075 #line 1381 "parser.yy"
     6944#line 1378 "parser.yy"
    70766945    { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); }
    70776946    break;
     
    70806949
    70816950/* Line 1806 of yacc.c  */
    7082 #line 1383 "parser.yy"
     6951#line 1380 "parser.yy"
    70836952    { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addType( (yyvsp[(2) - (2)].decl) ); }
    70846953    break;
     
    70876956
    70886957/* Line 1806 of yacc.c  */
    7089 #line 1388 "parser.yy"
     6958#line 1385 "parser.yy"
    70906959    { (yyval.decl) = (yyvsp[(3) - (4)].decl); }
    70916960    break;
     
    70946963
    70956964/* Line 1806 of yacc.c  */
    7096 #line 1390 "parser.yy"
     6965#line 1387 "parser.yy"
    70976966    { (yyval.decl) = DeclarationNode::newTypeof( (yyvsp[(3) - (4)].en) ); }
    70986967    break;
     
    71016970
    71026971/* Line 1806 of yacc.c  */
    7103 #line 1392 "parser.yy"
     6972#line 1389 "parser.yy"
    71046973    { (yyval.decl) = DeclarationNode::newAttr( (yyvsp[(1) - (4)].tok), (yyvsp[(3) - (4)].decl) ); }
    71056974    break;
     
    71086977
    71096978/* Line 1806 of yacc.c  */
    7110 #line 1394 "parser.yy"
     6979#line 1391 "parser.yy"
    71116980    { (yyval.decl) = DeclarationNode::newAttr( (yyvsp[(1) - (4)].tok), (yyvsp[(3) - (4)].en) ); }
    71126981    break;
     
    71156984
    71166985/* Line 1806 of yacc.c  */
    7117 #line 1400 "parser.yy"
     6986#line 1397 "parser.yy"
    71186987    { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addQualifiers( (yyvsp[(1) - (2)].decl) ); }
    71196988    break;
     
    71226991
    71236992/* Line 1806 of yacc.c  */
    7124 #line 1402 "parser.yy"
     6993#line 1399 "parser.yy"
    71256994    { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); }
    71266995    break;
     
    71296998
    71306999/* Line 1806 of yacc.c  */
    7131 #line 1404 "parser.yy"
     7000#line 1401 "parser.yy"
    71327001    { (yyval.decl) = (yyvsp[(1) - (3)].decl)->addQualifiers( (yyvsp[(2) - (3)].decl) )->addQualifiers( (yyvsp[(3) - (3)].decl) ); }
    71337002    break;
     
    71367005
    71377006/* Line 1806 of yacc.c  */
    7138 #line 1410 "parser.yy"
     7007#line 1407 "parser.yy"
    71397008    { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addQualifiers( (yyvsp[(1) - (2)].decl) ); }
    71407009    break;
     
    71437012
    71447013/* Line 1806 of yacc.c  */
    7145 #line 1412 "parser.yy"
     7014#line 1409 "parser.yy"
    71467015    { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); }
    71477016    break;
     
    71507019
    71517020/* Line 1806 of yacc.c  */
    7152 #line 1418 "parser.yy"
     7021#line 1415 "parser.yy"
    71537022    { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addQualifiers( (yyvsp[(1) - (2)].decl) ); }
    71547023    break;
     
    71577026
    71587027/* Line 1806 of yacc.c  */
    7159 #line 1420 "parser.yy"
     7028#line 1417 "parser.yy"
    71607029    { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); }
    71617030    break;
     
    71647033
    71657034/* Line 1806 of yacc.c  */
    7166 #line 1422 "parser.yy"
     7035#line 1419 "parser.yy"
    71677036    { (yyval.decl) = (yyvsp[(1) - (3)].decl)->addQualifiers( (yyvsp[(2) - (3)].decl) )->addQualifiers( (yyvsp[(3) - (3)].decl) ); }
    71687037    break;
     
    71717040
    71727041/* Line 1806 of yacc.c  */
    7173 #line 1427 "parser.yy"
     7042#line 1424 "parser.yy"
    71747043    { (yyval.decl) = DeclarationNode::newFromTypedef( (yyvsp[(1) - (1)].tok) ); }
    71757044    break;
     
    71787047
    71797048/* Line 1806 of yacc.c  */
    7180 #line 1429 "parser.yy"
     7049#line 1426 "parser.yy"
    71817050    { (yyval.decl) = DeclarationNode::newFromTypedef( (yyvsp[(2) - (2)].tok) )->addQualifiers( (yyvsp[(1) - (2)].decl) ); }
    71827051    break;
     
    71857054
    71867055/* Line 1806 of yacc.c  */
    7187 #line 1431 "parser.yy"
     7056#line 1428 "parser.yy"
    71887057    { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); }
    71897058    break;
     
    71927061
    71937062/* Line 1806 of yacc.c  */
    7194 #line 1441 "parser.yy"
     7063#line 1438 "parser.yy"
    71957064    { (yyval.decl) = DeclarationNode::newAggregate( (yyvsp[(1) - (4)].aggKey), 0, 0, (yyvsp[(3) - (4)].decl) ); }
    71967065    break;
     
    71997068
    72007069/* Line 1806 of yacc.c  */
    7201 #line 1443 "parser.yy"
     7070#line 1440 "parser.yy"
    72027071    {
    72037072                        typedefTable.makeTypedef( *(yyvsp[(2) - (2)].tok) );
     
    72097078
    72107079/* Line 1806 of yacc.c  */
    7211 #line 1448 "parser.yy"
     7080#line 1445 "parser.yy"
    72127081    { typedefTable.makeTypedef( *(yyvsp[(2) - (2)].tok) ); }
    72137082    break;
     
    72167085
    72177086/* Line 1806 of yacc.c  */
    7218 #line 1450 "parser.yy"
     7087#line 1447 "parser.yy"
    72197088    { (yyval.decl) = DeclarationNode::newAggregate( (yyvsp[(1) - (6)].aggKey), (yyvsp[(2) - (6)].tok), 0, (yyvsp[(5) - (6)].decl)); }
    72207089    break;
     
    72237092
    72247093/* Line 1806 of yacc.c  */
    7225 #line 1452 "parser.yy"
     7094#line 1449 "parser.yy"
    72267095    { (yyval.decl) = DeclarationNode::newAggregate( (yyvsp[(1) - (7)].aggKey), 0, (yyvsp[(3) - (7)].en), (yyvsp[(6) - (7)].decl) ); }
    72277096    break;
     
    72307099
    72317100/* Line 1806 of yacc.c  */
    7232 #line 1454 "parser.yy"
     7101#line 1451 "parser.yy"
    72337102    { (yyval.decl) = (yyvsp[(2) - (2)].decl); }
    72347103    break;
     
    72377106
    72387107/* Line 1806 of yacc.c  */
    7239 #line 1459 "parser.yy"
     7108#line 1456 "parser.yy"
    72407109    { (yyval.aggKey) = DeclarationNode::Struct; }
    72417110    break;
     
    72447113
    72457114/* Line 1806 of yacc.c  */
    7246 #line 1461 "parser.yy"
     7115#line 1458 "parser.yy"
    72477116    { (yyval.aggKey) = DeclarationNode::Union; }
    72487117    break;
     
    72517120
    72527121/* Line 1806 of yacc.c  */
    7253 #line 1466 "parser.yy"
     7122#line 1463 "parser.yy"
    72547123    { (yyval.decl) = (yyvsp[(1) - (1)].decl); }
    72557124    break;
     
    72587127
    72597128/* Line 1806 of yacc.c  */
    7260 #line 1468 "parser.yy"
     7129#line 1465 "parser.yy"
    72617130    { (yyval.decl) = (yyvsp[(1) - (2)].decl)->appendList( (yyvsp[(2) - (2)].decl) ); }
    72627131    break;
    72637132
    72647133  case 377:
     7134
     7135/* Line 1806 of yacc.c  */
     7136#line 1471 "parser.yy"
     7137    { (yyval.decl) = (yyvsp[(2) - (3)].decl)/*->set_extension( true )*/; }
     7138    break;
     7139
     7140  case 379:
    72657141
    72667142/* Line 1806 of yacc.c  */
     
    72697145    break;
    72707146
    7271   case 379:
    7272 
    7273 /* Line 1806 of yacc.c  */
    7274 #line 1477 "parser.yy"
    7275     { (yyval.decl) = (yyvsp[(2) - (3)].decl)/*->set_extension( true )*/; }
    7276     break;
    7277 
    72787147  case 381:
    72797148
    72807149/* Line 1806 of yacc.c  */
    7281 #line 1483 "parser.yy"
     7150#line 1480 "parser.yy"
    72827151    { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addName( (yyvsp[(2) - (2)].tok) ); }
    72837152    break;
     
    72867155
    72877156/* Line 1806 of yacc.c  */
    7288 #line 1485 "parser.yy"
     7157#line 1482 "parser.yy"
    72897158    { (yyval.decl) = (yyvsp[(1) - (3)].decl)->appendList( (yyvsp[(1) - (3)].decl)->cloneType( (yyvsp[(3) - (3)].tok) ) ); }
    72907159    break;
     
    72937162
    72947163/* Line 1806 of yacc.c  */
    7295 #line 1487 "parser.yy"
     7164#line 1484 "parser.yy"
    72967165    { (yyval.decl) = (yyvsp[(1) - (2)].decl)->appendList( (yyvsp[(1) - (2)].decl)->cloneType( 0 ) ); }
    72977166    break;
     
    73007169
    73017170/* Line 1806 of yacc.c  */
    7302 #line 1492 "parser.yy"
     7171#line 1489 "parser.yy"
    73037172    { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addType( (yyvsp[(1) - (2)].decl) ); }
    73047173    break;
     
    73077176
    73087177/* Line 1806 of yacc.c  */
    7309 #line 1494 "parser.yy"
     7178#line 1491 "parser.yy"
    73107179    { (yyval.decl) = (yyvsp[(1) - (4)].decl)->appendList( (yyvsp[(1) - (4)].decl)->cloneBaseType( (yyvsp[(4) - (4)].decl) ) ); }
    73117180    break;
     
    73147183
    73157184/* Line 1806 of yacc.c  */
    7316 #line 1499 "parser.yy"
     7185#line 1496 "parser.yy"
    73177186    { (yyval.decl) = DeclarationNode::newName( 0 ); /* XXX */ }
    73187187    break;
     
    73217190
    73227191/* Line 1806 of yacc.c  */
     7192#line 1498 "parser.yy"
     7193    { (yyval.decl) = DeclarationNode::newBitfield( (yyvsp[(1) - (1)].en) ); }
     7194    break;
     7195
     7196  case 388:
     7197
     7198/* Line 1806 of yacc.c  */
    73237199#line 1501 "parser.yy"
    7324     { (yyval.decl) = DeclarationNode::newBitfield( (yyvsp[(1) - (1)].en) ); }
    7325     break;
    7326 
    7327   case 388:
     7200    { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addBitfield( (yyvsp[(2) - (2)].en) ); }
     7201    break;
     7202
     7203  case 389:
    73287204
    73297205/* Line 1806 of yacc.c  */
     
    73327208    break;
    73337209
    7334   case 389:
    7335 
    7336 /* Line 1806 of yacc.c  */
    7337 #line 1507 "parser.yy"
    7338     { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addBitfield( (yyvsp[(2) - (2)].en) ); }
    7339     break;
    7340 
    73417210  case 391:
    73427211
    73437212/* Line 1806 of yacc.c  */
    7344 #line 1513 "parser.yy"
     7213#line 1510 "parser.yy"
    73457214    { (yyval.en) = 0; }
    73467215    break;
     
    73497218
    73507219/* Line 1806 of yacc.c  */
    7351 #line 1515 "parser.yy"
     7220#line 1512 "parser.yy"
    73527221    { (yyval.en) = (yyvsp[(1) - (1)].en); }
    73537222    break;
     
    73567225
    73577226/* Line 1806 of yacc.c  */
    7358 #line 1520 "parser.yy"
     7227#line 1517 "parser.yy"
    73597228    { (yyval.en) = (yyvsp[(2) - (2)].en); }
    73607229    break;
     
    73637232
    73647233/* Line 1806 of yacc.c  */
    7365 #line 1529 "parser.yy"
     7234#line 1526 "parser.yy"
    73667235    { (yyval.decl) = DeclarationNode::newEnum( 0, (yyvsp[(3) - (5)].decl) ); }
    73677236    break;
     
    73707239
    73717240/* Line 1806 of yacc.c  */
    7372 #line 1531 "parser.yy"
     7241#line 1528 "parser.yy"
    73737242    {
    73747243                        typedefTable.makeTypedef( *(yyvsp[(2) - (2)].tok) );
     
    73807249
    73817250/* Line 1806 of yacc.c  */
    7382 #line 1536 "parser.yy"
     7251#line 1533 "parser.yy"
    73837252    { typedefTable.makeTypedef( *(yyvsp[(2) - (2)].tok) ); }
    73847253    break;
     
    73877256
    73887257/* Line 1806 of yacc.c  */
    7389 #line 1538 "parser.yy"
     7258#line 1535 "parser.yy"
    73907259    { (yyval.decl) = DeclarationNode::newEnum( (yyvsp[(2) - (7)].tok), (yyvsp[(5) - (7)].decl) ); }
    73917260    break;
     
    73947263
    73957264/* Line 1806 of yacc.c  */
    7396 #line 1543 "parser.yy"
     7265#line 1540 "parser.yy"
    73977266    { (yyval.decl) = DeclarationNode::newEnumConstant( (yyvsp[(1) - (2)].tok), (yyvsp[(2) - (2)].en) ); }
    73987267    break;
     
    74017270
    74027271/* Line 1806 of yacc.c  */
    7403 #line 1545 "parser.yy"
     7272#line 1542 "parser.yy"
    74047273    { (yyval.decl) = (yyvsp[(1) - (4)].decl)->appendList( DeclarationNode::newEnumConstant( (yyvsp[(3) - (4)].tok), (yyvsp[(4) - (4)].en) ) ); }
    74057274    break;
     
    74087277
    74097278/* Line 1806 of yacc.c  */
    7410 #line 1550 "parser.yy"
     7279#line 1547 "parser.yy"
    74117280    { (yyval.en) = 0; }
    74127281    break;
     
    74157284
    74167285/* Line 1806 of yacc.c  */
    7417 #line 1552 "parser.yy"
     7286#line 1549 "parser.yy"
    74187287    { (yyval.en) = (yyvsp[(2) - (2)].en); }
    74197288    break;
     
    74227291
    74237292/* Line 1806 of yacc.c  */
    7424 #line 1559 "parser.yy"
     7293#line 1556 "parser.yy"
    74257294    { (yyval.decl) = 0; }
    74267295    break;
     
    74297298
    74307299/* Line 1806 of yacc.c  */
    7431 #line 1567 "parser.yy"
     7300#line 1564 "parser.yy"
    74327301    { (yyval.decl) = (yyvsp[(1) - (5)].decl)->appendList( (yyvsp[(5) - (5)].decl) ); }
    74337302    break;
     
    74367305
    74377306/* Line 1806 of yacc.c  */
    7438 #line 1569 "parser.yy"
     7307#line 1566 "parser.yy"
    74397308    { (yyval.decl) = (yyvsp[(1) - (5)].decl)->addVarArgs(); }
    74407309    break;
     
    74437312
    74447313/* Line 1806 of yacc.c  */
    7445 #line 1571 "parser.yy"
     7314#line 1568 "parser.yy"
    74467315    { (yyval.decl) = (yyvsp[(1) - (5)].decl)->addVarArgs(); }
    74477316    break;
     
    74507319
    74517320/* Line 1806 of yacc.c  */
    7452 #line 1579 "parser.yy"
     7321#line 1576 "parser.yy"
    74537322    { (yyval.decl) = (yyvsp[(1) - (5)].decl)->appendList( (yyvsp[(5) - (5)].decl) ); }
    74547323    break;
     
    74577326
    74587327/* Line 1806 of yacc.c  */
    7459 #line 1581 "parser.yy"
     7328#line 1578 "parser.yy"
    74607329    { (yyval.decl) = (yyvsp[(1) - (5)].decl)->appendList( (yyvsp[(5) - (5)].decl) ); }
    74617330    break;
     
    74647333
    74657334/* Line 1806 of yacc.c  */
    7466 #line 1583 "parser.yy"
     7335#line 1580 "parser.yy"
    74677336    { (yyval.decl) = (yyvsp[(1) - (9)].decl)->appendList( (yyvsp[(5) - (9)].decl) )->appendList( (yyvsp[(9) - (9)].decl) ); }
    74687337    break;
     
    74717340
    74727341/* Line 1806 of yacc.c  */
    7473 #line 1589 "parser.yy"
     7342#line 1586 "parser.yy"
    74747343    { (yyval.decl) = (yyvsp[(1) - (5)].decl)->appendList( (yyvsp[(5) - (5)].decl) ); }
    74757344    break;
     
    74787347
    74797348/* Line 1806 of yacc.c  */
    7480 #line 1594 "parser.yy"
     7349#line 1591 "parser.yy"
    74817350    { (yyval.decl) = 0; }
    74827351    break;
     
    74857354
    74867355/* Line 1806 of yacc.c  */
    7487 #line 1601 "parser.yy"
     7356#line 1598 "parser.yy"
    74887357    { (yyval.decl) = (yyvsp[(1) - (5)].decl)->addVarArgs(); }
    74897358    break;
     
    74927361
    74937362/* Line 1806 of yacc.c  */
    7494 #line 1608 "parser.yy"
     7363#line 1605 "parser.yy"
    74957364    { (yyval.decl) = (yyvsp[(1) - (5)].decl)->appendList( (yyvsp[(5) - (5)].decl) ); }
    74967365    break;
     
    74997368
    75007369/* Line 1806 of yacc.c  */
    7501 #line 1610 "parser.yy"
     7370#line 1607 "parser.yy"
    75027371    { (yyval.decl) = (yyvsp[(1) - (5)].decl)->appendList( (yyvsp[(5) - (5)].decl) ); }
    75037372    break;
    75047373
    75057374  case 425:
     7375
     7376/* Line 1806 of yacc.c  */
     7377#line 1616 "parser.yy"
     7378    { (yyval.decl) = (yyvsp[(1) - (3)].decl)->addName( (yyvsp[(2) - (3)].tok) ); }
     7379    break;
     7380
     7381  case 426:
    75067382
    75077383/* Line 1806 of yacc.c  */
     
    75107386    break;
    75117387
    7512   case 426:
    7513 
    7514 /* Line 1806 of yacc.c  */
    7515 #line 1622 "parser.yy"
    7516     { (yyval.decl) = (yyvsp[(1) - (3)].decl)->addName( (yyvsp[(2) - (3)].tok) ); }
    7517     break;
    7518 
    75197388  case 427:
    75207389
    75217390/* Line 1806 of yacc.c  */
    7522 #line 1624 "parser.yy"
     7391#line 1621 "parser.yy"
    75237392    { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addName( (yyvsp[(3) - (4)].tok) )->addQualifiers( (yyvsp[(1) - (4)].decl) ); }
    75247393    break;
     
    75277396
    75287397/* Line 1806 of yacc.c  */
    7529 #line 1634 "parser.yy"
     7398#line 1631 "parser.yy"
    75307399    { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addQualifiers( (yyvsp[(1) - (2)].decl) ); }
    75317400    break;
     
    75347403
    75357404/* Line 1806 of yacc.c  */
    7536 #line 1640 "parser.yy"
     7405#line 1637 "parser.yy"
    75377406    {
    75387407                        typedefTable.addToEnclosingScope( TypedefTable::ID );
     
    75447413
    75457414/* Line 1806 of yacc.c  */
    7546 #line 1645 "parser.yy"
     7415#line 1642 "parser.yy"
    75477416    {
    75487417                        typedefTable.addToEnclosingScope( TypedefTable::ID );
     
    75547423
    75557424/* Line 1806 of yacc.c  */
    7556 #line 1654 "parser.yy"
     7425#line 1651 "parser.yy"
    75577426    { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addType( (yyvsp[(1) - (2)].decl) ); }
    75587427    break;
     
    75617430
    75627431/* Line 1806 of yacc.c  */
    7563 #line 1663 "parser.yy"
     7432#line 1660 "parser.yy"
    75647433    { (yyval.decl) = DeclarationNode::newName( (yyvsp[(1) - (1)].tok) ); }
    75657434    break;
     
    75687437
    75697438/* Line 1806 of yacc.c  */
    7570 #line 1665 "parser.yy"
     7439#line 1662 "parser.yy"
    75717440    { (yyval.decl) = (yyvsp[(1) - (3)].decl)->appendList( DeclarationNode::newName( (yyvsp[(3) - (3)].tok) ) ); }
    75727441    break;
     
    75757444
    75767445/* Line 1806 of yacc.c  */
    7577 #line 1690 "parser.yy"
     7446#line 1687 "parser.yy"
    75787447    { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addType( (yyvsp[(1) - (2)].decl) ); }
    75797448    break;
     
    75827451
    75837452/* Line 1806 of yacc.c  */
    7584 #line 1698 "parser.yy"
     7453#line 1695 "parser.yy"
    75857454    { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addType( (yyvsp[(1) - (2)].decl) ); }
    75867455    break;
     
    75897458
    75907459/* Line 1806 of yacc.c  */
    7591 #line 1703 "parser.yy"
     7460#line 1700 "parser.yy"
    75927461    { (yyval.in) = 0; }
    75937462    break;
     
    75967465
    75977466/* Line 1806 of yacc.c  */
    7598 #line 1705 "parser.yy"
     7467#line 1702 "parser.yy"
    75997468    { (yyval.in) = (yyvsp[(2) - (2)].in); }
    76007469    break;
     
    76037472
    76047473/* Line 1806 of yacc.c  */
    7605 #line 1707 "parser.yy"
     7474#line 1704 "parser.yy"
    76067475    { (yyval.in) = (yyvsp[(2) - (2)].in)->set_maybeConstructed( false ); }
    76077476    break;
     
    76107479
    76117480/* Line 1806 of yacc.c  */
    7612 #line 1711 "parser.yy"
     7481#line 1708 "parser.yy"
    76137482    { (yyval.in) = new InitializerNode( (yyvsp[(1) - (1)].en) ); }
    76147483    break;
     
    76177486
    76187487/* Line 1806 of yacc.c  */
    7619 #line 1712 "parser.yy"
     7488#line 1709 "parser.yy"
    76207489    { (yyval.in) = new InitializerNode( (yyvsp[(2) - (4)].in), true ); }
    76217490    break;
     
    76247493
    76257494/* Line 1806 of yacc.c  */
     7495#line 1714 "parser.yy"
     7496    { (yyval.in) = 0; }
     7497    break;
     7498
     7499  case 463:
     7500
     7501/* Line 1806 of yacc.c  */
     7502#line 1716 "parser.yy"
     7503    { (yyval.in) = (yyvsp[(2) - (2)].in)->set_designators( (yyvsp[(1) - (2)].en) ); }
     7504    break;
     7505
     7506  case 464:
     7507
     7508/* Line 1806 of yacc.c  */
    76267509#line 1717 "parser.yy"
    7627     { (yyval.in) = 0; }
    7628     break;
    7629 
    7630   case 463:
     7510    { (yyval.in) = (InitializerNode *)( (yyvsp[(1) - (3)].in)->set_link( (yyvsp[(3) - (3)].in) ) ); }
     7511    break;
     7512
     7513  case 465:
    76317514
    76327515/* Line 1806 of yacc.c  */
    76337516#line 1719 "parser.yy"
    7634     { (yyval.in) = (yyvsp[(2) - (2)].in)->set_designators( (yyvsp[(1) - (2)].en) ); }
    7635     break;
    7636 
    7637   case 464:
    7638 
    7639 /* Line 1806 of yacc.c  */
    7640 #line 1720 "parser.yy"
    7641     { (yyval.in) = (InitializerNode *)( (yyvsp[(1) - (3)].in)->set_link( (yyvsp[(3) - (3)].in) ) ); }
    7642     break;
    7643 
    7644   case 465:
    7645 
    7646 /* Line 1806 of yacc.c  */
    7647 #line 1722 "parser.yy"
    76487517    { (yyval.in) = (InitializerNode *)( (yyvsp[(1) - (4)].in)->set_link( (yyvsp[(4) - (4)].in)->set_designators( (yyvsp[(3) - (4)].en) ) ) ); }
    76497518    break;
     
    76527521
    76537522/* Line 1806 of yacc.c  */
    7654 #line 1738 "parser.yy"
     7523#line 1735 "parser.yy"
    76557524    { (yyval.en) = new VarRefNode( (yyvsp[(1) - (2)].tok) ); }
    76567525    break;
     
    76597528
    76607529/* Line 1806 of yacc.c  */
    7661 #line 1744 "parser.yy"
     7530#line 1741 "parser.yy"
    76627531    { (yyval.en) = (ExpressionNode *)( (yyvsp[(1) - (2)].en)->set_link( (yyvsp[(2) - (2)].en) )); }
    76637532    break;
     
    76667535
    76677536/* Line 1806 of yacc.c  */
    7668 #line 1752 "parser.yy"
     7537#line 1749 "parser.yy"
    76697538    { (yyval.en) = new DesignatorNode( new VarRefNode( (yyvsp[(1) - (1)].tok) ) ); }
    76707539    break;
     
    76737542
    76747543/* Line 1806 of yacc.c  */
     7544#line 1751 "parser.yy"
     7545    { (yyval.en) = new DesignatorNode( new VarRefNode( (yyvsp[(2) - (2)].tok) ) ); }
     7546    break;
     7547
     7548  case 472:
     7549
     7550/* Line 1806 of yacc.c  */
    76757551#line 1754 "parser.yy"
    7676     { (yyval.en) = new DesignatorNode( new VarRefNode( (yyvsp[(2) - (2)].tok) ) ); }
    7677     break;
    7678 
    7679   case 472:
    7680 
    7681 /* Line 1806 of yacc.c  */
    7682 #line 1757 "parser.yy"
    76837552    { (yyval.en) = new DesignatorNode( (yyvsp[(3) - (5)].en), true ); }
    76847553    break;
     
    76877556
    76887557/* Line 1806 of yacc.c  */
    7689 #line 1759 "parser.yy"
     7558#line 1756 "parser.yy"
    76907559    { (yyval.en) = new DesignatorNode( (yyvsp[(3) - (5)].en), true ); }
    76917560    break;
     
    76947563
    76957564/* Line 1806 of yacc.c  */
    7696 #line 1761 "parser.yy"
     7565#line 1758 "parser.yy"
    76977566    { (yyval.en) = new DesignatorNode( new CompositeExprNode( new OperatorNode( OperatorNode::Range ), (yyvsp[(3) - (7)].en), (yyvsp[(5) - (7)].en) ), true ); }
    76987567    break;
     
    77017570
    77027571/* Line 1806 of yacc.c  */
    7703 #line 1763 "parser.yy"
     7572#line 1760 "parser.yy"
    77047573    { (yyval.en) = new DesignatorNode( (yyvsp[(4) - (6)].en) ); }
    77057574    break;
     
    77087577
    77097578/* Line 1806 of yacc.c  */
    7710 #line 1787 "parser.yy"
     7579#line 1784 "parser.yy"
    77117580    { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addQualifiers( (yyvsp[(1) - (2)].decl) ); }
    77127581    break;
     
    77157584
    77167585/* Line 1806 of yacc.c  */
    7717 #line 1789 "parser.yy"
     7586#line 1786 "parser.yy"
    77187587    { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); }
    77197588    break;
     
    77227591
    77237592/* Line 1806 of yacc.c  */
    7724 #line 1791 "parser.yy"
     7593#line 1788 "parser.yy"
    77257594    { (yyval.decl) = (yyvsp[(1) - (3)].decl)->addQualifiers( (yyvsp[(2) - (3)].decl) )->addQualifiers( (yyvsp[(3) - (3)].decl) ); }
    77267595    break;
     
    77297598
    77307599/* Line 1806 of yacc.c  */
    7731 #line 1797 "parser.yy"
     7600#line 1794 "parser.yy"
    77327601    { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addQualifiers( (yyvsp[(1) - (2)].decl) ); }
    77337602    break;
     
    77367605
    77377606/* Line 1806 of yacc.c  */
    7738 #line 1799 "parser.yy"
     7607#line 1796 "parser.yy"
    77397608    { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); }
    77407609    break;
     
    77437612
    77447613/* Line 1806 of yacc.c  */
    7745 #line 1804 "parser.yy"
     7614#line 1801 "parser.yy"
    77467615    { (yyval.decl) = DeclarationNode::newFromTypeGen( (yyvsp[(1) - (4)].tok), (yyvsp[(3) - (4)].en) ); }
    77477616    break;
     
    77507619
    77517620/* Line 1806 of yacc.c  */
    7752 #line 1810 "parser.yy"
     7621#line 1807 "parser.yy"
    77537622    { (yyval.decl) = (yyvsp[(1) - (4)].decl)->appendList( (yyvsp[(3) - (4)].decl) ); }
    77547623    break;
     
    77577626
    77587627/* Line 1806 of yacc.c  */
    7759 #line 1815 "parser.yy"
     7628#line 1812 "parser.yy"
    77607629    { typedefTable.addToEnclosingScope( *(yyvsp[(2) - (2)].tok), TypedefTable::TD ); }
    77617630    break;
     
    77647633
    77657634/* Line 1806 of yacc.c  */
    7766 #line 1817 "parser.yy"
     7635#line 1814 "parser.yy"
    77677636    { (yyval.decl) = DeclarationNode::newTypeParam( (yyvsp[(1) - (4)].tclass), (yyvsp[(2) - (4)].tok) )->addAssertions( (yyvsp[(4) - (4)].decl) ); }
    77687637    break;
     
    77717640
    77727641/* Line 1806 of yacc.c  */
    7773 #line 1823 "parser.yy"
     7642#line 1820 "parser.yy"
    77747643    { (yyval.tclass) = DeclarationNode::Type; }
    77757644    break;
     
    77787647
    77797648/* Line 1806 of yacc.c  */
    7780 #line 1825 "parser.yy"
     7649#line 1822 "parser.yy"
    77817650    { (yyval.tclass) = DeclarationNode::Ftype; }
    77827651    break;
     
    77857654
    77867655/* Line 1806 of yacc.c  */
    7787 #line 1827 "parser.yy"
     7656#line 1824 "parser.yy"
    77887657    { (yyval.tclass) = DeclarationNode::Dtype; }
    77897658    break;
     
    77927661
    77937662/* Line 1806 of yacc.c  */
    7794 #line 1832 "parser.yy"
     7663#line 1829 "parser.yy"
    77957664    { (yyval.decl) = 0; }
    77967665    break;
     
    77997668
    78007669/* Line 1806 of yacc.c  */
    7801 #line 1834 "parser.yy"
     7670#line 1831 "parser.yy"
    78027671    { (yyval.decl) = (yyvsp[(1) - (2)].decl) == 0 ? (yyvsp[(2) - (2)].decl) : (yyvsp[(1) - (2)].decl)->appendList( (yyvsp[(2) - (2)].decl) ); }
    78037672    break;
     
    78067675
    78077676/* Line 1806 of yacc.c  */
    7808 #line 1839 "parser.yy"
     7677#line 1836 "parser.yy"
    78097678    {
    78107679                        typedefTable.openTrait( *(yyvsp[(2) - (5)].tok) );
     
    78167685
    78177686/* Line 1806 of yacc.c  */
    7818 #line 1844 "parser.yy"
     7687#line 1841 "parser.yy"
    78197688    { (yyval.decl) = (yyvsp[(4) - (5)].decl); }
    78207689    break;
     
    78237692
    78247693/* Line 1806 of yacc.c  */
    7825 #line 1846 "parser.yy"
     7694#line 1843 "parser.yy"
    78267695    { (yyval.decl) = 0; }
    78277696    break;
     
    78307699
    78317700/* Line 1806 of yacc.c  */
     7701#line 1848 "parser.yy"
     7702    { (yyval.en) = new TypeValueNode( (yyvsp[(1) - (1)].decl) ); }
     7703    break;
     7704
     7705  case 499:
     7706
     7707/* Line 1806 of yacc.c  */
    78327708#line 1851 "parser.yy"
    7833     { (yyval.en) = new TypeValueNode( (yyvsp[(1) - (1)].decl) ); }
    7834     break;
    7835 
    7836   case 499:
    7837 
    7838 /* Line 1806 of yacc.c  */
    7839 #line 1854 "parser.yy"
    78407709    { (yyval.en) = (ExpressionNode *)( (yyvsp[(1) - (3)].en)->set_link( new TypeValueNode( (yyvsp[(3) - (3)].decl) ))); }
    78417710    break;
     
    78447713
    78457714/* Line 1806 of yacc.c  */
    7846 #line 1856 "parser.yy"
     7715#line 1853 "parser.yy"
    78477716    { (yyval.en) = (ExpressionNode *)( (yyvsp[(1) - (3)].en)->set_link( (yyvsp[(3) - (3)].en) )); }
    78487717    break;
     
    78517720
    78527721/* Line 1806 of yacc.c  */
    7853 #line 1861 "parser.yy"
     7722#line 1858 "parser.yy"
    78547723    { (yyval.decl) = (yyvsp[(2) - (2)].decl); }
    78557724    break;
     
    78587727
    78597728/* Line 1806 of yacc.c  */
    7860 #line 1863 "parser.yy"
     7729#line 1860 "parser.yy"
    78617730    { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addQualifiers( (yyvsp[(1) - (3)].decl) ); }
    78627731    break;
     
    78657734
    78667735/* Line 1806 of yacc.c  */
    7867 #line 1865 "parser.yy"
     7736#line 1862 "parser.yy"
    78687737    { (yyval.decl) = (yyvsp[(1) - (3)].decl)->appendList( (yyvsp[(3) - (3)].decl)->copyStorageClasses( (yyvsp[(1) - (3)].decl) ) ); }
    78697738    break;
     
    78727741
    78737742/* Line 1806 of yacc.c  */
    7874 #line 1870 "parser.yy"
     7743#line 1867 "parser.yy"
    78757744    { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addAssertions( (yyvsp[(2) - (2)].decl) ); }
    78767745    break;
     
    78797748
    78807749/* Line 1806 of yacc.c  */
    7881 #line 1872 "parser.yy"
     7750#line 1869 "parser.yy"
    78827751    { (yyval.decl) = (yyvsp[(1) - (4)].decl)->addAssertions( (yyvsp[(2) - (4)].decl) )->addType( (yyvsp[(4) - (4)].decl) ); }
    78837752    break;
     
    78867755
    78877756/* Line 1806 of yacc.c  */
    7888 #line 1877 "parser.yy"
     7757#line 1874 "parser.yy"
    78897758    {
    78907759                        typedefTable.addToEnclosingScope( *(yyvsp[(1) - (1)].tok), TypedefTable::TD );
     
    78967765
    78977766/* Line 1806 of yacc.c  */
    7898 #line 1882 "parser.yy"
     7767#line 1879 "parser.yy"
    78997768    {
    79007769                        typedefTable.addToEnclosingScope( *(yyvsp[(1) - (6)].tok), TypedefTable::TG );
     
    79067775
    79077776/* Line 1806 of yacc.c  */
    7908 #line 1890 "parser.yy"
     7777#line 1887 "parser.yy"
    79097778    {
    79107779                        typedefTable.addToEnclosingScope( *(yyvsp[(2) - (9)].tok), TypedefTable::ID );
     
    79167785
    79177786/* Line 1806 of yacc.c  */
    7918 #line 1895 "parser.yy"
     7787#line 1892 "parser.yy"
    79197788    {
    79207789                        typedefTable.enterTrait( *(yyvsp[(2) - (8)].tok) );
     
    79267795
    79277796/* Line 1806 of yacc.c  */
    7928 #line 1900 "parser.yy"
     7797#line 1897 "parser.yy"
    79297798    {
    79307799                        typedefTable.leaveTrait();
     
    79377806
    79387807/* Line 1806 of yacc.c  */
    7939 #line 1910 "parser.yy"
     7808#line 1907 "parser.yy"
    79407809    { (yyval.decl) = (yyvsp[(1) - (3)].decl)->appendList( (yyvsp[(3) - (3)].decl) ); }
    79417810    break;
     
    79447813
    79457814/* Line 1806 of yacc.c  */
    7946 #line 1920 "parser.yy"
     7815#line 1917 "parser.yy"
    79477816    {
    79487817                        typedefTable.addToEnclosingScope2( TypedefTable::ID );
     
    79547823
    79557824/* Line 1806 of yacc.c  */
    7956 #line 1925 "parser.yy"
     7825#line 1922 "parser.yy"
    79577826    {
    79587827                        typedefTable.addToEnclosingScope2( TypedefTable::ID );
     
    79647833
    79657834/* Line 1806 of yacc.c  */
    7966 #line 1930 "parser.yy"
     7835#line 1927 "parser.yy"
    79677836    {
    79687837                        typedefTable.addToEnclosingScope2( *(yyvsp[(5) - (5)].tok), TypedefTable::ID );
     
    79747843
    79757844/* Line 1806 of yacc.c  */
    7976 #line 1938 "parser.yy"
     7845#line 1935 "parser.yy"
    79777846    {
    79787847                        typedefTable.addToEnclosingScope2( TypedefTable::ID );
     
    79847853
    79857854/* Line 1806 of yacc.c  */
    7986 #line 1943 "parser.yy"
     7855#line 1940 "parser.yy"
    79877856    {
    79887857                        typedefTable.addToEnclosingScope2( TypedefTable::ID );
     
    79947863
    79957864/* Line 1806 of yacc.c  */
    7996 #line 1953 "parser.yy"
     7865#line 1950 "parser.yy"
    79977866    {}
    79987867    break;
     
    80017870
    80027871/* Line 1806 of yacc.c  */
    8003 #line 1955 "parser.yy"
     7872#line 1952 "parser.yy"
    80047873    {
    80057874                        if ( theTree ) {
     
    80147883
    80157884/* Line 1806 of yacc.c  */
    8016 #line 1967 "parser.yy"
     7885#line 1964 "parser.yy"
    80177886    { (yyval.decl) = ( (yyvsp[(1) - (3)].decl) != NULL ) ? (yyvsp[(1) - (3)].decl)->appendList( (yyvsp[(3) - (3)].decl) ) : (yyvsp[(3) - (3)].decl); }
    80187887    break;
     
    80217890
    80227891/* Line 1806 of yacc.c  */
    8023 #line 1972 "parser.yy"
     7892#line 1969 "parser.yy"
    80247893    { (yyval.decl) = 0; }
    80257894    break;
     
    80287897
    80297898/* Line 1806 of yacc.c  */
    8030 #line 1980 "parser.yy"
     7899#line 1977 "parser.yy"
    80317900    {}
    80327901    break;
     
    80357904
    80367905/* Line 1806 of yacc.c  */
    8037 #line 1982 "parser.yy"
     7906#line 1979 "parser.yy"
    80387907    {
    80397908                        linkageStack.push( linkage );
     
    80457914
    80467915/* Line 1806 of yacc.c  */
    8047 #line 1987 "parser.yy"
     7916#line 1984 "parser.yy"
    80487917    {
    80497918                        linkage = linkageStack.top();
     
    80567925
    80577926/* Line 1806 of yacc.c  */
    8058 #line 1993 "parser.yy"
     7927#line 1990 "parser.yy"
    80597928    { (yyval.decl) = (yyvsp[(2) - (2)].decl)/*->set_extension( true )*/; }
    80607929    break;
     
    80637932
    80647933/* Line 1806 of yacc.c  */
    8065 #line 2004 "parser.yy"
     7934#line 2000 "parser.yy"
    80667935    {
    80677936                        typedefTable.addToEnclosingScope( TypedefTable::ID );
     
    80747943
    80757944/* Line 1806 of yacc.c  */
    8076 #line 2010 "parser.yy"
     7945#line 2006 "parser.yy"
    80777946    {
    80787947                        typedefTable.addToEnclosingScope( TypedefTable::ID );
     
    80857954
    80867955/* Line 1806 of yacc.c  */
    8087 #line 2019 "parser.yy"
     7956#line 2015 "parser.yy"
    80887957    {
    80897958                        typedefTable.addToEnclosingScope( TypedefTable::ID );
     
    80967965
    80977966/* Line 1806 of yacc.c  */
    8098 #line 2025 "parser.yy"
     7967#line 2021 "parser.yy"
    80997968    {
    81007969                        typedefTable.addToEnclosingScope( TypedefTable::ID );
     
    81077976
    81087977/* Line 1806 of yacc.c  */
    8109 #line 2031 "parser.yy"
     7978#line 2027 "parser.yy"
    81107979    {
    81117980                        typedefTable.addToEnclosingScope( TypedefTable::ID );
     
    81187987
    81197988/* Line 1806 of yacc.c  */
    8120 #line 2037 "parser.yy"
     7989#line 2033 "parser.yy"
    81217990    {
    81227991                        typedefTable.addToEnclosingScope( TypedefTable::ID );
     
    81297998
    81307999/* Line 1806 of yacc.c  */
    8131 #line 2043 "parser.yy"
     8000#line 2039 "parser.yy"
    81328001    {
    81338002                        typedefTable.addToEnclosingScope( TypedefTable::ID );
     
    81408009
    81418010/* Line 1806 of yacc.c  */
    8142 #line 2051 "parser.yy"
     8011#line 2047 "parser.yy"
    81438012    {
    81448013                        typedefTable.addToEnclosingScope( TypedefTable::ID );
     
    81518020
    81528021/* Line 1806 of yacc.c  */
    8153 #line 2057 "parser.yy"
     8022#line 2053 "parser.yy"
    81548023    {
    81558024                        typedefTable.addToEnclosingScope( TypedefTable::ID );
     
    81628031
    81638032/* Line 1806 of yacc.c  */
    8164 #line 2065 "parser.yy"
     8033#line 2061 "parser.yy"
    81658034    {
    81668035                        typedefTable.addToEnclosingScope( TypedefTable::ID );
     
    81738042
    81748043/* Line 1806 of yacc.c  */
    8175 #line 2071 "parser.yy"
     8044#line 2067 "parser.yy"
    81768045    {
    81778046                        typedefTable.addToEnclosingScope( TypedefTable::ID );
     
    81848053
    81858054/* Line 1806 of yacc.c  */
    8186 #line 2086 "parser.yy"
     8055#line 2082 "parser.yy"
    81878056    { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::Range ), (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en) ); }
    81888057    break;
     
    81918060
    81928061/* Line 1806 of yacc.c  */
    8193 #line 2096 "parser.yy"
     8062#line 2092 "parser.yy"
    81948063    { (yyval.decl) = 0; }
    81958064    break;
     
    81988067
    81998068/* Line 1806 of yacc.c  */
    8200 #line 2103 "parser.yy"
     8069#line 2099 "parser.yy"
    82018070    { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addQualifiers( (yyvsp[(1) - (2)].decl) ); }
    82028071    break;
     
    82058074
    82068075/* Line 1806 of yacc.c  */
    8207 #line 2109 "parser.yy"
     8076#line 2105 "parser.yy"
    82088077    { (yyval.decl) = 0; }
    82098078    break;
     
    82128081
    82138082/* Line 1806 of yacc.c  */
    8214 #line 2124 "parser.yy"
     8083#line 2120 "parser.yy"
    82158084    {}
    82168085    break;
     
    82198088
    82208089/* Line 1806 of yacc.c  */
    8221 #line 2125 "parser.yy"
     8090#line 2121 "parser.yy"
    82228091    {}
    82238092    break;
     
    82268095
    82278096/* Line 1806 of yacc.c  */
    8228 #line 2126 "parser.yy"
     8097#line 2122 "parser.yy"
    82298098    {}
    82308099    break;
     
    82338102
    82348103/* Line 1806 of yacc.c  */
    8235 #line 2127 "parser.yy"
     8104#line 2123 "parser.yy"
    82368105    {}
    82378106    break;
     
    82408109
    82418110/* Line 1806 of yacc.c  */
    8242 #line 2162 "parser.yy"
     8111#line 2158 "parser.yy"
    82438112    { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); }
    82448113    break;
     
    82478116
    82488117/* Line 1806 of yacc.c  */
    8249 #line 2165 "parser.yy"
     8118#line 2161 "parser.yy"
    82508119    { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); }
    82518120    break;
     
    82548123
    82558124/* Line 1806 of yacc.c  */
    8256 #line 2167 "parser.yy"
     8125#line 2163 "parser.yy"
    82578126    { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); }
    82588127    break;
     
    82618130
    82628131/* Line 1806 of yacc.c  */
    8263 #line 2172 "parser.yy"
     8132#line 2168 "parser.yy"
    82648133    {
    82658134                        typedefTable.setNextIdentifier( *(yyvsp[(1) - (1)].tok) );
     
    82718140
    82728141/* Line 1806 of yacc.c  */
    8273 #line 2177 "parser.yy"
     8142#line 2173 "parser.yy"
    82748143    { (yyval.decl) = (yyvsp[(2) - (3)].decl); }
    82758144    break;
     
    82788147
    82798148/* Line 1806 of yacc.c  */
     8149#line 2178 "parser.yy"
     8150    { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addPointer( DeclarationNode::newPointer( 0 ) ); }
     8151    break;
     8152
     8153  case 571:
     8154
     8155/* Line 1806 of yacc.c  */
     8156#line 2180 "parser.yy"
     8157    { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addPointer( DeclarationNode::newPointer( (yyvsp[(2) - (3)].decl) ) ); }
     8158    break;
     8159
     8160  case 572:
     8161
     8162/* Line 1806 of yacc.c  */
    82808163#line 2182 "parser.yy"
    8281     { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addPointer( DeclarationNode::newPointer( 0 ) ); }
    8282     break;
    8283 
    8284   case 571:
    8285 
    8286 /* Line 1806 of yacc.c  */
    8287 #line 2184 "parser.yy"
    8288     { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addPointer( DeclarationNode::newPointer( (yyvsp[(2) - (3)].decl) ) ); }
    8289     break;
    8290 
    8291   case 572:
    8292 
    8293 /* Line 1806 of yacc.c  */
    8294 #line 2186 "parser.yy"
    82958164    { (yyval.decl) = (yyvsp[(2) - (3)].decl); }
    82968165    break;
     
    82998168
    83008169/* Line 1806 of yacc.c  */
     8170#line 2187 "parser.yy"
     8171    { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addArray( (yyvsp[(2) - (2)].decl) ); }
     8172    break;
     8173
     8174  case 574:
     8175
     8176/* Line 1806 of yacc.c  */
     8177#line 2189 "parser.yy"
     8178    { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); }
     8179    break;
     8180
     8181  case 575:
     8182
     8183/* Line 1806 of yacc.c  */
    83018184#line 2191 "parser.yy"
    8302     { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addArray( (yyvsp[(2) - (2)].decl) ); }
    8303     break;
    8304 
    8305   case 574:
     8185    { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); }
     8186    break;
     8187
     8188  case 576:
    83068189
    83078190/* Line 1806 of yacc.c  */
    83088191#line 2193 "parser.yy"
    8309     { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); }
    8310     break;
    8311 
    8312   case 575:
    8313 
    8314 /* Line 1806 of yacc.c  */
    8315 #line 2195 "parser.yy"
    8316     { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); }
    8317     break;
    8318 
    8319   case 576:
    8320 
    8321 /* Line 1806 of yacc.c  */
    8322 #line 2197 "parser.yy"
    83238192    { (yyval.decl) = (yyvsp[(2) - (3)].decl); }
    83248193    break;
     
    83278196
    83288197/* Line 1806 of yacc.c  */
    8329 #line 2202 "parser.yy"
     8198#line 2198 "parser.yy"
    83308199    { (yyval.decl) = (yyvsp[(2) - (8)].decl)->addParamList( (yyvsp[(6) - (8)].decl) ); }
    83318200    break;
     
    83348203
    83358204/* Line 1806 of yacc.c  */
    8336 #line 2204 "parser.yy"
     8205#line 2200 "parser.yy"
    83378206    { (yyval.decl) = (yyvsp[(2) - (3)].decl); }
    83388207    break;
    83398208
    83408209  case 579:
     8210
     8211/* Line 1806 of yacc.c  */
     8212#line 2210 "parser.yy"
     8213    { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); }
     8214    break;
     8215
     8216  case 581:
    83418217
    83428218/* Line 1806 of yacc.c  */
     
    83458221    break;
    83468222
    8347   case 581:
    8348 
    8349 /* Line 1806 of yacc.c  */
    8350 #line 2216 "parser.yy"
     8223  case 582:
     8224
     8225/* Line 1806 of yacc.c  */
     8226#line 2218 "parser.yy"
     8227    { (yyval.decl) = (yyvsp[(1) - (6)].decl)->addParamList( (yyvsp[(4) - (6)].decl) ); }
     8228    break;
     8229
     8230  case 583:
     8231
     8232/* Line 1806 of yacc.c  */
     8233#line 2220 "parser.yy"
     8234    { (yyval.decl) = (yyvsp[(2) - (8)].decl)->addParamList( (yyvsp[(6) - (8)].decl) ); }
     8235    break;
     8236
     8237  case 584:
     8238
     8239/* Line 1806 of yacc.c  */
     8240#line 2222 "parser.yy"
     8241    { (yyval.decl) = (yyvsp[(2) - (3)].decl); }
     8242    break;
     8243
     8244  case 585:
     8245
     8246/* Line 1806 of yacc.c  */
     8247#line 2227 "parser.yy"
     8248    { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addPointer( DeclarationNode::newPointer( 0 ) ); }
     8249    break;
     8250
     8251  case 586:
     8252
     8253/* Line 1806 of yacc.c  */
     8254#line 2229 "parser.yy"
     8255    { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addPointer( DeclarationNode::newPointer( (yyvsp[(2) - (3)].decl) ) ); }
     8256    break;
     8257
     8258  case 587:
     8259
     8260/* Line 1806 of yacc.c  */
     8261#line 2231 "parser.yy"
     8262    { (yyval.decl) = (yyvsp[(2) - (3)].decl); }
     8263    break;
     8264
     8265  case 588:
     8266
     8267/* Line 1806 of yacc.c  */
     8268#line 2236 "parser.yy"
     8269    { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); }
     8270    break;
     8271
     8272  case 589:
     8273
     8274/* Line 1806 of yacc.c  */
     8275#line 2238 "parser.yy"
     8276    { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); }
     8277    break;
     8278
     8279  case 590:
     8280
     8281/* Line 1806 of yacc.c  */
     8282#line 2240 "parser.yy"
     8283    { (yyval.decl) = (yyvsp[(2) - (3)].decl); }
     8284    break;
     8285
     8286  case 594:
     8287
     8288/* Line 1806 of yacc.c  */
     8289#line 2255 "parser.yy"
     8290    { (yyval.decl) = (yyvsp[(1) - (4)].decl)->addIdList( (yyvsp[(3) - (4)].decl) ); }
     8291    break;
     8292
     8293  case 595:
     8294
     8295/* Line 1806 of yacc.c  */
     8296#line 2257 "parser.yy"
     8297    { (yyval.decl) = (yyvsp[(2) - (6)].decl)->addIdList( (yyvsp[(5) - (6)].decl) ); }
     8298    break;
     8299
     8300  case 596:
     8301
     8302/* Line 1806 of yacc.c  */
     8303#line 2259 "parser.yy"
     8304    { (yyval.decl) = (yyvsp[(2) - (3)].decl); }
     8305    break;
     8306
     8307  case 597:
     8308
     8309/* Line 1806 of yacc.c  */
     8310#line 2264 "parser.yy"
     8311    { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addPointer( DeclarationNode::newPointer( 0 ) ); }
     8312    break;
     8313
     8314  case 598:
     8315
     8316/* Line 1806 of yacc.c  */
     8317#line 2266 "parser.yy"
     8318    { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addPointer( DeclarationNode::newPointer( (yyvsp[(2) - (3)].decl) ) ); }
     8319    break;
     8320
     8321  case 599:
     8322
     8323/* Line 1806 of yacc.c  */
     8324#line 2268 "parser.yy"
     8325    { (yyval.decl) = (yyvsp[(2) - (3)].decl); }
     8326    break;
     8327
     8328  case 600:
     8329
     8330/* Line 1806 of yacc.c  */
     8331#line 2273 "parser.yy"
     8332    { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); }
     8333    break;
     8334
     8335  case 601:
     8336
     8337/* Line 1806 of yacc.c  */
     8338#line 2275 "parser.yy"
     8339    { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); }
     8340    break;
     8341
     8342  case 602:
     8343
     8344/* Line 1806 of yacc.c  */
     8345#line 2277 "parser.yy"
     8346    { (yyval.decl) = (yyvsp[(2) - (3)].decl); }
     8347    break;
     8348
     8349  case 603:
     8350
     8351/* Line 1806 of yacc.c  */
     8352#line 2292 "parser.yy"
    83518353    { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); }
    83528354    break;
    83538355
    8354   case 582:
    8355 
    8356 /* Line 1806 of yacc.c  */
    8357 #line 2221 "parser.yy"
    8358     { (yyval.decl) = (yyvsp[(1) - (6)].decl)->addParamList( (yyvsp[(4) - (6)].decl) ); }
    8359     break;
    8360 
    8361   case 583:
    8362 
    8363 /* Line 1806 of yacc.c  */
    8364 #line 2223 "parser.yy"
    8365     { (yyval.decl) = (yyvsp[(2) - (8)].decl)->addParamList( (yyvsp[(6) - (8)].decl) ); }
    8366     break;
    8367 
    8368   case 584:
    8369 
    8370 /* Line 1806 of yacc.c  */
    8371 #line 2225 "parser.yy"
    8372     { (yyval.decl) = (yyvsp[(2) - (3)].decl); }
    8373     break;
    8374 
    8375   case 585:
    8376 
    8377 /* Line 1806 of yacc.c  */
    8378 #line 2230 "parser.yy"
    8379     { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addPointer( DeclarationNode::newPointer( 0 ) ); }
    8380     break;
    8381 
    8382   case 586:
    8383 
    8384 /* Line 1806 of yacc.c  */
    8385 #line 2232 "parser.yy"
    8386     { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addPointer( DeclarationNode::newPointer( (yyvsp[(2) - (3)].decl) ) ); }
    8387     break;
    8388 
    8389   case 587:
    8390 
    8391 /* Line 1806 of yacc.c  */
    8392 #line 2234 "parser.yy"
    8393     { (yyval.decl) = (yyvsp[(2) - (3)].decl); }
    8394     break;
    8395 
    8396   case 588:
    8397 
    8398 /* Line 1806 of yacc.c  */
    8399 #line 2239 "parser.yy"
    8400     { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); }
    8401     break;
    8402 
    8403   case 589:
    8404 
    8405 /* Line 1806 of yacc.c  */
    8406 #line 2241 "parser.yy"
    8407     { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); }
    8408     break;
    8409 
    8410   case 590:
    8411 
    8412 /* Line 1806 of yacc.c  */
    8413 #line 2243 "parser.yy"
    8414     { (yyval.decl) = (yyvsp[(2) - (3)].decl); }
    8415     break;
    8416 
    8417   case 594:
    8418 
    8419 /* Line 1806 of yacc.c  */
    8420 #line 2258 "parser.yy"
    8421     { (yyval.decl) = (yyvsp[(1) - (4)].decl)->addIdList( (yyvsp[(3) - (4)].decl) ); }
    8422     break;
    8423 
    8424   case 595:
    8425 
    8426 /* Line 1806 of yacc.c  */
    8427 #line 2260 "parser.yy"
    8428     { (yyval.decl) = (yyvsp[(2) - (6)].decl)->addIdList( (yyvsp[(5) - (6)].decl) ); }
    8429     break;
    8430 
    8431   case 596:
    8432 
    8433 /* Line 1806 of yacc.c  */
    8434 #line 2262 "parser.yy"
    8435     { (yyval.decl) = (yyvsp[(2) - (3)].decl); }
    8436     break;
    8437 
    8438   case 597:
    8439 
    8440 /* Line 1806 of yacc.c  */
    8441 #line 2267 "parser.yy"
    8442     { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addPointer( DeclarationNode::newPointer( 0 ) ); }
    8443     break;
    8444 
    8445   case 598:
    8446 
    8447 /* Line 1806 of yacc.c  */
    8448 #line 2269 "parser.yy"
    8449     { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addPointer( DeclarationNode::newPointer( (yyvsp[(2) - (3)].decl) ) ); }
    8450     break;
    8451 
    8452   case 599:
    8453 
    8454 /* Line 1806 of yacc.c  */
    8455 #line 2271 "parser.yy"
    8456     { (yyval.decl) = (yyvsp[(2) - (3)].decl); }
    8457     break;
    8458 
    8459   case 600:
    8460 
    8461 /* Line 1806 of yacc.c  */
    8462 #line 2276 "parser.yy"
    8463     { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); }
    8464     break;
    8465 
    8466   case 601:
    8467 
    8468 /* Line 1806 of yacc.c  */
    8469 #line 2278 "parser.yy"
    8470     { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); }
    8471     break;
    8472 
    8473   case 602:
    8474 
    8475 /* Line 1806 of yacc.c  */
    8476 #line 2280 "parser.yy"
    8477     { (yyval.decl) = (yyvsp[(2) - (3)].decl); }
    8478     break;
    8479 
    8480   case 603:
     8356  case 605:
    84818357
    84828358/* Line 1806 of yacc.c  */
     
    84858361    break;
    84868362
    8487   case 605:
    8488 
    8489 /* Line 1806 of yacc.c  */
    8490 #line 2298 "parser.yy"
     8363  case 606:
     8364
     8365/* Line 1806 of yacc.c  */
     8366#line 2297 "parser.yy"
    84918367    { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); }
    84928368    break;
    84938369
    8494   case 606:
    8495 
    8496 /* Line 1806 of yacc.c  */
    8497 #line 2300 "parser.yy"
     8370  case 608:
     8371
     8372/* Line 1806 of yacc.c  */
     8373#line 2303 "parser.yy"
     8374    { (yyval.decl) = (yyvsp[(2) - (3)].decl); }
     8375    break;
     8376
     8377  case 609:
     8378
     8379/* Line 1806 of yacc.c  */
     8380#line 2308 "parser.yy"
     8381    { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addPointer( DeclarationNode::newPointer( 0 ) ); }
     8382    break;
     8383
     8384  case 610:
     8385
     8386/* Line 1806 of yacc.c  */
     8387#line 2310 "parser.yy"
     8388    { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addPointer( DeclarationNode::newPointer( (yyvsp[(2) - (3)].decl) ) ); }
     8389    break;
     8390
     8391  case 611:
     8392
     8393/* Line 1806 of yacc.c  */
     8394#line 2312 "parser.yy"
     8395    { (yyval.decl) = (yyvsp[(2) - (3)].decl); }
     8396    break;
     8397
     8398  case 612:
     8399
     8400/* Line 1806 of yacc.c  */
     8401#line 2317 "parser.yy"
     8402    { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addArray( (yyvsp[(2) - (2)].decl) ); }
     8403    break;
     8404
     8405  case 613:
     8406
     8407/* Line 1806 of yacc.c  */
     8408#line 2319 "parser.yy"
     8409    { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); }
     8410    break;
     8411
     8412  case 614:
     8413
     8414/* Line 1806 of yacc.c  */
     8415#line 2321 "parser.yy"
     8416    { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); }
     8417    break;
     8418
     8419  case 615:
     8420
     8421/* Line 1806 of yacc.c  */
     8422#line 2323 "parser.yy"
     8423    { (yyval.decl) = (yyvsp[(2) - (3)].decl); }
     8424    break;
     8425
     8426  case 616:
     8427
     8428/* Line 1806 of yacc.c  */
     8429#line 2328 "parser.yy"
     8430    { (yyval.decl) = (yyvsp[(1) - (6)].decl)->addParamList( (yyvsp[(4) - (6)].decl) ); }
     8431    break;
     8432
     8433  case 617:
     8434
     8435/* Line 1806 of yacc.c  */
     8436#line 2330 "parser.yy"
     8437    { (yyval.decl) = (yyvsp[(2) - (8)].decl)->addParamList( (yyvsp[(6) - (8)].decl) ); }
     8438    break;
     8439
     8440  case 618:
     8441
     8442/* Line 1806 of yacc.c  */
     8443#line 2332 "parser.yy"
     8444    { (yyval.decl) = (yyvsp[(2) - (3)].decl); }
     8445    break;
     8446
     8447  case 619:
     8448
     8449/* Line 1806 of yacc.c  */
     8450#line 2342 "parser.yy"
    84988451    { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); }
    84998452    break;
    85008453
    8501   case 608:
    8502 
    8503 /* Line 1806 of yacc.c  */
    8504 #line 2306 "parser.yy"
    8505     { (yyval.decl) = (yyvsp[(2) - (3)].decl); }
    8506     break;
    8507 
    8508   case 609:
    8509 
    8510 /* Line 1806 of yacc.c  */
    8511 #line 2311 "parser.yy"
    8512     { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addPointer( DeclarationNode::newPointer( 0 ) ); }
    8513     break;
    8514 
    8515   case 610:
    8516 
    8517 /* Line 1806 of yacc.c  */
    8518 #line 2313 "parser.yy"
    8519     { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addPointer( DeclarationNode::newPointer( (yyvsp[(2) - (3)].decl) ) ); }
    8520     break;
    8521 
    8522   case 611:
    8523 
    8524 /* Line 1806 of yacc.c  */
    8525 #line 2315 "parser.yy"
    8526     { (yyval.decl) = (yyvsp[(2) - (3)].decl); }
    8527     break;
    8528 
    8529   case 612:
    8530 
    8531 /* Line 1806 of yacc.c  */
    8532 #line 2320 "parser.yy"
    8533     { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addArray( (yyvsp[(2) - (2)].decl) ); }
    8534     break;
    8535 
    8536   case 613:
    8537 
    8538 /* Line 1806 of yacc.c  */
    8539 #line 2322 "parser.yy"
    8540     { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); }
    8541     break;
    8542 
    8543   case 614:
    8544 
    8545 /* Line 1806 of yacc.c  */
    8546 #line 2324 "parser.yy"
    8547     { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); }
    8548     break;
    8549 
    8550   case 615:
    8551 
    8552 /* Line 1806 of yacc.c  */
    8553 #line 2326 "parser.yy"
    8554     { (yyval.decl) = (yyvsp[(2) - (3)].decl); }
    8555     break;
    8556 
    8557   case 616:
    8558 
    8559 /* Line 1806 of yacc.c  */
    8560 #line 2331 "parser.yy"
    8561     { (yyval.decl) = (yyvsp[(1) - (6)].decl)->addParamList( (yyvsp[(4) - (6)].decl) ); }
    8562     break;
    8563 
    8564   case 617:
    8565 
    8566 /* Line 1806 of yacc.c  */
    8567 #line 2333 "parser.yy"
    8568     { (yyval.decl) = (yyvsp[(2) - (8)].decl)->addParamList( (yyvsp[(6) - (8)].decl) ); }
    8569     break;
    8570 
    8571   case 618:
    8572 
    8573 /* Line 1806 of yacc.c  */
    8574 #line 2335 "parser.yy"
    8575     { (yyval.decl) = (yyvsp[(2) - (3)].decl); }
    8576     break;
    8577 
    8578   case 619:
     8454  case 621:
    85798455
    85808456/* Line 1806 of yacc.c  */
     
    85838459    break;
    85848460
    8585   case 621:
    8586 
    8587 /* Line 1806 of yacc.c  */
    8588 #line 2348 "parser.yy"
     8461  case 622:
     8462
     8463/* Line 1806 of yacc.c  */
     8464#line 2347 "parser.yy"
    85898465    { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); }
    85908466    break;
    85918467
    8592   case 622:
    8593 
    8594 /* Line 1806 of yacc.c  */
    8595 #line 2350 "parser.yy"
     8468  case 623:
     8469
     8470/* Line 1806 of yacc.c  */
     8471#line 2352 "parser.yy"
     8472    { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addPointer( DeclarationNode::newPointer( 0 ) ); }
     8473    break;
     8474
     8475  case 624:
     8476
     8477/* Line 1806 of yacc.c  */
     8478#line 2354 "parser.yy"
     8479    { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addPointer( DeclarationNode::newPointer( (yyvsp[(2) - (3)].decl) ) ); }
     8480    break;
     8481
     8482  case 625:
     8483
     8484/* Line 1806 of yacc.c  */
     8485#line 2356 "parser.yy"
     8486    { (yyval.decl) = (yyvsp[(2) - (3)].decl); }
     8487    break;
     8488
     8489  case 626:
     8490
     8491/* Line 1806 of yacc.c  */
     8492#line 2361 "parser.yy"
     8493    { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addArray( (yyvsp[(2) - (2)].decl) ); }
     8494    break;
     8495
     8496  case 627:
     8497
     8498/* Line 1806 of yacc.c  */
     8499#line 2363 "parser.yy"
     8500    { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); }
     8501    break;
     8502
     8503  case 628:
     8504
     8505/* Line 1806 of yacc.c  */
     8506#line 2365 "parser.yy"
     8507    { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); }
     8508    break;
     8509
     8510  case 629:
     8511
     8512/* Line 1806 of yacc.c  */
     8513#line 2367 "parser.yy"
     8514    { (yyval.decl) = (yyvsp[(2) - (3)].decl); }
     8515    break;
     8516
     8517  case 630:
     8518
     8519/* Line 1806 of yacc.c  */
     8520#line 2372 "parser.yy"
     8521    { (yyval.decl) = (yyvsp[(1) - (6)].decl)->addParamList( (yyvsp[(4) - (6)].decl) ); }
     8522    break;
     8523
     8524  case 631:
     8525
     8526/* Line 1806 of yacc.c  */
     8527#line 2374 "parser.yy"
     8528    { (yyval.decl) = (yyvsp[(2) - (8)].decl)->addParamList( (yyvsp[(6) - (8)].decl) ); }
     8529    break;
     8530
     8531  case 632:
     8532
     8533/* Line 1806 of yacc.c  */
     8534#line 2376 "parser.yy"
     8535    { (yyval.decl) = (yyvsp[(2) - (3)].decl); }
     8536    break;
     8537
     8538  case 633:
     8539
     8540/* Line 1806 of yacc.c  */
     8541#line 2407 "parser.yy"
    85968542    { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); }
    85978543    break;
    85988544
    8599   case 623:
    8600 
    8601 /* Line 1806 of yacc.c  */
    8602 #line 2355 "parser.yy"
    8603     { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addPointer( DeclarationNode::newPointer( 0 ) ); }
    8604     break;
    8605 
    8606   case 624:
    8607 
    8608 /* Line 1806 of yacc.c  */
    8609 #line 2357 "parser.yy"
    8610     { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addPointer( DeclarationNode::newPointer( (yyvsp[(2) - (3)].decl) ) ); }
    8611     break;
    8612 
    8613   case 625:
    8614 
    8615 /* Line 1806 of yacc.c  */
    8616 #line 2359 "parser.yy"
    8617     { (yyval.decl) = (yyvsp[(2) - (3)].decl); }
    8618     break;
    8619 
    8620   case 626:
    8621 
    8622 /* Line 1806 of yacc.c  */
    8623 #line 2364 "parser.yy"
    8624     { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addArray( (yyvsp[(2) - (2)].decl) ); }
    8625     break;
    8626 
    8627   case 627:
    8628 
    8629 /* Line 1806 of yacc.c  */
    8630 #line 2366 "parser.yy"
    8631     { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); }
    8632     break;
    8633 
    8634   case 628:
    8635 
    8636 /* Line 1806 of yacc.c  */
    8637 #line 2368 "parser.yy"
    8638     { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); }
    8639     break;
    8640 
    8641   case 629:
    8642 
    8643 /* Line 1806 of yacc.c  */
    8644 #line 2370 "parser.yy"
    8645     { (yyval.decl) = (yyvsp[(2) - (3)].decl); }
    8646     break;
    8647 
    8648   case 630:
    8649 
    8650 /* Line 1806 of yacc.c  */
    8651 #line 2375 "parser.yy"
    8652     { (yyval.decl) = (yyvsp[(1) - (6)].decl)->addParamList( (yyvsp[(4) - (6)].decl) ); }
    8653     break;
    8654 
    8655   case 631:
    8656 
    8657 /* Line 1806 of yacc.c  */
    8658 #line 2377 "parser.yy"
    8659     { (yyval.decl) = (yyvsp[(2) - (8)].decl)->addParamList( (yyvsp[(6) - (8)].decl) ); }
    8660     break;
    8661 
    8662   case 632:
    8663 
    8664 /* Line 1806 of yacc.c  */
    8665 #line 2379 "parser.yy"
    8666     { (yyval.decl) = (yyvsp[(2) - (3)].decl); }
    8667     break;
    8668 
    8669   case 633:
     8545  case 635:
    86708546
    86718547/* Line 1806 of yacc.c  */
     
    86748550    break;
    86758551
    8676   case 635:
    8677 
    8678 /* Line 1806 of yacc.c  */
    8679 #line 2413 "parser.yy"
     8552  case 636:
     8553
     8554/* Line 1806 of yacc.c  */
     8555#line 2412 "parser.yy"
    86808556    { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); }
    86818557    break;
    86828558
    8683   case 636:
    8684 
    8685 /* Line 1806 of yacc.c  */
    8686 #line 2415 "parser.yy"
    8687     { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); }
    8688     break;
    8689 
    86908559  case 637:
    86918560
    86928561/* Line 1806 of yacc.c  */
    8693 #line 2420 "parser.yy"
     8562#line 2417 "parser.yy"
    86948563    {
    86958564                        typedefTable.setNextIdentifier( *(yyvsp[(1) - (1)].tok) );
     
    87018570
    87028571/* Line 1806 of yacc.c  */
    8703 #line 2425 "parser.yy"
     8572#line 2422 "parser.yy"
    87048573    {
    87058574                        typedefTable.setNextIdentifier( *(yyvsp[(1) - (1)].tok) );
     
    87118580
    87128581/* Line 1806 of yacc.c  */
    8713 #line 2433 "parser.yy"
     8582#line 2430 "parser.yy"
    87148583    { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addPointer( DeclarationNode::newPointer( 0 ) ); }
    87158584    break;
     
    87188587
    87198588/* Line 1806 of yacc.c  */
    8720 #line 2435 "parser.yy"
     8589#line 2432 "parser.yy"
    87218590    { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addPointer( DeclarationNode::newPointer( (yyvsp[(2) - (3)].decl) ) ); }
    87228591    break;
     
    87258594
    87268595/* Line 1806 of yacc.c  */
    8727 #line 2437 "parser.yy"
     8596#line 2434 "parser.yy"
    87288597    { (yyval.decl) = (yyvsp[(2) - (3)].decl); }
    87298598    break;
     
    87328601
    87338602/* Line 1806 of yacc.c  */
    8734 #line 2442 "parser.yy"
     8603#line 2439 "parser.yy"
    87358604    { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addArray( (yyvsp[(2) - (2)].decl) ); }
    87368605    break;
     
    87398608
    87408609/* Line 1806 of yacc.c  */
    8741 #line 2444 "parser.yy"
     8610#line 2441 "parser.yy"
    87428611    { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); }
    87438612    break;
     
    87468615
    87478616/* Line 1806 of yacc.c  */
    8748 #line 2449 "parser.yy"
     8617#line 2446 "parser.yy"
    87498618    { (yyval.decl) = (yyvsp[(1) - (6)].decl)->addParamList( (yyvsp[(4) - (6)].decl) ); }
    87508619    break;
     
    87538622
    87548623/* Line 1806 of yacc.c  */
    8755 #line 2451 "parser.yy"
     8624#line 2448 "parser.yy"
    87568625    { (yyval.decl) = (yyvsp[(2) - (8)].decl)->addParamList( (yyvsp[(6) - (8)].decl) ); }
    87578626    break;
     
    87608629
    87618630/* Line 1806 of yacc.c  */
    8762 #line 2466 "parser.yy"
     8631#line 2463 "parser.yy"
    87638632    { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); }
    87648633    break;
     
    87678636
    87688637/* Line 1806 of yacc.c  */
    8769 #line 2468 "parser.yy"
     8638#line 2465 "parser.yy"
    87708639    { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); }
    87718640    break;
     
    87748643
    87758644/* Line 1806 of yacc.c  */
    8776 #line 2473 "parser.yy"
     8645#line 2470 "parser.yy"
    87778646    { (yyval.decl) = DeclarationNode::newPointer( 0 ); }
    87788647    break;
     
    87818650
    87828651/* Line 1806 of yacc.c  */
    8783 #line 2475 "parser.yy"
     8652#line 2472 "parser.yy"
    87848653    { (yyval.decl) = DeclarationNode::newPointer( (yyvsp[(2) - (2)].decl) ); }
    87858654    break;
     
    87888657
    87898658/* Line 1806 of yacc.c  */
    8790 #line 2477 "parser.yy"
     8659#line 2474 "parser.yy"
    87918660    { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addPointer( DeclarationNode::newPointer( 0 ) ); }
    87928661    break;
     
    87958664
    87968665/* Line 1806 of yacc.c  */
    8797 #line 2479 "parser.yy"
     8666#line 2476 "parser.yy"
    87988667    { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addPointer( DeclarationNode::newPointer( (yyvsp[(2) - (3)].decl) ) ); }
    87998668    break;
     
    88028671
    88038672/* Line 1806 of yacc.c  */
    8804 #line 2481 "parser.yy"
     8673#line 2478 "parser.yy"
    88058674    { (yyval.decl) = (yyvsp[(2) - (3)].decl); }
    88068675    break;
     
    88098678
    88108679/* Line 1806 of yacc.c  */
    8811 #line 2487 "parser.yy"
     8680#line 2484 "parser.yy"
    88128681    { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); }
    88138682    break;
     
    88168685
    88178686/* Line 1806 of yacc.c  */
    8818 #line 2489 "parser.yy"
     8687#line 2486 "parser.yy"
    88198688    { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); }
    88208689    break;
     
    88238692
    88248693/* Line 1806 of yacc.c  */
    8825 #line 2491 "parser.yy"
     8694#line 2488 "parser.yy"
    88268695    { (yyval.decl) = (yyvsp[(2) - (3)].decl); }
    88278696    break;
     
    88308699
    88318700/* Line 1806 of yacc.c  */
    8832 #line 2496 "parser.yy"
     8701#line 2493 "parser.yy"
    88338702    { (yyval.decl) = DeclarationNode::newFunction( 0, 0, (yyvsp[(3) - (5)].decl), 0 ); }
    88348703    break;
     
    88378706
    88388707/* Line 1806 of yacc.c  */
    8839 #line 2498 "parser.yy"
     8708#line 2495 "parser.yy"
    88408709    { (yyval.decl) = (yyvsp[(2) - (8)].decl)->addParamList( (yyvsp[(6) - (8)].decl) ); }
    88418710    break;
     
    88448713
    88458714/* Line 1806 of yacc.c  */
    8846 #line 2500 "parser.yy"
     8715#line 2497 "parser.yy"
    88478716    { (yyval.decl) = (yyvsp[(2) - (3)].decl); }
    88488717    break;
     
    88518720
    88528721/* Line 1806 of yacc.c  */
    8853 #line 2506 "parser.yy"
     8722#line 2503 "parser.yy"
    88548723    { (yyval.decl) = DeclarationNode::newArray( 0, 0, false ); }
    88558724    break;
     
    88588727
    88598728/* Line 1806 of yacc.c  */
    8860 #line 2508 "parser.yy"
     8729#line 2505 "parser.yy"
    88618730    { (yyval.decl) = DeclarationNode::newArray( 0, 0, false )->addArray( (yyvsp[(3) - (3)].decl) ); }
    88628731    break;
     
    88658734
    88668735/* Line 1806 of yacc.c  */
    8867 #line 2514 "parser.yy"
     8736#line 2511 "parser.yy"
    88688737    { (yyval.decl) = DeclarationNode::newArray( (yyvsp[(3) - (5)].en), 0, false ); }
    88698738    break;
     
    88728741
    88738742/* Line 1806 of yacc.c  */
    8874 #line 2516 "parser.yy"
     8743#line 2513 "parser.yy"
    88758744    { (yyval.decl) = DeclarationNode::newVarArray( 0 ); }
    88768745    break;
     
    88798748
    88808749/* Line 1806 of yacc.c  */
    8881 #line 2518 "parser.yy"
     8750#line 2515 "parser.yy"
    88828751    { (yyval.decl) = (yyvsp[(1) - (6)].decl)->addArray( DeclarationNode::newArray( (yyvsp[(4) - (6)].en), 0, false ) ); }
    88838752    break;
     
    88868755
    88878756/* Line 1806 of yacc.c  */
    8888 #line 2520 "parser.yy"
     8757#line 2517 "parser.yy"
    88898758    { (yyval.decl) = (yyvsp[(1) - (6)].decl)->addArray( DeclarationNode::newVarArray( 0 ) ); }
    88908759    break;
     
    88938762
    88948763/* Line 1806 of yacc.c  */
    8895 #line 2535 "parser.yy"
     8764#line 2532 "parser.yy"
    88968765    { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); }
    88978766    break;
     
    89008769
    89018770/* Line 1806 of yacc.c  */
    8902 #line 2537 "parser.yy"
     8771#line 2534 "parser.yy"
    89038772    { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); }
    89048773    break;
     
    89078776
    89088777/* Line 1806 of yacc.c  */
    8909 #line 2542 "parser.yy"
     8778#line 2539 "parser.yy"
    89108779    { (yyval.decl) = DeclarationNode::newPointer( 0 ); }
    89118780    break;
     
    89148783
    89158784/* Line 1806 of yacc.c  */
    8916 #line 2544 "parser.yy"
     8785#line 2541 "parser.yy"
    89178786    { (yyval.decl) = DeclarationNode::newPointer( (yyvsp[(2) - (2)].decl) ); }
    89188787    break;
     
    89218790
    89228791/* Line 1806 of yacc.c  */
    8923 #line 2546 "parser.yy"
     8792#line 2543 "parser.yy"
    89248793    { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addPointer( DeclarationNode::newPointer( 0 ) ); }
    89258794    break;
     
    89288797
    89298798/* Line 1806 of yacc.c  */
    8930 #line 2548 "parser.yy"
     8799#line 2545 "parser.yy"
    89318800    { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addPointer( DeclarationNode::newPointer( (yyvsp[(2) - (3)].decl) ) ); }
    89328801    break;
     
    89358804
    89368805/* Line 1806 of yacc.c  */
    8937 #line 2550 "parser.yy"
     8806#line 2547 "parser.yy"
    89388807    { (yyval.decl) = (yyvsp[(2) - (3)].decl); }
    89398808    break;
     
    89428811
    89438812/* Line 1806 of yacc.c  */
    8944 #line 2556 "parser.yy"
     8813#line 2553 "parser.yy"
    89458814    { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); }
    89468815    break;
     
    89498818
    89508819/* Line 1806 of yacc.c  */
    8951 #line 2558 "parser.yy"
     8820#line 2555 "parser.yy"
    89528821    { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); }
    89538822    break;
     
    89568825
    89578826/* Line 1806 of yacc.c  */
    8958 #line 2560 "parser.yy"
     8827#line 2557 "parser.yy"
    89598828    { (yyval.decl) = (yyvsp[(2) - (3)].decl); }
    89608829    break;
     
    89638832
    89648833/* Line 1806 of yacc.c  */
    8965 #line 2565 "parser.yy"
     8834#line 2562 "parser.yy"
    89668835    { (yyval.decl) = DeclarationNode::newFunction( 0, 0, (yyvsp[(3) - (5)].decl), 0 ); }
    89678836    break;
     
    89708839
    89718840/* Line 1806 of yacc.c  */
    8972 #line 2567 "parser.yy"
     8841#line 2564 "parser.yy"
    89738842    { (yyval.decl) = (yyvsp[(2) - (8)].decl)->addParamList( (yyvsp[(6) - (8)].decl) ); }
    89748843    break;
     
    89778846
    89788847/* Line 1806 of yacc.c  */
    8979 #line 2569 "parser.yy"
     8848#line 2566 "parser.yy"
    89808849    { (yyval.decl) = (yyvsp[(2) - (3)].decl); }
    89818850    break;
     
    89848853
    89858854/* Line 1806 of yacc.c  */
    8986 #line 2576 "parser.yy"
     8855#line 2573 "parser.yy"
    89878856    { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addArray( (yyvsp[(2) - (2)].decl) ); }
    89888857    break;
     
    89918860
    89928861/* Line 1806 of yacc.c  */
     8862#line 2584 "parser.yy"
     8863    { (yyval.decl) = DeclarationNode::newArray( 0, 0, false ); }
     8864    break;
     8865
     8866  case 687:
     8867
     8868/* Line 1806 of yacc.c  */
    89938869#line 2587 "parser.yy"
    8994     { (yyval.decl) = DeclarationNode::newArray( 0, 0, false ); }
    8995     break;
    8996 
    8997   case 687:
    8998 
    8999 /* Line 1806 of yacc.c  */
    9000 #line 2590 "parser.yy"
    90018870    { (yyval.decl) = DeclarationNode::newVarArray( (yyvsp[(3) - (6)].decl) ); }
    90028871    break;
     
    90058874
    90068875/* Line 1806 of yacc.c  */
     8876#line 2589 "parser.yy"
     8877    { (yyval.decl) = DeclarationNode::newArray( 0, (yyvsp[(3) - (5)].decl), false ); }
     8878    break;
     8879
     8880  case 689:
     8881
     8882/* Line 1806 of yacc.c  */
    90078883#line 2592 "parser.yy"
    9008     { (yyval.decl) = DeclarationNode::newArray( 0, (yyvsp[(3) - (5)].decl), false ); }
    9009     break;
    9010 
    9011   case 689:
    9012 
    9013 /* Line 1806 of yacc.c  */
    9014 #line 2595 "parser.yy"
    90158884    { (yyval.decl) = DeclarationNode::newArray( (yyvsp[(4) - (6)].en), (yyvsp[(3) - (6)].decl), false ); }
    90168885    break;
     
    90198888
    90208889/* Line 1806 of yacc.c  */
    9021 #line 2597 "parser.yy"
     8890#line 2594 "parser.yy"
    90228891    { (yyval.decl) = DeclarationNode::newArray( (yyvsp[(5) - (7)].en), (yyvsp[(4) - (7)].decl), true ); }
    90238892    break;
     
    90268895
    90278896/* Line 1806 of yacc.c  */
    9028 #line 2599 "parser.yy"
     8897#line 2596 "parser.yy"
    90298898    { (yyval.decl) = DeclarationNode::newArray( (yyvsp[(5) - (7)].en), (yyvsp[(3) - (7)].decl), true ); }
    90308899    break;
     
    90338902
    90348903/* Line 1806 of yacc.c  */
    9035 #line 2613 "parser.yy"
     8904#line 2610 "parser.yy"
    90368905    { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); }
    90378906    break;
     
    90408909
    90418910/* Line 1806 of yacc.c  */
    9042 #line 2615 "parser.yy"
     8911#line 2612 "parser.yy"
    90438912    { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); }
    90448913    break;
     
    90478916
    90488917/* Line 1806 of yacc.c  */
    9049 #line 2620 "parser.yy"
     8918#line 2617 "parser.yy"
    90508919    { (yyval.decl) = DeclarationNode::newPointer( 0 ); }
    90518920    break;
     
    90548923
    90558924/* Line 1806 of yacc.c  */
    9056 #line 2622 "parser.yy"
     8925#line 2619 "parser.yy"
    90578926    { (yyval.decl) = DeclarationNode::newPointer( (yyvsp[(2) - (2)].decl) ); }
    90588927    break;
     
    90618930
    90628931/* Line 1806 of yacc.c  */
    9063 #line 2624 "parser.yy"
     8932#line 2621 "parser.yy"
    90648933    { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addPointer( DeclarationNode::newPointer( 0 ) ); }
    90658934    break;
     
    90688937
    90698938/* Line 1806 of yacc.c  */
    9070 #line 2626 "parser.yy"
     8939#line 2623 "parser.yy"
    90718940    { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addPointer( DeclarationNode::newPointer( (yyvsp[(2) - (3)].decl) ) ); }
    90728941    break;
     
    90758944
    90768945/* Line 1806 of yacc.c  */
    9077 #line 2628 "parser.yy"
     8946#line 2625 "parser.yy"
    90788947    { (yyval.decl) = (yyvsp[(2) - (3)].decl); }
    90798948    break;
     
    90828951
    90838952/* Line 1806 of yacc.c  */
    9084 #line 2634 "parser.yy"
     8953#line 2631 "parser.yy"
    90858954    { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); }
    90868955    break;
     
    90898958
    90908959/* Line 1806 of yacc.c  */
    9091 #line 2636 "parser.yy"
     8960#line 2633 "parser.yy"
    90928961    { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); }
    90938962    break;
     
    90968965
    90978966/* Line 1806 of yacc.c  */
    9098 #line 2638 "parser.yy"
     8967#line 2635 "parser.yy"
    90998968    { (yyval.decl) = (yyvsp[(2) - (3)].decl); }
    91008969    break;
     
    91038972
    91048973/* Line 1806 of yacc.c  */
    9105 #line 2643 "parser.yy"
     8974#line 2640 "parser.yy"
    91068975    { (yyval.decl) = (yyvsp[(2) - (8)].decl)->addParamList( (yyvsp[(6) - (8)].decl) ); }
    91078976    break;
     
    91108979
    91118980/* Line 1806 of yacc.c  */
    9112 #line 2645 "parser.yy"
     8981#line 2642 "parser.yy"
    91138982    { (yyval.decl) = (yyvsp[(2) - (3)].decl); }
    91148983    break;
     
    91178986
    91188987/* Line 1806 of yacc.c  */
    9119 #line 2655 "parser.yy"
     8988#line 2652 "parser.yy"
    91208989    { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addQualifiers( (yyvsp[(1) - (2)].decl) ); }
    91218990    break;
     
    91248993
    91258994/* Line 1806 of yacc.c  */
    9126 #line 2665 "parser.yy"
     8995#line 2662 "parser.yy"
    91278996    { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addNewPointer( DeclarationNode::newPointer( 0 ) ); }
    91288997    break;
     
    91319000
    91329001/* Line 1806 of yacc.c  */
    9133 #line 2667 "parser.yy"
     9002#line 2664 "parser.yy"
    91349003    { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addNewPointer( DeclarationNode::newPointer( (yyvsp[(1) - (3)].decl) ) ); }
    91359004    break;
     
    91389007
    91399008/* Line 1806 of yacc.c  */
    9140 #line 2669 "parser.yy"
     9009#line 2666 "parser.yy"
    91419010    { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addNewPointer( DeclarationNode::newPointer( 0 ) ); }
    91429011    break;
     
    91459014
    91469015/* Line 1806 of yacc.c  */
    9147 #line 2671 "parser.yy"
     9016#line 2668 "parser.yy"
    91489017    { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addNewPointer( DeclarationNode::newPointer( (yyvsp[(1) - (3)].decl) ) ); }
    91499018    break;
     
    91529021
    91539022/* Line 1806 of yacc.c  */
    9154 #line 2673 "parser.yy"
     9023#line 2670 "parser.yy"
    91559024    { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addNewPointer( DeclarationNode::newPointer( 0 ) ); }
    91569025    break;
     
    91599028
    91609029/* Line 1806 of yacc.c  */
    9161 #line 2675 "parser.yy"
     9030#line 2672 "parser.yy"
    91629031    { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addNewPointer( DeclarationNode::newPointer( (yyvsp[(1) - (3)].decl) ) ); }
    91639032    break;
     
    91669035
    91679036/* Line 1806 of yacc.c  */
    9168 #line 2682 "parser.yy"
     9037#line 2679 "parser.yy"
    91699038    { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addNewArray( DeclarationNode::newArray( 0, 0, false ) ); }
    91709039    break;
     
    91739042
    91749043/* Line 1806 of yacc.c  */
    9175 #line 2684 "parser.yy"
     9044#line 2681 "parser.yy"
    91769045    { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addNewArray( (yyvsp[(1) - (2)].decl) ); }
    91779046    break;
     
    91809049
    91819050/* Line 1806 of yacc.c  */
    9182 #line 2686 "parser.yy"
     9051#line 2683 "parser.yy"
    91839052    { (yyval.decl) = (yyvsp[(4) - (4)].decl)->addNewArray( (yyvsp[(3) - (4)].decl) )->addNewArray( DeclarationNode::newArray( 0, 0, false ) ); }
    91849053    break;
     
    91879056
    91889057/* Line 1806 of yacc.c  */
    9189 #line 2688 "parser.yy"
     9058#line 2685 "parser.yy"
    91909059    { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addNewArray( (yyvsp[(2) - (3)].decl) )->addNewArray( (yyvsp[(1) - (3)].decl) ); }
    91919060    break;
     
    91949063
    91959064/* Line 1806 of yacc.c  */
    9196 #line 2690 "parser.yy"
     9065#line 2687 "parser.yy"
    91979066    { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addNewArray( (yyvsp[(1) - (2)].decl) ); }
    91989067    break;
     
    92019070
    92029071/* Line 1806 of yacc.c  */
    9203 #line 2692 "parser.yy"
     9072#line 2689 "parser.yy"
    92049073    { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addNewArray( DeclarationNode::newArray( 0, 0, false ) ); }
    92059074    break;
     
    92089077
    92099078/* Line 1806 of yacc.c  */
    9210 #line 2694 "parser.yy"
     9079#line 2691 "parser.yy"
    92119080    { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addNewArray( (yyvsp[(1) - (2)].decl) ); }
    92129081    break;
     
    92159084
    92169085/* Line 1806 of yacc.c  */
    9217 #line 2696 "parser.yy"
     9086#line 2693 "parser.yy"
    92189087    { (yyval.decl) = (yyvsp[(4) - (4)].decl)->addNewArray( (yyvsp[(3) - (4)].decl) )->addNewArray( DeclarationNode::newArray( 0, 0, false ) ); }
    92199088    break;
     
    92229091
    92239092/* Line 1806 of yacc.c  */
    9224 #line 2698 "parser.yy"
     9093#line 2695 "parser.yy"
    92259094    { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addNewArray( (yyvsp[(2) - (3)].decl) )->addNewArray( (yyvsp[(1) - (3)].decl) ); }
    92269095    break;
     
    92299098
    92309099/* Line 1806 of yacc.c  */
    9231 #line 2700 "parser.yy"
     9100#line 2697 "parser.yy"
    92329101    { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addNewArray( (yyvsp[(1) - (2)].decl) ); }
    92339102    break;
     
    92369105
    92379106/* Line 1806 of yacc.c  */
    9238 #line 2705 "parser.yy"
     9107#line 2702 "parser.yy"
    92399108    { (yyval.decl) = DeclarationNode::newVarArray( (yyvsp[(3) - (6)].decl) ); }
    92409109    break;
     
    92439112
    92449113/* Line 1806 of yacc.c  */
    9245 #line 2707 "parser.yy"
     9114#line 2704 "parser.yy"
    92469115    { (yyval.decl) = DeclarationNode::newArray( (yyvsp[(4) - (6)].en), (yyvsp[(3) - (6)].decl), false ); }
    92479116    break;
     
    92509119
    92519120/* Line 1806 of yacc.c  */
    9252 #line 2712 "parser.yy"
     9121#line 2709 "parser.yy"
    92539122    { (yyval.decl) = DeclarationNode::newArray( (yyvsp[(4) - (6)].en), (yyvsp[(3) - (6)].decl), true ); }
    92549123    break;
     
    92579126
    92589127/* Line 1806 of yacc.c  */
    9259 #line 2714 "parser.yy"
     9128#line 2711 "parser.yy"
    92609129    { (yyval.decl) = DeclarationNode::newArray( (yyvsp[(5) - (7)].en), (yyvsp[(4) - (7)].decl)->addQualifiers( (yyvsp[(3) - (7)].decl) ), true ); }
    92619130    break;
     
    92649133
    92659134/* Line 1806 of yacc.c  */
    9266 #line 2741 "parser.yy"
     9135#line 2738 "parser.yy"
    92679136    { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addQualifiers( (yyvsp[(1) - (2)].decl) ); }
    92689137    break;
     
    92719140
    92729141/* Line 1806 of yacc.c  */
    9273 #line 2752 "parser.yy"
     9142#line 2749 "parser.yy"
    92749143    { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addNewPointer( DeclarationNode::newPointer( 0 ) ); }
    92759144    break;
     
    92789147
    92799148/* Line 1806 of yacc.c  */
    9280 #line 2754 "parser.yy"
     9149#line 2751 "parser.yy"
    92819150    { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addNewPointer( DeclarationNode::newPointer( (yyvsp[(1) - (3)].decl) ) ); }
    92829151    break;
     
    92859154
    92869155/* Line 1806 of yacc.c  */
    9287 #line 2756 "parser.yy"
     9156#line 2753 "parser.yy"
    92889157    { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addNewPointer( DeclarationNode::newPointer( 0 ) ); }
    92899158    break;
     
    92929161
    92939162/* Line 1806 of yacc.c  */
    9294 #line 2758 "parser.yy"
     9163#line 2755 "parser.yy"
    92959164    { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addNewPointer( DeclarationNode::newPointer( (yyvsp[(1) - (3)].decl) ) ); }
    92969165    break;
     
    92999168
    93009169/* Line 1806 of yacc.c  */
    9301 #line 2760 "parser.yy"
     9170#line 2757 "parser.yy"
    93029171    { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addNewPointer( DeclarationNode::newPointer( 0 ) ); }
    93039172    break;
     
    93069175
    93079176/* Line 1806 of yacc.c  */
    9308 #line 2762 "parser.yy"
     9177#line 2759 "parser.yy"
    93099178    { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addNewPointer( DeclarationNode::newPointer( (yyvsp[(1) - (3)].decl) ) ); }
    93109179    break;
     
    93139182
    93149183/* Line 1806 of yacc.c  */
    9315 #line 2769 "parser.yy"
     9184#line 2766 "parser.yy"
    93169185    { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addNewArray( DeclarationNode::newArray( 0, 0, false ) ); }
    93179186    break;
     
    93209189
    93219190/* Line 1806 of yacc.c  */
    9322 #line 2771 "parser.yy"
     9191#line 2768 "parser.yy"
    93239192    { (yyval.decl) = (yyvsp[(4) - (4)].decl)->addNewArray( (yyvsp[(3) - (4)].decl) )->addNewArray( DeclarationNode::newArray( 0, 0, false ) ); }
    93249193    break;
     
    93279196
    93289197/* Line 1806 of yacc.c  */
    9329 #line 2773 "parser.yy"
     9198#line 2770 "parser.yy"
    93309199    { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addNewArray( (yyvsp[(1) - (2)].decl) ); }
    93319200    break;
     
    93349203
    93359204/* Line 1806 of yacc.c  */
    9336 #line 2775 "parser.yy"
     9205#line 2772 "parser.yy"
    93379206    { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addNewArray( DeclarationNode::newArray( 0, 0, false ) ); }
    93389207    break;
     
    93419210
    93429211/* Line 1806 of yacc.c  */
    9343 #line 2777 "parser.yy"
     9212#line 2774 "parser.yy"
    93449213    { (yyval.decl) = (yyvsp[(4) - (4)].decl)->addNewArray( (yyvsp[(3) - (4)].decl) )->addNewArray( DeclarationNode::newArray( 0, 0, false ) ); }
    93459214    break;
     
    93489217
    93499218/* Line 1806 of yacc.c  */
    9350 #line 2779 "parser.yy"
     9219#line 2776 "parser.yy"
    93519220    { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addNewArray( (yyvsp[(1) - (2)].decl) ); }
    93529221    break;
     
    93559224
    93569225/* Line 1806 of yacc.c  */
    9357 #line 2784 "parser.yy"
     9226#line 2781 "parser.yy"
    93589227    { (yyval.decl) = DeclarationNode::newTuple( (yyvsp[(3) - (5)].decl) ); }
    93599228    break;
     
    93629231
    93639232/* Line 1806 of yacc.c  */
    9364 #line 2789 "parser.yy"
     9233#line 2786 "parser.yy"
    93659234    { (yyval.decl) = DeclarationNode::newFunction( 0, DeclarationNode::newTuple( 0 ), (yyvsp[(4) - (5)].decl), 0 ); }
    93669235    break;
     
    93699238
    93709239/* Line 1806 of yacc.c  */
    9371 #line 2791 "parser.yy"
     9240#line 2788 "parser.yy"
    93729241    { (yyval.decl) = DeclarationNode::newFunction( 0, (yyvsp[(1) - (6)].decl), (yyvsp[(4) - (6)].decl), 0 ); }
    93739242    break;
     
    93769245
    93779246/* Line 1806 of yacc.c  */
    9378 #line 2793 "parser.yy"
     9247#line 2790 "parser.yy"
    93799248    { (yyval.decl) = DeclarationNode::newFunction( 0, (yyvsp[(1) - (6)].decl), (yyvsp[(4) - (6)].decl), 0 ); }
    93809249    break;
     
    93839252
    93849253/* Line 1806 of yacc.c  */
    9385 #line 2817 "parser.yy"
     9254#line 2814 "parser.yy"
    93869255    { (yyval.en) = 0; }
    93879256    break;
     
    93909259
    93919260/* Line 1806 of yacc.c  */
    9392 #line 2819 "parser.yy"
     9261#line 2816 "parser.yy"
    93939262    { (yyval.en) = (yyvsp[(2) - (2)].en); }
    93949263    break;
     
    93979266
    93989267/* Line 1806 of yacc.c  */
    9399 #line 9400 "Parser/parser.cc"
     9268#line 9269 "Parser/parser.cc"
    94009269      default: break;
    94019270    }
     
    96289497
    96299498/* Line 2067 of yacc.c  */
    9630 #line 2822 "parser.yy"
     9499#line 2819 "parser.yy"
    96319500
    96329501// ----end of grammar----
  • src/Parser/parser.yy

    r4dcea3f re39aa0f  
    1010// Created On       : Sat Sep  1 20:22:55 2001
    1111// Last Modified By : Peter A. Buhr
    12 // Last Modified On : Mon Jun 27 17:47:56 2016
    13 // Update Count     : 1627
     12// Last Modified On : Wed Jun 22 21:20:17 2016
     13// Update Count     : 1584
    1414//
    1515
     
    224224%type<decl> typedef type_array typedef_declaration typedef_declaration_specifier typedef_expression
    225225%type<decl> type_function type_parameter_array type_parameter_function type_parameter_ptr
    226 %type<decl> type_parameter_redeclarator type_ptr variable_type_redeclarator typedef_type_specifier
     226%type<decl> type_parameter_redeclarator type_ptr type_redeclarator typedef_type_specifier
    227227%type<decl> typegen_declaration_specifier typegen_type_specifier typegen_name
    228228
     
    350350        primary_expression
    351351        | postfix_expression '[' push assignment_expression pop ']'
    352                 // CFA, comma_expression disallowed in this context because it results in a common user error: subscripting a
     352                // CFA, comma_expression disallowed in the context because it results in a commom user error: subscripting a
    353353                // matrix with x[i,j] instead of x[i][j]. While this change is not backwards compatible, there seems to be
    354354                // little advantage to this feature and many disadvantages. It is possible to write x[(i,j)] in CFA, which is
     
    421421unary_expression:
    422422        postfix_expression
    423                 // first location where constant/string can have operator applied: sizeof 3/sizeof "abc" still requires
    424                 // semantics checks, e.g., ++3, 3--, *3, &&3
     423        // first location where constant/string can have operator applied: sizeof 3/sizeof "abc" still requires semantics
     424        // checks, e.g., ++3, 3--, *3, &&3
    425425        | constant
    426426                { $$ = $1; }
     
    431431        | ptrref_operator cast_expression                                       // CFA
    432432                { $$ = new CompositeExprNode( $1, $2 ); }
    433                 // '*' ('&') is separated from unary_operator because of shift/reduce conflict in:
    434                 //              { * X; }         // dereference X
    435                 //              { * int X; } // CFA declaration of pointer to int
     433        // '*' ('&') is separated from unary_operator because of shift/reduce conflict in:
     434        //              { * X; }         // dereference X
     435        //              { * int X; } // CFA declaration of pointer to int
    436436        | unary_operator cast_expression
    437437                { $$ = new CompositeExprNode( $1, $2 ); }
     
    456456        | ALIGNOF '(' type_name_no_function ')'                         // GCC, type alignment
    457457                { $$ = new CompositeExprNode( new OperatorNode( OperatorNode::AlignOf ), new TypeValueNode( $3 ) ); }
    458 //      | ANDAND IDENTIFIER                                                                     // GCC, address of label
    459 //              { $$ = new CompositeExprNode( new OperatorNode( OperatorNode::LabelAddress ), new VarRefNode( $2, true ) ); }
     458        | ANDAND no_attr_identifier                                                     // GCC, address of label
     459                { $$ = new CompositeExprNode( new OperatorNode( OperatorNode::LabelAddress ), new VarRefNode( $2, true ) ); }
    460460        ;
    461461
     
    463463        '*'                                                                                     { $$ = new OperatorNode( OperatorNode::PointTo ); }
    464464        | '&'                                                                           { $$ = new OperatorNode( OperatorNode::AddressOf ); }
    465                 // GCC, address of label must be handled by semantic check for ref,ref,label
    466         | ANDAND                                                                        { $$ = new OperatorNode( OperatorNode::And ); }
    467465        ;
    468466
     
    653651
    654652labeled_statement:
    655                 // labels cannot be identifiers 0 or 1
    656         IDENTIFIER ':' attribute_list_opt statement
     653        no_attr_identifier ':' attribute_list_opt statement
    657654                {
    658655                        $$ = $4->add_label( $1 );
     
    807804
    808805jump_statement:
    809         GOTO IDENTIFIER ';'
     806        GOTO no_attr_identifier ';'
    810807                { $$ = new StatementNode( StatementNode::Goto, $2 ); }
    811808        | GOTO '*' comma_expression ';'                                         // GCC, computed goto
     
    816813                // A semantic check is required to ensure this statement appears only in the body of an iteration statement.
    817814                { $$ = new StatementNode( StatementNode::Continue ); }
    818         | CONTINUE IDENTIFIER ';'                                       // CFA, multi-level continue
     815        | CONTINUE no_attr_identifier ';'                                       // CFA, multi-level continue
    819816                // A semantic check is required to ensure this statement appears only in the body of an iteration statement, and
    820817                // the target of the transfer appears only at the start of an iteration statement.
     
    823820                // A semantic check is required to ensure this statement appears only in the body of an iteration statement.
    824821                { $$ = new StatementNode( StatementNode::Break ); }
    825         | BREAK IDENTIFIER ';'                                          // CFA, multi-level exit
     822        | BREAK no_attr_identifier ';'                                          // CFA, multi-level exit
    826823                // A semantic check is required to ensure this statement appears only in the body of an iteration statement, and
    827824                // the target of the transfer appears only at the start of an iteration statement.
     
    15031500                // A semantic check is required to ensure bit_subrange only appears on base type int.
    15041501                { $$ = $1->addBitfield( $2 ); }
    1505         | variable_type_redeclarator bit_subrange_size_opt
     1502        | type_redeclarator bit_subrange_size_opt
    15061503                // A semantic check is required to ensure bit_subrange only appears on base type int.
    15071504                { $$ = $1->addBitfield( $2 ); }
     
    17471744
    17481745designator:
    1749                 // lexer ambiguity: designator ".0" is floating-point constant or designator for name 0 only ".0" and ".1"
    1750                 // allowed => semantic check
     1746        // lexer ambiguity: designator ".0" is floating-point constant or designator for name 0
     1747        // only ".0" and ".1" allowed => semantic check
    17511748        FLOATINGconstant
    17521749                { $$ = new DesignatorNode( new VarRefNode( $1 ) ); }
     
    19971994        function_definition
    19981995                // These rules are a concession to the "implicit int" type_specifier because there is a significant amount of
    1999                 // legacy code with global functions missing the type-specifier for the return type, and assuming "int".
    2000                 // Parsing is possible because function_definition does not appear in the context of an expression (nested
    2001                 // functions preclude this concession, i.e., all nested function must have a return type). A function prototype
    2002                 // declaration must still have a type_specifier.  OBSOLESCENT (see 1)
     1996                // code with functions missing a type-specifier on the return type.  Parsing is possible because
     1997                // function_definition does not appear in the context of an expression (nested functions would preclude this
     1998                // concession). A function prototype declaration must still have a type_specifier.  OBSOLESCENT (see 1)
    20031999        | function_declarator compound_statement
    20042000                {
     
    20782074declarator:
    20792075        variable_declarator
    2080         | variable_type_redeclarator
    20812076        | function_declarator
     2077        | type_redeclarator
    20822078        ;
    20832079
     
    22052201        ;
    22062202
    2207 // This pattern parses a function declarator that is not redefining a typedef name. For non-nested functions, there is
    2208 // no context where a function definition can redefine a typedef name, i.e., the typedef and function name cannot exist
    2209 // is the same scope.  The pattern precludes returning arrays and functions versus pointers to arrays and functions.
     2203// This pattern parses a function declarator that is not redefining a typedef name. Because functions cannot be nested,
     2204// there is no context where a function definition can redefine a typedef name. To allow nested functions requires
     2205// further separation of variable and function declarators in type_redeclarator.  The pattern precludes returning
     2206// arrays and functions versus pointers to arrays and functions.
    22102207
    22112208function_declarator:
     
    22912288// and functions versus pointers to arrays and functions.
    22922289
    2293 variable_type_redeclarator:
     2290type_redeclarator:
    22942291        paren_type attribute_list_opt
    22952292                { $$ = $1->addQualifiers( $2 ); }
     
    23082305
    23092306type_ptr:
    2310         ptrref_operator variable_type_redeclarator
     2307        ptrref_operator type_redeclarator
    23112308                { $$ = $2->addPointer( DeclarationNode::newPointer( 0 ) ); }
    2312         | ptrref_operator type_qualifier_list variable_type_redeclarator
     2309        | ptrref_operator type_qualifier_list type_redeclarator
    23132310                { $$ = $3->addPointer( DeclarationNode::newPointer( $2 ) ); }
    23142311        | '(' type_ptr ')'
     
    23932390//              not as redundant parentheses around the identifier."
    23942391//
    2395 // For example:
     2392// which precludes the following cases:
    23962393//
    23972394//              typedef float T;
  • src/tests/Makefile.am

    r4dcea3f re39aa0f  
    1111## Created On       : Sun May 31 09:08:15 2015
    1212## Last Modified By : Peter A. Buhr
    13 ## Last Modified On : Mon Jun 27 14:39:08 2016
    14 ## Update Count     : 34
     13## Last Modified On : Mon Jun 20 14:30:52 2016
     14## Update Count     : 33
    1515###############################################################################
    1616
     
    2727
    2828all-local :
    29         +python test.py vector_test avl_test operators numericConstants expression enum asmName array typeof cast
     29        python test.py vector_test avl_test operators numericConstants expression enum asmName array typeof cast
    3030
    3131all-tests :
    32         +python test.py --all
     32        python test.py --all
    3333
    3434clean-local :
     
    3636
    3737list :
    38         +python test.py --list
     38        python test.py --list
    3939
    4040constant0-1DP : constant0-1.c
  • src/tests/Makefile.in

    r4dcea3f re39aa0f  
    634634
    635635all-local :
    636         +python test.py vector_test avl_test operators numericConstants expression enum asmName array typeof cast
     636        python test.py vector_test avl_test operators numericConstants expression enum asmName array typeof cast
    637637
    638638all-tests :
    639         +python test.py --all
     639        python test.py --all
    640640
    641641clean-local :
     
    643643
    644644list :
    645         +python test.py --list
     645        python test.py --list
    646646
    647647constant0-1DP : constant0-1.c
  • src/tests/test.py

    r4dcea3f re39aa0f  
    6161
    6262        # build, skipping to next test on error
    63         make_ret = sh("%s %s 2> %s 1> /dev/null" % (make_cmd, test, out_file), dry_run)
     63        make_ret = sh("make -j 8 %s 2> %s 1> /dev/null" % (test, out_file), dry_run)
    6464
    6565        if make_ret == 0 :
     
    8484
    8585def run_tests(tests, generate, dry_run) :
    86         sh("%s clean > /dev/null 2>&1" % make_cmd, dry_run)
     86        sh('make clean > /dev/null 2>&1', dry_run)
    8787        sh('mkdir -p .out .expect', dry_run)
    8888
     
    102102                        print( "Done" )
    103103
    104         sh("%s clean > /dev/null 2>&1" % make_cmd, dry_run)
     104        sh('make clean > /dev/null 2>&1', dry_run)
    105105
    106106        return 1 if failed else 0
     
    141141                sys.exit(1)
    142142
    143 tests.sort()
    144 make_flags = environ.get('MAKEFLAGS')
    145 make_cmd = "make" if make_flags and "-j" in make_flags else "make -j8"
    146 
    147143if options.list :
    148144        print("\n".join(tests))
Note: See TracChangeset for help on using the changeset viewer.