diff --git a/Geo/GFaceCompound.cpp b/Geo/GFaceCompound.cpp index 62288e354f73fd83017eee699a87fef7833a7fa4..cc63a083cdb2adfe9288f9d46b3315e297653643 100644 --- a/Geo/GFaceCompound.cpp +++ b/Geo/GFaceCompound.cpp @@ -411,8 +411,8 @@ bool GFaceCompound::checkOrientation(int iter) const int iterMax = 5; if(!oriented && iter < iterMax){ - if (iter == 0) Msg::Warning("*** Parametrization is NOT 1 to 1 : applying cavity checks."); - Msg::Debug("*** Cavity Check - iter %d -",iter); + if (iter == 0) Msg::Warning("--- Parametrization is NOT 1 to 1 : applying cavity checks."); + Msg::Debug("--- Cavity Check - iter %d -",iter); one2OneMap(); return checkOrientation(iter+1); } @@ -532,7 +532,7 @@ bool GFaceCompound::parametrize() const computeNormals(); if (checkAspectRatio() > AR_MAX){ - printf("WARNING: geom aspect ratio too high \n"); + Msg::Warning("Geometrical aspect ratio too high"); //exit(1); paramOK = false; } @@ -1688,16 +1688,20 @@ bool GFaceCompound::checkTopology() const if (G != 0 || Nb < 1){ correctTopo = false; nbSplit = std::max(G+2, 2); - Msg::Info("-----------------------------------------------------------"); Msg::Warning("Wrong topology: Genus=%d, Nb boundaries=%d, AR=%g", G, Nb, H/D); - Msg::Info("*** Split surface %d in %d parts with Multilevel Mesh partitioner", tag(), nbSplit); + if (_allowPartition){ + Msg::Info("-----------------------------------------------------------"); + Msg::Info("--- Split surface %d in %d parts with Multilevel Mesh partitioner", tag(), nbSplit); + } } else if (G == 0 && AR > AR_MAX){ correctTopo = false; nbSplit = -2; - Msg::Info("-----------------------------------------------------------"); Msg::Warning("Wrong topology: Genus=%d, Nb boundaries=%d, AR=%d", G, Nb, AR); - Msg::Info("*** Split surface %d in 2 parts with Laplacian Mesh partitioner", tag()); + if (_allowPartition){ + Msg::Info("-----------------------------------------------------------"); + Msg::Info("--- Split surface %d in 2 parts with Laplacian Mesh partitioner", tag()); + } // correctTopo = true; // _mapping = MULTISCALE; diff --git a/Geo/GModelIO_Geo.cpp b/Geo/GModelIO_Geo.cpp index 0403584b763ea72cfe24fe9d0787f16121e14a47..839757a815a8383f97939f1105042df5f3aa67ba 100644 --- a/Geo/GModelIO_Geo.cpp +++ b/Geo/GModelIO_Geo.cpp @@ -175,10 +175,12 @@ int GModel::importGEOInternals() if(ge) b[j].push_back(ge); } } + int allowPartition = 1; + if (abs(s->TypeOfMapping) != 1) allowPartition = 0; f = new GFaceCompound(this, s->Num, comp, b[0], b[1], b[2], b[3], 0, s->TypeOfMapping > 0 ? GFaceCompound::HARMONIC : - GFaceCompound::CONFORMAL, s->AllowPartition); + GFaceCompound::CONFORMAL, allowPartition); add(f); } else if(!f){ diff --git a/Geo/Geo.cpp b/Geo/Geo.cpp index 03236a812803b7f7091bd3a3161e4dd2e8f957e4..bbab006fa0e19ec848313c8233efed9baf830a79 100644 --- a/Geo/Geo.cpp +++ b/Geo/Geo.cpp @@ -595,8 +595,7 @@ Surface *Create_Surface(int Num, int Typ) pS->Method = MESH_UNSTRUCTURED; pS->Recombine = 0; pS->Recombine_Dir = -1; - pS->TypeOfMapping = 0; - pS->AllowPartition = 1; + pS->TypeOfMapping = 1; pS->TransfiniteSmoothing = -1; pS->TrsfPoints = List_Create(4, 4, sizeof(Vertex *)); pS->Generatrices = NULL; diff --git a/Geo/Geo.h b/Geo/Geo.h index 6272a042848d2781a5567d0139d906db91c3399f..bb3e168ccc67cd3acf1893f94235e73385c901e8 100644 --- a/Geo/Geo.h +++ b/Geo/Geo.h @@ -148,8 +148,7 @@ class Surface{ int Method; int Recombine; int Recombine_Dir; // -1 is left, +1 is right, 0 is alternated - int TypeOfMapping; // 0 is cad, +1 is harmonic, -1 is conformal - int AllowPartition; // 0 not allowed, 1 allowed + int TypeOfMapping; // +1 is harmonic, -1 is conformal, +2 harmonic_NoSplit , -2 conformal_NoSplit double RecombineAngle; int TransfiniteSmoothing; List_T *Generatrices; diff --git a/Parser/Gmsh.tab.cpp b/Parser/Gmsh.tab.cpp index 3ef8a58947cf07be85b1e7efde58abc6354f7454..1b2dec82af718f68314b937c5441d471911b7859 100644 --- a/Parser/Gmsh.tab.cpp +++ b/Parser/Gmsh.tab.cpp @@ -680,16 +680,16 @@ union yyalloc /* YYFINAL -- State number of the termination state. */ #define YYFINAL 5 /* YYLAST -- Last index in YYTABLE. */ -#define YYLAST 6628 +#define YYLAST 6642 /* YYNTOKENS -- Number of terminals. */ #define YYNTOKENS 150 /* YYNNTS -- Number of nonterminals. */ -#define YYNNTS 82 +#define YYNNTS 81 /* YYNRULES -- Number of rules. */ -#define YYNRULES 385 +#define YYNRULES 383 /* YYNRULES -- Number of states. */ -#define YYNSTATES 1361 +#define YYNSTATES 1358 /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */ #define YYUNDEFTOK 2 @@ -758,34 +758,34 @@ static const yytype_uint16 yyprhs[] = 363, 373, 379, 387, 397, 407, 419, 429, 439, 441, 443, 444, 450, 451, 454, 462, 463, 473, 480, 488, 493, 501, 510, 519, 527, 535, 547, 556, 565, 566, - 576, 585, 595, 599, 604, 615, 623, 631, 640, 651, - 666, 667, 677, 686, 694, 704, 713, 714, 724, 730, - 742, 748, 758, 763, 773, 783, 785, 787, 788, 791, - 798, 805, 812, 819, 828, 843, 860, 873, 882, 891, - 898, 913, 918, 925, 932, 936, 941, 947, 951, 955, - 960, 965, 969, 977, 985, 989, 997, 1001, 1004, 1007, - 1010, 1026, 1029, 1032, 1039, 1048, 1057, 1068, 1070, 1073, - 1075, 1079, 1084, 1086, 1092, 1104, 1118, 1119, 1127, 1128, - 1142, 1143, 1159, 1160, 1167, 1176, 1185, 1194, 1207, 1220, - 1233, 1248, 1263, 1278, 1279, 1292, 1293, 1306, 1307, 1320, - 1321, 1338, 1339, 1356, 1357, 1374, 1375, 1394, 1395, 1414, - 1415, 1434, 1436, 1439, 1445, 1453, 1463, 1466, 1476, 1477, - 1479, 1480, 1482, 1483, 1487, 1488, 1490, 1491, 1494, 1495, - 1498, 1506, 1513, 1522, 1528, 1534, 1541, 1552, 1563, 1574, - 1585, 1588, 1592, 1600, 1612, 1624, 1626, 1630, 1633, 1636, - 1639, 1643, 1647, 1651, 1655, 1659, 1663, 1667, 1671, 1675, - 1679, 1683, 1687, 1691, 1695, 1701, 1706, 1711, 1716, 1721, - 1726, 1731, 1736, 1741, 1746, 1751, 1758, 1763, 1768, 1773, - 1778, 1783, 1788, 1795, 1802, 1809, 1814, 1819, 1824, 1829, - 1834, 1839, 1844, 1849, 1854, 1859, 1864, 1871, 1876, 1881, - 1886, 1891, 1896, 1901, 1908, 1915, 1922, 1927, 1929, 1931, - 1933, 1935, 1937, 1939, 1941, 1943, 1949, 1954, 1959, 1962, - 1968, 1972, 1979, 1984, 1992, 1999, 2001, 2004, 2007, 2011, - 2015, 2027, 2037, 2045, 2053, 2055, 2059, 2061, 2063, 2066, - 2070, 2075, 2081, 2083, 2085, 2088, 2092, 2096, 2102, 2107, - 2109, 2111, 2115, 2122, 2124, 2126, 2130, 2134, 2144, 2152, - 2154, 2160, 2164, 2171, 2173, 2177, 2179, 2181, 2185, 2192, - 2194, 2196, 2203, 2208, 2213, 2218 + 576, 585, 595, 599, 604, 615, 623, 631, 640, 650, + 664, 665, 675, 684, 692, 702, 711, 712, 722, 728, + 740, 746, 756, 761, 771, 781, 783, 785, 786, 789, + 796, 803, 810, 817, 826, 841, 858, 871, 880, 889, + 896, 911, 916, 923, 930, 934, 939, 945, 949, 953, + 958, 963, 967, 975, 983, 987, 995, 999, 1002, 1005, + 1008, 1024, 1027, 1030, 1037, 1046, 1055, 1066, 1068, 1071, + 1073, 1077, 1082, 1084, 1090, 1102, 1116, 1117, 1125, 1126, + 1140, 1141, 1157, 1158, 1165, 1174, 1183, 1192, 1205, 1218, + 1231, 1246, 1261, 1276, 1277, 1290, 1291, 1304, 1305, 1318, + 1319, 1336, 1337, 1354, 1355, 1372, 1373, 1392, 1393, 1412, + 1413, 1432, 1434, 1437, 1443, 1451, 1461, 1464, 1474, 1475, + 1477, 1478, 1482, 1483, 1485, 1486, 1489, 1490, 1493, 1501, + 1508, 1517, 1523, 1529, 1536, 1547, 1558, 1569, 1580, 1583, + 1587, 1595, 1607, 1619, 1621, 1625, 1628, 1631, 1634, 1638, + 1642, 1646, 1650, 1654, 1658, 1662, 1666, 1670, 1674, 1678, + 1682, 1686, 1690, 1696, 1701, 1706, 1711, 1716, 1721, 1726, + 1731, 1736, 1741, 1746, 1753, 1758, 1763, 1768, 1773, 1778, + 1783, 1790, 1797, 1804, 1809, 1814, 1819, 1824, 1829, 1834, + 1839, 1844, 1849, 1854, 1859, 1866, 1871, 1876, 1881, 1886, + 1891, 1896, 1903, 1910, 1917, 1922, 1924, 1926, 1928, 1930, + 1932, 1934, 1936, 1938, 1944, 1949, 1954, 1957, 1963, 1967, + 1974, 1979, 1987, 1994, 1996, 1999, 2002, 2006, 2010, 2022, + 2032, 2040, 2048, 2050, 2054, 2056, 2058, 2061, 2065, 2070, + 2076, 2078, 2080, 2083, 2087, 2091, 2097, 2102, 2104, 2106, + 2110, 2117, 2119, 2121, 2125, 2129, 2139, 2147, 2149, 2155, + 2159, 2166, 2168, 2172, 2174, 2176, 2180, 2187, 2189, 2191, + 2198, 2203, 2208, 2213 }; /* YYRHS -- A `-1'-separated list of the rules' RHS. */ @@ -794,226 +794,225 @@ static const yytype_int16 yyrhs[] = 151, 0, -1, 152, -1, 1, 6, -1, -1, 152, 153, -1, 156, -1, 155, -1, 174, -1, 178, -1, 183, -1, 187, -1, 188, -1, 189, -1, 192, -1, - 214, -1, 215, -1, 216, -1, 191, -1, 190, -1, - 186, -1, 217, -1, 127, -1, 127, 127, -1, 35, + 213, -1, 214, -1, 215, -1, 191, -1, 190, -1, + 186, -1, 216, -1, 127, -1, 127, 127, -1, 35, 140, 5, 141, 6, -1, 35, 140, 5, 141, 154, - 230, 6, -1, 35, 140, 5, 146, 226, 141, 6, - -1, 35, 140, 5, 146, 226, 141, 154, 230, 6, + 229, 6, -1, 35, 140, 5, 146, 225, 141, 6, + -1, 35, 140, 5, 146, 225, 141, 154, 229, 6, -1, 4, 5, 147, 157, 148, 6, -1, 84, 4, - 142, 218, 143, 6, -1, 85, 4, 142, 218, 143, + 142, 217, 143, 6, -1, 85, 4, 142, 217, 143, 6, -1, -1, 157, 160, -1, 157, 164, -1, 157, - 167, -1, 157, 169, -1, 157, 170, -1, 218, -1, - 158, 146, 218, -1, 218, -1, 159, 146, 218, -1, + 167, -1, 157, 169, -1, 157, 170, -1, 217, -1, + 158, 146, 217, -1, 217, -1, 159, 146, 217, -1, -1, -1, 4, 161, 140, 158, 141, 162, 147, 159, - 148, 6, -1, 230, -1, 163, 146, 230, -1, -1, - 86, 140, 218, 146, 218, 146, 218, 141, 165, 147, - 163, 148, 6, -1, 230, -1, 166, 146, 230, -1, - -1, 87, 140, 218, 146, 218, 146, 218, 146, 218, - 141, 168, 147, 166, 148, 6, -1, 88, 147, 222, - 148, 147, 222, 148, 6, -1, 88, 147, 222, 148, - 147, 222, 148, 147, 222, 148, 147, 222, 148, 6, + 148, 6, -1, 229, -1, 163, 146, 229, -1, -1, + 86, 140, 217, 146, 217, 146, 217, 141, 165, 147, + 163, 148, 6, -1, 229, -1, 166, 146, 229, -1, + -1, 87, 140, 217, 146, 217, 146, 217, 146, 217, + 141, 168, 147, 166, 148, 6, -1, 88, 147, 221, + 148, 147, 221, 148, 6, -1, 88, 147, 221, 148, + 147, 221, 148, 147, 221, 148, 147, 221, 148, 6, -1, -1, 89, 171, 147, 159, 148, 6, -1, 7, -1, 120, -1, 119, -1, 118, -1, 117, -1, 138, - -1, 137, -1, 4, 172, 218, 6, -1, 4, 142, - 218, 143, 172, 218, 6, -1, 4, 142, 147, 226, - 148, 143, 172, 223, 6, -1, 4, 142, 143, 7, - 223, 6, -1, 4, 142, 143, 120, 223, 6, -1, - 4, 173, 6, -1, 4, 142, 218, 143, 173, 6, - -1, 4, 7, 231, 6, -1, 4, 144, 4, 7, - 231, 6, -1, 4, 142, 218, 143, 144, 4, 7, - 231, 6, -1, 4, 144, 4, 172, 218, 6, -1, - 4, 142, 218, 143, 144, 4, 172, 218, 6, -1, - 4, 144, 4, 173, 6, -1, 4, 142, 218, 143, + -1, 137, -1, 4, 172, 217, 6, -1, 4, 142, + 217, 143, 172, 217, 6, -1, 4, 142, 147, 225, + 148, 143, 172, 222, 6, -1, 4, 142, 143, 7, + 222, 6, -1, 4, 142, 143, 120, 222, 6, -1, + 4, 173, 6, -1, 4, 142, 217, 143, 173, 6, + -1, 4, 7, 230, 6, -1, 4, 144, 4, 7, + 230, 6, -1, 4, 142, 217, 143, 144, 4, 7, + 230, 6, -1, 4, 144, 4, 172, 217, 6, -1, + 4, 142, 217, 143, 144, 4, 172, 217, 6, -1, + 4, 144, 4, 173, 6, -1, 4, 142, 217, 143, 144, 4, 173, 6, -1, 4, 144, 96, 144, 4, - 7, 227, 6, -1, 4, 142, 218, 143, 144, 96, - 144, 4, 7, 227, 6, -1, 4, 144, 97, 7, - 228, 6, -1, 4, 142, 218, 143, 144, 97, 7, - 228, 6, -1, 4, 104, 7, 218, 6, -1, 104, - 142, 218, 143, 7, 4, 6, -1, 104, 142, 218, - 143, 144, 4, 7, 218, 6, -1, 104, 142, 218, - 143, 144, 4, 7, 231, 6, -1, 104, 142, 218, - 143, 144, 4, 7, 147, 226, 148, 6, -1, 66, - 140, 4, 141, 144, 4, 7, 218, 6, -1, 66, - 140, 4, 141, 144, 4, 7, 231, 6, -1, 218, - -1, 231, -1, -1, 99, 50, 147, 218, 148, -1, - -1, 59, 220, -1, 46, 140, 218, 141, 7, 220, + 7, 226, 6, -1, 4, 142, 217, 143, 144, 96, + 144, 4, 7, 226, 6, -1, 4, 144, 97, 7, + 227, 6, -1, 4, 142, 217, 143, 144, 97, 7, + 227, 6, -1, 4, 104, 7, 217, 6, -1, 104, + 142, 217, 143, 7, 4, 6, -1, 104, 142, 217, + 143, 144, 4, 7, 217, 6, -1, 104, 142, 217, + 143, 144, 4, 7, 230, 6, -1, 104, 142, 217, + 143, 144, 4, 7, 147, 225, 148, 6, -1, 66, + 140, 4, 141, 144, 4, 7, 217, 6, -1, 66, + 140, 4, 141, 144, 4, 7, 230, 6, -1, 217, + -1, 230, -1, -1, 99, 50, 147, 217, 148, -1, + -1, 59, 219, -1, 46, 140, 217, 141, 7, 219, 6, -1, -1, 63, 46, 179, 140, 175, 141, 7, - 223, 6, -1, 55, 56, 223, 7, 218, 6, -1, - 49, 140, 218, 141, 7, 223, 6, -1, 67, 49, - 223, 6, -1, 53, 140, 218, 141, 7, 223, 6, - -1, 47, 140, 218, 141, 7, 223, 177, 6, -1, - 48, 140, 218, 141, 7, 223, 177, 6, -1, 91, - 140, 218, 141, 7, 223, 6, -1, 92, 140, 218, - 141, 7, 223, 6, -1, 93, 140, 218, 141, 7, - 223, 95, 223, 94, 218, 6, -1, 49, 75, 140, - 218, 141, 7, 223, 6, -1, 64, 49, 140, 218, - 141, 7, 223, 6, -1, -1, 63, 49, 180, 140, - 175, 141, 7, 223, 6, -1, 59, 52, 140, 218, - 141, 7, 223, 6, -1, 60, 52, 140, 218, 141, - 7, 223, 176, 6, -1, 12, 13, 6, -1, 13, - 52, 218, 6, -1, 57, 52, 140, 218, 141, 7, - 5, 5, 5, 6, -1, 50, 140, 218, 141, 7, - 223, 6, -1, 51, 140, 218, 141, 7, 223, 6, - -1, 52, 75, 140, 218, 141, 7, 223, 6, -1, - 64, 52, 140, 218, 141, 7, 223, 208, 209, 6, - -1, 64, 52, 140, 218, 141, 7, 223, 4, 147, - 222, 148, 208, 209, 6, -1, -1, 63, 52, 181, - 140, 175, 141, 7, 223, 6, -1, 62, 54, 140, - 218, 141, 7, 223, 6, -1, 54, 140, 218, 141, - 7, 223, 6, -1, 68, 140, 5, 146, 223, 146, - 5, 141, 6, -1, 64, 54, 140, 218, 141, 7, - 223, 6, -1, -1, 63, 54, 182, 140, 175, 141, - 7, 223, 6, -1, 70, 220, 147, 184, 148, -1, - 69, 147, 220, 146, 220, 146, 218, 148, 147, 184, - 148, -1, 71, 220, 147, 184, 148, -1, 72, 147, - 220, 146, 218, 148, 147, 184, 148, -1, 4, 147, - 184, 148, -1, 81, 49, 147, 226, 148, 52, 147, - 218, 148, -1, 78, 49, 140, 218, 141, 147, 226, - 148, 6, -1, 185, -1, 183, -1, -1, 185, 178, - -1, 185, 46, 147, 226, 148, 6, -1, 185, 49, - 147, 226, 148, 6, -1, 185, 52, 147, 226, 148, - 6, -1, 185, 54, 147, 226, 148, 6, -1, 74, - 59, 140, 218, 141, 7, 223, 6, -1, 74, 59, - 140, 218, 141, 7, 147, 220, 146, 220, 146, 226, - 148, 6, -1, 74, 59, 140, 218, 141, 7, 147, - 220, 146, 220, 146, 220, 146, 226, 148, 6, -1, - 74, 50, 140, 218, 141, 7, 147, 220, 146, 226, - 148, 6, -1, 74, 4, 140, 218, 141, 7, 223, - 6, -1, 74, 4, 140, 218, 141, 7, 5, 6, - -1, 74, 4, 147, 218, 148, 6, -1, 74, 4, - 140, 218, 141, 7, 147, 220, 146, 220, 146, 226, - 148, 6, -1, 79, 147, 185, 148, -1, 79, 104, - 142, 218, 143, 6, -1, 79, 4, 142, 218, 143, - 6, -1, 79, 4, 6, -1, 79, 4, 4, 6, - -1, 96, 227, 147, 185, 148, -1, 108, 5, 6, - -1, 109, 5, 6, -1, 108, 147, 185, 148, -1, - 109, 147, 185, 148, -1, 4, 231, 6, -1, 4, - 4, 142, 218, 143, 230, 6, -1, 4, 4, 4, - 142, 218, 143, 6, -1, 4, 218, 6, -1, 66, - 140, 4, 141, 144, 4, 6, -1, 90, 4, 6, - -1, 103, 6, -1, 43, 6, -1, 40, 6, -1, - 40, 147, 218, 146, 218, 146, 218, 146, 218, 146, - 218, 146, 218, 148, 6, -1, 41, 6, -1, 44, - 6, -1, 98, 140, 218, 8, 218, 141, -1, 98, - 140, 218, 8, 218, 8, 218, 141, -1, 98, 4, - 99, 147, 218, 8, 218, 148, -1, 98, 4, 99, - 147, 218, 8, 218, 8, 218, 148, -1, 100, -1, - 107, 4, -1, 105, -1, 106, 4, 6, -1, 101, - 140, 218, 141, -1, 102, -1, 73, 220, 147, 185, - 148, -1, 73, 147, 220, 146, 220, 146, 218, 148, - 147, 185, 148, -1, 73, 147, 220, 146, 220, 146, - 220, 146, 218, 148, 147, 185, 148, -1, -1, 73, - 220, 147, 185, 193, 206, 148, -1, -1, 73, 147, - 220, 146, 220, 146, 218, 148, 147, 185, 194, 206, - 148, -1, -1, 73, 147, 220, 146, 220, 146, 220, - 146, 218, 148, 147, 185, 195, 206, 148, -1, -1, - 73, 147, 185, 196, 206, 148, -1, 73, 46, 147, - 218, 146, 220, 148, 6, -1, 73, 49, 147, 218, - 146, 220, 148, 6, -1, 73, 52, 147, 218, 146, - 220, 148, 6, -1, 73, 46, 147, 218, 146, 220, - 146, 220, 146, 218, 148, 6, -1, 73, 49, 147, - 218, 146, 220, 146, 220, 146, 218, 148, 6, -1, - 73, 52, 147, 218, 146, 220, 146, 220, 146, 218, - 148, 6, -1, 73, 46, 147, 218, 146, 220, 146, - 220, 146, 220, 146, 218, 148, 6, -1, 73, 49, - 147, 218, 146, 220, 146, 220, 146, 220, 146, 218, - 148, 6, -1, 73, 52, 147, 218, 146, 220, 146, - 220, 146, 220, 146, 218, 148, 6, -1, -1, 73, - 46, 147, 218, 146, 220, 148, 197, 147, 206, 148, - 6, -1, -1, 73, 49, 147, 218, 146, 220, 148, - 198, 147, 206, 148, 6, -1, -1, 73, 52, 147, - 218, 146, 220, 148, 199, 147, 206, 148, 6, -1, - -1, 73, 46, 147, 218, 146, 220, 146, 220, 146, - 218, 148, 200, 147, 206, 148, 6, -1, -1, 73, - 49, 147, 218, 146, 220, 146, 220, 146, 218, 148, - 201, 147, 206, 148, 6, -1, -1, 73, 52, 147, - 218, 146, 220, 146, 220, 146, 218, 148, 202, 147, - 206, 148, 6, -1, -1, 73, 46, 147, 218, 146, - 220, 146, 220, 146, 220, 146, 218, 148, 203, 147, - 206, 148, 6, -1, -1, 73, 49, 147, 218, 146, - 220, 146, 220, 146, 220, 146, 218, 148, 204, 147, - 206, 148, 6, -1, -1, 73, 52, 147, 218, 146, - 220, 146, 220, 146, 220, 146, 218, 148, 205, 147, - 206, 148, 6, -1, 207, -1, 206, 207, -1, 82, - 147, 218, 148, 6, -1, 82, 147, 223, 146, 223, - 148, 6, -1, 82, 147, 223, 146, 223, 146, 223, - 148, 6, -1, 76, 6, -1, 83, 140, 218, 141, - 7, 223, 65, 218, 6, -1, -1, 4, -1, -1, - 4, -1, -1, 65, 4, 218, -1, -1, 4, -1, - -1, 7, 223, -1, -1, 7, 218, -1, 61, 49, - 224, 7, 218, 210, 6, -1, 61, 52, 224, 212, - 211, 6, -1, 58, 52, 147, 218, 148, 7, 223, - 6, -1, 61, 54, 224, 212, 6, -1, 76, 52, - 224, 213, 6, -1, 77, 52, 223, 7, 218, 6, - -1, 46, 147, 226, 148, 99, 52, 147, 218, 148, - 6, -1, 49, 147, 226, 148, 99, 52, 147, 218, - 148, 6, -1, 49, 147, 226, 148, 99, 54, 147, - 218, 148, 6, -1, 52, 147, 226, 148, 99, 54, - 147, 218, 148, 6, -1, 80, 6, -1, 80, 4, - 6, -1, 114, 147, 223, 146, 223, 148, 6, -1, - 115, 140, 230, 141, 7, 147, 223, 146, 223, 148, - 6, -1, 116, 140, 230, 141, 7, 147, 223, 146, - 223, 148, 6, -1, 219, -1, 140, 218, 141, -1, - 131, 218, -1, 130, 218, -1, 135, 218, -1, 218, - 131, 218, -1, 218, 130, 218, -1, 218, 132, 218, - -1, 218, 133, 218, -1, 218, 134, 218, -1, 218, - 139, 218, -1, 218, 126, 218, -1, 218, 127, 218, - -1, 218, 129, 218, -1, 218, 128, 218, -1, 218, - 125, 218, -1, 218, 124, 218, -1, 218, 123, 218, - -1, 218, 122, 218, -1, 218, 121, 218, 8, 218, - -1, 14, 140, 218, 141, -1, 15, 140, 218, 141, - -1, 16, 140, 218, 141, -1, 17, 140, 218, 141, - -1, 18, 140, 218, 141, -1, 19, 140, 218, 141, - -1, 20, 140, 218, 141, -1, 21, 140, 218, 141, - -1, 22, 140, 218, 141, -1, 24, 140, 218, 141, - -1, 25, 140, 218, 146, 218, 141, -1, 26, 140, - 218, 141, -1, 27, 140, 218, 141, -1, 28, 140, - 218, 141, -1, 29, 140, 218, 141, -1, 30, 140, - 218, 141, -1, 31, 140, 218, 141, -1, 32, 140, - 218, 146, 218, 141, -1, 33, 140, 218, 146, 218, - 141, -1, 34, 140, 218, 146, 218, 141, -1, 23, - 140, 218, 141, -1, 14, 142, 218, 143, -1, 15, - 142, 218, 143, -1, 16, 142, 218, 143, -1, 17, - 142, 218, 143, -1, 18, 142, 218, 143, -1, 19, - 142, 218, 143, -1, 20, 142, 218, 143, -1, 21, - 142, 218, 143, -1, 22, 142, 218, 143, -1, 24, - 142, 218, 143, -1, 25, 142, 218, 146, 218, 143, - -1, 26, 142, 218, 143, -1, 27, 142, 218, 143, - -1, 28, 142, 218, 143, -1, 29, 142, 218, 143, - -1, 30, 142, 218, 143, -1, 31, 142, 218, 143, - -1, 32, 142, 218, 146, 218, 143, -1, 33, 142, - 218, 146, 218, 143, -1, 34, 142, 218, 146, 218, - 143, -1, 23, 142, 218, 143, -1, 3, -1, 9, - -1, 10, -1, 11, -1, 111, -1, 112, -1, 113, - -1, 4, -1, 4, 149, 147, 218, 148, -1, 4, - 142, 218, 143, -1, 145, 4, 142, 143, -1, 4, - 173, -1, 4, 142, 218, 143, 173, -1, 4, 144, - 4, -1, 4, 142, 218, 143, 144, 4, -1, 4, - 144, 4, 173, -1, 4, 142, 218, 143, 144, 4, - 173, -1, 110, 140, 5, 146, 218, 141, -1, 221, - -1, 131, 220, -1, 130, 220, -1, 220, 131, 220, - -1, 220, 130, 220, -1, 147, 218, 146, 218, 146, - 218, 146, 218, 146, 218, 148, -1, 147, 218, 146, - 218, 146, 218, 146, 218, 148, -1, 147, 218, 146, - 218, 146, 218, 148, -1, 140, 218, 146, 218, 146, - 218, 141, -1, 223, -1, 222, 146, 223, -1, 218, - -1, 225, -1, 147, 148, -1, 147, 226, 148, -1, - 131, 147, 226, 148, -1, 218, 132, 147, 226, 148, - -1, 223, -1, 5, -1, 131, 225, -1, 218, 132, - 225, -1, 218, 8, 218, -1, 218, 8, 218, 8, - 218, -1, 46, 147, 218, 148, -1, 183, -1, 192, - -1, 4, 142, 143, -1, 4, 142, 147, 226, 148, - 143, -1, 218, -1, 225, -1, 226, 146, 218, -1, - 226, 146, 225, -1, 147, 218, 146, 218, 146, 218, - 146, 218, 148, -1, 147, 218, 146, 218, 146, 218, - 148, -1, 4, -1, 4, 144, 96, 144, 4, -1, - 147, 229, 148, -1, 4, 142, 218, 143, 144, 97, - -1, 227, -1, 229, 146, 227, -1, 231, -1, 4, - -1, 4, 144, 4, -1, 4, 142, 218, 143, 144, - 4, -1, 5, -1, 42, -1, 37, 140, 230, 146, - 230, 141, -1, 38, 140, 230, 141, -1, 39, 140, - 230, 141, -1, 36, 140, 230, 141, -1, 36, 140, - 230, 146, 226, 141, -1 + 222, 6, -1, 55, 56, 222, 7, 217, 6, -1, + 49, 140, 217, 141, 7, 222, 6, -1, 67, 49, + 222, 6, -1, 53, 140, 217, 141, 7, 222, 6, + -1, 47, 140, 217, 141, 7, 222, 177, 6, -1, + 48, 140, 217, 141, 7, 222, 177, 6, -1, 91, + 140, 217, 141, 7, 222, 6, -1, 92, 140, 217, + 141, 7, 222, 6, -1, 93, 140, 217, 141, 7, + 222, 95, 222, 94, 217, 6, -1, 49, 75, 140, + 217, 141, 7, 222, 6, -1, 64, 49, 140, 217, + 141, 7, 222, 6, -1, -1, 63, 49, 180, 140, + 175, 141, 7, 222, 6, -1, 59, 52, 140, 217, + 141, 7, 222, 6, -1, 60, 52, 140, 217, 141, + 7, 222, 176, 6, -1, 12, 13, 6, -1, 13, + 52, 217, 6, -1, 57, 52, 140, 217, 141, 7, + 5, 5, 5, 6, -1, 50, 140, 217, 141, 7, + 222, 6, -1, 51, 140, 217, 141, 7, 222, 6, + -1, 52, 75, 140, 217, 141, 7, 222, 6, -1, + 64, 52, 140, 217, 141, 7, 222, 208, 6, -1, + 64, 52, 140, 217, 141, 7, 222, 4, 147, 221, + 148, 208, 6, -1, -1, 63, 52, 181, 140, 175, + 141, 7, 222, 6, -1, 62, 54, 140, 217, 141, + 7, 222, 6, -1, 54, 140, 217, 141, 7, 222, + 6, -1, 68, 140, 5, 146, 222, 146, 5, 141, + 6, -1, 64, 54, 140, 217, 141, 7, 222, 6, + -1, -1, 63, 54, 182, 140, 175, 141, 7, 222, + 6, -1, 70, 219, 147, 184, 148, -1, 69, 147, + 219, 146, 219, 146, 217, 148, 147, 184, 148, -1, + 71, 219, 147, 184, 148, -1, 72, 147, 219, 146, + 217, 148, 147, 184, 148, -1, 4, 147, 184, 148, + -1, 81, 49, 147, 225, 148, 52, 147, 217, 148, + -1, 78, 49, 140, 217, 141, 147, 225, 148, 6, + -1, 185, -1, 183, -1, -1, 185, 178, -1, 185, + 46, 147, 225, 148, 6, -1, 185, 49, 147, 225, + 148, 6, -1, 185, 52, 147, 225, 148, 6, -1, + 185, 54, 147, 225, 148, 6, -1, 74, 59, 140, + 217, 141, 7, 222, 6, -1, 74, 59, 140, 217, + 141, 7, 147, 219, 146, 219, 146, 225, 148, 6, + -1, 74, 59, 140, 217, 141, 7, 147, 219, 146, + 219, 146, 219, 146, 225, 148, 6, -1, 74, 50, + 140, 217, 141, 7, 147, 219, 146, 225, 148, 6, + -1, 74, 4, 140, 217, 141, 7, 222, 6, -1, + 74, 4, 140, 217, 141, 7, 5, 6, -1, 74, + 4, 147, 217, 148, 6, -1, 74, 4, 140, 217, + 141, 7, 147, 219, 146, 219, 146, 225, 148, 6, + -1, 79, 147, 185, 148, -1, 79, 104, 142, 217, + 143, 6, -1, 79, 4, 142, 217, 143, 6, -1, + 79, 4, 6, -1, 79, 4, 4, 6, -1, 96, + 226, 147, 185, 148, -1, 108, 5, 6, -1, 109, + 5, 6, -1, 108, 147, 185, 148, -1, 109, 147, + 185, 148, -1, 4, 230, 6, -1, 4, 4, 142, + 217, 143, 229, 6, -1, 4, 4, 4, 142, 217, + 143, 6, -1, 4, 217, 6, -1, 66, 140, 4, + 141, 144, 4, 6, -1, 90, 4, 6, -1, 103, + 6, -1, 43, 6, -1, 40, 6, -1, 40, 147, + 217, 146, 217, 146, 217, 146, 217, 146, 217, 146, + 217, 148, 6, -1, 41, 6, -1, 44, 6, -1, + 98, 140, 217, 8, 217, 141, -1, 98, 140, 217, + 8, 217, 8, 217, 141, -1, 98, 4, 99, 147, + 217, 8, 217, 148, -1, 98, 4, 99, 147, 217, + 8, 217, 8, 217, 148, -1, 100, -1, 107, 4, + -1, 105, -1, 106, 4, 6, -1, 101, 140, 217, + 141, -1, 102, -1, 73, 219, 147, 185, 148, -1, + 73, 147, 219, 146, 219, 146, 217, 148, 147, 185, + 148, -1, 73, 147, 219, 146, 219, 146, 219, 146, + 217, 148, 147, 185, 148, -1, -1, 73, 219, 147, + 185, 193, 206, 148, -1, -1, 73, 147, 219, 146, + 219, 146, 217, 148, 147, 185, 194, 206, 148, -1, + -1, 73, 147, 219, 146, 219, 146, 219, 146, 217, + 148, 147, 185, 195, 206, 148, -1, -1, 73, 147, + 185, 196, 206, 148, -1, 73, 46, 147, 217, 146, + 219, 148, 6, -1, 73, 49, 147, 217, 146, 219, + 148, 6, -1, 73, 52, 147, 217, 146, 219, 148, + 6, -1, 73, 46, 147, 217, 146, 219, 146, 219, + 146, 217, 148, 6, -1, 73, 49, 147, 217, 146, + 219, 146, 219, 146, 217, 148, 6, -1, 73, 52, + 147, 217, 146, 219, 146, 219, 146, 217, 148, 6, + -1, 73, 46, 147, 217, 146, 219, 146, 219, 146, + 219, 146, 217, 148, 6, -1, 73, 49, 147, 217, + 146, 219, 146, 219, 146, 219, 146, 217, 148, 6, + -1, 73, 52, 147, 217, 146, 219, 146, 219, 146, + 219, 146, 217, 148, 6, -1, -1, 73, 46, 147, + 217, 146, 219, 148, 197, 147, 206, 148, 6, -1, + -1, 73, 49, 147, 217, 146, 219, 148, 198, 147, + 206, 148, 6, -1, -1, 73, 52, 147, 217, 146, + 219, 148, 199, 147, 206, 148, 6, -1, -1, 73, + 46, 147, 217, 146, 219, 146, 219, 146, 217, 148, + 200, 147, 206, 148, 6, -1, -1, 73, 49, 147, + 217, 146, 219, 146, 219, 146, 217, 148, 201, 147, + 206, 148, 6, -1, -1, 73, 52, 147, 217, 146, + 219, 146, 219, 146, 217, 148, 202, 147, 206, 148, + 6, -1, -1, 73, 46, 147, 217, 146, 219, 146, + 219, 146, 219, 146, 217, 148, 203, 147, 206, 148, + 6, -1, -1, 73, 49, 147, 217, 146, 219, 146, + 219, 146, 219, 146, 217, 148, 204, 147, 206, 148, + 6, -1, -1, 73, 52, 147, 217, 146, 219, 146, + 219, 146, 219, 146, 217, 148, 205, 147, 206, 148, + 6, -1, 207, -1, 206, 207, -1, 82, 147, 217, + 148, 6, -1, 82, 147, 222, 146, 222, 148, 6, + -1, 82, 147, 222, 146, 222, 146, 222, 148, 6, + -1, 76, 6, -1, 83, 140, 217, 141, 7, 222, + 65, 217, 6, -1, -1, 4, -1, -1, 65, 4, + 217, -1, -1, 4, -1, -1, 7, 222, -1, -1, + 7, 217, -1, 61, 49, 223, 7, 217, 209, 6, + -1, 61, 52, 223, 211, 210, 6, -1, 58, 52, + 147, 217, 148, 7, 222, 6, -1, 61, 54, 223, + 211, 6, -1, 76, 52, 223, 212, 6, -1, 77, + 52, 222, 7, 217, 6, -1, 46, 147, 225, 148, + 99, 52, 147, 217, 148, 6, -1, 49, 147, 225, + 148, 99, 52, 147, 217, 148, 6, -1, 49, 147, + 225, 148, 99, 54, 147, 217, 148, 6, -1, 52, + 147, 225, 148, 99, 54, 147, 217, 148, 6, -1, + 80, 6, -1, 80, 4, 6, -1, 114, 147, 222, + 146, 222, 148, 6, -1, 115, 140, 229, 141, 7, + 147, 222, 146, 222, 148, 6, -1, 116, 140, 229, + 141, 7, 147, 222, 146, 222, 148, 6, -1, 218, + -1, 140, 217, 141, -1, 131, 217, -1, 130, 217, + -1, 135, 217, -1, 217, 131, 217, -1, 217, 130, + 217, -1, 217, 132, 217, -1, 217, 133, 217, -1, + 217, 134, 217, -1, 217, 139, 217, -1, 217, 126, + 217, -1, 217, 127, 217, -1, 217, 129, 217, -1, + 217, 128, 217, -1, 217, 125, 217, -1, 217, 124, + 217, -1, 217, 123, 217, -1, 217, 122, 217, -1, + 217, 121, 217, 8, 217, -1, 14, 140, 217, 141, + -1, 15, 140, 217, 141, -1, 16, 140, 217, 141, + -1, 17, 140, 217, 141, -1, 18, 140, 217, 141, + -1, 19, 140, 217, 141, -1, 20, 140, 217, 141, + -1, 21, 140, 217, 141, -1, 22, 140, 217, 141, + -1, 24, 140, 217, 141, -1, 25, 140, 217, 146, + 217, 141, -1, 26, 140, 217, 141, -1, 27, 140, + 217, 141, -1, 28, 140, 217, 141, -1, 29, 140, + 217, 141, -1, 30, 140, 217, 141, -1, 31, 140, + 217, 141, -1, 32, 140, 217, 146, 217, 141, -1, + 33, 140, 217, 146, 217, 141, -1, 34, 140, 217, + 146, 217, 141, -1, 23, 140, 217, 141, -1, 14, + 142, 217, 143, -1, 15, 142, 217, 143, -1, 16, + 142, 217, 143, -1, 17, 142, 217, 143, -1, 18, + 142, 217, 143, -1, 19, 142, 217, 143, -1, 20, + 142, 217, 143, -1, 21, 142, 217, 143, -1, 22, + 142, 217, 143, -1, 24, 142, 217, 143, -1, 25, + 142, 217, 146, 217, 143, -1, 26, 142, 217, 143, + -1, 27, 142, 217, 143, -1, 28, 142, 217, 143, + -1, 29, 142, 217, 143, -1, 30, 142, 217, 143, + -1, 31, 142, 217, 143, -1, 32, 142, 217, 146, + 217, 143, -1, 33, 142, 217, 146, 217, 143, -1, + 34, 142, 217, 146, 217, 143, -1, 23, 142, 217, + 143, -1, 3, -1, 9, -1, 10, -1, 11, -1, + 111, -1, 112, -1, 113, -1, 4, -1, 4, 149, + 147, 217, 148, -1, 4, 142, 217, 143, -1, 145, + 4, 142, 143, -1, 4, 173, -1, 4, 142, 217, + 143, 173, -1, 4, 144, 4, -1, 4, 142, 217, + 143, 144, 4, -1, 4, 144, 4, 173, -1, 4, + 142, 217, 143, 144, 4, 173, -1, 110, 140, 5, + 146, 217, 141, -1, 220, -1, 131, 219, -1, 130, + 219, -1, 219, 131, 219, -1, 219, 130, 219, -1, + 147, 217, 146, 217, 146, 217, 146, 217, 146, 217, + 148, -1, 147, 217, 146, 217, 146, 217, 146, 217, + 148, -1, 147, 217, 146, 217, 146, 217, 148, -1, + 140, 217, 146, 217, 146, 217, 141, -1, 222, -1, + 221, 146, 222, -1, 217, -1, 224, -1, 147, 148, + -1, 147, 225, 148, -1, 131, 147, 225, 148, -1, + 217, 132, 147, 225, 148, -1, 222, -1, 5, -1, + 131, 224, -1, 217, 132, 224, -1, 217, 8, 217, + -1, 217, 8, 217, 8, 217, -1, 46, 147, 217, + 148, -1, 183, -1, 192, -1, 4, 142, 143, -1, + 4, 142, 147, 225, 148, 143, -1, 217, -1, 224, + -1, 225, 146, 217, -1, 225, 146, 224, -1, 147, + 217, 146, 217, 146, 217, 146, 217, 148, -1, 147, + 217, 146, 217, 146, 217, 148, -1, 4, -1, 4, + 144, 96, 144, 4, -1, 147, 228, 148, -1, 4, + 142, 217, 143, 144, 97, -1, 226, -1, 228, 146, + 226, -1, 230, -1, 4, -1, 4, 144, 4, -1, + 4, 142, 217, 143, 144, 4, -1, 5, -1, 42, + -1, 37, 140, 229, 146, 229, 141, -1, 38, 140, + 229, 141, -1, 39, 140, 229, 141, -1, 36, 140, + 229, 141, -1, 36, 140, 229, 146, 225, 141, -1 }; /* YYRLINE[YYN] -- source line where rule number YYN was defined. */ @@ -1030,34 +1029,34 @@ static const yytype_uint16 yyrline[] = 827, 850, 859, 867, 889, 912, 940, 952, 969, 973, 984, 987, 1000, 1003, 1013, 1037, 1036, 1056, 1078, 1096, 1118, 1136, 1166, 1196, 1214, 1232, 1258, 1275, 1292, 1291, - 1314, 1332, 1371, 1377, 1383, 1390, 1415, 1440, 1456, 1475, - 1509, 1508, 1532, 1550, 1568, 1581, 1598, 1597, 1623, 1628, - 1633, 1638, 1643, 1663, 1669, 1680, 1681, 1686, 1689, 1693, - 1716, 1739, 1762, 1790, 1811, 1832, 1854, 1874, 1986, 2005, - 2019, 2128, 2137, 2143, 2158, 2186, 2203, 2217, 2223, 2229, - 2238, 2252, 2292, 2309, 2324, 2343, 2355, 2379, 2383, 2390, - 2396, 2401, 2407, 2417, 2434, 2451, 2470, 2489, 2519, 2527, - 2533, 2540, 2544, 2553, 2561, 2569, 2578, 2577, 2590, 2589, - 2602, 2601, 2614, 2613, 2626, 2633, 2640, 2647, 2654, 2661, - 2668, 2675, 2682, 2690, 2689, 2701, 2700, 2712, 2711, 2723, - 2722, 2734, 2733, 2745, 2744, 2756, 2755, 2767, 2766, 2778, - 2777, 2792, 2795, 2801, 2810, 2830, 2853, 2857, 2881, 2884, - 2896, 2899, 2911, 2914, 2930, 2933, 2946, 2949, 2955, 2958, - 2965, 3021, 3091, 3096, 3163, 3206, 3232, 3255, 3278, 3281, - 3290, 3294, 3311, 3344, 3378, 3416, 3417, 3418, 3419, 3420, - 3421, 3422, 3423, 3424, 3431, 3432, 3433, 3434, 3435, 3436, - 3437, 3438, 3439, 3440, 3441, 3442, 3443, 3444, 3445, 3446, - 3447, 3448, 3449, 3450, 3451, 3452, 3453, 3454, 3455, 3456, - 3457, 3458, 3459, 3460, 3461, 3462, 3464, 3465, 3466, 3467, - 3468, 3469, 3470, 3471, 3472, 3473, 3474, 3475, 3476, 3477, - 3478, 3479, 3480, 3481, 3482, 3483, 3484, 3493, 3494, 3495, - 3496, 3497, 3498, 3499, 3503, 3516, 3528, 3543, 3553, 3563, - 3581, 3586, 3591, 3601, 3611, 3619, 3623, 3627, 3631, 3635, - 3642, 3646, 3650, 3654, 3661, 3666, 3673, 3678, 3682, 3687, - 3691, 3699, 3710, 3714, 3726, 3734, 3742, 3749, 3760, 3780, - 3790, 3800, 3810, 3830, 3835, 3839, 3843, 3855, 3859, 3871, - 3878, 3888, 3892, 3907, 3912, 3919, 3923, 3936, 3944, 3955, - 3959, 3967, 3975, 3989, 4003, 4007 + 1314, 1332, 1371, 1377, 1383, 1390, 1415, 1440, 1456, 1474, + 1507, 1506, 1530, 1548, 1566, 1579, 1596, 1595, 1621, 1626, + 1631, 1636, 1641, 1661, 1667, 1678, 1679, 1684, 1687, 1691, + 1714, 1737, 1760, 1788, 1809, 1830, 1852, 1872, 1984, 2003, + 2017, 2126, 2135, 2141, 2156, 2184, 2201, 2215, 2221, 2227, + 2236, 2250, 2290, 2307, 2322, 2341, 2353, 2377, 2381, 2388, + 2394, 2399, 2405, 2415, 2432, 2449, 2468, 2487, 2517, 2525, + 2531, 2538, 2542, 2551, 2559, 2567, 2576, 2575, 2588, 2587, + 2600, 2599, 2612, 2611, 2624, 2631, 2638, 2645, 2652, 2659, + 2666, 2673, 2680, 2688, 2687, 2699, 2698, 2710, 2709, 2721, + 2720, 2732, 2731, 2743, 2742, 2754, 2753, 2765, 2764, 2776, + 2775, 2790, 2793, 2799, 2808, 2828, 2851, 2855, 2879, 2882, + 2898, 2901, 2917, 2920, 2933, 2936, 2942, 2945, 2952, 3008, + 3078, 3083, 3150, 3193, 3219, 3242, 3265, 3268, 3277, 3281, + 3298, 3331, 3365, 3403, 3404, 3405, 3406, 3407, 3408, 3409, + 3410, 3411, 3418, 3419, 3420, 3421, 3422, 3423, 3424, 3425, + 3426, 3427, 3428, 3429, 3430, 3431, 3432, 3433, 3434, 3435, + 3436, 3437, 3438, 3439, 3440, 3441, 3442, 3443, 3444, 3445, + 3446, 3447, 3448, 3449, 3451, 3452, 3453, 3454, 3455, 3456, + 3457, 3458, 3459, 3460, 3461, 3462, 3463, 3464, 3465, 3466, + 3467, 3468, 3469, 3470, 3471, 3480, 3481, 3482, 3483, 3484, + 3485, 3486, 3490, 3503, 3515, 3530, 3540, 3550, 3568, 3573, + 3578, 3588, 3598, 3606, 3610, 3614, 3618, 3622, 3629, 3633, + 3637, 3641, 3648, 3653, 3660, 3665, 3669, 3674, 3678, 3686, + 3697, 3701, 3713, 3721, 3729, 3736, 3747, 3767, 3777, 3787, + 3797, 3817, 3822, 3826, 3830, 3842, 3846, 3858, 3865, 3875, + 3879, 3894, 3899, 3906, 3910, 3923, 3931, 3942, 3946, 3954, + 3962, 3976, 3990, 3994 }; #endif @@ -1100,7 +1099,7 @@ static const char *const yytname[] = "MultipleShape", "ListOfShapes", "LevelSet", "Delete", "Colorify", "Visibility", "Command", "Loop", "Extrude", "@10", "@11", "@12", "@13", "@14", "@15", "@16", "@17", "@18", "@19", "@20", "@21", "@22", - "ExtrudeParameters", "ExtrudeParameter", "CompoundMap", "CompoundSplit", + "ExtrudeParameters", "ExtrudeParameter", "CompoundMap", "TransfiniteType", "TransfiniteArrangement", "TransfiniteCorners", "RecombineAngle", "Transfinite", "Embedding", "Coherence", "Homology", "FExpr", "FExpr_Single", "VExpr", "VExpr_Single", @@ -1160,21 +1159,21 @@ static const yytype_uint8 yyr1[] = 192, 201, 192, 202, 192, 203, 192, 204, 192, 205, 192, 206, 206, 207, 207, 207, 207, 207, 208, 208, 209, 209, 210, 210, 211, 211, 212, 212, 213, 213, - 214, 214, 214, 214, 214, 214, 215, 215, 215, 215, - 216, 216, 217, 217, 217, 218, 218, 218, 218, 218, + 213, 213, 213, 213, 214, 214, 214, 214, 215, 215, + 216, 216, 216, 217, 217, 217, 217, 217, 217, 217, + 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, + 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, + 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, + 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, + 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, + 217, 217, 217, 217, 217, 218, 218, 218, 218, 218, 218, 218, 218, 218, 218, 218, 218, 218, 218, 218, - 218, 218, 218, 218, 218, 218, 218, 218, 218, 218, - 218, 218, 218, 218, 218, 218, 218, 218, 218, 218, - 218, 218, 218, 218, 218, 218, 218, 218, 218, 218, - 218, 218, 218, 218, 218, 218, 218, 218, 218, 218, - 218, 218, 218, 218, 218, 218, 218, 219, 219, 219, - 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, - 219, 219, 219, 219, 219, 220, 220, 220, 220, 220, - 221, 221, 221, 221, 222, 222, 223, 223, 223, 223, - 223, 223, 224, 224, 225, 225, 225, 225, 225, 225, - 225, 225, 225, 226, 226, 226, 226, 227, 227, 227, - 227, 228, 228, 229, 229, 230, 230, 230, 230, 231, - 231, 231, 231, 231, 231, 231 + 218, 218, 218, 219, 219, 219, 219, 219, 220, 220, + 220, 220, 221, 221, 222, 222, 222, 222, 222, 222, + 223, 223, 224, 224, 224, 224, 224, 224, 224, 224, + 224, 225, 225, 225, 225, 226, 226, 226, 226, 227, + 227, 228, 228, 229, 229, 229, 229, 230, 230, 230, + 230, 230, 230, 230 }; /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */ @@ -1191,7 +1190,7 @@ static const yytype_uint8 yyr2[] = 9, 5, 7, 9, 9, 11, 9, 9, 1, 1, 0, 5, 0, 2, 7, 0, 9, 6, 7, 4, 7, 8, 8, 7, 7, 11, 8, 8, 0, 9, - 8, 9, 3, 4, 10, 7, 7, 8, 10, 14, + 8, 9, 3, 4, 10, 7, 7, 8, 9, 13, 0, 9, 8, 7, 9, 8, 0, 9, 5, 11, 5, 9, 4, 9, 9, 1, 1, 0, 2, 6, 6, 6, 6, 8, 14, 16, 12, 8, 8, 6, @@ -1203,22 +1202,22 @@ static const yytype_uint8 yyr2[] = 14, 14, 14, 0, 12, 0, 12, 0, 12, 0, 16, 0, 16, 0, 16, 0, 18, 0, 18, 0, 18, 1, 2, 5, 7, 9, 2, 9, 0, 1, - 0, 1, 0, 3, 0, 1, 0, 2, 0, 2, - 7, 6, 8, 5, 5, 6, 10, 10, 10, 10, - 2, 3, 7, 11, 11, 1, 3, 2, 2, 2, + 0, 3, 0, 1, 0, 2, 0, 2, 7, 6, + 8, 5, 5, 6, 10, 10, 10, 10, 2, 3, + 7, 11, 11, 1, 3, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 3, 5, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 6, 4, 4, 4, 4, - 4, 4, 6, 6, 6, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 6, 4, 4, 4, - 4, 4, 4, 6, 6, 6, 4, 1, 1, 1, - 1, 1, 1, 1, 1, 5, 4, 4, 2, 5, - 3, 6, 4, 7, 6, 1, 2, 2, 3, 3, - 11, 9, 7, 7, 1, 3, 1, 1, 2, 3, - 4, 5, 1, 1, 2, 3, 3, 5, 4, 1, - 1, 3, 6, 1, 1, 3, 3, 9, 7, 1, - 5, 3, 6, 1, 3, 1, 1, 3, 6, 1, - 1, 6, 4, 4, 4, 6 + 3, 3, 5, 4, 4, 4, 4, 4, 4, 4, + 4, 4, 4, 6, 4, 4, 4, 4, 4, 4, + 6, 6, 6, 4, 4, 4, 4, 4, 4, 4, + 4, 4, 4, 4, 6, 4, 4, 4, 4, 4, + 4, 6, 6, 6, 4, 1, 1, 1, 1, 1, + 1, 1, 1, 5, 4, 4, 2, 5, 3, 6, + 4, 7, 6, 1, 2, 2, 3, 3, 11, 9, + 7, 7, 1, 3, 1, 1, 2, 3, 4, 5, + 1, 1, 2, 3, 3, 5, 4, 1, 1, 3, + 6, 1, 1, 3, 3, 9, 7, 1, 5, 3, + 6, 1, 3, 1, 1, 3, 6, 1, 1, 6, + 4, 4, 4, 6 }; /* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state @@ -1234,307 +1233,305 @@ static const yytype_uint16 yydefact[] = 0, 0, 0, 0, 0, 177, 0, 182, 0, 0, 179, 0, 0, 0, 0, 0, 0, 0, 5, 7, 6, 8, 9, 10, 20, 11, 12, 13, 19, 18, - 14, 15, 16, 17, 21, 317, 324, 379, 56, 318, - 319, 320, 0, 0, 0, 0, 0, 0, 0, 0, + 14, 15, 16, 17, 21, 315, 322, 377, 56, 316, + 317, 318, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 380, 0, 0, - 321, 322, 323, 60, 59, 58, 57, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 378, 0, 0, + 319, 320, 321, 60, 59, 58, 57, 0, 0, 0, 62, 61, 0, 0, 0, 0, 137, 0, 0, 0, - 255, 0, 0, 0, 0, 169, 0, 171, 168, 172, + 253, 0, 0, 0, 0, 169, 0, 171, 168, 172, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 95, 108, 120, 126, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 335, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 333, 0, 0, 0, 0, 0, 137, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 137, 0, 250, 0, 0, 0, - 0, 0, 0, 0, 369, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 137, 0, 248, 0, 0, 0, + 0, 0, 0, 0, 367, 0, 0, 0, 0, 0, 167, 0, 0, 178, 0, 137, 0, 137, 0, 0, - 0, 0, 0, 0, 0, 328, 31, 379, 0, 0, + 0, 0, 0, 0, 0, 326, 31, 377, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 324, 258, 257, - 259, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 322, 256, 255, + 257, 0, 0, 0, 0, 0, 0, 0, 0, 0, 136, 0, 135, 0, 68, 164, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 161, 112, 0, 0, 0, 0, 324, 0, 0, - 359, 360, 363, 364, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 346, 0, - 347, 0, 0, 0, 0, 353, 352, 0, 236, 236, + 0, 161, 112, 0, 0, 0, 0, 322, 0, 0, + 357, 358, 361, 362, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 344, 0, + 345, 0, 0, 0, 0, 351, 350, 0, 234, 234, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 337, 336, 0, 0, 0, 0, 137, 137, + 0, 0, 335, 334, 0, 0, 0, 0, 137, 137, 0, 0, 0, 0, 0, 0, 0, 192, 0, 137, - 0, 0, 0, 0, 238, 0, 0, 0, 154, 0, - 0, 0, 251, 0, 0, 0, 166, 0, 0, 0, + 0, 0, 0, 0, 236, 0, 0, 0, 154, 0, + 0, 0, 249, 0, 0, 0, 166, 0, 0, 0, 0, 0, 137, 0, 0, 0, 0, 180, 157, 0, - 158, 0, 0, 376, 0, 375, 0, 0, 0, 330, + 158, 0, 0, 374, 0, 373, 0, 0, 0, 328, 0, 0, 70, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 256, 0, 0, 0, 0, 56, 0, 0, + 0, 0, 254, 0, 0, 0, 0, 56, 0, 0, 0, 0, 0, 132, 0, 0, 0, 0, 138, 63, - 0, 273, 272, 271, 270, 266, 267, 269, 268, 261, - 260, 262, 263, 264, 265, 113, 0, 0, 0, 0, - 0, 0, 257, 354, 0, 0, 0, 0, 0, 0, + 0, 271, 270, 269, 268, 264, 265, 267, 266, 259, + 258, 260, 261, 262, 263, 113, 0, 0, 0, 0, + 0, 0, 255, 352, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 348, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 234, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 99, 0, 0, 0, 0, 339, 338, 0, 0, + 346, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 232, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 99, 0, 0, 0, 0, 337, 336, 0, 0, 0, 0, 0, 0, 0, 0, 0, 186, 0, 0, 0, 0, 0, 0, 0, 0, 155, 0, 0, 151, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 181, 0, 159, 160, 0, 0, 0, 0, 0, - 0, 326, 332, 0, 41, 0, 0, 0, 54, 0, - 32, 33, 34, 35, 36, 275, 296, 276, 297, 277, - 298, 278, 299, 279, 300, 280, 301, 281, 302, 282, - 303, 283, 304, 295, 316, 284, 305, 0, 0, 286, - 307, 287, 308, 288, 309, 289, 310, 290, 311, 291, - 312, 0, 0, 0, 0, 0, 0, 384, 0, 0, - 382, 383, 81, 0, 0, 0, 0, 0, 56, 0, - 0, 0, 0, 0, 75, 0, 0, 0, 0, 327, + 0, 324, 330, 0, 41, 0, 0, 0, 54, 0, + 32, 33, 34, 35, 36, 273, 294, 274, 295, 275, + 296, 276, 297, 277, 298, 278, 299, 279, 300, 280, + 301, 281, 302, 293, 314, 282, 303, 0, 0, 284, + 305, 285, 306, 286, 307, 287, 308, 288, 309, 289, + 310, 0, 0, 0, 0, 0, 0, 382, 0, 0, + 380, 381, 81, 0, 0, 0, 0, 0, 56, 0, + 0, 0, 0, 0, 75, 0, 0, 0, 0, 325, 0, 0, 0, 0, 0, 24, 22, 0, 0, 0, - 0, 361, 0, 0, 356, 262, 355, 365, 366, 0, + 0, 359, 0, 0, 354, 260, 353, 363, 364, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 349, 0, 0, 0, 0, 0, 0, 232, - 237, 235, 0, 243, 0, 0, 88, 89, 0, 0, + 0, 0, 347, 0, 0, 0, 0, 0, 0, 230, + 235, 233, 0, 241, 0, 0, 88, 89, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 130, 0, 0, 0, 0, 0, 0, 0, 0, 221, - 0, 183, 0, 0, 0, 0, 0, 239, 244, 0, + 0, 183, 0, 0, 0, 0, 0, 237, 242, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 156, 0, 0, 0, 0, 0, 0, 377, 0, - 0, 0, 0, 329, 0, 325, 0, 0, 0, 0, + 0, 156, 0, 0, 0, 0, 0, 0, 375, 0, + 0, 0, 0, 327, 0, 323, 0, 0, 0, 0, 0, 28, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 326, 66, 67, 0, 0, 0, 0, - 0, 69, 71, 73, 0, 0, 373, 0, 79, 0, - 0, 0, 0, 274, 23, 0, 0, 0, 0, 0, - 358, 0, 0, 92, 92, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 350, 0, 97, 0, 0, - 0, 0, 0, 0, 241, 0, 0, 0, 0, 0, + 0, 0, 0, 324, 66, 67, 0, 0, 0, 0, + 0, 69, 71, 73, 0, 0, 371, 0, 79, 0, + 0, 0, 0, 272, 23, 0, 0, 0, 0, 0, + 356, 0, 0, 92, 92, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 348, 0, 97, 0, 0, + 0, 0, 0, 0, 239, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 226, 0, 0, 193, 222, 0, 0, 0, - 149, 0, 0, 245, 0, 153, 152, 0, 29, 30, - 0, 0, 0, 370, 0, 0, 0, 173, 0, 0, - 0, 0, 0, 0, 163, 331, 162, 0, 0, 0, - 0, 344, 0, 285, 306, 292, 313, 293, 314, 294, - 315, 385, 381, 334, 0, 56, 0, 0, 0, 0, - 64, 0, 0, 0, 371, 0, 0, 0, 0, 25, - 26, 0, 0, 94, 0, 357, 0, 0, 0, 0, + 149, 0, 0, 243, 0, 153, 152, 0, 29, 30, + 0, 0, 0, 368, 0, 0, 0, 173, 0, 0, + 0, 0, 0, 0, 163, 329, 162, 0, 0, 0, + 0, 342, 0, 283, 304, 290, 311, 291, 312, 292, + 313, 383, 379, 332, 0, 56, 0, 0, 0, 0, + 64, 0, 0, 0, 369, 0, 0, 0, 0, 25, + 26, 0, 0, 94, 0, 355, 0, 0, 0, 0, 0, 98, 0, 0, 115, 116, 0, 0, 100, 123, - 351, 0, 0, 0, 90, 0, 240, 0, 0, 0, + 349, 0, 0, 0, 90, 0, 238, 0, 0, 0, 0, 0, 0, 228, 0, 165, 0, 0, 0, 0, - 0, 137, 0, 203, 0, 205, 0, 207, 346, 0, + 0, 137, 0, 203, 0, 205, 0, 207, 344, 0, 0, 0, 0, 187, 0, 0, 0, 0, 0, 0, 0, 0, 103, 104, 0, 0, 0, 0, 82, 0, - 252, 0, 0, 0, 333, 0, 37, 0, 0, 0, + 250, 0, 0, 0, 331, 0, 37, 0, 0, 0, 0, 0, 39, 0, 0, 0, 76, 0, 0, 77, - 0, 374, 139, 140, 141, 142, 0, 0, 362, 0, - 93, 101, 102, 106, 0, 0, 117, 0, 0, 242, - 110, 0, 0, 233, 122, 0, 0, 0, 0, 107, - 229, 230, 125, 0, 0, 0, 0, 343, 0, 342, + 0, 372, 139, 140, 141, 142, 0, 0, 360, 0, + 93, 101, 102, 106, 0, 0, 117, 0, 0, 240, + 110, 0, 0, 231, 122, 0, 0, 0, 0, 107, + 229, 0, 125, 0, 0, 0, 0, 341, 0, 340, 0, 0, 194, 0, 0, 195, 0, 0, 196, 0, 0, 0, 0, 0, 0, 148, 0, 0, 147, 0, - 0, 143, 0, 0, 0, 0, 368, 0, 175, 174, - 0, 0, 0, 378, 0, 0, 42, 0, 0, 0, - 345, 0, 0, 0, 65, 72, 74, 0, 80, 0, + 0, 143, 0, 0, 0, 0, 366, 0, 175, 174, + 0, 0, 0, 376, 0, 0, 42, 0, 0, 0, + 343, 0, 0, 0, 65, 72, 74, 0, 80, 0, 27, 0, 0, 0, 0, 0, 0, 0, 111, 96, - 109, 121, 127, 0, 231, 0, 86, 87, 124, 137, - 0, 131, 0, 0, 0, 0, 0, 0, 223, 0, - 0, 137, 0, 0, 0, 0, 134, 133, 0, 0, - 0, 0, 83, 84, 0, 0, 0, 38, 0, 0, - 0, 40, 55, 0, 372, 0, 246, 247, 248, 249, - 114, 0, 0, 118, 0, 0, 341, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 188, - 0, 0, 0, 0, 0, 367, 176, 0, 0, 0, - 0, 0, 0, 0, 78, 0, 0, 228, 129, 0, - 209, 0, 0, 211, 0, 0, 213, 0, 0, 0, - 224, 0, 184, 0, 137, 0, 0, 0, 105, 85, - 253, 254, 0, 46, 0, 52, 0, 0, 91, 229, - 230, 340, 197, 0, 0, 204, 198, 0, 0, 206, - 199, 0, 0, 208, 0, 0, 0, 190, 0, 146, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 215, - 0, 217, 0, 219, 225, 227, 189, 185, 0, 0, - 0, 0, 43, 0, 50, 0, 0, 119, 0, 200, - 0, 0, 201, 0, 0, 202, 0, 0, 150, 0, - 144, 0, 44, 0, 0, 170, 0, 0, 0, 0, - 0, 0, 191, 0, 0, 0, 0, 0, 210, 0, - 212, 0, 214, 0, 145, 45, 47, 0, 48, 0, - 0, 0, 0, 0, 0, 53, 216, 218, 220, 49, - 51 + 109, 121, 127, 0, 118, 86, 87, 124, 137, 0, + 131, 0, 0, 0, 0, 0, 0, 223, 0, 0, + 137, 0, 0, 0, 0, 134, 133, 0, 0, 0, + 0, 83, 84, 0, 0, 0, 38, 0, 0, 0, + 40, 55, 0, 370, 0, 244, 245, 246, 247, 114, + 0, 0, 0, 0, 339, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 188, 0, 0, + 0, 0, 0, 365, 176, 0, 0, 0, 0, 0, + 0, 0, 78, 0, 0, 228, 129, 0, 209, 0, + 0, 211, 0, 0, 213, 0, 0, 0, 224, 0, + 184, 0, 137, 0, 0, 0, 105, 85, 251, 252, + 0, 46, 0, 52, 0, 0, 91, 229, 0, 338, + 197, 0, 0, 204, 198, 0, 0, 206, 199, 0, + 0, 208, 0, 0, 0, 190, 0, 146, 0, 0, + 0, 0, 0, 0, 0, 119, 0, 215, 0, 217, + 0, 219, 225, 227, 189, 185, 0, 0, 0, 0, + 43, 0, 50, 0, 0, 0, 200, 0, 0, 201, + 0, 0, 202, 0, 0, 150, 0, 144, 0, 44, + 0, 0, 170, 0, 0, 0, 0, 0, 0, 191, + 0, 0, 0, 0, 0, 210, 0, 212, 0, 214, + 0, 145, 45, 47, 0, 48, 0, 0, 0, 0, + 0, 0, 53, 216, 218, 220, 49, 51 }; /* YYDEFGOTO[NTERM-NUM]. */ static const yytype_int16 yydefgoto[] = { -1, 2, 3, 68, 697, 69, 70, 431, 1025, 1031, - 620, 796, 1176, 1321, 621, 1283, 1347, 622, 1323, 623, + 620, 796, 1175, 1318, 621, 1281, 1344, 622, 1320, 623, 624, 800, 137, 235, 71, 735, 1062, 958, 498, 361, 362, 363, 364, 330, 301, 302, 74, 75, 76, 77, - 78, 79, 331, 762, 1243, 1298, 575, 1083, 1086, 1089, - 1263, 1267, 1271, 1310, 1313, 1316, 758, 759, 1071, 1145, - 863, 732, 550, 583, 81, 82, 83, 84, 348, 140, - 373, 188, 920, 921, 357, 350, 541, 216, 688, 827, - 424, 425 + 78, 79, 331, 762, 1241, 1296, 575, 1083, 1086, 1089, + 1261, 1265, 1269, 1307, 1310, 1313, 758, 759, 1071, 863, + 732, 550, 583, 81, 82, 83, 84, 348, 140, 373, + 188, 920, 921, 357, 350, 541, 216, 688, 827, 424, + 425 }; /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing STATE-NUM. */ -#define YYPACT_NINF -1115 +#define YYPACT_NINF -1114 static const yytype_int16 yypact[] = { - 3132, 39, 49, 3214, -1115, -1115, 1552, 44, 117, -42, - 21, 55, 282, 328, -61, 223, 226, -51, 230, 248, - -47, 255, 256, 296, 352, 361, 367, 392, 76, 351, - 416, 89, 338, 422, 347, 343, 197, 197, 344, 280, - 70, 453, 456, 464, 10, 59, 468, 517, 527, 531, - 394, 405, 406, 14, 32, -1115, 425, -1115, 564, 431, - -1115, 580, 584, 20, 26, 445, 466, 475, -1115, -1115, - -1115, -1115, -1115, -1115, -1115, -1115, -1115, -1115, -1115, -1115, - -1115, -1115, -1115, -1115, -1115, -1115, 22, 492, 65, -1115, - -1115, -1115, -64, -32, 61, 209, 288, 300, 303, 339, - 356, 415, 463, 480, 484, 490, 510, 526, 530, 550, - 555, 559, 585, 500, 506, 514, 529, -1115, 666, 539, - -1115, -1115, -1115, -1115, -1115, -1115, -1115, 2969, 2969, 2969, - -1115, -1115, 2969, 2514, 16, 592, 331, 2969, 683, 615, - -1115, 688, 697, 2969, 713, -1115, 2969, -1115, -1115, -1115, - 2969, 2896, 2969, 2969, 586, 2969, 2896, 2969, 2969, 590, - 2896, 2969, 2969, 1885, 620, 575, 641, 645, 1607, 1607, - 1607, 649, -1115, -1115, -1115, -1115, 650, 653, 668, 809, - 1885, 811, 197, 197, 197, 2969, 2969, 346, -1115, 355, - 197, 679, 689, 715, 2757, 369, -50, 693, 720, 1607, - 1885, 721, 6, 678, -1115, 848, -1115, 718, 737, 741, - 862, 2969, 2969, 2969, 732, 2969, 739, 788, 2969, 2969, - -1115, 2969, 904, -1115, 908, -1115, 922, -1115, 1885, 502, - 502, 791, 2969, 934, 801, -1115, -1115, -1115, 946, 2969, - 2969, 2969, 2969, 2969, 2969, 2969, 2969, 2969, 2969, 2969, - 2969, 2969, 2969, 2969, 2969, 2969, 2969, 2969, 2969, 2969, - 2969, 2969, 2969, 2969, 2969, 2969, 2969, 2969, 2969, 2969, - 2969, 2969, 2969, 2969, 2969, 2969, 2969, 2969, 2969, 2969, - 2969, 502, 502, 502, 502, 2969, 954, 714, 823, 823, - 823, 5376, 57, 2896, 4640, 178, 822, 960, 828, 831, - -1115, 835, 872, 1213, -1115, -1115, 2969, 2969, 2969, 2969, - 2969, 2969, 2969, 2969, 2969, 2969, 2969, 2969, 2969, 2969, - 2969, -1115, -1115, 1369, -66, 3938, 5397, 680, 839, 2896, - -1115, -1115, 1076, -1115, 134, 5418, 5439, 2969, 5460, 499, - 5481, 5502, 2969, 583, 5523, 5544, 2024, 1406, 1601, 988, - -1115, 2969, 2969, 2969, 2969, -1115, -1115, 989, 990, 990, - 2969, 858, 860, 861, 863, 2969, 2969, 2969, 865, 998, - 864, 212, -1115, -1115, 3964, 3990, 197, 197, 331, 331, - 287, 2969, 2969, 2969, 2757, 2757, 2969, 872, 423, -1115, - 2969, 2969, 2969, 2969, 1000, 1001, 2969, 1003, -1115, 2969, - 2969, 1782, -1115, 2896, 2969, 2969, -1115, 5565, 5586, 5607, - 915, 4016, -1115, 869, 2694, 5628, 4663, -1115, -1115, 1921, - -1115, 2060, 866, 613, 877, -1115, 884, 2969, 4686, 85, - 2969, 5, -1115, 5649, 4709, 5670, 4732, 5691, 4755, 5712, - 4778, 5733, 4801, 5754, 4824, 5775, 4847, 5796, 4870, 5817, - 4893, 5838, 4916, 5859, 4939, 4042, 4068, 5880, 4962, 5901, - 4985, 5922, 5008, 5943, 5031, 5964, 5054, 5985, 5077, 4094, - 4120, 4146, 4172, 4198, 4224, 140, 881, 887, 888, 1399, - 886, 2969, -1115, 1885, 1885, 610, 80, 65, 2969, 1024, - 1029, 18, 891, -1115, -41, -29, -28, 42, -1115, -1115, - 2890, 582, 639, 763, 763, 774, 774, 774, 774, 390, - 390, 823, 823, 823, 823, -1115, 9, 2896, 2969, 1028, - 2719, 2969, 823, -1115, 2969, 2896, 2896, 937, 1030, 1031, - 6006, 1032, 941, 1035, 1036, 6027, 945, 1038, 1039, 2896, - -1115, 628, 2163, 2969, 6048, 2823, 6069, 6090, 2969, 1885, - 1043, 1042, 6111, 3029, 3029, 3029, 3029, 6132, 6153, 6174, - 905, -1115, 1885, 197, 2969, 2969, -1115, -1115, 902, 906, - 2969, 4250, 4276, 4302, 2750, 149, 197, 2199, 6195, 3294, - 6216, 6237, 2969, 1046, 2969, 6258, -1115, 5100, 5123, -1115, - 631, 5146, 5169, 1048, 1049, 1050, 909, 2969, 2338, 2969, - 2969, -1115, 31, -1115, -1115, 1885, 2969, 1054, 1052, 1053, - 5192, 46, -1115, 3322, -1115, 921, 923, 917, -1115, 1056, - -1115, -1115, -1115, -1115, -1115, -1115, -1115, -1115, -1115, -1115, - -1115, -1115, -1115, -1115, -1115, -1115, -1115, -1115, -1115, -1115, - -1115, -1115, -1115, -1115, -1115, -1115, -1115, 2969, 2969, -1115, - -1115, -1115, -1115, -1115, -1115, -1115, -1115, -1115, -1115, -1115, - -1115, 2969, 2969, 2969, 2969, 2969, 2969, -1115, 2896, 502, - -1115, -1115, -1115, 2969, 5215, 1060, 1061, 926, -1115, 19, - 2969, 1064, 1065, 1474, -1115, 1066, 932, 14, 1070, -1115, - 2896, 2896, 2896, 2896, 2969, -1115, 950, 502, 153, 4328, - 197, -1115, 2896, 3350, 2962, 823, -1115, 1076, -1115, 1026, - 1885, 1885, 1072, 1885, 707, 1885, 1885, 1079, 1033, 1885, - 1885, 634, -1115, 2896, 1675, 1082, 1084, 1085, 1086, 1582, - -1115, -1115, 1077, -1115, 1087, 955, 6489, -1115, 956, 957, - 959, 1088, 1095, 1096, 1101, 961, 437, 4354, 4380, -1115, - -1115, 3378, 197, 197, 197, 1103, 963, 972, -43, -1115, - 441, -1115, 149, 1106, 1108, 1110, 1111, 6489, -1115, 1814, - 968, 1113, 1114, 1069, 1116, 1117, 1885, 1885, 1885, 1120, - 4406, -1115, 2996, 325, 1122, 1123, 980, 5238, -1115, 982, - 983, 1125, 1129, -1115, 1131, -1115, 995, 2969, 2969, 1885, - 991, -1115, 6279, 5261, 6300, 5284, 6321, 5307, 6342, 5330, - 176, 999, 6363, -71, -1115, -1115, 110, 201, 997, 1132, - 1953, -1115, -1115, -1115, 14, 2969, -1115, 638, -1115, 663, - 677, 682, 686, 6489, -1115, 1136, 54, 2969, 2, 711, - -1115, 2969, 1004, 1094, 1094, 1885, 1138, 1007, 1010, 1141, - 1153, 1885, 1013, 1155, 1161, -1115, 726, -1115, 1166, 1885, - 1885, 1885, 1173, 1172, -1115, 1885, 1174, 1175, 1176, 1177, - 1885, 1885, 1885, 188, 1181, 2969, 2969, 2969, 1041, 56, - 145, 379, -1115, 1885, 2969, -1115, -1115, 2757, -39, 1746, - -1115, 1044, 2302, -1115, 2896, -1115, -1115, 1045, -1115, -1115, - 1184, 1188, 1100, -1115, 2969, 2969, 2969, -1115, 1205, 1206, - 1212, 1068, 1885, 1885, -1115, 85, -1115, 2969, 4432, 4458, - 727, -1115, 2969, -1115, -1115, -1115, -1115, -1115, -1115, -1115, - -1115, -1115, -1115, -1115, 1885, 65, 2969, 1214, 1218, 18, - -1115, 1217, 5353, 14, -1115, 1220, 1223, 1224, 1226, -1115, - -1115, 502, 4484, -1115, 1037, 6489, 2969, 197, 1227, 1228, - 1230, -1115, 2969, 2969, -1115, -1115, 1231, 2969, -1115, -1115, - -1115, 1235, 1236, 1237, 1145, 2969, -1115, 1239, 1885, 1885, - 1885, 1885, 1244, 1245, 1249, -1115, 3029, 1115, 3406, 6384, - 3210, 331, 197, 1272, 197, 1273, 197, 1274, 673, 1135, - 6405, 3434, 444, -1115, 1280, 1243, 1281, 197, 1243, 1282, - 734, 2969, -1115, -1115, 1885, 3238, 716, 6426, -1115, 2580, - -1115, 1286, 1146, 1147, -1115, 184, 6489, 2969, 2969, 1885, - 1144, 755, 6489, 1289, 1290, 2092, -1115, 1291, 1293, -1115, - 1156, -1115, -1115, -1115, -1115, -1115, 1295, 2969, -1115, 3462, - 261, -1115, -1115, -1115, 3490, 3518, -1115, 3546, 1292, -1115, - -1115, 1252, 1297, 6489, -1115, 1298, 1300, 1302, 1303, -1115, - 1163, 1307, -1115, 2231, 1311, 1313, 1178, -1115, 2969, -1115, - 1179, 449, -1115, 1182, 451, -1115, 1183, 479, -1115, 1185, - 1314, 1885, 1315, 1201, 2969, -1115, 2441, 488, -1115, 497, - 505, -1115, 1317, 3574, 1232, 2969, -1115, 2969, -1115, -1115, - 2896, 2370, 1322, -1115, 1885, 1885, -1115, 2969, 4510, 4536, - -1115, 1885, 2969, 1325, -1115, -1115, -1115, 14, -1115, 1253, - -1115, 4562, 1343, 1345, 1351, 1352, 1353, 1215, -1115, -1115, - -1115, -1115, -1115, 1885, -1115, 1355, -1115, -1115, -1115, 331, - 3266, -1115, 2757, 149, 2757, 149, 2757, 149, -1115, 769, - 1885, -1115, 3602, 197, 2896, 197, -1115, -1115, 2969, 3630, - 3658, 795, -1115, -1115, 1216, 1219, 1221, 6489, 2969, 2969, - 798, 6489, -1115, 1357, -1115, 2969, -1115, -1115, -1115, -1115, - -1115, 2969, 799, -1115, 1222, 2969, -1115, 3686, 507, -24, - 3714, 518, -14, 3742, 545, 202, 1885, 1359, 1301, 2616, - 1225, 547, 803, 552, 2434, -1115, -1115, 1363, 1365, 1370, - 2969, 6447, 4588, 29, -1115, 4614, 3770, 1373, -1115, 3798, - 1374, 2969, 1375, 1376, 2969, 1378, 1379, 2969, 1380, 1241, - -1115, 2969, -1115, 149, -1115, 2896, 1381, 2441, -1115, -1115, - -1115, -1115, 807, -1115, 2969, -1115, 1885, 2969, -1115, -1115, - 1307, -1115, -1115, 1246, 3826, -1115, -1115, 1247, 3854, -1115, - -1115, 1250, 3882, -1115, 1386, 2509, 207, 2746, 812, -1115, - 589, 825, 1390, 1251, 6468, 829, 3910, 1393, 149, 1394, - 149, 1395, 149, 1396, -1115, -1115, -1115, -1115, 149, 1397, - 2896, 1398, -1115, 502, -1115, 1259, 1401, -1115, 286, -1115, - 1261, 289, -1115, 1264, 291, -1115, 1265, 332, -1115, 833, - -1115, 836, -1115, 1266, 1885, -1115, 1408, 149, 1435, 149, - 1436, 149, -1115, 1437, 502, 1438, 502, 843, -1115, 340, - -1115, 349, -1115, 353, -1115, -1115, -1115, 844, -1115, 1439, - 1440, 1441, 1442, 502, 1443, -1115, -1115, -1115, -1115, -1115, - -1115 + 3316, 35, 28, 3398, -1114, -1114, 1736, 63, 47, -60, + 1, 79, 97, 108, -104, -4, 41, -61, 53, 64, + -46, 84, 88, 61, 116, 247, 263, 270, 76, 289, + 689, 143, 222, 316, 252, 227, 296, 296, 253, 415, + 271, 381, 396, 395, 11, 345, 400, 450, 451, 458, + 323, 331, 332, 18, 29, -1114, 336, -1114, 489, 339, + -1114, 505, 509, 26, 30, 379, 387, 390, -1114, -1114, + -1114, -1114, -1114, -1114, -1114, -1114, -1114, -1114, -1114, -1114, + -1114, -1114, -1114, -1114, -1114, -1114, 22, 388, 33, -1114, + -1114, -1114, 351, 358, 368, 399, 437, 447, 482, 508, + 511, 533, 537, 549, 550, 553, 569, 576, 587, 588, + 597, 600, 622, 394, 412, 417, 420, -1114, 544, 443, + -1114, -1114, -1114, -1114, -1114, -1114, -1114, 3153, 3153, 3153, + -1114, -1114, 3153, 2698, 9, 536, 38, 3153, 557, 929, + -1114, 593, 598, 3153, 606, -1114, 3153, -1114, -1114, -1114, + 3153, 3080, 3153, 3153, 499, 3153, 3080, 3153, 3153, 514, + 3080, 3153, 3153, 2069, 521, 518, 529, 530, 1791, 1791, + 1791, 542, -1114, -1114, -1114, -1114, 570, 581, 596, 718, + 2069, 741, 296, 296, 296, 3153, 3153, -69, -1114, 208, + 296, 624, 625, 643, 2941, 241, -96, 607, 674, 1791, + 2069, 692, 19, 687, -1114, 830, -1114, 690, 712, 737, + 852, 3153, 3153, 3153, 715, 3153, 729, 784, 3153, 3153, + -1114, 3153, 881, -1114, 903, -1114, 932, -1114, 2069, 441, + 441, 797, 3153, 936, 795, -1114, -1114, -1114, 937, 3153, + 3153, 3153, 3153, 3153, 3153, 3153, 3153, 3153, 3153, 3153, + 3153, 3153, 3153, 3153, 3153, 3153, 3153, 3153, 3153, 3153, + 3153, 3153, 3153, 3153, 3153, 3153, 3153, 3153, 3153, 3153, + 3153, 3153, 3153, 3153, 3153, 3153, 3153, 3153, 3153, 3153, + 3153, 441, 441, 441, 441, 3153, 939, 582, 806, 806, + 806, 5390, 52, 3080, 4654, 215, 802, 941, 807, 804, + -1114, 805, 2930, 1146, -1114, -1114, 3153, 3153, 3153, 3153, + 3153, 3153, 3153, 3153, 3153, 3153, 3153, 3153, 3153, 3153, + 3153, -1114, -1114, 1180, -3, 3952, 5411, 534, 808, 3080, + -1114, -1114, 1785, -1114, 434, 5432, 5453, 3153, 5474, 617, + 5495, 5516, 3153, 621, 5537, 5558, 2208, 1576, 2276, 945, + -1114, 3153, 3153, 3153, 3153, -1114, -1114, 947, 951, 951, + 3153, 820, 822, 823, 824, 3153, 3153, 3153, 825, 959, + 827, -35, -1114, -1114, 3978, 4004, 296, 296, 38, 38, + 198, 3153, 3153, 3153, 2941, 2941, 3153, 2930, 343, -1114, + 3153, 3153, 3153, 3153, 961, 963, 3153, 965, -1114, 3153, + 3153, 793, -1114, 3080, 3153, 3153, -1114, 5579, 5600, 5621, + 879, 4030, -1114, 831, 2415, 5642, 4677, -1114, -1114, 1143, + -1114, 1966, 833, 626, 836, -1114, 845, 3153, 4700, 153, + 3153, 5, -1114, 5663, 4723, 5684, 4746, 5705, 4769, 5726, + 4792, 5747, 4815, 5768, 4838, 5789, 4861, 5810, 4884, 5831, + 4907, 5852, 4930, 5873, 4953, 4056, 4082, 5894, 4976, 5915, + 4999, 5936, 5022, 5957, 5045, 5978, 5068, 5999, 5091, 4108, + 4134, 4160, 4186, 4212, 4238, 136, 843, 849, 850, 1203, + 846, 3153, -1114, 2069, 2069, 647, 83, 33, 3153, 989, + 992, 20, 854, -1114, -82, -27, -23, -43, -1114, -1114, + 2552, 794, 573, 763, 763, 513, 513, 513, 513, 234, + 234, 806, 806, 806, 806, -1114, 6, 3080, 3153, 993, + 2903, 3153, 806, -1114, 3153, 3080, 3080, 902, 996, 997, + 6020, 999, 908, 1001, 1002, 6041, 911, 1004, 1005, 3080, + -1114, 651, 2347, 3153, 6062, 2934, 6083, 6104, 3153, 2069, + 1011, 1010, 6125, 3213, 3213, 3213, 3213, 6146, 6167, 6188, + 873, -1114, 2069, 296, 3153, 3153, -1114, -1114, 870, 871, + 3153, 4264, 4290, 4316, 3926, 313, 296, 2105, 6209, 3006, + 6230, 6251, 3153, 1014, 3153, 6272, -1114, 5114, 5137, -1114, + 652, 5160, 5183, 1016, 1017, 1018, 882, 3153, 2244, 3153, + 3153, -1114, 32, -1114, -1114, 2069, 3153, 1026, 1025, 1027, + 5206, 45, -1114, 3073, -1114, 893, 895, 889, -1114, 1031, + -1114, -1114, -1114, -1114, -1114, -1114, -1114, -1114, -1114, -1114, + -1114, -1114, -1114, -1114, -1114, -1114, -1114, -1114, -1114, -1114, + -1114, -1114, -1114, -1114, -1114, -1114, -1114, 3153, 3153, -1114, + -1114, -1114, -1114, -1114, -1114, -1114, -1114, -1114, -1114, -1114, + -1114, 3153, 3153, 3153, 3153, 3153, 3153, -1114, 3080, 441, + -1114, -1114, -1114, 3153, 5229, 1032, 1033, 897, -1114, 94, + 3153, 1036, 1037, 1344, -1114, 1038, 904, 18, 1041, -1114, + 3080, 3080, 3080, 3080, 3153, -1114, 917, 441, 148, 4342, + 296, -1114, 3080, 3146, 2619, 806, -1114, 1785, -1114, 1012, + 2069, 2069, 1058, 2069, 749, 2069, 2069, 1059, 994, 2069, + 2069, 656, -1114, 3080, 1380, 1060, 1062, 1063, 1064, 1766, + -1114, -1114, 1068, -1114, 1069, 934, 6503, -1114, 938, 940, + 942, 1070, 1071, 1075, 1080, 943, 355, 4368, 4394, -1114, + -1114, 3179, 296, 296, 296, 1079, 944, 946, -36, -1114, + 375, -1114, 313, 1085, 1081, 1086, 1088, 6503, -1114, 1419, + 949, 1091, 1092, 1048, 1096, 1100, 2069, 2069, 2069, 1104, + 4420, -1114, 2691, 655, 1105, 1106, 964, 5252, -1114, 966, + 967, 1109, 1113, -1114, 1112, -1114, 979, 3153, 3153, 2069, + 973, -1114, 6293, 5275, 6314, 5298, 6335, 5321, 6356, 5344, + 196, 980, 6377, 180, -1114, -1114, 67, 320, 981, 1116, + 1439, -1114, -1114, -1114, 18, 3153, -1114, 661, -1114, 664, + 667, 672, 675, 6503, -1114, 1118, 15, 3153, 4, 676, + -1114, 3153, 982, 1067, 1067, 2069, 1121, 983, 985, 1122, + 1128, 2069, 990, 1130, 1132, -1114, 679, -1114, 1134, 2069, + 2069, 2069, 1136, 1135, -1114, 2069, 1139, 1141, 1147, 1151, + 2069, 2069, 2069, 411, 1138, 3153, 3153, 3153, 1006, 68, + 150, 322, -1114, 2069, 3153, -1114, -1114, 2941, -19, 1930, + -1114, 1019, 2486, -1114, 3080, -1114, -1114, 1020, -1114, -1114, + 1153, 1157, 1073, -1114, 3153, 3153, 3153, -1114, 1158, 1162, + 1159, 1029, 2069, 2069, -1114, 153, -1114, 3153, 4446, 4472, + 680, -1114, 3153, -1114, -1114, -1114, -1114, -1114, -1114, -1114, + -1114, -1114, -1114, -1114, 2069, 33, 3153, 1164, 1170, 20, + -1114, 1169, 5367, 18, -1114, 1171, 1173, 1174, 1175, -1114, + -1114, 441, 4498, -1114, 1039, 6503, 3153, 296, 1177, 1182, + 1193, -1114, 3153, 3153, -1114, -1114, 1195, 3153, -1114, -1114, + -1114, 1199, 1202, 1207, 1077, 3153, -1114, 1208, 2069, 2069, + 2069, 2069, 1210, 1213, 1212, -1114, 3213, 1078, 3394, 6398, + 2725, 38, 296, 1214, 296, 1215, 296, 1216, 280, 1082, + 6419, 3422, 386, -1114, 1218, 1351, 1221, 296, 1351, 1224, + 703, 3153, -1114, -1114, 2069, 2757, 627, 6440, -1114, 2764, + -1114, 1227, 1094, 1095, -1114, 274, 6503, 3153, 3153, 2069, + 1097, 716, 6503, 1226, 1232, 1551, -1114, 1235, 1237, -1114, + 1101, -1114, -1114, -1114, -1114, -1114, 1241, 3153, -1114, 3450, + 299, -1114, -1114, -1114, 3478, 3506, -1114, 3534, 1243, -1114, + -1114, 1200, 1245, 6503, -1114, 1246, 1247, 1248, 1251, -1114, + 1115, 1253, -1114, 1658, 1257, 1260, 1137, -1114, 3153, -1114, + 1133, 392, -1114, 1140, 398, -1114, 1142, 423, -1114, 1148, + 1276, 2069, 1279, 1150, 3153, -1114, 2625, 440, -1114, 442, + 444, -1114, 1277, 3562, 1194, 3153, -1114, 3153, -1114, -1114, + 3080, 1859, 1284, -1114, 2069, 2069, -1114, 3153, 4524, 4550, + -1114, 2069, 3153, 1287, -1114, -1114, -1114, 18, -1114, 1197, + -1114, 4576, 1292, 1294, 1309, 1310, 1311, 1191, -1114, -1114, + -1114, -1114, -1114, 2069, -1114, -1114, -1114, -1114, 38, 2878, + -1114, 2941, 313, 2941, 313, 2941, 313, -1114, 717, 2069, + -1114, 3590, 296, 3080, 296, -1114, -1114, 3153, 3618, 3646, + 720, -1114, -1114, 1172, 1192, 1196, 6503, 3153, 3153, 726, + 6503, -1114, 1312, -1114, 3153, -1114, -1114, -1114, -1114, -1114, + 3153, 727, 1198, 3153, -1114, 3674, 466, -16, 3702, 472, + 135, 3730, 475, 147, 2069, 1333, 1280, 2383, 1201, 483, + 734, 485, 1998, -1114, -1114, 1335, 1338, 1341, 3153, 6461, + 4602, 31, -1114, 4628, 3758, 1345, -1114, 3786, 1346, 3153, + 1347, 1350, 3153, 1352, 1353, 3153, 1357, 1209, -1114, 3153, + -1114, 313, -1114, 3080, 1358, 2625, -1114, -1114, -1114, -1114, + 755, -1114, 3153, -1114, 2069, 3153, -1114, -1114, 1382, -1114, + -1114, 1204, 3814, -1114, -1114, 1242, 3842, -1114, -1114, 1244, + 3870, -1114, 1386, 2137, 149, 2522, 758, -1114, 503, 759, + 1387, 1252, 6482, 762, 3898, -1114, 313, 1388, 313, 1389, + 313, 1392, -1114, -1114, -1114, -1114, 313, 1394, 3080, 1396, + -1114, 441, -1114, 1256, 1401, 202, -1114, 1261, 210, -1114, + 1262, 243, -1114, 1264, 287, -1114, 766, -1114, 767, -1114, + 1265, 2069, -1114, 1407, 313, 1408, 313, 1412, 313, -1114, + 1413, 441, 1420, 441, 783, -1114, 340, -1114, 349, -1114, + 383, -1114, -1114, -1114, 786, -1114, 1421, 1424, 1425, 1427, + 441, 1429, -1114, -1114, -1114, -1114, -1114, -1114 }; /* YYPGOTO[NTERM-NUM]. */ static const yytype_int16 yypgoto[] = { - -1115, -1115, -1115, -1115, 543, -1115, -1115, -1115, -1115, 231, - -1115, -1115, -1115, -1115, -1115, -1115, -1115, -1115, -1115, -1115, - -1115, -1115, -265, -3, -1115, -363, -1115, 606, 1450, -1115, - -1115, -1115, -1115, 3, -374, -193, -1115, -1115, -1115, -1115, - -1115, -1115, 1451, -1115, -1115, -1115, -1115, -1115, -1115, -1115, - -1115, -1115, -1115, -1115, -1115, -1115, -627, -710, 228, 196, - -1115, -1115, 1098, -1115, -1115, -1115, -1115, -1115, -6, -1115, - -20, -1115, -1114, 304, -128, 60, -79, -666, 519, -1115, - -228, 7 + -1114, -1114, -1114, -1114, 602, -1114, -1114, -1114, -1114, 218, + -1114, -1114, -1114, -1114, -1114, -1114, -1114, -1114, -1114, -1114, + -1114, -1114, -292, 21, -1114, -52, -1114, 595, 1437, -1114, + -1114, -1114, -1114, 3, -374, -193, -1114, -1114, -1114, -1114, + -1114, -1114, 1438, -1114, -1114, -1114, -1114, -1114, -1114, -1114, + -1114, -1114, -1114, -1114, -1114, -1114, -660, -713, 217, -1114, + -1114, 1084, -1114, -1114, -1114, -1114, -1114, -6, -1114, -20, + -1114, -1113, 545, -81, 291, -83, -667, 507, -1114, -228, + 12 }; /* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If @@ -1544,1015 +1541,1027 @@ static const yytype_int16 yypgoto[] = #define YYTABLE_NINF -5 static const yytype_int16 yytable[] = { - 139, 387, 426, 138, 568, 569, 73, 1180, 953, 614, - 397, 401, 398, 141, 202, 695, 187, 189, 214, 195, - 295, 826, 686, 817, 154, 224, 231, 145, 159, 1192, - 488, 226, 419, 755, 421, 1255, 217, 755, 784, 756, - 757, 358, 359, 756, 757, 4, 154, 159, 886, 5, - 423, 237, 755, 475, 476, 477, 478, 142, 756, 757, - 950, 147, 755, 205, 483, 206, 130, 131, 756, 757, - 237, 394, 334, 792, 196, 516, 239, 339, 240, 150, - 517, 343, 113, 114, 115, 116, 151, 678, 117, 155, - 390, 615, 616, 617, 618, 238, 156, 391, 144, 150, - 160, 113, 114, 115, 116, 885, 690, 117, 241, 1003, - 242, 155, 296, 297, 203, 818, 819, 678, 691, 692, - 197, 288, 289, 290, 1232, 168, 291, 294, 169, 198, - 170, 303, 376, 377, 1235, 888, 696, 323, 176, 300, - 325, 177, 1285, 178, 326, 332, 335, 336, 399, 338, - 332, 340, 341, 619, 332, 344, 345, 204, 941, 130, - 131, 215, 371, 372, 232, 687, 233, 225, 146, 143, - 380, 234, 218, 227, 388, 785, 1256, 484, 886, 374, - 375, 696, 162, 130, 131, 487, 376, 377, 375, 693, - 792, 738, 739, 740, 985, 986, 577, 123, 124, 125, - 126, 243, 992, 244, 993, 407, 408, 409, 935, 411, - 1337, 333, 414, 415, 485, 416, 333, 130, 131, 598, - 333, 680, 130, 131, 679, 755, 428, 123, 124, 125, - 126, 756, 757, 433, 434, 435, 436, 437, 438, 439, + 139, 387, 426, 488, 568, 569, 73, 145, 1179, 614, + 953, 401, 695, 295, 154, 202, 187, 189, 141, 195, + 826, 950, 214, 397, 686, 398, 231, 138, 5, 159, + 1191, 224, 419, 217, 421, 226, 150, 1253, 237, 784, + 755, 4, 299, 151, 390, 886, 756, 757, 154, 423, + 237, 391, 159, 475, 476, 477, 478, 755, 150, 483, + 755, 376, 377, 756, 757, 690, 756, 757, 334, 113, + 114, 115, 116, 339, 678, 117, 142, 343, 378, 155, + 144, 113, 114, 115, 116, 147, 156, 117, 358, 359, + 678, 615, 616, 617, 618, 376, 377, 162, 817, 143, + 238, 160, 888, 148, 693, 296, 297, 35, 36, 37, + 38, 563, 885, 155, 149, 203, 43, 163, 394, 46, + 691, 288, 289, 290, 692, 168, 291, 294, 169, 1003, + 170, 303, 1230, 696, 376, 377, 152, 323, 516, 300, + 325, 1283, 696, 517, 326, 332, 335, 336, 146, 338, + 332, 340, 341, 619, 332, 344, 345, 941, 204, 130, + 131, 399, 371, 372, 232, 215, 233, 687, 164, 218, + 380, 234, 484, 225, 388, 886, 785, 227, 1254, 374, + 375, 153, 130, 131, 123, 124, 125, 126, 375, 792, + 818, 819, 176, 157, 680, 177, 577, 178, 376, 377, + 123, 124, 125, 126, 158, 407, 408, 409, 1334, 411, + 485, 755, 414, 415, 992, 416, 993, 756, 757, 598, + 130, 131, 487, 755, 161, 755, 428, 679, 162, 756, + 757, 756, 757, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, - 470, 471, 472, 473, 474, 376, 377, 1041, 755, 479, - 526, 667, 527, 755, 756, 757, 668, 332, 148, 756, - 757, 994, 489, 995, 836, 123, 124, 125, 126, 526, + 470, 471, 472, 473, 474, 196, 1041, 667, 755, 479, + 376, 377, 668, 1233, 756, 757, 755, 332, 524, 836, + 130, 131, 756, 757, 526, 1236, 994, 1294, 995, 165, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, - 510, 511, 512, 513, 514, 130, 131, 931, 123, 124, - 125, 126, 526, 522, 590, 1116, 191, 183, 184, 192, - 1117, 530, 193, 906, 149, 299, 535, 185, 130, 131, - 522, 332, 376, 377, 186, 544, 545, 546, 547, 245, - 1238, 246, 163, 333, 552, 1296, 566, 567, 563, 557, - 558, 559, 755, 152, 372, 755, 153, 755, 756, 757, - 157, 756, 757, 756, 757, 571, 572, 573, 288, 289, - 574, 300, 300, 794, 578, 579, 580, 581, 158, 523, - 585, 376, 377, 587, 588, 161, 162, 332, 591, 592, - 35, 36, 37, 38, 164, 171, 523, 333, 755, 43, - 183, 184, 46, 165, 756, 757, 755, 376, 377, 166, - 185, 610, 756, 757, 613, 755, 612, 194, 247, 755, - 248, 756, 757, 570, 1326, 756, 757, 1328, 698, 1330, - 249, 811, 250, 251, 167, 252, 306, 307, 308, 309, - 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, - 721, 1183, 172, 333, 320, 173, 907, 349, 174, 835, - 175, 180, 356, 356, 356, 674, 376, 377, 179, 253, - 1332, 254, 683, 681, 369, 376, 377, 181, 1350, 886, - 182, 190, 886, 378, 682, 886, 255, 1351, 256, 376, - 377, 1352, 379, 356, 395, 199, 423, 237, 200, 376, - 377, 332, 699, 201, 674, 703, 389, 207, 704, 705, - 707, 208, 317, 318, 319, 996, 1199, 997, 1202, 320, - 1205, 209, 422, 332, 211, 210, 705, 724, 113, 114, - 115, 116, 729, 746, 117, 212, 213, 736, 736, 736, - 736, 934, 936, 376, 377, 257, 760, 258, 747, 748, - 737, 737, 737, 737, 751, 219, 886, 376, 377, 576, - 220, 376, 377, 221, 376, 377, 767, 333, 769, 376, - 377, 376, 377, 875, 222, 706, 708, 887, 223, 810, - 1094, 780, 228, 782, 783, 1152, 298, 1154, 886, 333, - 787, 886, 706, 259, 886, 260, 229, 886, 793, 376, - 377, 829, 830, 831, 832, 230, 1276, 1080, 376, 377, - 261, 305, 262, 839, 263, 1156, 264, 376, 377, 886, - 265, 886, 266, 886, 1163, 376, 377, 376, 377, 236, - 281, 802, 803, 1164, 856, 526, 282, 532, 376, 377, - 267, 1165, 268, 1231, 283, 804, 805, 806, 807, 808, - 809, 1308, 332, 1311, 1234, 1314, 269, 812, 270, 284, - 271, 1317, 272, 285, 820, 376, 377, 376, 377, 286, - 838, 524, 376, 377, 332, 332, 332, 332, 833, 304, - 273, 1237, 274, 1245, 321, 275, 332, 276, 1247, 277, - 1339, 278, 1341, 322, 1343, 308, 309, 310, 311, 312, - 313, 314, 315, 316, 317, 318, 319, 332, 324, 376, - 377, 320, 352, 1046, 1107, 279, 337, 280, 333, 526, - 342, 536, 879, 880, 881, 1300, 306, 307, 308, 309, + 510, 511, 512, 513, 514, 166, 489, 130, 131, 755, + 590, 197, 167, 522, 792, 756, 757, 935, 376, 377, + 198, 530, 123, 124, 125, 126, 535, 931, 376, 377, + 522, 332, 526, 171, 570, 544, 545, 546, 547, 205, + 1323, 206, 130, 131, 552, 379, 566, 567, 1325, 557, + 558, 559, 179, 755, 372, 180, 317, 318, 319, 756, + 757, 376, 377, 320, 182, 571, 572, 573, 288, 289, + 574, 300, 300, 794, 578, 579, 580, 581, 389, 755, + 585, 1327, 181, 587, 588, 756, 757, 332, 591, 592, + 190, 306, 307, 308, 309, 310, 311, 312, 313, 314, + 315, 316, 542, 318, 319, 1116, 755, 985, 986, 320, + 1117, 610, 756, 757, 613, 755, 183, 184, 1090, 376, + 377, 756, 757, 199, 698, 1329, 185, 123, 124, 125, + 126, 811, 333, 186, 201, 423, 237, 333, 200, 207, + 612, 333, 376, 377, 208, 209, 721, 130, 131, 755, + 1182, 191, 210, 211, 192, 756, 757, 193, 996, 835, + 997, 212, 213, 376, 377, 674, 219, 113, 114, 115, + 116, 221, 683, 117, 886, 376, 377, 886, 1347, 576, + 886, 239, 1197, 240, 1200, 220, 1203, 1348, 241, 682, + 242, 875, 738, 739, 740, 376, 377, 681, 243, 222, + 244, 332, 699, 223, 674, 703, 376, 377, 704, 705, + 707, 887, 376, 377, 934, 936, 228, 229, 376, 377, + 230, 1349, 1094, 332, 281, 236, 705, 724, 1151, 245, + 298, 246, 729, 746, 1153, 183, 184, 736, 736, 736, + 736, 285, 282, 376, 377, 185, 760, 283, 747, 748, + 284, 886, 194, 304, 751, 737, 737, 737, 737, 1155, + 376, 377, 376, 377, 376, 377, 767, 247, 769, 248, + 526, 1274, 527, 286, 333, 810, 1162, 249, 1163, 250, + 1164, 780, 886, 782, 783, 886, 376, 377, 886, 321, + 787, 886, 376, 377, 322, 376, 377, 829, 830, 831, + 832, 324, 1229, 376, 377, 376, 377, 1080, 1232, 839, + 523, 1235, 251, 886, 252, 886, 1305, 886, 1308, 1243, + 1311, 1245, 793, 376, 377, 1107, 1314, 523, 333, 337, + 856, 802, 803, 315, 316, 317, 318, 319, 253, 1298, + 254, 255, 320, 256, 342, 804, 805, 806, 807, 808, + 809, 351, 332, 906, 1336, 352, 1338, 812, 1340, 353, + 354, 130, 131, 257, 820, 258, 520, 259, 233, 260, + 838, 136, 360, 234, 332, 332, 332, 332, 833, 261, + 263, 262, 264, 265, 333, 266, 332, 309, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 349, 267, + 365, 268, 320, 356, 356, 356, 269, 332, 270, 130, + 131, 366, 368, 1046, 481, 369, 233, 271, 273, 272, + 274, 234, 879, 880, 881, 172, 367, 275, 173, 276, + 277, 174, 278, 175, 356, 395, 370, 392, 306, 307, + 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, + 318, 319, 279, 526, 280, 532, 320, 526, 606, 536, + 607, 381, 382, 422, 1192, 1108, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, - 333, 333, 333, 333, 320, 606, 526, 607, 677, 847, - 351, 848, 333, 309, 310, 311, 312, 313, 314, 315, - 316, 317, 318, 319, 526, 1194, 722, 526, 320, 773, - 526, 353, 855, 333, 943, 354, 944, 675, 676, 360, - 365, 918, 919, 366, 306, 307, 308, 309, 310, 311, - 312, 313, 314, 315, 316, 542, 318, 319, 367, 526, - 793, 945, 320, 368, 937, 1010, 370, 130, 131, 942, - 400, 1090, 520, 526, 233, 946, 381, 136, 526, 234, - 947, 952, 526, 392, 948, 955, 382, 306, 307, 308, - 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, - 319, 130, 131, 730, 402, 320, 481, 526, 233, 954, - 393, 396, 383, 234, 1108, 403, 745, 1002, 406, 988, - 989, 990, 526, 1029, 970, 1030, 410, 998, 1000, 404, - 526, 1001, 1102, 405, 7, 8, 412, 413, 332, 311, + 383, 918, 919, 526, 320, 677, 907, 526, 526, 722, + 773, 847, 526, 848, 855, 7, 8, 943, 333, 944, + 526, 1010, 945, 526, 393, 946, 706, 708, 526, 942, + 947, 526, 526, 948, 954, 526, 1029, 970, 1030, 400, + 333, 952, 396, 706, 793, 955, 402, 403, 937, 494, + 15, 16, 495, 18, 19, 496, 21, 497, 23, 526, + 24, 1102, 26, 27, 404, 29, 30, 31, 406, 410, + 33, 34, 1122, 1204, 1123, 1205, 526, 1002, 1215, 988, + 989, 990, 1029, 1029, 1221, 1225, 412, 998, 1000, 405, + 526, 1001, 1244, 413, 50, 51, 52, 417, 332, 311, 312, 313, 314, 315, 316, 317, 318, 319, 1015, 1016, - 1017, 1122, 320, 1123, 315, 316, 317, 318, 319, 786, - 417, 1026, 1024, 320, 418, 1206, 1032, 1207, 494, 15, - 16, 495, 18, 19, 496, 21, 497, 23, 420, 24, - 1035, 26, 27, 427, 29, 30, 31, 1050, 429, 33, - 34, 526, 1034, 1217, 1029, 1029, 1223, 1227, 430, 526, - 1049, 1246, 432, 1122, 333, 1282, 1054, 1055, 526, 480, - 1299, 1057, 320, 50, 51, 52, 490, 491, 1209, 1063, - 492, 526, 1081, 1301, 1084, 1029, 1087, 1305, 136, 526, - 1073, 1333, 1334, 493, 1335, 1097, 521, 1099, 1100, 1029, - 1353, 1349, 1354, 1074, 300, 543, 548, 549, 553, 332, - 554, 555, 332, 556, 561, 1103, 560, 582, 584, 586, - 562, 596, 605, 1111, 843, 844, 599, 846, 608, 849, - 850, 1118, 1119, 853, 854, 609, 1112, 669, 670, 671, - 684, 1171, 673, 685, 689, 700, 709, 710, 711, 713, - 714, 1131, 715, 716, 718, 719, 720, 731, 733, 744, - 749, 1277, 768, 779, 750, 776, 777, 778, 788, 789, - 790, 797, 801, 798, 799, 333, 814, 815, 333, 816, - 821, 822, 1150, 824, 825, 1322, 828, 834, 842, 845, - 900, 901, 902, 864, 524, 1212, 851, 852, 1162, 858, - 522, 859, 860, 861, 865, 870, 866, 867, 868, 1169, - 869, 1170, 871, 872, 332, 873, 1345, 874, 1348, 882, - 883, 1177, 884, 889, 890, 894, 1181, 891, 892, 895, - 896, 897, 898, 899, 903, 1359, 908, 909, 910, 912, - 913, 914, 1198, 915, 1201, 917, 1204, 916, 922, 939, - 932, 938, 949, 1211, 961, 1213, 1197, 964, 1200, 960, - 1203, 956, 300, 957, 962, 966, 523, 963, 332, 965, - 967, 968, 1214, 972, 973, 974, 1278, 969, 1281, 977, - 333, 971, 1221, 1222, 982, 983, 984, 975, 976, 1225, - 1048, 978, 979, 980, 981, 1226, 987, 999, 991, 1229, - 1012, 1007, 1011, 1006, 1013, 1014, 1009, 306, 307, 308, - 309, 310, 311, 312, 313, 314, 315, 316, 525, 318, - 319, 1018, 1021, 1019, 1032, 320, 1022, 1023, 1020, 499, - 1036, 1319, 1037, 1039, 333, 1264, 1042, 1280, 1268, 1043, - 1044, 1272, 1045, 1051, 1052, 1275, 1053, 1056, 1033, 332, - 1058, 332, 1059, 1060, 1061, 1064, 85, 327, 1284, 1070, - 1069, 1286, 89, 90, 91, 1072, 1075, 92, 93, 94, - 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 1082, 1085, - 1088, 1091, 1065, 1066, 1067, 1068, 1095, 1098, 1101, 328, - 1113, 1121, 1114, 1115, 332, 1124, 1125, 1136, 1127, 1128, - 1129, 1130, 1137, 1138, 1139, 333, 1140, 333, 1141, 1142, - 1143, 1144, 35, 36, 37, 38, 39, 1147, 1104, 1148, - 1158, 43, 1160, 1166, 46, 1149, 1168, 1151, 1173, 1153, - 1155, 1182, 1157, 1120, 306, 307, 308, 309, 310, 311, - 312, 313, 314, 315, 316, 317, 318, 319, 1161, 1186, - 1184, 1187, 320, 119, 120, 121, 122, 1188, 1189, 1190, - 333, 1193, 1191, 1224, 1218, 1240, 1241, 1219, 1220, 1249, - 1228, 1250, 1244, 384, 1096, 515, 1251, 1259, 129, 951, - 1262, 1265, 1266, 386, 1269, 1270, 1273, 1279, 135, 1274, - 186, 540, 1294, 1288, 1290, 1159, 1302, 1292, 1303, 1307, - 1309, 1312, 1315, 1318, 1320, 672, 1324, 1325, 1327, 85, - 327, 1329, 1331, 1336, 1338, 89, 90, 91, 1174, 1175, + 1017, 1122, 320, 1280, 526, 526, 1297, 1299, 1029, 418, + 1303, 1026, 526, 1331, 1330, 1332, 1032, 308, 309, 310, + 311, 312, 313, 314, 315, 316, 317, 318, 319, 1029, + 1035, 1346, 1350, 320, 1351, 305, 1024, 1050, 420, 427, + 429, 589, 430, 432, 480, 320, 490, 1034, 491, 492, + 1049, 136, 543, 493, 548, 521, 1054, 1055, 549, 333, + 553, 1057, 554, 555, 556, 561, 560, 1207, 582, 1063, + 584, 586, 1081, 562, 1084, 596, 1087, 608, 599, 605, + 1073, 333, 333, 333, 333, 1097, 609, 1099, 1100, 669, + 670, 671, 673, 333, 300, 684, 685, 689, 1074, 332, + 700, 709, 332, 710, 711, 1103, 713, 714, 715, 716, + 718, 719, 720, 1111, 333, 731, 733, 744, 749, 750, + 768, 1118, 1119, 776, 777, 778, 779, 1170, 675, 676, + 788, 1112, 789, 797, 790, 798, 799, 801, 814, 815, + 816, 1131, 821, 822, 834, 824, 825, 828, 852, 1275, + 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, + 316, 317, 318, 319, 842, 845, 851, 858, 320, 859, + 860, 861, 1149, 1319, 864, 866, 865, 870, 871, 867, + 1210, 868, 872, 869, 873, 882, 884, 890, 1161, 874, + 522, 883, 889, 891, 730, 892, 894, 895, 896, 1168, + 897, 1169, 898, 1342, 332, 1345, 899, 745, 903, 908, + 909, 1176, 910, 912, 913, 914, 1180, 915, 916, 917, + 922, 932, 1356, 939, 949, 938, 957, 961, 964, 956, + 962, 1196, 963, 1199, 965, 1202, 968, 967, 969, 971, + 975, 976, 1209, 987, 1211, 1195, 978, 1198, 979, 1201, + 786, 300, 499, 991, 980, 7, 8, 332, 981, 1012, + 1276, 1212, 1279, 1013, 1018, 1020, 1007, 1011, 1014, 1019, + 1036, 1219, 1220, 1021, 1037, 1039, 1061, 1042, 1223, 1043, + 1044, 1045, 1048, 1051, 1224, 333, 515, 1227, 1052, 494, + 15, 16, 495, 18, 19, 496, 21, 497, 23, 1053, + 24, 1056, 26, 27, 1058, 29, 30, 31, 1059, 672, + 33, 34, 1032, 1060, 1064, 1316, 1069, 1070, 1072, 1075, + 1082, 1085, 1088, 1262, 1095, 1278, 1266, 1098, 1091, 1270, + 1101, 1113, 1124, 1273, 50, 51, 52, 332, 1125, 332, + 1114, 1115, 1127, 1128, 1121, 1129, 1282, 1130, 1136, 1284, + 1137, 1138, 1139, 1140, 1141, 843, 844, 1142, 846, 1144, + 849, 850, 1143, 1146, 853, 854, 1147, 306, 307, 308, + 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, + 319, 1150, 1157, 1165, 1148, 320, 1159, 1152, 1167, 1154, + 1172, 603, 332, 1181, 1183, 1156, 333, 1160, 1185, 333, + 1186, 306, 307, 308, 309, 310, 311, 312, 313, 314, + 315, 316, 317, 318, 319, 1187, 1188, 1189, 1222, 320, + 1216, 900, 901, 902, 306, 307, 308, 309, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 1190, 1238, + 1217, 1247, 320, 1218, 1248, 1239, 1226, 1249, 1242, 1257, + 823, 1286, 1260, 1263, 85, 327, 1264, 1272, 1267, 1268, + 89, 90, 91, 1271, 1277, 92, 93, 94, 95, 96, + 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, + 107, 108, 109, 110, 111, 112, 857, 523, 1285, 1288, + 960, 1290, 1292, 1300, 1306, 1309, 966, 328, 1312, 1301, + 1315, 333, 1317, 1321, 972, 973, 974, 1322, 1324, 1326, + 977, 1328, 1333, 1335, 1337, 982, 983, 984, 1339, 1341, + 35, 36, 37, 38, 39, 893, 1343, 1352, 999, 43, + 1353, 1354, 46, 1355, 1006, 1357, 1250, 1009, 951, 959, + 72, 80, 1258, 551, 0, 940, 1038, 0, 0, 0, + 0, 0, 0, 0, 333, 0, 0, 1022, 1023, 0, + 0, 119, 120, 121, 122, 306, 307, 308, 309, 310, + 311, 312, 313, 314, 315, 316, 317, 318, 319, 1033, + 0, 384, 1096, 320, 0, 0, 129, 0, 0, 0, + 0, 386, 0, 0, 0, 0, 135, 0, 186, 540, + 0, 306, 307, 308, 309, 310, 311, 312, 313, 314, + 315, 316, 317, 318, 319, 0, 0, 0, 0, 320, + 0, 0, 0, 1065, 1066, 1067, 1068, 0, 0, 0, + 0, 0, 0, 0, 333, 0, 333, 0, 0, 0, + 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, + 316, 317, 318, 319, 0, 0, 0, 1126, 320, 1104, + 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, + 316, 317, 318, 319, 1120, 0, 0, 0, 320, 85, + 327, 0, 0, 0, 0, 89, 90, 91, 0, 333, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, - 112, 1340, 1342, 1344, 1346, 1355, 1356, 1357, 1358, 1360, - 959, 1252, 328, 72, 80, 1260, 1287, 551, 1038, 0, - 0, 0, 0, 0, 1208, 0, 0, 0, 0, 0, + 112, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 328, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 1158, 0, 0, 0, 0, 0, 0, 0, 0, 35, 36, 37, 38, 39, - 823, 0, 0, 0, 43, 0, 0, 46, 0, 0, - 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, - 316, 317, 318, 319, 0, 0, 0, 0, 320, 0, - 1239, 0, 0, 0, 0, 0, 119, 120, 121, 122, - 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, - 316, 317, 318, 319, 0, 0, 127, 329, 320, 0, + 0, 0, 0, 0, 43, 0, 0, 46, 0, 1173, + 1174, 0, 0, 0, 1145, 0, 0, 0, 0, 0, + 0, 0, 306, 307, 308, 309, 310, 311, 312, 313, + 314, 315, 316, 317, 318, 319, 119, 120, 121, 122, + 320, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 1206, 0, 127, 329, 0, 0, 0, 129, 0, 0, 0, 0, 132, 0, 0, 0, - 0, 135, 0, 0, 540, 85, 86, 87, 0, 88, - 0, 89, 90, 91, 0, 0, 92, 93, 94, 95, - 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, - 106, 107, 108, 109, 110, 111, 112, 0, 113, 114, - 115, 116, 0, 0, 117, 306, 307, 308, 309, 310, - 311, 312, 313, 314, 315, 316, 317, 318, 319, 524, - 85, 327, 355, 320, 0, 0, 89, 90, 91, 0, + 0, 135, 0, 0, 540, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, + 86, 87, 0, 88, 0, 89, 90, 91, 0, 1237, + 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, + 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, + 112, 0, 113, 114, 115, 116, 0, 0, 117, 306, + 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, + 317, 318, 319, 524, 85, 327, 355, 320, 0, 0, + 89, 90, 91, 0, 0, 92, 93, 94, 95, 96, + 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, + 107, 108, 109, 110, 111, 112, 0, 0, 0, 0, + 0, 862, 0, 0, 0, 0, 0, 328, 0, 0, + 118, 0, 0, 0, 0, 0, 119, 120, 121, 122, + 0, 0, 0, 123, 124, 125, 126, 0, 0, 0, + 35, 36, 37, 38, 39, 1171, 127, 128, 0, 43, + 0, 129, 46, 130, 131, 0, 132, 0, 133, 0, + 134, 135, 0, 136, 0, 0, 0, 306, 307, 308, + 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, + 319, 119, 120, 121, 122, 320, 306, 307, 308, 309, + 310, 311, 312, 313, 314, 315, 316, 525, 318, 319, + 0, 127, 346, 0, 320, 0, 129, 0, 0, 0, + 0, 132, 0, 85, 327, 1004, 135, 0, 347, 89, + 90, 91, 0, 0, 92, 93, 94, 95, 96, 97, + 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, + 108, 109, 110, 111, 112, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 328, 0, 7, 8, + 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, + 316, 317, 318, 319, 0, 0, 0, 0, 320, 35, + 36, 37, 38, 39, 1246, 0, 0, 0, 43, 0, + 0, 46, 494, 15, 16, 495, 18, 19, 496, 21, + 497, 23, 0, 24, 0, 26, 27, 0, 29, 30, + 31, 0, 0, 33, 34, 0, 0, 0, 0, 0, + 119, 120, 121, 122, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 50, 51, 52, + 127, 346, 0, 0, 0, 129, 0, 0, 0, 0, + 132, 0, 85, 327, 0, 135, 0, 1005, 89, 90, + 91, 0, 0, 92, 93, 94, 95, 96, 97, 98, + 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, + 109, 110, 111, 112, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 604, 328, 0, 7, 8, 306, + 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, + 317, 318, 319, 0, 0, 0, 0, 320, 35, 36, + 37, 38, 39, 1293, 0, 0, 0, 43, 0, 0, + 46, 494, 15, 16, 495, 18, 19, 496, 21, 497, + 23, 0, 24, 0, 26, 27, 0, 29, 30, 31, + 0, 0, 33, 34, 0, 0, 0, 0, 0, 119, + 120, 121, 122, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 50, 51, 52, 127, + 346, 0, 0, 0, 129, 0, 0, 0, 0, 132, + 0, 85, 327, 0, 135, 0, 347, 89, 90, 91, + 0, 0, 92, 93, 94, 95, 96, 97, 98, 99, + 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, + 110, 111, 112, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 761, 328, 0, 7, 8, 306, 307, + 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, + 318, 319, 0, 0, 0, 0, 320, 35, 36, 37, + 38, 39, 0, 0, 524, 0, 43, 0, 0, 46, + 494, 15, 16, 495, 18, 19, 496, 21, 497, 23, + 0, 24, 0, 26, 27, 0, 29, 30, 31, 0, + 0, 33, 34, 0, 0, 0, 0, 0, 119, 120, + 121, 122, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 50, 51, 52, 127, 329, + 0, 0, 0, 129, 0, 0, 0, 0, 132, 0, + 85, 327, 0, 135, 0, 539, 89, 90, 91, 0, 0, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, - 111, 112, 0, 0, 0, 0, 0, 862, 0, 0, - 0, 0, 0, 328, 0, 0, 118, 0, 0, 0, - 0, 0, 119, 120, 121, 122, 0, 0, 0, 123, - 124, 125, 126, 0, 0, 0, 35, 36, 37, 38, - 39, 857, 127, 128, 0, 43, 0, 129, 46, 130, - 131, 0, 132, 0, 133, 0, 134, 135, 0, 136, - 0, 0, 0, 306, 307, 308, 309, 310, 311, 312, - 313, 314, 315, 316, 317, 318, 319, 119, 120, 121, - 122, 320, 306, 307, 308, 309, 310, 311, 312, 313, - 314, 315, 316, 542, 318, 319, 0, 127, 346, 0, - 320, 0, 129, 0, 0, 0, 0, 132, 0, 85, - 327, 1004, 135, 0, 347, 89, 90, 91, 0, 0, + 111, 112, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 781, 328, 0, 7, 8, 306, 307, 308, + 309, 310, 311, 312, 313, 314, 315, 316, 542, 318, + 319, 0, 0, 0, 0, 320, 35, 36, 37, 38, + 39, 0, 0, 600, 0, 43, 0, 0, 46, 494, + 15, 16, 495, 18, 19, 496, 21, 497, 23, 0, + 24, 0, 26, 27, 0, 29, 30, 31, 0, 0, + 33, 34, 0, 0, 0, 0, 0, 119, 120, 121, + 122, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 50, 51, 52, 127, 329, 0, + 0, 0, 129, 0, 0, 0, 0, 132, 0, 85, + 327, 0, 135, 0, 723, 89, 90, 91, 0, 0, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 328, 0, 7, 8, 306, 307, 308, 309, + 0, 1240, 328, 0, 7, 8, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, 0, 320, 35, 36, 37, 38, 39, - 893, 0, 0, 0, 43, 0, 0, 46, 494, 15, + 694, 0, 0, 0, 43, 0, 0, 46, 494, 15, 16, 495, 18, 19, 496, 21, 497, 23, 0, 24, 0, 26, 27, 0, 29, 30, 31, 0, 0, 33, 34, 0, 0, 0, 0, 0, 119, 120, 121, 122, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50, 51, 52, 127, 346, 0, 0, - 0, 129, 0, 0, 0, 0, 132, 0, 85, 327, - 0, 135, 0, 1005, 89, 90, 91, 0, 0, 92, + 0, 129, 0, 0, 0, 0, 132, 841, 85, 327, + 0, 135, 0, 1008, 89, 90, 91, 0, 0, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 589, 328, 0, 7, 8, 306, 307, 308, 309, 310, - 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, - 0, 0, 0, 320, 35, 36, 37, 38, 39, 940, - 0, 0, 0, 43, 0, 0, 46, 494, 15, 16, - 495, 18, 19, 496, 21, 497, 23, 0, 24, 0, - 26, 27, 0, 29, 30, 31, 0, 0, 33, 34, - 0, 0, 0, 0, 0, 119, 120, 121, 122, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 50, 51, 52, 127, 346, 0, 0, 0, - 129, 0, 0, 0, 0, 132, 0, 85, 327, 0, - 135, 0, 347, 89, 90, 91, 0, 0, 92, 93, + 1295, 328, 0, 306, 307, 308, 309, 310, 311, 312, + 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, + 0, 320, 0, 0, 35, 36, 37, 38, 39, 905, + 0, 85, 287, 43, 0, 0, 46, 89, 90, 91, + 0, 0, 92, 93, 94, 95, 96, 97, 98, 99, + 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, + 110, 111, 112, 0, 0, 119, 120, 121, 122, 0, + 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, + 316, 317, 318, 319, 0, 384, 1096, 0, 320, 0, + 129, 0, 0, 0, 0, 386, 0, 85, 287, 237, + 135, 0, 186, 89, 90, 91, 0, 0, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 603, - 328, 0, 7, 8, 306, 307, 308, 309, 310, 311, - 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, - 0, 0, 320, 35, 36, 37, 38, 39, 1126, 0, - 0, 0, 43, 0, 0, 46, 494, 15, 16, 495, - 18, 19, 496, 21, 497, 23, 0, 24, 0, 26, - 27, 0, 29, 30, 31, 0, 0, 33, 34, 0, - 0, 0, 0, 0, 119, 120, 121, 122, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 50, 51, 52, 127, 329, 0, 0, 0, 129, - 0, 0, 0, 0, 132, 0, 85, 327, 0, 135, - 0, 539, 89, 90, 91, 0, 0, 92, 93, 94, + 113, 114, 115, 116, 0, 0, 117, 0, 119, 120, + 121, 122, 306, 307, 308, 309, 310, 311, 312, 313, + 314, 315, 316, 317, 318, 319, 0, 0, 127, 128, + 320, 0, 0, 129, 0, 0, 0, 0, 132, 0, + 0, 292, 0, 135, 0, 293, 306, 307, 308, 309, + 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, + 0, 0, 0, 0, 320, 0, 0, 0, 0, 0, + 0, 1078, 0, 1079, 119, 120, 121, 122, 306, 307, + 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, + 318, 319, 0, 0, 127, 128, 320, 0, 0, 129, + 0, 0, 0, 1105, 132, 1106, 85, 287, 0, 135, + 0, 1110, 89, 90, 91, 0, 0, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 604, 328, - 0, 7, 8, 306, 307, 308, 309, 310, 311, 312, - 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, - 0, 320, 35, 36, 37, 38, 39, 1146, 0, 0, - 0, 43, 0, 0, 46, 494, 15, 16, 495, 18, - 19, 496, 21, 497, 23, 0, 24, 0, 26, 27, - 0, 29, 30, 31, 0, 0, 33, 34, 0, 0, - 0, 0, 0, 119, 120, 121, 122, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 50, 51, 52, 127, 329, 0, 0, 0, 129, 0, - 0, 0, 0, 132, 0, 85, 327, 0, 135, 0, - 723, 89, 90, 91, 0, 0, 92, 93, 94, 95, - 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, - 106, 107, 108, 109, 110, 111, 112, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 761, 328, 0, - 7, 8, 306, 307, 308, 309, 310, 311, 312, 313, - 314, 315, 316, 317, 318, 319, 0, 0, 0, 0, - 320, 35, 36, 37, 38, 39, 1172, 0, 0, 0, - 43, 0, 0, 46, 494, 15, 16, 495, 18, 19, - 496, 21, 497, 23, 0, 24, 0, 26, 27, 0, - 29, 30, 31, 0, 0, 33, 34, 0, 0, 0, - 0, 0, 119, 120, 121, 122, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 50, - 51, 52, 127, 346, 0, 0, 0, 129, 0, 0, - 1248, 0, 132, 0, 85, 327, 0, 135, 0, 1008, + 0, 0, 7, 8, 85, 287, 0, 0, 0, 0, 89, 90, 91, 0, 0, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, - 107, 108, 109, 110, 111, 112, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 781, 328, 0, 0, - 0, 306, 307, 308, 309, 310, 311, 312, 313, 314, - 315, 316, 317, 318, 319, 0, 0, 0, 0, 320, - 35, 36, 37, 38, 39, 1295, 0, 85, 287, 43, - 0, 0, 46, 89, 90, 91, 0, 0, 92, 93, - 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, - 104, 105, 106, 107, 108, 109, 110, 111, 112, 0, - 0, 119, 120, 121, 122, 306, 307, 308, 309, 310, + 107, 108, 109, 110, 111, 112, 494, 15, 16, 495, + 18, 19, 496, 21, 497, 23, 0, 24, 0, 26, + 27, 0, 29, 30, 31, 0, 0, 33, 34, 306, + 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, + 317, 318, 319, 119, 120, 121, 122, 320, 0, 0, + 0, 50, 51, 52, 1193, 0, 1194, 0, 0, 0, + 0, 0, 0, 127, 128, 0, 0, 0, 129, 0, + 0, 0, 0, 132, 0, 0, 701, 0, 135, 0, + 702, 119, 120, 121, 122, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, - 0, 384, 1096, 320, 0, 0, 129, 0, 0, 0, - 0, 386, 0, 85, 287, 237, 135, 0, 186, 89, + 0, 384, 385, 320, 0, 0, 129, 0, 0, 0, + 0, 386, 726, 85, 327, 0, 135, 0, 186, 89, 90, 91, 0, 0, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, - 108, 109, 110, 111, 112, 0, 113, 114, 115, 116, - 0, 0, 117, 0, 119, 120, 121, 122, 7, 8, - 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, - 316, 317, 318, 319, 127, 128, 0, 0, 320, 129, - 0, 0, 0, 0, 132, 0, 0, 292, 0, 135, - 0, 293, 494, 15, 16, 495, 18, 19, 496, 21, - 497, 23, 0, 24, 0, 26, 27, 0, 29, 30, - 31, 0, 0, 33, 34, 0, 0, 0, 0, 0, - 119, 120, 121, 122, 0, 0, 0, 0, 0, 0, - 0, 0, 600, 0, 0, 0, 0, 50, 51, 52, - 127, 128, 0, 0, 0, 129, 0, 0, 0, 0, - 132, 0, 85, 287, 0, 135, 0, 1110, 89, 90, - 91, 0, 0, 92, 93, 94, 95, 96, 97, 98, - 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 0, 0, 0, 0, 7, 8, - 85, 287, 0, 0, 1242, 0, 89, 90, 91, 0, - 0, 92, 93, 94, 95, 96, 97, 98, 99, 100, - 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, - 111, 112, 494, 15, 16, 495, 18, 19, 496, 21, - 497, 23, 0, 24, 0, 26, 27, 0, 29, 30, - 31, 0, 0, 33, 34, 306, 307, 308, 309, 310, - 311, 312, 313, 314, 315, 316, 317, 318, 319, 119, - 120, 121, 122, 320, 0, 0, 0, 50, 51, 52, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 127, - 128, 0, 0, 0, 129, 0, 0, 0, 0, 132, - 0, 0, 701, 0, 135, 0, 702, 119, 120, 121, - 122, 306, 307, 308, 309, 310, 311, 312, 313, 314, - 315, 316, 317, 318, 319, 0, 0, 384, 385, 320, - 0, 482, 129, 0, 1297, 0, 564, 386, 694, 85, - 327, 0, 135, 0, 186, 89, 90, 91, 0, 0, - 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, - 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, - 112, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 328, 0, 306, 307, 308, 309, 310, 311, + 108, 109, 110, 111, 112, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 328, 306, 307, 308, + 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, + 319, 0, 0, 0, 0, 320, 0, 0, 0, 35, + 36, 37, 38, 39, 764, 0, 85, 287, 43, 0, + 0, 46, 89, 90, 91, 0, 0, 92, 93, 94, + 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, + 105, 106, 107, 108, 109, 110, 111, 112, 0, 0, + 119, 120, 121, 122, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, - 0, 0, 320, 0, 0, 35, 36, 37, 38, 39, - 841, 726, 85, 287, 43, 0, 0, 46, 89, 90, - 91, 0, 0, 92, 93, 94, 95, 96, 97, 98, - 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 905, 0, 119, 120, 121, 122, - 0, 306, 307, 308, 309, 310, 311, 312, 313, 314, - 315, 316, 317, 318, 319, 0, 127, 329, 0, 320, - 0, 129, 85, 287, 237, 0, 132, 0, 89, 90, - 91, 135, 0, 92, 93, 94, 95, 96, 97, 98, - 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 0, 113, 114, 115, 116, 0, - 0, 117, 0, 0, 0, 0, 0, 0, 0, 119, - 120, 121, 122, 306, 307, 308, 309, 310, 311, 312, - 313, 314, 315, 316, 317, 318, 319, 0, 0, 127, - 128, 320, 0, 0, 129, 0, 0, 0, 0, 132, - 0, 0, 0, 0, 135, 0, 0, 306, 307, 308, + 127, 329, 320, 0, 0, 129, 85, 287, 237, 0, + 132, 795, 89, 90, 91, 135, 0, 92, 93, 94, + 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, + 105, 106, 107, 108, 109, 110, 111, 112, 0, 113, + 114, 115, 116, 0, 0, 117, 0, 0, 0, 0, + 0, 0, 0, 119, 120, 121, 122, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, - 319, 0, -4, 1, 0, 320, -4, 0, 0, 119, - 120, 121, 122, 0, -4, -4, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 127, - 128, 0, 0, 0, 129, 0, 0, -4, 0, 132, - 0, 0, -4, -4, 135, -4, -4, 0, -4, -4, - -4, -4, -4, -4, -4, -4, -4, -4, 0, -4, - -4, -4, -4, -4, -4, -4, -4, 0, -4, -4, - -4, -4, -4, -4, -4, -4, -4, 0, -4, -4, - -4, -4, -4, -4, 0, 0, -4, -4, 6, 0, - 0, 0, -4, -4, -4, -4, 7, 8, -4, 0, + 319, 0, 0, 127, 128, 320, 0, 0, 129, 0, + 0, 0, 0, 132, 840, 0, 0, 0, 135, 0, + 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, + 316, 317, 318, 319, 0, 0, -4, 1, 320, 0, + -4, 0, 0, 119, 120, 121, 122, 878, -4, -4, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 127, 128, 0, 0, 0, 129, 0, + 0, -4, 0, 132, 0, 0, -4, -4, 135, -4, -4, 0, -4, -4, -4, -4, -4, -4, -4, -4, - -4, -4, 0, 0, 0, 0, -4, -4, -4, 9, - 0, 0, 0, 0, 10, 11, 0, 12, 13, 0, - 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, - 0, 24, 25, 26, 27, 28, 29, 30, 31, 0, - 32, 33, 34, 35, 36, 37, 38, 39, 40, 0, - 41, 42, 43, 44, 45, 46, 0, 0, 47, 48, - 0, 0, 0, 0, 49, 50, 51, 52, 0, 0, - 53, 0, 54, 0, 55, 56, 57, 58, 59, 60, - 61, 62, 63, 64, 0, 0, 0, 0, 65, 66, - 67, 306, 307, 308, 309, 310, 311, 312, 313, 314, - 315, 316, 317, 318, 319, 0, 0, 0, 0, 320, - 0, 0, 0, 0, 0, 0, 1078, 0, 1079, 306, - 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, - 317, 318, 319, 0, 0, 0, 0, 320, 0, 0, - 0, 0, 0, 0, 1105, 0, 1106, 306, 307, 308, - 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, - 319, 0, 0, 0, 0, 320, 0, 0, 0, 0, - 0, 0, 1195, 0, 1196, 306, 307, 308, 309, 310, + -4, -4, 0, -4, -4, -4, -4, -4, -4, -4, + -4, 0, -4, -4, -4, -4, -4, -4, -4, -4, + -4, 0, -4, -4, -4, -4, -4, -4, 0, 0, + -4, -4, 6, 0, 0, 0, -4, -4, -4, -4, + 7, 8, -4, 0, -4, 0, -4, -4, -4, -4, + -4, -4, -4, -4, -4, -4, 0, 0, 0, 0, + -4, -4, -4, 9, 0, 0, 0, 0, 10, 11, + 0, 12, 13, 0, 14, 15, 16, 17, 18, 19, + 20, 21, 22, 23, 0, 24, 25, 26, 27, 28, + 29, 30, 31, 0, 32, 33, 34, 35, 36, 37, + 38, 39, 40, 0, 41, 42, 43, 44, 45, 46, + 0, 0, 47, 48, 0, 0, 0, 0, 49, 50, + 51, 52, 0, 0, 53, 0, 54, 0, 55, 56, + 57, 58, 59, 60, 61, 62, 63, 64, 0, 0, + 0, 0, 65, 66, 67, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, 0, 320, 0, 0, 0, 0, 0, 0, - 0, 0, 764, 306, 307, 308, 309, 310, 311, 312, + 0, 0, 1076, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, 0, 320, 0, 0, 0, 0, 0, 0, 0, 0, - 795, 306, 307, 308, 309, 310, 311, 312, 313, 314, + 1093, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, 0, 320, - 0, 0, 0, 0, 0, 0, 0, 0, 840, 306, + 0, 0, 0, 0, 0, 0, 0, 0, 1132, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, 0, 320, 0, 0, - 0, 0, 0, 0, 0, 0, 878, 306, 307, 308, + 0, 0, 0, 0, 0, 0, 1133, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, 0, 320, 0, 0, 0, 0, - 0, 0, 0, 0, 1076, 306, 307, 308, 309, 310, + 0, 0, 0, 0, 1134, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, 0, 320, 0, 0, 0, 0, 0, 0, - 0, 0, 1093, 306, 307, 308, 309, 310, 311, 312, + 0, 0, 1135, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, 0, 320, 0, 0, 0, 0, 0, 0, 0, 0, - 1132, 306, 307, 308, 309, 310, 311, 312, 313, 314, + 1166, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, 0, 320, - 0, 0, 0, 0, 0, 0, 0, 0, 1133, 306, + 0, 0, 0, 0, 0, 0, 0, 0, 1208, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, 0, 320, 0, 0, - 0, 0, 0, 0, 0, 0, 1134, 306, 307, 308, + 0, 0, 0, 0, 0, 0, 1213, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, 0, 320, 0, 0, 0, 0, - 0, 0, 0, 0, 1135, 306, 307, 308, 309, 310, + 0, 0, 0, 0, 1214, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, 0, 320, 0, 0, 0, 0, 0, 0, - 0, 0, 1167, 306, 307, 308, 309, 310, 311, 312, + 0, 0, 1228, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, 0, 320, 0, 0, 0, 0, 0, 0, 0, 0, - 1210, 306, 307, 308, 309, 310, 311, 312, 313, 314, + 1231, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, 0, 320, - 0, 0, 0, 0, 0, 0, 0, 0, 1215, 306, + 0, 0, 0, 0, 0, 0, 0, 0, 1234, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, 0, 320, 0, 0, - 0, 0, 0, 0, 0, 0, 1216, 306, 307, 308, + 0, 0, 0, 0, 0, 0, 1256, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, 0, 320, 0, 0, 0, 0, - 0, 0, 0, 0, 1230, 306, 307, 308, 309, 310, + 0, 0, 0, 0, 1259, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, 0, 320, 0, 0, 0, 0, 0, 0, - 0, 0, 1233, 306, 307, 308, 309, 310, 311, 312, + 0, 0, 1287, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, 0, 320, 0, 0, 0, 0, 0, 0, 0, 0, - 1236, 306, 307, 308, 309, 310, 311, 312, 313, 314, + 1289, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, 0, 320, - 0, 0, 0, 0, 0, 0, 0, 0, 1258, 306, + 0, 0, 0, 0, 0, 0, 0, 0, 1291, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, 0, 320, 0, 0, - 0, 0, 0, 0, 0, 0, 1261, 306, 307, 308, + 0, 0, 0, 0, 0, 0, 1304, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, - 319, 0, 0, 0, 0, 320, 0, 0, 0, 0, - 0, 0, 0, 0, 1289, 306, 307, 308, 309, 310, - 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, - 0, 0, 0, 320, 0, 0, 0, 0, 0, 0, - 0, 0, 1291, 306, 307, 308, 309, 310, 311, 312, + 319, 0, 0, 0, 0, 320, 0, 482, 0, 0, + 0, 0, 564, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, - 0, 320, 0, 0, 0, 0, 0, 0, 0, 0, - 1293, 306, 307, 308, 309, 310, 311, 312, 313, 314, - 315, 316, 317, 318, 319, 0, 0, 0, 0, 320, - 0, 0, 0, 0, 0, 0, 0, 0, 1306, 306, + 0, 320, 0, 0, 0, 0, 0, 0, 518, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, 0, 320, 0, 0, - 0, 0, 0, 0, 518, 306, 307, 308, 309, 310, + 0, 0, 0, 0, 564, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, 0, 320, 0, 0, 0, 0, 0, 0, - 564, 306, 307, 308, 309, 310, 311, 312, 313, 314, + 565, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, 0, 320, - 0, 0, 0, 0, 0, 0, 565, 306, 307, 308, + 0, 0, 0, 0, 0, 0, 597, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, 0, 320, 0, 0, 0, 0, - 0, 0, 597, 306, 307, 308, 309, 310, 311, 312, + 0, 0, 647, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, - 0, 320, 0, 0, 0, 0, 0, 0, 647, 306, + 0, 320, 0, 0, 0, 0, 0, 0, 648, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, 0, 320, 0, 0, - 0, 0, 0, 0, 648, 306, 307, 308, 309, 310, + 0, 0, 0, 0, 661, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, 0, 320, 0, 0, 0, 0, 0, 0, - 661, 306, 307, 308, 309, 310, 311, 312, 313, 314, + 662, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, 0, 320, - 0, 0, 0, 0, 0, 0, 662, 306, 307, 308, + 0, 0, 0, 0, 0, 0, 663, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, 0, 320, 0, 0, 0, 0, - 0, 0, 663, 306, 307, 308, 309, 310, 311, 312, + 0, 0, 664, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, - 0, 320, 0, 0, 0, 0, 0, 0, 664, 306, + 0, 320, 0, 0, 0, 0, 0, 0, 665, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, 0, 320, 0, 0, - 0, 0, 0, 0, 665, 306, 307, 308, 309, 310, + 0, 0, 0, 0, 666, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, 0, 320, 0, 0, 0, 0, 0, 0, - 666, 306, 307, 308, 309, 310, 311, 312, 313, 314, + 752, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, 0, 320, - 0, 0, 0, 0, 0, 0, 752, 306, 307, 308, + 0, 0, 0, 0, 0, 0, 753, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, 0, 320, 0, 0, 0, 0, - 0, 0, 753, 306, 307, 308, 309, 310, 311, 312, + 0, 0, 754, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, - 0, 320, 0, 0, 0, 0, 0, 0, 754, 306, + 0, 320, 0, 0, 0, 0, 0, 0, 837, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, 0, 320, 0, 0, - 0, 0, 0, 0, 837, 306, 307, 308, 309, 310, + 0, 0, 0, 0, 876, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, 0, 320, 0, 0, 0, 0, 0, 0, - 876, 306, 307, 308, 309, 310, 311, 312, 313, 314, + 877, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, 0, 320, - 0, 0, 0, 0, 0, 0, 877, 306, 307, 308, + 0, 0, 0, 0, 0, 0, 904, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, 0, 320, 0, 0, 0, 0, - 0, 0, 904, 306, 307, 308, 309, 310, 311, 312, + 0, 0, 1027, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, - 0, 320, 0, 0, 0, 0, 0, 0, 1027, 306, + 0, 320, 0, 0, 0, 0, 0, 0, 1028, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, 0, 320, 0, 0, - 0, 0, 0, 0, 1028, 306, 307, 308, 309, 310, + 0, 0, 0, 0, 1047, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, 0, 320, 0, 0, 0, 0, 0, 0, - 1047, 306, 307, 308, 309, 310, 311, 312, 313, 314, + 1177, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, 0, 320, 0, 0, 0, 0, 0, 0, 1178, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, 0, 320, 0, 0, 0, 0, - 0, 0, 1179, 306, 307, 308, 309, 310, 311, 312, + 0, 0, 1184, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, - 0, 320, 0, 0, 0, 0, 0, 0, 1185, 306, + 0, 320, 0, 0, 0, 0, 0, 0, 1252, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, 0, 320, 0, 0, - 0, 0, 0, 0, 1254, 306, 307, 308, 309, 310, + 0, 0, 0, 0, 1255, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, - 0, 0, 0, 320, 0, 0, 0, 0, 0, 0, - 1257, 306, 307, 308, 309, 310, 311, 312, 313, 314, + 0, 0, 0, 320, 0, 0, 0, 486, 306, 307, + 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, + 318, 319, 0, 0, 0, 0, 320, 0, 0, 0, + 602, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, 0, 320, - 0, 0, 0, 486, 306, 307, 308, 309, 310, 311, + 0, 0, 0, 611, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, - 0, 0, 320, 0, 0, 0, 602, 306, 307, 308, + 0, 0, 320, 0, 0, 0, 626, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, - 319, 0, 0, 0, 0, 320, 0, 0, 0, 611, + 319, 0, 0, 0, 0, 320, 0, 0, 0, 628, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, 0, 320, 0, - 0, 0, 626, 306, 307, 308, 309, 310, 311, 312, + 0, 0, 630, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, - 0, 320, 0, 0, 0, 628, 306, 307, 308, 309, + 0, 320, 0, 0, 0, 632, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, - 0, 0, 0, 0, 320, 0, 0, 0, 630, 306, + 0, 0, 0, 0, 320, 0, 0, 0, 634, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, 0, 320, 0, 0, - 0, 632, 306, 307, 308, 309, 310, 311, 312, 313, + 0, 636, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, 0, - 320, 0, 0, 0, 634, 306, 307, 308, 309, 310, + 320, 0, 0, 0, 638, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, - 0, 0, 0, 320, 0, 0, 0, 636, 306, 307, + 0, 0, 0, 320, 0, 0, 0, 640, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, 0, 320, 0, 0, 0, - 638, 306, 307, 308, 309, 310, 311, 312, 313, 314, + 642, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, 0, 320, - 0, 0, 0, 640, 306, 307, 308, 309, 310, 311, + 0, 0, 0, 644, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, - 0, 0, 320, 0, 0, 0, 642, 306, 307, 308, + 0, 0, 320, 0, 0, 0, 646, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, - 319, 0, 0, 0, 0, 320, 0, 0, 0, 644, + 319, 0, 0, 0, 0, 320, 0, 0, 0, 650, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, 0, 320, 0, - 0, 0, 646, 306, 307, 308, 309, 310, 311, 312, + 0, 0, 652, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, - 0, 320, 0, 0, 0, 650, 306, 307, 308, 309, + 0, 320, 0, 0, 0, 654, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, - 0, 0, 0, 0, 320, 0, 0, 0, 652, 306, + 0, 0, 0, 0, 320, 0, 0, 0, 656, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, 0, 320, 0, 0, - 0, 654, 306, 307, 308, 309, 310, 311, 312, 313, + 0, 658, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, 0, - 320, 0, 0, 0, 656, 306, 307, 308, 309, 310, + 320, 0, 0, 0, 660, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, - 0, 0, 0, 320, 0, 0, 0, 658, 306, 307, + 0, 0, 0, 320, 0, 0, 0, 771, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, 0, 320, 0, 0, 0, - 660, 306, 307, 308, 309, 310, 311, 312, 313, 314, + 772, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, 0, 320, - 0, 0, 0, 771, 306, 307, 308, 309, 310, 311, + 0, 0, 0, 774, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, - 0, 0, 320, 0, 0, 0, 772, 306, 307, 308, + 0, 0, 320, 0, 0, 0, 775, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, - 319, 0, 0, 0, 0, 320, 0, 0, 0, 774, + 319, 0, 0, 0, 0, 320, 0, 0, 0, 791, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, 0, 320, 0, - 0, 0, 775, 306, 307, 308, 309, 310, 311, 312, + 0, 0, 813, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, - 0, 320, 0, 0, 0, 791, 306, 307, 308, 309, + 0, 320, 0, 0, 0, 911, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, - 0, 0, 0, 0, 320, 0, 0, 0, 813, 306, + 0, 0, 0, 0, 320, 0, 0, 0, 924, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, 0, 320, 0, 0, - 0, 911, 306, 307, 308, 309, 310, 311, 312, 313, + 0, 926, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, 0, - 320, 0, 0, 0, 924, 306, 307, 308, 309, 310, + 320, 0, 0, 0, 928, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, - 0, 0, 0, 320, 0, 0, 0, 926, 306, 307, + 0, 0, 0, 320, 0, 0, 0, 930, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, 0, 320, 0, 0, 0, - 928, 306, 307, 308, 309, 310, 311, 312, 313, 314, + 1040, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, 0, 320, - 0, 0, 0, 930, 306, 307, 308, 309, 310, 311, + 0, 482, 306, 307, 308, 309, 310, 311, 312, 313, + 314, 315, 316, 317, 318, 319, 0, 0, 0, 0, + 320, 0, 519, 306, 307, 308, 309, 310, 311, 312, + 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, + 0, 320, 0, 528, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, - 0, 0, 320, 0, 0, 0, 1040, 306, 307, 308, + 0, 0, 320, 0, 529, 306, 307, 308, 309, 310, + 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, + 0, 0, 0, 320, 0, 531, 306, 307, 308, 309, + 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, + 0, 0, 0, 0, 320, 0, 533, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, - 319, 0, 0, 0, 0, 320, 0, 482, 306, 307, + 319, 0, 0, 0, 0, 320, 0, 534, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, - 318, 319, 0, 0, 0, 0, 320, 0, 519, 306, + 318, 319, 0, 0, 0, 0, 320, 0, 537, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, - 317, 318, 319, 0, 0, 0, 0, 320, 0, 528, + 317, 318, 319, 0, 0, 0, 0, 320, 0, 538, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, 0, 320, 0, - 529, 306, 307, 308, 309, 310, 311, 312, 313, 314, + 593, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, 0, 320, - 0, 531, 306, 307, 308, 309, 310, 311, 312, 313, + 0, 594, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, 0, - 320, 0, 533, 306, 307, 308, 309, 310, 311, 312, + 320, 0, 595, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, - 0, 320, 0, 534, 306, 307, 308, 309, 310, 311, + 0, 320, 0, 601, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, - 0, 0, 320, 0, 537, 306, 307, 308, 309, 310, + 0, 0, 320, 0, 625, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, - 0, 0, 0, 320, 0, 538, 306, 307, 308, 309, + 0, 0, 0, 320, 0, 627, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, - 0, 0, 0, 0, 320, 0, 593, 306, 307, 308, + 0, 0, 0, 0, 320, 0, 629, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, - 319, 0, 0, 0, 0, 320, 0, 594, 306, 307, + 319, 0, 0, 0, 0, 320, 0, 631, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, - 318, 319, 0, 0, 0, 0, 320, 0, 595, 306, + 318, 319, 0, 0, 0, 0, 320, 0, 633, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, - 317, 318, 319, 0, 0, 0, 0, 320, 0, 601, + 317, 318, 319, 0, 0, 0, 0, 320, 0, 635, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, 0, 320, 0, - 625, 306, 307, 308, 309, 310, 311, 312, 313, 314, + 637, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, 0, 320, - 0, 627, 306, 307, 308, 309, 310, 311, 312, 313, + 0, 639, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, 0, - 320, 0, 629, 306, 307, 308, 309, 310, 311, 312, + 320, 0, 641, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, - 0, 320, 0, 631, 306, 307, 308, 309, 310, 311, + 0, 320, 0, 643, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, - 0, 0, 320, 0, 633, 306, 307, 308, 309, 310, + 0, 0, 320, 0, 645, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, - 0, 0, 0, 320, 0, 635, 306, 307, 308, 309, + 0, 0, 0, 320, 0, 649, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, - 0, 0, 0, 0, 320, 0, 637, 306, 307, 308, + 0, 0, 0, 0, 320, 0, 651, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, - 319, 0, 0, 0, 0, 320, 0, 639, 306, 307, + 319, 0, 0, 0, 0, 320, 0, 653, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, - 318, 319, 0, 0, 0, 0, 320, 0, 641, 306, + 318, 319, 0, 0, 0, 0, 320, 0, 655, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, - 317, 318, 319, 0, 0, 0, 0, 320, 0, 643, + 317, 318, 319, 0, 0, 0, 0, 320, 0, 657, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, 0, 320, 0, - 645, 306, 307, 308, 309, 310, 311, 312, 313, 314, + 659, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, 0, 320, - 0, 649, 306, 307, 308, 309, 310, 311, 312, 313, + 0, 712, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, 0, - 320, 0, 651, 306, 307, 308, 309, 310, 311, 312, + 320, 0, 717, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, - 0, 320, 0, 653, 306, 307, 308, 309, 310, 311, + 0, 320, 0, 725, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, - 0, 0, 320, 0, 655, 306, 307, 308, 309, 310, + 0, 0, 320, 0, 727, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, - 0, 0, 0, 320, 0, 657, 306, 307, 308, 309, + 0, 0, 0, 320, 0, 728, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, - 0, 0, 0, 0, 320, 0, 659, 306, 307, 308, + 0, 0, 0, 0, 320, 0, 734, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, - 319, 0, 0, 0, 0, 320, 0, 712, 306, 307, + 319, 0, 0, 0, 0, 320, 0, 741, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, - 318, 319, 0, 0, 0, 0, 320, 0, 717, 306, + 318, 319, 0, 0, 0, 0, 320, 0, 742, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, - 317, 318, 319, 0, 0, 0, 0, 320, 0, 725, + 317, 318, 319, 0, 0, 0, 0, 320, 0, 743, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, 0, 320, 0, - 727, 306, 307, 308, 309, 310, 311, 312, 313, 314, + 763, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, 0, 320, - 0, 728, 306, 307, 308, 309, 310, 311, 312, 313, + 0, 765, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, 0, - 320, 0, 734, 306, 307, 308, 309, 310, 311, 312, + 320, 0, 766, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, - 0, 320, 0, 741, 306, 307, 308, 309, 310, 311, + 0, 320, 0, 770, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, - 0, 0, 320, 0, 742, 306, 307, 308, 309, 310, + 0, 0, 320, 0, 923, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, - 0, 0, 0, 320, 0, 743, 306, 307, 308, 309, + 0, 0, 0, 320, 0, 925, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, - 0, 0, 0, 0, 320, 0, 763, 306, 307, 308, + 0, 0, 0, 0, 320, 0, 927, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, - 319, 0, 0, 0, 0, 320, 0, 765, 306, 307, + 319, 0, 0, 0, 0, 320, 0, 929, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, - 318, 319, 0, 0, 0, 0, 320, 0, 766, 306, + 318, 319, 0, 0, 0, 0, 320, 0, 933, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, - 317, 318, 319, 0, 0, 0, 0, 320, 0, 770, + 317, 318, 319, 0, 0, 0, 0, 320, 0, 1077, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, 0, 320, 0, - 923, 306, 307, 308, 309, 310, 311, 312, 313, 314, + 1092, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, 0, 320, - 0, 925, 306, 307, 308, 309, 310, 311, 312, 313, + 0, 1109, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, 0, - 320, 0, 927, 306, 307, 308, 309, 310, 311, 312, + 320, 0, 1251, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, - 0, 320, 0, 929, 306, 307, 308, 309, 310, 311, + 0, 320, 0, 1302, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, - 0, 0, 320, 0, 933, 306, 307, 308, 309, 310, - 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, - 0, 0, 0, 320, 0, 1077, 306, 307, 308, 309, - 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, - 0, 0, 0, 0, 320, 0, 1092, 306, 307, 308, - 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, - 319, 0, 0, 0, 0, 320, 0, 1109, 306, 307, - 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, - 318, 319, 0, 0, 0, 0, 320, 0, 1253, 306, - 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, - 317, 318, 319, 0, 0, 0, 0, 320, 0, 1304, - 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, - 316, 317, 318, 319, 0, 0, 0, 0, 320 + 0, 0, 320 }; static const yytype_int16 yycheck[] = { - 6, 194, 230, 6, 378, 379, 3, 1121, 6, 4, - 4, 204, 6, 6, 4, 6, 36, 37, 4, 39, - 4, 687, 4, 4, 75, 5, 4, 6, 75, 1143, - 295, 5, 225, 76, 227, 6, 4, 76, 7, 82, - 83, 169, 170, 82, 83, 6, 75, 75, 758, 0, - 4, 5, 76, 281, 282, 283, 284, 13, 82, 83, - 6, 6, 76, 4, 7, 6, 137, 138, 82, 83, - 5, 199, 151, 144, 4, 141, 140, 156, 142, 140, - 146, 160, 36, 37, 38, 39, 147, 7, 42, 140, - 140, 86, 87, 88, 89, 88, 147, 147, 140, 140, - 147, 36, 37, 38, 39, 148, 147, 42, 140, 148, - 142, 140, 96, 97, 104, 96, 97, 7, 147, 147, - 50, 127, 128, 129, 148, 49, 132, 133, 52, 59, - 54, 137, 130, 131, 148, 762, 127, 143, 49, 136, - 146, 52, 1256, 54, 150, 151, 152, 153, 142, 155, - 156, 157, 158, 148, 160, 161, 162, 147, 824, 137, - 138, 147, 182, 183, 142, 147, 144, 147, 147, 52, - 190, 149, 140, 147, 194, 144, 147, 120, 888, 185, - 186, 127, 140, 137, 138, 7, 130, 131, 194, 147, - 144, 554, 555, 556, 6, 7, 389, 117, 118, 119, - 120, 140, 146, 142, 148, 211, 212, 213, 7, 215, - 1324, 151, 218, 219, 293, 221, 156, 137, 138, 412, - 160, 486, 137, 138, 144, 76, 232, 117, 118, 119, - 120, 82, 83, 239, 240, 241, 242, 243, 244, 245, + 6, 194, 230, 295, 378, 379, 3, 6, 1121, 4, + 6, 204, 6, 4, 75, 4, 36, 37, 6, 39, + 687, 6, 4, 4, 4, 6, 4, 6, 0, 75, + 1143, 5, 225, 4, 227, 5, 140, 6, 5, 7, + 76, 6, 4, 147, 140, 758, 82, 83, 75, 4, + 5, 147, 75, 281, 282, 283, 284, 76, 140, 7, + 76, 130, 131, 82, 83, 147, 82, 83, 151, 36, + 37, 38, 39, 156, 7, 42, 13, 160, 147, 140, + 140, 36, 37, 38, 39, 6, 147, 42, 169, 170, + 7, 86, 87, 88, 89, 130, 131, 140, 4, 52, + 88, 147, 762, 6, 147, 96, 97, 69, 70, 71, + 72, 146, 148, 140, 6, 104, 78, 56, 199, 81, + 147, 127, 128, 129, 147, 49, 132, 133, 52, 148, + 54, 137, 148, 127, 130, 131, 140, 143, 141, 136, + 146, 1254, 127, 146, 150, 151, 152, 153, 147, 155, + 156, 157, 158, 148, 160, 161, 162, 824, 147, 137, + 138, 142, 182, 183, 142, 147, 144, 147, 52, 140, + 190, 149, 120, 147, 194, 888, 144, 147, 147, 185, + 186, 140, 137, 138, 117, 118, 119, 120, 194, 144, + 96, 97, 49, 140, 486, 52, 389, 54, 130, 131, + 117, 118, 119, 120, 140, 211, 212, 213, 1321, 215, + 293, 76, 218, 219, 146, 221, 148, 82, 83, 412, + 137, 138, 7, 76, 140, 76, 232, 144, 140, 82, + 83, 82, 83, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, - 276, 277, 278, 279, 280, 130, 131, 943, 76, 285, - 146, 141, 148, 76, 82, 83, 146, 293, 6, 82, - 83, 146, 295, 148, 141, 117, 118, 119, 120, 146, + 276, 277, 278, 279, 280, 4, 943, 141, 76, 285, + 130, 131, 146, 148, 82, 83, 76, 293, 8, 141, + 137, 138, 82, 83, 146, 148, 146, 148, 148, 52, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, - 316, 317, 318, 319, 320, 137, 138, 141, 117, 118, - 119, 120, 146, 329, 403, 141, 46, 130, 131, 49, - 146, 337, 52, 8, 6, 4, 342, 140, 137, 138, - 346, 347, 130, 131, 147, 351, 352, 353, 354, 140, - 148, 142, 56, 293, 360, 148, 376, 377, 146, 365, - 366, 367, 76, 140, 384, 76, 140, 76, 82, 83, - 140, 82, 83, 82, 83, 381, 382, 383, 384, 385, - 386, 378, 379, 611, 390, 391, 392, 393, 140, 329, - 396, 130, 131, 399, 400, 140, 140, 403, 404, 405, - 69, 70, 71, 72, 52, 54, 346, 347, 76, 78, - 130, 131, 81, 52, 82, 83, 76, 130, 131, 52, - 140, 427, 82, 83, 430, 76, 429, 147, 140, 76, - 142, 82, 83, 146, 148, 82, 83, 148, 517, 148, - 140, 669, 142, 140, 52, 142, 121, 122, 123, 124, - 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, - 539, 1127, 46, 403, 139, 49, 141, 163, 52, 697, - 54, 49, 168, 169, 170, 481, 130, 131, 140, 140, - 148, 142, 488, 486, 180, 130, 131, 140, 148, 1199, - 147, 147, 1202, 147, 487, 1205, 140, 148, 142, 130, - 131, 148, 147, 199, 200, 52, 4, 5, 52, 130, - 131, 517, 518, 49, 520, 521, 147, 49, 524, 525, - 526, 4, 132, 133, 134, 146, 1153, 148, 1155, 139, - 1157, 4, 228, 539, 140, 4, 542, 543, 36, 37, - 38, 39, 548, 563, 42, 140, 140, 553, 554, 555, - 556, 816, 817, 130, 131, 140, 576, 142, 564, 565, - 553, 554, 555, 556, 570, 140, 1276, 130, 131, 146, - 6, 130, 131, 142, 130, 131, 582, 517, 584, 130, - 131, 130, 131, 146, 4, 525, 526, 146, 4, 668, - 146, 597, 147, 599, 600, 146, 4, 146, 1308, 539, - 606, 1311, 542, 140, 1314, 142, 140, 1317, 611, 130, - 131, 690, 691, 692, 693, 140, 1243, 991, 130, 131, - 140, 6, 142, 702, 140, 146, 142, 130, 131, 1339, - 140, 1341, 142, 1343, 146, 130, 131, 130, 131, 147, - 140, 647, 648, 146, 723, 146, 140, 148, 130, 131, - 140, 146, 142, 146, 140, 661, 662, 663, 664, 665, - 666, 1288, 668, 1290, 146, 1292, 140, 673, 142, 140, - 140, 1298, 142, 7, 680, 130, 131, 130, 131, 140, - 700, 8, 130, 131, 690, 691, 692, 693, 694, 6, - 140, 146, 142, 146, 6, 140, 702, 142, 146, 140, - 1327, 142, 1329, 6, 1331, 123, 124, 125, 126, 127, - 128, 129, 130, 131, 132, 133, 134, 723, 5, 130, - 131, 139, 147, 951, 8, 140, 140, 142, 668, 146, - 140, 148, 752, 753, 754, 146, 121, 122, 123, 124, + 316, 317, 318, 319, 320, 52, 295, 137, 138, 76, + 403, 50, 52, 329, 144, 82, 83, 7, 130, 131, + 59, 337, 117, 118, 119, 120, 342, 141, 130, 131, + 346, 347, 146, 54, 146, 351, 352, 353, 354, 4, + 148, 6, 137, 138, 360, 147, 376, 377, 148, 365, + 366, 367, 140, 76, 384, 49, 132, 133, 134, 82, + 83, 130, 131, 139, 147, 381, 382, 383, 384, 385, + 386, 378, 379, 611, 390, 391, 392, 393, 147, 76, + 396, 148, 140, 399, 400, 82, 83, 403, 404, 405, + 147, 121, 122, 123, 124, 125, 126, 127, 128, 129, + 130, 131, 132, 133, 134, 141, 76, 6, 7, 139, + 146, 427, 82, 83, 430, 76, 130, 131, 148, 130, + 131, 82, 83, 52, 517, 148, 140, 117, 118, 119, + 120, 669, 151, 147, 49, 4, 5, 156, 52, 49, + 429, 160, 130, 131, 4, 4, 539, 137, 138, 76, + 1127, 46, 4, 140, 49, 82, 83, 52, 146, 697, + 148, 140, 140, 130, 131, 481, 140, 36, 37, 38, + 39, 142, 488, 42, 1197, 130, 131, 1200, 148, 146, + 1203, 140, 1152, 142, 1154, 6, 1156, 148, 140, 487, + 142, 146, 554, 555, 556, 130, 131, 486, 140, 4, + 142, 517, 518, 4, 520, 521, 130, 131, 524, 525, + 526, 146, 130, 131, 816, 817, 147, 140, 130, 131, + 140, 148, 146, 539, 140, 147, 542, 543, 146, 140, + 4, 142, 548, 563, 146, 130, 131, 553, 554, 555, + 556, 7, 140, 130, 131, 140, 576, 140, 564, 565, + 140, 1274, 147, 6, 570, 553, 554, 555, 556, 146, + 130, 131, 130, 131, 130, 131, 582, 140, 584, 142, + 146, 1241, 148, 140, 293, 668, 146, 140, 146, 142, + 146, 597, 1305, 599, 600, 1308, 130, 131, 1311, 6, + 606, 1314, 130, 131, 6, 130, 131, 690, 691, 692, + 693, 5, 146, 130, 131, 130, 131, 991, 146, 702, + 329, 146, 140, 1336, 142, 1338, 1286, 1340, 1288, 146, + 1290, 146, 611, 130, 131, 8, 1296, 346, 347, 140, + 723, 647, 648, 130, 131, 132, 133, 134, 140, 146, + 142, 140, 139, 142, 140, 661, 662, 663, 664, 665, + 666, 140, 668, 8, 1324, 147, 1326, 673, 1328, 140, + 140, 137, 138, 140, 680, 142, 142, 140, 144, 142, + 700, 147, 140, 149, 690, 691, 692, 693, 694, 140, + 140, 142, 142, 140, 403, 142, 702, 124, 125, 126, + 127, 128, 129, 130, 131, 132, 133, 134, 163, 140, + 140, 142, 139, 168, 169, 170, 140, 723, 142, 137, + 138, 140, 4, 951, 142, 180, 144, 140, 140, 142, + 142, 149, 752, 753, 754, 46, 140, 140, 49, 142, + 140, 52, 142, 54, 199, 200, 5, 140, 121, 122, + 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, + 133, 134, 140, 146, 142, 148, 139, 146, 142, 148, + 144, 147, 147, 228, 1148, 148, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, - 690, 691, 692, 693, 139, 142, 146, 144, 148, 52, - 140, 54, 702, 124, 125, 126, 127, 128, 129, 130, - 131, 132, 133, 134, 146, 1149, 148, 146, 139, 148, - 146, 140, 148, 723, 146, 140, 148, 483, 484, 140, - 140, 797, 798, 140, 121, 122, 123, 124, 125, 126, - 127, 128, 129, 130, 131, 132, 133, 134, 140, 146, - 813, 148, 139, 4, 817, 894, 5, 137, 138, 825, - 142, 148, 142, 146, 144, 148, 147, 147, 146, 149, - 148, 837, 146, 140, 148, 841, 147, 121, 122, 123, - 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, - 134, 137, 138, 549, 6, 139, 142, 146, 144, 148, - 140, 140, 147, 149, 148, 147, 562, 887, 6, 875, - 876, 877, 146, 146, 148, 148, 144, 883, 884, 142, - 146, 887, 148, 142, 12, 13, 147, 99, 894, 126, + 147, 797, 798, 146, 139, 148, 141, 146, 146, 148, + 148, 52, 146, 54, 148, 12, 13, 146, 517, 148, + 146, 894, 148, 146, 140, 148, 525, 526, 146, 825, + 148, 146, 146, 148, 148, 146, 146, 148, 148, 142, + 539, 837, 140, 542, 813, 841, 6, 147, 817, 46, + 47, 48, 49, 50, 51, 52, 53, 54, 55, 146, + 57, 148, 59, 60, 142, 62, 63, 64, 6, 144, + 67, 68, 146, 146, 148, 148, 146, 887, 148, 875, + 876, 877, 146, 146, 148, 148, 147, 883, 884, 142, + 146, 887, 148, 99, 91, 92, 93, 6, 894, 126, 127, 128, 129, 130, 131, 132, 133, 134, 904, 905, - 906, 146, 139, 148, 130, 131, 132, 133, 134, 605, - 6, 917, 915, 139, 6, 146, 922, 148, 46, 47, - 48, 49, 50, 51, 52, 53, 54, 55, 6, 57, - 936, 59, 60, 142, 62, 63, 64, 957, 4, 67, - 68, 146, 935, 148, 146, 146, 148, 148, 147, 146, - 956, 148, 6, 146, 894, 148, 962, 963, 146, 5, - 148, 967, 139, 91, 92, 93, 144, 7, 1161, 975, - 142, 146, 992, 148, 994, 146, 996, 148, 147, 146, - 986, 148, 146, 148, 148, 1005, 147, 1007, 1008, 146, - 146, 148, 148, 986, 991, 7, 7, 7, 140, 1005, - 140, 140, 1008, 140, 6, 1011, 141, 7, 7, 6, - 146, 96, 146, 1019, 710, 711, 147, 713, 141, 715, - 716, 1027, 1028, 719, 720, 141, 1019, 146, 141, 141, - 6, 1110, 146, 4, 143, 7, 99, 7, 7, 7, - 99, 1047, 7, 7, 99, 7, 7, 4, 6, 144, - 148, 1244, 6, 144, 148, 7, 7, 7, 4, 7, - 7, 140, 6, 140, 147, 1005, 6, 6, 1008, 143, - 6, 6, 1078, 7, 142, 1303, 6, 127, 52, 7, - 776, 777, 778, 6, 8, 1164, 7, 54, 1094, 7, - 1096, 7, 7, 7, 7, 7, 141, 141, 141, 1105, - 141, 1107, 7, 7, 1110, 4, 1334, 146, 1336, 6, - 147, 1117, 140, 7, 6, 147, 1122, 7, 7, 6, - 6, 52, 6, 6, 4, 1353, 4, 4, 148, 147, - 147, 6, 1152, 4, 1154, 140, 1156, 6, 147, 7, - 141, 144, 6, 1163, 6, 1165, 1152, 6, 1154, 845, - 1156, 147, 1149, 59, 147, 851, 1096, 147, 1164, 6, - 147, 6, 1168, 859, 860, 861, 1245, 6, 1247, 865, - 1110, 5, 1178, 1179, 870, 871, 872, 4, 6, 1185, - 143, 7, 7, 7, 7, 1191, 5, 883, 147, 1195, - 6, 147, 147, 889, 6, 95, 892, 121, 122, 123, + 906, 146, 139, 148, 146, 146, 148, 148, 146, 6, + 148, 917, 146, 146, 148, 148, 922, 123, 124, 125, + 126, 127, 128, 129, 130, 131, 132, 133, 134, 146, + 936, 148, 146, 139, 148, 6, 915, 957, 6, 142, + 4, 148, 147, 6, 5, 139, 144, 935, 7, 142, + 956, 147, 7, 148, 7, 147, 962, 963, 7, 668, + 140, 967, 140, 140, 140, 6, 141, 1160, 7, 975, + 7, 6, 992, 146, 994, 96, 996, 141, 147, 146, + 986, 690, 691, 692, 693, 1005, 141, 1007, 1008, 146, + 141, 141, 146, 702, 991, 6, 4, 143, 986, 1005, + 7, 99, 1008, 7, 7, 1011, 7, 99, 7, 7, + 99, 7, 7, 1019, 723, 4, 6, 144, 148, 148, + 6, 1027, 1028, 7, 7, 7, 144, 1110, 483, 484, + 4, 1019, 7, 140, 7, 140, 147, 6, 6, 6, + 143, 1047, 6, 6, 127, 7, 142, 6, 54, 1242, + 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, + 131, 132, 133, 134, 52, 7, 7, 7, 139, 7, + 7, 7, 1078, 1301, 6, 141, 7, 7, 7, 141, + 1163, 141, 7, 141, 4, 6, 140, 6, 1094, 146, + 1096, 147, 7, 7, 549, 7, 147, 6, 6, 1105, + 52, 1107, 6, 1331, 1110, 1333, 6, 562, 4, 4, + 4, 1117, 148, 147, 147, 6, 1122, 4, 6, 140, + 147, 141, 1350, 7, 6, 144, 59, 6, 6, 147, + 147, 1151, 147, 1153, 6, 1155, 6, 147, 6, 5, + 4, 6, 1162, 5, 1164, 1151, 7, 1153, 7, 1155, + 605, 1148, 6, 147, 7, 12, 13, 1163, 7, 6, + 1243, 1167, 1245, 6, 6, 6, 147, 147, 95, 7, + 6, 1177, 1178, 144, 4, 6, 99, 6, 1184, 6, + 6, 6, 143, 6, 1190, 894, 6, 1193, 6, 46, + 47, 48, 49, 50, 51, 52, 53, 54, 55, 6, + 57, 6, 59, 60, 5, 62, 63, 64, 6, 6, + 67, 68, 1218, 6, 6, 1298, 6, 4, 6, 141, + 6, 6, 6, 1229, 6, 1245, 1232, 6, 146, 1235, + 6, 4, 6, 1239, 91, 92, 93, 1243, 6, 1245, + 146, 146, 7, 6, 147, 144, 1252, 6, 5, 1255, + 50, 6, 6, 6, 6, 710, 711, 6, 713, 6, + 715, 716, 147, 6, 719, 720, 6, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, - 134, 6, 144, 7, 1220, 139, 912, 913, 6, 6, - 6, 1300, 4, 6, 1164, 1231, 6, 1247, 1234, 6, - 6, 1237, 6, 6, 6, 1241, 6, 6, 934, 1245, - 5, 1247, 6, 6, 99, 6, 3, 4, 1254, 4, - 6, 1257, 9, 10, 11, 6, 141, 14, 15, 16, - 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, - 27, 28, 29, 30, 31, 32, 33, 34, 6, 6, - 6, 146, 978, 979, 980, 981, 6, 6, 6, 46, - 4, 147, 146, 146, 1300, 6, 6, 5, 7, 6, - 144, 6, 50, 6, 6, 1245, 6, 1247, 6, 6, - 147, 4, 69, 70, 71, 72, 73, 6, 1014, 6, - 6, 78, 7, 6, 81, 147, 94, 148, 6, 147, - 147, 6, 147, 1029, 121, 122, 123, 124, 125, 126, + 134, 148, 6, 6, 147, 139, 7, 147, 94, 147, + 6, 148, 1298, 6, 97, 147, 1005, 147, 6, 1008, + 6, 121, 122, 123, 124, 125, 126, 127, 128, 129, + 130, 131, 132, 133, 134, 6, 6, 6, 6, 139, + 148, 776, 777, 778, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 147, 6, - 97, 6, 139, 110, 111, 112, 113, 6, 6, 6, - 1300, 6, 147, 6, 148, 6, 65, 148, 147, 6, - 148, 6, 147, 130, 131, 6, 6, 4, 135, 836, - 6, 6, 6, 140, 6, 6, 6, 6, 145, 148, - 147, 148, 6, 147, 147, 1091, 6, 147, 147, 6, - 6, 6, 6, 6, 6, 6, 147, 6, 147, 3, - 4, 147, 147, 147, 6, 9, 10, 11, 1114, 1115, + 148, 6, 139, 147, 6, 65, 148, 6, 147, 4, + 6, 147, 6, 6, 3, 4, 6, 148, 6, 6, + 9, 10, 11, 6, 6, 14, 15, 16, 17, 18, + 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, + 29, 30, 31, 32, 33, 34, 6, 1096, 6, 147, + 845, 147, 6, 6, 6, 6, 851, 46, 6, 147, + 6, 1110, 6, 147, 859, 860, 861, 6, 147, 147, + 865, 147, 147, 6, 6, 870, 871, 872, 6, 6, + 69, 70, 71, 72, 73, 6, 6, 6, 883, 78, + 6, 6, 81, 6, 889, 6, 1218, 892, 836, 844, + 3, 3, 1225, 359, -1, 6, 939, -1, -1, -1, + -1, -1, -1, -1, 1163, -1, -1, 912, 913, -1, + -1, 110, 111, 112, 113, 121, 122, 123, 124, 125, + 126, 127, 128, 129, 130, 131, 132, 133, 134, 934, + -1, 130, 131, 139, -1, -1, 135, -1, -1, -1, + -1, 140, -1, -1, -1, -1, 145, -1, 147, 148, + -1, 121, 122, 123, 124, 125, 126, 127, 128, 129, + 130, 131, 132, 133, 134, -1, -1, -1, -1, 139, + -1, -1, -1, 978, 979, 980, 981, -1, -1, -1, + -1, -1, -1, -1, 1243, -1, 1245, -1, -1, -1, + 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, + 131, 132, 133, 134, -1, -1, -1, 6, 139, 1014, + 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, + 131, 132, 133, 134, 1029, -1, -1, -1, 139, 3, + 4, -1, -1, -1, -1, 9, 10, 11, -1, 1298, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, - 34, 6, 6, 6, 6, 6, 6, 6, 6, 6, - 844, 1220, 46, 3, 3, 1227, 1260, 359, 939, -1, - -1, -1, -1, -1, 1160, -1, -1, -1, -1, -1, + 34, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 46, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 1091, -1, -1, -1, -1, -1, -1, -1, -1, 69, 70, 71, 72, 73, - 6, -1, -1, -1, 78, -1, -1, 81, -1, -1, - 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, - 131, 132, 133, 134, -1, -1, -1, -1, 139, -1, - 1206, -1, -1, -1, -1, -1, 110, 111, 112, 113, - 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, - 131, 132, 133, 134, -1, -1, 130, 131, 139, -1, + -1, -1, -1, -1, 78, -1, -1, 81, -1, 1114, + 1115, -1, -1, -1, 6, -1, -1, -1, -1, -1, + -1, -1, 121, 122, 123, 124, 125, 126, 127, 128, + 129, 130, 131, 132, 133, 134, 110, 111, 112, 113, + 139, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 1159, -1, 130, 131, -1, -1, -1, 135, -1, -1, -1, -1, 140, -1, -1, -1, - -1, 145, -1, -1, 148, 3, 4, 5, -1, 7, - -1, 9, 10, 11, -1, -1, 14, 15, 16, 17, - 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 31, 32, 33, 34, -1, 36, 37, - 38, 39, -1, -1, 42, 121, 122, 123, 124, 125, - 126, 127, 128, 129, 130, 131, 132, 133, 134, 8, - 3, 4, 5, 139, -1, -1, 9, 10, 11, -1, + -1, 145, -1, -1, 148, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 3, + 4, 5, -1, 7, -1, 9, 10, 11, -1, 1204, + 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, + 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, + 34, -1, 36, 37, 38, 39, -1, -1, 42, 121, + 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, + 132, 133, 134, 8, 3, 4, 5, 139, -1, -1, + 9, 10, 11, -1, -1, 14, 15, 16, 17, 18, + 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, + 29, 30, 31, 32, 33, 34, -1, -1, -1, -1, + -1, 65, -1, -1, -1, -1, -1, 46, -1, -1, + 104, -1, -1, -1, -1, -1, 110, 111, 112, 113, + -1, -1, -1, 117, 118, 119, 120, -1, -1, -1, + 69, 70, 71, 72, 73, 6, 130, 131, -1, 78, + -1, 135, 81, 137, 138, -1, 140, -1, 142, -1, + 144, 145, -1, 147, -1, -1, -1, 121, 122, 123, + 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, + 134, 110, 111, 112, 113, 139, 121, 122, 123, 124, + 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, + -1, 130, 131, -1, 139, -1, 135, -1, -1, -1, + -1, 140, -1, 3, 4, 5, 145, -1, 147, 9, + 10, 11, -1, -1, 14, 15, 16, 17, 18, 19, + 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, + 30, 31, 32, 33, 34, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 46, -1, 12, 13, + 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, + 131, 132, 133, 134, -1, -1, -1, -1, 139, 69, + 70, 71, 72, 73, 6, -1, -1, -1, 78, -1, + -1, 81, 46, 47, 48, 49, 50, 51, 52, 53, + 54, 55, -1, 57, -1, 59, 60, -1, 62, 63, + 64, -1, -1, 67, 68, -1, -1, -1, -1, -1, + 110, 111, 112, 113, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 91, 92, 93, + 130, 131, -1, -1, -1, 135, -1, -1, -1, -1, + 140, -1, 3, 4, -1, 145, -1, 147, 9, 10, + 11, -1, -1, 14, 15, 16, 17, 18, 19, 20, + 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, + 31, 32, 33, 34, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 148, 46, -1, 12, 13, 121, + 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, + 132, 133, 134, -1, -1, -1, -1, 139, 69, 70, + 71, 72, 73, 6, -1, -1, -1, 78, -1, -1, + 81, 46, 47, 48, 49, 50, 51, 52, 53, 54, + 55, -1, 57, -1, 59, 60, -1, 62, 63, 64, + -1, -1, 67, 68, -1, -1, -1, -1, -1, 110, + 111, 112, 113, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 91, 92, 93, 130, + 131, -1, -1, -1, 135, -1, -1, -1, -1, 140, + -1, 3, 4, -1, 145, -1, 147, 9, 10, 11, + -1, -1, 14, 15, 16, 17, 18, 19, 20, 21, + 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 148, 46, -1, 12, 13, 121, 122, + 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, + 133, 134, -1, -1, -1, -1, 139, 69, 70, 71, + 72, 73, -1, -1, 8, -1, 78, -1, -1, 81, + 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, + -1, 57, -1, 59, 60, -1, 62, 63, 64, -1, + -1, 67, 68, -1, -1, -1, -1, -1, 110, 111, + 112, 113, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 91, 92, 93, 130, 131, + -1, -1, -1, 135, -1, -1, -1, -1, 140, -1, + 3, 4, -1, 145, -1, 147, 9, 10, 11, -1, -1, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, - 33, 34, -1, -1, -1, -1, -1, 65, -1, -1, - -1, -1, -1, 46, -1, -1, 104, -1, -1, -1, - -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, - 118, 119, 120, -1, -1, -1, 69, 70, 71, 72, - 73, 6, 130, 131, -1, 78, -1, 135, 81, 137, - 138, -1, 140, -1, 142, -1, 144, 145, -1, 147, - -1, -1, -1, 121, 122, 123, 124, 125, 126, 127, - 128, 129, 130, 131, 132, 133, 134, 110, 111, 112, - 113, 139, 121, 122, 123, 124, 125, 126, 127, 128, - 129, 130, 131, 132, 133, 134, -1, 130, 131, -1, - 139, -1, 135, -1, -1, -1, -1, 140, -1, 3, - 4, 5, 145, -1, 147, 9, 10, 11, -1, -1, + 33, 34, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 148, 46, -1, 12, 13, 121, 122, 123, + 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, + 134, -1, -1, -1, -1, 139, 69, 70, 71, 72, + 73, -1, -1, 8, -1, 78, -1, -1, 81, 46, + 47, 48, 49, 50, 51, 52, 53, 54, 55, -1, + 57, -1, 59, 60, -1, 62, 63, 64, -1, -1, + 67, 68, -1, -1, -1, -1, -1, 110, 111, 112, + 113, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 91, 92, 93, 130, 131, -1, + -1, -1, 135, -1, -1, -1, -1, 140, -1, 3, + 4, -1, 145, -1, 147, 9, 10, 11, -1, -1, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 46, -1, 12, 13, 121, 122, 123, 124, + -1, 148, 46, -1, 12, 13, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, -1, -1, -1, -1, 139, 69, 70, 71, 72, 73, - 6, -1, -1, -1, 78, -1, -1, 81, 46, 47, + 8, -1, -1, -1, 78, -1, -1, 81, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, -1, 57, -1, 59, 60, -1, 62, 63, 64, -1, -1, 67, 68, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 91, 92, 93, 130, 131, -1, -1, - -1, 135, -1, -1, -1, -1, 140, -1, 3, 4, + -1, 135, -1, -1, -1, -1, 140, 8, 3, 4, -1, 145, -1, 147, 9, 10, 11, -1, -1, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 148, 46, -1, 12, 13, 121, 122, 123, 124, 125, - 126, 127, 128, 129, 130, 131, 132, 133, 134, -1, - -1, -1, -1, 139, 69, 70, 71, 72, 73, 6, - -1, -1, -1, 78, -1, -1, 81, 46, 47, 48, - 49, 50, 51, 52, 53, 54, 55, -1, 57, -1, - 59, 60, -1, 62, 63, 64, -1, -1, 67, 68, - -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 91, 92, 93, 130, 131, -1, -1, -1, - 135, -1, -1, -1, -1, 140, -1, 3, 4, -1, + 148, 46, -1, 121, 122, 123, 124, 125, 126, 127, + 128, 129, 130, 131, 132, 133, 134, -1, -1, -1, + -1, 139, -1, -1, 69, 70, 71, 72, 73, 8, + -1, 3, 4, 78, -1, -1, 81, 9, 10, 11, + -1, -1, 14, 15, 16, 17, 18, 19, 20, 21, + 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, + 32, 33, 34, -1, -1, 110, 111, 112, 113, -1, + 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, + 131, 132, 133, 134, -1, 130, 131, -1, 139, -1, + 135, -1, -1, -1, -1, 140, -1, 3, 4, 5, 145, -1, 147, 9, 10, 11, -1, -1, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 148, - 46, -1, 12, 13, 121, 122, 123, 124, 125, 126, - 127, 128, 129, 130, 131, 132, 133, 134, -1, -1, - -1, -1, 139, 69, 70, 71, 72, 73, 6, -1, - -1, -1, 78, -1, -1, 81, 46, 47, 48, 49, - 50, 51, 52, 53, 54, 55, -1, 57, -1, 59, - 60, -1, 62, 63, 64, -1, -1, 67, 68, -1, - -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 91, 92, 93, 130, 131, -1, -1, -1, 135, - -1, -1, -1, -1, 140, -1, 3, 4, -1, 145, + 36, 37, 38, 39, -1, -1, 42, -1, 110, 111, + 112, 113, 121, 122, 123, 124, 125, 126, 127, 128, + 129, 130, 131, 132, 133, 134, -1, -1, 130, 131, + 139, -1, -1, 135, -1, -1, -1, -1, 140, -1, + -1, 143, -1, 145, -1, 147, 121, 122, 123, 124, + 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, + -1, -1, -1, -1, 139, -1, -1, -1, -1, -1, + -1, 146, -1, 148, 110, 111, 112, 113, 121, 122, + 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, + 133, 134, -1, -1, 130, 131, 139, -1, -1, 135, + -1, -1, -1, 146, 140, 148, 3, 4, -1, 145, -1, 147, 9, 10, 11, -1, -1, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 148, 46, - -1, 12, 13, 121, 122, 123, 124, 125, 126, 127, - 128, 129, 130, 131, 132, 133, 134, -1, -1, -1, - -1, 139, 69, 70, 71, 72, 73, 6, -1, -1, - -1, 78, -1, -1, 81, 46, 47, 48, 49, 50, - 51, 52, 53, 54, 55, -1, 57, -1, 59, 60, - -1, 62, 63, 64, -1, -1, 67, 68, -1, -1, - -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 91, 92, 93, 130, 131, -1, -1, -1, 135, -1, - -1, -1, -1, 140, -1, 3, 4, -1, 145, -1, - 147, 9, 10, 11, -1, -1, 14, 15, 16, 17, - 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 31, 32, 33, 34, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 148, 46, -1, - 12, 13, 121, 122, 123, 124, 125, 126, 127, 128, - 129, 130, 131, 132, 133, 134, -1, -1, -1, -1, - 139, 69, 70, 71, 72, 73, 6, -1, -1, -1, - 78, -1, -1, 81, 46, 47, 48, 49, 50, 51, - 52, 53, 54, 55, -1, 57, -1, 59, 60, -1, - 62, 63, 64, -1, -1, 67, 68, -1, -1, -1, - -1, -1, 110, 111, 112, 113, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 91, - 92, 93, 130, 131, -1, -1, -1, 135, -1, -1, - 6, -1, 140, -1, 3, 4, -1, 145, -1, 147, + -1, -1, 12, 13, 3, 4, -1, -1, -1, -1, 9, 10, 11, -1, -1, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, 32, 33, 34, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 148, 46, -1, -1, - -1, 121, 122, 123, 124, 125, 126, 127, 128, 129, - 130, 131, 132, 133, 134, -1, -1, -1, -1, 139, - 69, 70, 71, 72, 73, 6, -1, 3, 4, 78, - -1, -1, 81, 9, 10, 11, -1, -1, 14, 15, - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, - 26, 27, 28, 29, 30, 31, 32, 33, 34, -1, - -1, 110, 111, 112, 113, 121, 122, 123, 124, 125, + 29, 30, 31, 32, 33, 34, 46, 47, 48, 49, + 50, 51, 52, 53, 54, 55, -1, 57, -1, 59, + 60, -1, 62, 63, 64, -1, -1, 67, 68, 121, + 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, + 132, 133, 134, 110, 111, 112, 113, 139, -1, -1, + -1, 91, 92, 93, 146, -1, 148, -1, -1, -1, + -1, -1, -1, 130, 131, -1, -1, -1, 135, -1, + -1, -1, -1, 140, -1, -1, 143, -1, 145, -1, + 147, 110, 111, 112, 113, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, -1, -1, 130, 131, 139, -1, -1, 135, -1, -1, -1, - -1, 140, -1, 3, 4, 5, 145, -1, 147, 9, + -1, 140, 148, 3, 4, -1, 145, -1, 147, 9, 10, 11, -1, -1, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, - 30, 31, 32, 33, 34, -1, 36, 37, 38, 39, - -1, -1, 42, -1, 110, 111, 112, 113, 12, 13, - 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, - 131, 132, 133, 134, 130, 131, -1, -1, 139, 135, - -1, -1, -1, -1, 140, -1, -1, 143, -1, 145, - -1, 147, 46, 47, 48, 49, 50, 51, 52, 53, - 54, 55, -1, 57, -1, 59, 60, -1, 62, 63, - 64, -1, -1, 67, 68, -1, -1, -1, -1, -1, - 110, 111, 112, 113, -1, -1, -1, -1, -1, -1, - -1, -1, 8, -1, -1, -1, -1, 91, 92, 93, - 130, 131, -1, -1, -1, 135, -1, -1, -1, -1, - 140, -1, 3, 4, -1, 145, -1, 147, 9, 10, - 11, -1, -1, 14, 15, 16, 17, 18, 19, 20, - 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, - 31, 32, 33, 34, -1, -1, -1, -1, 12, 13, - 3, 4, -1, -1, 148, -1, 9, 10, 11, -1, - -1, 14, 15, 16, 17, 18, 19, 20, 21, 22, - 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, - 33, 34, 46, 47, 48, 49, 50, 51, 52, 53, - 54, 55, -1, 57, -1, 59, 60, -1, 62, 63, - 64, -1, -1, 67, 68, 121, 122, 123, 124, 125, - 126, 127, 128, 129, 130, 131, 132, 133, 134, 110, - 111, 112, 113, 139, -1, -1, -1, 91, 92, 93, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 130, - 131, -1, -1, -1, 135, -1, -1, -1, -1, 140, - -1, -1, 143, -1, 145, -1, 147, 110, 111, 112, - 113, 121, 122, 123, 124, 125, 126, 127, 128, 129, - 130, 131, 132, 133, 134, -1, -1, 130, 131, 139, - -1, 141, 135, -1, 148, -1, 146, 140, 8, 3, - 4, -1, 145, -1, 147, 9, 10, 11, -1, -1, - 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, - 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, - 34, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 46, -1, 121, 122, 123, 124, 125, 126, - 127, 128, 129, 130, 131, 132, 133, 134, -1, -1, - -1, -1, 139, -1, -1, 69, 70, 71, 72, 73, - 8, 148, 3, 4, 78, -1, -1, 81, 9, 10, - 11, -1, -1, 14, 15, 16, 17, 18, 19, 20, - 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, - 31, 32, 33, 34, 8, -1, 110, 111, 112, 113, - -1, 121, 122, 123, 124, 125, 126, 127, 128, 129, - 130, 131, 132, 133, 134, -1, 130, 131, -1, 139, - -1, 135, 3, 4, 5, -1, 140, -1, 9, 10, - 11, 145, -1, 14, 15, 16, 17, 18, 19, 20, - 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, - 31, 32, 33, 34, -1, 36, 37, 38, 39, -1, - -1, 42, -1, -1, -1, -1, -1, -1, -1, 110, - 111, 112, 113, 121, 122, 123, 124, 125, 126, 127, - 128, 129, 130, 131, 132, 133, 134, -1, -1, 130, - 131, 139, -1, -1, 135, -1, -1, -1, -1, 140, - -1, -1, -1, -1, 145, -1, -1, 121, 122, 123, + 30, 31, 32, 33, 34, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 46, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, - 134, -1, 0, 1, -1, 139, 4, -1, -1, 110, - 111, 112, 113, -1, 12, 13, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 130, - 131, -1, -1, -1, 135, -1, -1, 35, -1, 140, - -1, -1, 40, 41, 145, 43, 44, -1, 46, 47, - 48, 49, 50, 51, 52, 53, 54, 55, -1, 57, - 58, 59, 60, 61, 62, 63, 64, -1, 66, 67, - 68, 69, 70, 71, 72, 73, 74, -1, 76, 77, - 78, 79, 80, 81, -1, -1, 84, 85, 4, -1, - -1, -1, 90, 91, 92, 93, 12, 13, 96, -1, - 98, -1, 100, 101, 102, 103, 104, 105, 106, 107, - 108, 109, -1, -1, -1, -1, 114, 115, 116, 35, - -1, -1, -1, -1, 40, 41, -1, 43, 44, -1, - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, - -1, 57, 58, 59, 60, 61, 62, 63, 64, -1, - 66, 67, 68, 69, 70, 71, 72, 73, 74, -1, - 76, 77, 78, 79, 80, 81, -1, -1, 84, 85, - -1, -1, -1, -1, 90, 91, 92, 93, -1, -1, - 96, -1, 98, -1, 100, 101, 102, 103, 104, 105, - 106, 107, 108, 109, -1, -1, -1, -1, 114, 115, - 116, 121, 122, 123, 124, 125, 126, 127, 128, 129, - 130, 131, 132, 133, 134, -1, -1, -1, -1, 139, - -1, -1, -1, -1, -1, -1, 146, -1, 148, 121, - 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, - 132, 133, 134, -1, -1, -1, -1, 139, -1, -1, - -1, -1, -1, -1, 146, -1, 148, 121, 122, 123, + 134, -1, -1, -1, -1, 139, -1, -1, -1, 69, + 70, 71, 72, 73, 148, -1, 3, 4, 78, -1, + -1, 81, 9, 10, 11, -1, -1, 14, 15, 16, + 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, + 27, 28, 29, 30, 31, 32, 33, 34, -1, -1, + 110, 111, 112, 113, 121, 122, 123, 124, 125, 126, + 127, 128, 129, 130, 131, 132, 133, 134, -1, -1, + 130, 131, 139, -1, -1, 135, 3, 4, 5, -1, + 140, 148, 9, 10, 11, 145, -1, 14, 15, 16, + 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, + 27, 28, 29, 30, 31, 32, 33, 34, -1, 36, + 37, 38, 39, -1, -1, 42, -1, -1, -1, -1, + -1, -1, -1, 110, 111, 112, 113, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, - 134, -1, -1, -1, -1, 139, -1, -1, -1, -1, - -1, -1, 146, -1, 148, 121, 122, 123, 124, 125, + 134, -1, -1, 130, 131, 139, -1, -1, 135, -1, + -1, -1, -1, 140, 148, -1, -1, -1, 145, -1, + 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, + 131, 132, 133, 134, -1, -1, 0, 1, 139, -1, + 4, -1, -1, 110, 111, 112, 113, 148, 12, 13, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 130, 131, -1, -1, -1, 135, -1, + -1, 35, -1, 140, -1, -1, 40, 41, 145, 43, + 44, -1, 46, 47, 48, 49, 50, 51, 52, 53, + 54, 55, -1, 57, 58, 59, 60, 61, 62, 63, + 64, -1, 66, 67, 68, 69, 70, 71, 72, 73, + 74, -1, 76, 77, 78, 79, 80, 81, -1, -1, + 84, 85, 4, -1, -1, -1, 90, 91, 92, 93, + 12, 13, 96, -1, 98, -1, 100, 101, 102, 103, + 104, 105, 106, 107, 108, 109, -1, -1, -1, -1, + 114, 115, 116, 35, -1, -1, -1, -1, 40, 41, + -1, 43, 44, -1, 46, 47, 48, 49, 50, 51, + 52, 53, 54, 55, -1, 57, 58, 59, 60, 61, + 62, 63, 64, -1, 66, 67, 68, 69, 70, 71, + 72, 73, 74, -1, 76, 77, 78, 79, 80, 81, + -1, -1, 84, 85, -1, -1, -1, -1, 90, 91, + 92, 93, -1, -1, 96, -1, 98, -1, 100, 101, + 102, 103, 104, 105, 106, 107, 108, 109, -1, -1, + -1, -1, 114, 115, 116, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, -1, -1, -1, -1, 139, -1, -1, -1, -1, -1, -1, -1, -1, 148, 121, 122, 123, 124, 125, 126, 127, @@ -2607,16 +2616,10 @@ static const yytype_int16 yycheck[] = 132, 133, 134, -1, -1, -1, -1, 139, -1, -1, -1, -1, -1, -1, -1, -1, 148, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, - 134, -1, -1, -1, -1, 139, -1, -1, -1, -1, - -1, -1, -1, -1, 148, 121, 122, 123, 124, 125, - 126, 127, 128, 129, 130, 131, 132, 133, 134, -1, - -1, -1, -1, 139, -1, -1, -1, -1, -1, -1, - -1, -1, 148, 121, 122, 123, 124, 125, 126, 127, + 134, -1, -1, -1, -1, 139, -1, 141, -1, -1, + -1, -1, 146, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, -1, -1, -1, - -1, 139, -1, -1, -1, -1, -1, -1, -1, -1, - 148, 121, 122, 123, 124, 125, 126, 127, 128, 129, - 130, 131, 132, 133, 134, -1, -1, -1, -1, 139, - -1, -1, -1, -1, -1, -1, -1, -1, 148, 121, + -1, 139, -1, -1, -1, -1, -1, -1, 146, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, -1, -1, -1, -1, 139, -1, -1, -1, -1, -1, -1, 146, 121, 122, 123, 124, 125, @@ -2686,8 +2689,10 @@ static const yytype_int16 yycheck[] = 132, 133, 134, -1, -1, -1, -1, 139, -1, -1, -1, -1, -1, -1, 146, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, -1, - -1, -1, -1, 139, -1, -1, -1, -1, -1, -1, - 146, 121, 122, 123, 124, 125, 126, 127, 128, 129, + -1, -1, -1, 139, -1, -1, -1, 143, 121, 122, + 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, + 133, 134, -1, -1, -1, -1, 139, -1, -1, -1, + 143, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, -1, -1, -1, -1, 139, -1, -1, -1, 143, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, -1, -1, @@ -2757,19 +2762,6 @@ static const yytype_int16 yycheck[] = 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, -1, -1, -1, -1, 139, -1, -1, -1, 143, 121, 122, 123, 124, 125, 126, 127, 128, 129, - 130, 131, 132, 133, 134, -1, -1, -1, -1, 139, - -1, -1, -1, 143, 121, 122, 123, 124, 125, 126, - 127, 128, 129, 130, 131, 132, 133, 134, -1, -1, - -1, -1, 139, -1, -1, -1, 143, 121, 122, 123, - 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, - 134, -1, -1, -1, -1, 139, -1, 141, 121, 122, - 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, - 133, 134, -1, -1, -1, -1, 139, -1, 141, 121, - 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, - 132, 133, 134, -1, -1, -1, -1, 139, -1, 141, - 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, - 131, 132, 133, 134, -1, -1, -1, -1, 139, -1, - 141, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, -1, -1, -1, -1, 139, -1, 141, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, -1, -1, -1, -1, @@ -2873,7 +2865,16 @@ static const yytype_int16 yycheck[] = 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, -1, -1, -1, -1, 139, -1, 141, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, - 131, 132, 133, 134, -1, -1, -1, -1, 139 + 131, 132, 133, 134, -1, -1, -1, -1, 139, -1, + 141, 121, 122, 123, 124, 125, 126, 127, 128, 129, + 130, 131, 132, 133, 134, -1, -1, -1, -1, 139, + -1, 141, 121, 122, 123, 124, 125, 126, 127, 128, + 129, 130, 131, 132, 133, 134, -1, -1, -1, -1, + 139, -1, 141, 121, 122, 123, 124, 125, 126, 127, + 128, 129, 130, 131, 132, 133, 134, -1, -1, -1, + -1, 139, -1, 141, 121, 122, 123, 124, 125, 126, + 127, 128, 129, 130, 131, 132, 133, 134, -1, -1, + -1, -1, 139 }; /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing @@ -2888,135 +2889,134 @@ static const yytype_uint8 yystos[] = 91, 92, 93, 96, 98, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 114, 115, 116, 153, 155, 156, 174, 178, 183, 186, 187, 188, 189, 190, 191, - 192, 214, 215, 216, 217, 3, 4, 5, 7, 9, + 192, 213, 214, 215, 216, 3, 4, 5, 7, 9, 10, 11, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 36, 37, 38, 39, 42, 104, 110, 111, 112, 113, 117, 118, 119, 120, 130, 131, 135, - 137, 138, 140, 142, 144, 145, 147, 172, 173, 218, - 219, 231, 13, 52, 140, 6, 147, 6, 6, 6, + 137, 138, 140, 142, 144, 145, 147, 172, 173, 217, + 218, 230, 13, 52, 140, 6, 147, 6, 6, 6, 140, 147, 140, 140, 75, 140, 147, 140, 140, 75, 147, 140, 140, 56, 52, 52, 52, 52, 49, 52, 54, 54, 46, 49, 52, 54, 49, 52, 54, 140, - 49, 140, 147, 130, 131, 140, 147, 220, 221, 220, - 147, 46, 49, 52, 147, 220, 4, 50, 59, 52, + 49, 140, 147, 130, 131, 140, 147, 219, 220, 219, + 147, 46, 49, 52, 147, 219, 4, 50, 59, 52, 52, 49, 4, 104, 147, 4, 6, 49, 4, 4, - 4, 140, 140, 140, 4, 147, 227, 4, 140, 140, + 4, 140, 140, 140, 4, 147, 226, 4, 140, 140, 6, 142, 4, 4, 5, 147, 5, 147, 147, 140, - 140, 4, 142, 144, 149, 173, 147, 5, 231, 140, + 140, 4, 142, 144, 149, 173, 147, 5, 230, 140, 142, 140, 142, 140, 142, 140, 142, 140, 142, 140, 142, 140, 142, 140, 142, 140, 142, 140, 142, 140, 142, 140, 142, 140, 142, 140, 142, 140, 142, 140, 142, 140, 142, 140, 142, 140, 142, 140, 142, 140, - 142, 140, 140, 140, 140, 7, 140, 4, 218, 218, - 218, 218, 143, 147, 218, 4, 96, 97, 4, 4, - 183, 184, 185, 218, 6, 6, 121, 122, 123, 124, + 142, 140, 140, 140, 140, 7, 140, 4, 217, 217, + 217, 217, 143, 147, 217, 4, 96, 97, 4, 4, + 183, 184, 185, 217, 6, 6, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, - 139, 6, 6, 218, 5, 218, 218, 4, 46, 131, - 183, 192, 218, 225, 226, 218, 218, 140, 218, 226, - 218, 218, 140, 226, 218, 218, 131, 147, 218, 223, - 225, 140, 147, 140, 140, 5, 223, 224, 224, 224, - 140, 179, 180, 181, 182, 140, 140, 140, 4, 223, - 5, 220, 220, 220, 218, 218, 130, 131, 147, 147, - 220, 147, 147, 147, 130, 131, 140, 185, 220, 147, - 140, 147, 140, 140, 224, 223, 140, 4, 6, 142, - 142, 185, 6, 147, 142, 142, 6, 218, 218, 218, - 144, 218, 147, 99, 218, 218, 218, 6, 6, 185, - 6, 185, 223, 4, 230, 231, 230, 142, 218, 4, - 147, 157, 6, 218, 218, 218, 218, 218, 218, 218, - 218, 218, 218, 218, 218, 218, 218, 218, 218, 218, - 218, 218, 218, 218, 218, 218, 218, 218, 218, 218, - 218, 218, 218, 218, 218, 218, 218, 218, 218, 218, - 218, 218, 218, 218, 218, 230, 230, 230, 230, 218, - 5, 142, 141, 7, 120, 226, 143, 7, 172, 173, + 139, 6, 6, 217, 5, 217, 217, 4, 46, 131, + 183, 192, 217, 224, 225, 217, 217, 140, 217, 225, + 217, 217, 140, 225, 217, 217, 131, 147, 217, 222, + 224, 140, 147, 140, 140, 5, 222, 223, 223, 223, + 140, 179, 180, 181, 182, 140, 140, 140, 4, 222, + 5, 219, 219, 219, 217, 217, 130, 131, 147, 147, + 219, 147, 147, 147, 130, 131, 140, 185, 219, 147, + 140, 147, 140, 140, 223, 222, 140, 4, 6, 142, + 142, 185, 6, 147, 142, 142, 6, 217, 217, 217, + 144, 217, 147, 99, 217, 217, 217, 6, 6, 185, + 6, 185, 222, 4, 229, 230, 229, 142, 217, 4, + 147, 157, 6, 217, 217, 217, 217, 217, 217, 217, + 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, + 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, + 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, + 217, 217, 217, 217, 217, 229, 229, 229, 229, 217, + 5, 142, 141, 7, 120, 225, 143, 7, 172, 173, 144, 7, 142, 148, 46, 49, 52, 54, 178, 6, - 218, 218, 218, 218, 218, 218, 218, 218, 218, 218, - 218, 218, 218, 218, 218, 6, 141, 146, 146, 141, - 142, 147, 218, 225, 8, 132, 146, 148, 141, 141, - 218, 141, 148, 141, 141, 218, 148, 141, 141, 147, - 148, 226, 132, 7, 218, 218, 218, 218, 7, 7, - 212, 212, 218, 140, 140, 140, 140, 218, 218, 218, - 141, 6, 146, 146, 146, 146, 220, 220, 184, 184, - 146, 218, 218, 218, 218, 196, 146, 185, 218, 218, - 218, 218, 7, 213, 7, 218, 6, 218, 218, 148, - 226, 218, 218, 141, 141, 141, 96, 146, 185, 147, + 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, + 217, 217, 217, 217, 217, 6, 141, 146, 146, 141, + 142, 147, 217, 224, 8, 132, 146, 148, 141, 141, + 217, 141, 148, 141, 141, 217, 148, 141, 141, 147, + 148, 225, 132, 7, 217, 217, 217, 217, 7, 7, + 211, 211, 217, 140, 140, 140, 140, 217, 217, 217, + 141, 6, 146, 146, 146, 146, 219, 219, 184, 184, + 146, 217, 217, 217, 217, 196, 146, 185, 217, 217, + 217, 217, 7, 212, 7, 217, 6, 217, 217, 148, + 225, 217, 217, 141, 141, 141, 96, 146, 185, 147, 8, 141, 143, 148, 148, 146, 142, 144, 141, 141, - 218, 143, 173, 218, 4, 86, 87, 88, 89, 148, + 217, 143, 173, 217, 4, 86, 87, 88, 89, 148, 160, 164, 167, 169, 170, 141, 143, 141, 143, 141, 143, 141, 143, 141, 143, 141, 143, 141, 143, 141, 143, 141, 143, 141, 143, 141, 143, 146, 146, 141, 143, 141, 143, 141, 143, 141, 143, 141, 143, 141, 143, 146, 146, 146, 146, 146, 146, 141, 146, 146, - 141, 141, 6, 146, 218, 223, 223, 148, 7, 144, - 172, 173, 231, 218, 6, 4, 4, 147, 228, 143, - 147, 147, 147, 147, 8, 6, 127, 154, 226, 218, - 7, 143, 147, 218, 218, 218, 225, 218, 225, 99, + 141, 141, 6, 146, 217, 222, 222, 148, 7, 144, + 172, 173, 230, 217, 6, 4, 4, 147, 227, 143, + 147, 147, 147, 147, 8, 6, 127, 154, 225, 217, + 7, 143, 147, 217, 217, 217, 224, 217, 224, 99, 7, 7, 141, 7, 99, 7, 7, 141, 99, 7, - 7, 226, 148, 147, 218, 141, 148, 141, 141, 218, - 223, 4, 211, 6, 141, 175, 218, 231, 175, 175, - 175, 141, 141, 141, 144, 223, 220, 218, 218, 148, - 148, 218, 146, 146, 146, 76, 82, 83, 206, 207, - 220, 148, 193, 141, 148, 141, 141, 218, 6, 218, + 7, 225, 148, 147, 217, 141, 148, 141, 141, 217, + 222, 4, 210, 6, 141, 175, 217, 230, 175, 175, + 175, 141, 141, 141, 144, 222, 219, 217, 217, 148, + 148, 217, 146, 146, 146, 76, 82, 83, 206, 207, + 219, 148, 193, 141, 148, 141, 141, 217, 6, 217, 141, 143, 143, 148, 143, 143, 7, 7, 7, 144, - 218, 148, 218, 218, 7, 144, 223, 218, 4, 7, - 7, 143, 144, 173, 230, 148, 161, 140, 140, 147, - 171, 6, 218, 218, 218, 218, 218, 218, 218, 218, - 226, 230, 218, 143, 6, 6, 143, 4, 96, 97, - 218, 6, 6, 6, 7, 142, 227, 229, 6, 226, - 226, 226, 226, 218, 127, 230, 141, 146, 220, 226, - 148, 8, 52, 223, 223, 7, 223, 52, 54, 223, - 223, 7, 54, 223, 223, 148, 226, 6, 7, 7, - 7, 7, 65, 210, 6, 7, 141, 141, 141, 141, - 7, 7, 7, 4, 146, 146, 146, 146, 148, 220, - 220, 220, 6, 147, 140, 148, 207, 146, 206, 7, + 217, 148, 217, 217, 7, 144, 222, 217, 4, 7, + 7, 143, 144, 173, 229, 148, 161, 140, 140, 147, + 171, 6, 217, 217, 217, 217, 217, 217, 217, 217, + 225, 229, 217, 143, 6, 6, 143, 4, 96, 97, + 217, 6, 6, 6, 7, 142, 226, 228, 6, 225, + 225, 225, 225, 217, 127, 229, 141, 146, 219, 225, + 148, 8, 52, 222, 222, 7, 222, 52, 54, 222, + 222, 7, 54, 222, 222, 148, 225, 6, 7, 7, + 7, 7, 65, 209, 6, 7, 141, 141, 141, 141, + 7, 7, 7, 4, 146, 146, 146, 146, 148, 219, + 219, 219, 6, 147, 140, 148, 207, 146, 206, 7, 6, 7, 7, 6, 147, 6, 6, 52, 6, 6, - 223, 223, 223, 4, 146, 8, 8, 141, 4, 4, - 148, 143, 147, 147, 6, 4, 6, 140, 218, 218, - 222, 223, 147, 141, 143, 141, 143, 141, 143, 141, + 222, 222, 222, 4, 146, 8, 8, 141, 4, 4, + 148, 143, 147, 147, 6, 4, 6, 140, 217, 217, + 221, 222, 147, 141, 143, 141, 143, 141, 143, 141, 143, 141, 141, 141, 172, 7, 172, 173, 144, 7, - 6, 227, 218, 146, 148, 148, 148, 148, 148, 6, - 6, 154, 218, 6, 148, 218, 147, 59, 177, 177, - 223, 6, 147, 147, 6, 6, 223, 147, 6, 6, - 148, 5, 223, 223, 223, 4, 6, 223, 7, 7, - 7, 7, 223, 223, 223, 6, 7, 5, 218, 218, - 218, 147, 146, 148, 146, 148, 146, 148, 218, 223, - 218, 218, 220, 148, 5, 147, 223, 147, 147, 223, - 226, 147, 6, 6, 95, 218, 218, 218, 6, 7, - 6, 144, 223, 223, 173, 158, 218, 146, 146, 146, - 148, 159, 218, 223, 231, 218, 6, 4, 228, 6, - 143, 227, 6, 6, 6, 6, 230, 146, 143, 218, - 220, 6, 6, 6, 218, 218, 6, 218, 5, 6, - 6, 99, 176, 218, 6, 223, 223, 223, 223, 6, - 4, 208, 6, 218, 231, 141, 148, 141, 146, 148, - 184, 220, 6, 197, 220, 6, 198, 220, 6, 199, - 148, 146, 141, 148, 146, 6, 131, 220, 6, 220, - 220, 6, 148, 218, 223, 146, 148, 8, 148, 141, - 147, 218, 231, 4, 146, 146, 141, 146, 218, 218, - 223, 147, 146, 148, 6, 6, 6, 7, 6, 144, - 6, 218, 148, 148, 148, 148, 5, 50, 6, 6, - 6, 6, 6, 147, 4, 209, 6, 6, 6, 147, - 218, 148, 146, 147, 146, 147, 146, 147, 6, 223, - 7, 147, 218, 146, 146, 146, 6, 148, 94, 218, - 218, 226, 6, 6, 223, 223, 162, 218, 146, 146, - 222, 218, 6, 227, 97, 146, 6, 6, 6, 6, - 6, 147, 222, 6, 184, 146, 148, 218, 220, 206, - 218, 220, 206, 218, 220, 206, 146, 148, 223, 185, - 148, 220, 226, 220, 218, 148, 148, 148, 148, 148, - 147, 218, 218, 148, 6, 218, 218, 148, 148, 218, - 148, 146, 148, 148, 146, 148, 148, 146, 148, 223, - 6, 65, 148, 194, 147, 146, 148, 146, 6, 6, - 6, 6, 159, 141, 146, 6, 147, 146, 148, 4, - 208, 148, 6, 200, 218, 6, 6, 201, 218, 6, - 6, 202, 218, 6, 148, 218, 206, 185, 226, 6, - 220, 226, 148, 165, 218, 222, 218, 209, 147, 148, - 147, 148, 147, 148, 6, 6, 148, 148, 195, 148, - 146, 148, 6, 147, 141, 148, 148, 6, 206, 6, - 203, 206, 6, 204, 206, 6, 205, 206, 6, 226, - 6, 163, 230, 168, 147, 6, 148, 147, 148, 147, - 148, 147, 148, 148, 146, 148, 147, 222, 6, 206, - 6, 206, 6, 206, 6, 230, 6, 166, 230, 148, - 148, 148, 148, 146, 148, 6, 6, 6, 6, 230, - 6 + 6, 226, 217, 146, 148, 148, 148, 148, 148, 6, + 6, 154, 217, 6, 148, 217, 147, 59, 177, 177, + 222, 6, 147, 147, 6, 6, 222, 147, 6, 6, + 148, 5, 222, 222, 222, 4, 6, 222, 7, 7, + 7, 7, 222, 222, 222, 6, 7, 5, 217, 217, + 217, 147, 146, 148, 146, 148, 146, 148, 217, 222, + 217, 217, 219, 148, 5, 147, 222, 147, 147, 222, + 225, 147, 6, 6, 95, 217, 217, 217, 6, 7, + 6, 144, 222, 222, 173, 158, 217, 146, 146, 146, + 148, 159, 217, 222, 230, 217, 6, 4, 227, 6, + 143, 226, 6, 6, 6, 6, 229, 146, 143, 217, + 219, 6, 6, 6, 217, 217, 6, 217, 5, 6, + 6, 99, 176, 217, 6, 222, 222, 222, 222, 6, + 4, 208, 6, 217, 230, 141, 148, 141, 146, 148, + 184, 219, 6, 197, 219, 6, 198, 219, 6, 199, + 148, 146, 141, 148, 146, 6, 131, 219, 6, 219, + 219, 6, 148, 217, 222, 146, 148, 8, 148, 141, + 147, 217, 230, 4, 146, 146, 141, 146, 217, 217, + 222, 147, 146, 148, 6, 6, 6, 7, 6, 144, + 6, 217, 148, 148, 148, 148, 5, 50, 6, 6, + 6, 6, 6, 147, 6, 6, 6, 6, 147, 217, + 148, 146, 147, 146, 147, 146, 147, 6, 222, 7, + 147, 217, 146, 146, 146, 6, 148, 94, 217, 217, + 225, 6, 6, 222, 222, 162, 217, 146, 146, 221, + 217, 6, 226, 97, 146, 6, 6, 6, 6, 6, + 147, 221, 184, 146, 148, 217, 219, 206, 217, 219, + 206, 217, 219, 206, 146, 148, 222, 185, 148, 219, + 225, 219, 217, 148, 148, 148, 148, 148, 147, 217, + 217, 148, 6, 217, 217, 148, 148, 217, 148, 146, + 148, 148, 146, 148, 148, 146, 148, 222, 6, 65, + 148, 194, 147, 146, 148, 146, 6, 6, 6, 6, + 159, 141, 146, 6, 147, 146, 148, 4, 208, 148, + 6, 200, 217, 6, 6, 201, 217, 6, 6, 202, + 217, 6, 148, 217, 206, 185, 225, 6, 219, 225, + 148, 165, 217, 221, 217, 6, 147, 148, 147, 148, + 147, 148, 6, 6, 148, 148, 195, 148, 146, 148, + 6, 147, 141, 148, 148, 206, 6, 203, 206, 6, + 204, 206, 6, 205, 206, 6, 225, 6, 163, 229, + 168, 147, 6, 148, 147, 148, 147, 148, 147, 148, + 148, 146, 148, 147, 221, 6, 206, 6, 206, 6, + 206, 6, 229, 6, 166, 229, 148, 148, 148, 148, + 146, 148, 6, 6, 6, 6, 229, 6 }; #define yyerrok (yyerrstatus = 0) @@ -5365,69 +5365,67 @@ yyreduce: case 118: #line 1457 "Gmsh.y" { - int num = (int)(yyvsp[(4) - (10)].d); + int num = (int)(yyvsp[(4) - (9)].d); if(FindSurface(num)){ yymsg(0, "Surface %d already exists", num); } else{ Surface *s = Create_Surface(num, MSH_SURF_COMPOUND); - for(int i = 0; i < List_Nbr((yyvsp[(7) - (10)].l)); i++){ - s->compound.push_back((int)*(double*)List_Pointer((yyvsp[(7) - (10)].l), i)); - s->TypeOfMapping = (yyvsp[(8) - (10)].i); - s->AllowPartition = (yyvsp[(9) - (10)].i); + for(int i = 0; i < List_Nbr((yyvsp[(7) - (9)].l)); i++){ + s->compound.push_back((int)*(double*)List_Pointer((yyvsp[(7) - (9)].l), i)); + s->TypeOfMapping = (yyvsp[(8) - (9)].i); } Tree_Add(GModel::current()->getGEOInternals()->Surfaces, &s); } - List_Delete((yyvsp[(7) - (10)].l)); + List_Delete((yyvsp[(7) - (9)].l)); (yyval.s).Type = MSH_SURF_COMPOUND; (yyval.s).Num = num; ;} break; case 119: -#line 1477 "Gmsh.y" +#line 1476 "Gmsh.y" { - int num = (int)(yyvsp[(4) - (14)].d); + int num = (int)(yyvsp[(4) - (13)].d); if(FindSurface(num)){ yymsg(0, "Surface %d already exists", num); } else{ Surface *s = Create_Surface(num, MSH_SURF_COMPOUND); - for(int i = 0; i < List_Nbr((yyvsp[(7) - (14)].l)); i++) - s->compound.push_back((int)*(double*)List_Pointer((yyvsp[(7) - (14)].l), i)); - for (int i = 0; i < List_Nbr((yyvsp[(10) - (14)].l)); i++){ + for(int i = 0; i < List_Nbr((yyvsp[(7) - (13)].l)); i++) + s->compound.push_back((int)*(double*)List_Pointer((yyvsp[(7) - (13)].l), i)); + for (int i = 0; i < List_Nbr((yyvsp[(10) - (13)].l)); i++){ if(i > 3){ yymsg(0, "Too many boundary specifiers in compound surface"); break; } - List_T *l = *(List_T**)List_Pointer((yyvsp[(10) - (14)].l), i); + List_T *l = *(List_T**)List_Pointer((yyvsp[(10) - (13)].l), i); for (int j = 0; j < List_Nbr(l); j++){ s->compoundBoundary[i].push_back((int)*(double*)List_Pointer(l, j)); - s->TypeOfMapping = (yyvsp[(12) - (14)].i); - s->AllowPartition = (yyvsp[(13) - (14)].i); + s->TypeOfMapping = (yyvsp[(12) - (13)].i); } } Tree_Add(GModel::current()->getGEOInternals()->Surfaces, &s); } - List_Delete((yyvsp[(7) - (14)].l)); - for (int i = 0; i < List_Nbr((yyvsp[(10) - (14)].l)); i++) - List_Delete(*(List_T**)List_Pointer((yyvsp[(10) - (14)].l), i)); - List_Delete((yyvsp[(10) - (14)].l)); - Free((yyvsp[(8) - (14)].c)); + List_Delete((yyvsp[(7) - (13)].l)); + for (int i = 0; i < List_Nbr((yyvsp[(10) - (13)].l)); i++) + List_Delete(*(List_T**)List_Pointer((yyvsp[(10) - (13)].l), i)); + List_Delete((yyvsp[(10) - (13)].l)); + Free((yyvsp[(8) - (13)].c)); (yyval.s).Type = MSH_SURF_COMPOUND; (yyval.s).Num = num; ;} break; case 120: -#line 1509 "Gmsh.y" +#line 1507 "Gmsh.y" { curPhysDim = 2; ;} break; case 121: -#line 1513 "Gmsh.y" +#line 1511 "Gmsh.y" { int num = (int)(yyvsp[(5) - (9)].i); if(FindPhysicalGroup(num, MSH_PHYSICAL_SURFACE)){ @@ -5446,7 +5444,7 @@ yyreduce: break; case 122: -#line 1533 "Gmsh.y" +#line 1531 "Gmsh.y" { yymsg(0, "'Complex Volume' command is deprecated: use 'Volume' instead"); int num = (int)(yyvsp[(4) - (8)].d); @@ -5467,7 +5465,7 @@ yyreduce: break; case 123: -#line 1551 "Gmsh.y" +#line 1549 "Gmsh.y" { int num = (int)(yyvsp[(3) - (7)].d); if(FindVolume(num)){ @@ -5487,7 +5485,7 @@ yyreduce: break; case 124: -#line 1569 "Gmsh.y" +#line 1567 "Gmsh.y" { #if defined(HAVE_OCC) std::vector<double> data; @@ -5503,7 +5501,7 @@ yyreduce: break; case 125: -#line 1582 "Gmsh.y" +#line 1580 "Gmsh.y" { int num = (int)(yyvsp[(4) - (8)].d); if(FindVolume(num)){ @@ -5522,14 +5520,14 @@ yyreduce: break; case 126: -#line 1598 "Gmsh.y" +#line 1596 "Gmsh.y" { curPhysDim = 3; ;} break; case 127: -#line 1602 "Gmsh.y" +#line 1600 "Gmsh.y" { int num = (int)(yyvsp[(5) - (9)].i); if(FindPhysicalGroup(num, MSH_PHYSICAL_VOLUME)){ @@ -5548,7 +5546,7 @@ yyreduce: break; case 128: -#line 1624 "Gmsh.y" +#line 1622 "Gmsh.y" { TranslateShapes((yyvsp[(2) - (5)].v)[0], (yyvsp[(2) - (5)].v)[1], (yyvsp[(2) - (5)].v)[2], (yyvsp[(4) - (5)].l)); (yyval.l) = (yyvsp[(4) - (5)].l); @@ -5556,7 +5554,7 @@ yyreduce: break; case 129: -#line 1629 "Gmsh.y" +#line 1627 "Gmsh.y" { RotateShapes((yyvsp[(3) - (11)].v)[0], (yyvsp[(3) - (11)].v)[1], (yyvsp[(3) - (11)].v)[2], (yyvsp[(5) - (11)].v)[0], (yyvsp[(5) - (11)].v)[1], (yyvsp[(5) - (11)].v)[2], (yyvsp[(7) - (11)].d), (yyvsp[(10) - (11)].l)); (yyval.l) = (yyvsp[(10) - (11)].l); @@ -5564,7 +5562,7 @@ yyreduce: break; case 130: -#line 1634 "Gmsh.y" +#line 1632 "Gmsh.y" { SymmetryShapes((yyvsp[(2) - (5)].v)[0], (yyvsp[(2) - (5)].v)[1], (yyvsp[(2) - (5)].v)[2], (yyvsp[(2) - (5)].v)[3], (yyvsp[(4) - (5)].l)); (yyval.l) = (yyvsp[(4) - (5)].l); @@ -5572,7 +5570,7 @@ yyreduce: break; case 131: -#line 1639 "Gmsh.y" +#line 1637 "Gmsh.y" { DilatShapes((yyvsp[(3) - (9)].v)[0], (yyvsp[(3) - (9)].v)[1], (yyvsp[(3) - (9)].v)[2], (yyvsp[(5) - (9)].d), (yyvsp[(8) - (9)].l)); (yyval.l) = (yyvsp[(8) - (9)].l); @@ -5580,7 +5578,7 @@ yyreduce: break; case 132: -#line 1644 "Gmsh.y" +#line 1642 "Gmsh.y" { (yyval.l) = List_Create(3, 3, sizeof(Shape)); if(!strcmp((yyvsp[(1) - (4)].c), "Duplicata")){ @@ -5603,7 +5601,7 @@ yyreduce: break; case 133: -#line 1664 "Gmsh.y" +#line 1662 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); IntersectCurvesWithSurface((yyvsp[(4) - (9)].l), (int)(yyvsp[(8) - (9)].d), (yyval.l)); @@ -5612,7 +5610,7 @@ yyreduce: break; case 134: -#line 1670 "Gmsh.y" +#line 1668 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape*)); List_T *tmp = ListOfDouble2ListOfInt((yyvsp[(7) - (9)].l)); @@ -5623,31 +5621,31 @@ yyreduce: break; case 135: -#line 1680 "Gmsh.y" +#line 1678 "Gmsh.y" { (yyval.l) = (yyvsp[(1) - (1)].l); ;} break; case 136: -#line 1681 "Gmsh.y" +#line 1679 "Gmsh.y" { (yyval.l) = (yyvsp[(1) - (1)].l); ;} break; case 137: -#line 1686 "Gmsh.y" +#line 1684 "Gmsh.y" { (yyval.l) = List_Create(3, 3, sizeof(Shape)); ;} break; case 138: -#line 1690 "Gmsh.y" +#line 1688 "Gmsh.y" { List_Add((yyval.l), &(yyvsp[(2) - (2)].s)); ;} break; case 139: -#line 1694 "Gmsh.y" +#line 1692 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(4) - (6)].l)); i++){ double d; @@ -5673,7 +5671,7 @@ yyreduce: break; case 140: -#line 1717 "Gmsh.y" +#line 1715 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(4) - (6)].l)); i++){ double d; @@ -5699,7 +5697,7 @@ yyreduce: break; case 141: -#line 1740 "Gmsh.y" +#line 1738 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(4) - (6)].l)); i++){ double d; @@ -5725,7 +5723,7 @@ yyreduce: break; case 142: -#line 1763 "Gmsh.y" +#line 1761 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(4) - (6)].l)); i++){ double d; @@ -5751,7 +5749,7 @@ yyreduce: break; case 143: -#line 1791 "Gmsh.y" +#line 1789 "Gmsh.y" { #if defined(HAVE_DINTEGRATION) if(List_Nbr((yyvsp[(7) - (8)].l)) == 4){ @@ -5775,7 +5773,7 @@ yyreduce: break; case 144: -#line 1813 "Gmsh.y" +#line 1811 "Gmsh.y" { #if defined(HAVE_DINTEGRATION) if(List_Nbr((yyvsp[(12) - (14)].l)) == 0){ @@ -5798,7 +5796,7 @@ yyreduce: break; case 145: -#line 1834 "Gmsh.y" +#line 1832 "Gmsh.y" { #if defined(HAVE_DINTEGRATION) if(List_Nbr((yyvsp[(14) - (16)].l)) == 0){ @@ -5822,7 +5820,7 @@ yyreduce: break; case 146: -#line 1855 "Gmsh.y" +#line 1853 "Gmsh.y" { #if defined(HAVE_DINTEGRATION) if(List_Nbr((yyvsp[(10) - (12)].l)) == 1){ @@ -5845,7 +5843,7 @@ yyreduce: break; case 147: -#line 1875 "Gmsh.y" +#line 1873 "Gmsh.y" { #if defined(HAVE_DINTEGRATION) if(!strcmp((yyvsp[(2) - (8)].c), "Union")){ @@ -5960,7 +5958,7 @@ yyreduce: break; case 148: -#line 1987 "Gmsh.y" +#line 1985 "Gmsh.y" { #if defined(HAVE_DINTEGRATION) if(!strcmp((yyvsp[(2) - (8)].c), "MathEval")){ @@ -5982,7 +5980,7 @@ yyreduce: break; case 149: -#line 2006 "Gmsh.y" +#line 2004 "Gmsh.y" { #if defined(HAVE_DINTEGRATION) if(!strcmp((yyvsp[(2) - (6)].c), "CutMesh")){ @@ -5999,7 +5997,7 @@ yyreduce: break; case 150: -#line 2021 "Gmsh.y" +#line 2019 "Gmsh.y" { #if defined(HAVE_DINTEGRATION) if(!strcmp((yyvsp[(2) - (14)].c), "Cylinder") && List_Nbr((yyvsp[(12) - (14)].l)) == 1){ @@ -6105,7 +6103,7 @@ yyreduce: break; case 151: -#line 2129 "Gmsh.y" +#line 2127 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(3) - (4)].l)); i++){ Shape TheShape; @@ -6117,7 +6115,7 @@ yyreduce: break; case 152: -#line 2138 "Gmsh.y" +#line 2136 "Gmsh.y" { #if defined(HAVE_MESH) GModel::current()->getFields()->deleteField((int)(yyvsp[(4) - (6)].d)); @@ -6126,7 +6124,7 @@ yyreduce: break; case 153: -#line 2144 "Gmsh.y" +#line 2142 "Gmsh.y" { #if defined(HAVE_POST) if(!strcmp((yyvsp[(2) - (6)].c), "View")){ @@ -6144,7 +6142,7 @@ yyreduce: break; case 154: -#line 2159 "Gmsh.y" +#line 2157 "Gmsh.y" { if(!strcmp((yyvsp[(2) - (3)].c), "Meshes") || !strcmp((yyvsp[(2) - (3)].c), "All")){ ClearProject(); @@ -6175,7 +6173,7 @@ yyreduce: break; case 155: -#line 2187 "Gmsh.y" +#line 2185 "Gmsh.y" { #if defined(HAVE_POST) if(!strcmp((yyvsp[(2) - (4)].c), "Empty") && !strcmp((yyvsp[(3) - (4)].c), "Views")){ @@ -6190,7 +6188,7 @@ yyreduce: break; case 156: -#line 2204 "Gmsh.y" +#line 2202 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(4) - (5)].l)); i++){ Shape TheShape; @@ -6202,7 +6200,7 @@ yyreduce: break; case 157: -#line 2218 "Gmsh.y" +#line 2216 "Gmsh.y" { for(int i = 0; i < 4; i++) VisibilityShape((yyvsp[(2) - (3)].c), i, 1); @@ -6211,7 +6209,7 @@ yyreduce: break; case 158: -#line 2224 "Gmsh.y" +#line 2222 "Gmsh.y" { for(int i = 0; i < 4; i++) VisibilityShape((yyvsp[(2) - (3)].c), i, 0); @@ -6220,7 +6218,7 @@ yyreduce: break; case 159: -#line 2230 "Gmsh.y" +#line 2228 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(3) - (4)].l)); i++){ Shape TheShape; @@ -6232,7 +6230,7 @@ yyreduce: break; case 160: -#line 2239 "Gmsh.y" +#line 2237 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(3) - (4)].l)); i++){ Shape TheShape; @@ -6244,7 +6242,7 @@ yyreduce: break; case 161: -#line 2253 "Gmsh.y" +#line 2251 "Gmsh.y" { if(!strcmp((yyvsp[(1) - (3)].c), "Include")){ std::string tmp = FixRelativePath(gmsh_yyname, (yyvsp[(2) - (3)].c)); @@ -6287,7 +6285,7 @@ yyreduce: break; case 162: -#line 2293 "Gmsh.y" +#line 2291 "Gmsh.y" { #if defined(HAVE_POST) if(!strcmp((yyvsp[(1) - (7)].c), "Save") && !strcmp((yyvsp[(2) - (7)].c), "View")){ @@ -6307,7 +6305,7 @@ yyreduce: break; case 163: -#line 2310 "Gmsh.y" +#line 2308 "Gmsh.y" { #if defined(HAVE_POST) && defined(HAVE_MESH) if(!strcmp((yyvsp[(1) - (7)].c), "Background") && !strcmp((yyvsp[(2) - (7)].c), "Mesh") && !strcmp((yyvsp[(3) - (7)].c), "View")){ @@ -6325,7 +6323,7 @@ yyreduce: break; case 164: -#line 2325 "Gmsh.y" +#line 2323 "Gmsh.y" { if(!strcmp((yyvsp[(1) - (3)].c), "Sleep")){ SleepInSeconds((yyvsp[(2) - (3)].d)); @@ -6347,7 +6345,7 @@ yyreduce: break; case 165: -#line 2344 "Gmsh.y" +#line 2342 "Gmsh.y" { #if defined(HAVE_POST) try { @@ -6362,7 +6360,7 @@ yyreduce: break; case 166: -#line 2356 "Gmsh.y" +#line 2354 "Gmsh.y" { #if defined(HAVE_POST) if(!strcmp((yyvsp[(2) - (3)].c), "ElementsFromAllViews")) @@ -6389,14 +6387,14 @@ yyreduce: break; case 167: -#line 2380 "Gmsh.y" +#line 2378 "Gmsh.y" { exit(0); ;} break; case 168: -#line 2384 "Gmsh.y" +#line 2382 "Gmsh.y" { // FIXME: this is a hack to force a transfer from the old DB to // the new DB. This will become unnecessary if/when we fill the @@ -6406,7 +6404,7 @@ yyreduce: break; case 169: -#line 2391 "Gmsh.y" +#line 2389 "Gmsh.y" { CTX::instance()->forcedBBox = 0; GModel::current()->importGEOInternals(); @@ -6415,7 +6413,7 @@ yyreduce: break; case 170: -#line 2397 "Gmsh.y" +#line 2395 "Gmsh.y" { CTX::instance()->forcedBBox = 1; SetBoundingBox((yyvsp[(3) - (15)].d), (yyvsp[(5) - (15)].d), (yyvsp[(7) - (15)].d), (yyvsp[(9) - (15)].d), (yyvsp[(11) - (15)].d), (yyvsp[(13) - (15)].d)); @@ -6423,7 +6421,7 @@ yyreduce: break; case 171: -#line 2402 "Gmsh.y" +#line 2400 "Gmsh.y" { #if defined(HAVE_OPENGL) drawContext::global()->draw(); @@ -6432,14 +6430,14 @@ yyreduce: break; case 172: -#line 2408 "Gmsh.y" +#line 2406 "Gmsh.y" { GModel::current()->createTopologyFromMesh(); ;} break; case 173: -#line 2418 "Gmsh.y" +#line 2416 "Gmsh.y" { LoopControlVariablesTab[ImbricatedLoop][0] = (yyvsp[(3) - (6)].d); LoopControlVariablesTab[ImbricatedLoop][1] = (yyvsp[(5) - (6)].d); @@ -6459,7 +6457,7 @@ yyreduce: break; case 174: -#line 2435 "Gmsh.y" +#line 2433 "Gmsh.y" { LoopControlVariablesTab[ImbricatedLoop][0] = (yyvsp[(3) - (8)].d); LoopControlVariablesTab[ImbricatedLoop][1] = (yyvsp[(5) - (8)].d); @@ -6479,7 +6477,7 @@ yyreduce: break; case 175: -#line 2452 "Gmsh.y" +#line 2450 "Gmsh.y" { LoopControlVariablesTab[ImbricatedLoop][0] = (yyvsp[(5) - (8)].d); LoopControlVariablesTab[ImbricatedLoop][1] = (yyvsp[(7) - (8)].d); @@ -6501,7 +6499,7 @@ yyreduce: break; case 176: -#line 2471 "Gmsh.y" +#line 2469 "Gmsh.y" { LoopControlVariablesTab[ImbricatedLoop][0] = (yyvsp[(5) - (10)].d); LoopControlVariablesTab[ImbricatedLoop][1] = (yyvsp[(7) - (10)].d); @@ -6523,7 +6521,7 @@ yyreduce: break; case 177: -#line 2490 "Gmsh.y" +#line 2488 "Gmsh.y" { if(ImbricatedLoop <= 0){ yymsg(0, "Invalid For/EndFor loop"); @@ -6556,7 +6554,7 @@ yyreduce: break; case 178: -#line 2520 "Gmsh.y" +#line 2518 "Gmsh.y" { if(!FunctionManager::Instance()->createFunction ((yyvsp[(2) - (2)].c), gmsh_yyin, gmsh_yyname, gmsh_yylineno)) @@ -6567,7 +6565,7 @@ yyreduce: break; case 179: -#line 2528 "Gmsh.y" +#line 2526 "Gmsh.y" { if(!FunctionManager::Instance()->leaveFunction (&gmsh_yyin, gmsh_yyname, gmsh_yylineno)) @@ -6576,7 +6574,7 @@ yyreduce: break; case 180: -#line 2534 "Gmsh.y" +#line 2532 "Gmsh.y" { if(!FunctionManager::Instance()->enterFunction ((yyvsp[(2) - (3)].c), &gmsh_yyin, gmsh_yyname, gmsh_yylineno)) @@ -6586,20 +6584,20 @@ yyreduce: break; case 181: -#line 2541 "Gmsh.y" +#line 2539 "Gmsh.y" { if(!(yyvsp[(3) - (4)].d)) skip_until("If", "EndIf"); ;} break; case 182: -#line 2545 "Gmsh.y" +#line 2543 "Gmsh.y" { ;} break; case 183: -#line 2554 "Gmsh.y" +#line 2552 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShapes(TRANSLATE, (yyvsp[(4) - (5)].l), @@ -6610,7 +6608,7 @@ yyreduce: break; case 184: -#line 2562 "Gmsh.y" +#line 2560 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShapes(ROTATE, (yyvsp[(10) - (11)].l), @@ -6621,7 +6619,7 @@ yyreduce: break; case 185: -#line 2570 "Gmsh.y" +#line 2568 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShapes(TRANSLATE_ROTATE, (yyvsp[(12) - (13)].l), @@ -6632,14 +6630,14 @@ yyreduce: break; case 186: -#line 2578 "Gmsh.y" +#line 2576 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; ;} break; case 187: -#line 2582 "Gmsh.y" +#line 2580 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShapes(TRANSLATE, (yyvsp[(4) - (7)].l), @@ -6650,14 +6648,14 @@ yyreduce: break; case 188: -#line 2590 "Gmsh.y" +#line 2588 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; ;} break; case 189: -#line 2594 "Gmsh.y" +#line 2592 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShapes(ROTATE, (yyvsp[(10) - (13)].l), @@ -6668,14 +6666,14 @@ yyreduce: break; case 190: -#line 2602 "Gmsh.y" +#line 2600 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; ;} break; case 191: -#line 2606 "Gmsh.y" +#line 2604 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShapes(TRANSLATE_ROTATE, (yyvsp[(12) - (15)].l), @@ -6686,14 +6684,14 @@ yyreduce: break; case 192: -#line 2614 "Gmsh.y" +#line 2612 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; ;} break; case 193: -#line 2618 "Gmsh.y" +#line 2616 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShapes(BOUNDARY_LAYER, (yyvsp[(3) - (6)].l), 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., @@ -6703,7 +6701,7 @@ yyreduce: break; case 194: -#line 2627 "Gmsh.y" +#line 2625 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE, MSH_POINT, (int)(yyvsp[(4) - (8)].d), @@ -6713,7 +6711,7 @@ yyreduce: break; case 195: -#line 2634 "Gmsh.y" +#line 2632 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (8)].d), @@ -6723,7 +6721,7 @@ yyreduce: break; case 196: -#line 2641 "Gmsh.y" +#line 2639 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (8)].d), @@ -6733,7 +6731,7 @@ yyreduce: break; case 197: -#line 2648 "Gmsh.y" +#line 2646 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(ROTATE, MSH_POINT, (int)(yyvsp[(4) - (12)].d), @@ -6743,7 +6741,7 @@ yyreduce: break; case 198: -#line 2655 "Gmsh.y" +#line 2653 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(ROTATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (12)].d), @@ -6753,7 +6751,7 @@ yyreduce: break; case 199: -#line 2662 "Gmsh.y" +#line 2660 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(ROTATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (12)].d), @@ -6763,7 +6761,7 @@ yyreduce: break; case 200: -#line 2669 "Gmsh.y" +#line 2667 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE_ROTATE, MSH_POINT, (int)(yyvsp[(4) - (14)].d), @@ -6773,7 +6771,7 @@ yyreduce: break; case 201: -#line 2676 "Gmsh.y" +#line 2674 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE_ROTATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (14)].d), @@ -6783,7 +6781,7 @@ yyreduce: break; case 202: -#line 2683 "Gmsh.y" +#line 2681 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE_ROTATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (14)].d), @@ -6793,14 +6791,14 @@ yyreduce: break; case 203: -#line 2690 "Gmsh.y" +#line 2688 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; ;} break; case 204: -#line 2694 "Gmsh.y" +#line 2692 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE, MSH_POINT, (int)(yyvsp[(4) - (12)].d), @@ -6810,14 +6808,14 @@ yyreduce: break; case 205: -#line 2701 "Gmsh.y" +#line 2699 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; ;} break; case 206: -#line 2705 "Gmsh.y" +#line 2703 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (12)].d), @@ -6827,14 +6825,14 @@ yyreduce: break; case 207: -#line 2712 "Gmsh.y" +#line 2710 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; ;} break; case 208: -#line 2716 "Gmsh.y" +#line 2714 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (12)].d), @@ -6844,14 +6842,14 @@ yyreduce: break; case 209: -#line 2723 "Gmsh.y" +#line 2721 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; ;} break; case 210: -#line 2727 "Gmsh.y" +#line 2725 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(ROTATE, MSH_POINT, (int)(yyvsp[(4) - (16)].d), @@ -6861,14 +6859,14 @@ yyreduce: break; case 211: -#line 2734 "Gmsh.y" +#line 2732 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; ;} break; case 212: -#line 2738 "Gmsh.y" +#line 2736 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(ROTATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (16)].d), @@ -6878,14 +6876,14 @@ yyreduce: break; case 213: -#line 2745 "Gmsh.y" +#line 2743 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; ;} break; case 214: -#line 2749 "Gmsh.y" +#line 2747 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(ROTATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (16)].d), @@ -6895,14 +6893,14 @@ yyreduce: break; case 215: -#line 2756 "Gmsh.y" +#line 2754 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; ;} break; case 216: -#line 2760 "Gmsh.y" +#line 2758 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE_ROTATE, MSH_POINT, (int)(yyvsp[(4) - (18)].d), @@ -6912,14 +6910,14 @@ yyreduce: break; case 217: -#line 2767 "Gmsh.y" +#line 2765 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; ;} break; case 218: -#line 2771 "Gmsh.y" +#line 2769 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE_ROTATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (18)].d), @@ -6929,14 +6927,14 @@ yyreduce: break; case 219: -#line 2778 "Gmsh.y" +#line 2776 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; ;} break; case 220: -#line 2782 "Gmsh.y" +#line 2780 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE_ROTATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (18)].d), @@ -6946,19 +6944,19 @@ yyreduce: break; case 221: -#line 2793 "Gmsh.y" +#line 2791 "Gmsh.y" { ;} break; case 222: -#line 2796 "Gmsh.y" +#line 2794 "Gmsh.y" { ;} break; case 223: -#line 2802 "Gmsh.y" +#line 2800 "Gmsh.y" { extr.mesh.ExtrudeMesh = true; extr.mesh.NbLayer = 1; @@ -6970,7 +6968,7 @@ yyreduce: break; case 224: -#line 2811 "Gmsh.y" +#line 2809 "Gmsh.y" { extr.mesh.ExtrudeMesh = true; extr.mesh.NbLayer = List_Nbr((yyvsp[(3) - (7)].l)); @@ -6993,7 +6991,7 @@ yyreduce: break; case 225: -#line 2831 "Gmsh.y" +#line 2829 "Gmsh.y" { yymsg(0, "Explicit region numbers in layers are deprecated"); extr.mesh.ExtrudeMesh = true; @@ -7019,14 +7017,14 @@ yyreduce: break; case 226: -#line 2854 "Gmsh.y" +#line 2852 "Gmsh.y" { extr.mesh.Recombine = true; ;} break; case 227: -#line 2858 "Gmsh.y" +#line 2856 "Gmsh.y" { int num = (int)(yyvsp[(3) - (9)].d); if(FindSurface(num)){ @@ -7048,52 +7046,36 @@ yyreduce: break; case 228: -#line 2881 "Gmsh.y" +#line 2879 "Gmsh.y" { (yyval.i) = 1; // harmonic ;} break; case 229: -#line 2885 "Gmsh.y" +#line 2883 "Gmsh.y" { - if(!strcmp((yyvsp[(1) - (1)].c), "Convex")) - (yyval.i) = 0; - else if(!strcmp((yyvsp[(1) - (1)].c), "Harmonic")) + if(!strcmp((yyvsp[(1) - (1)].c), "Harmonic")) (yyval.i) = 1; else if(!strcmp((yyvsp[(1) - (1)].c), "Conformal")) (yyval.i) = -1; + else if(!strcmp((yyvsp[(1) - (1)].c), "Harmonic_NoSplit")) + (yyval.i) = 2; + else if(!strcmp((yyvsp[(1) - (1)].c), "Conformal_NoSplit")) + (yyval.i) = -2; Free((yyvsp[(1) - (1)].c)); ;} break; case 230: -#line 2896 "Gmsh.y" +#line 2898 "Gmsh.y" { - (yyval.i) = 1; // partitionning allowed + (yyval.v)[0] = (yyval.v)[1] = 1.; ;} break; case 231: -#line 2900 "Gmsh.y" - { - if(!strcmp((yyvsp[(1) - (1)].c), "NoSplit")) - (yyval.i) = 0; - else - (yyval.i) = 1; - Free((yyvsp[(1) - (1)].c)); - ;} - break; - - case 232: -#line 2911 "Gmsh.y" - { - (yyval.v)[0] = (yyval.v)[1] = 1.; - ;} - break; - - case 233: -#line 2915 "Gmsh.y" +#line 2902 "Gmsh.y" { if(!strcmp((yyvsp[(2) - (3)].c), "Progression") || !strcmp((yyvsp[(2) - (3)].c), "Power")) (yyval.v)[0] = 1.; @@ -7108,15 +7090,15 @@ yyreduce: ;} break; - case 234: -#line 2930 "Gmsh.y" + case 232: +#line 2917 "Gmsh.y" { (yyval.i) = -1; // left ;} break; - case 235: -#line 2934 "Gmsh.y" + case 233: +#line 2921 "Gmsh.y" { if(!strcmp((yyvsp[(1) - (1)].c), "Right")) (yyval.i) = 1; @@ -7128,36 +7110,36 @@ yyreduce: ;} break; - case 236: -#line 2946 "Gmsh.y" + case 234: +#line 2933 "Gmsh.y" { (yyval.l) = List_Create(1, 1, sizeof(double)); ;} break; - case 237: -#line 2950 "Gmsh.y" + case 235: +#line 2937 "Gmsh.y" { (yyval.l) = (yyvsp[(2) - (2)].l); ;} break; - case 238: -#line 2955 "Gmsh.y" + case 236: +#line 2942 "Gmsh.y" { (yyval.i) = 45; ;} break; - case 239: -#line 2959 "Gmsh.y" + case 237: +#line 2946 "Gmsh.y" { (yyval.i) = (int)(yyvsp[(2) - (2)].d); ;} break; - case 240: -#line 2966 "Gmsh.y" + case 238: +#line 2953 "Gmsh.y" { int type = (int)(yyvsp[(6) - (7)].v)[0]; double coef = fabs((yyvsp[(6) - (7)].v)[1]); @@ -7215,8 +7197,8 @@ yyreduce: ;} break; - case 241: -#line 3022 "Gmsh.y" + case 239: +#line 3009 "Gmsh.y" { int k = List_Nbr((yyvsp[(4) - (6)].l)); if(k != 0 && k != 3 && k != 4){ @@ -7288,16 +7270,16 @@ yyreduce: ;} break; - case 242: -#line 3092 "Gmsh.y" + case 240: +#line 3079 "Gmsh.y" { yymsg(1, "Elliptic Surface is deprecated: use Transfinite instead (with smoothing)"); List_Delete((yyvsp[(7) - (8)].l)); ;} break; - case 243: -#line 3097 "Gmsh.y" + case 241: +#line 3084 "Gmsh.y" { int k = List_Nbr((yyvsp[(4) - (5)].l)); if(k != 0 && k != 6 && k != 8){ @@ -7366,8 +7348,8 @@ yyreduce: ;} break; - case 244: -#line 3164 "Gmsh.y" + case 242: +#line 3151 "Gmsh.y" { if(!(yyvsp[(3) - (5)].l)){ List_T *tmp = Tree2List(GModel::current()->getGEOInternals()->Surfaces); @@ -7412,8 +7394,8 @@ yyreduce: ;} break; - case 245: -#line 3207 "Gmsh.y" + case 243: +#line 3194 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(3) - (6)].l)); i++){ double d; @@ -7435,8 +7417,8 @@ yyreduce: ;} break; - case 246: -#line 3233 "Gmsh.y" + case 244: +#line 3220 "Gmsh.y" { Surface *s = FindSurface((int)(yyvsp[(8) - (10)].d)); if(s){ @@ -7461,8 +7443,8 @@ yyreduce: ;} break; - case 247: -#line 3256 "Gmsh.y" + case 245: +#line 3243 "Gmsh.y" { Surface *s = FindSurface((int)(yyvsp[(8) - (10)].d)); if(s){ @@ -7487,27 +7469,27 @@ yyreduce: ;} break; - case 248: -#line 3279 "Gmsh.y" + case 246: +#line 3266 "Gmsh.y" { ;} break; - case 249: -#line 3282 "Gmsh.y" + case 247: +#line 3269 "Gmsh.y" { ;} break; - case 250: -#line 3291 "Gmsh.y" + case 248: +#line 3278 "Gmsh.y" { ReplaceAllDuplicates(); ;} break; - case 251: -#line 3295 "Gmsh.y" + case 249: +#line 3282 "Gmsh.y" { if(!strcmp((yyvsp[(2) - (3)].c), "Geometry")) ReplaceAllDuplicates(); @@ -7519,8 +7501,8 @@ yyreduce: ;} break; - case 252: -#line 3312 "Gmsh.y" + case 250: +#line 3299 "Gmsh.y" { List_T *temp = ListOfDouble2ListOfInt((yyvsp[(3) - (7)].l)); @@ -7554,8 +7536,8 @@ yyreduce: ;} break; - case 253: -#line 3345 "Gmsh.y" + case 251: +#line 3332 "Gmsh.y" { List_T *temp = ListOfDouble2ListOfInt((yyvsp[(7) - (11)].l)); std::vector<int> domain; @@ -7590,8 +7572,8 @@ yyreduce: ;} break; - case 254: -#line 3379 "Gmsh.y" + case 252: +#line 3366 "Gmsh.y" { List_T *temp = ListOfDouble2ListOfInt((yyvsp[(7) - (11)].l)); std::vector<int> domain; @@ -7626,48 +7608,48 @@ yyreduce: ;} break; - case 255: -#line 3416 "Gmsh.y" + case 253: +#line 3403 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (1)].d); ;} break; - case 256: -#line 3417 "Gmsh.y" + case 254: +#line 3404 "Gmsh.y" { (yyval.d) = (yyvsp[(2) - (3)].d); ;} break; - case 257: -#line 3418 "Gmsh.y" + case 255: +#line 3405 "Gmsh.y" { (yyval.d) = -(yyvsp[(2) - (2)].d); ;} break; - case 258: -#line 3419 "Gmsh.y" + case 256: +#line 3406 "Gmsh.y" { (yyval.d) = (yyvsp[(2) - (2)].d); ;} break; - case 259: -#line 3420 "Gmsh.y" + case 257: +#line 3407 "Gmsh.y" { (yyval.d) = !(yyvsp[(2) - (2)].d); ;} break; - case 260: -#line 3421 "Gmsh.y" + case 258: +#line 3408 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) - (yyvsp[(3) - (3)].d); ;} break; - case 261: -#line 3422 "Gmsh.y" + case 259: +#line 3409 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) + (yyvsp[(3) - (3)].d); ;} break; - case 262: -#line 3423 "Gmsh.y" + case 260: +#line 3410 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) * (yyvsp[(3) - (3)].d); ;} break; - case 263: -#line 3425 "Gmsh.y" + case 261: +#line 3412 "Gmsh.y" { if(!(yyvsp[(3) - (3)].d)) yymsg(0, "Division by zero in '%g / %g'", (yyvsp[(1) - (3)].d), (yyvsp[(3) - (3)].d)); @@ -7676,308 +7658,308 @@ yyreduce: ;} break; - case 264: -#line 3431 "Gmsh.y" + case 262: +#line 3418 "Gmsh.y" { (yyval.d) = (int)(yyvsp[(1) - (3)].d) % (int)(yyvsp[(3) - (3)].d); ;} break; - case 265: -#line 3432 "Gmsh.y" + case 263: +#line 3419 "Gmsh.y" { (yyval.d) = pow((yyvsp[(1) - (3)].d), (yyvsp[(3) - (3)].d)); ;} break; - case 266: -#line 3433 "Gmsh.y" + case 264: +#line 3420 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) < (yyvsp[(3) - (3)].d); ;} break; - case 267: -#line 3434 "Gmsh.y" + case 265: +#line 3421 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) > (yyvsp[(3) - (3)].d); ;} break; - case 268: -#line 3435 "Gmsh.y" + case 266: +#line 3422 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) <= (yyvsp[(3) - (3)].d); ;} break; - case 269: -#line 3436 "Gmsh.y" + case 267: +#line 3423 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) >= (yyvsp[(3) - (3)].d); ;} break; - case 270: -#line 3437 "Gmsh.y" + case 268: +#line 3424 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) == (yyvsp[(3) - (3)].d); ;} break; - case 271: -#line 3438 "Gmsh.y" + case 269: +#line 3425 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) != (yyvsp[(3) - (3)].d); ;} break; - case 272: -#line 3439 "Gmsh.y" + case 270: +#line 3426 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) && (yyvsp[(3) - (3)].d); ;} break; - case 273: -#line 3440 "Gmsh.y" + case 271: +#line 3427 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) || (yyvsp[(3) - (3)].d); ;} break; - case 274: -#line 3441 "Gmsh.y" + case 272: +#line 3428 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (5)].d) ? (yyvsp[(3) - (5)].d) : (yyvsp[(5) - (5)].d); ;} break; - case 275: -#line 3442 "Gmsh.y" + case 273: +#line 3429 "Gmsh.y" { (yyval.d) = exp((yyvsp[(3) - (4)].d)); ;} break; - case 276: -#line 3443 "Gmsh.y" + case 274: +#line 3430 "Gmsh.y" { (yyval.d) = log((yyvsp[(3) - (4)].d)); ;} break; - case 277: -#line 3444 "Gmsh.y" + case 275: +#line 3431 "Gmsh.y" { (yyval.d) = log10((yyvsp[(3) - (4)].d)); ;} break; - case 278: -#line 3445 "Gmsh.y" + case 276: +#line 3432 "Gmsh.y" { (yyval.d) = sqrt((yyvsp[(3) - (4)].d)); ;} break; - case 279: -#line 3446 "Gmsh.y" + case 277: +#line 3433 "Gmsh.y" { (yyval.d) = sin((yyvsp[(3) - (4)].d)); ;} break; - case 280: -#line 3447 "Gmsh.y" + case 278: +#line 3434 "Gmsh.y" { (yyval.d) = asin((yyvsp[(3) - (4)].d)); ;} break; - case 281: -#line 3448 "Gmsh.y" + case 279: +#line 3435 "Gmsh.y" { (yyval.d) = cos((yyvsp[(3) - (4)].d)); ;} break; - case 282: -#line 3449 "Gmsh.y" + case 280: +#line 3436 "Gmsh.y" { (yyval.d) = acos((yyvsp[(3) - (4)].d)); ;} break; - case 283: -#line 3450 "Gmsh.y" + case 281: +#line 3437 "Gmsh.y" { (yyval.d) = tan((yyvsp[(3) - (4)].d)); ;} break; - case 284: -#line 3451 "Gmsh.y" + case 282: +#line 3438 "Gmsh.y" { (yyval.d) = atan((yyvsp[(3) - (4)].d)); ;} break; - case 285: -#line 3452 "Gmsh.y" + case 283: +#line 3439 "Gmsh.y" { (yyval.d) = atan2((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d));;} break; - case 286: -#line 3453 "Gmsh.y" + case 284: +#line 3440 "Gmsh.y" { (yyval.d) = sinh((yyvsp[(3) - (4)].d)); ;} break; - case 287: -#line 3454 "Gmsh.y" + case 285: +#line 3441 "Gmsh.y" { (yyval.d) = cosh((yyvsp[(3) - (4)].d)); ;} break; - case 288: -#line 3455 "Gmsh.y" + case 286: +#line 3442 "Gmsh.y" { (yyval.d) = tanh((yyvsp[(3) - (4)].d)); ;} break; - case 289: -#line 3456 "Gmsh.y" + case 287: +#line 3443 "Gmsh.y" { (yyval.d) = fabs((yyvsp[(3) - (4)].d)); ;} break; - case 290: -#line 3457 "Gmsh.y" + case 288: +#line 3444 "Gmsh.y" { (yyval.d) = floor((yyvsp[(3) - (4)].d)); ;} break; - case 291: -#line 3458 "Gmsh.y" + case 289: +#line 3445 "Gmsh.y" { (yyval.d) = ceil((yyvsp[(3) - (4)].d)); ;} break; - case 292: -#line 3459 "Gmsh.y" + case 290: +#line 3446 "Gmsh.y" { (yyval.d) = fmod((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d)); ;} break; - case 293: -#line 3460 "Gmsh.y" + case 291: +#line 3447 "Gmsh.y" { (yyval.d) = fmod((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d)); ;} break; - case 294: -#line 3461 "Gmsh.y" + case 292: +#line 3448 "Gmsh.y" { (yyval.d) = sqrt((yyvsp[(3) - (6)].d) * (yyvsp[(3) - (6)].d) + (yyvsp[(5) - (6)].d) * (yyvsp[(5) - (6)].d)); ;} break; - case 295: -#line 3462 "Gmsh.y" + case 293: +#line 3449 "Gmsh.y" { (yyval.d) = (yyvsp[(3) - (4)].d) * (double)rand() / (double)RAND_MAX; ;} break; - case 296: -#line 3464 "Gmsh.y" + case 294: +#line 3451 "Gmsh.y" { (yyval.d) = exp((yyvsp[(3) - (4)].d)); ;} break; - case 297: -#line 3465 "Gmsh.y" + case 295: +#line 3452 "Gmsh.y" { (yyval.d) = log((yyvsp[(3) - (4)].d)); ;} break; - case 298: -#line 3466 "Gmsh.y" + case 296: +#line 3453 "Gmsh.y" { (yyval.d) = log10((yyvsp[(3) - (4)].d)); ;} break; - case 299: -#line 3467 "Gmsh.y" + case 297: +#line 3454 "Gmsh.y" { (yyval.d) = sqrt((yyvsp[(3) - (4)].d)); ;} break; - case 300: -#line 3468 "Gmsh.y" + case 298: +#line 3455 "Gmsh.y" { (yyval.d) = sin((yyvsp[(3) - (4)].d)); ;} break; - case 301: -#line 3469 "Gmsh.y" + case 299: +#line 3456 "Gmsh.y" { (yyval.d) = asin((yyvsp[(3) - (4)].d)); ;} break; - case 302: -#line 3470 "Gmsh.y" + case 300: +#line 3457 "Gmsh.y" { (yyval.d) = cos((yyvsp[(3) - (4)].d)); ;} break; - case 303: -#line 3471 "Gmsh.y" + case 301: +#line 3458 "Gmsh.y" { (yyval.d) = acos((yyvsp[(3) - (4)].d)); ;} break; - case 304: -#line 3472 "Gmsh.y" + case 302: +#line 3459 "Gmsh.y" { (yyval.d) = tan((yyvsp[(3) - (4)].d)); ;} break; - case 305: -#line 3473 "Gmsh.y" + case 303: +#line 3460 "Gmsh.y" { (yyval.d) = atan((yyvsp[(3) - (4)].d)); ;} break; - case 306: -#line 3474 "Gmsh.y" + case 304: +#line 3461 "Gmsh.y" { (yyval.d) = atan2((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d));;} break; - case 307: -#line 3475 "Gmsh.y" + case 305: +#line 3462 "Gmsh.y" { (yyval.d) = sinh((yyvsp[(3) - (4)].d)); ;} break; - case 308: -#line 3476 "Gmsh.y" + case 306: +#line 3463 "Gmsh.y" { (yyval.d) = cosh((yyvsp[(3) - (4)].d)); ;} break; - case 309: -#line 3477 "Gmsh.y" + case 307: +#line 3464 "Gmsh.y" { (yyval.d) = tanh((yyvsp[(3) - (4)].d)); ;} break; - case 310: -#line 3478 "Gmsh.y" + case 308: +#line 3465 "Gmsh.y" { (yyval.d) = fabs((yyvsp[(3) - (4)].d)); ;} break; - case 311: -#line 3479 "Gmsh.y" + case 309: +#line 3466 "Gmsh.y" { (yyval.d) = floor((yyvsp[(3) - (4)].d)); ;} break; - case 312: -#line 3480 "Gmsh.y" + case 310: +#line 3467 "Gmsh.y" { (yyval.d) = ceil((yyvsp[(3) - (4)].d)); ;} break; - case 313: -#line 3481 "Gmsh.y" + case 311: +#line 3468 "Gmsh.y" { (yyval.d) = fmod((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d)); ;} break; - case 314: -#line 3482 "Gmsh.y" + case 312: +#line 3469 "Gmsh.y" { (yyval.d) = fmod((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d)); ;} break; - case 315: -#line 3483 "Gmsh.y" + case 313: +#line 3470 "Gmsh.y" { (yyval.d) = sqrt((yyvsp[(3) - (6)].d) * (yyvsp[(3) - (6)].d) + (yyvsp[(5) - (6)].d) * (yyvsp[(5) - (6)].d)); ;} break; - case 316: -#line 3484 "Gmsh.y" + case 314: +#line 3471 "Gmsh.y" { (yyval.d) = (yyvsp[(3) - (4)].d) * (double)rand() / (double)RAND_MAX; ;} break; - case 317: -#line 3493 "Gmsh.y" + case 315: +#line 3480 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (1)].d); ;} break; - case 318: -#line 3494 "Gmsh.y" + case 316: +#line 3481 "Gmsh.y" { (yyval.d) = 3.141592653589793; ;} break; - case 319: -#line 3495 "Gmsh.y" + case 317: +#line 3482 "Gmsh.y" { (yyval.d) = Msg::GetCommRank(); ;} break; - case 320: -#line 3496 "Gmsh.y" + case 318: +#line 3483 "Gmsh.y" { (yyval.d) = Msg::GetCommSize(); ;} break; - case 321: -#line 3497 "Gmsh.y" + case 319: +#line 3484 "Gmsh.y" { (yyval.d) = GetGmshMajorVersion(); ;} break; - case 322: -#line 3498 "Gmsh.y" + case 320: +#line 3485 "Gmsh.y" { (yyval.d) = GetGmshMinorVersion(); ;} break; - case 323: -#line 3499 "Gmsh.y" + case 321: +#line 3486 "Gmsh.y" { (yyval.d) = GetGmshPatchVersion(); ;} break; - case 324: -#line 3504 "Gmsh.y" + case 322: +#line 3491 "Gmsh.y" { if(!gmsh_yysymbols.count((yyvsp[(1) - (1)].c))){ yymsg(0, "Unknown variable '%s'", (yyvsp[(1) - (1)].c)); @@ -7989,8 +7971,8 @@ yyreduce: ;} break; - case 325: -#line 3517 "Gmsh.y" + case 323: +#line 3504 "Gmsh.y" { char tmpstring[1024]; sprintf(tmpstring, "%s_%d", (yyvsp[(1) - (5)].c), (int)(yyvsp[(4) - (5)].d)) ; @@ -8004,8 +7986,8 @@ yyreduce: ;} break; - case 326: -#line 3529 "Gmsh.y" + case 324: +#line 3516 "Gmsh.y" { int index = (int)(yyvsp[(3) - (4)].d); if(!gmsh_yysymbols.count((yyvsp[(1) - (4)].c))){ @@ -8022,8 +8004,8 @@ yyreduce: ;} break; - case 327: -#line 3544 "Gmsh.y" + case 325: +#line 3531 "Gmsh.y" { if(!gmsh_yysymbols.count((yyvsp[(2) - (4)].c))){ yymsg(0, "Unknown variable '%s'", (yyvsp[(2) - (4)].c)); @@ -8035,8 +8017,8 @@ yyreduce: ;} break; - case 328: -#line 3554 "Gmsh.y" + case 326: +#line 3541 "Gmsh.y" { if(!gmsh_yysymbols.count((yyvsp[(1) - (2)].c))){ yymsg(0, "Unknown variable '%s'", (yyvsp[(1) - (2)].c)); @@ -8048,8 +8030,8 @@ yyreduce: ;} break; - case 329: -#line 3564 "Gmsh.y" + case 327: +#line 3551 "Gmsh.y" { int index = (int)(yyvsp[(3) - (5)].d); if(!gmsh_yysymbols.count((yyvsp[(1) - (5)].c))){ @@ -8066,24 +8048,24 @@ yyreduce: ;} break; - case 330: -#line 3582 "Gmsh.y" + case 328: +#line 3569 "Gmsh.y" { NumberOption(GMSH_GET, (yyvsp[(1) - (3)].c), 0, (yyvsp[(3) - (3)].c), (yyval.d)); Free((yyvsp[(1) - (3)].c)); Free((yyvsp[(3) - (3)].c)); ;} break; - case 331: -#line 3587 "Gmsh.y" + case 329: +#line 3574 "Gmsh.y" { NumberOption(GMSH_GET, (yyvsp[(1) - (6)].c), (int)(yyvsp[(3) - (6)].d), (yyvsp[(6) - (6)].c), (yyval.d)); Free((yyvsp[(1) - (6)].c)); Free((yyvsp[(6) - (6)].c)); ;} break; - case 332: -#line 3592 "Gmsh.y" + case 330: +#line 3579 "Gmsh.y" { double d = 0.; if(NumberOption(GMSH_GET, (yyvsp[(1) - (4)].c), 0, (yyvsp[(3) - (4)].c), d)){ @@ -8095,8 +8077,8 @@ yyreduce: ;} break; - case 333: -#line 3602 "Gmsh.y" + case 331: +#line 3589 "Gmsh.y" { double d = 0.; if(NumberOption(GMSH_GET, (yyvsp[(1) - (7)].c), (int)(yyvsp[(3) - (7)].d), (yyvsp[(6) - (7)].c), d)){ @@ -8108,124 +8090,124 @@ yyreduce: ;} break; - case 334: -#line 3612 "Gmsh.y" + case 332: +#line 3599 "Gmsh.y" { (yyval.d) = Msg::GetValue((yyvsp[(3) - (6)].c), (yyvsp[(5) - (6)].d)); Free((yyvsp[(3) - (6)].c)); ;} break; - case 335: -#line 3620 "Gmsh.y" + case 333: +#line 3607 "Gmsh.y" { memcpy((yyval.v), (yyvsp[(1) - (1)].v), 5*sizeof(double)); ;} break; - case 336: -#line 3624 "Gmsh.y" + case 334: +#line 3611 "Gmsh.y" { for(int i = 0; i < 5; i++) (yyval.v)[i] = -(yyvsp[(2) - (2)].v)[i]; ;} break; - case 337: -#line 3628 "Gmsh.y" + case 335: +#line 3615 "Gmsh.y" { for(int i = 0; i < 5; i++) (yyval.v)[i] = (yyvsp[(2) - (2)].v)[i]; ;} break; - case 338: -#line 3632 "Gmsh.y" + case 336: +#line 3619 "Gmsh.y" { for(int i = 0; i < 5; i++) (yyval.v)[i] = (yyvsp[(1) - (3)].v)[i] - (yyvsp[(3) - (3)].v)[i]; ;} break; - case 339: -#line 3636 "Gmsh.y" + case 337: +#line 3623 "Gmsh.y" { for(int i = 0; i < 5; i++) (yyval.v)[i] = (yyvsp[(1) - (3)].v)[i] + (yyvsp[(3) - (3)].v)[i]; ;} break; - case 340: -#line 3643 "Gmsh.y" + case 338: +#line 3630 "Gmsh.y" { (yyval.v)[0] = (yyvsp[(2) - (11)].d); (yyval.v)[1] = (yyvsp[(4) - (11)].d); (yyval.v)[2] = (yyvsp[(6) - (11)].d); (yyval.v)[3] = (yyvsp[(8) - (11)].d); (yyval.v)[4] = (yyvsp[(10) - (11)].d); ;} break; - case 341: -#line 3647 "Gmsh.y" + case 339: +#line 3634 "Gmsh.y" { (yyval.v)[0] = (yyvsp[(2) - (9)].d); (yyval.v)[1] = (yyvsp[(4) - (9)].d); (yyval.v)[2] = (yyvsp[(6) - (9)].d); (yyval.v)[3] = (yyvsp[(8) - (9)].d); (yyval.v)[4] = 1.0; ;} break; - case 342: -#line 3651 "Gmsh.y" + case 340: +#line 3638 "Gmsh.y" { (yyval.v)[0] = (yyvsp[(2) - (7)].d); (yyval.v)[1] = (yyvsp[(4) - (7)].d); (yyval.v)[2] = (yyvsp[(6) - (7)].d); (yyval.v)[3] = 0.0; (yyval.v)[4] = 1.0; ;} break; - case 343: -#line 3655 "Gmsh.y" + case 341: +#line 3642 "Gmsh.y" { (yyval.v)[0] = (yyvsp[(2) - (7)].d); (yyval.v)[1] = (yyvsp[(4) - (7)].d); (yyval.v)[2] = (yyvsp[(6) - (7)].d); (yyval.v)[3] = 0.0; (yyval.v)[4] = 1.0; ;} break; - case 344: -#line 3662 "Gmsh.y" + case 342: +#line 3649 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(List_T*)); List_Add((yyval.l), &((yyvsp[(1) - (1)].l))); ;} break; - case 345: -#line 3667 "Gmsh.y" + case 343: +#line 3654 "Gmsh.y" { List_Add((yyval.l), &((yyvsp[(3) - (3)].l))); ;} break; - case 346: -#line 3674 "Gmsh.y" + case 344: +#line 3661 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(double)); List_Add((yyval.l), &((yyvsp[(1) - (1)].d))); ;} break; - case 347: -#line 3679 "Gmsh.y" + case 345: +#line 3666 "Gmsh.y" { (yyval.l) = (yyvsp[(1) - (1)].l); ;} break; - case 348: -#line 3683 "Gmsh.y" + case 346: +#line 3670 "Gmsh.y" { // creates an empty list (yyval.l) = List_Create(2, 1, sizeof(double)); ;} break; - case 349: -#line 3688 "Gmsh.y" + case 347: +#line 3675 "Gmsh.y" { (yyval.l) = (yyvsp[(2) - (3)].l); ;} break; - case 350: -#line 3692 "Gmsh.y" + case 348: +#line 3679 "Gmsh.y" { (yyval.l) = (yyvsp[(3) - (4)].l); for(int i = 0; i < List_Nbr((yyval.l)); i++){ @@ -8235,8 +8217,8 @@ yyreduce: ;} break; - case 351: -#line 3700 "Gmsh.y" + case 349: +#line 3687 "Gmsh.y" { (yyval.l) = (yyvsp[(4) - (5)].l); for(int i = 0; i < List_Nbr((yyval.l)); i++){ @@ -8246,15 +8228,15 @@ yyreduce: ;} break; - case 352: -#line 3711 "Gmsh.y" + case 350: +#line 3698 "Gmsh.y" { (yyval.l) = (yyvsp[(1) - (1)].l); ;} break; - case 353: -#line 3715 "Gmsh.y" + case 351: +#line 3702 "Gmsh.y" { if(!strcmp((yyvsp[(1) - (1)].c), "*") || !strcmp((yyvsp[(1) - (1)].c), "all")) (yyval.l) = 0; @@ -8265,8 +8247,8 @@ yyreduce: ;} break; - case 354: -#line 3727 "Gmsh.y" + case 352: +#line 3714 "Gmsh.y" { (yyval.l) = (yyvsp[(2) - (2)].l); for(int i = 0; i < List_Nbr((yyval.l)); i++){ @@ -8276,8 +8258,8 @@ yyreduce: ;} break; - case 355: -#line 3735 "Gmsh.y" + case 353: +#line 3722 "Gmsh.y" { (yyval.l) = (yyvsp[(3) - (3)].l); for(int i = 0; i < List_Nbr((yyval.l)); i++){ @@ -8287,8 +8269,8 @@ yyreduce: ;} break; - case 356: -#line 3743 "Gmsh.y" + case 354: +#line 3730 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(double)); for(double d = (yyvsp[(1) - (3)].d); ((yyvsp[(1) - (3)].d) < (yyvsp[(3) - (3)].d)) ? (d <= (yyvsp[(3) - (3)].d)) : (d >= (yyvsp[(3) - (3)].d)); @@ -8297,8 +8279,8 @@ yyreduce: ;} break; - case 357: -#line 3750 "Gmsh.y" + case 355: +#line 3737 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(double)); if(!(yyvsp[(5) - (5)].d) || ((yyvsp[(1) - (5)].d) < (yyvsp[(3) - (5)].d) && (yyvsp[(5) - (5)].d) < 0) || ((yyvsp[(1) - (5)].d) > (yyvsp[(3) - (5)].d) && (yyvsp[(5) - (5)].d) > 0)){ @@ -8311,8 +8293,8 @@ yyreduce: ;} break; - case 358: -#line 3761 "Gmsh.y" + case 356: +#line 3748 "Gmsh.y" { // Returns the coordinates of a point and fills a list with it. // This allows to ensure e.g. that relative point positions are @@ -8334,8 +8316,8 @@ yyreduce: ;} break; - case 359: -#line 3781 "Gmsh.y" + case 357: +#line 3768 "Gmsh.y" { (yyval.l) = List_Create(List_Nbr((yyvsp[(1) - (1)].l)), 1, sizeof(double)); for(int i = 0; i < List_Nbr((yyvsp[(1) - (1)].l)); i++){ @@ -8347,8 +8329,8 @@ yyreduce: ;} break; - case 360: -#line 3791 "Gmsh.y" + case 358: +#line 3778 "Gmsh.y" { (yyval.l) = List_Create(List_Nbr((yyvsp[(1) - (1)].l)), 1, sizeof(double)); for(int i = 0; i < List_Nbr((yyvsp[(1) - (1)].l)); i++){ @@ -8360,8 +8342,8 @@ yyreduce: ;} break; - case 361: -#line 3801 "Gmsh.y" + case 359: +#line 3788 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(double)); if(!gmsh_yysymbols.count((yyvsp[(1) - (3)].c))) @@ -8373,8 +8355,8 @@ yyreduce: ;} break; - case 362: -#line 3811 "Gmsh.y" + case 360: +#line 3798 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(double)); if(!gmsh_yysymbols.count((yyvsp[(1) - (6)].c))) @@ -8393,30 +8375,30 @@ yyreduce: ;} break; - case 363: -#line 3831 "Gmsh.y" + case 361: +#line 3818 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(double)); List_Add((yyval.l), &((yyvsp[(1) - (1)].d))); ;} break; - case 364: -#line 3836 "Gmsh.y" + case 362: +#line 3823 "Gmsh.y" { (yyval.l) = (yyvsp[(1) - (1)].l); ;} break; - case 365: -#line 3840 "Gmsh.y" + case 363: +#line 3827 "Gmsh.y" { List_Add((yyval.l), &((yyvsp[(3) - (3)].d))); ;} break; - case 366: -#line 3844 "Gmsh.y" + case 364: +#line 3831 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(3) - (3)].l)); i++){ double d; @@ -8427,22 +8409,22 @@ yyreduce: ;} break; - case 367: -#line 3856 "Gmsh.y" + case 365: +#line 3843 "Gmsh.y" { (yyval.u) = CTX::instance()->packColor((int)(yyvsp[(2) - (9)].d), (int)(yyvsp[(4) - (9)].d), (int)(yyvsp[(6) - (9)].d), (int)(yyvsp[(8) - (9)].d)); ;} break; - case 368: -#line 3860 "Gmsh.y" + case 366: +#line 3847 "Gmsh.y" { (yyval.u) = CTX::instance()->packColor((int)(yyvsp[(2) - (7)].d), (int)(yyvsp[(4) - (7)].d), (int)(yyvsp[(6) - (7)].d), 255); ;} break; - case 369: -#line 3872 "Gmsh.y" + case 367: +#line 3859 "Gmsh.y" { int flag; (yyval.u) = GetColorForString(ColorString, -1, (yyvsp[(1) - (1)].c), &flag); @@ -8451,8 +8433,8 @@ yyreduce: ;} break; - case 370: -#line 3879 "Gmsh.y" + case 368: +#line 3866 "Gmsh.y" { unsigned int val = 0; ColorOption(GMSH_GET, (yyvsp[(1) - (5)].c), 0, (yyvsp[(5) - (5)].c), val); @@ -8461,15 +8443,15 @@ yyreduce: ;} break; - case 371: -#line 3889 "Gmsh.y" + case 369: +#line 3876 "Gmsh.y" { (yyval.l) = (yyvsp[(2) - (3)].l); ;} break; - case 372: -#line 3893 "Gmsh.y" + case 370: +#line 3880 "Gmsh.y" { (yyval.l) = List_Create(256, 10, sizeof(unsigned int)); GmshColorTable *ct = GetColorTable((int)(yyvsp[(3) - (6)].d)); @@ -8483,30 +8465,30 @@ yyreduce: ;} break; - case 373: -#line 3908 "Gmsh.y" + case 371: +#line 3895 "Gmsh.y" { (yyval.l) = List_Create(256, 10, sizeof(unsigned int)); List_Add((yyval.l), &((yyvsp[(1) - (1)].u))); ;} break; - case 374: -#line 3913 "Gmsh.y" + case 372: +#line 3900 "Gmsh.y" { List_Add((yyval.l), &((yyvsp[(3) - (3)].u))); ;} break; - case 375: -#line 3920 "Gmsh.y" + case 373: +#line 3907 "Gmsh.y" { (yyval.c) = (yyvsp[(1) - (1)].c); ;} break; - case 376: -#line 3924 "Gmsh.y" + case 374: +#line 3911 "Gmsh.y" { if(!gmsh_yystringsymbols.count((yyvsp[(1) - (1)].c))){ yymsg(0, "Unknown string variable '%s'", (yyvsp[(1) - (1)].c)); @@ -8521,8 +8503,8 @@ yyreduce: ;} break; - case 377: -#line 3937 "Gmsh.y" + case 375: +#line 3924 "Gmsh.y" { std::string out; StringOption(GMSH_GET, (yyvsp[(1) - (3)].c), 0, (yyvsp[(3) - (3)].c), out); @@ -8532,8 +8514,8 @@ yyreduce: ;} break; - case 378: -#line 3945 "Gmsh.y" + case 376: +#line 3932 "Gmsh.y" { std::string out; StringOption(GMSH_GET, (yyvsp[(1) - (6)].c), (int)(yyvsp[(3) - (6)].d), (yyvsp[(6) - (6)].c), out); @@ -8543,15 +8525,15 @@ yyreduce: ;} break; - case 379: -#line 3956 "Gmsh.y" + case 377: +#line 3943 "Gmsh.y" { (yyval.c) = (yyvsp[(1) - (1)].c); ;} break; - case 380: -#line 3960 "Gmsh.y" + case 378: +#line 3947 "Gmsh.y" { (yyval.c) = (char *)Malloc(32 * sizeof(char)); time_t now; @@ -8561,8 +8543,8 @@ yyreduce: ;} break; - case 381: -#line 3968 "Gmsh.y" + case 379: +#line 3955 "Gmsh.y" { (yyval.c) = (char *)Malloc((strlen((yyvsp[(3) - (6)].c)) + strlen((yyvsp[(5) - (6)].c)) + 1) * sizeof(char)); strcpy((yyval.c), (yyvsp[(3) - (6)].c)); @@ -8572,8 +8554,8 @@ yyreduce: ;} break; - case 382: -#line 3976 "Gmsh.y" + case 380: +#line 3963 "Gmsh.y" { (yyval.c) = (char *)Malloc((strlen((yyvsp[(3) - (4)].c)) + 1) * sizeof(char)); int i; @@ -8589,8 +8571,8 @@ yyreduce: ;} break; - case 383: -#line 3990 "Gmsh.y" + case 381: +#line 3977 "Gmsh.y" { (yyval.c) = (char *)Malloc((strlen((yyvsp[(3) - (4)].c)) + 1) * sizeof(char)); int i; @@ -8606,15 +8588,15 @@ yyreduce: ;} break; - case 384: -#line 4004 "Gmsh.y" + case 382: +#line 3991 "Gmsh.y" { (yyval.c) = (yyvsp[(3) - (4)].c); ;} break; - case 385: -#line 4008 "Gmsh.y" + case 383: +#line 3995 "Gmsh.y" { char tmpstring[1024]; int i = PrintListOfDouble((yyvsp[(3) - (6)].c), (yyvsp[(5) - (6)].l), tmpstring); @@ -8637,7 +8619,7 @@ yyreduce: /* Line 1267 of yacc.c. */ -#line 8641 "Gmsh.tab.cpp" +#line 8623 "Gmsh.tab.cpp" default: break; } YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc); @@ -8851,7 +8833,7 @@ yyreturn: } -#line 4028 "Gmsh.y" +#line 4015 "Gmsh.y" int PrintListOfDouble(char *format, List_T *list, char *buffer) diff --git a/Parser/Gmsh.y b/Parser/Gmsh.y index 3183835acd35af981a29c8612f69e3faa7668589..a2c0e3a977038085352db5a66e49b6c9e6dbd600 100644 --- a/Parser/Gmsh.y +++ b/Parser/Gmsh.y @@ -118,7 +118,7 @@ fullMatrix<double> ListOfListOfDouble2Matrix(List_T *list); %type <d> FExpr FExpr_Single %type <v> VExpr VExpr_Single CircleOptions TransfiniteType -%type <i> CompoundMap CompoundSplit +%type <i> CompoundMap %type <i> NumericAffectation NumericIncrement PhysicalId %type <i> TransfiniteArrangement RecombineAngle %type <u> ColorExpr @@ -1453,7 +1453,7 @@ Shape : $$.Type = MSH_SURF_LOOP; $$.Num = num; } - | tCompound tSurface '(' FExpr ')' tAFFECT ListOfDouble CompoundMap CompoundSplit tEND + | tCompound tSurface '(' FExpr ')' tAFFECT ListOfDouble CompoundMap tEND { int num = (int)$4; if(FindSurface(num)){ @@ -1464,7 +1464,6 @@ Shape : for(int i = 0; i < List_Nbr($7); i++){ s->compound.push_back((int)*(double*)List_Pointer($7, i)); s->TypeOfMapping = $8; - s->AllowPartition = $9; } Tree_Add(GModel::current()->getGEOInternals()->Surfaces, &s); } @@ -1473,7 +1472,7 @@ Shape : $$.Num = num; } | tCompound tSurface '(' FExpr ')' tAFFECT ListOfDouble tSTRING - '{' RecursiveListOfListOfDouble '}' CompoundMap CompoundSplit tEND + '{' RecursiveListOfListOfDouble '}' CompoundMap tEND { int num = (int)$4; if(FindSurface(num)){ @@ -1492,7 +1491,6 @@ Shape : for (int j = 0; j < List_Nbr(l); j++){ s->compoundBoundary[i].push_back((int)*(double*)List_Pointer(l, j)); s->TypeOfMapping = $12; - s->AllowPartition = $13; } } Tree_Add(GModel::current()->getGEOInternals()->Surfaces, &s); @@ -2883,25 +2881,14 @@ CompoundMap : } | tSTRING { - if(!strcmp($1, "Convex")) - $$ = 0; - else if(!strcmp($1, "Harmonic")) + if(!strcmp($1, "Harmonic")) $$ = 1; else if(!strcmp($1, "Conformal")) $$ = -1; - Free($1); - } -; -CompoundSplit : - { - $$ = 1; // partitionning allowed - } - | tSTRING - { - if(!strcmp($1, "NoSplit")) - $$ = 0; - else - $$ = 1; + else if(!strcmp($1, "Harmonic_NoSplit")) + $$ = 2; + else if(!strcmp($1, "Conformal_NoSplit")) + $$ = -2; Free($1); } ; diff --git a/benchmarks/boolean/JAW.geo b/benchmarks/boolean/JAW.geo index 2430dcbcd065309cf06c2c2f5980044964d15083..c9d2d566b36a2b3dbf02f55daee59cd5779500e9 100644 --- a/benchmarks/boolean/JAW.geo +++ b/benchmarks/boolean/JAW.geo @@ -16,4 +16,4 @@ OCCShape("Sphere",{H-X,H/2,Z/2,R},"Fuse"); OCCShape("Torus",{L,H/2,Z/2,0,0,1,2*R,R/2},"Fuse"); -Compound Surface(100) = {1 ... 26}; \ No newline at end of file +Compound Surface(100) = {1 ... 26}; diff --git a/benchmarks/stl/pelvisPARTS.geo b/benchmarks/stl/pelvisPARTS.geo index 1b7130b80af8ed7a0508ca16a9fd87d12fbbaccc..03e499c8e7a3009523a325eeb31d0dfef664144a 100644 --- a/benchmarks/stl/pelvisPARTS.geo +++ b/benchmarks/stl/pelvisPARTS.geo @@ -8,10 +8,10 @@ Compound Line(70)={7}; Compound Line(80)={8}; Compound Line(90)={9}; -Compound Surface(100)={2} Harmonic NoSplit; -Compound Surface(200)={3} Harmonic NoSplit; -Compound Surface(300)={4} Harmonic NoSplit; -Compound Surface(400)={5} Harmonic NoSplit; +Compound Surface(100)={2} Harmonic_NoSplit; +Compound Surface(200)={3} Harmonic_NoSplit; +Compound Surface(300)={4} Harmonic_NoSplit; +Compound Surface(400)={5} Harmonic_NoSplit; Surface Loop(500)={100,200,300,400}; Volume(501)={500};