diff --git a/Common/Makefile b/Common/Makefile index f5f445fca3fdc5d0e76f44a32f6220820d9655ed..d63caa0855b7da17abc4bbe1476506ac94b607a1 100644 --- a/Common/Makefile +++ b/Common/Makefile @@ -184,4 +184,3 @@ TreeUtils.o: TreeUtils.cpp MallocUtils.h TreeUtils.h avl.h ListUtils.h \ Message.h avl.o: avl.cpp avl.h MallocUtils.h MallocUtils.o: MallocUtils.cpp MallocUtils.h Message.h -License.o: License.cpp Message.h diff --git a/Geo/ExtrudeParams.cpp b/Geo/ExtrudeParams.cpp index 9d5a2d6c5e2aa6d0bf3e0cd3c3aa1e3fb521a625..ce2e678769e0266230d13464c13540c85bb07588 100644 --- a/Geo/ExtrudeParams.cpp +++ b/Geo/ExtrudeParams.cpp @@ -27,7 +27,6 @@ ExtrudeParams::ExtrudeParams(int ModeEx) geo.Source = -1; mesh.ExtrudeMesh = false; mesh.Recombine = false; - mesh.ViewIndex = -1; } void ExtrudeParams::fill(int type, diff --git a/Geo/ExtrudeParams.h b/Geo/ExtrudeParams.h index 84d6ab435a014c9ca41bb34c71dbfbe9e5f329da..868cb375008b2b573fe5dc903a9b533c5acde242 100644 --- a/Geo/ExtrudeParams.h +++ b/Geo/ExtrudeParams.h @@ -41,7 +41,6 @@ public : std::vector<int> NbElmLayer; std::vector<double> hLayer; std::map<int, std::pair<double, std::vector<int> > > Holes; - int ViewIndex; }mesh; struct{ int Mode; diff --git a/Geo/GModelIO_Mesh.cpp b/Geo/GModelIO_Mesh.cpp index a6cb70280be22a0439983c3e158d8a71a19b51d5..445fe03a2ecc7e10c26d4969fbc449783b8f26ae 100644 --- a/Geo/GModelIO_Mesh.cpp +++ b/Geo/GModelIO_Mesh.cpp @@ -579,7 +579,8 @@ int GModel::writeMSH(const std::string &name, double version, bool binary, for(fiter it = firstFace(); it != lastFace(); ++it) writeElementsMSH(fp, (*it)->quadrangles, saveAll, version, binary, num, (*it)->tag(), (*it)->physicals); - writeElementHeaderMSH(binary, fp, elements, MSH_TET_4, MSH_TET_10, MSH_TET_20, MSH_TET_35, MSH_TET_56, MSH_TET_52); + writeElementHeaderMSH(binary, fp, elements, MSH_TET_4, MSH_TET_10, MSH_TET_20, + MSH_TET_35, MSH_TET_56, MSH_TET_52); for(riter it = firstRegion(); it != lastRegion(); ++it) writeElementsMSH(fp, (*it)->tetrahedra, saveAll, version, binary, num, (*it)->tag(), (*it)->physicals); @@ -1410,11 +1411,11 @@ int GModel::readMESH(const std::string &name) for(int i = 0; i < nbe; i++) { if(!fgets(buffer, sizeof(buffer), fp)) break; int n[1]; - sscanf(buffer, "%d",&n[0]); + sscanf(buffer, "%d", &n[0]); for(int j = 0; j < 1; j++) n[j]--; - // std::vector<MVertex*> vertices; - // if(!getVertices(1, n, vertexVector, vertices)) return 0; - // corners.push_back(vertices[0]); + // std::vector<MVertex*> vertices; + // if(!getVertices(1, n, vertexVector, vertices)) return 0; + // corners.push_back(vertices[0]); } } else if(!strcmp(str, "Ridges")){ @@ -1425,11 +1426,11 @@ int GModel::readMESH(const std::string &name) for(int i = 0; i < nbe; i++) { if(!fgets(buffer, sizeof(buffer), fp)) break; int n[1]; - sscanf(buffer, "%d",&n[0]); + sscanf(buffer, "%d", &n[0]); for(int j = 0; j < 1; j++) n[j]--; - // std::vector<MVertex*> vertices; - // if(!getVertices(1, n, vertexVector, vertices)) return 0; - // ridges.push_back(vertices[0]); + // std::vector<MVertex*> vertices; + // if(!getVertices(1, n, vertexVector, vertices)) return 0; + // ridges.push_back(vertices[0]); } } else if(!strcmp(str, "Quadrilaterals")) { diff --git a/Geo/Geo.cpp b/Geo/Geo.cpp index 8d596588cae71d01a46df39833f20d89630a7b64..fe2832789c81cdc52e32b9cb4bb7ac712a29fe41 100644 --- a/Geo/Geo.cpp +++ b/Geo/Geo.cpp @@ -2231,7 +2231,10 @@ static int Extrude_ProtudeSurface(int type, int is, *pv = NULL; - if(!(ps = FindSurface(is))) + // 'is' can be negative, to signify that the surface orientation + // should be reverted. This orientation information is only used at + // the moment when creating boundary layers + if(!(ps = FindSurface(std::abs(is)))) return 0; Msg::Debug("Extrude Surface %d", is); @@ -2240,7 +2243,7 @@ static int Extrude_ProtudeSurface(int type, int is, chapeau->Extrude = new ExtrudeParams(COPIED_ENTITY); chapeau->Extrude->fill(type, T0, T1, T2, A0, A1, A2, X0, X1, X2, alpha); - chapeau->Extrude->geo.Source = ps->Num; + chapeau->Extrude->geo.Source = is; // not ps->Num: we need the sign info if(e) chapeau->Extrude->mesh = e->mesh; @@ -2254,7 +2257,8 @@ static int Extrude_ProtudeSurface(int type, int is, } c->Extrude = new ExtrudeParams(COPIED_ENTITY); c->Extrude->fill(type, T0, T1, T2, A0, A1, A2, X0, X1, X2, alpha); - //pas de abs()! il faut le signe pour copy_mesh dans ExtrudeMesh + // don't take the abs(): the sign of c2->Num is important (used + // when copying the mesh in the extrusion routine) c->Extrude->geo.Source = c2->Num; if(e) c->Extrude->mesh = e->mesh; diff --git a/Mesh/BoundaryLayers.cpp b/Mesh/BoundaryLayers.cpp index 5aec1835cbd39999fe0f706a27d1b642cffb47b4..f3127caf4d92627ae7d145e031a98204c31ca8b1 100644 --- a/Mesh/BoundaryLayers.cpp +++ b/Mesh/BoundaryLayers.cpp @@ -12,13 +12,14 @@ #include "Message.h" template<class T> -static void addExtrudeNormals(std::vector<T*> &elements) +static void addExtrudeNormals(std::vector<T*> &elements, int invert) { for(unsigned int i = 0; i < elements.size(); i++){ MElement *ele = elements[i]; for(int j = 0; j < ele->getNumFaces(); j++){ MFace fac = ele->getFace(j); SVector3 n = fac.normal(); + if(invert) n *= -1.; if(n[0] || n[1] || n[2]){ double nn[3] = {n[0], n[1], n[2]}; for(int k = 0; k < fac.getNumVertices(); k++){ @@ -35,6 +36,7 @@ int Mesh2DWithBoundaryLayers(GModel *m) { std::set<GFace*> sourceFaces, otherFaces; std::set<GEdge*> sourceEdges, otherEdges; + std::map<int, bool> sourceFaceInvert; for(GModel::fiter it = m->firstFace(); it != m->lastFace(); it++){ GFace *gf = *it; if(gf->geomType() == GEntity::BoundaryLayerSurface){ @@ -45,6 +47,7 @@ int Mesh2DWithBoundaryLayers(GModel *m) Msg::Error("Unknown source face %d for boundary layer", ep->geo.Source); return 0; } + if(ep->geo.Source < 0) sourceFaceInvert[from->tag()] = true; sourceFaces.insert(from); std::list<GEdge*> e = from->edges(); sourceEdges.insert(e.begin(), e.end()); @@ -74,8 +77,8 @@ int Mesh2DWithBoundaryLayers(GModel *m) for(std::set<GFace*>::iterator it = sourceFaces.begin(); it != sourceFaces.end(); it++){ GFace *gf = *it; - addExtrudeNormals(gf->triangles); - addExtrudeNormals(gf->quadrangles); + addExtrudeNormals(gf->triangles, sourceFaceInvert.count(gf->tag())); + addExtrudeNormals(gf->quadrangles, sourceFaceInvert.count(gf->tag())); } ExtrudeParams::normals->normalize(); @@ -128,7 +131,8 @@ int Mesh2DWithBoundaryLayers(GModel *m) for(GModel::fiter it = m->firstFace(); it != m->lastFace(); it++){ GFace *gf = *it; if(gf->geomType() == GEntity::BoundaryLayerSurface){ - Msg::StatusBar(2, true, "Meshing surface %d (%s)", gf->tag(), gf->getTypeString().c_str()); + Msg::StatusBar(2, true, "Meshing surface %d (%s)", gf->tag(), + gf->getTypeString().c_str()); deMeshGFace dem; dem(gf); MeshExtrudedSurface(gf); diff --git a/Parser/Gmsh.tab.cpp b/Parser/Gmsh.tab.cpp index dd1255a1381189d927819e864b4682505f6c832b..675f185a03389d0a985b0520e6d8ceda91eedbce 100644 --- a/Parser/Gmsh.tab.cpp +++ b/Parser/Gmsh.tab.cpp @@ -648,16 +648,16 @@ union yyalloc /* YYFINAL -- State number of the termination state. */ #define YYFINAL 5 /* YYLAST -- Last index in YYTABLE. */ -#define YYLAST 6214 +#define YYLAST 6253 /* YYNTOKENS -- Number of terminals. */ #define YYNTOKENS 143 /* YYNNTS -- Number of nonterminals. */ -#define YYNNTS 69 +#define YYNNTS 68 /* YYNRULES -- Number of rules. */ -#define YYNRULES 352 +#define YYNRULES 350 /* YYNRULES -- Number of states. */ -#define YYNSTATES 1250 +#define YYNSTATES 1241 /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */ #define YYUNDEFTOK 2 @@ -731,25 +731,25 @@ static const yytype_uint16 yyprhs[] = 817, 822, 827, 831, 839, 847, 851, 859, 863, 866, 869, 885, 888, 895, 904, 913, 924, 926, 929, 931, 935, 940, 942, 948, 960, 974, 975, 983, 984, 998, - 999, 1015, 1016, 1023, 1024, 1035, 1044, 1053, 1062, 1075, - 1088, 1101, 1116, 1131, 1146, 1147, 1160, 1161, 1174, 1175, - 1188, 1189, 1206, 1207, 1224, 1225, 1242, 1243, 1262, 1263, - 1282, 1283, 1302, 1304, 1307, 1313, 1321, 1331, 1334, 1344, - 1351, 1361, 1371, 1380, 1390, 1399, 1408, 1415, 1420, 1427, - 1438, 1449, 1460, 1471, 1474, 1476, 1480, 1483, 1486, 1489, - 1493, 1497, 1501, 1505, 1509, 1513, 1517, 1521, 1525, 1529, - 1533, 1537, 1541, 1545, 1551, 1556, 1561, 1566, 1571, 1576, - 1581, 1586, 1591, 1596, 1601, 1608, 1613, 1618, 1623, 1628, - 1633, 1638, 1645, 1652, 1659, 1664, 1669, 1674, 1679, 1684, - 1689, 1694, 1699, 1704, 1709, 1714, 1721, 1726, 1731, 1736, - 1741, 1746, 1751, 1758, 1765, 1772, 1777, 1779, 1781, 1783, - 1785, 1787, 1789, 1791, 1793, 1799, 1804, 1809, 1812, 1818, - 1822, 1829, 1834, 1842, 1849, 1851, 1854, 1857, 1861, 1865, - 1877, 1887, 1895, 1903, 1905, 1909, 1911, 1913, 1916, 1920, - 1925, 1931, 1934, 1938, 1942, 1948, 1953, 1955, 1957, 1961, - 1968, 1970, 1972, 1976, 1980, 1990, 1998, 2000, 2006, 2010, - 2017, 2019, 2023, 2025, 2027, 2029, 2031, 2038, 2043, 2048, - 2053, 2060, 2067 + 999, 1015, 1016, 1023, 1032, 1041, 1050, 1063, 1076, 1089, + 1104, 1119, 1134, 1135, 1148, 1149, 1162, 1163, 1176, 1177, + 1194, 1195, 1212, 1213, 1230, 1231, 1250, 1251, 1270, 1271, + 1290, 1292, 1295, 1301, 1309, 1319, 1322, 1332, 1339, 1349, + 1359, 1368, 1378, 1387, 1396, 1403, 1408, 1415, 1426, 1437, + 1448, 1459, 1462, 1464, 1468, 1471, 1474, 1477, 1481, 1485, + 1489, 1493, 1497, 1501, 1505, 1509, 1513, 1517, 1521, 1525, + 1529, 1533, 1539, 1544, 1549, 1554, 1559, 1564, 1569, 1574, + 1579, 1584, 1589, 1596, 1601, 1606, 1611, 1616, 1621, 1626, + 1633, 1640, 1647, 1652, 1657, 1662, 1667, 1672, 1677, 1682, + 1687, 1692, 1697, 1702, 1709, 1714, 1719, 1724, 1729, 1734, + 1739, 1746, 1753, 1760, 1765, 1767, 1769, 1771, 1773, 1775, + 1777, 1779, 1781, 1787, 1792, 1797, 1800, 1806, 1810, 1817, + 1822, 1830, 1837, 1839, 1842, 1845, 1849, 1853, 1865, 1875, + 1883, 1891, 1893, 1897, 1899, 1901, 1904, 1908, 1913, 1919, + 1922, 1926, 1930, 1936, 1941, 1943, 1945, 1949, 1956, 1958, + 1960, 1964, 1968, 1978, 1986, 1988, 1994, 1998, 2005, 2007, + 2011, 2013, 2015, 2017, 2019, 2026, 2031, 2036, 2041, 2048, + 2055 }; /* YYRHS -- A `-1'-separated list of the rules' RHS. */ @@ -758,211 +758,210 @@ static const yytype_int16 yyrhs[] = 144, 0, -1, 145, -1, 1, 6, -1, -1, 145, 146, -1, 149, -1, 148, -1, 167, -1, 170, -1, 171, -1, 174, -1, 175, -1, 176, -1, 179, -1, - 196, -1, 197, -1, 198, -1, 178, -1, 177, -1, + 195, -1, 196, -1, 197, -1, 178, -1, 177, -1, 120, -1, 120, 120, -1, 35, 133, 5, 134, 6, - -1, 35, 133, 5, 134, 147, 210, 6, -1, 35, - 133, 5, 139, 206, 134, 6, -1, 35, 133, 5, - 139, 206, 134, 147, 210, 6, -1, 4, 5, 140, - 150, 141, 6, -1, 80, 4, 135, 199, 136, 6, - -1, 81, 4, 135, 199, 136, 6, -1, -1, 150, + -1, 35, 133, 5, 134, 147, 209, 6, -1, 35, + 133, 5, 139, 205, 134, 6, -1, 35, 133, 5, + 139, 205, 134, 147, 209, 6, -1, 4, 5, 140, + 150, 141, 6, -1, 80, 4, 135, 198, 136, 6, + -1, 81, 4, 135, 198, 136, 6, -1, -1, 150, 153, -1, 150, 157, -1, 150, 160, -1, 150, 162, - -1, 150, 163, -1, 199, -1, 151, 139, 199, -1, - 199, -1, 152, 139, 199, -1, -1, -1, 4, 154, - 133, 151, 134, 155, 140, 152, 141, 6, -1, 210, - -1, 156, 139, 210, -1, -1, 82, 133, 199, 139, - 199, 139, 199, 134, 158, 140, 156, 141, 6, -1, - 210, -1, 159, 139, 210, -1, -1, 83, 133, 199, - 139, 199, 139, 199, 139, 199, 134, 161, 140, 159, - 141, 6, -1, 84, 140, 203, 141, 140, 203, 141, - 6, -1, 84, 140, 203, 141, 140, 203, 141, 140, - 203, 141, 140, 203, 141, 6, -1, -1, 85, 164, + -1, 150, 163, -1, 198, -1, 151, 139, 198, -1, + 198, -1, 152, 139, 198, -1, -1, -1, 4, 154, + 133, 151, 134, 155, 140, 152, 141, 6, -1, 209, + -1, 156, 139, 209, -1, -1, 82, 133, 198, 139, + 198, 139, 198, 134, 158, 140, 156, 141, 6, -1, + 209, -1, 159, 139, 209, -1, -1, 83, 133, 198, + 139, 198, 139, 198, 139, 198, 134, 161, 140, 159, + 141, 6, -1, 84, 140, 202, 141, 140, 202, 141, + 6, -1, 84, 140, 202, 141, 140, 202, 141, 140, + 202, 141, 140, 202, 141, 6, -1, -1, 85, 164, 140, 152, 141, 6, -1, 7, -1, 113, -1, 112, -1, 111, -1, 110, -1, 131, -1, 130, -1, 4, - 165, 199, 6, -1, 4, 135, 199, 136, 165, 199, - 6, -1, 4, 135, 140, 206, 141, 136, 165, 204, - 6, -1, 4, 135, 136, 7, 204, 6, -1, 4, - 135, 136, 113, 204, 6, -1, 4, 166, 6, -1, - 4, 135, 199, 136, 166, 6, -1, 4, 7, 211, - 6, -1, 4, 137, 4, 7, 211, 6, -1, 4, - 135, 199, 136, 137, 4, 7, 211, 6, -1, 4, - 137, 4, 165, 199, 6, -1, 4, 135, 199, 136, - 137, 4, 165, 199, 6, -1, 4, 137, 4, 166, - 6, -1, 4, 135, 199, 136, 137, 4, 166, 6, - -1, 4, 137, 92, 137, 4, 7, 207, 6, -1, - 4, 135, 199, 136, 137, 92, 137, 4, 7, 207, - 6, -1, 4, 137, 93, 7, 208, 6, -1, 4, - 135, 199, 136, 137, 93, 7, 208, 6, -1, 4, - 100, 7, 199, 6, -1, 100, 135, 199, 136, 7, - 4, 6, -1, 100, 135, 199, 136, 137, 4, 7, - 199, 6, -1, 100, 135, 199, 136, 137, 4, 7, - 211, 6, -1, 100, 135, 199, 136, 137, 4, 7, - 140, 206, 141, 6, -1, 64, 133, 4, 134, 137, - 4, 7, 199, 6, -1, 64, 133, 4, 134, 137, - 4, 7, 211, 6, -1, 199, -1, 211, -1, -1, - 95, 47, 140, 199, 141, -1, 43, 133, 199, 134, - 7, 201, 6, -1, 60, 43, 133, 168, 134, 7, - 204, 6, -1, 52, 53, 204, 7, 199, 6, -1, - 46, 133, 199, 134, 7, 204, 6, -1, 50, 133, - 199, 134, 7, 204, 6, -1, 44, 133, 199, 134, - 7, 204, 6, -1, 44, 133, 199, 134, 7, 204, - 56, 201, 6, -1, 45, 133, 199, 134, 7, 204, - 6, -1, 45, 133, 199, 134, 7, 204, 56, 201, - 6, -1, 54, 133, 199, 134, 7, 140, 199, 139, - 199, 139, 5, 139, 5, 139, 5, 141, 6, -1, - 87, 133, 199, 134, 7, 204, 6, -1, 88, 133, - 199, 134, 7, 204, 6, -1, 89, 133, 199, 134, - 7, 204, 91, 204, 90, 199, 6, -1, 46, 71, - 133, 199, 134, 7, 204, 6, -1, 60, 46, 133, - 168, 134, 7, 204, 6, -1, 56, 49, 133, 199, - 134, 7, 204, 6, -1, 57, 49, 133, 199, 134, - 7, 204, 169, 6, -1, 12, 13, 6, -1, 13, - 49, 199, 6, -1, 54, 49, 133, 199, 134, 7, - 5, 5, 5, 6, -1, 47, 133, 199, 134, 7, - 204, 6, -1, 48, 133, 199, 134, 7, 204, 6, - -1, 49, 71, 133, 199, 134, 7, 204, 6, -1, - 60, 49, 133, 168, 134, 7, 204, 6, -1, 59, - 51, 133, 199, 134, 7, 204, 6, -1, 51, 133, - 199, 134, 7, 204, 6, -1, 60, 51, 133, 168, - 134, 7, 204, 6, -1, 66, 201, 140, 172, 141, - -1, 65, 140, 201, 139, 201, 139, 199, 141, 140, - 172, 141, -1, 67, 201, 140, 172, 141, -1, 68, - 140, 201, 139, 199, 141, 140, 172, 141, -1, 70, - 140, 172, 141, -1, 76, 46, 140, 206, 141, 49, - 140, 199, 141, -1, 77, 140, 172, 141, -1, 173, + 165, 198, 6, -1, 4, 135, 198, 136, 165, 198, + 6, -1, 4, 135, 140, 205, 141, 136, 165, 203, + 6, -1, 4, 135, 136, 7, 203, 6, -1, 4, + 135, 136, 113, 203, 6, -1, 4, 166, 6, -1, + 4, 135, 198, 136, 166, 6, -1, 4, 7, 210, + 6, -1, 4, 137, 4, 7, 210, 6, -1, 4, + 135, 198, 136, 137, 4, 7, 210, 6, -1, 4, + 137, 4, 165, 198, 6, -1, 4, 135, 198, 136, + 137, 4, 165, 198, 6, -1, 4, 137, 4, 166, + 6, -1, 4, 135, 198, 136, 137, 4, 166, 6, + -1, 4, 137, 92, 137, 4, 7, 206, 6, -1, + 4, 135, 198, 136, 137, 92, 137, 4, 7, 206, + 6, -1, 4, 137, 93, 7, 207, 6, -1, 4, + 135, 198, 136, 137, 93, 7, 207, 6, -1, 4, + 100, 7, 198, 6, -1, 100, 135, 198, 136, 7, + 4, 6, -1, 100, 135, 198, 136, 137, 4, 7, + 198, 6, -1, 100, 135, 198, 136, 137, 4, 7, + 210, 6, -1, 100, 135, 198, 136, 137, 4, 7, + 140, 205, 141, 6, -1, 64, 133, 4, 134, 137, + 4, 7, 198, 6, -1, 64, 133, 4, 134, 137, + 4, 7, 210, 6, -1, 198, -1, 210, -1, -1, + 95, 47, 140, 198, 141, -1, 43, 133, 198, 134, + 7, 200, 6, -1, 60, 43, 133, 168, 134, 7, + 203, 6, -1, 52, 53, 203, 7, 198, 6, -1, + 46, 133, 198, 134, 7, 203, 6, -1, 50, 133, + 198, 134, 7, 203, 6, -1, 44, 133, 198, 134, + 7, 203, 6, -1, 44, 133, 198, 134, 7, 203, + 56, 200, 6, -1, 45, 133, 198, 134, 7, 203, + 6, -1, 45, 133, 198, 134, 7, 203, 56, 200, + 6, -1, 54, 133, 198, 134, 7, 140, 198, 139, + 198, 139, 5, 139, 5, 139, 5, 141, 6, -1, + 87, 133, 198, 134, 7, 203, 6, -1, 88, 133, + 198, 134, 7, 203, 6, -1, 89, 133, 198, 134, + 7, 203, 91, 203, 90, 198, 6, -1, 46, 71, + 133, 198, 134, 7, 203, 6, -1, 60, 46, 133, + 168, 134, 7, 203, 6, -1, 56, 49, 133, 198, + 134, 7, 203, 6, -1, 57, 49, 133, 198, 134, + 7, 203, 169, 6, -1, 12, 13, 6, -1, 13, + 49, 198, 6, -1, 54, 49, 133, 198, 134, 7, + 5, 5, 5, 6, -1, 47, 133, 198, 134, 7, + 203, 6, -1, 48, 133, 198, 134, 7, 203, 6, + -1, 49, 71, 133, 198, 134, 7, 203, 6, -1, + 60, 49, 133, 168, 134, 7, 203, 6, -1, 59, + 51, 133, 198, 134, 7, 203, 6, -1, 51, 133, + 198, 134, 7, 203, 6, -1, 60, 51, 133, 168, + 134, 7, 203, 6, -1, 66, 200, 140, 172, 141, + -1, 65, 140, 200, 139, 200, 139, 198, 141, 140, + 172, 141, -1, 67, 200, 140, 172, 141, -1, 68, + 140, 200, 139, 198, 141, 140, 172, 141, -1, 70, + 140, 172, 141, -1, 76, 46, 140, 205, 141, 49, + 140, 198, 141, -1, 77, 140, 172, 141, -1, 173, -1, 171, -1, -1, 173, 170, -1, 173, 43, 140, - 206, 141, 6, -1, 173, 46, 140, 206, 141, 6, - -1, 173, 49, 140, 206, 141, 6, -1, 173, 51, - 140, 206, 141, 6, -1, 74, 140, 173, 141, -1, - 74, 100, 135, 199, 136, 6, -1, 74, 4, 135, - 199, 136, 6, -1, 74, 4, 6, -1, 74, 4, - 4, 6, -1, 92, 207, 140, 173, 141, -1, 104, - 210, 6, -1, 105, 210, 6, -1, 104, 140, 173, - 141, -1, 105, 140, 173, 141, -1, 4, 211, 6, - -1, 4, 4, 135, 199, 136, 210, 6, -1, 4, - 4, 4, 135, 199, 136, 6, -1, 4, 199, 6, + 205, 141, 6, -1, 173, 46, 140, 205, 141, 6, + -1, 173, 49, 140, 205, 141, 6, -1, 173, 51, + 140, 205, 141, 6, -1, 74, 140, 173, 141, -1, + 74, 100, 135, 198, 136, 6, -1, 74, 4, 135, + 198, 136, 6, -1, 74, 4, 6, -1, 74, 4, + 4, 6, -1, 92, 206, 140, 173, 141, -1, 104, + 209, 6, -1, 105, 209, 6, -1, 104, 140, 173, + 141, -1, 105, 140, 173, 141, -1, 4, 210, 6, + -1, 4, 4, 135, 198, 136, 209, 6, -1, 4, + 4, 4, 135, 198, 136, 6, -1, 4, 198, 6, -1, 64, 133, 4, 134, 137, 4, 6, -1, 86, 4, 6, -1, 99, 6, -1, 40, 6, -1, 40, - 140, 199, 139, 199, 139, 199, 139, 199, 139, 199, - 139, 199, 141, 6, -1, 41, 6, -1, 94, 133, - 199, 8, 199, 134, -1, 94, 133, 199, 8, 199, - 8, 199, 134, -1, 94, 4, 95, 140, 199, 8, - 199, 141, -1, 94, 4, 95, 140, 199, 8, 199, - 8, 199, 141, -1, 96, -1, 103, 4, -1, 101, - -1, 102, 4, 6, -1, 97, 133, 199, 134, -1, - 98, -1, 69, 201, 140, 173, 141, -1, 69, 140, - 201, 139, 201, 139, 199, 141, 140, 173, 141, -1, - 69, 140, 201, 139, 201, 139, 201, 139, 199, 141, - 140, 173, 141, -1, -1, 69, 201, 140, 173, 180, - 194, 141, -1, -1, 69, 140, 201, 139, 201, 139, - 199, 141, 140, 173, 181, 194, 141, -1, -1, 69, - 140, 201, 139, 201, 139, 201, 139, 199, 141, 140, - 173, 182, 194, 141, -1, -1, 69, 140, 173, 183, - 194, 141, -1, -1, 69, 4, 135, 199, 136, 140, - 173, 184, 194, 141, -1, 69, 43, 140, 199, 139, - 201, 141, 6, -1, 69, 46, 140, 199, 139, 201, - 141, 6, -1, 69, 49, 140, 199, 139, 201, 141, - 6, -1, 69, 43, 140, 199, 139, 201, 139, 201, - 139, 199, 141, 6, -1, 69, 46, 140, 199, 139, - 201, 139, 201, 139, 199, 141, 6, -1, 69, 49, - 140, 199, 139, 201, 139, 201, 139, 199, 141, 6, - -1, 69, 43, 140, 199, 139, 201, 139, 201, 139, - 201, 139, 199, 141, 6, -1, 69, 46, 140, 199, - 139, 201, 139, 201, 139, 201, 139, 199, 141, 6, - -1, 69, 49, 140, 199, 139, 201, 139, 201, 139, - 201, 139, 199, 141, 6, -1, -1, 69, 43, 140, - 199, 139, 201, 141, 185, 140, 194, 141, 6, -1, - -1, 69, 46, 140, 199, 139, 201, 141, 186, 140, - 194, 141, 6, -1, -1, 69, 49, 140, 199, 139, - 201, 141, 187, 140, 194, 141, 6, -1, -1, 69, - 43, 140, 199, 139, 201, 139, 201, 139, 199, 141, - 188, 140, 194, 141, 6, -1, -1, 69, 46, 140, - 199, 139, 201, 139, 201, 139, 199, 141, 189, 140, - 194, 141, 6, -1, -1, 69, 49, 140, 199, 139, - 201, 139, 201, 139, 199, 141, 190, 140, 194, 141, - 6, -1, -1, 69, 43, 140, 199, 139, 201, 139, - 201, 139, 201, 139, 199, 141, 191, 140, 194, 141, - 6, -1, -1, 69, 46, 140, 199, 139, 201, 139, - 201, 139, 201, 139, 199, 141, 192, 140, 194, 141, - 6, -1, -1, 69, 49, 140, 199, 139, 201, 139, - 201, 139, 201, 139, 199, 141, 193, 140, 194, 141, - 6, -1, 195, -1, 194, 195, -1, 78, 140, 199, - 141, 6, -1, 78, 140, 204, 139, 204, 141, 6, - -1, 78, 140, 204, 139, 204, 139, 204, 141, 6, - -1, 72, 6, -1, 79, 133, 199, 134, 7, 204, - 61, 199, 6, -1, 58, 46, 204, 7, 199, 6, - -1, 58, 46, 204, 7, 199, 61, 63, 199, 6, - -1, 58, 46, 204, 7, 199, 61, 62, 199, 6, - -1, 58, 49, 140, 199, 141, 7, 204, 6, -1, - 58, 49, 140, 199, 141, 7, 204, 4, 6, -1, - 55, 49, 140, 199, 141, 7, 204, 6, -1, 58, - 51, 140, 199, 141, 7, 204, 6, -1, 72, 49, - 204, 7, 199, 6, -1, 72, 49, 204, 6, -1, - 73, 49, 204, 7, 199, 6, -1, 43, 140, 206, - 141, 95, 49, 140, 199, 141, 6, -1, 46, 140, - 206, 141, 95, 49, 140, 199, 141, 6, -1, 46, - 140, 206, 141, 95, 51, 140, 199, 141, 6, -1, - 49, 140, 206, 141, 95, 51, 140, 199, 141, 6, - -1, 75, 6, -1, 200, -1, 133, 199, 134, -1, - 124, 199, -1, 123, 199, -1, 128, 199, -1, 199, - 124, 199, -1, 199, 123, 199, -1, 199, 125, 199, - -1, 199, 126, 199, -1, 199, 127, 199, -1, 199, - 132, 199, -1, 199, 119, 199, -1, 199, 120, 199, - -1, 199, 122, 199, -1, 199, 121, 199, -1, 199, - 118, 199, -1, 199, 117, 199, -1, 199, 116, 199, - -1, 199, 115, 199, -1, 199, 114, 199, 8, 199, - -1, 14, 133, 199, 134, -1, 15, 133, 199, 134, - -1, 16, 133, 199, 134, -1, 17, 133, 199, 134, - -1, 18, 133, 199, 134, -1, 19, 133, 199, 134, - -1, 20, 133, 199, 134, -1, 21, 133, 199, 134, - -1, 22, 133, 199, 134, -1, 24, 133, 199, 134, - -1, 25, 133, 199, 139, 199, 134, -1, 26, 133, - 199, 134, -1, 27, 133, 199, 134, -1, 28, 133, - 199, 134, -1, 29, 133, 199, 134, -1, 30, 133, - 199, 134, -1, 31, 133, 199, 134, -1, 32, 133, - 199, 139, 199, 134, -1, 33, 133, 199, 139, 199, - 134, -1, 34, 133, 199, 139, 199, 134, -1, 23, - 133, 199, 134, -1, 14, 135, 199, 136, -1, 15, - 135, 199, 136, -1, 16, 135, 199, 136, -1, 17, - 135, 199, 136, -1, 18, 135, 199, 136, -1, 19, - 135, 199, 136, -1, 20, 135, 199, 136, -1, 21, - 135, 199, 136, -1, 22, 135, 199, 136, -1, 24, - 135, 199, 136, -1, 25, 135, 199, 139, 199, 136, - -1, 26, 135, 199, 136, -1, 27, 135, 199, 136, - -1, 28, 135, 199, 136, -1, 29, 135, 199, 136, - -1, 30, 135, 199, 136, -1, 31, 135, 199, 136, - -1, 32, 135, 199, 139, 199, 136, -1, 33, 135, - 199, 139, 199, 136, -1, 34, 135, 199, 139, 199, - 136, -1, 23, 135, 199, 136, -1, 3, -1, 9, - -1, 10, -1, 11, -1, 107, -1, 108, -1, 109, - -1, 4, -1, 4, 142, 140, 199, 141, -1, 4, - 135, 199, 136, -1, 138, 4, 135, 136, -1, 4, - 166, -1, 4, 135, 199, 136, 166, -1, 4, 137, - 4, -1, 4, 135, 199, 136, 137, 4, -1, 4, - 137, 4, 166, -1, 4, 135, 199, 136, 137, 4, - 166, -1, 106, 133, 5, 139, 199, 134, -1, 202, - -1, 124, 201, -1, 123, 201, -1, 201, 124, 201, - -1, 201, 123, 201, -1, 140, 199, 139, 199, 139, - 199, 139, 199, 139, 199, 141, -1, 140, 199, 139, - 199, 139, 199, 139, 199, 141, -1, 140, 199, 139, - 199, 139, 199, 141, -1, 133, 199, 139, 199, 139, - 199, 134, -1, 204, -1, 203, 139, 204, -1, 199, - -1, 205, -1, 140, 141, -1, 140, 206, 141, -1, - 124, 140, 206, 141, -1, 199, 125, 140, 206, 141, - -1, 124, 205, -1, 199, 125, 205, -1, 199, 8, - 199, -1, 199, 8, 199, 8, 199, -1, 43, 140, - 199, 141, -1, 171, -1, 179, -1, 4, 135, 136, - -1, 4, 135, 140, 206, 141, 136, -1, 199, -1, - 205, -1, 206, 139, 199, -1, 206, 139, 205, -1, - 140, 199, 139, 199, 139, 199, 139, 199, 141, -1, - 140, 199, 139, 199, 139, 199, 141, -1, 4, -1, - 4, 137, 92, 137, 4, -1, 140, 209, 141, -1, - 4, 135, 199, 136, 137, 93, -1, 207, -1, 209, - 139, 207, -1, 211, -1, 4, -1, 5, -1, 42, - -1, 37, 133, 210, 139, 210, 134, -1, 38, 133, - 210, 134, -1, 39, 133, 210, 134, -1, 36, 133, - 210, 134, -1, 36, 133, 210, 139, 206, 134, -1, - 36, 133, 4, 137, 4, 134, -1, 36, 133, 4, - 135, 199, 136, 137, 4, 134, -1 + 140, 198, 139, 198, 139, 198, 139, 198, 139, 198, + 139, 198, 141, 6, -1, 41, 6, -1, 94, 133, + 198, 8, 198, 134, -1, 94, 133, 198, 8, 198, + 8, 198, 134, -1, 94, 4, 95, 140, 198, 8, + 198, 141, -1, 94, 4, 95, 140, 198, 8, 198, + 8, 198, 141, -1, 96, -1, 103, 4, -1, 101, + -1, 102, 4, 6, -1, 97, 133, 198, 134, -1, + 98, -1, 69, 200, 140, 173, 141, -1, 69, 140, + 200, 139, 200, 139, 198, 141, 140, 173, 141, -1, + 69, 140, 200, 139, 200, 139, 200, 139, 198, 141, + 140, 173, 141, -1, -1, 69, 200, 140, 173, 180, + 193, 141, -1, -1, 69, 140, 200, 139, 200, 139, + 198, 141, 140, 173, 181, 193, 141, -1, -1, 69, + 140, 200, 139, 200, 139, 200, 139, 198, 141, 140, + 173, 182, 193, 141, -1, -1, 69, 140, 173, 183, + 193, 141, -1, 69, 43, 140, 198, 139, 200, 141, + 6, -1, 69, 46, 140, 198, 139, 200, 141, 6, + -1, 69, 49, 140, 198, 139, 200, 141, 6, -1, + 69, 43, 140, 198, 139, 200, 139, 200, 139, 198, + 141, 6, -1, 69, 46, 140, 198, 139, 200, 139, + 200, 139, 198, 141, 6, -1, 69, 49, 140, 198, + 139, 200, 139, 200, 139, 198, 141, 6, -1, 69, + 43, 140, 198, 139, 200, 139, 200, 139, 200, 139, + 198, 141, 6, -1, 69, 46, 140, 198, 139, 200, + 139, 200, 139, 200, 139, 198, 141, 6, -1, 69, + 49, 140, 198, 139, 200, 139, 200, 139, 200, 139, + 198, 141, 6, -1, -1, 69, 43, 140, 198, 139, + 200, 141, 184, 140, 193, 141, 6, -1, -1, 69, + 46, 140, 198, 139, 200, 141, 185, 140, 193, 141, + 6, -1, -1, 69, 49, 140, 198, 139, 200, 141, + 186, 140, 193, 141, 6, -1, -1, 69, 43, 140, + 198, 139, 200, 139, 200, 139, 198, 141, 187, 140, + 193, 141, 6, -1, -1, 69, 46, 140, 198, 139, + 200, 139, 200, 139, 198, 141, 188, 140, 193, 141, + 6, -1, -1, 69, 49, 140, 198, 139, 200, 139, + 200, 139, 198, 141, 189, 140, 193, 141, 6, -1, + -1, 69, 43, 140, 198, 139, 200, 139, 200, 139, + 200, 139, 198, 141, 190, 140, 193, 141, 6, -1, + -1, 69, 46, 140, 198, 139, 200, 139, 200, 139, + 200, 139, 198, 141, 191, 140, 193, 141, 6, -1, + -1, 69, 49, 140, 198, 139, 200, 139, 200, 139, + 200, 139, 198, 141, 192, 140, 193, 141, 6, -1, + 194, -1, 193, 194, -1, 78, 140, 198, 141, 6, + -1, 78, 140, 203, 139, 203, 141, 6, -1, 78, + 140, 203, 139, 203, 139, 203, 141, 6, -1, 72, + 6, -1, 79, 133, 198, 134, 7, 203, 61, 198, + 6, -1, 58, 46, 203, 7, 198, 6, -1, 58, + 46, 203, 7, 198, 61, 63, 198, 6, -1, 58, + 46, 203, 7, 198, 61, 62, 198, 6, -1, 58, + 49, 140, 198, 141, 7, 203, 6, -1, 58, 49, + 140, 198, 141, 7, 203, 4, 6, -1, 55, 49, + 140, 198, 141, 7, 203, 6, -1, 58, 51, 140, + 198, 141, 7, 203, 6, -1, 72, 49, 203, 7, + 198, 6, -1, 72, 49, 203, 6, -1, 73, 49, + 203, 7, 198, 6, -1, 43, 140, 205, 141, 95, + 49, 140, 198, 141, 6, -1, 46, 140, 205, 141, + 95, 49, 140, 198, 141, 6, -1, 46, 140, 205, + 141, 95, 51, 140, 198, 141, 6, -1, 49, 140, + 205, 141, 95, 51, 140, 198, 141, 6, -1, 75, + 6, -1, 199, -1, 133, 198, 134, -1, 124, 198, + -1, 123, 198, -1, 128, 198, -1, 198, 124, 198, + -1, 198, 123, 198, -1, 198, 125, 198, -1, 198, + 126, 198, -1, 198, 127, 198, -1, 198, 132, 198, + -1, 198, 119, 198, -1, 198, 120, 198, -1, 198, + 122, 198, -1, 198, 121, 198, -1, 198, 118, 198, + -1, 198, 117, 198, -1, 198, 116, 198, -1, 198, + 115, 198, -1, 198, 114, 198, 8, 198, -1, 14, + 133, 198, 134, -1, 15, 133, 198, 134, -1, 16, + 133, 198, 134, -1, 17, 133, 198, 134, -1, 18, + 133, 198, 134, -1, 19, 133, 198, 134, -1, 20, + 133, 198, 134, -1, 21, 133, 198, 134, -1, 22, + 133, 198, 134, -1, 24, 133, 198, 134, -1, 25, + 133, 198, 139, 198, 134, -1, 26, 133, 198, 134, + -1, 27, 133, 198, 134, -1, 28, 133, 198, 134, + -1, 29, 133, 198, 134, -1, 30, 133, 198, 134, + -1, 31, 133, 198, 134, -1, 32, 133, 198, 139, + 198, 134, -1, 33, 133, 198, 139, 198, 134, -1, + 34, 133, 198, 139, 198, 134, -1, 23, 133, 198, + 134, -1, 14, 135, 198, 136, -1, 15, 135, 198, + 136, -1, 16, 135, 198, 136, -1, 17, 135, 198, + 136, -1, 18, 135, 198, 136, -1, 19, 135, 198, + 136, -1, 20, 135, 198, 136, -1, 21, 135, 198, + 136, -1, 22, 135, 198, 136, -1, 24, 135, 198, + 136, -1, 25, 135, 198, 139, 198, 136, -1, 26, + 135, 198, 136, -1, 27, 135, 198, 136, -1, 28, + 135, 198, 136, -1, 29, 135, 198, 136, -1, 30, + 135, 198, 136, -1, 31, 135, 198, 136, -1, 32, + 135, 198, 139, 198, 136, -1, 33, 135, 198, 139, + 198, 136, -1, 34, 135, 198, 139, 198, 136, -1, + 23, 135, 198, 136, -1, 3, -1, 9, -1, 10, + -1, 11, -1, 107, -1, 108, -1, 109, -1, 4, + -1, 4, 142, 140, 198, 141, -1, 4, 135, 198, + 136, -1, 138, 4, 135, 136, -1, 4, 166, -1, + 4, 135, 198, 136, 166, -1, 4, 137, 4, -1, + 4, 135, 198, 136, 137, 4, -1, 4, 137, 4, + 166, -1, 4, 135, 198, 136, 137, 4, 166, -1, + 106, 133, 5, 139, 198, 134, -1, 201, -1, 124, + 200, -1, 123, 200, -1, 200, 124, 200, -1, 200, + 123, 200, -1, 140, 198, 139, 198, 139, 198, 139, + 198, 139, 198, 141, -1, 140, 198, 139, 198, 139, + 198, 139, 198, 141, -1, 140, 198, 139, 198, 139, + 198, 141, -1, 133, 198, 139, 198, 139, 198, 134, + -1, 203, -1, 202, 139, 203, -1, 198, -1, 204, + -1, 140, 141, -1, 140, 205, 141, -1, 124, 140, + 205, 141, -1, 198, 125, 140, 205, 141, -1, 124, + 204, -1, 198, 125, 204, -1, 198, 8, 198, -1, + 198, 8, 198, 8, 198, -1, 43, 140, 198, 141, + -1, 171, -1, 179, -1, 4, 135, 136, -1, 4, + 135, 140, 205, 141, 136, -1, 198, -1, 204, -1, + 205, 139, 198, -1, 205, 139, 204, -1, 140, 198, + 139, 198, 139, 198, 139, 198, 141, -1, 140, 198, + 139, 198, 139, 198, 141, -1, 4, -1, 4, 137, + 92, 137, 4, -1, 140, 208, 141, -1, 4, 135, + 198, 136, 137, 93, -1, 206, -1, 208, 139, 206, + -1, 210, -1, 4, -1, 5, -1, 42, -1, 37, + 133, 209, 139, 209, 134, -1, 38, 133, 209, 134, + -1, 39, 133, 209, 134, -1, 36, 133, 209, 134, + -1, 36, 133, 209, 139, 205, 134, -1, 36, 133, + 4, 137, 4, 134, -1, 36, 133, 4, 135, 198, + 136, 137, 4, 134, -1 }; /* YYRLINE[YYN] -- source line where rule number YYN was defined. */ @@ -985,25 +984,25 @@ static const yytype_uint16 yyrline[] = 1822, 1831, 1845, 1893, 1911, 1926, 1945, 1957, 1981, 1985, 1990, 1995, 2007, 2024, 2041, 2067, 2093, 2123, 2131, 2137, 2144, 2148, 2157, 2165, 2173, 2182, 2181, 2194, 2193, 2206, - 2205, 2218, 2217, 2229, 2228, 2244, 2251, 2258, 2265, 2272, - 2279, 2286, 2293, 2300, 2308, 2307, 2319, 2318, 2330, 2329, - 2341, 2340, 2352, 2351, 2363, 2362, 2374, 2373, 2385, 2384, - 2396, 2395, 2410, 2413, 2419, 2428, 2448, 2471, 2475, 2499, - 2517, 2535, 2553, 2582, 2617, 2622, 2649, 2663, 2676, 2693, - 2699, 2705, 2708, 2717, 2727, 2728, 2729, 2730, 2731, 2732, - 2733, 2734, 2735, 2742, 2743, 2744, 2745, 2746, 2747, 2748, - 2749, 2750, 2751, 2752, 2753, 2754, 2755, 2756, 2757, 2758, - 2759, 2760, 2761, 2762, 2763, 2764, 2765, 2766, 2767, 2768, - 2769, 2770, 2771, 2772, 2773, 2775, 2776, 2777, 2778, 2779, - 2780, 2781, 2782, 2783, 2784, 2785, 2786, 2787, 2788, 2789, - 2790, 2791, 2792, 2793, 2794, 2795, 2804, 2805, 2806, 2807, - 2808, 2809, 2810, 2814, 2829, 2843, 2862, 2874, 2886, 2908, - 2913, 2918, 2928, 2938, 2946, 2950, 2954, 2958, 2962, 2969, - 2973, 2977, 2981, 2988, 2993, 3000, 3005, 3009, 3014, 3018, - 3026, 3037, 3045, 3053, 3059, 3070, 3090, 3100, 3110, 3126, - 3152, 3157, 3161, 3165, 3177, 3181, 3193, 3200, 3210, 3214, - 3229, 3234, 3241, 3245, 3252, 3256, 3264, 3272, 3286, 3300, - 3304, 3323, 3331 + 2205, 2218, 2217, 2230, 2237, 2244, 2251, 2258, 2265, 2272, + 2279, 2286, 2294, 2293, 2305, 2304, 2316, 2315, 2327, 2326, + 2338, 2337, 2349, 2348, 2360, 2359, 2371, 2370, 2382, 2381, + 2396, 2399, 2405, 2414, 2434, 2457, 2461, 2485, 2503, 2521, + 2539, 2568, 2603, 2608, 2635, 2649, 2662, 2679, 2685, 2691, + 2694, 2703, 2713, 2714, 2715, 2716, 2717, 2718, 2719, 2720, + 2721, 2728, 2729, 2730, 2731, 2732, 2733, 2734, 2735, 2736, + 2737, 2738, 2739, 2740, 2741, 2742, 2743, 2744, 2745, 2746, + 2747, 2748, 2749, 2750, 2751, 2752, 2753, 2754, 2755, 2756, + 2757, 2758, 2759, 2761, 2762, 2763, 2764, 2765, 2766, 2767, + 2768, 2769, 2770, 2771, 2772, 2773, 2774, 2775, 2776, 2777, + 2778, 2779, 2780, 2781, 2790, 2791, 2792, 2793, 2794, 2795, + 2796, 2800, 2815, 2829, 2848, 2860, 2872, 2894, 2899, 2904, + 2914, 2924, 2932, 2936, 2940, 2944, 2948, 2955, 2959, 2963, + 2967, 2974, 2979, 2986, 2991, 2995, 3000, 3004, 3012, 3023, + 3031, 3039, 3045, 3056, 3076, 3086, 3096, 3112, 3138, 3143, + 3147, 3151, 3163, 3167, 3179, 3186, 3196, 3200, 3215, 3220, + 3227, 3231, 3238, 3242, 3250, 3258, 3272, 3286, 3290, 3309, + 3317 }; #endif @@ -1043,11 +1042,11 @@ static const char *const yytname[] = "RuledSurfaceOptions", "Shape", "Transform", "MultipleShape", "ListOfShapes", "Delete", "Colorify", "Visibility", "Command", "Loop", "Extrude", "@6", "@7", "@8", "@9", "@10", "@11", "@12", "@13", "@14", - "@15", "@16", "@17", "@18", "@19", "ExtrudeParameters", - "ExtrudeParameter", "Transfinite", "Embedding", "Coherence", "FExpr", - "FExpr_Single", "VExpr", "VExpr_Single", "RecursiveListOfListOfDouble", - "ListOfDouble", "FExpr_Multi", "RecursiveListOfDouble", "ColorExpr", - "ListOfColor", "RecursiveListOfColor", "StringExprVar", "StringExpr", 0 + "@15", "@16", "@17", "@18", "ExtrudeParameters", "ExtrudeParameter", + "Transfinite", "Embedding", "Coherence", "FExpr", "FExpr_Single", + "VExpr", "VExpr_Single", "RecursiveListOfListOfDouble", "ListOfDouble", + "FExpr_Multi", "RecursiveListOfDouble", "ColorExpr", "ListOfColor", + "RecursiveListOfColor", "StringExprVar", "StringExpr", 0 }; #endif @@ -1094,25 +1093,25 @@ static const yytype_uint8 yyr1[] = 176, 176, 177, 177, 177, 177, 177, 177, 177, 177, 177, 177, 178, 178, 178, 178, 178, 178, 178, 178, 178, 178, 179, 179, 179, 180, 179, 181, 179, 182, - 179, 183, 179, 184, 179, 179, 179, 179, 179, 179, - 179, 179, 179, 179, 185, 179, 186, 179, 187, 179, + 179, 183, 179, 179, 179, 179, 179, 179, 179, 179, + 179, 179, 184, 179, 185, 179, 186, 179, 187, 179, 188, 179, 189, 179, 190, 179, 191, 179, 192, 179, - 193, 179, 194, 194, 195, 195, 195, 195, 195, 196, - 196, 196, 196, 196, 196, 196, 196, 196, 196, 197, - 197, 197, 197, 198, 199, 199, 199, 199, 199, 199, + 193, 193, 194, 194, 194, 194, 194, 195, 195, 195, + 195, 195, 195, 195, 195, 195, 195, 196, 196, 196, + 196, 197, 198, 198, 198, 198, 198, 198, 198, 198, + 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, + 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, + 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, + 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, + 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, + 198, 198, 198, 198, 199, 199, 199, 199, 199, 199, 199, 199, 199, 199, 199, 199, 199, 199, 199, 199, - 199, 199, 199, 199, 199, 199, 199, 199, 199, 199, - 199, 199, 199, 199, 199, 199, 199, 199, 199, 199, - 199, 199, 199, 199, 199, 199, 199, 199, 199, 199, - 199, 199, 199, 199, 199, 199, 199, 199, 199, 199, - 199, 199, 199, 199, 199, 199, 200, 200, 200, 200, - 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, - 200, 200, 200, 200, 201, 201, 201, 201, 201, 202, - 202, 202, 202, 203, 203, 204, 204, 204, 204, 204, - 204, 205, 205, 205, 205, 205, 205, 205, 205, 205, - 206, 206, 206, 206, 207, 207, 207, 207, 208, 208, - 209, 209, 210, 210, 211, 211, 211, 211, 211, 211, - 211, 211, 211 + 199, 199, 200, 200, 200, 200, 200, 201, 201, 201, + 201, 202, 202, 203, 203, 203, 203, 203, 203, 204, + 204, 204, 204, 204, 204, 204, 204, 204, 205, 205, + 205, 205, 206, 206, 206, 206, 207, 207, 208, 208, + 209, 209, 210, 210, 210, 210, 210, 210, 210, 210, + 210 }; /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */ @@ -1135,25 +1134,25 @@ static const yytype_uint8 yyr2[] = 4, 4, 3, 7, 7, 3, 7, 3, 2, 2, 15, 2, 6, 8, 8, 10, 1, 2, 1, 3, 4, 1, 5, 11, 13, 0, 7, 0, 13, 0, - 15, 0, 6, 0, 10, 8, 8, 8, 12, 12, - 12, 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, 6, - 9, 9, 8, 9, 8, 8, 6, 4, 6, 10, - 10, 10, 10, 2, 1, 3, 2, 2, 2, 3, + 15, 0, 6, 8, 8, 8, 12, 12, 12, 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, 6, 9, 9, + 8, 9, 8, 8, 6, 4, 6, 10, 10, 10, + 10, 2, 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, 2, 3, 3, 5, 4, 1, 1, 3, 6, - 1, 1, 3, 3, 9, 7, 1, 5, 3, 6, - 1, 3, 1, 1, 1, 1, 6, 4, 4, 4, - 6, 6, 9 + 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, 2, + 3, 3, 5, 4, 1, 1, 3, 6, 1, 1, + 3, 3, 9, 7, 1, 5, 3, 6, 1, 3, + 1, 1, 1, 1, 6, 4, 4, 4, 6, 6, + 9 }; /* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state @@ -1168,280 +1167,280 @@ static const yytype_uint16 yydefact[] = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 156, 0, 161, 0, 0, 158, 0, 0, 0, 0, 5, 7, 6, 8, 9, 10, 11, 12, 13, 19, - 18, 14, 15, 16, 17, 286, 293, 344, 54, 287, - 288, 289, 0, 0, 0, 0, 0, 0, 0, 0, + 18, 14, 15, 16, 17, 284, 291, 342, 54, 285, + 286, 287, 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, 345, 0, 0, - 290, 291, 292, 58, 57, 56, 55, 0, 0, 0, - 60, 59, 0, 0, 0, 0, 0, 0, 0, 224, + 0, 0, 0, 0, 0, 0, 0, 343, 0, 0, + 288, 289, 290, 58, 57, 56, 55, 0, 0, 0, + 60, 59, 0, 0, 0, 0, 0, 0, 0, 222, 0, 0, 0, 0, 149, 0, 151, 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, 304, 0, 0, 0, 0, 0, 0, 126, 0, - 126, 0, 0, 0, 0, 126, 223, 0, 126, 0, - 0, 0, 0, 0, 0, 336, 0, 0, 0, 0, - 0, 148, 0, 0, 157, 343, 344, 126, 0, 342, - 126, 0, 0, 0, 0, 0, 297, 29, 0, 0, + 0, 302, 0, 0, 0, 0, 0, 126, 0, 126, + 0, 0, 0, 0, 126, 221, 0, 126, 0, 0, + 0, 0, 0, 0, 334, 0, 0, 0, 0, 0, + 148, 0, 0, 157, 341, 342, 126, 0, 340, 126, + 0, 0, 0, 0, 0, 295, 29, 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, 0, 293, 227, 226, - 228, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 66, 145, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 142, 107, 0, - 0, 0, 0, 293, 0, 0, 326, 327, 330, 331, + 0, 0, 0, 0, 0, 0, 291, 225, 224, 226, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 66, + 145, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 142, 107, 0, 0, + 0, 0, 291, 0, 0, 324, 325, 328, 329, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 315, 0, 316, 0, 0, 0, + 0, 0, 0, 313, 0, 314, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 306, 305, 0, 0, 0, 0, 126, 126, - 0, 0, 0, 0, 0, 0, 0, 0, 171, 0, - 126, 125, 0, 124, 0, 0, 0, 135, 0, 0, - 0, 0, 0, 0, 0, 147, 0, 0, 0, 0, - 0, 126, 0, 0, 0, 0, 159, 0, 138, 0, - 139, 0, 0, 299, 0, 0, 68, 0, 0, 0, + 0, 304, 303, 0, 0, 0, 0, 126, 126, 0, + 0, 0, 0, 0, 0, 0, 171, 0, 126, 125, + 0, 124, 0, 0, 0, 135, 0, 0, 0, 0, + 0, 0, 0, 147, 0, 0, 0, 0, 0, 126, + 0, 0, 0, 0, 159, 0, 138, 0, 139, 0, + 0, 297, 0, 0, 68, 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, 343, - 0, 0, 0, 0, 0, 0, 0, 225, 0, 0, - 0, 0, 54, 0, 0, 0, 0, 0, 61, 0, - 242, 241, 240, 239, 235, 236, 238, 237, 230, 229, - 231, 232, 233, 234, 108, 0, 0, 0, 0, 0, - 0, 226, 321, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 317, + 0, 0, 0, 0, 0, 0, 0, 341, 0, 0, + 0, 0, 0, 0, 0, 223, 0, 0, 0, 0, + 54, 0, 0, 0, 0, 0, 61, 0, 240, 239, + 238, 237, 233, 234, 236, 235, 228, 227, 229, 230, + 231, 232, 108, 0, 0, 0, 0, 0, 0, 224, + 319, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 315, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 86, 87, 0, 0, 0, 0, 0, - 0, 0, 308, 307, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 127, 0, 0, 165, - 121, 217, 0, 0, 136, 0, 0, 132, 0, 123, + 0, 86, 87, 0, 0, 0, 0, 0, 0, 0, + 306, 305, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 127, 0, 0, 165, 121, 215, 0, + 0, 136, 0, 0, 132, 0, 123, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 160, 0, 140, + 141, 0, 293, 299, 0, 39, 0, 0, 0, 52, + 0, 30, 31, 32, 33, 34, 242, 263, 243, 264, + 244, 265, 245, 266, 246, 267, 247, 268, 248, 269, + 249, 270, 250, 271, 262, 283, 251, 272, 0, 0, + 253, 274, 254, 275, 255, 276, 256, 277, 257, 278, + 258, 279, 0, 0, 0, 0, 0, 0, 0, 0, + 347, 0, 0, 345, 346, 79, 0, 0, 0, 0, + 0, 54, 0, 0, 0, 0, 0, 73, 0, 0, + 0, 0, 294, 0, 22, 20, 0, 0, 0, 0, + 326, 0, 0, 321, 229, 320, 330, 331, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 160, 0, 140, 141, 0, 295, 301, 0, 39, 0, - 0, 0, 52, 0, 30, 31, 32, 33, 34, 244, - 265, 245, 266, 246, 267, 247, 268, 248, 269, 249, - 270, 250, 271, 251, 272, 252, 273, 264, 285, 253, - 274, 0, 0, 255, 276, 256, 277, 257, 278, 258, - 279, 259, 280, 260, 281, 0, 0, 0, 0, 0, - 0, 0, 0, 349, 0, 0, 347, 348, 79, 0, - 0, 0, 0, 0, 54, 0, 0, 0, 0, 0, - 73, 0, 0, 0, 0, 296, 0, 22, 20, 0, - 0, 0, 0, 328, 0, 0, 323, 231, 322, 332, - 333, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 318, 0, 0, 0, 0, 0, + 0, 316, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 117, 119, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 202, - 0, 162, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 137, 0, 0, 0, 0, - 0, 0, 298, 0, 294, 0, 0, 0, 0, 0, - 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 295, 64, 65, 0, 0, 0, - 0, 0, 67, 69, 71, 0, 0, 340, 0, 77, - 243, 21, 0, 0, 0, 0, 0, 325, 0, 0, + 0, 117, 119, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 200, 0, 162, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 319, 0, 92, 0, 0, 0, 0, 0, - 209, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 126, 0, 0, 0, 0, 0, - 0, 0, 207, 0, 0, 172, 203, 0, 0, 216, - 218, 134, 133, 0, 27, 28, 0, 0, 0, 337, - 0, 0, 0, 152, 0, 0, 144, 300, 143, 0, - 0, 0, 0, 313, 0, 254, 275, 261, 282, 262, - 283, 263, 284, 0, 351, 350, 346, 303, 0, 54, - 0, 0, 0, 0, 62, 0, 0, 0, 338, 23, - 24, 0, 0, 90, 0, 324, 0, 95, 0, 97, - 0, 0, 93, 0, 0, 110, 111, 0, 0, 94, - 115, 320, 0, 0, 0, 0, 88, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 146, 0, 0, 0, - 0, 126, 173, 0, 184, 0, 186, 0, 188, 0, - 0, 0, 0, 315, 0, 0, 0, 0, 166, 0, - 100, 101, 0, 0, 0, 0, 80, 0, 302, 0, - 35, 0, 0, 0, 0, 0, 37, 0, 0, 0, - 0, 74, 0, 0, 75, 0, 341, 0, 0, 329, - 0, 0, 0, 103, 0, 0, 112, 0, 0, 0, - 214, 105, 0, 0, 0, 0, 0, 212, 215, 114, - 91, 104, 113, 116, 0, 0, 0, 312, 0, 311, - 0, 0, 0, 175, 0, 0, 176, 0, 0, 177, - 0, 128, 129, 130, 131, 0, 0, 0, 0, 0, - 0, 0, 0, 335, 0, 154, 153, 0, 0, 0, - 40, 0, 0, 0, 314, 0, 0, 0, 0, 63, - 70, 72, 0, 78, 0, 25, 0, 0, 96, 98, - 0, 0, 0, 0, 0, 0, 106, 211, 210, 213, - 84, 85, 126, 0, 120, 0, 0, 0, 0, 0, - 0, 0, 204, 0, 0, 126, 0, 122, 0, 0, - 0, 0, 81, 82, 0, 36, 0, 0, 0, 38, - 53, 352, 0, 339, 0, 219, 220, 221, 222, 109, - 0, 0, 0, 0, 310, 174, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 167, 0, - 0, 334, 155, 0, 0, 0, 0, 0, 76, 0, - 0, 0, 118, 0, 190, 0, 0, 192, 0, 0, - 194, 0, 0, 0, 205, 0, 163, 0, 126, 102, - 83, 0, 44, 0, 50, 0, 0, 0, 89, 309, - 178, 0, 0, 185, 179, 0, 0, 187, 180, 0, - 0, 189, 0, 0, 0, 169, 0, 0, 0, 0, - 0, 0, 0, 196, 0, 198, 0, 200, 206, 208, - 168, 164, 0, 41, 0, 48, 0, 0, 0, 0, - 181, 0, 0, 182, 0, 0, 183, 0, 0, 0, - 42, 0, 0, 150, 0, 0, 0, 0, 0, 0, - 0, 170, 0, 0, 0, 0, 0, 191, 0, 193, - 0, 195, 0, 43, 45, 0, 46, 0, 99, 0, - 0, 0, 0, 0, 51, 197, 199, 201, 47, 49 + 0, 137, 0, 0, 0, 0, 0, 0, 296, 0, + 292, 0, 0, 0, 0, 0, 26, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 293, 64, 65, 0, 0, 0, 0, 0, 67, 69, + 71, 0, 0, 338, 0, 77, 241, 21, 0, 0, + 0, 0, 0, 323, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 317, 0, + 92, 0, 0, 0, 0, 0, 207, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 205, 0, 0, + 172, 201, 0, 0, 214, 216, 134, 133, 0, 27, + 28, 0, 0, 0, 335, 0, 0, 0, 152, 0, + 0, 144, 298, 143, 0, 0, 0, 0, 311, 0, + 252, 273, 259, 280, 260, 281, 261, 282, 0, 349, + 348, 344, 301, 0, 54, 0, 0, 0, 0, 62, + 0, 0, 0, 336, 23, 24, 0, 0, 90, 0, + 322, 0, 95, 0, 97, 0, 0, 93, 0, 0, + 110, 111, 0, 0, 94, 115, 318, 0, 0, 0, + 0, 88, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 146, 0, 0, 0, 0, 126, 0, 182, 0, + 184, 0, 186, 0, 0, 0, 0, 313, 0, 0, + 0, 0, 166, 0, 100, 101, 0, 0, 0, 0, + 80, 0, 300, 0, 35, 0, 0, 0, 0, 0, + 37, 0, 0, 0, 0, 74, 0, 0, 75, 0, + 339, 0, 0, 327, 0, 0, 0, 103, 0, 0, + 112, 0, 0, 0, 212, 105, 0, 0, 0, 0, + 0, 210, 213, 114, 91, 104, 113, 116, 0, 0, + 0, 310, 0, 309, 0, 0, 173, 0, 0, 174, + 0, 0, 175, 0, 128, 129, 130, 131, 0, 0, + 0, 0, 0, 0, 0, 0, 333, 0, 154, 153, + 0, 0, 0, 40, 0, 0, 0, 312, 0, 0, + 0, 0, 63, 70, 72, 0, 78, 0, 25, 0, + 0, 96, 98, 0, 0, 0, 0, 0, 0, 106, + 209, 208, 211, 84, 85, 126, 0, 120, 0, 0, + 0, 0, 0, 0, 202, 0, 0, 126, 0, 122, + 0, 0, 0, 0, 81, 82, 0, 36, 0, 0, + 0, 38, 53, 350, 0, 337, 0, 217, 218, 219, + 220, 109, 0, 0, 0, 0, 308, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 167, + 0, 0, 332, 155, 0, 0, 0, 0, 0, 76, + 0, 0, 0, 118, 0, 188, 0, 0, 190, 0, + 0, 192, 0, 0, 0, 203, 0, 163, 0, 126, + 102, 83, 0, 44, 0, 50, 0, 0, 0, 89, + 307, 176, 0, 0, 183, 177, 0, 0, 185, 178, + 0, 0, 187, 0, 0, 0, 169, 0, 0, 0, + 0, 0, 0, 0, 194, 0, 196, 0, 198, 204, + 206, 168, 164, 0, 41, 0, 48, 0, 0, 0, + 0, 179, 0, 0, 180, 0, 0, 181, 0, 0, + 0, 42, 0, 0, 150, 0, 0, 0, 0, 0, + 0, 0, 170, 0, 0, 0, 0, 0, 189, 0, + 191, 0, 193, 0, 43, 45, 0, 46, 0, 99, + 0, 0, 0, 0, 0, 51, 195, 197, 199, 47, + 49 }; /* YYDEFGOTO[NTERM-NUM]. */ static const yytype_int16 yydefgoto[] = { - -1, 2, 3, 60, 649, 61, 62, 395, 949, 955, - 574, 735, 1084, 1209, 575, 1177, 1235, 576, 1211, 577, - 578, 739, 126, 216, 63, 512, 983, 536, 306, 362, - 363, 66, 67, 68, 69, 70, 307, 712, 1147, 1192, - 537, 1001, 1004, 1007, 1010, 1161, 1165, 1169, 1201, 1204, - 1207, 708, 709, 72, 73, 74, 324, 129, 342, 171, - 852, 853, 326, 310, 197, 644, 768, 208, 209 + -1, 2, 3, 60, 646, 61, 62, 393, 943, 949, + 571, 731, 1076, 1200, 572, 1168, 1226, 573, 1202, 574, + 575, 735, 126, 215, 63, 510, 977, 533, 305, 360, + 361, 66, 67, 68, 69, 70, 306, 708, 1138, 1183, + 534, 997, 1000, 1003, 1152, 1156, 1160, 1192, 1195, 1198, + 704, 705, 72, 73, 74, 323, 129, 341, 171, 847, + 848, 325, 309, 196, 641, 764, 207, 208 }; /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing STATE-NUM. */ -#define YYPACT_NINF -1030 +#define YYPACT_NINF -1024 static const yytype_int16 yypact[] = { - 2752, 35, 67, 2830, -1030, -1030, 2044, 71, 58, -9, - 2, 115, -74, 40, 54, -38, 77, 139, -51, 143, - 195, 131, -27, 142, 151, 288, 74, 289, 29, 235, - 253, 298, 298, 259, 36, 277, 331, 363, 30, 424, - 395, 316, 443, 457, 470, 327, 359, 362, 13, 22, - -1030, 368, -1030, 490, 367, -1030, 505, 516, 10, 26, - -1030, -1030, -1030, -1030, -1030, -1030, -1030, -1030, -1030, -1030, - -1030, -1030, -1030, -1030, -1030, -1030, 21, 393, 397, -1030, - -1030, -1030, -106, 64, 189, 203, 225, 256, 285, 320, - 355, 391, 411, 427, 456, 459, 486, 489, 514, 524, - 531, 535, 558, 420, 423, 430, 434, -1030, 569, 440, - -1030, -1030, -1030, -1030, -1030, -1030, -1030, 2256, 2256, 2256, - -1030, -1030, 2256, 1682, 12, 576, 2256, 577, 986, -1030, - 578, 602, 2256, 613, -1030, 2256, -1030, 2256, 2093, 2256, - 2256, 498, 2256, 2093, 2256, 2256, 510, 2093, 2256, 2256, - 1349, 527, 2256, 483, 539, 540, 1349, 515, 554, 570, - 574, 615, 616, 630, 622, 298, 298, 298, 2256, 2256, - -54, -1030, 222, 298, 629, 628, 654, 657, 1912, 248, - 735, 1349, 1349, 32, 645, -1030, -1030, 664, 735, 682, - 683, 766, 2256, 2256, 2256, 687, 2256, 685, 734, 2256, - 2256, -1030, 2256, 829, -1030, -1030, -1030, -1030, 838, -1030, - -1030, 842, 716, 2256, 864, 727, -1030, -1030, 871, 2256, - 2256, 2256, 2256, 2256, 2256, 2256, 2256, 2256, 2256, 2256, - 2256, 2256, 2256, 2256, 2256, 2256, 2256, 2256, 2256, 2256, - 2256, 2256, 2256, 2256, 2256, 2256, 2256, 2256, 2256, 2256, - 2256, 2256, 2256, 2256, 2256, 2256, 2256, 2256, 2256, 2256, - 2256, 565, 591, 591, 591, 2256, 883, 624, 770, 770, - 770, 5114, 16, 2093, 4355, 186, 755, 898, 771, 1053, - -1030, -1030, 2256, 2256, 2256, 2256, 2256, 2256, 2256, 2256, - 2256, 2256, 2256, 2256, 2256, 2256, 2256, -1030, -1030, 1130, - 161, 3601, 5135, 679, 767, 2093, -1030, -1030, 2527, -1030, - -65, 5156, 5177, 2256, 5198, 374, 5219, 5240, 2256, 563, - 5261, 5282, 1481, 1199, 2546, 901, -1030, 2256, 5303, 2256, - 2256, 2256, 904, 2256, 2256, 2256, 2219, 2219, 2219, 2219, - 782, -12, -1030, -1030, 3627, 3653, 298, 298, 735, 735, - -7, 2256, 2256, 2256, 2256, 1912, 1912, 2256, 2896, 361, - -1030, -1030, 776, 2896, 81, 913, 915, -1030, 2256, 2256, - 739, 2093, 784, 2256, 2256, -1030, 5324, 5345, 5366, 831, - 3679, -1030, 786, 2566, 5387, 4378, -1030, 953, -1030, 1387, - -1030, 2256, 4401, 163, 2256, 8, -1030, 5408, 4424, 5429, - 4447, 5450, 4470, 5471, 4493, 5492, 4516, 5513, 4539, 5534, - 4562, 5555, 4585, 5576, 4608, 5597, 4631, 5618, 4654, 3705, - 3731, 5639, 4677, 5660, 4700, 5681, 4723, 5702, 4746, 5723, - 4769, 5744, 4792, 3757, 3783, 3809, 3835, 3861, 3887, 571, - 181, 789, 798, 799, 1855, 795, 2256, -1030, 1349, 1349, - 590, 314, 397, 2256, 930, 933, 14, 802, -1030, 2585, - 1193, 1224, 1072, 1072, 707, 707, 707, 707, 141, 141, - 770, 770, 770, 770, -1030, 48, 2093, 2256, 932, 1877, - 2256, 770, -1030, 2256, 2093, 2093, 845, 934, 935, 5765, - 937, 850, 939, 942, 5786, 855, 944, 946, 2093, -1030, - 603, 1613, 2256, 5807, 947, 2653, 5828, 5849, 2256, 2903, - 2931, 5870, 821, 2304, -1030, 822, 823, 824, 825, 298, - 2256, 2256, -1030, -1030, 818, 819, 2256, 4815, 3913, 3939, - 3965, 3575, 42, -32, -43, 68, -1030, 192, 298, 1519, - -1030, -1030, 2256, 2256, -1030, 4838, 4861, -1030, 606, -1030, - 4884, 4907, 956, 963, 964, 835, 2256, 1783, 2256, 2256, - -1030, 0, -1030, -1030, 4930, 377, -1030, 2959, -1030, 841, - 858, 836, -1030, 987, -1030, -1030, -1030, -1030, -1030, -1030, - -1030, -1030, -1030, -1030, -1030, -1030, -1030, -1030, -1030, -1030, - -1030, -1030, -1030, -1030, -1030, -1030, -1030, -1030, -1030, -1030, - -1030, 2256, 2256, -1030, -1030, -1030, -1030, -1030, -1030, -1030, - -1030, -1030, -1030, -1030, -1030, 2256, 2256, 2256, 2256, 2256, - 2256, 2256, 1002, -1030, 2093, 591, -1030, -1030, -1030, 2256, - 4953, 1005, 1008, 872, -1030, 17, 2256, 1010, 1011, 2197, - -1030, 1012, 886, 13, 1016, -1030, 2256, -1030, 905, 591, - 227, 3991, 298, -1030, 2093, 2987, 2604, 770, -1030, 2527, - -1030, 975, 1349, 1349, 1019, 1349, 614, 1349, 1349, 1021, - 979, 1349, 1349, 619, -1030, 2093, 2285, 1024, 893, 1027, - 1029, 1030, 863, 1031, 1032, 1036, 1040, 1041, 1049, 1050, - 1056, 406, 4017, 4043, -1030, -1030, 3015, 923, 298, 298, - 298, 2093, 2093, 2093, 2093, 1059, 927, 936, 232, -1030, - 517, -1030, 192, 2324, 2343, 1065, 1066, 1026, 1067, 1070, - 1349, 1349, 1349, 1073, 4069, -1030, 2623, 738, 1074, 1075, - 1078, 1076, -1030, 1079, -1030, 948, 2256, 2256, 1349, 949, - -1030, 5891, 4976, 5912, 4999, 5933, 5022, 5954, 5045, 5068, - 952, 261, 954, 5975, -86, -1030, -1030, 356, 352, 950, - 1084, 2362, -1030, -1030, -1030, 13, 2256, -1030, 626, -1030, - 2304, -1030, 1086, 51, 2256, 55, 632, -1030, 2256, 955, - 44, 47, 1349, 1087, 958, 974, 1090, 1110, 1349, 977, - 1116, 1117, -1030, 636, -1030, 1119, 2256, 1349, 1349, 1349, - -1030, 240, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 92, - 2256, 2256, 2256, 985, -1030, -81, -68, 136, 637, 640, - 674, 701, -1030, 1349, 2256, -1030, -1030, 1912, 234, -1030, - -1030, -1030, -1030, 988, -1030, -1030, 1120, 1121, 1038, -1030, - 2256, 2256, 2256, -1030, 1124, 1125, -1030, 163, -1030, 2256, - 4095, 4121, 702, -1030, 2256, -1030, -1030, -1030, -1030, -1030, - -1030, -1030, -1030, 996, -1030, -1030, -1030, -1030, 1349, 397, - 2256, 1132, 1135, 14, -1030, 1134, 5091, 13, -1030, -1030, - -1030, 591, 4147, -1030, 1006, 2304, 2256, -1030, 298, -1030, - 298, 1137, -1030, 2256, 2256, -1030, -1030, 1138, 2256, -1030, - -1030, -1030, 1140, 4173, 1141, 1142, 1051, 2256, 2256, 843, - 1144, 1145, 1147, 1149, 1151, 1153, -1030, 2219, 3043, 5996, - 1163, 735, 2896, 298, 1154, 298, 1155, 298, 1156, 1158, - 1160, 1175, 1176, 560, 1045, 6017, 3071, 522, -1030, 2256, - -1030, -1030, 1349, 2847, 598, 6038, -1030, 1745, -1030, 272, - 2304, 2256, 2256, 1349, 1046, 732, 2304, 1183, 1182, 1184, - 2381, -1030, 1194, 1200, -1030, 1068, -1030, 1201, 2256, -1030, - 3099, 88, 90, -1030, 3127, 3155, -1030, 3183, 1206, 2256, - -1030, -1030, 1165, 1228, 2407, 2426, 1229, -1030, -1030, -1030, - -1030, -1030, -1030, -1030, 2446, 1230, 1097, -1030, 2256, -1030, - 1098, 192, 528, -1030, 1100, 530, -1030, 1101, 566, -1030, - 1103, -1030, -1030, -1030, -1030, 1232, 1349, 1251, 1131, 2256, - 3211, 1169, 2256, -1030, 2256, -1030, -1030, 2093, 2465, 1254, - -1030, 2256, 4199, 4225, -1030, 1349, 2256, 1255, 1136, -1030, - -1030, -1030, 13, -1030, 1179, -1030, 4251, 1267, -1030, -1030, - 1268, 1285, 1286, 1287, 4277, 1186, -1030, -1030, -1030, -1030, - -1030, -1030, 735, 2875, -1030, 305, 1912, 192, 1912, 192, - 1912, 192, -1030, 737, 1349, -1030, 3239, -1030, 2256, 3267, - 3295, 740, -1030, -1030, 1188, 2304, 2256, 2256, 745, 2304, - -1030, -1030, 1288, -1030, 2256, -1030, -1030, -1030, -1030, -1030, - 1291, 2256, 1157, 2256, -1030, -1030, 3323, 587, 307, 3351, - 604, 329, 3379, 617, 380, 1349, 1294, 1242, 1905, 1189, - 2484, -1030, -1030, 1318, 2256, 6059, 4303, 7, -1030, 4329, - 1191, 3407, -1030, 3435, 1325, 2256, 1327, 1328, 2256, 1329, - 1330, 2256, 1332, 1198, -1030, 2256, -1030, 192, -1030, -1030, - -1030, 746, -1030, 2256, -1030, 1349, 2256, 1350, -1030, -1030, - -1030, 1214, 3463, -1030, -1030, 1217, 3491, -1030, -1030, 1221, - 3519, -1030, 1378, 2503, 399, 2250, 1379, 1246, 6080, 752, - 3547, 1248, 192, 1382, 192, 1383, 192, 1384, -1030, -1030, - -1030, -1030, 192, -1030, 591, -1030, 1253, 1385, 1389, 433, - -1030, 1256, 464, -1030, 1257, 469, -1030, 1258, 493, 756, - -1030, 1261, 1349, -1030, 1262, 1396, 192, 1398, 192, 1399, - 192, -1030, 591, 1400, 591, 757, 1401, -1030, 503, -1030, - 507, -1030, 521, -1030, -1030, 760, -1030, 1402, -1030, 1403, - 1404, 1405, 591, 1406, -1030, -1030, -1030, -1030, -1030, -1030 + 2786, 25, 19, 2864, -1024, -1024, 2033, 22, -5, -71, + 26, 65, 50, -12, 4, -32, 63, 123, -55, 126, + 138, 118, -39, 130, 258, 288, 248, 269, 676, 226, + 244, -37, -37, 254, 504, 299, 317, 349, 20, 428, + 365, 303, 442, 447, 457, 335, 339, 372, 13, 9, + -1024, 388, -1024, 475, 399, -1024, 536, 539, 10, 17, + -1024, -1024, -1024, -1024, -1024, -1024, -1024, -1024, -1024, -1024, + -1024, -1024, -1024, -1024, -1024, -1024, 21, 408, 554, -1024, + -1024, -1024, 134, 222, 271, 275, 283, 294, 393, 436, + 444, 450, 466, 503, 508, 538, 570, 609, 624, 628, + 636, 639, 640, 432, 445, 470, 485, -1024, 616, 493, + -1024, -1024, -1024, -1024, -1024, -1024, -1024, 2245, 2245, 2245, + -1024, -1024, 2245, 1671, 34, 626, 2245, 649, 1152, -1024, + 659, 672, 2245, 637, -1024, 2245, -1024, 2245, 2082, 2245, + 2245, 523, 2245, 2082, 2245, 2245, 527, 2082, 2245, 2245, + 1324, 533, 2245, 530, 566, 571, 1324, 577, 586, 598, + 631, 635, 657, 673, 803, -37, -37, -37, 2245, 2245, + -40, -1024, 46, -37, 681, 682, 685, 1901, 152, 743, + 1324, 1324, 24, 677, -1024, -1024, 707, 743, 694, 728, + 810, 2245, 2245, 2245, 734, 2245, 773, 787, 2245, 2245, + -1024, 2245, 881, -1024, -1024, -1024, -1024, 890, -1024, -1024, + 908, 781, 2245, 913, 778, -1024, -1024, 914, 2245, 2245, + 2245, 2245, 2245, 2245, 2245, 2245, 2245, 2245, 2245, 2245, + 2245, 2245, 2245, 2245, 2245, 2245, 2245, 2245, 2245, 2245, + 2245, 2245, 2245, 2245, 2245, 2245, 2245, 2245, 2245, 2245, + 2245, 2245, 2245, 2245, 2245, 2245, 2245, 2245, 2245, 2245, + 38, 615, 615, 615, 2245, 917, 532, 791, 791, 791, + 5153, 16, 2082, 4417, 302, 782, 920, 793, 1844, -1024, + -1024, 2245, 2245, 2245, 2245, 2245, 2245, 2245, 2245, 2245, + 2245, 2245, 2245, 2245, 2245, 2245, -1024, -1024, 2167, -74, + 3663, 5174, 625, 790, 2082, -1024, -1024, 2556, -1024, 217, + 5195, 5216, 2245, 5237, 348, 5258, 5279, 2245, 371, 5300, + 5321, 1470, 1188, 2575, 924, -1024, 2245, 5342, 2245, 2245, + 2245, 925, 2245, 2245, 2245, 2208, 2208, 2208, 2208, 799, + -73, -1024, -1024, 3689, 3715, -37, -37, 743, 743, 182, + 2245, 2245, 2245, 1901, 1901, 2245, 2930, 188, -1024, -1024, + 794, 2930, 91, 927, 930, -1024, 2245, 2245, 664, 2082, + 797, 2245, 2245, -1024, 5363, 5384, 5405, 847, 3741, -1024, + 800, 2594, 5426, 4440, -1024, 689, -1024, 935, -1024, 2245, + 4463, 82, 2245, 8, -1024, 5447, 4486, 5468, 4509, 5489, + 4532, 5510, 4555, 5531, 4578, 5552, 4601, 5573, 4624, 5594, + 4647, 5615, 4670, 5636, 4693, 5657, 4716, 3767, 3793, 5678, + 4739, 5699, 4762, 5720, 4785, 5741, 4808, 5762, 4831, 5783, + 4854, 3819, 3845, 3871, 3897, 3923, 3949, 563, -23, 804, + 811, 812, 2186, 813, 2245, -1024, 1324, 1324, 650, 289, + 554, 2245, 943, 946, 14, 815, -1024, 2613, 733, 880, + 660, 660, 711, 711, 711, 711, 405, 405, 791, 791, + 791, 791, -1024, 35, 2082, 2245, 947, 1866, 2245, 791, + -1024, 2245, 2082, 2082, 858, 949, 950, 5804, 952, 865, + 954, 955, 5825, 868, 957, 958, 2082, -1024, 654, 1602, + 2245, 5846, 960, 2687, 5867, 5888, 2245, 2965, 2993, 5909, + 834, 2293, -1024, 836, 837, 838, 839, -37, 2245, 2245, + -1024, -1024, 832, 833, 2245, 3975, 4001, 4027, 3637, 60, + -31, -51, 170, -1024, 311, -37, 1366, -1024, -1024, 2245, + 2245, -1024, 4877, 4900, -1024, 655, -1024, 4923, 4946, 968, + 970, 986, 859, 2245, 1508, 2245, 2245, -1024, 30, -1024, + -1024, 4969, 68, -1024, 3021, -1024, 876, 877, 874, -1024, + 1009, -1024, -1024, -1024, -1024, -1024, -1024, -1024, -1024, -1024, + -1024, -1024, -1024, -1024, -1024, -1024, -1024, -1024, -1024, -1024, + -1024, -1024, -1024, -1024, -1024, -1024, -1024, -1024, 2245, 2245, + -1024, -1024, -1024, -1024, -1024, -1024, -1024, -1024, -1024, -1024, + -1024, -1024, 2245, 2245, 2245, 2245, 2245, 2245, 2245, 1013, + -1024, 2082, 615, -1024, -1024, -1024, 2245, 4992, 1012, 1015, + 883, -1024, 84, 2245, 1020, 1021, 2313, -1024, 1022, 893, + 13, 1024, -1024, 2245, -1024, 911, 615, -22, 4053, -37, + -1024, 2082, 3049, 2638, 791, -1024, 2556, -1024, 983, 1324, + 1324, 1026, 1324, 749, 1324, 1324, 1027, 984, 1324, 1324, + 687, -1024, 2082, 2332, 1031, 900, 1036, 1037, 1040, 2274, + 1041, 1042, 1043, 1044, 1046, 1048, 1050, 1055, 221, 4079, + 4105, -1024, -1024, 3077, -37, -37, -37, 2082, 2082, 2082, + 2082, 1056, 921, 931, -11, -1024, 370, -1024, 311, 2351, + 2370, 1057, 1059, 1018, 1062, 1063, 1324, 1324, 1324, 1066, + 4131, -1024, 2657, 982, 1067, 1068, 1071, 1069, -1024, 1072, + -1024, 948, 2245, 2245, 1324, 939, -1024, 5930, 5015, 5951, + 5038, 5972, 5061, 5993, 5084, 5107, 951, 131, 953, 6014, + 430, -1024, -1024, 347, 354, 973, 1073, 2396, -1024, -1024, + -1024, 13, 2245, -1024, 700, -1024, 2293, -1024, 1077, 52, + 2245, 1, 705, -1024, 2245, 944, 23, 39, 1324, 1080, + 972, 977, 1082, 1084, 1324, 978, 1086, 1113, -1024, 723, + -1024, 1115, 2245, 1324, 1324, 1324, -1024, 253, 1324, 1324, + 1324, 1324, 1324, 1324, 1324, 494, 2245, 2245, 2245, 981, + 367, 400, 431, 727, 731, 739, 742, -1024, 1324, 2245, + -1024, -1024, 1901, -9, -1024, -1024, -1024, -1024, 987, -1024, + -1024, 1117, 1118, 1038, -1024, 2245, 2245, 2245, -1024, 1124, + 1126, -1024, 82, -1024, 2245, 4157, 4183, 747, -1024, 2245, + -1024, -1024, -1024, -1024, -1024, -1024, -1024, -1024, 994, -1024, + -1024, -1024, -1024, 1324, 554, 2245, 1128, 1131, 14, -1024, + 1130, 5130, 13, -1024, -1024, -1024, 615, 4209, -1024, 1001, + 2293, 2245, -1024, -37, -1024, -37, 1132, -1024, 2245, 2245, + -1024, -1024, 1133, 2245, -1024, -1024, -1024, 1136, 4235, 1138, + 1139, 1047, 2245, 2245, 795, 1140, 1142, 1144, 1146, 1147, + 1151, -1024, 2208, 3105, 6035, 2881, 743, -37, 1153, -37, + 1154, -37, 1156, 1157, 1158, 1159, 1160, 255, 1028, 6056, + 3133, 458, -1024, 2245, -1024, -1024, 1324, 2909, 565, 6077, + -1024, 1734, -1024, 159, 2293, 2245, 2245, 1324, 1029, 751, + 2293, 1164, 1167, 1176, 2415, -1024, 1177, 1179, -1024, 1049, + -1024, 1181, 2245, -1024, 3161, 51, 58, -1024, 3189, 3217, + -1024, 3245, 1178, 2245, -1024, -1024, 1141, 1183, 2435, 2454, + 1184, -1024, -1024, -1024, -1024, -1024, -1024, -1024, 2473, 1187, + 1054, -1024, 2245, -1024, 1060, 465, -1024, 1083, 482, -1024, + 1085, 492, -1024, 1087, -1024, -1024, -1024, -1024, 1194, 1324, + 1217, 1088, 2245, 3273, 1143, 2245, -1024, 2245, -1024, -1024, + 2082, 2492, 1220, -1024, 2245, 4261, 4287, -1024, 1324, 2245, + 1223, 1096, -1024, -1024, -1024, 13, -1024, 1145, -1024, 4313, + 1226, -1024, -1024, 1228, 1229, 1230, 1231, 4339, 1099, -1024, + -1024, -1024, -1024, -1024, -1024, 743, 2937, -1024, 1901, 311, + 1901, 311, 1901, 311, -1024, 752, 1324, -1024, 3301, -1024, + 2245, 3329, 3357, 756, -1024, -1024, 1101, 2293, 2245, 2245, + 761, 2293, -1024, -1024, 1236, -1024, 2245, -1024, -1024, -1024, + -1024, -1024, 1238, 2245, 1103, 2245, -1024, 3385, 501, 194, + 3413, 522, 223, 3441, 525, 264, 1324, 1239, 1185, 1772, + 1107, 2518, -1024, -1024, 1242, 2245, 6098, 4365, 28, -1024, + 4391, 1110, 3469, -1024, 3497, 1244, 2245, 1245, 1246, 2245, + 1253, 1254, 2245, 1255, 1121, -1024, 2245, -1024, 311, -1024, + -1024, -1024, 762, -1024, 2245, -1024, 1324, 2245, 1258, -1024, + -1024, -1024, 1149, 3525, -1024, -1024, 1161, 3553, -1024, -1024, + 1162, 3581, -1024, 1274, 2537, 314, 1894, 1275, 1163, 6119, + 765, 3609, 1148, 311, 1276, 311, 1277, 311, 1279, -1024, + -1024, -1024, -1024, 311, -1024, 615, -1024, 1165, 1280, 1286, + 345, -1024, 1166, 358, -1024, 1168, 363, -1024, 1169, 366, + 766, -1024, 1170, 1324, -1024, 1173, 1287, 311, 1292, 311, + 1293, 311, -1024, 615, 1294, 615, 770, 1298, -1024, 384, + -1024, 397, -1024, 439, -1024, -1024, 771, -1024, 1301, -1024, + 1309, 1311, 1312, 615, 1313, -1024, -1024, -1024, -1024, -1024, + -1024 }; /* YYPGOTO[NTERM-NUM]. */ static const yytype_int16 yypgoto[] = { - -1030, -1030, -1030, -1030, 647, -1030, -1030, -1030, -1030, 271, - -1030, -1030, -1030, -1030, -1030, -1030, -1030, -1030, -1030, -1030, - -1030, -1030, -271, -1, -1030, 212, -1030, 1410, 6, -187, - -175, -1030, -1030, -1030, -1030, -1030, 1418, -1030, -1030, -1030, - -1030, -1030, -1030, -1030, -1030, -1030, -1030, -1030, -1030, -1030, - -1030, -693, -671, -1030, -1030, -1030, -4, -1030, 231, -1030, - -1029, 247, 34, -66, -619, 549, -1030, -59, 5 + -1024, -1024, -1024, -1024, 551, -1024, -1024, -1024, -1024, 207, + -1024, -1024, -1024, -1024, -1024, -1024, -1024, -1024, -1024, -1024, + -1024, -1024, -271, 0, -1024, -127, -1024, 1320, 5, -186, + -173, -1024, -1024, -1024, -1024, -1024, 1322, -1024, -1024, -1024, + -1024, -1024, -1024, -1024, -1024, -1024, -1024, -1024, -1024, -1024, + -609, -677, -1024, -1024, -1024, -4, -1024, 230, -1024, -1023, + 377, 176, -65, -614, 462, -1024, -59, 3 }; /* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If @@ -1451,900 +1450,903 @@ static const yytype_int16 yypgoto[] = #define YYTABLE_NINF -5 static const yytype_int16 yytable[] = { - 211, 372, 128, 358, 453, 127, 1088, 728, 134, 65, - 370, 130, 568, 1154, 205, 206, 275, 195, 642, 828, - 146, 758, 151, 448, 767, 212, 198, 219, 146, 220, - 205, 206, 387, 141, 183, 389, 366, 826, 367, 141, - 174, 4, 346, 347, 120, 121, 103, 104, 105, 106, - 887, 731, 107, 889, 647, 346, 347, 880, 923, 137, - 924, 883, 103, 104, 105, 106, 138, 5, 107, 346, - 347, 925, 160, 926, 485, 161, 486, 315, 162, 175, - 163, 319, 176, 218, 131, 177, 348, 541, 542, 147, - 569, 570, 571, 572, 1048, 142, 1049, 703, 916, 917, - 888, 142, 143, 890, 276, 277, 152, 132, 702, 759, - 760, 346, 347, 268, 269, 270, 346, 347, 271, 274, - 156, 136, 279, 157, 133, 158, 1179, 519, 299, 449, - 184, 301, 526, 302, 308, 311, 312, 729, 314, 308, - 316, 317, 135, 308, 320, 321, 875, 1155, 328, 573, - 207, 120, 121, 196, 643, 199, 213, 826, 214, 166, - 167, 524, 525, 215, 344, 345, 210, 368, 648, 168, - 185, 648, 309, 139, 345, 137, 178, 309, 346, 347, - 636, 309, 701, 1225, 150, 539, 361, 140, 376, 377, - 378, 153, 380, 452, 361, 383, 384, 221, 385, 222, - 154, 149, 440, 441, 442, 443, 557, 450, 704, 392, - 144, 346, 347, 346, 347, 397, 398, 399, 400, 401, - 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, - 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, - 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, - 432, 433, 434, 435, 436, 437, 438, 500, 966, 346, - 347, 444, 170, 172, 705, 179, 293, 294, 295, 308, - 706, 707, 145, 296, 454, 927, 148, 928, 459, 460, - 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, - 471, 472, 473, 120, 121, 475, 113, 114, 115, 116, - 476, 481, 907, 908, 705, 548, 705, 309, 1065, 489, - 706, 707, 706, 707, 494, 623, 120, 121, 481, 308, - 624, 634, 223, 503, 224, 505, 506, 507, 149, 509, - 510, 511, 513, 513, 513, 513, 225, 155, 226, 482, - 159, 514, 514, 514, 514, 346, 347, 527, 528, 529, - 530, 268, 269, 531, 361, 361, 482, 309, 227, 869, - 228, 773, 349, 634, 545, 546, 485, 308, 164, 550, - 551, 346, 347, 825, 1108, 938, 1111, 705, 1114, 705, - 181, 205, 206, 706, 707, 706, 707, 564, 360, 229, - 567, 230, 566, 165, 826, 865, 341, 325, 343, 173, - 485, 705, 206, 332, 350, 309, 1030, 706, 707, 359, - 650, 1031, 182, 103, 104, 105, 106, 180, 231, 107, - 232, 166, 167, 1092, 113, 114, 115, 116, 364, 365, - 186, 168, 673, 103, 104, 105, 106, 826, 169, 107, - 826, 187, 630, 826, 120, 121, 1105, 189, 1136, 639, - 637, 635, 705, 233, 1174, 234, 188, 638, 706, 707, - 192, 190, 113, 114, 115, 116, 113, 114, 115, 116, - 1139, 705, 308, 651, 191, 630, 655, 706, 707, 656, - 657, 659, 120, 121, 346, 347, 868, 870, 235, 1199, - 236, 1202, 193, 1205, 308, 194, 201, 657, 676, 1208, - 538, 200, 202, 826, 682, 705, 733, 120, 121, 203, - 309, 706, 707, 485, 731, 491, 692, 693, 658, 660, - 204, 1142, 696, 1228, 237, 1230, 238, 1232, 826, 346, - 347, 826, 309, 217, 826, 658, 705, 826, 713, 714, - 1190, 705, 706, 707, 239, 810, 240, 706, 707, 515, - 516, 517, 724, 261, 726, 727, 262, 826, 751, 826, - 241, 826, 242, 263, 732, 705, 752, 264, 483, 439, - 206, 706, 707, 266, 1215, 705, 265, 522, 523, 705, - 278, 706, 707, 280, 297, 706, 707, 343, 776, 243, - 772, 244, 245, 705, 246, 205, 206, 741, 742, 706, - 707, 103, 104, 105, 106, 1217, 1024, 107, 298, 793, - 1219, 743, 744, 745, 746, 747, 748, 749, 300, 247, - 308, 248, 249, 329, 250, 753, 340, 103, 104, 105, - 106, 313, 761, 107, 1221, 818, 819, 820, 821, 922, - 346, 347, 770, 318, 1239, 346, 347, 251, 1240, 252, - 308, 346, 347, 346, 347, 333, 827, 253, 309, 254, - 327, 1019, 1241, 784, 255, 785, 256, 1066, 257, 1068, - 258, 308, 330, 331, 282, 283, 284, 285, 286, 287, - 288, 289, 290, 291, 292, 501, 294, 295, 309, 346, - 347, 259, 296, 260, 334, 631, 632, 308, 308, 308, - 308, 1015, 485, 335, 495, 1070, 621, 336, 622, 309, - 346, 347, 282, 283, 284, 285, 286, 287, 288, 289, - 290, 291, 292, 293, 294, 295, 1135, 346, 347, 485, - 296, 633, 850, 851, 1000, 309, 309, 309, 309, 1025, - 346, 347, 485, 1138, 674, 485, 842, 717, 337, 338, - 691, 7, 8, 732, 120, 121, 1141, 871, 485, 446, - 792, 214, 876, 339, 351, 877, 215, 878, 352, 710, - 882, 485, 375, 884, 885, 485, 485, 901, 929, 485, - 369, 930, 532, 13, 14, 533, 16, 17, 534, 19, - 535, 21, 903, 22, 353, 24, 25, 354, 27, 28, - 30, 31, 32, 33, 371, 35, 918, 919, 920, 120, - 121, 40, 41, 485, 479, 931, 214, 373, 374, 933, - 935, 215, 967, 936, 379, 381, 45, 46, 47, 382, - 291, 292, 293, 294, 295, 386, 943, 944, 945, 296, - 485, 953, 932, 954, 388, 950, 948, 986, 390, 987, - 956, 391, 282, 283, 284, 285, 286, 287, 288, 289, - 290, 291, 292, 293, 294, 295, 960, 394, 393, 800, - 296, 1036, 843, 1037, 959, 1102, 1115, 396, 1116, 485, - 547, 1123, 970, 775, 953, 1036, 1127, 1176, 445, 974, - 975, 953, 455, 1196, 977, 1222, 953, 1223, 1237, 1242, - 1118, 1243, 296, 984, 985, 456, 457, 480, 502, 780, - 781, 508, 783, 994, 786, 787, 518, 540, 790, 791, - 543, 544, 995, 555, 801, 549, 558, 361, 625, 815, - 816, 817, 626, 627, 629, 1020, 640, 641, 645, 652, - 661, 662, 663, 1028, 665, 666, 667, 1032, 1033, 668, - 670, 671, 1029, 672, 678, 686, 687, 688, 689, 694, - 695, 1081, 690, 720, 1046, 7, 8, 836, 837, 838, - 721, 722, 723, 1175, 736, 1054, 738, 282, 283, 284, - 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, - 295, 737, 281, 740, 1063, 296, 532, 13, 14, 533, - 16, 17, 534, 19, 535, 21, 750, 22, 757, 24, - 25, 755, 27, 28, 756, 1076, 762, 763, 1079, 765, - 1080, 766, 769, 308, 779, 771, 782, 1085, 788, 891, - 789, 795, 1089, 796, 797, 897, 798, 799, 802, 803, - 45, 46, 47, 804, 904, 905, 906, 805, 806, 909, - 910, 911, 912, 913, 914, 915, 807, 808, 937, 458, - 809, 309, 1106, 814, 1109, 822, 1112, 823, 361, 824, - 934, 831, 832, 834, 1120, 833, 835, 839, 844, 845, - 847, 849, 1125, 1126, 846, 848, 864, 872, 866, 854, - 1129, 873, 879, 892, 562, 886, 895, 1131, 893, 1133, + 210, 370, 128, 451, 356, 1080, 127, 878, 65, 130, + 151, 368, 565, 197, 204, 205, 146, 194, 639, 5, + 146, 204, 205, 446, 182, 211, 763, 821, 364, 882, + 365, 4, 134, 385, 1145, 131, 387, 724, 274, 141, + 141, 644, 437, 205, 132, 884, 103, 104, 105, 106, + 345, 346, 107, 103, 104, 105, 106, 1041, 875, 107, + 473, 701, 133, 701, 1042, 474, 517, 702, 703, 702, + 703, 136, 204, 205, 103, 104, 105, 106, 314, 883, + 107, 217, 318, 345, 346, 147, 166, 167, 754, 699, + 566, 567, 568, 569, 152, 885, 168, 538, 539, 823, + 347, 142, 142, 169, 103, 104, 105, 106, 143, 698, + 107, 620, 769, 267, 268, 269, 621, 483, 270, 273, + 183, 139, 278, 1170, 345, 346, 275, 276, 298, 447, + 820, 300, 932, 301, 307, 310, 311, 140, 313, 307, + 315, 316, 198, 307, 319, 320, 821, 870, 327, 570, + 206, 120, 121, 195, 640, 645, 212, 209, 213, 366, + 184, 522, 523, 214, 343, 344, 135, 725, 1146, 345, + 346, 150, 645, 344, 345, 346, 755, 756, 633, 153, + 1216, 345, 346, 137, 359, 536, 348, 374, 375, 376, + 138, 378, 359, 137, 381, 382, 144, 383, 120, 121, + 697, 438, 439, 440, 441, 727, 554, 448, 390, 513, + 514, 515, 120, 121, 395, 396, 397, 398, 399, 400, + 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, + 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, + 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, + 431, 432, 433, 434, 435, 436, 145, 498, 960, 148, + 442, 170, 172, 481, 178, 860, 701, 218, 307, 219, + 483, 149, 702, 703, 452, 345, 346, 457, 458, 459, + 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, + 470, 471, 358, 1023, 156, 701, 631, 157, 1024, 158, + 479, 702, 703, 149, 545, 345, 346, 154, 487, 450, + 700, 345, 346, 492, 308, 902, 903, 479, 307, 308, + 159, 524, 501, 308, 503, 504, 505, 535, 507, 508, + 509, 511, 511, 511, 511, 1127, 701, 155, 512, 512, + 512, 512, 702, 703, 345, 346, 525, 526, 527, 267, + 268, 528, 359, 359, 631, 220, 483, 221, 484, 164, + 806, 864, 542, 543, 1130, 307, 180, 547, 548, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, - 292, 293, 294, 295, 894, 958, 896, 898, 296, 971, - 956, 972, 899, 900, 902, 921, 940, 941, 939, 942, - 946, 1162, 947, 957, 1166, 1210, 474, 1170, 961, 962, - 964, 1173, 969, 973, 976, 978, 982, 980, 981, 1178, - 988, 989, 1180, 990, 1002, 991, 1005, 992, 1008, 993, - 1003, 1006, 1009, 1233, 1011, 1236, 1012, 282, 283, 284, - 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, - 295, 1013, 1014, 1248, 1016, 296, 1035, 1038, 1039, 1021, - 1040, 287, 288, 289, 290, 291, 292, 293, 294, 295, - 1034, 1042, 75, 303, 296, 1044, 1043, 1045, 79, 80, - 81, 1053, 1055, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, - 99, 100, 101, 102, 1056, 1059, 1061, 1062, 1072, 1064, - 1067, 1069, 304, 1071, 282, 283, 284, 285, 286, 287, - 288, 289, 290, 291, 292, 293, 294, 295, 1074, 1078, - 1083, 1090, 296, 1073, 30, 31, 32, 33, 34, 35, - 1091, 1075, 1093, 1095, 1096, 40, 41, 282, 283, 284, + 499, 293, 294, 701, 165, 561, 701, 295, 564, 702, + 703, 563, 702, 703, 173, 340, 1008, 342, 181, 113, + 114, 115, 116, 349, 222, 1133, 223, 357, 224, 647, + 225, 186, 113, 114, 115, 116, 226, 701, 227, 120, + 121, 1084, 821, 702, 703, 821, 632, 228, 821, 229, + 701, 670, 120, 121, 185, 701, 702, 703, 701, 179, + 627, 702, 703, 187, 702, 703, 188, 636, 308, 634, + 1099, 189, 1102, 635, 1105, 1181, 701, 113, 114, 115, + 116, 190, 702, 703, 113, 114, 115, 116, 191, 701, + 307, 648, 192, 627, 652, 702, 703, 653, 654, 656, + 480, 200, 863, 865, 120, 121, 1206, 483, 821, 489, + 345, 346, 307, 345, 346, 654, 673, 480, 308, 1208, + 911, 912, 679, 729, 1210, 193, 917, 1212, 918, 822, + 483, 701, 493, 821, 689, 690, 821, 702, 703, 821, + 693, 199, 821, 345, 346, 1230, 230, 324, 231, 1165, + 292, 293, 294, 331, 201, 709, 710, 295, 1231, 919, + 202, 920, 821, 203, 821, 308, 821, 174, 216, 720, + 175, 722, 723, 176, 345, 346, 747, 362, 363, 205, + 120, 121, 728, 748, 1190, 260, 1193, 727, 1196, 232, + 921, 233, 922, 1017, 1199, 520, 521, 234, 261, 235, + 1232, 345, 346, 236, 342, 237, 772, 768, 345, 346, + 103, 104, 105, 106, 737, 738, 107, 1012, 1219, 238, + 1221, 239, 1223, 262, 1058, 345, 346, 789, 739, 740, + 741, 742, 743, 744, 745, 345, 346, 307, 263, 204, + 205, 1060, 749, 264, 345, 346, 265, 166, 167, 757, + 277, 1062, 813, 814, 815, 816, 240, 168, 241, 766, + 1126, 242, 299, 243, 177, 345, 346, 307, 345, 346, + 308, 103, 104, 105, 106, 279, 312, 107, 655, 657, + 317, 1129, 120, 121, 1132, 296, 326, 444, 307, 213, + 328, 244, 308, 245, 214, 655, 7, 8, 297, 281, + 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, + 292, 293, 294, 307, 307, 307, 307, 295, 618, 329, + 619, 7, 8, 246, 330, 247, 1018, 529, 13, 14, + 530, 16, 17, 531, 19, 532, 21, 332, 22, 160, + 24, 25, 161, 27, 28, 162, 333, 163, 845, 846, + 994, 334, 529, 13, 14, 530, 16, 17, 531, 19, + 532, 21, 248, 22, 249, 24, 25, 688, 27, 28, + 728, 45, 46, 47, 866, 120, 121, 250, 871, 251, + 477, 252, 213, 253, 335, 706, 877, 214, 336, 254, + 880, 255, 256, 258, 257, 259, 45, 46, 47, 286, + 287, 288, 289, 290, 291, 292, 293, 294, 898, 483, + 337, 630, 295, 483, 483, 671, 713, 308, 780, 980, + 781, 981, 913, 914, 915, 544, 338, 339, 30, 31, + 32, 33, 367, 35, 927, 929, 373, 961, 930, 40, + 41, 350, 351, 628, 629, 352, 483, 308, 788, 371, + 559, 937, 938, 939, 290, 291, 292, 293, 294, 872, + 944, 873, 942, 295, 483, 950, 879, 369, 308, 283, + 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, + 294, 954, 483, 372, 896, 295, 483, 953, 923, 1094, + 483, 377, 924, 308, 308, 308, 308, 964, 483, 771, + 925, 483, 380, 926, 968, 969, 947, 384, 948, 971, + 1029, 1106, 1030, 1107, 1109, 483, 386, 1114, 978, 979, + 947, 1029, 1118, 1167, 947, 1213, 1187, 1214, 988, 947, + 1233, 1228, 1234, 379, 388, 989, 389, 391, 392, 453, + 394, 359, 443, 295, 810, 811, 812, 454, 455, 1013, + 478, 500, 506, 516, 540, 537, 541, 1021, 546, 552, + 555, 1025, 1026, 622, 1022, 623, 624, 7, 8, 637, + 638, 642, 626, 658, 649, 1073, 659, 660, 1039, 662, + 663, 664, 665, 667, 668, 669, 1166, 675, 683, 1047, + 684, 685, 686, 691, 692, 716, 687, 717, 529, 13, + 14, 530, 16, 17, 531, 19, 532, 21, 1056, 22, + 837, 24, 25, 718, 27, 28, 719, 284, 285, 286, + 287, 288, 289, 290, 291, 292, 293, 294, 1068, 732, + 733, 1071, 295, 1072, 734, 736, 307, 746, 751, 753, + 1077, 752, 45, 46, 47, 1081, 758, 759, 762, 761, + 765, 767, 775, 778, 784, 785, 776, 777, 791, 779, + 792, 782, 783, 793, 794, 786, 787, 795, 798, 799, + 800, 801, 931, 802, 1097, 803, 1100, 804, 1103, 805, + 359, 818, 817, 826, 819, 827, 1111, 828, 829, 830, + 834, 839, 840, 842, 1116, 1117, 560, 841, 843, 849, + 868, 844, 1120, 874, 881, 859, 887, 861, 890, 1122, + 891, 1124, 894, 831, 832, 833, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, - 295, 1097, 1098, 1099, 1128, 296, 1130, 1107, 1132, 1110, - 1144, 1113, 998, 1145, 999, 109, 110, 111, 112, 284, + 867, 950, 888, 965, 295, 966, 838, 889, 893, 895, + 897, 916, 1153, 934, 935, 1157, 1201, 933, 1161, 936, + 940, 951, 1164, 941, 955, 956, 958, 963, 967, 970, + 1169, 972, 976, 1171, 974, 975, 982, 995, 983, 998, + 984, 1001, 985, 986, 1224, 886, 1227, 987, 280, 996, + 999, 892, 1002, 1004, 1005, 1006, 1007, 1009, 1031, 1028, + 899, 900, 901, 1032, 1239, 904, 905, 906, 907, 908, + 909, 910, 1033, 1046, 1035, 1036, 1037, 1038, 1048, 1049, + 1052, 75, 302, 1054, 1055, 928, 308, 79, 80, 81, + 1064, 1057, 82, 83, 84, 85, 86, 87, 88, 89, + 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, + 100, 101, 102, 1059, 1066, 1061, 1075, 1063, 1067, 1082, + 1083, 303, 1087, 1070, 1088, 1089, 1090, 1091, 1085, 1093, + 952, 1115, 1119, 1121, 1123, 1135, 1136, 1139, 1141, 1148, + 1151, 1154, 1155, 30, 31, 32, 33, 34, 35, 1158, + 1159, 1162, 1163, 1172, 40, 41, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, - 295, 1117, 117, 305, 1150, 296, 1101, 119, 1124, 1148, - 1157, 1160, 122, 1163, 1164, 1167, 1168, 125, 1171, 1172, - 499, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 295, 75, 303, 1182, 1181, 296, 1184, 79, 80, - 81, 1186, 1143, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, - 99, 100, 101, 102, 1188, 1193, 1194, 1198, 1200, 1203, - 1206, 1213, 304, 1212, 1214, 1151, 1216, 1218, 1220, 7, - 8, 1224, 1227, 1226, 1229, 1231, 1234, 1238, 1244, 1245, - 1246, 1247, 1249, 64, 30, 31, 32, 33, 34, 35, - 881, 71, 963, 0, 0, 40, 41, 0, 0, 0, - 532, 13, 14, 533, 16, 17, 534, 19, 535, 21, - 0, 22, 0, 24, 25, 0, 27, 28, 0, 0, - 0, 0, 0, 0, 0, 109, 110, 111, 112, 0, + 1179, 1184, 1191, 1194, 295, 1197, 1204, 1189, 1098, 1173, + 1101, 1205, 1104, 1218, 109, 110, 111, 112, 1220, 1222, + 1225, 1175, 1177, 1185, 1229, 1203, 1207, 1235, 1209, 1211, + 1215, 117, 304, 1014, 1217, 1236, 119, 1237, 1238, 1240, + 876, 122, 1142, 64, 1027, 71, 125, 75, 302, 497, + 957, 0, 0, 79, 80, 81, 0, 0, 82, 83, + 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, + 94, 95, 96, 97, 98, 99, 100, 101, 102, 0, + 0, 0, 0, 0, 0, 0, 0, 303, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 7, 8, + 0, 0, 0, 0, 0, 0, 1065, 0, 0, 30, + 31, 32, 33, 34, 35, 0, 0, 0, 0, 0, + 40, 41, 0, 0, 0, 0, 0, 0, 0, 529, + 13, 14, 530, 16, 17, 531, 19, 532, 21, 0, + 22, 0, 24, 25, 0, 27, 28, 0, 0, 0, + 109, 110, 111, 112, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 1108, 0, 0, 0, 117, 321, 0, + 0, 0, 119, 45, 46, 47, 0, 122, 0, 0, + 0, 0, 125, 0, 322, 0, 0, 0, 0, 0, + 0, 0, 0, 75, 302, 0, 0, 0, 0, 79, + 80, 81, 0, 1134, 82, 83, 84, 85, 86, 87, + 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, + 98, 99, 100, 101, 102, 0, 0, 707, 0, 0, + 0, 0, 0, 303, 0, 0, 0, 0, 0, 0, + 7, 8, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 30, 31, 32, 33, 34, + 35, 0, 0, 0, 0, 0, 40, 41, 0, 0, + 0, 529, 13, 14, 530, 16, 17, 531, 19, 532, + 21, 0, 22, 0, 24, 25, 0, 27, 28, 0, + 0, 0, 0, 0, 0, 0, 109, 110, 111, 112, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 117, 304, 45, 46, 47, 119, 0, + 0, 0, 0, 122, 0, 75, 302, 0, 125, 0, + 496, 79, 80, 81, 0, 0, 82, 83, 84, 85, + 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, + 96, 97, 98, 99, 100, 101, 102, 0, 0, 0, + 0, 0, 0, 0, 0, 303, 0, 0, 0, 721, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 117, 322, 45, 46, 47, 119, 0, 0, - 0, 0, 122, 0, 75, 303, 0, 125, 0, 323, + 0, 0, 0, 0, 0, 0, 0, 30, 31, 32, + 33, 34, 35, 0, 75, 266, 0, 0, 40, 41, 79, 80, 81, 0, 0, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, - 97, 98, 99, 100, 101, 102, 0, 0, 0, 0, - 0, 0, 0, 0, 304, 0, 0, 0, 563, 0, - 0, 7, 8, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 30, 31, 32, 33, - 34, 35, 0, 0, 0, 0, 0, 40, 41, 0, - 0, 0, 532, 13, 14, 533, 16, 17, 534, 19, - 535, 21, 0, 22, 0, 24, 25, 0, 27, 28, - 0, 0, 0, 0, 0, 0, 0, 109, 110, 111, - 112, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 117, 305, 45, 46, 47, 119, - 0, 0, 0, 0, 122, 0, 75, 303, 0, 125, - 0, 498, 79, 80, 81, 0, 0, 82, 83, 84, - 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, - 95, 96, 97, 98, 99, 100, 101, 102, 0, 0, - 0, 0, 0, 0, 0, 0, 304, 0, 0, 0, - 711, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 30, 31, - 32, 33, 34, 35, 0, 75, 267, 0, 0, 40, - 41, 79, 80, 81, 0, 0, 82, 83, 84, 85, - 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, - 96, 97, 98, 99, 100, 101, 102, 0, 0, 109, - 110, 111, 112, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 117, 305, 0, 0, - 0, 119, 0, 0, 0, 0, 122, 0, 75, 267, - 206, 125, 0, 675, 79, 80, 81, 0, 0, 82, - 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, - 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, - 0, 103, 104, 105, 106, 0, 0, 107, 109, 110, - 111, 112, 0, 0, 0, 7, 8, 0, 0, 0, - 0, 0, 0, 0, 0, 117, 118, 0, 0, 0, - 119, 0, 0, 0, 0, 122, 0, 0, 272, 0, - 125, 0, 273, 0, 0, 0, 532, 13, 14, 533, - 16, 17, 534, 19, 535, 21, 0, 22, 0, 24, - 25, 0, 27, 28, 0, 0, 0, 0, 0, 0, - 0, 109, 110, 111, 112, 0, 0, 0, 0, 0, - 0, 628, 0, 0, 0, 0, 0, 0, 117, 118, - 45, 46, 47, 119, 0, 0, 0, 0, 122, 0, - 75, 267, 0, 125, 0, 1027, 79, 80, 81, 0, - 0, 82, 83, 84, 85, 86, 87, 88, 89, 90, - 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, - 101, 102, 0, 0, 0, 75, 267, 7, 8, 0, - 0, 79, 80, 81, 725, 0, 82, 83, 84, 85, - 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, - 96, 97, 98, 99, 100, 101, 102, 0, 532, 13, - 14, 533, 16, 17, 534, 19, 535, 21, 0, 22, - 0, 24, 25, 0, 27, 28, 0, 0, 0, 282, - 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, - 293, 294, 295, 109, 110, 111, 112, 296, 0, 0, - 0, 0, 45, 46, 47, 0, 0, 0, 0, 0, - 117, 118, 0, 0, 0, 119, 0, 0, 0, 0, - 122, 0, 0, 653, 0, 125, 0, 654, 109, 110, + 97, 98, 99, 100, 101, 102, 0, 0, 109, 110, 111, 112, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 355, 356, 0, 0, 0, - 119, 0, 0, 0, 0, 357, 1146, 75, 76, 77, - 125, 78, 169, 79, 80, 81, 0, 0, 82, 83, + 0, 0, 0, 0, 0, 117, 304, 0, 0, 0, + 119, 0, 0, 0, 0, 122, 0, 75, 266, 205, + 125, 0, 672, 79, 80, 81, 0, 0, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 0, - 103, 104, 105, 106, 0, 0, 107, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 75, 303, 0, 0, - 0, 0, 79, 80, 81, 0, 0, 82, 83, 84, - 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, - 95, 96, 97, 98, 99, 100, 101, 102, 0, 0, - 0, 0, 0, 0, 0, 0, 304, 0, 0, 0, - 0, 0, 0, 0, 108, 0, 0, 0, 0, 0, - 109, 110, 111, 112, 113, 114, 115, 116, 30, 31, - 32, 33, 34, 35, 0, 0, 0, 117, 118, 40, - 41, 0, 119, 0, 120, 121, 0, 122, 0, 123, - 0, 124, 125, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 109, - 110, 111, 112, 764, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 117, 305, 0, 0, - 0, 119, 75, 267, 206, 0, 122, 0, 79, 80, - 81, 125, 0, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, - 99, 100, 101, 102, 0, 103, 104, 105, 106, 75, - 267, 107, 7, 8, 0, 79, 80, 81, 0, 0, + 103, 104, 105, 106, 0, 0, 107, 109, 110, 111, + 112, 0, 0, 0, 7, 8, 0, 0, 0, 0, + 0, 0, 0, 0, 117, 118, 0, 0, 0, 119, + 0, 0, 0, 0, 122, 0, 0, 271, 0, 125, + 0, 272, 0, 0, 0, 529, 13, 14, 530, 16, + 17, 531, 19, 532, 21, 0, 22, 0, 24, 25, + 0, 27, 28, 0, 0, 0, 0, 0, 0, 0, + 109, 110, 111, 112, 0, 0, 0, 0, 0, 0, + 456, 0, 0, 0, 0, 0, 0, 117, 118, 45, + 46, 47, 119, 0, 0, 0, 0, 122, 0, 75, + 266, 0, 125, 0, 1020, 79, 80, 81, 0, 0, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, - 102, 794, 0, 532, 13, 14, 533, 16, 17, 534, - 19, 535, 21, 0, 22, 0, 24, 25, 0, 27, - 28, 282, 283, 284, 285, 286, 287, 288, 289, 290, - 291, 292, 293, 294, 295, 109, 110, 111, 112, 296, - 829, 0, 0, 0, 0, 0, 0, 45, 46, 47, - 0, 0, 117, 118, 0, 0, 0, 119, 0, 830, - 0, 0, 122, 0, 0, 0, 0, 125, 0, 0, - 0, 0, 109, 110, 111, 112, 0, 0, 874, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 117, - 118, 0, 0, 0, 119, 0, 0, 1041, 0, 122, - 0, 1191, 0, 0, 125, 0, 0, 0, 0, 282, + 102, 0, 0, 0, 75, 266, 7, 8, 0, 0, + 79, 80, 81, 1137, 0, 82, 83, 84, 85, 86, + 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, + 97, 98, 99, 100, 101, 102, 0, 529, 13, 14, + 530, 16, 17, 531, 19, 532, 21, 0, 22, 0, + 24, 25, 0, 27, 28, 0, 0, 0, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, - 293, 294, 295, 1057, 0, 0, 0, 296, 282, 283, + 293, 294, 109, 110, 111, 112, 295, 0, 0, 0, + 0, 45, 46, 47, 0, 0, 0, 0, 0, 117, + 118, 0, 0, 0, 119, 0, 0, 0, 0, 122, + 0, 0, 650, 0, 125, 0, 651, 109, 110, 111, + 112, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 353, 354, 0, 0, 0, 119, + 0, 0, 0, 0, 355, 1182, 75, 76, 77, 125, + 78, 169, 79, 80, 81, 0, 0, 82, 83, 84, + 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, + 95, 96, 97, 98, 99, 100, 101, 102, 0, 103, + 104, 105, 106, 0, 0, 107, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 75, 302, 0, 0, 0, + 0, 79, 80, 81, 0, 0, 82, 83, 84, 85, + 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, + 96, 97, 98, 99, 100, 101, 102, 0, 0, 0, + 0, 0, 0, 0, 0, 303, 0, 0, 0, 0, + 0, 0, 0, 108, 0, 0, 0, 0, 0, 109, + 110, 111, 112, 113, 114, 115, 116, 30, 31, 32, + 33, 34, 35, 0, 0, 0, 117, 118, 40, 41, + 0, 119, 0, 120, 121, 0, 122, 0, 123, 0, + 124, 125, 0, 472, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 109, 110, + 111, 112, 625, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 117, 304, 0, 0, 0, + 119, 75, 266, 205, 0, 122, 0, 79, 80, 81, + 125, 0, 82, 83, 84, 85, 86, 87, 88, 89, + 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, + 100, 101, 102, 0, 103, 104, 105, 106, 75, 266, + 107, 0, 0, 0, 79, 80, 81, 0, 0, 82, + 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, + 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, + 796, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 290, 291, 292, 293, 294, 0, 0, 0, 0, 295, + 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, + 291, 292, 293, 294, 109, 110, 111, 112, 295, 760, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 117, 118, 0, 0, 797, 119, 0, 790, 0, + 0, 122, 0, 0, 0, 0, 125, 0, 0, 0, + 0, 109, 110, 111, 112, 0, 0, 824, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 117, 118, + 0, 0, 0, 119, 0, 0, 825, 0, 122, 0, + 0, 0, 0, 125, 0, 0, 0, 0, 281, 282, + 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, + 293, 294, 869, 0, 0, 0, 295, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 295, 1058, 0, 0, 0, 296, 0, 282, 283, + 294, 1034, 0, 0, 0, 295, 0, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 295, 1060, 0, 0, 0, 296, 282, 283, 284, + 294, 1050, 0, 0, 0, 295, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, - 295, 1082, 0, 0, 0, 296, 282, 283, 284, 285, - 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, - 1149, 0, 0, 0, 296, 282, 283, 284, 285, 286, - 287, 288, 289, 290, 291, 292, 293, 294, 295, 1189, - 0, 0, 0, 296, 0, 0, 0, 0, 0, 0, - 0, 282, 283, 284, 285, 286, 287, 288, 289, 290, - 291, 292, 293, 294, 295, 483, 0, 0, 0, 296, + 1051, 0, 0, 0, 295, 281, 282, 283, 284, 285, + 286, 287, 288, 289, 290, 291, 292, 293, 294, 1053, + 0, 0, 0, 295, 281, 282, 283, 284, 285, 286, + 287, 288, 289, 290, 291, 292, 293, 294, 1074, 0, + 0, 0, 295, 0, 0, 0, 0, 0, 0, 0, + 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, + 291, 292, 293, 294, 1140, 0, 0, 0, 295, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, - 292, 293, 294, 295, 483, 0, 0, 0, 296, 0, + 292, 293, 294, 1180, 0, 0, 0, 295, 0, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, - 292, 293, 294, 295, 559, 0, 0, 0, 296, 282, + 292, 293, 294, 0, 481, 0, 0, 295, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, - 293, 294, 295, 646, 0, 0, 0, 296, 282, 283, + 293, 294, 0, 481, 0, 0, 295, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 295, 778, 0, 0, 0, 296, 282, 283, 284, + 294, 0, 556, 0, 0, 295, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, - 295, 841, 0, 0, 0, 296, 0, 0, 0, 0, - 0, 282, 283, 284, 285, 286, 287, 288, 289, 290, - 291, 292, 484, 294, 295, 0, 0, 0, 0, 296, - 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, - 292, 501, 294, 295, 0, 0, 0, 0, 296, 0, + 0, 643, 0, 0, 295, 0, 0, 0, 0, 0, + 0, 0, 281, 282, 283, 284, 285, 286, 287, 288, + 289, 290, 291, 292, 293, 294, 774, 0, 0, 0, + 295, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 290, 291, 292, 293, 294, 836, 0, 0, 0, 295, + 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, + 291, 482, 293, 294, 0, 0, 0, 0, 295, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, - 292, 293, 294, 295, 0, 0, 0, 0, 296, 282, + 499, 293, 294, 0, 0, 0, 0, 295, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, - 293, 294, 295, 0, 0, 0, 0, 296, 282, 283, + 293, 294, 0, 0, 0, 0, 295, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 295, 0, 0, 0, 0, 296, 282, 283, 284, - 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, - 295, 0, -4, 1, 0, 296, -4, 0, 0, 0, - 0, 0, 0, 0, -4, -4, 0, 282, 283, 284, - 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, - 295, 0, 0, 0, 0, 296, 0, -4, 0, 0, - 0, 0, -4, -4, 679, -4, -4, -4, -4, -4, - -4, -4, -4, -4, -4, 0, -4, -4, -4, -4, - -4, -4, -4, 0, 0, 0, -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, 0, 0, 0, 9, 0, 0, 0, 0, - 10, 11, 0, 12, 13, 14, 15, 16, 17, 18, - 19, 20, 21, 0, 22, 23, 24, 25, 26, 27, - 28, 0, 0, 0, 29, 30, 31, 32, 33, 34, - 35, 0, 36, 37, 38, 39, 40, 41, 7, 8, - 42, 43, 0, 0, 0, 0, 44, 45, 46, 47, - 0, 0, 48, 0, 49, 0, 50, 51, 52, 53, - 54, 55, 56, 57, 58, 59, 0, 0, 0, 532, - 13, 14, 533, 16, 17, 534, 19, 535, 21, 0, - 22, 0, 24, 25, 0, 27, 28, 0, 0, 0, - 0, 282, 283, 284, 285, 286, 287, 288, 289, 290, - 291, 292, 293, 294, 295, 0, 0, 0, 0, 296, - 0, 0, 0, 45, 46, 47, 1022, 0, 1023, 282, - 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, - 293, 294, 295, 0, 0, 0, 0, 296, 0, 0, - 0, 0, 0, 0, 1103, 0, 1104, 282, 283, 284, - 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, - 295, 0, 0, 0, 0, 296, 0, 0, 0, 0, - 0, 0, 0, 0, 683, 282, 283, 284, 285, 286, - 287, 288, 289, 290, 291, 292, 293, 294, 295, 0, - 0, 0, 0, 296, 0, 0, 0, 0, 0, 0, - 0, 0, 684, 282, 283, 284, 285, 286, 287, 288, - 289, 290, 291, 292, 293, 294, 295, 0, 0, 0, - 0, 296, 0, 0, 0, 0, 0, 0, 0, 0, - 734, 282, 283, 284, 285, 286, 287, 288, 289, 290, - 291, 292, 293, 294, 295, 0, 0, 0, 0, 296, - 0, 0, 0, 0, 0, 0, 0, 0, 777, 282, - 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, - 293, 294, 295, 0, 0, 0, 0, 296, 0, 0, - 0, 0, 0, 0, 0, 0, 813, 282, 283, 284, - 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, - 295, 0, 0, 0, 0, 296, 0, 0, 0, 0, - 0, 0, 0, 0, 996, 282, 283, 284, 285, 286, - 287, 288, 289, 290, 291, 292, 293, 294, 295, 0, - 0, 0, 0, 296, 0, 0, 0, 0, 0, 0, - 0, 0, 1018, 282, 283, 284, 285, 286, 287, 288, - 289, 290, 291, 292, 293, 294, 295, 0, 0, 0, - 0, 296, 0, 0, 0, 0, 0, 0, 0, 0, - 1047, 282, 283, 284, 285, 286, 287, 288, 289, 290, - 291, 292, 293, 294, 295, 0, 0, 0, 0, 296, - 0, 0, 0, 0, 0, 0, 0, 0, 1050, 282, - 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, - 293, 294, 295, 0, 0, 0, 0, 296, 0, 0, - 0, 0, 0, 0, 0, 0, 1051, 282, 283, 284, - 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, - 295, 0, 0, 0, 0, 296, 0, 0, 0, 0, - 0, 0, 0, 0, 1052, 282, 283, 284, 285, 286, - 287, 288, 289, 290, 291, 292, 293, 294, 295, 0, - 0, 0, 0, 296, 0, 0, 0, 0, 0, 0, - 0, 0, 1077, 282, 283, 284, 285, 286, 287, 288, - 289, 290, 291, 292, 293, 294, 295, 0, 0, 0, - 0, 296, 0, 0, 0, 0, 0, 0, 0, 0, - 1119, 282, 283, 284, 285, 286, 287, 288, 289, 290, - 291, 292, 293, 294, 295, 0, 0, 0, 0, 296, - 0, 0, 0, 0, 0, 0, 0, 0, 1121, 282, - 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, - 293, 294, 295, 0, 0, 0, 0, 296, 0, 0, - 0, 0, 0, 0, 0, 0, 1122, 282, 283, 284, - 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, - 295, 0, 0, 0, 0, 296, 0, 0, 0, 0, - 0, 0, 0, 0, 1134, 282, 283, 284, 285, 286, - 287, 288, 289, 290, 291, 292, 293, 294, 295, 0, - 0, 0, 0, 296, 0, 0, 0, 0, 0, 0, - 0, 0, 1137, 282, 283, 284, 285, 286, 287, 288, - 289, 290, 291, 292, 293, 294, 295, 0, 0, 0, - 0, 296, 0, 0, 0, 0, 0, 0, 0, 0, - 1140, 282, 283, 284, 285, 286, 287, 288, 289, 290, - 291, 292, 293, 294, 295, 0, 0, 0, 0, 296, - 0, 0, 0, 0, 0, 0, 0, 0, 1158, 282, - 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, - 293, 294, 295, 0, 0, 0, 0, 296, 0, 0, - 0, 0, 0, 0, 0, 0, 1159, 282, 283, 284, - 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, - 295, 0, 0, 0, 0, 296, 0, 0, 0, 0, - 0, 0, 0, 0, 1183, 282, 283, 284, 285, 286, - 287, 288, 289, 290, 291, 292, 293, 294, 295, 0, - 0, 0, 0, 296, 0, 0, 0, 0, 0, 0, - 0, 0, 1185, 282, 283, 284, 285, 286, 287, 288, - 289, 290, 291, 292, 293, 294, 295, 0, 0, 0, - 0, 296, 0, 0, 0, 0, 0, 0, 0, 0, - 1187, 282, 283, 284, 285, 286, 287, 288, 289, 290, - 291, 292, 293, 294, 295, 0, 0, 0, 0, 296, - 0, 0, 0, 0, 0, 0, 0, 0, 1197, 282, - 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, - 293, 294, 295, 0, 0, 0, 0, 296, 0, 447, - 0, 0, 0, 0, 520, 282, 283, 284, 285, 286, - 287, 288, 289, 290, 291, 292, 293, 294, 295, 0, - 0, 0, 0, 296, 0, 0, 0, 0, 0, 0, - 477, 282, 283, 284, 285, 286, 287, 288, 289, 290, - 291, 292, 293, 294, 295, 0, 0, 0, 0, 296, - 0, 0, 0, 0, 0, 0, 520, 282, 283, 284, - 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, - 295, 0, 0, 0, 0, 296, 0, 0, 0, 0, - 0, 0, 521, 282, 283, 284, 285, 286, 287, 288, - 289, 290, 291, 292, 293, 294, 295, 0, 0, 0, - 0, 296, 0, 0, 0, 0, 0, 0, 556, 282, - 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, - 293, 294, 295, 0, 0, 0, 0, 296, 0, 0, - 0, 0, 0, 0, 601, 282, 283, 284, 285, 286, - 287, 288, 289, 290, 291, 292, 293, 294, 295, 0, - 0, 0, 0, 296, 0, 0, 0, 0, 0, 0, - 602, 282, 283, 284, 285, 286, 287, 288, 289, 290, - 291, 292, 293, 294, 295, 0, 0, 0, 0, 296, - 0, 0, 0, 0, 0, 0, 615, 282, 283, 284, - 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, - 295, 0, 0, 0, 0, 296, 0, 0, 0, 0, - 0, 0, 616, 282, 283, 284, 285, 286, 287, 288, - 289, 290, 291, 292, 293, 294, 295, 0, 0, 0, - 0, 296, 0, 0, 0, 0, 0, 0, 617, 282, - 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, - 293, 294, 295, 0, 0, 0, 0, 296, 0, 0, - 0, 0, 0, 0, 618, 282, 283, 284, 285, 286, - 287, 288, 289, 290, 291, 292, 293, 294, 295, 0, - 0, 0, 0, 296, 0, 0, 0, 0, 0, 0, - 619, 282, 283, 284, 285, 286, 287, 288, 289, 290, - 291, 292, 293, 294, 295, 0, 0, 0, 0, 296, - 0, 0, 0, 0, 0, 0, 620, 282, 283, 284, - 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, - 295, 0, 0, 0, 0, 296, 0, 0, 0, 0, - 0, 0, 698, 282, 283, 284, 285, 286, 287, 288, - 289, 290, 291, 292, 293, 294, 295, 0, 0, 0, - 0, 296, 0, 0, 0, 0, 0, 0, 699, 282, - 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, - 293, 294, 295, 0, 0, 0, 0, 296, 0, 0, - 0, 0, 0, 0, 700, 282, 283, 284, 285, 286, - 287, 288, 289, 290, 291, 292, 293, 294, 295, 0, - 0, 0, 0, 296, 0, 0, 0, 0, 0, 0, - 774, 282, 283, 284, 285, 286, 287, 288, 289, 290, - 291, 292, 293, 294, 295, 0, 0, 0, 0, 296, - 0, 0, 0, 0, 0, 0, 811, 282, 283, 284, - 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, - 295, 0, 0, 0, 0, 296, 0, 0, 0, 0, - 0, 0, 812, 282, 283, 284, 285, 286, 287, 288, - 289, 290, 291, 292, 293, 294, 295, 0, 0, 0, - 0, 296, 0, 0, 0, 0, 0, 0, 840, 282, - 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, - 293, 294, 295, 0, 0, 0, 0, 296, 0, 0, - 0, 0, 0, 0, 951, 282, 283, 284, 285, 286, - 287, 288, 289, 290, 291, 292, 293, 294, 295, 0, - 0, 0, 0, 296, 0, 0, 0, 0, 0, 0, - 952, 282, 283, 284, 285, 286, 287, 288, 289, 290, - 291, 292, 293, 294, 295, 0, 0, 0, 0, 296, - 0, 0, 0, 0, 0, 0, 968, 282, 283, 284, - 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, - 295, 0, 0, 0, 0, 296, 0, 0, 0, 0, - 0, 0, 979, 282, 283, 284, 285, 286, 287, 288, - 289, 290, 291, 292, 293, 294, 295, 0, 0, 0, - 0, 296, 0, 0, 0, 0, 0, 0, 1086, 282, - 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, - 293, 294, 295, 0, 0, 0, 0, 296, 0, 0, - 0, 0, 0, 0, 1087, 282, 283, 284, 285, 286, - 287, 288, 289, 290, 291, 292, 293, 294, 295, 0, - 0, 0, 0, 296, 0, 0, 0, 0, 0, 0, - 1094, 282, 283, 284, 285, 286, 287, 288, 289, 290, - 291, 292, 293, 294, 295, 0, 0, 0, 0, 296, - 0, 0, 0, 0, 0, 0, 1100, 282, 283, 284, - 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, - 295, 0, 0, 0, 0, 296, 0, 0, 0, 0, - 0, 0, 1153, 282, 283, 284, 285, 286, 287, 288, - 289, 290, 291, 292, 293, 294, 295, 0, 0, 0, - 0, 296, 0, 0, 0, 0, 0, 0, 1156, 282, - 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, - 293, 294, 295, 0, 0, 0, 0, 296, 0, 0, - 0, 451, 282, 283, 284, 285, 286, 287, 288, 289, - 290, 291, 292, 293, 294, 295, 0, 0, 0, 0, - 296, 0, 0, 0, 561, 282, 283, 284, 285, 286, - 287, 288, 289, 290, 291, 292, 293, 294, 295, 0, - 0, 0, 0, 296, 0, 0, 0, 565, 282, 283, + 294, 0, 0, 0, 0, 295, 0, 0, 0, 0, + 0, 0, 281, 282, 283, 284, 285, 286, 287, 288, + 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, + 295, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 290, 291, 292, 293, 294, 0, -4, 1, 0, 295, + -4, 0, 0, 0, 0, 0, 0, 0, -4, -4, + 0, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 290, 291, 292, 293, 294, 0, 0, 0, 0, 295, + 0, -4, 0, 0, 0, 0, -4, -4, 676, -4, + -4, -4, -4, -4, -4, -4, -4, -4, -4, 0, + -4, -4, -4, -4, -4, -4, -4, 0, 0, 0, + -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, 0, 0, 0, 9, + 0, 0, 0, 0, 10, 11, 0, 12, 13, 14, + 15, 16, 17, 18, 19, 20, 21, 0, 22, 23, + 24, 25, 26, 27, 28, 0, 0, 0, 29, 30, + 31, 32, 33, 34, 35, 0, 36, 37, 38, 39, + 40, 41, 7, 8, 42, 43, 0, 0, 0, 0, + 44, 45, 46, 47, 0, 0, 48, 0, 49, 0, + 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, + 0, 0, 0, 529, 13, 14, 530, 16, 17, 531, + 19, 532, 21, 0, 22, 0, 24, 25, 0, 27, + 28, 0, 0, 0, 0, 281, 282, 283, 284, 285, + 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, + 0, 0, 0, 295, 0, 0, 0, 45, 46, 47, + 992, 0, 993, 281, 282, 283, 284, 285, 286, 287, + 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, + 0, 295, 0, 0, 0, 0, 0, 0, 1015, 0, + 1016, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 290, 291, 292, 293, 294, 0, 0, 0, 0, 295, + 0, 0, 0, 0, 0, 0, 1095, 0, 1096, 281, + 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, + 292, 293, 294, 0, 0, 0, 0, 295, 0, 0, + 0, 0, 0, 0, 0, 0, 680, 281, 282, 283, + 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, + 294, 0, 0, 0, 0, 295, 0, 0, 0, 0, + 0, 0, 0, 0, 681, 281, 282, 283, 284, 285, + 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, + 0, 0, 0, 295, 0, 0, 0, 0, 0, 0, + 0, 0, 730, 281, 282, 283, 284, 285, 286, 287, + 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, + 0, 295, 0, 0, 0, 0, 0, 0, 0, 0, + 773, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 290, 291, 292, 293, 294, 0, 0, 0, 0, 295, + 0, 0, 0, 0, 0, 0, 0, 0, 809, 281, + 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, + 292, 293, 294, 0, 0, 0, 0, 295, 0, 0, + 0, 0, 0, 0, 0, 0, 990, 281, 282, 283, + 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, + 294, 0, 0, 0, 0, 295, 0, 0, 0, 0, + 0, 0, 0, 0, 1011, 281, 282, 283, 284, 285, + 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, + 0, 0, 0, 295, 0, 0, 0, 0, 0, 0, + 0, 0, 1040, 281, 282, 283, 284, 285, 286, 287, + 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, + 0, 295, 0, 0, 0, 0, 0, 0, 0, 0, + 1043, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 290, 291, 292, 293, 294, 0, 0, 0, 0, 295, + 0, 0, 0, 0, 0, 0, 0, 0, 1044, 281, + 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, + 292, 293, 294, 0, 0, 0, 0, 295, 0, 0, + 0, 0, 0, 0, 0, 0, 1045, 281, 282, 283, + 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, + 294, 0, 0, 0, 0, 295, 0, 0, 0, 0, + 0, 0, 0, 0, 1069, 281, 282, 283, 284, 285, + 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, + 0, 0, 0, 295, 0, 0, 0, 0, 0, 0, + 0, 0, 1110, 281, 282, 283, 284, 285, 286, 287, + 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, + 0, 295, 0, 0, 0, 0, 0, 0, 0, 0, + 1112, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 290, 291, 292, 293, 294, 0, 0, 0, 0, 295, + 0, 0, 0, 0, 0, 0, 0, 0, 1113, 281, + 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, + 292, 293, 294, 0, 0, 0, 0, 295, 0, 0, + 0, 0, 0, 0, 0, 0, 1125, 281, 282, 283, + 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, + 294, 0, 0, 0, 0, 295, 0, 0, 0, 0, + 0, 0, 0, 0, 1128, 281, 282, 283, 284, 285, + 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, + 0, 0, 0, 295, 0, 0, 0, 0, 0, 0, + 0, 0, 1131, 281, 282, 283, 284, 285, 286, 287, + 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, + 0, 295, 0, 0, 0, 0, 0, 0, 0, 0, + 1149, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 290, 291, 292, 293, 294, 0, 0, 0, 0, 295, + 0, 0, 0, 0, 0, 0, 0, 0, 1150, 281, + 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, + 292, 293, 294, 0, 0, 0, 0, 295, 0, 0, + 0, 0, 0, 0, 0, 0, 1174, 281, 282, 283, + 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, + 294, 0, 0, 0, 0, 295, 0, 0, 0, 0, + 0, 0, 0, 0, 1176, 281, 282, 283, 284, 285, + 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, + 0, 0, 0, 295, 0, 0, 0, 0, 0, 0, + 0, 0, 1178, 281, 282, 283, 284, 285, 286, 287, + 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, + 0, 295, 0, 0, 0, 0, 0, 0, 0, 0, + 1188, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 290, 291, 292, 293, 294, 0, 0, 0, 0, 295, + 0, 445, 0, 0, 0, 0, 518, 281, 282, 283, + 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, + 294, 0, 0, 0, 0, 295, 0, 0, 0, 0, + 0, 0, 475, 281, 282, 283, 284, 285, 286, 287, + 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, + 0, 295, 0, 0, 0, 0, 0, 0, 518, 281, + 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, + 292, 293, 294, 0, 0, 0, 0, 295, 0, 0, + 0, 0, 0, 0, 519, 281, 282, 283, 284, 285, + 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, + 0, 0, 0, 295, 0, 0, 0, 0, 0, 0, + 553, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 290, 291, 292, 293, 294, 0, 0, 0, 0, 295, + 0, 0, 0, 0, 0, 0, 598, 281, 282, 283, + 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, + 294, 0, 0, 0, 0, 295, 0, 0, 0, 0, + 0, 0, 599, 281, 282, 283, 284, 285, 286, 287, + 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, + 0, 295, 0, 0, 0, 0, 0, 0, 612, 281, + 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, + 292, 293, 294, 0, 0, 0, 0, 295, 0, 0, + 0, 0, 0, 0, 613, 281, 282, 283, 284, 285, + 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, + 0, 0, 0, 295, 0, 0, 0, 0, 0, 0, + 614, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 290, 291, 292, 293, 294, 0, 0, 0, 0, 295, + 0, 0, 0, 0, 0, 0, 615, 281, 282, 283, + 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, + 294, 0, 0, 0, 0, 295, 0, 0, 0, 0, + 0, 0, 616, 281, 282, 283, 284, 285, 286, 287, + 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, + 0, 295, 0, 0, 0, 0, 0, 0, 617, 281, + 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, + 292, 293, 294, 0, 0, 0, 0, 295, 0, 0, + 0, 0, 0, 0, 694, 281, 282, 283, 284, 285, + 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, + 0, 0, 0, 295, 0, 0, 0, 0, 0, 0, + 695, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 290, 291, 292, 293, 294, 0, 0, 0, 0, 295, + 0, 0, 0, 0, 0, 0, 696, 281, 282, 283, + 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, + 294, 0, 0, 0, 0, 295, 0, 0, 0, 0, + 0, 0, 770, 281, 282, 283, 284, 285, 286, 287, + 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, + 0, 295, 0, 0, 0, 0, 0, 0, 807, 281, + 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, + 292, 293, 294, 0, 0, 0, 0, 295, 0, 0, + 0, 0, 0, 0, 808, 281, 282, 283, 284, 285, + 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, + 0, 0, 0, 295, 0, 0, 0, 0, 0, 0, + 835, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 290, 291, 292, 293, 294, 0, 0, 0, 0, 295, + 0, 0, 0, 0, 0, 0, 945, 281, 282, 283, + 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, + 294, 0, 0, 0, 0, 295, 0, 0, 0, 0, + 0, 0, 946, 281, 282, 283, 284, 285, 286, 287, + 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, + 0, 295, 0, 0, 0, 0, 0, 0, 962, 281, + 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, + 292, 293, 294, 0, 0, 0, 0, 295, 0, 0, + 0, 0, 0, 0, 973, 281, 282, 283, 284, 285, + 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, + 0, 0, 0, 295, 0, 0, 0, 0, 0, 0, + 1078, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 290, 291, 292, 293, 294, 0, 0, 0, 0, 295, + 0, 0, 0, 0, 0, 0, 1079, 281, 282, 283, + 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, + 294, 0, 0, 0, 0, 295, 0, 0, 0, 0, + 0, 0, 1086, 281, 282, 283, 284, 285, 286, 287, + 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, + 0, 295, 0, 0, 0, 0, 0, 0, 1092, 281, + 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, + 292, 293, 294, 0, 0, 0, 0, 295, 0, 0, + 0, 0, 0, 0, 1144, 281, 282, 283, 284, 285, + 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, + 0, 0, 0, 295, 0, 0, 0, 0, 0, 0, + 1147, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 290, 291, 292, 293, 294, 0, 0, 0, 0, 295, + 0, 0, 0, 449, 281, 282, 283, 284, 285, 286, + 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, + 0, 0, 295, 0, 0, 0, 558, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 295, 0, 0, 0, 0, 296, 0, 0, 0, - 580, 282, 283, 284, 285, 286, 287, 288, 289, 290, - 291, 292, 293, 294, 295, 0, 0, 0, 0, 296, - 0, 0, 0, 582, 282, 283, 284, 285, 286, 287, - 288, 289, 290, 291, 292, 293, 294, 295, 0, 0, - 0, 0, 296, 0, 0, 0, 584, 282, 283, 284, + 294, 0, 0, 0, 0, 295, 0, 0, 0, 562, + 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, + 291, 292, 293, 294, 0, 0, 0, 0, 295, 0, + 0, 0, 577, 281, 282, 283, 284, 285, 286, 287, + 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, + 0, 295, 0, 0, 0, 579, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, - 295, 0, 0, 0, 0, 296, 0, 0, 0, 586, + 0, 0, 0, 0, 295, 0, 0, 0, 581, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, - 292, 293, 294, 295, 0, 0, 0, 0, 296, 0, - 0, 0, 588, 282, 283, 284, 285, 286, 287, 288, - 289, 290, 291, 292, 293, 294, 295, 0, 0, 0, - 0, 296, 0, 0, 0, 590, 282, 283, 284, 285, - 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, - 0, 0, 0, 0, 296, 0, 0, 0, 592, 282, + 292, 293, 294, 0, 0, 0, 0, 295, 0, 0, + 0, 583, 281, 282, 283, 284, 285, 286, 287, 288, + 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, + 295, 0, 0, 0, 585, 281, 282, 283, 284, 285, + 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, + 0, 0, 0, 295, 0, 0, 0, 587, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, - 293, 294, 295, 0, 0, 0, 0, 296, 0, 0, - 0, 594, 282, 283, 284, 285, 286, 287, 288, 289, - 290, 291, 292, 293, 294, 295, 0, 0, 0, 0, - 296, 0, 0, 0, 596, 282, 283, 284, 285, 286, - 287, 288, 289, 290, 291, 292, 293, 294, 295, 0, - 0, 0, 0, 296, 0, 0, 0, 598, 282, 283, + 293, 294, 0, 0, 0, 0, 295, 0, 0, 0, + 589, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 290, 291, 292, 293, 294, 0, 0, 0, 0, 295, + 0, 0, 0, 591, 281, 282, 283, 284, 285, 286, + 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, + 0, 0, 295, 0, 0, 0, 593, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 295, 0, 0, 0, 0, 296, 0, 0, 0, - 600, 282, 283, 284, 285, 286, 287, 288, 289, 290, - 291, 292, 293, 294, 295, 0, 0, 0, 0, 296, - 0, 0, 0, 604, 282, 283, 284, 285, 286, 287, - 288, 289, 290, 291, 292, 293, 294, 295, 0, 0, - 0, 0, 296, 0, 0, 0, 606, 282, 283, 284, + 294, 0, 0, 0, 0, 295, 0, 0, 0, 595, + 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, + 291, 292, 293, 294, 0, 0, 0, 0, 295, 0, + 0, 0, 597, 281, 282, 283, 284, 285, 286, 287, + 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, + 0, 295, 0, 0, 0, 601, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, - 295, 0, 0, 0, 0, 296, 0, 0, 0, 608, + 0, 0, 0, 0, 295, 0, 0, 0, 603, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, - 292, 293, 294, 295, 0, 0, 0, 0, 296, 0, - 0, 0, 610, 282, 283, 284, 285, 286, 287, 288, - 289, 290, 291, 292, 293, 294, 295, 0, 0, 0, - 0, 296, 0, 0, 0, 612, 282, 283, 284, 285, - 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, - 0, 0, 0, 0, 296, 0, 0, 0, 614, 282, + 292, 293, 294, 0, 0, 0, 0, 295, 0, 0, + 0, 605, 281, 282, 283, 284, 285, 286, 287, 288, + 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, + 295, 0, 0, 0, 607, 281, 282, 283, 284, 285, + 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, + 0, 0, 0, 295, 0, 0, 0, 609, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, - 293, 294, 295, 0, 0, 0, 0, 296, 0, 0, - 0, 697, 282, 283, 284, 285, 286, 287, 288, 289, - 290, 291, 292, 293, 294, 295, 0, 0, 0, 0, - 296, 0, 0, 0, 715, 282, 283, 284, 285, 286, - 287, 288, 289, 290, 291, 292, 293, 294, 295, 0, - 0, 0, 0, 296, 0, 0, 0, 716, 282, 283, + 293, 294, 0, 0, 0, 0, 295, 0, 0, 0, + 611, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 290, 291, 292, 293, 294, 0, 0, 0, 0, 295, + 0, 0, 0, 711, 281, 282, 283, 284, 285, 286, + 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, + 0, 0, 295, 0, 0, 0, 712, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 295, 0, 0, 0, 0, 296, 0, 0, 0, - 718, 282, 283, 284, 285, 286, 287, 288, 289, 290, - 291, 292, 293, 294, 295, 0, 0, 0, 0, 296, - 0, 0, 0, 719, 282, 283, 284, 285, 286, 287, - 288, 289, 290, 291, 292, 293, 294, 295, 0, 0, - 0, 0, 296, 0, 0, 0, 730, 282, 283, 284, + 294, 0, 0, 0, 0, 295, 0, 0, 0, 714, + 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, + 291, 292, 293, 294, 0, 0, 0, 0, 295, 0, + 0, 0, 715, 281, 282, 283, 284, 285, 286, 287, + 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, + 0, 295, 0, 0, 0, 726, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, - 295, 0, 0, 0, 0, 296, 0, 0, 0, 754, + 0, 0, 0, 0, 295, 0, 0, 0, 750, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, - 292, 293, 294, 295, 0, 0, 0, 0, 296, 0, - 0, 0, 856, 282, 283, 284, 285, 286, 287, 288, - 289, 290, 291, 292, 293, 294, 295, 0, 0, 0, - 0, 296, 0, 0, 0, 858, 282, 283, 284, 285, - 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, - 0, 0, 0, 0, 296, 0, 0, 0, 860, 282, + 292, 293, 294, 0, 0, 0, 0, 295, 0, 0, + 0, 851, 281, 282, 283, 284, 285, 286, 287, 288, + 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, + 295, 0, 0, 0, 853, 281, 282, 283, 284, 285, + 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, + 0, 0, 0, 295, 0, 0, 0, 855, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, - 293, 294, 295, 0, 0, 0, 0, 296, 0, 0, - 0, 862, 282, 283, 284, 285, 286, 287, 288, 289, - 290, 291, 292, 293, 294, 295, 0, 0, 0, 0, - 296, 0, 0, 0, 863, 282, 283, 284, 285, 286, - 287, 288, 289, 290, 291, 292, 293, 294, 295, 0, - 0, 0, 0, 296, 0, 0, 0, 965, 282, 283, + 293, 294, 0, 0, 0, 0, 295, 0, 0, 0, + 857, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 290, 291, 292, 293, 294, 0, 0, 0, 0, 295, + 0, 0, 0, 858, 281, 282, 283, 284, 285, 286, + 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, + 0, 0, 295, 0, 0, 0, 959, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 295, 0, 0, 0, 0, 296, 0, 447, 282, + 294, 0, 0, 0, 0, 295, 0, 445, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, - 293, 294, 295, 0, 0, 0, 0, 296, 0, 478, + 293, 294, 0, 0, 0, 0, 295, 0, 476, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, - 292, 293, 294, 295, 0, 0, 0, 0, 296, 0, - 487, 282, 283, 284, 285, 286, 287, 288, 289, 290, - 291, 292, 293, 294, 295, 0, 0, 0, 0, 296, - 0, 488, 282, 283, 284, 285, 286, 287, 288, 289, - 290, 291, 292, 293, 294, 295, 0, 0, 0, 0, - 296, 0, 490, 282, 283, 284, 285, 286, 287, 288, - 289, 290, 291, 292, 293, 294, 295, 0, 0, 0, - 0, 296, 0, 492, 282, 283, 284, 285, 286, 287, - 288, 289, 290, 291, 292, 293, 294, 295, 0, 0, - 0, 0, 296, 0, 493, 282, 283, 284, 285, 286, - 287, 288, 289, 290, 291, 292, 293, 294, 295, 0, - 0, 0, 0, 296, 0, 496, 282, 283, 284, 285, - 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, - 0, 0, 0, 0, 296, 0, 497, 282, 283, 284, + 292, 293, 294, 0, 0, 0, 0, 295, 0, 485, + 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, + 291, 292, 293, 294, 0, 0, 0, 0, 295, 0, + 486, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 290, 291, 292, 293, 294, 0, 0, 0, 0, 295, + 0, 488, 281, 282, 283, 284, 285, 286, 287, 288, + 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, + 295, 0, 490, 281, 282, 283, 284, 285, 286, 287, + 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, + 0, 295, 0, 491, 281, 282, 283, 284, 285, 286, + 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, + 0, 0, 295, 0, 494, 281, 282, 283, 284, 285, + 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, + 0, 0, 0, 295, 0, 495, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, - 295, 0, 0, 0, 0, 296, 0, 504, 282, 283, + 0, 0, 0, 0, 295, 0, 502, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 295, 0, 0, 0, 0, 296, 0, 552, 282, + 294, 0, 0, 0, 0, 295, 0, 549, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, - 293, 294, 295, 0, 0, 0, 0, 296, 0, 553, + 293, 294, 0, 0, 0, 0, 295, 0, 550, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, - 292, 293, 294, 295, 0, 0, 0, 0, 296, 0, - 554, 282, 283, 284, 285, 286, 287, 288, 289, 290, - 291, 292, 293, 294, 295, 0, 0, 0, 0, 296, - 0, 560, 282, 283, 284, 285, 286, 287, 288, 289, - 290, 291, 292, 293, 294, 295, 0, 0, 0, 0, - 296, 0, 579, 282, 283, 284, 285, 286, 287, 288, - 289, 290, 291, 292, 293, 294, 295, 0, 0, 0, - 0, 296, 0, 581, 282, 283, 284, 285, 286, 287, - 288, 289, 290, 291, 292, 293, 294, 295, 0, 0, - 0, 0, 296, 0, 583, 282, 283, 284, 285, 286, - 287, 288, 289, 290, 291, 292, 293, 294, 295, 0, - 0, 0, 0, 296, 0, 585, 282, 283, 284, 285, - 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, - 0, 0, 0, 0, 296, 0, 587, 282, 283, 284, + 292, 293, 294, 0, 0, 0, 0, 295, 0, 551, + 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, + 291, 292, 293, 294, 0, 0, 0, 0, 295, 0, + 557, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 290, 291, 292, 293, 294, 0, 0, 0, 0, 295, + 0, 576, 281, 282, 283, 284, 285, 286, 287, 288, + 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, + 295, 0, 578, 281, 282, 283, 284, 285, 286, 287, + 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, + 0, 295, 0, 580, 281, 282, 283, 284, 285, 286, + 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, + 0, 0, 295, 0, 582, 281, 282, 283, 284, 285, + 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, + 0, 0, 0, 295, 0, 584, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, - 295, 0, 0, 0, 0, 296, 0, 589, 282, 283, + 0, 0, 0, 0, 295, 0, 586, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 295, 0, 0, 0, 0, 296, 0, 591, 282, + 294, 0, 0, 0, 0, 295, 0, 588, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, - 293, 294, 295, 0, 0, 0, 0, 296, 0, 593, + 293, 294, 0, 0, 0, 0, 295, 0, 590, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, - 292, 293, 294, 295, 0, 0, 0, 0, 296, 0, - 595, 282, 283, 284, 285, 286, 287, 288, 289, 290, - 291, 292, 293, 294, 295, 0, 0, 0, 0, 296, - 0, 597, 282, 283, 284, 285, 286, 287, 288, 289, - 290, 291, 292, 293, 294, 295, 0, 0, 0, 0, - 296, 0, 599, 282, 283, 284, 285, 286, 287, 288, - 289, 290, 291, 292, 293, 294, 295, 0, 0, 0, - 0, 296, 0, 603, 282, 283, 284, 285, 286, 287, - 288, 289, 290, 291, 292, 293, 294, 295, 0, 0, - 0, 0, 296, 0, 605, 282, 283, 284, 285, 286, - 287, 288, 289, 290, 291, 292, 293, 294, 295, 0, - 0, 0, 0, 296, 0, 607, 282, 283, 284, 285, - 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, - 0, 0, 0, 0, 296, 0, 609, 282, 283, 284, + 292, 293, 294, 0, 0, 0, 0, 295, 0, 592, + 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, + 291, 292, 293, 294, 0, 0, 0, 0, 295, 0, + 594, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 290, 291, 292, 293, 294, 0, 0, 0, 0, 295, + 0, 596, 281, 282, 283, 284, 285, 286, 287, 288, + 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, + 295, 0, 600, 281, 282, 283, 284, 285, 286, 287, + 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, + 0, 295, 0, 602, 281, 282, 283, 284, 285, 286, + 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, + 0, 0, 295, 0, 604, 281, 282, 283, 284, 285, + 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, + 0, 0, 0, 295, 0, 606, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, - 295, 0, 0, 0, 0, 296, 0, 611, 282, 283, + 0, 0, 0, 0, 295, 0, 608, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 295, 0, 0, 0, 0, 296, 0, 613, 282, + 294, 0, 0, 0, 0, 295, 0, 610, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, - 293, 294, 295, 0, 0, 0, 0, 296, 0, 664, + 293, 294, 0, 0, 0, 0, 295, 0, 661, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, - 292, 293, 294, 295, 0, 0, 0, 0, 296, 0, - 669, 282, 283, 284, 285, 286, 287, 288, 289, 290, - 291, 292, 293, 294, 295, 0, 0, 0, 0, 296, - 0, 677, 282, 283, 284, 285, 286, 287, 288, 289, - 290, 291, 292, 293, 294, 295, 0, 0, 0, 0, - 296, 0, 680, 282, 283, 284, 285, 286, 287, 288, - 289, 290, 291, 292, 293, 294, 295, 0, 0, 0, - 0, 296, 0, 681, 282, 283, 284, 285, 286, 287, - 288, 289, 290, 291, 292, 293, 294, 295, 0, 0, - 0, 0, 296, 0, 685, 282, 283, 284, 285, 286, - 287, 288, 289, 290, 291, 292, 293, 294, 295, 0, - 0, 0, 0, 296, 0, 855, 282, 283, 284, 285, - 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, - 0, 0, 0, 0, 296, 0, 857, 282, 283, 284, + 292, 293, 294, 0, 0, 0, 0, 295, 0, 666, + 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, + 291, 292, 293, 294, 0, 0, 0, 0, 295, 0, + 674, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 290, 291, 292, 293, 294, 0, 0, 0, 0, 295, + 0, 677, 281, 282, 283, 284, 285, 286, 287, 288, + 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, + 295, 0, 678, 281, 282, 283, 284, 285, 286, 287, + 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, + 0, 295, 0, 682, 281, 282, 283, 284, 285, 286, + 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, + 0, 0, 295, 0, 850, 281, 282, 283, 284, 285, + 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, + 0, 0, 0, 295, 0, 852, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, - 295, 0, 0, 0, 0, 296, 0, 859, 282, 283, + 0, 0, 0, 0, 295, 0, 854, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 295, 0, 0, 0, 0, 296, 0, 861, 282, + 294, 0, 0, 0, 0, 295, 0, 856, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, - 293, 294, 295, 0, 0, 0, 0, 296, 0, 867, + 293, 294, 0, 0, 0, 0, 295, 0, 862, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, - 292, 293, 294, 295, 0, 0, 0, 0, 296, 0, - 997, 282, 283, 284, 285, 286, 287, 288, 289, 290, - 291, 292, 293, 294, 295, 0, 0, 0, 0, 296, - 0, 1017, 282, 283, 284, 285, 286, 287, 288, 289, - 290, 291, 292, 293, 294, 295, 0, 0, 0, 0, - 296, 0, 1026, 282, 283, 284, 285, 286, 287, 288, - 289, 290, 291, 292, 293, 294, 295, 0, 0, 0, - 0, 296, 0, 1152, 282, 283, 284, 285, 286, 287, - 288, 289, 290, 291, 292, 293, 294, 295, 0, 0, - 0, 0, 296, 0, 1195 + 292, 293, 294, 0, 0, 0, 0, 295, 0, 991, + 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, + 291, 292, 293, 294, 0, 0, 0, 0, 295, 0, + 1010, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 290, 291, 292, 293, 294, 0, 0, 0, 0, 295, + 0, 1019, 281, 282, 283, 284, 285, 286, 287, 288, + 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, + 295, 0, 1143, 281, 282, 283, 284, 285, 286, 287, + 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, + 0, 295, 0, 1186 }; static const yytype_int16 yycheck[] = { - 59, 188, 6, 178, 275, 6, 1035, 7, 6, 3, - 185, 6, 4, 6, 4, 5, 4, 4, 4, 712, - 71, 4, 49, 7, 643, 4, 4, 133, 71, 135, - 4, 5, 207, 71, 4, 210, 4, 708, 6, 71, - 4, 6, 123, 124, 130, 131, 36, 37, 38, 39, - 6, 137, 42, 6, 6, 123, 124, 6, 139, 133, - 141, 6, 36, 37, 38, 39, 140, 0, 42, 123, - 124, 139, 43, 141, 139, 46, 141, 143, 49, 43, - 51, 147, 46, 78, 13, 49, 140, 6, 7, 140, - 82, 83, 84, 85, 6, 133, 6, 140, 6, 7, - 56, 133, 140, 56, 92, 93, 133, 49, 140, 92, - 93, 123, 124, 117, 118, 119, 123, 124, 122, 123, - 46, 6, 126, 49, 133, 51, 1155, 139, 132, 113, - 100, 135, 139, 137, 138, 139, 140, 137, 142, 143, - 144, 145, 140, 147, 148, 149, 765, 140, 152, 141, - 140, 130, 131, 140, 140, 133, 135, 828, 137, 123, - 124, 348, 349, 142, 168, 169, 140, 135, 120, 133, - 140, 120, 138, 133, 178, 133, 140, 143, 123, 124, - 451, 147, 140, 1212, 53, 360, 180, 133, 192, 193, - 194, 49, 196, 7, 188, 199, 200, 133, 202, 135, - 49, 133, 261, 262, 263, 264, 381, 273, 140, 213, - 133, 123, 124, 123, 124, 219, 220, 221, 222, 223, + 59, 187, 6, 274, 177, 1028, 6, 6, 3, 6, + 49, 184, 4, 4, 4, 5, 71, 4, 4, 0, + 71, 4, 5, 7, 4, 4, 640, 704, 4, 6, + 6, 6, 6, 206, 6, 13, 209, 7, 4, 71, + 71, 6, 4, 5, 49, 6, 36, 37, 38, 39, + 123, 124, 42, 36, 37, 38, 39, 6, 6, 42, + 134, 72, 133, 72, 6, 139, 139, 78, 79, 78, + 79, 6, 4, 5, 36, 37, 38, 39, 143, 56, + 42, 78, 147, 123, 124, 140, 123, 124, 4, 140, + 82, 83, 84, 85, 133, 56, 133, 6, 7, 708, + 140, 133, 133, 140, 36, 37, 38, 39, 140, 140, + 42, 134, 134, 117, 118, 119, 139, 139, 122, 123, + 100, 133, 126, 1146, 123, 124, 92, 93, 132, 113, + 141, 135, 141, 137, 138, 139, 140, 133, 142, 143, + 144, 145, 133, 147, 148, 149, 823, 761, 152, 141, + 140, 130, 131, 140, 140, 120, 135, 140, 137, 135, + 140, 347, 348, 142, 168, 169, 140, 137, 140, 123, + 124, 53, 120, 177, 123, 124, 92, 93, 449, 49, + 1203, 123, 124, 133, 179, 358, 140, 191, 192, 193, + 140, 195, 187, 133, 198, 199, 133, 201, 130, 131, + 140, 260, 261, 262, 263, 137, 379, 272, 212, 336, + 337, 338, 130, 131, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, - 254, 255, 256, 257, 258, 259, 260, 323, 877, 123, - 124, 265, 31, 32, 72, 34, 125, 126, 127, 273, - 78, 79, 133, 132, 275, 139, 133, 141, 282, 283, + 254, 255, 256, 257, 258, 259, 133, 322, 872, 133, + 264, 31, 32, 8, 34, 134, 72, 133, 272, 135, + 139, 133, 78, 79, 274, 123, 124, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 295, 296, 130, 131, 134, 110, 111, 112, 113, - 139, 305, 62, 63, 72, 371, 72, 273, 1001, 313, - 78, 79, 78, 79, 318, 134, 130, 131, 322, 323, - 139, 7, 133, 327, 135, 329, 330, 331, 133, 333, - 334, 335, 336, 337, 338, 339, 133, 49, 135, 305, - 51, 336, 337, 338, 339, 123, 124, 351, 352, 353, - 354, 355, 356, 357, 348, 349, 322, 323, 133, 7, - 135, 134, 140, 7, 368, 369, 139, 371, 133, 373, - 374, 123, 124, 141, 1067, 141, 1069, 72, 1071, 72, - 49, 4, 5, 78, 79, 78, 79, 391, 140, 133, - 394, 135, 393, 140, 1065, 134, 165, 150, 167, 140, - 139, 72, 5, 156, 173, 371, 134, 78, 79, 178, - 476, 139, 49, 36, 37, 38, 39, 140, 133, 42, - 135, 123, 124, 1042, 110, 111, 112, 113, 181, 182, - 6, 133, 498, 36, 37, 38, 39, 1108, 140, 42, - 1111, 46, 446, 1114, 130, 131, 141, 4, 141, 453, - 451, 137, 72, 133, 1147, 135, 140, 452, 78, 79, - 133, 4, 110, 111, 112, 113, 110, 111, 112, 113, - 141, 72, 476, 477, 4, 479, 480, 78, 79, 483, - 484, 485, 130, 131, 123, 124, 757, 758, 133, 1182, - 135, 1184, 133, 1186, 498, 133, 6, 501, 502, 1192, - 139, 133, 135, 1174, 508, 72, 565, 130, 131, 4, - 476, 78, 79, 139, 137, 141, 520, 521, 484, 485, - 4, 141, 526, 1216, 133, 1218, 135, 1220, 1199, 123, - 124, 1202, 498, 140, 1205, 501, 72, 1208, 542, 543, - 141, 72, 78, 79, 133, 139, 135, 78, 79, 337, - 338, 339, 556, 133, 558, 559, 133, 1228, 624, 1230, - 133, 1232, 135, 133, 565, 72, 625, 133, 8, 4, - 5, 78, 79, 133, 141, 72, 7, 346, 347, 72, - 4, 78, 79, 6, 6, 78, 79, 356, 654, 133, - 649, 135, 133, 72, 135, 4, 5, 601, 602, 78, - 79, 36, 37, 38, 39, 141, 8, 42, 6, 675, - 141, 615, 616, 617, 618, 619, 620, 621, 5, 133, - 624, 135, 133, 140, 135, 629, 4, 36, 37, 38, - 39, 133, 636, 42, 141, 701, 702, 703, 704, 814, - 123, 124, 646, 133, 141, 123, 124, 133, 141, 135, - 654, 123, 124, 123, 124, 140, 139, 133, 624, 135, - 133, 139, 141, 49, 133, 51, 135, 139, 133, 139, - 135, 675, 133, 133, 114, 115, 116, 117, 118, 119, - 120, 121, 122, 123, 124, 125, 126, 127, 654, 123, - 124, 133, 132, 135, 140, 448, 449, 701, 702, 703, - 704, 141, 139, 133, 141, 139, 135, 133, 137, 675, - 123, 124, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, 127, 139, 123, 124, 139, - 132, 141, 736, 737, 921, 701, 702, 703, 704, 141, - 123, 124, 139, 139, 141, 139, 8, 141, 133, 133, - 519, 12, 13, 754, 130, 131, 139, 758, 139, 135, - 141, 137, 766, 133, 135, 139, 142, 141, 140, 538, - 774, 139, 6, 141, 778, 139, 139, 141, 141, 139, - 135, 141, 43, 44, 45, 46, 47, 48, 49, 50, - 51, 52, 796, 54, 140, 56, 57, 140, 59, 60, - 65, 66, 67, 68, 140, 70, 810, 811, 812, 130, - 131, 76, 77, 139, 135, 141, 137, 135, 135, 823, - 824, 142, 881, 827, 137, 140, 87, 88, 89, 95, - 123, 124, 125, 126, 127, 6, 840, 841, 842, 132, - 139, 139, 141, 141, 6, 849, 847, 4, 6, 6, - 854, 135, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, 127, 870, 140, 4, 6, - 132, 139, 134, 141, 869, 1062, 139, 6, 141, 139, - 141, 141, 886, 652, 139, 139, 141, 141, 5, 893, - 894, 139, 137, 141, 898, 139, 139, 141, 141, 139, - 1075, 141, 132, 907, 908, 7, 135, 140, 7, 662, - 663, 7, 665, 917, 667, 668, 134, 141, 671, 672, - 7, 6, 917, 92, 61, 141, 140, 921, 139, 698, - 699, 700, 134, 134, 139, 939, 6, 4, 136, 7, - 95, 7, 7, 947, 7, 95, 7, 951, 952, 7, - 95, 7, 947, 7, 7, 134, 134, 134, 134, 141, - 141, 1027, 137, 7, 968, 12, 13, 720, 721, 722, - 7, 7, 137, 1148, 133, 979, 140, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - 127, 133, 6, 6, 998, 132, 43, 44, 45, 46, - 47, 48, 49, 50, 51, 52, 4, 54, 136, 56, - 57, 6, 59, 60, 6, 1019, 6, 6, 1022, 7, - 1024, 135, 6, 1027, 49, 120, 7, 1031, 7, 782, - 51, 7, 1036, 140, 7, 788, 7, 7, 7, 7, - 87, 88, 89, 7, 797, 798, 799, 7, 7, 802, - 803, 804, 805, 806, 807, 808, 7, 7, 827, 6, - 4, 1027, 1066, 140, 1068, 6, 1070, 140, 1062, 133, - 823, 6, 6, 6, 1078, 49, 6, 4, 4, 4, - 4, 133, 1086, 1087, 6, 6, 134, 137, 134, 140, - 1094, 7, 6, 6, 141, 140, 6, 1101, 140, 1103, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 124, 125, 126, 127, 140, 868, 6, 140, 132, 888, - 1124, 890, 6, 6, 5, 140, 6, 6, 140, 91, - 6, 1135, 7, 137, 1138, 1194, 6, 1141, 6, 4, - 6, 1145, 136, 6, 6, 5, 95, 6, 6, 1153, - 6, 6, 1156, 6, 923, 6, 925, 6, 927, 6, - 6, 6, 6, 1222, 6, 1224, 6, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - 127, 6, 6, 1242, 139, 132, 140, 4, 6, 942, - 6, 119, 120, 121, 122, 123, 124, 125, 126, 127, - 953, 7, 3, 4, 132, 137, 6, 6, 9, 10, - 11, 5, 47, 14, 15, 16, 17, 18, 19, 20, - 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, - 31, 32, 33, 34, 6, 6, 6, 140, 6, 141, - 140, 140, 43, 140, 114, 115, 116, 117, 118, 119, - 120, 121, 122, 123, 124, 125, 126, 127, 7, 90, - 6, 6, 132, 1016, 65, 66, 67, 68, 69, 70, - 134, 140, 93, 6, 6, 76, 77, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - 127, 6, 6, 6, 6, 132, 5, 1066, 141, 1068, - 6, 1070, 139, 61, 141, 106, 107, 108, 109, 116, + 294, 295, 140, 134, 46, 72, 7, 49, 139, 51, + 304, 78, 79, 133, 369, 123, 124, 49, 312, 7, + 140, 123, 124, 317, 138, 62, 63, 321, 322, 143, + 51, 139, 326, 147, 328, 329, 330, 139, 332, 333, + 334, 335, 336, 337, 338, 141, 72, 49, 335, 336, + 337, 338, 78, 79, 123, 124, 350, 351, 352, 353, + 354, 355, 347, 348, 7, 133, 139, 135, 141, 133, + 139, 7, 366, 367, 141, 369, 49, 371, 372, 114, + 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, + 125, 126, 127, 72, 140, 389, 72, 132, 392, 78, + 79, 391, 78, 79, 140, 165, 141, 167, 49, 110, + 111, 112, 113, 173, 133, 141, 135, 177, 133, 474, + 135, 46, 110, 111, 112, 113, 133, 72, 135, 130, + 131, 1035, 1099, 78, 79, 1102, 137, 133, 1105, 135, + 72, 496, 130, 131, 6, 72, 78, 79, 72, 140, + 444, 78, 79, 140, 78, 79, 4, 451, 272, 449, + 1059, 4, 1061, 450, 1063, 141, 72, 110, 111, 112, + 113, 4, 78, 79, 110, 111, 112, 113, 133, 72, + 474, 475, 133, 477, 478, 78, 79, 481, 482, 483, + 304, 6, 753, 754, 130, 131, 141, 139, 1165, 141, + 123, 124, 496, 123, 124, 499, 500, 321, 322, 141, + 6, 7, 506, 562, 141, 133, 139, 141, 141, 139, + 139, 72, 141, 1190, 518, 519, 1193, 78, 79, 1196, + 524, 133, 1199, 123, 124, 141, 133, 150, 135, 1138, + 125, 126, 127, 156, 135, 539, 540, 132, 141, 139, + 4, 141, 1219, 4, 1221, 369, 1223, 43, 140, 553, + 46, 555, 556, 49, 123, 124, 621, 180, 181, 5, + 130, 131, 562, 622, 1173, 133, 1175, 137, 1177, 133, + 139, 135, 141, 8, 1183, 345, 346, 133, 133, 135, + 141, 123, 124, 133, 354, 135, 651, 646, 123, 124, + 36, 37, 38, 39, 598, 599, 42, 139, 1207, 133, + 1209, 135, 1211, 133, 139, 123, 124, 672, 612, 613, + 614, 615, 616, 617, 618, 123, 124, 621, 133, 4, + 5, 139, 626, 7, 123, 124, 133, 123, 124, 633, + 4, 139, 697, 698, 699, 700, 133, 133, 135, 643, + 139, 133, 5, 135, 140, 123, 124, 651, 123, 124, + 474, 36, 37, 38, 39, 6, 133, 42, 482, 483, + 133, 139, 130, 131, 139, 6, 133, 135, 672, 137, + 140, 133, 496, 135, 142, 499, 12, 13, 6, 114, + 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, + 125, 126, 127, 697, 698, 699, 700, 132, 135, 133, + 137, 12, 13, 133, 133, 135, 141, 43, 44, 45, + 46, 47, 48, 49, 50, 51, 52, 140, 54, 43, + 56, 57, 46, 59, 60, 49, 140, 51, 732, 733, + 916, 133, 43, 44, 45, 46, 47, 48, 49, 50, + 51, 52, 133, 54, 135, 56, 57, 517, 59, 60, + 750, 87, 88, 89, 754, 130, 131, 133, 762, 135, + 135, 133, 137, 135, 133, 535, 770, 142, 133, 133, + 774, 135, 133, 133, 135, 135, 87, 88, 89, 119, + 120, 121, 122, 123, 124, 125, 126, 127, 792, 139, + 133, 141, 132, 139, 139, 141, 141, 621, 49, 4, + 51, 6, 806, 807, 808, 141, 133, 4, 65, 66, + 67, 68, 135, 70, 818, 819, 6, 876, 822, 76, + 77, 140, 140, 446, 447, 140, 139, 651, 141, 135, + 141, 835, 836, 837, 123, 124, 125, 126, 127, 139, + 844, 141, 842, 132, 139, 849, 141, 140, 672, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - 127, 1074, 123, 124, 6, 132, 140, 128, 140, 140, - 139, 6, 133, 6, 6, 6, 6, 138, 6, 141, - 141, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, 127, 3, 4, 140, 5, 132, 140, 9, 10, - 11, 140, 1115, 14, 15, 16, 17, 18, 19, 20, - 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, - 31, 32, 33, 34, 6, 6, 140, 139, 6, 6, - 6, 6, 43, 140, 5, 1124, 140, 140, 140, 12, - 13, 140, 6, 141, 6, 6, 6, 6, 6, 6, - 6, 6, 6, 3, 65, 66, 67, 68, 69, 70, - 773, 3, 873, -1, -1, 76, 77, -1, -1, -1, - 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, - -1, 54, -1, 56, 57, -1, 59, 60, -1, -1, - -1, -1, -1, -1, -1, 106, 107, 108, 109, -1, + 127, 865, 139, 135, 141, 132, 139, 864, 141, 1055, + 139, 137, 141, 697, 698, 699, 700, 881, 139, 649, + 141, 139, 95, 141, 888, 889, 139, 6, 141, 893, + 139, 139, 141, 141, 1067, 139, 6, 141, 902, 903, + 139, 139, 141, 141, 139, 139, 141, 141, 912, 139, + 139, 141, 141, 140, 6, 912, 135, 4, 140, 137, + 6, 916, 5, 132, 694, 695, 696, 7, 135, 933, + 140, 7, 7, 134, 7, 141, 6, 941, 141, 92, + 140, 945, 946, 139, 941, 134, 134, 12, 13, 6, + 4, 136, 139, 95, 7, 1020, 7, 7, 962, 7, + 95, 7, 7, 95, 7, 7, 1139, 7, 134, 973, + 134, 134, 134, 141, 141, 7, 137, 7, 43, 44, + 45, 46, 47, 48, 49, 50, 51, 52, 992, 54, + 8, 56, 57, 7, 59, 60, 137, 117, 118, 119, + 120, 121, 122, 123, 124, 125, 126, 127, 1012, 133, + 133, 1015, 132, 1017, 140, 6, 1020, 4, 6, 136, + 1024, 6, 87, 88, 89, 1029, 6, 6, 135, 7, + 6, 120, 49, 7, 7, 51, 659, 660, 7, 662, + 140, 664, 665, 7, 7, 668, 669, 7, 7, 7, + 7, 7, 822, 7, 1058, 7, 1060, 7, 1062, 4, + 1055, 140, 6, 6, 133, 6, 1070, 49, 6, 6, + 4, 4, 4, 4, 1078, 1079, 141, 6, 6, 140, + 7, 133, 1086, 6, 140, 134, 6, 134, 6, 1093, + 6, 1095, 6, 716, 717, 718, 114, 115, 116, 117, + 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, + 137, 1115, 140, 883, 132, 885, 134, 140, 140, 6, + 5, 140, 1126, 6, 6, 1129, 1185, 140, 1132, 91, + 6, 137, 1136, 7, 6, 4, 6, 136, 6, 6, + 1144, 5, 95, 1147, 6, 6, 6, 917, 6, 919, + 6, 921, 6, 6, 1213, 778, 1215, 6, 6, 6, + 6, 784, 6, 6, 6, 6, 6, 139, 4, 140, + 793, 794, 795, 6, 1233, 798, 799, 800, 801, 802, + 803, 804, 6, 5, 7, 6, 137, 6, 47, 6, + 6, 3, 4, 6, 140, 818, 1020, 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, 140, 7, 140, 6, 140, 140, 6, + 134, 43, 6, 90, 6, 6, 6, 6, 93, 140, + 863, 140, 6, 5, 141, 6, 61, 140, 6, 139, + 6, 6, 6, 65, 66, 67, 68, 69, 70, 6, + 6, 6, 141, 5, 76, 77, 114, 115, 116, 117, + 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, + 6, 6, 6, 6, 132, 6, 6, 139, 1058, 140, + 1060, 5, 1062, 6, 106, 107, 108, 109, 6, 6, + 6, 140, 140, 140, 6, 140, 140, 6, 140, 140, + 140, 123, 124, 936, 141, 6, 128, 6, 6, 6, + 769, 133, 1115, 3, 947, 3, 138, 3, 4, 141, + 868, -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, 43, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 12, 13, + -1, -1, -1, -1, -1, -1, 1009, -1, -1, 65, + 66, 67, 68, 69, 70, -1, -1, -1, -1, -1, + 76, 77, -1, -1, -1, -1, -1, -1, -1, 43, + 44, 45, 46, 47, 48, 49, 50, 51, 52, -1, + 54, -1, 56, 57, -1, 59, 60, -1, -1, -1, + 106, 107, 108, 109, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 1066, -1, -1, -1, 123, 124, -1, + -1, -1, 128, 87, 88, 89, -1, 133, -1, -1, + -1, -1, 138, -1, 140, -1, -1, -1, -1, -1, + -1, -1, -1, 3, 4, -1, -1, -1, -1, 9, + 10, 11, -1, 1106, 14, 15, 16, 17, 18, 19, + 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, + 30, 31, 32, 33, 34, -1, -1, 141, -1, -1, + -1, -1, -1, 43, -1, -1, -1, -1, -1, -1, + 12, 13, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 65, 66, 67, 68, 69, + 70, -1, -1, -1, -1, -1, 76, 77, -1, -1, + -1, 43, 44, 45, 46, 47, 48, 49, 50, 51, + 52, -1, 54, -1, 56, 57, -1, 59, 60, -1, + -1, -1, -1, -1, -1, -1, 106, 107, 108, 109, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 123, 124, 87, 88, 89, 128, -1, + -1, -1, -1, 133, -1, 3, 4, -1, 138, -1, + 140, 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, 43, -1, -1, -1, 141, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 123, 124, 87, 88, 89, 128, -1, -1, - -1, -1, 133, -1, 3, 4, -1, 138, -1, 140, + -1, -1, -1, -1, -1, -1, -1, 65, 66, 67, + 68, 69, 70, -1, 3, 4, -1, -1, 76, 77, 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, 43, -1, -1, -1, 141, -1, - -1, 12, 13, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 65, 66, 67, 68, - 69, 70, -1, -1, -1, -1, -1, 76, 77, -1, - -1, -1, 43, 44, 45, 46, 47, 48, 49, 50, - 51, 52, -1, 54, -1, 56, 57, -1, 59, 60, - -1, -1, -1, -1, -1, -1, -1, 106, 107, 108, - 109, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 123, 124, 87, 88, 89, 128, - -1, -1, -1, -1, 133, -1, 3, 4, -1, 138, - -1, 140, 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, 43, -1, -1, -1, - 141, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 65, 66, - 67, 68, 69, 70, -1, 3, 4, -1, -1, 76, - 77, 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, 106, - 107, 108, 109, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 123, 124, -1, -1, - -1, 128, -1, -1, -1, -1, 133, -1, 3, 4, - 5, 138, -1, 140, 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, 106, 107, - 108, 109, -1, -1, -1, 12, 13, -1, -1, -1, - -1, -1, -1, -1, -1, 123, 124, -1, -1, -1, - 128, -1, -1, -1, -1, 133, -1, -1, 136, -1, - 138, -1, 140, -1, -1, -1, 43, 44, 45, 46, - 47, 48, 49, 50, 51, 52, -1, 54, -1, 56, - 57, -1, 59, 60, -1, -1, -1, -1, -1, -1, - -1, 106, 107, 108, 109, -1, -1, -1, -1, -1, - -1, 6, -1, -1, -1, -1, -1, -1, 123, 124, - 87, 88, 89, 128, -1, -1, -1, -1, 133, -1, - 3, 4, -1, 138, -1, 140, 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, 3, 4, 12, 13, -1, - -1, 9, 10, 11, 141, -1, 14, 15, 16, 17, - 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 31, 32, 33, 34, -1, 43, 44, - 45, 46, 47, 48, 49, 50, 51, 52, -1, 54, - -1, 56, 57, -1, 59, 60, -1, -1, -1, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, 126, 127, 106, 107, 108, 109, 132, -1, -1, - -1, -1, 87, 88, 89, -1, -1, -1, -1, -1, - 123, 124, -1, -1, -1, 128, -1, -1, -1, -1, - 133, -1, -1, 136, -1, 138, -1, 140, 106, 107, + 29, 30, 31, 32, 33, 34, -1, -1, 106, 107, 108, 109, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 123, 124, -1, -1, -1, - 128, -1, -1, -1, -1, 133, 141, 3, 4, 5, - 138, 7, 140, 9, 10, 11, -1, -1, 14, 15, + 128, -1, -1, -1, -1, 133, -1, 3, 4, 5, + 138, -1, 140, 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, -1, -1, - -1, -1, -1, -1, -1, -1, 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, 43, -1, -1, -1, - -1, -1, -1, -1, 100, -1, -1, -1, -1, -1, - 106, 107, 108, 109, 110, 111, 112, 113, 65, 66, - 67, 68, 69, 70, -1, -1, -1, 123, 124, 76, - 77, -1, 128, -1, 130, 131, -1, 133, -1, 135, - -1, 137, 138, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 106, - 107, 108, 109, 6, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 123, 124, -1, -1, - -1, 128, 3, 4, 5, -1, 133, -1, 9, 10, - 11, 138, -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, 3, - 4, 42, 12, 13, -1, 9, 10, 11, -1, -1, + 36, 37, 38, 39, -1, -1, 42, 106, 107, 108, + 109, -1, -1, -1, 12, 13, -1, -1, -1, -1, + -1, -1, -1, -1, 123, 124, -1, -1, -1, 128, + -1, -1, -1, -1, 133, -1, -1, 136, -1, 138, + -1, 140, -1, -1, -1, 43, 44, 45, 46, 47, + 48, 49, 50, 51, 52, -1, 54, -1, 56, 57, + -1, 59, 60, -1, -1, -1, -1, -1, -1, -1, + 106, 107, 108, 109, -1, -1, -1, -1, -1, -1, + 6, -1, -1, -1, -1, -1, -1, 123, 124, 87, + 88, 89, 128, -1, -1, -1, -1, 133, -1, 3, + 4, -1, 138, -1, 140, 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, 6, -1, 43, 44, 45, 46, 47, 48, 49, - 50, 51, 52, -1, 54, -1, 56, 57, -1, 59, - 60, 114, 115, 116, 117, 118, 119, 120, 121, 122, - 123, 124, 125, 126, 127, 106, 107, 108, 109, 132, - 6, -1, -1, -1, -1, -1, -1, 87, 88, 89, - -1, -1, 123, 124, -1, -1, -1, 128, -1, 6, - -1, -1, 133, -1, -1, -1, -1, 138, -1, -1, - -1, -1, 106, 107, 108, 109, -1, -1, 6, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 123, - 124, -1, -1, -1, 128, -1, -1, 6, -1, 133, - -1, 141, -1, -1, 138, -1, -1, -1, -1, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, 126, 127, 6, -1, -1, -1, 132, 114, 115, + 34, -1, -1, -1, 3, 4, 12, 13, -1, -1, + 9, 10, 11, 141, -1, 14, 15, 16, 17, 18, + 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, + 29, 30, 31, 32, 33, 34, -1, 43, 44, 45, + 46, 47, 48, 49, 50, 51, 52, -1, 54, -1, + 56, 57, -1, 59, 60, -1, -1, -1, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, 127, 6, -1, -1, -1, 132, -1, 114, 115, + 126, 127, 106, 107, 108, 109, 132, -1, -1, -1, + -1, 87, 88, 89, -1, -1, -1, -1, -1, 123, + 124, -1, -1, -1, 128, -1, -1, -1, -1, 133, + -1, -1, 136, -1, 138, -1, 140, 106, 107, 108, + 109, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 123, 124, -1, -1, -1, 128, + -1, -1, -1, -1, 133, 141, 3, 4, 5, 138, + 7, 140, 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, -1, -1, -1, + -1, -1, -1, -1, -1, 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, 43, -1, -1, -1, -1, + -1, -1, -1, 100, -1, -1, -1, -1, -1, 106, + 107, 108, 109, 110, 111, 112, 113, 65, 66, 67, + 68, 69, 70, -1, -1, -1, 123, 124, 76, 77, + -1, 128, -1, 130, 131, -1, 133, -1, 135, -1, + 137, 138, -1, 6, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 106, 107, + 108, 109, 6, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 123, 124, -1, -1, -1, + 128, 3, 4, 5, -1, 133, -1, 9, 10, 11, + 138, -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, 3, 4, + 42, -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, + 6, 114, 115, 116, 117, 118, 119, 120, 121, 122, + 123, 124, 125, 126, 127, -1, -1, -1, -1, 132, + 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, + 124, 125, 126, 127, 106, 107, 108, 109, 132, 6, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 123, 124, -1, -1, 61, 128, -1, 6, -1, + -1, 133, -1, -1, -1, -1, 138, -1, -1, -1, + -1, 106, 107, 108, 109, -1, -1, 6, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 123, 124, + -1, -1, -1, 128, -1, -1, 6, -1, 133, -1, + -1, -1, -1, 138, -1, -1, -1, -1, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 6, -1, -1, -1, 132, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, + 127, 6, -1, -1, -1, 132, -1, 114, 115, 116, + 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 6, -1, -1, -1, 132, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 6, -1, -1, -1, 132, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 6, - -1, -1, -1, 132, -1, -1, -1, -1, -1, -1, - -1, 114, 115, 116, 117, 118, 119, 120, 121, 122, - 123, 124, 125, 126, 127, 8, -1, -1, -1, 132, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 124, 125, 126, 127, 8, -1, -1, -1, 132, -1, + -1, -1, -1, 132, 114, 115, 116, 117, 118, 119, + 120, 121, 122, 123, 124, 125, 126, 127, 6, -1, + -1, -1, 132, -1, -1, -1, -1, -1, -1, -1, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 124, 125, 126, 127, 8, -1, -1, -1, 132, 114, + 124, 125, 126, 127, 6, -1, -1, -1, 132, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, 126, 127, 8, -1, -1, -1, 132, 114, 115, + 125, 126, 127, 6, -1, -1, -1, 132, -1, 114, + 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, + 125, 126, 127, -1, 8, -1, -1, 132, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, 127, 8, -1, -1, -1, 132, 114, 115, 116, + 126, 127, -1, 8, -1, -1, 132, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - 127, 8, -1, -1, -1, 132, -1, -1, -1, -1, - -1, 114, 115, 116, 117, 118, 119, 120, 121, 122, - 123, 124, 125, 126, 127, -1, -1, -1, -1, 132, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 124, 125, 126, 127, -1, -1, -1, -1, 132, -1, + 127, -1, 8, -1, -1, 132, 114, 115, 116, 117, + 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, + -1, 8, -1, -1, 132, -1, -1, -1, -1, -1, + -1, -1, 114, 115, 116, 117, 118, 119, 120, 121, + 122, 123, 124, 125, 126, 127, 8, -1, -1, -1, + 132, 114, 115, 116, 117, 118, 119, 120, 121, 122, + 123, 124, 125, 126, 127, 8, -1, -1, -1, 132, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, -1, -1, -1, -1, 132, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, @@ -2352,33 +2354,43 @@ static const yytype_int16 yycheck[] = 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, -1, -1, -1, -1, 132, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - 127, -1, 0, 1, -1, 132, 4, -1, -1, -1, - -1, -1, -1, -1, 12, 13, -1, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - 127, -1, -1, -1, -1, 132, -1, 35, -1, -1, - -1, -1, 40, 41, 141, 43, 44, 45, 46, 47, - 48, 49, 50, 51, 52, -1, 54, 55, 56, 57, - 58, 59, 60, -1, -1, -1, 64, 65, 66, 67, - 68, 69, 70, -1, 72, 73, 74, 75, 76, 77, - -1, -1, 80, 81, 4, -1, -1, -1, 86, 87, - 88, 89, 12, 13, 92, -1, 94, -1, 96, 97, - 98, 99, 100, 101, 102, 103, 104, 105, -1, -1, - -1, -1, -1, -1, -1, 35, -1, -1, -1, -1, - 40, 41, -1, 43, 44, 45, 46, 47, 48, 49, - 50, 51, 52, -1, 54, 55, 56, 57, 58, 59, - 60, -1, -1, -1, 64, 65, 66, 67, 68, 69, - 70, -1, 72, 73, 74, 75, 76, 77, 12, 13, - 80, 81, -1, -1, -1, -1, 86, 87, 88, 89, - -1, -1, 92, -1, 94, -1, 96, 97, 98, 99, - 100, 101, 102, 103, 104, 105, -1, -1, -1, 43, - 44, 45, 46, 47, 48, 49, 50, 51, 52, -1, - 54, -1, 56, 57, -1, 59, 60, -1, -1, -1, + 127, -1, -1, -1, -1, 132, -1, -1, -1, -1, + -1, -1, 114, 115, 116, 117, 118, 119, 120, 121, + 122, 123, 124, 125, 126, 127, -1, -1, -1, -1, + 132, 114, 115, 116, 117, 118, 119, 120, 121, 122, + 123, 124, 125, 126, 127, -1, 0, 1, -1, 132, + 4, -1, -1, -1, -1, -1, -1, -1, 12, 13, -1, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, -1, -1, -1, -1, 132, - -1, -1, -1, 87, 88, 89, 139, -1, 141, 114, + -1, 35, -1, -1, -1, -1, 40, 41, 141, 43, + 44, 45, 46, 47, 48, 49, 50, 51, 52, -1, + 54, 55, 56, 57, 58, 59, 60, -1, -1, -1, + 64, 65, 66, 67, 68, 69, 70, -1, 72, 73, + 74, 75, 76, 77, -1, -1, 80, 81, 4, -1, + -1, -1, 86, 87, 88, 89, 12, 13, 92, -1, + 94, -1, 96, 97, 98, 99, 100, 101, 102, 103, + 104, 105, -1, -1, -1, -1, -1, -1, -1, 35, + -1, -1, -1, -1, 40, 41, -1, 43, 44, 45, + 46, 47, 48, 49, 50, 51, 52, -1, 54, 55, + 56, 57, 58, 59, 60, -1, -1, -1, 64, 65, + 66, 67, 68, 69, 70, -1, 72, 73, 74, 75, + 76, 77, 12, 13, 80, 81, -1, -1, -1, -1, + 86, 87, 88, 89, -1, -1, 92, -1, 94, -1, + 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, + -1, -1, -1, 43, 44, 45, 46, 47, 48, 49, + 50, 51, 52, -1, 54, -1, 56, 57, -1, 59, + 60, -1, -1, -1, -1, 114, 115, 116, 117, 118, + 119, 120, 121, 122, 123, 124, 125, 126, 127, -1, + -1, -1, -1, 132, -1, -1, -1, 87, 88, 89, + 139, -1, 141, 114, 115, 116, 117, 118, 119, 120, + 121, 122, 123, 124, 125, 126, 127, -1, -1, -1, + -1, 132, -1, -1, -1, -1, -1, -1, 139, -1, + 141, 114, 115, 116, 117, 118, 119, 120, 121, 122, + 123, 124, 125, 126, 127, -1, -1, -1, -1, 132, + -1, -1, -1, -1, -1, -1, 139, -1, 141, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, -1, -1, -1, -1, 132, -1, -1, - -1, -1, -1, -1, 139, -1, 141, 114, 115, 116, + -1, -1, -1, -1, -1, -1, 141, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, -1, -1, -1, -1, 132, -1, -1, -1, -1, -1, -1, -1, -1, 141, 114, 115, 116, 117, 118, @@ -2445,15 +2457,7 @@ static const yytype_int16 yycheck[] = -1, 132, -1, -1, -1, -1, -1, -1, -1, -1, 141, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, -1, -1, -1, -1, 132, - -1, -1, -1, -1, -1, -1, -1, -1, 141, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, 126, 127, -1, -1, -1, -1, 132, -1, 134, - -1, -1, -1, -1, 139, 114, 115, 116, 117, 118, - 119, 120, 121, 122, 123, 124, 125, 126, 127, -1, - -1, -1, -1, 132, -1, -1, -1, -1, -1, -1, - 139, 114, 115, 116, 117, 118, 119, 120, 121, 122, - 123, 124, 125, 126, 127, -1, -1, -1, -1, 132, - -1, -1, -1, -1, -1, -1, 139, 114, 115, 116, + -1, 134, -1, -1, -1, -1, 139, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, -1, -1, -1, -1, 132, -1, -1, -1, -1, -1, -1, 139, 114, 115, 116, 117, 118, 119, 120, @@ -2526,14 +2530,10 @@ static const yytype_int16 yycheck[] = -1, 132, -1, -1, -1, -1, -1, -1, 139, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, -1, -1, -1, -1, 132, -1, -1, - -1, 136, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, 127, -1, -1, -1, -1, - 132, -1, -1, -1, 136, 114, 115, 116, 117, 118, + -1, -1, -1, -1, 139, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, -1, - -1, -1, -1, 132, -1, -1, -1, 136, 114, 115, - 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, 127, -1, -1, -1, -1, 132, -1, -1, -1, - 136, 114, 115, 116, 117, 118, 119, 120, 121, 122, + -1, -1, -1, 132, -1, -1, -1, -1, -1, -1, + 139, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, -1, -1, -1, -1, 132, -1, -1, -1, 136, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, -1, -1, @@ -2601,6 +2601,15 @@ static const yytype_int16 yycheck[] = 119, 120, 121, 122, 123, 124, 125, 126, 127, -1, -1, -1, -1, 132, -1, -1, -1, 136, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, + 126, 127, -1, -1, -1, -1, 132, -1, -1, -1, + 136, 114, 115, 116, 117, 118, 119, 120, 121, 122, + 123, 124, 125, 126, 127, -1, -1, -1, -1, 132, + -1, -1, -1, 136, 114, 115, 116, 117, 118, 119, + 120, 121, 122, 123, 124, 125, 126, 127, -1, -1, + -1, -1, 132, -1, -1, -1, 136, 114, 115, 116, + 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, + 127, -1, -1, -1, -1, 132, -1, 134, 114, 115, + 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, -1, -1, -1, -1, 132, -1, 134, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, -1, -1, -1, -1, 132, -1, 134, @@ -2696,9 +2705,7 @@ static const yytype_int16 yycheck[] = 122, 123, 124, 125, 126, 127, -1, -1, -1, -1, 132, -1, 134, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, -1, -1, -1, - -1, 132, -1, 134, 114, 115, 116, 117, 118, 119, - 120, 121, 122, 123, 124, 125, 126, 127, -1, -1, - -1, -1, 132, -1, 134 + -1, 132, -1, 134 }; /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing @@ -2712,124 +2719,124 @@ static const yytype_uint8 yystos[] = 76, 77, 80, 81, 86, 87, 88, 89, 92, 94, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 146, 148, 149, 167, 170, 171, 174, 175, 176, 177, - 178, 179, 196, 197, 198, 3, 4, 5, 7, 9, + 178, 179, 195, 196, 197, 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, 100, 106, 107, 108, 109, 110, 111, 112, 113, 123, 124, 128, - 130, 131, 133, 135, 137, 138, 165, 166, 199, 200, - 211, 13, 49, 133, 6, 140, 6, 133, 140, 133, + 130, 131, 133, 135, 137, 138, 165, 166, 198, 199, + 210, 13, 49, 133, 6, 140, 6, 133, 140, 133, 133, 71, 133, 140, 133, 133, 71, 140, 133, 133, 53, 49, 133, 49, 49, 49, 46, 49, 51, 51, 43, 46, 49, 51, 133, 140, 123, 124, 133, 140, - 201, 202, 201, 140, 4, 43, 46, 49, 140, 201, - 140, 49, 49, 4, 100, 140, 6, 46, 140, 4, - 4, 4, 133, 133, 133, 4, 140, 207, 4, 133, - 133, 6, 135, 4, 4, 4, 5, 140, 210, 211, - 140, 210, 4, 135, 137, 142, 166, 140, 211, 133, - 135, 133, 135, 133, 135, 133, 135, 133, 135, 133, - 135, 133, 135, 133, 135, 133, 135, 133, 135, 133, - 135, 133, 135, 133, 135, 133, 135, 133, 135, 133, - 135, 133, 135, 133, 135, 133, 135, 133, 135, 133, - 135, 133, 133, 133, 133, 7, 133, 4, 199, 199, - 199, 199, 136, 140, 199, 4, 92, 93, 4, 199, - 6, 6, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, 127, 132, 6, 6, 199, - 5, 199, 199, 4, 43, 124, 171, 179, 199, 205, - 206, 199, 199, 133, 199, 206, 199, 199, 133, 206, - 199, 199, 124, 140, 199, 204, 205, 133, 199, 140, - 133, 133, 204, 140, 140, 133, 133, 133, 133, 133, - 4, 201, 201, 201, 199, 199, 123, 124, 140, 140, - 201, 135, 140, 140, 140, 123, 124, 133, 173, 201, - 140, 171, 172, 173, 204, 204, 4, 6, 135, 135, - 173, 140, 172, 135, 135, 6, 199, 199, 199, 137, - 199, 140, 95, 199, 199, 199, 6, 173, 6, 173, - 6, 135, 199, 4, 140, 150, 6, 199, 199, 199, - 199, 199, 199, 199, 199, 199, 199, 199, 199, 199, - 199, 199, 199, 199, 199, 199, 199, 199, 199, 199, - 199, 199, 199, 199, 199, 199, 199, 199, 199, 199, - 199, 199, 199, 199, 199, 199, 199, 199, 199, 4, - 210, 210, 210, 210, 199, 5, 135, 134, 7, 113, - 206, 136, 7, 165, 166, 137, 7, 135, 6, 199, - 199, 199, 199, 199, 199, 199, 199, 199, 199, 199, - 199, 199, 199, 199, 6, 134, 139, 139, 134, 135, - 140, 199, 205, 8, 125, 139, 141, 134, 134, 199, - 134, 141, 134, 134, 199, 141, 134, 134, 140, 141, - 206, 125, 7, 199, 134, 199, 199, 199, 7, 199, - 199, 199, 168, 199, 211, 168, 168, 168, 134, 139, - 139, 139, 201, 201, 172, 172, 139, 199, 199, 199, - 199, 199, 43, 46, 49, 51, 170, 183, 139, 173, - 141, 6, 7, 7, 6, 199, 199, 141, 206, 141, - 199, 199, 134, 134, 134, 92, 139, 173, 140, 8, - 134, 136, 141, 141, 199, 136, 166, 199, 4, 82, - 83, 84, 85, 141, 153, 157, 160, 162, 163, 134, - 136, 134, 136, 134, 136, 134, 136, 134, 136, 134, - 136, 134, 136, 134, 136, 134, 136, 134, 136, 134, - 136, 139, 139, 134, 136, 134, 136, 134, 136, 134, - 136, 134, 136, 134, 136, 139, 139, 139, 139, 139, - 139, 135, 137, 134, 139, 139, 134, 134, 6, 139, - 199, 204, 204, 141, 7, 137, 165, 166, 211, 199, - 6, 4, 4, 140, 208, 136, 8, 6, 120, 147, - 206, 199, 7, 136, 140, 199, 199, 199, 205, 199, - 205, 95, 7, 7, 134, 7, 95, 7, 7, 134, - 95, 7, 7, 206, 141, 140, 199, 134, 7, 141, - 134, 134, 199, 141, 141, 134, 134, 134, 134, 134, - 137, 201, 199, 199, 141, 141, 199, 136, 139, 139, - 139, 140, 140, 140, 140, 72, 78, 79, 194, 195, - 201, 141, 180, 199, 199, 136, 136, 141, 136, 136, - 7, 7, 7, 137, 199, 141, 199, 199, 7, 137, - 136, 137, 166, 210, 141, 154, 133, 133, 140, 164, - 6, 199, 199, 199, 199, 199, 199, 199, 199, 199, - 4, 206, 210, 199, 136, 6, 6, 136, 4, 92, - 93, 199, 6, 6, 6, 7, 135, 207, 209, 6, - 199, 120, 210, 134, 139, 201, 206, 141, 8, 49, - 204, 204, 7, 204, 49, 51, 204, 204, 7, 51, - 204, 204, 141, 206, 6, 7, 140, 7, 7, 7, - 6, 61, 7, 7, 7, 7, 7, 7, 7, 4, - 139, 139, 139, 141, 140, 201, 201, 201, 206, 206, - 206, 206, 6, 140, 133, 141, 195, 139, 194, 6, - 6, 6, 6, 49, 6, 6, 204, 204, 204, 4, - 139, 8, 8, 134, 4, 4, 6, 4, 6, 133, - 199, 199, 203, 204, 140, 134, 136, 134, 136, 134, - 136, 134, 136, 136, 134, 134, 134, 134, 165, 7, - 165, 166, 137, 7, 6, 207, 199, 139, 141, 6, - 6, 147, 199, 6, 141, 199, 140, 6, 56, 6, - 56, 204, 6, 140, 140, 6, 6, 204, 140, 6, - 6, 141, 5, 199, 204, 204, 204, 62, 63, 204, - 204, 204, 204, 204, 204, 204, 6, 7, 199, 199, - 199, 140, 173, 139, 141, 139, 141, 139, 141, 141, - 141, 141, 141, 199, 204, 199, 199, 201, 141, 140, - 6, 6, 91, 199, 199, 199, 6, 7, 166, 151, - 199, 139, 139, 139, 141, 152, 199, 137, 204, 211, - 199, 6, 4, 208, 6, 136, 207, 210, 139, 136, - 199, 201, 201, 6, 199, 199, 6, 199, 5, 139, - 6, 6, 95, 169, 199, 199, 4, 6, 6, 6, - 6, 6, 6, 6, 199, 211, 141, 134, 139, 141, - 172, 184, 201, 6, 185, 201, 6, 186, 201, 6, - 187, 6, 6, 6, 6, 141, 139, 134, 141, 139, - 199, 204, 139, 141, 8, 141, 134, 140, 199, 211, - 134, 139, 199, 199, 204, 140, 139, 141, 4, 6, - 6, 6, 7, 6, 137, 6, 199, 141, 6, 6, - 141, 141, 141, 5, 199, 47, 6, 6, 6, 6, - 6, 6, 140, 199, 141, 194, 139, 140, 139, 140, - 139, 140, 6, 204, 7, 140, 199, 141, 90, 199, - 199, 206, 6, 6, 155, 199, 139, 139, 203, 199, - 6, 134, 207, 93, 139, 6, 6, 6, 6, 6, - 139, 140, 172, 139, 141, 141, 199, 201, 194, 199, - 201, 194, 199, 201, 194, 139, 141, 204, 173, 141, - 199, 141, 141, 141, 140, 199, 199, 141, 6, 199, - 5, 199, 141, 199, 141, 139, 141, 141, 139, 141, - 141, 139, 141, 204, 6, 61, 141, 181, 140, 6, - 6, 152, 134, 139, 6, 140, 139, 139, 141, 141, - 6, 188, 199, 6, 6, 189, 199, 6, 6, 190, - 199, 6, 141, 199, 194, 173, 141, 158, 199, 203, - 199, 5, 140, 141, 140, 141, 140, 141, 6, 6, - 141, 141, 182, 6, 140, 134, 141, 141, 139, 194, - 6, 191, 194, 6, 192, 194, 6, 193, 194, 156, - 210, 161, 140, 6, 5, 141, 140, 141, 140, 141, - 140, 141, 139, 141, 140, 203, 141, 6, 194, 6, - 194, 6, 194, 210, 6, 159, 210, 141, 6, 141, - 141, 141, 139, 141, 6, 6, 6, 6, 210, 6 + 200, 201, 200, 140, 43, 46, 49, 140, 200, 140, + 49, 49, 4, 100, 140, 6, 46, 140, 4, 4, + 4, 133, 133, 133, 4, 140, 206, 4, 133, 133, + 6, 135, 4, 4, 4, 5, 140, 209, 210, 140, + 209, 4, 135, 137, 142, 166, 140, 210, 133, 135, + 133, 135, 133, 135, 133, 135, 133, 135, 133, 135, + 133, 135, 133, 135, 133, 135, 133, 135, 133, 135, + 133, 135, 133, 135, 133, 135, 133, 135, 133, 135, + 133, 135, 133, 135, 133, 135, 133, 135, 133, 135, + 133, 133, 133, 133, 7, 133, 4, 198, 198, 198, + 198, 136, 140, 198, 4, 92, 93, 4, 198, 6, + 6, 114, 115, 116, 117, 118, 119, 120, 121, 122, + 123, 124, 125, 126, 127, 132, 6, 6, 198, 5, + 198, 198, 4, 43, 124, 171, 179, 198, 204, 205, + 198, 198, 133, 198, 205, 198, 198, 133, 205, 198, + 198, 124, 140, 198, 203, 204, 133, 198, 140, 133, + 133, 203, 140, 140, 133, 133, 133, 133, 133, 4, + 200, 200, 200, 198, 198, 123, 124, 140, 140, 200, + 140, 140, 140, 123, 124, 133, 173, 200, 140, 171, + 172, 173, 203, 203, 4, 6, 135, 135, 173, 140, + 172, 135, 135, 6, 198, 198, 198, 137, 198, 140, + 95, 198, 198, 198, 6, 173, 6, 173, 6, 135, + 198, 4, 140, 150, 6, 198, 198, 198, 198, 198, + 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, + 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, + 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, + 198, 198, 198, 198, 198, 198, 198, 4, 209, 209, + 209, 209, 198, 5, 135, 134, 7, 113, 205, 136, + 7, 165, 166, 137, 7, 135, 6, 198, 198, 198, + 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, + 198, 198, 6, 134, 139, 139, 134, 135, 140, 198, + 204, 8, 125, 139, 141, 134, 134, 198, 134, 141, + 134, 134, 198, 141, 134, 134, 140, 141, 205, 125, + 7, 198, 134, 198, 198, 198, 7, 198, 198, 198, + 168, 198, 210, 168, 168, 168, 134, 139, 139, 139, + 200, 200, 172, 172, 139, 198, 198, 198, 198, 43, + 46, 49, 51, 170, 183, 139, 173, 141, 6, 7, + 7, 6, 198, 198, 141, 205, 141, 198, 198, 134, + 134, 134, 92, 139, 173, 140, 8, 134, 136, 141, + 141, 198, 136, 166, 198, 4, 82, 83, 84, 85, + 141, 153, 157, 160, 162, 163, 134, 136, 134, 136, + 134, 136, 134, 136, 134, 136, 134, 136, 134, 136, + 134, 136, 134, 136, 134, 136, 134, 136, 139, 139, + 134, 136, 134, 136, 134, 136, 134, 136, 134, 136, + 134, 136, 139, 139, 139, 139, 139, 139, 135, 137, + 134, 139, 139, 134, 134, 6, 139, 198, 203, 203, + 141, 7, 137, 165, 166, 210, 198, 6, 4, 4, + 140, 207, 136, 8, 6, 120, 147, 205, 198, 7, + 136, 140, 198, 198, 198, 204, 198, 204, 95, 7, + 7, 134, 7, 95, 7, 7, 134, 95, 7, 7, + 205, 141, 140, 198, 134, 7, 141, 134, 134, 198, + 141, 141, 134, 134, 134, 134, 134, 137, 200, 198, + 198, 141, 141, 198, 139, 139, 139, 140, 140, 140, + 140, 72, 78, 79, 193, 194, 200, 141, 180, 198, + 198, 136, 136, 141, 136, 136, 7, 7, 7, 137, + 198, 141, 198, 198, 7, 137, 136, 137, 166, 209, + 141, 154, 133, 133, 140, 164, 6, 198, 198, 198, + 198, 198, 198, 198, 198, 198, 4, 205, 209, 198, + 136, 6, 6, 136, 4, 92, 93, 198, 6, 6, + 6, 7, 135, 206, 208, 6, 198, 120, 209, 134, + 139, 200, 205, 141, 8, 49, 203, 203, 7, 203, + 49, 51, 203, 203, 7, 51, 203, 203, 141, 205, + 6, 7, 140, 7, 7, 7, 6, 61, 7, 7, + 7, 7, 7, 7, 7, 4, 139, 139, 139, 141, + 200, 200, 200, 205, 205, 205, 205, 6, 140, 133, + 141, 194, 139, 193, 6, 6, 6, 6, 49, 6, + 6, 203, 203, 203, 4, 139, 8, 8, 134, 4, + 4, 6, 4, 6, 133, 198, 198, 202, 203, 140, + 134, 136, 134, 136, 134, 136, 134, 136, 136, 134, + 134, 134, 134, 165, 7, 165, 166, 137, 7, 6, + 206, 198, 139, 141, 6, 6, 147, 198, 6, 141, + 198, 140, 6, 56, 6, 56, 203, 6, 140, 140, + 6, 6, 203, 140, 6, 6, 141, 5, 198, 203, + 203, 203, 62, 63, 203, 203, 203, 203, 203, 203, + 203, 6, 7, 198, 198, 198, 140, 139, 141, 139, + 141, 139, 141, 141, 141, 141, 141, 198, 203, 198, + 198, 200, 141, 140, 6, 6, 91, 198, 198, 198, + 6, 7, 166, 151, 198, 139, 139, 139, 141, 152, + 198, 137, 203, 210, 198, 6, 4, 207, 6, 136, + 206, 209, 139, 136, 198, 200, 200, 6, 198, 198, + 6, 198, 5, 139, 6, 6, 95, 169, 198, 198, + 4, 6, 6, 6, 6, 6, 6, 6, 198, 210, + 141, 134, 139, 141, 172, 200, 6, 184, 200, 6, + 185, 200, 6, 186, 6, 6, 6, 6, 141, 139, + 134, 141, 139, 198, 203, 139, 141, 8, 141, 134, + 140, 198, 210, 134, 139, 198, 198, 203, 140, 139, + 141, 4, 6, 6, 6, 7, 6, 137, 6, 198, + 141, 6, 6, 141, 141, 141, 5, 198, 47, 6, + 6, 6, 6, 6, 6, 140, 198, 141, 139, 140, + 139, 140, 139, 140, 6, 203, 7, 140, 198, 141, + 90, 198, 198, 205, 6, 6, 155, 198, 139, 139, + 202, 198, 6, 134, 206, 93, 139, 6, 6, 6, + 6, 6, 139, 140, 172, 139, 141, 198, 200, 193, + 198, 200, 193, 198, 200, 193, 139, 141, 203, 173, + 141, 198, 141, 141, 141, 140, 198, 198, 141, 6, + 198, 5, 198, 141, 198, 141, 139, 141, 141, 139, + 141, 141, 139, 141, 203, 6, 61, 141, 181, 140, + 6, 6, 152, 134, 139, 6, 140, 139, 139, 141, + 141, 6, 187, 198, 6, 6, 188, 198, 6, 6, + 189, 198, 6, 141, 198, 193, 173, 141, 158, 198, + 202, 198, 5, 140, 141, 140, 141, 140, 141, 6, + 6, 141, 141, 182, 6, 140, 134, 141, 141, 139, + 193, 6, 190, 193, 6, 191, 193, 6, 192, 193, + 156, 209, 161, 140, 6, 5, 141, 140, 141, 140, + 141, 140, 141, 139, 141, 140, 202, 141, 6, 193, + 6, 193, 6, 193, 209, 6, 159, 209, 141, 6, + 141, 141, 141, 139, 141, 6, 6, 6, 6, 209, + 6 }; #define yyerrok (yyerrstatus = 0) @@ -5406,13 +5413,13 @@ yyreduce: List_Read((yyvsp[(4) - (6)].l), i, &d); Shape TheShape; TheShape.Num = (int)d; - Vertex *v = FindPoint(TheShape.Num); + Vertex *v = FindPoint(std::abs(TheShape.Num)); if(v){ TheShape.Type = MSH_POINT; List_Add((yyval.l), &TheShape); } else{ - GVertex *gv = GModel::current()->getVertexByTag(TheShape.Num); + GVertex *gv = GModel::current()->getVertexByTag(std::abs(TheShape.Num)); if(gv){ TheShape.Type = MSH_POINT_FROM_GMODEL; List_Add((yyval.l), &TheShape); @@ -5432,13 +5439,13 @@ yyreduce: List_Read((yyvsp[(4) - (6)].l), i, &d); Shape TheShape; TheShape.Num = (int)d; - Curve *c = FindCurve(TheShape.Num); + Curve *c = FindCurve(std::abs(TheShape.Num)); if(c){ TheShape.Type = c->Typ; List_Add((yyval.l), &TheShape); } else{ - GEdge *ge = GModel::current()->getEdgeByTag(TheShape.Num); + GEdge *ge = GModel::current()->getEdgeByTag(std::abs(TheShape.Num)); if(ge){ TheShape.Type = MSH_SEGM_FROM_GMODEL; List_Add((yyval.l), &TheShape); @@ -5458,13 +5465,13 @@ yyreduce: List_Read((yyvsp[(4) - (6)].l), i, &d); Shape TheShape; TheShape.Num = (int)d; - Surface *s = FindSurface(TheShape.Num); + Surface *s = FindSurface(std::abs(TheShape.Num)); if(s){ TheShape.Type = s->Typ; List_Add((yyval.l), &TheShape); } else{ - GFace *gf = GModel::current()->getFaceByTag(TheShape.Num); + GFace *gf = GModel::current()->getFaceByTag(std::abs(TheShape.Num)); if(gf){ TheShape.Type = MSH_SURF_FROM_GMODEL; List_Add((yyval.l), &TheShape); @@ -5484,13 +5491,13 @@ yyreduce: List_Read((yyvsp[(4) - (6)].l), i, &d); Shape TheShape; TheShape.Num = (int)d; - Volume *v = FindVolume(TheShape.Num); + Volume *v = FindVolume(std::abs(TheShape.Num)); if(v){ TheShape.Type = v->Typ; List_Add((yyval.l), &TheShape); } else{ - GRegion *gr = GModel::current()->getRegionByTag(TheShape.Num); + GRegion *gr = GModel::current()->getRegionByTag(std::abs(TheShape.Num)); if(gr){ TheShape.Type = MSH_VOLUME_FROM_GMODEL; List_Add((yyval.l), &TheShape); @@ -6090,22 +6097,22 @@ yyreduce: break; case 173: -#line 2229 "Gmsh.y" +#line 2231 "Gmsh.y" { - extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; + (yyval.l) = List_Create(2, 1, sizeof(Shape)); + ExtrudeShape(TRANSLATE, MSH_POINT, (int)(yyvsp[(4) - (8)].d), + (yyvsp[(6) - (8)].v)[0], (yyvsp[(6) - (8)].v)[1], (yyvsp[(6) - (8)].v)[2], 0., 0., 0., 0., 0., 0., 0., + NULL, (yyval.l)); ;} break; case 174: -#line 2233 "Gmsh.y" +#line 2238 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); - extr.mesh.ViewIndex = (int)(yyvsp[(4) - (10)].d); - ExtrudeShapes(BOUNDARY_LAYER, (yyvsp[(7) - (10)].l), 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., - &extr, (yyval.l)); - extr.mesh.ViewIndex = -1; - Free((yyvsp[(2) - (10)].c)); - List_Delete((yyvsp[(7) - (10)].l)); + ExtrudeShape(TRANSLATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (8)].d), + (yyvsp[(6) - (8)].v)[0], (yyvsp[(6) - (8)].v)[1], (yyvsp[(6) - (8)].v)[2], 0., 0., 0., 0., 0., 0., 0., + NULL, (yyval.l)); ;} break; @@ -6113,7 +6120,7 @@ yyreduce: #line 2245 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); - ExtrudeShape(TRANSLATE, MSH_POINT, (int)(yyvsp[(4) - (8)].d), + ExtrudeShape(TRANSLATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (8)].d), (yyvsp[(6) - (8)].v)[0], (yyvsp[(6) - (8)].v)[1], (yyvsp[(6) - (8)].v)[2], 0., 0., 0., 0., 0., 0., 0., NULL, (yyval.l)); ;} @@ -6123,8 +6130,8 @@ yyreduce: #line 2252 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); - ExtrudeShape(TRANSLATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (8)].d), - (yyvsp[(6) - (8)].v)[0], (yyvsp[(6) - (8)].v)[1], (yyvsp[(6) - (8)].v)[2], 0., 0., 0., 0., 0., 0., 0., + ExtrudeShape(ROTATE, MSH_POINT, (int)(yyvsp[(4) - (12)].d), + 0., 0., 0., (yyvsp[(6) - (12)].v)[0], (yyvsp[(6) - (12)].v)[1], (yyvsp[(6) - (12)].v)[2], (yyvsp[(8) - (12)].v)[0], (yyvsp[(8) - (12)].v)[1], (yyvsp[(8) - (12)].v)[2], (yyvsp[(10) - (12)].d), NULL, (yyval.l)); ;} break; @@ -6133,8 +6140,8 @@ yyreduce: #line 2259 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); - ExtrudeShape(TRANSLATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (8)].d), - (yyvsp[(6) - (8)].v)[0], (yyvsp[(6) - (8)].v)[1], (yyvsp[(6) - (8)].v)[2], 0., 0., 0., 0., 0., 0., 0., + ExtrudeShape(ROTATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (12)].d), + 0., 0., 0., (yyvsp[(6) - (12)].v)[0], (yyvsp[(6) - (12)].v)[1], (yyvsp[(6) - (12)].v)[2], (yyvsp[(8) - (12)].v)[0], (yyvsp[(8) - (12)].v)[1], (yyvsp[(8) - (12)].v)[2], (yyvsp[(10) - (12)].d), NULL, (yyval.l)); ;} break; @@ -6143,7 +6150,7 @@ yyreduce: #line 2266 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); - ExtrudeShape(ROTATE, MSH_POINT, (int)(yyvsp[(4) - (12)].d), + ExtrudeShape(ROTATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (12)].d), 0., 0., 0., (yyvsp[(6) - (12)].v)[0], (yyvsp[(6) - (12)].v)[1], (yyvsp[(6) - (12)].v)[2], (yyvsp[(8) - (12)].v)[0], (yyvsp[(8) - (12)].v)[1], (yyvsp[(8) - (12)].v)[2], (yyvsp[(10) - (12)].d), NULL, (yyval.l)); ;} @@ -6153,8 +6160,8 @@ yyreduce: #line 2273 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); - ExtrudeShape(ROTATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (12)].d), - 0., 0., 0., (yyvsp[(6) - (12)].v)[0], (yyvsp[(6) - (12)].v)[1], (yyvsp[(6) - (12)].v)[2], (yyvsp[(8) - (12)].v)[0], (yyvsp[(8) - (12)].v)[1], (yyvsp[(8) - (12)].v)[2], (yyvsp[(10) - (12)].d), + ExtrudeShape(TRANSLATE_ROTATE, MSH_POINT, (int)(yyvsp[(4) - (14)].d), + (yyvsp[(6) - (14)].v)[0], (yyvsp[(6) - (14)].v)[1], (yyvsp[(6) - (14)].v)[2], (yyvsp[(8) - (14)].v)[0], (yyvsp[(8) - (14)].v)[1], (yyvsp[(8) - (14)].v)[2], (yyvsp[(10) - (14)].v)[0], (yyvsp[(10) - (14)].v)[1], (yyvsp[(10) - (14)].v)[2], (yyvsp[(12) - (14)].d), NULL, (yyval.l)); ;} break; @@ -6163,8 +6170,8 @@ yyreduce: #line 2280 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); - ExtrudeShape(ROTATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (12)].d), - 0., 0., 0., (yyvsp[(6) - (12)].v)[0], (yyvsp[(6) - (12)].v)[1], (yyvsp[(6) - (12)].v)[2], (yyvsp[(8) - (12)].v)[0], (yyvsp[(8) - (12)].v)[1], (yyvsp[(8) - (12)].v)[2], (yyvsp[(10) - (12)].d), + ExtrudeShape(TRANSLATE_ROTATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (14)].d), + (yyvsp[(6) - (14)].v)[0], (yyvsp[(6) - (14)].v)[1], (yyvsp[(6) - (14)].v)[2], (yyvsp[(8) - (14)].v)[0], (yyvsp[(8) - (14)].v)[1], (yyvsp[(8) - (14)].v)[2], (yyvsp[(10) - (14)].v)[0], (yyvsp[(10) - (14)].v)[1], (yyvsp[(10) - (14)].v)[2], (yyvsp[(12) - (14)].d), NULL, (yyval.l)); ;} break; @@ -6173,7 +6180,7 @@ yyreduce: #line 2287 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); - ExtrudeShape(TRANSLATE_ROTATE, MSH_POINT, (int)(yyvsp[(4) - (14)].d), + ExtrudeShape(TRANSLATE_ROTATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (14)].d), (yyvsp[(6) - (14)].v)[0], (yyvsp[(6) - (14)].v)[1], (yyvsp[(6) - (14)].v)[2], (yyvsp[(8) - (14)].v)[0], (yyvsp[(8) - (14)].v)[1], (yyvsp[(8) - (14)].v)[2], (yyvsp[(10) - (14)].v)[0], (yyvsp[(10) - (14)].v)[1], (yyvsp[(10) - (14)].v)[2], (yyvsp[(12) - (14)].d), NULL, (yyval.l)); ;} @@ -6182,190 +6189,170 @@ yyreduce: case 182: #line 2294 "Gmsh.y" { - (yyval.l) = List_Create(2, 1, sizeof(Shape)); - ExtrudeShape(TRANSLATE_ROTATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (14)].d), - (yyvsp[(6) - (14)].v)[0], (yyvsp[(6) - (14)].v)[1], (yyvsp[(6) - (14)].v)[2], (yyvsp[(8) - (14)].v)[0], (yyvsp[(8) - (14)].v)[1], (yyvsp[(8) - (14)].v)[2], (yyvsp[(10) - (14)].v)[0], (yyvsp[(10) - (14)].v)[1], (yyvsp[(10) - (14)].v)[2], (yyvsp[(12) - (14)].d), - NULL, (yyval.l)); + extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; ;} break; case 183: -#line 2301 "Gmsh.y" +#line 2298 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); - ExtrudeShape(TRANSLATE_ROTATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (14)].d), - (yyvsp[(6) - (14)].v)[0], (yyvsp[(6) - (14)].v)[1], (yyvsp[(6) - (14)].v)[2], (yyvsp[(8) - (14)].v)[0], (yyvsp[(8) - (14)].v)[1], (yyvsp[(8) - (14)].v)[2], (yyvsp[(10) - (14)].v)[0], (yyvsp[(10) - (14)].v)[1], (yyvsp[(10) - (14)].v)[2], (yyvsp[(12) - (14)].d), - NULL, (yyval.l)); + ExtrudeShape(TRANSLATE, MSH_POINT, (int)(yyvsp[(4) - (12)].d), + (yyvsp[(6) - (12)].v)[0], (yyvsp[(6) - (12)].v)[1], (yyvsp[(6) - (12)].v)[2], 0., 0., 0., 0., 0., 0., 0., + &extr, (yyval.l)); ;} break; case 184: -#line 2308 "Gmsh.y" +#line 2305 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; ;} break; case 185: -#line 2312 "Gmsh.y" +#line 2309 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); - ExtrudeShape(TRANSLATE, MSH_POINT, (int)(yyvsp[(4) - (12)].d), + ExtrudeShape(TRANSLATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (12)].d), (yyvsp[(6) - (12)].v)[0], (yyvsp[(6) - (12)].v)[1], (yyvsp[(6) - (12)].v)[2], 0., 0., 0., 0., 0., 0., 0., &extr, (yyval.l)); ;} break; case 186: -#line 2319 "Gmsh.y" +#line 2316 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; ;} break; case 187: -#line 2323 "Gmsh.y" +#line 2320 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); - ExtrudeShape(TRANSLATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (12)].d), + ExtrudeShape(TRANSLATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (12)].d), (yyvsp[(6) - (12)].v)[0], (yyvsp[(6) - (12)].v)[1], (yyvsp[(6) - (12)].v)[2], 0., 0., 0., 0., 0., 0., 0., &extr, (yyval.l)); ;} break; case 188: -#line 2330 "Gmsh.y" +#line 2327 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; ;} break; case 189: -#line 2334 "Gmsh.y" +#line 2331 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); - ExtrudeShape(TRANSLATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (12)].d), - (yyvsp[(6) - (12)].v)[0], (yyvsp[(6) - (12)].v)[1], (yyvsp[(6) - (12)].v)[2], 0., 0., 0., 0., 0., 0., 0., + ExtrudeShape(ROTATE, MSH_POINT, (int)(yyvsp[(4) - (16)].d), + 0., 0., 0., (yyvsp[(6) - (16)].v)[0], (yyvsp[(6) - (16)].v)[1], (yyvsp[(6) - (16)].v)[2], (yyvsp[(8) - (16)].v)[0], (yyvsp[(8) - (16)].v)[1], (yyvsp[(8) - (16)].v)[2], (yyvsp[(10) - (16)].d), &extr, (yyval.l)); ;} break; case 190: -#line 2341 "Gmsh.y" +#line 2338 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; ;} break; case 191: -#line 2345 "Gmsh.y" +#line 2342 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); - ExtrudeShape(ROTATE, MSH_POINT, (int)(yyvsp[(4) - (16)].d), + ExtrudeShape(ROTATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (16)].d), 0., 0., 0., (yyvsp[(6) - (16)].v)[0], (yyvsp[(6) - (16)].v)[1], (yyvsp[(6) - (16)].v)[2], (yyvsp[(8) - (16)].v)[0], (yyvsp[(8) - (16)].v)[1], (yyvsp[(8) - (16)].v)[2], (yyvsp[(10) - (16)].d), &extr, (yyval.l)); ;} break; case 192: -#line 2352 "Gmsh.y" +#line 2349 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; ;} break; case 193: -#line 2356 "Gmsh.y" +#line 2353 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); - ExtrudeShape(ROTATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (16)].d), + ExtrudeShape(ROTATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (16)].d), 0., 0., 0., (yyvsp[(6) - (16)].v)[0], (yyvsp[(6) - (16)].v)[1], (yyvsp[(6) - (16)].v)[2], (yyvsp[(8) - (16)].v)[0], (yyvsp[(8) - (16)].v)[1], (yyvsp[(8) - (16)].v)[2], (yyvsp[(10) - (16)].d), &extr, (yyval.l)); ;} break; case 194: -#line 2363 "Gmsh.y" +#line 2360 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; ;} break; case 195: -#line 2367 "Gmsh.y" +#line 2364 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); - ExtrudeShape(ROTATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (16)].d), - 0., 0., 0., (yyvsp[(6) - (16)].v)[0], (yyvsp[(6) - (16)].v)[1], (yyvsp[(6) - (16)].v)[2], (yyvsp[(8) - (16)].v)[0], (yyvsp[(8) - (16)].v)[1], (yyvsp[(8) - (16)].v)[2], (yyvsp[(10) - (16)].d), + ExtrudeShape(TRANSLATE_ROTATE, MSH_POINT, (int)(yyvsp[(4) - (18)].d), + (yyvsp[(6) - (18)].v)[0], (yyvsp[(6) - (18)].v)[1], (yyvsp[(6) - (18)].v)[2], (yyvsp[(8) - (18)].v)[0], (yyvsp[(8) - (18)].v)[1], (yyvsp[(8) - (18)].v)[2], (yyvsp[(10) - (18)].v)[0], (yyvsp[(10) - (18)].v)[1], (yyvsp[(10) - (18)].v)[2], (yyvsp[(12) - (18)].d), &extr, (yyval.l)); ;} break; case 196: -#line 2374 "Gmsh.y" +#line 2371 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; ;} break; case 197: -#line 2378 "Gmsh.y" +#line 2375 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); - ExtrudeShape(TRANSLATE_ROTATE, MSH_POINT, (int)(yyvsp[(4) - (18)].d), + ExtrudeShape(TRANSLATE_ROTATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (18)].d), (yyvsp[(6) - (18)].v)[0], (yyvsp[(6) - (18)].v)[1], (yyvsp[(6) - (18)].v)[2], (yyvsp[(8) - (18)].v)[0], (yyvsp[(8) - (18)].v)[1], (yyvsp[(8) - (18)].v)[2], (yyvsp[(10) - (18)].v)[0], (yyvsp[(10) - (18)].v)[1], (yyvsp[(10) - (18)].v)[2], (yyvsp[(12) - (18)].d), &extr, (yyval.l)); ;} break; case 198: -#line 2385 "Gmsh.y" +#line 2382 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; ;} break; case 199: -#line 2389 "Gmsh.y" +#line 2386 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); - ExtrudeShape(TRANSLATE_ROTATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (18)].d), + ExtrudeShape(TRANSLATE_ROTATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (18)].d), (yyvsp[(6) - (18)].v)[0], (yyvsp[(6) - (18)].v)[1], (yyvsp[(6) - (18)].v)[2], (yyvsp[(8) - (18)].v)[0], (yyvsp[(8) - (18)].v)[1], (yyvsp[(8) - (18)].v)[2], (yyvsp[(10) - (18)].v)[0], (yyvsp[(10) - (18)].v)[1], (yyvsp[(10) - (18)].v)[2], (yyvsp[(12) - (18)].d), &extr, (yyval.l)); ;} break; case 200: -#line 2396 "Gmsh.y" +#line 2397 "Gmsh.y" { - extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; ;} break; case 201: #line 2400 "Gmsh.y" { - (yyval.l) = List_Create(2, 1, sizeof(Shape)); - ExtrudeShape(TRANSLATE_ROTATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (18)].d), - (yyvsp[(6) - (18)].v)[0], (yyvsp[(6) - (18)].v)[1], (yyvsp[(6) - (18)].v)[2], (yyvsp[(8) - (18)].v)[0], (yyvsp[(8) - (18)].v)[1], (yyvsp[(8) - (18)].v)[2], (yyvsp[(10) - (18)].v)[0], (yyvsp[(10) - (18)].v)[1], (yyvsp[(10) - (18)].v)[2], (yyvsp[(12) - (18)].d), - &extr, (yyval.l)); ;} break; case 202: -#line 2411 "Gmsh.y" - { - ;} - break; - - case 203: -#line 2414 "Gmsh.y" - { - ;} - break; - - case 204: -#line 2420 "Gmsh.y" +#line 2406 "Gmsh.y" { extr.mesh.ExtrudeMesh = true; extr.mesh.NbLayer = 1; @@ -6376,8 +6363,8 @@ yyreduce: ;} break; - case 205: -#line 2429 "Gmsh.y" + case 203: +#line 2415 "Gmsh.y" { extr.mesh.ExtrudeMesh = true; extr.mesh.NbLayer = List_Nbr((yyvsp[(3) - (7)].l)); @@ -6399,8 +6386,8 @@ yyreduce: ;} break; - case 206: -#line 2449 "Gmsh.y" + case 204: +#line 2435 "Gmsh.y" { yymsg(0, "Explicit region numbers in layers are deprecated"); extr.mesh.ExtrudeMesh = true; @@ -6425,15 +6412,15 @@ yyreduce: ;} break; - case 207: -#line 2472 "Gmsh.y" + case 205: +#line 2458 "Gmsh.y" { extr.mesh.Recombine = true; ;} break; - case 208: -#line 2476 "Gmsh.y" + case 206: +#line 2462 "Gmsh.y" { int num = (int)(yyvsp[(3) - (9)].d); if(FindSurface(num)){ @@ -6454,8 +6441,8 @@ yyreduce: ;} break; - case 209: -#line 2500 "Gmsh.y" + case 207: +#line 2486 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(3) - (6)].l)); i++){ double d; @@ -6475,8 +6462,8 @@ yyreduce: ;} break; - case 210: -#line 2518 "Gmsh.y" + case 208: +#line 2504 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(3) - (9)].l)); i++){ double d; @@ -6496,8 +6483,8 @@ yyreduce: ;} break; - case 211: -#line 2536 "Gmsh.y" + case 209: +#line 2522 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(3) - (9)].l)); i++){ double d; @@ -6517,8 +6504,8 @@ yyreduce: ;} break; - case 212: -#line 2554 "Gmsh.y" + case 210: +#line 2540 "Gmsh.y" { Surface *s = FindSurface((int)(yyvsp[(4) - (8)].d)); if(!s) @@ -6549,8 +6536,8 @@ yyreduce: ;} break; - case 213: -#line 2583 "Gmsh.y" + case 211: +#line 2569 "Gmsh.y" { Surface *s = FindSurface((int)(yyvsp[(4) - (9)].d)); if(!s) @@ -6587,16 +6574,16 @@ yyreduce: ;} break; - case 214: -#line 2618 "Gmsh.y" + case 212: +#line 2604 "Gmsh.y" { yymsg(1, "Elliptic Surface is deprecated: use Transfinite instead (with smoothing)"); List_Delete((yyvsp[(7) - (8)].l)); ;} break; - case 215: -#line 2623 "Gmsh.y" + case 213: +#line 2609 "Gmsh.y" { Volume *v = FindVolume((int)(yyvsp[(4) - (8)].d)); if(!v) @@ -6625,8 +6612,8 @@ yyreduce: ;} break; - case 216: -#line 2650 "Gmsh.y" + case 214: +#line 2636 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(3) - (6)].l)); i++){ double d; @@ -6642,8 +6629,8 @@ yyreduce: ;} break; - case 217: -#line 2664 "Gmsh.y" + case 215: +#line 2650 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(3) - (4)].l)); i++){ double d; @@ -6658,8 +6645,8 @@ yyreduce: ;} break; - case 218: -#line 2677 "Gmsh.y" + case 216: +#line 2663 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(3) - (6)].l)); i++){ double d; @@ -6672,8 +6659,8 @@ yyreduce: ;} break; - case 219: -#line 2694 "Gmsh.y" + case 217: +#line 2680 "Gmsh.y" { Surface *s = FindSurface((int)(yyvsp[(8) - (10)].d)); if(s) @@ -6681,8 +6668,8 @@ yyreduce: ;} break; - case 220: -#line 2700 "Gmsh.y" + case 218: +#line 2686 "Gmsh.y" { Surface *s = FindSurface((int)(yyvsp[(8) - (10)].d)); if(s) @@ -6690,67 +6677,67 @@ yyreduce: ;} break; - case 221: -#line 2706 "Gmsh.y" + case 219: +#line 2692 "Gmsh.y" { ;} break; - case 222: -#line 2709 "Gmsh.y" + case 220: +#line 2695 "Gmsh.y" { ;} break; - case 223: -#line 2718 "Gmsh.y" + case 221: +#line 2704 "Gmsh.y" { ReplaceAllDuplicates(); ;} break; - case 224: -#line 2727 "Gmsh.y" + case 222: +#line 2713 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (1)].d); ;} break; - case 225: -#line 2728 "Gmsh.y" + case 223: +#line 2714 "Gmsh.y" { (yyval.d) = (yyvsp[(2) - (3)].d); ;} break; - case 226: -#line 2729 "Gmsh.y" + case 224: +#line 2715 "Gmsh.y" { (yyval.d) = -(yyvsp[(2) - (2)].d); ;} break; - case 227: -#line 2730 "Gmsh.y" + case 225: +#line 2716 "Gmsh.y" { (yyval.d) = (yyvsp[(2) - (2)].d); ;} break; - case 228: -#line 2731 "Gmsh.y" + case 226: +#line 2717 "Gmsh.y" { (yyval.d) = !(yyvsp[(2) - (2)].d); ;} break; - case 229: -#line 2732 "Gmsh.y" + case 227: +#line 2718 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) - (yyvsp[(3) - (3)].d); ;} break; - case 230: -#line 2733 "Gmsh.y" + case 228: +#line 2719 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) + (yyvsp[(3) - (3)].d); ;} break; - case 231: -#line 2734 "Gmsh.y" + case 229: +#line 2720 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) * (yyvsp[(3) - (3)].d); ;} break; - case 232: -#line 2736 "Gmsh.y" + case 230: +#line 2722 "Gmsh.y" { if(!(yyvsp[(3) - (3)].d)) yymsg(0, "Division by zero in '%g / %g'", (yyvsp[(1) - (3)].d), (yyvsp[(3) - (3)].d)); @@ -6759,308 +6746,308 @@ yyreduce: ;} break; - case 233: -#line 2742 "Gmsh.y" + case 231: +#line 2728 "Gmsh.y" { (yyval.d) = (int)(yyvsp[(1) - (3)].d) % (int)(yyvsp[(3) - (3)].d); ;} break; - case 234: -#line 2743 "Gmsh.y" + case 232: +#line 2729 "Gmsh.y" { (yyval.d) = pow((yyvsp[(1) - (3)].d), (yyvsp[(3) - (3)].d)); ;} break; - case 235: -#line 2744 "Gmsh.y" + case 233: +#line 2730 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) < (yyvsp[(3) - (3)].d); ;} break; - case 236: -#line 2745 "Gmsh.y" + case 234: +#line 2731 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) > (yyvsp[(3) - (3)].d); ;} break; - case 237: -#line 2746 "Gmsh.y" + case 235: +#line 2732 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) <= (yyvsp[(3) - (3)].d); ;} break; - case 238: -#line 2747 "Gmsh.y" + case 236: +#line 2733 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) >= (yyvsp[(3) - (3)].d); ;} break; - case 239: -#line 2748 "Gmsh.y" + case 237: +#line 2734 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) == (yyvsp[(3) - (3)].d); ;} break; - case 240: -#line 2749 "Gmsh.y" + case 238: +#line 2735 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) != (yyvsp[(3) - (3)].d); ;} break; - case 241: -#line 2750 "Gmsh.y" + case 239: +#line 2736 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) && (yyvsp[(3) - (3)].d); ;} break; - case 242: -#line 2751 "Gmsh.y" + case 240: +#line 2737 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) || (yyvsp[(3) - (3)].d); ;} break; - case 243: -#line 2752 "Gmsh.y" + case 241: +#line 2738 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (5)].d) ? (yyvsp[(3) - (5)].d) : (yyvsp[(5) - (5)].d); ;} break; - case 244: -#line 2753 "Gmsh.y" + case 242: +#line 2739 "Gmsh.y" { (yyval.d) = exp((yyvsp[(3) - (4)].d)); ;} break; - case 245: -#line 2754 "Gmsh.y" + case 243: +#line 2740 "Gmsh.y" { (yyval.d) = log((yyvsp[(3) - (4)].d)); ;} break; - case 246: -#line 2755 "Gmsh.y" + case 244: +#line 2741 "Gmsh.y" { (yyval.d) = log10((yyvsp[(3) - (4)].d)); ;} break; - case 247: -#line 2756 "Gmsh.y" + case 245: +#line 2742 "Gmsh.y" { (yyval.d) = sqrt((yyvsp[(3) - (4)].d)); ;} break; - case 248: -#line 2757 "Gmsh.y" + case 246: +#line 2743 "Gmsh.y" { (yyval.d) = sin((yyvsp[(3) - (4)].d)); ;} break; - case 249: -#line 2758 "Gmsh.y" + case 247: +#line 2744 "Gmsh.y" { (yyval.d) = asin((yyvsp[(3) - (4)].d)); ;} break; - case 250: -#line 2759 "Gmsh.y" + case 248: +#line 2745 "Gmsh.y" { (yyval.d) = cos((yyvsp[(3) - (4)].d)); ;} break; - case 251: -#line 2760 "Gmsh.y" + case 249: +#line 2746 "Gmsh.y" { (yyval.d) = acos((yyvsp[(3) - (4)].d)); ;} break; - case 252: -#line 2761 "Gmsh.y" + case 250: +#line 2747 "Gmsh.y" { (yyval.d) = tan((yyvsp[(3) - (4)].d)); ;} break; - case 253: -#line 2762 "Gmsh.y" + case 251: +#line 2748 "Gmsh.y" { (yyval.d) = atan((yyvsp[(3) - (4)].d)); ;} break; - case 254: -#line 2763 "Gmsh.y" + case 252: +#line 2749 "Gmsh.y" { (yyval.d) = atan2((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d));;} break; - case 255: -#line 2764 "Gmsh.y" + case 253: +#line 2750 "Gmsh.y" { (yyval.d) = sinh((yyvsp[(3) - (4)].d)); ;} break; - case 256: -#line 2765 "Gmsh.y" + case 254: +#line 2751 "Gmsh.y" { (yyval.d) = cosh((yyvsp[(3) - (4)].d)); ;} break; - case 257: -#line 2766 "Gmsh.y" + case 255: +#line 2752 "Gmsh.y" { (yyval.d) = tanh((yyvsp[(3) - (4)].d)); ;} break; - case 258: -#line 2767 "Gmsh.y" + case 256: +#line 2753 "Gmsh.y" { (yyval.d) = fabs((yyvsp[(3) - (4)].d)); ;} break; - case 259: -#line 2768 "Gmsh.y" + case 257: +#line 2754 "Gmsh.y" { (yyval.d) = floor((yyvsp[(3) - (4)].d)); ;} break; - case 260: -#line 2769 "Gmsh.y" + case 258: +#line 2755 "Gmsh.y" { (yyval.d) = ceil((yyvsp[(3) - (4)].d)); ;} break; - case 261: -#line 2770 "Gmsh.y" + case 259: +#line 2756 "Gmsh.y" { (yyval.d) = fmod((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d)); ;} break; - case 262: -#line 2771 "Gmsh.y" + case 260: +#line 2757 "Gmsh.y" { (yyval.d) = fmod((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d)); ;} break; - case 263: -#line 2772 "Gmsh.y" + case 261: +#line 2758 "Gmsh.y" { (yyval.d) = sqrt((yyvsp[(3) - (6)].d) * (yyvsp[(3) - (6)].d) + (yyvsp[(5) - (6)].d) * (yyvsp[(5) - (6)].d)); ;} break; - case 264: -#line 2773 "Gmsh.y" + case 262: +#line 2759 "Gmsh.y" { (yyval.d) = (yyvsp[(3) - (4)].d) * (double)rand() / (double)RAND_MAX; ;} break; - case 265: -#line 2775 "Gmsh.y" + case 263: +#line 2761 "Gmsh.y" { (yyval.d) = exp((yyvsp[(3) - (4)].d)); ;} break; - case 266: -#line 2776 "Gmsh.y" + case 264: +#line 2762 "Gmsh.y" { (yyval.d) = log((yyvsp[(3) - (4)].d)); ;} break; - case 267: -#line 2777 "Gmsh.y" + case 265: +#line 2763 "Gmsh.y" { (yyval.d) = log10((yyvsp[(3) - (4)].d)); ;} break; - case 268: -#line 2778 "Gmsh.y" + case 266: +#line 2764 "Gmsh.y" { (yyval.d) = sqrt((yyvsp[(3) - (4)].d)); ;} break; - case 269: -#line 2779 "Gmsh.y" + case 267: +#line 2765 "Gmsh.y" { (yyval.d) = sin((yyvsp[(3) - (4)].d)); ;} break; - case 270: -#line 2780 "Gmsh.y" + case 268: +#line 2766 "Gmsh.y" { (yyval.d) = asin((yyvsp[(3) - (4)].d)); ;} break; - case 271: -#line 2781 "Gmsh.y" + case 269: +#line 2767 "Gmsh.y" { (yyval.d) = cos((yyvsp[(3) - (4)].d)); ;} break; - case 272: -#line 2782 "Gmsh.y" + case 270: +#line 2768 "Gmsh.y" { (yyval.d) = acos((yyvsp[(3) - (4)].d)); ;} break; - case 273: -#line 2783 "Gmsh.y" + case 271: +#line 2769 "Gmsh.y" { (yyval.d) = tan((yyvsp[(3) - (4)].d)); ;} break; - case 274: -#line 2784 "Gmsh.y" + case 272: +#line 2770 "Gmsh.y" { (yyval.d) = atan((yyvsp[(3) - (4)].d)); ;} break; - case 275: -#line 2785 "Gmsh.y" + case 273: +#line 2771 "Gmsh.y" { (yyval.d) = atan2((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d));;} break; - case 276: -#line 2786 "Gmsh.y" + case 274: +#line 2772 "Gmsh.y" { (yyval.d) = sinh((yyvsp[(3) - (4)].d)); ;} break; - case 277: -#line 2787 "Gmsh.y" + case 275: +#line 2773 "Gmsh.y" { (yyval.d) = cosh((yyvsp[(3) - (4)].d)); ;} break; - case 278: -#line 2788 "Gmsh.y" + case 276: +#line 2774 "Gmsh.y" { (yyval.d) = tanh((yyvsp[(3) - (4)].d)); ;} break; - case 279: -#line 2789 "Gmsh.y" + case 277: +#line 2775 "Gmsh.y" { (yyval.d) = fabs((yyvsp[(3) - (4)].d)); ;} break; - case 280: -#line 2790 "Gmsh.y" + case 278: +#line 2776 "Gmsh.y" { (yyval.d) = floor((yyvsp[(3) - (4)].d)); ;} break; - case 281: -#line 2791 "Gmsh.y" + case 279: +#line 2777 "Gmsh.y" { (yyval.d) = ceil((yyvsp[(3) - (4)].d)); ;} break; - case 282: -#line 2792 "Gmsh.y" + case 280: +#line 2778 "Gmsh.y" { (yyval.d) = fmod((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d)); ;} break; - case 283: -#line 2793 "Gmsh.y" + case 281: +#line 2779 "Gmsh.y" { (yyval.d) = fmod((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d)); ;} break; - case 284: -#line 2794 "Gmsh.y" + case 282: +#line 2780 "Gmsh.y" { (yyval.d) = sqrt((yyvsp[(3) - (6)].d) * (yyvsp[(3) - (6)].d) + (yyvsp[(5) - (6)].d) * (yyvsp[(5) - (6)].d)); ;} break; - case 285: -#line 2795 "Gmsh.y" + case 283: +#line 2781 "Gmsh.y" { (yyval.d) = (yyvsp[(3) - (4)].d) * (double)rand() / (double)RAND_MAX; ;} break; - case 286: -#line 2804 "Gmsh.y" + case 284: +#line 2790 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (1)].d); ;} break; - case 287: -#line 2805 "Gmsh.y" + case 285: +#line 2791 "Gmsh.y" { (yyval.d) = 3.141592653589793; ;} break; - case 288: -#line 2806 "Gmsh.y" + case 286: +#line 2792 "Gmsh.y" { (yyval.d) = Msg::GetCommRank(); ;} break; - case 289: -#line 2807 "Gmsh.y" + case 287: +#line 2793 "Gmsh.y" { (yyval.d) = Msg::GetCommSize(); ;} break; - case 290: -#line 2808 "Gmsh.y" + case 288: +#line 2794 "Gmsh.y" { (yyval.d) = Get_GmshMajorVersion(); ;} break; - case 291: -#line 2809 "Gmsh.y" + case 289: +#line 2795 "Gmsh.y" { (yyval.d) = Get_GmshMinorVersion(); ;} break; - case 292: -#line 2810 "Gmsh.y" + case 290: +#line 2796 "Gmsh.y" { (yyval.d) = Get_GmshPatchVersion(); ;} break; - case 293: -#line 2815 "Gmsh.y" + case 291: +#line 2801 "Gmsh.y" { Symbol TheSymbol, *pSymbol; TheSymbol.Name = (yyvsp[(1) - (1)].c); @@ -7074,8 +7061,8 @@ yyreduce: ;} break; - case 294: -#line 2830 "Gmsh.y" + case 292: +#line 2816 "Gmsh.y" { char tmpstring[1024]; sprintf(tmpstring, "%s_%d", (yyvsp[(1) - (5)].c), (int)(yyvsp[(4) - (5)].d)) ; @@ -7091,8 +7078,8 @@ yyreduce: ;} break; - case 295: -#line 2844 "Gmsh.y" + case 293: +#line 2830 "Gmsh.y" { Symbol TheSymbol, *pSymbol; TheSymbol.Name = (yyvsp[(1) - (4)].c); @@ -7113,8 +7100,8 @@ yyreduce: ;} break; - case 296: -#line 2863 "Gmsh.y" + case 294: +#line 2849 "Gmsh.y" { Symbol TheSymbol, *pSymbol; TheSymbol.Name = (yyvsp[(2) - (4)].c); @@ -7128,8 +7115,8 @@ yyreduce: ;} break; - case 297: -#line 2875 "Gmsh.y" + case 295: +#line 2861 "Gmsh.y" { Symbol TheSymbol, *pSymbol; TheSymbol.Name = (yyvsp[(1) - (2)].c); @@ -7143,8 +7130,8 @@ yyreduce: ;} break; - case 298: -#line 2887 "Gmsh.y" + case 296: +#line 2873 "Gmsh.y" { Symbol TheSymbol, *pSymbol; TheSymbol.Name = (yyvsp[(1) - (5)].c); @@ -7165,24 +7152,24 @@ yyreduce: ;} break; - case 299: -#line 2909 "Gmsh.y" + case 297: +#line 2895 "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 300: -#line 2914 "Gmsh.y" + case 298: +#line 2900 "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 301: -#line 2919 "Gmsh.y" + case 299: +#line 2905 "Gmsh.y" { double d = 0.; if(NumberOption(GMSH_GET, (yyvsp[(1) - (4)].c), 0, (yyvsp[(3) - (4)].c), d)){ @@ -7194,8 +7181,8 @@ yyreduce: ;} break; - case 302: -#line 2929 "Gmsh.y" + case 300: +#line 2915 "Gmsh.y" { double d = 0.; if(NumberOption(GMSH_GET, (yyvsp[(1) - (7)].c), (int)(yyvsp[(3) - (7)].d), (yyvsp[(6) - (7)].c), d)){ @@ -7207,124 +7194,124 @@ yyreduce: ;} break; - case 303: -#line 2939 "Gmsh.y" + case 301: +#line 2925 "Gmsh.y" { (yyval.d) = Msg::GetValue((yyvsp[(3) - (6)].c), (yyvsp[(5) - (6)].d)); Free((yyvsp[(3) - (6)].c)); ;} break; - case 304: -#line 2947 "Gmsh.y" + case 302: +#line 2933 "Gmsh.y" { memcpy((yyval.v), (yyvsp[(1) - (1)].v), 5*sizeof(double)); ;} break; - case 305: -#line 2951 "Gmsh.y" + case 303: +#line 2937 "Gmsh.y" { for(int i = 0; i < 5; i++) (yyval.v)[i] = -(yyvsp[(2) - (2)].v)[i]; ;} break; - case 306: -#line 2955 "Gmsh.y" + case 304: +#line 2941 "Gmsh.y" { for(int i = 0; i < 5; i++) (yyval.v)[i] = (yyvsp[(2) - (2)].v)[i]; ;} break; - case 307: -#line 2959 "Gmsh.y" + case 305: +#line 2945 "Gmsh.y" { for(int i = 0; i < 5; i++) (yyval.v)[i] = (yyvsp[(1) - (3)].v)[i] - (yyvsp[(3) - (3)].v)[i]; ;} break; - case 308: -#line 2963 "Gmsh.y" + case 306: +#line 2949 "Gmsh.y" { for(int i = 0; i < 5; i++) (yyval.v)[i] = (yyvsp[(1) - (3)].v)[i] + (yyvsp[(3) - (3)].v)[i]; ;} break; - case 309: -#line 2970 "Gmsh.y" + case 307: +#line 2956 "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 310: -#line 2974 "Gmsh.y" + case 308: +#line 2960 "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 311: -#line 2978 "Gmsh.y" + case 309: +#line 2964 "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 312: -#line 2982 "Gmsh.y" + case 310: +#line 2968 "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 313: -#line 2989 "Gmsh.y" + case 311: +#line 2975 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(List_T*)); List_Add((yyval.l), &((yyvsp[(1) - (1)].l))); ;} break; - case 314: -#line 2994 "Gmsh.y" + case 312: +#line 2980 "Gmsh.y" { List_Add((yyval.l), &((yyvsp[(3) - (3)].l))); ;} break; - case 315: -#line 3001 "Gmsh.y" + case 313: +#line 2987 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(double)); List_Add((yyval.l), &((yyvsp[(1) - (1)].d))); ;} break; - case 316: -#line 3006 "Gmsh.y" + case 314: +#line 2992 "Gmsh.y" { (yyval.l) = (yyvsp[(1) - (1)].l); ;} break; - case 317: -#line 3010 "Gmsh.y" + case 315: +#line 2996 "Gmsh.y" { // creates an empty list (yyval.l) = List_Create(2, 1, sizeof(double)); ;} break; - case 318: -#line 3015 "Gmsh.y" + case 316: +#line 3001 "Gmsh.y" { (yyval.l) = (yyvsp[(2) - (3)].l); ;} break; - case 319: -#line 3019 "Gmsh.y" + case 317: +#line 3005 "Gmsh.y" { (yyval.l) = (yyvsp[(3) - (4)].l); for(int i = 0; i < List_Nbr((yyval.l)); i++){ @@ -7334,8 +7321,8 @@ yyreduce: ;} break; - case 320: -#line 3027 "Gmsh.y" + case 318: +#line 3013 "Gmsh.y" { (yyval.l) = (yyvsp[(4) - (5)].l); for(int i = 0; i < List_Nbr((yyval.l)); i++){ @@ -7345,8 +7332,8 @@ yyreduce: ;} break; - case 321: -#line 3038 "Gmsh.y" + case 319: +#line 3024 "Gmsh.y" { (yyval.l) = (yyvsp[(2) - (2)].l); for(int i = 0; i < List_Nbr((yyval.l)); i++){ @@ -7356,8 +7343,8 @@ yyreduce: ;} break; - case 322: -#line 3046 "Gmsh.y" + case 320: +#line 3032 "Gmsh.y" { (yyval.l) = (yyvsp[(3) - (3)].l); for(int i = 0; i < List_Nbr((yyval.l)); i++){ @@ -7367,8 +7354,8 @@ yyreduce: ;} break; - case 323: -#line 3054 "Gmsh.y" + case 321: +#line 3040 "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)); ((yyvsp[(1) - (3)].d) < (yyvsp[(3) - (3)].d)) ? (d += 1.) : (d -= 1.)) @@ -7376,8 +7363,8 @@ yyreduce: ;} break; - case 324: -#line 3060 "Gmsh.y" + case 322: +#line 3046 "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)){ @@ -7390,8 +7377,8 @@ yyreduce: ;} break; - case 325: -#line 3071 "Gmsh.y" + case 323: +#line 3057 "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 @@ -7413,8 +7400,8 @@ yyreduce: ;} break; - case 326: -#line 3091 "Gmsh.y" + case 324: +#line 3077 "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++){ @@ -7426,8 +7413,8 @@ yyreduce: ;} break; - case 327: -#line 3101 "Gmsh.y" + case 325: +#line 3087 "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++){ @@ -7439,8 +7426,8 @@ yyreduce: ;} break; - case 328: -#line 3111 "Gmsh.y" + case 326: +#line 3097 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(double)); Symbol TheSymbol, *pSymbol; @@ -7458,8 +7445,8 @@ yyreduce: ;} break; - case 329: -#line 3127 "Gmsh.y" + case 327: +#line 3113 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(double)); Symbol TheSymbol, *pSymbol; @@ -7484,30 +7471,30 @@ yyreduce: ;} break; - case 330: -#line 3153 "Gmsh.y" + case 328: +#line 3139 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(double)); List_Add((yyval.l), &((yyvsp[(1) - (1)].d))); ;} break; - case 331: -#line 3158 "Gmsh.y" + case 329: +#line 3144 "Gmsh.y" { (yyval.l) = (yyvsp[(1) - (1)].l); ;} break; - case 332: -#line 3162 "Gmsh.y" + case 330: +#line 3148 "Gmsh.y" { List_Add((yyval.l), &((yyvsp[(3) - (3)].d))); ;} break; - case 333: -#line 3166 "Gmsh.y" + case 331: +#line 3152 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(3) - (3)].l)); i++){ double d; @@ -7518,22 +7505,22 @@ yyreduce: ;} break; - case 334: -#line 3178 "Gmsh.y" + case 332: +#line 3164 "Gmsh.y" { (yyval.u) = CTX.PACK_COLOR((int)(yyvsp[(2) - (9)].d), (int)(yyvsp[(4) - (9)].d), (int)(yyvsp[(6) - (9)].d), (int)(yyvsp[(8) - (9)].d)); ;} break; - case 335: -#line 3182 "Gmsh.y" + case 333: +#line 3168 "Gmsh.y" { (yyval.u) = CTX.PACK_COLOR((int)(yyvsp[(2) - (7)].d), (int)(yyvsp[(4) - (7)].d), (int)(yyvsp[(6) - (7)].d), 255); ;} break; - case 336: -#line 3194 "Gmsh.y" + case 334: +#line 3180 "Gmsh.y" { int flag; (yyval.u) = Get_ColorForString(ColorString, -1, (yyvsp[(1) - (1)].c), &flag); @@ -7542,8 +7529,8 @@ yyreduce: ;} break; - case 337: -#line 3201 "Gmsh.y" + case 335: +#line 3187 "Gmsh.y" { unsigned int val = 0; ColorOption(GMSH_GET, (yyvsp[(1) - (5)].c), 0, (yyvsp[(5) - (5)].c), val); @@ -7552,15 +7539,15 @@ yyreduce: ;} break; - case 338: -#line 3211 "Gmsh.y" + case 336: +#line 3197 "Gmsh.y" { (yyval.l) = (yyvsp[(2) - (3)].l); ;} break; - case 339: -#line 3215 "Gmsh.y" + case 337: +#line 3201 "Gmsh.y" { (yyval.l) = List_Create(256, 10, sizeof(unsigned int)); GmshColorTable *ct = Get_ColorTable((int)(yyvsp[(3) - (6)].d)); @@ -7574,44 +7561,44 @@ yyreduce: ;} break; - case 340: -#line 3230 "Gmsh.y" + case 338: +#line 3216 "Gmsh.y" { (yyval.l) = List_Create(256, 10, sizeof(unsigned int)); List_Add((yyval.l), &((yyvsp[(1) - (1)].u))); ;} break; - case 341: -#line 3235 "Gmsh.y" + case 339: +#line 3221 "Gmsh.y" { List_Add((yyval.l), &((yyvsp[(3) - (3)].u))); ;} break; - case 342: -#line 3242 "Gmsh.y" + case 340: +#line 3228 "Gmsh.y" { (yyval.c) = (yyvsp[(1) - (1)].c); ;} break; - case 343: -#line 3246 "Gmsh.y" + case 341: +#line 3232 "Gmsh.y" { Msg::Warning("Named string expressions not implemented yet"); ;} break; - case 344: -#line 3253 "Gmsh.y" + case 342: +#line 3239 "Gmsh.y" { (yyval.c) = (yyvsp[(1) - (1)].c); ;} break; - case 345: -#line 3257 "Gmsh.y" + case 343: +#line 3243 "Gmsh.y" { (yyval.c) = (char *)Malloc(32*sizeof(char)); time_t now; @@ -7621,8 +7608,8 @@ yyreduce: ;} break; - case 346: -#line 3265 "Gmsh.y" + case 344: +#line 3251 "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)); @@ -7632,8 +7619,8 @@ yyreduce: ;} break; - case 347: -#line 3273 "Gmsh.y" + case 345: +#line 3259 "Gmsh.y" { (yyval.c) = (char *)Malloc((strlen((yyvsp[(3) - (4)].c))+1)*sizeof(char)); int i; @@ -7649,8 +7636,8 @@ yyreduce: ;} break; - case 348: -#line 3287 "Gmsh.y" + case 346: +#line 3273 "Gmsh.y" { (yyval.c) = (char *)Malloc((strlen((yyvsp[(3) - (4)].c))+1)*sizeof(char)); int i; @@ -7666,15 +7653,15 @@ yyreduce: ;} break; - case 349: -#line 3301 "Gmsh.y" + case 347: +#line 3287 "Gmsh.y" { (yyval.c) = (yyvsp[(3) - (4)].c); ;} break; - case 350: -#line 3305 "Gmsh.y" + case 348: +#line 3291 "Gmsh.y" { char tmpstring[1024]; int i = PrintListOfDouble((yyvsp[(3) - (6)].c), (yyvsp[(5) - (6)].l), tmpstring); @@ -7695,8 +7682,8 @@ yyreduce: ;} break; - case 351: -#line 3324 "Gmsh.y" + case 349: +#line 3310 "Gmsh.y" { const char *val = ""; StringOption(GMSH_GET, (yyvsp[(3) - (6)].c), 0, (yyvsp[(5) - (6)].c), val); @@ -7706,8 +7693,8 @@ yyreduce: ;} break; - case 352: -#line 3332 "Gmsh.y" + case 350: +#line 3318 "Gmsh.y" { const char *val = ""; StringOption(GMSH_GET, (yyvsp[(3) - (9)].c), (int)(yyvsp[(5) - (9)].d), (yyvsp[(8) - (9)].c), val); @@ -7719,7 +7706,7 @@ yyreduce: /* Line 1267 of yacc.c. */ -#line 7723 "Gmsh.tab.cpp" +#line 7710 "Gmsh.tab.cpp" default: break; } YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc); @@ -7933,7 +7920,7 @@ yyreturn: } -#line 3341 "Gmsh.y" +#line 3327 "Gmsh.y" void DeleteSymbol(void *a, void *b) diff --git a/Parser/Gmsh.y b/Parser/Gmsh.y index 606f8b3645270f08356018a7edc544c6d79040fa..6b6fbeeb92ce61e17d6f76463cfca8a001fccfc5 100644 --- a/Parser/Gmsh.y +++ b/Parser/Gmsh.y @@ -1644,13 +1644,13 @@ ListOfShapes : List_Read($4, i, &d); Shape TheShape; TheShape.Num = (int)d; - Vertex *v = FindPoint(TheShape.Num); + Vertex *v = FindPoint(std::abs(TheShape.Num)); if(v){ TheShape.Type = MSH_POINT; List_Add($$, &TheShape); } else{ - GVertex *gv = GModel::current()->getVertexByTag(TheShape.Num); + GVertex *gv = GModel::current()->getVertexByTag(std::abs(TheShape.Num)); if(gv){ TheShape.Type = MSH_POINT_FROM_GMODEL; List_Add($$, &TheShape); @@ -1667,13 +1667,13 @@ ListOfShapes : List_Read($4, i, &d); Shape TheShape; TheShape.Num = (int)d; - Curve *c = FindCurve(TheShape.Num); + Curve *c = FindCurve(std::abs(TheShape.Num)); if(c){ TheShape.Type = c->Typ; List_Add($$, &TheShape); } else{ - GEdge *ge = GModel::current()->getEdgeByTag(TheShape.Num); + GEdge *ge = GModel::current()->getEdgeByTag(std::abs(TheShape.Num)); if(ge){ TheShape.Type = MSH_SEGM_FROM_GMODEL; List_Add($$, &TheShape); @@ -1690,13 +1690,13 @@ ListOfShapes : List_Read($4, i, &d); Shape TheShape; TheShape.Num = (int)d; - Surface *s = FindSurface(TheShape.Num); + Surface *s = FindSurface(std::abs(TheShape.Num)); if(s){ TheShape.Type = s->Typ; List_Add($$, &TheShape); } else{ - GFace *gf = GModel::current()->getFaceByTag(TheShape.Num); + GFace *gf = GModel::current()->getFaceByTag(std::abs(TheShape.Num)); if(gf){ TheShape.Type = MSH_SURF_FROM_GMODEL; List_Add($$, &TheShape); @@ -1713,13 +1713,13 @@ ListOfShapes : List_Read($4, i, &d); Shape TheShape; TheShape.Num = (int)d; - Volume *v = FindVolume(TheShape.Num); + Volume *v = FindVolume(std::abs(TheShape.Num)); if(v){ TheShape.Type = v->Typ; List_Add($$, &TheShape); } else{ - GRegion *gr = GModel::current()->getRegionByTag(TheShape.Num); + GRegion *gr = GModel::current()->getRegionByTag(std::abs(TheShape.Num)); if(gr){ TheShape.Type = MSH_VOLUME_FROM_GMODEL; List_Add($$, &TheShape); @@ -2225,20 +2225,6 @@ Extrude : &extr, $$); List_Delete($3); } - | tExtrude tSTRING '[' FExpr ']' '{' ListOfShapes - { - extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; - } - ExtrudeParameters '}' - { - $$ = List_Create(2, 1, sizeof(Shape)); - extr.mesh.ViewIndex = (int)$4; - ExtrudeShapes(BOUNDARY_LAYER, $7, 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., - &extr, $$); - extr.mesh.ViewIndex = -1; - Free($2); - List_Delete($7); - } // Deprecated extrude commands (for backward compatibility) | tExtrude tPoint '{' FExpr ',' VExpr '}' tEND diff --git a/benchmarks/extrude/t1_boundary_layer.geo b/benchmarks/extrude/t1_boundary_layer.geo index 9e316c530f2991a53f69fd71764429f472fc0c70..067ef892e74eab900d9be2e586c42bec8f737501 100644 --- a/benchmarks/extrude/t1_boundary_layer.geo +++ b/benchmarks/extrude/t1_boundary_layer.geo @@ -17,7 +17,12 @@ Line(7) = {6,1}; Line Loop(5) = {4,1,-2,3} ; Plane Surface(6) = {5} ; -Line Loop(7) = - {5,6,7,1}; +// this is ok, but not always possible (e.g. if the surface had been +// created automatically by extrusion) +//Line Loop(7) = - {5,6,7,1}; +Line Loop(7) = {5,6,7,1}; + Plane Surface(8) = {7}; -Extrude { Surface{6,8}; Layers{5, 0.01}; Recombine; } +// the minus sign inverts the orientation of surface 8 +Extrude { Surface{6, -8}; Layers{5, 0.01}; Recombine; }