diff --git a/Common/Gmsh.cpp b/Common/Gmsh.cpp index e26ad0571c4cb446df10daef7f12d823f1fec129..477088452a4ab5461ff7c5e4b63e299a0eed3118 100644 --- a/Common/Gmsh.cpp +++ b/Common/Gmsh.cpp @@ -87,8 +87,8 @@ int GmshInitialize(int argc, char **argv) PluginManager::instance()->registerDefaultPlugins(); #endif - // Initialize robust predicates - robustPredicates::exactinit(); + // Initialize robust predicates (no static filter for now, we do not know the size of the domain) + robustPredicates::exactinit(0,1.0,1.0,1.0); if(dummy) delete dummy; return 1; diff --git a/Geo/CMakeLists.txt b/Geo/CMakeLists.txt index b1d3a1d9d2d281e3058bc801e92700aed7b49124..b0f5ee1961907c16044c04c7a7e150a0b9b8dfab 100644 --- a/Geo/CMakeLists.txt +++ b/Geo/CMakeLists.txt @@ -15,7 +15,7 @@ set(SRC gmshSurface.cpp OCCVertex.cpp OCCEdge.cpp OCCFace.cpp OCCRegion.cpp GenericVertex.cpp GenericEdge.cpp GenericFace.cpp GenericRegion.cpp - discreteEdge.cpp discreteFace.cpp discreteRegion.cpp + discreteEdge.cpp discreteFace.cpp discreteDiskFace.cpp discreteRegion.cpp fourierEdge.cpp fourierFace.cpp fourierProjectionFace.cpp ACISVertex.cpp ACISEdge.cpp diff --git a/Geo/Curvature.cpp b/Geo/Curvature.cpp index 4e1cb5a7d3adccd1c307172b2b70a7a4a65010bd..98d2c32368e5a3c7c1951e85c8355f21190c36fb 100644 --- a/Geo/Curvature.cpp +++ b/Geo/Curvature.cpp @@ -91,12 +91,17 @@ Curvature& Curvature::getInstance() /// ------------------------------------------------------------------------------------------- // Loop over all faces. Check if the face is a compound. If it is, store all of its discrete // faces in _EntityArray - + std::list<GFace*> global_face_list; for(GModel::fiter face_iter = _model->firstFace(); face_iter != _model->lastFace(); ++face_iter) { - if ( (*face_iter)->geomType() == GEntity::CompoundSurface ) + if ( (*face_iter)->geomType() != GEntity::CompoundSurface ){ + if (!(*face_iter)->getCompound()){ + global_face_list.push_back(*face_iter); + } + } + else if ( (*face_iter)->geomType() == GEntity::CompoundSurface ) { GFaceCompound* compound = dynamic_cast<GFaceCompound*>(*face_iter); std::list<GFace*> tempcompounds = compound->getCompounds(); @@ -117,7 +122,6 @@ Curvature& Curvature::getInstance() global_face_list.unique(); _EntityArray.resize(global_face_list.size()); std::copy(global_face_list.begin(),global_face_list.end(),_EntityArray.begin()); - #endif } @@ -430,6 +434,14 @@ void Curvature::computeVertexNormals() //======================================================================================================== +SVector3 Curvature::vertexNormal (MVertex* A) +{ + const int V0 = _VertexToInt[A->getNum()]; //The new number of the vertex + return _VertexNormal[V0]; +} + +//======================================================================================================== + void Curvature::curvatureTensor() { @@ -878,7 +890,7 @@ void Curvature::computeCurvature(GModel* model, typeOfCurvature typ) Msg::StatusBar(true, "(C) Done Computing Curvature (%g s)", t1-t0); //writeToMshFile("curvature.msh"); - writeToPosFile("curvature.pos"); + //writeToPosFile("curvature.pos"); //writeToVtkFile("curvature.vtk"); } @@ -1039,6 +1051,7 @@ void Curvature::smoothCurvatureField(const int NbIter) void Curvature::computeCurvature_Rusinkiewicz(int isMax) { + retrieveCompounds(); initializeMap(); @@ -1196,6 +1209,7 @@ void Curvature::computeCurvature_Rusinkiewicz(int isMax) _VertexNormal[ivertex], _pdir1[ivertex], _pdir2[ivertex], _curv1[ivertex], _curv2[ivertex]); } + _VertexCurve.resize( _VertexToInt.size() ); for (unsigned int ivertex = 0; ivertex < _VertexToInt.size(); ++ivertex){ @@ -1216,6 +1230,7 @@ void Curvature::computeCurvature_Rusinkiewicz(int isMax) // Propagate the value of curvature from nodes close the edges of the geometry onto the edges correctOnEdges(); + // throw; } //End of the "computeCurvature_Rusinkiewicz" method diff --git a/Geo/Curvature.h b/Geo/Curvature.h index 966a015985a51149597383a28d1d007f166d2f2d..d4ca37f6fe252be7aca02a881ae842e78f4771ed 100644 --- a/Geo/Curvature.h +++ b/Geo/Curvature.h @@ -216,6 +216,7 @@ public: void vertexNodalValues(MVertex* A, double& c0, int isAbs=0); void vertexNodalValuesAndDirections(MVertex *A, SVector3* dMax, SVector3* dMin, double* cMax, double* cMin, int isAbs=0); + SVector3 vertexNormal (MVertex* A) ; void writeToMshFile( const std::string & filename); @@ -224,9 +225,6 @@ public: void writeToVtkFile( const std::string & filename); void writeDirectionsToPosFile( const std::string & filename); - - - }; #endif diff --git a/Geo/GFaceCompound.cpp b/Geo/GFaceCompound.cpp index fdd3479dcc9004198b1367e717563ef70a879b7c..c2a5cae78ee2ac02ece336432237e8242c3c8b36 100644 --- a/Geo/GFaceCompound.cpp +++ b/Geo/GFaceCompound.cpp @@ -1515,6 +1515,11 @@ void GFaceCompound::parametrize(iterationStep step, typeOfMapping tom) const else{ #if defined(HAVE_PETSC) lsys = new linearSystemPETSc<double>; + lsys->setParameter("petscOptions", + "-pc_type ilu -ksp_rtol 1.e-12 -pc_factor_levels 10"); + + // lsys->setParameter("petscOptions", + // "-ksp_type preonly -pc_type lu -pc_factor_mat_solver_package umfpack"); #elif defined(HAVE_GMM) linearSystemGmm<double> *lsysb = new linearSystemGmm<double>; lsysb->setGmres(1); diff --git a/Geo/MElement.cpp b/Geo/MElement.cpp index 533d163e7e1fa182c7c355f954270c14f702eac7..034ff4765c70fcc3c17de8d3f01974704ef6b42f 100644 --- a/Geo/MElement.cpp +++ b/Geo/MElement.cpp @@ -1160,9 +1160,10 @@ void MElement::writePOS(FILE *fp, bool printElementary, bool printElementNumber, } if(printGamma){ double gamma = gammaShapeMeasure(); - for(int i = 0; i < n; i++){ + for(int i = 0; i < n; i++){ if(first) first = false; else fprintf(fp, ","); - fprintf(fp, "%g", gamma); + // fprintf(fp, "%g", gamma); FIXME + fprintf(fp, "%d", getVertex(i)->getNum()); } } if(printRho){ diff --git a/Geo/discreteFace.cpp b/Geo/discreteFace.cpp index 9221f4785f9eddeeea001365620091a855f9052c..0f54c23b8e551164c62b3cabdf03f7f96f0d4c26 100644 --- a/Geo/discreteFace.cpp +++ b/Geo/discreteFace.cpp @@ -18,7 +18,7 @@ discreteFace::discreteFace(GModel *model, int num) : GFace(model, num) { Surface *s = Create_Surface(num, MSH_SURF_DISCRETE); Tree_Add(model->getGEOInternals()->Surfaces, &s); - meshStatistics.status = GFace::DONE; + meshStatistics.status = GFace::DONE; } void discreteFace::setBoundEdges(GModel *gm, std::vector<int> tagEdges) @@ -150,3 +150,6 @@ void discreteFace::writeGEO(FILE *fp) } fprintf(fp, "};\n"); } + + + diff --git a/Mesh/CMakeLists.txt b/Mesh/CMakeLists.txt index 53c2aaca3b37f43c256d3756d416df3a7ba88a1c..d20011329d7c811b875e48c927777b0e75ec8f08 100644 --- a/Mesh/CMakeLists.txt +++ b/Mesh/CMakeLists.txt @@ -4,7 +4,10 @@ # bugs and problems to the public mailing list <gmsh@geuz.org>. set(SRC - Generator.cpp + meshGRegionBoundaryRecovery.cpp + delaunay3d.cpp + delaunay_refinement.cpp + Generator.cpp meshGEdge.cpp meshGEdgeExtruded.cpp meshGFace.cpp @@ -12,6 +15,7 @@ set(SRC meshGFaceTransfinite.cpp meshGFaceExtruded.cpp meshGFaceBamg.cpp meshGFaceBDS.cpp meshGFaceDelaunayInsertion.cpp meshGFaceLloyd.cpp meshGFaceOptimize.cpp + meshGFaceQuadDiscrete.cpp meshGFaceQuadrilateralize.cpp meshGRegion.cpp meshGRegionDelaunayInsertion.cpp meshGRegionTransfinite.cpp diff --git a/Mesh/Field.cpp b/Mesh/Field.cpp index 7813efd189ad6dbe758c8e96962ea54f4a85b8f5..6d61ad2b3e7ee916aa44de68a20152bc16675963 100644 --- a/Mesh/Field.cpp +++ b/Mesh/Field.cpp @@ -1795,9 +1795,9 @@ class AttractorField : public Field void getCoord(double x, double y, double z, double &cx, double &cy, double &cz, GEntity *ge = NULL) { - cx = _xField ? (*_xField)(x, y, z, ge) : x; - cy = _yField ? (*_yField)(x, y, z, ge) : y; - cz = _zField ? (*_zField)(x, y, z, ge) : z; + cx = _xField ? (*_xField)(x, y, z, ge) : x; + cy = _yField ? (*_yField)(x, y, z, ge) : y; + cz = _zField ? (*_zField)(x, y, z, ge) : z; } std::pair<AttractorInfo,SPoint3> getAttractorInfo() const { diff --git a/Mesh/Generator.cpp b/Mesh/Generator.cpp index a3a2c2c5c14d1b0c7d29936cb5a5f40e581b81a4..57a1f9dd5160f607757fe87209c25308af6a78f8 100644 --- a/Mesh/Generator.cpp +++ b/Mesh/Generator.cpp @@ -467,6 +467,242 @@ static void FindConnectedRegions(std::vector<GRegion*> &delaunay, nbVolumes,connected.size()); } +template <class ITERATOR> +void fillv_(std::multimap<MVertex*, MElement*> &vertexToElement, + ITERATOR it_beg, ITERATOR it_end) +{ + for (ITERATOR IT = it_beg; IT != it_end ; ++IT){ + MElement *el = *IT; + for(int j = 0; j < el->getNumVertices(); j++) { + MVertex* e = el->getVertex(j); + vertexToElement.insert(std::make_pair(e, el)); + } + } +} + + +int LaplaceSmoothing (GRegion *gr) { + + std::multimap<MVertex*, MElement*> vertexToElement; + fillv_(vertexToElement, (gr)->tetrahedra.begin(), (gr)->tetrahedra.end()); + fillv_(vertexToElement, (gr)->hexahedra.begin(), (gr)->hexahedra.end()); + fillv_(vertexToElement, (gr)->prisms.begin(), (gr)->prisms.end()); + fillv_(vertexToElement, (gr)->pyramids.begin(), (gr)->pyramids.end()); + int N=0; + for (unsigned int i=0; i<gr->mesh_vertices.size();i++){ + MVertex *v = gr->mesh_vertices[i]; + std::multimap<MVertex*, MElement*>::iterator it = vertexToElement.lower_bound(v); + std::multimap<MVertex*, MElement*>::iterator it_low = it; + std::multimap<MVertex*, MElement*>::iterator it_up = vertexToElement.upper_bound(v); + double minQual = 1.e22; + double volTot = 0.0; + double xold=v->x(), yold=v->y(), zold=v->z(); + SPoint3 pNew (0,0,0); + for (; it != it_up; ++it) { + minQual= std::min(minQual,it->second->minSICNShapeMeasure()); + double vol = fabs(it->second->getVolume()); + SPoint3 cog = it->second->barycenter(); + pNew += cog * vol; + volTot += vol; + } + pNew *= (1./volTot); + v->setXYZ (pNew.x(),pNew.y(),pNew.z()); + double minQual2 = 1.e22; + for (it = it_low; it != it_up; ++it) { + minQual2 = std::min(minQual2,it->second->minSICNShapeMeasure()); + if (minQual2 < minQual){ + v->setXYZ (xold,yold,zold); + break; + } + } + if (minQual < minQual2) N++; + } + return N; +} + +// JFR : use hex-splitting to resolve non conformity +// : if howto == 1 ---> split hexes +// : if howto == 2 ---> create transition elements + +/* + v3 v2 + x--------x + |\ | + | \ | + | \ | + | \ | + x--------x + v0 v1 + */ + +void buildUniqueFaces (GRegion *gr, std::set<MFace,Less_Face> &bnd) +{ + for (unsigned int i=0;i<gr->getNumMeshElements();i++){ + MElement *e = gr->getMeshElement(i); + for(int j=0;j<e->getNumFaces();j++){ + MFace f = e->getFace(j); + std::set<MFace,Less_Face>::iterator it = bnd.find(f); + if (it == bnd.end())bnd.insert(f); + else bnd.erase(it); + } + } +} + +bool MakeMeshConformal (GModel *gm, int howto) { + + fs_cont search; + buildFaceSearchStructure(gm, search); + std::set<MFace,Less_Face> bnd; + for (GModel::riter rit = gm->firstRegion(); rit != gm->lastRegion(); ++rit){ + GRegion *gr = *rit; + buildUniqueFaces (gr,bnd); + } + // bnd2 contains non conforming faces + + std::set<MFace,Less_Face> bnd2; + for (std::set<MFace,Less_Face>::iterator itf = bnd.begin(); itf != bnd.end(); ++itf){ + GFace *gfound = findInFaceSearchStructure (*itf,search); + if (!gfound){ + bnd2.insert(*itf); + } + } + bnd.clear(); + + Msg::Info("%d hanging faces",bnd2.size()); + + std::set<MFace,Less_Face> ncf; + for (std::set<MFace,Less_Face>::iterator itf = bnd2.begin(); itf != bnd2.end(); ++itf){ + const MFace &f = *itf; + if (f.getNumVertices () == 4){ // quad face + std::set<MFace,Less_Face>::iterator it1 = bnd2.find (MFace(f.getVertex(0),f.getVertex(1),f.getVertex(2))); + std::set<MFace,Less_Face>::iterator it2 = bnd2.find (MFace(f.getVertex(2),f.getVertex(3),f.getVertex(0))); + if (it1 != bnd2.end() && it2 != bnd2.end()){ + ncf.insert(MFace (f.getVertex(1),f.getVertex(2), f.getVertex(3),f.getVertex(0) )); + } + else { + it1 = bnd2.find (MFace(f.getVertex(0),f.getVertex(1),f.getVertex(3))); + it2 = bnd2.find (MFace(f.getVertex(3),f.getVertex(1),f.getVertex(2))); + if (it1 != bnd2.end() && it2 != bnd2.end()){ + ncf.insert(MFace (f.getVertex(0),f.getVertex(1), f.getVertex(2),f.getVertex(3) )); + } + else { + Msg::Error ("MakeMeshConformal: wrong mesh topology"); + return false; + } + } + } + } + bnd2.clear(); + + for (GModel::riter rit = gm->firstRegion(); rit != gm->lastRegion(); ++rit){ + GRegion *gr = *rit; + std::vector<MHexahedron*> remainingHexes; + for (unsigned int i=0;i<gr->hexahedra.size();i++){ + MHexahedron *e = gr->hexahedra[i]; + std::vector<MFace> faces; + for(int j=0;j<e->getNumFaces();j++){ + MFace f = e->getFace(j); + std::set<MFace,Less_Face>::iterator it = ncf.find(f); + if (it == ncf.end()){ + faces.push_back(f); + } + else { + faces.push_back(MFace(it->getVertex(0),it->getVertex(1),it->getVertex(3))); + faces.push_back(MFace(it->getVertex(1),it->getVertex(2),it->getVertex(3))); + } + } + // HEX IS ONLY SURROUNED BY COMPATIBLE ELEMENTS + if (faces.size() == e->getNumFaces()){ + remainingHexes.push_back(e); + } + else { + SPoint3 pp = e->barycenter(); + MVertex *newv = new MVertex (pp.x(),pp.y(),pp.z(),gr); + gr->mesh_vertices.push_back(newv); + for (unsigned int j=0;j<faces.size();j++){ + MFace &f = faces[j]; + if (f.getNumVertices() == 4){ + gr->pyramids.push_back(new MPyramid (f.getVertex(0), f.getVertex(1), f.getVertex(2), f.getVertex(3), newv)); + } + else { + gr->tetrahedra.push_back(new MTetrahedron (f.getVertex(0), f.getVertex(1), f.getVertex(2), newv)); + } + } + } + } + gr->hexahedra = remainingHexes; + remainingHexes.clear(); + std::vector<MPrism*> remainingPrisms; + for (unsigned int i=0;i<gr->prisms.size();i++){ + MPrism *e = gr->prisms[i]; + std::vector<MFace> faces; + for(int j=0;j<e->getNumFaces();j++){ + MFace f = e->getFace(j); + std::set<MFace,Less_Face>::iterator it = ncf.find(f); + if (it == ncf.end()){ + faces.push_back(f); + } + else { + faces.push_back(MFace(it->getVertex(0),it->getVertex(1),it->getVertex(3))); + faces.push_back(MFace(it->getVertex(1),it->getVertex(2),it->getVertex(3))); + } + } + // HEX IS ONLY SURROUNED BY COMPATIBLE ELEMENTS + if (faces.size() == e->getNumFaces()){ + remainingPrisms.push_back(e); + } + else { + SPoint3 pp = e->barycenter(); + MVertex *newv = new MVertex (pp.x(),pp.y(),pp.z(),gr); + gr->mesh_vertices.push_back(newv); + for (unsigned int j=0;j<faces.size();j++){ + MFace &f = faces[j]; + if (f.getNumVertices() == 4){ + gr->pyramids.push_back(new MPyramid (f.getVertex(0), f.getVertex(1), f.getVertex(2), f.getVertex(3), newv)); + } + else { + gr->tetrahedra.push_back(new MTetrahedron (f.getVertex(0), f.getVertex(1), f.getVertex(2), newv)); + } + } + } + } + gr->prisms = remainingPrisms; + } + + return true; +} + +void TestConformity (GModel *gm) { + fs_cont search; + buildFaceSearchStructure(gm, search); + int count = 0; + for (GModel::riter rit = gm->firstRegion(); rit != gm->lastRegion(); ++rit){ + GRegion *gr = *rit; + std::set<MFace,Less_Face> bnd; + double vol = 0.0; + for (unsigned int i=0;i<gr->getNumMeshElements();i++){ + MElement *e = gr->getMeshElement(i); + vol += fabs(e->getVolume()); + for(int j=0;j<e->getNumFaces();j++){ + MFace f = e->getFace(j); + std::set<MFace,Less_Face>::iterator it = bnd.find(f); + if (it == bnd.end())bnd.insert(f); + else bnd.erase(it); + } + } + printf("vol(%d) = %12.5E\n",gr->tag(),vol); + + for (std::set<MFace,Less_Face>::iterator itf = bnd.begin(); itf != bnd.end(); ++itf){ + GFace *gfound = findInFaceSearchStructure (*itf,search); + if (!gfound){ + count ++; + } + } + } + if (!count)Msg::Info("Mesh Conformity: OK"); + else Msg::Error ("Mesh is not conforming (%d hanging faces)!",count); +} + static void Mesh3D(GModel *m) { if(TooManyElements(m, 3)) return; @@ -531,6 +767,10 @@ static void Mesh3D(GModel *m) } if(treat_region_ok && (CTX::instance()->mesh.recombine3DAll || gr->meshAttributes.recombine3D)){ + if (CTX::instance()->mesh.optimize){ + optimizeMeshGRegionGmsh opt; + opt(gr); + } double a = Cpu(); if (CTX::instance()->mesh.recombine3DLevel >= 0){ Recombinator rec; @@ -542,21 +782,24 @@ static void Mesh3D(GModel *m) } PostOp post; post.execute(gr,CTX::instance()->mesh.recombine3DLevel, CTX::instance()->mesh.recombine3DConformity); //0: no pyramid, 1: single-step, 2: two-steps (conforming), true: fill non-conformities with trihedra + + // while(LaplaceSmoothing (gr)){ + // } nb_elements_recombination += post.get_nb_elements(); nb_hexa_recombination += post.get_nb_hexahedra(); vol_element_recombination += post.get_vol_elements(); vol_hexa_recombination += post.get_vol_hexahedra(); // partial export - stringstream ss; - ss << "yamakawa_part_"; - ss << gr->tag(); - ss << ".msh"; - export_gregion_mesh(gr, ss.str().c_str()); + // stringstream ss; + // ss << "yamakawa_part_"; + // ss << gr->tag(); + // ss << ".msh"; + // export_gregion_mesh(gr, ss.str().c_str()); time_recombination += (Cpu() - a); } } } - + if(CTX::instance()->mesh.recombine3DAll){ Msg::Info("RECOMBINATION timing:"); Msg::Info(" --- CUMULATIVE TIME RECOMBINATION : %g s.", time_recombination); @@ -565,6 +808,8 @@ static void Mesh3D(GModel *m) nb_hexa_recombination*100./nb_elements_recombination); Msg::Info(".... Percentage of hexahedra (Vol) : %g", vol_hexa_recombination*100./vol_element_recombination); + // MakeMeshConformal (m, 1); + TestConformity(m); } // Ensure that all volume Jacobians are positive diff --git a/Mesh/delaunay3d.cpp b/Mesh/delaunay3d.cpp new file mode 100644 index 0000000000000000000000000000000000000000..73c393c315620d2866d90e341fc5312350180f5c --- /dev/null +++ b/Mesh/delaunay3d.cpp @@ -0,0 +1,1001 @@ +#ifdef _OPENMP +#include <omp.h> +#endif + +#include <stdio.h> +#include <stdlib.h> +#include <list> +#include <set> +#include <stack> +#include <map> +#include <vector> +#include <algorithm> +#include <math.h> +#include <sys/time.h> +#include "SBoundingBox3d.h" +#include "delaunay3d_private.h" +#include "delaunay3d.h" +#include "MVertex.h" +#include "MEdge.h" +#include "MTetrahedron.h" + +const int MEASURE_BARR = 0; + +#ifdef _HAVE_NUMA +#include <numa.h> +#endif + +struct HilbertSortB +{ +// The code for generating table transgc +// from: http://graphics.stanford.edu/~seander/bithacks.html. + int transgc[8][3][8]; + int tsb1mod3[8]; + int maxDepth; + int Limit; + SBoundingBox3d bbox ; + void ComputeGrayCode(int n); + int Split(Vertex** vertices, + int arraysize,int GrayCode0,int GrayCode1, + double BoundingBoxXmin, double BoundingBoxXmax, + double BoundingBoxYmin, double BoundingBoxYmax, + double BoundingBoxZmin, double BoundingBoxZmax); + void Sort(Vertex** vertices, int arraysize, int e, int d, + double BoundingBoxXmin, double BoundingBoxXmax, + double BoundingBoxYmin, double BoundingBoxYmax, + double BoundingBoxZmin, double BoundingBoxZmax, int depth); + HilbertSortB (int m = 0, int l=2) : maxDepth(m),Limit(l) + { + ComputeGrayCode(3); + } + void MultiscaleSortHilbert(Vertex** vertices, int arraysize, + int threshold, double ratio, int *depth, std::vector<int> &indices) + { + int middle; + + middle = 0; + if (arraysize >= threshold) { + (*depth)++; + middle = (int)(arraysize * ratio); + MultiscaleSortHilbert(vertices, middle, threshold, ratio, depth, indices); + } + indices.push_back(middle); + // printf("chunk starts at %d and size %d\n",middle, arraysize - middle); + Sort (&(vertices[middle]),arraysize - middle,0,0, + bbox.min().x(),bbox.max().x(), + bbox.min().y(),bbox.max().y(), + bbox.min().z(),bbox.max().z(),0); + } + void Apply (std::vector<Vertex*> &v, std::vector<int> &indices) + { + for (size_t i=0;i<v.size();i++){ + Vertex *pv = v[i]; + bbox += SPoint3(pv->x(),pv->y(),pv->z()); + } + bbox *= 1.01; + Vertex**pv = &v[0]; + int depth; + // MultiscaleSortHilbert(pv, (int)v.size(), 64, 0.125,&depth); + indices.clear(); + MultiscaleSortHilbert(pv, (int)v.size(), 64, .125,&depth,indices); + indices.push_back(v.size()); + // printf("depth = %d\n",depth); + } +}; + +void HilbertSortB::ComputeGrayCode(int n) +{ + int gc[8], N, mask, travel_bit; + int e, d, f, k, g; + int v, c; + int i; + + N = (n == 2) ? 4 : 8; + mask = (n == 2) ? 3 : 7; + + // Generate the Gray code sequence. + for (i = 0; i < N; i++) { + gc[i] = i ^ (i >> 1); + } + + for (e = 0; e < N; e++) { + for (d = 0; d < n; d++) { + // Calculate the end point (f). + f = e ^ (1 << d); // Toggle the d-th bit of 'e'. + // travel_bit = 2**p, the bit we want to travel. + travel_bit = e ^ f; + for (i = 0; i < N; i++) { + // // Rotate gc[i] left by (p + 1) % n bits. + k = gc[i] * (travel_bit * 2); + g = ((k | (k / N)) & mask); + // Calculate the permuted Gray code by xor with the start point (e). + transgc[e][d][i] = (g ^ e); + } + // assert(transgc[e][d][0] == e); + // assert(transgc[e][d][N - 1] == f); + } // d + } // e + + // Count the consecutive '1' bits (trailing) on the right. + tsb1mod3[0] = 0; + for (i = 1; i < N; i++) { + v = ~i; // Count the 0s. + v = (v ^ (v - 1)) >> 1; // Set v's trailing 0s to 1s and zero rest + for (c = 0; v; c++) { + v >>= 1; + } + tsb1mod3[i] = c % n; + } +} + + +int HilbertSortB::Split(Vertex** vertices, + int arraysize,int GrayCode0,int GrayCode1, + double BoundingBoxXmin, double BoundingBoxXmax, + double BoundingBoxYmin, double BoundingBoxYmax, + double BoundingBoxZmin, double BoundingBoxZmax) +{ + Vertex* swapvert; + int axis, d; + double split; + int i, j; + + // Find the current splitting axis. 'axis' is a value 0, or 1, or 2, which + // correspoding to x-, or y- or z-axis. + axis = (GrayCode0 ^ GrayCode1) >> 1; + + // Calulate the split position along the axis. + if (axis == 0) { + split = 0.5 * (BoundingBoxXmin + BoundingBoxXmax); + } else if (axis == 1) { + split = 0.5 * (BoundingBoxYmin + BoundingBoxYmax); + } else { // == 2 + split = 0.5 * (BoundingBoxZmin + BoundingBoxZmax); + } + + // Find the direction (+1 or -1) of the axis. If 'd' is +1, the direction + // of the axis is to the positive of the axis, otherwise, it is -1. + d = ((GrayCode0 & (1<<axis)) == 0) ? 1 : -1; + + + // Partition the vertices into left- and right-arrays such that left points + // have Hilbert indices lower than the right points. + i = 0; + j = arraysize - 1; + + // Partition the vertices into left- and right-arrays. + if (d > 0) { + do { + for (; i < arraysize; i++) { + if (vertices[i]->point()[axis] >= split) break; + } + for (; j >= 0; j--) { + if (vertices[j]->point()[axis] < split) break; + } + // Is the partition finished? + if (i == (j + 1)) break; + // Swap i-th and j-th vertices. + swapvert = vertices[i]; + vertices[i] = vertices[j]; + vertices[j] = swapvert; + // Continue patitioning the array; + } while (true); + } else { + do { + for (; i < arraysize; i++) { + if (vertices[i]->point()[axis] <= split) break; + } + for (; j >= 0; j--) { + if (vertices[j]->point()[axis] > split) break; + } + // Is the partition finished? + if (i == (j + 1)) break; + // Swap i-th and j-th vertices. + swapvert = vertices[i]; + vertices[i] = vertices[j]; + vertices[j] = swapvert; + // Continue patitioning the array; + } while (true); + } + + return i; +} + +// The sorting code is inspired by Tetgen 1.5 + +void HilbertSortB::Sort(Vertex** vertices, int arraysize, int e, int d, + double BoundingBoxXmin, double BoundingBoxXmax, + double BoundingBoxYmin, double BoundingBoxYmax, + double BoundingBoxZmin, double BoundingBoxZmax, int depth) +{ + double x1, x2, y1, y2, z1, z2; + int p[9], w, e_w, d_w, k, ei, di; + int n = 3, mask = 7; + + p[0] = 0; + p[8] = arraysize; + + p[4] = Split(vertices, p[8], transgc[e][d][3], transgc[e][d][4], + BoundingBoxXmin, BoundingBoxXmax, BoundingBoxYmin, + BoundingBoxYmax, BoundingBoxZmin, BoundingBoxZmax); + p[2] = Split(vertices, p[4], transgc[e][d][1], transgc[e][d][2], + BoundingBoxXmin, BoundingBoxXmax, BoundingBoxYmin, + BoundingBoxYmax, BoundingBoxZmin, BoundingBoxZmax); + p[1] = Split(vertices, p[2], transgc[e][d][0], transgc[e][d][1], + BoundingBoxXmin, BoundingBoxXmax, BoundingBoxYmin, + BoundingBoxYmax, BoundingBoxZmin, BoundingBoxZmax); + p[3] = Split(&(vertices[p[2]]), p[4] - p[2], + transgc[e][d][2], transgc[e][d][3], + BoundingBoxXmin, BoundingBoxXmax, BoundingBoxYmin, + BoundingBoxYmax, BoundingBoxZmin, BoundingBoxZmax) + p[2]; + p[6] = Split(&(vertices[p[4]]), p[8] - p[4], + transgc[e][d][5], transgc[e][d][6], + BoundingBoxXmin, BoundingBoxXmax, BoundingBoxYmin, + BoundingBoxYmax, BoundingBoxZmin, BoundingBoxZmax) + p[4]; + p[5] = Split(&(vertices[p[4]]), p[6] - p[4], + transgc[e][d][4], transgc[e][d][5], + BoundingBoxXmin, BoundingBoxXmax, BoundingBoxYmin, + BoundingBoxYmax, BoundingBoxZmin, BoundingBoxZmax) + p[4]; + p[7] = Split(&(vertices[p[6]]), p[8] - p[6], + transgc[e][d][6], transgc[e][d][7], + BoundingBoxXmin, BoundingBoxXmax, BoundingBoxYmin, + BoundingBoxYmax, BoundingBoxZmin, BoundingBoxZmax) + p[6]; + + if (maxDepth > 0) { + if ((depth + 1) == maxDepth) { + printf("ARGH\n"); + return; + } + } + + // Recursively sort the points in sub-boxes. + + for (w = 0; w < 8; w++) { + if ((p[w+1] - p[w]) > Limit) { + if (w == 0) { + e_w = 0; + } else { + k = 2 * ((w - 1) / 2); + e_w = k ^ (k >> 1); + } + k = e_w; + e_w = ((k << (d+1)) & mask) | ((k >> (n-d-1)) & mask); + ei = e ^ e_w; + if (w == 0) { + d_w = 0; + } else { + d_w = ((w % 2) == 0) ? tsb1mod3[w - 1] : tsb1mod3[w]; + } + di = (d + d_w + 1) % n; + if (transgc[e][d][w] & 1) { + x1 = 0.5 * (BoundingBoxXmin + BoundingBoxXmax); + x2 = BoundingBoxXmax; + } else { + x1 = BoundingBoxXmin; + x2 = 0.5 * (BoundingBoxXmin + BoundingBoxXmax); + } + if (transgc[e][d][w] & 2) { // y-axis + y1 = 0.5 * (BoundingBoxYmin + BoundingBoxYmax); + y2 = BoundingBoxYmax; + } else { + y1 = BoundingBoxYmin; + y2 = 0.5 * (BoundingBoxYmin + BoundingBoxYmax); + } + if (transgc[e][d][w] & 4) { // z-axis + z1 = 0.5 * (BoundingBoxZmin + BoundingBoxZmax); + z2 = BoundingBoxZmax; + } else { + z1 = BoundingBoxZmin; + z2 = 0.5 * (BoundingBoxZmin + BoundingBoxZmax); + } + Sort(&(vertices[p[w]]), p[w+1] - p[w], ei, di, + x1, x2, y1, y2, z1, z2, depth+1); + } + } +} + +void SortHilbert (std::vector<Vertex*>& v, std::vector<int> &indices) +{ + HilbertSortB h(1000); + h.Apply(v, indices); +} + +double walltime( double *t0 ) +{ +#ifdef _OPENMP + return omp_get_wtime(); +#else + double mic, time; + double mega = 0.000001; + struct timeval tp; + struct timezone tzp; + static long base_sec = 0; + static long base_usec = 0; + + (void) gettimeofday(&tp,&tzp); + if (base_sec == 0) + { + base_sec = tp.tv_sec; + base_usec = tp.tv_usec; + } + + time = (double) (tp.tv_sec - base_sec); + mic = (double) (tp.tv_usec - base_usec); + time = (time + mic * mega) - *t0; + return(time); +#endif +} + +void computeAdjacencies (Tet *t, int iFace, connContainer &faceToTet){ + conn c (t->getFace(iFace), iFace, t); + connContainer::iterator it = std::find(faceToTet.begin(),faceToTet.end(),c); + if (it == faceToTet.end()){ + faceToTet.push_back(c); + } + else{ + t->T[iFace] = it->t; + it->t->T[it->i] =t; + faceToTet.erase(it); + } +} + +void delaunayCavity (Tet *t, + Tet *prev, + Vertex *v, + cavityContainer &cavity, + connContainer &bnd, + int thread, int iPnt){ + + t->set(thread, iPnt); // Mark the triangle + cavity.push_back(t); + for (int iNeigh=0; iNeigh<4 ; iNeigh++){ + Tet *neigh = t->T[iNeigh]; + if (neigh == NULL){ + bnd.push_back(conn(t->getFace(iNeigh),iNeigh,NULL)); + } + else if (neigh == prev){ + } + else if (!neigh->inSphere(v,thread)){ + // look if v sees face t->getFace(iNeigh) + Face f = t->getFace(iNeigh); + bnd.push_back(conn(f,iNeigh,neigh)); + neigh->set(thread, iPnt); + } + else if (!(neigh->isSet(thread, iPnt))) { + delaunayCavity (neigh, t, v, cavity,bnd,thread, iPnt); + } + } +} + +bool straddling_segment_intersects_triangle(Vertex *p1, Vertex *p2, + Vertex *q1, Vertex *q2, Vertex *q3) +{ + double s1 = orientationTest(p1, p2, q2, q3); + double s2 = orientationTest(p1, p2, q3, q1); + double s3 = orientationTest(p1, p2, q1, q2); + + if (s1*s2 < 0.0 || s2 * s3 < 0.0) return false; + + double s4 = orientationTest(q1, q2, q3, p1); + double s5 = orientationTest(q3, q2, q1, p2); + + return (s4*s5 >= 0) ; +} + +void print (Vertex *v){ + printf("%3d ",v->getNum()); +} + +void print (Tet *t, bool recur = true){ + if (recur){ + printf("PRINT TET\n"); + } + if (!t){ + printf("(NULL)\n"); + return; + } + printf("( "); + print(t->V[0]); + print(t->V[1]); + print(t->V[2]); + print(t->V[3]); + printf(")\n"); + if (recur){ + printf("{"); + print(t->T[0],false); + print(t->T[1],false); + print(t->T[2],false); + print(t->T[3],false); + printf("}\n"); + } +} + +Tet* walk (Tet *t, Vertex *v, int maxx, double &totSearch, int thread){ + while (1){ + totSearch++; + if (t == NULL) { + return NULL; // we should NEVER return here + } + if (t->inSphere(v,thread)) {return t;} + double _min = 0.0; + int NEIGH = -1; + for (int iNeigh=0; iNeigh<4; iNeigh++){ + Face f = t->getFace (iNeigh); + double val = robustPredicates::orient3d((double*)f.V[0], + (double*)f.V[1], + (double*)f.V[2], + (double*)v); + if (val < _min){ + NEIGH = iNeigh; + _min = val; + } + } + if (NEIGH >= 0){ + t = t->T[NEIGH]; + } + else { + Msg::Fatal("Jump-and-Walk Failed (No neighbor)"); + } + } + Msg::Fatal("Jump-and-Walk Failed (No neighbor)"); +} + + +Tet* walk1 (Tet *t, Vertex *v, int maxx, double &totSearch, int thread){ + int NUMSEARCH = 0; + int STARTER = 0; + + maxx = std::max(100,maxx); + + while (1){ + if (NUMSEARCH++ > 9*maxx) { + if (t->T[0] && t->T[0]->T[0]) t = t->T[0]->T[0]; + else if (t->T[1] && t->T[1]->T[0]) t = t->T[1]->T[0]; + else if (t->T[2] && t->T[2]->T[0]) t = t->T[2]->T[0]; + if (NUMSEARCH > 10*maxx) { + printf("trying to find a path from %p to %p: datastructure broken (%d searches, maxx %d)\n",v,t,NUMSEARCH,maxx); + NUMSEARCH=0; + return NULL; + } + } + if (t == NULL) { + Msg::Warning("search went through the boundary of the mesh without finding a tet"); + return NULL; // we should NEVER return here + } + if (t->inSphere(v,thread)) {totSearch += NUMSEARCH; return t;} + Vertex c = t->centroid(); + Tet *oldt=t; + for (int iNeigh=STARTER; iNeigh<(STARTER+4) ; iNeigh++){ + const int NEIGH = iNeigh %4; + Face f = t->getFace (NEIGH); + bool inters = straddling_segment_intersects_triangle(&c, v, f.V[0], f.V[1], f.V[2]); + if (inters){ + t = t->T[NEIGH]; + break; + } + } + if (t==oldt){ + printf("trying to find a path from %p to %p, ",v,t); + printf("strange : no intersection\n"); + for (int iNeigh=0; iNeigh<20 ; iNeigh++){ + int rr = rand()%4; + if (t->T[rr])t =t->T[rr]; + } + } + STARTER++; + } +} + +void print (const char *name, std::vector<Tet*> &T){ + FILE *f = fopen(name,"w"); + fprintf(f,"View \"\"{\n"); + for (unsigned int i=0;i<T.size();i++){ + if (T[i]->V[0]){ + // double val = robustPredicates::orient3d((double*)T[i]->V[0],(double*)T[i]->V[1],(double*)T[i]->V[2],(double*)T[i]->V[3]); + + fprintf(f,"SS(%g,%g,%g,%g,%g,%g,%g,%g,%g,%g,%g,%g){%g,%g,%g,%g};\n", + T[i]->V[0]->x(),T[i]->V[0]->y(),T[i]->V[0]->z(), + T[i]->V[1]->x(),T[i]->V[1]->y(),T[i]->V[1]->z(), + T[i]->V[2]->x(),T[i]->V[2]->y(),T[i]->V[2]->z(), + T[i]->V[3]->x(),T[i]->V[3]->y(),T[i]->V[3]->z(), + T[i]->V[0]->lc(),T[i]->V[1]->lc(),T[i]->V[2]->lc(),T[i]->V[3]->lc()); + } + } + fprintf(f,"};\n"); + fclose(f); +} + +void print (std::vector<Vertex*> &V, std::vector<Tet*> &T){ + std::map<Vertex*,int> nums; + for (unsigned int i=0;i<V.size();i++){ + nums[V[i]] = i; + } + for (unsigned int i=0;i<T.size();i++){ + printf("%p\n",T[i]); + printf("%d %d %d %d\n",nums[T[i]->V[0]],nums[T[i]->V[1]],nums[T[i]->V[2]],nums[T[i]->V[3]]); + printf("%p %p %p %p\n",T[i]->T[0],T[i]->T[1],T[i]->T[2],T[i]->T[3]); + } +} + + +void print (const char *name, std::vector<Vertex*> &T){ + FILE *f = fopen(name,"w"); + fprintf(f,"View \"\"{\n"); + for (unsigned int i=0;i<T.size()-1;i++){ + fprintf(f,"SL(%g,%g,%g,%g,%g,%g){%d,%d};\n", + T[i]->x(),T[i]->y(),T[i]->z(), + T[i+1]->x(),T[i+1]->y(),T[i+1]->z(),i,i+1); + } + fprintf(f,"};\n"); + fclose(f); +} + +/* +xxx10000 ok if all bits on my right are 0 +*/ + +bool canWeProcessCavity (cavityContainer &cavity, unsigned int myThread, unsigned int iPt) { + unsigned int cSize = cavity.size(); + for (unsigned int j=0; j<cSize; j++) { + Tet *f = cavity[j]; + for (unsigned int index = 0; index < myThread; index++) { + if(f->_bitset [index]) return false; + } + if (iPt){ + if ( f->_bitset[myThread] & ((1 << iPt)-1)) return false; + } + } + return true; +} + +static Tet* stoopidSearch (Tet *t, Vertex *v, int thread){ + std::stack<Tet*> _stack; + _stack.push(t); + std::set<Tet*> all; + while(!_stack.empty()){ + t = _stack.top(); + all.insert(t); + _stack.pop(); + if (t->inSphere(v,thread))return t; + for (int i=0;i<4;i++){ + if (t->T[i]){ + if (all.find(t->T[i]) == all.end()) + _stack.push(t->T[i]); + } + } + } + return NULL; +} + + +void delaunayTrgl (const unsigned int numThreads, + const unsigned int NPTS_AT_ONCE, + unsigned int Npts, + std::vector<Tet*> &T, + std::vector<Vertex*> assignTo[]){ + double totSearchGlob=0; + double totCavityGlob=0; + int counter = 0; + int counterMiss = 0; + + double cavitySize [numThreads]; + int invalidCavities [numThreads]; + int cashMisses[numThreads]; + for (unsigned int i=0;i<numThreads;i++)cashMisses[i] = 0; + + unsigned int maxLocSizeK = 0; + for (unsigned int i=0;i<numThreads*NPTS_AT_ONCE;i++){ + unsigned int s = assignTo[i].size(); + maxLocSizeK = std::max(maxLocSizeK,s); + } + +#pragma omp parallel num_threads(numThreads) + { + double totSearch=0; + double totCavity=0; + cavityContainer cavity[NPTS_AT_ONCE]; + connContainer bnd[NPTS_AT_ONCE]; + connContainer faceToTet; + Tet* Choice[NPTS_AT_ONCE]; + for (unsigned int K=0;K<NPTS_AT_ONCE;K++)Choice[K] = T[0]; + +#ifdef _OPENMP + int myThread = omp_get_thread_num(); +#else + int myThread = 0; +#endif + + invalidCavities [myThread] = 0; + unsigned int locSize=0; + unsigned int locSizeK[NPTS_AT_ONCE]; + Vertex *allocatedVerts [NPTS_AT_ONCE]; + for (unsigned int K=0;K<NPTS_AT_ONCE;K++){ + locSizeK[K] = assignTo[K+myThread*NPTS_AT_ONCE].size(); + locSize += locSizeK[K]; +#ifdef _HAVE_NUMA + allocatedVerts [K] = (Vertex*)numa_alloc_local (locSizeK[K]*sizeof(Vertex)); +#else + allocatedVerts [K] = (Vertex*)calloc (locSizeK[K],sizeof(Vertex)); +#endif + for (unsigned int iP=0 ; iP < locSizeK[K] ; iP++){ + allocatedVerts[K][iP] = *(assignTo[K+myThread*NPTS_AT_ONCE][iP]); + if (numThreads!=1) allocatedVerts[K][iP]._thread = myThread; + } + } + int allocatedSize = 12*locSize; +#ifdef _HAVE_NUMA + Tet *allocatedTable = (Tet*) numa_alloc_local (allocatedSize*sizeof(Tet)); +#else + // Tet *allocatedTable = new Tet[allocatedSize]; + std::vector<Tet*> allocatedTable; +#endif + + int newCounter = 0; + Vertex *vToAdd[NPTS_AT_ONCE]; + +#pragma omp barrier + //////////////////////////////////////////////////////////////////////////////////// + ////////////////////////// M A I N L O O P /////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////////// + + for (unsigned int iPGlob=0 ; iPGlob < maxLocSizeK; iPGlob++){ +#pragma omp barrier + cavitySize[myThread] = 0; + Tet *t [NPTS_AT_ONCE]; + // clock_t c1 = clock(); + for (unsigned int K=0; K< NPTS_AT_ONCE; K++) { + vToAdd[K] = iPGlob < locSizeK[K] ? &allocatedVerts[K][iPGlob] : NULL; + if(vToAdd[K]){ + if (!Choice[K]->V[0]){ + printf("HMMM I KNOW WHAT SHOULD BE DONE\n"); + if (Choice[K]->T[0] && Choice[K]->T[0]->V[0])Choice[K] = Choice[K]->T[0]; + else if (Choice[K]->T[1] && Choice[K]->T[1]->V[0])Choice[K] = Choice[K]->T[1]; + else if (Choice[K]->T[2] && Choice[K]->T[2]->V[0])Choice[K] = Choice[K]->T[2]; + else if (Choice[K]->T[3] && Choice[K]->T[3]->V[0])Choice[K] = Choice[K]->T[3]; + else printf("I KNOW WHAT SHOULD BE DONE ARGH\n"); + } + while(1){ + t[K] = walk ( Choice[K] , vToAdd[K], Npts, totSearch, myThread); + if (t[K])break; + Tet * newChoice = NULL; + int ITT=0; + while(1){ + newChoice = T[rand() % T.size()]; + if (newChoice->V[0])break; + ITT ++; + if (ITT > T.size()) { + newChoice == NULL; + break; + } + } + if (newChoice == NULL)break; + Choice[K] = newChoice; + } + if (!t[K]){ + Msg::Warning("Jump-and-Walk Failed (non convex domain)"); + t[K] = stoopidSearch (Choice[K], vToAdd[K],myThread); + if (!t[K]){ + Msg::Fatal("A point is outside the triangulation"); + throw; + } + } + } + } + // clock_t c1 = clock(); + for (unsigned int K=0; K< NPTS_AT_ONCE; K++) { + if(vToAdd[K]){ + cavityContainer &cavityK = cavity[K]; + connContainer &bndK = bnd[K]; + for (unsigned int i=0; i<cavityK.size(); i++)cavityK[i]->unset(myThread,K); + for (unsigned int i=0; i< bndK.size(); i++)if(bndK[i].t)bndK[i].t->unset(myThread,K); + cavityK.clear(); bndK.clear(); + delaunayCavity(t[K], NULL, vToAdd[K], cavityK, bndK, myThread, K); + // verify the cavity + for (unsigned int i=0; i< bndK.size(); i++) { + double val = robustPredicates::orient3d((double*)bndK[i].f.V[0], + (double*)bndK[i].f.V[1], + (double*)bndK[i].f.V[2], + (double*)vToAdd[K]); + if (val <= 0 ) { + // char name[245]; + // sprintf(name,"invalidCavity%d.pos",invalidCavities [myThread]); + // print(name,cavityK); + // printf("val = %22.15E\n",val); + vToAdd[K] = NULL; + invalidCavities [myThread]++; + break; + } + } + cavitySize[myThread] += (cavityK.size()); + } + } + + +#pragma omp barrier + + bool ok[ NPTS_AT_ONCE]; + for (unsigned int K=0; K< NPTS_AT_ONCE; K++) { + if (!vToAdd[K])ok[K]=false; + else ok[K] = canWeProcessCavity (cavity[K], myThread, K); + } + + // clock_t ck = clock(); + // std::set<Tet*> touched; + for (unsigned int K=0; K< NPTS_AT_ONCE; K++) { + if (ok[K]){ + cavityContainer &cavityK = cavity[K]; + connContainer &bndK = bnd[K]; + faceToTet.clear(); + const unsigned int cSize = cavityK.size(); + const unsigned int bSize = bndK.size(); + totCavity+= cSize; + Choice[K] = cavityK[0]; + for (unsigned int i=0; i<bSize; i++) { + // reuse memory slots of invalid elements + Tet *t; + if (i < cSize) { + t = cavityK[i]; + } + else { + t = new Tet; + allocatedTable.push_back(t); + newCounter = allocatedTable.size(); + } + // if (newCounter >= allocatedSize){ + // Msg::Fatal("JF : write the reallocation now !"); + // } + if (i < cSize && t->V[0]->_thread != myThread)cashMisses[myThread]++; + int sign = t->setVertices (bndK[i].f.V[0], bndK[i].f.V[1], bndK[i].f.V[2], vToAdd[K]); + if (sign <= 0){ + // A coplanar hull face. We need to test if this hull face is + // Delaunay or not. We test if the adjacent tet (not faked) + // of this hull face is Delaunay or not. + Msg::Fatal ("JF: Fix Invalid Cavity %d",sign); + } + Tet *neigh = bndK[i].t; + t->T[0] = neigh; + t->T[1] = t->T[2] = t->T[3] = NULL; + if (neigh){ + if (neigh->getFace(0) == bndK[i].f)neigh->T[0] = t; + else if (neigh->getFace(1) == bndK[i].f)neigh->T[1] = t; + else if (neigh->getFace(2) == bndK[i].f)neigh->T[2] = t; + else if (neigh->getFace(3) == bndK[i].f)neigh->T[3] = t; + else {printf("oops 1\n");throw;} + } + computeAdjacencies (t,1,faceToTet); + computeAdjacencies (t,2,faceToTet); + computeAdjacencies (t,3,faceToTet); + } + for (unsigned int i=bSize; i<cSize; i++) { + counterMiss++; + cavityK[i]->V[0] = cavityK[i]->V[1] = cavityK[i]->V[2] = cavityK[i]->V[3] = NULL; + } + } + else { + counter++; + } + } + } + #pragma omp critical + { + totCavityGlob+= totCavity; + totSearchGlob+= totSearch; + for (int i=0;i<newCounter;i++){ + allocatedTable[i]->setAllDeleted (); + if (allocatedTable[i]->V[0]){ + T.push_back(allocatedTable [i]); + } + } + // delete [] allocatedTable; + // printf("new counter = %d\n",newCounter); + } + #pragma omp barrier + } + + printf("%d invalid cavities\n",invalidCavities[0]); + +#ifdef _VERBOSE + double _t2 = walltime(&_t); + printf("total time for %d points %12.5E seconds\n",Npts,(double)(_t2-_t1)); + printf("%8d tets generated (%6f/sec)\n",T.size(),(double) T.size()/ ((double)(_t2-_t1))); + printf("average searches per point %12.5E\n",totSearchGlob/Npts); + printf("average size for del cavity %12.5E\n",totCavityGlob/Npts); + printf("counter = %d\n",counter); + printf("counterMiss = %d\n",counterMiss); + printf("cash misses: "); + for (int i=0;i<numThreads;i++){ + printf("%4d ",(int)cashMisses[i]); + } + printf("\n"); + +#endif + +} + + +static void initialCube (std::vector<Vertex*> &v, + Vertex *box[8], + std::vector<Tet*> &t){ + SBoundingBox3d bbox ; + bbox += SPoint3(0,0,0); + bbox += SPoint3(1,1,1); + for (size_t i=0;i<v.size();i++){ + Vertex *pv = v[i]; + bbox += SPoint3(pv->x(),pv->y(),pv->z()); + } + bbox *= 1.3; + box[0] = new Vertex (bbox.min().x(),bbox.min().y(),bbox.min().z(),bbox.diag()); + box[1] = new Vertex (bbox.max().x(),bbox.min().y(),bbox.min().z(),bbox.diag()); + box[2] = new Vertex (bbox.max().x(),bbox.max().y(),bbox.min().z(),bbox.diag()); + box[3] = new Vertex (bbox.min().x(),bbox.max().y(),bbox.min().z(),bbox.diag()); + box[4] = new Vertex (bbox.min().x(),bbox.min().y(),bbox.max().z(),bbox.diag()); + box[5] = new Vertex (bbox.max().x(),bbox.min().y(),bbox.max().z(),bbox.diag()); + box[6] = new Vertex (bbox.max().x(),bbox.max().y(),bbox.max().z(),bbox.diag()); + box[7] = new Vertex (bbox.min().x(),bbox.max().y(),bbox.max().z(),bbox.diag()); + + /* Tet *t0 = new Tet (box[2],box[7],box[3],box[1]); + Tet *t1 = new Tet (box[0],box[7],box[1],box[3]); + Tet *t2 = new Tet (box[6],box[1],box[7],box[2]); + Tet *t3 = new Tet (box[0],box[1],box[7],box[4]); + Tet *t4 = new Tet (box[1],box[4],box[5],box[7]); + Tet *t5 = new Tet (box[1],box[7],box[5],box[6]);*/ + + Tet *t0 = new Tet (box[7],box[2],box[3],box[1]); + Tet *t1 = new Tet (box[7],box[0],box[1],box[3]); + Tet *t2 = new Tet (box[1],box[6],box[7],box[2]); + Tet *t3 = new Tet (box[1],box[0],box[7],box[4]); + Tet *t4 = new Tet (box[4],box[1],box[5],box[7]); + Tet *t5 = new Tet (box[7],box[1],box[5],box[6]); + t.push_back(t0); + t.push_back(t1); + t.push_back(t2); + t.push_back(t3); + t.push_back(t4); + t.push_back(t5); + connContainer ctnr; + for (int i=0;i<4;i++){ + computeAdjacencies (t0,i,ctnr); + computeAdjacencies (t1,i,ctnr); + computeAdjacencies (t2,i,ctnr); + computeAdjacencies (t3,i,ctnr); + computeAdjacencies (t4,i,ctnr); + computeAdjacencies (t5,i,ctnr); + } + // printf("%d faces left\n",ctnr.size()); +} + +void delaunayTriangulation (const int numThreads, + const int nptsatonce, + std::vector<Vertex*> &S, + std::vector<Tet*> &T, + Vertex *box[8]){ + int N = S.size(); + + std::vector<int> indices; + // double t = 0; + // double t1 = walltime(&t); + SortHilbert(S, indices); + // double t2 = walltime(&t); + // print ("sorted.pos",S); + // printf("total time for sorting %d points %12.5E seconds\n",S.size(),(double)(t2-t1)); + + if (!T.size()){ + initialCube (S,box,T); + } + + int nbBlocks = nptsatonce * numThreads; + // int blockSize = (nbBlocks * (N / nbBlocks))/nbBlocks; + + + std::vector<Vertex*> assignTo0[1]; + std::vector<Vertex*> assignTo [nbBlocks]; + + for (unsigned int i=1;i<indices.size();i++){ + int start = indices[i-1]; + int end = indices[i]; + int sizePerBlock = (nbBlocks*((end-start) / nbBlocks))/nbBlocks; + // printf("sizePerBlock[%3d] = %8d\n",i,sizePerBlock); + int currentBlock = 0; + int localCounter = 0; + // FIXME : something's wring here !!! + if (i < -4){ + for (int jPt=start;jPt<end;jPt++){ + assignTo0[0].push_back(S[jPt]); + S[jPt]->_thread = numThreads*(jPt-start)/(end-start); + } + } + else { + for (int jPt=start;jPt<end;jPt++){ + if (localCounter++ >= sizePerBlock && currentBlock != nbBlocks-1){ + localCounter = 0; + currentBlock++; + } + assignTo[currentBlock].push_back(S[jPt]); + } + } + } + + S.clear(); + // double _t = 0; + // double _t1 = walltime(&_t); + delaunayTrgl(1,1, assignTo0[0].size(),T,assignTo0); + // print ("initialTetrahedrization.pos",T); + delaunayTrgl(numThreads,nptsatonce, N,T,assignTo); + // _t = 0; + // double _t2 = walltime(&_t); + // printf("WALL CLOCK TIME %12.5E\n",_t2-_t1); + print ("finalTetrahedrization.pos",T); +} + + +void delaunayTriangulation (const int numThreads, + const int nptsatonce, + std::vector<MVertex*> &S, + std::vector<MTetrahedron*> &T){ + std::vector<MVertex*> _temp; + std::vector<Vertex*> _vertices; + unsigned int N = S.size(); + _temp.resize(N+1+8); + double maxx=0, maxy=0,maxz=0; + for (unsigned int i=0;i<N;i++){ + MVertex *mv = S[i]; + maxx = std::max(maxx,fabs(mv->x())); + maxy = std::max(maxy,fabs(mv->y())); + maxz = std::max(maxz,fabs(mv->z())); + } + double d = 1*sqrt ( maxx*maxx + maxy*maxy + maxz*maxz ); + + for (unsigned int i=0;i<N;i++){ + MVertex *mv = S[i]; + // FIXME : should be zero !!!! + double dx = d*1.e-16 * (double)rand() / RAND_MAX; + double dy = d*1.e-16 * (double)rand() / RAND_MAX; + double dz = d*1.e-16 * (double)rand() / RAND_MAX; + mv->x() += dx; + mv->y() += dy; + mv->z() += dz; + Vertex *v = new Vertex (mv->x(),mv->y(),mv->z(),1.e22,i+1); + _vertices.push_back(v); + _temp [v->getNum()] = mv; + } + + robustPredicates::exactinit(1,maxx,maxy,maxz); + + std::vector<Tet*> _tets; + Vertex *box[8]; + delaunayTriangulation (numThreads, nptsatonce, _vertices, _tets, box); + + for (int i=0;i<8;i++){ + Vertex *v = box[i]; + v->setNum(N+i+1); + MVertex *mv = new MVertex (v->x(),v->y(),v->z(),NULL,N+i+1); + // printf("%d %g %g %g\n",v->getNum(),v->x(),v->y(),v->z()); + _temp [v->getNum()] = mv; + S.push_back(mv); + } + + for (unsigned int i=0;i<_tets.size();i++){ + Tet *t = _tets[i]; + if (t->V[0]){ + if (_tets[i]->V[0]->getNum() && + _tets[i]->V[1]->getNum() && + _tets[i]->V[2]->getNum() && + _tets[i]->V[3]->getNum() ) { + MVertex *v1 = _temp[_tets[i]->V[0]->getNum()]; + MVertex *v2 = _temp[_tets[i]->V[1]->getNum()]; + MVertex *v3 = _temp[_tets[i]->V[2]->getNum()]; + MVertex *v4 = _temp[_tets[i]->V[3]->getNum()]; + MTetrahedron *tr = new MTetrahedron(v1,v2,v3,v4); + T.push_back(tr); + } + else { + printf("oops\n", _tets[i]->V[0]->getNum(), _tets[i]->V[1]->getNum() , _tets[i]->V[2]->getNum() , _tets[i]->V[3]->getNum()); + } + } + } + // clean + for (unsigned int i=0;i<_vertices.size();i++)delete _vertices[i]; + for (unsigned int i=0;i<_tets.size();i++)delete _tets[i]; +} + + diff --git a/Mesh/delaunay3d.h b/Mesh/delaunay3d.h new file mode 100644 index 0000000000000000000000000000000000000000..91736fa89e89dbcf5b3ce845affacd97a973b663 --- /dev/null +++ b/Mesh/delaunay3d.h @@ -0,0 +1,10 @@ +#ifndef _DELAUNAY3D_H_ +#define _DELAUNAY3D_H_ +class MVertex; +class MTetrahedron; +void delaunayTriangulation (const int numThreads, + const int nptsatonce, + std::vector<MVertex*> &S, + std::vector<MTetrahedron*> &T); + +#endif diff --git a/Mesh/delaunay3d_private.h b/Mesh/delaunay3d_private.h new file mode 100644 index 0000000000000000000000000000000000000000..ac91bc1042efe71969d255e18982f16c058e11ee --- /dev/null +++ b/Mesh/delaunay3d_private.h @@ -0,0 +1,242 @@ +#ifndef _DELAUNAY3D_H_ +#define _DELAUNAY3D_H_ +#include <vector> +#include "SPoint3.h" +#include <math.h> +#include "robustPredicates.h" + +#ifndef MAX_NUM_THREADS_ +#define MAX_NUM_THREADS_ 1 +#endif + +typedef unsigned char CHECKTYPE; + + +struct Vertex { +private : + double _x[3]; + double _lc; + unsigned int _num; +public : + inline unsigned int getNum () const {return _num;} + inline void setNum (unsigned int n) {_num=n;} + unsigned char _thread; + inline double x() const {return _x[0];} + inline double y() const {return _x[1];} + inline double z() const {return _x[2];} + inline double lc() const {return _lc;} + inline double &x() {return _x[0];} + inline double &y() {return _x[1];} + inline double &z() {return _x[2];} + inline double &lc() {return _lc;} + inline operator double *() { return _x; } + Vertex (double X, double Y, double Z, double lc, int num = 0) : _num(num), _thread(0){ + _x[0]=X; _x[1]=Y;_x[2]=Z; _lc = lc;} + Vertex operator + (const Vertex &other){ + return Vertex (x()+other.x(),y()+other.y(),z()+other.z(),other.lc() + _lc); + } + Vertex operator * (const double &other){ + return Vertex (x()*other,y()*other,z()*other,_lc*other); + } + inline SPoint3 point() const { return SPoint3(x(), y(), z()); } +}; + + +inline double orientationTestFast(double *pa, double *pb, double *pc, double *pd) +{ + const double adx = pa[0] - pd[0]; + const double bdx = pb[0] - pd[0]; + const double cdx = pc[0] - pd[0]; + const double ady = pa[1] - pd[1]; + const double bdy = pb[1] - pd[1]; + const double cdy = pc[1] - pd[1]; + const double adz = pa[2] - pd[2]; + const double bdz = pb[2] - pd[2]; + const double cdz = pc[2] - pd[2]; + + return adx * (bdy * cdz - bdz * cdy) + + bdx * (cdy * adz - cdz * ady) + + cdx * (ady * bdz - adz * bdy); +} + +inline bool inSphereTest_s (Vertex *va, Vertex *vb, Vertex *vc, Vertex *vd , Vertex *ve){ + double val = robustPredicates::insphere ((double*)va,(double*)vb,(double*)vc,(double*)vd,(double*)ve); + if (val == 0.0){ + printf("symbolic perturbation needed vol %22.15E\n",orientationTestFast((double*)va,(double*)vb,(double*)vc,(double*)vd)); + int count; + // symbolic perturbation + Vertex *pt[5] = {va,vb,vc,vd,ve}; + int swaps = 0; + int n = 5; + do { + count = 0; + n = n - 1; + for (int i = 0; i < n; i++) { + if (pt[i] > pt[i+1]) { + Vertex *swappt = pt[i]; pt[i] = pt[i+1]; pt[i+1] = swappt; + count++; + } + } + swaps += count; + } while (count > 0); + double oriA = robustPredicates::orient3d ((double*)pt[1], (double*)pt[2], (double*)pt[3], (double*)pt[4]); + if (oriA != 0.0) { + // Flip the sign if there are odd number of swaps. + if ((swaps % 2) != 0) oriA = -oriA; + val = oriA; + } + else { + double oriB = -robustPredicates::orient3d ((double*)pt[0], (double*)pt[2], (double*)pt[3], (double*)pt[4]); + if (oriB == 0.0) { + Msg::Fatal("Symbolic perturbation failed in icCircle Predicate"); + } + // Flip the sign if there are odd number of swaps. + if ((swaps % 2) != 0) oriB = -oriB; + val = oriB; + } + } + return val > 0 ? 1 : 0; +} + +inline double orientationTest (Vertex *va, Vertex *vb, Vertex *vc, Vertex *vd){ + return robustPredicates::orient3d ((double*)va,(double*)vb,(double*)vc,(double*)vd); +} + +inline double orientationTestFast (Vertex *va, Vertex *vb, Vertex *vc, Vertex *vd){ + return orientationTestFast ((double*)va,(double*)vb,(double*)vc,(double*)vd); +} + + +struct Edge { + Vertex *first,*second; + Edge (Vertex *v1, Vertex *v2) : first(v1), second(v2) + { + } + bool operator == (const Edge &e) const{ + return e.first == first && e.second == second; + } + bool operator < (const Edge &e) const{ + if (first < e.first) return true; + if (first > e.first) return false; + if (second < e.second) return true; + return false; + } +}; + +//typedef std::pair<Vertex*, Vertex*> Edge; + +struct Face { + Vertex *v[3]; + Vertex *V[3]; + Face (Vertex *v1, Vertex *v2, Vertex *v3){ + V[0] = v[0] = v1; + V[1] = v[1] = v2; + V[2] = v[2] = v3; +#define cswap(a,b) do { if(a > b) { Vertex* tmp = a; a = b; b = tmp; } } while(0) + cswap(v[0], v[1]); + cswap(v[1], v[2]); + cswap(v[0], v[1]); + } + bool operator == (const Face &other) const { + return v[0] == other.v[0] && v[1] == other.v[1] && v[2] == other.v[2]; + } + bool operator < (const Face &other) const { + if (v[0] < other.v[0])return true; + if (v[0] > other.v[0])return false; + if (v[1] < other.v[1])return true; + if (v[1] > other.v[1])return false; + if (v[2] < other.v[2])return true; + return false; + } +}; + +struct Tet { + Tet *T[4]; + Vertex *V[4]; + CHECKTYPE _bitset [MAX_NUM_THREADS_]; + char _modified; + Tet () : _modified(true){ + V[0] = V[1] = V[2] = V[3] = NULL; + T[0] = T[1] = T[2] = T[3] = NULL; + setAllDeleted(); + } + int setVertices (Vertex *v0, Vertex *v1, Vertex *v2, Vertex *v3){ + _modified=true; + double val = robustPredicates::orient3d((double*)v0,(double*)v1,(double*)v2,(double*)v3); + V[0] = v0; V[1] = v1; V[2] = v2; V[3] = v3; + if (val > 0){ + return 1; + } + else if (val < 0){ + V[0] = v1; V[1] = v0; V[2] = v2; V[3] = v3; + return -1; + } + else { + return 0; + } + } + Tet (Vertex *v0, Vertex *v1, Vertex *v2, Vertex *v3) + { + setVertices (v0,v1,v2,v3); + T[0] = T[1] = T[2] = T[3] = NULL; + setAllDeleted(); + } + void setAllDeleted (){ + for (int i=0;i<MAX_NUM_THREADS_;i++) _bitset [i] = 0x0; + } + inline void unset ( int thread, int iPnt ){ + _bitset[thread] &= ~(1 << iPnt); + } + inline void set ( int thread, int iPnt ){ + _bitset [thread] |= (1 << iPnt); + } + inline CHECKTYPE isSet ( int thread, int iPnt ) const{ + return _bitset[thread] & (1 << iPnt); + } + inline Face getFace (int k) const { + const int fac[4][3] = {{0,1,2},{1,3,2},{2,3,0},{1,0,3}}; + return Face (V[fac[k][0]],V[fac[k][1]],V[fac[k][2]]); + } + inline Edge getEdge (int k) const { + const int edg[6][2] = {{0,1},{0,2},{0,3},{1,2},{1,3},{2,3}}; + return Edge (std::min(V[edg[k][0]],V[edg[k][1]]), + std::max(V[edg[k][0]],V[edg[k][1]])); + } + inline bool inSphere (Vertex *vd, int thread) const{ + return inSphereTest_s (V[0],V[1],V[2],V[3],vd); + } + Vertex centroid () const { + return (*V[0]+*V[1]+*V[2]+*V[3])*0.25; + } + +}; + +struct conn { + Face f; + int i; + Tet *t; + conn () : f(0,0,0), i(0), t(0){} + conn (Face _f, int _i, Tet *_t) : f(_f), i(_i), t(_t) + { } + inline bool operator == (const conn & c) const{ + return f == c.f; + } + inline bool operator < (const conn & c) const{ + return f < c.f; + } +}; + +typedef std::vector<Tet*> cavityContainer; +typedef std::vector<conn> connContainer; + +void SortHilbert (std::vector<Vertex*>& v, std::vector<int> &indices); +void computeAdjacencies (Tet *t, int iFace, connContainer &faceToTet); +void print (const char *name, std::vector<Tet*> &T); +void delaunayTrgl (const unsigned int numThreads, + const unsigned int NPTS_AT_ONCE, + unsigned int Npts, + std::vector<Tet*> &T, + std::vector<Vertex*> assignTo[]); + + +#endif diff --git a/Mesh/delaunay_refinement.cpp b/Mesh/delaunay_refinement.cpp new file mode 100644 index 0000000000000000000000000000000000000000..40d7ac1e5933763cb9a833867383d483fd7a2720 --- /dev/null +++ b/Mesh/delaunay_refinement.cpp @@ -0,0 +1,427 @@ +#ifdef _OPENMP +#include <omp.h> +#endif +#include <stack> +#include <set> +#include <vector> +#include <algorithm> +#include <math.h> +#include "GmshMessage.h" +#include "SPoint3.h" +#include "delaunay3d_private.h" +#include "delaunay3d.h" +#include "rtree.h" +#include "MVertex.h" +#include "MTetrahedron.h" +#include "MTriangle.h" +#include "GRegion.h" +#include "GFace.h" + +typedef std::set< Edge > edgeContainer2; + +long int AVGSEARCH; + +struct edgeContainer +{ + std::set< Edge > _hash2; + std::vector<std::vector<Edge> > _hash; + edgeContainer (unsigned int N = 1000000) { + _hash.resize(N); + } + bool addNewEdge2 (const Edge &e) { + std::set< Edge >::iterator it = _hash2.find(e); + if (it != _hash2.end())return false; + _hash2.insert(e); + return true; + } + bool isNewEdge (const Edge &e) { + size_t h = (size_t) e.first >> 3; + std::vector<Edge> &v = _hash[h %_hash.size()]; + AVGSEARCH+=v.size(); + for (unsigned int i=0; i< v.size();i++)if (e == v[i]) {return false;} + return true; + } + + bool addNewEdge (const Edge &e) + { + size_t h = (size_t) e.first >> 3; + std::vector<Edge> &v = _hash[h %_hash.size()]; + AVGSEARCH+=v.size(); + for (unsigned int i=0; i< v.size();i++)if (e == v[i]) {return false;} + v.push_back(e); + return true; + } +}; + +struct IPT { + double _x1,_x2,_x3,_x4; + IPT(double x1, double x2, double x3, double x4) : + _x1(x1),_x2(x2),_x3(x3),_x4(x4){}; +}; + +double adaptiveTrapezoidalRule (SPoint3 p1 , SPoint3 p2 , + double lc1 , double lc2 , + double (*f)(const SPoint3 &p, void *), + void *data, std::vector< IPT > & _result, + double &dl, double epsilon = 1.e-6) +{ + std::stack< IPT > _stack; + _result.clear(); + // local parameters on the edge + double t1 = 0.0; + double t2 = 1.0; + // edge vector + SPoint3 dp = p2-p1; + + // value of f on both sides + double f1 = lc1; //f(p1 + dp*t1,data); + double f2 = lc2; //f(p1 + dp*t2,data); + + dl = p1.distance(p2); + + // printf ("edge length %g lc %g %g\n",dl,f1,f2); + + // add one subsegment on the stack + IPT top (t1,t2,f1,f2); + _stack.push(top); + // store total value of the integral + double totalValue = 0.0; + while(!_stack.empty()){ + IPT pp = _stack.top(); + _stack.pop(); + t1 = pp._x1; + t2 = pp._x2; + f1 = pp._x3; + f2 = pp._x4; + // mid point + double t12 = 0.5* (t1+t2); + SPoint3 pmid = p1 + dp*t12; + double fmid = 0.5* (f1+f2);//f(pmid,data); + double dt = t2-t1; + // average should be compared to mid value + double f12 = 0.5* (f1+f2); + if (fabs (f12 - 0.5*(f1+f2)) > epsilon*dt ) { + IPT left (t1,t12,f1,f12); + IPT right (t12,t2,f12,f2); + _stack.push(left); + _stack.push(right); + } + else { + _result.push_back (pp); + // compute the integral using trapezoidal rule on both sides + totalValue += 1./((0.5*f12+0.25*(f1+f2)))*dt; + } + } + // take into account the real length of the edge + totalValue *= dl; + // printf("adimensional length %g\n",totalValue); + return totalValue; +} + + +void saturateEdge (Edge &e, std::vector<Vertex*> &S, double (*f)(const SPoint3 &p, void *), void *data) { + std::vector< IPT > _result; + double dl; + SPoint3 p1 = e.first->point(); + SPoint3 p2 = e.second->point(); + double dN = adaptiveTrapezoidalRule (p1,p2,e.first->lc(), e.second->lc(), f,data,_result, dl); + const int N = (int) (dN+0.1); + double interval = dN/N; + double L = 0.0; + + // printf("edge length %g %d intervals of size %g\n",dl,N,interval); + + for (unsigned int i=0; i< _result.size() ; i++) { + double t1 = _result[i]._x1; + double t2 = _result[i]._x2; + double f1 = _result[i]._x3; + double f2 = _result[i]._x4; + double dL = 2.*(t2-t1) * dl / (f1+f2); + // printf("%g --> %g for %g --> %g\n",L,dL,t1,t2); + double L0 = L; + while (1) { + double t = t1 + (L+interval-L0)*(t2-t1) / dL; + if (t >= t2) { + break; + } + else { + SPoint3 p = p1 * (1.-t) + p2*t; + double lc = e.first->lc() * (1.-t) + e.second->lc()*t; + const double dx = 1.e-16 * (double) rand() / RAND_MAX; + const double dy = 1.e-16 * (double) rand() / RAND_MAX; + const double dz = 1.e-16 * (double) rand() / RAND_MAX; + S.push_back(new Vertex(p.x()+dx,p.y()+dy,p.z()+dz,lc)); + L += interval; + } + } + } + + // printf("%d points added\n",S.size()); + + // exit(1); +} + +void saturateEdges ( edgeContainer &ec, + std::vector<Tet*> &T, + int nbThreads, + std::vector<Vertex*> &S, + double (*f)(const SPoint3 &p, void *), void *data) { + AVGSEARCH= 0; + int counter = 0; + for (int i=0;i<T.size();i++){ + if (T[i]->V[0] && T[i]->_modified){ + T[i]->_modified = false; + for (int iEdge=0;iEdge<6;iEdge++){ + Edge ed = T[i]->getEdge(iEdge); + bool isNew = ec.addNewEdge(ed); + counter++; + if (isNew){ + saturateEdge (ed, S, f, data); + } + } + } + } + // printf("a total of %d Tets counter %d AVG %d\n",T.size(),counter,AVGSEARCH/counter); +} + +///////////////////////// F I L T E R I N G //////////////////////////////////////////////////// + +class volumePointWithExclusionRegion { +public : + Vertex *_v; + volumePointWithExclusionRegion (Vertex *v) : _v(v){ + } + + bool inExclusionZone (volumePointWithExclusionRegion *p) + { + double d = sqrt ((p->_v->x() - _v->x()) * (p->_v->x() - _v->x())+ + (p->_v->y() - _v->y()) * (p->_v->y() - _v->y())+ + (p->_v->z() - _v->z()) * (p->_v->z() - _v->z())); + return d < .7*p->_v->lc();//_l; + } + void minmax (double _min[3], double _max[3]) const + { + _min[0] = _v->x() - 1.1*_v->lc(); + _min[1] = _v->y() - 1.1*_v->lc(); + _min[2] = _v->z() - 1.1*_v->lc(); + _max[0] = _v->x() + 1.1*_v->lc(); + _max[1] = _v->y() + 1.1*_v->lc(); + _max[2] = _v->z() + 1.1*_v->lc(); + } +}; + +struct my_wrapper_3D { + bool _tooclose; + volumePointWithExclusionRegion *_p; + my_wrapper_3D (volumePointWithExclusionRegion *sp) : + _tooclose (false), _p(sp) {} +}; + + +bool rtree_callback(volumePointWithExclusionRegion *neighbour,void* point) +{ + my_wrapper_3D *w = static_cast<my_wrapper_3D*>(point); + + if (neighbour->inExclusionZone(w->_p)){ + w->_tooclose = true; + return false; + } + return true; +} + +class vertexFilter { + RTree<volumePointWithExclusionRegion*,double,3,double> _rtree; +public: + void insert (Vertex * v) { + volumePointWithExclusionRegion *sp = new volumePointWithExclusionRegion (v); + double _min[3],_max[3]; + sp->minmax(_min,_max); + _rtree.Insert (_min,_max,sp); + } + + bool inExclusionZone (volumePointWithExclusionRegion *p) + { + my_wrapper_3D w (p); + double _min[3] = {p->_v->x()-1.e-8, p->_v->y()-1.e-8, p->_v->z()-1.e-8}; + double _max[3] = {p->_v->x()+1.e-8, p->_v->y()+1.e-8, p->_v->z()+1.e-8}; + _rtree.Search(_min,_max,rtree_callback,&w); + return w._tooclose; + } +}; + +void filterVertices (const int numThreads, + vertexFilter &_filter, + std::vector<Vertex*> &S, + std::vector<Vertex*> &add, + double (*f)(const SPoint3 &p, void *), + void *data) { + // printf("before : %d points to add\n",add.size()); + + std::vector<Vertex*> _add = add; + for (unsigned int i=0;i<S.size();i++){ + SPoint3 p (S[i]->x(),S[i]->y(),S[i]->z()); + double l = f (p, data); + _filter.insert( S[i] ); + } + add.clear(); + for (unsigned int i=0;i<_add.size();i++){ + SPoint3 p (_add[i]->x(),_add[i]->y(),_add[i]->z()); + volumePointWithExclusionRegion v (_add[i]); + if (! _filter. inExclusionZone (&v)){ + _filter.insert( _add[i]); + add.push_back(_add[i]); + } + else + delete _add[i]; + } + // printf("after filter : %d points to add\n",add.size()); +} + + +double _fx (const SPoint3 &p, void *){ + return fabs(0.0125 + .02*p.x()); +} + + +static void _print (const char *name, std::vector<Vertex*> &T){ + FILE *f = fopen(name,"w"); + fprintf(f,"View \"\"{\n"); + for (unsigned int i=0;i<T.size();i++){ + fprintf(f,"SP(%g,%g,%g){%d};\n", + T[i]->x(),T[i]->y(),T[i]->z(),i); + } + fprintf(f,"};\n"); + fclose(f); +} + +typedef std::set<conn> connSet; + +void computeAdjacencies (Tet *t, int iFace, connSet &faceToTet){ + conn c (t->getFace(iFace), iFace, t); + connSet::iterator it = faceToTet.find(c); + if (it == faceToTet.end()){ + faceToTet.insert(c); + } + else{ + t->T[iFace] = it->t; + it->t->T[it->i] =t; + faceToTet.erase(it); + } +} + + +void edgeBasedRefinement (const int numThreads, + const int nptsatonce, + GRegion *gr) { + + // fill up old Datastructures + + std::vector<MTetrahedron*> T = gr->tetrahedra; + std::vector<Tet*> _tets; + _tets.resize(T.size()); + std::vector<Vertex *> _vertices; + edgeContainer ec; + + { + std::set<MVertex *> all; + for (int i=0;i<T.size();i++){ + for (int j=0;j<4;j++){ + all.insert(T[i]->getVertex(j)); + } + } + + _vertices.resize(all.size()); + int counter=0; + for (std::set<MVertex*>::iterator it = all.begin();it !=all.end(); ++it){ + MVertex *mv = *it; + mv->setIndex(counter); + Vertex *v = new Vertex (mv->x(),mv->y(),mv->z(),1.e22, counter); + _vertices[counter] = v; + counter++; + } + connSet faceToTet; + for (unsigned int i=0;i<T.size();i++){ + int i0 = T[i]->getVertex(0)->getIndex(); + int i1 = T[i]->getVertex(1)->getIndex(); + int i2 = T[i]->getVertex(2)->getIndex(); + int i3 = T[i]->getVertex(3)->getIndex(); + Tet *t = new Tet (_vertices[i0],_vertices[i1],_vertices[i2],_vertices[i3]); + computeAdjacencies (t,0,faceToTet); + computeAdjacencies (t,1,faceToTet); + computeAdjacencies (t,2,faceToTet); + computeAdjacencies (t,3,faceToTet); + _tets[i] = t; + } + } + + // do not allow to saturate boundary edges + { + for (unsigned int i=0;i<_tets.size();i++) { + for (int j=0;j<4;j++){ + if (!_tets[i]->T[j]){ + Face f = _tets[i]->getFace(j); + for (int k=0;k<3;k++){ + Vertex *vi = f.V[k]; + Vertex *vj = f.V[(k+1)%3]; + double l = sqrt ((vi->x()-vj->x())*(vi->x()-vj->x())+ + (vi->y()-vj->y())*(vi->y()-vj->y())+ + (vi->z()-vj->z())*(vi->z()-vj->z())); + ec.addNewEdge(Edge(vi,vj)); + vi->lc() = std::min (l,vi->lc() ); + vj->lc() = std::min (l,vj->lc() ); + } + } + } + } + for (unsigned int i=0;i<_tets.size();i++) { + for (int j=0;j<6;j++){ + Edge e = _tets[i]->getEdge(j); + if(e.first->lc() == 1.e22){printf("coucou\n");e.first->lc() = e.second->lc();} + else if(e.second->lc() == 1.e22){printf("coucou\n");e.second->lc() = e.first->lc();} + } + } + } + + { + vertexFilter _filter; + int iter = 1; + + Msg::Info("----------------------------------- SATUR FILTR SORTH DELNY TIME TETS"); + + clock_t __t__ = clock(); + while(1){ + char name[256]; + // sprintf(name,"beforeRefinement%d.pos",iter); + // print (name,_tets); + // printf("ITER %3d\n",iter); + std::vector<Vertex*> add; + clock_t t1 = clock(); + saturateEdges (ec, _tets, numThreads, add, _fx, NULL); + // printf("%d points to add\n",add.size()); + //sprintf(name,"Points%d.pos",iter); + // _print (name,add); + clock_t t2 = clock(); + filterVertices (numThreads, _filter, _vertices, add, _fx, NULL); + clock_t t3 = clock(); + if (add.empty())break; + std::vector<int> indices; + SortHilbert(add, indices); + clock_t t4 = clock(); + // sprintf(name,"PointsFiltered%d.pos",iter); + // _print (name,add); + delaunayTrgl (1,1,add.size(), _tets, &add); + clock_t t5 = clock(); + Msg::Info("IT %3d %6d points added, timings %5.2f %5.2f %5.2f %5.2f %5.2f %5d",iter,add.size(), + (float)(t2-t1)/CLOCKS_PER_SEC, + (float)(t3-t2)/CLOCKS_PER_SEC, + (float)(t4-t3)/CLOCKS_PER_SEC, + (float)(t5-t4)/CLOCKS_PER_SEC, + (float)(t5-__t__)/CLOCKS_PER_SEC, + _tets.size()); + iter++; + } + print ("afterRefinement.pos",_tets); + } +} + + diff --git a/Mesh/delaunay_refinement.h b/Mesh/delaunay_refinement.h new file mode 100644 index 0000000000000000000000000000000000000000..a2c0012f1b2130128f946f65e4795ffd6bd84a1b --- /dev/null +++ b/Mesh/delaunay_refinement.h @@ -0,0 +1,13 @@ +#ifndef _DELAUNAY_REFINEMENT_H +#define _DELAUNAY_REFINEMENT_H +#include "SPoint3.h" +#include <vector> +class Tet; +class Vertex; +void delaunayRefinement (const int numThreads, + const int nptsatonce, + std::vector<Vertex*> &S, + std::vector<Tet*> &T, + double (*f)(const SPoint3 &p, void *), + void *data); +#endif diff --git a/Mesh/meshGFace.cpp b/Mesh/meshGFace.cpp index fdb3717b6d9fbfa4300e7f2b16dd90b3ce013046..40977c6e072ee21bd222c57417e98c6ffe17ea15 100644 --- a/Mesh/meshGFace.cpp +++ b/Mesh/meshGFace.cpp @@ -45,6 +45,7 @@ #include "meshGFaceLloyd.h" #include "boundaryLayersData.h" #include "filterElements.h" +#include "meshGFaceQuadDiscrete.h" // define this to use the old initial delaunay #define OLD_CODE_DELAUNAY 1 @@ -1525,8 +1526,9 @@ bool meshGenerator(GFace *gf, int RECUR_ITER, bowyerWatsonParallelogramsConstrained(gf,gf->constr_vertices); } else if(gf->getMeshingAlgo() == ALGO_2D_DELAUNAY || - gf->getMeshingAlgo() == ALGO_2D_AUTO) + gf->getMeshingAlgo() == ALGO_2D_AUTO){ bowyerWatson(gf); + } else { bowyerWatson(gf,15000); meshGFaceBamg(gf); @@ -2350,7 +2352,7 @@ static bool meshGeneratorPeriodic(GFace *gf, bool debug = true) if((CTX::instance()->mesh.recombineAll || gf->meshAttributes.recombine) && !CTX::instance()->mesh.optimizeLloyd && CTX::instance()->mesh.algoRecombine != 2) - recombineIntoQuads(gf); + recombineIntoQuads(gf,true,false); computeElementShapes(gf, gf->meshStatistics.worst_element_shape, gf->meshStatistics.average_element_shape, @@ -2375,7 +2377,6 @@ int debugSurface = -1; //-1; void meshGFace::operator() (GFace *gf, bool print) { - gf->model()->setCurrentMeshEntity(gf); if(debugSurface >= 0 && gf->tag() != debugSurface){ @@ -2383,7 +2384,11 @@ void meshGFace::operator() (GFace *gf, bool print) return; } - if(gf->geomType() == GEntity::DiscreteSurface) return; + if(gf->geomType() == GEntity::DiscreteSurface) { + // meshGFaceQuadDiscrete (gf); + // gf->meshStatistics.status = GFace::DONE; + return; + } if(gf->geomType() == GEntity::ProjectionFace) return; if(gf->meshAttributes.method == MESH_NONE) return; if(CTX::instance()->mesh.meshOnlyVisible && !gf->getVisibility()) return; diff --git a/Mesh/meshGFaceDelaunayInsertion.h b/Mesh/meshGFaceDelaunayInsertion.h index 79a8c389af307c7b0225ec359d9249a0baf9f494..7637c3688a592a0f7bbc17354505f18f9d436f62 100644 --- a/Mesh/meshGFaceDelaunayInsertion.h +++ b/Mesh/meshGFaceDelaunayInsertion.h @@ -201,5 +201,4 @@ struct edgeXface } }; - #endif diff --git a/Mesh/meshGFaceOptimize.cpp b/Mesh/meshGFaceOptimize.cpp index a74eb44f4b71333c5f07ede956f1d3fa93744a6d..2cd48f1b9cf82f9c6dec1e96c77493ddade0d1b1 100644 --- a/Mesh/meshGFaceOptimize.cpp +++ b/Mesh/meshGFaceOptimize.cpp @@ -2985,116 +2985,6 @@ int edgeSwapPass(GFace *gf, std::set<MTri3*, compareTri3Ptr> &allTris, } -void computeNeighboringTrisOfACavity(const std::vector<MTri3*> &cavity, - std::vector<MTri3*> &outside) -{ - outside.clear(); - for(unsigned int i = 0; i < cavity.size(); i++){ - for(int j = 0; j < 3; j++){ - MTri3 * neigh = cavity[i]->getNeigh(j); - if(neigh){ - bool found = false; - for(unsigned int k = 0; k < outside.size(); k++){ - if(outside[k] == neigh){ - found = true; - break; - } - } - if(!found){ - for(unsigned int k = 0; k < cavity.size(); k++){ - if(cavity[k] == neigh){ - found = true; - } - } - } - if(!found) outside.push_back(neigh); - } - } - } -} - -bool buildVertexCavity(MTri3 *t, int iLocalVertex, MVertex **v1, - std::vector<MTri3*> &cavity, std::vector<MTri3*> &outside, - std::vector<MVertex*> &ring) -{ - cavity.clear(); - ring.clear(); - - *v1 = t->tri()->getVertex(iLocalVertex); - - MVertex *lastinring = t->tri()->getVertex((iLocalVertex + 1) % 3); - ring.push_back(lastinring); - cavity.push_back(t); - - while (1){ - int iEdge = -1; - for(int i = 0; i < 3; i++){ - MVertex *v2 = t->tri()->getVertex((i + 2) % 3); - MVertex *v3 = t->tri()->getVertex(i); - if((v2 == *v1 && v3 == lastinring) || - (v2 == lastinring && v3 == *v1)){ - iEdge = i; - t = t->getNeigh(i); - if(t == cavity[0]) { - computeNeighboringTrisOfACavity(cavity, outside); - return true; - } - if(!t) return false; - if(t->isDeleted()){ - Msg::Error("Impossible to build vertex cavity"); - return false; - } - cavity.push_back(t); - for(int j = 0; j < 3; j++){ - if(t->tri()->getVertex(j) !=lastinring && t->tri()->getVertex(j) != *v1){ - lastinring = t->tri()->getVertex(j); - ring.push_back(lastinring); - j = 100; - } - } - break; - } - } - if(iEdge == -1) { - Msg::Error("Impossible to build vertex cavity"); - return false; - } - } -} - -// split one triangle into 3 triangles -void _triangleSplit (GFace *gf, MElement *t) -{ - MVertex *v1 = t->getVertex(0); - MVertex *v2 = t->getVertex(1); - MVertex *v3 = t->getVertex(2); - SPoint2 p1,p2,p3; - - reparamMeshEdgeOnFace(v1, v2, gf, p1,p2); - reparamMeshEdgeOnFace(v1, v3, gf, p1,p3); - - SPoint2 np = (p1+p2+p3)*(1./3.0); - - GPoint gp = gf->point(np); - - MFaceVertex *fv = new MFaceVertex(gp.x(),gp.y(),gp.z(), - gf,np.x(),np.y()); - std::vector<MTriangle*> triangles2; - for(unsigned int i = 0; i < gf->triangles.size(); i++){ - if(gf->triangles[i] != t){ - triangles2.push_back(gf->triangles[i]); - } - } - delete t; - MTriangle *t1 = new MTriangle(v1,v2,fv); - MTriangle *t2 = new MTriangle(v2,v3,fv); - MTriangle *t3 = new MTriangle(v3,v1,fv); - gf->triangles = triangles2; - gf->triangles.push_back(t1); - gf->triangles.push_back(t2); - gf->triangles.push_back(t3); - gf->mesh_vertices.push_back(fv); -} //used for meshGFaceRecombine development int recombineWithBlossom(GFace *gf, double dx, double dy, diff --git a/Mesh/meshGRegion.cpp b/Mesh/meshGRegion.cpp index 4506b336e11e50f553551cb66b4768c3bec21dcf..430a159c6970cdd4df2e1f354b6603f3256befc7 100644 --- a/Mesh/meshGRegion.cpp +++ b/Mesh/meshGRegion.cpp @@ -11,7 +11,7 @@ #include "meshGFace.h" #include "meshGFaceOptimize.h" #include "boundaryLayersData.h" -//#include "meshGRegionBoundaryRecovery.h" +#include "meshGRegionBoundaryRecovery.h" #include "meshGRegionDelaunayInsertion.h" #include "GModel.h" #include "GRegion.h" @@ -1334,26 +1334,11 @@ void MeshDelaunayVolumeTetgen(std::vector<GRegion*> ®ions) } // uncomment this to test the new code -//##define NEW_CODE +//#define NEW_CODE -void MeshDelaunayVolume(std::vector<GRegion*> ®ions) -{ - if(regions.empty()) return; - -#if !defined(NEW_CODE) && defined(HAVE_TETGEN) - MeshDelaunayVolumeTetgen(regions); - return; -#endif - /* - splitQuadRecovery sqr; - - for(unsigned int i = 0; i < regions.size(); i++) - Msg::Info("Meshing volume %d (Delaunay)", regions[i]->tag()); - - // put all the faces in the same model +static void MeshDelaunayVolumeNewCode(std::vector<GRegion*> ®ions) { GRegion *gr = regions[0]; std::list<GFace*> faces = gr->faces(); - std::set<GFace*> allFacesSet; for(unsigned int i = 0; i < regions.size(); i++){ std::list<GFace*> f = regions[i]->faces(); @@ -1361,11 +1346,9 @@ void MeshDelaunayVolume(std::vector<GRegion*> ®ions) f = regions[i]->embeddedFaces(); allFacesSet.insert(f.begin(), f.end()); } + std::list<GFace*> allFaces; - for(std::set<GFace*>::iterator it = allFacesSet.begin(); - it != allFacesSet.end(); it++){ - allFaces.push_back(*it); - } + allFaces.insert(allFaces.end(), allFacesSet.begin(), allFacesSet.end()); gr->set(allFaces); try{ @@ -1388,20 +1371,29 @@ void MeshDelaunayVolume(std::vector<GRegion*> ®ions) // restore the initial set of faces gr->set(faces); - bool _BL = modifyInitialMeshForTakingIntoAccountBoundaryLayers(gr,sqr); - // now do insertion of points - if(CTX::instance()->mesh.algo3d == ALGO_3D_FRONTAL_DEL) - bowyerWatsonFrontalLayers(gr, false); - else if(CTX::instance()->mesh.algo3d == ALGO_3D_FRONTAL_HEX) - bowyerWatsonFrontalLayers(gr, true); - else if(CTX::instance()->mesh.algo3d == ALGO_3D_MMG3D){ - refineMeshMMG(gr); - } - else if(!Filler::get_nbr_new_vertices() && !LpSmoother::get_nbr_interior_vertices()){ - insertVerticesInRegion(gr,2000000000,!_BL); - } - */ +#if 1 + void edgeBasedRefinement (const int numThreads, + const int nptsatonce, + GRegion *gr); + insertVerticesInRegion(gr,0); + edgeBasedRefinement (1,1,gr); +#else + insertVerticesInRegion(gr,200000000); +#endif +} + + +void MeshDelaunayVolume(std::vector<GRegion*> ®ions) +{ + if(regions.empty()) return; + +#if !defined(NEW_CODE) && defined(HAVE_TETGEN) + MeshDelaunayVolumeTetgen(regions); +#else + MeshDelaunayVolumeNewCode(regions); +#endif + return; } #if defined(HAVE_NETGEN) diff --git a/Mesh/meshGRegion19036.cpp b/Mesh/meshGRegion19036.cpp new file mode 100644 index 0000000000000000000000000000000000000000..24327daca32d81c8fda48d183c8225d5921e077a --- /dev/null +++ b/Mesh/meshGRegion19036.cpp @@ -0,0 +1,1856 @@ +// Gmsh - Copyright (C) 1997-2014 C. Geuzaine, J.-F. Remacle +// +// See the LICENSE.txt file for license information. Please report all +// bugs and problems to the public mailing list <gmsh@geuz.org>. + +#include <stdlib.h> +#include <vector> +#include "GmshConfig.h" +#include "GmshMessage.h" +#include "meshGRegion.h" +#include "meshGFace.h" +#include "meshGFaceOptimize.h" +#include "boundaryLayersData.h" +#include "meshGRegionBoundaryRecovery.h" +#include "meshGRegionDelaunayInsertion.h" +#include "GModel.h" +#include "GRegion.h" +#include "GFace.h" +#include "GEdge.h" +#include "gmshRegion.h" +#include "MLine.h" +#include "MTriangle.h" +#include "MQuadrangle.h" +#include "MTetrahedron.h" +#include "MPyramid.h" +#include "MPrism.h" +#include "MHexahedron.h" +#include "BDS.h" +#include "OS.h" +#include "Context.h" +#include "GFaceCompound.h" +#include "meshGRegionMMG3D.h" +#include "simple3D.h" +#include "Levy3D.h" +#include "directions3D.h" +#include "discreteFace.h" +#include "filterElements.h" + +#if defined(HAVE_ANN) +#include "ANN/ANN.h" +#endif + +// hybrid mesh recovery structure +class splitQuadRecovery { + std::multimap<GEntity*, std::pair<MVertex*,MFace> >_data; + bool _empty; + public : + std::map<MFace, MVertex*, Less_Face>_invmap; + std::set<MFace, Less_Face>_toDelete; + splitQuadRecovery() : _empty(true) {} + bool empty(){ return _empty; } + void setEmpty(bool val){ _empty = val; } + void add (const MFace &f, MVertex *v, GEntity*ge) + { + _data.insert(std::make_pair(ge, std::make_pair(v,f))); + } + int buildPyramids(GModel *gm) + { + if(empty()) return 0; + int NBPY = 0; + for (GModel::fiter it = gm->firstFace(); it != gm->lastFace(); ++it){ + std::set<MFace, Less_Face> allFaces; + for (unsigned int i = 0; i < (*it)->triangles.size(); i++){ + allFaces.insert ((*it)->triangles[i]->getFace(0)); + delete (*it)->triangles[i]; + } + (*it)->triangles.clear(); + for (std::multimap<GEntity*, std::pair<MVertex*,MFace> >::iterator it2 = + _data.lower_bound(*it); it2 != _data.upper_bound(*it) ; ++it2){ + const MFace &f = it2->second.second; + MVertex *v = it2->second.first; + v->onWhat()->mesh_vertices.erase(std::find(v->onWhat()->mesh_vertices.begin(), + v->onWhat()->mesh_vertices.end(), v)); + std::set<MFace, Less_Face>::iterator itf0 = allFaces.find(MFace(f.getVertex(0), + f.getVertex(1),v)); + std::set<MFace, Less_Face>::iterator itf1 = allFaces.find(MFace(f.getVertex(1), + f.getVertex(2),v)); + std::set<MFace, Less_Face>::iterator itf2 = allFaces.find(MFace(f.getVertex(2), + f.getVertex(3),v)); + std::set<MFace, Less_Face>::iterator itf3 = allFaces.find(MFace(f.getVertex(3), + f.getVertex(0),v)); + if (itf0 != allFaces.end() && itf1 != allFaces.end() && + itf2 != allFaces.end() && itf3 != allFaces.end()){ + (*it)->quadrangles.push_back(new MQuadrangle(f.getVertex(0), f.getVertex(1), + f.getVertex(2), f.getVertex(3))); + allFaces.erase(*itf0); + allFaces.erase(*itf1); + allFaces.erase(*itf2); + allFaces.erase(*itf3); + // printf("some pyramids should be created %d regions\n", (*it)->numRegions()); + for (int iReg = 0; iReg < (*it)->numRegions(); iReg++){ + if (iReg == 1) { + Msg::Error("Cannot build pyramids on non manifold faces"); + v = new MVertex(v->x(), v->y(), v->z(), (*it)->getRegion(iReg)); + } + else + v->setEntity ((*it)->getRegion(iReg)); + // A quad face connected to an hex or a primsm --> leave the quad face as is + if (_toDelete.find(f) == _toDelete.end()){ + (*it)->getRegion(iReg)->pyramids.push_back + (new MPyramid(f.getVertex(0), f.getVertex(1), f.getVertex(2), f.getVertex(3), v)); + (*it)->getRegion(iReg)->mesh_vertices.push_back(v); + NBPY++; + } + else { + delete v; + } + } + } + } + for (std::set<MFace, Less_Face>::iterator itf = allFaces.begin(); + itf != allFaces.end(); ++itf){ + (*it)->triangles.push_back + (new MTriangle(itf->getVertex(0), itf->getVertex(1), itf->getVertex(2))); + } + } + return NBPY; + } +}; + +void printVoronoi(GRegion *gr, std::set<SPoint3> &candidates) +{ + std::vector<MTetrahedron*> elements = gr->tetrahedra; + std::list<GFace*> allFaces = gr->faces(); + + //building maps + std::map<MVertex*, std::set<MTetrahedron*> > node2Tet; + std::map<MFace, std::vector<MTetrahedron*> , Less_Face> face2Tet; + for(unsigned int i = 0; i < elements.size(); i++){ + MTetrahedron *ele = elements[i]; + for (int j=0; j<4; j++){ + MVertex *v = ele->getVertex(j); + std::map<MVertex*, std::set<MTetrahedron*> >::iterator itmap = node2Tet.find(v); + if (itmap == node2Tet.end()){ + std::set<MTetrahedron*> oneTet; + oneTet.insert(ele); + node2Tet.insert(std::make_pair(v, oneTet)); + } + else{ + std::set<MTetrahedron*> allTets = itmap->second; + allTets.insert(allTets.begin(), ele); + itmap->second = allTets; + } + } + for (int j = 0; j < 4; j++){ + MFace f = ele->getFace(j); + std::map<MFace, std::vector<MTetrahedron*>, Less_Face >::iterator itmap = + face2Tet.find(f); + if (itmap == face2Tet.end()){ + std::vector<MTetrahedron*> oneTet; + oneTet.push_back(ele); + face2Tet.insert(std::make_pair(f, oneTet)); + } + else{ + std::vector<MTetrahedron*> allTets = itmap->second; + allTets.insert(allTets.begin(), ele); + itmap->second = allTets; + } + } + } + + //print voronoi poles + FILE *outfile; + //smooth_normals *snorm = gr->model()->normals; + outfile = Fopen("nodes.pos", "w"); + fprintf(outfile, "View \"Voronoi poles\" {\n"); + std::map<MVertex*, std::set<MTetrahedron*> >::iterator itmap = node2Tet.begin(); + for(; itmap != node2Tet.end(); itmap++){ + //MVertex *v = itmap->first; + std::set<MTetrahedron*> allTets = itmap->second; + std::set<MTetrahedron*>::const_iterator it = allTets.begin(); + MTetrahedron *poleTet = *it; + double maxRadius = poleTet->getCircumRadius(); + for(; it != allTets.end(); it++){ + double radius = (*it)->getCircumRadius(); + if (radius > maxRadius){ + maxRadius = radius; + poleTet = *it; + } + } + //if (v->onWhat()->dim() == 2 ){ + SPoint3 pc = poleTet->circumcenter(); + //double nx,ny,nz; + // SVector3 vN = snorm->get(v->x(), v->y(), v->z(), nx,ny,nz); + // SVector3 pcv(pc.x()-nx, pc.y()-ny,pc.z()-nz); + // printf("nx=%g ny=%g nz=%g dot=%g \n", nx,ny,nz, dot(vN, pcv)); + // if ( dot(vN, pcv) > 0.0 ) + double x[3] = {pc.x(), pc.y(), pc.z()}; + double uvw[3]; + poleTet->xyz2uvw(x, uvw); + //bool inside = poleTet->isInside(uvw[0], uvw[1], uvw[2]); + //if (inside){ + fprintf(outfile,"SP(%g,%g,%g) {%g};\n", + pc.x(), pc.y(), pc.z(), maxRadius); + candidates.insert(pc); + //} + //} + } + fprintf(outfile,"};\n"); + fclose(outfile); + + //print scalar lines + FILE *outfile2; + outfile2 = Fopen("edges.pos", "w"); + fprintf(outfile2, "View \"Voronoi edges\" {\n"); + std::map<MFace, std::vector<MTetrahedron*> , Less_Face >::iterator itmap2 = face2Tet.begin(); + for(; itmap2 != face2Tet.end(); itmap2++){ + std::vector<MTetrahedron*> allTets = itmap2->second; + if (allTets.size() != 2 ) continue; + SPoint3 pc1 = allTets[0]->circumcenter(); + SPoint3 pc2 = allTets[1]->circumcenter(); + //std::set<SPoint3>::const_iterator it1 = candidates.find(pc1); + //std::set<SPoint3>::const_iterator it2 = candidates.find(pc2); + //if( it1 != candidates.end() || it2 != candidates.end()) + fprintf(outfile2,"SL(%g,%g,%g,%g,%g,%g) {%g,%g};\n", + pc1.x(), pc1.y(), pc1.z(), pc2.x(), pc2.y(), pc2.z(), + allTets[0]->getCircumRadius(),allTets[1]->getCircumRadius()); + } + fprintf(outfile2,"};\n"); + fclose(outfile2); + +} + + +void getBoundingInfoAndSplitQuads(GRegion *gr, + std::map<MFace,GEntity*,Less_Face> &allBoundingFaces, + std::set<MVertex*> &allBoundingVertices, + splitQuadRecovery &sqr) +{ + std::map<MFace, GEntity*, Less_Face> allBoundingFaces_temp; + + // Get all the faces that are on the boundary + std::list<GFace*> faces = gr->faces(); + std::list<GFace*>::iterator it = faces.begin(); + while (it != faces.end()){ + GFace *gf = (*it); + for(unsigned int i = 0; i < gf->getNumMeshElements(); i++){ + allBoundingFaces_temp[gf->getMeshElement(i)->getFace(0)] = gf; + } + ++it; + } + + // if some elements pre-exist in the mesh, then use the internal faces of + // those + + for (unsigned int i=0;i<gr->getNumMeshElements();i++){ + MElement *e = gr->getMeshElement(i); + for (int j = 0; j < e->getNumFaces(); j++){ + std::map<MFace, GEntity*, Less_Face>::iterator it = allBoundingFaces_temp.find(e->getFace(j)); + if (it == allBoundingFaces_temp.end()) allBoundingFaces_temp[e->getFace(j)] = gr; + else allBoundingFaces_temp.erase(it); + } + } + + std::map<MFace, GEntity*, Less_Face>::iterator itx = allBoundingFaces_temp.begin(); + for (; itx != allBoundingFaces_temp.end();++itx){ + const MFace &f = itx->first; + // split the quad face into 4 triangular faces + if (f.getNumVertices() == 4){ + sqr.setEmpty(false); + MVertex *v0 = f.getVertex(0); + MVertex *v1 = f.getVertex(1); + MVertex *v2 = f.getVertex(2); + MVertex *v3 = f.getVertex(3); + MVertex *newv = new MVertex ((v0->x() + v1->x() + v2->x() + v3->x())*0.25, + (v0->y() + v1->y() + v2->y() + v3->y())*0.25, + (v0->z() + v1->z() + v2->z() + v3->z())*0.25,itx->second); + sqr.add(f,newv,itx->second); + sqr._invmap[f] = newv; + allBoundingFaces[MFace(v0,v1,newv)] = itx->second; + allBoundingFaces[MFace(v1,v2,newv)] = itx->second; + allBoundingFaces[MFace(v2,v3,newv)] = itx->second; + allBoundingFaces[MFace(v3,v0,newv)] = itx->second; + itx->second->mesh_vertices.push_back(newv); + allBoundingVertices.insert(v0); + allBoundingVertices.insert(v1); + allBoundingVertices.insert(v2); + allBoundingVertices.insert(v3); + allBoundingVertices.insert(newv); + } + else{ + allBoundingFaces[f] = itx->second; + allBoundingVertices.insert(f.getVertex(0)); + allBoundingVertices.insert(f.getVertex(1)); + allBoundingVertices.insert(f.getVertex(2)); + } + } +} + +#if defined(HAVE_TETGEN) + +#include "tetgen.h" + +void buildTetgenStructure(GRegion *gr, tetgenio &in, std::vector<MVertex*> &numberedV, + splitQuadRecovery &sqr) +{ + std::set<MVertex*> allBoundingVertices; + std::map<MFace,GEntity*,Less_Face> allBoundingFaces; + getBoundingInfoAndSplitQuads(gr, allBoundingFaces, allBoundingVertices, sqr); + + //// TEST + { + std::vector<MVertex*>ALL; + std::vector<MTetrahedron*> MESH; + ALL.insert(ALL.begin(),allBoundingVertices.begin(),allBoundingVertices.end()); + // delaunayMeshIn3D (ALL,MESH); + // exit(1); + } + + in.mesh_dim = 3; + in.firstnumber = 1; + in.numberofpoints = allBoundingVertices.size() + Filler::get_nbr_new_vertices() + + LpSmoother::get_nbr_interior_vertices(); + in.pointlist = new REAL[in.numberofpoints * 3]; + in.pointmarkerlist = NULL; + + std::set<MVertex*>::iterator itv = allBoundingVertices.begin(); + int I = 1; + while(itv != allBoundingVertices.end()){ + in.pointlist[(I - 1) * 3 + 0] = (*itv)->x(); + in.pointlist[(I - 1) * 3 + 1] = (*itv)->y(); + in.pointlist[(I - 1) * 3 + 2] = (*itv)->z(); + (*itv)->setIndex(I++); + numberedV.push_back(*itv); + ++itv; + } + + for(int i=0;i<Filler::get_nbr_new_vertices();i++){ + MVertex* v; + v = Filler::get_new_vertex(i); + in.pointlist[(I - 1) * 3 + 0] = v->x(); + in.pointlist[(I - 1) * 3 + 1] = v->y(); + in.pointlist[(I - 1) * 3 + 2] = v->z(); + I++; + } + + for(int i=0;i<LpSmoother::get_nbr_interior_vertices();i++){ + MVertex* v; + v = LpSmoother::get_interior_vertex(i); + in.pointlist[(I - 1) * 3 + 0] = v->x(); + in.pointlist[(I - 1) * 3 + 1] = v->y(); + in.pointlist[(I - 1) * 3 + 2] = v->z(); + I++; + } + + in.numberoffacets = allBoundingFaces.size(); + in.facetlist = new tetgenio::facet[in.numberoffacets]; + in.facetmarkerlist = new int[in.numberoffacets]; + + I = 0; + std::map<MFace,GEntity*,Less_Face>::iterator it = allBoundingFaces.begin(); + for (; it != allBoundingFaces.end();++it){ + const MFace &fac = it->first; + tetgenio::facet *f = &in.facetlist[I]; + tetgenio::init(f); + f->numberofholes = 0; + f->numberofpolygons = 1; + f->polygonlist = new tetgenio::polygon[f->numberofpolygons]; + tetgenio::polygon *p = &f->polygonlist[0]; + tetgenio::init(p); + p->numberofvertices = 3; + p->vertexlist = new int[p->numberofvertices]; + p->vertexlist[0] = fac.getVertex(0)->getIndex(); + p->vertexlist[1] = fac.getVertex(1)->getIndex(); + p->vertexlist[2] = fac.getVertex(2)->getIndex(); + in.facetmarkerlist[I] = (it->second->dim() == 3) ? -it->second->tag() : it->second->tag(); + ++I; + } +} + +void TransferTetgenMesh(GRegion *gr, tetgenio &in, tetgenio &out, + std::vector<MVertex*> &numberedV) +{ + // improvement has to be done here : tetgen splits some of the existing edges + // of the mesh. If those edges are classified on some model faces, new points + // SHOULD be classified on the model face and get the right set of parametric + // coordinates. + + const int initialSize = (int)numberedV.size(); + + for(int i = numberedV.size(); i < out.numberofpoints; i++){ + MVertex *v = new MVertex(out.pointlist[i * 3 + 0], + out.pointlist[i * 3 + 1], + out.pointlist[i * 3 + 2], gr); + gr->mesh_vertices.push_back(v); + numberedV.push_back(v); + } + + Msg::Info("%d points %d edges and %d faces in the initial mesh", + out.numberofpoints, out.numberofedges, out.numberoftrifaces); + + // Tetgen modifies both surface & edge mesh, so we need to re-create + // everything + + gr->model()->destroyMeshCaches(); + std::list<GFace*> faces = gr->faces(); + for(std::list<GFace*>::iterator it = faces.begin(); it != faces.end(); it++){ + GFace *gf = (*it); + for(unsigned int i = 0; i < gf->triangles.size(); i++) + delete gf->triangles[i]; + for(unsigned int i = 0; i < gf->quadrangles.size(); i++) + delete gf->quadrangles[i]; + gf->triangles.clear(); + gf->quadrangles.clear(); + gf->deleteVertexArrays(); + } + + // TODO: re-create 1D mesh + /*for(int i = 0; i < out.numberofedges; i++){ + MVertex *v[2]; + v[0] = numberedV[out.edgelist[i * 2 + 0] - 1]; + v[1] = numberedV[out.edgelist[i * 2 + 1] - 1]; + //implement here the 1D mesh ... + }*/ + + bool needParam = (CTX::instance()->mesh.order > 1 && + CTX::instance()->mesh.secondOrderExperimental); + // re-create the triangular meshes FIXME: this can lead to hanging nodes for + // non manifold geometries (single surface connected to volume) + for(int i = 0; i < out.numberoftrifaces; i++){ + // printf("%d %d %d\n",i,out.numberoftrifaces,needParam); + + if (out.trifacemarkerlist[i] > 0) { + MVertex *v[3]; + v[0] = numberedV[out.trifacelist[i * 3 + 0] - 1]; + v[1] = numberedV[out.trifacelist[i * 3 + 1] - 1]; + v[2] = numberedV[out.trifacelist[i * 3 + 2] - 1]; + // do not recover prismatic faces !!! + GFace *gf = gr->model()->getFaceByTag(out.trifacemarkerlist[i]); + + double guess[2] = {0, 0}; + if (needParam) { + int Count = 0; + for(int j = 0; j < 3; j++){ + if(!v[j]->onWhat()){ + Msg::Error("Uncategorized vertex %d", v[j]->getNum()); + } + else if(v[j]->onWhat()->dim() == 2){ + double uu,vv; + v[j]->getParameter(0, uu); + v[j]->getParameter(1, vv); + guess[0] += uu; + guess[1] += vv; + Count++; + } + else if(v[j]->onWhat()->dim() == 1){ + GEdge *ge = (GEdge*)v[j]->onWhat(); + double UU; + v[j]->getParameter(0, UU); + SPoint2 param; + param = ge->reparamOnFace(gf, UU, 1); + guess[0] += param.x(); + guess[1] += param.y(); + Count++; + } + else if(v[j]->onWhat()->dim() == 0){ + SPoint2 param; + GVertex *gv = (GVertex*)v[j]->onWhat(); + param = gv->reparamOnFace(gf,1); + guess[0] += param.x(); + guess[1] += param.y(); + Count++; + } + } + if(Count != 0){ + guess[0] /= Count; + guess[1] /= Count; + } + } + + for(int j = 0; j < 3; j++){ + if (out.trifacelist[i * 3 + j] - 1 >= initialSize){ + printf("aaaaaaaaaaaaaaargh\n"); + // if(v[j]->onWhat()->dim() == 3){ + v[j]->onWhat()->mesh_vertices.erase + (std::find(v[j]->onWhat()->mesh_vertices.begin(), + v[j]->onWhat()->mesh_vertices.end(), + v[j])); + MVertex *v1b; + if(needParam){ + // parametric coordinates should be set for the vertex ! (this is + // not 100 % safe yet, so we reserve that operation for high order + // meshes) + GPoint gp = gf->closestPoint(SPoint3(v[j]->x(), v[j]->y(), v[j]->z()), guess); + if(gp.g()){ + v1b = new MFaceVertex(gp.x(), gp.y(), gp.z(), gf, gp.u(), gp.v()); + } + else{ + v1b = new MVertex(v[j]->x(), v[j]->y(), v[j]->z(), gf); + Msg::Warning("The point was not projected back to the surface (%g %g %g)", + v[j]->x(), v[j]->y(), v[j]->z()); + } + } + else{ + v1b = new MVertex(v[j]->x(), v[j]->y(), v[j]->z(), gf); + } + + gf->mesh_vertices.push_back(v1b); + numberedV[out.trifacelist[i * 3 + j] - 1] = v1b; + delete v[j]; + v[j] = v1b; + } + } + // printf("new triangle %d %d %d\n",v[0]->onWhat()->dim(), v[1]->onWhat()->dim(), v[2]->onWhat()->dim()); + MTriangle *t = new MTriangle(v[0], v[1], v[2]); + gf->triangles.push_back(t); + }// do not do anything with prismatic faces + } + + + for(int i = 0; i < out.numberoftetrahedra; i++){ + MVertex *v1 = numberedV[out.tetrahedronlist[i * 4 + 0] - 1]; + MVertex *v2 = numberedV[out.tetrahedronlist[i * 4 + 1] - 1]; + MVertex *v3 = numberedV[out.tetrahedronlist[i * 4 + 2] - 1]; + MVertex *v4 = numberedV[out.tetrahedronlist[i * 4 + 3] - 1]; + MTetrahedron *t = new MTetrahedron(v1, v2, v3, v4); + gr->tetrahedra.push_back(t); + } +} + +#endif + +static void addOrRemove(const MFace &f, + MElement *e, + std::map<MFace,MElement*,Less_Face> & bfaces, + splitQuadRecovery &sqr) +{ + { + std::map<MFace, MVertex*, Less_Face>::const_iterator it = sqr._invmap.find(f); + if (it != sqr._invmap.end()){ + addOrRemove (MFace(it->second, f.getVertex(0),f.getVertex(1)),e,bfaces,sqr); + addOrRemove (MFace(it->second, f.getVertex(1),f.getVertex(2)),e,bfaces,sqr); + addOrRemove (MFace(it->second, f.getVertex(2),f.getVertex(3)),e,bfaces,sqr); + addOrRemove (MFace(it->second, f.getVertex(3),f.getVertex(0)),e,bfaces,sqr); + return; + } + } + + std::map<MFace,MElement*,Less_Face>::iterator it = bfaces.find(f); + if (it == bfaces.end())bfaces.insert(std::make_pair(f,e)); + else bfaces.erase(it); +} + + +/* + here, we have a list of elements that actually do not form a mesh + --> a set boundary layer elements (prism, hexes, pyramids (and soon tets) + --> a set of tetrahedra that respect the external boundary of the BL mesh, + yet possiblty containing elements that are on the other side of the boundary + and therefore overlapping those elements. We have to extract the good ones ! + + + +*/ + +static bool AssociateElementsToModelRegionWithBoundaryLayers (GRegion *gr, + std::vector<MTetrahedron*> &tets, + std::vector<MHexahedron*> &hexes, + std::vector<MPrism*> &prisms, + std::vector<MPyramid*> &pyramids, + splitQuadRecovery & sqr) +{ + std::set<MElement*> all; + all.insert(hexes.begin(),hexes.end()); + all.insert(prisms.begin(),prisms.end()); + all.insert(pyramids.begin(),pyramids.end()); + // start with one BL element ! + MElement *FIRST = all.size() ? *(all.begin()) : 0; + if (!FIRST) return true; + all.insert(tets.begin(),tets.end()); + + // printf("coucou1 %d eleemnts\n",all.size()); + fs_cont search; + buildFaceSearchStructure(gr->model(), search); + + // create the graph face 2 elements for the region + std::map<MFace,std::pair<MElement*,MElement*> ,Less_Face> myGraph; + + for (std::set<MElement*>::iterator it = all.begin(); it != all.end(); ++it){ + MElement *t = *it; + const int nbf = t->getNumFaces(); + for (int j=0;j<nbf;j++){ + MFace f = t->getFace(j); + std::map<MFace,std::pair<MElement*,MElement*>,Less_Face>::iterator itf = myGraph.find(f); + if (itf == myGraph.end())myGraph.insert (std::make_pair (f, std::make_pair (t,(MElement*)0))); + else { + // what to do ?????? + // two tets and one prism --> the prism should be + // geometrically on the other side of the tet + if (itf->second.second) { + MElement *prism=0, *t1=0, *t2=0; + if (itf->second.second->getType () == TYPE_PRI || itf->second.second->getType () == TYPE_PYR) { + prism = itf->second.second; + t1 = itf->second.first; + t2 = t; + } + else if (itf->second.first->getType () == TYPE_PRI || itf->second.first->getType () == TYPE_PYR) { + prism = itf->second.first; + t1 = itf->second.second; + t2 = t; + } + else if (t->getType () == TYPE_PRI || t->getType () == TYPE_PYR) { + prism = t; + t1 = itf->second.second; + t2 = itf->second.first; + } + else { + printf("types %d %d %d\n",t->getType () ,itf->second.first->getType (),itf->second.second->getType () ); + } + if (!t1 || !t2 || !prism){ + gr->model()->writeMSH("ooops.msh"); + Msg::Error ("Wrong BL configuration"); + return false; + } + SVector3 n = f.normal(); + SPoint3 c = f.barycenter(); + MVertex *v_prism = 0, *v_t1 = 0, *v_t2 = 0; + for (int i=0;i<4;i++){ + if (t1->getVertex(i) != f.getVertex(0) && + t1->getVertex(i) != f.getVertex(1) && + t1->getVertex(i) != f.getVertex(2))v_t1 = t1->getVertex(i); + if (t2->getVertex(i) != f.getVertex(0) && + t2->getVertex(i) != f.getVertex(1) && + t2->getVertex(i) != f.getVertex(2))v_t2 = t2->getVertex(i); + } + for (int i=0;i<prism->getNumVertices();i++){ + if (prism->getVertex(i) != f.getVertex(0) && + prism->getVertex(i) != f.getVertex(1) && + prism->getVertex(i) != f.getVertex(2)) v_prism = prism->getVertex(i); + } + SVector3 vf1 (v_t1->x() - c.x(),v_t1->y() - c.y(),v_t1->z() - c.z()); + SVector3 vf2 (v_t2->x() - c.x(),v_t2->y() - c.y(),v_t2->z() - c.z()); + SVector3 vfp (v_prism->x() - c.x(),v_prism->y() - c.y(),v_prism->z() - c.z()); + // printf("%12.5E %12.5E%12.5E\n",dot(vf1,n),dot(vf2,n),dot(vfp,n)); + if (dot (vf1,n) * dot (vfp,n) > 0){itf->second.first = prism;itf->second.second=t2; /*delete t1;*/} + else if (dot (vf2,n) * dot (vfp,n) > 0){itf->second.first = prism;itf->second.second=t1; /*delete t2;*/} + // else if (dot (vf2,vfp) > 0){itf->second.first = prism;itf->second.second=t2;} + else Msg::Fatal("Impossible Geom Config"); + } + else itf->second.second = t; + } + } + } + + std::stack<MElement*> myStack; + std::set<MElement*> connected; + std::set<GFace*> faces_bound; + myStack.push(FIRST); + while (!myStack.empty()){ + FIRST = myStack.top(); + myStack.pop(); + connected.insert(FIRST); + for (int i=0;i<FIRST->getNumFaces();i++){ + MFace f = FIRST->getFace(i); + std::map<MFace, MVertex*, Less_Face>::iterator it = sqr._invmap.find(f); + GFace* gfound = 0; + if (it != sqr._invmap.end()){ + gfound = (GFace*)it->second->onWhat(); + // one pyramid is useless because one element with a quad face impacts the + // boundary of the domain. + sqr._toDelete.insert(f); + } + else gfound = findInFaceSearchStructure (f,search); + if (!gfound){ + std::map<MFace,std::pair<MElement*,MElement*>,Less_Face>::iterator + itf = myGraph.find(f); + MElement *t_neigh = itf->second.first == FIRST ? + itf->second.second : itf->second.first; + if (!t_neigh)printf("oulalalalalalalala %d vertices\n",f.getNumVertices()); + if (connected.find(t_neigh) == connected.end())myStack.push(t_neigh); + } + else { + // if (faces_bound.find(gfound) == faces_bound.end())printf("face %d\n",gfound->tag()); + faces_bound.insert(gfound); + } + } + } + + // printf ("found a set of %d elements that are connected with %d bounding faces\n",connected.size(),faces_bound.size()); + GRegion *myGRegion = getRegionFromBoundingFaces(gr->model(), faces_bound); + // printf("REGION %d %d\n",myGRegion->tag(),gr->tag()); + if (myGRegion == gr){ + // printf("one region %d is found : %d elements\n",myGRegion->tag(),connected.size()); + myGRegion->tetrahedra.clear(); + for (std::set<MElement*>::iterator it = connected.begin(); it != connected.end(); ++it){ + MElement *t = *it; + std::set<MVertex*> _mesh_vertices; + for (int i=0;i<t->getNumVertices();i++){ + MVertex *_v = t->getVertex(i); + if (_v->onWhat() == gr){ + _mesh_vertices.insert(_v); + } + } + // myGRegion->mesh_vertices.insert(myGRegion->mesh_vertices.end(),_mesh_vertices.begin(),_mesh_vertices.end()); + + if (t->getType() == TYPE_TET) + myGRegion->tetrahedra.push_back((MTetrahedron*)t); + else if (t->getType() == TYPE_HEX) + myGRegion->hexahedra.push_back((MHexahedron*)t); + else if (t->getType() == TYPE_PRI) + myGRegion->prisms.push_back((MPrism*)t); + else if (t->getType() == TYPE_PYR) + myGRegion->pyramids.push_back((MPyramid*)t); + } + } + else { + return false; + } + return true; +} + +static int getWedge(BoundaryLayerColumns* _columns, MVertex *v1, MVertex *v2, + int indicesVert1 [], int indicesVert2 []) +{ + int N1 = _columns->getNbColumns(v1) ; + int N2 = _columns->getNbColumns(v2) ; + int fanSize = 4; + int NW1 = 0; + int NW2 = 0; + for (int i=0;i<N1;i++){ + const BoundaryLayerData & c1 = _columns->getColumn(v1,i); + if (c1._joint.size())NW1++; + } + for (int i=0;i<N2;i++){ + const BoundaryLayerData & c2 = _columns->getColumn(v2,i); + if (c2._joint.size())NW2++; + } + + std::map<int,int> one2two; + for (int i=0;i<NW1;i++){ + const BoundaryLayerData & c1 = _columns->getColumn(v1,i); + for (int j=0;j<NW2;j++){ + const BoundaryLayerData & c2 = _columns->getColumn(v2,j); + for (unsigned int k=0;k<c2._joint.size();k++){ + if (std::find(c1._joint.begin(),c1._joint.end(),c2._joint[k]) != + c1._joint.end()) { + one2two[i] = j; + } + } + } + } + + // printf("%d %d %d %d \n",N1,N2,NW1,NW2); + // for (std::map<int,int>::iterator it = one2two.begin(); it != one2two.end(); it++){ + // printf("one2two[%d] = %d\n",it->first,it->second); + // } + if (one2two.size() != 2)return 0; + + int vert1Start,vert1End; + int vert2Start,vert2End; + std::map<int,int>::iterator it = one2two.begin(); + vert1Start = it->first; + vert2Start = it->second; + ++it; + vert1End = it->first; + vert2End = it->second; + + + int INDEX1 = 0, count = 0; + for (int i=0;i<NW1;i++){ + for (int j=i+1;j<NW1;j++){ + if ((vert1Start == i && vert1End == j) || + (vert1Start == j && vert1End == i)) + { + INDEX1 = count; + } + count++; + } + } + int INDEX2 = 0; + count = 0; + for (int i=0;i<NW2;i++){ + for (int j=i+1;j<NW2;j++){ + if ((vert2Start == i && vert2End == j) || + (vert2Start == j && vert2End == i)) + { + INDEX2 = count; + } + count++; + } + } + + int indexVert1Start = NW1 + fanSize * ( 0 + INDEX1); + int indexVert1End = NW1 + fanSize * ( 1 + INDEX1); + + int indexVert2Start = NW2 + fanSize * ( 0 + INDEX2); + int indexVert2End = NW2 + fanSize * ( 1 + INDEX2); + + indicesVert1[0] = vert1Start; + int k=1; + for (int i=indexVert1Start;i< indexVert1End;++i)indicesVert1[k++] = i; + indicesVert1[fanSize+1] = vert1End; + + indicesVert2[0] = vert2Start; + k = 1; + if (indexVert2End > indexVert2Start){ + for (int i=indexVert2Start;i< indexVert2End;++i)indicesVert2[k++] = i; + } + else { + for (int i=indexVert2Start-1;i<= indexVert2End;--i)indicesVert2[k++] = i; + } + indicesVert2[fanSize+1] = vert2End; + + + // printf("%d %d %d %d %d %d %d %d\n",vert1Start,vert1End,vert2Start,vert2End,indexVert1Start,indexVert1End,indexVert2Start,indexVert2End); + // return 0; + + return fanSize + 2; +} + + +static bool modifyInitialMeshForTakingIntoAccountBoundaryLayers(GRegion *gr, splitQuadRecovery & sqr) +{ + if (getBLField(gr->model())) insertVerticesInRegion(gr,-1); + if (!buildAdditionalPoints3D (gr)) return false; + BoundaryLayerColumns* _columns = gr->getColumns(); + std::map<MFace,MElement*,Less_Face> bfaces; + + std::vector<MPrism*> blPrisms; + std::vector<MHexahedron*> blHexes; + std::vector<MPyramid*> blPyrs; + std::list<GFace*> faces = gr->faces(); + + std::list<GFace*> embedded_faces = gr->embeddedFaces(); + faces.insert(faces.begin(), embedded_faces.begin(),embedded_faces.end()); + std::set<MVertex*> verts; + + { + std::list<GFace*>::iterator itf = faces.begin(); + while(itf != faces.end()){ + for(unsigned int i = 0; i< (*itf)->getNumMeshElements(); i++){ + MElement *e = (*itf)->getMeshElement(i); + addOrRemove (e->getFace(0),0,bfaces,sqr); + } + ++itf; + } + } + + std::list<GFace*>::iterator itf = faces.begin(); + while(itf != faces.end()){ + for(unsigned int i = 0; i< (*itf)->triangles.size(); i++){ + MVertex *v1 = (*itf)->triangles[i]->getVertex(0); + MVertex *v2 = (*itf)->triangles[i]->getVertex(1); + MVertex *v3 = (*itf)->triangles[i]->getVertex(2); + MFace dv (v1,v2,v3); + for (unsigned int SIDE = 0 ; SIDE < _columns->_normals3D.count(dv); SIDE ++){ + faceColumn fc = _columns->getColumns(*itf,v1, v2, v3, SIDE); + const BoundaryLayerData & c1 = fc._c1; + const BoundaryLayerData & c2 = fc._c2; + const BoundaryLayerData & c3 = fc._c3; + int N = std::min(c1._column.size(),std::min(c2._column.size(),c3._column.size())); + + // double distMax = getDistMax (v1, v2, v3, c1._n, c2._n, c3._n); + MFace f_low (v1,v2,v3); + SVector3 n_low = f_low.normal(); + // printf("%d Layers\n",N); + std::vector<MElement*> myCol; + for (int l=0;l < N ;++l){ + MVertex *v11,*v12,*v13,*v21,*v22,*v23; + v21 = c1._column[l]; + v22 = c2._column[l]; + v23 = c3._column[l]; + if (l == 0){ + v11 = v1; + v12 = v2; + v13 = v3; + } + else { + v11 = c1._column[l-1]; + v12 = c2._column[l-1]; + v13 = c3._column[l-1]; + } + MFace f_up (v21,v22,v23); + SVector3 n_up = f_up.normal(); + double dotProd = dot(n_up,n_low); + MPrism *prism = new MPrism(v11,v12,v13,v21,v22,v23); + if (dotProd > 0.2 && prism->skewness() > 0.1){ + blPrisms.push_back(prism); + myCol.push_back(prism); + } + else { + delete prism; + l = N+1; + } + } + if (!myCol.empty()){ + for (unsigned int l=0;l<myCol.size();l++)_columns->_toFirst[myCol[l]] = myCol[0]; + _columns->_elemColumns[myCol[0]] = myCol; + } + } + } + ++itf; + } + + std::set<MEdge,Less_Edge> edges; + { + std::list<GEdge*> gedges = gr->edges(); + for (std::list<GEdge*>::iterator it = gedges.begin(); it != gedges.end() ; ++it){ + for (unsigned int i=0;i<(*it)->lines.size();++i){ + edges.insert(MEdge((*it)->lines[i]->getVertex(0),(*it)->lines[i]->getVertex(1))); + } + } + } + + // now treat the Wedges + // we have to know the two target GFaces that are concerned with a GEdge + std::set<MEdge>::iterator ite = edges.begin(); + while(ite != edges.end()){ + MEdge e = *ite; + MVertex *v1 = e.getVertex(0); + MVertex *v2 = e.getVertex(1); + if (v1 != v2){ + int indices1[256]; + int indices2[256]; + int NbW = getWedge (_columns, v1, v2, indices1,indices2); + for (int i=0;i<NbW-1;i++){ + int i11 = indices1[i]; + int i12 = indices1[i+1]; + int i21 = indices2[i]; + int i22 = indices2[i+1]; + BoundaryLayerData c11 = _columns->getColumn(v1,i11); + BoundaryLayerData c12 = _columns->getColumn(v1,i12); + BoundaryLayerData c21 = _columns->getColumn(v2,i21); + BoundaryLayerData c22 = _columns->getColumn(v2,i22); + int N = std::min(c11._column.size(), + std::min(c12._column.size(), + std::min(c21._column.size(), c22._column.size()))); + std::vector<MElement*> myCol; + for (int l=0;l < N ;++l){ + MVertex *v11,*v12,*v13,*v14; + MVertex *v21,*v22,*v23,*v24; + v21 = c11._column[l]; + v22 = c12._column[l]; + v23 = c22._column[l]; + v24 = c21._column[l]; + if (l == 0){ + v11 = v12 = v1; + v13 = v14 = v2; + } + else { + v11 = c11._column[l-1]; + v12 = c12._column[l-1]; + v13 = c22._column[l-1]; + v14 = c21._column[l-1]; + } + + if (l == 0){ + MPrism *prism = new MPrism(v12,v21,v22,v13,v24,v23); + // store the layer the element belongs + myCol.push_back(prism); + + blPrisms.push_back(prism); + } + else { + MHexahedron *hex = new MHexahedron(v11,v12,v13,v14,v21,v22,v23,v24); + // store the layer the element belongs + myCol.push_back(hex); + blHexes.push_back(hex); + } + } + if (!myCol.empty()){ + for (unsigned int l=0;l<myCol.size();l++)_columns->_toFirst[myCol[l]] = myCol[0]; + _columns->_elemColumns[myCol[0]] = myCol; + } + } + } + ++ite; + } + // ------------------------------------------------------------------------------------ + // FIXME : NOT 100 % CORRECT + // filterOverlappingElements (blPrisms,blHexes,_columns->_elemColumns,_columns->_toFirst); + // ------------------------------------------------------------------------------------ + { + FILE *ff2 = fopen ("tato3D.pos","w"); + fprintf(ff2,"View \" \"{\n"); + for (unsigned int i = 0; i < blPrisms.size();i++){ + blPrisms[i]->writePOS(ff2,1,0,0,0,0,0); + } + for (unsigned int i = 0; i < blHexes.size();i++){ + blHexes[i]->writePOS(ff2,1,0,0,0,0,0); + } + fprintf(ff2,"};\n"); + fclose(ff2); + } + + for (unsigned int i = 0; i < blPrisms.size();i++){ + for (unsigned int j=0;j<5;j++) + addOrRemove(blPrisms[i]->getFace(j),blPrisms[i],bfaces,sqr); + for (int j = 0; j < 6; j++) + if(blPrisms[i]->getVertex(j)->onWhat() == gr)verts.insert(blPrisms[i]->getVertex(j)); + } + for (unsigned int i = 0; i < blHexes.size();i++){ + for (unsigned int j=0;j<6;j++) + addOrRemove(blHexes[i]->getFace(j),blHexes[i],bfaces, sqr); + for (int j = 0; j < 8; j++) + if(blHexes[i]->getVertex(j)->onWhat() == gr)verts.insert(blHexes[i]->getVertex(j)); + } + + discreteFace *nf = new discreteFace(gr->model(), 444444); + gr->model()->add (nf); + std::list<GFace*> hop; + std::map<MFace,MElement*,Less_Face>::iterator it = bfaces.begin(); + + FILE *ff = fopen ("toto3D.pos","w"); + fprintf(ff,"View \" \"{\n"); + for (; it != bfaces.end(); ++it){ + if (it->first.getNumVertices() == 3){ + nf->triangles.push_back(new MTriangle (it->first.getVertex(0),it->first.getVertex(1),it->first.getVertex(2))); + fprintf(ff,"ST (%g,%g,%g,%g,%g,%g,%g,%g,%g){1,1,1};\n", + it->first.getVertex(0)->x(),it->first.getVertex(0)->y(),it->first.getVertex(0)->z(), + it->first.getVertex(1)->x(),it->first.getVertex(1)->y(),it->first.getVertex(1)->z(), + it->first.getVertex(2)->x(),it->first.getVertex(2)->y(),it->first.getVertex(2)->z()); + } + else { + + // we have a quad face --> create a pyramid + + MElement *e = it->second; + + // compute the center of the face; + SPoint3 center (0.25*(it->first.getVertex(0)->x()+it->first.getVertex(1)->x()+it->first.getVertex(2)->x()+it->first.getVertex(3)->x()), + 0.25*(it->first.getVertex(0)->y()+it->first.getVertex(1)->y()+it->first.getVertex(2)->y()+it->first.getVertex(3)->y()), + 0.25*(it->first.getVertex(0)->z()+it->first.getVertex(1)->z()+it->first.getVertex(2)->z()+it->first.getVertex(3)->z())); + // compute the center of the opposite face; + SPoint3 opposite (0,0,0); + int counter=0; + for (int i=0;i<e->getNumVertices();i++){ + MVertex *vv = e->getVertex(i); + bool found = false; + for (int j=0;j<4;j++){ + MVertex *ww = it->first.getVertex(j); + if (ww == vv)found = true; + } + if (!found){ + counter ++; + opposite += SPoint3(vv->x(),vv->y(),vv->z()); + } + } + // printf("counter = %d\n",counter); + if(counter) + opposite /= (double)counter; + + SVector3 dir = center - opposite; + MTriangle temp (it->first.getVertex(0),it->first.getVertex(1),it->first.getVertex(2)); + double D = temp.minEdge(); + dir.normalize(); + const double eps = D*1.e-2; + MVertex *newv = new MVertex (center.x() + eps * dir.x(),center.y() + eps * dir.y(), center.z() + eps * dir.z(), gr); + + MPyramid *pyr = new MPyramid (it->first.getVertex(0),it->first.getVertex(1),it->first.getVertex(2),it->first.getVertex(3),newv); + verts.insert(newv); + blPyrs.push_back(pyr); + + nf->triangles.push_back(new MTriangle (it->first.getVertex(0),it->first.getVertex(1),newv)); + nf->triangles.push_back(new MTriangle (it->first.getVertex(1),it->first.getVertex(2),newv)); + nf->triangles.push_back(new MTriangle (it->first.getVertex(2),it->first.getVertex(3),newv)); + nf->triangles.push_back(new MTriangle (it->first.getVertex(3),it->first.getVertex(0),newv)); + + fprintf(ff,"ST (%g,%g,%g,%g,%g,%g,%g,%g,%g){2,2,2};\n", + it->first.getVertex(0)->x(),it->first.getVertex(0)->y(),it->first.getVertex(0)->z(), + it->first.getVertex(1)->x(),it->first.getVertex(1)->y(),it->first.getVertex(1)->z(), + newv->x(),newv->y(),newv->z()); + + fprintf(ff,"ST (%g,%g,%g,%g,%g,%g,%g,%g,%g){2,2,2};\n", + it->first.getVertex(1)->x(),it->first.getVertex(1)->y(),it->first.getVertex(1)->z(), + it->first.getVertex(2)->x(),it->first.getVertex(2)->y(),it->first.getVertex(2)->z(), + newv->x(),newv->y(),newv->z()); + + fprintf(ff,"ST (%g,%g,%g,%g,%g,%g,%g,%g,%g){2,2,2};\n", + it->first.getVertex(2)->x(),it->first.getVertex(2)->y(),it->first.getVertex(2)->z(), + it->first.getVertex(3)->x(),it->first.getVertex(3)->y(),it->first.getVertex(3)->z(), + newv->x(),newv->y(),newv->z()); + fprintf(ff,"ST (%g,%g,%g,%g,%g,%g,%g,%g,%g){2,2,2};\n", + it->first.getVertex(3)->x(),it->first.getVertex(3)->y(),it->first.getVertex(3)->z(), + it->first.getVertex(0)->x(),it->first.getVertex(0)->y(),it->first.getVertex(0)->z(), + newv->x(),newv->y(),newv->z()); + + fprintf(ff,"SQ (%g,%g,%g,%g,%g,%g,%g,%g,%g,%g,%g,%g){3,3,3,3};\n", + it->first.getVertex(0)->x(),it->first.getVertex(0)->y(),it->first.getVertex(0)->z(), + it->first.getVertex(1)->x(),it->first.getVertex(1)->y(),it->first.getVertex(1)->z(), + it->first.getVertex(2)->x(),it->first.getVertex(2)->y(),it->first.getVertex(2)->z(), + it->first.getVertex(3)->x(),it->first.getVertex(3)->y(),it->first.getVertex(3)->z()); + } + } + fprintf(ff,"};\n"); + fclose(ff); + + printf("discrete face with %d %d elems\n", (int)nf->triangles.size(), + (int)nf->quadrangles.size()); + hop.push_back(nf); + + for(unsigned int i = 0; i < gr->tetrahedra.size(); i++) delete gr->tetrahedra[i]; + gr->tetrahedra.clear(); + + gr->set(hop); + CreateAnEmptyVolumeMesh(gr); + printf("%d tets\n", (int)gr->tetrahedra.size()); + deMeshGFace _kill; + _kill (nf); + //<<<<<<< .mine + gr->model()->remove(nf); + // delete nf; + //======= + //>>>>>>> .r18259 + delete nf; + + gr->set(faces); + gr->mesh_vertices.insert(gr->mesh_vertices.begin(),verts.begin(),verts.end()); + + gr->model()->writeMSH("BL_start.msh"); + + AssociateElementsToModelRegionWithBoundaryLayers (gr, gr->tetrahedra , blHexes, blPrisms, blPyrs, sqr); + + gr->model()->writeMSH("BL_start2.msh"); + + return true; +} + +void _relocateVertex(MVertex *ver, + const std::vector<MElement*> <) +{ + if(ver->onWhat()->dim() != 3) return; + double x = 0, y=0, z=0; + int N = 0; + bool isPyramid = false; + for(unsigned int i = 0; i < lt.size(); i++){ + double XCG=0,YCG=0,ZCG=0; + for (int j=0;j<lt[i]->getNumVertices();j++){ + XCG += lt[i]->getVertex(j)->x(); + YCG += lt[i]->getVertex(j)->y(); + ZCG += lt[i]->getVertex(j)->z(); + } + x += XCG; + y += YCG; + z += ZCG; + if (lt[i]->getNumVertices() == 5) isPyramid = true; + N += lt[i]->getNumVertices(); + } + if (isPyramid){ + ver->x() = x / N; + ver->y() = y / N; + ver->z() = z / N; + } +} + +#if defined(HAVE_TETGEN) +bool CreateAnEmptyVolumeMesh(GRegion *gr) +{ + printf("creating an empty volume mesh\n"); + splitQuadRecovery sqr; + tetgenio in, out; + std::vector<MVertex*> numberedV; + char opts[128]; + buildTetgenStructure(gr, in, numberedV, sqr); + printf("tetgen structure created\n"); + sprintf(opts, "-Ype%c", + (Msg::GetVerbosity() < 3) ? 'Q': + (Msg::GetVerbosity() > 6) ? 'V': '\0'); + try{ + tetrahedralize(opts, &in, &out); + } + catch (int error){ + Msg::Error("Self intersecting surface mesh"); + return false; + } + printf("creating an empty volume mesh done\n"); + TransferTetgenMesh(gr, in, out, numberedV); + return true; +} + +#else + +bool CreateAnEmptyVolumeMesh(GRegion *gr) +{ + Msg::Error("You should compile with TETGEN in order to create an empty volume mesh"); + return false; +} + +#endif + +void MeshDelaunayVolumeTetgen(std::vector<GRegion*> ®ions) +{ + if(regions.empty()) return; + +#if !defined(HAVE_TETGEN) + Msg::Error("Tetgen is not compiled in this version of Gmsh"); +#else + + for(unsigned int i = 0; i < regions.size(); i++) + Msg::Info("Meshing volume %d (Delaunay)", regions[i]->tag()); + + // put all the faces in the same model + GRegion *gr = regions[0]; + std::list<GFace*> faces = gr->faces(); + + std::set<GFace*> allFacesSet; + for(unsigned int i = 0; i < regions.size(); i++){ + std::list<GFace*> f = regions[i]->faces(); + allFacesSet.insert(f.begin(), f.end()); + f = regions[i]->embeddedFaces(); + allFacesSet.insert(f.begin(), f.end()); + } + std::list<GFace*> allFaces; + for(std::set<GFace*>::iterator it = allFacesSet.begin(); it != allFacesSet.end(); it++){ + allFaces.push_back(*it); + } + gr->set(allFaces); + + // mesh with tetgen, possibly changing the mesh on boundaries (leave + // this in block, so in/out are destroyed before we refine the mesh) + splitQuadRecovery sqr; + { + tetgenio in, out; + std::vector<MVertex*> numberedV; + char opts[128]; + buildTetgenStructure(gr, in, numberedV, sqr); + if(CTX::instance()->mesh.algo3d == ALGO_3D_FRONTAL_DEL || + CTX::instance()->mesh.algo3d == ALGO_3D_FRONTAL_HEX || + CTX::instance()->mesh.algo3d == ALGO_3D_MMG3D || + CTX::instance()->mesh.algo2d == ALGO_2D_FRONTAL_QUAD || + CTX::instance()->mesh.algo2d == ALGO_2D_BAMG){ + sprintf(opts, "Ype%c", (Msg::GetVerbosity() < 3) ? 'Q': + (Msg::GetVerbosity() > 6) ? 'V': '\0'); + // removed -q because mesh sizes at new vertices are wrong + // sprintf(opts, "-q1.5pY%c", (Msg::GetVerbosity() < 3) ? 'Q': + // (Msg::GetVerbosity() > 6) ? 'V': '\0'); + } + else if (CTX::instance()->mesh.algo3d == ALGO_3D_RTREE){ + sprintf(opts, "S0Ype%c", (Msg::GetVerbosity() < 3) ? 'Q': + (Msg::GetVerbosity() > 6) ? 'V': '\0'); + } + else { + sprintf(opts, "Ype%c", + (Msg::GetVerbosity() < 3) ? 'Q': + (Msg::GetVerbosity() > 6) ? 'V': '\0'); + // removed -q because mesh sizes at new vertices are wrong + // sprintf(opts, "-q3.5Ype%c", (Msg::GetVerbosity() < 3) ? 'Q': + // (Msg::GetVerbosity() > 6) ? 'V': '\0');*/ + } + try{ + tetrahedralize(opts, &in, &out); + } + catch (int error){ + Msg::Error("Self intersecting surface mesh, computing intersections " + "(this could take a while)"); + sprintf(opts, "dV"); + try{ + tetrahedralize(opts, &in, &out); + Msg::Info("%d intersecting faces have been saved into 'intersect.pos'", + out.numberoftrifaces); + FILE *fp = Fopen("intersect.pos", "w"); + if(fp){ + fprintf(fp, "View \"intersections\" {\n"); + for(int i = 0; i < out.numberoftrifaces; i++){ + MVertex *v1 = numberedV[out.trifacelist[i * 3 + 0] - 1]; + MVertex *v2 = numberedV[out.trifacelist[i * 3 + 1] - 1]; + MVertex *v3 = numberedV[out.trifacelist[i * 3 + 2] - 1]; + int surf = out.trifacemarkerlist[i]; + fprintf(fp, "ST(%g,%g,%g,%g,%g,%g,%g,%g,%g){%d,%d,%d};\n", + v1->x(), v1->y(), v1->z(), v2->x(), v2->y(), v2->z(), + v3->x(), v3->y(), v3->z(), surf, surf, surf); + } + fprintf(fp, "};\n"); + fclose(fp); + } + else + Msg::Error("Could not open file 'intersect.pos'"); + } + catch (int error2){ + Msg::Error("Surface mesh is wrong, cannot do the 3D mesh"); + } + gr->set(faces); + return; + } + TransferTetgenMesh(gr, in, out, numberedV); + } + + + // sort triangles in all model faces in order to be able to search in vectors + std::list<GFace*>::iterator itf = allFaces.begin(); + while(itf != allFaces.end()){ + compareMTriangleLexicographic cmp; + std::sort((*itf)->triangles.begin(), (*itf)->triangles.end(), cmp); + ++itf; + } + + // restore the initial set of faces + gr->set(faces); + + bool _BL = modifyInitialMeshForTakingIntoAccountBoundaryLayers(gr,sqr); + + // now do insertion of points + if(CTX::instance()->mesh.algo3d == ALGO_3D_FRONTAL_DEL) + bowyerWatsonFrontalLayers(gr, false); + else if(CTX::instance()->mesh.algo3d == ALGO_3D_FRONTAL_HEX) + bowyerWatsonFrontalLayers(gr, true); + else if(CTX::instance()->mesh.algo3d == ALGO_3D_MMG3D){ + refineMeshMMG(gr); + } + else + if(!Filler::get_nbr_new_vertices() && !LpSmoother::get_nbr_interior_vertices()){ + insertVerticesInRegion(gr,2000000000,!_BL); + } + + //emi test frame field + // int NumSmooth = 10;//CTX::instance()->mesh.smoothCrossField + // std::cout << "NumSmooth = " << NumSmooth << std::endl; + // if(NumSmooth && (gr->dim() == 3)){ + // double scale = gr->bounds().diag()*1e-2; + // Frame_field::initRegion(gr,NumSmooth); + // Frame_field::saveCrossField("cross0.pos",scale); + // //Frame_field::smoothRegion(gr,NumSmooth); + // //Frame_field::saveCrossField("cross1.pos",scale); + // GFace *gf = GModel::current()->getFaceByTag(2); + // Frame_field::continuousCrossField(gr,gf); + // Frame_field::saveCrossField("cross2.pos",scale); + // } + // Frame_field::init_region(gr); + // Frame_field::clear(); + // exit(1); + //fin test emi + + if (sqr.buildPyramids (gr->model())){ + // relocate vertices if pyramids + for(unsigned int k = 0; k < regions.size(); k++){ + v2t_cont adj; + buildVertexToElement(regions[k]->tetrahedra, adj); + buildVertexToElement(regions[k]->pyramids, adj); + v2t_cont::iterator it = adj.begin(); + while (it != adj.end()){ + _relocateVertex( it->first, it->second); + ++it; + } + } + } +#endif +} + +// uncomment this to test the new code +//##define NEW_CODE + +void MeshDelaunayVolume(std::vector<GRegion*> ®ions) +{ + if(regions.empty()) return; + +#if !defined(NEW_CODE) && defined(HAVE_TETGEN) + MeshDelaunayVolumeTetgen(regions); + return; +#endif + splitQuadRecovery sqr; + + for(unsigned int i = 0; i < regions.size(); i++) + Msg::Info("Meshing volume %d (Delaunay)", regions[i]->tag()); + + // put all the faces in the same model + GRegion *gr = regions[0]; + std::list<GFace*> faces = gr->faces(); + + std::set<GFace*> allFacesSet; + for(unsigned int i = 0; i < regions.size(); i++){ + std::list<GFace*> f = regions[i]->faces(); + allFacesSet.insert(f.begin(), f.end()); + f = regions[i]->embeddedFaces(); + allFacesSet.insert(f.begin(), f.end()); + } + std::list<GFace*> allFaces; + for(std::set<GFace*>::iterator it = allFacesSet.begin(); + it != allFacesSet.end(); it++){ + allFaces.push_back(*it); + } + gr->set(allFaces); + + try{ + meshGRegionBoundaryRecovery *init = new meshGRegionBoundaryRecovery(); + init->reconstructmesh(gr); + delete init; + } + catch(int err){ + Msg::Error("Could not recover boundary: error %d", err); + } + + // sort triangles in all model faces in order to be able to search in vectors + std::list<GFace*>::iterator itf = allFaces.begin(); + while(itf != allFaces.end()){ + compareMTriangleLexicographic cmp; + std::sort((*itf)->triangles.begin(), (*itf)->triangles.end(), cmp); + ++itf; + } + + // restore the initial set of faces + gr->set(faces); + + bool _BL = modifyInitialMeshForTakingIntoAccountBoundaryLayers(gr,sqr); + + // now do insertion of points + if(CTX::instance()->mesh.algo3d == ALGO_3D_FRONTAL_DEL) + bowyerWatsonFrontalLayers(gr, false); + else if(CTX::instance()->mesh.algo3d == ALGO_3D_FRONTAL_HEX) + bowyerWatsonFrontalLayers(gr, true); + else if(CTX::instance()->mesh.algo3d == ALGO_3D_MMG3D){ + refineMeshMMG(gr); + } + else if(!Filler::get_nbr_new_vertices() && !LpSmoother::get_nbr_interior_vertices()){ + insertVerticesInRegion(gr,2000000000,!_BL); + } +} + +#if defined(HAVE_NETGEN) + +namespace nglib { +#include "nglib_gmsh.h" +} +using namespace nglib; + +static void getAllBoundingVertices(GRegion *gr, std::set<MVertex*> &allBoundingVertices) +{ + std::list<GFace*> faces = gr->faces(); + std::list<GFace*>::iterator it = faces.begin(); + + while (it != faces.end()){ + GFace *gf = (*it); + for(unsigned int i = 0; i < gf->triangles.size(); i++){ + MTriangle *t = gf->triangles[i]; + for(int k = 0; k < 3; k++) + if(allBoundingVertices.find(t->getVertex(k)) == allBoundingVertices.end()) + allBoundingVertices.insert(t->getVertex(k)); + } + ++it; + } +} + +Ng_Mesh *buildNetgenStructure(GRegion *gr, bool importVolumeMesh, + std::vector<MVertex*> &numberedV) +{ + Ng_Init(); + Ng_Mesh *ngmesh = Ng_NewMesh(); + + std::set<MVertex*> allBoundingVertices; + getAllBoundingVertices(gr, allBoundingVertices); + + std::set<MVertex*>::iterator itv = allBoundingVertices.begin(); + int I = 1; + while(itv != allBoundingVertices.end()){ + double tmp[3]; + tmp[0] = (*itv)->x(); + tmp[1] = (*itv)->y(); + tmp[2] = (*itv)->z(); + (*itv)->setIndex(I++); + numberedV.push_back(*itv); + Ng_AddPoint(ngmesh, tmp); + ++itv; + } + + if(importVolumeMesh){ + for(unsigned int i = 0; i < gr->mesh_vertices.size(); i++){ + double tmp[3]; + tmp[0] = gr->mesh_vertices[i]->x(); + tmp[1] = gr->mesh_vertices[i]->y(); + tmp[2] = gr->mesh_vertices[i]->z(); + gr->mesh_vertices[i]->setIndex(I++); + Ng_AddPoint(ngmesh, tmp); + } + } + std::list<GFace*> faces = gr->faces(); + std::list<GFace*>::iterator it = faces.begin(); + while(it != faces.end()){ + GFace *gf = (*it); + for(unsigned int i = 0; i< gf->triangles.size(); i++){ + MTriangle *t = gf->triangles[i]; + int tmp[3]; + tmp[0] = t->getVertex(0)->getIndex(); + tmp[1] = t->getVertex(1)->getIndex(); + tmp[2] = t->getVertex(2)->getIndex(); + Ng_AddSurfaceElement(ngmesh, NG_TRIG, tmp); + } + ++it; + } + + if(importVolumeMesh){ + for(unsigned int i = 0; i< gr->tetrahedra.size(); i++){ + MTetrahedron *t = gr->tetrahedra[i]; + // netgen expects tet with negative volume + if(t->getVolumeSign() > 0) t->reverse(); + int tmp[4]; + tmp[0] = t->getVertex(0)->getIndex(); + tmp[1] = t->getVertex(1)->getIndex(); + tmp[2] = t->getVertex(2)->getIndex(); + tmp[3] = t->getVertex(3)->getIndex(); + Ng_AddVolumeElement(ngmesh, NG_TET, tmp); + } + } + + return ngmesh; +} + +void TransferVolumeMesh(GRegion *gr, Ng_Mesh *ngmesh, + std::vector<MVertex*> &numberedV) +{ + // Gets total number of vertices of Netgen's mesh + int nbv = Ng_GetNP(ngmesh); + if(!nbv) return; + + int nbpts = numberedV.size(); + + // Create new volume vertices + for(int i = nbpts; i < nbv; i++){ + double tmp[3]; + Ng_GetPoint(ngmesh, i + 1, tmp); + MVertex *v = new MVertex (tmp[0], tmp[1], tmp[2], gr); + numberedV.push_back(v); + gr->mesh_vertices.push_back(v); + } + + // Get total number of simplices of Netgen's mesh + int nbe = Ng_GetNE(ngmesh); + + // Create new volume simplices + for(int i = 0; i < nbe; i++){ + int tmp[4]; + Ng_GetVolumeElement(ngmesh, i + 1, tmp); + MTetrahedron *t = new MTetrahedron(numberedV[tmp[0] - 1], + numberedV[tmp[1] - 1], + numberedV[tmp[2] - 1], + numberedV[tmp[3] - 1]); + gr->tetrahedra.push_back(t); + } +} + +#endif + +void deMeshGRegion::operator() (GRegion *gr) +{ + if(gr->geomType() == GEntity::DiscreteVolume) return; + gr->deleteMesh(); +} + +/// X_1 (1-u-v) + X_2 u + X_3 v = P_x + t N_x +/// Y_1 (1-u-v) + Y_2 u + Y_3 v = P_y + t N_y +/// Z_1 (1-u-v) + Z_2 u + Z_3 v = P_z + t N_z + +int intersect_line_triangle(double X[3], double Y[3], double Z[3] , + double P[3], double N[3], const double eps_prec) +{ + double mat[3][3], det; + double b[3], res[3]; + + mat[0][0] = X[1] - X[0]; + mat[0][1] = X[2] - X[0]; + mat[0][2] = N[0]; + + mat[1][0] = Y[1] - Y[0]; + mat[1][1] = Y[2] - Y[0]; + mat[1][2] = N[1]; + + mat[2][0] = Z[1] - Z[0]; + mat[2][1] = Z[2] - Z[0]; + mat[2][2] = N[2]; + + b[0] = P[0] - X[0]; + b[1] = P[1] - Y[0]; + b[2] = P[2] - Z[0]; + + if(!sys3x3_with_tol(mat, b, res, &det)) + { + return 0; + } + // printf("coucou %g %g %g\n",res[0],res[1],res[2]); + if(res[0] >= eps_prec && res[0] <= 1.0 - eps_prec && + res[1] >= eps_prec && res[1] <= 1.0 - eps_prec && + 1 - res[0] - res[1] >= eps_prec && 1 - res[0] - res[1] <= 1.0 - eps_prec){ + // the line clearly intersects the triangle + return (res[2] > 0) ? 1 : 0; + } + else if(res[0] < -eps_prec || res[0] > 1.0 + eps_prec || + res[1] < -eps_prec || res[1] > 1.0 + eps_prec || + 1 - res[0] - res[1] < -eps_prec || 1 - res[0] - res[1] > 1.0 + eps_prec){ + // the line clearly does NOT intersect the triangle + return 0; + } + else{ + printf("non robust stuff\n"); + // the intersection is not robust, try another triangle + return -10000; + } +} + +void setRand(double r[6]) +{ + for(int i = 0; i < 6; i++) + r[i] = 0.0001 * ((double)rand() / (double)RAND_MAX); +} + +void meshNormalsPointOutOfTheRegion(GRegion *gr) +{ + std::list<GFace*> faces = gr->faces(); + std::list<GFace*>::iterator it = faces.begin(); + + //for (std::list<GFace*>::iterator itb = faces.begin(); itb != faces.end(); itb ++) + // printf("face=%d size =%d\n", (*itb)->tag(), faces.size()); + + double rrr[6]; + setRand(rrr); + + while(it != faces.end()){ + GFace *gf = (*it); + int nb_intersect = 0; + for(unsigned int i = 0; i < gf->triangles.size(); i++){ + MTriangle *t = gf->triangles[i]; + double X[3] = {t->getVertex(0)->x(), t->getVertex(1)->x(), t->getVertex(2)->x()}; + double Y[3] = {t->getVertex(0)->y(), t->getVertex(1)->y(), t->getVertex(2)->y()}; + double Z[3] = {t->getVertex(0)->z(), t->getVertex(1)->z(), t->getVertex(2)->z()}; + double P[3] = {(X[0] + X[1] + X[2]) / 3., + (Y[0] + Y[1] + Y[2]) / 3., + (Z[0] + Z[1] + Z[2]) / 3.}; + double v1[3] = {X[0] - X[1], Y[0] - Y[1], Z[0] - Z[1]}; + double v2[3] = {X[2] - X[1], Y[2] - Y[1], Z[2] - Z[1]}; + double N[3]; + prodve(v1, v2, N); + norme(v1); + norme(v2); + norme(N); + N[0] += rrr[0] * v1[0] + rrr[1] * v2[0]; + N[1] += rrr[2] * v1[1] + rrr[3] * v2[1]; + N[2] += rrr[4] * v1[2] + rrr[5] * v2[2]; + norme(N); + std::list<GFace*>::iterator it_b = faces.begin(); + while(it_b != faces.end()){ + GFace *gf_b = (*it_b); + for(unsigned int i_b = 0; i_b < gf_b->triangles.size(); i_b++){ + MTriangle *t_b = gf_b->triangles[i_b]; + if(t_b != t){ + double X_b[3] = {t_b->getVertex(0)->x(), t_b->getVertex(1)->x(), + t_b->getVertex(2)->x()}; + double Y_b[3] = {t_b->getVertex(0)->y(), t_b->getVertex(1)->y(), + t_b->getVertex(2)->y()}; + double Z_b[3] = {t_b->getVertex(0)->z(), t_b->getVertex(1)->z(), + t_b->getVertex(2)->z()}; + int inters = intersect_line_triangle(X_b, Y_b, Z_b, P, N, 1.e-9); + nb_intersect += inters; + } + } + ++it_b; + } + Msg::Info("Region %d Face %d, %d intersect", gr->tag(), gf->tag(), nb_intersect); + if(nb_intersect >= 0) break; // negative value means intersection is not "robust" + } + + if(nb_intersect < 0){ + setRand(rrr); + } + else{ + if(nb_intersect % 2 == 1){ + // odd nb of intersections: the normal points inside the region + for(unsigned int i = 0; i < gf->triangles.size(); i++){ + gf->triangles[i]->reverse(); + } + } + ++it; + } + } + + // FILE *fp = Fopen("debug.pos", "w"); + // fprintf(fp, "View \"debug\" {\n"); + // for(std::list<GFace*>::iterator it = faces.begin(); it != faces.end(); it++) + // for(unsigned int i = 0; i < (*it)->triangles.size(); i++) + // (*it)->triangles[i]->writePOS(fp, 1., (*it)->tag()); + // fprintf(fp, "};\n"); + // fclose(fp); +} + +void meshGRegion::operator() (GRegion *gr) +{ + + gr->model()->setCurrentMeshEntity(gr); + + if(gr->geomType() == GEntity::DiscreteVolume) return; + if(gr->meshAttributes.method == MESH_NONE) return; + if(CTX::instance()->mesh.meshOnlyVisible && !gr->getVisibility()) return; + + ExtrudeParams *ep = gr->meshAttributes.extrude; + if(ep && ep->mesh.ExtrudeMesh) return; + + // destroy the mesh if it exists + deMeshGRegion dem; + dem(gr); + + if(MeshTransfiniteVolume(gr)) return; + + std::list<GFace*> faces = gr->faces(); + + // sanity check for frontal algo + if(CTX::instance()->mesh.algo3d == ALGO_3D_FRONTAL){ + for(std::list<GFace*>::iterator it = faces.begin(); it != faces.end(); it++){ + if((*it)->quadrangles.size()){ + Msg::Error("Cannot use frontal 3D algorithm with quadrangles on boundary"); + return; + } + } + } + + // replace discreteFaces by their compounds + { + std::set<GFace*> mySet; + std::list<GFace*>::iterator it = faces.begin(); + while(it != faces.end()){ + if((*it)->getCompound()) + mySet.insert((*it)->getCompound()); + else + mySet.insert(*it); + ++it; + } + faces.clear(); + faces.insert(faces.begin(), mySet.begin(), mySet.end()); + gr->set(faces); + } + + if(CTX::instance()->mesh.algo3d != ALGO_3D_FRONTAL){ + delaunay.push_back(gr); + } + else if(CTX::instance()->mesh.algo3d == ALGO_3D_FRONTAL){ +#if !defined(HAVE_NETGEN) + Msg::Error("Netgen is not compiled in this version of Gmsh"); +#else + Msg::Info("Meshing volume %d (Frontal)", gr->tag()); + // orient the triangles of with respect to this region + meshNormalsPointOutOfTheRegion(gr); + std::vector<MVertex*> numberedV; + Ng_Mesh *ngmesh = buildNetgenStructure(gr, false, numberedV); + Ng_GenerateVolumeMesh(ngmesh, CTX::instance()->mesh.lcMax); + TransferVolumeMesh(gr, ngmesh, numberedV); + Ng_DeleteMesh(ngmesh); + Ng_Exit(); +#endif + } + +} + +void optimizeMeshGRegionNetgen::operator() (GRegion *gr) +{ + gr->model()->setCurrentMeshEntity(gr); + + if(gr->geomType() == GEntity::DiscreteVolume) return; + + // don't optimize transfinite or extruded meshes + if(gr->meshAttributes.method == MESH_TRANSFINITE) return; + ExtrudeParams *ep = gr->meshAttributes.extrude; + if(ep && ep->mesh.ExtrudeMesh && ep->geo.Mode == EXTRUDED_ENTITY) return; + +#if !defined(HAVE_NETGEN) + Msg::Error("Netgen is not compiled in this version of Gmsh"); +#else + Msg::Info("Optimizing volume %d", gr->tag()); + // import mesh into netgen, including volume tets + std::vector<MVertex*> numberedV; + Ng_Mesh *ngmesh = buildNetgenStructure(gr, true, numberedV); + // delete volume vertices and tets + deMeshGRegion dem; + dem(gr); + // optimize mesh + Ng_OptimizeVolumeMesh(ngmesh, CTX::instance()->mesh.lcMax); + TransferVolumeMesh(gr, ngmesh, numberedV); + Ng_DeleteMesh(ngmesh); + Ng_Exit(); +#endif +} + +void optimizeMeshGRegionGmsh::operator() (GRegion *gr) +{ + gr->model()->setCurrentMeshEntity(gr); + + if(gr->geomType() == GEntity::DiscreteVolume) return; + + // don't optimize extruded meshes + if(gr->meshAttributes.method == MESH_TRANSFINITE) return; + ExtrudeParams *ep = gr->meshAttributes.extrude; + if(ep && ep->mesh.ExtrudeMesh && ep->geo.Mode == EXTRUDED_ENTITY) return; + + Msg::Info("Optimizing volume %d", gr->tag()); + optimizeMesh(gr, QMTET_2); +} + + +bool buildFaceSearchStructure(GModel *model, fs_cont &search) +{ + search.clear(); + + std::set<GFace*> faces_to_consider; + GModel::riter rit = model->firstRegion(); + while(rit != model->lastRegion()){ + std::list <GFace *> _faces = (*rit)->faces(); + faces_to_consider.insert( _faces.begin(),_faces.end()); + rit++; + } + + std::set<GFace*>::iterator fit = faces_to_consider.begin(); + while(fit != faces_to_consider.end()){ + for(unsigned int i = 0; i < (*fit)->getNumMeshElements(); i++){ + MFace ff = (*fit)->getMeshElement(i)->getFace(0); + search[ff] = *fit; + } + ++fit; + } + return true; +} + +bool buildEdgeSearchStructure(GModel *model, es_cont &search) +{ + search.clear(); + + GModel::eiter eit = model->firstEdge(); + while(eit != model->lastEdge()){ + for(unsigned int i = 0; i < (*eit)->lines.size(); i++){ + MVertex *p1 = (*eit)->lines[i]->getVertex(0); + MVertex *p2 = (*eit)->lines[i]->getVertex(1); + MVertex *p = std::min(p1, p2); + search.insert(std::pair<MVertex*, std::pair<MLine*, GEdge*> > + (p, std::pair<MLine*, GEdge*>((*eit)->lines[i], *eit))); + } + ++eit; + } + return true; +} + +GFace *findInFaceSearchStructure(MVertex *p1, MVertex *p2, MVertex *p3, + const fs_cont &search) +{ + MFace ff(p1,p2,p3); + fs_cont::const_iterator it = search.find(ff); + if (it == search.end())return 0; + return it->second; +} + +GFace *findInFaceSearchStructure(const MFace &ff, + const fs_cont &search) +{ + fs_cont::const_iterator it = search.find(ff); + if (it == search.end())return 0; + return it->second; +} + + +GEdge *findInEdgeSearchStructure(MVertex *p1, MVertex *p2, const es_cont &search) +{ + MVertex *p = std::min(p1, p2); + + for(es_cont::const_iterator it = search.lower_bound(p); + it != search.upper_bound(p); + ++it){ + MLine *l = it->second.first; + GEdge *ge = it->second.second; + if((l->getVertex(0) == p1 || l->getVertex(0) == p2) && + (l->getVertex(1) == p1 || l->getVertex(1) == p2)) + return ge; + } + return 0; +} diff --git a/Mesh/meshGRegionBoundaryRecovery.cpp b/Mesh/meshGRegionBoundaryRecovery.cpp new file mode 100644 index 0000000000000000000000000000000000000000..b68cb6009622eec02c141d37d45e61f40c8a3186 --- /dev/null +++ b/Mesh/meshGRegionBoundaryRecovery.cpp @@ -0,0 +1,15170 @@ +// Gmsh - Copyright (C) 1997-2014 C. Geuzaine, J.-F. Remacle +// +// See the LICENSE.txt file for license information. Please report all +// bugs and problems to the public mailing list <gmsh@geuz.org>. +// +// Contributed by Hang Si + +#include <stdio.h> +#include <math.h> +#include <assert.h> +#include <string.h> +#include "meshGRegionBoundaryRecovery.h" +#include "robustPredicates.h" +#include "GFace.h" +#include "MVertex.h" +#include "MLine.h" +#include "MTriangle.h" +#include "MTetrahedron.h" +#include "meshGRegionDelaunayInsertion.h" +#include "OS.h" + +#define orient3d robustPredicates::orient3d +#define insphere robustPredicates::insphere + +#ifdef _MSC_VER // Microsoft Visual C++ +# ifdef _WIN64 + typedef __int64 intptr_t; + typedef unsigned __int64 uintptr_t; +# else // not _WIN64 + typedef int intptr_t; + typedef unsigned int uintptr_t; +# endif +#else // not Visual C++ +# include <stdint.h> +#endif + +/////////////////////////////////////////////////////////////////////////////// +// // +// Primitives for tetrahedra // +// // +/////////////////////////////////////////////////////////////////////////////// + +inline meshGRegionBoundaryRecovery::tetrahedron + meshGRegionBoundaryRecovery::encode(triface& t) { + return (tetrahedron) ((uintptr_t) (t).tet | (uintptr_t) (t).ver); +} + +inline meshGRegionBoundaryRecovery::tetrahedron + meshGRegionBoundaryRecovery::encode2(tetrahedron* ptr, int ver) { + return (tetrahedron) ((uintptr_t) (ptr) | (uintptr_t) (ver)); +} + +inline void meshGRegionBoundaryRecovery::decode(tetrahedron ptr, triface& t) { + (t).ver = (int) ((uintptr_t) (ptr) & (uintptr_t) 15); + (t).tet = (tetrahedron *) ((uintptr_t) (ptr) ^ (uintptr_t) (t).ver); +} + +inline void meshGRegionBoundaryRecovery::bond(triface& t1, triface& t2) { + t1.tet[t1.ver & 3] = encode2(t2.tet, bondtbl[t1.ver][t2.ver]); + t2.tet[t2.ver & 3] = encode2(t1.tet, bondtbl[t2.ver][t1.ver]); +} + +inline void meshGRegionBoundaryRecovery::dissolve(triface& t) { + t.tet[t.ver & 3] = NULL; +} + +inline void meshGRegionBoundaryRecovery::enext(triface& t1, triface& t2) { + t2.tet = t1.tet; + t2.ver = enexttbl[t1.ver]; +} + +inline void meshGRegionBoundaryRecovery::enextself(triface& t) { + t.ver = enexttbl[t.ver]; +} + +inline void meshGRegionBoundaryRecovery::eprev(triface& t1, triface& t2) { + t2.tet = t1.tet; + t2.ver = eprevtbl[t1.ver]; +} + +inline void meshGRegionBoundaryRecovery::eprevself(triface& t) { + t.ver = eprevtbl[t.ver]; +} + +inline void meshGRegionBoundaryRecovery::esym(triface& t1, triface& t2) { + (t2).tet = (t1).tet; + (t2).ver = esymtbl[(t1).ver]; +} + +inline void meshGRegionBoundaryRecovery::esymself(triface& t) { + (t).ver = esymtbl[(t).ver]; +} + +inline void meshGRegionBoundaryRecovery::enextesym(triface& t1, triface& t2) { + t2.tet = t1.tet; + t2.ver = enextesymtbl[t1.ver]; +} + +inline void meshGRegionBoundaryRecovery::enextesymself(triface& t) { + t.ver = enextesymtbl[t.ver]; +} + +inline void meshGRegionBoundaryRecovery::eprevesym(triface& t1, triface& t2) { + t2.tet = t1.tet; + t2.ver = eprevesymtbl[t1.ver]; +} + +inline void meshGRegionBoundaryRecovery::eprevesymself(triface& t) { + t.ver = eprevesymtbl[t.ver]; +} + +inline void meshGRegionBoundaryRecovery::eorgoppo(triface& t1, triface& t2) { + t2.tet = t1.tet; + t2.ver = eorgoppotbl[t1.ver]; +} + +inline void meshGRegionBoundaryRecovery::eorgoppoself(triface& t) { + t.ver = eorgoppotbl[t.ver]; +} + +inline void meshGRegionBoundaryRecovery::edestoppo(triface& t1, triface& t2) { + t2.tet = t1.tet; + t2.ver = edestoppotbl[t1.ver]; +} + +inline void meshGRegionBoundaryRecovery::edestoppoself(triface& t) { + t.ver = edestoppotbl[t.ver]; +} + +inline void meshGRegionBoundaryRecovery::fsym(triface& t1, triface& t2) { + decode((t1).tet[(t1).ver & 3], t2); + t2.ver = fsymtbl[t1.ver][t2.ver]; +} + +#define fsymself(t) \ + t1ver = (t).ver; \ + decode((t).tet[(t).ver & 3], (t));\ + (t).ver = fsymtbl[t1ver][(t).ver] + +inline void meshGRegionBoundaryRecovery::fnext(triface& t1, triface& t2) { + decode(t1.tet[facepivot1[t1.ver]], t2); + t2.ver = facepivot2[t1.ver][t2.ver]; +} + +#define fnextself(t) \ + t1ver = (t).ver; \ + decode((t).tet[facepivot1[(t).ver]], (t)); \ + (t).ver = facepivot2[t1ver][(t).ver] + + +inline meshGRegionBoundaryRecovery::point + meshGRegionBoundaryRecovery::org(triface& t) { + return (point) (t).tet[orgpivot[(t).ver]]; +} + +inline meshGRegionBoundaryRecovery::point + meshGRegionBoundaryRecovery:: dest(triface& t) { + return (point) (t).tet[destpivot[(t).ver]]; +} + +inline meshGRegionBoundaryRecovery::point + meshGRegionBoundaryRecovery::apex(triface& t) { + return (point) (t).tet[apexpivot[(t).ver]]; +} + +inline meshGRegionBoundaryRecovery::point + meshGRegionBoundaryRecovery::oppo(triface& t) { + return (point) (t).tet[oppopivot[(t).ver]]; +} + +inline void meshGRegionBoundaryRecovery::setorg(triface& t, point p) { + (t).tet[orgpivot[(t).ver]] = (tetrahedron) (p); +} + +inline void meshGRegionBoundaryRecovery::setdest(triface& t, point p) { + (t).tet[destpivot[(t).ver]] = (tetrahedron) (p); +} + +inline void meshGRegionBoundaryRecovery:: setapex(triface& t, point p) { + (t).tet[apexpivot[(t).ver]] = (tetrahedron) (p); +} + +inline void meshGRegionBoundaryRecovery::setoppo(triface& t, point p) { + (t).tet[oppopivot[(t).ver]] = (tetrahedron) (p); +} + +#define setvertices(t, torg, tdest, tapex, toppo) \ + (t).tet[orgpivot[(t).ver]] = (tetrahedron) (torg);\ + (t).tet[destpivot[(t).ver]] = (tetrahedron) (tdest); \ + (t).tet[apexpivot[(t).ver]] = (tetrahedron) (tapex); \ + (t).tet[oppopivot[(t).ver]] = (tetrahedron) (toppo) + +inline REAL meshGRegionBoundaryRecovery::elemattribute(tetrahedron* ptr, + int attnum) { + return ((REAL *) (ptr))[elemattribindex + attnum]; +} + +inline void meshGRegionBoundaryRecovery::setelemattribute(tetrahedron* ptr, + int attnum, + REAL value) { + ((REAL *) (ptr))[elemattribindex + attnum] = value; +} + +inline REAL meshGRegionBoundaryRecovery::volumebound(tetrahedron* ptr) { + return ((REAL *) (ptr))[volumeboundindex]; +} + +inline void meshGRegionBoundaryRecovery::setvolumebound(tetrahedron* ptr, + REAL value) { + ((REAL *) (ptr))[volumeboundindex] = value; +} + +inline int meshGRegionBoundaryRecovery::elemindex(tetrahedron* ptr) { + int *iptr = (int *) &(ptr[10]); + return iptr[0]; +} + +inline void meshGRegionBoundaryRecovery::setelemindex(tetrahedron* ptr, + int value) { + int *iptr = (int *) &(ptr[10]); + iptr[0] = value; +} + +inline int meshGRegionBoundaryRecovery::elemmarker(tetrahedron* ptr) { + return ((int *) (ptr))[elemmarkerindex]; +} + +inline void meshGRegionBoundaryRecovery::setelemmarker(tetrahedron* ptr, + int value) { + ((int *) (ptr))[elemmarkerindex] = value; +} + +inline void meshGRegionBoundaryRecovery::infect(triface& t) { + ((int *) (t.tet))[elemmarkerindex] |= 1; +} + +inline void meshGRegionBoundaryRecovery::uninfect(triface& t) { + ((int *) (t.tet))[elemmarkerindex] &= ~1; +} + +inline bool meshGRegionBoundaryRecovery::infected(triface& t) { + return (((int *) (t.tet))[elemmarkerindex] & 1) != 0; +} + +inline void meshGRegionBoundaryRecovery::marktest(triface& t) { + ((int *) (t.tet))[elemmarkerindex] |= 2; +} + +inline void meshGRegionBoundaryRecovery::unmarktest(triface& t) { + ((int *) (t.tet))[elemmarkerindex] &= ~2; +} + +inline bool meshGRegionBoundaryRecovery::marktested(triface& t) { + return (((int *) (t.tet))[elemmarkerindex] & 2) != 0; +} + +inline void meshGRegionBoundaryRecovery::markface(triface& t) { + ((int *) (t.tet))[elemmarkerindex] |= (4 << (t.ver & 3)); +} + +inline void meshGRegionBoundaryRecovery::unmarkface(triface& t) { + ((int *) (t.tet))[elemmarkerindex] &= ~(4 << (t.ver & 3)); +} + +inline bool meshGRegionBoundaryRecovery::facemarked(triface& t) { + return (((int *) (t.tet))[elemmarkerindex] & (4 << (t.ver & 3))) != 0; +} + +inline void meshGRegionBoundaryRecovery::markedge(triface& t) { + ((int *) (t.tet))[elemmarkerindex] |= (int) (64 << ver2edge[(t).ver]); +} + +inline void meshGRegionBoundaryRecovery::unmarkedge(triface& t) { + ((int *) (t.tet))[elemmarkerindex] &= ~(int) (64 << ver2edge[(t).ver]); +} + +inline bool meshGRegionBoundaryRecovery::edgemarked(triface& t) { + return (((int *) (t.tet))[elemmarkerindex] & + (int) (64 << ver2edge[(t).ver])) != 0; +} + +inline void meshGRegionBoundaryRecovery::marktest2(triface& t) { + ((int *) (t.tet))[elemmarkerindex] |= (int) (4096); +} + +inline void meshGRegionBoundaryRecovery::unmarktest2(triface& t) { + ((int *) (t.tet))[elemmarkerindex] &= ~(int) (4096); +} + +inline bool meshGRegionBoundaryRecovery::marktest2ed(triface& t) { + return (((int *) (t.tet))[elemmarkerindex] & (int) (4096)) != 0; +} + +inline int meshGRegionBoundaryRecovery::elemcounter(triface& t) { + return (((int *) (t.tet))[elemmarkerindex]) >> 16; +} + +inline void meshGRegionBoundaryRecovery::setelemcounter(triface& t, int value) { + int c = ((int *) (t.tet))[elemmarkerindex]; + // Clear the old counter while keep the other flags. + c &= 65535; // sum_{i=0^15} 2^i + c |= (value << 16); + ((int *) (t.tet))[elemmarkerindex] = c; +} + +inline void meshGRegionBoundaryRecovery::increaseelemcounter(triface& t) { + int c = elemcounter(t); + setelemcounter(t, c + 1); +} + +inline void meshGRegionBoundaryRecovery::decreaseelemcounter(triface& t) { + int c = elemcounter(t); + setelemcounter(t, c - 1); +} + +inline bool meshGRegionBoundaryRecovery::ishulltet(triface& t) { + return (point) (t).tet[7] == dummypoint; +} + +inline bool meshGRegionBoundaryRecovery::isdeadtet(triface& t) { + return ((t.tet == NULL) || (t.tet[4] == NULL)); +} + +/////////////////////////////////////////////////////////////////////////////// +// // +// Primitives for subfaces and subsegments // +// // +/////////////////////////////////////////////////////////////////////////////// + +inline void meshGRegionBoundaryRecovery::sdecode(shellface sptr, face& s) { + s.shver = (int) ((uintptr_t) (sptr) & (uintptr_t) 7); + s.sh = (shellface *) ((uintptr_t) (sptr) ^ (uintptr_t) (s.shver)); +} + +inline meshGRegionBoundaryRecovery::shellface + meshGRegionBoundaryRecovery::sencode(face& s) { + return (shellface) ((uintptr_t) s.sh | (uintptr_t) s.shver); +} + +inline meshGRegionBoundaryRecovery::shellface + meshGRegionBoundaryRecovery::sencode2(shellface *sh, int shver) { + return (shellface) ((uintptr_t) sh | (uintptr_t) shver); +} + +inline void meshGRegionBoundaryRecovery::sbond(face& s1, face& s2) { + s1.sh[s1.shver >> 1] = sencode(s2); + s2.sh[s2.shver >> 1] = sencode(s1); +} + +inline void meshGRegionBoundaryRecovery::sbond1(face& s1, face& s2) { + s1.sh[s1.shver >> 1] = sencode(s2); +} + +inline void meshGRegionBoundaryRecovery::sdissolve(face& s) { + s.sh[s.shver >> 1] = NULL; +} + +inline void meshGRegionBoundaryRecovery::spivot(face& s1, face& s2) { + shellface sptr = s1.sh[s1.shver >> 1]; + sdecode(sptr, s2); +} + +inline void meshGRegionBoundaryRecovery::spivotself(face& s) { + shellface sptr = s.sh[s.shver >> 1]; + sdecode(sptr, s); +} + +inline meshGRegionBoundaryRecovery::point + meshGRegionBoundaryRecovery::sorg(face& s) { + return (point) s.sh[sorgpivot[s.shver]]; +} + +inline meshGRegionBoundaryRecovery::point + meshGRegionBoundaryRecovery::sdest(face& s) { + return (point) s.sh[sdestpivot[s.shver]]; +} + +inline meshGRegionBoundaryRecovery::point + meshGRegionBoundaryRecovery::sapex(face& s) { + return (point) s.sh[sapexpivot[s.shver]]; +} + +inline void meshGRegionBoundaryRecovery::setsorg(face& s, point pointptr) { + s.sh[sorgpivot[s.shver]] = (shellface) pointptr; +} + +inline void meshGRegionBoundaryRecovery::setsdest(face& s, point pointptr) { + s.sh[sdestpivot[s.shver]] = (shellface) pointptr; +} + +inline void meshGRegionBoundaryRecovery::setsapex(face& s, point pointptr) { + s.sh[sapexpivot[s.shver]] = (shellface) pointptr; +} + +#define setshvertices(s, pa, pb, pc)\ + setsorg(s, pa);\ + setsdest(s, pb);\ + setsapex(s, pc) + +inline void meshGRegionBoundaryRecovery::sesym(face& s1, face& s2) { + s2.sh = s1.sh; + s2.shver = (s1.shver ^ 1); // Inverse the last bit. +} + +inline void meshGRegionBoundaryRecovery::sesymself(face& s) { + s.shver ^= 1; +} + +inline void meshGRegionBoundaryRecovery::senext(face& s1, face& s2) { + s2.sh = s1.sh; + s2.shver = snextpivot[s1.shver]; +} + +inline void meshGRegionBoundaryRecovery::senextself(face& s) { + s.shver = snextpivot[s.shver]; +} + +inline void meshGRegionBoundaryRecovery::senext2(face& s1, face& s2) { + s2.sh = s1.sh; + s2.shver = snextpivot[snextpivot[s1.shver]]; +} + +inline void meshGRegionBoundaryRecovery::senext2self(face& s) { + s.shver = snextpivot[snextpivot[s.shver]]; +} + + +inline REAL meshGRegionBoundaryRecovery::areabound(face& s) { + return ((REAL *) (s.sh))[areaboundindex]; +} + +inline void meshGRegionBoundaryRecovery::setareabound(face& s, REAL value) { + ((REAL *) (s.sh))[areaboundindex] = value; +} + +inline int meshGRegionBoundaryRecovery::shellmark(face& s) { + return ((int *) (s.sh))[shmarkindex]; +} + +inline void meshGRegionBoundaryRecovery::setshellmark(face& s, int value) { + ((int *) (s.sh))[shmarkindex] = value; +} + +inline void meshGRegionBoundaryRecovery::sinfect(face& s) { + ((int *) ((s).sh))[shmarkindex+1] = + (((int *) ((s).sh))[shmarkindex+1] | (int) 1); +} + +inline void meshGRegionBoundaryRecovery::suninfect(face& s) { + ((int *) ((s).sh))[shmarkindex+1] = + (((int *) ((s).sh))[shmarkindex+1] & ~(int) 1); +} + +inline bool meshGRegionBoundaryRecovery::sinfected(face& s) { + return (((int *) ((s).sh))[shmarkindex+1] & (int) 1) != 0; +} + +inline void meshGRegionBoundaryRecovery::smarktest(face& s) { + ((int *) ((s).sh))[shmarkindex+1] = + (((int *)((s).sh))[shmarkindex+1] | (int) 2); +} + +inline void meshGRegionBoundaryRecovery::sunmarktest(face& s) { + ((int *) ((s).sh))[shmarkindex+1] = + (((int *)((s).sh))[shmarkindex+1] & ~(int)2); +} + +inline bool meshGRegionBoundaryRecovery::smarktested(face& s) { + return ((((int *) ((s).sh))[shmarkindex+1] & (int) 2) != 0); +} + +inline void meshGRegionBoundaryRecovery::smarktest2(face& s) { + ((int *) ((s).sh))[shmarkindex+1] = + (((int *)((s).sh))[shmarkindex+1] | (int) 4); +} + +inline void meshGRegionBoundaryRecovery::sunmarktest2(face& s) { + ((int *) ((s).sh))[shmarkindex+1] = + (((int *)((s).sh))[shmarkindex+1] & ~(int)4); +} + +inline bool meshGRegionBoundaryRecovery::smarktest2ed(face& s) { + return ((((int *) ((s).sh))[shmarkindex+1] & (int) 4) != 0); +} + +inline void meshGRegionBoundaryRecovery::smarktest3(face& s) { + ((int *) ((s).sh))[shmarkindex+1] = + (((int *)((s).sh))[shmarkindex+1] | (int) 8); +} + +inline void meshGRegionBoundaryRecovery::sunmarktest3(face& s) { + ((int *) ((s).sh))[shmarkindex+1] = + (((int *)((s).sh))[shmarkindex+1] & ~(int)8); +} + +inline bool meshGRegionBoundaryRecovery::smarktest3ed(face& s) { + return ((((int *) ((s).sh))[shmarkindex+1] & (int) 8) != 0); +} + +inline void meshGRegionBoundaryRecovery::setfacetindex(face& s, int value) { + ((int *) (s.sh))[shmarkindex + 2] = value; +} + +inline int meshGRegionBoundaryRecovery::getfacetindex(face& s) { + return ((int *) (s.sh))[shmarkindex + 2]; +} + +/////////////////////////////////////////////////////////////////////////////// +// // +// Primitives for interacting between tetrahedra and subfaces // +// // +/////////////////////////////////////////////////////////////////////////////// + +inline void meshGRegionBoundaryRecovery::tsbond(triface& t, face& s) { + if ((t).tet[9] == NULL) { + // Allocate space for this tet. + (t).tet[9] = (tetrahedron) tet2subpool->alloc(); + // Initialize. + for (int i = 0; i < 4; i++) { + ((shellface *) (t).tet[9])[i] = NULL; + } + } + // Bond t <== s. + ((shellface *) (t).tet[9])[(t).ver & 3] = + sencode2((s).sh, tsbondtbl[t.ver][s.shver]); + // Bond s <== t. + s.sh[9 + ((s).shver & 1)] = + (shellface) encode2((t).tet, stbondtbl[t.ver][s.shver]); +} + +inline void meshGRegionBoundaryRecovery::tspivot(triface& t, face& s) { + if ((t).tet[9] == NULL) { + (s).sh = NULL; + return; + } + // Get the attached subface s. + sdecode(((shellface *) (t).tet[9])[(t).ver & 3], (s)); + (s).shver = tspivottbl[t.ver][s.shver]; +} + +// Quickly check if the handle (t, v) is a subface. +#define issubface(t) \ + ((t).tet[9] && ((t).tet[9])[(t).ver & 3]) + +inline void meshGRegionBoundaryRecovery::stpivot(face& s, triface& t) { + decode((tetrahedron) s.sh[9 + (s.shver & 1)], t); + if ((t).tet == NULL) { + return; + } + (t).ver = stpivottbl[t.ver][s.shver]; +} + +#define isshtet(s) \ + ((s).sh[9 + ((s).shver & 1)]) + +inline void meshGRegionBoundaryRecovery::tsdissolve(triface& t) { + if ((t).tet[9] != NULL) { + ((shellface *) (t).tet[9])[(t).ver & 3] = NULL; + } +} + +inline void meshGRegionBoundaryRecovery::stdissolve(face& s) { + (s).sh[9] = NULL; + (s).sh[10] = NULL; +} + +/////////////////////////////////////////////////////////////////////////////// +// // +// Primitives for interacting between subfaces and segments // +// // +/////////////////////////////////////////////////////////////////////////////// + +inline void meshGRegionBoundaryRecovery::ssbond(face& s, face& edge) { + s.sh[6 + (s.shver >> 1)] = sencode(edge); + edge.sh[0] = sencode(s); +} + +inline void meshGRegionBoundaryRecovery::ssbond1(face& s, face& edge) { + s.sh[6 + (s.shver >> 1)] = sencode(edge); + //edge.sh[0] = sencode(s); +} + +inline void meshGRegionBoundaryRecovery::ssdissolve(face& s) { + s.sh[6 + (s.shver >> 1)] = NULL; +} + +inline void meshGRegionBoundaryRecovery::sspivot(face& s, face& edge) { + sdecode((shellface) s.sh[6 + (s.shver >> 1)], edge); +} + +#define isshsubseg(s) \ + ((s).sh[6 + ((s).shver >> 1)]) + +/////////////////////////////////////////////////////////////////////////////// +// // +// Primitives for interacting between tetrahedra and segments // +// // +/////////////////////////////////////////////////////////////////////////////// + +inline void meshGRegionBoundaryRecovery::tssbond1(triface& t, face& s) { + if ((t).tet[8] == NULL) { + // Allocate space for this tet. + (t).tet[8] = (tetrahedron) tet2segpool->alloc(); + // Initialization. + for (int i = 0; i < 6; i++) { + ((shellface *) (t).tet[8])[i] = NULL; + } + } + ((shellface *) (t).tet[8])[ver2edge[(t).ver]] = sencode((s)); +} + +inline void meshGRegionBoundaryRecovery::sstbond1(face& s, triface& t) { + ((tetrahedron *) (s).sh)[9] = encode(t); +} + +inline void meshGRegionBoundaryRecovery::tssdissolve1(triface& t) { + if ((t).tet[8] != NULL) { + ((shellface *) (t).tet[8])[ver2edge[(t).ver]] = NULL; + } +} + +inline void meshGRegionBoundaryRecovery::sstdissolve1(face& s) { + ((tetrahedron *) (s).sh)[9] = NULL; +} + +inline void meshGRegionBoundaryRecovery::tsspivot1(triface& t, face& s) { + if ((t).tet[8] != NULL) { + sdecode(((shellface *) (t).tet[8])[ver2edge[(t).ver]], s); + } else { + (s).sh = NULL; + } +} + +#define issubseg(t) \ + ((t).tet[8] && ((t).tet[8])[ver2edge[(t).ver]]) + +inline void meshGRegionBoundaryRecovery::sstpivot1(face& s, triface& t) { + decode((tetrahedron) s.sh[9], t); +} + +/////////////////////////////////////////////////////////////////////////////// +// // +// Primitives for points // +// // +/////////////////////////////////////////////////////////////////////////////// + +inline int meshGRegionBoundaryRecovery::pointmark(point pt) { + return ((int *) (pt))[pointmarkindex]; +} + +inline void meshGRegionBoundaryRecovery::setpointmark(point pt, int value) { + ((int *) (pt))[pointmarkindex] = value; +} + + +inline enum meshGRegionBoundaryRecovery::verttype + meshGRegionBoundaryRecovery::pointtype(point pt) { + return (enum verttype) (((int *) (pt))[pointmarkindex + 1] >> (int) 8); +} + +inline void meshGRegionBoundaryRecovery::setpointtype(point pt, + enum verttype value) { + ((int *) (pt))[pointmarkindex + 1] = + ((int) value << 8) + (((int *) (pt))[pointmarkindex + 1] & (int) 255); +} + +inline int meshGRegionBoundaryRecovery::pointgeomtag(point pt) { + return ((int *) (pt))[pointmarkindex + 2]; +} + +inline void meshGRegionBoundaryRecovery::setpointgeomtag(point pt, int value) { + ((int *) (pt))[pointmarkindex + 2] = value; +} + +inline REAL meshGRegionBoundaryRecovery::pointgeomuv(point pt, int i) { + return pt[pointparamindex + i]; +} + +inline void meshGRegionBoundaryRecovery::setpointgeomuv(point pt, int i, + REAL value) { + pt[pointparamindex + i] = value; +} + +inline void meshGRegionBoundaryRecovery::pinfect(point pt) { + ((int *) (pt))[pointmarkindex + 1] |= (int) 1; +} + +inline void meshGRegionBoundaryRecovery::puninfect(point pt) { + ((int *) (pt))[pointmarkindex + 1] &= ~(int) 1; +} + +inline bool meshGRegionBoundaryRecovery::pinfected(point pt) { + return (((int *) (pt))[pointmarkindex + 1] & (int) 1) != 0; +} + +inline void meshGRegionBoundaryRecovery::pmarktest(point pt) { + ((int *) (pt))[pointmarkindex + 1] |= (int) 2; +} + +inline void meshGRegionBoundaryRecovery::punmarktest(point pt) { + ((int *) (pt))[pointmarkindex + 1] &= ~(int) 2; +} + +inline bool meshGRegionBoundaryRecovery::pmarktested(point pt) { + return (((int *) (pt))[pointmarkindex + 1] & (int) 2) != 0; +} + +inline void meshGRegionBoundaryRecovery::pmarktest2(point pt) { + ((int *) (pt))[pointmarkindex + 1] |= (int) 4; +} + +inline void meshGRegionBoundaryRecovery::punmarktest2(point pt) { + ((int *) (pt))[pointmarkindex + 1] &= ~(int) 4; +} + +inline bool meshGRegionBoundaryRecovery::pmarktest2ed(point pt) { + return (((int *) (pt))[pointmarkindex + 1] & (int) 4) != 0; +} + +inline void meshGRegionBoundaryRecovery::pmarktest3(point pt) { + ((int *) (pt))[pointmarkindex + 1] |= (int) 8; +} + +inline void meshGRegionBoundaryRecovery::punmarktest3(point pt) { + ((int *) (pt))[pointmarkindex + 1] &= ~(int) 8; +} + +inline bool meshGRegionBoundaryRecovery::pmarktest3ed(point pt) { + return (((int *) (pt))[pointmarkindex + 1] & (int) 8) != 0; +} + +inline meshGRegionBoundaryRecovery::tetrahedron + meshGRegionBoundaryRecovery::point2tet(point pt) { + return ((tetrahedron *) (pt))[point2simindex]; +} + +inline void meshGRegionBoundaryRecovery::setpoint2tet(point pt, + tetrahedron value) { + ((tetrahedron *) (pt))[point2simindex] = value; +} + +inline meshGRegionBoundaryRecovery::point + meshGRegionBoundaryRecovery::point2ppt(point pt) { + return (point) ((tetrahedron *) (pt))[point2simindex + 1]; +} + +inline void meshGRegionBoundaryRecovery::setpoint2ppt(point pt, point value) { + ((tetrahedron *) (pt))[point2simindex + 1] = (tetrahedron) value; +} + +inline meshGRegionBoundaryRecovery::shellface + meshGRegionBoundaryRecovery::point2sh(point pt) { + return (shellface) ((tetrahedron *) (pt))[point2simindex + 2]; +} + +inline void meshGRegionBoundaryRecovery::setpoint2sh(point pt, + shellface value) { + ((tetrahedron *) (pt))[point2simindex + 2] = (tetrahedron) value; +} + + +inline meshGRegionBoundaryRecovery::tetrahedron + meshGRegionBoundaryRecovery::point2bgmtet(point pt) { + return ((tetrahedron *) (pt))[point2simindex + 3]; +} + +inline void meshGRegionBoundaryRecovery::setpoint2bgmtet(point pt, + tetrahedron value) { + ((tetrahedron *) (pt))[point2simindex + 3] = value; +} + +inline void meshGRegionBoundaryRecovery::setpointinsradius(point pt, + REAL value) { + pt[pointmtrindex + sizeoftensor - 1] = value; +} + +inline REAL meshGRegionBoundaryRecovery::getpointinsradius(point pt) { + return pt[pointmtrindex + sizeoftensor - 1]; +} + +inline bool meshGRegionBoundaryRecovery::issteinerpoint(point pt) { + return (pointtype(pt) == FREESEGVERTEX) || (pointtype(pt) == FREEFACETVERTEX) + || (pointtype(pt) == FREEVOLVERTEX); +} + +inline void meshGRegionBoundaryRecovery::point2tetorg(point pa, + triface& searchtet) { + decode(point2tet(pa), searchtet); + if ((point) searchtet.tet[4] == pa) { + searchtet.ver = 11; + } else if ((point) searchtet.tet[5] == pa) { + searchtet.ver = 3; + } else if ((point) searchtet.tet[6] == pa) { + searchtet.ver = 7; + } else { + //assert((point) searchtet.tet[7] == pa); // SELF_CHECK + searchtet.ver = 0; + } +} + +inline void meshGRegionBoundaryRecovery::point2shorg(point pa, face& searchsh){ + sdecode(point2sh(pa), searchsh); + if ((point) searchsh.sh[3] == pa) { + searchsh.shver = 0; + } else if ((point) searchsh.sh[4] == pa) { + searchsh.shver = (searchsh.sh[5] != NULL ? 2 : 1); + } else { + //assert((point) searchsh.sh[5] == pa); // SELF_CHECK + searchsh.shver = 4; + } +} + +inline meshGRegionBoundaryRecovery::point + meshGRegionBoundaryRecovery::farsorg(face& s) { + face travesh, neighsh; + travesh = s; + while (1) { + senext2(travesh, neighsh); + spivotself(neighsh); + if (neighsh.sh == NULL) break; + if (sorg(neighsh) != sorg(travesh)) sesymself(neighsh); + senext2(neighsh, travesh); + } + return sorg(travesh); +} + +inline meshGRegionBoundaryRecovery::point + meshGRegionBoundaryRecovery::farsdest(face& s) { + face travesh, neighsh; + travesh = s; + while (1) { + senext(travesh, neighsh); + spivotself(neighsh); + if (neighsh.sh == NULL) break; + if (sdest(neighsh) != sdest(travesh)) sesymself(neighsh); + senext(neighsh, travesh); + } + return sdest(travesh); +} + +// dot() returns the dot product: v1 dot v2. +inline REAL meshGRegionBoundaryRecovery::dot(REAL* v1, REAL* v2) +{ + return v1[0] * v2[0] + v1[1] * v2[1] + v1[2] * v2[2]; +} + +// cross() computes the cross product: n = v1 cross v2. +inline void meshGRegionBoundaryRecovery::cross(REAL* v1, REAL* v2, REAL* n) +{ + n[0] = v1[1] * v2[2] - v2[1] * v1[2]; + n[1] = -(v1[0] * v2[2] - v2[0] * v1[2]); + n[2] = v1[0] * v2[1] - v2[0] * v1[1]; +} + +// distance() computes the Euclidean distance between two points. +inline REAL meshGRegionBoundaryRecovery::distance(REAL* p1, REAL* p2) +{ + return sqrt((p2[0] - p1[0]) * (p2[0] - p1[0]) + + (p2[1] - p1[1]) * (p2[1] - p1[1]) + + (p2[2] - p1[2]) * (p2[2] - p1[2])); +} + +inline REAL meshGRegionBoundaryRecovery::norm2(REAL x, REAL y, REAL z) +{ + return (x) * (x) + (y) * (y) + (z) * (z); +} + +//// mempool_cxx ////////////////////////////////////////////////////////////// +//// //// +//// //// + +int meshGRegionBoundaryRecovery::bondtbl[12][12] = {{0,},}; +int meshGRegionBoundaryRecovery::enexttbl[12] = {0,}; +int meshGRegionBoundaryRecovery::eprevtbl[12] = {0,}; +int meshGRegionBoundaryRecovery::enextesymtbl[12] = {0,}; +int meshGRegionBoundaryRecovery::eprevesymtbl[12] = {0,}; +int meshGRegionBoundaryRecovery::eorgoppotbl[12] = {0,}; +int meshGRegionBoundaryRecovery::edestoppotbl[12] = {0,}; +int meshGRegionBoundaryRecovery::fsymtbl[12][12] = {{0,},}; +int meshGRegionBoundaryRecovery::facepivot1[12] = {0,}; +int meshGRegionBoundaryRecovery::facepivot2[12][12] = {{0,},}; +int meshGRegionBoundaryRecovery::tsbondtbl[12][6] = {{0,},}; +int meshGRegionBoundaryRecovery::stbondtbl[12][6] = {{0,},}; +int meshGRegionBoundaryRecovery::tspivottbl[12][6] = {{0,},}; +int meshGRegionBoundaryRecovery::stpivottbl[12][6] = {{0,},}; + +int meshGRegionBoundaryRecovery::esymtbl[12] = + {9, 6, 11, 4, 3, 7, 1, 5, 10, 0, 8, 2}; +int meshGRegionBoundaryRecovery:: orgpivot[12] = + {7, 7, 5, 5, 6, 4, 4, 6, 5, 6, 7, 4}; +int meshGRegionBoundaryRecovery::destpivot[12] = + {6, 4, 4, 6, 5, 6, 7, 4, 7, 7, 5, 5}; +int meshGRegionBoundaryRecovery::apexpivot[12] = + {5, 6, 7, 4, 7, 7, 5, 5, 6, 4, 4, 6}; +int meshGRegionBoundaryRecovery::oppopivot[12] = + {4, 5, 6, 7, 4, 5, 6, 7, 4, 5, 6, 7}; +int meshGRegionBoundaryRecovery::ver2edge[12] = + {0, 1, 2, 3, 3, 5, 1, 5, 4, 0, 4, 2}; +int meshGRegionBoundaryRecovery::edge2ver[ 6] = {0, 1, 2, 3, 8, 5}; +int meshGRegionBoundaryRecovery::epivot[12] = + {4, 5, 2, 11, 4, 5, 2, 11, 4, 5, 2, 11}; +int meshGRegionBoundaryRecovery::snextpivot[6] = {2, 5, 4, 1, 0, 3}; +int meshGRegionBoundaryRecovery::sorgpivot [6] = {3, 4, 4, 5, 5, 3}; +int meshGRegionBoundaryRecovery::sdestpivot[6] = {4, 3, 5, 4, 3, 5}; +int meshGRegionBoundaryRecovery::sapexpivot[6] = {5, 5, 3, 3, 4, 4}; + +void meshGRegionBoundaryRecovery::inittables() +{ + int i, j; + + // i = t1.ver; j = t2.ver; + for (i = 0; i < 12; i++) { + for (j = 0; j < 12; j++) { + bondtbl[i][j] = (j & 3) + (((i & 12) + (j & 12)) % 12); + } + } + + // i = t1.ver; j = t2.ver + for (i = 0; i < 12; i++) { + for (j = 0; j < 12; j++) { + fsymtbl[i][j] = (j + 12 - (i & 12)) % 12; + } + } + + for (i = 0; i < 12; i++) { + facepivot1[i] = (esymtbl[i] & 3); + } + + for (i = 0; i < 12; i++) { + for (j = 0; j < 12; j++) { + facepivot2[i][j] = fsymtbl[esymtbl[i]][j]; + } + } + + for (i = 0; i < 12; i++) { + enexttbl[i] = (i + 4) % 12; + eprevtbl[i] = (i + 8) % 12; + } + + for (i = 0; i < 12; i++) { + enextesymtbl[i] = esymtbl[enexttbl[i]]; + eprevesymtbl[i] = esymtbl[eprevtbl[i]]; + } + + for (i = 0; i < 12; i++) { + eorgoppotbl [i] = eprevtbl[esymtbl[enexttbl[i]]]; + edestoppotbl[i] = enexttbl[esymtbl[eprevtbl[i]]]; + } + + int soffset, toffset; + + // i = t.ver, j = s.shver + for (i = 0; i < 12; i++) { + for (j = 0; j < 6; j++) { + if ((j & 1) == 0) { + soffset = (6 - ((i & 12) >> 1)) % 6; + toffset = (12 - ((j & 6) << 1)) % 12; + } else { + soffset = (i & 12) >> 1; + toffset = (j & 6) << 1; + } + tsbondtbl[i][j] = (j & 1) + (((j & 6) + soffset) % 6); + stbondtbl[i][j] = (i & 3) + (((i & 12) + toffset) % 12); + } + } + + // i = t.ver, j = s.shver + for (i = 0; i < 12; i++) { + for (j = 0; j < 6; j++) { + if ((j & 1) == 0) { + soffset = (i & 12) >> 1; + toffset = (j & 6) << 1; + } else { + soffset = (6 - ((i & 12) >> 1)) % 6; + toffset = (12 - ((j & 6) << 1)) % 12; + } + tspivottbl[i][j] = (j & 1) + (((j & 6) + soffset) % 6); + stpivottbl[i][j] = (i & 3) + (((i & 12) + toffset) % 12); + } + } +} + +void meshGRegionBoundaryRecovery::arraypool::restart() +{ + objects = 0l; +} + +void meshGRegionBoundaryRecovery::arraypool::poolinit(int sizeofobject, + int log2objperblk) +{ + // Each object must be at least one byte long. + objectbytes = sizeofobject > 1 ? sizeofobject : 1; + + log2objectsperblock = log2objperblk; + // Compute the number of objects in each block. + objectsperblock = ((int) 1) << log2objectsperblock; + objectsperblockmark = objectsperblock - 1; + + // No memory has been allocated. + totalmemory = 0l; + // The top array has not been allocated yet. + toparray = (char **) NULL; + toparraylen = 0; + + // Ready all indices to be allocated. + restart(); +} + +meshGRegionBoundaryRecovery::arraypool::arraypool(int sizeofobject, + int log2objperblk) +{ + poolinit(sizeofobject, log2objperblk); +} + +meshGRegionBoundaryRecovery::arraypool::~arraypool() +{ + int i; + + // Has anything been allocated at all? + if (toparray != (char **) NULL) { + // Walk through the top array. + for (i = 0; i < toparraylen; i++) { + // Check every pointer; NULLs may be scattered randomly. + if (toparray[i] != (char *) NULL) { + // Free an allocated block. + free((void *) toparray[i]); + } + } + // Free the top array. + free((void *) toparray); + } + + // The top array is no longer allocated. + toparray = (char **) NULL; + toparraylen = 0; + objects = 0; + totalmemory = 0; +} + +char* meshGRegionBoundaryRecovery::arraypool::getblock(int objectindex) +{ + char **newarray; + char *block; + int newsize; + int topindex; + int i; + + // Compute the index in the top array (upper bits). + topindex = objectindex >> log2objectsperblock; + // Does the top array need to be allocated or resized? + if (toparray == (char **) NULL) { + // Allocate the top array big enough to hold 'topindex', and NULL out + // its contents. + newsize = topindex + 128; + toparray = (char **) malloc((size_t) (newsize * sizeof(char *))); + toparraylen = newsize; + for (i = 0; i < newsize; i++) { + toparray[i] = (char *) NULL; + } + // Account for the memory. + totalmemory = newsize * (uintptr_t) sizeof(char *); + } else if (topindex >= toparraylen) { + // Resize the top array, making sure it holds 'topindex'. + newsize = 3 * toparraylen; + if (topindex >= newsize) { + newsize = topindex + 128; + } + // Allocate the new array, copy the contents, NULL out the rest, and + // free the old array. + newarray = (char **) malloc((size_t) (newsize * sizeof(char *))); + for (i = 0; i < toparraylen; i++) { + newarray[i] = toparray[i]; + } + for (i = toparraylen; i < newsize; i++) { + newarray[i] = (char *) NULL; + } + free(toparray); + // Account for the memory. + totalmemory += (newsize - toparraylen) * sizeof(char *); + toparray = newarray; + toparraylen = newsize; + } + + // Find the block, or learn that it hasn't been allocated yet. + block = toparray[topindex]; + if (block == (char *) NULL) { + // Allocate a block at this index. + block = (char *) malloc((size_t) (objectsperblock * objectbytes)); + toparray[topindex] = block; + // Account for the memory. + totalmemory += objectsperblock * objectbytes; + } + + // Return a pointer to the block. + return block; +} + +void* meshGRegionBoundaryRecovery::arraypool::lookup(int objectindex) +{ + char *block; + int topindex; + + // Has the top array been allocated yet? + if (toparray == (char **) NULL) { + return (void *) NULL; + } + + // Compute the index in the top array (upper bits). + topindex = objectindex >> log2objectsperblock; + // Does the top index fit in the top array? + if (topindex >= toparraylen) { + return (void *) NULL; + } + + // Find the block, or learn that it hasn't been allocated yet. + block = toparray[topindex]; + if (block == (char *) NULL) { + return (void *) NULL; + } + + // Compute a pointer to the object with the given index. Note that + // 'objectsperblock' is a power of two, so the & operation is a bit mask + // that preserves the lower bits. + return (void *)(block + (objectindex & (objectsperblock - 1)) * objectbytes); +} + +int meshGRegionBoundaryRecovery::arraypool::newindex(void **newptr) +{ + // Allocate an object at index 'firstvirgin'. + int newindex = objects; + *newptr = (void *) (getblock(objects) + + (objects & (objectsperblock - 1)) * objectbytes); + objects++; + + return newindex; +} + + +meshGRegionBoundaryRecovery::memorypool::memorypool() +{ + firstblock = nowblock = (void **) NULL; + nextitem = (void *) NULL; + deaditemstack = (void *) NULL; + pathblock = (void **) NULL; + pathitem = (void *) NULL; + alignbytes = 0; + itembytes = itemwords = 0; + itemsperblock = 0; + items = maxitems = 0l; + unallocateditems = 0; + pathitemsleft = 0; +} + +meshGRegionBoundaryRecovery::memorypool::memorypool(int bytecount, + int itemcount, int wsize, int alignment) +{ + poolinit(bytecount, itemcount, wsize, alignment); +} + +meshGRegionBoundaryRecovery::memorypool::~memorypool() +{ + while (firstblock != (void **) NULL) { + nowblock = (void **) *(firstblock); + free(firstblock); + firstblock = nowblock; + } +} + +void meshGRegionBoundaryRecovery::memorypool::poolinit(int bytecount, + int itemcount,int wordsize, int alignment) +{ + // Find the proper alignment, which must be at least as large as: + // - The parameter `alignment'. + // - The primary word type, to avoid unaligned accesses. + // - sizeof(void *), so the stack of dead items can be maintained + // without unaligned accesses. + if (alignment > wordsize) { + alignbytes = alignment; + } else { + alignbytes = wordsize; + } + if ((int) sizeof(void *) > alignbytes) { + alignbytes = (int) sizeof(void *); + } + itemwords = ((bytecount + alignbytes - 1) / alignbytes) + * (alignbytes / wordsize); + itembytes = itemwords * wordsize; + itemsperblock = itemcount; + + // Allocate a block of items. Space for `itemsperblock' items and one + // pointer (to point to the next block) are allocated, as well as space + // to ensure alignment of the items. + firstblock = (void **) malloc(itemsperblock * itembytes + sizeof(void *) + + alignbytes); + if (firstblock == (void **) NULL) { + terminateBoundaryRecovery(NULL, 1); + } + // Set the next block pointer to NULL. + *(firstblock) = (void *) NULL; + restart(); +} + +void meshGRegionBoundaryRecovery::memorypool::restart() +{ + uintptr_t alignptr; + + items = 0; + maxitems = 0; + + // Set the currently active block. + nowblock = firstblock; + // Find the first item in the pool. Increment by the size of (void *). + alignptr = (uintptr_t) (nowblock + 1); + // Align the item on an `alignbytes'-byte boundary. + nextitem = (void *) + (alignptr + (uintptr_t) alignbytes - + (alignptr % (uintptr_t) alignbytes)); + // There are lots of unallocated items left in this block. + unallocateditems = itemsperblock; + // The stack of deallocated items is empty. + deaditemstack = (void *) NULL; +} + +void* meshGRegionBoundaryRecovery::memorypool::alloc() +{ + void *newitem; + void **newblock; + uintptr_t alignptr; + + // First check the linked list of dead items. If the list is not + // empty, allocate an item from the list rather than a fresh one. + if (deaditemstack != (void *) NULL) { + newitem = deaditemstack; // Take first item in list. + deaditemstack = * (void **) deaditemstack; + } else { + // Check if there are any free items left in the current block. + if (unallocateditems == 0) { + // Check if another block must be allocated. + if (*nowblock == (void *) NULL) { + // Allocate a new block of items, pointed to by the previous block. + newblock = (void **) malloc(itemsperblock * itembytes + sizeof(void *) + + alignbytes); + if (newblock == (void **) NULL) { + terminateBoundaryRecovery(NULL, 1); + } + *nowblock = (void *) newblock; + // The next block pointer is NULL. + *newblock = (void *) NULL; + } + // Move to the new block. + nowblock = (void **) *nowblock; + // Find the first item in the block. + // Increment by the size of (void *). + alignptr = (uintptr_t) (nowblock + 1); + // Align the item on an `alignbytes'-byte boundary. + nextitem = (void *) + (alignptr + (uintptr_t) alignbytes - + (alignptr % (uintptr_t) alignbytes)); + // There are lots of unallocated items left in this block. + unallocateditems = itemsperblock; + } + // Allocate a new item. + newitem = nextitem; + // Advance `nextitem' pointer to next free item in block. + nextitem = (void *) ((uintptr_t) nextitem + itembytes); + unallocateditems--; + maxitems++; + } + items++; + return newitem; +} + +void meshGRegionBoundaryRecovery::memorypool::dealloc(void *dyingitem) +{ + // Push freshly killed item onto stack. + *((void **) dyingitem) = deaditemstack; + deaditemstack = dyingitem; + items--; +} + +void meshGRegionBoundaryRecovery::memorypool::traversalinit() +{ + uintptr_t alignptr; + + // Begin the traversal in the first block. + pathblock = firstblock; + // Find the first item in the block. Increment by the size of (void *). + alignptr = (uintptr_t) (pathblock + 1); + // Align with item on an `alignbytes'-byte boundary. + pathitem = (void *) + (alignptr + (uintptr_t) alignbytes - + (alignptr % (uintptr_t) alignbytes)); + // Set the number of items left in the current block. + pathitemsleft = itemsperblock; +} + +void* meshGRegionBoundaryRecovery::memorypool::traverse() +{ + void *newitem; + uintptr_t alignptr; + + // Stop upon exhausting the list of items. + if (pathitem == nextitem) { + return (void *) NULL; + } + // Check whether any untraversed items remain in the current block. + if (pathitemsleft == 0) { + // Find the next block. + pathblock = (void **) *pathblock; + // Find the first item in the block. Increment by the size of (void *). + alignptr = (uintptr_t) (pathblock + 1); + // Align with item on an `alignbytes'-byte boundary. + pathitem = (void *) + (alignptr + (uintptr_t) alignbytes - + (alignptr % (uintptr_t) alignbytes)); + // Set the number of items left in the current block. + pathitemsleft = itemsperblock; + } + newitem = pathitem; + // Find the next item in the block. + pathitem = (void *) ((uintptr_t) pathitem + itembytes); + pathitemsleft--; + return newitem; +} + +void meshGRegionBoundaryRecovery::makeindex2pointmap(point*& idx2verlist) +{ + point pointloop; + int idx; + + Msg::Debug(" Constructing mapping from indices to points."); + + idx2verlist = new point[points->items + 1]; + + points->traversalinit(); + pointloop = pointtraverse(); + idx = in->firstnumber; + while (pointloop != (point) NULL) { + idx2verlist[idx++] = pointloop; + pointloop = pointtraverse(); + } +} + +void meshGRegionBoundaryRecovery::makepoint2submap(memorypool* pool, + int*& idx2faclist, face*& facperverlist) +{ + face shloop; + int i, j, k; + + Msg::Debug(" Making a map from points to subfaces."); + + // Initialize 'idx2faclist'. + idx2faclist = new int[points->items + 1]; + for (i = 0; i < points->items + 1; i++) idx2faclist[i] = 0; + + // Loop all subfaces, counter the number of subfaces incident at a vertex. + pool->traversalinit(); + shloop.sh = shellfacetraverse(pool); + while (shloop.sh != (shellface *) NULL) { + // Increment the number of incident subfaces for each vertex. + j = pointmark((point) shloop.sh[3]) - in->firstnumber; + idx2faclist[j]++; + j = pointmark((point) shloop.sh[4]) - in->firstnumber; + idx2faclist[j]++; + // Skip the third corner if it is a segment. + if (shloop.sh[5] != NULL) { + j = pointmark((point) shloop.sh[5]) - in->firstnumber; + idx2faclist[j]++; + } + shloop.sh = shellfacetraverse(pool); + } + + // Calculate the total length of array 'facperverlist'. + j = idx2faclist[0]; + idx2faclist[0] = 0; // Array starts from 0 element. + for (i = 0; i < points->items; i++) { + k = idx2faclist[i + 1]; + idx2faclist[i + 1] = idx2faclist[i] + j; + j = k; + } + + // The total length is in the last unit of idx2faclist. + facperverlist = new face[idx2faclist[i]]; + + // Loop all subfaces again, remember the subfaces at each vertex. + pool->traversalinit(); + shloop.sh = shellfacetraverse(pool); + while (shloop.sh != (shellface *) NULL) { + j = pointmark((point) shloop.sh[3]) - in->firstnumber; + shloop.shver = 0; // save the origin. + facperverlist[idx2faclist[j]] = shloop; + idx2faclist[j]++; + // Is it a subface or a subsegment? + if (shloop.sh[5] != NULL) { + j = pointmark((point) shloop.sh[4]) - in->firstnumber; + shloop.shver = 2; // save the origin. + facperverlist[idx2faclist[j]] = shloop; + idx2faclist[j]++; + j = pointmark((point) shloop.sh[5]) - in->firstnumber; + shloop.shver = 4; // save the origin. + facperverlist[idx2faclist[j]] = shloop; + idx2faclist[j]++; + } else { + j = pointmark((point) shloop.sh[4]) - in->firstnumber; + shloop.shver = 1; // save the origin. + facperverlist[idx2faclist[j]] = shloop; + idx2faclist[j]++; + } + shloop.sh = shellfacetraverse(pool); + } + + // Contents in 'idx2faclist' are shifted, now shift them back. + for (i = points->items - 1; i >= 0; i--) { + idx2faclist[i + 1] = idx2faclist[i]; + } + idx2faclist[0] = 0; +} + +void meshGRegionBoundaryRecovery::tetrahedrondealloc(tetrahedron + *dyingtetrahedron) +{ + // Set tetrahedron's vertices to NULL. This makes it possible to detect + // dead tetrahedra when traversing the list of all tetrahedra. + dyingtetrahedron[4] = (tetrahedron) NULL; + + // Dealloc the space to subfaces/subsegments. + if (dyingtetrahedron[8] != NULL) { + tet2segpool->dealloc((shellface *) dyingtetrahedron[8]); + } + if (dyingtetrahedron[9] != NULL) { + tet2subpool->dealloc((shellface *) dyingtetrahedron[9]); + } + + tetrahedrons->dealloc((void *) dyingtetrahedron); +} + +meshGRegionBoundaryRecovery::tetrahedron* + meshGRegionBoundaryRecovery::tetrahedrontraverse() +{ + tetrahedron *newtetrahedron; + + do { + newtetrahedron = (tetrahedron *) tetrahedrons->traverse(); + if (newtetrahedron == (tetrahedron *) NULL) { + return (tetrahedron *) NULL; + } + } while ((newtetrahedron[4] == (tetrahedron) NULL) || + ((point) newtetrahedron[7] == dummypoint)); + return newtetrahedron; +} + +meshGRegionBoundaryRecovery::tetrahedron* + meshGRegionBoundaryRecovery::alltetrahedrontraverse() +{ + tetrahedron *newtetrahedron; + + do { + newtetrahedron = (tetrahedron *) tetrahedrons->traverse(); + if (newtetrahedron == (tetrahedron *) NULL) { + return (tetrahedron *) NULL; + } + } while (newtetrahedron[4] == (tetrahedron) NULL); // Skip dead ones. + return newtetrahedron; +} + +void meshGRegionBoundaryRecovery::shellfacedealloc(memorypool *pool, + shellface *dyingsh) +{ + // Set shellface's vertices to NULL. This makes it possible to detect dead + // shellfaces when traversing the list of all shellfaces. + dyingsh[3] = (shellface) NULL; + pool->dealloc((void *) dyingsh); +} + +meshGRegionBoundaryRecovery::shellface* meshGRegionBoundaryRecovery::shellfacetraverse(memorypool *pool) +{ + shellface *newshellface; + + do { + newshellface = (shellface *) pool->traverse(); + if (newshellface == (shellface *) NULL) { + return (shellface *) NULL; + } + } while (newshellface[3] == (shellface) NULL); // Skip dead ones. + return newshellface; +} + +void meshGRegionBoundaryRecovery::pointdealloc(point dyingpoint) +{ + // Mark the point as dead. This makes it possible to detect dead points + // when traversing the list of all points. + setpointtype(dyingpoint, DEADVERTEX); + points->dealloc((void *) dyingpoint); +} + +meshGRegionBoundaryRecovery::point meshGRegionBoundaryRecovery::pointtraverse() +{ + point newpoint; + + do { + newpoint = (point) points->traverse(); + if (newpoint == (point) NULL) { + return (point) NULL; + } + } while (pointtype(newpoint) == DEADVERTEX); // Skip dead ones. + return newpoint; +} + +void meshGRegionBoundaryRecovery::maketetrahedron(triface *newtet) +{ + newtet->tet = (tetrahedron *) tetrahedrons->alloc(); + + // Initialize the four adjoining tetrahedra to be "outer space". + newtet->tet[0] = NULL; + newtet->tet[1] = NULL; + newtet->tet[2] = NULL; + newtet->tet[3] = NULL; + // Four NULL vertices. + newtet->tet[4] = NULL; + newtet->tet[5] = NULL; + newtet->tet[6] = NULL; + newtet->tet[7] = NULL; + // No attached segments and subfaces yet. + newtet->tet[8] = NULL; + newtet->tet[9] = NULL; + // Initialize the marker (clear all flags). + setelemmarker(newtet->tet, 0); + for (int i = 0; i < numelemattrib; i++) { + setelemattribute(newtet->tet, i, 0.0); + } + if (b->varvolume) { + setvolumebound(newtet->tet, -1.0); + } + + // Initialize the version to be Zero. + newtet->ver = 11; +} + +void meshGRegionBoundaryRecovery::makeshellface(memorypool *pool, face *newface) +{ + newface->sh = (shellface *) pool->alloc(); + + // No adjointing subfaces. + newface->sh[0] = NULL; + newface->sh[1] = NULL; + newface->sh[2] = NULL; + // Three NULL vertices. + newface->sh[3] = NULL; + newface->sh[4] = NULL; + newface->sh[5] = NULL; + // No adjoining subsegments. + newface->sh[6] = NULL; + newface->sh[7] = NULL; + newface->sh[8] = NULL; + // No adjoining tetrahedra. + newface->sh[9] = NULL; + newface->sh[10] = NULL; + if (checkconstraints) { + // Initialize the maximum area bound. + setareabound(*newface, 0.0); + } + // Clear the infection and marktest bits. + ((int *) (newface->sh))[shmarkindex + 1] = 0; + if (useinsertradius) { + setfacetindex(*newface, 0); + } + // Set the boundary marker to zero. + setshellmark(*newface, 0); + + newface->shver = 0; +} + +void meshGRegionBoundaryRecovery::makepoint(point* pnewpoint, + enum verttype vtype) +{ + int i; + + *pnewpoint = (point) points->alloc(); + + // Initialize the point attributes. + for (i = 0; i < numpointattrib; i++) { + (*pnewpoint)[3 + i] = 0.0; + } + // Initialize the metric tensor. + for (i = 0; i < sizeoftensor; i++) { + (*pnewpoint)[pointmtrindex + i] = 0.0; + } + setpoint2tet(*pnewpoint, NULL); + setpoint2ppt(*pnewpoint, NULL); + if (b->plc || b->refine) { + // Initialize the point-to-simplex field. + setpoint2sh(*pnewpoint, NULL); + if (b->metric && (bgm != NULL)) { + setpoint2bgmtet(*pnewpoint, NULL); + } + } + // Initialize the point marker (starting from in->firstnumber). + setpointmark(*pnewpoint, (int) (points->items) - (!in->firstnumber)); + // Clear all flags. + ((int *) (*pnewpoint))[pointmarkindex + 1] = 0; + // Initialize (set) the point type. + setpointtype(*pnewpoint, vtype); +} + +void meshGRegionBoundaryRecovery::initializepools() +{ + int pointsize = 0, elesize = 0, shsize = 0; + int i; + + Msg::Debug(" Initializing memorypools."); + Msg::Debug(" tetrahedron per block: %d.", b->tetrahedraperblock); + + inittables(); + + if (b->plc || b->refine) { + // Save the insertion radius for Steiner points if boundaries + // are allowed be split. + if (!b->nobisect || checkconstraints) { + useinsertradius = 1; + } + } + + // The index within each point at which its metric tensor is found. + // Each vertex has three coordinates. + if (b->psc) { + // '-s' option (PSC), the u,v coordinates are provided. + pointmtrindex = 5 + numpointattrib; + // The index within each point at which its u, v coordinates are found. + // Comment: They are saved after the list of point attributes. + pointparamindex = pointmtrindex - 2; + } else { + pointmtrindex = 3 + numpointattrib; + } + // The index within each point at which an element pointer is found, where + // the index is measured in pointers. Ensure the index is aligned to a + // sizeof(tetrahedron)-byte address. + point2simindex = ((pointmtrindex + sizeoftensor) * sizeof(REAL) + + sizeof(tetrahedron) - 1) / sizeof(tetrahedron); + if (b->plc || b->refine || b->voroout) { + // Increase the point size by three pointers, which are: + // - a pointer to a tet, read by point2tet(); + // - a pointer to a parent point, read by point2ppt()). + // - a pointer to a subface or segment, read by point2sh(); + if (b->metric && (bgm != NULL)) { + // Increase one pointer into the background mesh, point2bgmtet(). + pointsize = (point2simindex + 4) * sizeof(tetrahedron); + } else { + pointsize = (point2simindex + 3) * sizeof(tetrahedron); + } + } else { + // Increase the point size by two pointer, which are: + // - a pointer to a tet, read by point2tet(); + // - a pointer to a parent point, read by point2ppt()). -- Used by btree. + pointsize = (point2simindex + 2) * sizeof(tetrahedron); + } + // The index within each point at which the boundary marker is found, + // Ensure the point marker is aligned to a sizeof(int)-byte address. + pointmarkindex = (pointsize + sizeof(int) - 1) / sizeof(int); + // Now point size is the ints (indicated by pointmarkindex) plus: + // - an integer for boundary marker; + // - an integer for vertex type; + // - an integer for geometry tag (optional, -s option). + pointsize = (pointmarkindex + 2 + (b->psc ? 1 : 0)) * sizeof(tetrahedron); + + // Initialize the pool of vertices. +points = new memorypool(pointsize, b->vertexperblock, sizeof(REAL), 0); + +Msg::Debug(" Size of a point: %d bytes.", points->itembytes); + + // Initialize the infinite vertex. + dummypoint = (point) new char[pointsize]; + // Initialize all fields of this point. + dummypoint[0] = 0.0; + dummypoint[1] = 0.0; + dummypoint[2] = 0.0; + for (i = 0; i < numpointattrib; i++) { + dummypoint[3 + i] = 0.0; + } + // Initialize the metric tensor. + for (i = 0; i < sizeoftensor; i++) { + dummypoint[pointmtrindex + i] = 0.0; + } + setpoint2tet(dummypoint, NULL); + setpoint2ppt(dummypoint, NULL); + if (b->plc || b->psc || b->refine) { + // Initialize the point-to-simplex field. + setpoint2sh(dummypoint, NULL); + if (b->metric && (bgm != NULL)) { + setpoint2bgmtet(dummypoint, NULL); + } + } + // Initialize the point marker (starting from in->firstnumber). + setpointmark(dummypoint, -1); // The unique marker for dummypoint. + // Clear all flags. + ((int *) (dummypoint))[pointmarkindex + 1] = 0; + // Initialize (set) the point type. + setpointtype(dummypoint, UNUSEDVERTEX); // Does not matter. + + elesize = 12 * sizeof(tetrahedron); + + // The index to find the element markers. An integer containing varies + // flags and element counter. + assert(sizeof(int) <= sizeof(tetrahedron)); + assert((sizeof(tetrahedron) % sizeof(int)) == 0); + elemmarkerindex = (elesize - sizeof(tetrahedron)) / sizeof(int); + + // The actual number of element attributes. Note that if the + // `b->regionattrib' flag is set, an additional attribute will be added. + //numelemattrib = in->numberoftetrahedronattributes + (b->regionattrib > 0); + numelemattrib = (b->regionattrib > 0); + + // The index within each element at which its attributes are found, where + // the index is measured in REALs. + elemattribindex = (elesize + sizeof(REAL) - 1) / sizeof(REAL); + // The index within each element at which the maximum volume bound is + // found, where the index is measured in REALs. + volumeboundindex = elemattribindex + numelemattrib; + // If element attributes or an constraint are needed, increase the number + // of bytes occupied by an element. + if (b->varvolume) { + elesize = (volumeboundindex + 1) * sizeof(REAL); + } else if (numelemattrib > 0) { + elesize = volumeboundindex * sizeof(REAL); + } + + + // Having determined the memory size of an element, initialize the pool. + tetrahedrons = new memorypool(elesize, b->tetrahedraperblock, sizeof(void *), + 16); + + Msg::Debug(" Size of a tetrahedron: %d (%d) bytes.\n", elesize, + tetrahedrons->itembytes); + + if (b->plc || b->refine) { // if (b->useshelles) { + // The number of bytes occupied by a subface. The list of pointers + // stored in a subface are: three to other subfaces, three to corners, + // three to subsegments, two to tetrahedra. + shsize = 11 * sizeof(shellface); + // The index within each subface at which the maximum area bound is + // found, where the index is measured in REALs. + areaboundindex = (shsize + sizeof(REAL) - 1) / sizeof(REAL); + // If -q switch is in use, increase the number of bytes occupied by + // a subface for saving maximum area bound. + if (checkconstraints) { + shsize = (areaboundindex + 1) * sizeof(REAL); + } else { + shsize = areaboundindex * sizeof(REAL); + } + // The index within subface at which the facet marker is found. Ensure + // the marker is aligned to a sizeof(int)-byte address. + shmarkindex = (shsize + sizeof(int) - 1) / sizeof(int); + // Increase the number of bytes by two or three integers, one for facet + // marker, one for shellface type, and optionally one for pbc group. + shsize = (shmarkindex + 2) * sizeof(shellface); + if (useinsertradius) { + // Increase the number of byte by one integer for storing facet index. + // set/read by setfacetindex() and getfacetindex. + shsize = (shmarkindex + 3) * sizeof(shellface); + } + + // Initialize the pool of subfaces. Each subface record is eight-byte + // aligned so it has room to store an edge version (from 0 to 5) in + // the least three bits. + subfaces = new memorypool(shsize, b->shellfaceperblock, sizeof(void *), 8); + + Msg::Debug(" Size of a shellface: %d (%d) bytes.", shsize, + subfaces->itembytes); + + // Initialize the pool of subsegments. The subsegment's record is same + // with subface. + subsegs = new memorypool(shsize, b->shellfaceperblock, sizeof(void *), 8); + + // Initialize the pool for tet-subseg connections. + tet2segpool = new memorypool(6 * sizeof(shellface), b->shellfaceperblock, + sizeof(void *), 0); + // Initialize the pool for tet-subface connections. + tet2subpool = new memorypool(4 * sizeof(shellface), b->shellfaceperblock, + sizeof(void *), 0); + + // Initialize arraypools for segment & facet recovery. + subsegstack = new arraypool(sizeof(face), 10); + subfacstack = new arraypool(sizeof(face), 10); + subvertstack = new arraypool(sizeof(point), 8); + + // Initialize arraypools for surface point insertion/deletion. + caveshlist = new arraypool(sizeof(face), 8); + caveshbdlist = new arraypool(sizeof(face), 8); + cavesegshlist = new arraypool(sizeof(face), 4); + + cavetetshlist = new arraypool(sizeof(face), 8); + cavetetseglist = new arraypool(sizeof(face), 8); + caveencshlist = new arraypool(sizeof(face), 8); + caveencseglist = new arraypool(sizeof(face), 8); + } + + // Initialize the pools for flips. + flippool = new memorypool(sizeof(badface), 1024, sizeof(void *), 0); + unflipqueue = new arraypool(sizeof(badface), 10); + + // Initialize the arraypools for point insertion. + cavetetlist = new arraypool(sizeof(triface), 10); + cavebdrylist = new arraypool(sizeof(triface), 10); + caveoldtetlist = new arraypool(sizeof(triface), 10); + cavetetvertlist = new arraypool(sizeof(point), 10); +} + +//// //// +//// //// +//// mempool_cxx ////////////////////////////////////////////////////////////// + +//// geom_cxx ///////////////////////////////////////////////////////////////// +//// //// +//// //// + +REAL meshGRegionBoundaryRecovery::PI = 3.14159265358979323846264338327950288419716939937510582; + +REAL meshGRegionBoundaryRecovery::insphere_s(REAL* pa, REAL* pb, REAL* pc, + REAL* pd, REAL* pe) +{ + REAL sign; + + sign = insphere(pa, pb, pc, pd, pe); + if (sign != 0.0) { + return sign; + } + + // Symbolic perturbation. + point pt[5], swappt; + REAL oriA, oriB; + int swaps, count; + int n, i; + + pt[0] = pa; + pt[1] = pb; + pt[2] = pc; + pt[3] = pd; + pt[4] = pe; + + // Sort the five points such that their indices are in the increasing + // order. An optimized bubble sort algorithm is used, i.e., it has + // the worst case O(n^2) runtime, but it is usually much faster. + swaps = 0; // Record the total number of swaps. + n = 5; + do { + count = 0; + n = n - 1; + for (i = 0; i < n; i++) { + if (pointmark(pt[i]) > pointmark(pt[i+1])) { + swappt = pt[i]; pt[i] = pt[i+1]; pt[i+1] = swappt; + count++; + } + } + swaps += count; + } while (count > 0); // Continue if some points are swapped. + + oriA = orient3d(pt[1], pt[2], pt[3], pt[4]); + if (oriA != 0.0) { + // Flip the sign if there are odd number of swaps. + if ((swaps % 2) != 0) oriA = -oriA; + return oriA; + } + + oriB = -orient3d(pt[0], pt[2], pt[3], pt[4]); + assert(oriB != 0.0); // SELF_CHECK + // Flip the sign if there are odd number of swaps. + if ((swaps % 2) != 0) oriB = -oriB; + return oriB; +} + +inline REAL orient4dfast(REAL* pa, REAL* pb, REAL* pc, REAL* pd, REAL* pe, + REAL aheight, REAL bheight, REAL cheight, + REAL dheight, REAL eheight) +{ + const REAL aex = pa[0] - pe[0]; + const REAL bex = pb[0] - pe[0]; + const REAL cex = pc[0] - pe[0]; + const REAL dex = pd[0] - pe[0]; + const REAL aey = pa[1] - pe[1]; + const REAL bey = pb[1] - pe[1]; + const REAL cey = pc[1] - pe[1]; + const REAL dey = pd[1] - pe[1]; + const REAL aez = pa[2] - pe[2]; + const REAL bez = pb[2] - pe[2]; + const REAL cez = pc[2] - pe[2]; + const REAL dez = pd[2] - pe[2]; + const REAL aeheight = aheight - eheight; + const REAL beheight = bheight - eheight; + const REAL ceheight = cheight - eheight; + const REAL deheight = dheight - eheight; + + const REAL aexbey = aex * bey; + const REAL bexaey = bex * aey; + const REAL ab = aexbey - bexaey; + const REAL bexcey = bex * cey; + const REAL cexbey = cex * bey; + const REAL bc = bexcey - cexbey; + const REAL cexdey = cex * dey; + const REAL dexcey = dex * cey; + const REAL cd = cexdey - dexcey; + const REAL dexaey = dex * aey; + const REAL aexdey = aex * dey; + const REAL da = dexaey - aexdey; + + const REAL aexcey = aex * cey; + const REAL cexaey = cex * aey; + const REAL ac = aexcey - cexaey; + const REAL bexdey = bex * dey; + const REAL dexbey = dex * bey; + const REAL bd = bexdey - dexbey; + + const REAL abc = aez * bc - bez * ac + cez * ab; + const REAL bcd = bez * cd - cez * bd + dez * bc; + const REAL cda = cez * da + dez * ac + aez * cd; + const REAL dab = dez * ab + aez * bd + bez * da; + + const REAL det = (deheight * abc - ceheight * dab) + (beheight * cda - aeheight * bcd); + + return det; +} + +#define SETVECTOR3(V, a0, a1, a2) (V)[0] = (a0); (V)[1] = (a1); (V)[2] = (a2) + +#define SWAP2(a0, a1, tmp) (tmp) = (a0); (a0) = (a1); (a1) = (tmp) + +int meshGRegionBoundaryRecovery::tri_edge_2d(point A, point B, point C, + point P, point Q, point R, int level, int *types, int *pos) +{ + point U[3], V[3]; // The permuted vectors of points. + int pu[3], pv[3]; // The original positions of points. + REAL abovept[3]; + REAL sA, sB, sC; + REAL s1, s2, s3, s4; + int z1; + + if (R == NULL) { + // Calculate a lift point. + if (1) { + REAL n[3], len; + // Calculate a lift point, saved in dummypoint. + facenormal(A, B, C, n, 1, NULL); + len = sqrt(dot(n, n)); + if (len != 0) { + n[0] /= len; + n[1] /= len; + n[2] /= len; + len = distance(A, B); + len += distance(B, C); + len += distance(C, A); + len /= 3.0; + R = abovept; //dummypoint; + R[0] = A[0] + len * n[0]; + R[1] = A[1] + len * n[1]; + R[2] = A[2] + len * n[2]; + } else { + // The triangle [A,B,C] is (nearly) degenerate, i.e., it is (close) + // to a line. We need a line-line intersection test. + //assert(0); + // !!! A non-save return value.!!! + return 0; // DISJOINT + } + } + } + + // Test A's, B's, and C's orientations wrt plane PQR. + sA = orient3d(P, Q, R, A); + sB = orient3d(P, Q, R, B); + sC = orient3d(P, Q, R, C); + + + if (sA < 0) { + if (sB < 0) { + if (sC < 0) { // (---). + return 0; + } else { + if (sC > 0) { // (--+). + // All points are in the right positions. + SETVECTOR3(U, A, B, C); // I3 + SETVECTOR3(V, P, Q, R); // I2 + SETVECTOR3(pu, 0, 1, 2); + SETVECTOR3(pv, 0, 1, 2); + z1 = 0; + } else { // (--0). + SETVECTOR3(U, A, B, C); // I3 + SETVECTOR3(V, P, Q, R); // I2 + SETVECTOR3(pu, 0, 1, 2); + SETVECTOR3(pv, 0, 1, 2); + z1 = 1; + } + } + } else { + if (sB > 0) { + if (sC < 0) { // (-+-). + SETVECTOR3(U, C, A, B); // PT = ST + SETVECTOR3(V, P, Q, R); // I2 + SETVECTOR3(pu, 2, 0, 1); + SETVECTOR3(pv, 0, 1, 2); + z1 = 0; + } else { + if (sC > 0) { // (-++). + SETVECTOR3(U, B, C, A); // PT = ST x ST + SETVECTOR3(V, Q, P, R); // PL = SL + SETVECTOR3(pu, 1, 2, 0); + SETVECTOR3(pv, 1, 0, 2); + z1 = 0; + } else { // (-+0). + SETVECTOR3(U, C, A, B); // PT = ST + SETVECTOR3(V, P, Q, R); // I2 + SETVECTOR3(pu, 2, 0, 1); + SETVECTOR3(pv, 0, 1, 2); + z1 = 2; + } + } + } else { + if (sC < 0) { // (-0-). + SETVECTOR3(U, C, A, B); // PT = ST + SETVECTOR3(V, P, Q, R); // I2 + SETVECTOR3(pu, 2, 0, 1); + SETVECTOR3(pv, 0, 1, 2); + z1 = 1; + } else { + if (sC > 0) { // (-0+). + SETVECTOR3(U, B, C, A); // PT = ST x ST + SETVECTOR3(V, Q, P, R); // PL = SL + SETVECTOR3(pu, 1, 2, 0); + SETVECTOR3(pv, 1, 0, 2); + z1 = 2; + } else { // (-00). + SETVECTOR3(U, B, C, A); // PT = ST x ST + SETVECTOR3(V, Q, P, R); // PL = SL + SETVECTOR3(pu, 1, 2, 0); + SETVECTOR3(pv, 1, 0, 2); + z1 = 3; + } + } + } + } + } else { + if (sA > 0) { + if (sB < 0) { + if (sC < 0) { // (+--). + SETVECTOR3(U, B, C, A); // PT = ST x ST + SETVECTOR3(V, P, Q, R); // I2 + SETVECTOR3(pu, 1, 2, 0); + SETVECTOR3(pv, 0, 1, 2); + z1 = 0; + } else { + if (sC > 0) { // (+-+). + SETVECTOR3(U, C, A, B); // PT = ST + SETVECTOR3(V, Q, P, R); // PL = SL + SETVECTOR3(pu, 2, 0, 1); + SETVECTOR3(pv, 1, 0, 2); + z1 = 0; + } else { // (+-0). + SETVECTOR3(U, C, A, B); // PT = ST + SETVECTOR3(V, Q, P, R); // PL = SL + SETVECTOR3(pu, 2, 0, 1); + SETVECTOR3(pv, 1, 0, 2); + z1 = 2; + } + } + } else { + if (sB > 0) { + if (sC < 0) { // (++-). + SETVECTOR3(U, A, B, C); // I3 + SETVECTOR3(V, Q, P, R); // PL = SL + SETVECTOR3(pu, 0, 1, 2); + SETVECTOR3(pv, 1, 0, 2); + z1 = 0; + } else { + if (sC > 0) { // (+++). + return 0; + } else { // (++0). + SETVECTOR3(U, A, B, C); // I3 + SETVECTOR3(V, Q, P, R); // PL = SL + SETVECTOR3(pu, 0, 1, 2); + SETVECTOR3(pv, 1, 0, 2); + z1 = 1; + } + } + } else { // (+0#) + if (sC < 0) { // (+0-). + SETVECTOR3(U, B, C, A); // PT = ST x ST + SETVECTOR3(V, P, Q, R); // I2 + SETVECTOR3(pu, 1, 2, 0); + SETVECTOR3(pv, 0, 1, 2); + z1 = 2; + } else { + if (sC > 0) { // (+0+). + SETVECTOR3(U, C, A, B); // PT = ST + SETVECTOR3(V, Q, P, R); // PL = SL + SETVECTOR3(pu, 2, 0, 1); + SETVECTOR3(pv, 1, 0, 2); + z1 = 1; + } else { // (+00). + SETVECTOR3(U, B, C, A); // PT = ST x ST + SETVECTOR3(V, P, Q, R); // I2 + SETVECTOR3(pu, 1, 2, 0); + SETVECTOR3(pv, 0, 1, 2); + z1 = 3; + } + } + } + } + } else { + if (sB < 0) { + if (sC < 0) { // (0--). + SETVECTOR3(U, B, C, A); // PT = ST x ST + SETVECTOR3(V, P, Q, R); // I2 + SETVECTOR3(pu, 1, 2, 0); + SETVECTOR3(pv, 0, 1, 2); + z1 = 1; + } else { + if (sC > 0) { // (0-+). + SETVECTOR3(U, A, B, C); // I3 + SETVECTOR3(V, P, Q, R); // I2 + SETVECTOR3(pu, 0, 1, 2); + SETVECTOR3(pv, 0, 1, 2); + z1 = 2; + } else { // (0-0). + SETVECTOR3(U, C, A, B); // PT = ST + SETVECTOR3(V, Q, P, R); // PL = SL + SETVECTOR3(pu, 2, 0, 1); + SETVECTOR3(pv, 1, 0, 2); + z1 = 3; + } + } + } else { + if (sB > 0) { + if (sC < 0) { // (0+-). + SETVECTOR3(U, A, B, C); // I3 + SETVECTOR3(V, Q, P, R); // PL = SL + SETVECTOR3(pu, 0, 1, 2); + SETVECTOR3(pv, 1, 0, 2); + z1 = 2; + } else { + if (sC > 0) { // (0++). + SETVECTOR3(U, B, C, A); // PT = ST x ST + SETVECTOR3(V, Q, P, R); // PL = SL + SETVECTOR3(pu, 1, 2, 0); + SETVECTOR3(pv, 1, 0, 2); + z1 = 1; + } else { // (0+0). + SETVECTOR3(U, C, A, B); // PT = ST + SETVECTOR3(V, P, Q, R); // I2 + SETVECTOR3(pu, 2, 0, 1); + SETVECTOR3(pv, 0, 1, 2); + z1 = 3; + } + } + } else { // (00#) + if (sC < 0) { // (00-). + SETVECTOR3(U, A, B, C); // I3 + SETVECTOR3(V, Q, P, R); // PL = SL + SETVECTOR3(pu, 0, 1, 2); + SETVECTOR3(pv, 1, 0, 2); + z1 = 3; + } else { + if (sC > 0) { // (00+). + SETVECTOR3(U, A, B, C); // I3 + SETVECTOR3(V, P, Q, R); // I2 + SETVECTOR3(pu, 0, 1, 2); + SETVECTOR3(pv, 0, 1, 2); + z1 = 3; + } else { // (000) + // Not possible unless ABC is degenerate. + // Avoiding compiler warnings. + SETVECTOR3(U, A, B, C); // I3 + SETVECTOR3(V, P, Q, R); // I2 + SETVECTOR3(pu, 0, 1, 2); + SETVECTOR3(pv, 0, 1, 2); + z1 = 4; + } + } + } + } + } + } + + s1 = orient3d(U[0], U[2], R, V[1]); // A, C, R, Q + s2 = orient3d(U[1], U[2], R, V[0]); // B, C, R, P + + if (s1 > 0) { + return 0; + } + if (s2 < 0) { + return 0; + } + + if (level == 0) { + return 1; // They are intersected. + } + + assert(z1 != 4); // SELF_CHECK + + if (z1 == 1) { + if (s1 == 0) { // (0###) + // C = Q. + types[0] = (int) SHAREVERT; + pos[0] = pu[2]; // C + pos[1] = pv[1]; // Q + types[1] = (int) DISJOINT; + } else { + if (s2 == 0) { // (#0##) + // C = P. + types[0] = (int) SHAREVERT; + pos[0] = pu[2]; // C + pos[1] = pv[0]; // P + types[1] = (int) DISJOINT; + } else { // (-+##) + // C in [P, Q]. + types[0] = (int) ACROSSVERT; + pos[0] = pu[2]; // C + pos[1] = pv[0]; // [P, Q] + types[1] = (int) DISJOINT; + } + } + return 4; + } + + s3 = orient3d(U[0], U[2], R, V[0]); // A, C, R, P + s4 = orient3d(U[1], U[2], R, V[1]); // B, C, R, Q + + if (z1 == 0) { // (tritri-03) + if (s1 < 0) { + if (s3 > 0) { + assert(s2 > 0); // SELF_CHECK + if (s4 > 0) { + // [P, Q] overlaps [k, l] (-+++). + types[0] = (int) ACROSSEDGE; + pos[0] = pu[2]; // [C, A] + pos[1] = pv[0]; // [P, Q] + types[1] = (int) TOUCHFACE; + pos[2] = 3; // [A, B, C] + pos[3] = pv[1]; // Q + } else { + if (s4 == 0) { + // Q = l, [P, Q] contains [k, l] (-++0). + types[0] = (int) ACROSSEDGE; + pos[0] = pu[2]; // [C, A] + pos[1] = pv[0]; // [P, Q] + types[1] = (int) TOUCHEDGE; + pos[2] = pu[1]; // [B, C] + pos[3] = pv[1]; // Q + } else { // s4 < 0 + // [P, Q] contains [k, l] (-++-). + types[0] = (int) ACROSSEDGE; + pos[0] = pu[2]; // [C, A] + pos[1] = pv[0]; // [P, Q] + types[1] = (int) ACROSSEDGE; + pos[2] = pu[1]; // [B, C] + pos[3] = pv[0]; // [P, Q] + } + } + } else { + if (s3 == 0) { + assert(s2 > 0); // SELF_CHECK + if (s4 > 0) { + // P = k, [P, Q] in [k, l] (-+0+). + types[0] = (int) TOUCHEDGE; + pos[0] = pu[2]; // [C, A] + pos[1] = pv[0]; // P + types[1] = (int) TOUCHFACE; + pos[2] = 3; // [A, B, C] + pos[3] = pv[1]; // Q + } else { + if (s4 == 0) { + // [P, Q] = [k, l] (-+00). + types[0] = (int) TOUCHEDGE; + pos[0] = pu[2]; // [C, A] + pos[1] = pv[0]; // P + types[1] = (int) TOUCHEDGE; + pos[2] = pu[1]; // [B, C] + pos[3] = pv[1]; // Q + } else { + // P = k, [P, Q] contains [k, l] (-+0-). + types[0] = (int) TOUCHEDGE; + pos[0] = pu[2]; // [C, A] + pos[1] = pv[0]; // P + types[1] = (int) ACROSSEDGE; + pos[2] = pu[1]; // [B, C] + pos[3] = pv[0]; // [P, Q] + } + } + } else { // s3 < 0 + if (s2 > 0) { + if (s4 > 0) { + // [P, Q] in [k, l] (-+-+). + types[0] = (int) TOUCHFACE; + pos[0] = 3; // [A, B, C] + pos[1] = pv[0]; // P + types[1] = (int) TOUCHFACE; + pos[2] = 3; // [A, B, C] + pos[3] = pv[1]; // Q + } else { + if (s4 == 0) { + // Q = l, [P, Q] in [k, l] (-+-0). + types[0] = (int) TOUCHFACE; + pos[0] = 3; // [A, B, C] + pos[1] = pv[0]; // P + types[1] = (int) TOUCHEDGE; + pos[2] = pu[1]; // [B, C] + pos[3] = pv[1]; // Q + } else { // s4 < 0 + // [P, Q] overlaps [k, l] (-+--). + types[0] = (int) TOUCHFACE; + pos[0] = 3; // [A, B, C] + pos[1] = pv[0]; // P + types[1] = (int) ACROSSEDGE; + pos[2] = pu[1]; // [B, C] + pos[3] = pv[0]; // [P, Q] + } + } + } else { // s2 == 0 + // P = l (#0##). + types[0] = (int) TOUCHEDGE; + pos[0] = pu[1]; // [B, C] + pos[1] = pv[0]; // P + types[1] = (int) DISJOINT; + } + } + } + } else { // s1 == 0 + // Q = k (0####) + types[0] = (int) TOUCHEDGE; + pos[0] = pu[2]; // [C, A] + pos[1] = pv[1]; // Q + types[1] = (int) DISJOINT; + } + } else if (z1 == 2) { // (tritri-23) + if (s1 < 0) { + if (s3 > 0) { + assert(s2 > 0); // SELF_CHECK + if (s4 > 0) { + // [P, Q] overlaps [A, l] (-+++). + types[0] = (int) ACROSSVERT; + pos[0] = pu[0]; // A + pos[1] = pv[0]; // [P, Q] + types[1] = (int) TOUCHFACE; + pos[2] = 3; // [A, B, C] + pos[3] = pv[1]; // Q + } else { + if (s4 == 0) { + // Q = l, [P, Q] contains [A, l] (-++0). + types[0] = (int) ACROSSVERT; + pos[0] = pu[0]; // A + pos[1] = pv[0]; // [P, Q] + types[1] = (int) TOUCHEDGE; + pos[2] = pu[1]; // [B, C] + pos[3] = pv[1]; // Q + } else { // s4 < 0 + // [P, Q] contains [A, l] (-++-). + types[0] = (int) ACROSSVERT; + pos[0] = pu[0]; // A + pos[1] = pv[0]; // [P, Q] + types[1] = (int) ACROSSEDGE; + pos[2] = pu[1]; // [B, C] + pos[3] = pv[0]; // [P, Q] + } + } + } else { + if (s3 == 0) { + assert(s2 > 0); // SELF_CHECK + if (s4 > 0) { + // P = A, [P, Q] in [A, l] (-+0+). + types[0] = (int) SHAREVERT; + pos[0] = pu[0]; // A + pos[1] = pv[0]; // P + types[1] = (int) TOUCHFACE; + pos[2] = 3; // [A, B, C] + pos[3] = pv[1]; // Q + } else { + if (s4 == 0) { + // [P, Q] = [A, l] (-+00). + types[0] = (int) SHAREVERT; + pos[0] = pu[0]; // A + pos[1] = pv[0]; // P + types[1] = (int) TOUCHEDGE; + pos[2] = pu[1]; // [B, C] + pos[3] = pv[1]; // Q + } else { // s4 < 0 + // Q = l, [P, Q] in [A, l] (-+0-). + types[0] = (int) SHAREVERT; + pos[0] = pu[0]; // A + pos[1] = pv[0]; // P + types[1] = (int) ACROSSEDGE; + pos[2] = pu[1]; // [B, C] + pos[3] = pv[0]; // [P, Q] + } + } + } else { // s3 < 0 + if (s2 > 0) { + if (s4 > 0) { + // [P, Q] in [A, l] (-+-+). + types[0] = (int) TOUCHFACE; + pos[0] = 3; // [A, B, C] + pos[1] = pv[0]; // P + types[0] = (int) TOUCHFACE; + pos[0] = 3; // [A, B, C] + pos[1] = pv[1]; // Q + } else { + if (s4 == 0) { + // Q = l, [P, Q] in [A, l] (-+-0). + types[0] = (int) TOUCHFACE; + pos[0] = 3; // [A, B, C] + pos[1] = pv[0]; // P + types[0] = (int) TOUCHEDGE; + pos[0] = pu[1]; // [B, C] + pos[1] = pv[1]; // Q + } else { // s4 < 0 + // [P, Q] overlaps [A, l] (-+--). + types[0] = (int) TOUCHFACE; + pos[0] = 3; // [A, B, C] + pos[1] = pv[0]; // P + types[0] = (int) ACROSSEDGE; + pos[0] = pu[1]; // [B, C] + pos[1] = pv[0]; // [P, Q] + } + } + } else { // s2 == 0 + // P = l (#0##). + types[0] = (int) TOUCHEDGE; + pos[0] = pu[1]; // [B, C] + pos[1] = pv[0]; // P + types[1] = (int) DISJOINT; + } + } + } + } else { // s1 == 0 + // Q = A (0###). + types[0] = (int) SHAREVERT; + pos[0] = pu[0]; // A + pos[1] = pv[1]; // Q + types[1] = (int) DISJOINT; + } + } else if (z1 == 3) { // (tritri-33) + if (s1 < 0) { + if (s3 > 0) { + assert(s2 > 0); // SELF_CHECK + if (s4 > 0) { + // [P, Q] overlaps [A, B] (-+++). + types[0] = (int) ACROSSVERT; + pos[0] = pu[0]; // A + pos[1] = pv[0]; // [P, Q] + types[1] = (int) TOUCHEDGE; + pos[2] = pu[0]; // [A, B] + pos[3] = pv[1]; // Q + } else { + if (s4 == 0) { + // Q = B, [P, Q] contains [A, B] (-++0). + types[0] = (int) ACROSSVERT; + pos[0] = pu[0]; // A + pos[1] = pv[0]; // [P, Q] + types[1] = (int) SHAREVERT; + pos[2] = pu[1]; // B + pos[3] = pv[1]; // Q + } else { // s4 < 0 + // [P, Q] contains [A, B] (-++-). + types[0] = (int) ACROSSVERT; + pos[0] = pu[0]; // A + pos[1] = pv[0]; // [P, Q] + types[1] = (int) ACROSSVERT; + pos[2] = pu[1]; // B + pos[3] = pv[0]; // [P, Q] + } + } + } else { + if (s3 == 0) { + assert(s2 > 0); // SELF_CHECK + if (s4 > 0) { + // P = A, [P, Q] in [A, B] (-+0+). + types[0] = (int) SHAREVERT; + pos[0] = pu[0]; // A + pos[1] = pv[0]; // P + types[1] = (int) TOUCHEDGE; + pos[2] = pu[0]; // [A, B] + pos[3] = pv[1]; // Q + } else { + if (s4 == 0) { + // [P, Q] = [A, B] (-+00). + types[0] = (int) SHAREEDGE; + pos[0] = pu[0]; // [A, B] + pos[1] = pv[0]; // [P, Q] + types[1] = (int) DISJOINT; + } else { // s4 < 0 + // P= A, [P, Q] in [A, B] (-+0-). + types[0] = (int) SHAREVERT; + pos[0] = pu[0]; // A + pos[1] = pv[0]; // P + types[1] = (int) ACROSSVERT; + pos[2] = pu[1]; // B + pos[3] = pv[0]; // [P, Q] + } + } + } else { // s3 < 0 + if (s2 > 0) { + if (s4 > 0) { + // [P, Q] in [A, B] (-+-+). + types[0] = (int) TOUCHEDGE; + pos[0] = pu[0]; // [A, B] + pos[1] = pv[0]; // P + types[1] = (int) TOUCHEDGE; + pos[2] = pu[0]; // [A, B] + pos[3] = pv[1]; // Q + } else { + if (s4 == 0) { + // Q = B, [P, Q] in [A, B] (-+-0). + types[0] = (int) TOUCHEDGE; + pos[0] = pu[0]; // [A, B] + pos[1] = pv[0]; // P + types[1] = (int) SHAREVERT; + pos[2] = pu[1]; // B + pos[3] = pv[1]; // Q + } else { // s4 < 0 + // [P, Q] overlaps [A, B] (-+--). + types[0] = (int) TOUCHEDGE; + pos[0] = pu[0]; // [A, B] + pos[1] = pv[0]; // P + types[1] = (int) ACROSSVERT; + pos[2] = pu[1]; // B + pos[3] = pv[0]; // [P, Q] + } + } + } else { // s2 == 0 + // P = B (#0##). + types[0] = (int) SHAREVERT; + pos[0] = pu[1]; // B + pos[1] = pv[0]; // P + types[1] = (int) DISJOINT; + } + } + } + } else { // s1 == 0 + // Q = A (0###). + types[0] = (int) SHAREVERT; + pos[0] = pu[0]; // A + pos[1] = pv[1]; // Q + types[1] = (int) DISJOINT; + } + } + + return 4; +} + +int meshGRegionBoundaryRecovery::tri_edge_tail(point A,point B,point C,point P, + point Q,point R, REAL sP,REAL sQ,int level,int *types,int *pos) +{ + point U[3], V[3]; //, Ptmp; + int pu[3], pv[3]; //, itmp; + REAL s1, s2, s3; + int z1; + + + if (sP < 0) { + if (sQ < 0) { // (--) disjoint + return 0; + } else { + if (sQ > 0) { // (-+) + SETVECTOR3(U, A, B, C); + SETVECTOR3(V, P, Q, R); + SETVECTOR3(pu, 0, 1, 2); + SETVECTOR3(pv, 0, 1, 2); + z1 = 0; + } else { // (-0) + SETVECTOR3(U, A, B, C); + SETVECTOR3(V, P, Q, R); + SETVECTOR3(pu, 0, 1, 2); + SETVECTOR3(pv, 0, 1, 2); + z1 = 1; + } + } + } else { + if (sP > 0) { // (+-) + if (sQ < 0) { + SETVECTOR3(U, A, B, C); + SETVECTOR3(V, Q, P, R); // P and Q are flipped. + SETVECTOR3(pu, 0, 1, 2); + SETVECTOR3(pv, 1, 0, 2); + z1 = 0; + } else { + if (sQ > 0) { // (++) disjoint + return 0; + } else { // (+0) + SETVECTOR3(U, B, A, C); // A and B are flipped. + SETVECTOR3(V, P, Q, R); + SETVECTOR3(pu, 1, 0, 2); + SETVECTOR3(pv, 0, 1, 2); + z1 = 1; + } + } + } else { // sP == 0 + if (sQ < 0) { // (0-) + SETVECTOR3(U, A, B, C); + SETVECTOR3(V, Q, P, R); // P and Q are flipped. + SETVECTOR3(pu, 0, 1, 2); + SETVECTOR3(pv, 1, 0, 2); + z1 = 1; + } else { + if (sQ > 0) { // (0+) + SETVECTOR3(U, B, A, C); // A and B are flipped. + SETVECTOR3(V, Q, P, R); // P and Q are flipped. + SETVECTOR3(pu, 1, 0, 2); + SETVECTOR3(pv, 1, 0, 2); + z1 = 1; + } else { // (00) + // A, B, C, P, and Q are coplanar. + z1 = 2; + } + } + } + } + + if (z1 == 2) { + // The triangle and the edge are coplanar. + return tri_edge_2d(A, B, C, P, Q, R, level, types, pos); + } + + s1 = orient3d(U[0], U[1], V[0], V[1]); + if (s1 < 0) { + return 0; + } + + s2 = orient3d(U[1], U[2], V[0], V[1]); + if (s2 < 0) { + return 0; + } + + s3 = orient3d(U[2], U[0], V[0], V[1]); + if (s3 < 0) { + return 0; + } + + if (level == 0) { + return 1; // The are intersected. + } + + types[1] = (int) DISJOINT; // No second intersection point. + + if (z1 == 0) { + if (s1 > 0) { + if (s2 > 0) { + if (s3 > 0) { // (+++) + // [P, Q] passes interior of [A, B, C]. + types[0] = (int) ACROSSFACE; + pos[0] = 3; // interior of [A, B, C] + pos[1] = 0; // [P, Q] + } else { // s3 == 0 (++0) + // [P, Q] intersects [C, A]. + types[0] = (int) ACROSSEDGE; + pos[0] = pu[2]; // [C, A] + pos[1] = 0; // [P, Q] + } + } else { // s2 == 0 + if (s3 > 0) { // (+0+) + // [P, Q] intersects [B, C]. + types[0] = (int) ACROSSEDGE; + pos[0] = pu[1]; // [B, C] + pos[1] = 0; // [P, Q] + } else { // s3 == 0 (+00) + // [P, Q] passes C. + types[0] = (int) ACROSSVERT; + pos[0] = pu[2]; // C + pos[1] = 0; // [P, Q] + } + } + } else { // s1 == 0 + if (s2 > 0) { + if (s3 > 0) { // (0++) + // [P, Q] intersects [A, B]. + types[0] = (int) ACROSSEDGE; + pos[0] = pu[0]; // [A, B] + pos[1] = 0; // [P, Q] + } else { // s3 == 0 (0+0) + // [P, Q] passes A. + types[0] = (int) ACROSSVERT; + pos[0] = pu[0]; // A + pos[1] = 0; // [P, Q] + } + } else { // s2 == 0 + if (s3 > 0) { // (00+) + // [P, Q] passes B. + types[0] = (int) ACROSSVERT; + pos[0] = pu[1]; // B + pos[1] = 0; // [P, Q] + } else { // s3 == 0 (000) + // Impossible. + assert(0); + } + } + } + } else { // z1 == 1 + if (s1 > 0) { + if (s2 > 0) { + if (s3 > 0) { // (+++) + // Q lies in [A, B, C]. + types[0] = (int) TOUCHFACE; + pos[0] = 0; // [A, B, C] + pos[1] = pv[1]; // Q + } else { // s3 == 0 (++0) + // Q lies on [C, A]. + types[0] = (int) TOUCHEDGE; + pos[0] = pu[2]; // [C, A] + pos[1] = pv[1]; // Q + } + } else { // s2 == 0 + if (s3 > 0) { // (+0+) + // Q lies on [B, C]. + types[0] = (int) TOUCHEDGE; + pos[0] = pu[1]; // [B, C] + pos[1] = pv[1]; // Q + } else { // s3 == 0 (+00) + // Q = C. + types[0] = (int) SHAREVERT; + pos[0] = pu[2]; // C + pos[1] = pv[1]; // Q + } + } + } else { // s1 == 0 + if (s2 > 0) { + if (s3 > 0) { // (0++) + // Q lies on [A, B]. + types[0] = (int) TOUCHEDGE; + pos[0] = pu[0]; // [A, B] + pos[1] = pv[1]; // Q + } else { // s3 == 0 (0+0) + // Q = A. + types[0] = (int) SHAREVERT; + pos[0] = pu[0]; // A + pos[1] = pv[1]; // Q + } + } else { // s2 == 0 + if (s3 > 0) { // (00+) + // Q = B. + types[0] = (int) SHAREVERT; + pos[0] = pu[1]; // B + pos[1] = pv[1]; // Q + } else { // s3 == 0 (000) + // Impossible. + assert(0); + } + } + } + } + + // T and E intersect in a single point. + return 2; +} + +int meshGRegionBoundaryRecovery::tri_edge_test(point A, point B, point C, + point P, point Q, point R, int level, int *types, int *pos) +{ + REAL sP, sQ; + + // Test the locations of P and Q with respect to ABC. + sP = orient3d(A, B, C, P); + sQ = orient3d(A, B, C, Q); + + return tri_edge_tail(A, B, C, P, Q, R, sP, sQ, level, types, pos); +} + +bool meshGRegionBoundaryRecovery::lu_decmp(REAL lu[4][4], int n, int* ps, + REAL* d, int N) +{ + REAL scales[4]; + REAL pivot, biggest, mult, tempf; + int pivotindex = 0; + int i, j, k; + + *d = 1.0; // No row interchanges yet. + + for (i = N; i < n + N; i++) { // For each row. + // Find the largest element in each row for row equilibration + biggest = 0.0; + for (j = N; j < n + N; j++) + if (biggest < (tempf = fabs(lu[i][j]))) + biggest = tempf; + if (biggest != 0.0) + scales[i] = 1.0 / biggest; + else { + scales[i] = 0.0; + return false; // Zero row: singular matrix. + } + ps[i] = i; // Initialize pivot sequence. + } + + for (k = N; k < n + N - 1; k++) { // For each column. + // Find the largest element in each column to pivot around. + biggest = 0.0; + for (i = k; i < n + N; i++) { + if (biggest < (tempf = fabs(lu[ps[i]][k]) * scales[ps[i]])) { + biggest = tempf; + pivotindex = i; + } + } + if (biggest == 0.0) { + return false; // Zero column: singular matrix. + } + if (pivotindex != k) { // Update pivot sequence. + j = ps[k]; + ps[k] = ps[pivotindex]; + ps[pivotindex] = j; + *d = -(*d); // ...and change the parity of d. + } + + // Pivot, eliminating an extra variable each time + pivot = lu[ps[k]][k]; + for (i = k + 1; i < n + N; i++) { + lu[ps[i]][k] = mult = lu[ps[i]][k] / pivot; + if (mult != 0.0) { + for (j = k + 1; j < n + N; j++) + lu[ps[i]][j] -= mult * lu[ps[k]][j]; + } + } + } + + // (lu[ps[n + N - 1]][n + N - 1] == 0.0) ==> A is singular. + return lu[ps[n + N - 1]][n + N - 1] != 0.0; +} + +void meshGRegionBoundaryRecovery::lu_solve(REAL lu[4][4], int n, int* ps, + REAL* b, int N) +{ + int i, j; + REAL X[4], dot; + + for (i = N; i < n + N; i++) X[i] = 0.0; + + // Vector reduction using U triangular matrix. + for (i = N; i < n + N; i++) { + dot = 0.0; + for (j = N; j < i + N; j++) + dot += lu[ps[i]][j] * X[j]; + X[i] = b[ps[i]] - dot; + } + + // Back substitution, in L triangular matrix. + for (i = n + N - 1; i >= N; i--) { + dot = 0.0; + for (j = i + 1; j < n + N; j++) + dot += lu[ps[i]][j] * X[j]; + X[i] = (X[i] - dot) / lu[ps[i]][i]; + } + + for (i = N; i < n + N; i++) b[i] = X[i]; +} + +REAL meshGRegionBoundaryRecovery::incircle3d(point pa, point pb, point pc, + point pd) +{ + REAL area2[2], n1[3], n2[3], c[3]; + REAL sign, r, d; + + // Calculate the areas of the two triangles [a, b, c] and [b, a, d]. + facenormal(pa, pb, pc, n1, 1, NULL); + area2[0] = dot(n1, n1); + facenormal(pb, pa, pd, n2, 1, NULL); + area2[1] = dot(n2, n2); + + if (area2[0] > area2[1]) { + // Choose [a, b, c] as the base triangle. + circumsphere(pa, pb, pc, NULL, c, &r); + d = distance(c, pd); + } else { + // Choose [b, a, d] as the base triangle. + if (area2[1] > 0) { + circumsphere(pb, pa, pd, NULL, c, &r); + d = distance(c, pc); + } else { + // The four points are collinear. This case only happens on the boundary. + return 0; // Return "not inside". + } + } + + sign = d - r; + if (fabs(sign) / r < b->epsilon) { + sign = 0; + } + + return sign; +} + +void meshGRegionBoundaryRecovery::facenormal(point pa, point pb, point pc, + REAL *n, int pivot, REAL* lav) +{ + REAL v1[3], v2[3], v3[3], *pv1, *pv2; + REAL L1, L2, L3; + + v1[0] = pb[0] - pa[0]; // edge vector v1: a->b + v1[1] = pb[1] - pa[1]; + v1[2] = pb[2] - pa[2]; + v2[0] = pa[0] - pc[0]; // edge vector v2: c->a + v2[1] = pa[1] - pc[1]; + v2[2] = pa[2] - pc[2]; + + // Default, normal is calculated by: v1 x (-v2) (see Fig. fnormal). + if (pivot > 0) { + // Choose edge vectors by Burdakov's algorithm. + v3[0] = pc[0] - pb[0]; // edge vector v3: b->c + v3[1] = pc[1] - pb[1]; + v3[2] = pc[2] - pb[2]; + L1 = dot(v1, v1); + L2 = dot(v2, v2); + L3 = dot(v3, v3); + // Sort the three edge lengths. + if (L1 < L2) { + if (L2 < L3) { + pv1 = v1; pv2 = v2; // n = v1 x (-v2). + } else { + pv1 = v3; pv2 = v1; // n = v3 x (-v1). + } + } else { + if (L1 < L3) { + pv1 = v1; pv2 = v2; // n = v1 x (-v2). + } else { + pv1 = v2; pv2 = v3; // n = v2 x (-v3). + } + } + if (lav) { + // return the average edge length. + *lav = (sqrt(L1) + sqrt(L2) + sqrt(L3)) / 3.0; + } + } else { + pv1 = v1; pv2 = v2; // n = v1 x (-v2). + } + + // Calculate the face normal. + cross(pv1, pv2, n); + // Inverse the direction; + n[0] = -n[0]; + n[1] = -n[1]; + n[2] = -n[2]; +} + +REAL meshGRegionBoundaryRecovery::orient3dfast(REAL *pa, REAL *pb, REAL *pc, + REAL *pd) +{ + REAL adx, bdx, cdx; + REAL ady, bdy, cdy; + REAL adz, bdz, cdz; + + adx = pa[0] - pd[0]; + bdx = pb[0] - pd[0]; + cdx = pc[0] - pd[0]; + ady = pa[1] - pd[1]; + bdy = pb[1] - pd[1]; + cdy = pc[1] - pd[1]; + adz = pa[2] - pd[2]; + bdz = pb[2] - pd[2]; + cdz = pc[2] - pd[2]; + + return adx * (bdy * cdz - bdz * cdy) + + bdx * (cdy * adz - cdz * ady) + + cdx * (ady * bdz - adz * bdy); +} + +bool meshGRegionBoundaryRecovery::tetalldihedral(point pa, point pb, point pc, + point pd, REAL* cosdd, REAL* cosmaxd, REAL* cosmind) +{ + REAL N[4][3], vol, cosd, len; + int f1 = 0, f2 = 0, i, j; + + vol = 0; // Check if the tet is valid or not. + + // Get four normals of faces of the tet. + tetallnormal(pa, pb, pc, pd, N, &vol); + + if (vol > 0) { + // Normalize the normals. + for (i = 0; i < 4; i++) { + len = sqrt(dot(N[i], N[i])); + if (len != 0.0) { + for (j = 0; j < 3; j++) N[i][j] /= len; + } else { + // There are degeneracies, such as duplicated vertices. + vol = 0; //assert(0); + } + } + } + + if (vol <= 0) { // if (vol == 0.0) { + // A degenerated tet or an inverted tet. + facenormal(pc, pb, pd, N[0], 1, NULL); + facenormal(pa, pc, pd, N[1], 1, NULL); + facenormal(pb, pa, pd, N[2], 1, NULL); + facenormal(pa, pb, pc, N[3], 1, NULL); + // Normalize the normals. + for (i = 0; i < 4; i++) { + len = sqrt(dot(N[i], N[i])); + if (len != 0.0) { + for (j = 0; j < 3; j++) N[i][j] /= len; + } else { + // There are degeneracies, such as duplicated vertices. + break; // Not a valid normal. + } + } + if (i < 4) { + // Do not calculate dihedral angles. + // Set all angles be 0 degree. There will be no quality optimization for + // this tet! Use volume optimization to correct it. + if (cosdd != NULL) { + for (i = 0; i < 6; i++) { + cosdd[i] = -1.0; // 180 degree. + } + } + // This tet has zero volume. + if (cosmaxd != NULL) { + *cosmaxd = -1.0; // 180 degree. + } + if (cosmind != NULL) { + *cosmind = -1.0; // 180 degree. + } + return false; + } + } + + // Calculate the cosine of the dihedral angles of the edges. + for (i = 0; i < 6; i++) { + switch (i) { + case 0: f1 = 0; f2 = 1; break; // [c,d]. + case 1: f1 = 1; f2 = 2; break; // [a,d]. + case 2: f1 = 2; f2 = 3; break; // [a,b]. + case 3: f1 = 0; f2 = 3; break; // [b,c]. + case 4: f1 = 2; f2 = 0; break; // [b,d]. + case 5: f1 = 1; f2 = 3; break; // [a,c]. + } + cosd = -dot(N[f1], N[f2]); + if (cosd < -1.0) cosd = -1.0; // Rounding. + if (cosd > 1.0) cosd = 1.0; // Rounding. + if (cosdd) cosdd[i] = cosd; + if (cosmaxd || cosmind) { + if (i == 0) { + if (cosmaxd) *cosmaxd = cosd; + if (cosmind) *cosmind = cosd; + } else { + if (cosmaxd) *cosmaxd = cosd < *cosmaxd ? cosd : *cosmaxd; + if (cosmind) *cosmind = cosd > *cosmind ? cosd : *cosmind; + } + } + } + + return true; +} + +void meshGRegionBoundaryRecovery::tetallnormal(point pa, point pb, point pc, + point pd, REAL N[4][3], REAL* volume) +{ + REAL A[4][4], rhs[4], D; + int indx[4]; + int i, j; + + // get the entries of A[3][3]. + for (i = 0; i < 3; i++) A[0][i] = pa[i] - pd[i]; // d->a vec + for (i = 0; i < 3; i++) A[1][i] = pb[i] - pd[i]; // d->b vec + for (i = 0; i < 3; i++) A[2][i] = pc[i] - pd[i]; // d->c vec + + // Compute the inverse of matrix A, to get 3 normals of the 4 faces. + if (lu_decmp(A, 3, indx, &D, 0)) { // Decompose the matrix just once. + if (volume != NULL) { + // Get the volume of the tet. + *volume = fabs((A[indx[0]][0] * A[indx[1]][1] * A[indx[2]][2])) / 6.0; + } + for (j = 0; j < 3; j++) { + for (i = 0; i < 3; i++) rhs[i] = 0.0; + rhs[j] = 1.0; // Positive means the inside direction + lu_solve(A, 3, indx, rhs, 0); + for (i = 0; i < 3; i++) N[j][i] = rhs[i]; + } + // Get the fourth normal by summing up the first three. + for (i = 0; i < 3; i++) N[3][i] = - N[0][i] - N[1][i] - N[2][i]; + } else { + // The tet is degenerated. + if (volume != NULL) { + *volume = 0; + } + } +} + +REAL meshGRegionBoundaryRecovery::tetaspectratio(point pa, point pb, point pc, + point pd) +{ + REAL vda[3], vdb[3], vdc[3]; + REAL N[4][3], A[4][4], rhs[4], D; + REAL H[4], volume, radius2, minheightinv; + int indx[4]; + int i, j; + + // Set the matrix A = [vda, vdb, vdc]^T. + for (i = 0; i < 3; i++) A[0][i] = vda[i] = pa[i] - pd[i]; + for (i = 0; i < 3; i++) A[1][i] = vdb[i] = pb[i] - pd[i]; + for (i = 0; i < 3; i++) A[2][i] = vdc[i] = pc[i] - pd[i]; + // Lu-decompose the matrix A. + lu_decmp(A, 3, indx, &D, 0); + // Get the volume of abcd. + volume = (A[indx[0]][0] * A[indx[1]][1] * A[indx[2]][2]) / 6.0; + // Check if it is zero. + if (volume == 0.0) return 1.0e+200; // A degenerate tet. + // if (volume < 0.0) volume = -volume; + // Check the radiu-edge ratio of the tet. + rhs[0] = 0.5 * dot(vda, vda); + rhs[1] = 0.5 * dot(vdb, vdb); + rhs[2] = 0.5 * dot(vdc, vdc); + lu_solve(A, 3, indx, rhs, 0); + // Get the circumcenter. + // for (i = 0; i < 3; i++) circumcent[i] = pd[i] + rhs[i]; + // Get the square of the circumradius. + radius2 = dot(rhs, rhs); + + // Compute the 4 face normals (N[0], ..., N[3]). + for (j = 0; j < 3; j++) { + for (i = 0; i < 3; i++) rhs[i] = 0.0; + rhs[j] = 1.0; // Positive means the inside direction + lu_solve(A, 3, indx, rhs, 0); + for (i = 0; i < 3; i++) N[j][i] = rhs[i]; + } + // Get the fourth normal by summing up the first three. + for (i = 0; i < 3; i++) N[3][i] = - N[0][i] - N[1][i] - N[2][i]; + // Normalized the normals. + for (i = 0; i < 4; i++) { + // H[i] is the inverse of the height of its corresponding face. + H[i] = sqrt(dot(N[i], N[i])); + // if (H[i] > 0.0) { + // for (j = 0; j < 3; j++) N[i][j] /= H[i]; + // } + } + // Get the radius of the inscribed sphere. + // insradius = 1.0 / (H[0] + H[1] + H[2] + H[3]); + // Get the biggest H[i] (corresponding to the smallest height). + minheightinv = H[0]; + for (i = 1; i < 4; i++) { + if (H[i] > minheightinv) minheightinv = H[i]; + } + + return sqrt(radius2) * minheightinv; +} + +bool meshGRegionBoundaryRecovery::circumsphere(REAL* pa, REAL* pb, REAL* pc, + REAL* pd, REAL* cent, REAL* radius) +{ + REAL A[4][4], rhs[4], D; + int indx[4]; + + // Compute the coefficient matrix A (3x3). + A[0][0] = pb[0] - pa[0]; + A[0][1] = pb[1] - pa[1]; + A[0][2] = pb[2] - pa[2]; + A[1][0] = pc[0] - pa[0]; + A[1][1] = pc[1] - pa[1]; + A[1][2] = pc[2] - pa[2]; + if (pd != NULL) { + A[2][0] = pd[0] - pa[0]; + A[2][1] = pd[1] - pa[1]; + A[2][2] = pd[2] - pa[2]; + } else { + cross(A[0], A[1], A[2]); + } + + // Compute the right hand side vector b (3x1). + rhs[0] = 0.5 * dot(A[0], A[0]); + rhs[1] = 0.5 * dot(A[1], A[1]); + if (pd != NULL) { + rhs[2] = 0.5 * dot(A[2], A[2]); + } else { + rhs[2] = 0.0; + } + + // Solve the 3 by 3 equations use LU decomposition with partial pivoting + // and backward and forward substitute.. + if (!lu_decmp(A, 3, indx, &D, 0)) { + if (radius != (REAL *) NULL) *radius = 0.0; + return false; + } + lu_solve(A, 3, indx, rhs, 0); + if (cent != (REAL *) NULL) { + cent[0] = pa[0] + rhs[0]; + cent[1] = pa[1] + rhs[1]; + cent[2] = pa[2] + rhs[2]; + } + if (radius != (REAL *) NULL) { + *radius = sqrt(rhs[0] * rhs[0] + rhs[1] * rhs[1] + rhs[2] * rhs[2]); + } + return true; +} + +void meshGRegionBoundaryRecovery::planelineint(REAL* pa, REAL* pb, REAL* pc, + REAL* e1, REAL* e2, REAL* ip, REAL* u) +{ + REAL n[3], det, det1; + + // Calculate N. + facenormal(pa, pb, pc, n, 1, NULL); + // Calculate N dot (e2 - e1). + det = n[0] * (e2[0] - e1[0]) + n[1] * (e2[1] - e1[1]) + + n[2] * (e2[2] - e1[2]); + if (det != 0.0) { + // Calculate N dot (pa - e1) + det1 = n[0] * (pa[0] - e1[0]) + n[1] * (pa[1] - e1[1]) + + n[2] * (pa[2] - e1[2]); + *u = det1 / det; + ip[0] = e1[0] + *u * (e2[0] - e1[0]); + ip[1] = e1[1] + *u * (e2[1] - e1[1]); + ip[2] = e1[2] + *u * (e2[2] - e1[2]); + } else { + *u = 0.0; + } +} + +int meshGRegionBoundaryRecovery::linelineint(REAL* A, REAL* B, REAL* C, + REAL* D, REAL* P, REAL* Q, REAL* tp, REAL* tq) +{ + REAL vab[3], vcd[3], vca[3]; + REAL vab_vab, vcd_vcd, vab_vcd; + REAL vca_vab, vca_vcd; + REAL det, eps; + int i; + + for (i = 0; i < 3; i++) { + vab[i] = B[i] - A[i]; + vcd[i] = D[i] - C[i]; + vca[i] = A[i] - C[i]; + } + + vab_vab = dot(vab, vab); + vcd_vcd = dot(vcd, vcd); + vab_vcd = dot(vab, vcd); + + det = vab_vab * vcd_vcd - vab_vcd * vab_vcd; + // Round the result. + eps = det / (fabs(vab_vab * vcd_vcd) + fabs(vab_vcd * vab_vcd)); + if (eps < b->epsilon) { + return 0; + } + + vca_vab = dot(vca, vab); + vca_vcd = dot(vca, vcd); + + *tp = (vcd_vcd * (- vca_vab) + vab_vcd * vca_vcd) / det; + *tq = (vab_vcd * (- vca_vab) + vab_vab * vca_vcd) / det; + + for (i = 0; i < 3; i++) P[i] = A[i] + (*tp) * vab[i]; + for (i = 0; i < 3; i++) Q[i] = C[i] + (*tq) * vcd[i]; + + return 1; +} + +REAL meshGRegionBoundaryRecovery::tetprismvol(REAL* p0, REAL* p1, REAL* p2, + REAL* p3) +{ + REAL *p4, *p5, *p6, *p7; + REAL w4, w5, w6, w7; + REAL vol[4]; + + p4 = p0; + p5 = p1; + p6 = p2; + p7 = p3; + + // TO DO: these weights can be pre-calculated! + w4 = dot(p0, p0); + w5 = dot(p1, p1); + w6 = dot(p2, p2); + w7 = dot(p3, p3); + + // Calculate the volume of the tet-prism. + vol[0] = orient4dfast(p5, p6, p4, p3, p7, w5, w6, w4, 0, w7); + vol[1] = orient4dfast(p3, p6, p2, p0, p1, 0, w6, 0, 0, 0); + vol[2] = orient4dfast(p4, p6, p3, p0, p1, w4, w6, 0, 0, 0); + vol[3] = orient4dfast(p6, p5, p4, p3, p1, w6, w5, w4, 0, 0); + + return fabs(vol[0]) + fabs(vol[1]) + fabs(vol[2]) + fabs(vol[3]); +} + +void meshGRegionBoundaryRecovery::calculateabovepoint4(point pa, point pb, + point pc, point pd) +{ + REAL n1[3], n2[3], *norm; + REAL len, len1, len2; + + // Select a base. + facenormal(pa, pb, pc, n1, 1, NULL); + len1 = sqrt(dot(n1, n1)); + facenormal(pa, pb, pd, n2, 1, NULL); + len2 = sqrt(dot(n2, n2)); + if (len1 > len2) { + norm = n1; + len = len1; + } else { + norm = n2; + len = len2; + } + assert(len > 0); + norm[0] /= len; + norm[1] /= len; + norm[2] /= len; + len = distance(pa, pb); + dummypoint[0] = pa[0] + len * norm[0]; + dummypoint[1] = pa[1] + len * norm[1]; + dummypoint[2] = pa[2] + len * norm[2]; +} + +//// //// +//// //// +//// geom_cxx ///////////////////////////////////////////////////////////////// + +//// flip_cxx ///////////////////////////////////////////////////////////////// +//// //// +//// //// + +void meshGRegionBoundaryRecovery::flip23(triface* fliptets, int hullflag, flipconstraints *fc) +{ + triface topcastets[3], botcastets[3]; + triface newface, casface; + point pa, pb, pc, pd, pe; + REAL attrib, volume; + int dummyflag = 0; // range = {-1, 0, 1, 2}. + int i; + + if (hullflag > 0) { + // Check if e is dummypoint. + if (oppo(fliptets[1]) == dummypoint) { + // Swap the two old tets. + newface = fliptets[0]; + fliptets[0] = fliptets[1]; + fliptets[1] = newface; + dummyflag = -1; // d is dummypoint. + } else { + // Check if either a or b is dummypoint. + if (org(fliptets[0]) == dummypoint) { + dummyflag = 1; // a is dummypoint. + enextself(fliptets[0]); + eprevself(fliptets[1]); + } else if (dest(fliptets[0]) == dummypoint) { + dummyflag = 2; // b is dummypoint. + eprevself(fliptets[0]); + enextself(fliptets[1]); + } else { + dummyflag = 0; // either c or d may be dummypoint. + } + } + } + + pa = org(fliptets[0]); + pb = dest(fliptets[0]); + pc = apex(fliptets[0]); + pd = oppo(fliptets[0]); + pe = oppo(fliptets[1]); + + flip23count++; + + // Get the outer boundary faces. + for (i = 0; i < 3; i++) { + fnext(fliptets[0], topcastets[i]); + enextself(fliptets[0]); + } + for (i = 0; i < 3; i++) { + fnext(fliptets[1], botcastets[i]); + eprevself(fliptets[1]); + } + + // Re-use fliptets[0] and fliptets[1]. + fliptets[0].ver = 11; + fliptets[1].ver = 11; + setelemmarker(fliptets[0].tet, 0); // Clear all flags. + setelemmarker(fliptets[1].tet, 0); + // NOTE: the element attributes and volume constraint remain unchanged. + if (checksubsegflag) { + // Dealloc the space to subsegments. + if (fliptets[0].tet[8] != NULL) { + tet2segpool->dealloc((shellface *) fliptets[0].tet[8]); + fliptets[0].tet[8] = NULL; + } + if (fliptets[1].tet[8] != NULL) { + tet2segpool->dealloc((shellface *) fliptets[1].tet[8]); + fliptets[1].tet[8] = NULL; + } + } + if (checksubfaceflag) { + // Dealloc the space to subfaces. + if (fliptets[0].tet[9] != NULL) { + tet2subpool->dealloc((shellface *) fliptets[0].tet[9]); + fliptets[0].tet[9] = NULL; + } + if (fliptets[1].tet[9] != NULL) { + tet2subpool->dealloc((shellface *) fliptets[1].tet[9]); + fliptets[1].tet[9] = NULL; + } + } + // Create a new tet. + maketetrahedron(&(fliptets[2])); + // The new tet have the same attributes from the old tet. + for (i = 0; i < numelemattrib; i++) { + attrib = elemattribute(fliptets[0].tet, i); + setelemattribute(fliptets[2].tet, i, attrib); + } + if (b->varvolume) { + volume = volumebound(fliptets[0].tet); + setvolumebound(fliptets[2].tet, volume); + } + + if (hullflag > 0) { + // Check if d is dummytet. + if (pd != dummypoint) { + setvertices(fliptets[0], pe, pd, pa, pb); // [e,d,a,b] * + setvertices(fliptets[1], pe, pd, pb, pc); // [e,d,b,c] * + // Check if c is dummypoint. + if (pc != dummypoint) { + setvertices(fliptets[2], pe, pd, pc, pa); // [e,d,c,a] * + } else { + setvertices(fliptets[2], pd, pe, pa, pc); // [d,e,a,c] + esymself(fliptets[2]); // [e,d,c,a] * + } + // The hullsize does not change. + } else { + // d is dummypoint. + setvertices(fliptets[0], pa, pb, pe, pd); // [a,b,e,d] + setvertices(fliptets[1], pb, pc, pe, pd); // [b,c,e,d] + setvertices(fliptets[2], pc, pa, pe, pd); // [c,a,e,d] + // Adjust the faces to [e,d,a,b], [e,d,b,c], [e,d,c,a] * + for (i = 0; i < 3; i++) { + eprevesymself(fliptets[i]); + enextself(fliptets[i]); + } + // We deleted one hull tet, and created three hull tets. + hullsize += 2; + } + } else { + setvertices(fliptets[0], pe, pd, pa, pb); // [e,d,a,b] * + setvertices(fliptets[1], pe, pd, pb, pc); // [e,d,b,c] * + setvertices(fliptets[2], pe, pd, pc, pa); // [e,d,c,a] * + } + + if (fc->remove_ndelaunay_edge) { // calc_tetprism_vol + REAL volneg[2], volpos[3], vol_diff; + if (pd != dummypoint) { + if (pc != dummypoint) { + volpos[0] = tetprismvol(pe, pd, pa, pb); + volpos[1] = tetprismvol(pe, pd, pb, pc); + volpos[2] = tetprismvol(pe, pd, pc, pa); + volneg[0] = tetprismvol(pa, pb, pc, pd); + volneg[1] = tetprismvol(pb, pa, pc, pe); + } else { // pc == dummypoint + volpos[0] = tetprismvol(pe, pd, pa, pb); + volpos[1] = 0.; + volpos[2] = 0.; + volneg[0] = 0.; + volneg[1] = 0.; + } + } else { // pd == dummypoint. + volpos[0] = 0.; + volpos[1] = 0.; + volpos[2] = 0.; + volneg[0] = 0.; + volneg[1] = tetprismvol(pb, pa, pc, pe); + } + vol_diff = volpos[0] + volpos[1] + volpos[2] - volneg[0] - volneg[1]; + fc->tetprism_vol_sum += vol_diff; // Update the total sum. + } + + // Bond three new tets together. + for (i = 0; i < 3; i++) { + esym(fliptets[i], newface); + bond(newface, fliptets[(i + 1) % 3]); + } + // Bond to top outer boundary faces (at [a,b,c,d]). + for (i = 0; i < 3; i++) { + eorgoppo(fliptets[i], newface); // At edges [b,a], [c,b], [a,c]. + bond(newface, topcastets[i]); + } + // Bond bottom outer boundary faces (at [b,a,c,e]). + for (i = 0; i < 3; i++) { + edestoppo(fliptets[i], newface); // At edges [a,b], [b,c], [c,a]. + bond(newface, botcastets[i]); + } + + if (checksubsegflag) { + // Bond subsegments if there are. + // Each new tet has 5 edges to be checked (except the edge [e,d]). + face checkseg; + // The middle three: [a,b], [b,c], [c,a]. + for (i = 0; i < 3; i++) { + if (issubseg(topcastets[i])) { + tsspivot1(topcastets[i], checkseg); + eorgoppo(fliptets[i], newface); + tssbond1(newface, checkseg); + sstbond1(checkseg, newface); + if (fc->chkencflag & 1) { + //enqueuesubface(badsubsegs, &checkseg); + } + } + } + // The top three: [d,a], [d,b], [d,c]. Two tets per edge. + for (i = 0; i < 3; i++) { + eprev(topcastets[i], casface); + if (issubseg(casface)) { + tsspivot1(casface, checkseg); + enext(fliptets[i], newface); + tssbond1(newface, checkseg); + sstbond1(checkseg, newface); + esym(fliptets[(i + 2) % 3], newface); + eprevself(newface); + tssbond1(newface, checkseg); + sstbond1(checkseg, newface); + if (fc->chkencflag & 1) { + //enqueuesubface(badsubsegs, &checkseg); + } + } + } + // The bot three: [a,e], [b,e], [c,e]. Two tets per edge. + for (i = 0; i < 3; i++) { + enext(botcastets[i], casface); + if (issubseg(casface)) { + tsspivot1(casface, checkseg); + eprev(fliptets[i], newface); + tssbond1(newface, checkseg); + sstbond1(checkseg, newface); + esym(fliptets[(i + 2) % 3], newface); + enextself(newface); + tssbond1(newface, checkseg); + sstbond1(checkseg, newface); + if (fc->chkencflag & 1) { + //enqueuesubface(badsubsegs, &checkseg); + } + } + } + } // if (checksubsegflag) + + if (checksubfaceflag) { + // Bond 6 subfaces if there are. + face checksh; + for (i = 0; i < 3; i++) { + if (issubface(topcastets[i])) { + tspivot(topcastets[i], checksh); + eorgoppo(fliptets[i], newface); + sesymself(checksh); + tsbond(newface, checksh); + if (fc->chkencflag & 2) { + //enqueuesubface(badsubfacs, &checksh); + } + } + } + for (i = 0; i < 3; i++) { + if (issubface(botcastets[i])) { + tspivot(botcastets[i], checksh); + edestoppo(fliptets[i], newface); + sesymself(checksh); + tsbond(newface, checksh); + if (fc->chkencflag & 2) { + //enqueuesubface(badsubfacs, &checksh); + } + } + } + } // if (checksubfaceflag) + + if (fc->chkencflag & 4) { + // Put three new tets into check list. + for (i = 0; i < 3; i++) { + //enqueuetetrahedron(&(fliptets[i])); + } + } + + // Update the point-to-tet map. + setpoint2tet(pa, (tetrahedron) fliptets[0].tet); + setpoint2tet(pb, (tetrahedron) fliptets[0].tet); + setpoint2tet(pc, (tetrahedron) fliptets[1].tet); + setpoint2tet(pd, (tetrahedron) fliptets[0].tet); + setpoint2tet(pe, (tetrahedron) fliptets[0].tet); + + if (hullflag > 0) { + if (dummyflag != 0) { + // Restore the original position of the points (for flipnm()). + if (dummyflag == -1) { + // Reverse the edge. + for (i = 0; i < 3; i++) { + esymself(fliptets[i]); + } + // Swap the last two new tets. + newface = fliptets[1]; + fliptets[1] = fliptets[2]; + fliptets[2] = newface; + } else { + // either a or b were swapped. + if (dummyflag == 1) { + // a is dummypoint. + newface = fliptets[0]; + fliptets[0] = fliptets[2]; + fliptets[2] = fliptets[1]; + fliptets[1] = newface; + } else { // dummyflag == 2 + // b is dummypoint. + newface = fliptets[0]; + fliptets[0] = fliptets[1]; + fliptets[1] = fliptets[2]; + fliptets[2] = newface; + } + } + } + } + + if (fc->enqflag > 0) { + // Queue faces which may be locally non-Delaunay. + for (i = 0; i < 3; i++) { + eprevesym(fliptets[i], newface); + flippush(flipstack, &newface); + } + if (fc->enqflag > 1) { + for (i = 0; i < 3; i++) { + enextesym(fliptets[i], newface); + flippush(flipstack, &newface); + } + } + } + + recenttet = fliptets[0]; +} + +void meshGRegionBoundaryRecovery::flip32(triface* fliptets, int hullflag, flipconstraints *fc) +{ + triface topcastets[3], botcastets[3]; + triface newface, casface; + face flipshs[3]; + face checkseg; + point pa, pb, pc, pd, pe; + REAL attrib, volume; + int dummyflag = 0; // Rangle = {-1, 0, 1, 2} + int spivot = -1, scount = 0; // for flip22() + int t1ver; + int i, j; + + if (hullflag > 0) { + // Check if e is 'dummypoint'. + if (org(fliptets[0]) == dummypoint) { + // Reverse the edge. + for (i = 0; i < 3; i++) { + esymself(fliptets[i]); + } + // Swap the last two tets. + newface = fliptets[1]; + fliptets[1] = fliptets[2]; + fliptets[2] = newface; + dummyflag = -1; // e is dummypoint. + } else { + // Check if a or b is the 'dummypoint'. + if (apex(fliptets[0]) == dummypoint) { + dummyflag = 1; // a is dummypoint. + newface = fliptets[0]; + fliptets[0] = fliptets[1]; + fliptets[1] = fliptets[2]; + fliptets[2] = newface; + } else if (apex(fliptets[1]) == dummypoint) { + dummyflag = 2; // b is dummypoint. + newface = fliptets[0]; + fliptets[0] = fliptets[2]; + fliptets[2] = fliptets[1]; + fliptets[1] = newface; + } else { + dummyflag = 0; // either c or d may be dummypoint. + } + } + } + + pa = apex(fliptets[0]); + pb = apex(fliptets[1]); + pc = apex(fliptets[2]); + pd = dest(fliptets[0]); + pe = org(fliptets[0]); + + flip32count++; + + // Get the outer boundary faces. + for (i = 0; i < 3; i++) { + eorgoppo(fliptets[i], casface); + fsym(casface, topcastets[i]); + } + for (i = 0; i < 3; i++) { + edestoppo(fliptets[i], casface); + fsym(casface, botcastets[i]); + } + + if (checksubfaceflag) { + // Check if there are interior subfaces at the edge [e,d]. + for (i = 0; i < 3; i++) { + tspivot(fliptets[i], flipshs[i]); + if (flipshs[i].sh != NULL) { + // Found an interior subface. + stdissolve(flipshs[i]); // Disconnect the sub-tet bond. + scount++; + } else { + spivot = i; + } + } + } + + // Re-use fliptets[0] and fliptets[1]. + fliptets[0].ver = 11; + fliptets[1].ver = 11; + setelemmarker(fliptets[0].tet, 0); // Clear all flags. + setelemmarker(fliptets[1].tet, 0); + if (checksubsegflag) { + // Dealloc the space to subsegments. + if (fliptets[0].tet[8] != NULL) { + tet2segpool->dealloc((shellface *) fliptets[0].tet[8]); + fliptets[0].tet[8] = NULL; + } + if (fliptets[1].tet[8] != NULL) { + tet2segpool->dealloc((shellface *) fliptets[1].tet[8]); + fliptets[1].tet[8] = NULL; + } + } + if (checksubfaceflag) { + // Dealloc the space to subfaces. + if (fliptets[0].tet[9] != NULL) { + tet2subpool->dealloc((shellface *) fliptets[0].tet[9]); + fliptets[0].tet[9] = NULL; + } + if (fliptets[1].tet[9] != NULL) { + tet2subpool->dealloc((shellface *) fliptets[1].tet[9]); + fliptets[1].tet[9] = NULL; + } + } + if (checksubfaceflag) { + if (scount > 0) { + // The element attributes and volume constraint must be set correctly. + // There are two subfaces involved in this flip. The three tets are + // separated into two different regions, one may be exterior. The + // first region has two tets, and the second region has only one. + // The two created tets must be in the same region as the first region. + // The element attributes and volume constraint must be set correctly. + //assert(spivot != -1); + // The tet fliptets[spivot] is in the first region. + for (j = 0; j < 2; j++) { + for (i = 0; i < numelemattrib; i++) { + attrib = elemattribute(fliptets[spivot].tet, i); + setelemattribute(fliptets[j].tet, i, attrib); + } + if (b->varvolume) { + volume = volumebound(fliptets[spivot].tet); + setvolumebound(fliptets[j].tet, volume); + } + } + } + } + // Delete an old tet. + tetrahedrondealloc(fliptets[2].tet); + + if (hullflag > 0) { + // Check if c is dummypointc. + if (pc != dummypoint) { + // Check if d is dummypoint. + if (pd != dummypoint) { + // No hull tet is involved. + } else { + // We deleted three hull tets, and created one hull tet. + hullsize -= 2; + } + setvertices(fliptets[0], pa, pb, pc, pd); + setvertices(fliptets[1], pb, pa, pc, pe); + } else { + // c is dummypoint. The two new tets are hull tets. + setvertices(fliptets[0], pb, pa, pd, pc); + setvertices(fliptets[1], pa, pb, pe, pc); + // Adjust badc -> abcd. + esymself(fliptets[0]); + // Adjust abec -> bace. + esymself(fliptets[1]); + // The hullsize does not change. + } + } else { + setvertices(fliptets[0], pa, pb, pc, pd); + setvertices(fliptets[1], pb, pa, pc, pe); + } + + if (fc->remove_ndelaunay_edge) { // calc_tetprism_vol + REAL volneg[3], volpos[2], vol_diff; + if (pc != dummypoint) { + if (pd != dummypoint) { + volneg[0] = tetprismvol(pe, pd, pa, pb); + volneg[1] = tetprismvol(pe, pd, pb, pc); + volneg[2] = tetprismvol(pe, pd, pc, pa); + volpos[0] = tetprismvol(pa, pb, pc, pd); + volpos[1] = tetprismvol(pb, pa, pc, pe); + } else { // pd == dummypoint + volneg[0] = 0.; + volneg[1] = 0.; + volneg[2] = 0.; + volpos[0] = 0.; + volpos[1] = tetprismvol(pb, pa, pc, pe); + } + } else { // pc == dummypoint. + volneg[0] = tetprismvol(pe, pd, pa, pb); + volneg[1] = 0.; + volneg[2] = 0.; + volpos[0] = 0.; + volpos[1] = 0.; + } + vol_diff = volpos[0] + volpos[1] - volneg[0] - volneg[1] - volneg[2]; + fc->tetprism_vol_sum += vol_diff; // Update the total sum. + } + + // Bond abcd <==> bace. + bond(fliptets[0], fliptets[1]); + // Bond new faces to top outer boundary faces (at abcd). + for (i = 0; i < 3; i++) { + esym(fliptets[0], newface); + bond(newface, topcastets[i]); + enextself(fliptets[0]); + } + // Bond new faces to bottom outer boundary faces (at bace). + for (i = 0; i < 3; i++) { + esym(fliptets[1], newface); + bond(newface, botcastets[i]); + eprevself(fliptets[1]); + } + + if (checksubsegflag) { + // Bond 9 segments to new (flipped) tets. + for (i = 0; i < 3; i++) { // edges a->b, b->c, c->a. + if (issubseg(topcastets[i])) { + tsspivot1(topcastets[i], checkseg); + tssbond1(fliptets[0], checkseg); + sstbond1(checkseg, fliptets[0]); + tssbond1(fliptets[1], checkseg); + sstbond1(checkseg, fliptets[1]); + if (fc->chkencflag & 1) { + //enqueuesubface(badsubsegs, &checkseg); + } + } + enextself(fliptets[0]); + eprevself(fliptets[1]); + } + // The three top edges. + for (i = 0; i < 3; i++) { // edges b->d, c->d, a->d. + esym(fliptets[0], newface); + eprevself(newface); + enext(topcastets[i], casface); + if (issubseg(casface)) { + tsspivot1(casface, checkseg); + tssbond1(newface, checkseg); + sstbond1(checkseg, newface); + if (fc->chkencflag & 1) { + //enqueuesubface(badsubsegs, &checkseg); + } + } + enextself(fliptets[0]); + } + // The three bot edges. + for (i = 0; i < 3; i++) { // edges b<-e, c<-e, a<-e. + esym(fliptets[1], newface); + enextself(newface); + eprev(botcastets[i], casface); + if (issubseg(casface)) { + tsspivot1(casface, checkseg); + tssbond1(newface, checkseg); + sstbond1(checkseg, newface); + if (fc->chkencflag & 1) { + //enqueuesubface(badsubsegs, &checkseg); + } + } + eprevself(fliptets[1]); + } + } // if (checksubsegflag) + + if (checksubfaceflag) { + face checksh; + // Bond the top three casing subfaces. + for (i = 0; i < 3; i++) { // At edges [b,a], [c,b], [a,c] + if (issubface(topcastets[i])) { + tspivot(topcastets[i], checksh); + esym(fliptets[0], newface); + sesymself(checksh); + tsbond(newface, checksh); + if (fc->chkencflag & 2) { + //enqueuesubface(badsubfacs, &checksh); + } + } + enextself(fliptets[0]); + } + // Bond the bottom three casing subfaces. + for (i = 0; i < 3; i++) { // At edges [a,b], [b,c], [c,a] + if (issubface(botcastets[i])) { + tspivot(botcastets[i], checksh); + esym(fliptets[1], newface); + sesymself(checksh); + tsbond(newface, checksh); + if (fc->chkencflag & 2) { + //enqueuesubface(badsubfacs, &checksh); + } + } + eprevself(fliptets[1]); + } + + if (scount > 0) { + face flipfaces[2]; + // Perform a 2-to-2 flip in subfaces. + flipfaces[0] = flipshs[(spivot + 1) % 3]; + flipfaces[1] = flipshs[(spivot + 2) % 3]; + sesymself(flipfaces[1]); + flip22(flipfaces, 0, fc->chkencflag); + // Connect the flipped subfaces to flipped tets. + // First go to the corresponding flipping edge. + // Re-use top- and botcastets[0]. + topcastets[0] = fliptets[0]; + botcastets[0] = fliptets[1]; + for (i = 0; i < ((spivot + 1) % 3); i++) { + enextself(topcastets[0]); + eprevself(botcastets[0]); + } + // Connect the top subface to the top tets. + esymself(topcastets[0]); + sesymself(flipfaces[0]); + // Check if there already exists a subface. + tspivot(topcastets[0], checksh); + if (checksh.sh == NULL) { + tsbond(topcastets[0], flipfaces[0]); + fsymself(topcastets[0]); + sesymself(flipfaces[0]); + tsbond(topcastets[0], flipfaces[0]); + } else { + // An invalid 2-to-2 flip. Report a bug. + terminateBoundaryRecovery(this, 2); + } + // Connect the bot subface to the bottom tets. + esymself(botcastets[0]); + sesymself(flipfaces[1]); + // Check if there already exists a subface. + tspivot(botcastets[0], checksh); + if (checksh.sh == NULL) { + tsbond(botcastets[0], flipfaces[1]); + fsymself(botcastets[0]); + sesymself(flipfaces[1]); + tsbond(botcastets[0], flipfaces[1]); + } else { + // An invalid 2-to-2 flip. Report a bug. + terminateBoundaryRecovery(this, 2); + } + } // if (scount > 0) + } // if (checksubfaceflag) + + if (fc->chkencflag & 4) { + // Put two new tets into check list. + for (i = 0; i < 2; i++) { + //enqueuetetrahedron(&(fliptets[i])); + } + } + + setpoint2tet(pa, (tetrahedron) fliptets[0].tet); + setpoint2tet(pb, (tetrahedron) fliptets[0].tet); + setpoint2tet(pc, (tetrahedron) fliptets[0].tet); + setpoint2tet(pd, (tetrahedron) fliptets[0].tet); + setpoint2tet(pe, (tetrahedron) fliptets[1].tet); + + if (hullflag > 0) { + if (dummyflag != 0) { + // Restore the original position of the points (for flipnm()). + if (dummyflag == -1) { + // e were dummypoint. Swap the two new tets. + newface = fliptets[0]; + fliptets[0] = fliptets[1]; + fliptets[1] = newface; + } else { + // a or b was dummypoint. + if (dummyflag == 1) { + eprevself(fliptets[0]); + enextself(fliptets[1]); + } else { // dummyflag == 2 + enextself(fliptets[0]); + eprevself(fliptets[1]); + } + } + } + } + + if (fc->enqflag > 0) { + // Queue faces which may be locally non-Delaunay. + // pa = org(fliptets[0]); // 'a' may be a new vertex. + enextesym(fliptets[0], newface); + flippush(flipstack, &newface); + eprevesym(fliptets[1], newface); + flippush(flipstack, &newface); + if (fc->enqflag > 1) { + //pb = dest(fliptets[0]); + eprevesym(fliptets[0], newface); + flippush(flipstack, &newface); + enextesym(fliptets[1], newface); + flippush(flipstack, &newface); + //pc = apex(fliptets[0]); + esym(fliptets[0], newface); + flippush(flipstack, &newface); + esym(fliptets[1], newface); + flippush(flipstack, &newface); + } + } + + recenttet = fliptets[0]; +} + +void meshGRegionBoundaryRecovery::flip41(triface* fliptets, int hullflag, flipconstraints *fc) +{ + triface topcastets[3], botcastet; + triface newface, neightet; + face flipshs[4]; + point pa, pb, pc, pd, pp; + int dummyflag = 0; // in {0, 1, 2, 3, 4} + int spivot = -1, scount = 0; + int t1ver; + int i; + + pa = org(fliptets[3]); + pb = dest(fliptets[3]); + pc = apex(fliptets[3]); + pd = dest(fliptets[0]); + pp = org(fliptets[0]); // The removing vertex. + + flip41count++; + + // Get the outer boundary faces. + for (i = 0; i < 3; i++) { + enext(fliptets[i], topcastets[i]); + fnextself(topcastets[i]); // [d,a,b,#], [d,b,c,#], [d,c,a,#] + enextself(topcastets[i]); // [a,b,d,#], [b,c,d,#], [c,a,d,#] + } + fsym(fliptets[3], botcastet); // [b,a,c,#] + + if (checksubfaceflag) { + // Check if there are three subfaces at 'p'. + // Re-use 'newface'. + for (i = 0; i < 3; i++) { + fnext(fliptets[3], newface); // [a,b,p,d],[b,c,p,d],[c,a,p,d]. + tspivot(newface, flipshs[i]); + if (flipshs[i].sh != NULL) { + spivot = i; // Remember this subface. + scount++; + } + enextself(fliptets[3]); + } + if (scount > 0) { + // There are three subfaces connecting at p. + if (scount < 3) { + // The new subface is one of {[a,b,d], [b,c,d], [c,a,d]}. + assert(scount == 1); // spivot >= 0 + // Go to the tet containing the three subfaces. + fsym(topcastets[spivot], neightet); + // Get the three subfaces connecting at p. + for (i = 0; i < 3; i++) { + esym(neightet, newface); + tspivot(newface, flipshs[i]); + assert(flipshs[i].sh != NULL); + eprevself(neightet); + } + } else { + spivot = 3; // The new subface is [a,b,c]. + } + } + } // if (checksubfaceflag) + + + // Re-use fliptets[0] for [a,b,c,d]. + fliptets[0].ver = 11; + setelemmarker(fliptets[0].tet, 0); // Clean all flags. + // NOTE: the element attributes and volume constraint remain unchanged. + if (checksubsegflag) { + // Dealloc the space to subsegments. + if (fliptets[0].tet[8] != NULL) { + tet2segpool->dealloc((shellface *) fliptets[0].tet[8]); + fliptets[0].tet[8] = NULL; + } + } + if (checksubfaceflag) { + // Dealloc the space to subfaces. + if (fliptets[0].tet[9] != NULL) { + tet2subpool->dealloc((shellface *) fliptets[0].tet[9]); + fliptets[0].tet[9] = NULL; + } + } + // Delete the other three tets. + for (i = 1; i < 4; i++) { + tetrahedrondealloc(fliptets[i].tet); + } + + if (pp != dummypoint) { + // Mark the point pp as unused. + setpointtype(pp, UNUSEDVERTEX); + unuverts++; + } + + // Create the new tet [a,b,c,d]. + if (hullflag > 0) { + // One of the five vertices may be 'dummypoint'. + if (pa == dummypoint) { + // pa is dummypoint. + setvertices(fliptets[0], pc, pb, pd, pa); + esymself(fliptets[0]); // [b,c,a,d] + eprevself(fliptets[0]); // [a,b,c,d] + dummyflag = 1; + } else if (pb == dummypoint) { + setvertices(fliptets[0], pa, pc, pd, pb); + esymself(fliptets[0]); // [c,a,b,d] + enextself(fliptets[0]); // [a,b,c,d] + dummyflag = 2; + } else if (pc == dummypoint) { + setvertices(fliptets[0], pb, pa, pd, pc); + esymself(fliptets[0]); // [a,b,c,d] + dummyflag = 3; + } else if (pd == dummypoint) { + setvertices(fliptets[0], pa, pb, pc, pd); + dummyflag = 4; + } else { + setvertices(fliptets[0], pa, pb, pc, pd); + if (pp == dummypoint) { + dummyflag = -1; + } else { + dummyflag = 0; + } + } + if (dummyflag > 0) { + // We deleted 3 hull tets, and create 1 hull tet. + hullsize -= 2; + } else if (dummyflag < 0) { + // We deleted 4 hull tets. + hullsize -= 4; + // meshedges does not change. + } + } else { + setvertices(fliptets[0], pa, pb, pc, pd); + } + + if (fc->remove_ndelaunay_edge) { // calc_tetprism_vol + REAL volneg[4], volpos[1], vol_diff; + if (dummyflag > 0) { + if (pa == dummypoint) { + volneg[0] = 0.; + volneg[1] = tetprismvol(pp, pd, pb, pc); + volneg[2] = 0.; + volneg[3] = 0.; + } else if (pb == dummypoint) { + volneg[0] = 0.; + volneg[1] = 0.; + volneg[2] = tetprismvol(pp, pd, pc, pa); + volneg[3] = 0.; + } else if (pc == dummypoint) { + volneg[0] = tetprismvol(pp, pd, pa, pb); + volneg[1] = 0.; + volneg[2] = 0.; + volneg[3] = 0.; + } else { // pd == dummypoint + volneg[0] = 0.; + volneg[1] = 0.; + volneg[2] = 0.; + volneg[3] = tetprismvol(pa, pb, pc, pp); + } + volpos[0] = 0.; + } else if (dummyflag < 0) { + volneg[0] = 0.; + volneg[1] = 0.; + volneg[2] = 0.; + volneg[3] = 0.; + volpos[0] = tetprismvol(pa, pb, pc, pd); + } else { + volneg[0] = tetprismvol(pp, pd, pa, pb); + volneg[1] = tetprismvol(pp, pd, pb, pc); + volneg[2] = tetprismvol(pp, pd, pc, pa); + volneg[3] = tetprismvol(pa, pb, pc, pp); + volpos[0] = tetprismvol(pa, pb, pc, pd); + } + vol_diff = volpos[0] - volneg[0] - volneg[1] - volneg[2] - volneg[3]; + fc->tetprism_vol_sum += vol_diff; // Update the total sum. + } + + // Bond the new tet to adjacent tets. + for (i = 0; i < 3; i++) { + esym(fliptets[0], newface); // At faces [b,a,d], [c,b,d], [a,c,d]. + bond(newface, topcastets[i]); + enextself(fliptets[0]); + } + bond(fliptets[0], botcastet); + + if (checksubsegflag) { + face checkseg; + // Bond 6 segments (at edges of [a,b,c,d]) if there there are. + for (i = 0; i < 3; i++) { + eprev(topcastets[i], newface); // At edges [d,a],[d,b],[d,c]. + if (issubseg(newface)) { + tsspivot1(newface, checkseg); + esym(fliptets[0], newface); + enextself(newface); // At edges [a,d], [b,d], [c,d]. + tssbond1(newface, checkseg); + sstbond1(checkseg, newface); + if (fc->chkencflag & 1) { + //enqueuesubface(badsubsegs, &checkseg); + } + } + enextself(fliptets[0]); + } + for (i = 0; i < 3; i++) { + if (issubseg(topcastets[i])) { + tsspivot1(topcastets[i], checkseg); // At edges [a,b],[b,c],[c,a]. + tssbond1(fliptets[0], checkseg); + sstbond1(checkseg, fliptets[0]); + if (fc->chkencflag & 1) { + //enqueuesubface(badsubsegs, &checkseg); + } + } + enextself(fliptets[0]); + } + } + + if (checksubfaceflag) { + face checksh; + // Bond 4 subfaces (at faces of [a,b,c,d]) if there are. + for (i = 0; i < 3; i++) { + if (issubface(topcastets[i])) { + tspivot(topcastets[i], checksh); // At faces [a,b,d],[b,c,d],[c,a,d] + esym(fliptets[0], newface); // At faces [b,a,d],[c,b,d],[a,c,d] + sesymself(checksh); + tsbond(newface, checksh); + if (fc->chkencflag & 2) { + //enqueuesubface(badsubfacs, &checksh); + } + } + enextself(fliptets[0]); + } + if (issubface(botcastet)) { + tspivot(botcastet, checksh); // At face [b,a,c] + sesymself(checksh); + tsbond(fliptets[0], checksh); + if (fc->chkencflag & 2) { + //enqueuesubface(badsubfacs, &checksh); + } + } + + if (spivot >= 0) { + // Perform a 3-to-1 flip in surface triangulation. + // Depending on the value of 'spivot', the three subfaces are: + // - 0: [a,b,p], [b,d,p], [d,a,p] + // - 1: [b,c,p], [c,d,p], [d,b,p] + // - 2: [c,a,p], [a,d,p], [d,c,p] + // - 3: [a,b,p], [b,c,p], [c,a,p] + // Adjust the three subfaces such that their origins are p, i.e., + // - 3: [p,a,b], [p,b,c], [p,c,a]. (Required by the flip31()). + for (i = 0; i < 3; i++) { + senext2self(flipshs[i]); + } + flip31(flipshs, 0); + // Delete the three old subfaces. + for (i = 0; i < 3; i++) { + shellfacedealloc(subfaces, flipshs[i].sh); + } + if (spivot < 3) { + // // Bond the new subface to the new tet [a,b,c,d]. + tsbond(topcastets[spivot], flipshs[3]); + fsym(topcastets[spivot], newface); + sesym(flipshs[3], checksh); + tsbond(newface, checksh); + } else { + // Bound the new subface [a,b,c] to the new tet [a,b,c,d]. + tsbond(fliptets[0], flipshs[3]); + fsym(fliptets[0], newface); + sesym(flipshs[3], checksh); + tsbond(newface, checksh); + } + } // if (spivot > 0) + } // if (checksubfaceflag) + + if (fc->chkencflag & 4) { + //enqueuetetrahedron(&(fliptets[0])); + } + + // Update the point-to-tet map. + setpoint2tet(pa, (tetrahedron) fliptets[0].tet); + setpoint2tet(pb, (tetrahedron) fliptets[0].tet); + setpoint2tet(pc, (tetrahedron) fliptets[0].tet); + setpoint2tet(pd, (tetrahedron) fliptets[0].tet); + + if (fc->enqflag > 0) { + // Queue faces which may be locally non-Delaunay. + flippush(flipstack, &(fliptets[0])); // [a,b,c] (opposite to new point). + if (fc->enqflag > 1) { + for (i = 0; i < 3; i++) { + esym(fliptets[0], newface); + flippush(flipstack, &newface); + enextself(fliptets[0]); + } + } + } + + recenttet = fliptets[0]; +} + +int meshGRegionBoundaryRecovery::flipnm(triface* abtets, int n, int level, int abedgepivot, + flipconstraints* fc) +{ + triface fliptets[3], spintet, flipedge; + triface *tmpabtets, *parytet; + point pa, pb, pc, pd, pe, pf; + REAL ori; + int hullflag, hulledgeflag; + int reducflag, rejflag; + int reflexlinkedgecount; + int edgepivot; + int n1, nn; + int t1ver; + int i, j; + + pa = org(abtets[0]); + pb = dest(abtets[0]); + + if (n > 3) { + // Try to reduce the size of the Star(ab) by flipping a face in it. + reflexlinkedgecount = 0; + + for (i = 0; i < n; i++) { + // Let the face of 'abtets[i]' be [a,b,c]. + if (checksubfaceflag) { + if (issubface(abtets[i])) { + continue; // Skip a subface. + } + } + // Do not flip this face if it is involved in two Stars. + if ((elemcounter(abtets[i]) > 1) || + (elemcounter(abtets[(i - 1 + n) % n]) > 1)) { + continue; + } + + pc = apex(abtets[i]); + pd = apex(abtets[(i + 1) % n]); + pe = apex(abtets[(i - 1 + n) % n]); + if ((pd == dummypoint) || (pe == dummypoint)) { + continue; // [a,b,c] is a hull face. + } + + + // Decide whether [a,b,c] is flippable or not. + reducflag = 0; + + hullflag = (pc == dummypoint); // pc may be dummypoint. + hulledgeflag = 0; + if (hullflag == 0) { + ori = orient3d(pb, pc, pd, pe); // Is [b,c] locally convex? + if (ori > 0) { + ori = orient3d(pc, pa, pd, pe); // Is [c,a] locally convex? + if (ori > 0) { + // Test if [a,b] is locally convex OR flat. + ori = orient3d(pa, pb, pd, pe); + if (ori > 0) { + // Found a 2-to-3 flip: [a,b,c] => [e,d] + reducflag = 1; + } else if (ori == 0) { + // [a,b] is flat. + if (n == 4) { + // The "flat" tet can be removed immediately by a 3-to-2 flip. + reducflag = 1; + // Check if [e,d] is a hull edge. + pf = apex(abtets[(i + 2) % n]); + hulledgeflag = (pf == dummypoint); + } + } + } + } + if (!reducflag) { + reflexlinkedgecount++; + } + } else { + // 'c' is dummypoint. + if (n == 4) { + // Let the vertex opposite to 'c' is 'f'. + // A 4-to-4 flip is possible if the two tets [d,e,f,a] and [e,d,f,b] + // are valid tets. + // Note: When the mesh is not convex, it is possible that [a,b] is + // locally non-convex (at hull faces [a,b,e] and [b,a,d]). + // In this case, an edge flip [a,b] to [e,d] is still possible. + pf = apex(abtets[(i + 2) % n]); + assert(pf != dummypoint); + ori = orient3d(pd, pe, pf, pa); + if (ori < 0) { + ori = orient3d(pe, pd, pf, pb); + if (ori < 0) { + // Found a 4-to-4 flip: [a,b] => [e,d] + reducflag = 1; + ori = 0; // Signal as a 4-to-4 flip (like a co-planar case). + hulledgeflag = 1; // [e,d] is a hull edge. + } + } + } + } // if (hullflag) + + if (reducflag) { + if (nonconvex && hulledgeflag) { + // We will create a hull edge [e,d]. Make sure it does not exist. + if (getedge(pe, pd, &spintet)) { + // The 2-to-3 flip is not a topological valid flip. + reducflag = 0; + } + } + } + + if (reducflag) { + // [a,b,c] could be removed by a 2-to-3 flip. + rejflag = 0; + if (fc->checkflipeligibility) { + // Check if the flip can be performed. + rejflag = checkflipeligibility(1, pa, pb, pc, pd, pe, level, + abedgepivot, fc); + } + if (!rejflag) { + // Do flip: [a,b,c] => [e,d]. + fliptets[0] = abtets[i]; + fsym(fliptets[0], fliptets[1]); // abtets[i-1]. + flip23(fliptets, hullflag, fc); + + // Shrink the array 'abtets', maintain the original order. + // Two tets 'abtets[i-1] ([a,b,e,c])' and 'abtets[i] ([a,b,c,d])' + // are flipped, i.e., they do not in Star(ab) anymore. + // 'fliptets[0]' ([e,d,a,b]) is in Star(ab), it is saved in + // 'abtets[i-1]' (adjust it to be [a,b,e,d]), see below: + // + // before after + // [0] |___________| [0] |___________| + // ... |___________| ... |___________| + // [i-1] |_[a,b,e,c]_| [i-1] |_[a,b,e,d]_| + // [i] |_[a,b,c,d]_| --> [i] |_[a,b,d,#]_| + // [i+1] |_[a,b,d,#]_| [i+1] |_[a,b,#,*]_| + // ... |___________| ... |___________| + // [n-2] |___________| [n-2] |___________| + // [n-1] |___________| [n-1] |_[i]_2-t-3_| + // + edestoppoself(fliptets[0]); // [a,b,e,d] + // Increase the counter of this new tet (it is in Star(ab)). + increaseelemcounter(fliptets[0]); + abtets[(i - 1 + n) % n] = fliptets[0]; + for (j = i; j < n - 1; j++) { + abtets[j] = abtets[j + 1]; // Upshift + } + // The last entry 'abtets[n-1]' is empty. It is used in two ways: + // (i) it remembers the vertex 'c' (in 'abtets[n-1].tet'), and + // (ii) it remembers the position [i] where this flip took place. + // These informations let us to either undo this flip or recover + // the original edge link (for collecting new created tets). + //abtets[n - 1] = fliptets[1]; // [e,d,b,c] is remembered. + abtets[n - 1].tet = (tetrahedron *) pc; + abtets[n - 1].ver = 0; // Clear it. + // 'abtets[n - 1].ver' is in range [0,11] -- only uses 4 bits. + // Use the 5th bit in 'abtets[n - 1].ver' to signal a 2-to-3 flip. + abtets[n - 1].ver |= (1 << 4); + // The poisition [i] of this flip is saved above the 7th bit. + abtets[n - 1].ver |= (i << 6); + + if (fc->collectnewtets) { + // Push the two new tets [e,d,b,c] and [e,d,c,a] into a stack. + // Re-use the global array 'cavetetlist'. + for (j = 1; j < 3; j++) { + cavetetlist->newindex((void **) &parytet); + *parytet = fliptets[j]; // fliptets[1], fliptets[2]. + } + } + + // Star(ab) is reduced. Try to flip the edge [a,b]. + nn = flipnm(abtets, n - 1, level, abedgepivot, fc); + + if (nn == 2) { + // The edge has been flipped. + return nn; + } else { // if (nn > 2) + // The edge is not flipped. + if (fc->unflip || (ori == 0)) { + // Undo the previous 2-to-3 flip, i.e., do a 3-to-2 flip to + // transform [e,d] => [a,b,c]. + // 'ori == 0' means that the previous flip created a degenerated + // tet. It must be removed. + // Remember that 'abtets[i-1]' is [a,b,e,d]. We can use it to + // find another two tets [e,d,b,c] and [e,d,c,a]. + fliptets[0] = abtets[(i-1 + (n-1)) % (n-1)]; // [a,b,e,d] + edestoppoself(fliptets[0]); // [e,d,a,b] + fnext(fliptets[0], fliptets[1]); // [1] is [e,d,b,c] + fnext(fliptets[1], fliptets[2]); // [2] is [e,d,c,a] + assert(apex(fliptets[0]) == oppo(fliptets[2])); // SELF_CHECK + // Restore the two original tets in Star(ab). + flip32(fliptets, hullflag, fc); + // Marktest the two restored tets in Star(ab). + for (j = 0; j < 2; j++) { + increaseelemcounter(fliptets[j]); + } + // Expand the array 'abtets', maintain the original order. + for (j = n - 2; j>= i; j--) { + abtets[j + 1] = abtets[j]; // Downshift + } + // Insert the two new tets 'fliptets[0]' [a,b,c,d] and + // 'fliptets[1]' [b,a,c,e] into the (i-1)-th and i-th entries, + // respectively. + esym(fliptets[1], abtets[(i - 1 + n) % n]); // [a,b,e,c] + abtets[i] = fliptets[0]; // [a,b,c,d] + nn++; + if (fc->collectnewtets) { + // Pop two (flipped) tets from the stack. + cavetetlist->objects -= 2; + } + } // if (unflip || (ori == 0)) + } // if (nn > 2) + + if (!fc->unflip) { + // The flips are not reversed. The current Star(ab) can not be + // further reduced. Return its current size (# of tets). + return nn; + } + // unflip is set. + // Continue the search for flips. + } + } // if (reducflag) + } // i + + // The Star(ab) is not reduced. + if (reflexlinkedgecount > 0) { + // There are reflex edges in the Link(ab). + if (((b->fliplinklevel < 0) && (level < autofliplinklevel)) || + ((b->fliplinklevel >= 0) && (level < b->fliplinklevel))) { + // Try to reduce the Star(ab) by flipping a reflex edge in Link(ab). + for (i = 0; i < n; i++) { + // Do not flip this face [a,b,c] if there are two Stars involved. + if ((elemcounter(abtets[i]) > 1) || + (elemcounter(abtets[(i - 1 + n) % n]) > 1)) { + continue; + } + pc = apex(abtets[i]); + if (pc == dummypoint) { + continue; // [a,b] is a hull edge. + } + pd = apex(abtets[(i + 1) % n]); + pe = apex(abtets[(i - 1 + n) % n]); + if ((pd == dummypoint) || (pe == dummypoint)) { + continue; // [a,b,c] is a hull face. + } + + + edgepivot = 0; // No edge is selected yet. + + // Test if [b,c] is locally convex or flat. + ori = orient3d(pb, pc, pd, pe); + if (ori <= 0) { + // Select the edge [c,b]. + enext(abtets[i], flipedge); // [b,c,a,d] + edgepivot = 1; + } + if (!edgepivot) { + // Test if [c,a] is locally convex or flat. + ori = orient3d(pc, pa, pd, pe); + if (ori <= 0) { + // Select the edge [a,c]. + eprev(abtets[i], flipedge); // [c,a,b,d]. + edgepivot = 2; + } + } + + if (!edgepivot) continue; + + // An edge is selected. + if (checksubsegflag) { + // Do not flip it if it is a segment. + if (issubseg(flipedge)) { + if (fc->collectencsegflag) { + face checkseg, *paryseg; + tsspivot1(flipedge, checkseg); + if (!sinfected(checkseg)) { + // Queue this segment in list. + sinfect(checkseg); + caveencseglist->newindex((void **) &paryseg); + *paryseg = checkseg; + } + } + continue; + } + } + + // Try to flip the selected edge ([c,b] or [a,c]). + esymself(flipedge); + // Count the number of tets at the edge. + n1 = 0; + j = 0; // Sum of the star counters. + spintet = flipedge; + while (1) { + n1++; + j += (elemcounter(spintet)); + fnextself(spintet); + if (spintet.tet == flipedge.tet) break; + } + assert(n1 >= 3); + if (j > 2) { + // The Star(flipedge) overlaps other Stars. + continue; // Do not flip this edge. + } + // Only two tets can be marktested. + assert(j == 2); + + if ((b->flipstarsize > 0) && (n1 > b->flipstarsize)) { + // The star size exceeds the given limit. + continue; // Do not flip it. + } + + // Allocate spaces for Star(flipedge). + tmpabtets = new triface[n1]; + // Form the Star(flipedge). + j = 0; + spintet = flipedge; + while (1) { + tmpabtets[j] = spintet; + // Increase the star counter of this tet. + increaseelemcounter(tmpabtets[j]); + j++; + fnextself(spintet); + if (spintet.tet == flipedge.tet) break; + } + + // Try to flip the selected edge away. + nn = flipnm(tmpabtets, n1, level + 1, edgepivot, fc); + + if (nn == 2) { + // The edge is flipped. Star(ab) is reduced. + // Shrink the array 'abtets', maintain the original order. + if (edgepivot == 1) { + // 'tmpabtets[0]' is [d,a,e,b] => contains [a,b]. + spintet = tmpabtets[0]; // [d,a,e,b] + enextself(spintet); + esymself(spintet); + enextself(spintet); // [a,b,e,d] + } else { + // 'tmpabtets[1]' is [b,d,e,a] => contains [a,b]. + spintet = tmpabtets[1]; // [b,d,e,a] + eprevself(spintet); + esymself(spintet); + eprevself(spintet); // [a,b,e,d] + } // edgepivot == 2 + assert(elemcounter(spintet) == 0); // It's a new tet. + increaseelemcounter(spintet); // It is in Star(ab). + // Put the new tet at [i-1]-th entry. + abtets[(i - 1 + n) % n] = spintet; + for (j = i; j < n - 1; j++) { + abtets[j] = abtets[j + 1]; // Upshift + } + // Remember the flips in the last entry of the array 'abtets'. + // They can be used to recover the flipped edge. + abtets[n - 1].tet = (tetrahedron *) tmpabtets; // The star(fedge). + abtets[n - 1].ver = 0; // Clear it. + // Use the 1st and 2nd bit to save 'edgepivot' (1 or 2). + abtets[n - 1].ver |= edgepivot; + // Use the 6th bit to signal this n1-to-m1 flip. + abtets[n - 1].ver |= (1 << 5); + // The poisition [i] of this flip is saved from 7th to 19th bit. + abtets[n - 1].ver |= (i << 6); + // The size of the star 'n1' is saved from 20th bit. + abtets[n - 1].ver |= (n1 << 19); + + // Remember the flipped link vertex 'c'. It can be used to recover + // the original edge link of [a,b], and to collect new tets. + tmpabtets[0].tet = (tetrahedron *) pc; + tmpabtets[0].ver = (1 << 5); // Flag it as a vertex handle. + + // Continue to flip the edge [a,b]. + nn = flipnm(abtets, n - 1, level, abedgepivot, fc); + + if (nn == 2) { + // The edge has been flipped. + return nn; + } else { // if (nn > 2) { + // The edge is not flipped. + if (fc->unflip) { + // Recover the flipped edge ([c,b] or [a,c]). + assert(nn == (n - 1)); + // The sequence of flips are saved in 'tmpabtets'. + // abtets[(i-1) % (n-1)] is [a,b,e,d], i.e., the tet created by + // the flipping of edge [c,b] or [a,c].It must still exist in + // Star(ab). It is the start tet to recover the flipped edge. + if (edgepivot == 1) { + // The flip edge is [c,b]. + tmpabtets[0] = abtets[((i-1)+(n-1))%(n-1)]; // [a,b,e,d] + eprevself(tmpabtets[0]); + esymself(tmpabtets[0]); + eprevself(tmpabtets[0]); // [d,a,e,b] + fsym(tmpabtets[0], tmpabtets[1]); // [a,d,e,c] + } else { + // The flip edge is [a,c]. + tmpabtets[1] = abtets[((i-1)+(n-1))%(n-1)]; // [a,b,e,d] + enextself(tmpabtets[1]); + esymself(tmpabtets[1]); + enextself(tmpabtets[1]); // [b,d,e,a] + fsym(tmpabtets[1], tmpabtets[0]); // [d,b,e,c] + } // if (edgepivot == 2) + + // Recover the flipped edge ([c,b] or [a,c]). + flipnm_post(tmpabtets, n1, 2, edgepivot, fc); + + // Insert the two recovered tets into Star(ab). + for (j = n - 2; j >= i; j--) { + abtets[j + 1] = abtets[j]; // Downshift + } + if (edgepivot == 1) { + // tmpabtets[0] is [c,b,d,a] ==> contains [a,b] + // tmpabtets[1] is [c,b,a,e] ==> contains [a,b] + // tmpabtets[2] is [c,b,e,d] + fliptets[0] = tmpabtets[1]; + enextself(fliptets[0]); + esymself(fliptets[0]); // [a,b,e,c] + fliptets[1] = tmpabtets[0]; + esymself(fliptets[1]); + eprevself(fliptets[1]); // [a,b,c,d] + } else { + // tmpabtets[0] is [a,c,d,b] ==> contains [a,b] + // tmpabtets[1] is [a,c,b,e] ==> contains [a,b] + // tmpabtets[2] is [a,c,e,d] + fliptets[0] = tmpabtets[1]; + eprevself(fliptets[0]); + esymself(fliptets[0]); // [a,b,e,c] + fliptets[1] = tmpabtets[0]; + esymself(fliptets[1]); + enextself(fliptets[1]); // [a,b,c,d] + } // edgepivot == 2 + for (j = 0; j < 2; j++) { + increaseelemcounter(fliptets[j]); + } + // Insert the two recovered tets into Star(ab). + abtets[(i - 1 + n) % n] = fliptets[0]; + abtets[i] = fliptets[1]; + nn++; + // Release the allocated spaces. + delete [] tmpabtets; + } // if (unflip) + } // if (nn > 2) + + if (!fc->unflip) { + // The flips are not reversed. The current Star(ab) can not be + // further reduced. Return its size (# of tets). + return nn; + } + // unflip is set. + // Continue the search for flips. + } else { + // The selected edge is not flipped. + if (fc->unflip) { + // The memory should already be freed. + assert(nn == n1); + } else { + // Release the memory used in this attempted flip. + flipnm_post(tmpabtets, n1, nn, edgepivot, fc); + } + // Decrease the star counters of tets in Star(flipedge). + for (j = 0; j < nn; j++) { + assert(elemcounter(tmpabtets[j]) > 0); // SELF_CHECK + decreaseelemcounter(tmpabtets[j]); + } + // Release the allocated spaces. + delete [] tmpabtets; + } + } // i + } // if (level...) + } // if (reflexlinkedgecount > 0) + } else { + // Check if a 3-to-2 flip is possible. + // Let the three apexes be c, d,and e. Hull tets may be involved. If so, + // we rearrange them such that the vertex e is dummypoint. + hullflag = 0; + + if (apex(abtets[0]) == dummypoint) { + pc = apex(abtets[1]); + pd = apex(abtets[2]); + pe = apex(abtets[0]); + hullflag = 1; + } else if (apex(abtets[1]) == dummypoint) { + pc = apex(abtets[2]); + pd = apex(abtets[0]); + pe = apex(abtets[1]); + hullflag = 2; + } else { + pc = apex(abtets[0]); + pd = apex(abtets[1]); + pe = apex(abtets[2]); + hullflag = (pe == dummypoint) ? 3 : 0; + } + + reducflag = 0; + rejflag = 0; + + + if (hullflag == 0) { + // Make sure that no inverted tet will be created, i.e. the new tets + // [d,c,e,a] and [c,d,e,b] must be valid tets. + ori = orient3d(pd, pc, pe, pa); + if (ori < 0) { + ori = orient3d(pc, pd, pe, pb); + if (ori < 0) { + reducflag = 1; + } + } + } else { + // [a,b] is a hull edge. + // Note: This can happen when it is in the middle of a 4-to-4 flip. + // Note: [a,b] may even be a non-convex hull edge. + if (!nonconvex) { + // The mesh is convex, only do flip if it is a coplanar hull edge. + ori = orient3d(pa, pb, pc, pd); + if (ori == 0) { + reducflag = 1; + } + } else { // nonconvex + reducflag = 1; + } + if (reducflag == 1) { + // [a,b], [a,b,c] and [a,b,d] are on the convex hull. + // Make sure that no inverted tet will be created. + point searchpt = NULL, chkpt; + REAL bigvol = 0.0, ori1, ori2; + // Search an interior vertex which is an apex of edge [c,d]. + // In principle, it can be arbitrary interior vertex. To avoid + // numerical issue, we choose the vertex which belongs to a tet + // 't' at edge [c,d] and 't' has the biggest volume. + fliptets[0] = abtets[hullflag % 3]; // [a,b,c,d]. + eorgoppoself(fliptets[0]); // [d,c,b,a] + spintet = fliptets[0]; + while (1) { + fnextself(spintet); + chkpt = oppo(spintet); + if (chkpt == pb) break; + if ((chkpt != dummypoint) && (apex(spintet) != dummypoint)) { + ori = -orient3d(pd, pc, apex(spintet), chkpt); + assert(ori > 0); + if (ori > bigvol) { + bigvol = ori; + searchpt = chkpt; + } + } + } + if (searchpt != NULL) { + // Now valid the configuration. + ori1 = orient3d(pd, pc, searchpt, pa); + ori2 = orient3d(pd, pc, searchpt, pb); + if (ori1 * ori2 >= 0.0) { + reducflag = 0; // Not valid. + } else { + ori1 = orient3d(pa, pb, searchpt, pc); + ori2 = orient3d(pa, pb, searchpt, pd); + if (ori1 * ori2 >= 0.0) { + reducflag = 0; // Not valid. + } + } + } else { + // No valid searchpt is found. + reducflag = 0; // Do not flip it. + } + } // if (reducflag == 1) + } // if (hullflag == 1) + + if (reducflag) { + // A 3-to-2 flip is possible. + if (checksubfaceflag) { + // This edge (must not be a segment) can be flipped ONLY IF it belongs + // to either 0 or 2 subfaces. In the latter case, a 2-to-2 flip in + // the surface mesh will be automatically performed within the + // 3-to-2 flip. + nn = 0; + edgepivot = -1; // Re-use it. + for (j = 0; j < 3; j++) { + if (issubface(abtets[j])) { + nn++; // Found a subface. + } else { + edgepivot = j; + } + } + assert(nn < 3); + if (nn == 1) { + // Found only 1 subface containing this edge. This can happen in + // the boundary recovery phase. The neighbor subface is not yet + // recovered. This edge should not be flipped at this moment. + rejflag = 1; + } else if (nn == 2) { + // Found two subfaces. A 2-to-2 flip is possible. Validate it. + // Below we check if the two faces [p,q,a] and [p,q,b] are subfaces. + eorgoppo(abtets[(edgepivot + 1) % 3], spintet); // [q,p,b,a] + if (issubface(spintet)) { + rejflag = 1; // Conflict to a 2-to-2 flip. + } else { + esymself(spintet); + if (issubface(spintet)) { + rejflag = 1; // Conflict to a 2-to-2 flip. + } + } + } + } + if (!rejflag && fc->checkflipeligibility) { + // Here we must exchange 'a' and 'b'. Since in the check... function, + // we assume the following point sequence, 'a,b,c,d,e', where + // the face [a,b,c] will be flipped and the edge [e,d] will be + // created. The two new tets are [a,b,c,d] and [b,a,c,e]. + rejflag = checkflipeligibility(2, pc, pd, pe, pb, pa, level, + abedgepivot, fc); + } + if (!rejflag) { + // Do flip: [a,b] => [c,d,e] + flip32(abtets, hullflag, fc); + if (fc->remove_ndelaunay_edge) { + if (level == 0) { + // It is the desired removing edge. Check if we have improved + // the objective function. + if ((fc->tetprism_vol_sum >= 0.0) || + (fabs(fc->tetprism_vol_sum) < fc->bak_tetprism_vol)) { + // No improvement! flip back: [c,d,e] => [a,b]. + flip23(abtets, hullflag, fc); + // Increase the element counter -- They are in cavity. + for (j = 0; j < 3; j++) { + increaseelemcounter(abtets[j]); + } + return 3; + } + } // if (level == 0) + } + if (fc->collectnewtets) { + // Collect new tets. + if (level == 0) { + // Push the two new tets into stack. + for (j = 0; j < 2; j++) { + cavetetlist->newindex((void **) &parytet); + *parytet = abtets[j]; + } + } else { + // Only one of the new tets is collected. The other one is inside + // the reduced edge star. 'abedgepivot' is either '1' or '2'. + cavetetlist->newindex((void **) &parytet); + if (abedgepivot == 1) { // [c,b] + *parytet = abtets[1]; + } else { + assert(abedgepivot == 2); // [a,c] + *parytet = abtets[0]; + } + } + } // if (fc->collectnewtets) + return 2; + } + } // if (reducflag) + } // if (n == 3) + + // The current (reduced) Star size. + return n; +} + +int meshGRegionBoundaryRecovery::flipnm_post(triface* abtets, int n, int nn, + int abedgepivot, flipconstraints* fc) +{ + triface fliptets[3], flipface; + triface *tmpabtets; + int fliptype; + int edgepivot; + int t, n1; + int i, j; + + + if (nn == 2) { + // The edge [a,b] has been flipped. + // 'abtets[0]' is [c,d,e,b] or [#,#,#,b]. + // 'abtets[1]' is [d,c,e,a] or [#,#,#,a]. + if (fc->unflip) { + // Do a 2-to-3 flip to recover the edge [a,b]. There may be hull tets. + flip23(abtets, 1, fc); + if (fc->collectnewtets) { + // Pop up new (flipped) tets from the stack. + if (abedgepivot == 0) { + // Two new tets were collected. + cavetetlist->objects -= 2; + } else { + // Only one of the two new tets was collected. + cavetetlist->objects -= 1; + } + } + } + // The initial size of Star(ab) is 3. + nn++; + } + + // Walk through the performed flips. + for (i = nn; i < n; i++) { + // At the beginning of each step 'i', the size of the Star([a,b]) is 'i'. + // At the end of this step, the size of the Star([a,b]) is 'i+1'. + // The sizes of the Link([a,b]) are the same. + fliptype = ((abtets[i].ver >> 4) & 3); // 0, 1, or 2. + if (fliptype == 1) { + // It was a 2-to-3 flip: [a,b,c]->[e,d]. + t = (abtets[i].ver >> 6); + assert(t <= i); + if (fc->unflip) { + if (b->verbose > 2) { + printf(" Recover a 2-to-3 flip at f[%d].\n", t); + } + // 'abtets[(t-1)%i]' is the tet [a,b,e,d] in current Star(ab), i.e., + // it is created by a 2-to-3 flip [a,b,c] => [e,d]. + fliptets[0] = abtets[((t - 1) + i) % i]; // [a,b,e,d] + eprevself(fliptets[0]); + esymself(fliptets[0]); + enextself(fliptets[0]); // [e,d,a,b] + fnext(fliptets[0], fliptets[1]); // [e,d,b,c] + fnext(fliptets[1], fliptets[2]); // [e,d,c,a] + // Do a 3-to-2 flip: [e,d] => [a,b,c]. + // NOTE: hull tets may be invloved. + flip32(fliptets, 1, fc); + // Expand the array 'abtets', maintain the original order. + // The new array length is (i+1). + for (j = i - 1; j >= t; j--) { + abtets[j + 1] = abtets[j]; // Downshift + } + // The tet abtets[(t-1)%i] is deleted. Insert the two new tets + // 'fliptets[0]' [a,b,c,d] and 'fliptets[1]' [b,a,c,e] into + // the (t-1)-th and t-th entries, respectively. + esym(fliptets[1], abtets[((t-1) + (i+1)) % (i+1)]); // [a,b,e,c] + abtets[t] = fliptets[0]; // [a,b,c,d] + if (fc->collectnewtets) { + // Pop up two (flipped) tets from the stack. + cavetetlist->objects -= 2; + } + } + } else if (fliptype == 2) { + tmpabtets = (triface *) (abtets[i].tet); + n1 = ((abtets[i].ver >> 19) & 8191); // \sum_{i=0^12}{2^i} = 8191 + edgepivot = (abtets[i].ver & 3); + t = ((abtets[i].ver >> 6) & 8191); + assert(t <= i); + if (fc->unflip) { + if (b->verbose > 2) { + printf(" Recover a %d-to-m flip at e[%d] of f[%d].\n", n1, + edgepivot, t); + } + // Recover the flipped edge ([c,b] or [a,c]). + // abtets[(t - 1 + i) % i] is [a,b,e,d], i.e., the tet created by + // the flipping of edge [c,b] or [a,c]. It must still exist in + // Star(ab). Use it to recover the flipped edge. + if (edgepivot == 1) { + // The flip edge is [c,b]. + tmpabtets[0] = abtets[(t - 1 + i) % i]; // [a,b,e,d] + eprevself(tmpabtets[0]); + esymself(tmpabtets[0]); + eprevself(tmpabtets[0]); // [d,a,e,b] + fsym(tmpabtets[0], tmpabtets[1]); // [a,d,e,c] + } else { + // The flip edge is [a,c]. + tmpabtets[1] = abtets[(t - 1 + i) % i]; // [a,b,e,d] + enextself(tmpabtets[1]); + esymself(tmpabtets[1]); + enextself(tmpabtets[1]); // [b,d,e,a] + fsym(tmpabtets[1], tmpabtets[0]); // [d,b,e,c] + } // if (edgepivot == 2) + + // Do a n1-to-m1 flip to recover the flipped edge ([c,b] or [a,c]). + flipnm_post(tmpabtets, n1, 2, edgepivot, fc); + + // Insert the two recovered tets into the original Star(ab). + for (j = i - 1; j >= t; j--) { + abtets[j + 1] = abtets[j]; // Downshift + } + if (edgepivot == 1) { + // tmpabtets[0] is [c,b,d,a] ==> contains [a,b] + // tmpabtets[1] is [c,b,a,e] ==> contains [a,b] + // tmpabtets[2] is [c,b,e,d] + fliptets[0] = tmpabtets[1]; + enextself(fliptets[0]); + esymself(fliptets[0]); // [a,b,e,c] + fliptets[1] = tmpabtets[0]; + esymself(fliptets[1]); + eprevself(fliptets[1]); // [a,b,c,d] + } else { + // tmpabtets[0] is [a,c,d,b] ==> contains [a,b] + // tmpabtets[1] is [a,c,b,e] ==> contains [a,b] + // tmpabtets[2] is [a,c,e,d] + fliptets[0] = tmpabtets[1]; + eprevself(fliptets[0]); + esymself(fliptets[0]); // [a,b,e,c] + fliptets[1] = tmpabtets[0]; + esymself(fliptets[1]); + enextself(fliptets[1]); // [a,b,c,d] + } // edgepivot == 2 + // Insert the two recovered tets into Star(ab). + abtets[((t-1) + (i+1)) % (i+1)] = fliptets[0]; + abtets[t] = fliptets[1]; + } + else { + // Only free the spaces. + flipnm_post(tmpabtets, n1, 2, edgepivot, fc); + } // if (!unflip) + if (b->verbose > 2) { + printf(" Release %d spaces at f[%d].\n", n1, i); + } + delete [] tmpabtets; + } + } // i + + return 1; +} + +int meshGRegionBoundaryRecovery::insertpoint(point insertpt, + triface *searchtet, face *splitsh, face *splitseg, insertvertexflags *ivf) +{ + arraypool *swaplist; + triface *cavetet, spintet, neightet, neineitet, *parytet; + triface oldtet, newtet, newneitet; + face checksh, neighsh, *parysh; + face checkseg, *paryseg; + point *pts, pa, pb, pc, *parypt; + enum locateresult loc = OUTSIDE; + REAL sign, ori; + REAL attrib, volume; + bool enqflag; + int t1ver; + int i, j, k, s; + + if (b->verbose > 2) { + printf(" Insert point %d\n", pointmark(insertpt)); + } + + // Locate the point. + if (searchtet->tet != NULL) { + loc = (enum locateresult) ivf->iloc; + } + + if (loc == OUTSIDE) { + if (searchtet->tet == NULL) { + if (!b->weighted) { + randomsample(insertpt, searchtet); + } else { + // Weighted DT. There may exist dangling vertex. + *searchtet = recenttet; + } + } + // Locate the point. + loc = locate(insertpt, searchtet); + } + + ivf->iloc = (int) loc; // The return value. + + /* + if (b->weighted) { + if (loc != OUTSIDE) { + // Check if this vertex is regular. + pts = (point *) searchtet->tet; + assert(pts[7] != dummypoint); + sign = orient4d_s(pts[4], pts[5], pts[6], pts[7], insertpt, + pts[4][3], pts[5][3], pts[6][3], pts[7][3], + insertpt[3]); + if (sign > 0) { + // This new vertex does not lie below the lower hull. Skip it. + setpointtype(insertpt, NREGULARVERTEX); + nonregularcount++; + ivf->iloc = (int) NONREGULAR; + return 0; + } + } + } + */ + + // Create the initial cavity C(p) which contains all tetrahedra that + // intersect p. It may include 1, 2, or n tetrahedra. + // If p lies on a segment or subface, also create the initial sub-cavity + // sC(p) which contains all subfaces (and segment) which intersect p. + + if (loc == OUTSIDE) { + flip14count++; + // The current hull will be enlarged. + // Add four adjacent boundary tets into list. + for (i = 0; i < 4; i++) { + decode(searchtet->tet[i], neightet); + neightet.ver = epivot[neightet.ver]; + cavebdrylist->newindex((void **) &parytet); + *parytet = neightet; + } + infect(*searchtet); + caveoldtetlist->newindex((void **) &parytet); + *parytet = *searchtet; + } else if (loc == INTETRAHEDRON) { + flip14count++; + // Add four adjacent boundary tets into list. + for (i = 0; i < 4; i++) { + decode(searchtet->tet[i], neightet); + neightet.ver = epivot[neightet.ver]; + cavebdrylist->newindex((void **) &parytet); + *parytet = neightet; + } + infect(*searchtet); + caveoldtetlist->newindex((void **) &parytet); + *parytet = *searchtet; + } else if (loc == ONFACE) { + flip26count++; + // Add six adjacent boundary tets into list. + j = (searchtet->ver & 3); // The current face number. + for (i = 1; i < 4; i++) { + decode(searchtet->tet[(j + i) % 4], neightet); + neightet.ver = epivot[neightet.ver]; + cavebdrylist->newindex((void **) &parytet); + *parytet = neightet; + } + decode(searchtet->tet[j], spintet); + j = (spintet.ver & 3); // The current face number. + for (i = 1; i < 4; i++) { + decode(spintet.tet[(j + i) % 4], neightet); + neightet.ver = epivot[neightet.ver]; + cavebdrylist->newindex((void **) &parytet); + *parytet = neightet; + } + infect(spintet); + caveoldtetlist->newindex((void **) &parytet); + *parytet = spintet; + infect(*searchtet); + caveoldtetlist->newindex((void **) &parytet); + *parytet = *searchtet; + + if (ivf->splitbdflag) { + if ((splitsh != NULL) && (splitsh->sh != NULL)) { + // Create the initial sub-cavity sC(p). + smarktest(*splitsh); + caveshlist->newindex((void **) &parysh); + *parysh = *splitsh; + } + } // if (splitbdflag) + } else if (loc == ONEDGE) { + flipn2ncount++; + // Add all adjacent boundary tets into list. + spintet = *searchtet; + while (1) { + eorgoppo(spintet, neightet); + decode(neightet.tet[neightet.ver & 3], neightet); + neightet.ver = epivot[neightet.ver]; + cavebdrylist->newindex((void **) &parytet); + *parytet = neightet; + edestoppo(spintet, neightet); + decode(neightet.tet[neightet.ver & 3], neightet); + neightet.ver = epivot[neightet.ver]; + cavebdrylist->newindex((void **) &parytet); + *parytet = neightet; + infect(spintet); + caveoldtetlist->newindex((void **) &parytet); + *parytet = spintet; + fnextself(spintet); + if (spintet.tet == searchtet->tet) break; + } // while (1) + + if (ivf->splitbdflag) { + // Create the initial sub-cavity sC(p). + if ((splitseg != NULL) && (splitseg->sh != NULL)) { + smarktest(*splitseg); + splitseg->shver = 0; + spivot(*splitseg, *splitsh); + } + if (splitsh != NULL) { + if (splitsh->sh != NULL) { + // Collect all subfaces share at this edge. + pa = sorg(*splitsh); + neighsh = *splitsh; + while (1) { + // Adjust the origin of its edge to be 'pa'. + if (sorg(neighsh) != pa) { + sesymself(neighsh); + } + // Add this face into list (in B-W cavity). + smarktest(neighsh); + caveshlist->newindex((void **) &parysh); + *parysh = neighsh; + // Add this face into face-at-splitedge list. + cavesegshlist->newindex((void **) &parysh); + *parysh = neighsh; + // Go to the next face at the edge. + spivotself(neighsh); + // Stop if all faces at the edge have been visited. + if (neighsh.sh == splitsh->sh) break; + if (neighsh.sh == NULL) break; + } // while (1) + } // if (not a dangling segment) + } + } // if (splitbdflag) + } else if (loc == INSTAR) { + // We assume that all tets in the star are given in 'caveoldtetlist', + // and they are all infected. + assert(caveoldtetlist->objects > 0); + // Collect the boundary faces of the star. + for (i = 0; i < caveoldtetlist->objects; i++) { + cavetet = (triface *) fastlookup(caveoldtetlist, i); + // Check its 4 neighbor tets. + for (j = 0; j < 4; j++) { + decode(cavetet->tet[j], neightet); + if (!infected(neightet)) { + // It's a boundary face. + neightet.ver = epivot[neightet.ver]; + cavebdrylist->newindex((void **) &parytet); + *parytet = neightet; + } + } + } + } else if (loc == ONVERTEX) { + // The point already exist. Do nothing and return. + return 0; + } + + /* + if (ivf->assignmeshsize) { + // Assign mesh size for the new point. + if (bgm != NULL) { + // Interpolate the mesh size from the background mesh. + bgm->decode(point2bgmtet(org(*searchtet)), neightet); + int bgmloc = (int) bgm->scoutpoint(insertpt, &neightet, 0); + if (bgmloc != (int) OUTSIDE) { + insertpt[pointmtrindex] = + bgm->getpointmeshsize(insertpt, &neightet, bgmloc); + setpoint2bgmtet(insertpt, bgm->encode(neightet)); + } + } else { + insertpt[pointmtrindex] = getpointmeshsize(insertpt,searchtet,(int)loc); + } + } // if (assignmeshsize) + */ + + if (ivf->bowywat) { + // Update the cavity C(p) using the Bowyer-Watson algorithm. + swaplist = cavetetlist; + cavetetlist = cavebdrylist; + cavebdrylist = swaplist; + for (i = 0; i < cavetetlist->objects; i++) { + // 'cavetet' is an adjacent tet at outside of the cavity. + cavetet = (triface *) fastlookup(cavetetlist, i); + // The tet may be tested and included in the (enlarged) cavity. + if (!infected(*cavetet)) { + // Check for two possible cases for this tet: + // (1) It is a cavity tet, or + // (2) it is a cavity boundary face. + enqflag = false; + if (!marktested(*cavetet)) { + // Do Delaunay (in-sphere) test. + pts = (point *) cavetet->tet; + if (pts[7] != dummypoint) { + // A volume tet. Operate on it. + if (b->weighted) { + /* + sign = orient4d_s(pts[4], pts[5], pts[6], pts[7], insertpt, + pts[4][3], pts[5][3], pts[6][3], pts[7][3], + insertpt[3]); + */ + } else { + sign = insphere_s(pts[4], pts[5], pts[6], pts[7], insertpt); + } + enqflag = (sign < 0.0); + } else { + if (!nonconvex) { + // Test if this hull face is visible by the new point. + ori = orient3d(pts[4], pts[5], pts[6], insertpt); + if (ori < 0) { + // A visible hull face. + //if (!nonconvex) { + // Include it in the cavity. The convex hull will be enlarged. + enqflag = true; // (ori < 0.0); + //} + } else if (ori == 0.0) { + // A coplanar hull face. We need to test if this hull face is + // Delaunay or not. We test if the adjacent tet (not faked) + // of this hull face is Delaunay or not. + decode(cavetet->tet[3], neineitet); + if (!infected(neineitet)) { + if (!marktested(neineitet)) { + // Do Delaunay test on this tet. + pts = (point *) neineitet.tet; + assert(pts[7] != dummypoint); + if (b->weighted) { + /* + sign = orient4d_s(pts[4],pts[5],pts[6],pts[7], insertpt, + pts[4][3], pts[5][3], pts[6][3], + pts[7][3], insertpt[3]); + */ + } else { + sign = insphere_s(pts[4],pts[5],pts[6],pts[7], insertpt); + } + enqflag = (sign < 0.0); + } + } else { + // The adjacent tet is non-Delaunay. The hull face is non- + // Delaunay as well. Include it in the cavity. + enqflag = true; + } // if (!infected(neineitet)) + } // if (ori == 0.0) + } else { + // A hull face (must be a subface). + // We FIRST include it in the initial cavity if the adjacent tet + // (not faked) of this hull face is not Delaunay wrt p. + // Whether it belongs to the final cavity will be determined + // during the validation process. 'validflag'. + decode(cavetet->tet[3], neineitet); + if (!infected(neineitet)) { + if (!marktested(neineitet)) { + // Do Delaunay test on this tet. + pts = (point *) neineitet.tet; + assert(pts[7] != dummypoint); + if (b->weighted) { + /* + sign = orient4d_s(pts[4],pts[5],pts[6],pts[7], insertpt, + pts[4][3], pts[5][3], pts[6][3], + pts[7][3], insertpt[3]); + */ + } else { + sign = insphere_s(pts[4],pts[5],pts[6],pts[7], insertpt); + } + enqflag = (sign < 0.0); + } + } else { + // The adjacent tet is non-Delaunay. The hull face is non- + // Delaunay as well. Include it in the cavity. + enqflag = true; + } // if (infected(neineitet)) + } // if (nonconvex) + } // if (pts[7] != dummypoint) + marktest(*cavetet); // Only test it once. + } // if (!marktested(*cavetet)) + + if (enqflag) { + // Found a tet in the cavity. Put other three faces in check list. + k = (cavetet->ver & 3); // The current face number + for (j = 1; j < 4; j++) { + decode(cavetet->tet[(j + k) % 4], neightet); + cavetetlist->newindex((void **) &parytet); + *parytet = neightet; + } + infect(*cavetet); + caveoldtetlist->newindex((void **) &parytet); + *parytet = *cavetet; + } else { + // Found a boundary face of the cavity. + cavetet->ver = epivot[cavetet->ver]; + cavebdrylist->newindex((void **) &parytet); + *parytet = *cavetet; + } + } // if (!infected(*cavetet)) + } // i + + cavetetlist->restart(); // Clear the working list. + } // if (ivf->bowywat) + + if (checksubsegflag) { + // Collect all segments of C(p). + shellface *ssptr; + for (i = 0; i < caveoldtetlist->objects; i++) { + cavetet = (triface *) fastlookup(caveoldtetlist, i); + if ((ssptr = (shellface*) cavetet->tet[8]) != NULL) { + for (j = 0; j < 6; j++) { + if (ssptr[j]) { + sdecode(ssptr[j], checkseg); + if (!sinfected(checkseg)) { + sinfect(checkseg); + cavetetseglist->newindex((void **) &paryseg); + *paryseg = checkseg; + } + } + } // j + } + } // i + // Uninfect collected segments. + for (i = 0; i < cavetetseglist->objects; i++) { + paryseg = (face *) fastlookup(cavetetseglist, i); + suninfect(*paryseg); + } + + /* + if (ivf->rejflag & 1) { + // Reject this point if it encroaches upon any segment. + face *paryseg1; + for (i = 0; i < cavetetseglist->objects; i++) { + paryseg1 = (face *) fastlookup(cavetetseglist, i); + if (checkseg4encroach((point) paryseg1->sh[3], (point) paryseg1->sh[4], + insertpt)) { + encseglist->newindex((void **) &paryseg); + *paryseg = *paryseg1; + } + } // i + if (encseglist->objects > 0) { + insertpoint_abort(splitseg, ivf); + ivf->iloc = (int) ENCSEGMENT; + return 0; + } + } + */ + } // if (checksubsegflag) + + if (checksubfaceflag) { + // Collect all subfaces of C(p). + shellface *sptr; + for (i = 0; i < caveoldtetlist->objects; i++) { + cavetet = (triface *) fastlookup(caveoldtetlist, i); + if ((sptr = (shellface*) cavetet->tet[9]) != NULL) { + for (j = 0; j < 4; j++) { + if (sptr[j]) { + sdecode(sptr[j], checksh); + if (!sinfected(checksh)) { + sinfect(checksh); + cavetetshlist->newindex((void **) &parysh); + *parysh = checksh; + } + } + } // j + } + } // i + // Uninfect collected subfaces. + for (i = 0; i < cavetetshlist->objects; i++) { + parysh = (face *) fastlookup(cavetetshlist, i); + suninfect(*parysh); + } + + /* + if (ivf->rejflag & 2) { + REAL rd, cent[3]; + badface *bface; + // Reject this point if it encroaches upon any subface. + for (i = 0; i < cavetetshlist->objects; i++) { + parysh = (face *) fastlookup(cavetetshlist, i); + if (checkfac4encroach((point) parysh->sh[3], (point) parysh->sh[4], + (point) parysh->sh[5], insertpt, cent, &rd)) { + encshlist->newindex((void **) &bface); + bface->ss = *parysh; + bface->forg = (point) parysh->sh[3]; // Not a dad one. + for (j = 0; j < 3; j++) bface->cent[j] = cent[j]; + bface->key = rd; + } + } + if (encshlist->objects > 0) { + insertpoint_abort(splitseg, ivf); + ivf->iloc = (int) ENCSUBFACE; + return 0; + } + } + */ + } // if (checksubfaceflag) + + if ((ivf->iloc == (int) OUTSIDE) && ivf->refineflag) { + // The vertex lies outside of the domain. And it does not encroach + // upon any boundary segment or subface. Do not insert it. + insertpoint_abort(splitseg, ivf); + return 0; + } + + if (ivf->splitbdflag) { + // The new point locates in surface mesh. Update the sC(p). + // We have already 'smarktested' the subfaces which directly intersect + // with p in 'caveshlist'. From them, we 'smarktest' their neighboring + // subfaces which are included in C(p). Do not across a segment. + for (i = 0; i < caveshlist->objects; i++) { + parysh = (face *) fastlookup(caveshlist, i); + assert(smarktested(*parysh)); + checksh = *parysh; + for (j = 0; j < 3; j++) { + if (!isshsubseg(checksh)) { + spivot(checksh, neighsh); + assert(neighsh.sh != NULL); + if (!smarktested(neighsh)) { + stpivot(neighsh, neightet); + if (infected(neightet)) { + fsymself(neightet); + if (infected(neightet)) { + // This subface is inside C(p). + // Check if its diametrical circumsphere encloses 'p'. + // The purpose of this check is to avoid forming invalid + // subcavity in surface mesh. + sign = incircle3d(sorg(neighsh), sdest(neighsh), + sapex(neighsh), insertpt); + if (sign < 0) { + smarktest(neighsh); + caveshlist->newindex((void **) &parysh); + *parysh = neighsh; + } + } + } + } + } + senextself(checksh); + } // j + } // i + } // if (ivf->splitbdflag) + + if (ivf->validflag) { + // Validate C(p) and update it if it is not star-shaped. + int cutcount = 0; + + if (ivf->respectbdflag) { + // The initial cavity may include subfaces which are not on the facets + // being splitting. Find them and make them as boundary of C(p). + // Comment: We have already 'smarktested' the subfaces in sC(p). They + // are completely inside C(p). + for (i = 0; i < cavetetshlist->objects; i++) { + parysh = (face *) fastlookup(cavetetshlist, i); + stpivot(*parysh, neightet); + if (infected(neightet)) { + fsymself(neightet); + if (infected(neightet)) { + // Found a subface inside C(p). + if (!smarktested(*parysh)) { + // It is possible that this face is a boundary subface. + // Check if it is a hull face. + //assert(apex(neightet) != dummypoint); + if (oppo(neightet) != dummypoint) { + fsymself(neightet); + } + if (oppo(neightet) != dummypoint) { + ori = orient3d(org(neightet), dest(neightet), apex(neightet), + insertpt); + if (ori < 0) { + // A visible face, get its neighbor face. + fsymself(neightet); + ori = -ori; // It must be invisible by p. + } + } else { + // A hull tet. It needs to be cut. + ori = 1; + } + // Cut this tet if it is either invisible by or coplanar with p. + if (ori >= 0) { + uninfect(neightet); + unmarktest(neightet); + cutcount++; + neightet.ver = epivot[neightet.ver]; + cavebdrylist->newindex((void **) &parytet); + *parytet = neightet; + // Add three new faces to find new boundaries. + for (j = 0; j < 3; j++) { + esym(neightet, neineitet); + neineitet.ver = epivot[neineitet.ver]; + cavebdrylist->newindex((void **) &parytet); + *parytet = neineitet; + enextself(neightet); + } + } // if (ori >= 0) + } + } + } + } // i + + // The initial cavity may include segments in its interior. We need to + // Update the cavity so that these segments are on the boundary of + // the cavity. + for (i = 0; i < cavetetseglist->objects; i++) { + paryseg = (face *) fastlookup(cavetetseglist, i); + // Check this segment if it is not a splitting segment. + if (!smarktested(*paryseg)) { + sstpivot1(*paryseg, neightet); + spintet = neightet; + while (1) { + if (!infected(spintet)) break; + fnextself(spintet); + if (spintet.tet == neightet.tet) break; + } + if (infected(spintet)) { + // Find an adjacent tet at this segment such that both faces + // at this segment are not visible by p. + pa = org(neightet); + pb = dest(neightet); + spintet = neightet; + j = 0; + while (1) { + // Check if this face is visible by p. + pc = apex(spintet); + if (pc != dummypoint) { + ori = orient3d(pa, pb, pc, insertpt); + if (ori >= 0) { + // Not visible. Check another face in this tet. + esym(spintet, neineitet); + pc = apex(neineitet); + if (pc != dummypoint) { + ori = orient3d(pb, pa, pc, insertpt); + if (ori >= 0) { + // Not visible. Found this face. + j = 1; // Flag that it is found. + break; + } + } + } + } + fnextself(spintet); + if (spintet.tet == neightet.tet) break; + } + if (j == 0) { + // Not found such a face. + assert(0); // debug this case. + } + neightet = spintet; + if (b->verbose > 3) { + printf(" Cut tet (%d, %d, %d, %d)\n", + pointmark(org(neightet)), pointmark(dest(neightet)), + pointmark(apex(neightet)), pointmark(oppo(neightet))); + } + uninfect(neightet); + unmarktest(neightet); + cutcount++; + neightet.ver = epivot[neightet.ver]; + cavebdrylist->newindex((void **) &parytet); + *parytet = neightet; + // Add three new faces to find new boundaries. + for (j = 0; j < 3; j++) { + esym(neightet, neineitet); + neineitet.ver = epivot[neineitet.ver]; + cavebdrylist->newindex((void **) &parytet); + *parytet = neineitet; + enextself(neightet); + } + } + } + } // i + } // if (ivf->respectbdflag) + + // Update the cavity by removing invisible faces until it is star-shaped. + for (i = 0; i < cavebdrylist->objects; i++) { + cavetet = (triface *) fastlookup(cavebdrylist, i); + // 'cavetet' is an exterior tet adjacent to the cavity. + // Check if its neighbor is inside C(p). + fsym(*cavetet, neightet); + if (infected(neightet)) { + if (apex(*cavetet) != dummypoint) { + // It is a cavity boundary face. Check its visibility. + if (oppo(neightet) != dummypoint) { + ori = orient3d(org(*cavetet), dest(*cavetet), apex(*cavetet), + insertpt); + enqflag = (ori > 0); + // Comment: if ori == 0 (coplanar case), we also cut the tet. + } else { + // It is a hull face. And its adjacent tet (at inside of the + // domain) has been cut from the cavity. Cut it as well. + //assert(nonconvex); + enqflag = false; + } + } else { + enqflag = true; // A hull edge. + } + if (enqflag) { + // This face is valid, save it. + cavetetlist->newindex((void **) &parytet); + *parytet = *cavetet; + } else { + uninfect(neightet); + unmarktest(neightet); + cutcount++; + // Add three new faces to find new boundaries. + for (j = 0; j < 3; j++) { + esym(neightet, neineitet); + neineitet.ver = epivot[neineitet.ver]; + cavebdrylist->newindex((void **) &parytet); + *parytet = neineitet; + enextself(neightet); + } + // 'cavetet' is not on the cavity boundary anymore. + unmarktest(*cavetet); + } + } else { + // 'cavetet' is not on the cavity boundary anymore. + unmarktest(*cavetet); + } + } // i + + if (cutcount > 0) { + // The cavity has been updated. + // Update the cavity boundary faces. + cavebdrylist->restart(); + for (i = 0; i < cavetetlist->objects; i++) { + cavetet = (triface *) fastlookup(cavetetlist, i); + // 'cavetet' was an exterior tet adjacent to the cavity. + fsym(*cavetet, neightet); + if (infected(neightet)) { + // It is a cavity boundary face. + cavebdrylist->newindex((void **) &parytet); + *parytet = *cavetet; + } else { + // Not a cavity boundary face. + unmarktest(*cavetet); + } + } + + // Update the list of old tets. + cavetetlist->restart(); + for (i = 0; i < caveoldtetlist->objects; i++) { + cavetet = (triface *) fastlookup(caveoldtetlist, i); + if (infected(*cavetet)) { + cavetetlist->newindex((void **) &parytet); + *parytet = *cavetet; + } + } + // Swap 'cavetetlist' and 'caveoldtetlist'. + swaplist = caveoldtetlist; + caveoldtetlist = cavetetlist; + cavetetlist = swaplist; + + // The cavity should contain at least one tet. + if (caveoldtetlist->objects == 0l) { + insertpoint_abort(splitseg, ivf); + ivf->iloc = (int) BADELEMENT; + return 0; + } + + if (ivf->splitbdflag) { + int cutshcount = 0; + // Update the sub-cavity sC(p). + for (i = 0; i < caveshlist->objects; i++) { + parysh = (face *) fastlookup(caveshlist, i); + if (smarktested(*parysh)) { + enqflag = false; + stpivot(*parysh, neightet); + if (infected(neightet)) { + fsymself(neightet); + if (infected(neightet)) { + enqflag = true; + } + } + if (!enqflag) { + sunmarktest(*parysh); + // Use the last entry of this array to fill this entry. + j = caveshlist->objects - 1; + checksh = * (face *) fastlookup(caveshlist, j); + *parysh = checksh; + cutshcount++; + caveshlist->objects--; // The list is shrinked. + i--; + } + } + } + + if (cutshcount > 0) { + i = 0; // Count the number of invalid subfaces/segments. + // Valid the updated sub-cavity sC(p). + if (loc == ONFACE) { + if ((splitsh != NULL) && (splitsh->sh != NULL)) { + // The to-be split subface should be in sC(p). + if (!smarktested(*splitsh)) i++; + } + } else if (loc == ONEDGE) { + if ((splitseg != NULL) && (splitseg->sh != NULL)) { + // The to-be split segment should be in sC(p). + if (!smarktested(*splitseg)) i++; + } + if ((splitsh != NULL) && (splitsh->sh != NULL)) { + // All subfaces at this edge should be in sC(p). + pa = sorg(*splitsh); + neighsh = *splitsh; + while (1) { + // Adjust the origin of its edge to be 'pa'. + if (sorg(neighsh) != pa) { + sesymself(neighsh); + } + // Add this face into list (in B-W cavity). + if (!smarktested(neighsh)) i++; + // Go to the next face at the edge. + spivotself(neighsh); + // Stop if all faces at the edge have been visited. + if (neighsh.sh == splitsh->sh) break; + if (neighsh.sh == NULL) break; + } // while (1) + } + } + + if (i > 0) { + // The updated sC(p) is invalid. Do not insert this vertex. + insertpoint_abort(splitseg, ivf); + ivf->iloc = (int) BADELEMENT; + return 0; + } + } // if (cutshcount > 0) + } // if (ivf->splitbdflag) + } // if (cutcount > 0) + + } // if (ivf->validflag) + + if (ivf->refineflag) { + // The new point is inserted by Delaunay refinement, i.e., it is the + // circumcenter of a tetrahedron, or a subface, or a segment. + // Do not insert this point if the tetrahedron, or subface, or segment + // is not inside the final cavity. + if (((ivf->refineflag == 1) && !infected(ivf->refinetet)) || + ((ivf->refineflag == 2) && !smarktested(ivf->refinesh))) { + insertpoint_abort(splitseg, ivf); + ivf->iloc = (int) BADELEMENT; + return 0; + } + } // if (ivf->refineflag) + + if (b->plc && (loc != INSTAR)) { + // Reject the new point if it lies too close to an existing point (b->plc), + // or it lies inside a protecting ball of near vertex (ivf->rejflag & 4). + // Collect the list of vertices of the initial cavity. + if (loc == OUTSIDE) { + pts = (point *) &(searchtet->tet[4]); + for (i = 0; i < 3; i++) { + cavetetvertlist->newindex((void **) &parypt); + *parypt = pts[i]; + } + } else if (loc == INTETRAHEDRON) { + pts = (point *) &(searchtet->tet[4]); + for (i = 0; i < 4; i++) { + cavetetvertlist->newindex((void **) &parypt); + *parypt = pts[i]; + } + } else if (loc == ONFACE) { + pts = (point *) &(searchtet->tet[4]); + for (i = 0; i < 3; i++) { + cavetetvertlist->newindex((void **) &parypt); + *parypt = pts[i]; + } + if (pts[3] != dummypoint) { + cavetetvertlist->newindex((void **) &parypt); + *parypt = pts[3]; + } + fsym(*searchtet, spintet); + if (oppo(spintet) != dummypoint) { + cavetetvertlist->newindex((void **) &parypt); + *parypt = oppo(spintet); + } + } else if (loc == ONEDGE) { + spintet = *searchtet; + cavetetvertlist->newindex((void **) &parypt); + *parypt = org(spintet); + cavetetvertlist->newindex((void **) &parypt); + *parypt = dest(spintet); + while (1) { + if (apex(spintet) != dummypoint) { + cavetetvertlist->newindex((void **) &parypt); + *parypt = apex(spintet); + } + fnextself(spintet); + if (spintet.tet == searchtet->tet) break; + } + } + + int rejptflag = (ivf->rejflag & 4); + REAL rd; + pts = NULL; + + for (i = 0; i < cavetetvertlist->objects; i++) { + parypt = (point *) fastlookup(cavetetvertlist, i); + rd = distance(*parypt, insertpt); + // Is the point very close to an existing point? + if (rd < b->minedgelength) { + pts = parypt; + loc = NEARVERTEX; + break; + } + if (rejptflag) { + // Is the point encroaches upon an existing point? + if (rd < (0.5 * (*parypt)[pointmtrindex])) { + pts = parypt; + loc = ENCVERTEX; + break; + } + } + } + cavetetvertlist->restart(); // Clear the work list. + + if (pts != NULL) { + // The point is either too close to an existing vertex (NEARVERTEX) + // or encroaches upon (inside the protecting ball) of that vertex. + if (loc == NEARVERTEX) { + if (b->nomergevertex) { // -M0/1 option. + // In this case, we still insert this vertex. Although it is very + // close to an existing vertex. Give a warning, anyway. + Msg::Warning("Warning: Two points, %d and %d, are very close.", + pointmark(insertpt), pointmark(*pts)); + Msg::Warning(" Creating a very short edge (len = %g) (< %g).", + rd, b->minedgelength); + Msg::Warning(" You may try a smaller tolerance (-T) (current is %g)", + b->epsilon); + Msg::Warning(" to avoid this warning."); + } else { + insertpt[3] = rd; // Only for reporting. + setpoint2ppt(insertpt, *pts); + insertpoint_abort(splitseg, ivf); + ivf->iloc = (int) loc; + return 0; + } + } else { // loc == ENCVERTEX + // The point lies inside the protection ball. + setpoint2ppt(insertpt, *pts); + insertpoint_abort(splitseg, ivf); + ivf->iloc = (int) loc; + return 0; + } + } +} // if (b->plc && (loc != INSTAR)) + + if (b->weighted || ivf->cdtflag || ivf->smlenflag + ) { + // There may be other vertices inside C(p). We need to find them. + // Collect all vertices of C(p). + for (i = 0; i < caveoldtetlist->objects; i++) { + cavetet = (triface *) fastlookup(caveoldtetlist, i); + //assert(infected(*cavetet)); + pts = (point *) &(cavetet->tet[4]); + for (j = 0; j < 4; j++) { + if (pts[j] != dummypoint) { + if (!pinfected(pts[j])) { + pinfect(pts[j]); + cavetetvertlist->newindex((void **) &parypt); + *parypt = pts[j]; + } + } + } // j + } // i + // Uninfect all collected (cavity) vertices. + for (i = 0; i < cavetetvertlist->objects; i++) { + parypt = (point *) fastlookup(cavetetvertlist, i); + puninfect(*parypt); + } + if (ivf->smlenflag) { + REAL len; + // Get the length of the shortest edge connecting to 'newpt'. + parypt = (point *) fastlookup(cavetetvertlist, 0); + ivf->smlen = distance(*parypt, insertpt); + ivf->parentpt = *parypt; + for (i = 1; i < cavetetvertlist->objects; i++) { + parypt = (point *) fastlookup(cavetetvertlist, i); + len = distance(*parypt, insertpt); + if (len < ivf->smlen) { + ivf->smlen = len; + ivf->parentpt = *parypt; + } + } + } + } + + + if (ivf->cdtflag) { + // Unmark tets. + for (i = 0; i < caveoldtetlist->objects; i++) { + cavetet = (triface *) fastlookup(caveoldtetlist, i); + unmarktest(*cavetet); + } + for (i = 0; i < cavebdrylist->objects; i++) { + cavetet = (triface *) fastlookup(cavebdrylist, i); + unmarktest(*cavetet); + } + // Clean up arrays which are not needed. + cavetetlist->restart(); + if (checksubsegflag) { + cavetetseglist->restart(); + } + if (checksubfaceflag) { + cavetetshlist->restart(); + } + return 1; + } + + // Before re-mesh C(p). Process the segments and subfaces which are on the + // boundary of C(p). Make sure that each such segment or subface is + // connecting to a tet outside C(p). So we can re-connect them to the + // new tets inside the C(p) later. + + if (checksubsegflag) { + for (i = 0; i < cavetetseglist->objects; i++) { + paryseg = (face *) fastlookup(cavetetseglist, i); + // Operate on it if it is not the splitting segment, i.e., in sC(p). + if (!smarktested(*paryseg)) { + // Check if the segment is inside the cavity. + // 'j' counts the num of adjacent tets of this seg. + // 'k' counts the num of adjacent tets which are 'sinfected'. + j = k = 0; + sstpivot1(*paryseg, neightet); + spintet = neightet; + while (1) { + j++; + if (!infected(spintet)) { + neineitet = spintet; // An outer tet. Remember it. + } else { + k++; // An in tet. + } + fnextself(spintet); + if (spintet.tet == neightet.tet) break; + } + // assert(j > 0); + if (k == 0) { + // The segment is not connect to C(p) anymore. Remove it by + // Replacing it by the last entry of this list. + s = cavetetseglist->objects - 1; + checkseg = * (face *) fastlookup(cavetetseglist, s); + *paryseg = checkseg; + cavetetseglist->objects--; + i--; + } else if (k < j) { + // The segment is on the boundary of C(p). + sstbond1(*paryseg, neineitet); + } else { // k == j + // The segment is inside C(p). + if (!ivf->splitbdflag) { + checkseg = *paryseg; + sinfect(checkseg); // Flag it as an interior segment. + caveencseglist->newindex((void **) &paryseg); + *paryseg = checkseg; + } else { + assert(0); // Not possible. + } + } + } else { + // assert(smarktested(*paryseg)); + // Flag it as an interior segment. Do not queue it, since it will + // be deleted after the segment splitting. + sinfect(*paryseg); + } + } // i + } // if (checksubsegflag) + + if (checksubfaceflag) { + for (i = 0; i < cavetetshlist->objects; i++) { + parysh = (face *) fastlookup(cavetetshlist, i); + // Operate on it if it is not inside the sub-cavity sC(p). + if (!smarktested(*parysh)) { + // Check if this subface is inside the cavity. + k = 0; + for (j = 0; j < 2; j++) { + stpivot(*parysh, neightet); + if (!infected(neightet)) { + checksh = *parysh; // Remember this side. + } else { + k++; + } + sesymself(*parysh); + } + if (k == 0) { + // The subface is not connected to C(p). Remove it. + s = cavetetshlist->objects - 1; + checksh = * (face *) fastlookup(cavetetshlist, s); + *parysh = checksh; + cavetetshlist->objects--; + i--; + } else if (k == 1) { + // This side is the outer boundary of C(p). + *parysh = checksh; + } else { // k == 2 + if (!ivf->splitbdflag) { + checksh = *parysh; + sinfect(checksh); // Flag it. + caveencshlist->newindex((void **) &parysh); + *parysh = checksh; + } else { + assert(0); // Not possible. + } + } + } else { + // assert(smarktested(*parysh)); + // Flag it as an interior subface. Do not queue it. It will be + // deleted after the facet point insertion. + sinfect(*parysh); + } + } // i + } // if (checksubfaceflag) + + // Create new tetrahedra to fill the cavity. + + for (i = 0; i < cavebdrylist->objects; i++) { + cavetet = (triface *) fastlookup(cavebdrylist, i); + neightet = *cavetet; + unmarktest(neightet); // Unmark it. + // Get the oldtet (inside the cavity). + fsym(neightet, oldtet); + if (apex(neightet) != dummypoint) { + // Create a new tet in the cavity. + maketetrahedron(&newtet); + setorg(newtet, dest(neightet)); + setdest(newtet, org(neightet)); + setapex(newtet, apex(neightet)); + setoppo(newtet, insertpt); + } else { + // Create a new hull tet. + hullsize++; + maketetrahedron(&newtet); + setorg(newtet, org(neightet)); + setdest(newtet, dest(neightet)); + setapex(newtet, insertpt); + setoppo(newtet, dummypoint); // It must opposite to face 3. + // Adjust back to the cavity bounday face. + esymself(newtet); + } + // The new tet inherits attribtes from the old tet. + for (j = 0; j < numelemattrib; j++) { + attrib = elemattribute(oldtet.tet, j); + setelemattribute(newtet.tet, j, attrib); + } + if (b->varvolume) { + volume = volumebound(oldtet.tet); + setvolumebound(newtet.tet, volume); + } + // Connect newtet <==> neightet, this also disconnect the old bond. + bond(newtet, neightet); + // oldtet still connects to neightet. + *cavetet = oldtet; // *cavetet = newtet; + } // i + + // Set a handle for speeding point location. + recenttet = newtet; + //setpoint2tet(insertpt, encode(newtet)); + setpoint2tet(insertpt, (tetrahedron) (newtet.tet)); + + // Re-use this list to save new interior cavity faces. + cavetetlist->restart(); + + // Connect adjacent new tetrahedra together. + for (i = 0; i < cavebdrylist->objects; i++) { + cavetet = (triface *) fastlookup(cavebdrylist, i); + // cavtet is an oldtet, get the newtet at this face. + oldtet = *cavetet; + fsym(oldtet, neightet); + fsym(neightet, newtet); + // Comment: oldtet and newtet must be at the same directed edge. + // Connect the three other faces of this newtet. + for (j = 0; j < 3; j++) { + esym(newtet, neightet); // Go to the face. + if (neightet.tet[neightet.ver & 3] == NULL) { + // Find the adjacent face of this newtet. + spintet = oldtet; + while (1) { + fnextself(spintet); + if (!infected(spintet)) break; + } + fsym(spintet, newneitet); + esymself(newneitet); + assert(newneitet.tet[newneitet.ver & 3] == NULL); + bond(neightet, newneitet); + if (ivf->lawson > 1) { + cavetetlist->newindex((void **) &parytet); + *parytet = neightet; + } + } + //setpoint2tet(org(newtet), encode(newtet)); + setpoint2tet(org(newtet), (tetrahedron) (newtet.tet)); + enextself(newtet); + enextself(oldtet); + } + *cavetet = newtet; // Save the new tet. + } // i + + if (checksubfaceflag) { + // Connect subfaces on the boundary of the cavity to the new tets. + for (i = 0; i < cavetetshlist->objects; i++) { + parysh = (face *) fastlookup(cavetetshlist, i); + // Connect it if it is not a missing subface. + if (!sinfected(*parysh)) { + stpivot(*parysh, neightet); + fsym(neightet, spintet); + sesymself(*parysh); + tsbond(spintet, *parysh); + } + } + } + + if (checksubsegflag) { + // Connect segments on the boundary of the cavity to the new tets. + for (i = 0; i < cavetetseglist->objects; i++) { + paryseg = (face *) fastlookup(cavetetseglist, i); + // Connect it if it is not a missing segment. + if (!sinfected(*paryseg)) { + sstpivot1(*paryseg, neightet); + spintet = neightet; + while (1) { + tssbond1(spintet, *paryseg); + fnextself(spintet); + if (spintet.tet == neightet.tet) break; + } + } + } + } + + if (((splitsh != NULL) && (splitsh->sh != NULL)) || + ((splitseg != NULL) && (splitseg->sh != NULL))) { + // Split a subface or a segment. + sinsertvertex(insertpt, splitsh, splitseg, ivf->sloc, ivf->sbowywat, 0); + } + + if (checksubfaceflag) { + if (ivf->splitbdflag) { + // Recover new subfaces in C(p). + for (i = 0; i < caveshbdlist->objects; i++) { + // Get an old subface at edge [a, b]. + parysh = (face *) fastlookup(caveshbdlist, i); + spivot(*parysh, checksh); // The new subface [a, b, p]. + // Do not recover a deleted new face (degenerated). + if (checksh.sh[3] != NULL) { + // Note that the old subface still connects to adjacent old tets + // of C(p), which still connect to the tets outside C(p). + stpivot(*parysh, neightet); + assert(infected(neightet)); + // Find the adjacent tet containing the edge [a,b] outside C(p). + spintet = neightet; + while (1) { + fnextself(spintet); + if (!infected(spintet)) break; + assert(spintet.tet != neightet.tet); + } + // The adjacent tet connects to a new tet in C(p). + fsym(spintet, neightet); + assert(!infected(neightet)); + // Find the tet containing the face [a, b, p]. + spintet = neightet; + while (1) { + fnextself(spintet); + if (apex(spintet) == insertpt) break; + assert(spintet.tet != neightet.tet); + } + // Adjust the edge direction in spintet and checksh. + if (sorg(checksh) != org(spintet)) { + sesymself(checksh); + assert(sorg(checksh) == org(spintet)); + } + assert(sdest(checksh) == dest(spintet)); + // Connect the subface to two adjacent tets. + tsbond(spintet, checksh); + fsymself(spintet); + sesymself(checksh); + tsbond(spintet, checksh); + } // if (checksh.sh[3] != NULL) + } + // There should be no missing interior subfaces in C(p). + assert(caveencshlist->objects == 0l); + } else { + // The Boundary recovery phase. + // Put all new subfaces into stack for recovery. + for (i = 0; i < caveshbdlist->objects; i++) { + // Get an old subface at edge [a, b]. + parysh = (face *) fastlookup(caveshbdlist, i); + spivot(*parysh, checksh); // The new subface [a, b, p]. + // Do not recover a deleted new face (degenerated). + if (checksh.sh[3] != NULL) { + subfacstack->newindex((void **) &parysh); + *parysh = checksh; + } + } + // Put all interior subfaces into stack for recovery. + for (i = 0; i < caveencshlist->objects; i++) { + parysh = (face *) fastlookup(caveencshlist, i); + assert(sinfected(*parysh)); + // Some subfaces inside C(p) might be split in sinsertvertex(). + // Only queue those faces which are not split. + if (!smarktested(*parysh)) { + checksh = *parysh; + suninfect(checksh); + stdissolve(checksh); // Detach connections to old tets. + subfacstack->newindex((void **) &parysh); + *parysh = checksh; + } + } + } + } // if (checksubfaceflag) + + if (checksubsegflag) { + if (ivf->splitbdflag) { + if (splitseg != NULL) { + // Recover the two new subsegments in C(p). + for (i = 0; i < cavesegshlist->objects; i++) { + paryseg = (face *) fastlookup(cavesegshlist, i); + // Insert this subsegment into C(p). + checkseg = *paryseg; + // Get the adjacent new subface. + checkseg.shver = 0; + spivot(checkseg, checksh); + if (checksh.sh != NULL) { + // Get the adjacent new tetrahedron. + stpivot(checksh, neightet); + } else { + // It's a dangling segment. + point2tetorg(sorg(checkseg), neightet); + finddirection(&neightet, sdest(checkseg)); + assert(dest(neightet) == sdest(checkseg)); + } + assert(!infected(neightet)); + sstbond1(checkseg, neightet); + spintet = neightet; + while (1) { + tssbond1(spintet, checkseg); + fnextself(spintet); + if (spintet.tet == neightet.tet) break; + } + } + } // if (splitseg != NULL) + // There should be no interior segment in C(p). + assert(caveencseglist->objects == 0l); + } else { + // The Boundary Recovery Phase. + // Queue missing segments in C(p) for recovery. + if (splitseg != NULL) { + // Queue two new subsegments in C(p) for recovery. + for (i = 0; i < cavesegshlist->objects; i++) { + paryseg = (face *) fastlookup(cavesegshlist, i); + checkseg = *paryseg; + //sstdissolve1(checkseg); // It has not been connected yet. + s = randomnation(subsegstack->objects + 1); + subsegstack->newindex((void **) &paryseg); + *paryseg = * (face *) fastlookup(subsegstack, s); + paryseg = (face *) fastlookup(subsegstack, s); + *paryseg = checkseg; + } + } // if (splitseg != NULL) + for (i = 0; i < caveencseglist->objects; i++) { + paryseg = (face *) fastlookup(caveencseglist, i); + assert(sinfected(*paryseg)); + if (!smarktested(*paryseg)) { // It may be split. + checkseg = *paryseg; + suninfect(checkseg); + sstdissolve1(checkseg); // Detach connections to old tets. + s = randomnation(subsegstack->objects + 1); + subsegstack->newindex((void **) &paryseg); + *paryseg = * (face *) fastlookup(subsegstack, s); + paryseg = (face *) fastlookup(subsegstack, s); + *paryseg = checkseg; + } + } + } + } // if (checksubsegflag) + + if (b->weighted + ) { + // Some vertices may be completed inside the cavity. They must be + // detected and added to recovering list. + // Since every "live" vertex must contain a pointer to a non-dead + // tetrahedron, we can check for each vertex this pointer. + for (i = 0; i < cavetetvertlist->objects; i++) { + pts = (point *) fastlookup(cavetetvertlist, i); + decode(point2tet(*pts), *searchtet); + assert(searchtet->tet != NULL); // No tet has been deleted yet. + if (infected(*searchtet)) { + if (b->weighted) { + Msg::Debug(" Point #%d is non-regular after the insertion of #%d.", + pointmark(*pts), pointmark(insertpt)); + setpointtype(*pts, NREGULARVERTEX); + nonregularcount++; + } + } + } + } + + if (ivf->chkencflag & 1) { + // Queue all segment outside C(p). + for (i = 0; i < cavetetseglist->objects; i++) { + paryseg = (face *) fastlookup(cavetetseglist, i); + // Skip if it is the split segment. + if (!sinfected(*paryseg)) { + //enqueuesubface(badsubsegs, paryseg); + } + } + if (splitseg != NULL) { + // Queue the two new subsegments inside C(p). + for (i = 0; i < cavesegshlist->objects; i++) { + paryseg = (face *) fastlookup(cavesegshlist, i); + //enqueuesubface(badsubsegs, paryseg); + } + } + } // if (chkencflag & 1) + + if (ivf->chkencflag & 2) { + // Queue all subfaces outside C(p). + for (i = 0; i < cavetetshlist->objects; i++) { + parysh = (face *) fastlookup(cavetetshlist, i); + // Skip if it is a split subface. + if (!sinfected(*parysh)) { + //enqueuesubface(badsubfacs, parysh); + } + } + // Queue all new subfaces inside C(p). + for (i = 0; i < caveshbdlist->objects; i++) { + // Get an old subface at edge [a, b]. + parysh = (face *) fastlookup(caveshbdlist, i); + spivot(*parysh, checksh); // checksh is a new subface [a, b, p]. + // Do not recover a deleted new face (degenerated). + if (checksh.sh[3] != NULL) { + //enqueuesubface(badsubfacs, &checksh); + } + } + } // if (chkencflag & 2) + + if (ivf->chkencflag & 4) { + // Queue all new tetrahedra in C(p). + for (i = 0; i < cavebdrylist->objects; i++) { + cavetet = (triface *) fastlookup(cavebdrylist, i); + //enqueuetetrahedron(cavetet); + } + } + + // C(p) is re-meshed successfully. + + // Delete the old tets in C(p). + for (i = 0; i < caveoldtetlist->objects; i++) { + searchtet = (triface *) fastlookup(caveoldtetlist, i); + if (ishulltet(*searchtet)) { + hullsize--; + } + tetrahedrondealloc(searchtet->tet); + } + + if (((splitsh != NULL) && (splitsh->sh != NULL)) || + ((splitseg != NULL) && (splitseg->sh != NULL))) { + // Delete the old subfaces in sC(p). + for (i = 0; i < caveshlist->objects; i++) { + parysh = (face *) fastlookup(caveshlist, i); + if (checksubfaceflag) {//if (bowywat == 2) { + // It is possible that this subface still connects to adjacent + // tets which are not in C(p). If so, clear connections in the + // adjacent tets at this subface. + stpivot(*parysh, neightet); + if (neightet.tet != NULL) { + if (neightet.tet[4] != NULL) { + // Found an adjacent tet. It must be not in C(p). + assert(!infected(neightet)); + tsdissolve(neightet); + fsymself(neightet); + assert(!infected(neightet)); + tsdissolve(neightet); + } + } + } + shellfacedealloc(subfaces, parysh->sh); + } + if ((splitseg != NULL) && (splitseg->sh != NULL)) { + // Delete the old segment in sC(p). + shellfacedealloc(subsegs, splitseg->sh); + } + } + + if (ivf->lawson) { + for (i = 0; i < cavebdrylist->objects; i++) { + searchtet = (triface *) fastlookup(cavebdrylist, i); + flippush(flipstack, searchtet); + } + if (ivf->lawson > 1) { + for (i = 0; i < cavetetlist->objects; i++) { + searchtet = (triface *) fastlookup(cavetetlist, i); + flippush(flipstack, searchtet); + } + } + } + + + // Clean the working lists. + + caveoldtetlist->restart(); + cavebdrylist->restart(); + cavetetlist->restart(); + + if (checksubsegflag) { + cavetetseglist->restart(); + caveencseglist->restart(); + } + + if (checksubfaceflag) { + cavetetshlist->restart(); + caveencshlist->restart(); + } + + if (b->weighted || ivf->validflag) { + cavetetvertlist->restart(); + } + + if (((splitsh != NULL) && (splitsh->sh != NULL)) || + ((splitseg != NULL) && (splitseg->sh != NULL))) { + caveshlist->restart(); + caveshbdlist->restart(); + cavesegshlist->restart(); + } + + return 1; // Point is inserted. +} + +void meshGRegionBoundaryRecovery::insertpoint_abort(face *splitseg, insertvertexflags *ivf) +{ + triface *cavetet; + face *parysh; + int i; + + for (i = 0; i < caveoldtetlist->objects; i++) { + cavetet = (triface *) fastlookup(caveoldtetlist, i); + uninfect(*cavetet); + unmarktest(*cavetet); + } + for (i = 0; i < cavebdrylist->objects; i++) { + cavetet = (triface *) fastlookup(cavebdrylist, i); + unmarktest(*cavetet); + } + cavetetlist->restart(); + cavebdrylist->restart(); + caveoldtetlist->restart(); + cavetetseglist->restart(); + cavetetshlist->restart(); + if (ivf->splitbdflag) { + if ((splitseg != NULL) && (splitseg->sh != NULL)) { + sunmarktest(*splitseg); + } + for (i = 0; i < caveshlist->objects; i++) { + parysh = (face *) fastlookup(caveshlist, i); + assert(smarktested(*parysh)); + sunmarktest(*parysh); + } + caveshlist->restart(); + cavesegshlist->restart(); + } +} + +//// //// +//// //// +//// flip_cxx ///////////////////////////////////////////////////////////////// + +/////////////////////////////////////////////////////////////////////////////// +// // +// hilbert_init() Initialize the Gray code permutation table. // +// // +// The table 'transgc' has 8 x 3 x 8 entries. It contains all possible Gray // +// code sequences traveled by the 1st order Hilbert curve in 3 dimensions. // +// The first column is the Gray code of the entry point of the curve, and // +// the second column is the direction (0, 1, or 2, 0 means the x-axis) where // +// the exit point of curve lies. // +// // +// The table 'tsb1mod3' contains the numbers of trailing set '1' bits of the // +// indices from 0 to 7, modulo by '3'. The code for generating this table is // +// from: http://graphics.stanford.edu/~seander/bithacks.html. // +// // +/////////////////////////////////////////////////////////////////////////////// + +void meshGRegionBoundaryRecovery::hilbert_init(int n) +{ + int gc[8], N, mask, travel_bit; + int e, d, f, k, g; + int v, c; + int i; + + N = (n == 2) ? 4 : 8; + mask = (n == 2) ? 3 : 7; + + // Generate the Gray code sequence. + for (i = 0; i < N; i++) { + gc[i] = i ^ (i >> 1); + } + + for (e = 0; e < N; e++) { + for (d = 0; d < n; d++) { + // Calculate the end point (f). + f = e ^ (1 << d); // Toggle the d-th bit of 'e'. + // travel_bit = 2**p, the bit we want to travel. + travel_bit = e ^ f; + for (i = 0; i < N; i++) { + // // Rotate gc[i] left by (p + 1) % n bits. + k = gc[i] * (travel_bit * 2); + g = ((k | (k / N)) & mask); + // Calculate the permuted Gray code by xor with the start point (e). + transgc[e][d][i] = (g ^ e); + } + assert(transgc[e][d][0] == e); + assert(transgc[e][d][N - 1] == f); + } // d + } // e + + // Count the consecutive '1' bits (trailing) on the right. + tsb1mod3[0] = 0; + for (i = 1; i < N; i++) { + v = ~i; // Count the 0s. + v = (v ^ (v - 1)) >> 1; // Set v's trailing 0s to 1s and zero rest + for (c = 0; v; c++) { + v >>= 1; + } + tsb1mod3[i] = c % n; + } +} + +/////////////////////////////////////////////////////////////////////////////// +// // +// hilbert_sort3() Sort points using the 3d Hilbert curve. // +// // +/////////////////////////////////////////////////////////////////////////////// + +int meshGRegionBoundaryRecovery::hilbert_split(point* vertexarray,int arraysize,int gc0,int gc1, + REAL bxmin, REAL bxmax, REAL bymin, REAL bymax, + REAL bzmin, REAL bzmax) +{ + point swapvert; + int axis, d; + REAL split; + int i, j; + + + // Find the current splitting axis. 'axis' is a value 0, or 1, or 2, which + // correspoding to x-, or y- or z-axis. + axis = (gc0 ^ gc1) >> 1; + + // Calulate the split position along the axis. + if (axis == 0) { + split = 0.5 * (bxmin + bxmax); + } else if (axis == 1) { + split = 0.5 * (bymin + bymax); + } else { // == 2 + split = 0.5 * (bzmin + bzmax); + } + + // Find the direction (+1 or -1) of the axis. If 'd' is +1, the direction + // of the axis is to the positive of the axis, otherwise, it is -1. + d = ((gc0 & (1<<axis)) == 0) ? 1 : -1; + + + // Partition the vertices into left- and right-arrays such that left points + // have Hilbert indices lower than the right points. + i = 0; + j = arraysize - 1; + + // Partition the vertices into left- and right-arrays. + if (d > 0) { + do { + for (; i < arraysize; i++) { + if (vertexarray[i][axis] >= split) break; + } + for (; j >= 0; j--) { + if (vertexarray[j][axis] < split) break; + } + // Is the partition finished? + if (i == (j + 1)) break; + // Swap i-th and j-th vertices. + swapvert = vertexarray[i]; + vertexarray[i] = vertexarray[j]; + vertexarray[j] = swapvert; + // Continue patitioning the array; + } while (true); + } else { + do { + for (; i < arraysize; i++) { + if (vertexarray[i][axis] <= split) break; + } + for (; j >= 0; j--) { + if (vertexarray[j][axis] > split) break; + } + // Is the partition finished? + if (i == (j + 1)) break; + // Swap i-th and j-th vertices. + swapvert = vertexarray[i]; + vertexarray[i] = vertexarray[j]; + vertexarray[j] = swapvert; + // Continue patitioning the array; + } while (true); + } + + return i; +} + +void meshGRegionBoundaryRecovery::hilbert_sort3(point* vertexarray, int arraysize, int e, int d, + REAL bxmin, REAL bxmax, REAL bymin, REAL bymax, + REAL bzmin, REAL bzmax, int depth) +{ + REAL x1, x2, y1, y2, z1, z2; + int p[9], w, e_w, d_w, k, ei, di; + int n = 3, mask = 7; + + p[0] = 0; + p[8] = arraysize; + + // Sort the points according to the 1st order Hilbert curve in 3d. + p[4] = hilbert_split(vertexarray, p[8], transgc[e][d][3], transgc[e][d][4], + bxmin, bxmax, bymin, bymax, bzmin, bzmax); + p[2] = hilbert_split(vertexarray, p[4], transgc[e][d][1], transgc[e][d][2], + bxmin, bxmax, bymin, bymax, bzmin, bzmax); + p[1] = hilbert_split(vertexarray, p[2], transgc[e][d][0], transgc[e][d][1], + bxmin, bxmax, bymin, bymax, bzmin, bzmax); + p[3] = hilbert_split(&(vertexarray[p[2]]), p[4] - p[2], + transgc[e][d][2], transgc[e][d][3], + bxmin, bxmax, bymin, bymax, bzmin, bzmax) + p[2]; + p[6] = hilbert_split(&(vertexarray[p[4]]), p[8] - p[4], + transgc[e][d][5], transgc[e][d][6], + bxmin, bxmax, bymin, bymax, bzmin, bzmax) + p[4]; + p[5] = hilbert_split(&(vertexarray[p[4]]), p[6] - p[4], + transgc[e][d][4], transgc[e][d][5], + bxmin, bxmax, bymin, bymax, bzmin, bzmax) + p[4]; + p[7] = hilbert_split(&(vertexarray[p[6]]), p[8] - p[6], + transgc[e][d][6], transgc[e][d][7], + bxmin, bxmax, bymin, bymax, bzmin, bzmax) + p[6]; + + if (b->hilbert_order > 0) { + // A maximum order is prescribed. + if ((depth + 1) == b->hilbert_order) { + // The maximum prescribed order is reached. + return; + } + } + + // Recursively sort the points in sub-boxes. + for (w = 0; w < 8; w++) { + // w is the local Hilbert index (NOT Gray code). + // Sort into the sub-box either there are more than 2 points in it, or + // the prescribed order of the curve is not reached yet. + //if ((p[w+1] - p[w] > b->hilbert_limit) || (b->hilbert_order > 0)) { + if ((p[w+1] - p[w]) > b->hilbert_limit) { + // Calculcate the start point (ei) of the curve in this sub-box. + // update e = e ^ (e(w) left_rotate (d+1)). + if (w == 0) { + e_w = 0; + } else { + // calculate e(w) = gc(2 * floor((w - 1) / 2)). + k = 2 * ((w - 1) / 2); + e_w = k ^ (k >> 1); // = gc(k). + } + k = e_w; + e_w = ((k << (d+1)) & mask) | ((k >> (n-d-1)) & mask); + ei = e ^ e_w; + // Calulcate the direction (di) of the curve in this sub-box. + // update d = (d + d(w) + 1) % n + if (w == 0) { + d_w = 0; + } else { + d_w = ((w % 2) == 0) ? tsb1mod3[w - 1] : tsb1mod3[w]; + } + di = (d + d_w + 1) % n; + // Calculate the bounding box of the sub-box. + if (transgc[e][d][w] & 1) { // x-axis + x1 = 0.5 * (bxmin + bxmax); + x2 = bxmax; + } else { + x1 = bxmin; + x2 = 0.5 * (bxmin + bxmax); + } + if (transgc[e][d][w] & 2) { // y-axis + y1 = 0.5 * (bymin + bymax); + y2 = bymax; + } else { + y1 = bymin; + y2 = 0.5 * (bymin + bymax); + } + if (transgc[e][d][w] & 4) { // z-axis + z1 = 0.5 * (bzmin + bzmax); + z2 = bzmax; + } else { + z1 = bzmin; + z2 = 0.5 * (bzmin + bzmax); + } + hilbert_sort3(&(vertexarray[p[w]]), p[w+1] - p[w], ei, di, + x1, x2, y1, y2, z1, z2, depth+1); + } // if (p[w+1] - p[w] > 1) + } // w +} + +/////////////////////////////////////////////////////////////////////////////// +// // +// brio_multiscale_sort() Sort the points using BRIO and Hilbert curve. // +// // +/////////////////////////////////////////////////////////////////////////////// + +void meshGRegionBoundaryRecovery::brio_multiscale_sort(point* vertexarray, int arraysize, + int threshold, REAL ratio, int *depth) +{ + int middle; + + middle = 0; + if (arraysize >= threshold) { + (*depth)++; + middle = arraysize * ratio; + brio_multiscale_sort(vertexarray, middle, threshold, ratio, depth); + } + // Sort the right-array (rnd-th round) using the Hilbert curve. + hilbert_sort3(&(vertexarray[middle]), arraysize - middle, 0, 0, // e, d + xmin, xmax, ymin, ymax, zmin, zmax, 0); // depth. +} + +/////////////////////////////////////////////////////////////////////////////// +// // +// randomnation() Generate a random number between 0 and 'choices' - 1. // +// // +/////////////////////////////////////////////////////////////////////////////// + +unsigned long meshGRegionBoundaryRecovery::randomnation(unsigned int choices) +{ + unsigned long newrandom; + + if (choices >= 714025l) { + newrandom = (randomseed * 1366l + 150889l) % 714025l; + randomseed = (newrandom * 1366l + 150889l) % 714025l; + newrandom = newrandom * (choices / 714025l) + randomseed; + if (newrandom >= choices) { + return newrandom - choices; + } else { + return newrandom; + } + } else { + randomseed = (randomseed * 1366l + 150889l) % 714025l; + return randomseed % choices; + } +} + +/////////////////////////////////////////////////////////////////////////////// +// // +// randomsample() Randomly sample the tetrahedra for point loation. // +// // +// Searching begins from one of handles: the input 'searchtet', a recently // +// encountered tetrahedron 'recenttet', or from one chosen from a random // +// sample. The choice is made by determining which one's origin is closest // +// to the point we are searching for. // +// // +/////////////////////////////////////////////////////////////////////////////// + +void meshGRegionBoundaryRecovery::randomsample(point searchpt,triface *searchtet) +{ + tetrahedron *firsttet, *tetptr; + point torg; + void **sampleblock; + uintptr_t alignptr; + long sampleblocks, samplesperblock, samplenum; + long tetblocks, i, j; + REAL searchdist, dist; + + if (b->verbose > 2) { + printf(" Random sampling tetrahedra for searching point %d.\n", + pointmark(searchpt)); + } + + if (!nonconvex) { + if (searchtet->tet == NULL) { + // A null tet. Choose the recenttet as the starting tet. + *searchtet = recenttet; + // Recenttet should not be dead. + assert(recenttet.tet[4] != NULL); + } + + // 'searchtet' should be a valid tetrahedron. Choose the base face + // whose vertices must not be 'dummypoint'. + searchtet->ver = 3; + // Record the distance from its origin to the searching point. + torg = org(*searchtet); + searchdist = (searchpt[0] - torg[0]) * (searchpt[0] - torg[0]) + + (searchpt[1] - torg[1]) * (searchpt[1] - torg[1]) + + (searchpt[2] - torg[2]) * (searchpt[2] - torg[2]); + + // If a recently encountered tetrahedron has been recorded and has not + // been deallocated, test it as a good starting point. + if (recenttet.tet != searchtet->tet) { + recenttet.ver = 3; + torg = org(recenttet); + dist = (searchpt[0] - torg[0]) * (searchpt[0] - torg[0]) + + (searchpt[1] - torg[1]) * (searchpt[1] - torg[1]) + + (searchpt[2] - torg[2]) * (searchpt[2] - torg[2]); + if (dist < searchdist) { + *searchtet = recenttet; + searchdist = dist; + } + } + } else { + // The mesh is non-convex. Do not use 'recenttet'. + assert(samples >= 1l); // Make sure at least 1 sample. + searchdist = longest; + } + + // Select "good" candidate using k random samples, taking the closest one. + // The number of random samples taken is proportional to the fourth root + // of the number of tetrahedra in the mesh. + while (samples * samples * samples * samples < tetrahedrons->items) { + samples++; + } + // Find how much blocks in current tet pool. + tetblocks = (tetrahedrons->maxitems + b->tetrahedraperblock - 1) + / b->tetrahedraperblock; + // Find the average samples per block. Each block at least have 1 sample. + samplesperblock = 1 + (samples / tetblocks); + sampleblocks = samples / samplesperblock; + sampleblock = tetrahedrons->firstblock; + for (i = 0; i < sampleblocks; i++) { + alignptr = (uintptr_t) (sampleblock + 1); + firsttet = (tetrahedron *) + (alignptr + (uintptr_t) tetrahedrons->alignbytes + - (alignptr % (uintptr_t) tetrahedrons->alignbytes)); + for (j = 0; j < samplesperblock; j++) { + if (i == tetblocks - 1) { + // This is the last block. + samplenum = randomnation((int) + (tetrahedrons->maxitems - (i * b->tetrahedraperblock))); + } else { + samplenum = randomnation(b->tetrahedraperblock); + } + tetptr = (tetrahedron *) + (firsttet + (samplenum * tetrahedrons->itemwords)); + torg = (point) tetptr[4]; + if (torg != (point) NULL) { + dist = (searchpt[0] - torg[0]) * (searchpt[0] - torg[0]) + + (searchpt[1] - torg[1]) * (searchpt[1] - torg[1]) + + (searchpt[2] - torg[2]) * (searchpt[2] - torg[2]); + if (dist < searchdist) { + searchtet->tet = tetptr; + searchtet->ver = 11; // torg = org(t); + searchdist = dist; + } + } else { + // A dead tet. Re-sample it. + if (i != tetblocks - 1) j--; + } + } + sampleblock = (void **) *sampleblock; + } +} + +/////////////////////////////////////////////////////////////////////////////// +// // +// locate() Find a tetrahedron containing a given point. // +// // +// Begins its search from 'searchtet', assume there is a line segment L from // +// a vertex of 'searchtet' to the query point 'searchpt', and simply walk // +// towards 'searchpt' by traversing all faces intersected by L. // +// // +// On completion, 'searchtet' is a tetrahedron that contains 'searchpt'. The // +// returned value indicates one of the following cases: // +// - ONVERTEX, the search point lies on the origin of 'searchtet'. // +// - ONEDGE, the search point lies on an edge of 'searchtet'. // +// - ONFACE, the search point lies on a face of 'searchtet'. // +// - INTET, the search point lies in the interior of 'searchtet'. // +// - OUTSIDE, the search point lies outside the mesh. 'searchtet' is a // +// hull face which is visible by the search point. // +// // +// WARNING: This routine is designed for convex triangulations, and will not // +// generally work after the holes and concavities have been carved. // +// // +/////////////////////////////////////////////////////////////////////////////// + +enum meshGRegionBoundaryRecovery::locateresult meshGRegionBoundaryRecovery::locate(point searchpt, + triface* searchtet) +{ + point torg, tdest, tapex, toppo; + enum {ORGMOVE, DESTMOVE, APEXMOVE} nextmove; + REAL ori, oriorg, oridest, oriapex; + enum locateresult loc = OUTSIDE; + int t1ver; + int s; + + if (searchtet->tet == NULL) { + // A null tet. Choose the recenttet as the starting tet. + searchtet->tet = recenttet.tet; + } + + // Check if we are in the outside of the convex hull. + if (ishulltet(*searchtet)) { + // Get its adjacent tet (inside the hull). + searchtet->ver = 3; + fsymself(*searchtet); + } + + // Let searchtet be the face such that 'searchpt' lies above to it. + for (searchtet->ver = 0; searchtet->ver < 4; searchtet->ver++) { + torg = org(*searchtet); + tdest = dest(*searchtet); + tapex = apex(*searchtet); + ori = orient3d(torg, tdest, tapex, searchpt); + if (ori < 0.0) break; + } + assert(searchtet->ver != 4); + + // Walk through tetrahedra to locate the point. + while (true) { + + toppo = oppo(*searchtet); + + // Check if the vertex is we seek. + if (toppo == searchpt) { + // Adjust the origin of searchtet to be searchpt. + esymself(*searchtet); + eprevself(*searchtet); + loc = ONVERTEX; // return ONVERTEX; + break; + } + + // We enter from one of serarchtet's faces, which face do we exit? + oriorg = orient3d(tdest, tapex, toppo, searchpt); + oridest = orient3d(tapex, torg, toppo, searchpt); + oriapex = orient3d(torg, tdest, toppo, searchpt); + + // Now decide which face to move. It is possible there are more than one + // faces are viable moves. If so, randomly choose one. + if (oriorg < 0) { + if (oridest < 0) { + if (oriapex < 0) { + // All three faces are possible. + s = randomnation(3); // 's' is in {0,1,2}. + if (s == 0) { + nextmove = ORGMOVE; + } else if (s == 1) { + nextmove = DESTMOVE; + } else { + nextmove = APEXMOVE; + } + } else { + // Two faces, opposite to origin and destination, are viable. + //s = randomnation(2); // 's' is in {0,1}. + if (randomnation(2)) { + nextmove = ORGMOVE; + } else { + nextmove = DESTMOVE; + } + } + } else { + if (oriapex < 0) { + // Two faces, opposite to origin and apex, are viable. + //s = randomnation(2); // 's' is in {0,1}. + if (randomnation(2)) { + nextmove = ORGMOVE; + } else { + nextmove = APEXMOVE; + } + } else { + // Only the face opposite to origin is viable. + nextmove = ORGMOVE; + } + } + } else { + if (oridest < 0) { + if (oriapex < 0) { + // Two faces, opposite to destination and apex, are viable. + //s = randomnation(2); // 's' is in {0,1}. + if (randomnation(2)) { + nextmove = DESTMOVE; + } else { + nextmove = APEXMOVE; + } + } else { + // Only the face opposite to destination is viable. + nextmove = DESTMOVE; + } + } else { + if (oriapex < 0) { + // Only the face opposite to apex is viable. + nextmove = APEXMOVE; + } else { + // The point we seek must be on the boundary of or inside this + // tetrahedron. Check for boundary cases. + if (oriorg == 0) { + // Go to the face opposite to origin. + enextesymself(*searchtet); + if (oridest == 0) { + eprevself(*searchtet); // edge oppo->apex + if (oriapex == 0) { + // oppo is duplicated with p. + loc = ONVERTEX; // return ONVERTEX; + break; + } + loc = ONEDGE; // return ONEDGE; + break; + } + if (oriapex == 0) { + enextself(*searchtet); // edge dest->oppo + loc = ONEDGE; // return ONEDGE; + break; + } + loc = ONFACE; // return ONFACE; + break; + } + if (oridest == 0) { + // Go to the face opposite to destination. + eprevesymself(*searchtet); + if (oriapex == 0) { + eprevself(*searchtet); // edge oppo->org + loc = ONEDGE; // return ONEDGE; + break; + } + loc = ONFACE; // return ONFACE; + break; + } + if (oriapex == 0) { + // Go to the face opposite to apex + esymself(*searchtet); + loc = ONFACE; // return ONFACE; + break; + } + loc = INTETRAHEDRON; // return INTETRAHEDRON; + break; + } + } + } + + // Move to the selected face. + if (nextmove == ORGMOVE) { + enextesymself(*searchtet); + } else if (nextmove == DESTMOVE) { + eprevesymself(*searchtet); + } else { + esymself(*searchtet); + } + // Move to the adjacent tetrahedron (maybe a hull tetrahedron). + fsymself(*searchtet); + if (oppo(*searchtet) == dummypoint) { + loc = OUTSIDE; // return OUTSIDE; + break; + } + + // Retreat the three vertices of the base face. + torg = org(*searchtet); + tdest = dest(*searchtet); + tapex = apex(*searchtet); + + } // while (true) + + return loc; +} + +/////////////////////////////////////////////////////////////////////////////// +// // +// flippush() Push a face (possibly will be flipped) into flipstack. // +// // +// The face is marked. The flag is used to check the validity of the face on // +// its popup. Some other flips may change it already. // +// // +/////////////////////////////////////////////////////////////////////////////// + +void meshGRegionBoundaryRecovery::flippush(badface*& fstack, triface* flipface) +{ + if (!facemarked(*flipface)) { + badface *newflipface = (badface *) flippool->alloc(); + newflipface->tt = *flipface; + markface(newflipface->tt); + // Push this face into stack. + newflipface->nextitem = fstack; + fstack = newflipface; + } +} + +/////////////////////////////////////////////////////////////////////////////// +// // +// initialdelaunay() Create an initial Delaunay tetrahedralization. // +// // +// The tetrahedralization contains only one tetrahedron abcd, and four hull // +// tetrahedra. The points pa, pb, pc, and pd must be linearly independent. // +// // +/////////////////////////////////////////////////////////////////////////////// + +void meshGRegionBoundaryRecovery::initialdelaunay(point pa, point pb, point pc, point pd) +{ + triface firsttet, tetopa, tetopb, tetopc, tetopd; + triface worktet, worktet1; + + if (b->verbose > 2) { + printf(" Create init tet (%d, %d, %d, %d)\n", pointmark(pa), + pointmark(pb), pointmark(pc), pointmark(pd)); + } + + // Create the first tetrahedron. + maketetrahedron(&firsttet); + setvertices(firsttet, pa, pb, pc, pd); + // Create four hull tetrahedra. + maketetrahedron(&tetopa); + setvertices(tetopa, pb, pc, pd, dummypoint); + maketetrahedron(&tetopb); + setvertices(tetopb, pc, pa, pd, dummypoint); + maketetrahedron(&tetopc); + setvertices(tetopc, pa, pb, pd, dummypoint); + maketetrahedron(&tetopd); + setvertices(tetopd, pb, pa, pc, dummypoint); + hullsize += 4; + + // Connect hull tetrahedra to firsttet (at four faces of firsttet). + bond(firsttet, tetopd); + esym(firsttet, worktet); + bond(worktet, tetopc); // ab + enextesym(firsttet, worktet); + bond(worktet, tetopa); // bc + eprevesym(firsttet, worktet); + bond(worktet, tetopb); // ca + + // Connect hull tetrahedra together (at six edges of firsttet). + esym(tetopc, worktet); + esym(tetopd, worktet1); + bond(worktet, worktet1); // ab + esym(tetopa, worktet); + eprevesym(tetopd, worktet1); + bond(worktet, worktet1); // bc + esym(tetopb, worktet); + enextesym(tetopd, worktet1); + bond(worktet, worktet1); // ca + eprevesym(tetopc, worktet); + enextesym(tetopb, worktet1); + bond(worktet, worktet1); // da + eprevesym(tetopa, worktet); + enextesym(tetopc, worktet1); + bond(worktet, worktet1); // db + eprevesym(tetopb, worktet); + enextesym(tetopa, worktet1); + bond(worktet, worktet1); // dc + + // Set the vertex type. + if (pointtype(pa) == UNUSEDVERTEX) { + setpointtype(pa, VOLVERTEX); + } + if (pointtype(pb) == UNUSEDVERTEX) { + setpointtype(pb, VOLVERTEX); + } + if (pointtype(pc) == UNUSEDVERTEX) { + setpointtype(pc, VOLVERTEX); + } + if (pointtype(pd) == UNUSEDVERTEX) { + setpointtype(pd, VOLVERTEX); + } + + setpoint2tet(pa, encode(firsttet)); + setpoint2tet(pb, encode(firsttet)); + setpoint2tet(pc, encode(firsttet)); + setpoint2tet(pd, encode(firsttet)); + + // Remember the first tetrahedron. + recenttet = firsttet; +} + +//// //// +//// //// +//// delaunay_cxx ///////////////////////////////////////////////////////////// + +//// surface_cxx ////////////////////////////////////////////////////////////// +//// //// +//// //// + +void meshGRegionBoundaryRecovery::flipshpush(face* flipedge) +{ + badface *newflipface; + + newflipface = (badface *) flippool->alloc(); + newflipface->ss = *flipedge; + newflipface->forg = sorg(*flipedge); + newflipface->fdest = sdest(*flipedge); + newflipface->nextitem = flipstack; + flipstack = newflipface; +} + +void meshGRegionBoundaryRecovery::flip22(face* flipfaces, int flipflag, + int chkencflag) +{ + face bdedges[4], outfaces[4], infaces[4]; + face bdsegs[4]; + face checkface; + point pa, pb, pc, pd; + int i; + + pa = sorg(flipfaces[0]); + pb = sdest(flipfaces[0]); + pc = sapex(flipfaces[0]); + pd = sapex(flipfaces[1]); + + if (sorg(flipfaces[1]) != pb) { + sesymself(flipfaces[1]); + } + + flip22count++; + + // Collect the four boundary edges. + senext(flipfaces[0], bdedges[0]); + senext2(flipfaces[0], bdedges[1]); + senext(flipfaces[1], bdedges[2]); + senext2(flipfaces[1], bdedges[3]); + + // Collect outer boundary faces. + for (i = 0; i < 4; i++) { + spivot(bdedges[i], outfaces[i]); + infaces[i] = outfaces[i]; + sspivot(bdedges[i], bdsegs[i]); + if (outfaces[i].sh != NULL) { + if (isshsubseg(bdedges[i])) { + spivot(infaces[i], checkface); + while (checkface.sh != bdedges[i].sh) { + infaces[i] = checkface; + spivot(infaces[i], checkface); + } + } + } + } + + // The flags set in these two subfaces do not change. + // Shellmark does not change. + // area constraint does not change. + + // Transform [a,b,c] -> [c,d,b]. + setshvertices(flipfaces[0], pc, pd, pb); + // Transform [b,a,d] -> [d,c,a]. + setshvertices(flipfaces[1], pd, pc, pa); + + // Update the point-to-subface map. + if (pointtype(pa) == FREEFACETVERTEX) { + setpoint2sh(pa, sencode(flipfaces[1])); + } + if (pointtype(pb) == FREEFACETVERTEX) { + setpoint2sh(pb, sencode(flipfaces[0])); + } + if (pointtype(pc) == FREEFACETVERTEX) { + setpoint2sh(pc, sencode(flipfaces[0])); + } + if (pointtype(pd) == FREEFACETVERTEX) { + setpoint2sh(pd, sencode(flipfaces[0])); + } + + // Reconnect boundary edges to outer boundary faces. + for (i = 0; i < 4; i++) { + if (outfaces[(3 + i) % 4].sh != NULL) { + // Make sure that the subface has the ori as the segment. + if (bdsegs[(3 + i) % 4].sh != NULL) { + bdsegs[(3 + i) % 4].shver = 0; + if (sorg(bdedges[i]) != sorg(bdsegs[(3 + i) % 4])) { + sesymself(bdedges[i]); + } + } + sbond1(bdedges[i], outfaces[(3 + i) % 4]); + sbond1(infaces[(3 + i) % 4], bdedges[i]); + } else { + sdissolve(bdedges[i]); + } + if (bdsegs[(3 + i) % 4].sh != NULL) { + ssbond(bdedges[i], bdsegs[(3 + i) % 4]); + if (chkencflag & 1) { + // Queue this segment for encroaching check. + //enqueuesubface(badsubsegs, &(bdsegs[(3 + i) % 4])); + } + } else { + ssdissolve(bdedges[i]); + } + } + + if (chkencflag & 2) { + // Queue the flipped subfaces for quality/encroaching checks. + for (i = 0; i < 2; i++) { + //enqueuesubface(badsubfacs, &(flipfaces[i])); + } + } + + recentsh = flipfaces[0]; + + if (flipflag) { + // Put the boundary edges into flip stack. + for (i = 0; i < 4; i++) { + flipshpush(&(bdedges[i])); + } + } +} + +void meshGRegionBoundaryRecovery::flip31(face* flipfaces, int flipflag) +{ + face bdedges[3], outfaces[3], infaces[3]; + face bdsegs[3]; + face checkface; + point pa, pb, pc; + int i; + + pa = sdest(flipfaces[0]); + pb = sdest(flipfaces[1]); + pc = sdest(flipfaces[2]); + + flip31count++; + + // Collect all infos at the three boundary edges. + for (i = 0; i < 3; i++) { + senext(flipfaces[i], bdedges[i]); + spivot(bdedges[i], outfaces[i]); + infaces[i] = outfaces[i]; + sspivot(bdedges[i], bdsegs[i]); + if (outfaces[i].sh != NULL) { + if (isshsubseg(bdedges[i])) { + spivot(infaces[i], checkface); + while (checkface.sh != bdedges[i].sh) { + infaces[i] = checkface; + spivot(infaces[i], checkface); + } + } + } + } // i + + // Create a new subface. + makeshellface(subfaces, &(flipfaces[3])); + setshvertices(flipfaces[3], pa, pb,pc); + setshellmark(flipfaces[3], shellmark(flipfaces[0])); + if (checkconstraints) { + //area = areabound(flipfaces[0]); + setareabound(flipfaces[3], areabound(flipfaces[0])); + } + if (useinsertradius) { + setfacetindex(flipfaces[3], getfacetindex(flipfaces[0])); + } + + // Update the point-to-subface map. + if (pointtype(pa) == FREEFACETVERTEX) { + setpoint2sh(pa, sencode(flipfaces[3])); + } + if (pointtype(pb) == FREEFACETVERTEX) { + setpoint2sh(pb, sencode(flipfaces[3])); + } + if (pointtype(pc) == FREEFACETVERTEX) { + setpoint2sh(pc, sencode(flipfaces[3])); + } + + // Update the three new boundary edges. + bdedges[0] = flipfaces[3]; // [a,b] + senext(flipfaces[3], bdedges[1]); // [b,c] + senext2(flipfaces[3], bdedges[2]); // [c,a] + + // Reconnect boundary edges to outer boundary faces. + for (i = 0; i < 3; i++) { + if (outfaces[i].sh != NULL) { + // Make sure that the subface has the ori as the segment. + if (bdsegs[i].sh != NULL) { + bdsegs[i].shver = 0; + if (sorg(bdedges[i]) != sorg(bdsegs[i])) { + sesymself(bdedges[i]); + } + } + sbond1(bdedges[i], outfaces[i]); + sbond1(infaces[i], bdedges[i]); + } + if (bdsegs[i].sh != NULL) { + ssbond(bdedges[i], bdsegs[i]); + } + } + + recentsh = flipfaces[3]; + + if (flipflag) { + // Put the boundary edges into flip stack. + for (i = 0; i < 3; i++) { + flipshpush(&(bdedges[i])); + } + } +} + +long meshGRegionBoundaryRecovery::lawsonflip() +{ + badface *popface; + face flipfaces[2]; + point pa, pb, pc, pd; + REAL sign; + long flipcount = 0; + + if (b->verbose > 2) { + printf(" Lawson flip %ld edges.\n", flippool->items); + } + + while (flipstack != (badface *) NULL) { + + // Pop an edge from the stack. + popface = flipstack; + flipfaces[0] = popface->ss; + pa = popface->forg; + pb = popface->fdest; + flipstack = popface->nextitem; // The next top item in stack. + flippool->dealloc((void *) popface); + + // Skip it if it is dead. + if (flipfaces[0].sh[3] == NULL) continue; + // Skip it if it is not the same edge as we saved. + if ((sorg(flipfaces[0]) != pa) || (sdest(flipfaces[0]) != pb)) continue; + // Skip it if it is a subsegment. + if (isshsubseg(flipfaces[0])) continue; + + // Get the adjacent face. + spivot(flipfaces[0], flipfaces[1]); + if (flipfaces[1].sh == NULL) continue; // Skip a hull edge. + pc = sapex(flipfaces[0]); + pd = sapex(flipfaces[1]); + + sign = incircle3d(pa, pb, pc, pd); + + if (sign < 0) { + // It is non-locally Delaunay. Flip it. + flip22(flipfaces, 1, 0); + flipcount++; + } + } + + if (b->verbose > 2) { + printf(" Performed %ld flips.\n", flipcount); + } + + return flipcount; +} + +int meshGRegionBoundaryRecovery::sinsertvertex(point insertpt, face *searchsh, + face *splitseg, int iloc, int bowywat, int rflag) +{ + face cavesh, neighsh, *parysh; + face newsh, casout, casin; + face checkseg; + point pa, pb; + enum locateresult loc = OUTSIDE; + REAL sign, ori; + int i, j; + + if (b->verbose > 2) { + printf(" Insert facet point %d.\n", pointmark(insertpt)); + } + + if (bowywat == 3) { + loc = INSTAR; + } + + if ((splitseg != NULL) && (splitseg->sh != NULL)) { + // A segment is going to be split, no point location. + spivot(*splitseg, *searchsh); + if (loc != INSTAR) loc = ONEDGE; + } else { + if (loc != INSTAR) loc = (enum locateresult) iloc; + if (loc == OUTSIDE) { + // Do point location in surface mesh. + if (searchsh->sh == NULL) { + *searchsh = recentsh; + } + // Search the vertex. An above point must be provided ('aflag' = 1). + loc = slocate(insertpt, searchsh, 1, 1, rflag); + } + } + + + // Form the initial sC(p). + if (loc == ONFACE) { + // Add the face into list (in B-W cavity). + smarktest(*searchsh); + caveshlist->newindex((void **) &parysh); + *parysh = *searchsh; + } else if (loc == ONEDGE) { + if ((splitseg != NULL) && (splitseg->sh != NULL)) { + splitseg->shver = 0; + pa = sorg(*splitseg); + } else { + pa = sorg(*searchsh); + } + if (searchsh->sh != NULL) { + // Collect all subfaces share at this edge. + neighsh = *searchsh; + while (1) { + // Adjust the origin of its edge to be 'pa'. + if (sorg(neighsh) != pa) sesymself(neighsh); + // Add this face into list (in B-W cavity). + smarktest(neighsh); + caveshlist->newindex((void **) &parysh); + *parysh = neighsh; + // Add this face into face-at-splitedge list. + cavesegshlist->newindex((void **) &parysh); + *parysh = neighsh; + // Go to the next face at the edge. + spivotself(neighsh); + // Stop if all faces at the edge have been visited. + if (neighsh.sh == searchsh->sh) break; + if (neighsh.sh == NULL) break; + } + } // If (not a non-dangling segment). + } else if (loc == ONVERTEX) { + return (int) loc; + } else if (loc == OUTSIDE) { + // Comment: This should only happen during the surface meshing step. + // Enlarge the convex hull of the triangulation by including p. + // An above point of the facet is set in 'dummypoint' to replace + // orient2d tests by orient3d tests. + // Imagine that the current edge a->b (in 'searchsh') is horizontal in a + // plane, and a->b is directed from left to right, p lies above a->b. + // Find the right-most edge of the triangulation which is visible by p. + neighsh = *searchsh; + while (1) { + senext2self(neighsh); + spivot(neighsh, casout); + if (casout.sh == NULL) { + // A convex hull edge. Is it visible by p. + ori = orient3d(sorg(neighsh), sdest(neighsh), dummypoint, insertpt); + if (ori < 0) { + *searchsh = neighsh; // Visible, update 'searchsh'. + } else { + break; // 'searchsh' is the right-most visible edge. + } + } else { + if (sorg(casout) != sdest(neighsh)) sesymself(casout); + neighsh = casout; + } + } + // Create new triangles for all visible edges of p (from right to left). + casin.sh = NULL; // No adjacent face at right. + pa = sorg(*searchsh); + pb = sdest(*searchsh); + while (1) { + // Create a new subface on top of the (visible) edge. + makeshellface(subfaces, &newsh); + setshvertices(newsh, pb, pa, insertpt); + setshellmark(newsh, shellmark(*searchsh)); + if (checkconstraints) { + //area = areabound(*searchsh); + setareabound(newsh, areabound(*searchsh)); + } + if (useinsertradius) { + setfacetindex(newsh, getfacetindex(*searchsh)); + } + // Connect the new subface to the bottom subfaces. + sbond1(newsh, *searchsh); + sbond1(*searchsh, newsh); + // Connect the new subface to its right-adjacent subface. + if (casin.sh != NULL) { + senext(newsh, casout); + sbond1(casout, casin); + sbond1(casin, casout); + } + // The left-adjacent subface has not been created yet. + senext2(newsh, casin); + // Add the new face into list (inside the B-W cavity). + smarktest(newsh); + caveshlist->newindex((void **) &parysh); + *parysh = newsh; + // Move to the convex hull edge at the left of 'searchsh'. + neighsh = *searchsh; + while (1) { + senextself(neighsh); + spivot(neighsh, casout); + if (casout.sh == NULL) { + *searchsh = neighsh; + break; + } + if (sorg(casout) != sdest(neighsh)) sesymself(casout); + neighsh = casout; + } + // A convex hull edge. Is it visible by p. + pa = sorg(*searchsh); + pb = sdest(*searchsh); + ori = orient3d(pa, pb, dummypoint, insertpt); + // Finish the process if p is not visible by the hull edge. + if (ori >= 0) break; + } + } else if (loc == INSTAR) { + // Under this case, the sub-cavity sC(p) has already been formed in + // insertvertex(). + } + + // Form the Bowyer-Watson cavity sC(p). + for (i = 0; i < caveshlist->objects; i++) { + cavesh = * (face *) fastlookup(caveshlist, i); + for (j = 0; j < 3; j++) { + if (!isshsubseg(cavesh)) { + spivot(cavesh, neighsh); + if (neighsh.sh != NULL) { + // The adjacent face exists. + if (!smarktested(neighsh)) { + if (bowywat) { + if (loc == INSTAR) { // if (bowywat > 2) { + // It must be a boundary edge. + sign = 1; + } else { + // Check if this subface is connected to adjacent tet(s). + if (!isshtet(neighsh)) { + // Check if the subface is non-Delaunay wrt. the new pt. + sign = incircle3d(sorg(neighsh), sdest(neighsh), + sapex(neighsh), insertpt); + } else { + // It is connected to an adjacent tet. A boundary edge. + sign = 1; + } + } + if (sign < 0) { + // Add the adjacent face in list (in B-W cavity). + smarktest(neighsh); + caveshlist->newindex((void **) &parysh); + *parysh = neighsh; + } + } else { + sign = 1; // A boundary edge. + } + } else { + sign = -1; // Not a boundary edge. + } + } else { + // No adjacent face. It is a hull edge. + if (loc == OUTSIDE) { + // It is a boundary edge if it does not contain p. + if ((sorg(cavesh) == insertpt) || (sdest(cavesh) == insertpt)) { + sign = -1; // Not a boundary edge. + } else { + sign = 1; // A boundary edge. + } + } else { + sign = 1; // A boundary edge. + } + } + } else { + // Do not across a segment. It is a boundary edge. + sign = 1; + } + if (sign >= 0) { + // Add a boundary edge. + caveshbdlist->newindex((void **) &parysh); + *parysh = cavesh; + } + senextself(cavesh); + } // j + } // i + + + // Creating new subfaces. + for (i = 0; i < caveshbdlist->objects; i++) { + parysh = (face *) fastlookup(caveshbdlist, i); + sspivot(*parysh, checkseg); + if ((parysh->shver & 01) != 0) sesymself(*parysh); + pa = sorg(*parysh); + pb = sdest(*parysh); + // Create a new subface. + makeshellface(subfaces, &newsh); + setshvertices(newsh, pa, pb, insertpt); + setshellmark(newsh, shellmark(*parysh)); + if (checkconstraints) { + //area = areabound(*parysh); + setareabound(newsh, areabound(*parysh)); + } + if (useinsertradius) { + setfacetindex(newsh, getfacetindex(*parysh)); + } + // Update the point-to-subface map. + if (pointtype(pa) == FREEFACETVERTEX) { + setpoint2sh(pa, sencode(newsh)); + } + if (pointtype(pb) == FREEFACETVERTEX) { + setpoint2sh(pb, sencode(newsh)); + } + // Connect newsh to outer subfaces. + spivot(*parysh, casout); + if (casout.sh != NULL) { + casin = casout; + if (checkseg.sh != NULL) { + // Make sure that newsh has the right ori at this segment. + checkseg.shver = 0; + if (sorg(newsh) != sorg(checkseg)) { + sesymself(newsh); + sesymself(*parysh); // This side should also be inverse. + } + spivot(casin, neighsh); + while (neighsh.sh != parysh->sh) { + casin = neighsh; + spivot(casin, neighsh); + } + } + sbond1(newsh, casout); + sbond1(casin, newsh); + } + if (checkseg.sh != NULL) { + ssbond(newsh, checkseg); + } + // Connect oldsh <== newsh (for connecting adjacent new subfaces). + // *parysh and newsh point to the same edge and the same ori. + sbond1(*parysh, newsh); + } + + if (newsh.sh != NULL) { + // Set a handle for searching. + recentsh = newsh; + } + + // Update the point-to-subface map. + if (pointtype(insertpt) == FREEFACETVERTEX) { + setpoint2sh(insertpt, sencode(newsh)); + } + + // Connect adjacent new subfaces together. + for (i = 0; i < caveshbdlist->objects; i++) { + // Get an old subface at edge [a, b]. + parysh = (face *) fastlookup(caveshbdlist, i); + spivot(*parysh, newsh); // The new subface [a, b, p]. + senextself(newsh); // At edge [b, p]. + spivot(newsh, neighsh); + if (neighsh.sh == NULL) { + // Find the adjacent new subface at edge [b, p]. + pb = sdest(*parysh); + neighsh = *parysh; + while (1) { + senextself(neighsh); + spivotself(neighsh); + if (neighsh.sh == NULL) break; + if (!smarktested(neighsh)) break; + if (sdest(neighsh) != pb) sesymself(neighsh); + } + if (neighsh.sh != NULL) { + // Now 'neighsh' is a new subface at edge [b, #]. + if (sorg(neighsh) != pb) sesymself(neighsh); + senext2self(neighsh); // Go to the open edge [p, b]. + sbond(newsh, neighsh); + } else { + // There is no adjacent new face at this side. + assert(loc == OUTSIDE); // SELF_CHECK + } + } + spivot(*parysh, newsh); // The new subface [a, b, p]. + senext2self(newsh); // At edge [p, a]. + spivot(newsh, neighsh); + if (neighsh.sh == NULL) { + // Find the adjacent new subface at edge [p, a]. + pa = sorg(*parysh); + neighsh = *parysh; + while (1) { + senext2self(neighsh); + spivotself(neighsh); + if (neighsh.sh == NULL) break; + if (!smarktested(neighsh)) break; + if (sorg(neighsh) != pa) sesymself(neighsh); + } + if (neighsh.sh != NULL) { + // Now 'neighsh' is a new subface at edge [#, a]. + if (sdest(neighsh) != pa) sesymself(neighsh); + senextself(neighsh); // Go to the open edge [a, p]. + sbond(newsh, neighsh); + } else { + // There is no adjacent new face at this side. + assert(loc == OUTSIDE); // SELF_CHECK + } + } + } + + if ((loc == ONEDGE) || ((splitseg != NULL) && (splitseg->sh != NULL)) + || (cavesegshlist->objects > 0l)) { + // An edge is being split. We distinguish two cases: + // (1) the edge is not on the boundary of the cavity; + // (2) the edge is on the boundary of the cavity. + // In case (2), the edge is either a segment or a hull edge. There are + // degenerated new faces in the cavity. They must be removed. + face aseg, bseg, aoutseg, boutseg; + + for (i = 0; i < cavesegshlist->objects; i++) { + // Get the saved old subface. + parysh = (face *) fastlookup(cavesegshlist, i); + // Get a possible new degenerated subface. + spivot(*parysh, cavesh); + if (sapex(cavesh) == insertpt) { + // Found a degenerated new subface, i.e., case (2). + if (cavesegshlist->objects > 1) { + // There are more than one subface share at this edge. + j = (i + 1) % (int) cavesegshlist->objects; + parysh = (face *) fastlookup(cavesegshlist, j); + spivot(*parysh, neighsh); + // Adjust cavesh and neighsh both at edge a->b, and has p as apex. + if (sorg(neighsh) != sorg(cavesh)) { + sesymself(neighsh); + assert(sorg(neighsh) == sorg(cavesh)); // SELF_CHECK + } + assert(sapex(neighsh) == insertpt); // SELF_CHECK + // Connect adjacent faces at two other edges of cavesh and neighsh. + // As a result, the two degenerated new faces are squeezed from the + // new triangulation of the cavity. Note that the squeezed faces + // still hold the adjacent informations which will be used in + // re-connecting subsegments (if they exist). + for (j = 0; j < 2; j++) { + senextself(cavesh); + senextself(neighsh); + spivot(cavesh, newsh); + spivot(neighsh, casout); + sbond1(newsh, casout); // newsh <- casout. + } + } else { + // There is only one subface containing this edge [a,b]. Squeeze the + // degenerated new face [a,b,c] by disconnecting it from its two + // adjacent subfaces at edges [b,c] and [c,a]. Note that the face + // [a,b,c] still hold the connection to them. + for (j = 0; j < 2; j++) { + senextself(cavesh); + spivot(cavesh, newsh); + sdissolve(newsh); + } + } + //recentsh = newsh; + // Update the point-to-subface map. + if (pointtype(insertpt) == FREEFACETVERTEX) { + setpoint2sh(insertpt, sencode(newsh)); + } + } + } + + if ((splitseg != NULL) && (splitseg->sh != NULL)) { + if (loc != INSTAR) { // if (bowywat < 3) { + smarktest(*splitseg); // Mark it as being processed. + } + + aseg = *splitseg; + pa = sorg(*splitseg); + pb = sdest(*splitseg); + + // Insert the new point p. + makeshellface(subsegs, &aseg); + makeshellface(subsegs, &bseg); + + setshvertices(aseg, pa, insertpt, NULL); + setshvertices(bseg, insertpt, pb, NULL); + setshellmark(aseg, shellmark(*splitseg)); + setshellmark(bseg, shellmark(*splitseg)); + if (checkconstraints) { + setareabound(aseg, areabound(*splitseg)); + setareabound(bseg, areabound(*splitseg)); + } + if (useinsertradius) { + setfacetindex(aseg, getfacetindex(*splitseg)); + setfacetindex(bseg, getfacetindex(*splitseg)); + } + + // Connect [#, a]<->[a, p]. + senext2(*splitseg, boutseg); // Temporarily use boutseg. + spivotself(boutseg); + if (boutseg.sh != NULL) { + senext2(aseg, aoutseg); + sbond(boutseg, aoutseg); + } + // Connect [p, b]<->[b, #]. + senext(*splitseg, aoutseg); + spivotself(aoutseg); + if (aoutseg.sh != NULL) { + senext(bseg, boutseg); + sbond(boutseg, aoutseg); + } + // Connect [a, p] <-> [p, b]. + senext(aseg, aoutseg); + senext2(bseg, boutseg); + sbond(aoutseg, boutseg); + + // Connect subsegs [a, p] and [p, b] to adjacent new subfaces. + // Although the degenerated new faces have been squeezed. They still + // hold the connections to the actual new faces. + for (i = 0; i < cavesegshlist->objects; i++) { + parysh = (face *) fastlookup(cavesegshlist, i); + spivot(*parysh, neighsh); + // neighsh is a degenerated new face. + if (sorg(neighsh) != pa) { + sesymself(neighsh); + } + senext2(neighsh, newsh); + spivotself(newsh); // The edge [p, a] in newsh + ssbond(newsh, aseg); + senext(neighsh, newsh); + spivotself(newsh); // The edge [b, p] in newsh + ssbond(newsh, bseg); + } + + + // Let the point remember the segment it lies on. + if (pointtype(insertpt) == FREESEGVERTEX) { + setpoint2sh(insertpt, sencode(aseg)); + } + // Update the point-to-seg map. + if (pointtype(pa) == FREESEGVERTEX) { + setpoint2sh(pa, sencode(aseg)); + } + if (pointtype(pb) == FREESEGVERTEX) { + setpoint2sh(pb, sencode(bseg)); + } + } // if ((splitseg != NULL) && (splitseg->sh != NULL)) + + // Delete all degenerated new faces. + for (i = 0; i < cavesegshlist->objects; i++) { + parysh = (face *) fastlookup(cavesegshlist, i); + spivotself(*parysh); + if (sapex(*parysh) == insertpt) { + shellfacedealloc(subfaces, parysh->sh); + } + } + cavesegshlist->restart(); + + if ((splitseg != NULL) && (splitseg->sh != NULL)) { + // Return the two new subsegments (for further process). + // Re-use 'cavesegshlist'. + cavesegshlist->newindex((void **) &parysh); + *parysh = aseg; + cavesegshlist->newindex((void **) &parysh); + *parysh = bseg; + } + } // if (loc == ONEDGE) + + + return (int) loc; +} + +int meshGRegionBoundaryRecovery::sremovevertex(point delpt, face* parentsh, + face* parentseg, int lawson) +{ + face flipfaces[4], spinsh, *parysh; + point pa, pb, pc, pd; + REAL ori1, ori2; + int it, i, j; + + if (parentseg != NULL) { + // 'delpt' (p) should be a Steiner point inserted in a segment [a,b], + // where 'parentseg' should be [p,b]. Find the segment [a,p]. + face startsh, neighsh, nextsh; + face abseg, prevseg, checkseg; + face adjseg1, adjseg2; + face fakesh; + senext2(*parentseg, prevseg); + spivotself(prevseg); + prevseg.shver = 0; + assert(sdest(prevseg) == delpt); + // Restore the original segment [a,b]. + pa = sorg(prevseg); + pb = sdest(*parentseg); + if (b->verbose > 2) { + printf(" Remove vertex %d from segment [%d, %d].\n", + pointmark(delpt), pointmark(pa), pointmark(pb)); + } + makeshellface(subsegs, &abseg); + setshvertices(abseg, pa, pb, NULL); + setshellmark(abseg, shellmark(*parentseg)); + if (checkconstraints) { + setareabound(abseg, areabound(*parentseg)); + } + if (useinsertradius) { + setfacetindex(abseg, getfacetindex(*parentseg)); + } + // Connect [#, a]<->[a, b]. + senext2(prevseg, adjseg1); + spivotself(adjseg1); + if (adjseg1.sh != NULL) { + adjseg1.shver = 0; + assert(sdest(adjseg1) == pa); + senextself(adjseg1); + senext2(abseg, adjseg2); + sbond(adjseg1, adjseg2); + } + // Connect [a, b]<->[b, #]. + senext(*parentseg, adjseg1); + spivotself(adjseg1); + if (adjseg1.sh != NULL) { + adjseg1.shver = 0; + assert(sorg(adjseg1) == pb); + senext2self(adjseg1); + senext(abseg, adjseg2); + sbond(adjseg1, adjseg2); + } + // Update the point-to-segment map. + setpoint2sh(pa, sencode(abseg)); + setpoint2sh(pb, sencode(abseg)); + + // Get the faces in face ring at segment [p, b]. + // Re-use array 'caveshlist'. + spivot(*parentseg, *parentsh); + if (parentsh->sh != NULL) { + spinsh = *parentsh; + while (1) { + // Save this face in list. + caveshlist->newindex((void **) &parysh); + *parysh = spinsh; + // Go to the next face in the ring. + spivotself(spinsh); + if (spinsh.sh == parentsh->sh) break; + } + } + + // Create the face ring of the new segment [a,b]. Each face in the ring + // is [a,b,p] (degenerated!). It will be removed (automatically). + for (i = 0; i < caveshlist->objects; i++) { + parysh = (face *) fastlookup(caveshlist, i); + startsh = *parysh; + if (sorg(startsh) != delpt) { + sesymself(startsh); + assert(sorg(startsh) == delpt); + } + // startsh is [p, b, #1], find the subface [a, p, #2]. + neighsh = startsh; + while (1) { + senext2self(neighsh); + sspivot(neighsh, checkseg); + if (checkseg.sh != NULL) { + // It must be the segment [a, p]. + assert(checkseg.sh == prevseg.sh); + break; + } + spivotself(neighsh); + assert(neighsh.sh != NULL); + if (sorg(neighsh) != delpt) sesymself(neighsh); + } + // Now neighsh is [a, p, #2]. + if (neighsh.sh != startsh.sh) { + // Detach the two subsegments [a,p] and [p,b] from subfaces. + ssdissolve(startsh); + ssdissolve(neighsh); + // Create a degenerated subface [a,b,p]. It is used to: (1) hold the + // new segment [a,b]; (2) connect to the two adjacent subfaces + // [p,b,#] and [a,p,#]. + makeshellface(subfaces, &fakesh); + setshvertices(fakesh, pa, pb, delpt); + setshellmark(fakesh, shellmark(startsh)); + // Connect fakesh to the segment [a,b]. + ssbond(fakesh, abseg); + // Connect fakesh to adjacent subfaces: [p,b,#1] and [a,p,#2]. + senext(fakesh, nextsh); + sbond(nextsh, startsh); + senext2(fakesh, nextsh); + sbond(nextsh, neighsh); + smarktest(fakesh); // Mark it as faked. + } else { + // Special case. There exists already a degenerated face [a,b,p]! + // There is no need to create a faked subface here. + senext2self(neighsh); // [a,b,p] + assert(sapex(neighsh) == delpt); + // Since we will re-connect the face ring using the faked subfaces. + // We put the adjacent face of [a,b,p] to the list. + spivot(neighsh, startsh); // The original adjacent subface. + if (sorg(startsh) != pa) sesymself(startsh); + sdissolve(startsh); + // Connect fakesh to the segment [a,b]. + ssbond(startsh, abseg); + fakesh = startsh; // Do not mark it! + // Delete the degenerated subface. + shellfacedealloc(subfaces, neighsh.sh); + } + // Save the fakesh in list (for re-creating the face ring). + cavesegshlist->newindex((void **) &parysh); + *parysh = fakesh; + } // i + caveshlist->restart(); + + // Re-create the face ring. + if (cavesegshlist->objects > 1) { + for (i = 0; i < cavesegshlist->objects; i++) { + parysh = (face *) fastlookup(cavesegshlist, i); + fakesh = *parysh; + // Get the next face in the ring. + j = (i + 1) % cavesegshlist->objects; + parysh = (face *) fastlookup(cavesegshlist, j); + nextsh = *parysh; + sbond1(fakesh, nextsh); + } + } + + // Delete the two subsegments containing p. + shellfacedealloc(subsegs, parentseg->sh); + shellfacedealloc(subsegs, prevseg.sh); + // Return the new segment. + *parentseg = abseg; + } else { + // p is inside the surface. + if (b->verbose > 2) { + printf(" Remove vertex %d from surface.\n", pointmark(delpt)); + } + assert(sorg(*parentsh) == delpt); + // Let 'delpt' be its apex. + senextself(*parentsh); + // For unifying the code, we add parentsh to list. + cavesegshlist->newindex((void **) &parysh); + *parysh = *parentsh; + } + + // Remove the point (p). + + for (it = 0; it < cavesegshlist->objects; it++) { + parentsh = (face *) fastlookup(cavesegshlist, it); // [a,b,p] + senextself(*parentsh); // [b,p,a]. + spivotself(*parentsh); + if (sorg(*parentsh) != delpt) sesymself(*parentsh); + // now parentsh is [p,b,#]. + if (sorg(*parentsh) != delpt) { + // The vertex has already been removed in above special case. + assert(!smarktested(*parentsh)); + continue; + } + + while (1) { + // Initialize the flip edge list. Re-use 'caveshlist'. + spinsh = *parentsh; // [p, b, #] + while (1) { + caveshlist->newindex((void **) &parysh); + *parysh = spinsh; + senext2self(spinsh); + spivotself(spinsh); + assert(spinsh.sh != NULL); + if (spinsh.sh == parentsh->sh) break; + if (sorg(spinsh) != delpt) sesymself(spinsh); + assert(sorg(spinsh) == delpt); + } // while (1) + + if (caveshlist->objects == 3) { + // Delete the point by a 3-to-1 flip. + for (i = 0; i < 3; i++) { + parysh = (face *) fastlookup(caveshlist, i); + flipfaces[i] = *parysh; + } + flip31(flipfaces, lawson); + for (i = 0; i < 3; i++) { + shellfacedealloc(subfaces, flipfaces[i].sh); + } + caveshlist->restart(); + // Save the new subface. + caveshbdlist->newindex((void **) &parysh); + *parysh = flipfaces[3]; + // The vertex is removed. + break; + } + + // Search an edge to flip. + for (i = 0; i < caveshlist->objects; i++) { + parysh = (face *) fastlookup(caveshlist, i); + flipfaces[0] = *parysh; + spivot(flipfaces[0], flipfaces[1]); + if (sorg(flipfaces[0]) != sdest(flipfaces[1])) + sesymself(flipfaces[1]); + // Skip this edge if it belongs to a faked subface. + if (!smarktested(flipfaces[0]) && !smarktested(flipfaces[1])) { + pa = sorg(flipfaces[0]); + pb = sdest(flipfaces[0]); + pc = sapex(flipfaces[0]); + pd = sapex(flipfaces[1]); + calculateabovepoint4(pa, pb, pc, pd); + // Check if a 2-to-2 flip is possible. + ori1 = orient3d(pc, pd, dummypoint, pa); + ori2 = orient3d(pc, pd, dummypoint, pb); + if (ori1 * ori2 < 0) { + // A 2-to-2 flip is found. + flip22(flipfaces, lawson, 0); + // The i-th edge is flipped. The i-th and (i-1)-th subfaces are + // changed. The 'flipfaces[1]' contains p as its apex. + senext2(flipfaces[1], *parentsh); + // Save the new subface. + caveshbdlist->newindex((void **) &parysh); + *parysh = flipfaces[0]; + break; + } + } // + } // i + + if (i == caveshlist->objects) { + // This can happen only if there are 4 edges at p, and they are + // orthogonal to each other, see Fig. 2010-11-01. + assert(caveshlist->objects == 4); + // Do a flip22 and a flip31 to remove p. + parysh = (face *) fastlookup(caveshlist, 0); + flipfaces[0] = *parysh; + spivot(flipfaces[0], flipfaces[1]); + if (sorg(flipfaces[0]) != sdest(flipfaces[1])) { + sesymself(flipfaces[1]); + } + flip22(flipfaces, lawson, 0); + senext2(flipfaces[1], *parentsh); + // Save the new subface. + caveshbdlist->newindex((void **) &parysh); + *parysh = flipfaces[0]; + } + + // The edge list at p are changed. + caveshlist->restart(); + } // while (1) + + } // it + + cavesegshlist->restart(); + + if (b->verbose > 2) { + printf(" Created %ld new subfaces.\n", caveshbdlist->objects); + } + + + if (lawson) { + lawsonflip(); + } + + return 0; +} + +enum meshGRegionBoundaryRecovery::locateresult + meshGRegionBoundaryRecovery::slocate(point searchpt, face* searchsh, + int aflag, int cflag, int rflag) +{ + face neighsh; + point pa, pb, pc; + enum locateresult loc; + enum {MOVE_BC, MOVE_CA} nextmove; + REAL ori, ori_bc, ori_ca; + int i; + + pa = sorg(*searchsh); + pb = sdest(*searchsh); + pc = sapex(*searchsh); + + if (!aflag) { + // No above point is given. Calculate an above point for this facet. + calculateabovepoint4(pa, pb, pc, searchpt); + } + + // 'dummypoint' is given. Make sure it is above [a,b,c] + ori = orient3d(pa, pb, pc, dummypoint); + assert(ori != 0); // SELF_CHECK + if (ori > 0) { + sesymself(*searchsh); // Reverse the face orientation. + } + + // Find an edge of the face s.t. p lies on its right-hand side (CCW). + for (i = 0; i < 3; i++) { + pa = sorg(*searchsh); + pb = sdest(*searchsh); + ori = orient3d(pa, pb, dummypoint, searchpt); + if (ori > 0) break; + senextself(*searchsh); + } + assert(i < 3); // SELF_CHECK + + pc = sapex(*searchsh); + + if (pc == searchpt) { + senext2self(*searchsh); + return ONVERTEX; + } + + while (1) { + + ori_bc = orient3d(pb, pc, dummypoint, searchpt); + ori_ca = orient3d(pc, pa, dummypoint, searchpt); + + if (ori_bc < 0) { + if (ori_ca < 0) { // (--) + // Any of the edges is a viable move. + if (randomnation(2)) { + nextmove = MOVE_CA; + } else { + nextmove = MOVE_BC; + } + } else { // (-#) + // Edge [b, c] is viable. + nextmove = MOVE_BC; + } + } else { + if (ori_ca < 0) { // (#-) + // Edge [c, a] is viable. + nextmove = MOVE_CA; + } else { + if (ori_bc > 0) { + if (ori_ca > 0) { // (++) + loc = ONFACE; // Inside [a, b, c]. + break; + } else { // (+0) + senext2self(*searchsh); // On edge [c, a]. + loc = ONEDGE; + break; + } + } else { // ori_bc == 0 + if (ori_ca > 0) { // (0+) + senextself(*searchsh); // On edge [b, c]. + loc = ONEDGE; + break; + } else { // (00) + // p is coincident with vertex c. + senext2self(*searchsh); + return ONVERTEX; + } + } + } + } + + // Move to the next face. + if (nextmove == MOVE_BC) { + senextself(*searchsh); + } else { + senext2self(*searchsh); + } + if (!cflag) { + // NON-convex case. Check if we will cross a boundary. + if (isshsubseg(*searchsh)) { + return ENCSEGMENT; + } + } + spivot(*searchsh, neighsh); + if (neighsh.sh == NULL) { + return OUTSIDE; // A hull edge. + } + // Adjust the edge orientation. + if (sorg(neighsh) != sdest(*searchsh)) { + sesymself(neighsh); + } + assert(sorg(neighsh) == sdest(*searchsh)); // SELF_CHECK + + // Update the newly discovered face and its endpoints. + *searchsh = neighsh; + pa = sorg(*searchsh); + pb = sdest(*searchsh); + pc = sapex(*searchsh); + + if (pc == searchpt) { + senext2self(*searchsh); + return ONVERTEX; + } + + } // while (1) + + // assert(loc == ONFACE || loc == ONEDGE); + + + if (rflag) { + // Round the locate result before return. + REAL n[3], area_abc, area_abp, area_bcp, area_cap; + + pa = sorg(*searchsh); + pb = sdest(*searchsh); + pc = sapex(*searchsh); + + facenormal(pa, pb, pc, n, 1, NULL); + area_abc = sqrt(dot(n, n)); + + facenormal(pb, pc, searchpt, n, 1, NULL); + area_bcp = sqrt(dot(n, n)); + if ((area_bcp / area_abc) < b->epsilon) { + area_bcp = 0; // Rounding. + } + + facenormal(pc, pa, searchpt, n, 1, NULL); + area_cap = sqrt(dot(n, n)); + if ((area_cap / area_abc) < b->epsilon) { + area_cap = 0; // Rounding + } + + if ((loc == ONFACE) || (loc == OUTSIDE)) { + facenormal(pa, pb, searchpt, n, 1, NULL); + area_abp = sqrt(dot(n, n)); + if ((area_abp / area_abc) < b->epsilon) { + area_abp = 0; // Rounding + } + } else { // loc == ONEDGE + area_abp = 0; + } + + if (area_abp == 0) { + if (area_bcp == 0) { + assert(area_cap != 0); + senextself(*searchsh); + loc = ONVERTEX; // p is close to b. + } else { + if (area_cap == 0) { + loc = ONVERTEX; // p is close to a. + } else { + loc = ONEDGE; // p is on edge [a,b]. + } + } + } else if (area_bcp == 0) { + if (area_cap == 0) { + senext2self(*searchsh); + loc = ONVERTEX; // p is close to c. + } else { + senextself(*searchsh); + loc = ONEDGE; // p is on edge [b,c]. + } + } else if (area_cap == 0) { + senext2self(*searchsh); + loc = ONEDGE; // p is on edge [c,a]. + } else { + loc = ONFACE; // p is on face [a,b,c]. + } + } // if (rflag) + + return loc; +} + +//// //// +//// //// +//// surface_cxx ////////////////////////////////////////////////////////////// + +//// steiner_cxx ////////////////////////////////////////////////////////////// +//// //// +//// //// + +enum meshGRegionBoundaryRecovery::interresult + meshGRegionBoundaryRecovery::finddirection(triface* searchtet, point endpt) +{ + triface neightet; + point pa, pb, pc, pd; + enum {HMOVE, RMOVE, LMOVE} nextmove; + REAL hori, rori, lori; + int t1ver; + int s; + + // The origin is fixed. + pa = org(*searchtet); + if ((point) searchtet->tet[7] == dummypoint) { + // A hull tet. Choose the neighbor of its base face. + decode(searchtet->tet[3], *searchtet); + // Reset the origin to be pa. + if ((point) searchtet->tet[4] == pa) { + searchtet->ver = 11; + } else if ((point) searchtet->tet[5] == pa) { + searchtet->ver = 3; + } else if ((point) searchtet->tet[6] == pa) { + searchtet->ver = 7; + } else { + assert((point) searchtet->tet[7] == pa); + searchtet->ver = 0; + } + } + + pb = dest(*searchtet); + // Check whether the destination or apex is 'endpt'. + if (pb == endpt) { + // pa->pb is the search edge. + return ACROSSVERT; + } + + pc = apex(*searchtet); + if (pc == endpt) { + // pa->pc is the search edge. + eprevesymself(*searchtet); + return ACROSSVERT; + } + + // Walk through tets around pa until the right one is found. + while (1) { + + pd = oppo(*searchtet); + // Check whether the opposite vertex is 'endpt'. + if (pd == endpt) { + // pa->pd is the search edge. + esymself(*searchtet); + enextself(*searchtet); + return ACROSSVERT; + } + // Check if we have entered outside of the domain. + if (pd == dummypoint) { + // This is possible when the mesh is non-convex. + assert(nonconvex); + return ACROSSSUB; // Hit a bounday. + } + + // Now assume that the base face abc coincides with the horizon plane, + // and d lies above the horizon. The search point 'endpt' may lie + // above or below the horizon. We test the orientations of 'endpt' + // with respect to three planes: abc (horizon), bad (right plane), + // and acd (left plane). + hori = orient3d(pa, pb, pc, endpt); + rori = orient3d(pb, pa, pd, endpt); + lori = orient3d(pa, pc, pd, endpt); + + // Now decide the tet to move. It is possible there are more than one + // tets are viable moves. Is so, randomly choose one. + if (hori > 0) { + if (rori > 0) { + if (lori > 0) { + // Any of the three neighbors is a viable move. + s = randomnation(3); + if (s == 0) { + nextmove = HMOVE; + } else if (s == 1) { + nextmove = RMOVE; + } else { + nextmove = LMOVE; + } + } else { + // Two tets, below horizon and below right, are viable. + //s = randomnation(2); + if (randomnation(2)) { + nextmove = HMOVE; + } else { + nextmove = RMOVE; + } + } + } else { + if (lori > 0) { + // Two tets, below horizon and below left, are viable. + //s = randomnation(2); + if (randomnation(2)) { + nextmove = HMOVE; + } else { + nextmove = LMOVE; + } + } else { + // The tet below horizon is chosen. + nextmove = HMOVE; + } + } + } else { + if (rori > 0) { + if (lori > 0) { + // Two tets, below right and below left, are viable. + //s = randomnation(2); + if (randomnation(2)) { + nextmove = RMOVE; + } else { + nextmove = LMOVE; + } + } else { + // The tet below right is chosen. + nextmove = RMOVE; + } + } else { + if (lori > 0) { + // The tet below left is chosen. + nextmove = LMOVE; + } else { + // 'endpt' lies either on the plane(s) or across face bcd. + if (hori == 0) { + if (rori == 0) { + // pa->'endpt' is COLLINEAR with pa->pb. + return ACROSSVERT; + } + if (lori == 0) { + // pa->'endpt' is COLLINEAR with pa->pc. + eprevesymself(*searchtet); // // [a,c,d] + return ACROSSVERT; + } + // pa->'endpt' crosses the edge pb->pc. + return ACROSSEDGE; + } + if (rori == 0) { + if (lori == 0) { + // pa->'endpt' is COLLINEAR with pa->pd. + esymself(*searchtet); // face bad. + enextself(*searchtet); // face [a,d,b] + return ACROSSVERT; + } + // pa->'endpt' crosses the edge pb->pd. + esymself(*searchtet); // face bad. + enextself(*searchtet); // face adb + return ACROSSEDGE; + } + if (lori == 0) { + // pa->'endpt' crosses the edge pc->pd. + eprevesymself(*searchtet); // [a,c,d] + return ACROSSEDGE; + } + // pa->'endpt' crosses the face bcd. + return ACROSSFACE; + } + } + } + + // Move to the next tet, fix pa as its origin. + if (nextmove == RMOVE) { + fnextself(*searchtet); + } else if (nextmove == LMOVE) { + eprevself(*searchtet); + fnextself(*searchtet); + enextself(*searchtet); + } else { // HMOVE + fsymself(*searchtet); + enextself(*searchtet); + } + assert(org(*searchtet) == pa); + pb = dest(*searchtet); + pc = apex(*searchtet); + + } // while (1) +} + +int meshGRegionBoundaryRecovery::checkflipeligibility(int fliptype, point pa, + point pb, point pc, point pd, point pe, int level, int edgepivot, + flipconstraints* fc) +{ + point tmppts[3]; + enum interresult dir; + int types[2], poss[4]; + int intflag; + int rejflag = 0; + int i; + + if (fc->seg[0] != NULL) { + // A constraining edge is given (e.g., for edge recovery). + if (fliptype == 1) { + // A 2-to-3 flip: [a,b,c] => [e,d,a], [e,d,b], [e,d,c]. + tmppts[0] = pa; + tmppts[1] = pb; + tmppts[2] = pc; + for (i = 0; i < 3 && !rejflag; i++) { + if (tmppts[i] != dummypoint) { + // Test if the face [e,d,#] intersects the edge. + intflag = tri_edge_test(pe, pd, tmppts[i], fc->seg[0], fc->seg[1], + NULL, 1, types, poss); + if (intflag == 2) { + // They intersect at a single point. + dir = (enum interresult) types[0]; + if (dir == ACROSSFACE) { + // The interior of [e,d,#] intersect the segment. + rejflag = 1; + } else if (dir == ACROSSEDGE) { + if (poss[0] == 0) { + // The interior of [e,d] intersect the segment. + // Since [e,d] is the newly created edge. Reject this flip. + rejflag = 1; + } + } + } else if (intflag == 4) { + // They may intersect at either a point or a line segment. + dir = (enum interresult) types[0]; + if (dir == ACROSSEDGE) { + if (poss[0] == 0) { + // The interior of [e,d] intersect the segment. + // Since [e,d] is the newly created edge. Reject this flip. + rejflag = 1; + } + } + } + } // if (tmppts[0] != dummypoint) + } // i + } else if (fliptype == 2) { + // A 3-to-2 flip: [e,d,a], [e,d,b], [e,d,c] => [a,b,c] + if (pc != dummypoint) { + // Check if the new face [a,b,c] intersect the edge in its interior. + intflag = tri_edge_test(pa, pb, pc, fc->seg[0], fc->seg[1], NULL, + 1, types, poss); + if (intflag == 2) { + // They intersect at a single point. + dir = (enum interresult) types[0]; + if (dir == ACROSSFACE) { + // The interior of [a,b,c] intersect the segment. + rejflag = 1; // Do not flip. + } + } else if (intflag == 4) { + // [a,b,c] is coplanar with the edge. + dir = (enum interresult) types[0]; + if (dir == ACROSSEDGE) { + // The boundary of [a,b,c] intersect the segment. + rejflag = 1; // Do not flip. + } + } + } // if (pc != dummypoint) + } + } // if (fc->seg[0] != NULL) + + if ((fc->fac[0] != NULL) && !rejflag) { + // A constraining face is given (e.g., for face recovery). + if (fliptype == 1) { + // A 2-to-3 flip. + // Test if the new edge [e,d] intersects the face. + intflag = tri_edge_test(fc->fac[0], fc->fac[1], fc->fac[2], pe, pd, + NULL, 1, types, poss); + if (intflag == 2) { + // They intersect at a single point. + dir = (enum interresult) types[0]; + if (dir == ACROSSFACE) { + rejflag = 1; + } else if (dir == ACROSSEDGE) { + rejflag = 1; + } + } else if (intflag == 4) { + // The edge [e,d] is coplanar with the face. + // There may be two intersections. + for (i = 0; i < 2 && !rejflag; i++) { + dir = (enum interresult) types[i]; + if (dir == ACROSSFACE) { + rejflag = 1; + } else if (dir == ACROSSEDGE) { + rejflag = 1; + } + } + } + } // if (fliptype == 1) + } // if (fc->fac[0] != NULL) + + if ((fc->remvert != NULL) && !rejflag) { + // The vertex is going to be removed. Do not create a new edge which + // contains this vertex. + if (fliptype == 1) { + // A 2-to-3 flip. + if ((pd == fc->remvert) || (pe == fc->remvert)) { + rejflag = 1; + } + } + } + + if (fc->remove_large_angle && !rejflag) { + // Remove a large dihedral angle. Do not create a new small angle. + REAL cosmaxd = 0, diff; + if (fliptype == 1) { + // We assume that neither 'a' nor 'b' is dummypoint. + assert((pa != dummypoint) && (pb != dummypoint)); // SELF_CHECK + // A 2-to-3 flip: [a,b,c] => [e,d,a], [e,d,b], [e,d,c]. + // The new tet [e,d,a,b] will be flipped later. Only two new tets: + // [e,d,b,c] and [e,d,c,a] need to be checked. + if ((pc != dummypoint) && (pe != dummypoint) && (pd != dummypoint)) { + // Get the largest dihedral angle of [e,d,b,c]. + tetalldihedral(pe, pd, pb, pc, NULL, &cosmaxd, NULL); + diff = cosmaxd - fc->cosdihed_in; + if (fabs(diff/fc->cosdihed_in) < b->epsilon) diff = 0.0; // Rounding. + if (diff <= 0) { //if (cosmaxd <= fc->cosdihed_in) { + rejflag = 1; + } else { + // Record the largest new angle. + if (cosmaxd < fc->cosdihed_out) { + fc->cosdihed_out = cosmaxd; + } + // Get the largest dihedral angle of [e,d,c,a]. + tetalldihedral(pe, pd, pc, pa, NULL, &cosmaxd, NULL); + diff = cosmaxd - fc->cosdihed_in; + if (fabs(diff/fc->cosdihed_in) < b->epsilon) diff = 0.0; // Rounding. + if (diff <= 0) { //if (cosmaxd <= fc->cosdihed_in) { + rejflag = 1; + } else { + // Record the largest new angle. + if (cosmaxd < fc->cosdihed_out) { + fc->cosdihed_out = cosmaxd; + } + } + } + } // if (pc != dummypoint && ...) + } else if (fliptype == 2) { + // A 3-to-2 flip: [e,d,a], [e,d,b], [e,d,c] => [a,b,c] + // We assume that neither 'e' nor 'd' is dummypoint. + assert((pe != dummypoint) && (pd != dummypoint)); // SELF_CHECK + if (level == 0) { + // Both new tets [a,b,c,d] and [b,a,c,e] are new tets. + if ((pa != dummypoint) && (pb != dummypoint) && (pc != dummypoint)) { + // Get the largest dihedral angle of [a,b,c,d]. + tetalldihedral(pa, pb, pc, pd, NULL, &cosmaxd, NULL); + diff = cosmaxd - fc->cosdihed_in; + if (fabs(diff/fc->cosdihed_in) < b->epsilon) diff = 0.0; // Rounding + if (diff <= 0) { //if (cosmaxd <= fc->cosdihed_in) { + rejflag = 1; + } else { + // Record the largest new angle. + if (cosmaxd < fc->cosdihed_out) { + fc->cosdihed_out = cosmaxd; + } + // Get the largest dihedral angle of [b,a,c,e]. + tetalldihedral(pb, pa, pc, pe, NULL, &cosmaxd, NULL); + diff = cosmaxd - fc->cosdihed_in; + if (fabs(diff/fc->cosdihed_in) < b->epsilon) diff = 0.0;// Rounding + if (diff <= 0) { //if (cosmaxd <= fc->cosdihed_in) { + rejflag = 1; + } else { + // Record the largest new angle. + if (cosmaxd < fc->cosdihed_out) { + fc->cosdihed_out = cosmaxd; + } + } + } + } + } else { // level > 0 + assert(edgepivot != 0); + if (edgepivot == 1) { + // The new tet [a,b,c,d] will be flipped. Only check [b,a,c,e]. + if ((pa != dummypoint) && (pb != dummypoint) && (pc != dummypoint)) { + // Get the largest dihedral angle of [b,a,c,e]. + tetalldihedral(pb, pa, pc, pe, NULL, &cosmaxd, NULL); + diff = cosmaxd - fc->cosdihed_in; + if (fabs(diff/fc->cosdihed_in) < b->epsilon) diff = 0.0;// Rounding + if (diff <= 0) { //if (cosmaxd <= fc->cosdihed_in) { + rejflag = 1; + } else { + // Record the largest new angle. + if (cosmaxd < fc->cosdihed_out) { + fc->cosdihed_out = cosmaxd; + } + } + } + } else { + assert(edgepivot == 2); + // The new tet [b,a,c,e] will be flipped. Only check [a,b,c,d]. + if ((pa != dummypoint) && (pb != dummypoint) && (pc != dummypoint)) { + // Get the largest dihedral angle of [b,a,c,e]. + tetalldihedral(pa, pb, pc, pd, NULL, &cosmaxd, NULL); + diff = cosmaxd - fc->cosdihed_in; + if (fabs(diff/fc->cosdihed_in) < b->epsilon) diff = 0.0;// Rounding + if (diff <= 0) { //if (cosmaxd <= fc->cosdihed_in) { + rejflag = 1; + } else { + // Record the largest new angle. + if (cosmaxd < fc->cosdihed_out) { + fc->cosdihed_out = cosmaxd; + } + } + } + } // edgepivot + } // level + } + } + + return rejflag; +} + +int meshGRegionBoundaryRecovery::removeedgebyflips(triface *flipedge, flipconstraints* fc) +{ + triface *abtets, spintet; + int t1ver; + int n, nn, i; + + + if (checksubsegflag) { + // Do not flip a segment. + if (issubseg(*flipedge)) { + if (fc->collectencsegflag) { + face checkseg, *paryseg; + tsspivot1(*flipedge, checkseg); + if (!sinfected(checkseg)) { + // Queue this segment in list. + sinfect(checkseg); + caveencseglist->newindex((void **) &paryseg); + *paryseg = checkseg; + } + } + return 0; + } + } + + // Count the number of tets at edge [a,b]. + n = 0; + spintet = *flipedge; + while (1) { + n++; + fnextself(spintet); + if (spintet.tet == flipedge->tet) break; + } + assert(n >= 3); + + if ((b->flipstarsize > 0) && (n > b->flipstarsize)) { + // The star size exceeds the limit. + return 0; // Do not flip it. + } + + // Allocate spaces. + abtets = new triface[n]; + // Collect the tets at edge [a,b]. + spintet = *flipedge; + i = 0; + while (1) { + abtets[i] = spintet; + setelemcounter(abtets[i], 1); + i++; + fnextself(spintet); + if (spintet.tet == flipedge->tet) break; + } + + + // Try to flip the edge (level = 0, edgepivot = 0). + nn = flipnm(abtets, n, 0, 0, fc); + + + if (nn > 2) { + // Edge is not flipped. Unmarktest the remaining tets in Star(ab). + for (i = 0; i < nn; i++) { + setelemcounter(abtets[i], 0); + } + // Restore the input edge (needed by Lawson's flip). + *flipedge = abtets[0]; + } + + // Release the temporary allocated spaces. + // NOTE: fc->unflip must be 0. + int bakunflip = fc->unflip; + fc->unflip = 0; + flipnm_post(abtets, n, nn, 0, fc); + fc->unflip = bakunflip; + + delete [] abtets; + + return nn; +} + +int meshGRegionBoundaryRecovery::removefacebyflips(triface *flipface, flipconstraints* fc) +{ + if (checksubfaceflag) { + if (issubface(*flipface)) { + return 0; + } + } + + triface fliptets[3], flipedge; + point pa, pb, pc, pd, pe; + REAL ori; + int reducflag = 0; + + fliptets[0] = *flipface; + fsym(*flipface, fliptets[1]); + pa = org(fliptets[0]); + pb = dest(fliptets[0]); + pc = apex(fliptets[0]); + pd = oppo(fliptets[0]); + pe = oppo(fliptets[1]); + + ori = orient3d(pa, pb, pd, pe); + if (ori > 0) { + ori = orient3d(pb, pc, pd, pe); + if (ori > 0) { + ori = orient3d(pc, pa, pd, pe); + if (ori > 0) { + // Found a 2-to-3 flip. + reducflag = 1; + } else { + eprev(*flipface, flipedge); // [c,a] + } + } else { + enext(*flipface, flipedge); // [b,c] + } + } else { + flipedge = *flipface; // [a,b] + } + + if (reducflag) { + // A 2-to-3 flip is found. + flip23(fliptets, 0, fc); + return 1; + } else { + // Try to flip the selected edge of this face. + if (removeedgebyflips(&flipedge, fc) == 2) { + return 1; + } + } + + // Face is not removed. + return 0; +} + +int meshGRegionBoundaryRecovery::recoveredgebyflips(point startpt, + point endpt, triface* searchtet, int fullsearch) +{ + flipconstraints fc; + enum interresult dir; + + fc.seg[0] = startpt; + fc.seg[1] = endpt; + fc.checkflipeligibility = 1; + + // The mainloop of the edge reocvery. + while (1) { // Loop I + + // Search the edge from 'startpt'. + point2tetorg(startpt, *searchtet); + dir = finddirection(searchtet, endpt); + if (dir == ACROSSVERT) { + if (dest(*searchtet) == endpt) { + return 1; // Edge is recovered. + } else { + terminateBoundaryRecovery(this, 3); // // It may be a PLC problem. + } + } + + // The edge is missing. + + // Try to flip the first intersecting face/edge. + enextesymself(*searchtet); // Go to the opposite face. + if (dir == ACROSSFACE) { + // A face is intersected with the segment. Try to flip it. + if (removefacebyflips(searchtet, &fc)) { + continue; + } + } else if (dir == ACROSSEDGE) { + // An edge is intersected with the segment. Try to flip it. + if (removeedgebyflips(searchtet, &fc) == 2) { + continue; + } + } else { + terminateBoundaryRecovery(this, 3); // It may be a PLC problem. + } + + // The edge is missing. + + if (fullsearch) { + // Try to flip one of the faces/edges which intersects the edge. + triface neightet, spintet; + point pa, pb, pc, pd; + badface bakface; + enum interresult dir1; + int types[2], poss[4], pos = 0; + int success = 0; + int t1ver; + int i, j; + + // Loop through the sequence of intersecting faces/edges from + // 'startpt' to 'endpt'. + point2tetorg(startpt, *searchtet); + dir = finddirection(searchtet, endpt); + //assert(dir != ACROSSVERT); + + // Go to the face/edge intersecting the searching edge. + enextesymself(*searchtet); // Go to the opposite face. + // This face/edge has been tried in previous step. + + while (1) { // Loop I-I + + // Find the next intersecting face/edge. + fsymself(*searchtet); + if (dir == ACROSSFACE) { + neightet = *searchtet; + j = (neightet.ver & 3); // j is the current face number. + for (i = j + 1; i < j + 4; i++) { + neightet.ver = (i % 4); + pa = org(neightet); + pb = dest(neightet); + pc = apex(neightet); + pd = oppo(neightet); // The above point. + if (tri_edge_test(pa,pb,pc,startpt,endpt, pd, 1, types, poss)) { + dir = (enum interresult) types[0]; + pos = poss[0]; + break; + } else { + dir = DISJOINT; + pos = 0; + } + } // i + // There must be an intersection face/edge. + assert(dir != DISJOINT); // SELF_CHECK + } else { + assert(dir == ACROSSEDGE); + while (1) { // Loop I-I-I + // Check the two opposite faces (of the edge) in 'searchtet'. + for (i = 0; i < 2; i++) { + if (i == 0) { + enextesym(*searchtet, neightet); + } else { + eprevesym(*searchtet, neightet); + } + pa = org(neightet); + pb = dest(neightet); + pc = apex(neightet); + pd = oppo(neightet); // The above point. + if (tri_edge_test(pa,pb,pc,startpt,endpt,pd,1, types, poss)) { + dir = (enum interresult) types[0]; + pos = poss[0]; + break; // for loop + } else { + dir = DISJOINT; + pos = 0; + } + } // i + if (dir != DISJOINT) { + // Find an intersection face/edge. + break; // Loop I-I-I + } + // No intersection. Rotate to the next tet at the edge. + fnextself(*searchtet); + } // while (1) // Loop I-I-I + } + + // Adjust to the intersecting edge/vertex. + for (i = 0; i < pos; i++) { + enextself(neightet); + } + + if (dir == SHAREVERT) { + // Check if we have reached the 'endpt'. + pd = org(neightet); + if (pd == endpt) { + // Failed to recover the edge. + break; // Loop I-I + } else { + // We need to further check this case. It might be a PLC problem + // or a Steiner point that was added at a bad location. + assert(0); + } + } + + // The next to be flipped face/edge. + *searchtet = neightet; + + // Bakup this face (tetrahedron). + bakface.forg = org(*searchtet); + bakface.fdest = dest(*searchtet); + bakface.fapex = apex(*searchtet); + bakface.foppo = oppo(*searchtet); + + // Try to flip this intersecting face/edge. + if (dir == ACROSSFACE) { + if (removefacebyflips(searchtet, &fc)) { + success = 1; + break; // Loop I-I + } + } else if (dir == ACROSSEDGE) { + if (removeedgebyflips(searchtet, &fc) == 2) { + success = 1; + break; // Loop I-I + } + } else { + assert(0); // A PLC problem. + } + + // The face/edge is not flipped. + if ((searchtet->tet == NULL) || + (org(*searchtet) != bakface.forg) || + (dest(*searchtet) != bakface.fdest) || + (apex(*searchtet) != bakface.fapex) || + (oppo(*searchtet) != bakface.foppo)) { + // 'searchtet' was flipped. We must restore it. + point2tetorg(bakface.forg, *searchtet); + dir1 = finddirection(searchtet, bakface.fdest); + if (dir1 == ACROSSVERT) { + assert(dest(*searchtet) == bakface.fdest); + spintet = *searchtet; + while (1) { + if (apex(spintet) == bakface.fapex) { + // Found the face. + *searchtet = spintet; + break; + } + fnextself(spintet); + if (spintet.tet == searchtet->tet) { + searchtet->tet = NULL; + break; // Not find. + } + } // while (1) + if (searchtet->tet != NULL) { + if (oppo(*searchtet) != bakface.foppo) { + fsymself(*searchtet); + if (oppo(*searchtet) != bakface.foppo) { + assert(0); // Check this case. + searchtet->tet = NULL; + break; // Not find. + } + } + } + } else { + searchtet->tet = NULL; // Not find. + } + if (searchtet->tet == NULL) { + success = 0; // This face/edge has been destroyed. + break; // Loop I-I + } + } + } // while (1) // Loop I-I + + if (success) { + // One of intersecting faces/edges is flipped. + continue; + } + + } // if (fullsearch) + + // The edge is missing. + break; // Loop I + + } // while (1) // Loop I + + return 0; +} + +int meshGRegionBoundaryRecovery:: + add_steinerpt_in_schoenhardtpoly(triface *abtets, int n, int chkencflag) +{ + triface worktet, *parytet; + triface faketet1, faketet2; + point pc, pd, steinerpt; + insertvertexflags ivf; + optparameters opm; + REAL vcd[3], sampt[3], smtpt[3]; + REAL maxminvol = 0.0, minvol = 0.0, ori; + int success, maxidx = 0; + int it, i; + + + pc = apex(abtets[0]); // pc = p0 + pd = oppo(abtets[n-1]); // pd = p_(n-1) + + + // Find an optimial point in edge [c,d]. It is visible by all outer faces + // of 'abtets', and it maxmizes the min volume. + + // initialize the list of 2n boundary faces. + for (i = 0; i < n; i++) { + edestoppo(abtets[i], worktet); // [p_i,p_i+1,a] + cavetetlist->newindex((void **) &parytet); + *parytet = worktet; + eorgoppo(abtets[i], worktet); // [p_i+1,p_i,b] + cavetetlist->newindex((void **) &parytet); + *parytet = worktet; + } + + int N = 100; + REAL stepi = 0.01; + + // Search the point along the edge [c,d]. + for (i = 0; i < 3; i++) vcd[i] = pd[i] - pc[i]; + + // Sample N points in edge [c,d]. + for (it = 1; it < N; it++) { + for (i = 0; i < 3; i++) { + sampt[i] = pc[i] + (stepi * (double) it) * vcd[i]; + } + for (i = 0; i < cavetetlist->objects; i++) { + parytet = (triface *) fastlookup(cavetetlist, i); + ori = orient3d(dest(*parytet), org(*parytet), apex(*parytet), sampt); + if (i == 0) { + minvol = ori; + } else { + if (minvol > ori) minvol = ori; + } + } // i + if (it == 1) { + maxminvol = minvol; + maxidx = it; + } else { + if (maxminvol < minvol) { + maxminvol = minvol; + maxidx = it; + } + } + } // it + + if (maxminvol <= 0) { + cavetetlist->restart(); + return 0; + } + + for (i = 0; i < 3; i++) { + smtpt[i] = pc[i] + (stepi * (double) maxidx) * vcd[i]; + } + + // Create two faked tets to hold the two non-existing boundary faces: + // [d,c,a] and [c,d,b]. + maketetrahedron(&faketet1); + setvertices(faketet1, pd, pc, org(abtets[0]), dummypoint); + cavetetlist->newindex((void **) &parytet); + *parytet = faketet1; + maketetrahedron(&faketet2); + setvertices(faketet2, pc, pd, dest(abtets[0]), dummypoint); + cavetetlist->newindex((void **) &parytet); + *parytet = faketet2; + + // Point smooth options. + opm.max_min_volume = 1; + opm.numofsearchdirs = 20; + opm.searchstep = 0.001; + opm.maxiter = 100; // Limit the maximum iterations. + opm.initval = 0.0; // Initial volume is zero. + + // Try to relocate the point into the inside of the polyhedron. + success = smoothpoint(smtpt, cavetetlist, 1, &opm); + + if (success) { + while (opm.smthiter == 100) { + // It was relocated and the prescribed maximum iteration reached. + // Try to increase the search stepsize. + opm.searchstep *= 10.0; + //opm.maxiter = 100; // Limit the maximum iterations. + opm.initval = opm.imprval; + opm.smthiter = 0; // Init. + smoothpoint(smtpt, cavetetlist, 1, &opm); + } + } // if (success) + + // Delete the two faked tets. + tetrahedrondealloc(faketet1.tet); + tetrahedrondealloc(faketet2.tet); + + cavetetlist->restart(); + + if (!success) { + return 0; + } + + + // Insert the Steiner point. + makepoint(&steinerpt, FREEVOLVERTEX); + for (i = 0; i < 3; i++) steinerpt[i] = smtpt[i]; + + // Insert the created Steiner point. + for (i = 0; i < n; i++) { + infect(abtets[i]); + caveoldtetlist->newindex((void **) &parytet); + *parytet = abtets[i]; + } + worktet = abtets[0]; // No need point location. + ivf.iloc = (int) INSTAR; + ivf.chkencflag = chkencflag; + ivf.assignmeshsize = b->metric; + if (ivf.assignmeshsize) { + // Search the tet containing 'steinerpt' for size interpolation. + locate(steinerpt, &(abtets[0])); + worktet = abtets[0]; + } + + // Insert the new point into the tetrahedralization T. + // Note that T is convex (nonconvex = 0). + if (insertpoint(steinerpt, &worktet, NULL, NULL, &ivf)) { + // The vertex has been inserted. + st_volref_count++; + if (steinerleft > 0) steinerleft--; + return 1; + } else { + // Not inserted. + pointdealloc(steinerpt); + return 0; + } +} + +int meshGRegionBoundaryRecovery::add_steinerpt_in_segment(face* misseg, + int searchlevel) +{ + triface searchtet; + face *paryseg, candseg; + point startpt, endpt, pc, pd; + flipconstraints fc; + enum interresult dir; + REAL P[3], Q[3], tp, tq; + REAL len, smlen = 0, split = 0, split_q = 0; + int success; + int i; + + startpt = sorg(*misseg); + endpt = sdest(*misseg); + + fc.seg[0] = startpt; + fc.seg[1] = endpt; + fc.checkflipeligibility = 1; + fc.collectencsegflag = 1; + + point2tetorg(startpt, searchtet); + dir = finddirection(&searchtet, endpt); + //assert(dir != ACROSSVERT); + + // Try to flip the first intersecting face/edge. + enextesymself(searchtet); // Go to the opposite face. + + int bak_fliplinklevel = b->fliplinklevel; + b->fliplinklevel = searchlevel; + + if (dir == ACROSSFACE) { + // A face is intersected with the segment. Try to flip it. + success = removefacebyflips(&searchtet, &fc); + assert(success == 0); + } else if (dir == ACROSSEDGE) { + // An edge is intersected with the segment. Try to flip it. + success = removeedgebyflips(&searchtet, &fc); + assert(success != 2); + } else { + terminateBoundaryRecovery(this, 3); // It may be a PLC problem. + } + + split = 0; + for (i = 0; i < caveencseglist->objects; i++) { + paryseg = (face *) fastlookup(caveencseglist, i); + suninfect(*paryseg); + // Calculate the shortest edge between the two lines. + pc = sorg(*paryseg); + pd = sdest(*paryseg); + tp = tq = 0; + if (linelineint(startpt, endpt, pc, pd, P, Q, &tp, &tq)) { + // Does the shortest edge lie between the two segments? + // Round tp and tq. + if ((tp > 0) && (tq < 1)) { + if (tp < 0.5) { + if (tp < (b->epsilon * 1e+3)) tp = 0.0; + } else { + if ((1.0 - tp) < (b->epsilon * 1e+3)) tp = 1.0; + } + } + if ((tp <= 0) || (tp >= 1)) continue; + if ((tq > 0) && (tq < 1)) { + if (tq < 0.5) { + if (tq < (b->epsilon * 1e+3)) tq = 0.0; + } else { + if ((1.0 - tq) < (b->epsilon * 1e+3)) tq = 1.0; + } + } + if ((tq <= 0) || (tq >= 1)) continue; + // It is a valid shortest edge. Calculate its length. + len = distance(P, Q); + if (split == 0) { + smlen = len; + split = tp; + split_q = tq; + candseg = *paryseg; + } else { + if (len < smlen) { + smlen = len; + split = tp; + split_q = tq; + candseg = *paryseg; + } + } + } + } + + caveencseglist->restart(); + b->fliplinklevel = bak_fliplinklevel; + + if (split == 0) { + // Found no crossing segment. + return 0; + } + + face splitsh; + face splitseg; + point steinerpt, *parypt; + insertvertexflags ivf; + + if (b->addsteiner_algo == 1) { + // Split the segment at the closest point to a near segment. + makepoint(&steinerpt, FREESEGVERTEX); + for (i = 0; i < 3; i++) { + steinerpt[i] = startpt[i] + split * (endpt[i] - startpt[i]); + } + } else { // b->addsteiner_algo == 2 + for (i = 0; i < 3; i++) { + P[i] = startpt[i] + split * (endpt[i] - startpt[i]); + } + pc = sorg(candseg); + pd = sdest(candseg); + for (i = 0; i < 3; i++) { + Q[i] = pc[i] + split_q * (pd[i] - pc[i]); + } + makepoint(&steinerpt, FREEVOLVERTEX); + for (i = 0; i < 3; i++) { + steinerpt[i] = 0.5 * (P[i] + Q[i]); + } + } + + // We need to locate the point. Start searching from 'searchtet'. + if (split < 0.5) { + point2tetorg(startpt, searchtet); + } else { + point2tetorg(endpt, searchtet); + } + if (b->addsteiner_algo == 1) { + splitseg = *misseg; + spivot(*misseg, splitsh); + } else { + splitsh.sh = NULL; + splitseg.sh = NULL; + } + ivf.iloc = (int) OUTSIDE; + ivf.bowywat = 1; + ivf.lawson = 0; + ivf.rejflag = 0; + ivf.chkencflag = 0; + ivf.sloc = (int) ONEDGE; + ivf.sbowywat = 1; + ivf.splitbdflag = 0; + ivf.validflag = 1; + ivf.respectbdflag = 1; + ivf.assignmeshsize = b->metric; + + if (!insertpoint(steinerpt, &searchtet, &splitsh, &splitseg, &ivf)) { + pointdealloc(steinerpt); + return 0; + } + + if (b->addsteiner_algo == 1) { + // Save this Steiner point (for removal). + // Re-use the array 'subvertstack'. + subvertstack->newindex((void **) &parypt); + *parypt = steinerpt; + st_segref_count++; + } else { // b->addsteiner_algo == 2 + // Queue the segment for recovery. + subsegstack->newindex((void **) &paryseg); + *paryseg = *misseg; + st_volref_count++; + } + if (steinerleft > 0) steinerleft--; + + return 1; +} + +int meshGRegionBoundaryRecovery::addsteiner4recoversegment(face* misseg, + int splitsegflag) +{ + triface *abtets, searchtet, spintet; + face splitsh; + face *paryseg; + point startpt, endpt; + point pa, pb, pd, steinerpt, *parypt; + enum interresult dir; + insertvertexflags ivf; + int types[2], poss[4]; + int n, endi, success; + int t1ver; + int i; + + startpt = sorg(*misseg); + if (pointtype(startpt) == FREESEGVERTEX) { + sesymself(*misseg); + startpt = sorg(*misseg); + } + endpt = sdest(*misseg); + + // Try to recover the edge by adding Steiner points. + point2tetorg(startpt, searchtet); + dir = finddirection(&searchtet, endpt); + enextself(searchtet); + //assert(apex(searchtet) == startpt); + + if (dir == ACROSSFACE) { + // The segment is crossing at least 3 faces. Find the common edge of + // the first 3 crossing faces. + esymself(searchtet); + fsym(searchtet, spintet); + pd = oppo(spintet); + for (i = 0; i < 3; i++) { + pa = org(spintet); + pb = dest(spintet); + //pc = apex(neightet); + if (tri_edge_test(pa, pb, pd, startpt, endpt, NULL, 1, types, poss)) { + break; // Found the edge. + } + enextself(spintet); + eprevself(searchtet); + } + assert(i < 3); + esymself(searchtet); + } else { + assert(dir == ACROSSEDGE); + // PLC check. + if (issubseg(searchtet)) { + face checkseg; + tsspivot1(searchtet, checkseg); + Msg::Debug("Found two segments intersect each other."); + pa = farsorg(*misseg); + pb = farsdest(*misseg); + Msg::Debug(" 1st: [%d,%d] %d.", pointmark(pa), pointmark(pb), + shellmark(*misseg)); + pa = farsorg(checkseg); + pb = farsdest(checkseg); + Msg::Debug(" 2nd: [%d,%d] %d.", pointmark(pa), pointmark(pb), + shellmark(checkseg)); + terminateBoundaryRecovery(this, 3); + } + } + assert(apex(searchtet) == startpt); + + spintet = searchtet; + n = 0; endi = -1; + while (1) { + // Check if the endpt appears in the star. + if (apex(spintet) == endpt) { + endi = n; // Remember the position of endpt. + } + n++; // Count a tet in the star. + fnextself(spintet); + if (spintet.tet == searchtet.tet) break; + } + assert(n >= 3); + + if (endi > 0) { + // endpt is also in the edge star + // Get all tets in the edge star. + abtets = new triface[n]; + spintet = searchtet; + for (i = 0; i < n; i++) { + abtets[i] = spintet; + fnextself(spintet); + } + + success = 0; + + if (dir == ACROSSFACE) { + // Find a Steiner points inside the polyhedron. + if (add_steinerpt_in_schoenhardtpoly(abtets, endi, 0)) { + success = 1; + } + } else if (dir == ACROSSEDGE) { + if (n > 4) { + // In this case, 'abtets' is separated by the plane (containing the + // two intersecting edges) into two parts, P1 and P2, where P1 + // consists of 'endi' tets: abtets[0], abtets[1], ..., + // abtets[endi-1], and P2 consists of 'n - endi' tets: + // abtets[endi], abtets[endi+1], abtets[n-1]. + if (endi > 2) { // P1 + // There are at least 3 tets in the first part. + if (add_steinerpt_in_schoenhardtpoly(abtets, endi, 0)) { + success++; + } + } + if ((n - endi) > 2) { // P2 + // There are at least 3 tets in the first part. + if (add_steinerpt_in_schoenhardtpoly(&(abtets[endi]), n - endi, 0)) { + success++; + } + } + } else { + // In this case, a 4-to-4 flip should be re-cover the edge [c,d]. + // However, there will be invalid tets (either zero or negtive + // volume). Otherwise, [c,d] should already be recovered by the + // recoveredge() function. + terminateBoundaryRecovery(this, 2); // Report a bug. + } + } else { + terminateBoundaryRecovery(this, 10); // A PLC problem. + } + + delete [] abtets; + + if (success) { + // Add the missing segment back to the recovering list. + subsegstack->newindex((void **) &paryseg); + *paryseg = *misseg; + return 1; + } + } // if (endi > 0) + + if (!splitsegflag) { + return 0; + } + + if (b->verbose > 2) { + printf(" Splitting segment (%d, %d)\n", pointmark(startpt), + pointmark(endpt)); + } + steinerpt = NULL; + + if (b->addsteiner_algo > 0) { // -Y/1 or -Y/2 + if (add_steinerpt_in_segment(misseg, 3)) { + return 1; + } + sesymself(*misseg); + if (add_steinerpt_in_segment(misseg, 3)) { + return 1; + } + sesymself(*misseg); + } + + + + + if (steinerpt == NULL) { + // Split the segment at its midpoint. + makepoint(&steinerpt, FREESEGVERTEX); + for (i = 0; i < 3; i++) { + steinerpt[i] = 0.5 * (startpt[i] + endpt[i]); + } + + // We need to locate the point. + assert(searchtet.tet != NULL); // Start searching from 'searchtet'. + spivot(*misseg, splitsh); + ivf.iloc = (int) OUTSIDE; + ivf.bowywat = 1; + ivf.lawson = 0; + ivf.rejflag = 0; + ivf.chkencflag = 0; + ivf.sloc = (int) ONEDGE; + ivf.sbowywat = 1; + ivf.splitbdflag = 0; + ivf.validflag = 1; + ivf.respectbdflag = 1; + ivf.assignmeshsize = b->metric; + if (!insertpoint(steinerpt, &searchtet, &splitsh, misseg, &ivf)) { + assert(0); + } + } // if (endi > 0) + + // Save this Steiner point (for removal). + // Re-use the array 'subvertstack'. + subvertstack->newindex((void **) &parypt); + *parypt = steinerpt; + + st_segref_count++; + if (steinerleft > 0) steinerleft--; + + return 1; +} + +int meshGRegionBoundaryRecovery::recoversegments(arraypool *misseglist, + int fullsearch, int steinerflag) +{ + triface searchtet, spintet; + face sseg, *paryseg; + point startpt, endpt; + int success; + int t1ver; + long bak_inpoly_count = st_volref_count; + long bak_segref_count = st_segref_count; + + if (b->verbose > 1) { + printf(" Recover segments [%s level = %2d] #: %ld.\n", + (b->fliplinklevel > 0) ? "fixed" : "auto", + (b->fliplinklevel > 0) ? b->fliplinklevel : autofliplinklevel, + subsegstack->objects); + } + + // Loop until 'subsegstack' is empty. + while (subsegstack->objects > 0l) { + // seglist is used as a stack. + subsegstack->objects--; + paryseg = (face *) fastlookup(subsegstack, subsegstack->objects); + sseg = *paryseg; + + // Check if this segment has been recovered. + sstpivot1(sseg, searchtet); + if (searchtet.tet != NULL) { + continue; // Not a missing segment. + } + + startpt = sorg(sseg); + endpt = sdest(sseg); + + if (b->verbose > 2) { + printf(" Recover segment (%d, %d).\n", pointmark(startpt), + pointmark(endpt)); + } + + success = 0; + + if (recoveredgebyflips(startpt, endpt, &searchtet, 0)) { + success = 1; + } else { + // Try to recover it from the other direction. + if (recoveredgebyflips(endpt, startpt, &searchtet, 0)) { + success = 1; + } + } + + if (!success && fullsearch) { + if (recoveredgebyflips(startpt, endpt, &searchtet, fullsearch)) { + success = 1; + } + } + + if (success) { + // Segment is recovered. Insert it. + // Let the segment remember an adjacent tet. + sstbond1(sseg, searchtet); + // Bond the segment to all tets containing it. + spintet = searchtet; + do { + tssbond1(spintet, sseg); + fnextself(spintet); + } while (spintet.tet != searchtet.tet); + } else { + if (steinerflag > 0) { + // Try to recover the segment but do not split it. + if (addsteiner4recoversegment(&sseg, 0)) { + success = 1; + } + if (!success && (steinerflag > 1)) { + // Split the segment. + addsteiner4recoversegment(&sseg, 1); + success = 1; + } + } + if (!success) { + if (misseglist != NULL) { + // Save this segment. + misseglist->newindex((void **) &paryseg); + *paryseg = sseg; + } + } + } + + } // while (subsegstack->objects > 0l) + + if (steinerflag) { + if (b->verbose > 1) { + // Report the number of added Steiner points. + if (st_volref_count > bak_inpoly_count) { + Msg::Debug(" Add %ld Steiner points in volume.", + st_volref_count - bak_inpoly_count); + } + if (st_segref_count > bak_segref_count) { + Msg::Debug(" Add %ld Steiner points in segments.", + st_segref_count - bak_segref_count); + } + } + } + + return 0; +} + +int meshGRegionBoundaryRecovery::recoverfacebyflips(point pa, point pb, + point pc, face *searchsh, triface* searchtet) +{ + triface spintet, flipedge; + point pd, pe; + enum interresult dir; + flipconstraints fc; + int types[2], poss[4], intflag; + int success, success1; + int t1ver; + int i, j; + + + fc.fac[0] = pa; + fc.fac[1] = pb; + fc.fac[2] = pc; + fc.checkflipeligibility = 1; + success = 0; + + for (i = 0; i < 3 && !success; i++) { + while (1) { + // Get a tet containing the edge [a,b]. + point2tetorg(fc.fac[i], *searchtet); + dir = finddirection(searchtet, fc.fac[(i+1)%3]); + //assert(dir == ACROSSVERT); + assert(dest(*searchtet) == fc.fac[(i+1)%3]); + // Search the face [a,b,c] + spintet = *searchtet; + while (1) { + if (apex(spintet) == fc.fac[(i+2)%3]) { + // Found the face. + *searchtet = spintet; + // Return the face [a,b,c]. + for (j = i; j > 0; j--) { + eprevself(*searchtet); + } + success = 1; + break; + } + fnextself(spintet); + if (spintet.tet == searchtet->tet) break; + } // while (1) + if (success) break; + // The face is missing. Try to recover it. + success1 = 0; + // Find a crossing edge of this face. + spintet = *searchtet; + while (1) { + pd = apex(spintet); + pe = oppo(spintet); + if ((pd != dummypoint) && (pe != dummypoint)) { + // Check if [d,e] intersects [a,b,c] + intflag = tri_edge_test(pa, pb, pc, pd, pe, NULL, 1, types, poss); + if (intflag > 0) { + // By our assumptions, they can only intersect at a single point. + if (intflag == 2) { + // Check the intersection type. + dir = (enum interresult) types[0]; + if ((dir == ACROSSFACE) || (dir == ACROSSEDGE)) { + // Go to the edge [d,e]. + edestoppo(spintet, flipedge); // [d,e,a,b] + if (searchsh != NULL) { + // Check if [e,d] is a segment. + if (issubseg(flipedge)) { + if (!b->quiet) { + face checkseg; + tsspivot1(flipedge, checkseg); + Msg::Debug("Found a segment and a subface intersect."); + pd = farsorg(checkseg); + pe = farsdest(checkseg); + Msg::Debug(" 1st: [%d, %d] %d.", pointmark(pd), + pointmark(pe), shellmark(checkseg)); + Msg::Debug(" 2nd: [%d,%d,%d] %d", pointmark(pa), + pointmark(pb), pointmark(pc), shellmark(*searchsh)); + } + terminateBoundaryRecovery(this, 3); + } + } + // Try to flip the edge [d,e]. + success1 = (removeedgebyflips(&flipedge, &fc) == 2); + } else { + if (dir == TOUCHFACE) { + point touchpt, *parypt; + if (poss[1] == 0) { + touchpt = pd; // pd is a coplanar vertex. + } else { + touchpt = pe; // pe is a coplanar vertex. + } + if (pointtype(touchpt) == FREEVOLVERTEX) { + // A volume Steiner point was added in this subface. + // Split this subface by this point. + face checksh, *parysh; + int siloc = (int) ONFACE; + int sbowat = 0; // Only split this subface. + setpointtype(touchpt, FREEFACETVERTEX); + sinsertvertex(touchpt, searchsh, NULL, siloc, sbowat, 0); + st_volref_count--; + st_facref_count++; + // Queue this vertex for removal. + subvertstack->newindex((void **) &parypt); + *parypt = touchpt; + // Queue new subfaces for recovery. + // Put all new subfaces into stack for recovery. + for (i = 0; i < caveshbdlist->objects; i++) { + // Get an old subface at edge [a, b]. + parysh = (face *) fastlookup(caveshbdlist, i); + spivot(*parysh, checksh); // The new subface [a, b, p]. + // Do not recover a deleted new face (degenerated). + if (checksh.sh[3] != NULL) { + subfacstack->newindex((void **) &parysh); + *parysh = checksh; + } + } + // Delete the old subfaces in sC(p). + assert(caveshlist->objects == 1); + for (i = 0; i < caveshlist->objects; i++) { + parysh = (face *) fastlookup(caveshlist, i); + shellfacedealloc(subfaces, parysh->sh); + } + // Clear working lists. + caveshlist->restart(); + caveshbdlist->restart(); + cavesegshlist->restart(); + // We can return this function. + searchsh->sh = NULL; // It has been split. + success1 = 0; + success = 1; + } else { + // It should be a PLC problem. + if (pointtype(touchpt) == FREESEGVERTEX) { + // A segment and a subface intersect. + } else if (pointtype(touchpt) == FREEFACETVERTEX) { + // Two facets self-intersect. + } + terminateBoundaryRecovery(this, 3); + } + } else { + assert(0); // Unknown cases. Debug. + } + } + break; + } else { // intflag == 4. Coplanar case. + // This may be an input PLC error. + assert(0); + } + } // if (intflag > 0) + } + fnextself(spintet); + assert(spintet.tet != searchtet->tet); + } // while (1) + if (!success1) break; + } // while (1) + } // i + + return success; +} + +int meshGRegionBoundaryRecovery::recoversubfaces(arraypool *misshlist, + int steinerflag) +{ + triface searchtet, neightet, spintet; + face searchsh, neighsh, neineish, *parysh; + face bdsegs[3]; + point startpt, endpt, apexpt, *parypt; + point steinerpt; + enum interresult dir; + insertvertexflags ivf; + int success; + int t1ver; + int i, j; + + if (b->verbose > 1) { + printf(" Recover subfaces [%s level = %2d] #: %ld.\n", + (b->fliplinklevel > 0) ? "fixed" : "auto", + (b->fliplinklevel > 0) ? b->fliplinklevel : autofliplinklevel, + subfacstack->objects); + } + + // Loop until 'subfacstack' is empty. + while (subfacstack->objects > 0l) { + + subfacstack->objects--; + parysh = (face *) fastlookup(subfacstack, subfacstack->objects); + searchsh = *parysh; + + if (searchsh.sh[3] == NULL) continue; // Skip a dead subface. + + stpivot(searchsh, neightet); + if (neightet.tet != NULL) continue; // Skip a recovered subface. + + + if (b->verbose > 2) { + printf(" Recover subface (%d, %d, %d).\n",pointmark(sorg(searchsh)), + pointmark(sdest(searchsh)), pointmark(sapex(searchsh))); + } + + // The three edges of the face need to be existed first. + for (i = 0; i < 3; i++) { + sspivot(searchsh, bdsegs[i]); + if (bdsegs[i].sh != NULL) { + // The segment must exist. + sstpivot1(bdsegs[i], searchtet); + if (searchtet.tet == NULL) { + assert(0); + } + } else { + // This edge is not a segment (due to a Steiner point). + // Check whether it exists or not. + success = 0; + startpt = sorg(searchsh); + endpt = sdest(searchsh); + point2tetorg(startpt, searchtet); + dir = finddirection(&searchtet, endpt); + if (dir == ACROSSVERT) { + if (dest(searchtet) == endpt) { + success = 1; + } else { + //assert(0); // A PLC problem. + terminateBoundaryRecovery(this, 3); + } + } else { + // The edge is missing. Try to recover it. + if (recoveredgebyflips(startpt, endpt, &searchtet, 0)) { + success = 1; + } else { + if (recoveredgebyflips(endpt, startpt, &searchtet, 0)) { + success = 1; + } + } + } + if (success) { + // Insert a temporary segment to protect this edge. + makeshellface(subsegs, &(bdsegs[i])); + setshvertices(bdsegs[i], startpt, endpt, NULL); + smarktest2(bdsegs[i]); // It's a temporary segment. + // Insert this segment into surface mesh. + ssbond(searchsh, bdsegs[i]); + spivot(searchsh, neighsh); + if (neighsh.sh != NULL) { + ssbond(neighsh, bdsegs[i]); + } + // Insert this segment into tetrahedralization. + sstbond1(bdsegs[i], searchtet); + // Bond the segment to all tets containing it. + spintet = searchtet; + do { + tssbond1(spintet, bdsegs[i]); + fnextself(spintet); + } while (spintet.tet != searchtet.tet); + } else { + // An edge of this subface is missing. Can't recover this subface. + // Delete any temporary segment that has been created. + for (j = (i - 1); j >= 0; j--) { + if (smarktest2ed(bdsegs[j])) { + spivot(bdsegs[j], neineish); + assert(neineish.sh != NULL); + //if (neineish.sh != NULL) { + ssdissolve(neineish); + spivot(neineish, neighsh); + if (neighsh.sh != NULL) { + ssdissolve(neighsh); + // There should be only two subfaces at this segment. + spivotself(neighsh); // SELF_CHECK + assert(neighsh.sh == neineish.sh); + } + //} + sstpivot1(bdsegs[j], searchtet); + assert(searchtet.tet != NULL); + //if (searchtet.tet != NULL) { + spintet = searchtet; + while (1) { + tssdissolve1(spintet); + fnextself(spintet); + if (spintet.tet == searchtet.tet) break; + } + //} + shellfacedealloc(subsegs, bdsegs[j].sh); + } + } // j + if (steinerflag) { + // Add a Steiner point at the midpoint of this edge. + if (b->verbose > 2) { + printf(" Add a Steiner point in subedge (%d, %d).\n", + pointmark(startpt), pointmark(endpt)); + } + makepoint(&steinerpt, FREEFACETVERTEX); + for (j = 0; j < 3; j++) { + steinerpt[j] = 0.5 * (startpt[j] + endpt[j]); + } + + point2tetorg(startpt, searchtet); // Start from 'searchtet'. + ivf.iloc = (int) OUTSIDE; // Need point location. + ivf.bowywat = 1; + ivf.lawson = 0; + ivf.rejflag = 0; + ivf.chkencflag = 0; + ivf.sloc = (int) ONEDGE; + ivf.sbowywat = 1; // Allow flips in facet. + ivf.splitbdflag = 0; + ivf.validflag = 1; + ivf.respectbdflag = 1; + ivf.assignmeshsize = b->metric; + if (!insertpoint(steinerpt, &searchtet, &searchsh, NULL, &ivf)) { + assert(0); + } + // Save this Steiner point (for removal). + // Re-use the array 'subvertstack'. + subvertstack->newindex((void **) &parypt); + *parypt = steinerpt; + + st_facref_count++; + if (steinerleft > 0) steinerleft--; + } // if (steinerflag) + break; + } + } + senextself(searchsh); + } // i + + if (i == 3) { + // Recover the subface. + startpt = sorg(searchsh); + endpt = sdest(searchsh); + apexpt = sapex(searchsh); + + success = recoverfacebyflips(startpt,endpt,apexpt,&searchsh,&searchtet); + + // Delete any temporary segment that has been created. + for (j = 0; j < 3; j++) { + if (smarktest2ed(bdsegs[j])) { + spivot(bdsegs[j], neineish); + assert(neineish.sh != NULL); + //if (neineish.sh != NULL) { + ssdissolve(neineish); + spivot(neineish, neighsh); + if (neighsh.sh != NULL) { + ssdissolve(neighsh); + // There should be only two subfaces at this segment. + spivotself(neighsh); // SELF_CHECK + assert(neighsh.sh == neineish.sh); + } + //} + sstpivot1(bdsegs[j], neightet); + assert(neightet.tet != NULL); + //if (neightet.tet != NULL) { + spintet = neightet; + while (1) { + tssdissolve1(spintet); + fnextself(spintet); + if (spintet.tet == neightet.tet) break; + } + //} + shellfacedealloc(subsegs, bdsegs[j].sh); + } + } // j + + if (success) { + if (searchsh.sh != NULL) { + // Face is recovered. Insert it. + tsbond(searchtet, searchsh); + fsymself(searchtet); + sesymself(searchsh); + tsbond(searchtet, searchsh); + } + } else { + if (steinerflag) { + // Add a Steiner point at the barycenter of this subface. + if (b->verbose > 2) { + printf(" Add a Steiner point in subface (%d, %d, %d).\n", + pointmark(startpt), pointmark(endpt), pointmark(apexpt)); + } + makepoint(&steinerpt, FREEFACETVERTEX); + for (j = 0; j < 3; j++) { + steinerpt[j] = (startpt[j] + endpt[j] + apexpt[j]) / 3.0; + } + + point2tetorg(startpt, searchtet); // Start from 'searchtet'. + ivf.iloc = (int) OUTSIDE; // Need point location. + ivf.bowywat = 1; + ivf.lawson = 0; + ivf.rejflag = 0; + ivf.chkencflag = 0; + ivf.sloc = (int) ONFACE; + ivf.sbowywat = 1; // Allow flips in facet. + ivf.splitbdflag = 0; + ivf.validflag = 1; + ivf.respectbdflag = 1; + ivf.assignmeshsize = b->metric; + if (!insertpoint(steinerpt, &searchtet, &searchsh, NULL, &ivf)) { + assert(0); + } + // Save this Steiner point (for removal). + // Re-use the array 'subvertstack'. + subvertstack->newindex((void **) &parypt); + *parypt = steinerpt; + + st_facref_count++; + if (steinerleft > 0) steinerleft--; + } // if (steinerflag) + } + } else { + success = 0; + } + + if (!success) { + if (misshlist != NULL) { + // Save this subface. + misshlist->newindex((void **) &parysh); + *parysh = searchsh; + } + } + + } // while (subfacstack->objects > 0l) + + return 0; +} + +int meshGRegionBoundaryRecovery::getvertexstar(int fullstar, point searchpt, + arraypool* tetlist, arraypool* vertlist, arraypool* shlist) +{ + triface searchtet, neightet, *parytet; + face checksh, *parysh; + point pt, *parypt; + int collectflag; + int t1ver; + int i, j; + + point2tetorg(searchpt, searchtet); + + // Go to the opposite face (the link face) of the vertex. + enextesymself(searchtet); + //assert(oppo(searchtet) == searchpt); + infect(searchtet); // Collect this tet (link face). + tetlist->newindex((void **) &parytet); + *parytet = searchtet; + if (vertlist != NULL) { + // Collect three (link) vertices. + j = (searchtet.ver & 3); // The current vertex index. + for (i = 1; i < 4; i++) { + pt = (point) searchtet.tet[4 + ((j + i) % 4)]; + pinfect(pt); + vertlist->newindex((void **) &parypt); + *parypt = pt; + } + } + + collectflag = 1; + esym(searchtet, neightet); + if (issubface(neightet)) { + if (shlist != NULL) { + tspivot(neightet, checksh); + if (!sinfected(checksh)) { + // Collect this subface (link edge). + sinfected(checksh); + shlist->newindex((void **) &parysh); + *parysh = checksh; + } + } + if (!fullstar) { + collectflag = 0; + } + } + if (collectflag) { + fsymself(neightet); // Goto the adj tet of this face. + esymself(neightet); // Goto the oppo face of this vertex. + // assert(oppo(neightet) == searchpt); + infect(neightet); // Collect this tet (link face). + tetlist->newindex((void **) &parytet); + *parytet = neightet; + if (vertlist != NULL) { + // Collect its apex. + pt = apex(neightet); + pinfect(pt); + vertlist->newindex((void **) &parypt); + *parypt = pt; + } + } // if (collectflag) + + // Continue to collect all tets in the star. + for (i = 0; i < tetlist->objects; i++) { + searchtet = * (triface *) fastlookup(tetlist, i); + // Note that 'searchtet' is a face opposite to 'searchpt', and the neighbor + // tet at the current edge is already collected. + // Check the neighbors at the other two edges of this face. + for (j = 0; j < 2; j++) { + collectflag = 1; + enextself(searchtet); + esym(searchtet, neightet); + if (issubface(neightet)) { + if (shlist != NULL) { + tspivot(neightet, checksh); + if (!sinfected(checksh)) { + // Collect this subface (link edge). + sinfected(checksh); + shlist->newindex((void **) &parysh); + *parysh = checksh; + } + } + if (!fullstar) { + collectflag = 0; + } + } + if (collectflag) { + fsymself(neightet); + if (!infected(neightet)) { + esymself(neightet); // Go to the face opposite to 'searchpt'. + infect(neightet); + tetlist->newindex((void **) &parytet); + *parytet = neightet; + if (vertlist != NULL) { + // Check if a vertex is collected. + pt = apex(neightet); + if (!pinfected(pt)) { + pinfect(pt); + vertlist->newindex((void **) &parypt); + *parypt = pt; + } + } + } // if (!infected(neightet)) + } // if (collectflag) + } // j + } // i + + + // Uninfect the list of tets and vertices. + for (i = 0; i < tetlist->objects; i++) { + parytet = (triface *) fastlookup(tetlist, i); + uninfect(*parytet); + } + + if (vertlist != NULL) { + for (i = 0; i < vertlist->objects; i++) { + parypt = (point *) fastlookup(vertlist, i); + puninfect(*parypt); + } + } + + if (shlist != NULL) { + for (i = 0; i < shlist->objects; i++) { + parysh = (face *) fastlookup(shlist, i); + suninfect(*parysh); + } + } + + return (int) tetlist->objects; +} + +int meshGRegionBoundaryRecovery::getedge(point e1, point e2, triface *tedge) +{ + triface searchtet, neightet, *parytet; + point pt; + int done; + int i, j; + + if (b->verbose > 2) { + printf(" Get edge from %d to %d.\n", pointmark(e1), pointmark(e2)); + } + + // Quickly check if 'tedge' is just this edge. + if (!isdeadtet(*tedge)) { + if (org(*tedge) == e1) { + if (dest(*tedge) == e2) { + return 1; + } + } else if (org(*tedge) == e2) { + if (dest(*tedge) == e1) { + esymself(*tedge); + return 1; + } + } + } + + // Search for the edge [e1, e2]. + point2tetorg(e1, *tedge); + finddirection(tedge, e2); + if (dest(*tedge) == e2) { + return 1; + } else { + // Search for the edge [e2, e1]. + point2tetorg(e2, *tedge); + finddirection(tedge, e1); + if (dest(*tedge) == e1) { + esymself(*tedge); + return 1; + } + } + + + // Go to the link face of e1. + point2tetorg(e1, searchtet); + enextesymself(searchtet); + //assert(oppo(searchtet) == e1); + + assert(cavebdrylist->objects == 0l); // It will re-use this list. + arraypool *tetlist = cavebdrylist; + + // Search e2. + for (i = 0; i < 3; i++) { + pt = apex(searchtet); + if (pt == e2) { + // Found. 'searchtet' is [#,#,e2,e1]. + eorgoppo(searchtet, *tedge); // [e1,e2,#,#]. + return 1; + } + enextself(searchtet); + } + + // Get the adjacent link face at 'searchtet'. + fnext(searchtet, neightet); + esymself(neightet); + // assert(oppo(neightet) == e1); + pt = apex(neightet); + if (pt == e2) { + // Found. 'neightet' is [#,#,e2,e1]. + eorgoppo(neightet, *tedge); // [e1,e2,#,#]. + return 1; + } + + // Continue searching in the link face of e1. + infect(searchtet); + tetlist->newindex((void **) &parytet); + *parytet = searchtet; + infect(neightet); + tetlist->newindex((void **) &parytet); + *parytet = neightet; + + done = 0; + + for (i = 0; (i < tetlist->objects) && !done; i++) { + parytet = (triface *) fastlookup(tetlist, i); + searchtet = *parytet; + for (j = 0; (j < 2) && !done; j++) { + enextself(searchtet); + fnext(searchtet, neightet); + if (!infected(neightet)) { + esymself(neightet); + pt = apex(neightet); + if (pt == e2) { + // Found. 'neightet' is [#,#,e2,e1]. + eorgoppo(neightet, *tedge); + done = 1; + } else { + infect(neightet); + tetlist->newindex((void **) &parytet); + *parytet = neightet; + } + } + } // j + } // i + + // Uninfect the list of visited tets. + for (i = 0; i < tetlist->objects; i++) { + parytet = (triface *) fastlookup(tetlist, i); + uninfect(*parytet); + } + tetlist->restart(); + + return done; +} + +int meshGRegionBoundaryRecovery::reduceedgesatvertex(point startpt, + arraypool* endptlist) +{ + triface searchtet; + point *pendpt, *parypt; + enum interresult dir; + flipconstraints fc; + int reduceflag; + int count; + int n, i, j; + + + fc.remvert = startpt; + fc.checkflipeligibility = 1; + + while (1) { + + count = 0; + + for (i = 0; i < endptlist->objects; i++) { + pendpt = (point *) fastlookup(endptlist, i); + if (*pendpt == dummypoint) { + continue; // Do not reduce a virtual edge. + } + reduceflag = 0; + // Find the edge. + if (nonconvex) { + if (getedge(startpt, *pendpt, &searchtet)) { + dir = ACROSSVERT; + } else { + // The edge does not exist (was flipped). + dir = INTERSECT; + } + } else { + point2tetorg(startpt, searchtet); + dir = finddirection(&searchtet, *pendpt); + } + if (dir == ACROSSVERT) { + if (dest(searchtet) == *pendpt) { + // Do not flip a segment. + if (!issubseg(searchtet)) { + n = removeedgebyflips(&searchtet, &fc); + if (n == 2) { + reduceflag = 1; + } + } + } else { + assert(0); // A plc problem. + } + } else { + // The edge has been flipped. + reduceflag = 1; + } + if (reduceflag) { + count++; + // Move the last vertex into this slot. + j = endptlist->objects - 1; + parypt = (point *) fastlookup(endptlist, j); + *pendpt = *parypt; + endptlist->objects--; + i--; + } + } // i + + if (count == 0) { + // No edge is reduced. + break; + } + + } // while (1) + + return (int) endptlist->objects; +} + +int meshGRegionBoundaryRecovery::removevertexbyflips(point steinerpt) +{ + triface *fliptets = NULL, wrktets[4]; + triface searchtet, spintet, neightet; + face parentsh, spinsh, checksh; + face leftseg, rightseg, checkseg; + point lpt = NULL, rpt = NULL, apexpt; //, *parypt; + flipconstraints fc; + enum verttype vt; + enum locateresult loc; + int valence, removeflag; + int slawson; + int t1ver; + int n, i; + + vt = pointtype(steinerpt); + + if (vt == FREESEGVERTEX) { + sdecode(point2sh(steinerpt), leftseg); + assert(leftseg.sh != NULL); + leftseg.shver = 0; + if (sdest(leftseg) == steinerpt) { + senext(leftseg, rightseg); + spivotself(rightseg); + assert(rightseg.sh != NULL); + rightseg.shver = 0; + assert(sorg(rightseg) == steinerpt); + } else { + assert(sorg(leftseg) == steinerpt); + rightseg = leftseg; + senext2(rightseg, leftseg); + spivotself(leftseg); + assert(leftseg.sh != NULL); + leftseg.shver = 0; + assert(sdest(leftseg) == steinerpt); + } + lpt = sorg(leftseg); + rpt = sdest(rightseg); + if (b->verbose > 2) { + printf(" Removing Steiner point %d in segment (%d, %d).\n", + pointmark(steinerpt), pointmark(lpt), pointmark(rpt)); + + } + } else if (vt == FREEFACETVERTEX) { + if (b->verbose > 2) { + printf(" Removing Steiner point %d in facet.\n", + pointmark(steinerpt)); + } + } else if (vt == FREEVOLVERTEX) { + if (b->verbose > 2) { + printf(" Removing Steiner point %d in volume.\n", + pointmark(steinerpt)); + } + } else if (vt == VOLVERTEX) { + if (b->verbose > 2) { + printf(" Removing a point %d in volume.\n", + pointmark(steinerpt)); + } + } else { + // It is not a Steiner point. + return 0; + } + + // Try to reduce the number of edges at 'p' by flips. + getvertexstar(1, steinerpt, cavetetlist, cavetetvertlist, NULL); + cavetetlist->restart(); // This list may be re-used. + if (cavetetvertlist->objects > 3l) { + valence = reduceedgesatvertex(steinerpt, cavetetvertlist); + } else { + valence = cavetetvertlist->objects; + } + assert(cavetetlist->objects == 0l); + cavetetvertlist->restart(); + + removeflag = 0; + + if (valence == 4) { + // Only 4 vertices (4 tets) left! 'p' is inside the convex hull of the 4 + // vertices. This case is due to that 'p' is not exactly on the segment. + point2tetorg(steinerpt, searchtet); + loc = INTETRAHEDRON; + removeflag = 1; + } else if (valence == 5) { + // There are 5 edges. + if (vt == FREESEGVERTEX) { + sstpivot1(leftseg, searchtet); + if (org(searchtet) != steinerpt) { + esymself(searchtet); + } + assert(org(searchtet) == steinerpt); + assert(dest(searchtet) == lpt); + i = 0; // Count the numbe of tet at the edge [p,lpt]. + neightet.tet = NULL; // Init the face. + spintet = searchtet; + while (1) { + i++; + if (apex(spintet) == rpt) { + // Remember the face containing the edge [lpt, rpt]. + neightet = spintet; + } + fnextself(spintet); + if (spintet.tet == searchtet.tet) break; + } + if (i == 3) { + // This case has been checked below. + } else if (i == 4) { + // There are 4 tets sharing at [p,lpt]. There must be 4 tets sharing + // at [p,rpt]. There must be a face [p, lpt, rpt]. + if (apex(neightet) == rpt) { + // The edge (segment) has been already recovered! + // Check if a 6-to-2 flip is possible (to remove 'p'). + // Let 'searchtet' be [p,d,a,b] + esym(neightet, searchtet); + enextself(searchtet); + // Check if there are exactly three tets at edge [p,d]. + wrktets[0] = searchtet; // [p,d,a,b] + for (i = 0; i < 2; i++) { + fnext(wrktets[i], wrktets[i+1]); // [p,d,b,c], [p,d,c,a] + } + if (apex(wrktets[0]) == oppo(wrktets[2])) { + loc = ONFACE; + removeflag = 1; + } + } + } + } else if (vt == FREEFACETVERTEX) { + // It is possible to do a 6-to-2 flip to remove the vertex. + point2tetorg(steinerpt, searchtet); + // Get the three faces of 'searchtet' which share at p. + // All faces has p as origin. + wrktets[0] = searchtet; + wrktets[1] = searchtet; + esymself(wrktets[1]); + enextself(wrktets[1]); + wrktets[2] = searchtet; + eprevself(wrktets[2]); + esymself(wrktets[2]); + // All internal edges of the six tets have valance either 3 or 4. + // Get one edge which has valance 3. + searchtet.tet = NULL; + for (i = 0; i < 3; i++) { + spintet = wrktets[i]; + valence = 0; + while (1) { + valence++; + fnextself(spintet); + if (spintet.tet == wrktets[i].tet) break; + } + if (valence == 3) { + // Found the edge. + searchtet = wrktets[i]; + break; + } else { + assert(valence == 4); + } + } + assert(searchtet.tet != NULL); + // Note, we do not detach the three subfaces at p. + // They will be removed within a 4-to-1 flip. + loc = ONFACE; + removeflag = 1; + } else { + // assert(0); DEBUG IT + } + //removeflag = 1; + } + + if (!removeflag) { + if (vt == FREESEGVERTEX) { + // Check is it possible to recover the edge [lpt,rpt]. + // The condition to check is: Whether each tet containing 'leftseg' is + // adjacent to a tet containing 'rightseg'. + sstpivot1(leftseg, searchtet); + if (org(searchtet) != steinerpt) { + esymself(searchtet); + } + assert(org(searchtet) == steinerpt); + assert(dest(searchtet) == lpt); + spintet = searchtet; + while (1) { + // Go to the bottom face of this tet. + eprev(spintet, neightet); + esymself(neightet); // [steinerpt, p1, p2, lpt] + // Get the adjacent tet. + fsymself(neightet); // [p1, steinerpt, p2, rpt] + if (oppo(neightet) != rpt) { + // Found a non-matching adjacent tet. + break; + } + fnextself(spintet); + if (spintet.tet == searchtet.tet) { + // 'searchtet' is [p,d,p1,p2]. + loc = ONEDGE; + removeflag = 1; + break; + } + } + } // if (vt == FREESEGVERTEX) + } + + if (!removeflag) { + if (vt == FREESEGVERTEX) { + // Check if the edge [lpt, rpt] exists. + if (getedge(lpt, rpt, &searchtet)) { + // We have recovered this edge. Shift the vertex into the volume. + // We can recover this edge if the subfaces are not recovered yet. + if (!checksubfaceflag) { + // Remove the vertex from the surface mesh. + // This will re-create the segment [lpt, rpt] and re-triangulate + // all the facets at the segment. + // Detach the subsegments from their surrounding tets. + for (i = 0; i < 2; i++) { + checkseg = (i == 0) ? leftseg : rightseg; + sstpivot1(checkseg, neightet); + spintet = neightet; + while (1) { + tssdissolve1(spintet); + fnextself(spintet); + if (spintet.tet == neightet.tet) break; + } + sstdissolve1(checkseg); + } // i + slawson = 1; // Do lawson flip after removal. + spivot(rightseg, parentsh); // 'rightseg' has p as its origin. + sremovevertex(steinerpt, &parentsh, &rightseg, slawson); + // Clear the list for new subfaces. + caveshbdlist->restart(); + // Insert the new segment. + assert(org(searchtet) == lpt); + assert(dest(searchtet) == rpt); + sstbond1(rightseg, searchtet); + spintet = searchtet; + while (1) { + tsspivot1(spintet, checkseg); // FOR DEBUG ONLY + assert(checkseg.sh == NULL); // FOR DEBUG ONLY + tssbond1(spintet, rightseg); + fnextself(spintet); + if (spintet.tet == searchtet.tet) break; + } + // The Steiner point has been shifted into the volume. + setpointtype(steinerpt, FREEVOLVERTEX); + st_segref_count--; + st_volref_count++; + return 1; + } // if (!checksubfaceflag) + } // if (getedge(...)) + } // if (vt == FREESEGVERTEX) + } // if (!removeflag) + + if (!removeflag) { + return 0; + } + + assert(org(searchtet) == steinerpt); + + if (vt == FREESEGVERTEX) { + // Detach the subsegments from their surronding tets. + for (i = 0; i < 2; i++) { + checkseg = (i == 0) ? leftseg : rightseg; + sstpivot1(checkseg, neightet); + spintet = neightet; + while (1) { + tssdissolve1(spintet); + fnextself(spintet); + if (spintet.tet == neightet.tet) break; + } + sstdissolve1(checkseg); + } // i + if (checksubfaceflag) { + // Detach the subfaces at the subsegments from their attached tets. + for (i = 0; i < 2; i++) { + checkseg = (i == 0) ? leftseg : rightseg; + spivot(checkseg, parentsh); + if (parentsh.sh != NULL) { + spinsh = parentsh; + while (1) { + stpivot(spinsh, neightet); + if (neightet.tet != NULL) { + tsdissolve(neightet); + } + sesymself(spinsh); + stpivot(spinsh, neightet); + if (neightet.tet != NULL) { + tsdissolve(neightet); + } + stdissolve(spinsh); + spivotself(spinsh); // Go to the next subface. + if (spinsh.sh == parentsh.sh) break; + } + } + } // i + } // if (checksubfaceflag) + } + + if (loc == INTETRAHEDRON) { + // Collect the four tets containing 'p'. + fliptets = new triface[4]; + fliptets[0] = searchtet; // [p,d,a,b] + for (i = 0; i < 2; i++) { + fnext(fliptets[i], fliptets[i+1]); // [p,d,b,c], [p,d,c,a] + } + eprev(fliptets[0], fliptets[3]); + fnextself(fliptets[3]); // it is [a,p,b,c] + eprevself(fliptets[3]); + esymself(fliptets[3]); // [a,b,c,p]. + // Remove p by a 4-to-1 flip. + //flip41(fliptets, 1, 0, 0); + flip41(fliptets, 1, &fc); + //recenttet = fliptets[0]; + } else if (loc == ONFACE) { + // Let the original two tets be [a,b,c,d] and [b,a,c,e]. And p is in + // face [a,b,c]. Let 'searchtet' be the tet [p,d,a,b]. + // Collect the six tets containing 'p'. + fliptets = new triface[6]; + fliptets[0] = searchtet; // [p,d,a,b] + for (i = 0; i < 2; i++) { + fnext(fliptets[i], fliptets[i+1]); // [p,d,b,c], [p,d,c,a] + } + eprev(fliptets[0], fliptets[3]); + fnextself(fliptets[3]); // [a,p,b,e] + esymself(fliptets[3]); // [p,a,e,b] + eprevself(fliptets[3]); // [e,p,a,b] + for (i = 3; i < 5; i++) { + fnext(fliptets[i], fliptets[i+1]); // [e,p,b,c], [e,p,c,a] + } + if (vt == FREEFACETVERTEX) { + // We need to determine the location of three subfaces at p. + valence = 0; // Re-use it. + // Check if subfaces are all located in the lower three tets. + // i.e., [e,p,a,b], [e,p,b,c], and [e,p,c,a]. + for (i = 3; i < 6; i++) { + if (issubface(fliptets[i])) valence++; + } + if (valence > 0) { + assert(valence == 2); + // We must do 3-to-2 flip in the upper part. We simply re-arrange + // the six tets. + for (i = 0; i < 3; i++) { + esym(fliptets[i+3], wrktets[i]); + esym(fliptets[i], fliptets[i+3]); + fliptets[i] = wrktets[i]; + } + // Swap the last two pairs, i.e., [1]<->[[2], and [4]<->[5] + wrktets[1] = fliptets[1]; + fliptets[1] = fliptets[2]; + fliptets[2] = wrktets[1]; + wrktets[1] = fliptets[4]; + fliptets[4] = fliptets[5]; + fliptets[5] = wrktets[1]; + } + } + // Remove p by a 6-to-2 flip, which is a combination of two flips: + // a 3-to-2 (deletes the edge [e,p]), and + // a 4-to-1 (deletes the vertex p). + // First do a 3-to-2 flip on [e,p,a,b],[e,p,b,c],[e,p,c,a]. It creates + // two new tets: [a,b,c,p] and [b,a,c,e]. The new tet [a,b,c,p] is + // degenerate (has zero volume). It will be deleted in the followed + // 4-to-1 flip. + //flip32(&(fliptets[3]), 1, 0, 0); + flip32(&(fliptets[3]), 1, &fc); + // Second do a 4-to-1 flip on [p,d,a,b],[p,d,b,c],[p,d,c,a],[a,b,c,p]. + // This creates a new tet [a,b,c,d]. + //flip41(fliptets, 1, 0, 0); + flip41(fliptets, 1, &fc); + //recenttet = fliptets[0]; + } else if (loc == ONEDGE) { + // Let the original edge be [e,d] and p is in [e,d]. Assume there are n + // tets sharing at edge [e,d] originally. We number the link vertices + // of [e,d]: p_0, p_1, ..., p_n-1. 'searchtet' is [p,d,p_0,p_1]. + // Count the number of tets at edge [e,p] and [p,d] (this is n). + n = 0; + spintet = searchtet; + while (1) { + n++; + fnextself(spintet); + if (spintet.tet == searchtet.tet) break; + } + assert(n >= 3); + // Collect the 2n tets containing 'p'. + fliptets = new triface[2 * n]; + fliptets[0] = searchtet; // [p,b,p_0,p_1] + for (i = 0; i < (n - 1); i++) { + fnext(fliptets[i], fliptets[i+1]); // [p,d,p_i,p_i+1]. + } + eprev(fliptets[0], fliptets[n]); + fnextself(fliptets[n]); // [p_0,p,p_1,e] + esymself(fliptets[n]); // [p,p_0,e,p_1] + eprevself(fliptets[n]); // [e,p,p_0,p_1] + for (i = n; i < (2 * n - 1); i++) { + fnext(fliptets[i], fliptets[i+1]); // [e,p,p_i,p_i+1]. + } + // Remove p by a 2n-to-n flip, it is a sequence of n flips: + // - Do a 2-to-3 flip on + // [p_0,p_1,p,d] and + // [p,p_1,p_0,e]. + // This produces: + // [e,d,p_0,p_1], + // [e,d,p_1,p] (degenerated), and + // [e,d,p,p_0] (degenerated). + wrktets[0] = fliptets[0]; // [p,d,p_0,p_1] + eprevself(wrktets[0]); // [p_0,p,d,p_1] + esymself(wrktets[0]); // [p,p_0,p_1,d] + enextself(wrktets[0]); // [p_0,p_1,p,d] [0] + wrktets[1] = fliptets[n]; // [e,p,p_0,p_1] + enextself(wrktets[1]); // [p,p_0,e,p_1] + esymself(wrktets[1]); // [p_0,p,p_1,e] + eprevself(wrktets[1]); // [p_1,p_0,p,e] [1] + //flip23(wrktets, 1, 0, 0); + flip23(wrktets, 1, &fc); + // Save the new tet [e,d,p,p_0] (degenerated). + fliptets[n] = wrktets[2]; + // Save the new tet [e,d,p_0,p_1]. + fliptets[0] = wrktets[0]; + // - Repeat from i = 1 to n-2: (n - 2) flips + // - Do a 3-to-2 flip on + // [p,p_i,d,e], + // [p,p_i,e,p_i+1], and + // [p,p_i,p_i+1,d]. + // This produces: + // [d,e,p_i+1,p_i], and + // [e,d,p_i+1,p] (degenerated). + for (i = 1; i < (n - 1); i++) { + wrktets[0] = wrktets[1]; // [e,d,p_i,p] (degenerated). + enextself(wrktets[0]); // [d,p_i,e,p] (...) + esymself(wrktets[0]); // [p_i,d,p,e] (...) + eprevself(wrktets[0]); // [p,p_i,d,e] (degenerated) [0]. + wrktets[1] = fliptets[n+i]; // [e,p,p_i,p_i+1] + enextself(wrktets[1]); // [p,p_i,e,p_i+1] [1] + wrktets[2] = fliptets[i]; // [p,d,p_i,p_i+1] + eprevself(wrktets[2]); // [p_i,p,d,p_i+1] + esymself(wrktets[2]); // [p,p_i,p_i+1,d] [2] + //flip32(wrktets, 1, 0, 0); + flip32(wrktets, 1, &fc); + // Save the new tet [e,d,p_i,p_i+1]. // FOR DEBUG ONLY + fliptets[i] = wrktets[0]; // [d,e,p_i+1,p_i] // FOR DEBUG ONLY + esymself(fliptets[i]); // [e,d,p_i,p_i+1] // FOR DEBUG ONLY + } + // - Do a 4-to-1 flip on + // [p,p_0,e,d], [d,e,p_0,p], + // [p,p_0,d,p_n-1], [e,p_n-1,p_0,p], + // [p,p_0,p_n-1,e], [p_0,p_n-1,d,p], and + // [e,d,p_n-1,p]. + // This produces + // [e,d,p_n-1,p_0] and + // deletes p. + wrktets[3] = wrktets[1]; // [e,d,p_n-1,p] (degenerated) [3] + wrktets[0] = fliptets[n]; // [e,d,p,p_0] (degenerated) + eprevself(wrktets[0]); // [p,e,d,p_0] (...) + esymself(wrktets[0]); // [e,p,p_0,d] (...) + enextself(wrktets[0]); // [p,p_0,e,d] (degenerated) [0] + wrktets[1] = fliptets[n-1]; // [p,d,p_n-1,p_0] + esymself(wrktets[1]); // [d,p,p_0,p_n-1] + enextself(wrktets[1]); // [p,p_0,d,p_n-1] [1] + wrktets[2] = fliptets[2*n-1]; // [e,p,p_n-1,p_0] + enextself(wrktets[2]); // [p_p_n-1,e,p_0] + esymself(wrktets[2]); // [p_n-1,p,p_0,e] + enextself(wrktets[2]); // [p,p_0,p_n-1,e] [2] + //flip41(wrktets, 1, 0, 0); + flip41(wrktets, 1, &fc); + // Save the new tet [e,d,p_n-1,p_0] // FOR DEBUG ONLY + fliptets[n-1] = wrktets[0]; // [e,d,p_n-1,p_0] // FOR DEBUG ONLY + //recenttet = fliptets[0]; + } else { + assert(0); // Unknown location. + } // if (iloc == ...) + + delete [] fliptets; + + if (vt == FREESEGVERTEX) { + // Remove the vertex from the surface mesh. + // This will re-create the segment [lpt, rpt] and re-triangulate + // all the facets at the segment. + // Only do lawson flip when subfaces are not recovery yet. + slawson = (checksubfaceflag ? 0 : 1); + spivot(rightseg, parentsh); // 'rightseg' has p as its origin. + sremovevertex(steinerpt, &parentsh, &rightseg, slawson); + + // The original segment is returned in 'rightseg'. + rightseg.shver = 0; + assert(sorg(rightseg) == lpt); + assert(sdest(rightseg) == rpt); + + // Insert the new segment. + point2tetorg(lpt, searchtet); + finddirection(&searchtet, rpt); + assert(dest(searchtet) == rpt); + sstbond1(rightseg, searchtet); + spintet = searchtet; + while (1) { + tsspivot1(spintet, checkseg); // FOR DEBUG ONLY + assert(checkseg.sh == NULL); // FOR DEBUG ONLY + tssbond1(spintet, rightseg); + fnextself(spintet); + if (spintet.tet == searchtet.tet) break; + } + + if (checksubfaceflag) { + // Insert subfaces at segment [lpt,rpt] into the tetrahedralization. + spivot(rightseg, parentsh); + if (parentsh.sh != NULL) { + spinsh = parentsh; + while (1) { + if (sorg(spinsh) != lpt) { + sesymself(spinsh); + assert(sorg(spinsh) == lpt); + } + assert(sdest(spinsh) == rpt); + apexpt = sapex(spinsh); + // Find the adjacent tet of [lpt,rpt,apexpt]; + spintet = searchtet; + while (1) { + if (apex(spintet) == apexpt) { + tsbond(spintet, spinsh); + sesymself(spinsh); // Get to another side of this face. + fsym(spintet, neightet); + tsbond(neightet, spinsh); + sesymself(spinsh); // Get back to the original side. + break; + } + fnextself(spintet); + assert(spintet.tet != searchtet.tet); + //if (spintet.tet == searchtet.tet) break; + } + spivotself(spinsh); + if (spinsh.sh == parentsh.sh) break; + } + } + } // if (checksubfaceflag) + + // Clear the set of new subfaces. + caveshbdlist->restart(); + } // if (vt == FREESEGVERTEX) + + // The point has been removed. + if (pointtype(steinerpt) != UNUSEDVERTEX) { + setpointtype(steinerpt, UNUSEDVERTEX); + unuverts++; + } + if (vt != VOLVERTEX) { + // Update the correspinding counters. + if (vt == FREESEGVERTEX) { + st_segref_count--; + } else if (vt == FREEFACETVERTEX) { + st_facref_count--; + } else if (vt == FREEVOLVERTEX) { + st_volref_count--; + } + if (steinerleft > 0) steinerleft++; + } + + return 1; +} + +int meshGRegionBoundaryRecovery::suppressbdrysteinerpoint(point steinerpt) +{ + face parentsh, spinsh, *parysh; + face leftseg, rightseg; + point lpt = NULL, rpt = NULL; + int i; + + verttype vt = pointtype(steinerpt); + + if (vt == FREESEGVERTEX) { + sdecode(point2sh(steinerpt), leftseg); + leftseg.shver = 0; + if (sdest(leftseg) == steinerpt) { + senext(leftseg, rightseg); + spivotself(rightseg); + assert(rightseg.sh != NULL); + rightseg.shver = 0; + assert(sorg(rightseg) == steinerpt); + } else { + assert(sorg(leftseg) == steinerpt); + rightseg = leftseg; + senext2(rightseg, leftseg); + spivotself(leftseg); + assert(leftseg.sh != NULL); + leftseg.shver = 0; + assert(sdest(leftseg) == steinerpt); + } + lpt = sorg(leftseg); + rpt = sdest(rightseg); + if (b->verbose > 2) { + printf(" Suppressing Steiner point %d in segment (%d, %d).\n", + pointmark(steinerpt), pointmark(lpt), pointmark(rpt)); + } + // Get all subfaces at the left segment [lpt, steinerpt]. + spivot(leftseg, parentsh); + spinsh = parentsh; + while (1) { + cavesegshlist->newindex((void **) &parysh); + *parysh = spinsh; + // Orient the face consistently. + if (sorg(*parysh)!= sorg(parentsh)) sesymself(*parysh); + spivotself(spinsh); + if (spinsh.sh == NULL) break; + if (spinsh.sh == parentsh.sh) break; + } + if (cavesegshlist->objects < 2) { + // It is a single segment. Not handle it yet. + cavesegshlist->restart(); + return 0; + } + } else if (vt == FREEFACETVERTEX) { + if (b->verbose > 2) { + printf(" Suppressing Steiner point %d from facet.\n", + pointmark(steinerpt)); + } + sdecode(point2sh(steinerpt), parentsh); + // A facet Steiner point. There are exactly two sectors. + for (i = 0; i < 2; i++) { + cavesegshlist->newindex((void **) &parysh); + *parysh = parentsh; + sesymself(parentsh); + } + } else { + return 0; + } + + triface searchtet, neightet, *parytet; + point pa, pb, pc, pd; + REAL v1[3], v2[3], len, u; + + REAL startpt[3] = {0,}, samplept[3] = {0,}, candpt[3] = {0,}; + REAL ori, minvol, smallvol; + int samplesize; + int it, j, k; + + int n = (int) cavesegshlist->objects; + point *newsteiners = new point[n]; + for (i = 0; i < n; i++) newsteiners[i] = NULL; + + // Search for each sector an interior vertex. + for (i = 0; i < cavesegshlist->objects; i++) { + parysh = (face *) fastlookup(cavesegshlist, i); + stpivot(*parysh, searchtet); + // Skip it if it is outside. + if (ishulltet(searchtet)) continue; + // Get the "half-ball". Tets in 'cavetetlist' all contain 'steinerpt' as + // opposite. Subfaces in 'caveshlist' all contain 'steinerpt' as apex. + // Moreover, subfaces are oriented towards the interior of the ball. + setpoint2tet(steinerpt, encode(searchtet)); + getvertexstar(0, steinerpt, cavetetlist, NULL, caveshlist); + // Calculate the searching vector. + pa = sorg(*parysh); + pb = sdest(*parysh); + pc = sapex(*parysh); + facenormal(pa, pb, pc, v1, 1, NULL); + len = sqrt(dot(v1, v1)); + assert(len > 0.0); + v1[0] /= len; + v1[1] /= len; + v1[2] /= len; + if (vt == FREESEGVERTEX) { + parysh = (face *) fastlookup(cavesegshlist, (i + 1) % n); + pd = sapex(*parysh); + facenormal(pb, pa, pd, v2, 1, NULL); + len = sqrt(dot(v2, v2)); + assert(len > 0.0); + v2[0] /= len; + v2[1] /= len; + v2[2] /= len; + // Average the two vectors. + v1[0] = 0.5 * (v1[0] + v2[0]); + v1[1] = 0.5 * (v1[1] + v2[1]); + v1[2] = 0.5 * (v1[2] + v2[2]); + } + // Search the intersection of the ray starting from 'steinerpt' to + // the search direction 'v1' and the shell of the half-ball. + // - Construct an endpoint. + len = distance(pa, pb); + v2[0] = steinerpt[0] + len * v1[0]; + v2[1] = steinerpt[1] + len * v1[1]; + v2[2] = steinerpt[2] + len * v1[2]; + for (j = 0; j < cavetetlist->objects; j++) { + parytet = (triface *) fastlookup(cavetetlist, j); + pa = org(*parytet); + pb = dest(*parytet); + pc = apex(*parytet); + // Test if the ray startpt->v2 lies in the cone: where 'steinerpt' + // is the apex, and three sides are defined by the triangle + // [pa, pb, pc]. + ori = orient3d(steinerpt, pa, pb, v2); + if (ori >= 0) { + ori = orient3d(steinerpt, pb, pc, v2); + if (ori >= 0) { + ori = orient3d(steinerpt, pc, pa, v2); + if (ori >= 0) { + // Found! Calculate the intersection. + planelineint(pa, pb, pc, steinerpt, v2, startpt, &u); + assert(u != 0.0); + break; + } + } + } + } // j + assert(j < cavetetlist->objects); // There must be an intersection. + // Close the ball by adding the subfaces. + for (j = 0; j < caveshlist->objects; j++) { + parysh = (face *) fastlookup(caveshlist, j); + stpivot(*parysh, neightet); + cavetetlist->newindex((void **) &parytet); + *parytet = neightet; + } + // Search a best point inside the segment [startpt, steinerpt]. + it = 0; + samplesize = 100; + v1[0] = steinerpt[0] - startpt[0]; + v1[1] = steinerpt[1] - startpt[1]; + v1[2] = steinerpt[2] - startpt[2]; + minvol = -1.0; + while (it < 3) { + for (j = 1; j < samplesize - 1; j++) { + samplept[0] = startpt[0] + ((REAL) j / (REAL) samplesize) * v1[0]; + samplept[1] = startpt[1] + ((REAL) j / (REAL) samplesize) * v1[1]; + samplept[2] = startpt[2] + ((REAL) j / (REAL) samplesize) * v1[2]; + // Find the minimum volume for 'samplept'. + smallvol = -1; + for (k = 0; k < cavetetlist->objects; k++) { + parytet = (triface *) fastlookup(cavetetlist, k); + pa = org(*parytet); + pb = dest(*parytet); + pc = apex(*parytet); + ori = orient3d(pb, pa, pc, samplept); + if (ori <= 0) { + break; // An invalid tet. + } + if (smallvol == -1) { + smallvol = ori; + } else { + if (ori < smallvol) smallvol = ori; + } + } // k + if (k == cavetetlist->objects) { + // Found a valid point. Remember it. + if (minvol == -1.0) { + candpt[0] = samplept[0]; + candpt[1] = samplept[1]; + candpt[2] = samplept[2]; + minvol = smallvol; + } else { + if (minvol < smallvol) { + // It is a better location. Remember it. + candpt[0] = samplept[0]; + candpt[1] = samplept[1]; + candpt[2] = samplept[2]; + minvol = smallvol; + } else { + // No improvement of smallest volume. + // Since we are searching along the line [startpt, steinerpy], + // The smallest volume can only be decreased later. + break; + } + } + } + } // j + if (minvol > 0) break; + samplesize *= 10; + it++; + } // while (it < 3) + if (minvol == -1.0) { + // Failed to find a valid point. + cavetetlist->restart(); + caveshlist->restart(); + break; + } + // Create a new Steiner point inside this section. + makepoint(&(newsteiners[i]), FREEVOLVERTEX); + newsteiners[i][0] = candpt[0]; + newsteiners[i][1] = candpt[1]; + newsteiners[i][2] = candpt[2]; + cavetetlist->restart(); + caveshlist->restart(); + } // i + + if (i < cavesegshlist->objects) { + // Failed to suppress the vertex. + for (; i > 0; i--) { + if (newsteiners[i - 1] != NULL) { + pointdealloc(newsteiners[i - 1]); + } + } + delete [] newsteiners; + cavesegshlist->restart(); + return 0; + } + + // Remove p from the segment or the facet. + triface newtet, newface, spintet; + face newsh, neighsh; + face *splitseg, checkseg; + int slawson = 0; // Do not do flip afterword. + int t1ver; + + if (vt == FREESEGVERTEX) { + // Detach 'leftseg' and 'rightseg' from their adjacent tets. + // These two subsegments will be deleted. + sstpivot1(leftseg, neightet); + spintet = neightet; + while (1) { + tssdissolve1(spintet); + fnextself(spintet); + if (spintet.tet == neightet.tet) break; + } + sstpivot1(rightseg, neightet); + spintet = neightet; + while (1) { + tssdissolve1(spintet); + fnextself(spintet); + if (spintet.tet == neightet.tet) break; + } + } + + // Loop through all sectors bounded by facets at this segment. + // Within each sector, create a new Steiner point 'np', and replace 'p' + // by 'np' for all tets in this sector. + for (i = 0; i < cavesegshlist->objects; i++) { + parysh = (face *) fastlookup(cavesegshlist, i); + // 'parysh' is the face [lpt, steinerpt, #]. + stpivot(*parysh, neightet); + // Get all tets in this sector. + setpoint2tet(steinerpt, encode(neightet)); + getvertexstar(0, steinerpt, cavetetlist, NULL, caveshlist); + if (!ishulltet(neightet)) { + // Within each tet in the ball, replace 'p' by 'np'. + for (j = 0; j < cavetetlist->objects; j++) { + parytet = (triface *) fastlookup(cavetetlist, j); + setoppo(*parytet, newsteiners[i]); + } // j + // Point to a parent tet. + parytet = (triface *) fastlookup(cavetetlist, 0); + setpoint2tet(newsteiners[i], (tetrahedron) (parytet->tet)); + st_volref_count++; + if (steinerleft > 0) steinerleft--; + } + // Disconnect the set of boundary faces. They're temporarily open faces. + // They will be connected to the new tets after 'p' is removed. + for (j = 0; j < caveshlist->objects; j++) { + // Get a boundary face. + parysh = (face *) fastlookup(caveshlist, j); + stpivot(*parysh, neightet); + //assert(apex(neightet) == newpt); + // Clear the connection at this face. + dissolve(neightet); + tsdissolve(neightet); + } + // Clear the working lists. + cavetetlist->restart(); + caveshlist->restart(); + } // i + cavesegshlist->restart(); + + if (vt == FREESEGVERTEX) { + spivot(rightseg, parentsh); // 'rightseg' has p as its origin. + splitseg = &rightseg; + } else { + if (sdest(parentsh) == steinerpt) { + senextself(parentsh); + } else if (sapex(parentsh) == steinerpt) { + senext2self(parentsh); + } + assert(sorg(parentsh) == steinerpt); + splitseg = NULL; + } + sremovevertex(steinerpt, &parentsh, splitseg, slawson); + + if (vt == FREESEGVERTEX) { + // The original segment is returned in 'rightseg'. + rightseg.shver = 0; + } + + // For each new subface, create two new tets at each side of it. + // Both of the two new tets have its opposite be dummypoint. + for (i = 0; i < caveshbdlist->objects; i++) { + parysh = (face *) fastlookup(caveshbdlist, i); + sinfect(*parysh); // Mark it for connecting new tets. + newsh = *parysh; + pa = sorg(newsh); + pb = sdest(newsh); + pc = sapex(newsh); + maketetrahedron(&newtet); + maketetrahedron(&neightet); + setvertices(newtet, pa, pb, pc, dummypoint); + setvertices(neightet, pb, pa, pc, dummypoint); + bond(newtet, neightet); + tsbond(newtet, newsh); + sesymself(newsh); + tsbond(neightet, newsh); + } + // Temporarily increase the hullsize. + hullsize += (caveshbdlist->objects * 2l); + + if (vt == FREESEGVERTEX) { + // Connecting new tets at the recovered segment. + spivot(rightseg, parentsh); + assert(parentsh.sh != NULL); + spinsh = parentsh; + while (1) { + if (sorg(spinsh) != lpt) sesymself(spinsh); + // Get the new tet at this subface. + stpivot(spinsh, newtet); + tssbond1(newtet, rightseg); + // Go to the other face at this segment. + spivot(spinsh, neighsh); + if (sorg(neighsh) != lpt) sesymself(neighsh); + sesymself(neighsh); + stpivot(neighsh, neightet); + tssbond1(neightet, rightseg); + sstbond1(rightseg, neightet); + // Connecting two adjacent tets at this segment. + esymself(newtet); + esymself(neightet); + // Connect the two tets (at rightseg) together. + bond(newtet, neightet); + // Go to the next subface. + spivotself(spinsh); + if (spinsh.sh == parentsh.sh) break; + } + } + + // Connecting new tets at new subfaces together. + for (i = 0; i < caveshbdlist->objects; i++) { + parysh = (face *) fastlookup(caveshbdlist, i); + newsh = *parysh; + //assert(sinfected(newsh)); + // Each new subface contains two new tets. + for (k = 0; k < 2; k++) { + stpivot(newsh, newtet); + for (j = 0; j < 3; j++) { + // Check if this side is open. + esym(newtet, newface); + if (newface.tet[newface.ver & 3] == NULL) { + // An open face. Connect it to its adjacent tet. + sspivot(newsh, checkseg); + if (checkseg.sh != NULL) { + // A segment. It must not be the recovered segment. + tssbond1(newtet, checkseg); + sstbond1(checkseg, newtet); + } + spivot(newsh, neighsh); + if (neighsh.sh != NULL) { + // The adjacent subface exists. It's not a dangling segment. + if (sorg(neighsh) != sdest(newsh)) sesymself(neighsh); + stpivot(neighsh, neightet); + if (sinfected(neighsh)) { + esymself(neightet); + assert(neightet.tet[neightet.ver & 3] == NULL); + } else { + // Search for an open face at this edge. + spintet = neightet; + while (1) { + esym(spintet, searchtet); + fsym(searchtet, spintet); + if (spintet.tet == NULL) break; + assert(spintet.tet != neightet.tet); + } + // Found an open face at 'searchtet'. + neightet = searchtet; + } + } else { + // The edge (at 'newsh') is a dangling segment. + assert(checkseg.sh != NULL); + // Get an adjacent tet at this segment. + sstpivot1(checkseg, neightet); + assert(!isdeadtet(neightet)); + if (org(neightet) != sdest(newsh)) esymself(neightet); + assert((org(neightet) == sdest(newsh)) && + (dest(neightet) == sorg(newsh))); + // Search for an open face at this edge. + spintet = neightet; + while (1) { + esym(spintet, searchtet); + fsym(searchtet, spintet); + if (spintet.tet == NULL) break; + assert(spintet.tet != neightet.tet); + } + // Found an open face at 'searchtet'. + neightet = searchtet; + } + pc = apex(newface); + if (apex(neightet) == steinerpt) { + // Exterior case. The 'neightet' is a hull tet which contain + // 'steinerpt'. It will be deleted after 'steinerpt' is removed. + assert(pc == dummypoint); + caveoldtetlist->newindex((void **) &parytet); + *parytet = neightet; + // Connect newface to the adjacent hull tet of 'neightet', which + // has the same edge as 'newface', and does not has 'steinerpt'. + fnextself(neightet); + } else { + if (pc == dummypoint) { + if (apex(neightet) != dummypoint) { + setapex(newface, apex(neightet)); + // A hull tet has turned into an interior tet. + hullsize--; // Must update the hullsize. + } + } + } + bond(newface, neightet); + } // if (newface.tet[newface.ver & 3] == NULL) + enextself(newtet); + senextself(newsh); + } // j + sesymself(newsh); + } // k + } // i + + // Unmark all new subfaces. + for (i = 0; i < caveshbdlist->objects; i++) { + parysh = (face *) fastlookup(caveshbdlist, i); + suninfect(*parysh); + } + caveshbdlist->restart(); + + if (caveoldtetlist->objects > 0l) { + // Delete hull tets which contain 'steinerpt'. + for (i = 0; i < caveoldtetlist->objects; i++) { + parytet = (triface *) fastlookup(caveoldtetlist, i); + tetrahedrondealloc(parytet->tet); + } + // Must update the hullsize. + hullsize -= caveoldtetlist->objects; + caveoldtetlist->restart(); + } + + setpointtype(steinerpt, UNUSEDVERTEX); + unuverts++; + if (vt == FREESEGVERTEX) { + st_segref_count--; + } else { // vt == FREEFACETVERTEX + st_facref_count--; + } + if (steinerleft > 0) steinerleft++; // We've removed a Steiner points. + + + point *parypt; + int steinercount = 0; + + int bak_fliplinklevel = b->fliplinklevel; + b->fliplinklevel = 100000; // Unlimited flip level. + + // Try to remove newly added Steiner points. + for (i = 0; i < n; i++) { + if (newsteiners[i] != NULL) { + if (!removevertexbyflips(newsteiners[i])) { + if (b->nobisect_param > 0) { // Not -Y0 + // Save it in subvertstack for removal. + subvertstack->newindex((void **) &parypt); + *parypt = newsteiners[i]; + } + steinercount++; + } + } + } + + b->fliplinklevel = bak_fliplinklevel; + + if (steinercount > 0) { + if (b->verbose > 2) { + printf(" Added %d interior Steiner points.\n", steinercount); + } + } + + delete [] newsteiners; + + return 1; +} + + +int meshGRegionBoundaryRecovery::suppresssteinerpoints() +{ + + Msg::Info(" --> Suppressing Steiner points ..."); + point rempt, *parypt; + + int bak_fliplinklevel = b->fliplinklevel; + b->fliplinklevel = 100000; // Unlimited flip level. + int suppcount = 0, remcount = 0; + int i; + + // Try to suppress boundary Steiner points. + for (i = 0; i < subvertstack->objects; i++) { + parypt = (point *) fastlookup(subvertstack, i); + rempt = *parypt; + if (pointtype(rempt) != UNUSEDVERTEX) { + if ((pointtype(rempt) == FREESEGVERTEX) || + (pointtype(rempt) == FREEFACETVERTEX)) { + if (suppressbdrysteinerpoint(rempt)) { + suppcount++; + } + } + } + } // i + + if (suppcount > 0) { + Msg::Info(" Suppressed %d boundary Steiner points.", suppcount); + } + + if (b->nobisect_param > 0) { // -Y1 + for (i = 0; i < subvertstack->objects; i++) { + parypt = (point *) fastlookup(subvertstack, i); + rempt = *parypt; + if (pointtype(rempt) != UNUSEDVERTEX) { + if (pointtype(rempt) == FREEVOLVERTEX) { + if (removevertexbyflips(rempt)) { + remcount++; + } + } + } + } + } + + if (remcount > 0) { + if (b->verbose) { + printf(" Removed %d interior Steiner points.\n", remcount); + } + } + + b->fliplinklevel = bak_fliplinklevel; + + if (b->nobisect_param > 1) { // -Y2 + // Smooth interior Steiner points. + optparameters opm; + triface *parytet; + point *ppt; + REAL ori; + int smtcount, count, ivcount; + int nt, j; + + // Point smooth options. + opm.max_min_volume = 1; + opm.numofsearchdirs = 20; + opm.searchstep = 0.001; + opm.maxiter = 30; // Limit the maximum iterations. + + smtcount = 0; + + do { + + nt = 0; + + while (1) { + count = 0; + ivcount = 0; // Clear the inverted count. + + for (i = 0; i < subvertstack->objects; i++) { + parypt = (point *) fastlookup(subvertstack, i); + rempt = *parypt; + if (pointtype(rempt) == FREEVOLVERTEX) { + getvertexstar(1, rempt, cavetetlist, NULL, NULL); + // Calculate the initial smallest volume (maybe zero or negative). + for (j = 0; j < cavetetlist->objects; j++) { + parytet = (triface *) fastlookup(cavetetlist, j); + ppt = (point *) &(parytet->tet[4]); + ori = orient3dfast(ppt[1], ppt[0], ppt[2], ppt[3]); + if (j == 0) { + opm.initval = ori; + } else { + if (opm.initval > ori) opm.initval = ori; + } + } + if (smoothpoint(rempt, cavetetlist, 1, &opm)) { + count++; + } + if (opm.imprval <= 0.0) { + ivcount++; // The mesh contains inverted elements. + } + cavetetlist->restart(); + } + } // i + + smtcount += count; + + if (count == 0) { + // No point has been smoothed. + break; + } + + nt++; + if (nt > 2) { + break; // Already three iterations. + } + } // while + + if (ivcount > 0) { + // There are inverted elements! + if (opm.maxiter > 0) { + // Set unlimited smoothing steps. Try again. + opm.numofsearchdirs = 30; + opm.searchstep = 0.0001; + opm.maxiter = -1; + continue; + } + } + + break; + } while (1); // Additional loop for (ivcount > 0) + + if (ivcount > 0) { + printf("BUG Report! The mesh contain inverted elements.\n"); + } + + if (b->verbose) { + if (smtcount > 0) { + printf(" Smoothed %d Steiner points.\n", smtcount); + } + } + } // -Y2 + + subvertstack->restart(); + + return 1; +} + +void meshGRegionBoundaryRecovery::recoverboundary(clock_t&) +{ + arraypool *misseglist, *misshlist; + arraypool *bdrysteinerptlist; + face searchsh, *parysh; + face searchseg, *paryseg; + point rempt, *parypt; + long ms; // The number of missing segments/subfaces. + int nit; // The number of iterations. + int s, i; + + // Counters. + long bak_segref_count, bak_facref_count, bak_volref_count; + + if (!b->quiet) { + Msg::Info(" --> Recovering boundaries ..."); + } + + + if (b->verbose) { + Msg::Info(" --> Recovering segments ..."); + } + + // Segments will be introduced. + checksubsegflag = 1; + + misseglist = new arraypool(sizeof(face), 8); + bdrysteinerptlist = new arraypool(sizeof(point), 8); + + // In random order. + subsegs->traversalinit(); + for (i = 0; i < subsegs->items; i++) { + s = randomnation(i + 1); + // Move the s-th seg to the i-th. + subsegstack->newindex((void **) &paryseg); + *paryseg = * (face *) fastlookup(subsegstack, s); + // Put i-th seg to be the s-th. + searchseg.sh = shellfacetraverse(subsegs); + paryseg = (face *) fastlookup(subsegstack, s); + *paryseg = searchseg; + } + + // The init number of missing segments. + ms = subsegs->items; + nit = 0; + if (b->fliplinklevel < 0) { + autofliplinklevel = 1; // Init value. + } + + // First, trying to recover segments by only doing flips. + while (1) { + recoversegments(misseglist, 0, 0); + + if (misseglist->objects > 0) { + if (b->fliplinklevel >= 0) { + break; + } else { + if (misseglist->objects >= ms) { + nit++; + if (nit >= 3) { + //break; + // Do the last round with unbounded flip link level. + b->fliplinklevel = 100000; + } + } else { + ms = misseglist->objects; + if (nit > 0) { + nit--; + } + } + for (i = 0; i < misseglist->objects; i++) { + subsegstack->newindex((void **) &paryseg); + *paryseg = * (face *) fastlookup(misseglist, i); + } + misseglist->restart(); + autofliplinklevel+=b->fliplinklevelinc; + } + } else { + // All segments are recovered. + break; + } + } // while (1) + + if (b->verbose) { + printf(" %ld (%ld) segments are recovered (missing).\n", + subsegs->items - misseglist->objects, misseglist->objects); + } + + if (misseglist->objects > 0) { + // Second, trying to recover segments by doing more flips (fullsearch). + while (misseglist->objects > 0) { + ms = misseglist->objects; + for (i = 0; i < misseglist->objects; i++) { + subsegstack->newindex((void **) &paryseg); + *paryseg = * (face *) fastlookup(misseglist, i); + } + misseglist->restart(); + + recoversegments(misseglist, 1, 0); + + if (misseglist->objects < ms) { + // The number of missing segments is reduced. + continue; + } else { + break; + } + } + if (b->verbose) { + printf(" %ld (%ld) segments are recovered (missing).\n", + subsegs->items - misseglist->objects, misseglist->objects); + } + } + + if (misseglist->objects > 0) { + // Third, trying to recover segments by doing more flips (fullsearch) + // and adding Steiner points in the volume. + while (misseglist->objects > 0) { + ms = misseglist->objects; + for (i = 0; i < misseglist->objects; i++) { + subsegstack->newindex((void **) &paryseg); + *paryseg = * (face *) fastlookup(misseglist, i); + } + misseglist->restart(); + + recoversegments(misseglist, 1, 1); + + if (misseglist->objects < ms) { + // The number of missing segments is reduced. + continue; + } else { + break; + } + } + if (b->verbose) { + printf(" Added %ld Steiner points in volume.\n", st_volref_count); + } + } + + if (misseglist->objects > 0) { + // Last, trying to recover segments by doing more flips (fullsearch), + // and adding Steiner points in the volume, and splitting segments. + long bak_inpoly_count = st_volref_count; //st_inpoly_count; + for (i = 0; i < misseglist->objects; i++) { + subsegstack->newindex((void **) &paryseg); + *paryseg = * (face *) fastlookup(misseglist, i); + } + misseglist->restart(); + + recoversegments(misseglist, 1, 2); + + if (b->verbose) { + printf(" Added %ld Steiner points in segments.\n", st_segref_count); + if (st_volref_count > bak_inpoly_count) { + printf(" Added another %ld Steiner points in volume.\n", + st_volref_count - bak_inpoly_count); + } + } + assert(misseglist->objects == 0l); + } + + + if (st_segref_count > 0) { + // Try to remove the Steiner points added in segments. + bak_segref_count = st_segref_count; + bak_volref_count = st_volref_count; + for (i = 0; i < subvertstack->objects; i++) { + // Get the Steiner point. + parypt = (point *) fastlookup(subvertstack, i); + rempt = *parypt; + if (!removevertexbyflips(rempt)) { + // Save it in list. + bdrysteinerptlist->newindex((void **) &parypt); + *parypt = rempt; + } + } + if (b->verbose) { + if (st_segref_count < bak_segref_count) { + if (bak_volref_count < st_volref_count) { + printf(" Suppressed %ld Steiner points in segments.\n", + st_volref_count - bak_volref_count); + } + if ((st_segref_count + (st_volref_count - bak_volref_count)) < + bak_segref_count) { + printf(" Removed %ld Steiner points in segments.\n", + bak_segref_count - + (st_segref_count + (st_volref_count - bak_volref_count))); + } + } + } + subvertstack->restart(); + } + + + if (b->verbose) { + printf(" Recovering facets.\n"); + } + + // Subfaces will be introduced. + checksubfaceflag = 1; + + misshlist = new arraypool(sizeof(face), 8); + + // Randomly order the subfaces. + subfaces->traversalinit(); + for (i = 0; i < subfaces->items; i++) { + s = randomnation(i + 1); + // Move the s-th subface to the i-th. + subfacstack->newindex((void **) &parysh); + *parysh = * (face *) fastlookup(subfacstack, s); + // Put i-th subface to be the s-th. + searchsh.sh = shellfacetraverse(subfaces); + parysh = (face *) fastlookup(subfacstack, s); + *parysh = searchsh; + } + + ms = subfaces->items; + nit = 0; + b->fliplinklevel = -1; // Init. + if (b->fliplinklevel < 0) { + autofliplinklevel = 1; // Init value. + } + + while (1) { + recoversubfaces(misshlist, 0); + + if (misshlist->objects > 0) { + if (b->fliplinklevel >= 0) { + break; + } else { + if (misshlist->objects >= ms) { + nit++; + if (nit >= 3) { + //break; + // Do the last round with unbounded flip link level. + b->fliplinklevel = 100000; + } + } else { + ms = misshlist->objects; + if (nit > 0) { + nit--; + } + } + for (i = 0; i < misshlist->objects; i++) { + subfacstack->newindex((void **) &parysh); + *parysh = * (face *) fastlookup(misshlist, i); + } + misshlist->restart(); + autofliplinklevel+=b->fliplinklevelinc; + } + } else { + // All subfaces are recovered. + break; + } + } // while (1) + + if (b->verbose) { + printf(" %ld (%ld) subfaces are recovered (missing).\n", + subfaces->items - misshlist->objects, misshlist->objects); + } + + if (misshlist->objects > 0) { + // There are missing subfaces. Add Steiner points. + for (i = 0; i < misshlist->objects; i++) { + subfacstack->newindex((void **) &parysh); + *parysh = * (face *) fastlookup(misshlist, i); + } + misshlist->restart(); + + recoversubfaces(NULL, 1); + + if (b->verbose) { + printf(" Added %ld Steiner points in facets.\n", st_facref_count); + } + } + + + if (st_facref_count > 0) { + // Try to remove the Steiner points added in facets. + bak_facref_count = st_facref_count; + for (i = 0; i < subvertstack->objects; i++) { + // Get the Steiner point. + parypt = (point *) fastlookup(subvertstack, i); + rempt = *parypt; + if (!removevertexbyflips(*parypt)) { + // Save it in list. + bdrysteinerptlist->newindex((void **) &parypt); + *parypt = rempt; + } + } + if (b->verbose) { + if (st_facref_count < bak_facref_count) { + printf(" Removed %ld Steiner points in facets.\n", + bak_facref_count - st_facref_count); + } + } + subvertstack->restart(); + } + + + if (bdrysteinerptlist->objects > 0) { + if (b->verbose) { + printf(" %ld Steiner points remained in boundary.\n", + bdrysteinerptlist->objects); + } + } // if + + + // Accumulate the dynamic memory. + totalworkmemory += (misseglist->totalmemory + misshlist->totalmemory + + bdrysteinerptlist->totalmemory); + + delete bdrysteinerptlist; + delete misseglist; + delete misshlist; +} + +//// //// +//// //// +//// steiner_cxx ////////////////////////////////////////////////////////////// + + +//// reconstruct_cxx ////////////////////////////////////////////////////////// +//// //// +//// //// + +void meshGRegionBoundaryRecovery::carveholes() +{ + arraypool *tetarray, *hullarray; + triface tetloop, neightet, *parytet, *parytet1; + triface *regiontets = NULL; + face checksh, *parysh; + face checkseg; + point ptloop, *parypt; + int t1ver; + int i, j, k; + + if (!b->quiet) { + if (b->convex) { + Msg::Info(" --> Marking exterior tetrahedra ..."); + } else { + Msg::Info(" --> Removing exterior tetrahedra ..."); + } + } + + // Initialize the pool of exterior tets. + tetarray = new arraypool(sizeof(triface), 10); + hullarray = new arraypool(sizeof(triface), 10); + + // Collect unprotected tets and hull tets. + tetrahedrons->traversalinit(); + tetloop.ver = 11; // The face opposite to dummypoint. + tetloop.tet = alltetrahedrontraverse(); + while (tetloop.tet != (tetrahedron *) NULL) { + if (ishulltet(tetloop)) { + // Is this side protected by a subface? + if (!issubface(tetloop)) { + // Collect an unprotected hull tet and tet. + infect(tetloop); + hullarray->newindex((void **) &parytet); + *parytet = tetloop; + // tetloop's face number is 11 & 3 = 3. + decode(tetloop.tet[3], neightet); + if (!infected(neightet)) { + infect(neightet); + tetarray->newindex((void **) &parytet); + *parytet = neightet; + } + } + } + tetloop.tet = alltetrahedrontraverse(); + } + + // Collect all exterior tets (in concave place and in holes). + for (i = 0; i < tetarray->objects; i++) { + parytet = (triface *) fastlookup(tetarray, i); + j = (parytet->ver & 3); // j is the current face number. + // Check the other three adjacent tets. + for (k = 1; k < 4; k++) { + decode(parytet->tet[(j + k) % 4], neightet); + // neightet may be a hull tet. + if (!infected(neightet)) { + // Is neightet protected by a subface. + if (!issubface(neightet)) { + // Not proected. Collect it. (It must not be a hull tet). + infect(neightet); + tetarray->newindex((void **) &parytet1); + *parytet1 = neightet; + } else { + // Protected. Check if it is a hull tet. + if (ishulltet(neightet)) { + // A hull tet. Collect it. + infect(neightet); + hullarray->newindex((void **) &parytet1); + *parytet1 = neightet; + // Both sides of this subface are exterior. + tspivot(neightet, checksh); + // Queue this subface (to be deleted later). + assert(!sinfected(checksh)); + sinfect(checksh); // Only queue it once. + subfacstack->newindex((void **) &parysh); + *parysh = checksh; + } + } + } else { + // Both sides of this face are in exterior. + // If there is a subface. It should be collected. + if (issubface(neightet)) { + tspivot(neightet, checksh); + if (!sinfected(checksh)) { + sinfect(checksh); + subfacstack->newindex((void **) &parysh); + *parysh = checksh; + } + } + } + } // j, k + } // i + + // Collect vertices which point to infected tets. These vertices + // may get deleted after the removal of exterior tets. + // If -Y1 option is used, collect all Steiner points for removal. + // The lists 'cavetetvertlist' and 'subvertstack' are re-used. + points->traversalinit(); + ptloop = pointtraverse(); + while (ptloop != NULL) { + if ((pointtype(ptloop) != UNUSEDVERTEX) && + (pointtype(ptloop) != DUPLICATEDVERTEX)) { + decode(point2tet(ptloop), neightet); + if (infected(neightet)) { + cavetetvertlist->newindex((void **) &parypt); + *parypt = ptloop; + } + if (b->nobisect && (b->nobisect_param > 0)) { // -Y1 + // Queue it if it is a Steiner point. + //if (pointmark(ptloop) > + // (in->numberofpoints - (in->firstnumber ? 0 : 1))) { + if (issteinerpoint(ptloop)) { + subvertstack->newindex((void **) &parypt); + *parypt = ptloop; + } + } + } + ptloop = pointtraverse(); + } + + if (!b->convex && (tetarray->objects > 0l)) { // No -c option. + // Remove exterior tets. Hull tets are updated. + arraypool *newhullfacearray; + triface hulltet, casface; + point pa, pb, pc; + + newhullfacearray = new arraypool(sizeof(triface), 10); + + // Create and save new hull tets. + for (i = 0; i < tetarray->objects; i++) { + parytet = (triface *) fastlookup(tetarray, i); + for (j = 0; j < 4; j++) { + decode(parytet->tet[j], tetloop); + if (!infected(tetloop)) { + // Found a new hull face (must be a subface). + tspivot(tetloop, checksh); + maketetrahedron(&hulltet); + pa = org(tetloop); + pb = dest(tetloop); + pc = apex(tetloop); + setvertices(hulltet, pb, pa, pc, dummypoint); + bond(tetloop, hulltet); + // Update the subface-to-tet map. + sesymself(checksh); + tsbond(hulltet, checksh); + // Update the segment-to-tet map. + for (k = 0; k < 3; k++) { + if (issubseg(tetloop)) { + tsspivot1(tetloop, checkseg); + tssbond1(hulltet, checkseg); + sstbond1(checkseg, hulltet); + } + enextself(tetloop); + eprevself(hulltet); + } + // Update the point-to-tet map. + setpoint2tet(pa, (tetrahedron) tetloop.tet); + setpoint2tet(pb, (tetrahedron) tetloop.tet); + setpoint2tet(pc, (tetrahedron) tetloop.tet); + // Save the exterior tet at this hull face. It still holds pointer + // to the adjacent interior tet. Use it to connect new hull tets. + newhullfacearray->newindex((void **) &parytet1); + parytet1->tet = parytet->tet; + parytet1->ver = j; + } // if (!infected(tetloop)) + } // j + } // i + + // Connect new hull tets. + for (i = 0; i < newhullfacearray->objects; i++) { + parytet = (triface *) fastlookup(newhullfacearray, i); + fsym(*parytet, neightet); + // Get the new hull tet. + fsym(neightet, hulltet); + for (j = 0; j < 3; j++) { + esym(hulltet, casface); + if (casface.tet[casface.ver & 3] == NULL) { + // Since the boundary of the domain may not be a manifold, we + // find the adjacent hull face by traversing the tets in the + // exterior (which are all infected tets). + neightet = *parytet; + while (1) { + fnextself(neightet); + if (!infected(neightet)) break; + } + if (!ishulltet(neightet)) { + // An interior tet. Get the new hull tet. + fsymself(neightet); + esymself(neightet); + } + // Bond them together. + bond(casface, neightet); + } + enextself(hulltet); + enextself(*parytet); + } // j + } // i + + if (subfacstack->objects > 0l) { + // Remove all subfaces which do not attach to any tetrahedron. + // Segments which are not attached to any subfaces and tets + // are deleted too. + face casingout, casingin; + long delsegcount = 0l; + + for (i = 0; i < subfacstack->objects; i++) { + parysh = (face *) fastlookup(subfacstack, i); + if (i == 0) { + if (b->verbose) { + printf("Warning: Removing an open face (%d, %d, %d)\n", + pointmark(sorg(*parysh)), pointmark(sdest(*parysh)), + pointmark(sapex(*parysh))); + } + } + // Dissolve this subface from face links. + for (j = 0; j < 3; j++) { + spivot(*parysh, casingout); + sspivot(*parysh, checkseg); + if (casingout.sh != NULL) { + casingin = casingout; + while (1) { + spivot(casingin, checksh); + if (checksh.sh == parysh->sh) break; + casingin = checksh; + } + if (casingin.sh != casingout.sh) { + // Update the link: ... -> casingin -> casingout ->... + sbond1(casingin, casingout); + } else { + // Only one subface at this edge is left. + sdissolve(casingout); + } + if (checkseg.sh != NULL) { + // Make sure the segment does not connect to a dead one. + ssbond(casingout, checkseg); + } + } else { + if (checkseg.sh != NULL) { + // The segment is also dead. + if (delsegcount == 0) { + if (b->verbose) { + printf("Warning: Removing a dangling segment (%d, %d)\n", + pointmark(sorg(checkseg)), pointmark(sdest(checkseg))); + } + } + shellfacedealloc(subsegs, checkseg.sh); + delsegcount++; + } + } + senextself(*parysh); + } // j + // Delete this subface. + shellfacedealloc(subfaces, parysh->sh); + } // i + if (b->verbose) { + printf(" Deleted %ld subfaces.\n", subfacstack->objects); + if (delsegcount > 0) { + printf(" Deleted %ld segments.\n", delsegcount); + } + } + subfacstack->restart(); + } // if (subfacstack->objects > 0l) + + if (cavetetvertlist->objects > 0l) { + // Some vertices may lie in exterior. Marke them as UNUSEDVERTEX. + long delvertcount = unuverts; + long delsteinercount = 0l; + + for (i = 0; i < cavetetvertlist->objects; i++) { + parypt = (point *) fastlookup(cavetetvertlist, i); + decode(point2tet(*parypt), neightet); + if (infected(neightet)) { + // Found an exterior vertex. + //if (pointmark(*parypt) > + // (in->numberofpoints - (in->firstnumber ? 0 : 1))) { + if (issteinerpoint(*parypt)) { + // A Steiner point. + if (pointtype(*parypt) == FREESEGVERTEX) { + st_segref_count--; + } else if (pointtype(*parypt) == FREEFACETVERTEX) { + st_facref_count--; + } else { + assert(pointtype(*parypt) == FREEVOLVERTEX); + st_volref_count--; + } + delsteinercount++; + if (steinerleft > 0) steinerleft++; + } + setpointtype(*parypt, UNUSEDVERTEX); + unuverts++; + } + } + + if (b->verbose) { + if (unuverts > delvertcount) { + if (delsteinercount > 0l) { + if (unuverts > (delvertcount + delsteinercount)) { + printf(" Removed %ld exterior input vertices.\n", + unuverts - delvertcount - delsteinercount); + } + printf(" Removed %ld exterior Steiner vertices.\n", + delsteinercount); + } else { + printf(" Removed %ld exterior input vertices.\n", + unuverts - delvertcount); + } + } + } + cavetetvertlist->restart(); + // Comment: 'subvertstack' will be cleaned in routine + // suppresssteinerpoints(). + } // if (cavetetvertlist->objects > 0l) + + // Update the hull size. + hullsize += (newhullfacearray->objects - hullarray->objects); + + // Delete all exterior tets and old hull tets. + for (i = 0; i < tetarray->objects; i++) { + parytet = (triface *) fastlookup(tetarray, i); + tetrahedrondealloc(parytet->tet); + } + tetarray->restart(); + + for (i = 0; i < hullarray->objects; i++) { + parytet = (triface *) fastlookup(hullarray, i); + tetrahedrondealloc(parytet->tet); + } + hullarray->restart(); + + delete newhullfacearray; + } // if (!b->convex && (tetarray->objects > 0l)) + + if (b->convex && (tetarray->objects > 0l)) { // With -c option + // In this case, all exterior tets get a region marker '-1'. + assert(b->regionattrib > 0); // -A option must be enabled. + int attrnum = numelemattrib - 1; + + for (i = 0; i < tetarray->objects; i++) { + parytet = (triface *) fastlookup(tetarray, i); + setelemattribute(parytet->tet, attrnum, -1); + } + tetarray->restart(); + + for (i = 0; i < hullarray->objects; i++) { + parytet = (triface *) fastlookup(hullarray, i); + uninfect(*parytet); + } + hullarray->restart(); + + if (subfacstack->objects > 0l) { + for (i = 0; i < subfacstack->objects; i++) { + parysh = (face *) fastlookup(subfacstack, i); + suninfect(*parysh); + } + subfacstack->restart(); + } + + if (cavetetvertlist->objects > 0l) { + cavetetvertlist->restart(); + } + } // if (b->convex && (tetarray->objects > 0l)) + + if (b->regionattrib) { // With -A option. + if (!b->quiet) { + Msg::Info(" --> Spreading region attributes ..."); + } + REAL volume; + int attr, maxattr = 0; // Choose a small number here. + int attrnum = numelemattrib - 1; + // Comment: The element region marker is at the end of the list of + // the element attributes. + int regioncount = 0; + + // Set attributes for all tetrahedra. + attr = maxattr + 1; + tetrahedrons->traversalinit(); + tetloop.tet = tetrahedrontraverse(); + while (tetloop.tet != (tetrahedron *) NULL) { + if (!infected(tetloop)) { + // An unmarked region. + tetarray->restart(); // Re-use this array. + infect(tetloop); + tetarray->newindex((void **) &parytet); + *parytet = tetloop; + // Find and mark all tets. + for (j = 0; j < tetarray->objects; j++) { + parytet = (triface *) fastlookup(tetarray, j); + tetloop = *parytet; + setelemattribute(tetloop.tet, attrnum, attr); + for (k = 0; k < 4; k++) { + decode(tetloop.tet[k], neightet); + // Is the adjacent tet already checked? + if (!infected(neightet)) { + // Is this side protected by a subface? + if (!issubface(neightet)) { + infect(neightet); + tetarray->newindex((void **) &parytet); + *parytet = neightet; + } + } + } // k + } // j + attr++; // Increase the attribute. + regioncount++; + } + tetloop.tet = tetrahedrontraverse(); + } + // Until here, every tet has a region attribute. + + // Uninfect processed tets. + tetrahedrons->traversalinit(); + tetloop.tet = tetrahedrontraverse(); + while (tetloop.tet != (tetrahedron *) NULL) { + uninfect(tetloop); + tetloop.tet = tetrahedrontraverse(); + } + + if (b->verbose) { + //assert(regioncount > 0); + if (regioncount > 1) { + printf(" Found %d subdomains.\n", regioncount); + } else { + printf(" Found %d domain.\n", regioncount); + } + } + } // if (b->regionattrib) + + if (regiontets != NULL) { + delete [] regiontets; + } + delete tetarray; + delete hullarray; + + if (!b->convex) { // No -c option + // The mesh is non-convex now. + nonconvex = 1; + + // Push all hull tets into 'flipstack'. + tetrahedrons->traversalinit(); + tetloop.ver = 11; // The face opposite to dummypoint. + tetloop.tet = alltetrahedrontraverse(); + while (tetloop.tet != (tetrahedron *) NULL) { + if ((point) tetloop.tet[7] == dummypoint) { + fsym(tetloop, neightet); + flippush(flipstack, &neightet); + } + tetloop.tet = alltetrahedrontraverse(); + } + + flipconstraints fc; + fc.enqflag = 2; + long sliver_peel_count = lawsonflip3d(&fc); + + if (sliver_peel_count > 0l) { + if (b->verbose) { + printf(" Removed %ld hull slivers.\n", sliver_peel_count); + } + } + unflipqueue->restart(); + } // if (!b->convex) +} + +//// //// +//// //// +//// reconstruct_cxx ////////////////////////////////////////////////////////// + +//// optimize_cxx ///////////////////////////////////////////////////////////// +//// //// +//// //// + +long meshGRegionBoundaryRecovery::lawsonflip3d(flipconstraints *fc) +{ + triface fliptets[5], neightet, hulltet; + face checksh, casingout; + badface *popface, *bface; + point pd, pe, *pts; + REAL sign, ori; + long flipcount, totalcount = 0l; + long sliver_peels = 0l; + int t1ver; + int i; + + + while (1) { + + if (b->verbose > 2) { + printf(" Lawson flip %ld faces.\n", flippool->items); + } + flipcount = 0l; + + while (flipstack != (badface *) NULL) { + // Pop a face from the stack. + popface = flipstack; + fliptets[0] = popface->tt; + flipstack = flipstack->nextitem; // The next top item in stack. + flippool->dealloc((void *) popface); + + // Skip it if it is a dead tet (destroyed by previous flips). + if (isdeadtet(fliptets[0])) continue; + // Skip it if it is not the same tet as we saved. + if (!facemarked(fliptets[0])) continue; + + unmarkface(fliptets[0]); + + if (ishulltet(fliptets[0])) continue; + + fsym(fliptets[0], fliptets[1]); + if (ishulltet(fliptets[1])) { + if (nonconvex) { + // Check if 'fliptets[0]' it is a hull sliver. + tspivot(fliptets[0], checksh); + for (i = 0; i < 3; i++) { + if (!isshsubseg(checksh)) { + spivot(checksh, casingout); + //assert(casingout.sh != NULL); + if (sorg(checksh) != sdest(casingout)) sesymself(casingout); + stpivot(casingout, neightet); + if (neightet.tet == fliptets[0].tet) { + // Found a hull sliver 'neightet'. Let it be [e,d,a,b], where + // [e,d,a] and [d,e,b] are hull faces. + edestoppo(neightet, hulltet); // [a,b,e,d] + fsymself(hulltet); // [b,a,e,#] + if (oppo(hulltet) == dummypoint) { + pe = org(neightet); + if ((pointtype(pe) == FREEFACETVERTEX) || + (pointtype(pe) == FREESEGVERTEX)) { + removevertexbyflips(pe); + } + } else { + eorgoppo(neightet, hulltet); // [b,a,d,e] + fsymself(hulltet); // [a,b,d,#] + if (oppo(hulltet) == dummypoint) { + pd = dest(neightet); + if ((pointtype(pd) == FREEFACETVERTEX) || + (pointtype(pd) == FREESEGVERTEX)) { + removevertexbyflips(pd); + } + } else { + // Perform a 3-to-2 flip to remove the sliver. + fliptets[0] = neightet; // [e,d,a,b] + fnext(fliptets[0], fliptets[1]); // [e,d,b,c] + fnext(fliptets[1], fliptets[2]); // [e,d,c,a] + flip32(fliptets, 1, fc); + // Update counters. + flip32count--; + flip22count--; + sliver_peels++; + if (fc->remove_ndelaunay_edge) { + // Update the volume (must be decreased). + //assert(fc->tetprism_vol_sum <= 0); + tetprism_vol_sum += fc->tetprism_vol_sum; + fc->tetprism_vol_sum = 0.0; // Clear it. + } + } + } + break; + } // if (neightet.tet == fliptets[0].tet) + } // if (!isshsubseg(checksh)) + senextself(checksh); + } // i + } // if (nonconvex) + continue; + } + + if (checksubfaceflag) { + // Do not flip if it is a subface. + if (issubface(fliptets[0])) continue; + } + + // Test whether the face is locally Delaunay or not. + pts = (point *) fliptets[1].tet; + sign = insphere_s(pts[4], pts[5], pts[6], pts[7], oppo(fliptets[0])); + + if (sign < 0) { + // A non-Delaunay face. Try to flip it. + pd = oppo(fliptets[0]); + pe = oppo(fliptets[1]); + + // Check the convexity of its three edges. Stop checking either a + // locally non-convex edge (ori < 0) or a flat edge (ori = 0) is + // encountered, and 'fliptet' represents that edge. + for (i = 0; i < 3; i++) { + ori = orient3d(org(fliptets[0]), dest(fliptets[0]), pd, pe); + if (ori <= 0) break; + enextself(fliptets[0]); + } + + if (ori > 0) { + // A 2-to-3 flip is found. + // [0] [a,b,c,d], + // [1] [b,a,c,e]. no dummypoint. + flip23(fliptets, 0, fc); + flipcount++; + if (fc->remove_ndelaunay_edge) { + // Update the volume (must be decreased). + //assert(fc->tetprism_vol_sum <= 0); + tetprism_vol_sum += fc->tetprism_vol_sum; + fc->tetprism_vol_sum = 0.0; // Clear it. + } + continue; + } else { // ori <= 0 + // The edge ('fliptets[0]' = [a',b',c',d]) is non-convex or flat, + // where the edge [a',b'] is one of [a,b], [b,c], and [c,a]. + if (checksubsegflag) { + // Do not flip if it is a segment. + if (issubseg(fliptets[0])) continue; + } + // Check if there are three or four tets sharing at this edge. + esymself(fliptets[0]); // [b,a,d,c] + for (i = 0; i < 3; i++) { + fnext(fliptets[i], fliptets[i+1]); + } + if (fliptets[3].tet == fliptets[0].tet) { + // A 3-to-2 flip is found. (No hull tet.) + flip32(fliptets, 0, fc); + flipcount++; + if (fc->remove_ndelaunay_edge) { + // Update the volume (must be decreased). + //assert(fc->tetprism_vol_sum <= 0); + tetprism_vol_sum += fc->tetprism_vol_sum; + fc->tetprism_vol_sum = 0.0; // Clear it. + } + continue; + } else { + // There are more than 3 tets at this edge. + fnext(fliptets[3], fliptets[4]); + if (fliptets[4].tet == fliptets[0].tet) { + // There are exactly 4 tets at this edge. + if (nonconvex) { + if (apex(fliptets[3]) == dummypoint) { + // This edge is locally non-convex on the hull. + // It can be removed by a 4-to-4 flip. + ori = 0; + } + } // if (nonconvex) + if (ori == 0) { + // A 4-to-4 flip is found. (Two hull tets may be involved.) + // Current tets in 'fliptets': + // [0] [b,a,d,c] (d may be newpt) + // [1] [b,a,c,e] + // [2] [b,a,e,f] (f may be dummypoint) + // [3] [b,a,f,d] + esymself(fliptets[0]); // [a,b,c,d] + // A 2-to-3 flip replaces face [a,b,c] by edge [e,d]. + // This creates a degenerate tet [e,d,a,b] (tmpfliptets[0]). + // It will be removed by the followed 3-to-2 flip. + flip23(fliptets, 0, fc); // No hull tet. + fnext(fliptets[3], fliptets[1]); + fnext(fliptets[1], fliptets[2]); + // Current tets in 'fliptets': + // [0] [...] + // [1] [b,a,d,e] (degenerated, d may be new point). + // [2] [b,a,e,f] (f may be dummypoint) + // [3] [b,a,f,d] + // A 3-to-2 flip replaces edge [b,a] by face [d,e,f]. + // Hull tets may be involved (f may be dummypoint). + flip32(&(fliptets[1]), (apex(fliptets[3]) == dummypoint), fc); + flipcount++; + flip23count--; + flip32count--; + flip44count++; + if (fc->remove_ndelaunay_edge) { + // Update the volume (must be decreased). + //assert(fc->tetprism_vol_sum <= 0); + tetprism_vol_sum += fc->tetprism_vol_sum; + fc->tetprism_vol_sum = 0.0; // Clear it. + } + continue; + } // if (ori == 0) + } + } + } // if (ori <= 0) + + // This non-Delaunay face is unflippable. Save it. + unflipqueue->newindex((void **) &bface); + bface->tt = fliptets[0]; + bface->forg = org(fliptets[0]); + bface->fdest = dest(fliptets[0]); + bface->fapex = apex(fliptets[0]); + } // if (sign < 0) + } // while (flipstack) + + if (b->verbose > 2) { + if (flipcount > 0) { + printf(" Performed %ld flips.\n", flipcount); + } + } + // Accumulate the counter of flips. + totalcount += flipcount; + + assert(flippool->items == 0l); + // Return if no unflippable faces left. + if (unflipqueue->objects == 0l) break; + // Return if no flip has been performed. + if (flipcount == 0l) break; + + // Try to flip the unflippable faces. + for (i = 0; i < unflipqueue->objects; i++) { + bface = (badface *) fastlookup(unflipqueue, i); + if (!isdeadtet(bface->tt) && + (org(bface->tt) == bface->forg) && + (dest(bface->tt) == bface->fdest) && + (apex(bface->tt) == bface->fapex)) { + flippush(flipstack, &(bface->tt)); + } + } + unflipqueue->restart(); + + } // while (1) + + if (b->verbose > 2) { + if (totalcount > 0) { + printf(" Performed %ld flips.\n", totalcount); + } + if (sliver_peels > 0) { + printf(" Removed %ld hull slivers.\n", sliver_peels); + } + if (unflipqueue->objects > 0l) { + printf(" %ld unflippable edges remained.\n", unflipqueue->objects); + } + } + + return totalcount + sliver_peels; +} + +void meshGRegionBoundaryRecovery::recoverdelaunay() +{ + arraypool *flipqueue, *nextflipqueue, *swapqueue; + triface tetloop, neightet, *parytet; + badface *bface, *parybface; + point *ppt; + flipconstraints fc; + int i, j; + + if (!b->quiet) { + Msg::Info(" --> Recovering Delaunayness ..."); + } + + tetprism_vol_sum = 0.0; // Initialize it. + + // Put all interior faces of the mesh into 'flipstack'. + tetrahedrons->traversalinit(); + tetloop.tet = tetrahedrontraverse(); + while (tetloop.tet != NULL) { + for (tetloop.ver = 0; tetloop.ver < 4; tetloop.ver++) { + decode(tetloop.tet[tetloop.ver], neightet); + if (!facemarked(neightet)) { + flippush(flipstack, &tetloop); + } + } + ppt = (point *) &(tetloop.tet[4]); + tetprism_vol_sum += tetprismvol(ppt[0], ppt[1], ppt[2], ppt[3]); + tetloop.tet = tetrahedrontraverse(); + } + + // Calulate a relatively lower bound for small improvement. + // Used to avoid rounding error in volume calculation. + fc.bak_tetprism_vol = tetprism_vol_sum * b->epsilon * 1e-3; + + if (b->verbose) { + printf(" Initial obj = %.17g\n", tetprism_vol_sum); + } + + if (b->verbose > 1) { + printf(" Recover Delaunay [Lawson] : %ld\n", flippool->items); + } + + // First only use the basic Lawson's flip. + fc.remove_ndelaunay_edge = 1; + fc.enqflag = 2; + + lawsonflip3d(&fc); + + if (b->verbose > 1) { + printf(" obj (after Lawson) = %.17g\n", tetprism_vol_sum); + } + + if (unflipqueue->objects == 0l) { + return; // The mesh is Delaunay. + } + + fc.unflip = 1; // Unflip if the edge is not flipped. + fc.collectnewtets = 1; // new tets are returned in 'cavetetlist'. + fc.enqflag = 0; + + autofliplinklevel = 1; // Init level. + b->fliplinklevel = -1; // No fixed level. + + // For efficiency reason, we limit the maximium size of the edge star. + int bakmaxflipstarsize = b->flipstarsize; + b->flipstarsize = 10; // default + + flipqueue = new arraypool(sizeof(badface), 10); + nextflipqueue = new arraypool(sizeof(badface), 10); + + // Swap the two flip queues. + swapqueue = flipqueue; + flipqueue = unflipqueue; + unflipqueue = swapqueue; + + while (flipqueue->objects > 0l) { + + if (b->verbose > 1) { + printf(" Recover Delaunay [level = %2d] #: %ld.\n", + autofliplinklevel, flipqueue->objects); + } + + for (i = 0; i < flipqueue->objects; i++) { + bface = (badface *) fastlookup(flipqueue, i); + if (getedge(bface->forg, bface->fdest, &bface->tt)) { + if (removeedgebyflips(&(bface->tt), &fc) == 2) { + tetprism_vol_sum += fc.tetprism_vol_sum; + fc.tetprism_vol_sum = 0.0; // Clear it. + // Queue new faces for flips. + for (j = 0; j < cavetetlist->objects; j++) { + parytet = (triface *) fastlookup(cavetetlist, j); + // A queued new tet may be dead. + if (!isdeadtet(*parytet)) { + for (parytet->ver = 0; parytet->ver < 4; parytet->ver++) { + // Avoid queue a face twice. + decode(parytet->tet[parytet->ver], neightet); + if (!facemarked(neightet)) { + flippush(flipstack, parytet); + } + } // parytet->ver + } + } // j + cavetetlist->restart(); + // Remove locally non-Delaunay faces. New non-Delaunay edges + // may be found. They are saved in 'unflipqueue'. + fc.enqflag = 2; + lawsonflip3d(&fc); + fc.enqflag = 0; + // There may be unflipable faces. Add them in flipqueue. + for (j = 0; j < unflipqueue->objects; j++) { + bface = (badface *) fastlookup(unflipqueue, j); + flipqueue->newindex((void **) &parybface); + *parybface = *bface; + } + unflipqueue->restart(); + } else { + // Unable to remove this edge. Save it. + nextflipqueue->newindex((void **) &parybface); + *parybface = *bface; + // Normally, it should be zero. + //assert(fc.tetprism_vol_sum == 0.0); + // However, due to rounding errors, a tiny value may appear. + fc.tetprism_vol_sum = 0.0; + } + } + } // i + + if (b->verbose > 1) { + printf(" obj (after level %d) = %.17g.\n", autofliplinklevel, + tetprism_vol_sum); + } + flipqueue->restart(); + + // Swap the two flip queues. + swapqueue = flipqueue; + flipqueue = nextflipqueue; + nextflipqueue = swapqueue; + + if (flipqueue->objects > 0l) { + // default 'b->delmaxfliplevel' is 1. + if (autofliplinklevel >= b->delmaxfliplevel) { + // For efficiency reason, we do not search too far. + break; + } + autofliplinklevel+=b->fliplinklevelinc; + } + } // while (flipqueue->objects > 0l) + + if (flipqueue->objects > 0l) { + if (b->verbose > 1) { + printf(" %ld non-Delaunay edges remained.\n", flipqueue->objects); + } + } + + if (b->verbose) { + printf(" Final obj = %.17g\n", tetprism_vol_sum); + } + + b->flipstarsize = bakmaxflipstarsize; + delete flipqueue; + delete nextflipqueue; +} + +int meshGRegionBoundaryRecovery::gettetrahedron(point pa, point pb, point pc, + point pd, triface *searchtet) +{ + triface spintet; + int t1ver; + + if (getedge(pa, pb, searchtet)) { + spintet = *searchtet; + while (1) { + if (apex(spintet) == pc) { + *searchtet = spintet; + break; + } + fnextself(spintet); + if (spintet.tet == searchtet->tet) break; + } + if (apex(*searchtet) == pc) { + if (oppo(*searchtet) == pd) { + return 1; + } else { + fsymself(*searchtet); + if (oppo(*searchtet) == pd) { + return 1; + } + } + } + } + + return 0; +} + +long meshGRegionBoundaryRecovery::improvequalitybyflips() +{ + arraypool *flipqueue, *nextflipqueue, *swapqueue; + badface *bface, *parybface; + triface *parytet; + point *ppt; + flipconstraints fc; + REAL *cosdd, ncosdd[6], maxdd; + long totalremcount, remcount; + int remflag; + int n, i, j, k; + + //assert(unflipqueue->objects > 0l); + flipqueue = new arraypool(sizeof(badface), 10); + nextflipqueue = new arraypool(sizeof(badface), 10); + + // Backup flip edge options. + int bakautofliplinklevel = autofliplinklevel; + int bakfliplinklevel = b->fliplinklevel; + int bakmaxflipstarsize = b->flipstarsize; + + // Set flip edge options. + autofliplinklevel = 1; + b->fliplinklevel = -1; + b->flipstarsize = 10; // b->optmaxflipstarsize; + + fc.remove_large_angle = 1; + fc.unflip = 1; + fc.collectnewtets = 1; + fc.checkflipeligibility = 1; + + totalremcount = 0l; + + // Swap the two flip queues. + swapqueue = flipqueue; + flipqueue = unflipqueue; + unflipqueue = swapqueue; + + while (flipqueue->objects > 0l) { + + remcount = 0l; + + while (flipqueue->objects > 0l) { + if (b->verbose > 1) { + printf(" Improving mesh qualiy by flips [%d]#: %ld.\n", + autofliplinklevel, flipqueue->objects); + } + + for (k = 0; k < flipqueue->objects; k++) { + bface = (badface *) fastlookup(flipqueue, k); + if (gettetrahedron(bface->forg, bface->fdest, bface->fapex, + bface->foppo, &bface->tt)) { + //assert(!ishulltet(bface->tt)); + // There are bad dihedral angles in this tet. + if (bface->tt.ver != 11) { + // The dihedral angles are permuted. + // Here we simply re-compute them. Slow!!. + ppt = (point *) & (bface->tt.tet[4]); + tetalldihedral(ppt[0], ppt[1], ppt[2], ppt[3], bface->cent, + &bface->key, NULL); + bface->forg = ppt[0]; + bface->fdest = ppt[1]; + bface->fapex = ppt[2]; + bface->foppo = ppt[3]; + bface->tt.ver = 11; + } + if (bface->key == 0) { + // Re-comput the quality values. Due to smoothing operations. + ppt = (point *) & (bface->tt.tet[4]); + tetalldihedral(ppt[0], ppt[1], ppt[2], ppt[3], bface->cent, + &bface->key, NULL); + } + cosdd = bface->cent; + remflag = 0; + for (i = 0; (i < 6) && !remflag; i++) { + if (cosdd[i] < cosmaxdihed) { + // Found a large dihedral angle. + bface->tt.ver = edge2ver[i]; // Go to the edge. + fc.cosdihed_in = cosdd[i]; + fc.cosdihed_out = 0.0; // 90 degree. + n = removeedgebyflips(&(bface->tt), &fc); + if (n == 2) { + // Edge is flipped. + remflag = 1; + if (fc.cosdihed_out < cosmaxdihed) { + // Queue new bad tets for further improvements. + for (j = 0; j < cavetetlist->objects; j++) { + parytet = (triface *) fastlookup(cavetetlist, j); + if (!isdeadtet(*parytet)) { + ppt = (point *) & (parytet->tet[4]); + // Do not test a hull tet. + if (ppt[3] != dummypoint) { + tetalldihedral(ppt[0], ppt[1], ppt[2], ppt[3], ncosdd, + &maxdd, NULL); + if (maxdd < cosmaxdihed) { + // There are bad dihedral angles in this tet. + nextflipqueue->newindex((void **) &parybface); + parybface->tt.tet = parytet->tet; + parybface->tt.ver = 11; + parybface->forg = ppt[0]; + parybface->fdest = ppt[1]; + parybface->fapex = ppt[2]; + parybface->foppo = ppt[3]; + parybface->key = maxdd; + for (n = 0; n < 6; n++) { + parybface->cent[n] = ncosdd[n]; + } + } + } // if (ppt[3] != dummypoint) + } + } // j + } // if (fc.cosdihed_out < cosmaxdihed) + cavetetlist->restart(); + remcount++; + } + } + } // i + if (!remflag) { + // An unremoved bad tet. Queue it again. + unflipqueue->newindex((void **) &parybface); + *parybface = *bface; + } + } // if (gettetrahedron(...)) + } // k + + flipqueue->restart(); + + // Swap the two flip queues. + swapqueue = flipqueue; + flipqueue = nextflipqueue; + nextflipqueue = swapqueue; + } // while (flipqueues->objects > 0) + + if (b->verbose > 1) { + printf(" Removed %ld bad tets.\n", remcount); + } + totalremcount += remcount; + + if (unflipqueue->objects > 0l) { + //if (autofliplinklevel >= b->optmaxfliplevel) { + if (autofliplinklevel >= b->optlevel) { + break; + } + autofliplinklevel+=b->fliplinklevelinc; + //b->flipstarsize = 10 + (1 << (b->optlevel - 1)); + } + + // Swap the two flip queues. + swapqueue = flipqueue; + flipqueue = unflipqueue; + unflipqueue = swapqueue; + } // while (flipqueues->objects > 0) + + // Restore original flip edge options. + autofliplinklevel = bakautofliplinklevel; + b->fliplinklevel = bakfliplinklevel; + b->flipstarsize = bakmaxflipstarsize; + + delete flipqueue; + delete nextflipqueue; + + return totalremcount; +} + +int meshGRegionBoundaryRecovery::smoothpoint(point smtpt, + arraypool *linkfacelist, int ccw, optparameters *opm) +{ + triface *parytet, *parytet1, swaptet; + point pa, pb, pc; + REAL fcent[3], startpt[3], nextpt[3], bestpt[3]; + REAL oldval, minval = 0.0, val; + REAL maxcosd; // oldang, newang; + REAL ori, diff; + int numdirs, iter; + int i, j, k; + + // Decide the number of moving directions. + numdirs = (int) linkfacelist->objects; + if (numdirs > opm->numofsearchdirs) { + numdirs = opm->numofsearchdirs; // Maximum search directions. + } + + // Set the initial value. + if (!opm->max_min_volume) { + assert(opm->initval >= 0.0); + } + opm->imprval = opm->initval; + iter = 0; + + for (i = 0; i < 3; i++) { + bestpt[i] = startpt[i] = smtpt[i]; + } + + // Iterate until the obj function is not improved. + while (1) { + + // Find the best next location. + oldval = opm->imprval; + + for (i = 0; i < numdirs; i++) { + // Randomly pick a link face (0 <= k <= objects - i - 1). + k = (int) randomnation(linkfacelist->objects - i); + parytet = (triface *) fastlookup(linkfacelist, k); + // Calculate a new position from 'p' to the center of this face. + pa = org(*parytet); + pb = dest(*parytet); + pc = apex(*parytet); + for (j = 0; j < 3; j++) { + fcent[j] = (pa[j] + pb[j] + pc[j]) / 3.0; + } + for (j = 0; j < 3; j++) { + nextpt[j] = startpt[j] + opm->searchstep * (fcent[j] - startpt[j]); + } + // Calculate the largest minimum function value for the new location. + for (j = 0; j < linkfacelist->objects; j++) { + parytet = (triface *) fastlookup(linkfacelist, j); + if (ccw) { + pa = org(*parytet); + pb = dest(*parytet); + } else { + pb = org(*parytet); + pa = dest(*parytet); + } + pc = apex(*parytet); + ori = orient3d(pa, pb, pc, nextpt); + if (ori < 0.0) { + // Calcuate the objective function value. + if (opm->max_min_volume) { + //val = -ori; + val = - orient3dfast(pa, pb, pc, nextpt); + } else if (opm->min_max_aspectratio) { + val = tetaspectratio(pa, pb, pc, nextpt); + } else if (opm->min_max_dihedangle) { + tetalldihedral(pa, pb, pc, nextpt, NULL, &maxcosd, NULL); + if (maxcosd < -1) maxcosd = -1.0; // Rounding. + val = maxcosd + 1.0; // Make it be positive. + } else { + // Unknown objective function. + val = 0.0; + } + } else { // ori >= 0.0; + // An invalid new tet. + // This may happen if the mesh contains inverted elements. + if (opm->max_min_volume) { + //val = -ori; + val = - orient3dfast(pa, pb, pc, nextpt); + } else { + // Discard this point. + break; // j + } + } // if (ori >= 0.0) + // Stop looping when the object value is not improved. + if (val <= opm->imprval) { + break; // j + } else { + // Remember the smallest improved value. + if (j == 0) { + minval = val; + } else { + minval = (val < minval) ? val : minval; + } + } + } // j + if (j == linkfacelist->objects) { + // The function value has been improved. + opm->imprval = minval; + // Save the new location of the point. + for (j = 0; j < 3; j++) bestpt[j] = nextpt[j]; + } + // Swap k-th and (object-i-1)-th entries. + j = linkfacelist->objects - i - 1; + parytet = (triface *) fastlookup(linkfacelist, k); + parytet1 = (triface *) fastlookup(linkfacelist, j); + swaptet = *parytet1; + *parytet1 = *parytet; + *parytet = swaptet; + } // i + + diff = opm->imprval - oldval; + if (diff > 0.0) { + // Is the function value improved effectively? + if (opm->max_min_volume) { + //if ((diff / oldval) < b->epsilon) diff = 0.0; + } else if (opm->min_max_aspectratio) { + if ((diff / oldval) < 1e-3) diff = 0.0; + } else if (opm->min_max_dihedangle) { + //oldang = acos(oldval - 1.0); + //newang = acos(opm->imprval - 1.0); + //if ((oldang - newang) < 0.00174) diff = 0.0; // about 0.1 degree. + } else { + // Unknown objective function. + assert(0); // Not possible. + } + } + + if (diff > 0.0) { + // Yes, move p to the new location and continue. + for (j = 0; j < 3; j++) startpt[j] = bestpt[j]; + iter++; + if ((opm->maxiter > 0) && (iter >= opm->maxiter)) { + // Maximum smoothing iterations reached. + break; + } + } else { + break; + } + + } // while (1) + + if (iter > 0) { + // The point has been smoothed. + opm->smthiter = iter; // Remember the number of iterations. + // The point has been smoothed. Update it to its new position. + for (i = 0; i < 3; i++) smtpt[i] = startpt[i]; + } + + return iter; +} + + +long meshGRegionBoundaryRecovery::improvequalitybysmoothing(optparameters *opm) +{ + arraypool *flipqueue, *swapqueue; + triface *parytet; + badface *bface, *parybface; + point *ppt; + long totalsmtcount, smtcount; + int smtflag; + int iter, i, j, k; + + //assert(unflipqueue->objects > 0l); + flipqueue = new arraypool(sizeof(badface), 10); + + // Swap the two flip queues. + swapqueue = flipqueue; + flipqueue = unflipqueue; + unflipqueue = swapqueue; + + totalsmtcount = 0l; + iter = 0; + + while (flipqueue->objects > 0l) { + + smtcount = 0l; + + if (b->verbose > 1) { + printf(" Improving mesh quality by smoothing [%d]#: %ld.\n", + iter, flipqueue->objects); + } + + for (k = 0; k < flipqueue->objects; k++) { + bface = (badface *) fastlookup(flipqueue, k); + if (gettetrahedron(bface->forg, bface->fdest, bface->fapex, + bface->foppo, &bface->tt)) { + // Operate on it if it is not in 'unflipqueue'. + if (!marktested(bface->tt)) { + // Here we simply re-compute the quality. Since other smoothing + // operation may have moved the vertices of this tet. + ppt = (point *) & (bface->tt.tet[4]); + tetalldihedral(ppt[0], ppt[1], ppt[2], ppt[3], bface->cent, + &bface->key, NULL); + if (bface->key < cossmtdihed) { // if (maxdd < cosslidihed) { + // It is a sliver. Try to smooth its vertices. + smtflag = 0; + opm->initval = bface->key + 1.0; + for (i = 0; (i < 4) && !smtflag; i++) { + if (pointtype(ppt[i]) == FREEVOLVERTEX) { + getvertexstar(1, ppt[i], cavetetlist, NULL, NULL); + opm->searchstep = 0.001; // Search step size + smtflag = smoothpoint(ppt[i], cavetetlist, 1, opm); + if (smtflag) { + while (opm->smthiter == opm->maxiter) { + opm->searchstep *= 10.0; // Increase the step size. + opm->initval = opm->imprval; + opm->smthiter = 0; // reset + smoothpoint(ppt[i], cavetetlist, 1, opm); + } + // This tet is modifed. + smtcount++; + if ((opm->imprval - 1.0) < cossmtdihed) { + // There are slivers in new tets. Queue them. + for (j = 0; j < cavetetlist->objects; j++) { + parytet = (triface *) fastlookup(cavetetlist, j); + assert(!isdeadtet(*parytet)); + // Operate it if it is not in 'unflipqueue'. + if (!marktested(*parytet)) { + // Evaluate its quality. + // Re-use ppt, bface->key, bface->cent. + ppt = (point *) & (parytet->tet[4]); + tetalldihedral(ppt[0], ppt[1], ppt[2], ppt[3], + bface->cent, &bface->key, NULL); + if (bface->key < cossmtdihed) { + // A new sliver. Queue it. + marktest(*parytet); // It is in unflipqueue. + unflipqueue->newindex((void **) &parybface); + parybface->tt = *parytet; + parybface->forg = ppt[0]; + parybface->fdest = ppt[1]; + parybface->fapex = ppt[2]; + parybface->foppo = ppt[3]; + parybface->tt.ver = 11; + parybface->key = 0.0; + } + } + } // j + } // if ((opm->imprval - 1.0) < cossmtdihed) + } // if (smtflag) + cavetetlist->restart(); + } // if (pointtype(ppt[i]) == FREEVOLVERTEX) + } // i + if (!smtflag) { + // Didn't smooth. Queue it again. + marktest(bface->tt); // It is in unflipqueue. + unflipqueue->newindex((void **) &parybface); + parybface->tt = bface->tt; + parybface->forg = ppt[0]; + parybface->fdest = ppt[1]; + parybface->fapex = ppt[2]; + parybface->foppo = ppt[3]; + parybface->tt.ver = 11; + parybface->key = 0.0; + } + } // if (maxdd < cosslidihed) + } // if (!marktested(...)) + } // if (gettetrahedron(...)) + } // k + + flipqueue->restart(); + + // Unmark the tets in unflipqueue. + for (i = 0; i < unflipqueue->objects; i++) { + bface = (badface *) fastlookup(unflipqueue, i); + unmarktest(bface->tt); + } + + if (b->verbose > 1) { + printf(" Smooth %ld points.\n", smtcount); + } + totalsmtcount += smtcount; + + if (smtcount == 0l) { + // No point has been smoothed. + break; + } else { + iter++; + if (iter == 2) { //if (iter >= b->optpasses) { + break; + } + } + + // Swap the two flip queues. + swapqueue = flipqueue; + flipqueue = unflipqueue; + unflipqueue = swapqueue; + } // while + + delete flipqueue; + + return totalsmtcount; +} + +int meshGRegionBoundaryRecovery::splitsliver(triface *slitet, REAL cosd, + int chkencflag) +{ + triface *abtets; + triface searchtet, spintet, *parytet; + point pa, pb, steinerpt; + optparameters opm; + insertvertexflags ivf; + REAL smtpt[3], midpt[3]; + int success; + int t1ver; + int n, i; + + // 'slitet' is [c,d,a,b], where [c,d] has a big dihedral angle. + // Go to the opposite edge [a,b]. + edestoppo(*slitet, searchtet); // [a,b,c,d]. + + // Do not split a segment. + if (issubseg(searchtet)) { + return 0; + } + + // Count the number of tets shared at [a,b]. + // Do not split it if it is a hull edge. + spintet = searchtet; + n = 0; + while (1) { + if (ishulltet(spintet)) break; + n++; + fnextself(spintet); + if (spintet.tet == searchtet.tet) break; + } + if (ishulltet(spintet)) { + return 0; // It is a hull edge. + } + assert(n >= 3); + + // Get all tets at edge [a,b]. + abtets = new triface[n]; + spintet = searchtet; + for (i = 0; i < n; i++) { + abtets[i] = spintet; + fnextself(spintet); + } + + // Initialize the list of 2n boundary faces. + for (i = 0; i < n; i++) { + eprev(abtets[i], searchtet); + esymself(searchtet); // [a,p_i,p_i+1]. + cavetetlist->newindex((void **) &parytet); + *parytet = searchtet; + enext(abtets[i], searchtet); + esymself(searchtet); // [p_i,b,p_i+1]. + cavetetlist->newindex((void **) &parytet); + *parytet = searchtet; + } + + // Init the Steiner point at the midpoint of edge [a,b]. + pa = org(abtets[0]); + pb = dest(abtets[0]); + for (i = 0; i < 3; i++) { + smtpt[i] = midpt[i] = 0.5 * (pa[i] + pb[i]); + } + + // Point smooth options. + opm.min_max_dihedangle = 1; + opm.initval = cosd + 1.0; // Initial volume is zero. + opm.numofsearchdirs = 20; + opm.searchstep = 0.001; + opm.maxiter = 100; // Limit the maximum iterations. + + success = smoothpoint(smtpt, cavetetlist, 1, &opm); + + if (success) { + while (opm.smthiter == opm.maxiter) { + // It was relocated and the prescribed maximum iteration reached. + // Try to increase the search stepsize. + opm.searchstep *= 10.0; + //opm.maxiter = 100; // Limit the maximum iterations. + opm.initval = opm.imprval; + opm.smthiter = 0; // Init. + smoothpoint(smtpt, cavetetlist, 1, &opm); + } + } // if (success) + + cavetetlist->restart(); + + if (!success) { + delete [] abtets; + return 0; + } + + + // Insert the Steiner point. + makepoint(&steinerpt, FREEVOLVERTEX); + for (i = 0; i < 3; i++) steinerpt[i] = smtpt[i]; + + // Insert the created Steiner point. + for (i = 0; i < n; i++) { + infect(abtets[i]); + caveoldtetlist->newindex((void **) &parytet); + *parytet = abtets[i]; + } + + searchtet = abtets[0]; // No need point location. + if (b->metric) { + locate(steinerpt, &searchtet); // For size interpolation. + } + + delete [] abtets; + + ivf.iloc = (int) INSTAR; + ivf.chkencflag = chkencflag; + ivf.assignmeshsize = b->metric; + + + if (insertpoint(steinerpt, &searchtet, NULL, NULL, &ivf)) { + // The vertex has been inserted. + st_volref_count++; + if (steinerleft > 0) steinerleft--; + return 1; + } else { + // The Steiner point is too close to an existing vertex. Reject it. + pointdealloc(steinerpt); + return 0; + } +} + +long meshGRegionBoundaryRecovery::removeslivers(int chkencflag) +{ + arraypool *flipqueue, *swapqueue; + badface *bface, *parybface; + triface slitet, *parytet; + point *ppt; + REAL cosdd[6], maxcosd; + long totalsptcount, sptcount; + int iter, i, j, k; + + //assert(unflipqueue->objects > 0l); + flipqueue = new arraypool(sizeof(badface), 10); + + // Swap the two flip queues. + swapqueue = flipqueue; + flipqueue = unflipqueue; + unflipqueue = swapqueue; + + totalsptcount = 0l; + iter = 0; + + while ((flipqueue->objects > 0l) && (steinerleft != 0)) { + + sptcount = 0l; + + if (b->verbose > 1) { + printf(" Splitting bad quality tets [%d]#: %ld.\n", + iter, flipqueue->objects); + } + + for (k = 0; (k < flipqueue->objects) && (steinerleft != 0); k++) { + bface = (badface *) fastlookup(flipqueue, k); + if (gettetrahedron(bface->forg, bface->fdest, bface->fapex, + bface->foppo, &bface->tt)) { + if ((bface->key == 0) || (bface->tt.ver != 11)) { + // Here we need to re-compute the quality. Since other smoothing + // operation may have moved the vertices of this tet. + ppt = (point *) & (bface->tt.tet[4]); + tetalldihedral(ppt[0], ppt[1], ppt[2], ppt[3], bface->cent, + &bface->key, NULL); + } + if (bface->key < cosslidihed) { + // It is a sliver. Try to split it. + slitet.tet = bface->tt.tet; + //cosdd = bface->cent; + for (j = 0; j < 6; j++) { + if (bface->cent[j] < cosslidihed) { + // Found a large dihedral angle. + slitet.ver = edge2ver[j]; // Go to the edge. + if (splitsliver(&slitet, bface->cent[j], chkencflag)) { + sptcount++; + break; + } + } + } // j + if (j < 6) { + // A sliver is split. Queue new slivers. + badtetrahedrons->traversalinit(); + parytet = (triface *) badtetrahedrons->traverse(); + while (parytet != NULL) { + unmarktest2(*parytet); + ppt = (point *) & (parytet->tet[4]); + tetalldihedral(ppt[0], ppt[1], ppt[2], ppt[3], cosdd, + &maxcosd, NULL); + if (maxcosd < cosslidihed) { + // A new sliver. Queue it. + unflipqueue->newindex((void **) &parybface); + parybface->forg = ppt[0]; + parybface->fdest = ppt[1]; + parybface->fapex = ppt[2]; + parybface->foppo = ppt[3]; + parybface->tt.tet = parytet->tet; + parybface->tt.ver = 11; + parybface->key = maxcosd; + for (i = 0; i < 6; i++) { + parybface->cent[i] = cosdd[i]; + } + } + parytet = (triface *) badtetrahedrons->traverse(); + } + badtetrahedrons->restart(); + } else { + // Didn't split. Queue it again. + unflipqueue->newindex((void **) &parybface); + *parybface = *bface; + } // if (j == 6) + } // if (bface->key < cosslidihed) + } // if (gettetrahedron(...)) + } // k + + flipqueue->restart(); + + if (b->verbose > 1) { + printf(" Split %ld tets.\n", sptcount); + } + totalsptcount += sptcount; + + if (sptcount == 0l) { + // No point has been smoothed. + break; + } else { + iter++; + if (iter == 2) { //if (iter >= b->optpasses) { + break; + } + } + + // Swap the two flip queues. + swapqueue = flipqueue; + flipqueue = unflipqueue; + unflipqueue = swapqueue; + } // while + + delete flipqueue; + + return totalsptcount; +} + +void meshGRegionBoundaryRecovery::optimizemesh() +{ + badface *parybface; + triface checktet; + point *ppt; + int optpasses; + optparameters opm; + REAL ncosdd[6], maxdd; + long totalremcount, remcount; + long totalsmtcount, smtcount; + long totalsptcount, sptcount; + int chkencflag; + int iter; + int n; + + if (!b->quiet) { + Msg::Info(" --> Optimizing mesh..."); + } + + optpasses = ((1 << b->optlevel) - 1); + + if (b->verbose) { + printf(" Optimization level = %d.\n", b->optlevel); + printf(" Optimization scheme = %d.\n", b->optscheme); + printf(" Number of iteration = %d.\n", optpasses); + printf(" Min_Max dihed angle = %g.\n", b->optmaxdihedral); + } + + totalsmtcount = totalsptcount = totalremcount = 0l; + + cosmaxdihed = cos(b->optmaxdihedral / 180.0 * PI); + cossmtdihed = cos(b->optminsmtdihed / 180.0 * PI); + cosslidihed = cos(b->optminslidihed / 180.0 * PI); + + int attrnum = numelemattrib - 1; + + // Put all bad tetrahedra into array. + tetrahedrons->traversalinit(); + checktet.tet = tetrahedrontraverse(); + while (checktet.tet != NULL) { + if (b->convex) { // -c + // Skip this tet if it lies in the exterior. + if (elemattribute(checktet.tet, attrnum) == -1.0) { + checktet.tet = tetrahedrontraverse(); + continue; + } + } + ppt = (point *) & (checktet.tet[4]); + tetalldihedral(ppt[0], ppt[1], ppt[2], ppt[3], ncosdd, &maxdd, NULL); + if (maxdd < cosmaxdihed) { + // There are bad dihedral angles in this tet. + unflipqueue->newindex((void **) &parybface); + parybface->tt.tet = checktet.tet; + parybface->tt.ver = 11; + parybface->forg = ppt[0]; + parybface->fdest = ppt[1]; + parybface->fapex = ppt[2]; + parybface->foppo = ppt[3]; + parybface->key = maxdd; + for (n = 0; n < 6; n++) { + parybface->cent[n] = ncosdd[n]; + } + } + checktet.tet = tetrahedrontraverse(); + } + + totalremcount = improvequalitybyflips(); + + if ((unflipqueue->objects > 0l) && + ((b->optscheme & 2) || (b->optscheme & 4))) { + // The pool is only used by removeslivers(). + badtetrahedrons = new memorypool(sizeof(triface), b->tetrahedraperblock, + sizeof(void *), 0); + + // Smoothing options. + opm.min_max_dihedangle = 1; + opm.numofsearchdirs = 10; + // opm.searchstep = 0.001; + opm.maxiter = 30; // Limit the maximum iterations. + //opm.checkencflag = 4; // Queue affected tets after smoothing. + chkencflag = 4; // Queue affected tets after splitting a sliver. + iter = 0; + + while (iter < optpasses) { + smtcount = sptcount = remcount = 0l; + if (b->optscheme & 2) { + smtcount += improvequalitybysmoothing(&opm); + totalsmtcount += smtcount; + if (smtcount > 0l) { + remcount = improvequalitybyflips(); + totalremcount += remcount; + } + } + if (unflipqueue->objects > 0l) { + if (b->optscheme & 4) { + sptcount += removeslivers(chkencflag); + totalsptcount += sptcount; + if (sptcount > 0l) { + remcount = improvequalitybyflips(); + totalremcount += remcount; + } + } + } + if (unflipqueue->objects > 0l) { + if (remcount > 0l) { + iter++; + } else { + break; + } + } else { + break; + } + } // while (iter) + + delete badtetrahedrons; + + } + + if (unflipqueue->objects > 0l) { + if (b->verbose > 1) { + printf(" %ld bad tets remained.\n", unflipqueue->objects); + } + unflipqueue->restart(); + } + + if (b->verbose) { + if (totalremcount > 0l) { + printf(" Removed %ld edges.\n", totalremcount); + } + if (totalsmtcount > 0l) { + printf(" Smoothed %ld points.\n", totalsmtcount); + } + if (totalsptcount > 0l) { + printf(" Split %ld slivers.\n", totalsptcount); + } + } +} + +//// //// +//// //// +//// optimize_cxx ///////////////////////////////////////////////////////////// + +// Dump the input surface mesh. +// 'mfilename' is a filename without suffix. +void meshGRegionBoundaryRecovery::outsurfacemesh(const char* mfilename) +{ + FILE *outfile = NULL; + char sfilename[256]; + int firstindex; + + point pointloop; + int pointnumber; + strcpy(sfilename, mfilename); + strcat(sfilename, ".node"); + outfile = fopen(sfilename, "w"); + if (!b->quiet) { + printf("Writing %s.\n", sfilename); + } + fprintf(outfile, "%ld 3 0 0\n", points->items); + // Determine the first index (0 or 1). + firstindex = b->zeroindex ? 0 : in->firstnumber; + points->traversalinit(); + pointloop = pointtraverse(); + pointnumber = firstindex; // in->firstnumber; + while (pointloop != (point) NULL) { + // Point number, x, y and z coordinates. + fprintf(outfile, "%4d %.17g %.17g %.17g", pointnumber, + pointloop[0], pointloop[1], pointloop[2]); + fprintf(outfile, "\n"); + pointloop = pointtraverse(); + pointnumber++; + } + fclose(outfile); + + face faceloop; + point torg, tdest, tapex; + strcpy(sfilename, mfilename); + strcat(sfilename, ".smesh"); + outfile = fopen(sfilename, "w"); + if (!b->quiet) { + printf("Writing %s.\n", sfilename); + } + int shift = 0; // Default no shiftment. + if ((in->firstnumber == 1) && (firstindex == 0)) { + shift = 1; // Shift the output indices by 1. + } + fprintf(outfile, "0 3 0 0\n"); + fprintf(outfile, "%ld 1\n", subfaces->items); + subfaces->traversalinit(); + faceloop.sh = shellfacetraverse(subfaces); + while (faceloop.sh != (shellface *) NULL) { + torg = sorg(faceloop); + tdest = sdest(faceloop); + tapex = sapex(faceloop); + fprintf(outfile, "3 %4d %4d %4d %d\n", + pointmark(torg) - shift, pointmark(tdest) - shift, + pointmark(tapex) - shift, shellmark(faceloop)); + faceloop.sh = shellfacetraverse(subfaces); + } + fprintf(outfile, "0\n"); + fprintf(outfile, "0\n"); + fclose(outfile); + + face edgeloop; + int edgenumber; + strcpy(sfilename, mfilename); + strcat(sfilename, ".edge"); + outfile = fopen(sfilename, "w"); + if (!b->quiet) { + printf("Writing %s.\n", sfilename); + } + fprintf(outfile, "%ld 1\n", subsegs->items); + subsegs->traversalinit(); + edgeloop.sh = shellfacetraverse(subsegs); + edgenumber = firstindex; // in->firstnumber; + while (edgeloop.sh != (shellface *) NULL) { + torg = sorg(edgeloop); + tdest = sdest(edgeloop); + fprintf(outfile, "%5d %4d %4d %d\n", edgenumber, + pointmark(torg) - shift, pointmark(tdest) - shift, + shellmark(edgeloop)); + edgenumber++; + edgeloop.sh = shellfacetraverse(subsegs); + } + fclose(outfile); +} + +void meshGRegionBoundaryRecovery::outmesh2medit(const char* mfilename) +{ + FILE *outfile; + char mefilename[256]; + tetrahedron* tetptr; + triface tface, tsymface; + face segloop, checkmark; + point ptloop, p1, p2, p3, p4; + long ntets, faces; + int shift = 0; + int marker; + + if (mfilename != (char *) NULL && mfilename[0] != '\0') { + strcpy(mefilename, mfilename); + } else { + strcpy(mefilename, "unnamed"); + } + strcat(mefilename, ".mesh"); + + if (!b->quiet) { + printf("Writing %s.\n", mefilename); + } + outfile = fopen(mefilename, "w"); + if (outfile == (FILE *) NULL) { + printf("File I/O Error: Cannot create file %s.\n", mefilename); + return; + } + + fprintf(outfile, "MeshVersionFormatted 1\n"); + fprintf(outfile, "\n"); + fprintf(outfile, "Dimension\n"); + fprintf(outfile, "3\n"); + fprintf(outfile, "\n"); + + fprintf(outfile, "\n# Set of mesh vertices\n"); + fprintf(outfile, "Vertices\n"); + fprintf(outfile, "%ld\n", points->items); + + points->traversalinit(); + ptloop = pointtraverse(); + //pointnumber = 1; + while (ptloop != (point) NULL) { + // Point coordinates. + fprintf(outfile, "%.17g %.17g %.17g", ptloop[0], ptloop[1], ptloop[2]); + fprintf(outfile, " 0\n"); + //setpointmark(ptloop, pointnumber); + ptloop = pointtraverse(); + //pointnumber++; + } + + // Medit need start number form 1. + if (in->firstnumber == 1) { + shift = 0; + } else { + shift = 1; + } + + // Compute the number of faces. + ntets = tetrahedrons->items - hullsize; + faces = (ntets * 4l + hullsize) / 2l; + + /* + fprintf(outfile, "\n# Set of Triangles\n"); + fprintf(outfile, "Triangles\n"); + fprintf(outfile, "%ld\n", faces); + + tetrahedrons->traversalinit(); + tface.tet = tetrahedrontraverse(); + while (tface.tet != (tetrahedron *) NULL) { + for (tface.ver = 0; tface.ver < 4; tface.ver ++) { + fsym(tface, tsymface); + if (ishulltet(tsymface) || + (elemindex(tface.tet) < elemindex(tsymface.tet))) { + p1 = org (tface); + p2 = dest(tface); + p3 = apex(tface); + fprintf(outfile, "%5d %5d %5d", + pointmark(p1)+shift, pointmark(p2)+shift, pointmark(p3)+shift); + // Check if it is a subface. + tspivot(tface, checkmark); + if (checkmark.sh == NULL) { + marker = 0; // It is an inner face. It's marker is 0. + } else { + marker = 1; // The default marker for subface is 1. + } + fprintf(outfile, " %d\n", marker); + } + } + tface.tet = tetrahedrontraverse(); + } + */ + + fprintf(outfile, "\n# Set of Tetrahedra\n"); + fprintf(outfile, "Tetrahedra\n"); + fprintf(outfile, "%ld\n", ntets); + + tetrahedrons->traversalinit(); + tetptr = tetrahedrontraverse(); + while (tetptr != (tetrahedron *) NULL) { + if (!b->reversetetori) { + p1 = (point) tetptr[4]; + p2 = (point) tetptr[5]; + } else { + p1 = (point) tetptr[5]; + p2 = (point) tetptr[4]; + } + p3 = (point) tetptr[6]; + p4 = (point) tetptr[7]; + fprintf(outfile, "%5d %5d %5d %5d", + pointmark(p1)+shift, pointmark(p2)+shift, + pointmark(p3)+shift, pointmark(p4)+shift); + if (numelemattrib > 0) { + fprintf(outfile, " %.17g", elemattribute(tetptr, 0)); + } else { + fprintf(outfile, " 0"); + } + fprintf(outfile, "\n"); + tetptr = tetrahedrontraverse(); + } + + fprintf(outfile, "\nEnd\n"); + fclose(outfile); +} + +/////////////////////////////////////////////////////////////////////////////// + + + +/////////////////////////////////////////////////////////////////////////////// + +void meshGRegionBoundaryRecovery::unifysubfaces(face *f1, face *f2) +{ + if (b->psc) { + // In this case, it is possible that two subfaces are identical. + // While they must belong to two different surfaces. + return; + } + + point pa, pb, pc, pd; + + pa = sorg(*f1); + pb = sdest(*f1); + pc = sapex(*f1); + pd = sapex(*f2); + + if (pc != pd) { + printf("Found two facets intersect each other.\n"); + printf(" 1st: [%d, %d, %d] #%d\n", + pointmark(pa), pointmark(pb), pointmark(pc), shellmark(*f1)); + printf(" 2nd: [%d, %d, %d] #%d\n", + pointmark(pa), pointmark(pb), pointmark(pd), shellmark(*f2)); + terminateBoundaryRecovery(this, 3); + } else { + printf("Found two duplicated facets.\n"); + printf(" 1st: [%d, %d, %d] #%d\n", + pointmark(pa), pointmark(pb), pointmark(pc), shellmark(*f1)); + printf(" 2nd: [%d, %d, %d] #%d\n", + pointmark(pa), pointmark(pb), pointmark(pd), shellmark(*f2)); + terminateBoundaryRecovery(this, 3); + } + +} + +void meshGRegionBoundaryRecovery::unifysegments() +{ + badface *facelink = NULL, *newlinkitem, *f1, *f2; + face *facperverlist, sface; + face subsegloop, testseg; + point torg, tdest; + REAL ori1, ori2, ori3; + REAL n1[3], n2[3]; + int *idx2faclist; + int idx, k, m; + + if (b->verbose > 1) { + printf(" Unifying segments.\n"); + } + + // Create a mapping from vertices to subfaces. + makepoint2submap(subfaces, idx2faclist, facperverlist); + + subsegloop.shver = 0; + subsegs->traversalinit(); + subsegloop.sh = shellfacetraverse(subsegs); + while (subsegloop.sh != (shellface *) NULL) { + torg = sorg(subsegloop); + tdest = sdest(subsegloop); + + idx = pointmark(torg) - in->firstnumber; + // Loop through the set of subfaces containing 'torg'. Get all the + // subfaces containing the edge (torg, tdest). Save and order them + // in 'sfacelist', the ordering is defined by the right-hand rule + // with thumb points from torg to tdest. + for (k = idx2faclist[idx]; k < idx2faclist[idx + 1]; k++) { + sface = facperverlist[k]; + // The face may be deleted if it is a duplicated face. + if (sface.sh[3] == NULL) continue; + // Search the edge torg->tdest. + assert(sorg(sface) == torg); // SELF_CHECK + if (sdest(sface) != tdest) { + senext2self(sface); + sesymself(sface); + } + if (sdest(sface) != tdest) continue; + + // Save the face f in facelink. + if (flippool->items >= 2) { + f1 = facelink; + for (m = 0; m < flippool->items - 1; m++) { + f2 = f1->nextitem; + ori1 = orient3d(torg, tdest, sapex(f1->ss), sapex(f2->ss)); + ori2 = orient3d(torg, tdest, sapex(f1->ss), sapex(sface)); + if (ori1 > 0) { + // apex(f2) is below f1. + if (ori2 > 0) { + // apex(f) is below f1 (see Fig.1). + ori3 = orient3d(torg, tdest, sapex(f2->ss), sapex(sface)); + if (ori3 > 0) { + // apex(f) is below f2, insert it. + break; + } else if (ori3 < 0) { + // apex(f) is above f2, continue. + } else { // ori3 == 0; + // f is coplanar and codirection with f2. + unifysubfaces(&(f2->ss), &sface); + break; + } + } else if (ori2 < 0) { + // apex(f) is above f1 below f2, inset it (see Fig. 2). + break; + } else { // ori2 == 0; + // apex(f) is coplanar with f1 (see Fig. 5). + ori3 = orient3d(torg, tdest, sapex(f2->ss), sapex(sface)); + if (ori3 > 0) { + // apex(f) is below f2, insert it. + break; + } else { + // f is coplanar and codirection with f1. + unifysubfaces(&(f1->ss), &sface); + break; + } + } + } else if (ori1 < 0) { + // apex(f2) is above f1. + if (ori2 > 0) { + // apex(f) is below f1, continue (see Fig. 3). + } else if (ori2 < 0) { + // apex(f) is above f1 (see Fig.4). + ori3 = orient3d(torg, tdest, sapex(f2->ss), sapex(sface)); + if (ori3 > 0) { + // apex(f) is below f2, insert it. + break; + } else if (ori3 < 0) { + // apex(f) is above f2, continue. + } else { // ori3 == 0; + // f is coplanar and codirection with f2. + unifysubfaces(&(f2->ss), &sface); + break; + } + } else { // ori2 == 0; + // f is coplanar and with f1 (see Fig. 6). + ori3 = orient3d(torg, tdest, sapex(f2->ss), sapex(sface)); + if (ori3 > 0) { + // f is also codirection with f1. + unifysubfaces(&(f1->ss), &sface); + break; + } else { + // f is above f2, continue. + } + } + } else { // ori1 == 0; + // apex(f2) is coplanar with f1. By assumption, f1 is not + // coplanar and codirection with f2. + if (ori2 > 0) { + // apex(f) is below f1, continue (see Fig. 7). + } else if (ori2 < 0) { + // apex(f) is above f1, insert it (see Fig. 7). + break; + } else { // ori2 == 0. + // apex(f) is coplanar with f1 (see Fig. 8). + // f is either codirection with f1 or is codirection with f2. + facenormal(torg, tdest, sapex(f1->ss), n1, 1, NULL); + facenormal(torg, tdest, sapex(sface), n2, 1, NULL); + if (dot(n1, n2) > 0) { + unifysubfaces(&(f1->ss), &sface); + } else { + unifysubfaces(&(f2->ss), &sface); + } + break; + } + } + // Go to the next item; + f1 = f2; + } // for (m = 0; ...) + if (sface.sh[3] != NULL) { + // Insert sface between f1 and f2. + newlinkitem = (badface *) flippool->alloc(); + newlinkitem->ss = sface; + newlinkitem->nextitem = f1->nextitem; + f1->nextitem = newlinkitem; + } + } else if (flippool->items == 1) { + f1 = facelink; + // Make sure that f is not coplanar and codirection with f1. + ori1 = orient3d(torg, tdest, sapex(f1->ss), sapex(sface)); + if (ori1 == 0) { + // f is coplanar with f1 (see Fig. 8). + facenormal(torg, tdest, sapex(f1->ss), n1, 1, NULL); + facenormal(torg, tdest, sapex(sface), n2, 1, NULL); + if (dot(n1, n2) > 0) { + // The two faces are codirectional as well. + unifysubfaces(&(f1->ss), &sface); + } + } + // Add this face to link if it is not deleted. + if (sface.sh[3] != NULL) { + // Add this face into link. + newlinkitem = (badface *) flippool->alloc(); + newlinkitem->ss = sface; + newlinkitem->nextitem = NULL; + f1->nextitem = newlinkitem; + } + } else { + // The first face. + newlinkitem = (badface *) flippool->alloc(); + newlinkitem->ss = sface; + newlinkitem->nextitem = NULL; + facelink = newlinkitem; + } + } // for (k = idx2faclist[idx]; ...) + + if (b->psc) { + // Set Steiner point -to- segment map. + if (pointtype(torg) == FREESEGVERTEX) { + setpoint2sh(torg, sencode(subsegloop)); + } + if (pointtype(tdest) == FREESEGVERTEX) { + setpoint2sh(tdest, sencode(subsegloop)); + } + } + + // Set the connection between this segment and faces containing it, + // at the same time, remove redundant segments. + f1 = facelink; + for (k = 0; k < flippool->items; k++) { + sspivot(f1->ss, testseg); + // If 'testseg' is not 'subsegloop' and is not dead, it is redundant. + if ((testseg.sh != subsegloop.sh) && (testseg.sh[3] != NULL)) { + shellfacedealloc(subsegs, testseg.sh); + } + // Bonds the subface and the segment together. + ssbond(f1->ss, subsegloop); + f1 = f1->nextitem; + } + + // Create the face ring at the segment. + if (flippool->items > 1) { + f1 = facelink; + for (k = 1; k <= flippool->items; k++) { + k < flippool->items ? f2 = f1->nextitem : f2 = facelink; + sbond1(f1->ss, f2->ss); + f1 = f2; + } + } + + // All identified segments has an init marker "0". + flippool->restart(); + + subsegloop.sh = shellfacetraverse(subsegs); + } + + delete [] idx2faclist; + delete [] facperverlist; +} + +void meshGRegionBoundaryRecovery::jettisonnodes() +{ + point pointloop; + bool jetflag; + int oldidx, newidx; + int remcount; + + if (!b->quiet) { + printf("Jettisoning redundant points.\n"); + } + + points->traversalinit(); + pointloop = pointtraverse(); + oldidx = newidx = 0; // in->firstnumber; + remcount = 0; + while (pointloop != (point) NULL) { + jetflag = (pointtype(pointloop) == DUPLICATEDVERTEX) || + (pointtype(pointloop) == UNUSEDVERTEX); + if (jetflag) { + // It is a duplicated or unused point, delete it. + pointdealloc(pointloop); + remcount++; + } else { + // Re-index it. + setpointmark(pointloop, newidx + in->firstnumber); + /* + if (in->pointmarkerlist != (int *) NULL) { + if (oldidx < in->numberofpoints) { + // Re-index the point marker as well. + in->pointmarkerlist[newidx] = in->pointmarkerlist[oldidx]; + } + } + */ + newidx++; + } + oldidx++; + pointloop = pointtraverse(); + } + if (b->verbose) { + printf(" %ld duplicated vertices are removed.\n", dupverts); + printf(" %ld unused vertices are removed.\n", unuverts); + } + dupverts = 0l; + unuverts = 0l; + + // The following line ensures that dead items in the pool of nodes cannot + // be allocated for the new created nodes. This ensures that the input + // nodes will occur earlier in the output files, and have lower indices. + points->deaditemstack = (void *) NULL; +} + +/////////////////////////////////////////////////////////////////////////////// + +void meshGRegionBoundaryRecovery::reconstructmesh(GRegion *_gr) +{ + + double t_start = Cpu(); + + std::vector<MVertex*> _vertices; + + // Get the set of vertices from GRegion. + { + std::set<MVertex*> all; + std::list<GFace*> f = _gr->faces(); + for (std::list<GFace*>::iterator it = f.begin(); it != f.end(); ++it) { + GFace *gf = *it; + for (unsigned int i = 0;i< gf->triangles.size(); i++){ + all.insert(gf->triangles[i]->getVertex(0)); + all.insert(gf->triangles[i]->getVertex(1)); + all.insert(gf->triangles[i]->getVertex(2)); + } + } + _vertices.insert(_vertices.begin(), all.begin(), all.end()); + } + + initializepools(); + + std::vector<MTetrahedron*> tets; + + delaunayMeshIn3D(_vertices, tets, false); + + { //transfernodes(); + point pointloop; + REAL x, y, z; + int i; + + // Read the points. + for (i = 0; i < _vertices.size(); i++) { + makepoint(&pointloop, UNUSEDVERTEX); + // Read the point coordinates. + x = pointloop[0] = _vertices[i]->x(); + y = pointloop[1] = _vertices[i]->y(); + z = pointloop[2] = _vertices[i]->z(); + // Determine the smallest and largest x, y and z coordinates. + if (i == 0) { + xmin = xmax = x; + ymin = ymax = y; + zmin = zmax = z; + } else { + xmin = (x < xmin) ? x : xmin; + xmax = (x > xmax) ? x : xmax; + ymin = (y < ymin) ? y : ymin; + ymax = (y > ymax) ? y : ymax; + zmin = (z < zmin) ? z : zmin; + zmax = (z > zmax) ? z : zmax; + } + } + + // 'longest' is the largest possible edge length formed by input vertices. + x = xmax - xmin; + y = ymax - ymin; + z = zmax - zmin; + longest = sqrt(x * x + y * y + z * z); + if (longest == 0.0) { + Msg::Warning("Error: The point set is trivial.\n"); + return; + } + + // Two identical points are distinguished by 'lengthlimit'. + if (b->minedgelength == 0.0) { + b->minedgelength = longest * b->epsilon; + } + } // transfernodes(); + + point *idx2verlist; + + // Create a map from indices to vertices. + makeindex2pointmap(idx2verlist); + // 'idx2verlist' has length 'in->numberofpoints + 1'. + if (in->firstnumber == 1) { + idx2verlist[0] = dummypoint; // Let 0th-entry be dummypoint. + } + + if (1) { + // Index the vertices. + for (unsigned int i = 0; i < _vertices.size(); i++){ + _vertices[i]->setIndex(i); + } + + tetrahedron *ver2tetarray; + //point *idx2verlist; + triface tetloop, checktet, prevchktet; + triface hulltet, face1, face2; + tetrahedron tptr; + point p[4], q[3]; + REAL ori; //, attrib, volume; + int bondflag; + int t1ver; + int idx, i, j, k; + + Msg::Info("Reconstructing mesh ..."); + + // Allocate an array that maps each vertex to its adjacent tets. + ver2tetarray = new tetrahedron[_vertices.size() + 1]; + //for (i = 0; i < in->numberofpoints + 1; i++) { + for (i = in->firstnumber; i < _vertices.size() + in->firstnumber; i++) { + setpointtype(idx2verlist[i], VOLVERTEX); // initial type. + ver2tetarray[i] = NULL; + } + + // Create the tetrahedra and connect those that share a common face. + for (i = 0; i < tets.size(); i++) { + // Get the four vertices. + for (j = 0; j < 4; j++) { + p[j] = idx2verlist[tets[i]->getVertex(j)->getIndex()]; + } + // Check the orientation. + ori = orient3d(p[0], p[1], p[2], p[3]); + if (ori > 0.0) { + // Swap the first two vertices. + q[0] = p[0]; p[0] = p[1]; p[1] = q[0]; + } else if (ori == 0.0) { + if (!b->quiet) { + printf("Warning: Tet #%d is degenerate.\n", i + in->firstnumber); + } + } + // Create a new tetrahedron. + maketetrahedron(&tetloop); // tetloop.ver = 11. + setvertices(tetloop, p[0], p[1], p[2], p[3]); + // Try connecting this tet to others that share the common faces. + for (tetloop.ver = 0; tetloop.ver < 4; tetloop.ver++) { + p[3] = oppo(tetloop); + // Look for other tets having this vertex. + idx = pointmark(p[3]); + tptr = ver2tetarray[idx]; + // Link the current tet to the next one in the stack. + tetloop.tet[8 + tetloop.ver] = tptr; + // Push the current tet onto the stack. + ver2tetarray[idx] = encode(tetloop); + decode(tptr, checktet); + if (checktet.tet != NULL) { + p[0] = org(tetloop); // a + p[1] = dest(tetloop); // b + p[2] = apex(tetloop); // c + prevchktet = tetloop; + do { + q[0] = org(checktet); // a' + q[1] = dest(checktet); // b' + q[2] = apex(checktet); // c' + // Check the three faces at 'd' in 'checktet'. + bondflag = 0; + for (j = 0; j < 3; j++) { + // Go to the face [b',a',d], or [c',b',d], or [a',c',d]. + esym(checktet, face2); + if (face2.tet[face2.ver & 3] == NULL) { + k = ((j + 1) % 3); + if (q[k] == p[0]) { // b', c', a' = a + if (q[j] == p[1]) { // a', b', c' = b + // [#,#,d] is matched to [b,a,d]. + esym(tetloop, face1); + bond(face1, face2); + bondflag++; + } + } + if (q[k] == p[1]) { // b',c',a' = b + if (q[j] == p[2]) { // a',b',c' = c + // [#,#,d] is matched to [c,b,d]. + enext(tetloop, face1); + esymself(face1); + bond(face1, face2); + bondflag++; + } + } + if (q[k] == p[2]) { // b',c',a' = c + if (q[j] == p[0]) { // a',b',c' = a + // [#,#,d] is matched to [a,c,d]. + eprev(tetloop, face1); + esymself(face1); + bond(face1, face2); + bondflag++; + } + } + } else { + bondflag++; + } + enextself(checktet); + } // j + // Go to the next tet in the link. + tptr = checktet.tet[8 + checktet.ver]; + if (bondflag == 3) { + // All three faces at d in 'checktet' have been connected. + // It can be removed from the link. + prevchktet.tet[8 + prevchktet.ver] = tptr; + } else { + // Bakup the previous tet in the link. + prevchktet = checktet; + } + decode(tptr, checktet); + } while (checktet.tet != NULL); + } // if (checktet.tet != NULL) + } // for (tetloop.ver = 0; ... + } // i + + // Remember a tet of the mesh. + recenttet = tetloop; + + // Create hull tets, create the point-to-tet map, and clean up the + // temporary spaces used in each tet. + hullsize = tetrahedrons->items; + + tetrahedrons->traversalinit(); + tetloop.tet = tetrahedrontraverse(); + while (tetloop.tet != (tetrahedron *) NULL) { + tptr = encode(tetloop); + for (tetloop.ver = 0; tetloop.ver < 4; tetloop.ver++) { + if (tetloop.tet[tetloop.ver] == NULL) { + // Create a hull tet. + maketetrahedron(&hulltet); + p[0] = org(tetloop); + p[1] = dest(tetloop); + p[2] = apex(tetloop); + setvertices(hulltet, p[1], p[0], p[2], dummypoint); + bond(tetloop, hulltet); + // Try connecting this to others that share common hull edges. + for (j = 0; j < 3; j++) { + fsym(hulltet, face2); + while (1) { + if (face2.tet == NULL) break; + esymself(face2); + if (apex(face2) == dummypoint) break; + fsymself(face2); + } + if (face2.tet != NULL) { + // Found an adjacent hull tet. + assert(face2.tet[face2.ver & 3] == NULL); + esym(hulltet, face1); + bond(face1, face2); + } + enextself(hulltet); + } + //hullsize++; + } + // Create the point-to-tet map. + setpoint2tet((point) (tetloop.tet[4 + tetloop.ver]), tptr); + // Clean the temporary used space. + tetloop.tet[8 + tetloop.ver] = NULL; + } + tetloop.tet = tetrahedrontraverse(); + } + + hullsize = tetrahedrons->items - hullsize; + + delete [] ver2tetarray; + tets.clear(); // Release all memory in this vector. + } + + std::list<GFace*> f_list = _gr->faces(); + std::list<GEdge*> e_list = _gr->edges(); + + { + Msg::Info(" --> Creating surface mesh ..."); + face newsh; + face newseg; + point p[4]; + int idx, i, j; + + for (std::list<GFace*>::iterator it = f_list.begin(); it != f_list.end(); ++it){ + GFace *gf = *it; + for (i = 0;i< gf->triangles.size(); i++) { + for (j = 0; j < 3; j++) { + p[j] = idx2verlist[gf->triangles[i]->getVertex(j)->getIndex()]; + if (pointtype(p[j]) == VOLVERTEX) { + setpointtype(p[j], FACETVERTEX); + } + } + // Create an initial triangulation. + makeshellface(subfaces, &newsh); + setshvertices(newsh, p[0], p[1], p[2]); + setshellmark(newsh, gf->tag()); // the GFace's tag. + recentsh = newsh; + for (j = 0; j < 3; j++) { + makeshellface(subsegs, &newseg); + setshvertices(newseg, sorg(newsh), sdest(newsh), NULL); + // Set the default segment marker '-1'. + setshellmark(newseg, -1); + ssbond(newsh, newseg); + senextself(newsh); + } + } // i + } // it + + // Connecting triangles, removing redundant segments. + unifysegments(); + + Msg::Info(" --> Identifying boundary edges ..."); + + face* shperverlist; + int* idx2shlist; + face searchsh, neighsh; + face segloop, checkseg; + point checkpt; + + // Construct a map from points to subfaces. + makepoint2submap(subfaces, idx2shlist, shperverlist); + + // Process the set of PSC edges. + // Remeber that all segments have default marker '-1'. + for (std::list<GEdge*>::iterator it = e_list.begin(); it != e_list.end(); + ++it) { + GEdge *ge = *it; + for (i = 0; i < ge->lines.size(); i++) { + for (j = 0; j < 2; j++) { + p[j] = idx2verlist[ge->lines[i]->getVertex(j)->getIndex()]; + setpointtype(p[j], RIDGEVERTEX); + } + if (p[0] == p[1]) { + // This is a potential problem in surface mesh. + continue; // Skip this edge. + } + // Find a face contains the edge p[0], p[1]. + newseg.sh = NULL; + searchsh.sh = NULL; + idx = pointmark(p[0]) - in->firstnumber; + for (j = idx2shlist[idx]; j < idx2shlist[idx + 1]; j++) { + checkpt = sdest(shperverlist[j]); + if (checkpt == p[1]) { + searchsh = shperverlist[j]; + break; // Found. + } else { + checkpt = sapex(shperverlist[j]); + if (checkpt == p[1]) { + senext2(shperverlist[j], searchsh); + sesymself(searchsh); + break; + } + } + } // j + if (searchsh.sh != NULL) { + // Check if this edge is already a segment of the mesh. + sspivot(searchsh, checkseg); + if (checkseg.sh != NULL) { + // This segment already exist. + newseg = checkseg; + } else { + // Create a new segment at this edge. + makeshellface(subsegs, &newseg); + setshvertices(newseg, p[0], p[1], NULL); + ssbond(searchsh, newseg); + spivot(searchsh, neighsh); + if (neighsh.sh != NULL) { + ssbond(neighsh, newseg); + } + } + } else { + // It is a dangling segment (not belong to any facets). + // Check if segment [p[0],p[1]] already exists. + // TODO: Change the brute-force search. Slow! + point *ppt; + subsegs->traversalinit(); + segloop.sh = shellfacetraverse(subsegs); + while (segloop.sh != NULL) { + ppt = (point *) &(segloop.sh[3]); + if (((ppt[0] == p[0]) && (ppt[1] == p[1])) || + ((ppt[0] == p[1]) && (ppt[1] == p[0]))) { + // Found! + newseg = segloop; + break; + } + segloop.sh = shellfacetraverse(subsegs); + } + if (newseg.sh == NULL) { + makeshellface(subsegs, &newseg); + setshvertices(newseg, p[0], p[1], NULL); + } + } + setshellmark(newseg, ge->tag()); + } // i + } // e_list + + delete [] shperverlist; + delete [] idx2shlist; + + Msg::Debug(" %ld (%ld) subfaces (segments).", subfaces->items, + subsegs->items); + + // The total number of iunput segments. + insegments = subsegs->items; + + if (0) { + outsurfacemesh("dump"); + } + + } // meshsurface() + + delete [] idx2verlist; + + //////////////////////////////////////////////////////// + // Boundary recovery. + clock_t t_tmp; + + recoverboundary(t_tmp); + + carveholes(); + + if (subvertstack->objects > 0l) { + suppresssteinerpoints(); + } + + recoverdelaunay(); + + optimizemesh(); + + if ((dupverts > 0l) || (unuverts > 0l)) { + // Remove hanging nodes. + jettisonnodes(); + } + + long tetnumber, facenumber; + + Msg::Debug("Statistics:\n"); + Msg::Debug(" Input points: %ld", _vertices.size()); + //if (b->refine) { + // printf(" Input tetrahedra: %d\n", in->numberoftetrahedra); + //} + if (b->plc) { + Msg::Debug(" Input facets: %ld", f_list.size()); + Msg::Debug(" Input segments: %ld", e_list.size()); + //printf(" Input holes: %d\n", in->numberofholes); + //printf(" Input regions: %d\n", in->numberofregions); + } + + tetnumber = tetrahedrons->items - hullsize; + facenumber = (tetnumber * 4l + hullsize) / 2l; + + if (b->weighted) { // -w option + Msg::Debug(" Mesh points: %ld", points->items - nonregularcount); + } else { + Msg::Debug(" Mesh points: %ld", points->items); + } + Msg::Debug(" Mesh tetrahedra: %ld", tetnumber); + Msg::Debug(" Mesh faces: %ld", facenumber); + if (meshedges > 0l) { + Msg::Debug(" Mesh edges: %ld", meshedges); + } else { + if (!nonconvex) { + long vsize = points->items - dupverts - unuverts; + if (b->weighted) vsize -= nonregularcount; + meshedges = vsize + facenumber - tetnumber - 1; + Msg::Debug(" Mesh edges: %ld", meshedges); + } + } + + if (b->plc || b->refine) { + Msg::Debug(" Mesh faces on facets: %ld", subfaces->items); + Msg::Debug(" Mesh edges on segments: %ld", subsegs->items); + if (st_volref_count > 0l) { + Msg::Debug(" Steiner points inside domain: %ld", st_volref_count); + } + if (st_facref_count > 0l) { + Msg::Debug(" Steiner points on facets: %ld", st_facref_count); + } + if (st_segref_count > 0l) { + Msg::Debug(" Steiner points on segments: %ld", st_segref_count); + } + } else { + Msg::Debug(" Convex hull faces: %ld", hullsize); + if (meshhulledges > 0l) { + Msg::Debug(" Convex hull edges: %ld", meshhulledges); + } + } + if (b->weighted) { // -w option + Msg::Debug(" Skipped non-regular points: %ld", nonregularcount); + } + + // Debug + //outmesh2medit("dump"); + //////////////////////////////////////////////////////// + +{ + //////////////////////////////////////////////////////// + // Write mesh into to GRegion. + + Msg::Info(" --> Write to GRegion ..."); + + point p[4]; + int i; + + // In some hard cases, the surface mesh may be modified. + // Find the list of GFaces, GEdges that have been modified. + std::set<int> l_faces, l_edges; + + if (points->items > _vertices.size()) { + face parentseg, parentsh, spinsh; + point pointloop; + // Create newly added mesh vertices. + // The new vertices must be added at the end of the point list. + points->traversalinit(); + pointloop = pointtraverse(); + while (pointloop != (point) NULL) { + if (issteinerpoint(pointloop)) { + // Check if this Steiner point locates on boundary. + if (pointtype(pointloop) == FREESEGVERTEX) { + sdecode(point2sh(pointloop), parentseg); + assert(parentseg.sh != NULL); + l_edges.insert(shellmark(parentseg)); + // Get the GEdge containing this vertex. + GEdge *ge = NULL; + GFace *gf = NULL; + int etag = shellmark(parentseg); + for (std::list<GEdge*>::iterator it = e_list.begin(); + it != e_list.end(); ++it) { + if ((*it)->tag() == etag) { + ge = *it; + break; + } + } + if (ge != NULL) { + MEdgeVertex *v = new MEdgeVertex(pointloop[0], pointloop[1], + pointloop[2], ge, 0); + double uu = 0; + if (reparamMeshVertexOnEdge(v, ge, uu)) { + v->setParameter(0, uu); + } + v->setIndex(pointmark(pointloop)); + _gr->mesh_vertices.push_back(v); + _vertices.push_back(v); + } + spivot(parentseg, parentsh); + if (parentsh.sh != NULL) { + if (ge == NULL) { + // We treat this vertex a facet vertex. + int ftag = shellmark(parentsh); + for (std::list<GFace*>::iterator it = f_list.begin(); + it != f_list.end(); ++it) { + if ((*it)->tag() == ftag) { + gf = *it; + break; + } + } + if (gf != NULL) { + MFaceVertex *v = new MFaceVertex(pointloop[0], pointloop[1], + pointloop[2], gf, 0, 0); + SPoint2 param; + if (reparamMeshVertexOnFace(v, gf, param)) { + v->setParameter(0, param.x()); + v->setParameter(1, param.y()); + } + v->setIndex(pointmark(pointloop)); + _gr->mesh_vertices.push_back(v); + _vertices.push_back(v); + } + } + // Record all the GFaces' tag at this segment. + spinsh = parentsh; + while (1) { + l_faces.insert(shellmark(spinsh)); + spivotself(spinsh); + if (spinsh.sh == parentsh.sh) break; + } + } + if ((ge == NULL) && (gf == NULL)) { + // Create an interior mesh vertex. + MVertex *v = new MVertex(pointloop[0], pointloop[1], pointloop[2], _gr); + v->setIndex(pointmark(pointloop)); + _gr->mesh_vertices.push_back(v); + _vertices.push_back(v); + } + } else if (pointtype(pointloop) == FREEFACETVERTEX) { + sdecode(point2sh(pointloop), parentsh); + assert(parentsh.sh != NULL); + l_faces.insert(shellmark(parentsh)); + // Get the GFace containing this vertex. + GFace *gf = NULL; + int ftag = shellmark(parentsh); + for (std::list<GFace*>::iterator it = f_list.begin(); + it != f_list.end(); ++it) { + if ((*it)->tag() == ftag) { + gf = *it; + break; + } + } + if (gf != NULL) { + MFaceVertex *v = new MFaceVertex(pointloop[0], pointloop[1], + pointloop[2], gf, 0, 0); + SPoint2 param; + if (reparamMeshVertexOnFace(v, gf, param)) { + v->setParameter(0, param.x()); + v->setParameter(1, param.y()); + } + v->setIndex(pointmark(pointloop)); + _gr->mesh_vertices.push_back(v); + _vertices.push_back(v); + } else { + // Create a mesh vertex. + MVertex *v = new MVertex(pointloop[0], pointloop[1], pointloop[2], _gr); + v->setIndex(pointmark(pointloop)); + _gr->mesh_vertices.push_back(v); + _vertices.push_back(v); + } + } else { + MVertex *v = new MVertex(pointloop[0], pointloop[1], pointloop[2], _gr); + v->setIndex(pointmark(pointloop)); + _gr->mesh_vertices.push_back(v); + _vertices.push_back(v); + } + } + pointloop = pointtraverse(); + } + assert(_vertices.size() == points->items); + } + + if (l_edges.size() > 0) { + // There are Steiner points on segments! + face segloop; + // Re-create the segment mesh in the corresponding GEdges. + for (std::set<int>::iterator it=l_edges.begin(); it!=l_edges.end(); ++it) { + // Find the GFace with tag = *it. + GEdge *ge = NULL; + int etag = *it; + for (std::list<GEdge*>::iterator eit = e_list.begin(); + eit != e_list.end(); ++eit) { + if ((*eit)->tag() == etag) { + ge = (*eit); + break; + } + } + assert(ge != NULL); + // Delete the old triangles. + for(i = 0; i < ge->lines.size(); i++) + delete ge->lines[i]; + ge->lines.clear(); + ge->deleteVertexArrays(); + // Create the new triangles. + segloop.shver = 0; + subsegs->traversalinit(); + segloop.sh = shellfacetraverse(subsegs); + while (segloop.sh != NULL) { + if (shellmark(segloop) == etag) { + p[0] = sorg(segloop); + p[1] = sdest(segloop); + MVertex *v1 = _vertices[pointmark(p[0])]; + MVertex *v2 = _vertices[pointmark(p[1])]; + MLine *t = new MLine(v1, v2); + ge->lines.push_back(t); + } + segloop.sh = shellfacetraverse(subsegs); + } + } // it + } + + if (l_faces.size() > 0) { + // There are Steiner points on facets! + face subloop; + // Re-create the surface mesh in the corresponding GFaces. + for (std::set<int>::iterator it=l_faces.begin(); it!=l_faces.end(); ++it) { + // Find the GFace with tag = *it. + GFace *gf = NULL; + int ftag = *it; + for (std::list<GFace*>::iterator fit = f_list.begin(); + fit != f_list.end(); ++fit) { + if ((*fit)->tag() == ftag) { + gf = (*fit); + break; + } + } + assert(gf != NULL); + // Delete the old triangles. + Msg::Info("Steiner points exist on GFace %d",gf->tag()); + for(i = 0; i < gf->triangles.size(); i++) + delete gf->triangles[i]; + //for(i = 0; i < gf->quadrangles.size(); i++) + // delete gf->quadrangles[i]; + gf->triangles.clear(); + //gf->quadrangles.clear(); + gf->deleteVertexArrays(); + // Create the new triangles. + subloop.shver = 0; + subfaces->traversalinit(); + subloop.sh = shellfacetraverse(subfaces); + while (subloop.sh != NULL) { + if (shellmark(subloop) == ftag) { + p[0] = sorg(subloop); + p[1] = sdest(subloop); + p[2] = sapex(subloop); + MVertex *v1 = _vertices[pointmark(p[0])]; + MVertex *v2 = _vertices[pointmark(p[1])]; + MVertex *v3 = _vertices[pointmark(p[2])]; + MTriangle *t = new MTriangle(v1, v2, v3); + gf->triangles.push_back(t); + } + subloop.sh = shellfacetraverse(subfaces); + } + } // it + } + + triface tetloop; + + tetloop.ver = 11; + tetrahedrons->traversalinit(); + tetloop.tet = tetrahedrontraverse(); + while (tetloop.tet != (tetrahedron *) NULL) { + p[0] = org(tetloop); + p[1] = dest(tetloop); + p[2] = apex(tetloop); + p[3] = oppo(tetloop); + MVertex *v1 = _vertices[pointmark(p[0])]; + MVertex *v2 = _vertices[pointmark(p[1])]; + MVertex *v3 = _vertices[pointmark(p[2])]; + MVertex *v4 = _vertices[pointmark(p[3])]; + MTetrahedron *t = new MTetrahedron(v1, v2, v3, v4); + _gr->tetrahedra.push_back(t); + tetloop.tet = tetrahedrontraverse(); + } +} // mesh output + Msg::Info("Reconstruct time : %g sec",Cpu()-t_start); +} + +void terminateBoundaryRecovery(void *, int exitcode) +{ + throw exitcode; +} diff --git a/Mesh/meshGRegionBoundaryRecovery.h b/Mesh/meshGRegionBoundaryRecovery.h new file mode 100644 index 0000000000000000000000000000000000000000..7b76035a718466fe77c6f0932709041758000c35 --- /dev/null +++ b/Mesh/meshGRegionBoundaryRecovery.h @@ -0,0 +1,882 @@ +// Gmsh - Copyright (C) 1997-2014 C. Geuzaine, J.-F. Remacle +// +// See the LICENSE.txt file for license information. Please report all +// bugs and problems to the public mailing list <gmsh@geuz.org>. + +#ifndef _MESH_GREGION_BOUNDARY_RECOVERY_H_ +#define _MESH_GREGION_BOUNDARY_RECOVERY_H_ + +#include "GRegion.h" +#include <time.h> + +#define REAL double + +class meshGRegionInputs { + public: + int firstnumber; + meshGRegionInputs() { + firstnumber = 0; + } +}; + +class meshGRegionOptions { + + public: + + int plc; + int psc; + int refine; + int quality; + int nobisect; + int coarsen; + int weighted; + int brio_hilbert; + int incrflip; + int flipinsert; + int metric; + int varvolume; + int fixedvolume; + int regionattrib; + int conforming; + int insertaddpoints; + int diagnose; + int convex; + int nomergefacet; + int nomergevertex; + int noexact; + int nostaticfilter; + int zeroindex; + int facesout; + int edgesout; + int neighout; + int voroout; + int meditview; + int vtkview; + int nobound; + int nonodewritten; + int noelewritten; + int nofacewritten; + int noiterationnum; + int nojettison; + int reversetetori; + int docheck; + int quiet; + int verbose; + + int vertexperblock; + int tetrahedraperblock; + int shellfaceperblock; + int nobisect_param; + int addsteiner_algo; + int coarsen_param; + int weighted_param; + int fliplinklevel; + int flipstarsize; + int fliplinklevelinc; + int reflevel; + int optlevel; + int optscheme; + int delmaxfliplevel; + int order; + int steinerleft; + int no_sort; + int hilbert_order; + int hilbert_limit; + int brio_threshold; + REAL brio_ratio; + REAL facet_ang_tol; + REAL maxvolume; + REAL minratio; + REAL mindihedral; + REAL optmaxdihedral; + REAL optminsmtdihed; + REAL optminslidihed; + REAL epsilon; + REAL minedgelength; + REAL coarsen_percent; + + // Initialize all variables. + meshGRegionOptions() + { + plc = 1; // -p + psc = 0; + refine = 0; + quality = 0; + nobisect = 1; + coarsen = 0; + metric = 0; + weighted = 0; + brio_hilbert = 1; // -Y + incrflip = 0; + flipinsert = 0; + varvolume = 0; + fixedvolume = 0; + noexact = 0; + nostaticfilter = 0; + insertaddpoints = 0; + regionattrib = 1; // -A + conforming = 0; + diagnose = 0; + convex = 1; // -c + zeroindex = 0; + facesout = 0; + edgesout = 0; + neighout = 0; + voroout = 0; + meditview = 0; + vtkview = 0; + nobound = 0; + nonodewritten = 0; + noelewritten = 0; + nofacewritten = 0; + noiterationnum = 0; + nomergefacet = 0; + nomergevertex = 0; + nojettison = 0; + reversetetori = 0; + docheck = 0; + quiet = 0; + verbose = 0; + + vertexperblock = 4092; + tetrahedraperblock = 8188; + shellfaceperblock = 4092; + nobisect_param = 2; + addsteiner_algo = 1; + coarsen_param = 0; + weighted_param = 0; + fliplinklevel = -1; // No limit on linklevel. + flipstarsize = -1; // No limit on flip star size. + fliplinklevelinc = 1; + reflevel = 3; + optscheme = 7; // 1 & 2 & 4, // min_max_dihedral. + optlevel = 2; + delmaxfliplevel = 1; + order = 1; + steinerleft = -1; + no_sort = 0; + hilbert_order = 52; //-1; + hilbert_limit = 8; + brio_threshold = 64; + brio_ratio = 0.125; + facet_ang_tol = 179.9; + maxvolume = -1.0; + minratio = 2.0; + mindihedral = 0.0; // 5.0; + optmaxdihedral = 179.0; + optminsmtdihed = 179.999; + optminslidihed = 179.999; + epsilon = 1.0e-8; + minedgelength = 0.0; + coarsen_percent = 1.0; + } +}; + +class meshGRegionBoundaryRecovery { + + public: + + // Mesh data structure + typedef REAL **tetrahedron; + typedef REAL **shellface; + typedef REAL *point; + + // Mesh handles + class triface { + public: + tetrahedron *tet; + int ver; // Range from 0 to 11. + triface() : tet(0), ver(0) {} + triface& operator=(const triface& t) { + tet = t.tet; ver = t.ver; + return *this; + } + }; + + class face { + public: + shellface *sh; + int shver; // Range from 0 to 5. + face() : sh(0), shver(0) {} + face& operator=(const face& s) { + sh = s.sh; shver = s.shver; + return *this; + } + }; + + // Arraypool (J. R. Shewchuk) + class arraypool { + public: + int objectbytes; + int objectsperblock; + int log2objectsperblock; + int objectsperblockmark; + int toparraylen; + char **toparray; + long objects; + unsigned long totalmemory; + void restart(); + void poolinit(int sizeofobject, int log2objperblk); + char* getblock(int objectindex); + void* lookup(int objectindex); + int newindex(void **newptr); + arraypool(int sizeofobject, int log2objperblk); + ~arraypool(); + }; + +#define fastlookup(pool, index) \ + (void *) ((pool)->toparray[(index) >> (pool)->log2objectsperblock] + \ + ((index) & (pool)->objectsperblockmark) * (pool)->objectbytes) + + // Memorypool (J. R. Shewchuk) + class memorypool { + public: + void **firstblock, **nowblock; + void *nextitem; + void *deaditemstack; + void **pathblock; + void *pathitem; + int alignbytes; + int itembytes, itemwords; + int itemsperblock; + long items, maxitems; + int unallocateditems; + int pathitemsleft; + memorypool(); + memorypool(int, int, int, int); + ~memorypool(); + void poolinit(int, int, int, int); + void restart(); + void *alloc(); + void dealloc(void*); + void traversalinit(); + void *traverse(); + }; + + class badface { + public: + triface tt; + face ss; + REAL key, cent[6]; // circumcenter or cos(dihedral angles) at 6 edges. + point forg, fdest, fapex, foppo, noppo; + badface *nextitem; + badface() : key(0), forg(0), fdest(0), fapex(0), foppo(0), noppo(0), + nextitem(0) {} + }; + + // Parameters for vertex insertion, flips, and optimizations. + class insertvertexflags { + public: + int iloc; // input/output. + int bowywat, lawson; + int splitbdflag, validflag, respectbdflag; + int rejflag, chkencflag, cdtflag; + int assignmeshsize; + int sloc, sbowywat; + // Used by Delaunay refinement. + int refineflag; // 0, 1, 2, 3 + triface refinetet; + face refinesh; + int smlenflag; // for useinsertradius. + REAL smlen; // for useinsertradius. + point parentpt; + + insertvertexflags() { + iloc = bowywat = lawson = 0; + splitbdflag = validflag = respectbdflag = 0; + rejflag = chkencflag = cdtflag = 0; + assignmeshsize = 0; + sloc = sbowywat = 0; + + refineflag = 0; + refinetet.tet = NULL; + refinesh.sh = NULL; + smlenflag = 0; + smlen = 0.0; + } + }; + + class flipconstraints { + public: + // Elementary flip flags. + int enqflag; // (= flipflag) + int chkencflag; + // Control flags + int unflip; // Undo the performed flips. + int collectnewtets; // Collect the new tets created by flips. + int collectencsegflag; + // Optimization flags. + int remove_ndelaunay_edge; // Remove a non-Delaunay edge. + REAL bak_tetprism_vol; // The value to be minimized. + REAL tetprism_vol_sum; + int remove_large_angle; // Remove a large dihedral angle at edge. + REAL cosdihed_in; // The input cosine of the dihedral angle (> 0). + REAL cosdihed_out; // The improved cosine of the dihedral angle. + // Boundary recovery flags. + int checkflipeligibility; + point seg[2]; // A constraining edge to be recovered. + point fac[3]; // A constraining face to be recovered. + point remvert; // A vertex to be removed. + + flipconstraints() { + enqflag = 0; + chkencflag = 0; + unflip = 0; + collectnewtets = 0; + collectencsegflag = 0; + remove_ndelaunay_edge = 0; + bak_tetprism_vol = 0.0; + tetprism_vol_sum = 0.0; + remove_large_angle = 0; + cosdihed_in = 0.0; + cosdihed_out = 0.0; + checkflipeligibility = 0; + seg[0] = NULL; + fac[0] = NULL; + remvert = NULL; + } + }; + + class optparameters { + public: + // The one of goals of optimization. + int max_min_volume; // Maximize the minimum volume. + int min_max_aspectratio; // Minimize the maximum aspect ratio. + int min_max_dihedangle; // Minimize the maximum dihedral angle. + // The initial and improved value. + REAL initval, imprval; + int numofsearchdirs; + REAL searchstep; + int maxiter; // Maximum smoothing iterations (disabled by -1). + int smthiter; // Performed iterations. + + optparameters() { + max_min_volume = 0; + min_max_aspectratio = 0; + min_max_dihedangle = 0; + initval = imprval = 0.0; + numofsearchdirs = 10; + searchstep = 0.01; + maxiter = -1; // Unlimited smoothing iterations. + smthiter = 0; + } + }; + + // Labels + enum verttype {UNUSEDVERTEX, DUPLICATEDVERTEX, RIDGEVERTEX, ACUTEVERTEX, + FACETVERTEX, VOLVERTEX, FREESEGVERTEX, FREEFACETVERTEX, + FREEVOLVERTEX, NREGULARVERTEX, DEADVERTEX}; + enum interresult {DISJOINT, INTERSECT, SHAREVERT, SHAREEDGE, SHAREFACE, + TOUCHEDGE, TOUCHFACE, ACROSSVERT, ACROSSEDGE, ACROSSFACE, + COLLISIONFACE, ACROSSSEG, ACROSSSUB}; + enum locateresult {UNKNOWN, OUTSIDE, INTETRAHEDRON, ONFACE, ONEDGE, ONVERTEX, + ENCVERTEX, ENCSEGMENT, ENCSUBFACE, NEARVERTEX, NONREGULAR, + INSTAR, BADELEMENT}; + + meshGRegionInputs *in; + meshGRegionOptions *b; + meshGRegionBoundaryRecovery *bgm; + + // Class variables + memorypool *tetrahedrons, *subfaces, *subsegs, *points; + memorypool *tet2subpool, *tet2segpool; + + memorypool *flippool; + arraypool *unflipqueue; + badface *flipstack; + + memorypool *badtetrahedrons, *badsubfacs, *badsubsegs; + + // Arrays used for point insertion (the Bowyer-Watson algorithm). + arraypool *cavetetlist, *cavebdrylist, *caveoldtetlist; + arraypool *cavetetshlist, *cavetetseglist, *cavetetvertlist; + arraypool *caveencshlist, *caveencseglist; + arraypool *caveshlist, *caveshbdlist, *cavesegshlist; + + // Stacks used for CDT construction and boundary recovery. + arraypool *subsegstack, *subfacstack, *subvertstack; + + // The infinite vertex. + point dummypoint; + // The recently visited tetrahedron, subface. + triface recenttet; + face recentsh; + + // PI is the ratio of a circle's circumference to its diameter. + static REAL PI; + + // Various variables. + int numpointattrib; + int numelemattrib; + int sizeoftensor; + int pointmtrindex; + int pointparamindex; + int point2simindex; + int pointmarkindex; + int pointinsradiusindex; + int elemattribindex; + int volumeboundindex; + int elemmarkerindex; + int shmarkindex; + int areaboundindex; + int checksubsegflag; + int checksubfaceflag; + int checkconstraints; + int nonconvex; + int autofliplinklevel; + int useinsertradius; + long samples; + unsigned long randomseed; + REAL cosmaxdihed, cosmindihed; + REAL cossmtdihed; + REAL cosslidihed; + REAL minfaceang, minfacetdihed; + REAL tetprism_vol_sum; + REAL longest; + REAL xmax, xmin, ymax, ymin, zmax, zmin; + + // Counters. + long insegments; + long hullsize; + long meshedges; + long meshhulledges; + long steinerleft; + long dupverts; + long unuverts; + long nonregularcount; + long st_segref_count, st_facref_count, st_volref_count; + long fillregioncount, cavitycount, cavityexpcount; + long flip14count, flip26count, flipn2ncount; + long flip23count, flip32count, flip44count, flip41count; + long flip31count, flip22count; + unsigned long totalworkmemory; // Total memory used by working arrays. + + // Fast lookup tables for mesh manipulation primitives. + static int bondtbl[12][12], fsymtbl[12][12]; + static int esymtbl[12], enexttbl[12], eprevtbl[12]; + static int enextesymtbl[12], eprevesymtbl[12]; + static int eorgoppotbl[12], edestoppotbl[12]; + static int facepivot1[12], facepivot2[12][12]; + static int orgpivot[12], destpivot[12], apexpivot[12], oppopivot[12]; + static int tsbondtbl[12][6], stbondtbl[12][6]; + static int tspivottbl[12][6], stpivottbl[12][6]; + static int ver2edge[12], edge2ver[6], epivot[12]; + static int sorgpivot [6], sdestpivot[6], sapexpivot[6]; + static int snextpivot[6]; + void inittables(); + + // Primitives for tetrahedra. + inline tetrahedron encode(triface& t); + inline tetrahedron encode2(tetrahedron* ptr, int ver); + inline void decode(tetrahedron ptr, triface& t); + inline void bond(triface& t1, triface& t2); + inline void dissolve(triface& t); + inline void esym(triface& t1, triface& t2); + inline void esymself(triface& t); + inline void enext(triface& t1, triface& t2); + inline void enextself(triface& t); + inline void eprev(triface& t1, triface& t2); + inline void eprevself(triface& t); + inline void enextesym(triface& t1, triface& t2); + inline void enextesymself(triface& t); + inline void eprevesym(triface& t1, triface& t2); + inline void eprevesymself(triface& t); + inline void eorgoppo(triface& t1, triface& t2); + inline void eorgoppoself(triface& t); + inline void edestoppo(triface& t1, triface& t2); + inline void edestoppoself(triface& t); + inline void fsym(triface& t1, triface& t2); + inline void fsymself(triface& t); + inline void fnext(triface& t1, triface& t2); + inline void fnextself(triface& t); + inline point org (triface& t); + inline point dest(triface& t); + inline point apex(triface& t); + inline point oppo(triface& t); + inline void setorg (triface& t, point p); + inline void setdest(triface& t, point p); + inline void setapex(triface& t, point p); + inline void setoppo(triface& t, point p); + inline REAL elemattribute(tetrahedron* ptr, int attnum); + inline void setelemattribute(tetrahedron* ptr, int attnum, REAL value); + inline REAL volumebound(tetrahedron* ptr); + inline void setvolumebound(tetrahedron* ptr, REAL value); + inline int elemindex(tetrahedron* ptr); + inline void setelemindex(tetrahedron* ptr, int value); + inline int elemmarker(tetrahedron* ptr); + inline void setelemmarker(tetrahedron* ptr, int value); + inline void infect(triface& t); + inline void uninfect(triface& t); + inline bool infected(triface& t); + inline void marktest(triface& t); + inline void unmarktest(triface& t); + inline bool marktested(triface& t); + inline void markface(triface& t); + inline void unmarkface(triface& t); + inline bool facemarked(triface& t); + inline void markedge(triface& t); + inline void unmarkedge(triface& t); + inline bool edgemarked(triface& t); + inline void marktest2(triface& t); + inline void unmarktest2(triface& t); + inline bool marktest2ed(triface& t); + inline int elemcounter(triface& t); + inline void setelemcounter(triface& t, int value); + inline void increaseelemcounter(triface& t); + inline void decreaseelemcounter(triface& t); + inline bool ishulltet(triface& t); + inline bool isdeadtet(triface& t); + + // Primitives for subfaces and subsegments. + inline void sdecode(shellface sptr, face& s); + inline shellface sencode(face& s); + inline shellface sencode2(shellface *sh, int shver); + inline void spivot(face& s1, face& s2); + inline void spivotself(face& s); + inline void sbond(face& s1, face& s2); + inline void sbond1(face& s1, face& s2); + inline void sdissolve(face& s); + inline point sorg(face& s); + inline point sdest(face& s); + inline point sapex(face& s); + inline void setsorg(face& s, point pointptr); + inline void setsdest(face& s, point pointptr); + inline void setsapex(face& s, point pointptr); + inline void sesym(face& s1, face& s2); + inline void sesymself(face& s); + inline void senext(face& s1, face& s2); + inline void senextself(face& s); + inline void senext2(face& s1, face& s2); + inline void senext2self(face& s); + inline REAL areabound(face& s); + inline void setareabound(face& s, REAL value); + inline int shellmark(face& s); + inline void setshellmark(face& s, int value); + inline void sinfect(face& s); + inline void suninfect(face& s); + inline bool sinfected(face& s); + inline void smarktest(face& s); + inline void sunmarktest(face& s); + inline bool smarktested(face& s); + inline void smarktest2(face& s); + inline void sunmarktest2(face& s); + inline bool smarktest2ed(face& s); + inline void smarktest3(face& s); + inline void sunmarktest3(face& s); + inline bool smarktest3ed(face& s); + inline void setfacetindex(face& f, int value); + inline int getfacetindex(face& f); + + // Primitives for interacting tetrahedra and subfaces. + inline void tsbond(triface& t, face& s); + inline void tsdissolve(triface& t); + inline void stdissolve(face& s); + inline void tspivot(triface& t, face& s); + inline void stpivot(face& s, triface& t); + + // Primitives for interacting tetrahedra and segments. + inline void tssbond1(triface& t, face& seg); + inline void sstbond1(face& s, triface& t); + inline void tssdissolve1(triface& t); + inline void sstdissolve1(face& s); + inline void tsspivot1(triface& t, face& s); + inline void sstpivot1(face& s, triface& t); + + // Primitives for interacting subfaces and segments. + inline void ssbond(face& s, face& edge); + inline void ssbond1(face& s, face& edge); + inline void ssdissolve(face& s); + inline void sspivot(face& s, face& edge); + + // Primitives for points. + inline int pointmark(point pt); + inline void setpointmark(point pt, int value); + inline enum verttype pointtype(point pt); + inline void setpointtype(point pt, enum verttype value); + inline int pointgeomtag(point pt); + inline void setpointgeomtag(point pt, int value); + inline REAL pointgeomuv(point pt, int i); + inline void setpointgeomuv(point pt, int i, REAL value); + inline void pinfect(point pt); + inline void puninfect(point pt); + inline bool pinfected(point pt); + inline void pmarktest(point pt); + inline void punmarktest(point pt); + inline bool pmarktested(point pt); + inline void pmarktest2(point pt); + inline void punmarktest2(point pt); + inline bool pmarktest2ed(point pt); + inline void pmarktest3(point pt); + inline void punmarktest3(point pt); + inline bool pmarktest3ed(point pt); + inline tetrahedron point2tet(point pt); + inline void setpoint2tet(point pt, tetrahedron value); + inline shellface point2sh(point pt); + inline void setpoint2sh(point pt, shellface value); + inline point point2ppt(point pt); + inline void setpoint2ppt(point pt, point value); + inline tetrahedron point2bgmtet(point pt); + inline void setpoint2bgmtet(point pt, tetrahedron value); + inline void setpointinsradius(point pt, REAL value); + inline REAL getpointinsradius(point pt); + inline bool issteinerpoint(point pt); + + // Advanced primitives. + inline void point2tetorg(point pt, triface& t); + inline void point2shorg(point pa, face& s); + inline point farsorg(face& seg); + inline point farsdest(face& seg); + + // Memory managment + void tetrahedrondealloc(tetrahedron*); + tetrahedron *tetrahedrontraverse(); + tetrahedron *alltetrahedrontraverse(); + void shellfacedealloc(memorypool*, shellface*); + shellface *shellfacetraverse(memorypool*); + void pointdealloc(point); + point pointtraverse(); + + void makeindex2pointmap(point*&); + void makepoint2submap(memorypool*, int*&, face*&); + void maketetrahedron(triface*); + void makeshellface(memorypool*, face*); + void makepoint(point*, enum verttype); + + void initializepools(); + + // Symbolic perturbations (robust) + REAL insphere_s(REAL*, REAL*, REAL*, REAL*, REAL*); + + // Triangle-edge intersection test (robust) + int tri_edge_2d(point, point, point, point, point, point, int, int*, int*); + int tri_edge_tail(point, point, point, point, point, point, REAL, REAL, int, + int*, int*); + int tri_edge_test(point, point, point, point, point, point, int, int*, int*); + + // Linear algebra functions + inline REAL dot(REAL* v1, REAL* v2); + inline void cross(REAL* v1, REAL* v2, REAL* n); + bool lu_decmp(REAL lu[4][4], int n, int* ps, REAL* d, int N); + void lu_solve(REAL lu[4][4], int n, int* ps, REAL* b, int N); + + // Geometric calculations (non-robust) + REAL orient3dfast(REAL *pa, REAL *pb, REAL *pc, REAL *pd); + inline REAL norm2(REAL x, REAL y, REAL z); + inline REAL distance(REAL* p1, REAL* p2); + REAL incircle3d(point pa, point pb, point pc, point pd); + void facenormal(point pa, point pb, point pc, REAL *n, int pivot, REAL *lav); + bool tetalldihedral(point, point, point, point, REAL*, REAL*, REAL*); + void tetallnormal(point, point, point, point, REAL N[4][3], REAL* volume); + REAL tetaspectratio(point, point, point, point); + bool circumsphere(REAL*, REAL*, REAL*, REAL*, REAL* cent, REAL* radius); + void planelineint(REAL*, REAL*, REAL*, REAL*, REAL*, REAL*, REAL*); + int linelineint(REAL*, REAL*, REAL*, REAL*, REAL*, REAL*, REAL*, REAL*); + REAL tetprismvol(REAL* pa, REAL* pb, REAL* pc, REAL* pd); + void calculateabovepoint4(point, point, point, point); + + // The elementary flips. + void flip23(triface*, int, flipconstraints* fc); + void flip32(triface*, int, flipconstraints* fc); + void flip41(triface*, int, flipconstraints* fc); + // A generalized edge flip. + int flipnm(triface*, int n, int level, int, flipconstraints* fc); + int flipnm_post(triface*, int n, int nn, int, flipconstraints* fc); + // Point insertion. + int insertpoint(point, triface*, face*, face*, insertvertexflags*); + void insertpoint_abort(face*, insertvertexflags*); + + // Point sorting. + int transgc[8][3][8], tsb1mod3[8]; + void hilbert_init(int n); + int hilbert_split(point* vertexarray, int arraysize, int gc0, int gc1, + REAL, REAL, REAL, REAL, REAL, REAL); + void hilbert_sort3(point* vertexarray, int arraysize, int e, int d, + REAL, REAL, REAL, REAL, REAL, REAL, int depth); + void brio_multiscale_sort(point*,int,int threshold,REAL ratio,int* depth); + + // Point location. + unsigned long randomnation(unsigned int choices); + void randomsample(point searchpt, triface *searchtet); + enum locateresult locate(point searchpt, triface *searchtet); + + // Incremental flips. + void flippush(badface*&, triface*); + int incrementalflip(point newpt, int, flipconstraints *fc); + + // Incremental Delaunay construction. + void initialdelaunay(point pa, point pb, point pc, point pd); + void incrementaldelaunay(clock_t&); + + // Surface meshing. + void flipshpush(face*); + void flip22(face*, int, int); + void flip31(face*, int); + long lawsonflip(); + int sinsertvertex(point newpt, face*, face*, int iloc, int bowywat, int); + int sremovevertex(point delpt, face*, face*, int lawson); + enum locateresult slocate(point, face*, int, int, int); + + // Boundary recovery + enum interresult finddirection(triface* searchtet, point endpt); + int checkflipeligibility(int fliptype, point, point, point, point, point, + int level, int edgepivot, flipconstraints* fc); + + int removeedgebyflips(triface*, flipconstraints*); + int removefacebyflips(triface*, flipconstraints*); + int recoveredgebyflips(point, point, triface*, int fullsearch); + int add_steinerpt_in_schoenhardtpoly(triface*, int, int chkencflag); + int add_steinerpt_in_segment(face*, int searchlevel); + int addsteiner4recoversegment(face*, int); + int recoversegments(arraypool*, int fullsearch, int steinerflag); + int recoverfacebyflips(point, point, point, face*, triface*); + int recoversubfaces(arraypool*, int steinerflag); + int getvertexstar(int, point searchpt, arraypool*, arraypool*, arraypool*); + int getedge(point, point, triface*); + int reduceedgesatvertex(point startpt, arraypool* endptlist); + int removevertexbyflips(point steinerpt); + int suppressbdrysteinerpoint(point steinerpt); + int suppresssteinerpoints(); + void recoverboundary(clock_t&); + + // Mesh reconstruct + void carveholes(); + + // Mesh optimize + long lawsonflip3d(flipconstraints *fc); + void recoverdelaunay(); + int gettetrahedron(point, point, point, point, triface *); + long improvequalitybyflips(); + int smoothpoint(point smtpt, arraypool*, int ccw, optparameters *opm); + long improvequalitybysmoothing(optparameters *opm); + int splitsliver(triface *, REAL, int); + long removeslivers(int); + void optimizemesh(); + + // Constructor & desctructor. + meshGRegionBoundaryRecovery() + { + in = new meshGRegionInputs(); + b = new meshGRegionOptions(); + bgm = NULL; + + tetrahedrons = subfaces = subsegs = points = NULL; + badtetrahedrons = badsubfacs = badsubsegs = NULL; + tet2segpool = tet2subpool = NULL; + flippool = NULL; + + dummypoint = NULL; + flipstack = NULL; + unflipqueue = NULL; + + cavetetlist = cavebdrylist = caveoldtetlist = NULL; + cavetetshlist = cavetetseglist = cavetetvertlist = NULL; + caveencshlist = caveencseglist = NULL; + caveshlist = caveshbdlist = cavesegshlist = NULL; + + subsegstack = subfacstack = subvertstack = NULL; + + numpointattrib = numelemattrib = 0; + sizeoftensor = 0; + pointmtrindex = 0; + pointparamindex = 0; + pointmarkindex = 0; + point2simindex = 0; + pointinsradiusindex = 0; + elemattribindex = 0; + volumeboundindex = 0; + shmarkindex = 0; + areaboundindex = 0; + checksubsegflag = 0; + checksubfaceflag = 0; + checkconstraints = 0; + nonconvex = 0; + autofliplinklevel = 1; + useinsertradius = 0; + samples = 0l; + randomseed = 1l; + minfaceang = minfacetdihed = PI; + tetprism_vol_sum = 0.0; + longest = 0.0; + xmax = xmin = ymax = ymin = zmax = zmin = 0.0; + + insegments = 0l; + hullsize = 0l; + meshedges = meshhulledges = 0l; + steinerleft = -1; + dupverts = 0l; + unuverts = 0l; + nonregularcount = 0l; + st_segref_count = st_facref_count = st_volref_count = 0l; + fillregioncount = cavitycount = cavityexpcount = 0l; + flip14count = flip26count = flipn2ncount = 0l; + flip23count = flip32count = flip44count = flip41count = 0l; + flip22count = flip31count = 0l; + totalworkmemory = 0l; + } + + ~meshGRegionBoundaryRecovery() + { + delete in; + delete b; + + if (points != (memorypool *) NULL) { + delete points; + delete [] dummypoint; + } + + if (tetrahedrons != (memorypool *) NULL) { + delete tetrahedrons; + } + + if (subfaces != (memorypool *) NULL) { + delete subfaces; + delete subsegs; + } + + if (tet2segpool != NULL) { + delete tet2segpool; + delete tet2subpool; + } + + if (flippool != NULL) { + delete flippool; + delete unflipqueue; + } + + if (cavetetlist != NULL) { + delete cavetetlist; + delete cavebdrylist; + delete caveoldtetlist; + delete cavetetvertlist; + } + + if (caveshlist != NULL) { + delete caveshlist; + delete caveshbdlist; + delete cavesegshlist; + delete cavetetshlist; + delete cavetetseglist; + delete caveencshlist; + delete caveencseglist; + } + + if (subsegstack != NULL) { + delete subsegstack; + delete subfacstack; + delete subvertstack; + } + } + + // Debug functions + void outsurfacemesh(const char* mfilename); + void outmesh2medit(const char* mfilename); + + void unifysubfaces(face *f1, face *f2); + void unifysegments(); + void jettisonnodes(); + void reconstructmesh(GRegion *_gr); +}; + +void terminateBoundaryRecovery(void *, int exitcode); + +#endif diff --git a/Mesh/meshGRegionDelaunayInsertion.cpp b/Mesh/meshGRegionDelaunayInsertion.cpp index a703a1587922ae603f892b7cb8dbf35c9e46fe8f..e43fb4fd26cc54773f3a5fb739f9deeff1026df6 100644 --- a/Mesh/meshGRegionDelaunayInsertion.cpp +++ b/Mesh/meshGRegionDelaunayInsertion.cpp @@ -1593,21 +1593,6 @@ void bowyerWatsonFrontalLayers(GRegion *gr, bool hex) ///// do a 3D delaunay mesh assuming a set of vertices -// void insertVerticesInRegion (GRegion *gr) -// { -// // compute edges that should not be -// std::set<MEdge,Less_Edge> bnd; -// std::list<GFace*> f_list = gr->faces(); -// for (std::list<GFace*>::iterator it = f_list.begin(); it != f_list.end(); ++it){ -// GFace *gf = *it; -// for (i = 0;i< gf->triangles.size(); i++) { -// for (j = 0; j < 3; j++) { -// bnd.insert(gf->triangles[i]->getEdge(j)); -// } -// } -// } -// } - void delaunayMeshIn3D(std::vector<MVertex*> &v, std::vector<MTetrahedron*> &result, bool removeBox) { double t1 = Cpu(); delaunayTriangulation (1, 1, v, result); diff --git a/Mesh/meshPartition.cpp b/Mesh/meshPartition.cpp index bdb33df6fb0d4fba956e9d5a4b44016e31f443f4..d925702df251fa76d51b91eb092e2082ee0339d0 100644 --- a/Mesh/meshPartition.cpp +++ b/Mesh/meshPartition.cpp @@ -262,8 +262,9 @@ int RenumberMesh(GModel *const model, meshPartitionOptions &options) temp.insert(temp.begin(),(*it)->hexahedra.begin(),(*it)->hexahedra.end()); RenumberMeshElements(temp, options); (*it)->hexahedra.clear(); - for (unsigned int i = 0; i < temp.size(); i++) + for (unsigned int i = 0; i < temp.size(); i++){ (*it)->hexahedra.push_back((MHexahedron*)temp[i]); + } } return 1; } diff --git a/Numeric/GaussQuadraturePyr.cpp b/Numeric/GaussQuadraturePyr.cpp index 91cd1b3982ab429587354afe2bf42e3450fe475b..2bb6c40fe041dba36baf7b8365b689af8137791a 100644 --- a/Numeric/GaussQuadraturePyr.cpp +++ b/Numeric/GaussQuadraturePyr.cpp @@ -61,7 +61,7 @@ IntPt *getGQPyrPts(int order) GQPyr[index][l].pt[2] = 0.5*(1+wp); wt *= 0.125; - GQPyr[index][l++].weight = wt; + GQPyr[index][l++].weight = wt *4./3.; } diff --git a/Numeric/robustPredicates.cpp b/Numeric/robustPredicates.cpp index dbf750bf557f6c4fbef09be1c377cef542d169cf..e2441a484b033174a313f3f0692aabd61a429d05 100644 --- a/Numeric/robustPredicates.cpp +++ b/Numeric/robustPredicates.cpp @@ -376,6 +376,18 @@ static REAL o3derrboundA, o3derrboundB, o3derrboundC; static REAL iccerrboundA, iccerrboundB, iccerrboundC; static REAL isperrboundA, isperrboundB, isperrboundC; +// Options to choose types of geometric computtaions. +// Added by H. Si, 2012-08-23. +static int _use_inexact_arith; // -X option. +static int _use_static_filter; // Default option, disable it by -X1 + +// Static filters for orient3d() and insphere(). +// They are pre-calcualted and set in exactinit(). +// Added by H. Si, 2012-08-23. +static REAL o3dstaticfilter; +static REAL ispstaticfilter; + + /*****************************************************************************/ /* */ /* doubleprint() Print the bit representation of a double. */ @@ -661,7 +673,7 @@ float uniformfloatrand() /* */ /*****************************************************************************/ -REAL exactinit() +REAL exactinit(int filter, REAL maxx, REAL maxy, REAL maxz) { REAL half; REAL check, lastcheck; @@ -723,6 +735,23 @@ REAL exactinit() isperrboundB = (5.0 + 72.0 * epsilon) * epsilon; isperrboundC = (71.0 + 1408.0 * epsilon) * epsilon * epsilon; + + _use_inexact_arith = 0; + _use_static_filter = filter; + + // Sort maxx < maxy < maxz. Re-use 'half' for swapping. + if (maxx > maxz) { + half = maxx; maxx = maxz; maxz = half; + } + if (maxy > maxz) { + half = maxy; maxy = maxz; maxz = half; + } + else if (maxy < maxx) { + half = maxy; maxy = maxx; maxx = half; + } + o3dstaticfilter = 5.1107127829973299e-15 * maxx * maxy * maxz; + ispstaticfilter = 1.2466136531027298e-13 * maxx * maxy * maxz * (maxz * maxz); + return epsilon; /* Added by H. Si 30 Juli, 2004. */ } @@ -2319,6 +2348,12 @@ REAL orient3d(REAL *pa, REAL *pb, REAL *pc, REAL *pd) + bdz * (cdxady - adxcdy) + cdz * (adxbdy - bdxady); + if (_use_static_filter) { + if (det > o3dstaticfilter) return det; + if (det < -o3dstaticfilter) return det; + } + + permanent = (Absolute(bdxcdy) + Absolute(cdxbdy)) * Absolute(adz) + (Absolute(cdxady) + Absolute(adxcdy)) * Absolute(bdz) + (Absolute(adxbdy) + Absolute(bdxady)) * Absolute(cdz); @@ -4161,6 +4196,7 @@ REAL insphere(REAL *pa, REAL *pb, REAL *pc, REAL *pd, REAL *pe) } #else + REAL insphere(REAL *pa, REAL *pb, REAL *pc, REAL *pd, REAL *pe) { REAL aex, bex, cex, dex; @@ -4223,6 +4259,10 @@ REAL insphere(REAL *pa, REAL *pb, REAL *pc, REAL *pd, REAL *pe) det = (dlift * abc - clift * dab) + (blift * cda - alift * bcd); + if (_use_static_filter) { + if (fabs(det) > ispstaticfilter) return det; + } + aezplus = Absolute(aez); bezplus = Absolute(bez); cezplus = Absolute(cez); diff --git a/Numeric/robustPredicates.h b/Numeric/robustPredicates.h index dbee6f9b191cc62d95c6b3596dd73dc2fce57bdb..258ddc9d6e4b805ba492b6614c7512443f489a93 100644 --- a/Numeric/robustPredicates.h +++ b/Numeric/robustPredicates.h @@ -8,11 +8,11 @@ // namespace necessary to avoid conflicts with predicates used by Tetgen namespace robustPredicates{ -double exactinit(); -double incircle(double *pa, double *pb, double *pc, double *pd); -double insphere(double *pa, double *pb, double *pc, double *pd, double *pe); -double orient2d(double *pa, double *pb, double *pc); -double orient3d(double *pa, double *pb, double *pc, double *pd); + double exactinit(int filter, double maxx, double maxy, double maxz); + double incircle(double *pa, double *pb, double *pc, double *pd); + double insphere(double *pa, double *pb, double *pc, double *pd, double *pe); + double orient2d(double *pa, double *pb, double *pc); + double orient3d(double *pa, double *pb, double *pc, double *pd); } #endif diff --git a/Solver/linearSystemCSR.cpp b/Solver/linearSystemCSR.cpp index dbf21e038c0831046df16b1ab97598aabba75ece..c6a1ec7d4a472a68a4affccc78b861a7e5cc01ab 100644 --- a/Solver/linearSystemCSR.cpp +++ b/Solver/linearSystemCSR.cpp @@ -475,7 +475,6 @@ extern "C" { } template class linearSystemCSRTaucs<double>; -template class linearSystemCSRTaucs<std::complex<double> >; template<> int linearSystemCSRTaucs<double>::systemSolve() @@ -516,6 +515,8 @@ int linearSystemCSRTaucs<double>::systemSolve() } return 1; } +#if 0 +template class linearSystemCSRTaucs<std::complex<double> >; template<> int linearSystemCSRTaucs<std::complex<double> >::systemSolve() @@ -557,3 +558,4 @@ int linearSystemCSRTaucs<std::complex<double> >::systemSolve() } #endif +#endif diff --git a/benchmarks/2d/Square-01.geo b/benchmarks/2d/Square-01.geo index 0f920b62390175316aa58592b9834ad5d8efe247..e4bcca13d8a7c78df52d3a7f28a409b16de64110 100644 --- a/benchmarks/2d/Square-01.geo +++ b/benchmarks/2d/Square-01.geo @@ -1,9 +1,9 @@ -fact = 100; -lc = .1 * fact; -Point(1) = {0.0,0.0,0,lc*2.5e-5}; -Point(2) = {1* fact,0.0,0,lc*1}; +fact = 1; +lc = .03 * fact; +Point(1) = {0.0,0.0,0,lc/30}; +Point(2) = {1* fact,0.0,0,lc}; Point(3) = {1* fact,1* fact,0,lc}; -Point(4) = {0,1* fact,0,lc*1}; +Point(4) = {0,1* fact,0,lc}; Line(1) = {3,2}; Line(2) = {2,1}; Line(3) = {1,4}; @@ -11,3 +11,4 @@ Line(4) = {4,3}; Line Loop(5) = {1,2,3,4}; Plane Surface(6) = {5}; //Recombine Surface {6}; +//Recombine Surface {6}; diff --git a/benchmarks/2d/embedded_recombine.geo b/benchmarks/2d/embedded_recombine.geo index be390fab8f5a930c352d8585bec54ccbc75370be..c1ba57e0a8a1f199d0f0fa03deeecb44bf886b49 100644 --- a/benchmarks/2d/embedded_recombine.geo +++ b/benchmarks/2d/embedded_recombine.geo @@ -1,5 +1,5 @@ // Options -Mesh.SubdivisionAlgorithm = 1; +//Mesh.SubdivisionAlgorithm = 1; Mesh.MshFileVersion = 1; // Variables @@ -19,7 +19,9 @@ l1 = newl; Line(l1) = {p1, p2} ; l2 = newl; Line(l2) = {p2, p3} ; l3 = newl; Line(l3) = {p3, p4} ; l4 = newl; Line(l4) = {p4, p1} ; -l5 = newl; Line(l5) = {p6, p7} ; +l5 = newl; Line(l5) = {p1, p7} ; +l6 = newl; Line(l6) = {p1, p6} ; +l7 = newl; Line(l7) = {p7, p6} ; // Surface Dalle ll1 = newll; Line Loop (ll1) = {l1, l2, l3, l4} ; @@ -35,7 +37,7 @@ Transfinite Line {l5} = 1 + 1.3 / ch_length ; */ Point{p5} In Surface{s1} ; -Line{l5} In Surface{s1} ; +Line{l5,l6,l7} In Surface{s1} ; // Transformation des triangles en quadrangles -Recombine Surface {s1} ; +//Recombine Surface {s1} ; diff --git a/benchmarks/3d/Cube-01.geo b/benchmarks/3d/Cube-01.geo index 7e32681db1a468dbb06f48a8913f4668c3d5a4de..7540862ed303238e4869226d5fb5b3cf38dffaa1 100644 --- a/benchmarks/3d/Cube-01.geo +++ b/benchmarks/3d/Cube-01.geo @@ -1,13 +1,13 @@ -Mesh.Algorithm3D = 9; -Mesh.Algorithm = 9; -Mesh.Recombine3DAll = 1; +//Mesh.Algorithm3D = 9; +//Mesh.Algorithm = 9; +//Mesh.Recombine3DAll = 1; Mesh.Smoothing=1; //Mesh.Dual = 1; //Mesh.Voronoi=1; -lc = 0.16; -Point(1) = {0.0,0.0,0.0,lc/2}; -Point(2) = {1,0.0,0.0,lc}; +lc = 0.1; +Point(1) = {0.0,0.0,0.0,lc/1}; +Point(2) = {1,0.0,0.0,lc/1}; Point(3) = {1,1,0.0,lc}; Point(4) = {0,1,0.0,lc}; Line(1) = {4,3}; @@ -17,3 +17,4 @@ Line(4) = {1,4}; Line Loop(5) = {2,3,4,1}; Plane Surface(6) = {5}; Extrude Surface { 6, {0,0.0,1} }; +//Characteristic Length {10} = lc/100; diff --git a/benchmarks/3d/coin.geo b/benchmarks/3d/coin.geo index ba4c91c060fe64d95d21f90590ca0181ab0d2b9e..0e11252b3bc776165ea7a1a88667bad118d93134 100644 --- a/benchmarks/3d/coin.geo +++ b/benchmarks/3d/coin.geo @@ -14,7 +14,7 @@ 0.085 261542 1568048 1285.29 */ lcar1 = .2; -lcar2 = .2; +lcar2 = .02; Point(newp) = {0.5,0.5,0.5,lcar2}; /* Point 1 */ Point(newp) = {0.5,0.5,0,lcar1}; /* Point 2 */ diff --git a/benchmarks/3d/hex.geo b/benchmarks/3d/hex.geo index 3318df7eb075381ab4029e94867443b7ca68f868..720b8ab79f4e6043cf793912c413fef9a6d3992a 100644 --- a/benchmarks/3d/hex.geo +++ b/benchmarks/3d/hex.geo @@ -1,9 +1,10 @@ +Mesh.CharacteristicLengthExtendFromBoundary = 0; lc = 0.3; // example of a purely hexahedral mesh using only transfinite // mesh constraints -z=0.6; -deform=0.4; +z=1; +deform=0.0; Point(1) = {-2-deform,0,0,lc}; Point(2) = {-1,0,0,lc}; @@ -39,18 +40,9 @@ Line Loop(24) = {6,-12,3,10}; Ruled Surface(25) = {24}; Surface Loop(1) = {17,-25,-23,-21,19,15}; Volume(1) = {1}; -Transfinite Line{1:4,6:9} = 5 Using Progression 1.4; +Transfinite Line{1:4,6:9} = 10; Transfinite Line{10:13} = 10; -/* -Transfinite Surface {15} = {1,2,3,4}; -Transfinite Surface {17} = {5,6,7,8}; -Transfinite Surface {19} = {1,5,8,4}; -Transfinite Surface {21} = {8,7,3,4}; -Transfinite Surface {23} = {6,7,3,2}; -Transfinite Surface {25} = {5,6,2,1}; -*/ - Transfinite Surface {15} = {1,2,3,4}; @@ -61,6 +53,6 @@ Transfinite Surface {23} = {6,7,3,2}; Transfinite Surface {25} = {5,6,2,1}; -Transfinite Volume{1} = {1,2,3,4,5,6,7,8}; +//Transfinite Volume{1} = {1,2,3,4,5,6,7,8}; Recombine Surface{15:25:2}; diff --git a/benchmarks/extrude/hybrid.geo b/benchmarks/extrude/hybrid.geo index 4202a4a2dbb0ef52d85703a17616846b9eb5d1e6..f4a44dafd9ca881964dce9acf46646c19ee803c4 100644 --- a/benchmarks/extrude/hybrid.geo +++ b/benchmarks/extrude/hybrid.geo @@ -22,6 +22,7 @@ Extrude Surface {6, {0,0.0,2}} ; Extrude Surface {45, {0,2,0.0}} { + Recombine; Layers {{2,2,2}, {.3,.6,1.}}; } ; Coherence; diff --git a/benchmarks/python/square.geo b/benchmarks/python/square.geo index d37b77371d77af8bc04191e3b5e940947c541bb7..f3050fb2548065f88789884592b0ed4ba884daa7 100644 --- a/benchmarks/python/square.geo +++ b/benchmarks/python/square.geo @@ -1,12 +1,30 @@ -fact = 1; -lc = .01 * fact; -Point(1) = {0.0,0.0,0,lc}; -Point(2) = {1* fact,0.0,0,lc}; -Point(3) = {1* fact,1* fact,0,lc}; -Point(4) = {0,1* fact,0,lc}; -Line(1) = {3,2}; -Line(2) = {2,1}; -Line(3) = {1,4}; -Line(4) = {4,3}; -Line Loop(5) = {1,2,3,4}; -Plane Surface(6) = {5}; +lc=1000; +Point(1) = {0, 0, 0,lc*.1}; +Point(2) = {0, 10, 0,lc}; +Point(3) = {10, 10, 0,lc}; +Point(4) = {10, 0, 0,lc}; +Line(1) = {2, 3}; +Line(2) = {3, 4}; +Line(3) = {4, 1}; +Line(4) = {1, 2}; + +Line Loop(5) = {1, 2, 3, 4}; +Plane Surface(10) = {5}; + +Physical Line("wall")={1,2,3,4}; +Physical Surface("air")={10}; + +//---------------------- + +//Compound Line(10)={1,2,3,4}; +//Compound Surface(100)={10}; + +//Line {1,2,3,4} In Surface{100}; + +//Physical Surface(100)={10}; +//Physical Line(200)={1,2,3,4}; + + + + +//Recombine Surface {10}; diff --git a/benchmarks/python/square.msh b/benchmarks/python/square.msh index 3fb8b9489c579a72b99e393c0fde055d5f2dd324..34922caf27fa1d12a44daae9a78d978a73cfffaf 100644 --- a/benchmarks/python/square.msh +++ b/benchmarks/python/square.msh @@ -1,34574 +1,339 @@ $MeshFormat 2.2 0 8 $EndMeshFormat +$PhysicalNames +2 +1 1 "wall" +2 2 "air" +$EndPhysicalNames $Nodes -11521 +109 1 0 0 0 -2 1 0 0 -3 1 1 0 -4 0 1 0 -5 1 0.9898989898989479 0 -6 1 0.9797979797978956 0 -7 1 0.9696969696968435 0 -8 1 0.9595959595957912 0 -9 1 0.9494949494947391 0 -10 1 0.939393939393687 0 -11 1 0.9292929292926349 0 -12 1 0.9191919191915826 0 -13 1 0.9090909090905305 0 -14 1 0.8989898989894782 0 -15 1 0.8888888888884261 0 -16 1 0.8787878787873851 0 -17 1 0.868686868686396 0 -18 1 0.8585858585854518 0 -19 1 0.8484848484845118 0 -20 1 0.8383838383835718 0 -21 1 0.8282828282826318 0 -22 1 0.8181818181816918 0 -23 1 0.8080808080807518 0 -24 1 0.7979797979798118 0 -25 1 0.7878787878788717 0 -26 1 0.7777777777779317 0 -27 1 0.7676767676769917 0 -28 1 0.7575757575760517 0 -29 1 0.7474747474751117 0 -30 1 0.7373737373741717 0 -31 1 0.7272727272732317 0 -32 1 0.7171717171722916 0 -33 1 0.7070707070713516 0 -34 1 0.6969696969704116 0 -35 1 0.6868686868694716 0 -36 1 0.6767676767685316 0 -37 1 0.6666666666675916 0 -38 1 0.6565656565666514 0 -39 1 0.6464646464657113 0 -40 1 0.6363636363647713 0 -41 1 0.6262626262638313 0 -42 1 0.6161616161628912 0 -43 1 0.6060606060619511 0 -44 1 0.5959595959610111 0 -45 1 0.585858585860071 0 -46 1 0.5757575757591309 0 -47 1 0.5656565656581909 0 -48 1 0.5555555555572509 0 -49 1 0.5454545454563108 0 -50 1 0.5353535353553708 0 -51 1 0.5252525252544307 0 -52 1 0.5151515151534907 0 -53 1 0.5050505050525429 0 -54 1 0.4949494949515468 0 -55 1 0.4848484848505024 0 -56 1 0.4747474747494502 0 -57 1 0.4646464646483981 0 -58 1 0.454545454547346 0 -59 1 0.4444444444462938 0 -60 1 0.4343434343452417 0 -61 1 0.4242424242441896 0 -62 1 0.4141414141431374 0 -63 1 0.4040404040420853 0 -64 1 0.3939393939410332 0 -65 1 0.383838383839981 0 -66 1 0.3737373737389289 0 -67 1 0.3636363636378768 0 -68 1 0.3535353535368246 0 -69 1 0.3434343434357724 0 -70 1 0.3333333333347204 0 -71 1 0.3232323232336681 0 -72 1 0.3131313131326161 0 -73 1 0.3030303030315639 0 -74 1 0.2929292929305118 0 -75 1 0.2828282828294596 0 -76 1 0.2727272727284076 0 -77 1 0.2626262626273553 0 -78 1 0.2525252525263033 0 -79 1 0.2424242424252511 0 -80 1 0.232323232324199 0 -81 1 0.2222222222231469 0 -82 1 0.2121212121220948 0 -83 1 0.2020202020210426 0 -84 1 0.1919191919199905 0 -85 1 0.1818181818189384 0 -86 1 0.1717171717178861 0 -87 1 0.1616161616168341 0 -88 1 0.1515151515157819 0 -89 1 0.1414141414147299 0 -90 1 0.1313131313136776 0 -91 1 0.1212121212126256 0 -92 1 0.1111111111115733 0 -93 1 0.1010101010105213 0 -94 1 0.09090909090946908 0 -95 1 0.08080808080841706 0 -96 1 0.07070707070736482 0 -97 1 0.06060606060631279 0 -98 1 0.05050505050526055 0 -99 1 0.04040404040420853 0 -100 1 0.03030303030315629 0 -101 1 0.02020202020210415 0 -102 1 0.01010101010105202 0 -103 0.9898989898989479 0 0 -104 0.9797979797978956 0 0 -105 0.9696969696968435 0 0 -106 0.9595959595957912 0 0 -107 0.9494949494947391 0 0 -108 0.939393939393687 0 0 -109 0.9292929292926349 0 0 -110 0.9191919191915826 0 0 -111 0.9090909090905305 0 0 -112 0.8989898989894782 0 0 -113 0.8888888888884261 0 0 -114 0.8787878787873851 0 0 -115 0.868686868686396 0 0 -116 0.8585858585854518 0 0 -117 0.8484848484845118 0 0 -118 0.8383838383835718 0 0 -119 0.8282828282826318 0 0 -120 0.8181818181816918 0 0 -121 0.8080808080807518 0 0 -122 0.7979797979798118 0 0 -123 0.7878787878788717 0 0 -124 0.7777777777779317 0 0 -125 0.7676767676769917 0 0 -126 0.7575757575760517 0 0 -127 0.7474747474751117 0 0 -128 0.7373737373741717 0 0 -129 0.7272727272732317 0 0 -130 0.7171717171722916 0 0 -131 0.7070707070713516 0 0 -132 0.6969696969704116 0 0 -133 0.6868686868694716 0 0 -134 0.6767676767685316 0 0 -135 0.6666666666675916 0 0 -136 0.6565656565666514 0 0 -137 0.6464646464657113 0 0 -138 0.6363636363647713 0 0 -139 0.6262626262638313 0 0 -140 0.6161616161628912 0 0 -141 0.6060606060619511 0 0 -142 0.5959595959610111 0 0 -143 0.585858585860071 0 0 -144 0.5757575757591309 0 0 -145 0.5656565656581909 0 0 -146 0.5555555555572509 0 0 -147 0.5454545454563108 0 0 -148 0.5353535353553708 0 0 -149 0.5252525252544307 0 0 -150 0.5151515151534907 0 0 -151 0.5050505050525429 0 0 -152 0.4949494949515468 0 0 -153 0.4848484848505024 0 0 -154 0.4747474747494502 0 0 -155 0.4646464646483981 0 0 -156 0.454545454547346 0 0 -157 0.4444444444462938 0 0 -158 0.4343434343452417 0 0 -159 0.4242424242441896 0 0 -160 0.4141414141431374 0 0 -161 0.4040404040420853 0 0 -162 0.3939393939410332 0 0 -163 0.383838383839981 0 0 -164 0.3737373737389289 0 0 -165 0.3636363636378768 0 0 -166 0.3535353535368246 0 0 -167 0.3434343434357724 0 0 -168 0.3333333333347204 0 0 -169 0.3232323232336681 0 0 -170 0.3131313131326161 0 0 -171 0.3030303030315639 0 0 -172 0.2929292929305118 0 0 -173 0.2828282828294596 0 0 -174 0.2727272727284076 0 0 -175 0.2626262626273553 0 0 -176 0.2525252525263033 0 0 -177 0.2424242424252511 0 0 -178 0.232323232324199 0 0 -179 0.2222222222231469 0 0 -180 0.2121212121220948 0 0 -181 0.2020202020210426 0 0 -182 0.1919191919199905 0 0 -183 0.1818181818189384 0 0 -184 0.1717171717178861 0 0 -185 0.1616161616168341 0 0 -186 0.1515151515157819 0 0 -187 0.1414141414147299 0 0 -188 0.1313131313136776 0 0 -189 0.1212121212126256 0 0 -190 0.1111111111115733 0 0 -191 0.1010101010105213 0 0 -192 0.09090909090946908 0 0 -193 0.08080808080841706 0 0 -194 0.07070707070736482 0 0 -195 0.06060606060631279 0 0 -196 0.05050505050526055 0 0 -197 0.04040404040420853 0 0 -198 0.03030303030315629 0 0 -199 0.02020202020210415 0 0 -200 0.01010101010105202 0 0 -201 0 0.01010101010099102 0 -202 0 0.02020202020198219 0 -203 0 0.03030303030297278 0 -204 0 0.04040404040396137 0 -205 0 0.05050505050494904 0 -206 0 0.06060606060593775 0 -207 0 0.07070707070693009 0 -208 0 0.08080808080792477 0 -209 0 0.09090909090891947 0 -210 0 0.1010101010099141 0 -211 0 0.1111111111109088 0 -212 0 0.1212121212119021 0 -213 0 0.1313131313128889 0 -214 0 0.1414141414138701 0 -215 0 0.1515151515148508 0 -216 0 0.1616161616158314 0 -217 0 0.1717171717168121 0 -218 0 0.1818181818177927 0 -219 0 0.1919191919187734 0 -220 0 0.202020202019754 0 -221 0 0.2121212121207347 0 -222 0 0.2222222222217154 0 -223 0 0.232323232322696 0 -224 0 0.2424242424236767 0 -225 0 0.2525252525246574 0 -226 0 0.262626262625638 0 -227 0 0.2727272727266186 0 -228 0 0.2828282828275993 0 -229 0 0.2929292929285799 0 -230 0 0.3030303030295606 0 -231 0 0.3131313131305413 0 -232 0 0.323232323231522 0 -233 0 0.3333333333325026 0 -234 0 0.3434343434334833 0 -235 0 0.3535353535344639 0 -236 0 0.3636363636354446 0 -237 0 0.3737373737364252 0 -238 0 0.3838383838374059 0 -239 0 0.3939393939383865 0 -240 0 0.4040404040393672 0 -241 0 0.4141414141403479 0 -242 0 0.4242424242413285 0 -243 0 0.4343434343423092 0 -244 0 0.4444444444432898 0 -245 0 0.4545454545442705 0 -246 0 0.4646464646452512 0 -247 0 0.4747474747462318 0 -248 0 0.4848484848472125 0 -249 0 0.494949494948197 0 -250 0 0.5050505050492057 0 -251 0 0.5151515151502386 0 -252 0 0.5252525252512753 0 -253 0 0.5353535353523119 0 -254 0 0.5454545454533486 0 -255 0 0.5555555555543853 0 -256 0 0.5656565656554221 0 -257 0 0.5757575757564588 0 -258 0 0.5858585858574954 0 -259 0 0.5959595959585321 0 -260 0 0.6060606060595688 0 -261 0 0.6161616161606055 0 -262 0 0.6262626262616422 0 -263 0 0.6363636363626789 0 -264 0 0.6464646464637157 0 -265 0 0.6565656565647524 0 -266 0 0.6666666666657891 0 -267 0 0.6767676767668258 0 -268 0 0.6868686868678625 0 -269 0 0.6969696969688991 0 -270 0 0.7070707070699358 0 -271 0 0.7171717171709725 0 -272 0 0.7272727272720092 0 -273 0 0.7373737373730459 0 -274 0 0.7474747474740826 0 -275 0 0.7575757575751194 0 -276 0 0.7676767676761561 0 -277 0 0.7777777777771928 0 -278 0 0.7878787878782294 0 -279 0 0.7979797979792661 0 -280 0 0.8080808080803028 0 -281 0 0.8181818181813395 0 -282 0 0.8282828282823762 0 -283 0 0.8383838383834129 0 -284 0 0.8484848484844496 0 -285 0 0.8585858585854863 0 -286 0 0.868686868686523 0 -287 0 0.8787878787875596 0 -288 0 0.8888888888885963 0 -289 0 0.898989898989633 0 -290 0 0.9090909090906697 0 -291 0 0.9191919191917064 0 -292 0 0.9292929292927432 0 -293 0 0.9393939393937799 0 -294 0 0.9494949494948166 0 -295 0 0.9595959595958533 0 -296 0 0.96969696969689 0 -297 0 0.9797979797979266 0 -298 0 0.9898989898989633 0 -299 0.01010101010099102 1 0 -300 0.02020202020198219 1 0 -301 0.03030303030297278 1 0 -302 0.04040404040396137 1 0 -303 0.05050505050494904 1 0 -304 0.06060606060593775 1 0 -305 0.07070707070693009 1 0 -306 0.08080808080792477 1 0 -307 0.09090909090891947 1 0 -308 0.1010101010099141 1 0 -309 0.1111111111109088 1 0 -310 0.1212121212119021 1 0 -311 0.1313131313128889 1 0 -312 0.1414141414138701 1 0 -313 0.1515151515148508 1 0 -314 0.1616161616158314 1 0 -315 0.1717171717168121 1 0 -316 0.1818181818177927 1 0 -317 0.1919191919187734 1 0 -318 0.202020202019754 1 0 -319 0.2121212121207347 1 0 -320 0.2222222222217154 1 0 -321 0.232323232322696 1 0 -322 0.2424242424236767 1 0 -323 0.2525252525246574 1 0 -324 0.262626262625638 1 0 -325 0.2727272727266186 1 0 -326 0.2828282828275993 1 0 -327 0.2929292929285799 1 0 -328 0.3030303030295606 1 0 -329 0.3131313131305413 1 0 -330 0.323232323231522 1 0 -331 0.3333333333325026 1 0 -332 0.3434343434334833 1 0 -333 0.3535353535344639 1 0 -334 0.3636363636354446 1 0 -335 0.3737373737364252 1 0 -336 0.3838383838374059 1 0 -337 0.3939393939383865 1 0 -338 0.4040404040393672 1 0 -339 0.4141414141403479 1 0 -340 0.4242424242413285 1 0 -341 0.4343434343423092 1 0 -342 0.4444444444432898 1 0 -343 0.4545454545442705 1 0 -344 0.4646464646452512 1 0 -345 0.4747474747462318 1 0 -346 0.4848484848472125 1 0 -347 0.494949494948197 1 0 -348 0.5050505050492057 1 0 -349 0.5151515151502386 1 0 -350 0.5252525252512753 1 0 -351 0.5353535353523119 1 0 -352 0.5454545454533486 1 0 -353 0.5555555555543853 1 0 -354 0.5656565656554221 1 0 -355 0.5757575757564588 1 0 -356 0.5858585858574954 1 0 -357 0.5959595959585321 1 0 -358 0.6060606060595688 1 0 -359 0.6161616161606055 1 0 -360 0.6262626262616422 1 0 -361 0.6363636363626789 1 0 -362 0.6464646464637157 1 0 -363 0.6565656565647524 1 0 -364 0.6666666666657891 1 0 -365 0.6767676767668258 1 0 -366 0.6868686868678625 1 0 -367 0.6969696969688991 1 0 -368 0.7070707070699358 1 0 -369 0.7171717171709725 1 0 -370 0.7272727272720092 1 0 -371 0.7373737373730459 1 0 -372 0.7474747474740826 1 0 -373 0.7575757575751194 1 0 -374 0.7676767676761561 1 0 -375 0.7777777777771928 1 0 -376 0.7878787878782294 1 0 -377 0.7979797979792661 1 0 -378 0.8080808080803028 1 0 -379 0.8181818181813395 1 0 -380 0.8282828282823762 1 0 -381 0.8383838383834129 1 0 -382 0.8484848484844496 1 0 -383 0.8585858585854863 1 0 -384 0.868686868686523 1 0 -385 0.8787878787875596 1 0 -386 0.8888888888885963 1 0 -387 0.898989898989633 1 0 -388 0.9090909090906697 1 0 -389 0.9191919191917064 1 0 -390 0.9292929292927432 1 0 -391 0.9393939393937799 1 0 -392 0.9494949494948166 1 0 -393 0.9595959595958533 1 0 -394 0.96969696969689 1 0 -395 0.9797979797979266 1 0 -396 0.9898989898989633 1 0 -397 0.4994441468718008 0.008977859355467145 0 -398 0.4994441468686102 0.9910221406447738 0 -399 0.9912522686486456 0.5000000000020204 0 -400 0.009236671760969737 0.4996107761545567 0 -401 0.9912522686486748 0.4090909090926871 0 -402 0.5912442641766933 0.9908832020665549 0 -403 0.4087854471912198 0.00839904222114362 0 -404 0.008556207635859989 0.5911611552915128 0 -405 0.9912522686485529 0.590909090910651 0 -406 0.5913219514763025 0.008966433628394565 0 -407 0.4092146717640286 0.99109224348866 0 -408 0.009758467723566151 0.4087655220429778 0 -409 0.991252268648646 0.3282828282842634 0 -410 0.6717171717163072 0.9913925317959413 0 -411 0.3284888113137747 0.008628806993817406 0 -412 0.009413073333098675 0.6717654298999585 0 -413 0.9912522686484624 0.6717171717182909 0 -414 0.6713859307464314 0.00783598844376613 0 -415 0.3286807314517861 0.9908796615337696 0 -416 0.009701160063393745 0.328172993787021 0 -417 0.9912522686486059 0.2575757575768307 0 -418 0.7422840990392965 0.9920527859897746 0 -419 0.2581238812054656 0.00894655539767409 0 -420 0.009596048166700283 0.7421970839266252 0 -421 0.9912522686484182 0.7424242424249081 0 -422 0.742631216343877 0.009061211092389056 0 -423 0.2581842984298071 0.9910185627006113 0 -424 0.009391797873957303 0.2575740682939895 0 -425 0.9912522686485377 0.803030303030538 0 -426 0.991252268648761 0.1969696969707957 0 -427 0.1965719896075817 0.01004005437659524 0 -428 0.009441888863783511 0.8029686477670666 0 -429 0.8027826808642839 0.008161889651029203 0 -430 0.8031436034841943 0.9920686217821389 0 -431 0.1965407411132432 0.990877919800906 0 -432 0.009433576255869078 0.196969696969331 0 -433 0.9912522686485015 0.8535353535352894 0 -434 0.8538079072113505 0.009113066342170453 0 -435 0.1466100004823027 0.008907570417166008 0 -436 0.009900301215239878 0.8535353535350363 0 -437 0.9912522686486676 0.1464646464653426 0 -438 0.8539071858504498 0.9910372979640852 0 -439 0.1466100004813154 0.9910924295828223 0 -440 0.009900301215934942 0.146464646464404 0 -441 0.4600461974817811 0.008939091516940586 0 -442 0.9912522686486134 0.4595959595978758 0 -443 0.5404033973076151 0.9910799742211108 0 -444 0.008747731351379935 0.540404040402824 0 -445 0.9912522686484563 0.8939393939393265 0 -446 0.8939393939389553 0.008629754060191267 0 -447 0.1066161236355303 0.9906639616131179 0 -448 0.9912522686486651 0.1060606060613681 0 -449 0.009900301215963967 0.106060606060429 0 -450 0.8946811362734211 0.9905761789380185 0 -451 0.1060606060610456 0.00874773135139407 0 -452 0.6317619350516277 0.9906567673675996 0 -453 0.9912522686486704 0.3686868686885408 0 -454 0.3692902592209696 0.009706587716817077 0 -455 0.009900301215206414 0.8939393939391765 0 -456 0.008856913298212697 0.6308855724208243 0 -457 0.3691890731953653 0.9906604072139564 0 -458 0.4501775226915381 0.9910351952397725 0 -459 0.009900970411169399 0.3686868686861399 0 -460 0.009433576255834557 0.4494949494940145 0 -461 0.9912522686485298 0.6313131313144298 0 -462 0.9912522686485943 0.5505050505068317 0 -463 0.6317619350538511 0.009343232633226525 0 -464 0.5505057854539308 0.00885730551797421 0 -465 0.06611731116199501 0.009123684257444677 0 -466 0.00942622628508382 0.9343617040772624 0 -467 0.9912522686484542 0.9343434343435963 0 -468 0.9912522686487291 0.06565656565731198 0 -469 0.9346560663448221 0.008753042110225326 0 -470 0.9347209819518688 0.9909461008376295 0 -471 0.0661173111611429 0.990876315742503 0 -472 0.009882976814645705 0.06569928177602452 0 -473 0.7726816971805773 0.9902818703083591 0 -474 0.9912522686487354 0.2272727272739516 0 -475 0.9912522686486847 0.2878787878801446 0 -476 0.712754409768269 0.9910417204797071 0 -477 0.2281708559980242 0.009315307138949446 0 -478 0.2879262150526843 0.008848707718506932 0 -479 0.009446929381931032 0.7726550608707671 0 -480 0.008691019071841789 0.7120229835708808 0 -481 0.2986805352279528 0.9906732146402991 0 -482 0.009900301215876907 0.2979797979792687 0 -483 0.2281708559963943 0.9906846928610514 0 -484 0.9912522686485187 0.7020202020210865 0 -485 0.7022257149035148 0.008875719366976125 0 -486 0.008964595770340015 0.2275057399010391 0 -487 0.9912522686484329 0.7727272727278049 0 -488 0.7726448588060917 0.00891157700140037 0 -489 0.03610727223721461 0.009323573903231649 0 -490 0.009449816388914458 0.9646947228298954 0 -491 0.9912522686484393 0.9646464646467451 0 -492 0.9647699808124059 0.008965552887814348 0 -493 0.9912522686487494 0.03535353535413399 0 -494 0.9647433734764681 0.991037563784861 0 -495 0.03536452351978252 0.9905855419763663 0 -496 0.009857937122167086 0.03535353535342409 0 -497 0.991252268648616 0.4797979797999666 0 -498 0.479766170649057 0.008617841680337641 0 -499 0.4395993750939274 0.009403140209886588 0 -500 0.9912522686486612 0.4393939393958827 0 -501 0.5207689916022678 0.9910213569013132 0 -502 0.5614757822670999 0.9905750557604982 0 -503 0.008436122058978882 0.5202840663546442 0 -504 0.008815819747108107 0.5606927840347092 0 -505 0.9912522686487064 0.1666666666675671 0 -506 0.832980900661803 0.9917349263425034 0 -507 0.08578869463779343 0.008910418994781432 0 -508 0.8737373737370413 0.9913931332620134 0 -509 0.9912522686484877 0.8737373737371767 0 -510 0.873597805102984 0.008907595349359925 0 -511 0.9912522686486666 0.1262626262632565 0 -512 0.1262626262631514 0.008630677850847372 0 -513 0.1664508129550939 0.009355582838100753 0 -514 0.6914762267759226 0.9910309555770189 0 -515 0.9912522686486809 0.3080808080822455 0 -516 0.009623770719747899 0.8333164087122025 0 -517 0.9912522686486567 0.3484848484863386 0 -518 0.009900970410388959 0.9141414141412704 0 -519 0.009103370888882686 0.6919619080380635 0 -520 0.9141414141410544 0.008747731351392654 0 -521 0.9912522686486409 0.3888888888905672 0 -522 0.6510272470288194 0.9906594401835381 0 -523 0.009864227354709564 0.8737373737371069 0 -524 0.3074111866294925 0.008985149503150805 0 -525 0.388550299103954 0.009705978094101193 0 -526 0.3484848484862986 0.008607629366477045 0 -527 0.9912522686484692 0.9141414141414845 0 -528 0.6109931338188458 0.9910921504416232 0 -529 0.00811864509562338 0.6111114989158867 0 -530 0.08578869463701731 0.9910895810052323 0 -531 0.009900301215441436 0.65151515151435 0 -532 0.9912522686486592 0.08585858585929716 0 -533 0.009864227355381869 0.08585858585842039 0 -534 0.4796733478359115 0.9920621512065707 0 -535 0.3483884625355764 0.9910916420225878 0 -536 0.3884544089509732 0.9906557779230919 0 -537 0.2778172394275722 0.9910746430726101 0 -538 0.009449816389369399 0.3484365903005947 0 -539 0.1258816606742721 0.9906520338464334 0 -540 0.009900970411253866 0.277777777777296 0 -541 0.009900301215808923 0.3888888888880399 0 -542 0.1769956383192448 0.990973723871773 0 -543 0.9136001732487348 0.9906630177544136 0 -544 0.7215074233162571 0.009094914760433448 0 -545 0.9912522686485192 0.6515151515163272 0 -546 0.009864227355385414 0.126262626262416 0 -547 0.009697885939632797 0.1767753049489553 0 -548 0.6511696392972132 0.009082149280294908 0 -549 0.9912522686484851 0.7222222222229314 0 -550 0.9912522686485872 0.611111111112535 0 -551 0.6109931338212641 0.00890784955873771 0 -552 0.9912522686483618 0.8232323232325153 0 -553 0.8236742462438593 0.009128300483080477 0 -554 0.4288910729444462 0.9910345476610115 0 -555 0.009172616698110553 0.4798293133596694 0 -556 0.009666604138243568 0.4292929292919705 0 -557 0.9912522686486296 0.5202020202039557 0 -558 0.5207012834572587 0.008939551781340946 0 -559 0.9912522686485646 0.5707070707087619 0 -560 0.5699955776219783 0.008987420311377042 0 -561 0.01522952017183834 0.008684653066605617 0 -562 0.00890205953210497 0.9847070308225278 0 -563 0.9914026329539376 0.9845880462320221 0 -564 0.9839827887767216 0.009121741999128411 0 -565 0.9912522686486164 0.4696969696989187 0 -566 0.982504537297251 0.4747474747494353 0 -567 0.9825045372972391 0.484848484850454 0 -568 0.973756805945891 0.4797979797999314 0 -569 0.9737568059458699 0.4898989899009343 0 -570 0.9650090745945327 0.4848484848504175 0 -571 0.9650090745945114 0.4949494949514143 0 -572 0.9562613432431767 0.4898989899008987 0 -573 0.9562613432431557 0.5000000000018925 0 -574 0.9475136118918213 0.4949494949513771 0 -575 0.947513611891842 0.4848484848503826 0 -576 0.9387658805404863 0.4898989899008626 0 -577 0.9387658805404655 0.5000000000018567 0 -578 0.9300181491891311 0.4949494949513425 0 -579 0.93001814918911 0.5050505050523367 0 -580 0.9212704178377764 0.5000000000018215 0 -581 0.9212704178377964 0.4898989899008274 0 -582 0.912522686486442 0.4949494949513068 0 -583 0.9125226864864615 0.4848484848503117 0 -584 0.903774955135106 0.4898989899007917 0 -585 0.9037749551351261 0.4797979797997958 0 -586 0.8950272237837704 0.4848484848502757 0 -587 0.8950272237837902 0.4747474747492807 0 -588 0.8862794924324345 0.4797979797997603 0 -589 0.886279492432454 0.469696969698765 0 -590 0.8775317610810976 0.4747474747492453 0 -591 0.8775317610811176 0.4646464646482484 0 -592 0.8687840297297611 0.4696969696987295 0 -593 0.8687840297297812 0.4595959595977325 0 -594 0.8600362983784248 0.464646464648214 0 -595 0.8600362983784042 0.4747474747492107 0 -596 0.8512885670270682 0.4696969696986951 0 -597 0.8512885670270505 0.4797979797996874 0 -598 0.8425408356757116 0.4747474747491752 0 -599 0.842540835675694 0.4848484848501678 0 -600 0.8337931043243543 0.4797979797996561 0 -601 0.8337931043243344 0.4898989899006533 0 -602 0.8250453729729907 0.4848484848501353 0 -603 0.8250453729729756 0.4949494949511346 0 -604 0.8162976416216314 0.4898989899006188 0 -605 0.8162976416216177 0.5000000000016165 0 -606 0.8075499102702793 0.4949494949511025 0 -607 0.8075499102702609 0.5050505050520989 0 -608 0.798802178918923 0.5000000000015817 0 -609 0.7988021789189412 0.4898989899005883 0 -610 0.7900544475675859 0.4949494949510643 0 -611 0.7900544475675895 0.5050505050520554 0 -612 0.7813067162162383 0.5000000000015419 0 -613 0.7813067162162407 0.4898989899005481 0 -614 0.7725589848648878 0.4949494949510297 0 -615 0.772558984864904 0.5050505050520158 0 -616 0.7638112535135345 0.5000000000015067 0 -617 0.7638112535135489 0.4898989899005151 0 -618 0.7550635221621931 0.4949494949509892 0 -619 0.7550635221621999 0.5050505050519829 0 -620 0.7463157908108504 0.5000000000014659 0 -621 0.7463157908108581 0.4898989899004725 0 -622 0.737568059459498 0.4949494949509515 0 -623 0.7375680594595164 0.5050505050519387 0 -624 0.728820328108142 0.500000000001429 0 -625 0.7288203281081594 0.4898989899004337 0 -626 0.7200725967568009 0.4949494949509112 0 -627 0.7200725967567817 0.5050505050519027 0 -628 0.7113248654054409 0.5000000000013894 0 -629 0.711324865405464 0.4898989899003914 0 -630 0.7025771340541039 0.4949494949508707 0 -631 0.7025771340540804 0.5050505050518694 0 -632 0.6938294027027435 0.5000000000013497 0 -633 0.6938294027027239 0.5101010101023423 0 -634 0.6850816713513839 0.5050505050518281 0 -635 0.6850816713514121 0.4949494949508386 0 -636 0.6763339400000499 0.5000000000013141 0 -637 0.6763339400000234 0.5101010101023085 0 -638 0.6675862086486865 0.5050505050517891 0 -639 0.6675862086487127 0.4949494949507937 0 -640 0.6588384772973496 0.5000000000012691 0 -641 0.6588384772973763 0.4898989899002753 0 -642 0.6500907459460163 0.4949494949507547 0 -643 0.6500907459459893 0.5050505050517482 0 -644 0.641343014594653 0.5000000000012305 0 -645 0.6413430145946798 0.4898989899002482 0 -646 0.6325952832433198 0.4949494949507185 0 -647 0.6325952832432924 0.5050505050517081 0 -648 0.6238475518919553 0.5000000000011894 0 -649 0.6238475518919778 0.4898989899002013 0 -650 0.6150998205406175 0.494949494950668 0 -651 0.6150998205405944 0.5050505050516662 0 -652 0.6063520891892569 0.500000000001146 0 -653 0.60635208918928 0.4898989899001462 0 -654 0.5976043578379195 0.494949494950626 0 -655 0.5976043578378962 0.5050505050516256 0 -656 0.5888566264865588 0.5000000000011056 0 -657 0.5888566264865361 0.5101010101021055 0 -658 0.5801088951351985 0.505050505051585 0 -659 0.5801088951352213 0.4949494949505854 0 -660 0.5713611637838603 0.500000000001065 0 -661 0.5713611637838839 0.4898989899000653 0 -662 0.5626134324325228 0.4949494949505458 0 -663 0.5626134324324988 0.5050505050515454 0 -664 0.5538657010811611 0.5000000000010258 0 -665 0.5538657010811845 0.4898989899000261 0 -666 0.5451179697298243 0.4949494949505098 0 -667 0.5451179697298001 0.5050505050515071 0 -668 0.5363702383784632 0.5000000000009908 0 -669 0.5363702383784982 0.4898989899000119 0 -670 0.527622507027131 0.4949494949504837 0 -671 0.5276225070271011 0.5050505050514712 0 -672 0.5188747756757635 0.5000000000009533 0 -673 0.518874775675791 0.4898989898999892 0 -674 0.5188747756757398 0.5101010101019522 0 -675 0.5101270443244076 0.5050505050514449 0 -676 0.5101270443243785 0.5151515151524332 0 -677 0.5013793129730468 0.510101010101928 0 -678 0.5013793129730173 0.5202020202029154 0 -679 0.4926315816216785 0.5151515151523963 0 -680 0.4926315816216551 0.5252525252533955 0 -681 0.4838838502703165 0.5202020202028762 0 -682 0.4838838502702941 0.5303030303038768 0 -683 0.4751361189189551 0.5252525252533568 0 -684 0.4751361189189327 0.5353535353543578 0 -685 0.4663883875675935 0.5303030303038375 0 -686 0.4663883875675708 0.5404040404048388 0 -687 0.4576406562162315 0.5353535353543186 0 -688 0.4576406562162543 0.5252525252533167 0 -689 0.457640656216209 0.54545454545532 0 -690 0.4663883875675478 0.5505050505058401 0 -691 0.4576406562161865 0.5555555555563212 0 -692 0.4663883875675252 0.5606060606068409 0 -693 0.4576406562161666 0.5656565656573223 0 -694 0.4663883875675043 0.5707070707078449 0 -695 0.4576406562161476 0.5757575757583241 0 -696 0.4488929248648917 0.5303030303037981 0 -697 0.4488929248649149 0.5202020202027956 0 -698 0.466388387567484 0.5808080808088479 0 -699 0.4576406562161233 0.585858585859326 0 -700 0.4401451935135519 0.5252525252532769 0 -701 0.4401451935135843 0.5151515151522896 0 -702 0.4663883875674613 0.590909090909847 0 -703 0.4576406562161011 0.5959595959603271 0 -704 0.4313974621622185 0.520202020202757 0 -705 0.4313974621622372 0.5101010101017844 0 -706 0.4663883875674378 0.6010101010108468 0 -707 0.422649730810878 0.5151515151522292 0 -708 0.4226497308108855 0.505050505051248 0 -709 0.4576406562160791 0.6060606060613287 0 -710 0.466388387567416 0.6111111111118483 0 -711 0.413901999459531 0.5101010101017087 0 -712 0.4139019994595607 0.5000000000007256 0 -713 0.8600362983784403 0.4545454545472171 0 -714 0.4576406562160573 0.6161616161623304 0 -715 0.4051542681081881 0.50505050505119 0 -716 0.4051542681082011 0.4949494949502032 0 -717 0.4663883875673946 0.62121212121285 0 -718 0.4576406562160381 0.6262626262633323 0 -719 0.3964065367568435 0.5000000000006678 0 -720 0.3964065367568465 0.4898989898996631 0 -721 0.466388387567373 0.6313131313138521 0 -722 0.4576406562160147 0.6363636363643344 0 -723 0.3876588054054985 0.4949494949501442 0 -724 0.3876588054055106 0.4848484848491568 0 -725 0.4663883875673518 0.6414141414148539 0 -726 0.3789110740541564 0.489898989899623 0 -727 0.3789110740541489 0.4797979797986361 0 -728 0.4576406562159907 0.6464646464653361 0 -729 0.4663883875673305 0.6515151515158555 0 -730 0.3701633427028145 0.4848484848490963 0 -731 0.3701633427028151 0.4747474747480953 0 -732 0.4488929248646534 0.641414141414809 0 -733 0.4488929248646293 0.6515151515158173 0 -734 0.4401451935132902 0.6464646464652899 0 -735 0.4401451935132685 0.6565656565662989 0 -736 0.4313974621619268 0.6515151515157754 0 -737 0.4313974621619068 0.6616161616167806 0 -738 0.4226497308105652 0.6565656565662579 0 -739 0.3614156113514768 0.479797979798566 0 -740 0.3614156113514948 0.4696969696975704 0 -741 0.3701633427028186 0.464646464647089 0 -742 0.3614156113515196 0.4595959595965668 0 -743 0.3701633427028593 0.4545454545460854 0 -744 0.3614156113515449 0.4494949494955635 0 -745 0.3701633427028841 0.444444444445082 0 -746 0.3614156113515687 0.4393939393945605 0 -747 0.3701633427029076 0.4343434343440783 0 -748 0.3614156113515964 0.4292929292935563 0 -749 0.3701633427029518 0.4242424242430741 0 -750 0.3614156113516171 0.4191919191925517 0 -751 0.370163342702977 0.4141414141420695 0 -752 0.3614156113516407 0.4090909090915469 0 -753 0.3701633427030006 0.4040404040410641 0 -754 0.3614156113516697 0.3989898989905415 0 -755 0.3701633427030243 0.3939393939400582 0 -756 0.3614156113516871 0.3888888888895353 0 -757 0.370163342703035 0.3838383838390717 0 -758 0.3614156113517079 0.3787878787885306 0 -759 0.3701633427030547 0.3737373737380668 0 -760 0.3614156113517366 0.3686868686875233 0 -761 0.37016334270309 0.3636363636370392 0 -762 0.3614156113517547 0.3585858585865128 0 -763 0.3701633427031161 0.3535353535360283 0 -764 0.3614156113517751 0.3484848484855034 0 -765 0.3701633427031394 0.3434343434350186 0 -766 0.3614156113517975 0.3383838383844935 0 -767 0.4226497308105441 0.6666666666672628 0 -768 0.4139019994592074 0.6616161616167442 0 -769 0.3701633427031626 0.333333333334008 0 -770 0.3526678800001605 0.4646464646470266 0 -771 0.3526678800004194 0.3535353535359734 0 -772 0.3614156113518152 0.3282828282834828 0 -773 0.4139019994591833 0.6717171717177464 0 -774 0.4051542681078462 0.6666666666672268 0 -775 0.3701633427031853 0.323232323232997 0 -776 0.4051542681078227 0.6767676767682288 0 -777 0.3964065367564827 0.6717171717177088 0 -778 0.3964065367564598 0.6818181818187097 0 -779 0.3876588054051199 0.6767676767681909 0 -780 0.3614156113518371 0.3181818181824714 0 -781 0.4139019994591294 0.6818181818187965 0 -782 0.3876588054050973 0.6868686868691921 0 -783 0.3789110740537583 0.6818181818186733 0 -784 0.3701633427032128 0.3131313131319935 0 -785 0.3789110740545564 0.3181818181825119 0 -786 0.361415611351886 0.3080808080814644 0 -787 0.3789110740537195 0.6919191919197009 0 -788 0.3701633427023933 0.6868686868691541 0 -789 0.378911074054589 0.3080808080815168 0 -790 0.3876588054059277 0.3131313131320272 0 -791 0.3876588054059551 0.3030303030310242 0 -792 0.3964065367572919 0.3080808080815399 0 -793 0.3701633427023521 0.6969696969702079 0 -794 0.3614156113510302 0.6919191919196334 0 -795 0.361415611351004 0.7020202020206687 0 -796 0.3526678799996666 0.6969696969701229 0 -797 0.3964065367573252 0.297979797980538 0 -798 0.4051542681086592 0.3030303030310505 0 -799 0.3526678799996423 0.7070707070711253 0 -800 0.3439201486483029 0.7020202020206029 0 -801 0.4051542681086952 0.2929292929300525 0 -802 0.413901999460034 0.297979797980565 0 -803 0.413901999460075 0.2878787878795515 0 -804 0.4226497308114021 0.292929292930083 0 -805 0.3439201486482759 0.7121212121216054 0 -806 0.3351724172969382 0.7070707070710844 0 -807 0.3614156113509471 0.7121212121217143 0 -808 0.3351724172969128 0.7171717171720897 0 -809 0.3264246859455737 0.7121212121215673 0 -810 0.422649730811455 0.2828282828290659 0 -811 0.4313974621627718 0.2878787878795988 0 -812 0.4051542681087698 0.2828282828290238 0 -813 0.3526678800002861 0.4141414141420106 0 -814 0.4313974621628109 0.2777777777785904 0 -815 0.4401451935141414 0.2828282828291108 0 -816 0.326424685945551 0.7222222222225722 0 -817 0.3176769545942091 0.7171717171720493 0 -818 0.3176769545942317 0.7070707070710445 0 -819 0.308929223242866 0.7121212121215269 0 -820 0.3089292232428888 0.7020202020205214 0 -821 0.300181491891522 0.7070707070710048 0 -822 0.3001814918915452 0.6969696969699977 0 -823 0.3001814918915052 0.7171717171720076 0 -824 0.2914337605401777 0.7020202020204818 0 -825 0.2914337605402006 0.6919191919194725 0 -826 0.4401451935141772 0.2727272727281072 0 -827 0.4488929248655076 0.277777777778627 0 -828 0.4488929248655447 0.2676767676776254 0 -829 0.4576406562168751 0.2727272727281439 0 -830 0.2826860291888376 0.6969696969699581 0 -831 0.282686029188855 0.6868686868689502 0 -832 0.4576406562169107 0.2626262626271434 0 -833 0.4663883875682406 0.2676767676776615 0 -834 0.4663883875682762 0.2575757575766622 0 -835 0.475136118919608 0.2626262626271849 0 -836 0.4488929248656203 0.2575757575765948 0 -837 0.4751361189186919 0.6464646464653727 0 -838 0.4751361189186712 0.6565656565663747 0 -839 0.4838838502700337 0.6515151515158915 0 -840 0.4838838502700111 0.6616161616168976 0 -841 0.4926315816213724 0.6565656565664161 0 -842 0.4926315816213395 0.6666666666674431 0 -843 0.5013793129727149 0.6616161616169355 0 -844 0.5013793129726631 0.6717171717179964 0 -845 0.5101270443240777 0.6666666666674343 0 -846 0.510127044324022 0.6767676767684894 0 -847 0.5188747756754438 0.6717171717179237 0 -848 0.5188747756753866 0.6818181818189744 0 -849 0.5276225070267723 0.6767676767684596 0 -850 0.5276225070267313 0.6868686868694931 0 -851 0.5363702383780962 0.6818181818190072 0 -852 0.536370238378059 0.6919191919200426 0 -853 0.545117969729437 0.6868686868695345 0 -854 0.5451179697294019 0.6969696969705677 0 -855 0.5538657010807841 0.6919191919200528 0 -856 0.553865701080742 0.7020202020210937 0 -857 0.56261343243213 0.696969696970574 0 -858 0.5451179697293165 0.7070707070716611 0 -859 0.5626134324320661 0.7070707070716433 0 -860 0.5713611637834708 0.702020202021103 0 -861 0.5713611637834306 0.7121212121221363 0 -862 0.5801088951348371 0.7070707070715914 0 -863 0.5801088951348021 0.7171717171726233 0 -864 0.5888566264861853 0.7121212121221094 0 -865 0.5888566264861493 0.7222222222231449 0 -866 0.5976043578375317 0.7171717171726303 0 -867 0.5976043578374948 0.7272727272736657 0 -868 0.6063520891888768 0.7222222222231522 0 -869 0.6063520891888375 0.7323232323241903 0 -870 0.6150998205402231 0.7272727272736704 0 -871 0.5888566264860853 0.7323232323242113 0 -872 0.6150998205401839 0.7373737373747082 0 -873 0.6238475518915672 0.7323232323241916 0 -874 0.623847551891528 0.7424242424252291 0 -875 0.6325952832428917 0.7373737373747455 0 -876 0.2739382978374945 0.6919191919194307 0 -877 0.2739382978375097 0.6818181818184263 0 -878 0.4751361189196324 0.2525252525261824 0 -879 0.4838838502709678 0.257575757576699 0 -880 0.6325952832428682 0.7474747474757537 0 -881 0.6413430145942316 0.7424242424252714 0 -882 0.2651905664861437 0.686868686868906 0 -883 0.2651905664861636 0.6767676767678998 0 -884 0.6413430145942091 0.7525252525262756 0 -885 0.6500907459455726 0.7474747474757932 0 -886 0.4838838502709942 0.2474747474757021 0 -887 0.4926315816223292 0.2525252525262178 0 -888 0.6325952832427981 0.7575757575768239 0 -889 0.4926315816223558 0.2424242424252226 0 -890 0.5013793129736928 0.2474747474757432 0 -891 0.6500907459455481 0.7575757575767937 0 -892 0.6588384772969119 0.7525252525263126 0 -893 0.6588384772969694 0.7424242424252349 0 -894 0.6675862086482885 0.7474747474757888 0 -895 0.6675862086482288 0.7575757575768616 0 -896 0.6763339399996116 0.7525252525263487 0 -897 0.6763339399996877 0.7424242424252402 0 -898 0.6850816713509995 0.7474747474758223 0 -899 0.6850816713509065 0.757575757576937 0 -900 0.6938294027022852 0.7525252525264289 0 -901 0.6938294027023754 0.7424242424253581 0 -902 0.7025771340536713 0.7474747474759111 0 -903 0.7025771340535971 0.7575757575769857 0 -904 0.7113248654049983 0.7525252525264355 0 -905 0.7113248654050267 0.7424242424254341 0 -906 0.7200725967563598 0.7474747474759499 0 -907 0.7200725967563146 0.7575757575769827 0 -908 0.7288203281076905 0.7525252525264691 0 -909 0.7288203281077154 0.742424242425472 0 -910 0.7375680594590461 0.7474747474759882 0 -911 0.7375680594590254 0.7575757575769797 0 -912 0.7375680594590683 0.7373737373749948 0 -913 0.501379312973631 0.2575757575767693 0 -914 0.5101270443250221 0.2525252525262616 0 -915 0.5101270443250981 0.242424242425188 0 -916 0.5188747756764093 0.2474747474757477 0 -917 0.5188747756763281 0.2575757575768048 0 -918 0.5276225070277263 0.2525252525262839 0 -919 0.5276225070278155 0.2424242424251903 0 -920 0.5363702383791114 0.247474747475772 0 -921 0.5363702383790234 0.2575757575768381 0 -922 0.5451179697304154 0.2525252525263321 0 -923 0.5451179697305057 0.2424242424252264 0 -924 0.5538657010817993 0.2474747474758118 0 -925 0.5538657010817144 0.257575757576877 0 -926 0.5626134324331056 0.2525252525263703 0 -927 0.5626134324331922 0.2424242424252644 0 -928 0.5713611637844895 0.2474747474758498 0 -929 0.5713611637844056 0.257575757576914 0 -930 0.5801088951357972 0.2525252525264087 0 -931 0.5801088951358829 0.2424242424253015 0 -932 0.5888566264871818 0.2474747474758872 0 -933 0.5888566264870985 0.257575757576953 0 -934 0.5976043578384934 0.2525252525264353 0 -935 0.5976043578385711 0.2424242424253426 0 -936 0.606352089189872 0.247474747475927 0 -937 0.6063520891897951 0.2575757575769925 0 -938 0.6150998205411841 0.2525252525264889 0 -939 0.6150998205412646 0.2424242424253759 0 -940 0.6238475518925636 0.2474747474759749 0 -941 0.6238475518925244 0.2575757575770028 0 -942 0.6325952832438851 0.2525252525265242 0 -943 0.6325952832439432 0.242424242425447 0 -944 0.6413430145952439 0.2474747474760443 0 -945 0.6413430145952225 0.2575757575770447 0 -946 0.6500907459465831 0.252525252526564 0 -947 0.650090745946606 0.2424242424255614 0 -948 0.6588384772979441 0.2474747474760827 0 -949 0.6588384772979243 0.2575757575770813 0 -950 0.6675862086492858 0.2525252525265987 0 -951 0.6675862086492986 0.2424242424255495 0 -952 0.6763339400006345 0.2474747474761027 0 -953 0.6763339400006259 0.2575757575771143 0 -954 0.6850816713519864 0.2525252525266302 0 -955 0.6850816713519855 0.2424242424255912 0 -956 0.6938294027033514 0.2474747474761272 0 -957 0.693829402703331 0.2575757575771471 0 -958 0.7025771340546938 0.2525252525266616 0 -959 0.7025771340547204 0.2424242424255713 0 -960 0.7113248654060588 0.247474747476146 0 -961 0.7113248654060382 0.257575757577179 0 -962 0.7200725967574008 0.2525252525266921 0 -963 0.7200725967574144 0.2424242424256237 0 -964 0.728820328108763 0.2474747474762007 0 -965 0.2564428351347942 0.6818181818183846 0 -966 0.2564428351348163 0.671717171717375 0 -967 0.2564428351347827 0.6919191919193857 0 -968 0.7288203281087735 0.2373737373751634 0 -969 0.737568059460126 0.2424242424257163 0 -970 0.7463157908103777 0.7525252525265032 0 -971 0.7463157908103568 0.7626262626274941 0 -972 0.7375680594601435 0.2323232323247101 0 -973 0.7463157908114891 0.2373737373752333 0 -974 0.2476951037834466 0.6767676767678602 0 -975 0.2476951037834689 0.6666666666668498 0 -976 0.7200725967573824 0.2626262626277012 0 -977 0.7550635221617092 0.7575757575770191 0 -978 0.7550635221616865 0.7676767676780095 0 -979 0.7463157908115071 0.2272727272742273 0 -980 0.7550635221628518 0.2323232323247466 0 -981 0.2389473724320993 0.6717171717173351 0 -982 0.2389473724321214 0.6616161616163245 0 -983 0.7550635221628822 0.222222222223736 0 -984 0.7638112535130397 0.7626262626275353 0 -985 0.763811253513016 0.7727272727285249 0 -986 0.7638112535142189 0.2272727272742544 0 -987 0.7638112535141971 0.2373737373752659 0 -988 0.7463157908115622 0.2171717171731872 0 -989 0.7638112535142361 0.2171717171731992 0 -990 0.4576406562167886 0.2828282828292153 0 -991 0.6150998205403303 0.7171717171726031 0 -992 0.2301996410807516 0.6666666666668104 0 -993 0.2301996410807739 0.656565656565799 0 -994 0.7725589848643692 0.7676767676780492 0 -995 0.772558984864346 0.7777777777790399 0 -996 0.763811253512992 0.7828282828295167 0 -997 0.8162976416215981 0.5101010101026149 0 -998 0.7725589848655638 0.2323232323247724 0 -999 0.7725589848655434 0.2424242424257847 0 -1000 0.7725589848643233 0.7878787878800319 0 -1001 0.2214519097294045 0.6616161616162857 0 -1002 0.2214519097294288 0.6515151515152738 0 -1003 0.2301996410807965 0.6464646464647877 0 -1004 0.2214519097294506 0.6414141414142623 0 -1005 0.7638112535129711 0.7929292929305092 0 -1006 0.7813067162156766 0.7828282828295555 0 -1007 0.7813067162156542 0.7929292929305474 0 -1008 0.7813067162169079 0.237373737375296 0 -1009 0.7813067162168909 0.2474747474763042 0 -1010 0.3701633427027949 0.4949494949500994 0 -1011 0.3789110740543639 0.3888888888896542 0 -1012 0.230199641080819 0.6363636363637775 0 -1013 0.2214519097294719 0.6313131313132518 0 -1014 0.2127041783781045 0.6363636363637397 0 -1015 0.2127041783781246 0.6262626262627263 0 -1016 0.2214519097294945 0.6212121212122408 0 -1017 0.2127041783781473 0.6161616161617154 0 -1018 0.7900544475670057 0.7878787878800718 0 -1019 0.7900544475669831 0.7979797979810632 0 -1020 0.7900544475682566 0.242424242425815 0 -1021 0.7900544475682391 0.2525252525268248 0 -1022 0.221451909729517 0.6111111111112302 0 -1023 0.21270417837817 0.6060606060607053 0 -1024 0.5713611637834961 0.6919191919200887 0 -1025 0.3789110740537812 0.6717171717176611 0 -1026 0.2039564470267786 0.6212121212122007 0 -1027 0.2214519097295395 0.60101010101022 0 -1028 0.2127041783781928 0.5959595959596954 0 -1029 0.798802178918335 0.7929292929305874 0 -1030 0.7988021789183126 0.8030303030315783 0 -1031 0.7988021789196058 0.2474747474763352 0 -1032 0.7988021789195869 0.2575757575773455 0 -1033 0.2214519097295617 0.5909090909092105 0 -1034 0.2127041783782158 0.5858585858586859 0 -1035 0.9212704178377565 0.5101010101028147 0 -1036 0.8075499102696649 0.7979797979811022 0 -1037 0.8075499102696428 0.8080808080820927 0 -1038 0.77255898486439 0.7575757575770603 0 -1039 0.2739382978375274 0.6717171717174132 0 -1040 0.7988021789196239 0.2373737373753246 0 -1041 0.8075499102709736 0.2424242424258458 0 -1042 0.8075499102709836 0.2323232323248156 0 -1043 0.5101270443239624 0.6868686868695487 0 -1044 0.4838838502710187 0.2373737373747022 0 -1045 0.2214519097293807 0.6717171717172973 0 -1046 0.3526678800004908 0.3131313131319464 0 -1047 0.3526678800005348 0.3030303030309296 0 -1048 0.3439201486491416 0.3080808080814195 0 -1049 0.3439201486491806 0.2979797979803944 0 -1050 0.3351724172977963 0.3030303030308904 0 -1051 0.3351724172978513 0.2929292929298634 0 -1052 0.3264246859464483 0.2979797979803644 0 -1053 0.3264246859464879 0.2878787878793487 0 -1054 0.3176769545950935 0.2929292929298405 0 -1055 0.3176769545951164 0.2828282828288275 0 -1056 0.3089292232437422 0.287878787879315 0 -1057 0.3089292232437645 0.2777777777783021 0 -1058 0.3001814918923925 0.282828282828789 0 -1059 0.3001814918924148 0.2727272727277761 0 -1060 0.2914337605410433 0.2777777777782631 0 -1061 0.2914337605410655 0.2676767676772501 0 -1062 0.282686029189694 0.2727272727277369 0 -1063 0.2826860291897166 0.262626262626724 0 -1064 0.2914337605411167 0.2575757575762316 0 -1065 0.273938297838345 0.2676767676772109 0 -1066 0.2739382978383207 0.2777777777782196 0 -1067 0.2739382978383676 0.2575757575761979 0 -1068 0.2651905664869961 0.2626262626266848 0 -1069 0.2651905664870184 0.2525252525256723 0 -1070 0.256442835135647 0.257575757576159 0 -1071 0.256442835135669 0.2474747474751474 0 -1072 0.2476951037842983 0.2525252525256333 0 -1073 0.2476951037843201 0.2424242424246214 0 -1074 0.2389473724329491 0.2474747474751072 0 -1075 0.2389473724329679 0.2373737373740943 0 -1076 0.247695103784357 0.2323232323236105 0 -1077 0.2389473724329894 0.2272727272730803 0 -1078 0.2476951037843798 0.2222222222225944 0 -1079 0.2389473724330161 0.2171717171720652 0 -1080 0.2301996410815956 0.242424242424583 0 -1081 0.2301996410815781 0.2525252525255934 0 -1082 0.2476951037844008 0.212121212121576 0 -1083 0.2214519097302302 0.2474747474750696 0 -1084 0.2214519097302089 0.2575757575760784 0 -1085 0.2389473724330369 0.2070707070710474 0 -1086 0.2476951037844234 0.2020202020205578 0 -1087 0.2127041783788625 0.2525252525255544 0 -1088 0.2127041783788405 0.2626262626265631 0 -1089 0.2389473724330577 0.1969696969700283 0 -1090 0.2476951037844368 0.1919191919195381 0 -1091 0.2039564470274951 0.2575757575760397 0 -1092 0.2039564470274731 0.2676767676770476 0 -1093 0.238947372433079 0.1868686868690083 0 -1094 0.1952087156761131 0.2626262626264977 0 -1095 0.195208715676105 0.2727272727275284 0 -1096 0.2476951037844586 0.1818181818185169 0 -1097 0.7988021789182895 0.8131313131325695 0 -1098 0.8075499102696211 0.8181818181830846 0 -1099 0.2214519097295844 0.5808080808082013 0 -1100 0.2127041783782387 0.5757575757576776 0 -1101 0.2301996410809299 0.5858585858587254 0 -1102 0.2039564470268707 0.5808080808081614 0 -1103 0.2039564470268933 0.5707070707071534 0 -1104 0.1952087156755256 0.5757575757576375 0 -1105 0.1952087156755486 0.5656565656566287 0 -1106 0.2039564470269201 0.5606060606061463 0 -1107 0.195208715675573 0.5555555555556211 0 -1108 0.2039564470269438 0.5505050505051393 0 -1109 0.1952087156755969 0.5454545454546149 0 -1110 0.2039564470269631 0.5404040404041325 0 -1111 0.1952087156756187 0.5353535353536069 0 -1112 0.2039564470269857 0.530303030303127 0 -1113 0.1952087156756429 0.5252525252526008 0 -1114 0.2039564470270089 0.5202020202021225 0 -1115 0.1952087156756687 0.515151515151599 0 -1116 0.2039564470270325 0.5101010101011192 0 -1117 0.1952087156756926 0.5050505050505975 0 -1118 0.2039564470270557 0.5000000000001166 0 -1119 0.1952087156757115 0.4949494949495956 0 -1120 0.2039564470270785 0.4898989898991143 0 -1121 0.1952087156757343 0.4848484848485934 0 -1122 0.2039564470271017 0.4797979797981125 0 -1123 0.1952087156757626 0.4747474747475913 0 -1124 0.203956447027126 0.4696969696971104 0 -1125 0.1952087156757866 0.4646464646465891 0 -1126 0.2039564470271497 0.4595959595961083 0 -1127 0.1952087156758084 0.4545454545455868 0 -1128 0.2039564470271732 0.4494949494951059 0 -1129 0.1952087156758318 0.444444444444584 0 -1130 0.7988021789182544 0.8232323232336343 0 -1131 0.2389473724331015 0.1767676767679869 0 -1132 0.2301996410817212 0.1818181818184784 0 -1133 0.1864609843247458 0.2676767676769788 0 -1134 0.186460984324739 0.2777777777780109 0 -1135 0.1864609843244381 0.4595959595960613 0 -1136 0.1864609843243242 0.5101010101010721 0 -1137 0.1864609843241806 0.5707070707071131 0 -1138 0.2039564470271993 0.4393939393941018 0 -1139 0.8162976416209738 0.8131313131326083 0 -1140 0.8162976416209519 0.8232323232336 0 -1141 0.8162976416223423 0.2373737373753544 0 -1142 0.816297641622352 0.227272727274321 0 -1143 0.2301996410817421 0.1717171717174598 0 -1144 0.2214519097303641 0.1767676767679489 0 -1145 0.2476951037844817 0.1717171717174948 0 -1146 0.2564428351358393 0.1767676767680255 0 -1147 0.1952087156758573 0.4343434343435809 0 -1148 0.5363702383781729 0.6717171717179291 0 -1149 0.2214519097303846 0.1666666666669304 0 -1150 0.2127041783790076 0.1717171717174192 0 -1151 0.1777132529733965 0.2727272727274892 0 -1152 0.1777132529733751 0.2828282828284948 0 -1153 0.2564428351358623 0.1666666666670023 0 -1154 0.2651905664872209 0.1717171717175338 0 -1155 0.4051542681081795 0.5151515151521784 0 -1156 0.2039564470272277 0.429292929293098 0 -1157 0.8250453729723078 0.8181818181831199 0 -1158 0.8250453729722819 0.8282828282841139 0 -1159 0.8250453729737125 0.2323232323248633 0 -1160 0.8250453729737317 0.2222222222238478 0 -1161 0.2127041783790274 0.1616161616164012 0 -1162 0.2039564470276509 0.1666666666668893 0 -1163 0.2651905664872439 0.1616161616165095 0 -1164 0.2739382978386031 0.1666666666670414 0 -1165 0.8687840297298011 0.449494949496734 0 -1166 0.860036298378458 0.4444444444462169 0 -1167 0.8687840297298213 0.4393939393957331 0 -1168 0.8600362983784756 0.4343434343452117 0 -1169 0.8687840297298403 0.4292929292947295 0 -1170 0.8600362983784895 0.4242424242442064 0 -1171 0.8687840297298606 0.4191919191937249 0 -1172 0.8600362983785121 0.4141414141432043 0 -1173 0.8687840297298817 0.4090909090927194 0 -1174 0.1689655216220346 0.2777777777779753 0 -1175 0.1689655216220118 0.2878787878789775 0 -1176 0.860036298378536 0.4040404040421998 0 -1177 0.8687840297299007 0.3989898989917114 0 -1178 0.422649730811316 0.3030303030311594 0 -1179 0.4226497308109096 0.4949494949503089 0 -1180 0.2739382978386261 0.1565656565660163 0 -1181 0.282686029189986 0.1616161616165485 0 -1182 0.203956447027668 0.1565656565658746 0 -1183 0.1952087156762906 0.1616161616163534 0 -1184 0.8337931043236375 0.8232323232336342 0 -1185 0.8337931043236112 0.8333333333346283 0 -1186 0.8337931043250854 0.2272727272743748 0 -1187 0.8337931043251046 0.2171717171733593 0 -1188 0.8337931043250659 0.2373737373753913 0 -1189 0.2127041783783591 0.5252525252526419 0 -1190 0.1864609843247385 0.2878787878790181 0 -1191 0.2826860291900087 0.1515151515155227 0 -1192 0.2914337605413693 0.1565656565660553 0 -1193 0.8512885670271648 0.4090909090926849 0 -1194 0.85128856702719 0.398989898991681 0 -1195 0.8425408356758238 0.404040404042168 0 -1196 0.1952087156763133 0.1515151515153421 0 -1197 0.1864609843249339 0.1565656565658235 0 -1198 0.1602177902706724 0.2828282828284585 0 -1199 0.1602177902706502 0.2929292929294603 0 -1200 0.1602177902706534 0.2727272727274144 0 -1201 0.8425408356749667 0.8282828282841241 0 -1202 0.8425408356749885 0.8181818181831039 0 -1203 0.8425408356749402 0.838383838385141 0 -1204 0.8337931043235869 0.8434343434356192 0 -1205 0.8425408356749178 0.8484848484861363 0 -1206 0.3089292232437195 0.2979797979803274 0 -1207 0.326424685946548 0.2777777777783304 0 -1208 0.4488929248647651 0.5909090909097942 0 -1209 0.5101270443243523 0.5252525252534357 0 -1210 0.8425408356764399 0.232323232324901 0 -1211 0.8425408356764189 0.2424242424259169 0 -1212 0.2739382978386377 0.1464646464649904 0 -1213 0.1864609843249594 0.1464646464648091 0 -1214 0.1777132529735821 0.1515151515152995 0 -1215 0.8337931043235625 0.8535353535366128 0 -1216 0.2914337605413919 0.1464646464650287 0 -1217 0.3001814918927531 0.1515151515155617 0 -1218 0.8425408356758451 0.3939393939411625 0 -1219 0.8337931043244784 0.3989898989916483 0 -1220 0.151470058919311 0.2878787878789406 0 -1221 0.1514700589192887 0.2979797979799412 0 -1222 0.4751361189188029 0.5959595959603727 0 -1223 0.2127041783785496 0.4444444444446164 0 -1224 0.2127041783784511 0.4848484848486299 0 -1225 0.3001814918927757 0.1414141414145344 0 -1226 0.3089292232441374 0.1464646464650678 0 -1227 0.8425408356748975 0.8585858585871311 0 -1228 0.1777132529736044 0.1414141414142803 0 -1229 0.1689655216222274 0.1464646464647709 0 -1230 0.1952087156763269 0.1414141414143202 0 -1231 0.8512885670263104 0.8333333333345627 0 -1232 0.851288567027795 0.2373737373754274 0 -1233 0.8512885670277742 0.2474747474764427 0 -1234 0.8337931043244996 0.3888888888906439 0 -1235 0.8250453729731331 0.393939393941128 0 -1236 0.1689655216222492 0.1363636363637515 0 -1237 0.1602177902708729 0.1414141414142424 0 -1238 0.1602177902708511 0.1515151515152602 0 -1239 0.1514700589194983 0.146464646464733 0 -1240 0.1514700589194765 0.1565656565657483 0 -1241 0.3089292232441603 0.1363636363640401 0 -1242 0.317676954595522 0.1414141414145739 0 -1243 0.3176769545954989 0.151515151515601 0 -1244 0.326424685946883 0.1464646464651077 0 -1245 0.3264246859468598 0.1565656565661339 0 -1246 0.335172417298243 0.1515151515156411 0 -1247 0.3351724172982661 0.1414141414146225 0 -1248 0.3439201486496279 0.1464646464651529 0 -1249 0.3439201486496015 0.1565656565661751 0 -1250 0.3526678800009844 0.1515151515156833 0 -1251 0.352667880001011 0.1414141414146611 0 -1252 0.3614156113523682 0.1464646464651913 0 -1253 0.1514700589195256 0.1363636363637273 0 -1254 0.3614156113523936 0.1363636363641691 0 -1255 0.3701633427037514 0.1414141414146996 0 -1256 0.8337931043235387 0.8636363636376099 0 -1257 0.1952087156758822 0.4242424242425776 0 -1258 0.2039564470272496 0.4191919191920961 0 -1259 0.3614156113523426 0.1565656565662158 0 -1260 0.8250453729731538 0.3838383838401256 0 -1261 0.8162976416217905 0.3888888888906117 0 -1262 0.8337931043245246 0.3787878787896352 0 -1263 0.1427223275681258 0.1515151515152223 0 -1264 0.142722327568104 0.1616161616162352 0 -1265 0.1427223275679507 0.2929292929294224 0 -1266 0.1427223275679302 0.3030303030304252 0 -1267 0.8600362983791512 0.2424242424259536 0 -1268 0.8600362983791309 0.2525252525269728 0 -1269 0.3701633427037767 0.1313131313136771 0 -1270 0.3789110740551348 0.136363636364208 0 -1271 0.8425408356748761 0.8686868686881286 0 -1272 0.8162976416218085 0.378787878789608 0 -1273 0.807549910270445 0.3838383838400962 0 -1274 0.8075499102704629 0.3737373737390907 0 -1275 0.7988021789190981 0.3787878787895798 0 -1276 0.1339745962167554 0.1565656565657105 0 -1277 0.1339745962167336 0.166666666666721 0 -1278 0.7988021789191162 0.3686868686885739 0 -1279 0.7900544475677532 0.3737373737390633 0 -1280 0.8075499102696847 0.7878787878801129 0 -1281 0.3789110740542307 0.4292929292936315 0 -1282 0.8337931043235147 0.8737373737386083 0 -1283 0.3789110740551602 0.1262626262631847 0 -1284 0.3876588054065185 0.131313131313716 0 -1285 0.1339745962165911 0.2979797979799031 0 -1286 0.1339745962165709 0.3080808080809053 0 -1287 0.1514700589192799 0.3080808080809541 0 -1288 0.7900544475677701 0.3636363636380574 0 -1289 0.7813067162164087 0.3686868686885464 0 -1290 0.8687840297305084 0.2474747474764819 0 -1291 0.8687840297304879 0.2575757575775035 0 -1292 0.8687840297305288 0.23737373737546 0 -1293 0.3876588054065435 0.1212121212126927 0 -1294 0.3964065367579014 0.1262626262632242 0 -1295 0.3964065367578768 0.1363636363642494 0 -1296 0.4051542681092591 0.1313131313137582 0 -1297 0.4051542681092342 0.1414141414147816 0 -1298 0.4139019994606155 0.1363636363642908 0 -1299 0.4139019994606403 0.1262626262632695 0 -1300 0.4226497308119954 0.1313131313138015 0 -1301 0.4226497308120206 0.1212121212127818 0 -1302 0.4313974621633753 0.126262626263316 0 -1303 0.3701633427037963 0.1212121212126617 0 -1304 0.8425408356748528 0.8787878787891275 0 -1305 0.851288567026215 0.8737373737386469 0 -1306 0.7813067162163907 0.3787878787895522 0 -1307 0.772558984865047 0.3737373737390349 0 -1308 0.4139019994592266 0.6515151515157295 0 -1309 0.125226864865387 0.1616161616161974 0 -1310 0.1252268648653652 0.1717171717172058 0 -1311 0.1252268648652324 0.3030303030303833 0 -1312 0.1252268648652099 0.3131313131313808 0 -1313 0.1252268648652536 0.2929292929293867 0 -1314 0.1952087156759051 0.414141414141575 0 -1315 0.1864609843245412 0.4191919191920559 0 -1316 0.2039564470272688 0.4090909090910937 0 -1317 0.413901999460591 0.1464646464653117 0 -1318 0.8775317610818875 0.2424242424259887 0 -1319 0.877531761081905 0.2323232323249601 0 -1320 0.8337931043234907 0.8838383838396086 0 -1321 0.8512885670261918 0.8838383838396475 0 -1322 0.8600362983775763 0.8787878787890487 0 -1323 0.4313974621633996 0.1161616161622952 0 -1324 0.4401451935147526 0.1212121212128285 0 -1325 0.7725589848650644 0.3636363636380311 0 -1326 0.7638112535137069 0.3686868686885258 0 -1327 0.7638112535136856 0.3787878787895236 0 -1328 0.7550635221623464 0.3737373737390145 0 -1329 0.8250453729737517 0.2121212121228339 0 -1330 0.8337931043251217 0.2070707070723426 0 -1331 0.8250453729737708 0.2020202020218207 0 -1332 0.8337931043251394 0.1969696969713291 0 -1333 0.8250453729737899 0.1919191919208092 0 -1334 0.8337931043251581 0.1868686868703178 0 -1335 0.8250453729738101 0.1818181818197987 0 -1336 0.8337931043251761 0.176767676769308 0 -1337 0.8250453729738286 0.1717171717187902 0 -1338 0.8337931043251943 0.1666666666683027 0 -1339 0.8250453729738482 0.1616161616177848 0 -1340 0.8337931043252114 0.1565656565672986 0 -1341 0.8250453729738685 0.1515151515167824 0 -1342 0.8425408356765539 0.1616161616178095 0 -1343 0.8425408356765737 0.1515151515168105 0 -1344 0.8512885670279174 0.1565656565673215 0 -1345 0.8512885670279375 0.146464646466319 0 -1346 0.8600362983792862 0.1515151515168384 0 -1347 0.8600362983793034 0.1414141414158283 0 -1348 0.8687840297306584 0.1464646464663256 0 -1349 0.8687840297306678 0.1363636363653259 0 -1350 0.8600362983793199 0.1313131313148153 0 -1351 0.8687840297306874 0.1262626262643202 0 -1352 0.8600362983793374 0.1212121212138067 0 -1353 0.8687840297307023 0.1161616161633163 0 -1354 0.7988021789191324 0.3585858585875681 0 -1355 0.8600362983791102 0.2626262626279913 0 -1356 0.8687840297304664 0.267676767678524 0 -1357 0.8775317610812845 0.4242424242442902 0 -1358 0.8250453729721515 0.8787878787890874 0 -1359 0.8775317610820517 0.131313131314804 0 -1360 0.7550635221623243 0.3838383838400119 0 -1361 0.7463157908109803 0.3787878787894954 0 -1362 0.7463157908110358 0.3686868686884868 0 -1363 0.7375680594596452 0.3737373737389842 0 -1364 0.7375680594596206 0.3838383838399843 0 -1365 0.7288203281082775 0.378787878789467 0 -1366 0.7288203281083289 0.3686868686884556 0 -1367 0.7200725967569385 0.3737373737389547 0 -1368 0.7200725967569169 0.3838383838399544 0 -1369 0.7113248654055732 0.3787878787894392 0 -1370 0.7113248654056068 0.3686868686884311 0 -1371 0.7025771340542299 0.3737373737389243 0 -1372 0.7025771340542133 0.3838383838399269 0 -1373 0.6938294027028693 0.3787878787894126 0 -1374 0.693829402702884 0.3686868686884106 0 -1375 0.6850816713515253 0.3737373737388985 0 -1376 0.68508167135154 0.3636363636378965 0 -1377 0.6763339400001817 0.368686868688385 0 -1378 0.6763339400001673 0.3787878787893864 0 -1379 0.6675862086488237 0.3737373737388727 0 -1380 0.6675862086488384 0.3636363636378715 0 -1381 0.6588384772974804 0.368686868688359 0 -1382 0.6588384772974664 0.3787878787893605 0 -1383 0.6500907459461222 0.3737373737388466 0 -1384 0.6500907459461369 0.3636363636378455 0 -1385 0.6413430145947792 0.3686868686883333 0 -1386 0.6413430145947646 0.3787878787893341 0 -1387 0.6325952832434217 0.3737373737388211 0 -1388 0.6325952832434364 0.3636363636378199 0 -1389 0.6238475518920789 0.3686868686883073 0 -1390 0.6238475518920643 0.3787878787893091 0 -1391 0.6150998205407211 0.3737373737387952 0 -1392 0.6150998205407067 0.3838383838397973 0 -1393 0.6063520891893632 0.3787878787892838 0 -1394 0.6063520891893781 0.3686868686882816 0 -1395 0.5976043578380201 0.37373737373877 0 -1396 0.5976043578380437 0.3636363636377683 0 -1397 0.5888566264866868 0.3686868686882556 0 -1398 0.5888566264866628 0.3787878787892573 0 -1399 0.5801088951353196 0.3737373737387425 0 -1400 0.580108895135374 0.3636363636377183 0 -1401 0.5713611637839749 0.3686868686882275 0 -1402 0.5713611637839597 0.3787878787892293 0 -1403 0.5626134324326162 0.3737373737387146 0 -1404 0.5626134324326578 0.3636363636376828 0 -1405 0.5538657010812726 0.3686868686881998 0 -1406 0.5538657010812583 0.3787878787892021 0 -1407 0.5451179697299162 0.3737373737386836 0 -1408 0.5451179697299859 0.3636363636376223 0 -1409 0.5363702383785959 0.3686868686881417 0 -1410 0.5363702383785572 0.3787878787891692 0 -1411 0.5276225070272111 0.373737373738654 0 -1412 0.5276225070271922 0.3838383838396597 0 -1413 0.5188747756758476 0.3787878787891431 0 -1414 0.5188747756758297 0.3888888888901469 0 -1415 0.5101270443244859 0.3838383838396299 0 -1416 0.5101270443244685 0.3939393939406334 0 -1417 0.5013793129731244 0.3888888888901162 0 -1418 0.5013793129731069 0.3989898989911199 0 -1419 0.4926315816217628 0.3939393939406024 0 -1420 0.4926315816217471 0.4040404040416077 0 -1421 0.8162976416225052 0.1565656565672615 0 -1422 0.816297641622528 0.1464646464662681 0 -1423 0.80754991027117 0.1515151515167453 0 -1424 0.8075499102711921 0.1414141414157513 0 -1425 0.798802178919829 0.1464646464662314 0 -1426 0.7988021789198563 0.1363636363652402 0 -1427 0.7900544475684929 0.1414141414157143 0 -1428 0.7900544475685219 0.1313131313147349 0 -1429 0.7813067162171728 0.1363636363652101 0 -1430 0.7813067162171951 0.1262626262642301 0 -1431 0.7725589848658402 0.1313131313147023 0 -1432 0.7725589848658724 0.1212121212137121 0 -1433 0.7638112535145114 0.1262626262641902 0 -1434 0.7900544475685458 0.1212121212137438 0 -1435 0.7638112535145489 0.1161616161632072 0 -1436 0.7550635221631989 0.1212121212136876 0 -1437 0.8600362983793549 0.1111111111127994 0 -1438 0.8600362983775349 0.8888888888901554 0 -1439 0.8687840297288753 0.8838383838394761 0 -1440 0.7550635221632211 0.111111111112715 0 -1441 0.7463157908118845 0.1161616161631845 0 -1442 0.4401451935147766 0.111111111111807 0 -1443 0.4488929248661278 0.1161616161623316 0 -1444 0.4488929248661014 0.1262626262633628 0 -1445 0.4576406562174745 0.1212121212128615 0 -1446 0.4576406562174444 0.131313131313904 0 -1447 0.4663883875688148 0.1262626262634055 0 -1448 0.4663883875688515 0.1161616161623647 0 -1449 0.4751361189201881 0.1212121212129033 0 -1450 0.475136118920163 0.1313131313139267 0 -1451 0.4838838502715241 0.1262626262634353 0 -1452 0.4838838502715586 0.1161616161624069 0 -1453 0.4926315816228884 0.1212121212129482 0 -1454 0.4926315816228568 0.1313131313139497 0 -1455 0.5013793129742186 0.1262626262634769 0 -1456 0.5013793129742531 0.1161616161624564 0 -1457 0.5101270443255813 0.1212121212129956 0 -1458 0.5101270443255459 0.1313131313139935 0 -1459 0.5188747756769085 0.1262626262635219 0 -1460 0.5188747756769411 0.1161616161625143 0 -1461 0.5276225070282666 0.1212121212130505 0 -1462 0.527622507028233 0.1313131313140389 0 -1463 0.5363702383795939 0.1262626262635701 0 -1464 0.5363702383796313 0.1161616161625625 0 -1465 0.5451179697309599 0.1212121212130799 0 -1466 0.545117969730918 0.1313131313140831 0 -1467 0.5538657010822752 0.1262626262636136 0 -1468 0.553865701082316 0.1161616161625853 0 -1469 0.5626134324336294 0.1212121212131419 0 -1470 0.5626134324335961 0.1313131313141302 0 -1471 0.5713611637849525 0.126262626263662 0 -1472 0.5713611637849919 0.1161616161626545 0 -1473 0.5801088951363176 0.1212121212131686 0 -1474 0.5801088951362749 0.1313131313141738 0 -1475 0.5888566264876282 0.1262626262637038 0 -1476 0.5888566264876681 0.1161616161626695 0 -1477 0.5976043578389778 0.1212121212132306 0 -1478 0.5976043578389483 0.1313131313142196 0 -1479 0.606352089190299 0.126262626263749 0 -1480 0.6063520891903236 0.1161616161627659 0 -1481 0.6150998205416462 0.1212121212132788 0 -1482 0.6150998205416216 0.1313131313142612 0 -1483 0.623847551892969 0.1262626262637897 0 -1484 0.6238475518929922 0.1161616161628083 0 -1485 0.6325952832443138 0.1212121212133187 0 -1486 0.6325952832442918 0.1313131313143004 0 -1487 0.6325952832443358 0.1111111111123377 0 -1488 0.8250453729721274 0.8888888888900909 0 -1489 0.8162976416207859 0.883838383839567 0 -1490 0.1164791335138743 0.3080808080808624 0 -1491 0.1164791335138518 0.3181818181818589 0 -1492 0.1164791335140186 0.1666666666666801 0 -1493 0.1164791335140416 0.1565656565656757 0 -1494 0.1164791335139875 0.1767676767676783 0 -1495 0.1864609843245648 0.4090909090910536 0 -1496 0.1777132529732018 0.4141414141415341 0 -1497 0.4926315816217812 0.3838383838395976 0 -1498 0.5276225070272974 0.3636363636375839 0 -1499 0.7900544475682203 0.2626262626278345 0 -1500 0.6413430145956365 0.1262626262638291 0 -1501 0.6413430145956147 0.1363636363648114 0 -1502 0.860036298379089 0.2727272727290136 0 -1503 0.8687840297304452 0.2777777777795446 0 -1504 0.4838838502704014 0.3989898989910888 0 -1505 0.4838838502703888 0.4090909090920942 0 -1506 0.8862794924332679 0.2373737373754932 0 -1507 0.8862794924332846 0.2272727272744631 0 -1508 0.1427223275680729 0.1717171717172397 0 -1509 0.8162976416207616 0.8939393939405732 0 -1510 0.8075499102694186 0.8888888888900488 0 -1511 0.8687840297307197 0.1060606060623094 0 -1512 0.8687840297288724 0.893939393940665 0 -1513 0.8775317610801906 0.8888888888901008 0 -1514 0.4313974621634254 0.1060606060612772 0 -1515 0.7463157908119098 0.1060606060621971 0 -1516 0.7463157908118223 0.1262626262641399 0 -1517 0.1777132529732254 0.4040404040405324 0 -1518 0.1689655216218632 0.4090909090910126 0 -1519 0.3351724172968824 0.7272727272731081 0 -1520 0.8950272237837714 0.4949494949512733 0 -1521 0.1864609843242501 0.5404040404040849 0 -1522 0.3876588054050231 0.6969696969702739 0 -1523 0.3789110740544518 0.3585858585866275 0 -1524 0.5101270443241265 0.656565656566402 0 -1525 0.2127041783786149 0.4141414141416131 0 -1526 0.2127041783786328 0.4040404040406115 0 -1527 0.2214519097299751 0.409090909091132 0 -1528 0.2214519097299967 0.3989898989901297 0 -1529 0.2301996410813379 0.4040404040406524 0 -1530 0.2301996410813613 0.3939393939396478 0 -1531 0.2389473724327028 0.3989898989901707 0 -1532 0.2389473724327261 0.3888888888891655 0 -1533 0.247695103784067 0.3939393939396866 0 -1534 0.2476951037840479 0.4040404040406879 0 -1535 0.2214519097300187 0.3888888888891237 0 -1536 0.2476951037840913 0.383838383838683 0 -1537 0.2564428351354435 0.3888888888891987 0 -1538 0.7638112535145846 0.106060606062204 0 -1539 0.2127041783780342 0.6666666666667734 0 -1540 0.2127041783780108 0.6767676767677808 0 -1541 0.2039564470266606 0.6717171717172595 0 -1542 0.2039564470266386 0.6818181818182679 0 -1543 0.1952087156752862 0.6767676767677451 0 -1544 0.1952087156752632 0.6868686868687598 0 -1545 0.1864609843239118 0.6818181818182325 0 -1546 0.1864609843238886 0.6919191919192487 0 -1547 0.1777132529725367 0.6868686868687204 0 -1548 0.1777132529725136 0.6969696969697379 0 -1549 0.1689655216211609 0.6919191919192094 0 -1550 0.168965521621138 0.7020202020202273 0 -1551 0.1777132529724909 0.7070707070707554 0 -1552 0.1689655216211242 0.7121212121212444 0 -1553 0.1777132529724693 0.7171717171717723 0 -1554 0.1689655216211026 0.7222222222222614 0 -1555 0.1777132529724465 0.7272727272727894 0 -1556 0.1689655216210713 0.7323232323232927 0 -1557 0.177713252972422 0.7373737373738082 0 -1558 0.1689655216210512 0.7424242424243177 0 -1559 0.1777132529723991 0.7474747474748251 0 -1560 0.168965521621031 0.7525252525253227 0 -1561 0.1777132529723768 0.7575757575758392 0 -1562 0.1689655216210054 0.7626262626263292 0 -1563 0.1777132529723543 0.7676767676768527 0 -1564 0.1689655216209811 0.77272727272734 0 -1565 0.1777132529723311 0.7777777777778654 0 -1566 0.1689655216209589 0.7828282828283526 0 -1567 0.1777132529723077 0.7878787878788776 0 -1568 0.1689655216209372 0.7929292929293706 0 -1569 0.1777132529722849 0.7979797979798894 0 -1570 0.1689655216209172 0.803030303030385 0 -1571 0.1777132529722627 0.8080808080809008 0 -1572 0.168965521620896 0.8131313131313891 0 -1573 0.1777132529722355 0.818181818181918 0 -1574 0.1864609843236072 0.8131313131314251 0 -1575 0.1864609843235795 0.8232323232324414 0 -1576 0.1952087156749519 0.8181818181819484 0 -1577 0.1689655216208645 0.8232323232324077 0 -1578 0.1952087156749241 0.8282828282829615 0 -1579 0.2039564470262951 0.8232323232324703 0 -1580 0.2039564470262666 0.833333333333483 0 -1581 0.2127041783776352 0.8282828282829929 0 -1582 0.2127041783776124 0.8383838383839962 0 -1583 0.2214519097289766 0.8333333333335116 0 -1584 0.203956447026223 0.8434343434345006 0 -1585 0.2214519097289531 0.8434343434345154 0 -1586 0.2301996410803158 0.8383838383840323 0 -1587 0.1602177902697303 0.727272727272803 0 -1588 0.1602177902695859 0.7878787878788718 0 -1589 0.2301996410802883 0.8484848484850418 0 -1590 0.2389473724316525 0.8434343434345561 0 -1591 0.2389473724316254 0.8535353535355623 0 -1592 0.2476951037829892 0.8484848484850772 0 -1593 0.2476951037829586 0.8585858585860823 0 -1594 0.2564428351343245 0.8535353535355971 0 -1595 0.2389473724315737 0.8636363636365797 0 -1596 0.256442835134276 0.863636363636613 0 -1597 0.2651905664856527 0.8585858585861226 0 -1598 0.2651905664856826 0.848484848485118 0 -1599 0.2739382978370182 0.8535353535356377 0 -1600 0.2739382978369692 0.8636363636366529 0 -1601 0.2826860291883435 0.858585858586165 0 -1602 0.2826860291883779 0.8484848484851594 0 -1603 0.2914337605397112 0.8535353535356802 0 -1604 0.291433760539668 0.8636363636366888 0 -1605 0.3001814918910414 0.8585858585862016 0 -1606 0.2214519097289923 0.8232323232324785 0 -1607 0.3001814918910018 0.8686868686872045 0 -1608 0.308929223242376 0.8636363636367198 0 -1609 0.3089292232424031 0.8535353535357229 0 -1610 0.3176769545937372 0.858585858586242 0 -1611 0.3176769545937118 0.8686868686872383 0 -1612 0.3264246859450712 0.8636363636367632 0 -1613 0.3264246859450953 0.853535353535766 0 -1614 0.3351724172964299 0.8585858585862884 0 -1615 0.3351724172964544 0.8484848484852897 0 -1616 0.3439201486477887 0.853535353535811 0 -1617 0.3439201486478138 0.8434343434348125 0 -1618 0.3526678799991484 0.8484848484853329 0 -1619 0.3526678799991232 0.8585858585863312 0 -1620 0.3614156113504831 0.8535353535358534 0 -1621 0.3614156113505077 0.8434343434348553 0 -1622 0.370163342701843 0.8484848484853756 0 -1623 0.3701633427018678 0.8383838383843779 0 -1624 0.3789110740532033 0.8434343434348988 0 -1625 0.3789110740532283 0.8333333333339001 0 -1626 0.3876588054045638 0.8383838383844215 0 -1627 0.3876588054045388 0.8484848484854203 0 -1628 0.3964065367558994 0.8434343434349434 0 -1629 0.3964065367559251 0.8333333333339447 0 -1630 0.4051542681072606 0.8383838383844672 0 -1631 0.4051542681072862 0.828282828283468 0 -1632 0.4139019994586222 0.8333333333339911 0 -1633 0.4139019994586478 0.8232323232329912 0 -1634 0.4226497308099837 0.8282828282835144 0 -1635 0.422649730809958 0.8383838383845137 0 -1636 0.4313974621613194 0.8333333333340366 0 -1637 0.431397462161294 0.8434343434350358 0 -1638 0.4401451935126555 0.8383838383845587 0 -1639 0.4226497308100098 0.8181818181825147 0 -1640 0.4401451935126297 0.8484848484855577 0 -1641 0.4488929248639912 0.8434343434350806 0 -1642 0.4488929248639649 0.8535353535360797 0 -1643 0.4576406562153261 0.8484848484856027 0 -1644 0.4576406562153527 0.8383838383846034 0 -1645 0.4663883875666883 0.8434343434351255 0 -1646 0.4663883875667147 0.8333333333341266 0 -1647 0.4751361189180511 0.8383838383846481 0 -1648 0.4751361189180242 0.8484848484856476 0 -1649 0.4838838502693874 0.8434343434351708 0 -1650 0.4838838502693602 0.8535353535361705 0 -1651 0.4926315816207232 0.8484848484856934 0 -1652 0.4926315816207503 0.8383838383846934 0 -1653 0.5013793129720869 0.8434343434352164 0 -1654 0.5013793129720594 0.8535353535362178 0 -1655 0.5101270443234239 0.8484848484857408 0 -1656 0.5101270443233961 0.8585858585867446 0 -1657 0.5188747756747613 0.8535353535362679 0 -1658 0.5188747756747341 0.8636363636372705 0 -1659 0.5276225070261004 0.8585858585867936 0 -1660 0.5013793129721135 0.833333333334215 0 -1661 0.5276225070260728 0.8686868686877967 0 -1662 0.5363702383774408 0.8636363636373181 0 -1663 0.5363702383774683 0.8535353535363168 0 -1664 0.5451179697288094 0.8585858585868394 0 -1665 0.5451179697287821 0.8686868686878452 0 -1666 0.5538657010801521 0.8636363636373647 0 -1667 0.5188747756747056 0.8737373737382755 0 -1668 0.5538657010801251 0.8737373737383728 0 -1669 0.5626134324314961 0.8686868686878917 0 -1670 0.5538657010801749 0.8535353535363635 0 -1671 0.5626134324314687 0.8787878787889019 0 -1672 0.5713611637828406 0.8737373737384206 0 -1673 0.1864609843237443 0.7626262626263438 0 -1674 0.1689655216211842 0.681818181818191 0 -1675 0.1602177902698078 0.6868686868686802 0 -1676 0.1602177902698309 0.6767676767676618 0 -1677 0.1514700589184631 0.6818181818181509 0 -1678 0.1514700589184785 0.6717171717171319 0 -1679 0.1427223275671182 0.6767676767676378 0 -1680 0.1427223275671264 0.6666666666666013 0 -1681 0.1339745962157555 0.6717171717171092 0 -1682 0.133974596215771 0.6616161616160704 0 -1683 0.1252268648643983 0.6666666666665609 0 -1684 0.1252268648644149 0.6565656565655374 0 -1685 0.5713611637828131 0.883838383839433 0 -1686 0.5801088951341866 0.8787878787889507 0 -1687 0.4139019994586742 0.8131313131319912 0 -1688 0.4226497308100365 0.8080808080815147 0 -1689 0.4401451935126035 0.8585858585865566 0 -1690 0.1252268648643993 0.6767676767676306 0 -1691 0.5801088951341588 0.8888888888899638 0 -1692 0.5888566264855338 0.8838383838394809 0 -1693 0.5888566264855611 0.8737373737384683 0 -1694 0.5976043578369085 0.878787878788998 0 -1695 0.5976043578369349 0.8686868686879848 0 -1696 0.6063520891882817 0.8737373737385126 0 -1697 0.6063520891882549 0.8838383838395063 0 -1698 0.6150998205396347 0.8787878787890331 0 -1699 0.6150998205396563 0.8686868686880397 0 -1700 0.6238475518910028 0.8737373737385669 0 -1701 0.6238475518909978 0.8838383838395406 0 -1702 0.6325952832423571 0.8787878787890773 0 -1703 0.6325952832423755 0.8686868686880893 0 -1704 0.6413430145937205 0.8737373737386102 0 -1705 0.6413430145937212 0.8838383838395828 0 -1706 0.6500907459450768 0.8787878787891197 0 -1707 0.6500907459450878 0.8686868686881289 0 -1708 0.6588384772964391 0.873737373738649 0 -1709 0.6588384772964417 0.883838383839623 0 -1710 0.6675862086477957 0.8787878787891598 0 -1711 0.6675862086478097 0.8686868686881636 0 -1712 0.6763339399991558 0.8737373737386915 0 -1713 0.6763339399991464 0.8838383838396796 0 -1714 0.6850816713505029 0.8787878787892172 0 -1715 0.6763339399991728 0.8636363636376831 0 -1716 0.5626134324314358 0.8888888888899061 0 -1717 0.6850816713504881 0.8888888888902174 0 -1718 0.6938294027018523 0.8838383838397407 0 -1719 0.1164791335130491 0.6616161616160409 0 -1720 0.1164791335130593 0.6515151515150062 0 -1721 0.4139019994587011 0.8030303030309917 0 -1722 0.4226497308100631 0.7979797979805148 0 -1723 0.6938294027018408 0.8939393939407378 0 -1724 0.7025771340531939 0.8888888888902492 0 -1725 0.3701633427018919 0.8282828282833801 0 -1726 0.1602177902695352 0.818181818181889 0 -1727 0.160217790269503 0.8282828282828869 0 -1728 0.1514700589181676 0.8232323232323735 0 -1729 0.1514700589181408 0.8333333333333713 0 -1730 0.1427223275667932 0.8282828282828469 0 -1731 0.1427223275667735 0.8383838383838571 0 -1732 0.1339745962154235 0.8333333333333324 0 -1733 0.133974596215404 0.8434343434343438 0 -1734 0.1252268648640597 0.838383838383832 0 -1735 0.1252268648640336 0.8484848484848325 0 -1736 0.1339745962153841 0.8535353535353548 0 -1737 0.1252268648640147 0.8585858585858439 0 -1738 0.1339745962153634 0.8636363636363645 0 -1739 0.1252268648639974 0.8686868686868533 0 -1740 0.1339745962153446 0.8737373737373737 0 -1741 0.1252268648639799 0.8787878787878615 0 -1742 0.1339745962153263 0.8838383838383812 0 -1743 0.1252268648640747 0.8282828282828549 0 -1744 0.1252268648639624 0.8888888888888684 0 -1745 0.1164791335126573 0.8434343434343679 0 -1746 0.1164791335126157 0.8838383838383497 0 -1747 0.133974596215308 0.8939393939393864 0 -1748 0.1164791335125979 0.8939393939393574 0 -1749 0.3001814918915637 0.6868686868689766 0 -1750 0.1602177902696687 0.7575757575758174 0 -1751 0.3264246859455276 0.7323232323235775 0 -1752 0.7025771340532223 0.8787878787892545 0 -1753 0.4926315816217086 0.5050505050514367 0 -1754 0.3001814918927976 0.131313131313506 0 -1755 0.326424685945045 0.8737373737377595 0 -1756 0.3351724172964787 0.8383838383842922 0 -1757 0.3614156113504581 0.8636363636368505 0 -1758 0.4838838502699495 0.6717171717179582 0 -1759 0.8075499102704238 0.3939393939410992 0 -1760 0.5276225070271788 0.3939393939406638 0 -1761 0.1077314021626744 0.1616161616161575 0 -1762 0.1077314021626968 0.1515151515151547 0 -1763 0.1077314021625174 0.3131313131313413 0 -1764 0.107731402162495 0.323232323232337 0 -1765 0.8600362983793731 0.1010101010117916 0 -1766 0.7025771340532113 0.8989898989911995 0 -1767 0.807549910269394 0.8989898989910566 0 -1768 0.1077314021616854 0.6565656565655108 0 -1769 0.1077314021617014 0.6464646464644745 0 -1770 0.116479133513082 0.6414141414139813 0 -1771 0.1077314021617252 0.6363636363634497 0 -1772 0.1077314021612573 0.88888888888885 0 -1773 0.6850816713504906 0.898989898991184 0 -1774 0.8775317610802129 0.8989898989911976 0 -1775 0.8862794924315732 0.8939393939407027 0 -1776 0.886279492431553 0.8838383838396283 0 -1777 0.7375680594605645 0.111111111112671 0 -1778 0.7375680594605911 0.1010101010116938 0 -1779 0.8600362983790697 0.2828282828300361 0 -1780 0.8687840297304246 0.287878787880566 0 -1781 0.8775317610818014 0.2828282828300728 0 -1782 0.8775317610817814 0.2929292929310954 0 -1783 0.8862794924331594 0.2878787878806003 0 -1784 0.8862794924331395 0.2979797979816239 0 -1785 0.3351724172968609 0.7373737373741132 0 -1786 0.3264246859455048 0.7424242424245812 0 -1787 0.4751361189190402 0.4040404040415754 0 -1788 0.440145193514803 0.1010101010107896 0 -1789 0.1077314021612329 0.8989898989898484 0 -1790 0.1164791335131058 0.6313131313129587 0 -1791 0.10773140216175 0.626262626262427 0 -1792 0.8950272237829413 0.8888888888902231 0 -1793 0.8950272237829429 0.8787878787891874 0 -1794 0.8950272237829283 0.898989898991238 0 -1795 0.1952087156760924 0.2525252525254479 0 -1796 0.116479133513829 0.3282828282828545 0 -1797 0.1077314021624724 0.3333333333333324 0 -1798 0.4139019994587267 0.7929292929299924 0 -1799 0.4226497308100891 0.7878787878795139 0 -1800 0.3526678800003576 0.3838383838389945 0 -1801 0.2564428351354645 0.3787878787881979 0 -1802 0.2476951037841156 0.3737373737376769 0 -1803 0.7988021789180493 0.8939393939405311 0 -1804 0.4751361189190251 0.4141414141425795 0 -1805 0.8950272237845193 0.2929292929311288 0 -1806 0.8950272237844994 0.3030303030321528 0 -1807 0.8950272237846494 0.2323232323249964 0 -1808 0.8950272237846681 0.2222222222239685 0 -1809 0.8687840297288516 0.9040404040416971 0 -1810 0.7988021789180251 0.904040404041541 0 -1811 0.8687840297307351 0.09595959596130288 0 -1812 0.8775317610820859 0.10101010101182 0 -1813 0.2127041783788167 0.2727272727275689 0 -1814 0.308929223244183 0.1262626262630107 0 -1815 0.3001814918928167 0.1212121212124755 0 -1816 0.3089292232442065 0.1161616161619801 0 -1817 0.3001814918928377 0.1111111111114434 0 -1818 0.3089292232442299 0.1060606060609477 0 -1819 0.3001814918928624 0.1010101010104109 0 -1820 0.1164791335131307 0.6212121212119375 0 -1821 0.107731402161775 0.6161616161614051 0 -1822 0.2826860291899689 0.1717171717175688 0 -1823 0.3089292232442537 0.09595959595991375 0 -1824 0.4313974621634513 0.09595959596025842 0 -1825 0.7288203281092428 0.1060606060621738 0 -1826 0.7288203281092889 0.09595959596117479 0 -1827 0.860036298379049 0.2929292929310596 0 -1828 0.4663883875676776 0.409090909092062 0 -1829 0.466388387567695 0.3989898989910576 0 -1830 0.09898367081133252 0.1565656565656384 0 -1831 0.09898367081135365 0.1464646464646343 0 -1832 0.0989836708111614 0.3181818181818197 0 -1833 0.0989836708111836 0.3080808080808251 0 -1834 0.09898367081039426 0.6212121212118945 0 -1835 0.09898367081041928 0.6111111111108728 0 -1836 0.1077314021617999 0.6060606060603839 0 -1837 0.09898367081044447 0.6010101010098519 0 -1838 0.1077314021618239 0.595959595959363 0 -1839 0.09898367081046995 0.5909090909088307 0 -1840 0.1077314021618566 0.585858585858349 0 -1841 0.0989836708104965 0.5808080808078122 0 -1842 0.1077314021618884 0.5757575757573432 0 -1843 0.09898367081052309 0.5707070707067956 0 -1844 0.107731402161905 0.5656565656563221 0 -1845 0.09898367081054833 0.5606060606057786 0 -1846 0.107731402161922 0.5555555555552949 0 -1847 0.0989836708105729 0.5505050505047639 0 -1848 0.1077314021619451 0.5454545454542801 0 -1849 0.09898367081059833 0.5404040404037511 0 -1850 0.1077314021619698 0.5353535353532678 0 -1851 0.09898367081062417 0.5303030303027396 0 -1852 0.1077314021619951 0.5252525252522572 0 -1853 0.09898367081065039 0.5202020202017302 0 -1854 0.1077314021620197 0.5151515151512479 0 -1855 0.09898367081067617 0.5101010101007218 0 -1856 0.1077314021620439 0.5050505050502401 0 -1857 0.09898367081070131 0.4999999999997152 0 -1858 0.1077314021620684 0.494949494949234 0 -1859 0.09898367081072715 0.4898989898987097 0 -1860 0.107731402162093 0.4848484848482291 0 -1861 0.09898367081075352 0.4797979797977056 0 -1862 0.1077314021621179 0.4747474747472258 0 -1863 0.09898367081077959 0.4696969696967026 0 -1864 0.1427223275666701 0.8888888888889005 0 -1865 0.1427223275666495 0.8989898989899063 0 -1866 0.1514700589180115 0.8939393939394181 0 -1867 0.1514700589179914 0.9040404040404224 0 -1868 0.1602177902693522 0.898989898989934 0 -1869 0.1864609843238017 0.7323232323233061 0 -1870 0.09898367081031927 0.651515151514965 0 -1871 0.09898367081030207 0.6616161616160025 0 -1872 0.09898367080989195 0.8939393939393407 0 -1873 0.09898367080986759 0.9040404040403387 0 -1874 0.7375680594606452 0.09090909091062893 0 -1875 0.8600362983793892 0.0909090909107879 0 -1876 0.9037749551343064 0.8838383838397419 0 -1877 0.9037749551343075 0.8737373737387097 0 -1878 0.8862794924331193 0.3080808080826477 0 -1879 0.8950272237844794 0.3131313131331764 0 -1880 0.1164791335138061 0.3383838383838499 0 -1881 0.1077314021624496 0.3434343434343277 0 -1882 0.3351724172968449 0.7474747474751027 0 -1883 0.3264246859454826 0.7525252525255829 0 -1884 0.4139019994587522 0.782828282828992 0 -1885 0.4226497308101145 0.7777777777785135 0 -1886 0.4313974621614517 0.7828282828290357 0 -1887 0.431397462161477 0.7727272727280359 0 -1888 0.4401451935128144 0.7777777777785573 0 -1889 0.4401451935128395 0.7676767676775569 0 -1890 0.4488929248641773 0.7727272727280802 0 -1891 0.4488929248642026 0.762626262627078 0 -1892 0.4576406562155398 0.7676767676776035 0 -1893 0.4576406562155657 0.7575757575765998 0 -1894 0.4663883875669035 0.7626262626271241 0 -1895 0.256442835135484 0.3686868686871931 0 -1896 0.2476951037841387 0.3636363636366708 0 -1897 0.2651905664868425 0.3737373737377075 0 -1898 0.7113248654045718 0.8838383838397454 0 -1899 0.7113248654045941 0.8737373737387655 0 -1900 0.9037749551358805 0.297979797981658 0 -1901 0.3001814918928856 0.09090909090937666 0 -1902 0.2914337605414939 0.09595959595987458 0 -1903 0.8075499102693723 0.9090909090920662 0 -1904 0.8775317610820997 0.09090909091080837 0 -1905 0.8862794924334542 0.09595959596132815 0 -1906 0.1602177902693305 0.9090909090909407 0 -1907 0.1689655216206912 0.9040404040404498 0 -1908 0.4663883875676598 0.4191919191930663 0 -1909 0.9037749551360326 0.2272727272745 0 -1910 0.9037749551360511 0.2171717171734697 0 -1911 0.4401451935148307 0.09090909090977123 0 -1912 0.7200725967579299 0.1010101010116652 0 -1913 0.7200725967578639 0.1111111111126209 0 -1914 0.7200725967580025 0.09090909091064275 0 -1915 0.1077314021621427 0.4646464646462236 0 -1916 0.09898367081080477 0.4595959595957012 0 -1917 0.8250453729729967 0.4747474747491357 0 -1918 0.5013793129730971 0.4090909090921245 0 -1919 0.1952087156762588 0.1717171717173611 0 -1920 0.8425408356756897 0.4949494949511559 0 -1921 0.3526678799996863 0.6868686868690991 0 -1922 0.903774955135133 0.4696969696988235 0 -1923 0.2914337605415167 0.08585858585883939 0 -1924 0.2826860291901247 0.09090909090933802 0 -1925 0.09023593945982859 0.3131313131313031 0 -1926 0.09023593945985076 0.3030303030303096 0 -1927 0.09023593945944265 0.4646464646461796 0 -1928 0.09023593945946831 0.4545454545451795 0 -1929 0.09898367081082893 0.4494949494947018 0 -1930 0.09023593945949401 0.4444444444441808 0 -1931 0.09898367081085355 0.439393939393704 0 -1932 0.09023593945951967 0.4343434343431836 0 -1933 0.09898367081087861 0.4292929292927073 0 -1934 0.09023593945954539 0.4242424242421871 0 -1935 0.09023593945914034 0.5757575757572658 0 -1936 0.1689655216206651 0.9141414141414622 0 -1937 0.1777132529720286 0.9090909090909647 0 -1938 0.8862794924334678 0.08585858586031073 0 -1939 0.8950272237848258 0.09090909091083249 0 -1940 0.7988021789180022 0.9141414141425527 0 -1941 0.7900544475666531 0.9090909090920258 0 -1942 0.1514700589179627 0.9141414141414407 0 -1943 0.4313974621634772 0.08585858585923831 0 -1944 0.3089292232442771 0.08585858585887832 0 -1945 0.09023593945999041 0.1515151515151182 0 -1946 0.09023593946001118 0.1414141414141138 0 -1947 0.09023593945996934 0.1616161616161212 0 -1948 0.09898367081137653 0.1363636363636301 0 -1949 0.09023593946003118 0.1313131313131077 0 -1950 0.09898367081139953 0.1262626262626227 0 -1951 0.09023593946005183 0.1212121212120994 0 -1952 0.09898367081142481 0.116161616161612 0 -1953 0.09023593946007123 0.1111111111110889 0 -1954 0.09898367081144724 0.1060606060605995 0 -1955 0.09023593946009011 0.1010101010100756 0 -1956 0.09898367081146352 0.09595959595958539 0 -1957 0.09023593946010863 0.09090909090905949 0 -1958 0.09898367081148476 0.08585858585856783 0 -1959 0.1077314021628401 0.09090909090909567 0 -1960 0.09023593945933428 0.5050505050501969 0 -1961 0.09023593945921643 0.5454545454542155 0 -1962 0.09023593945903811 0.6161616161613623 0 -1963 0.09023593945893617 0.6565656565654555 0 -1964 0.09023593945891105 0.6666666666664814 0 -1965 0.09023593945852544 0.8989898989898309 0 -1966 0.09023593945850296 0.9090909090908296 0 -1967 0.09023593945850979 0.8888888888888693 0 -1968 0.09898367080985043 0.9141414141413468 0 -1969 0.09898367081090388 0.4191919191917111 0 -1970 0.0902359394595711 0.414141414141191 0 -1971 0.7113248654066197 0.09595959596115576 0 -1972 0.7113248654066668 0.08585858586016987 0 -1973 0.886279492433099 0.3181818181836716 0 -1974 0.8950272237844588 0.3232323232342 0 -1975 0.7725589848657841 0.1414141414156645 0 -1976 0.116479133513783 0.3484848484848451 0 -1977 0.4401451935128643 0.7575757575765557 0 -1978 0.4139019994587766 0.7727272727279916 0 -1979 0.4051542681074153 0.777777777778471 0 -1980 0.4576406562163329 0.4040404040415447 0 -1981 0.4576406562163505 0.39393939394054 0 -1982 0.256442835135507 0.3585858585861864 0 -1983 0.2476951037841623 0.3535353535356643 0 -1984 0.720072596755951 0.8787878787892694 0 -1985 0.7200725967559637 0.8686868686882792 0 -1986 0.9125226864856657 0.8787878787892595 0 -1987 0.9125226864856835 0.8686868686882624 0 -1988 0.9300181491890878 0.5151515151533295 0 -1989 0.921270417837737 0.5202020202038057 0 -1990 0.9300181491890653 0.5252525252543179 0 -1991 0.921270417837719 0.5303030303047934 0 -1992 0.9300181491890434 0.5353535353553025 0 -1993 0.9212704178377005 0.5404040404057765 0 -1994 0.9300181491890229 0.5454545454562836 0 -1995 0.9212704178376799 0.5505050505067568 0 -1996 0.9125226864863575 0.5454545454562491 0 -1997 0.9125226864863366 0.5555555555572305 0 -1998 0.9037749551350144 0.5505050505067238 0 -1999 0.9037749551349936 0.560606060607704 0 -2000 0.9125226864863151 0.5656565656582124 0 -2001 0.9037749551349727 0.5707070707086843 0 -2002 0.8950272237836503 0.5656565656581767 0 -2003 0.89502722378363 0.5757575757591579 0 -2004 0.8862794924323064 0.5707070707086495 0 -2005 0.8862794924322867 0.5808080808096314 0 -2006 0.8950272237836097 0.5858585858601395 0 -2007 0.886279492432266 0.5909090909106126 0 -2008 0.8775317610809438 0.5858585858601053 0 -2009 0.8775317610809227 0.5959595959610865 0 -2010 0.8687840297296002 0.5909090909105789 0 -2011 0.8687840297295808 0.6010101010115619 0 -2012 0.8600362983782566 0.5959595959610524 0 -2013 0.860036298378237 0.6060606060620374 0 -2014 0.8512885670269117 0.6010101010115279 0 -2015 0.8512885670268938 0.6111111111125154 0 -2016 0.8425408356755663 0.6060606060620043 0 -2017 0.8600362983782178 0.6161616161630515 0 -2018 0.8425408356755485 0.6161616161629927 0 -2019 0.8337931043242196 0.6111111111124788 0 -2020 0.8337931043241994 0.6212121212134644 0 -2021 0.8250453729728723 0.616161616162953 0 -2022 0.8250453729728519 0.6262626262639395 0 -2023 0.8162976416215244 0.6212121212134282 0 -2024 0.8162976416215038 0.6313131313144152 0 -2025 0.8075499102701758 0.6262626262639039 0 -2026 0.8250453729728316 0.6363636363649263 0 -2027 0.8950272237835871 0.5959595959611197 0 -2028 0.8162976416214845 0.6414141414154022 0 -2029 0.8250453729728113 0.6464646464659123 0 -2030 0.8075499102701968 0.6161616161629158 0 -2031 0.7988021789188469 0.6212121212133915 0 -2032 0.8162976416214646 0.6515151515163879 0 -2033 0.8250453729727911 0.6565656565668978 0 -2034 0.7988021789188687 0.6111111111124022 0 -2035 0.7900544475675176 0.6161616161628782 0 -2036 0.7900544475675402 0.6060606060618881 0 -2037 0.7813067162161892 0.6111111111123639 0 -2038 0.7813067162161659 0.6212121212133538 0 -2039 0.7725589848648374 0.6161616161628389 0 -2040 0.7725589848648144 0.6262626262638299 0 -2041 0.763811253513484 0.6212121212133153 0 -2042 0.763811253513463 0.6313131313143077 0 -2043 0.7550635221621309 0.6262626262637935 0 -2044 0.7550635221621534 0.6161616161627971 0 -2045 0.7463157908107994 0.6212121212132768 0 -2046 0.746315790810778 0.6313131313142709 0 -2047 0.7375680594594445 0.6262626262637552 0 -2048 0.7375680594594664 0.6161616161627607 0 -2049 0.7288203281081105 0.6212121212132393 0 -2050 0.7288203281080888 0.6313131313142337 0 -2051 0.7200725967567545 0.6262626262637174 0 -2052 0.7200725967567324 0.6363636363647135 0 -2053 0.7113248654053977 0.6313131313141963 0 -2054 0.7113248654054228 0.6212121212132049 0 -2055 0.702577134054065 0.6262626262636818 0 -2056 0.7025771340540463 0.6363636363646729 0 -2057 0.6938294027027079 0.6313131313141542 0 -2058 0.6938294027027285 0.6212121212131652 0 -2059 0.6850816713513693 0.6262626262636394 0 -2060 0.6850816713513908 0.616161616162644 0 -2061 0.6763339400000323 0.6212121212131207 0 -2062 0.676333940000061 0.6111111111121319 0 -2063 0.6675862086486961 0.6161616161626022 0 -2064 0.6850816713513569 0.6363636363646259 0 -2065 0.6675862086486904 0.606060606061636 0 -2066 0.6588384772973469 0.6111111111120988 0 -2067 0.8162976416214431 0.6616161616173735 0 -2068 0.8250453729727705 0.6666666666678839 0 -2069 0.6588384772973346 0.6212121212130827 0 -2070 0.6500907459459963 0.6161616161625632 0 -2071 0.6500907459459921 0.6060606060615794 0 -2072 0.641343014594656 0.611111111112043 0 -2073 0.6413430145946356 0.6212121212130416 0 -2074 0.6325952832432987 0.6161616161625183 0 -2075 0.6325952832433221 0.6060606060615185 0 -2076 0.6238475518919637 0.6111111111119925 0 -2077 0.6850816713514288 0.6060606060616712 0 -2078 0.7813067162162112 0.6010101010113739 0 -2079 0.6238475518919845 0.6010101010109967 0 -2080 0.6150998205406234 0.6060606060614742 0 -2081 0.8162976416214228 0.6717171717183594 0 -2082 0.8250453729727503 0.6767676767688702 0 -2083 0.8337931043240966 0.6717171717183944 0 -2084 0.8337931043240765 0.6818181818193798 0 -2085 0.8425408356754209 0.6767676767689048 0 -2086 0.8425408356754013 0.6868686868698881 0 -2087 0.8512885670267445 0.6818181818194142 0 -2088 0.8512885670267241 0.6919191919203959 0 -2089 0.8600362983780658 0.6868686868699229 0 -2090 0.8600362983780456 0.6969696969709016 0 -2091 0.8687840297293854 0.6919191919204298 0 -2092 0.8687840297293659 0.7020202020214062 0 -2093 0.8775317610807027 0.696969696970935 0 -2094 0.8775317610806845 0.7070707070719091 0 -2095 0.8862794924320185 0.7020202020214348 0 -2096 0.8862794924319989 0.7121212121224094 0 -2097 0.8862794924320376 0.6919191919204656 0 -2098 0.8775317610806678 0.717171717172882 0 -2099 0.8862794924319821 0.7222222222233844 0 -2100 0.8775317610806509 0.7272727272738533 0 -2101 0.8862794924319667 0.7323232323243525 0 -2102 0.8425408356753862 0.6969696969708682 0 -2103 0.8950272237832966 0.7272727272738859 0 -2104 0.8950272237832811 0.7373737373748523 0 -2105 0.8950272237833512 0.6969696969709642 0 -2106 0.8950272237833722 0.6868686868699991 0 -2107 0.632595283243278 0.626262626263519 0 -2108 0.8425408356755933 0.5959595959610128 0 -2109 0.6150998205406456 0.5959595959604762 0 -2110 0.6063520891892831 0.6010101010109559 0 -2111 0.6238475518920077 0.5909090909099964 0 -2112 0.9037749551346113 0.7323232323243849 0 -2113 0.9037749551345934 0.7424242424253512 0 -2114 0.9037749551346838 0.6919191919204978 0 -2115 0.9037749551347048 0.6818181818195318 0 -2116 0.8775317610806345 0.7373737373748239 0 -2117 0.6063520891892642 0.6111111111119494 0 -2118 0.5976043578379197 0.6060606060614355 0 -2119 0.5976043578379442 0.5959595959604341 0 -2120 0.588856626486582 0.6010101010109131 0 -2121 0.5888566264866051 0.5909090909099131 0 -2122 0.5801088951352428 0.5959595959603917 0 -2123 0.8162976416214034 0.6818181818193456 0 -2124 0.580108895135259 0.5858585858593989 0 -2125 0.5713611637839044 0.5909090909098693 0 -2126 0.7900544475675616 0.5959595959608968 0 -2127 0.7813067162162309 0.5909090909103832 0 -2128 0.8075499102700756 0.6767676767688356 0 -2129 0.9125226864860139 0.6868686868700293 0 -2130 0.9125226864860334 0.6767676767690629 0 -2131 0.5888566264865608 0.6111111111119072 0 -2132 0.7900544475675827 0.5858585858599046 0 -2133 0.7813067162162516 0.5808080808093912 0 -2134 0.5713611637839017 0.5808080808088817 0 -2135 0.562613432432564 0.5858585858593474 0 -2136 0.5626134324325421 0.5959595959603475 0 -2137 0.912522686485925 0.7373737373748729 0 -2138 0.9125226864859032 0.7474747474758479 0 -2139 0.903774955134575 0.7525252525263162 0 -2140 0.9125226864858834 0.7575757575768147 0 -2141 0.9037749551345559 0.7626262626272806 0 -2142 0.9125226864858641 0.7676767676777795 0 -2143 0.9037749551345358 0.7727272727282456 0 -2144 0.9125226864858449 0.7777777777787456 0 -2145 0.8075499102700567 0.6868686868698223 0 -2146 0.7988021789187278 0.6818181818193116 0 -2147 0.4663883875669295 0.7525252525261198 0 -2148 0.4751361189182683 0.7575757575766437 0 -2149 0.5538657010812036 0.5909090909098249 0 -2150 0.3351724172968231 0.7575757575761027 0 -2151 0.3264246859454601 0.7626262626265849 0 -2152 0.431397462162199 0.5303030303037506 0 -2153 0.798802178919568 0.2676767676783557 0 -2154 0.7900544475682012 0.2727272727288444 0 -2155 0.7988021789195494 0.2777777777793651 0 -2156 0.790054447568183 0.2828282828298542 0 -2157 0.7988021789195309 0.2878787878803746 0 -2158 0.1252268648644857 0.6262626262624693 0 -2159 0.3176769545941198 0.7575757575760638 0 -2160 0.3176769545940962 0.7676767676770674 0 -2161 0.3089292232427571 0.7626262626265453 0 -2162 0.3089292232427322 0.7727272727275483 0 -2163 0.3001814918913939 0.7676767676770251 0 -2164 0.4488929248639378 0.8636363636370787 0 -2165 0.4401451935125775 0.868686868687555 0 -2166 0.4488929248639118 0.8737373737380768 0 -2167 0.4401451935125509 0.8787878787885526 0 -2168 0.4488929248638851 0.8838383838390752 0 -2169 0.4401451935125246 0.8888888888895501 0 -2170 0.4488929248638582 0.8939393939400728 0 -2171 0.4401451935124998 0.8989898989905457 0 -2172 0.4488929248638317 0.9040404040410674 0 -2173 0.4401451935124732 0.9090909090915409 0 -2174 0.4313974621611424 0.9040404040410199 0 -2175 0.4488929248638041 0.9141414141420624 0 -2176 0.4313974621611152 0.9141414141420139 0 -2177 0.4226497308097855 0.9090909090914937 0 -2178 0.4576406562151617 0.9090909090915908 0 -2179 0.5888566264866042 0.5808080808089434 0 -2180 0.4751361189190073 0.4242424242435835 0 -2181 0.4663883875676422 0.4292929292940705 0 -2182 0.912522686487417 0.2222222222240027 0 -2183 0.9125226864874355 0.2121212121229718 0 -2184 0.9125226864873933 0.2323232323250257 0 -2185 0.8075499102693512 0.9191919191930792 0 -2186 0.2826860291901472 0.08080808080830168 0 -2187 0.2739382978387546 0.08585858585880066 0 -2188 0.09023593945848733 0.9191919191918374 0 -2189 0.09023593946012788 0.08080808080804144 0 -2190 0.4576406562151349 0.9191919191925835 0 -2191 0.4663883875664933 0.9141414141421106 0 -2192 0.4226497308097584 0.9191919191924861 0 -2193 0.4139019994584295 0.9141414141419675 0 -2194 0.4401451935148581 0.08080808080875046 0 -2195 0.1777132529720066 0.919191919191969 0 -2196 0.1864609843233657 0.9141414141414779 0 -2197 0.8950272237848389 0.08080808080981422 0 -2198 0.9037749551361992 0.0858585858603344 0 -2199 0.903774955136186 0.09595959596135557 0 -2200 0.9125226864875611 0.0909090909108589 0 -2201 0.9125226864875482 0.1010101010118807 0 -2202 0.9125226864875723 0.08080808080983867 0 -2203 0.1077314021628625 0.08080808080807504 0 -2204 0.1164791335142213 0.08585858585860598 0 -2205 0.7900544475666298 0.9191919191930393 0 -2206 0.7813067162152793 0.9141414141425107 0 -2207 0.9037749551345146 0.7828282828292127 0 -2208 0.9125226864858264 0.7878787878797133 0 -2209 0.8950272237832037 0.77777777777871 0 -2210 0.7025771340553005 0.09090909091066302 0 -2211 0.7025771340553262 0.08080808080969076 0 -2212 0.1164791335134332 0.4898989898987525 0 -2213 0.3001814918913681 0.7777777777780271 0 -2214 0.2914337605400297 0.7727272727275033 0 -2215 0.6500907459469594 0.1313131313143392 0 -2216 0.6500907459469376 0.1414141414153223 0 -2217 0.6413430145955915 0.1464646464657949 0 -2218 0.6500907459469164 0.1515151515163067 0 -2219 0.6413430145955683 0.1565656565667801 0 -2220 0.6500907459468948 0.1616161616172928 0 -2221 0.6588384772982452 0.156565656566814 0 -2222 0.6413430145955462 0.1666666666677672 0 -2223 0.6588384772982219 0.1666666666678046 0 -2224 0.6675862086495727 0.1616161616173261 0 -2225 0.6675862086495485 0.171717171718318 0 -2226 0.6763339400008999 0.1666666666678427 0 -2227 0.7900544475681655 0.2929292929308631 0 -2228 0.1689655216218868 0.3989898989900116 0 -2229 0.11647913351322 0.5909090909088859 0 -2230 0.886279492433079 0.328282828284695 0 -2231 0.8950272237844352 0.3333333333352183 0 -2232 0.9037749551358165 0.3282828282847275 0 -2233 0.9037749551357861 0.338383838385742 0 -2234 0.9125226864871762 0.3333333333352558 0 -2235 0.9125226864871494 0.3434343434362772 0 -2236 0.2564428351355289 0.3484848484851809 0 -2237 0.2476951037841859 0.3434343434346577 0 -2238 0.238947372432819 0.3484848484851406 0 -2239 0.5626134324325529 0.5757575757583544 0 -2240 0.7288203281072998 0.8737373737387814 0 -2241 0.7288203281073277 0.8636363636377902 0 -2242 0.7200725967559793 0.85858585858728 0 -2243 0.08148820810849666 0.3080808080807871 0 -2244 0.08148820810851874 0.2979797979797944 0 -2245 0.08148820810847419 0.3181818181817794 0 -2246 0.0814882081086289 0.1565656565656017 0 -2247 0.08148820810860763 0.1666666666666025 0 -2248 0.08148820810870511 0.1161616161615834 0 -2249 0.08148820810809645 0.4595959595956421 0 -2250 0.08148820810821315 0.4191919191916669 0 -2251 0.08148820810823897 0.4090909090906718 0 -2252 0.0814882081075512 0.6616161616159449 0 -2253 0.08148820810752579 0.6717171717169715 0 -2254 0.08148820810714434 0.9040404040403579 0 -2255 0.08148820810875149 0.08585858585853318 0 -2256 0.4139019994584029 0.924242424242959 0 -2257 0.4051542681070734 0.9191919191924396 0 -2258 0.09898367080983392 0.9242424242423544 0 -2259 0.2301996410809533 0.5757575757577171 0 -2260 0.2389473724322978 0.5808080808082412 0 -2261 0.2389473724323228 0.5707070707072334 0 -2262 0.2476951037836659 0.5757575757577581 0 -2263 0.2476951037836909 0.5656565656567499 0 -2264 0.2564428351350339 0.5707070707072746 0 -2265 0.2564428351350589 0.5606060606062659 0 -2266 0.2651905664864018 0.565656565656791 0 -2267 0.2651905664864275 0.5555555555557825 0 -2268 0.2739382978377696 0.5606060606063077 0 -2269 0.2739382978377941 0.5505050505053004 0 -2270 0.2826860291891366 0.5555555555558247 0 -2271 0.2826860291891131 0.5656565656568322 0 -2272 0.2914337605404806 0.5606060606063497 0 -2273 0.2914337605404569 0.5707070707073564 0 -2274 0.3001814918918246 0.5656565656568744 0 -2275 0.3001814918918006 0.5757575757578808 0 -2276 0.3089292232431677 0.5707070707073986 0 -2277 0.3089292232431439 0.5808080808084056 0 -2278 0.3176769545945108 0.5757575757579227 0 -2279 0.2826860291891601 0.5454545454548175 0 -2280 0.3176769545944874 0.5858585858589296 0 -2281 0.3264246859458539 0.5808080808084467 0 -2282 0.3264246859458306 0.590909090909453 0 -2283 0.335172417297197 0.5858585858589704 0 -2284 0.3001814918917762 0.5858585858588869 0 -2285 0.3089292232431924 0.5606060606063931 0 -2286 0.3351724172972206 0.5757575757579642 0 -2287 0.3439201486485631 0.5808080808084877 0 -2288 0.3439201486485398 0.5909090909094933 0 -2289 0.3526678799999054 0.5858585858590106 0 -2290 0.2739382978378183 0.5404040404042924 0 -2291 0.282686029189184 0.5353535353538105 0 -2292 0.2739382978378416 0.5303030303032855 0 -2293 0.2826860291892073 0.5252525252528043 0 -2294 0.3526678799998822 0.5959595959600159 0 -2295 0.3614156113512476 0.5909090909095336 0 -2296 0.3526678799999285 0.5757575757580056 0 -2297 0.2739382978378651 0.5202020202022807 0 -2298 0.2826860291892313 0.515151515151799 0 -2299 0.2739382978378898 0.5101010101012753 0 -2300 0.2826860291892577 0.5050505050507942 0 -2301 0.2739382978379148 0.5000000000002706 0 -2302 0.2826860291892815 0.4949494949497894 0 -2303 0.2739382978379392 0.4898989898992662 0 -2304 0.2826860291893042 0.4848484848487848 0 -2305 0.291433760540601 0.5101010101013195 0 -2306 0.2739382978379632 0.4797979797982619 0 -2307 0.2826860291893282 0.4747474747477807 0 -2308 0.3614156113512245 0.6010101010105383 0 -2309 0.352667879999859 0.6060606060610211 0 -2310 0.3701633427025893 0.5959595959600555 0 -2311 0.3526678800006161 0.2929292929298979 0 -2312 0.3964065367568199 0.4797979797987113 0 -2313 0.4751361189188665 0.5656565656573663 0 -2314 0.2301996410816567 0.2121212121215356 0 -2315 0.2476951037836413 0.5858585858587653 0 -2316 0.2214519097303923 0.1565656565659106 0 -2317 0.2564428351357917 0.2171717171720978 0 -2318 0.781306716215255 0.9242424242435258 0 -2319 0.7725589848639036 0.9191919191929954 0 -2320 0.4313974621635033 0.07575757575821623 0 -2321 0.4226497308121198 0.08080808080870497 0 -2322 0.1164791335142429 0.07575757575758092 0 -2323 0.1252268648656043 0.08080808080811333 0 -2324 0.1864609843233482 0.9242424242424744 0 -2325 0.1952087156747017 0.9191919191919909 0 -2326 0.7113248654067217 0.07575757575915752 0 -2327 0.8862794924334804 0.07575757575929247 0 -2328 0.9212704178371562 0.7828282828292444 0 -2329 0.9212704178371387 0.7929292929302116 0 -2330 0.9125226864858084 0.7979797979806816 0 -2331 0.9212704178371206 0.8030303030311801 0 -2332 0.921270417837212 0.7525252525263371 0 -2333 0.9212704178373419 0.681818181819562 0 -2334 0.9212704178373622 0.671717171718597 0 -2335 0.9125226864860537 0.6666666666680978 0 -2336 0.9212704178373817 0.6616161616176326 0 -2337 0.7988021789187079 0.6919191919202984 0 -2338 0.790054447567379 0.6868686868697867 0 -2339 0.5538657010811797 0.6010101010108271 0 -2340 0.1164791335133482 0.5303030303027989 0 -2341 0.1164791335132912 0.5606060606058598 0 -2342 0.4051542681074386 0.7676767676774696 0 -2343 0.2389473724328427 0.3383838383841342 0 -2344 0.230199641081476 0.3434343434346167 0 -2345 0.2739382978379876 0.4696969696972574 0 -2346 0.2826860291893527 0.4646464646467766 0 -2347 0.4751361189182408 0.7676767676776498 0 -2348 0.4838838502696065 0.7626262626271691 0 -2349 0.4838838502696324 0.7525252525261664 0 -2350 0.4926315816209714 0.7575757575766896 0 -2351 0.4751361189189863 0.4343434343445878 0 -2352 0.4488929248649884 0.3989898989910273 0 -2353 0.4488929248650061 0.3888888888900222 0 -2354 0.7900544475676045 0.5757575757589132 0 -2355 0.4663883875676245 0.4393939393950748 0 -2356 0.4576406562162804 0.4343434343445578 0 -2357 0.9212704178385405 0.338383838385786 0 -2358 0.9212704178385214 0.3484848484868148 0 -2359 0.9212704178388024 0.2171717171735047 0 -2360 0.9212704178388214 0.2070707070724734 0 -2361 0.9125226864874547 0.2020202020219407 0 -2362 0.9212704178388399 0.1969696969714422 0 -2363 0.9212704178389236 0.09595959596138548 0 -2364 0.9212704178389125 0.1060606060624078 0 -2365 0.4663883875664676 0.9242424242431048 0 -2366 0.4751361189178265 0.9191919191926302 0 -2367 0.273938297838777 0.07575757575776362 0 -2368 0.2651905664873846 0.08080808080826318 0 -2369 0.08148820810877068 0.07575757575751402 0 -2370 0.6763339400008755 0.1767676767688327 0 -2371 0.6850816713522292 0.1717171717183557 0 -2372 0.3264246859454319 0.7727272727275906 0 -2373 0.6938294027039924 0.08585858586016465 0 -2374 0.6938294027040193 0.07575757575917913 0 -2375 0.2914337605400036 0.7828282828285066 0 -2376 0.2826860291886645 0.7777777777779825 0 -2377 0.2826860291886913 0.7676767676769783 0 -2378 0.2739382978373258 0.7727272727274564 0 -2379 0.2739382978373523 0.7626262626264525 0 -2380 0.265190566485986 0.7676767676769312 0 -2381 0.851288567028033 0.09595959596127474 0 -2382 0.8512885670280501 0.08585858586027616 0 -2383 0.1077314021622175 0.434343434343233 0 -2384 0.7813067162168166 0.2878787878803437 0 -2385 0.7813067162167943 0.2979797979813573 0 -2386 0.1514700589185065 0.6616161616161149 0 -2387 0.4926315816209449 0.7676767676776932 0 -2388 0.5013793129723109 0.7626262626272153 0 -2389 0.8337931043244499 0.4090909090926474 0 -2390 0.2651905664860129 0.7575757575759251 0 -2391 0.7813067162162728 0.5707070707083987 0 -2392 0.7725589848649191 0.5757575757588769 0 -2393 0.7375680594586735 0.8686868686882749 0 -2394 0.737568059458696 0.8585858585872992 0 -2395 0.9212704178370221 0.8737373737387792 0 -2396 0.9212704178370072 0.883838383839778 0 -2397 0.5451179697298405 0.5959595959603043 0 -2398 0.2739382978372994 0.7828282828284645 0 -2399 0.7988021789197792 0.1565656565672024 0 -2400 0.2564428351346446 0.7626262626264078 0 -2401 0.8600362983792651 0.1616161616178296 0 -2402 0.7725589848638705 0.9292929292940004 0 -2403 0.7638112535125435 0.9242424242434804 0 -2404 0.1777132529719858 0.9292929292929739 0 -2405 0.195208715674684 0.9292929292929857 0 -2406 0.203956447026036 0.9242424242425042 0 -2407 0.9125226864857903 0.8080808080816522 0 -2408 0.9212704178371064 0.813131313132152 0 -2409 0.7988021789195129 0.297979797981384 0 -2410 0.8425408356766989 0.09090909091075863 0 -2411 0.8425408356767167 0.08080808080976687 0 -2412 0.8337931043253703 0.08585858586024402 0 -2413 0.8337931043253896 0.07575757575925969 0 -2414 0.8250453729740465 0.08080808080973392 0 -2415 0.6850816713526869 0.08080808080965572 0 -2416 0.9037749551343109 0.8636363636376386 0 -2417 0.8600362983780868 0.6767676767689506 0 -2418 0.2651905664873613 0.09090909090929997 0 -2419 0.2564428351359925 0.08585858585876253 0 -2420 0.2564428351360142 0.07575757575772613 0 -2421 0.2476951037846226 0.0808080808082256 0 -2422 0.2476951037846009 0.0909090909092615 0 -2423 0.2389473724332314 0.08585858585872509 0 -2424 0.2389473724332527 0.07575757575768938 0 -2425 0.2301996410818618 0.08080808080818902 0 -2426 0.2301996410818829 0.07070707070715306 0 -2427 0.2214519097304918 0.07575757575765285 0 -2428 0.772558984865451 0.2929292929308336 0 -2429 0.7725589848654284 0.3030303030318467 0 -2430 0.763811253514087 0.2979797979813218 0 -2431 0.5013793129722846 0.772727272728218 0 -2432 0.5101270443236501 0.7676767676777401 0 -2433 0.510127044323624 0.7777777777787434 0 -2434 0.5188747756749893 0.7727272727282632 0 -2435 0.518874775674963 0.7828282828292683 0 -2436 0.5276225070263294 0.7777777777787882 0 -2437 0.5276225070263032 0.7878787878797928 0 -2438 0.5363702383776695 0.7828282828293136 0 -2439 0.5363702383776963 0.7727272727283085 0 -2440 0.5451179697290365 0.7777777777788338 0 -2441 0.5451179697290097 0.7878787878798397 0 -2442 0.5538657010803768 0.7828282828293598 0 -2443 0.3176769545956437 0.09090909090941618 0 -2444 0.3176769545956689 0.08080808080837977 0 -2445 0.3264246859470364 0.08585858585891826 0 -2446 0.3264246859470619 0.07575757575788108 0 -2447 0.3351724172984292 0.08080808080841989 0 -2448 0.7988021789180872 0.8838383838395436 0 -2449 0.5538657010803504 0.7929292929303656 0 -2450 0.5626134324317176 0.7878787878798861 0 -2451 0.562613432431691 0.7979797979808914 0 -2452 0.5713611637830585 0.7929292929304119 0 -2453 0.571361163783032 0.8030303030314176 0 -2454 0.5801088951343999 0.7979797979809381 0 -2455 0.2564428351346705 0.7525252525253998 0 -2456 0.09023593945847047 0.929292929292844 0 -2457 0.4751361189178013 0.9292929292936262 0 -2458 0.4838838502691594 0.9242424242431532 0 -2459 0.07274047675726925 0.1616161616160843 0 -2460 0.07274047675724801 0.171717171717083 0 -2461 0.0727404767571434 0.3131313131312639 0 -2462 0.07274047675712082 0.323232323232255 0 -2463 0.2826860291901704 0.07070707070726386 0 -2464 0.4226497308097319 0.9292929292934793 0 -2465 0.8250453729740653 0.07070707070875373 0 -2466 0.8162976416227248 0.07575757575922899 0 -2467 0.1252268648656259 0.07070707070708535 0 -2468 0.1339745962169886 0.07575757575761827 0 -2469 0.4401451935148857 0.07070707070772896 0 -2470 0.4488929248662388 0.07575757575826306 0 -2471 0.8425408356767315 0.07070707070878282 0 -2472 0.4051542681070469 0.929292929293431 0 -2473 0.3964065367557185 0.9242424242429119 0 -2474 0.3351724172984547 0.07070707070738227 0 -2475 0.3439201486498228 0.07575757575792115 0 -2476 0.6850816713527057 0.07070707070868901 0 -2477 0.6763339400013737 0.07575757575916348 0 -2478 0.4226497308121474 0.07070707070767895 0 -2479 0.4139019994607593 0.07575757575816992 0 -2480 0.9300181491884673 0.7878787878797422 0 -2481 0.7900544475673579 0.6969696969707743 0 -2482 0.7813067162160292 0.6919191919202621 0 -2483 0.7988021789186877 0.7020202020212865 0 -2484 0.66758620864952 0.1818181818193063 0 -2485 0.685081671352203 0.181818181819348 0 -2486 0.693829402703557 0.1767676767688719 0 -2487 0.5013793129723362 0.7525252525262142 0 -2488 0.9125226864870473 0.3535353535372873 0 -2489 0.9212704178384628 0.3585858585878381 0 -2490 0.7638112535140585 0.3080808080823301 0 -2491 0.755063522162723 0.3030303030318103 0 -2492 0.9125226864860725 0.6565656565671342 0 -2493 0.9212704178373996 0.6515151515166679 0 -2494 0.6763339400009305 0.1565656565668457 0 -2495 0.1952087156747194 0.9090909090909977 0 -2496 0.1602177902705068 0.4040404040404914 0 -2497 0.1602177902704992 0.4141414141414916 0 -2498 0.1602177902705284 0.393939393939491 0 -2499 0.1689655216219068 0.3888888888890114 0 -2500 0.3614156113512014 0.6111111111115436 0 -2501 0.3526678799998363 0.616161616162026 0 -2502 0.160217790269369 0.8888888888889365 0 -2503 0.4051542681070907 0.9090909090914457 0 -2504 0.2301996410814998 0.3333333333336108 0 -2505 0.2214519097301336 0.3383838383840929 0 -2506 0.9125226864874745 0.1919191919209101 0 -2507 0.9212704178388592 0.1868686868704119 0 -2508 0.8862794924330356 0.3383838383857115 0 -2509 0.8775317610816997 0.3333333333351899 0 -2510 0.5801088951343735 0.8080808080819444 0 -2511 0.5888566264857416 0.8030303030314643 0 -2512 0.09898367081092932 0.4090909090907148 0 -2513 0.2914337605406687 0.4797979797983035 0 -2514 0.256442835135553 0.3383838383841746 0 -2515 0.265190566486895 0.3434343434346963 0 -2516 0.3964065367560772 0.7727272727279498 0 -2517 0.23894737243321 0.09595959595975995 0 -2518 0.7725589848649403 0.5656565656578825 0 -2519 0.7638112535135858 0.5707070707083622 0 -2520 0.4751361189189682 0.4444444444455921 0 -2521 0.4663883875676068 0.449494949496079 0 -2522 0.9300181491901888 0.2121212121230072 0 -2523 0.07274047675739453 0.08080808080800612 0 -2524 0.07274047675741403 0.0707070707069859 0 -2525 0.07274047675688206 0.4141414141411472 0 -2526 0.07274047675690748 0.4040404040401537 0 -2527 0.07274047675616568 0.6666666666664357 0 -2528 0.07274047675614041 0.6767676767674631 0 -2529 0.08148820810750063 0.6818181818179989 0 -2530 0.07274047675611522 0.6868686868684903 0 -2531 0.08148820810747631 0.6919191919190258 0 -2532 0.07274047675609038 0.6969696969695179 0 -2533 0.08148820810745154 0.7020202020200532 0 -2534 0.07274047675606646 0.7070707070705456 0 -2535 0.08148820810742619 0.7121212121210804 0 -2536 0.07274047675604112 0.7171717171715728 0 -2537 0.08148820810740059 0.7222222222221073 0 -2538 0.07274047675601494 0.7272727272725993 0 -2539 0.08148820810737445 0.732323232323135 0 -2540 0.07274047675599073 0.7373737373736264 0 -2541 0.08148820810734825 0.7424242424241619 0 -2542 0.07274047675596461 0.7474747474746529 0 -2543 0.08148820810732198 0.7525252525251881 0 -2544 0.07274047675593923 0.7575757575756786 0 -2545 0.08148820810729501 0.7626262626262139 0 -2546 0.07274047675591543 0.7676767676767038 0 -2547 0.09023593945873333 0.7373737373736704 0 -2548 0.08148820810726849 0.7727272727272401 0 -2549 0.07274047675588671 0.7777777777777289 0 -2550 0.0902359394586519 0.7676767676767504 0 -2551 0.08148820810724085 0.7828282828282651 0 -2552 0.07274047675585694 0.7878787878787538 0 -2553 0.2214519097305127 0.06565656565661636 0 -2554 0.2127041783791215 0.07070707070711678 0 -2555 0.2127041783791166 0.08080808080815817 0 -2556 0.2039564470277424 0.07575757575762304 0 -2557 0.2039564470260178 0.934343434343496 0 -2558 0.2127041783773692 0.9292929292930159 0 -2559 0.9300181491883482 0.8787878787892653 0 -2560 0.9300181491883465 0.8888888888902921 0 -2561 0.9300181491883587 0.8686868686882622 0 -2562 0.9300181491886695 0.6767676767690971 0 -2563 0.930018149188649 0.6868686868700585 0 -2564 0.5451179697298156 0.6060606060613069 0 -2565 0.5363702383784766 0.6010101010107838 0 -2566 0.5363702383785092 0.5909090909097938 0 -2567 0.2476951037833012 0.757575757575885 0 -2568 0.247695103783326 0.7474747474748769 0 -2569 0.2476951037832786 0.7676767676768923 0 -2570 0.3964065367561014 0.762626262626948 0 -2571 0.3001814918913419 0.7878787878790293 0 -2572 0.4051542681092108 0.1515151515158027 0 -2573 0.4139019994605659 0.1565656565663322 0 -2574 0.4051542681091879 0.1616161616168214 0 -2575 0.4139019994605406 0.1666666666673514 0 -2576 0.4051542681091632 0.1717171717178395 0 -2577 0.4139019994605157 0.1767676767683694 0 -2578 0.405154268109139 0.1818181818188571 0 -2579 0.4139019994604909 0.186868686869387 0 -2580 0.4051542681091146 0.1919191919198747 0 -2581 0.4226497308118666 0.1818181818188997 0 -2582 0.4226497308118418 0.1919191919199156 0 -2583 0.4313974621632156 0.1868686868694296 0 -2584 0.4313974621631909 0.1969696969704429 0 -2585 0.440145193514563 0.1919191919199581 0 -2586 0.2039564470266216 0.6919191919192743 0 -2587 0.3964065367572627 0.3181818181825879 0 -2588 0.3351724172977661 0.313131313131902 0 -2589 0.4401451935132298 0.6666666666673254 0 -2590 0.8687840297293172 0.7323232323243255 0 -2591 0.8687840297293016 0.742424242425298 0 -2592 0.8600362983779816 0.7373737373747982 0 -2593 0.8600362983779672 0.7474747474757736 0 -2594 0.851288567026645 0.7424242424252712 0 -2595 0.1252268648651536 0.3434343434343738 0 -2596 0.1864609843241571 0.5808080808081226 0 -2597 0.177713252972811 0.5757575757575973 0 -2598 0.1777132529727871 0.5858585858586078 0 -2599 0.2739382978380123 0.4595959595962531 0 -2600 0.2826860291893775 0.4545454545457725 0 -2601 0.07274047675619133 0.6565656565654083 0 -2602 0.4488929248649336 0.5101010101018405 0 -2603 0.8862794924333003 0.2171717171734247 0 -2604 0.440145193513644 0.3939393939405095 0 -2605 0.4401451935136619 0.3838383838395047 0 -2606 0.4488929248650242 0.3787878787890169 0 -2607 0.4401451935136793 0.3737373737384991 0 -2608 0.4488929248650422 0.3686868686880117 0 -2609 0.4401451935136969 0.3636363636374932 0 -2610 0.4488929248650599 0.3585858585870058 0 -2611 0.7900544475676269 0.5656565656579213 0 -2612 0.9300181491898832 0.3535353535373466 0 -2613 0.9300181491898617 0.3636363636383779 0 -2614 0.9212704178383994 0.368686868688855 0 -2615 0.9300181491898348 0.3737373737394069 0 -2616 0.9212704178384126 0.3787878787898895 0 -2617 0.930018149189816 0.3838383838404368 0 -2618 0.9300181491902906 0.1010101010119083 0 -2619 0.9300181491902726 0.1111111111129214 0 -2620 0.0814882081087875 0.06565656565649261 0 -2621 0.781306716215186 0.9343434343445171 0 -2622 0.3439201486498485 0.06565656565688333 0 -2623 0.3526678800012191 0.07070707070742213 0 -2624 0.6763339400013885 0.06565656565820742 0 -2625 0.6675862086500649 0.07070707070866661 0 -2626 0.7638112535124871 0.9343434343444726 0 -2627 0.7550635221611717 0.9292929292939756 0 -2628 0.4139019994607873 0.06565656565714012 0 -2629 0.2039564470277526 0.06565656565658202 0 -2630 0.1952087156763682 0.07070707070708587 0 -2631 0.1952087156763819 0.08080808080813939 0 -2632 0.09898367080981603 0.9343434343433612 0 -2633 0.326424685947086 0.06565656565684512 0 -2634 0.396406536755692 0.9343434343439022 0 -2635 0.3876588054043654 0.929292929293384 0 -2636 0.4663883875664408 0.9343434343441026 0 -2637 0.4838838502691341 0.9343434343441488 0 -2638 0.4926315816204943 0.9292929292936749 0 -2639 0.4488929248662668 0.06565656565724381 0 -2640 0.4576406562176175 0.07070707070777746 0 -2641 0.8162976416227453 0.0656565656582508 0 -2642 0.8075499102714082 0.07070707070872338 0 -2643 0.133974596217011 0.06565656565658856 0 -2644 0.8512885670266293 0.7525252525262489 0 -2645 0.8425408356753068 0.7474747474757447 0 -2646 0.5888566264857683 0.7929292929304579 0 -2647 0.59760435783711 0.7979797979809841 0 -2648 0.5976043578370831 0.8080808080819917 0 -2649 0.6063520891884516 0.8030303030315117 0 -2650 0.6938294027035314 0.1868686868698647 0 -2651 0.7025771340548854 0.1818181818193888 0 -2652 0.7025771340549101 0.1717171717183954 0 -2653 0.7113248654062374 0.1767676767689137 0 -2654 0.7813067162160077 0.7020202020212505 0 -2655 0.7725589848646791 0.6969696969707366 0 -2656 0.5451179697290628 0.7676767676778279 0 -2657 0.6938294027039207 0.09595959596110563 0 -2658 0.9212704178384049 0.3888888888909318 0 -2659 0.9300181491897975 0.393939393941467 0 -2660 0.7550635221626943 0.3131313131328178 0 -2661 0.7463157908113596 0.308080808082299 0 -2662 0.08148820810721319 0.7929292929292894 0 -2663 0.07274047675582981 0.797979797979778 0 -2664 0.8162976416224029 0.196969696971269 0 -2665 0.2651905664865493 0.5050505050507514 0 -2666 0.265190566486647 0.4646464646467339 0 -2667 0.9125226864874938 0.1818181818198802 0 -2668 0.9212704178388785 0.1767676767693822 0 -2669 0.9300181491902452 0.1818181818199145 0 -2670 0.9300181491902657 0.1717171717188832 0 -2671 0.9212704178388983 0.1666666666683517 0 -2672 0.4751361189178533 0.9090909090916388 0 -2673 0.7725589848647008 0.6868686868697484 0 -2674 0.7638112535133499 0.6919191919202246 0 -2675 0.9037749551359001 0.2878787878806318 0 -2676 0.912522686487264 0.292929292931163 0 -2677 0.6063520891884251 0.8131313131325194 0 -2678 0.6150998205397937 0.8080808080820391 0 -2679 0.1077314021624263 0.3535353535353229 0 -2680 0.1164791335137601 0.3585858585858404 0 -2681 0.2651905664869205 0.3333333333336911 0 -2682 0.2739382978382634 0.3383838383842138 0 -2683 0.8775317610816595 0.3434343434362091 0 -2684 0.8687840297303255 0.3383838383856844 0 -2685 0.763811253513606 0.560606060607367 0 -2686 0.7550635221622507 0.5656565656578475 0 -2687 0.4401451935145382 0.2020202020209695 0 -2688 0.448892924865909 0.1969696969704848 0 -2689 0.4313974621631671 0.2070707070714545 0 -2690 0.4488929248659339 0.1868686868694756 0 -2691 0.4576406562172785 0.1919191919200016 0 -2692 0.7463157908100485 0.8636363636378072 0 -2693 0.7463157908100605 0.853535353536815 0 -2694 0.2301996410819048 0.0606060606061157 0 -2695 0.1952087156763821 0.06060606060604609 0 -2696 0.06399274540603761 0.07575757575747873 0 -2697 0.06399274540605708 0.0656565656564588 0 -2698 0.06399274540591129 0.1666666666665656 0 -2699 0.06399274540589033 0.1767676767675626 0 -2700 0.07274047675722571 0.1818181818180801 0 -2701 0.06399274540586869 0.186868686868559 0 -2702 0.07274047675720327 0.1919191919190764 0 -2703 0.06399274540584546 0.1969696969695548 0 -2704 0.07274047675718096 0.2020202020200719 0 -2705 0.06399274540582357 0.2070707070705501 0 -2706 0.07274047675715872 0.2121212121210669 0 -2707 0.06399274540580308 0.2171717171715448 0 -2708 0.07274047675713656 0.2222222222220615 0 -2709 0.08148820810849267 0.2171717171715836 0 -2710 0.08148820810847054 0.2272727272725793 0 -2711 0.09023593945982746 0.2222222222221005 0 -2712 0.07274047675711387 0.2323232323230565 0 -2713 0.09023593945980529 0.2323232323230973 0 -2714 0.09898367081116313 0.227272727272618 0 -2715 0.09898367081114084 0.2373737373736155 0 -2716 0.1077314021624995 0.2323232323231359 0 -2717 0.063992745405932 0.1565656565655681 0 -2718 0.06399274540579111 0.3181818181817403 0 -2719 0.0639927454057686 0.3282828282827313 0 -2720 0.06399274540465752 0.7222222222220651 0 -2721 0.06399274540458653 0.7525252525251482 0 -2722 0.06399274540450467 0.7828282828282207 0 -2723 0.0639927454048051 0.6616161616158998 0 -2724 0.06399274540483092 0.651515151514871 0 -2725 0.4576406562176489 0.06060606060675434 0 -2726 0.4663883875689943 0.06565656565729218 0 -2727 0.1252268648656459 0.0606060606060547 0 -2728 0.387658805404339 0.9393939393943734 0 -2729 0.3789110740530122 0.934343434343855 0 -2730 0.3789110740530394 0.9242424242428657 0 -2731 0.3701633427016852 0.9292929292933363 0 -2732 0.3701633427017135 0.9191919191923466 0 -2733 0.3614156113503593 0.924242424242817 0 -2734 0.361415611350331 0.9343434343438067 0 -2735 0.3526678799990013 0.9292929292932803 0 -2736 0.3526678799989767 0.939393939394276 0 -2737 0.3439201486476468 0.9343434343437502 0 -2738 0.0902359394584536 0.9393939393938504 0 -2739 0.08148820810710757 0.9343434343433324 0 -2740 0.9212704178383851 0.3989898989919609 0 -2741 0.9300181491897713 0.4040404040424932 0 -2742 0.92127041783839 0.409090909092985 0 -2743 0.9300181491897496 0.4141414141435172 0 -2744 0.09023593945882193 0.7070707070705927 0 -2745 0.1602177902694718 0.8383838383839166 0 -2746 0.4313974621612135 0.8737373737380306 0 -2747 0.3964065367577626 0.1868686868693448 0 -2748 0.3964065367577384 0.1969696969703627 0 -2749 0.3876588054063864 0.1919191919198339 0 -2750 0.3876588054063621 0.202020202020851 0 -2751 0.3789110740550097 0.1969696969703222 0 -2752 0.3789110740549856 0.2070707070713393 0 -2753 0.3701633427036333 0.2020202020208108 0 -2754 0.3701633427036088 0.2121212121218274 0 -2755 0.3614156113522566 0.2070707070712988 0 -2756 0.3876588054063388 0.2121212121218677 0 -2757 0.3614156113522318 0.2171717171723154 0 -2758 0.352667880000879 0.2121212121217853 0 -2759 0.3526678800008571 0.2222222222228029 0 -2760 0.3439201486495025 0.2171717171722732 0 -2761 0.3614156113522125 0.227272727273332 0 -2762 0.798802178918958 0.5707070707084358 0 -2763 0.501379312972259 0.7828282828292233 0 -2764 0.912522686487284 0.2828282828301334 0 -2765 0.9212704178386496 0.2878787878806671 0 -2766 0.9212704178386699 0.2777777777796351 0 -2767 0.930018149190037 0.28282828283017 0 -2768 0.9300181491900575 0.2727272727291363 0 -2769 0.9300181491900107 0.2929292929311935 0 -2770 0.9300181491902852 0.161616161617852 0 -2771 0.9212704178388965 0.1161616161633961 0 -2772 0.7550635221614033 0.8585858585873337 0 -2773 0.7550635221614231 0.8484848484863302 0 -2774 0.7463157908100788 0.8434343434358126 0 -2775 0.7638112535127664 0.8535353535368467 0 -2776 0.8075499102714291 0.06060606060774944 0 -2777 0.7988021789200968 0.06565656565821712 0 -2778 0.685081671352789 0.06060606060765893 0 -2779 0.6675862086500789 0.06060606060771239 0 -2780 0.6588384772987628 0.06565656565816091 0 -2781 0.3526678800012428 0.06060606060638386 0 -2782 0.06399274540555183 0.4090909090906285 0 -2783 0.06399274540557716 0.3989898989896364 0 -2784 0.06399274540552614 0.4191919191916209 0 -2785 0.06399274540472953 0.6919191919189831 0 -2786 0.4926315816204674 0.9393939393946718 0 -2787 0.50137931297183 0.9343434343441959 0 -2788 0.21270417837735 0.9393939393940072 0 -2789 0.2214519097287007 0.9343434343435272 0 -2790 0.2214519097287201 0.9242424242425363 0 -2791 0.2301996410800518 0.9292929292930481 0 -2792 0.2301996410800708 0.9191919191920567 0 -2793 0.2389473724314034 0.924242424242569 0 -2794 0.2389473724313837 0.9343434343435598 0 -2795 0.2476951037827358 0.9292929292930808 0 -2796 0.2476951037827558 0.919191919192089 0 -2797 0.2564428351340866 0.9242424242426025 0 -2798 0.2564428351340685 0.9343434343435923 0 -2799 0.2651905664854181 0.9292929292931142 0 -2800 0.2651905664854366 0.9191919191921227 0 -2801 0.2739382978367685 0.924242424242636 0 -2802 0.2739382978367492 0.9343434343436265 0 -2803 0.2826860291880986 0.9292929292931488 0 -2804 0.2826860291880791 0.9393939393941376 0 -2805 0.7550635221611164 0.9393939393949733 0 -2806 0.7463157908097757 0.9343434343444653 0 -2807 0.9387658805399732 0.681818181819597 0 -2808 0.9387658805399531 0.6919191919205544 0 -2809 0.9387658805403638 0.5404040404058112 0 -2810 0.9387658805403447 0.5505050505067888 0 -2811 0.4401451935137144 0.3535353535364875 0 -2812 0.4488929248650776 0.3484848484859999 0 -2813 0.4576406562164229 0.3535353535365185 0 -2814 0.4576406562164405 0.3434343434355125 0 -2815 0.4663883875677857 0.3484848484860313 0 -2816 0.4663883875678035 0.3383838383850256 0 -2817 0.4751361189191483 0.343434343435544 0 -2818 0.4751361189191664 0.3333333333345392 0 -2819 0.4838838502705106 0.3383838383850568 0 -2820 0.4838838502705285 0.3282828282840528 0 -2821 0.4926315816218722 0.3333333333345702 0 -2822 0.4926315816218902 0.3232323232335667 0 -2823 0.5013793129732333 0.3282828282840835 0 -2824 0.501379312973251 0.3181818181830807 0 -2825 0.5101270443245939 0.3232323232335968 0 -2826 0.5101270443246113 0.3131313131325947 0 -2827 0.518874775675958 0.3181818181831018 0 -2828 0.5188747756759705 0.3080808080821091 0 -2829 0.5276225070273171 0.3131313131326152 0 -2830 0.1077314021624771 0.242424242424134 0 -2831 0.1164791335138365 0.2373737373736543 0 -2832 0.1164791335138585 0.2272727272726549 0 -2833 0.1252268648651972 0.2323232323231742 0 -2834 0.7463157908113417 0.318181818183304 0 -2835 0.7375680594599981 0.3131313131327863 0 -2836 0.09898367081111994 0.2474747474746103 0 -2837 0.9125226864860895 0.6464646464661694 0 -2838 0.9212704178374178 0.6414141414157027 0 -2839 0.9300181491887266 0.6464646464662004 0 -2840 0.9300181491887446 0.636363636365237 0 -2841 0.9037749551347604 0.6515151515166387 0 -2842 0.9387658805400506 0.641414141415736 0 -2843 0.9387658805400704 0.6313131313147726 0 -2844 0.160217790270559 0.3838383838384907 0 -2845 0.1689655216219307 0.3787878787880113 0 -2846 0.1514700589191489 0.3888888888889571 0 -2847 0.2389473724319571 0.7525252525253605 0 -2848 0.2389473724319822 0.7424242424243516 0 -2849 0.4576406562173036 0.1818181818189945 0 -2850 0.4663883875686458 0.1868686868695202 0 -2851 0.9387658805396987 0.8838383838395972 0 -2852 0.9387658805397123 0.8939393939407007 0 -2853 0.2214519097301575 0.3282828282830875 0 -2854 0.2127041783787919 0.3333333333335698 0 -2855 0.2301996410815235 0.3232323232326049 0 -2856 0.2127041783787679 0.3434343434345745 0 -2857 0.203956447027427 0.3383838383840542 0 -2858 0.3614156113503876 0.9141414141418268 0 -2859 0.3614156113511786 0.6212121212125488 0 -2860 0.3526678799998139 0.6262626262630313 0 -2861 0.28268602918812 0.9191919191921587 0 -2862 0.2914337605394499 0.9242424242426721 0 -2863 0.7113248654062612 0.166666666667922 0 -2864 0.7200725967575889 0.1717171717184393 0 -2865 0.3439201486494882 0.2272727272732894 0 -2866 0.3351724172981296 0.2222222222227611 0 -2867 0.3351724172981501 0.2121212121217432 0 -2868 0.326424685946773 0.2171717171722313 0 -2869 0.326424685946797 0.207070707071213 0 -2870 0.3176769545954194 0.2121212121217012 0 -2871 0.1689655216214404 0.5808080808080816 0 -2872 0.1689655216214165 0.590909090909093 0 -2873 0.4488929248641519 0.7828282828290839 0 -2874 0.08148820810718711 0.8030303030303163 0 -2875 0.07274047675580245 0.8080808080808016 0 -2876 0.09023593945857217 0.7979797979798333 0 -2877 0.07274047675693181 0.3939393939391616 0 -2878 0.06399274540560194 0.3888888888886449 0 -2879 0.2651905664866718 0.4545454545457296 0 -2880 0.7638112535133709 0.6818181818192345 0 -2881 0.7550635221620188 0.6868686868697123 0 -2882 0.5013793129718546 0.9242424242431989 0 -2883 0.5101270443231932 0.9292929292937172 0 -2884 0.5101270443231658 0.9393939393947193 0 -2885 0.5188747756745316 0.9343434343442403 0 -2886 0.5188747756745572 0.9242424242432364 0 -2887 0.5276225070258973 0.9292929292937604 0 -2888 0.5276225070258728 0.939393939394765 0 -2889 0.5363702383772398 0.9343434343442838 0 -2890 0.553865701080324 0.8030303030313692 0 -2891 0.1252268648652189 0.2222222222221729 0 -2892 0.1339745962165591 0.2272727272726932 0 -2893 0.6150998205397683 0.818181818183046 0 -2894 0.6238475518911368 0.8131313131325649 0 -2895 0.7550635221622705 0.5555555555568525 0 -2896 0.7463157908109148 0.5606060606073325 0 -2897 0.3876588054047387 0.7676767676774275 0 -2898 0.3876588054047148 0.7777777777784289 0 -2899 0.1339745962169663 0.08585858585864703 0 -2900 0.4313974621623339 0.3686868686879821 0 -2901 0.7988021789189804 0.5606060606074439 0 -2902 0.807549910270312 0.5656565656579589 0 -2903 0.9212704178383709 0.4191919191940067 0 -2904 0.9300181491897259 0.424242424244538 0 -2905 0.4751361189189505 0.4545454545465961 0 -2906 0.4838838502703118 0.4494949494961095 0 -2907 0.4663883875675888 0.4595959595970828 0 -2908 0.9387658805411048 0.4191919191940501 0 -2909 0.9387658805410799 0.42929292929507 0 -2910 0.9387658805416338 0.1767676767694166 0 -2911 0.9387658805412067 0.378787878789946 0 -2912 0.9387658805414265 0.2777777777796706 0 -2913 0.9387658805414456 0.2676767676786349 0 -2914 0.7988021789201165 0.055555555557249 0 -2915 0.7900544475687872 0.0606060606077147 0 -2916 0.5363702383784431 0.6111111111117862 0 -2917 0.5451179697297889 0.6161616161623099 0 -2918 0.527622507027058 0.6060606060613156 0 -2919 0.7025771340548629 0.1919191919203806 0 -2920 0.5013793129732699 0.3080808080820781 0 -2921 0.8337931043253456 0.09595959596124268 0 -2922 0.3876588054047642 0.7575757575764261 0 -2923 0.3964065367561275 0.7525252525259467 0 -2924 0.7638112535141036 0.2878787878803126 0 -2925 0.8075499102708789 0.2929292929308956 0 -2926 0.8075499102708337 0.3030303030319308 0 -2927 0.7725589848653409 0.3131313131328975 0 -2928 0.7725589848647947 0.6363636363648204 0 -2929 0.2564428351346956 0.742424242424391 0 -2930 0.4051542681093969 0.07070707070763277 0 -2931 0.4051542681094232 0.06060606060660117 0 -2932 0.4139019994608155 0.05555555555610782 0 -2933 0.1427223275683364 0.08080808080815216 0 -2934 0.7550635221614137 0.8686868686882898 0 -2935 0.7288203281073222 0.8838383838397241 0 -2936 0.93876588054166 0.106060606062431 0 -2937 0.9387658805416658 0.09595959596141147 0 -2938 0.9387658805416466 0.1161616161634377 0 -2939 0.9037749551361107 0.1868686868703775 0 -2940 0.06399274540602218 0.08585858585849768 0 -2941 0.8512885670271048 0.4393939393956919 0 -2942 0.3439201486484714 0.6212121212125087 0 -2943 0.3439201486484488 0.6313131313135142 0 -2944 0.3351724172971062 0.6262626262629912 0 -2945 0.3351724172970834 0.6363636363639973 0 -2946 0.3264246859457405 0.6313131313134741 0 -2947 0.3264246859457178 0.6414141414144811 0 -2948 0.3176769545943743 0.6363636363639579 0 -2949 0.440145193513626 0.4040404040415144 0 -2950 0.4313974621622818 0.3989898989909972 0 -2951 0.4313974621622635 0.4090909090920016 0 -2952 0.4488929248648303 0.5606060606067982 0 -2953 0.1689655216214649 0.5707070707070704 0 -2954 0.1952087156753138 0.6666666666667357 0 -2955 0.6325952832442189 0.1616161616172538 0 -2956 0.6325952832441964 0.1717171717182417 0 -2957 0.6238475518928687 0.1666666666677285 0 -2958 0.6238475518928467 0.1767676767687171 0 -2959 0.6150998205415179 0.1717171717182039 0 -2960 0.6150998205414961 0.1818181818191934 0 -2961 0.6063520891901666 0.1767676767686795 0 -2962 0.6238475518928248 0.1868686868697043 0 -2963 0.6063520891901447 0.1868686868696697 0 -2964 0.5976043578388139 0.1818181818191558 0 -2965 0.5976043578387922 0.1919191919201468 0 -2966 0.5888566264874611 0.1868686868696323 0 -2967 0.3701633427017429 0.9090909090913561 0 -2968 0.8425408356765153 0.1919191919208144 0 -2969 0.9300181491883301 0.8989898989912929 0 -2970 0.9387658805396817 0.9040404040418133 0 -2971 0.9300181491883082 0.9090909090923195 0 -2972 0.9387658805396646 0.914141414142845 0 -2973 0.9300181491882875 0.919191919193342 0 -2974 0.9387658805396474 0.9242424242438706 0 -2975 0.9300181491882665 0.9292929292943654 0 -2976 0.9387658805396278 0.9343434343448968 0 -2977 0.9300181491882442 0.9393939393953913 0 -2978 0.9212704178368841 0.9343434343448576 0 -2979 0.9387658805396065 0.9444444444459239 0 -2980 0.05524501405457523 0.1616161616160488 0 -2981 0.0552450140545958 0.1515151515150525 0 -2982 0.05524501405446857 0.2121212121210291 0 -2983 0.7463157908097429 0.944444444445478 0 -2984 0.7375680594583884 0.9393939393949459 0 -2985 0.5363702383772161 0.9444444444452906 0 -2986 0.5451179697285856 0.9393939393948075 0 -2987 0.08148820810709106 0.9444444444443394 0 -2988 0.07274047675574331 0.9393939393938214 0 -2989 0.343920148647624 0.9444444444447461 0 -2990 0.4663883875690291 0.05555555555626521 0 -2991 0.4751361189203684 0.06060606060680873 0 -2992 0.8162976416227605 0.05555555555727933 0 -2993 0.2039564470259994 0.9444444444444861 0 -2994 0.09898367080979907 0.9444444444443669 0 -2995 0.1077314021611593 0.9393939393938791 0 -2996 0.92127041783686 0.944444444445884 0 -2997 0.9125226864855009 0.9393939393953493 0 -2998 0.6588384772987714 0.05555555555721539 0 -2999 0.6500907459474526 0.06060606060767146 0 -3000 0.3964065367556649 0.9444444444448911 0 -3001 0.1339745962170265 0.05555555555556805 0 -3002 0.4488929248663001 0.05555555555621892 0 -3003 0.7375680594583627 0.9494949494959692 0 -3004 0.7288203281070057 0.9444444444454354 0 -3005 0.9125226864857745 0.8181818181826261 0 -3006 0.9037749551344556 0.8131313131321253 0 -3007 0.9212704178370951 0.8232323232331258 0 -3008 0.9300181491884264 0.8181818181826496 0 -3009 0.842540835675289 0.7575757575767232 0 -3010 0.833793104323967 0.7525252525262184 0 -3011 0.8512885670266108 0.7626262626272239 0 -3012 0.8337931043239859 0.7424242424252382 0 -3013 0.8250453729726436 0.7474747474757121 0 -3014 0.9475136118912744 0.6868686868700938 0 -3015 0.9475136118912528 0.6969696969710502 0 -3016 0.5888566264874389 0.1969696969706238 0 -3017 0.5801088951361077 0.1919191919201082 0 -3018 0.5801088951361302 0.1818181818191162 0 -3019 0.5713611637847771 0.186868686869592 0 -3020 0.5713611637847539 0.1969696969705853 0 -3021 0.5626134324334228 0.1919191919200688 0 -3022 0.5626134324334455 0.181818181819075 0 -3023 0.5538657010820913 0.1868686868695518 0 -3024 0.553865701082068 0.1969696969705464 0 -3025 0.5451179697307358 0.1919191919200294 0 -3026 0.5451179697307584 0.1818181818190352 0 -3027 0.5363702383794027 0.186868686869513 0 -3028 0.4663883875678215 0.3282828282840199 0 -3029 0.53637023837938 0.1969696969705076 0 -3030 0.5276225070280461 0.1919191919199906 0 -3031 0.5276225070280687 0.181818181818995 0 -3032 0.5188747756767114 0.1868686868694731 0 -3033 0.7550635221614407 0.8383838383853267 0 -3034 0.7463157908100964 0.8333333333348105 0 -3035 0.5976043578371366 0.787878787879977 0 -3036 0.518874775676689 0.1969696969704701 0 -3037 0.7725589848646569 0.7070707070717251 0 -3038 0.5276225070273299 0.303030303031623 0 -3039 0.5363702383786655 0.3080808080821289 0 -3040 0.6938294027035068 0.1969696969708574 0 -3041 0.623847551891162 0.8030303030315582 0 -3042 0.6325952832425048 0.8080808080820835 0 -3043 0.6325952832424802 0.8181818181830902 0 -3044 0.641343014593848 0.8131313131326072 0 -3045 0.6413430145938712 0.8030303030316017 0 -3046 0.6500907459452142 0.8080808080821246 0 -3047 0.6500907459451924 0.8181818181831285 0 -3048 0.6588384772965571 0.8131313131326449 0 -3049 0.6588384772965811 0.8030303030316427 0 -3050 0.6675862086479221 0.8080808080821639 0 -3051 0.1252268648651978 0.242424242424198 0 -3052 0.09023593945987235 0.2929292929293168 0 -3053 0.08148820810854039 0.2878787878788016 0 -3054 0.6675862086499822 0.08080808080959914 0 -3055 0.8687840297303048 0.3484848484866979 0 -3056 0.8600362983789547 0.3434343434361768 0 -3057 0.8775317610815843 0.353535353537241 0 -3058 0.9125226864869299 0.383838383840358 0 -3059 0.7988021789200588 0.07575757575921044 0 -3060 0.9037749551347767 0.6414141414156708 0 -3061 0.8950272237834448 0.6464646464661418 0 -3062 0.7375680594599802 0.3232323232337903 0 -3063 0.7288203281086353 0.3181818181832727 0 -3064 0.1602177902705834 0.3737373737374907 0 -3065 0.3351724172962992 0.9393939393942363 0 -3066 0.3351724172963021 0.9292929292932508 0 -3067 0.3264246859467563 0.2272727272732481 0 -3068 0.4663883875686714 0.176767676768514 0 -3069 0.440145193514514 0.2121212121219807 0 -3070 0.4313974621631437 0.2171717171724658 0 -3071 0.4751361189203377 0.07070707070781984 0 -3072 0.483883850271709 0.06565656565733757 0 -3073 0.4838838502717442 0.05555555555632235 0 -3074 0.4926315816230832 0.06060606060685032 0 -3075 0.4926315816230464 0.07070707070786136 0 -3076 0.5013793129744146 0.06565656565738121 0 -3077 0.5013793129744547 0.055555555556353 0 -3078 0.5101270443257789 0.06060606060689679 0 -3079 0.5101270443257451 0.07070707070790493 0 -3080 0.5188747756771046 0.06565656565743029 0 -3081 0.5188747756771395 0.05555555555641261 0 -3082 0.5276225070284601 0.06060606060695813 0 -3083 0.5276225070284295 0.07070707070795283 0 -3084 0.536370238379783 0.06565656565748509 0 -3085 0.5363702383798156 0.05555555555649835 0 -3086 0.5451179697311335 0.06060606060702121 0 -3087 0.5451179697311028 0.07070707070800103 0 -3088 0.5538657010824499 0.06565656565753603 0 -3089 0.5538657010824853 0.05555555555655895 0 -3090 0.5626134324337969 0.06060606060707374 0 -3091 0.5626134324337644 0.07070707070805013 0 -3092 0.5713611637851099 0.06565656565758676 0 -3093 0.5713611637851438 0.05555555555661248 0 -3094 0.5801088951364524 0.06060606060712486 0 -3095 0.5801088951364226 0.07070707070809808 0 -3096 0.5888566264877627 0.06565656565763583 0 -3097 0.5888566264877924 0.05555555555666519 0 -3098 0.5976043578391002 0.06060606060717503 0 -3099 0.5976043578390728 0.07070707070814473 0 -3100 0.3176769545954424 0.2020202020206848 0 -3101 0.3089292232440657 0.2070707070711709 0 -3102 0.9300181491887645 0.6262626262642745 0 -3103 0.9387658805400907 0.621212121213811 0 -3104 0.08148820810716059 0.8131313131313433 0 -3105 0.07274047675577405 0.8181818181818252 0 -3106 0.06399274540441832 0.8131313131312886 0 -3107 0.06399274540439043 0.8232323232323123 0 -3108 0.07274047675574594 0.8282828282828487 0 -3109 0.06399274540436302 0.8333333333333366 0 -3110 0.07274047675572116 0.8383838383838733 0 -3111 0.06399274540433741 0.8434343434343615 0 -3112 0.05524501405303391 0.8181818181817755 0 -3113 0.291433760539472 0.9141414141416817 0 -3114 0.3439201486484265 0.6414141414145194 0 -3115 0.7288203281086535 0.3080808080822654 0 -3116 0.7200725967572911 0.3131313131327548 0 -3117 0.7200725967572732 0.3232323232337596 0 -3118 0.7113248654059289 0.318181818183243 0 -3119 0.7113248654059466 0.3080808080822377 0 -3120 0.7025771340545846 0.3131313131327255 0 -3121 0.7025771340546001 0.3030303030317165 0 -3122 0.6938294027032383 0.3080808080822037 0 -3123 0.6938294027031883 0.3181818181832486 0 -3124 0.6850816713518572 0.3131313131327241 0 -3125 0.68508167135189 0.3030303030316797 0 -3126 0.6763339400005245 0.3080808080821847 0 -3127 0.6763339400004428 0.3181818181832605 0 -3128 0.6675862086491414 0.3131313131327042 0 -3129 0.6675862086491846 0.303030303031648 0 -3130 0.6588384772978212 0.3080808080821512 0 -3131 0.6588384772977619 0.318181818183215 0 -3132 0.6500907459464677 0.3131313131326429 0 -3133 0.650090745946484 0.3030303030316091 0 -3134 0.6413430145951232 0.3080808080821156 0 -3135 0.6413430145950627 0.3181818181831758 0 -3136 0.6325952832437427 0.3131313131326434 0 -3137 0.6325952832437798 0.3030303030315778 0 -3138 0.6238475518924249 0.3080808080820829 0 -3139 0.6238475518923541 0.3181818181831437 0 -3140 0.6150998205410627 0.313131313132579 0 -3141 0.6150998205410765 0.3030303030315642 0 -3142 0.6063520891897228 0.3080808080820777 0 -3143 0.6063520891896776 0.3181818181830793 0 -3144 0.5976043578383614 0.3131313131325555 0 -3145 0.5976043578383528 0.3030303030315872 0 -3146 0.5888566264870204 0.3080808080820588 0 -3147 0.5888566264870116 0.3181818181830399 0 -3148 0.2564428351353066 0.4595959595962101 0 -3149 0.5363702383787166 0.3181818181830921 0 -3150 0.1689655216219542 0.368686868687011 0 -3151 0.2476951037837203 0.5555555555557382 0 -3152 0.07274047675695587 0.3838383838381701 0 -3153 0.06399274540562654 0.3787878787876535 0 -3154 0.1777132529732913 0.3737373737375264 0 -3155 0.2301996410806125 0.747474747474834 0 -3156 0.2301996410806371 0.7373737373738248 0 -3157 0.1602177902700937 0.5757575757575546 0 -3158 0.1602177902701179 0.5656565656565431 0 -3159 0.4226497308109193 0.4040404040414843 0 -3160 0.4226497308109013 0.4141414141424886 0 -3161 0.5188747756767341 0.1767676767684765 0 -3162 0.7463157908108965 0.5707070707083264 0 -3163 0.7375680594595587 0.5656565656578125 0 -3164 0.7375680594595799 0.5555555555568139 0 -3165 0.7288203281082231 0.560606060607295 0 -3166 0.7288203281082019 0.5707070707082935 0 -3167 0.7200725967568655 0.565656565657777 0 -3168 0.7200725967568864 0.5555555555567782 0 -3169 0.7113248654055279 0.5606060606072618 0 -3170 0.5276225070259219 0.9191919191927551 0 -3171 0.2564428351353316 0.4494949494952057 0 -3172 0.7550635221620409 0.6767676767687221 0 -3173 0.7463157908106868 0.6818181818191981 0 -3174 0.7463157908106658 0.69191919192019 0 -3175 0.7375680594593335 0.6868686868696749 0 -3176 0.343920148648195 0.7424242424246781 0 -3177 0.1077314021627829 0.121212121212145 0 -3178 0.3789110740533759 0.7727272727279064 0 -3179 0.3789110740533512 0.7828282828289073 0 -3180 0.8512885670277132 0.2777777777794948 0 -3181 0.6675862086478982 0.8181818181831674 0 -3182 0.6763339399992644 0.8131313131326858 0 -3183 0.6763339399992874 0.8030303030316828 0 -3184 0.6850816713506291 0.8080808080822047 0 -3185 0.6850816713506058 0.8181818181832085 0 -3186 0.6938294027019705 0.8131313131327264 0 -3187 0.6938294027019929 0.8030303030317228 0 -3188 0.7025771340533338 0.8080808080822433 0 -3189 0.3351724172983868 0.0909090909094728 0 -3190 0.7200725967568447 0.5757575757587744 0 -3191 0.221451909730181 0.3181818181820816 0 -3192 0.230199641081547 0.3131313131315985 0 -3193 0.6063520891883994 0.8232323232335277 0 -3194 0.133974596216581 0.2171717171716906 0 -3195 0.1427223275679218 0.2222222222222112 0 -3196 0.1427223275683261 0.0909090909091801 0 -3197 0.2739382978382888 0.3282828282832077 0 -3198 0.2826860291896333 0.3333333333337327 0 -3199 0.2826860291896092 0.3434343434347391 0 -3200 0.291433760540978 0.3383838383842581 0 -3201 0.291433760540955 0.3484848484852665 0 -3202 0.3001814918923225 0.3434343434347837 0 -3203 0.3001814918922986 0.3535353535357902 0 -3204 0.8075499102703354 0.5555555555569607 0 -3205 0.8162976416216661 0.5606060606074793 0 -3206 0.7638112535136258 0.5505050505063707 0 -3207 0.7988021789190048 0.5505050505064392 0 -3208 0.1864609843249926 0.06565656565654758 0 -3209 0.1864609843250109 0.05555555555550942 0 -3210 0.4838838502702945 0.4595959595971132 0 -3211 0.492631581621655 0.4545454545466265 0 -3212 0.7638112535126024 0.9141414141424681 0 -3213 0.7375680594584577 0.9292929292939459 0 -3214 0.9475136118924592 0.4242424242445824 0 -3215 0.9475136118924249 0.4343434343455879 0 -3216 0.9387658805410095 0.4393939393960738 0 -3217 0.947513611892814 0.2727272727291689 0 -3218 0.9475136118928346 0.2626262626281315 0 -3219 0.05524501405467779 0.07070707070695002 0 -3220 0.05524501405469829 0.06060606060593085 0 -3221 0.05524501405424805 0.3939393939391195 0 -3222 0.05524501405443976 0.3232323232322161 0 -3223 0.05524501405446212 0.3131313131312267 0 -3224 0.05524501405441661 0.3333333333332048 0 -3225 0.05524501405344379 0.656565656565363 0 -3226 0.05524501405347033 0.6464646464643334 0 -3227 0.1252268648656583 0.05050505050503392 0 -3228 0.387658805404313 0.949494949495362 0 -3229 0.6500907459474647 0.05050505050672078 0 -3230 0.9125226864854764 0.949494949496375 0 -3231 0.9037749551341153 0.9444444444458404 0 -3232 0.1077314021611432 0.9494949494948816 0 -3233 0.1164791335125007 0.9444444444443951 0 -3234 0.7550635221610665 0.9494949494959815 0 -3235 0.7900544475688074 0.05050505050675058 0 -3236 0.7813067162174787 0.05555555555721464 0 -3237 0.4051542681094494 0.05050505050556774 0 -3238 0.1952087156764017 0.05050505050500792 0 -3239 0.3526678799989524 0.9494949494952672 0 -3240 0.545117969728561 0.9494949494958171 0 -3241 0.5538657010799335 0.9444444444453334 0 -3242 0.5538657010799569 0.9343434343443227 0 -3243 0.5626134324313075 0.9393939393948487 0 -3244 0.5626134324312807 0.949494949495868 0 -3245 0.5713611637826588 0.9444444444453767 0 -3246 0.5713611637826715 0.9343434343443775 0 -3247 0.5801088951340293 0.9393939393948971 0 -3248 0.2127041783773297 0.9494949494949976 0 -3249 0.5976043578391282 0.05050505050620745 0 -3250 0.9475136118910582 0.8989898989911366 0 -3251 0.9475136118909914 0.9393939393954294 0 -3252 0.9475136118909693 0.9494949494964593 0 -3253 0.9475136118913756 0.6363636363652808 0 -3254 0.9300181491884172 0.8282828282836227 0 -3255 0.9387658805397483 0.8232323232331457 0 -3256 0.9387658805397392 0.8333333333341173 0 -3257 0.9475136118910688 0.8282828282836411 0 -3258 0.9475136118910592 0.8383838383846098 0 -3259 0.9475136118910795 0.818181818182674 0 -3260 0.9037749551344396 0.8232323232331007 0 -3261 0.8950272237831184 0.8181818181825996 0 -3262 0.8950272237831025 0.828282828283577 0 -3263 0.9475136118916839 0.5454545454563171 0 -3264 0.9475136118916434 0.5555555555573484 0 -3265 0.842540835675271 0.767676767677702 0 -3266 0.8512885670265921 0.7727272727282031 0 -3267 0.6413430145961545 0.05555555555716424 0 -3268 0.6413430145960581 0.06565656565806337 0 -3269 0.737568059459311 0.6969696969706669 0 -3270 0.7288203281079787 0.6919191919201514 0 -3271 0.7288203281080032 0.6818181818191611 0 -3272 0.7200725967566466 0.6868686868696352 0 -3273 0.720072596756587 0.696969696970704 0 -3274 0.7113248654052676 0.6919191919201578 0 -3275 0.711324865405312 0.6818181818191267 0 -3276 0.7025771340539526 0.6868686868696042 0 -3277 0.7025771340538944 0.6969696969706745 0 -3278 0.6938294027025935 0.6919191919200871 0 -3279 0.6938294027026193 0.6818181818190832 0 -3280 0.6850816713512616 0.6868686868695615 0 -3281 0.6850816713512404 0.69696969697056 0 -3282 0.6763339399999029 0.691919191920042 0 -3283 0.6763339399999242 0.6818181818190433 0 -3284 0.6675862086485649 0.686868686869525 0 -3285 0.6675862086485861 0.6767676767685253 0 -3286 0.6588384772972258 0.6818181818190079 0 -3287 0.6588384772972059 0.6919191919200082 0 -3288 0.6500907459458658 0.6868686868694913 0 -3289 0.6500907459458853 0.6767676767684905 0 -3290 0.6413430145945251 0.6818181818189745 0 -3291 0.6413430145945448 0.6717171717179725 0 -3292 0.6325952832431838 0.6767676767684564 0 -3293 0.7025771340533546 0.7979797979812412 0 -3294 0.7113248654046953 0.803030303031761 0 -3295 0.5363702383784154 0.6212121212127887 0 -3296 0.5451179697297607 0.6262626262633123 0 -3297 0.6500907459458464 0.6969696969704925 0 -3298 0.5976043578387706 0.2020202020211387 0 -3299 0.5363702383786872 0.2979797979811381 0 -3300 0.5801088951356593 0.3131313131325502 0 -3301 0.5801088951356117 0.3030303030315851 0 -3302 0.4401451935137317 0.3434343434354817 0 -3303 0.7025771340548403 0.2020202020213744 0 -3304 0.1602177902706181 0.3636363636364905 0 -3305 0.8425408356752535 0.777777777778683 0 -3306 0.8512885670265771 0.7828282828291871 0 -3307 0.5801088951356592 0.3232323232335352 0 -3308 0.8162976416225491 0.1363636363652581 0 -3309 0.4576406562173301 0.1717171717179882 0 -3310 0.886279492431568 0.873737373738433 0 -3311 0.7113248654046753 0.8131313131327624 0 -3312 0.9475136118912962 0.6767676767691384 0 -3313 0.3876588054047889 0.7474747474754244 0 -3314 0.3964065367561529 0.7424242424249456 0 -3315 0.9387658805399314 0.7020202020215102 0 -3316 0.9475136118912312 0.7070707070720071 0 -3317 0.8600362983789728 0.3333333333351616 0 -3318 0.8512885670276016 0.3383838383856535 0 -3319 0.8512885670276199 0.3282828282846393 0 -3320 0.8425408356762162 0.3333333333351287 0 -3321 0.4663883875686211 0.1969696969705258 0 -3322 0.8425408356762653 0.3232323232341148 0 -3323 0.8337931043247973 0.3282828282846014 0 -3324 0.9125226864869318 0.4040404040424209 0 -3325 0.3176769545943523 0.6464646464649642 0 -3326 0.3089292232430078 0.6414141414144421 0 -3327 0.3089292232430302 0.6313131313134348 0 -3328 0.3001814918916628 0.6363636363639205 0 -3329 0.7813067162159842 0.7121212121222403 0 -3330 0.7725589848646321 0.7171717171727144 0 -3331 0.7813067162159596 0.7222222222232293 0 -3332 0.7200725967576127 0.1616161616174502 0 -3333 0.7288203281089403 0.1666666666679658 0 -3334 0.7113248654062869 0.1565656565669329 0 -3335 0.7288203281089165 0.1767676767689559 0 -3336 0.7375680594602697 0.1717171717184816 0 -3337 0.6676207173867524 0.05056482139181568 0 -3338 0.4313974621633519 0.1363636363643409 0 -3339 0.9037749551349289 0.5909090909106484 0 -3340 0.0727404767569802 0.3737373737371791 0 -3341 0.5976043578376072 0.7070707070715396 0 -3342 0.7813067162157165 0.7626262626275644 0 -3343 0.2127041783789858 0.1818181818184396 0 -3344 0.1077314021624034 0.3636363636363184 0 -3345 0.1164791335137372 0.3686868686868361 0 -3346 0.9475136118927892 0.2828282828301957 0 -3347 0.2914337605399792 0.7929292929295098 0 -3348 0.3001814918913177 0.7979797979800307 0 -3349 0.2914337605399572 0.803030303030512 0 -3350 0.3001814918912966 0.808080808081032 0 -3351 0.3089292232426562 0.8030303030305499 0 -3352 0.1339745962152843 0.9040404040403982 0 -3353 0.8337931043241362 0.651515151516425 0 -3354 0.1777132529735513 0.161616161616308 0 -3355 0.9475136118910267 0.9191919191933723 0 -3356 0.230199641080587 0.7575757575758431 0 -3357 0.2826860291881415 0.9090909090911674 0 -3358 0.6238475518930161 0.1060606060618291 0 -3359 0.3176769545936874 0.8787878787882336 0 -3360 0.3264246859450189 0.8838383838387533 0 -3361 0.05524501405451 0.1919191919190351 0 -3362 0.5888566264855875 0.8636363636374569 0 -3363 0.396406536755874 0.8535353535359412 0 -3364 0.1952087156749784 0.808080808080937 0 -3365 0.2564428351356399 0.2676767676771719 0 -3366 0.05524501405297959 0.8383838383838264 0 -3367 0.05524501405295387 0.8484848484848517 0 -3368 0.2651905664864997 0.5252525252527596 0 -3369 0.7638112535136682 0.388888888890527 0 -3370 0.4838838502708932 0.2676767676777685 0 -3371 0.7550635221626555 0.3232323232338218 0 -3372 0.2564428351348351 0.6616161616163628 0 -3373 0.1777132529731749 0.4242424242425333 0 -3374 0.2739382978367313 0.9444444444446154 0 -3375 0.2826860291880624 0.9494949494951255 0 -3376 0.2476951037845783 0.101010101010296 0 -3377 0.2389473724331889 0.1060606060607935 0 -3378 0.2476951037845555 0.1111111111113289 0 -3379 0.308929223244041 0.2171717171721896 0 -3380 0.3001814918926881 0.2121212121216591 0 -3381 0.8600362983776297 0.8686868686879581 0 -3382 0.2127041783788618 0.242424242424528 0 -3383 0.44889292486472 0.6111111111117968 0 -3384 0.1864609843236792 0.7828282828283908 0 -3385 0.5888566264855063 0.8939393939404943 0 -3386 0.4401451935140528 0.2929292929301884 0 -3387 0.09023593945938807 0.484848484848185 0 -3388 0.142722327567969 0.2828282828284258 0 -3389 0.8162976416218286 0.3686868686886018 0 -3390 0.177713252973363 0.2626262626264175 0 -3391 0.6063520891893495 0.3888888888902853 0 -3392 0.6150998205406921 0.3939393939407988 0 -3393 0.606352089189335 0.3989898989912862 0 -3394 0.6150998205406775 0.4040404040418001 0 -3395 0.6063520891893198 0.4090909090922877 0 -3396 0.6150998205406628 0.4141414141428011 0 -3397 0.6063520891893052 0.4191919191932889 0 -3398 0.615099820540648 0.4242424242438021 0 -3399 0.6238475518920055 0.4191919191933143 0 -3400 0.6063520891892905 0.4292929292942899 0 -3401 0.5976043578379477 0.4242424242437765 0 -3402 0.6238475518919908 0.4292929292943152 0 -3403 0.6325952832433476 0.4242424242438275 0 -3404 0.5976043578379326 0.4343434343447773 0 -3405 0.5888566264865899 0.4292929292942638 0 -3406 0.632595283243333 0.4343434343448283 0 -3407 0.64134301459469 0.4292929292943408 0 -3408 0.641343014594676 0.4393939393953419 0 -3409 0.6500907459460329 0.4343434343448541 0 -3410 0.5888566264865874 0.4393939393952476 0 -3411 0.5801088951352388 0.4343434343447402 0 -3412 0.6500907459460472 0.4242424242438531 0 -3413 0.6588384772973898 0.4292929292943666 0 -3414 0.6588384772973754 0.4393939393953673 0 -3415 0.6675862086487321 0.4343434343448794 0 -3416 0.6675862086487183 0.4444444444458797 0 -3417 0.6763339400000746 0.4393939393953916 0 -3418 0.676333940000089 0.4292929292943916 0 -3419 0.6850816713514313 0.4343434343449036 0 -3420 0.6850816713514176 0.4444444444458962 0 -3421 0.693829402702772 0.439393939395411 0 -3422 0.5801088951352482 0.424242424243749 0 -3423 0.5713611637838898 0.429292929294237 0 -3424 0.5713611637839032 0.4393939393952083 0 -3425 0.5626134324325401 0.4343434343447121 0 -3426 0.5626134324325459 0.4242424242437244 0 -3427 0.5538657010811885 0.4292929292942105 0 -3428 0.5538657010811794 0.439393939395202 0 -3429 0.5451179697298296 0.4343434343446984 0 -3430 0.6938294027027879 0.4292929292944153 0 -3431 0.7025771340541307 0.4343434343449263 0 -3432 0.7025771340541205 0.4444444444459205 0 -3433 0.7113248654054727 0.4393939393954346 0 -3434 0.7113248654054861 0.4292929292944382 0 -3435 0.7200725967568292 0.4343434343449489 0 -3436 0.7200725967568236 0.4444444444459489 0 -3437 0.7288203281081737 0.4393939393954598 0 -3438 0.728820328108186 0.4292929292944613 0 -3439 0.7375680594595302 0.4343434343449719 0 -3440 0.7375680594595334 0.4444444444459724 0 -3441 0.7463157908108812 0.4393939393954848 0 -3442 0.63259528324332 0.4444444444458301 0 -3443 0.5976043578379392 0.4444444444457704 0 -3444 0.5451179697298147 0.4444444444457011 0 -3445 0.5363702383784706 0.439393939395188 0 -3446 0.09023593945927724 0.5252525252521976 0 -3447 0.5888566264857952 0.782828282829451 0 -3448 0.597604357837164 0.7777777777789707 0 -3449 0.5888566264858235 0.7727272727284444 0 -3450 0.4926315816216313 0.5353535353543961 0 -3451 0.2301996410808631 0.6161616161617549 0 -3452 0.90377495513613 0.1767676767693502 0 -3453 0.7988021789196238 0.2272727272742715 0 -3454 0.1689655216219792 0.3585858585860109 0 -3455 0.160217790270643 0.3535353535354904 0 -3456 0.8600362983784138 0.4848484848501974 0 -3457 0.6938294027019467 0.8232323232337309 0 -3458 0.3701633427026128 0.5858585858590516 0 -3459 0.3789110740539541 0.5909090909095739 0 -3460 0.3789110740539778 0.5808080808085698 0 -3461 0.3876588054053193 0.5858585858590931 0 -3462 0.3876588054053431 0.5757575757580886 0 -3463 0.3876588054052948 0.5959595959600968 0 -3464 0.3964065367566842 0.580808080808612 0 -3465 0.3964065367567087 0.5707070707076076 0 -3466 0.3876588054053676 0.5656565656570842 0 -3467 0.4051542681080491 0.5757575757581309 0 -3468 0.3964065367567332 0.5606060606066031 0 -3469 0.387658805405392 0.5555555555560799 0 -3470 0.2826860291900982 0.1010101010103729 0 -3471 0.4313974621628853 0.2676767676775608 0 -3472 0.1164791335133876 0.5101010101007648 0 -3473 0.05524501405419668 0.4141414141411027 0 -3474 0.055245014054171 0.4242424242420945 0 -3475 0.8600362983782788 0.58585858586007 0 -3476 0.221451909728911 0.8535353535355323 0 -3477 0.5188747756759891 0.2979797979811083 0 -3478 0.4926315816224229 0.2323232323241536 0 -3479 0.2301996410813188 0.4141414141416548 0 -3480 0.1689655216220019 0.2979797979799751 0 -3481 0.4838838502705474 0.3181818181830487 0 -3482 0.23894737243167 0.833333333333533 0 -3483 0.6500907459459093 0.6666666666674935 0 -3484 0.3876588054060172 0.2929292929300129 0 -3485 0.4576406562152437 0.8787878787886029 0 -3486 0.5713611637833704 0.7222222222231971 0 -3487 0.2564428351352818 0.4696969696972143 0 -3488 0.2476951037839416 0.464646464646691 0 -3489 0.2476951037839171 0.4747474747476948 0 -3490 0.05524501405444842 0.2222222222220219 0 -3491 0.1514700589191255 0.4090909090909556 0 -3492 0.1514700589191348 0.4191919191919677 0 -3493 0.2127041783784014 0.5050505050506353 0 -3494 0.7813067162174491 0.06565656565818923 0 -3495 0.77255898486615 0.06060606060767795 0 -3496 0.7725589848661699 0.05050505050671578 0 -3497 0.7638112535148457 0.05555555555717891 0 -3498 0.6938294027028982 0.3585858585874082 0 -3499 0.4051542681080245 0.585858585859135 0 -3500 0.5976043578378734 0.5151515151526249 0 -3501 0.588856626486513 0.5202020202031052 0 -3502 0.5976043578378505 0.5252525252536249 0 -3503 0.5888566264864894 0.5303030303041052 0 -3504 0.5976043578378269 0.5353535353546253 0 -3505 0.938765880541253 0.3585858585878819 0 -3506 0.8512885670272087 0.3888888888906751 0 -3507 0.9387658805411555 0.398989898992003 0 -3508 0.5188747756747895 0.843434343435269 0 -3509 0.1864609843243881 0.4797979797980662 0 -3510 0.3876588054054809 0.5050505050511432 0 -3511 0.4751361189180792 0.8282828282836503 0 -3512 0.8075499102701152 0.6565656565668643 0 -3513 0.2039564470274508 0.3282828282830475 0 -3514 0.195208715676087 0.3333333333335359 0 -3515 0.6063520891891878 0.5303030303041454 0 -3516 0.6063520891891647 0.5404040404051457 0 -3517 0.6150998205405251 0.535353535354666 0 -3518 0.6150998205405026 0.5454545454556661 0 -3519 0.6238475518918631 0.5404040404051863 0 -3520 0.9387658805412743 0.3484848484868489 0 -3521 0.2826860291890891 0.5757575757578384 0 -3522 0.5538657010808027 0.6818181818190451 0 -3523 0.3526678800002147 0.4444444444450228 0 -3524 0.3264246859456967 0.6515151515154858 0 -3525 0.457640656216245 0.4545454545465655 0 -3526 0.4576406562162266 0.4646464646475697 0 -3527 0.4488929248648828 0.4595959595970523 0 -3528 0.76381125351418 0.2474747474762733 0 -3529 0.1164791335134813 0.4696969696967459 0 -3530 0.6238475518920943 0.358585858587306 0 -3531 0.8425408356764726 0.2121212121228559 0 -3532 0.1077314021622624 0.4141414141412348 0 -3533 0.5276225070270764 0.51515151515247 0 -3534 0.3614156113511561 0.6313131313135535 0 -3535 0.3701633427025204 0.6262626262630715 0 -3536 0.09023593945909132 0.5959595959593135 0 -3537 0.6675862086486636 0.5151515151527881 0 -3538 0.8775317610809016 0.6060606060620805 0 -3539 0.3964065367559492 0.823232323232943 0 -3540 0.4576406562155901 0.7474747474755974 0 -3541 0.466388387566952 0.7424242424251165 0 -3542 0.4576406562156132 0.7373737373745946 0 -3543 0.4663883875669761 0.7323232323241143 0 -3544 0.4576406562156374 0.7272727272735913 0 -3545 0.4663883875670018 0.7222222222231127 0 -3546 0.4576406562156641 0.7171717171725889 0 -3547 0.448892924864299 0.7222222222230665 0 -3548 0.4488929248643265 0.7121212121220643 0 -3549 0.4401451935129616 0.717171717172545 0 -3550 0.4576406562156928 0.7070707070715869 0 -3551 0.151470058918459 0.6919191919191889 0 -3552 0.4576406562153795 0.8282828282836071 0 -3553 0.1427223275678996 0.2323232323232147 0 -3554 0.1514700589192633 0.2272727272727325 0 -3555 0.151470058919286 0.2171717171717283 0 -3556 0.1602177902706286 0.2222222222222499 0 -3557 0.1602177902706511 0.2121212121212438 0 -3558 0.1689655216219955 0.2171717171717668 0 -3559 0.31767695459425 0.6969696969700272 0 -3560 0.2651905664869443 0.3232323232326831 0 -3561 0.2651905664871954 0.1818181818185546 0 -3562 0.4926315816218543 0.3434343434355742 0 -3563 0.1077314021624841 0.2525252525251552 0 -3564 0.1777132529720456 0.8989898989899695 0 -3565 0.3526678800008987 0.2020202020207718 0 -3566 0.2651905664866971 0.4444444444447255 0 -3567 0.5276225070266488 0.6969696969705862 0 -3568 0.8337931043234696 0.8939393939406117 0 -3569 0.4926315816213969 0.6464646464654157 0 -3570 0.5363702383777229 0.7626262626273028 0 -3571 0.5451179697290901 0.7575757575768231 0 -3572 0.5363702383777501 0.7525252525262976 0 -3573 0.3789110740541734 0.4494949494956578 0 -3574 0.807549910270916 0.2727272727288749 0 -3575 0.2739382978387981 0.06565656565672522 0 -3576 0.2826860291901933 0.06060606060622419 0 -3577 0.2739382978388191 0.05555555555568487 0 -3578 0.2826860291902155 0.05050505050518275 0 -3579 0.2914337605407179 0.4595959595962962 0 -3580 0.291433760540743 0.4494949494952918 0 -3581 0.3001814918920835 0.4545454545458157 0 -3582 0.3001814918921089 0.4444444444448112 0 -3583 0.2914337605407682 0.4393939393942873 0 -3584 0.3001814918921342 0.4343434343438065 0 -3585 0.2914337605407935 0.4292929292932825 0 -3586 0.3001814918921597 0.4242424242428015 0 -3587 0.2914337605408185 0.4191919191922771 0 -3588 0.3001814918921852 0.4141414141417962 0 -3589 0.3089292232435008 0.4292929292933261 0 -3590 0.2914337605408438 0.4090909090912713 0 -3591 0.3001814918922107 0.4040404040407905 0 -3592 0.142722327566825 0.818181818181873 0 -3593 0.3089292232438163 0.2676767676772852 0 -3594 0.3001814918916856 0.6262626262629121 0 -3595 0.2914337605403181 0.6313131313133975 0 -3596 0.3526678800011746 0.08080808080847714 0 -3597 0.6763339399999999 0.5202020202033076 0 -3598 0.6675862086486402 0.5252525252537872 0 -3599 0.6763339399999937 0.5303030303043073 0 -3600 0.6675862086486175 0.5353535353547865 0 -3601 0.6763339399999719 0.5404040404053072 0 -3602 0.6675862086485937 0.5454545454557855 0 -3603 0.6763339399999305 0.550505050506307 0 -3604 0.6675862086485674 0.555555555556785 0 -3605 0.676333939999904 0.5606060606073067 0 -3606 0.4313974621619476 0.6414141414147536 0 -3607 0.2914337605403412 0.6212121212123886 0 -3608 0.2826860291889738 0.6262626262628738 0 -3609 0.2826860291889957 0.6161616161618652 0 -3610 0.8162976416226987 0.08585858586021762 0 -3611 0.8862794924323276 0.5606060606076673 0 -3612 0.2214519097293686 0.6818181818182981 0 -3613 0.6588384772974051 0.4191919191933662 0 -3614 0.08148820810853516 0.1969696969695934 0 -3615 0.4751361189187618 0.6161616161623755 0 -3616 0.5013793129720314 0.8636363636372224 0 -3617 0.2739382978384171 0.2474747474751836 0 -3618 0.6588384772971871 0.7020202020210088 0 -3619 0.4313974621623684 0.3484848484859701 0 -3620 0.7900544475677855 0.3535353535370521 0 -3621 0.7988021789191474 0.3484848484865619 0 -3622 0.2739382978376284 0.6212121212123513 0 -3623 0.6938294027028538 0.3888888888904148 0 -3624 0.7200725967560367 0.8080808080822774 0 -3625 0.7200725967560544 0.7979797979812769 0 -3626 0.256442835135872 0.1565656565659777 0 -3627 0.2914337605405515 0.53030303030333 0 -3628 0.8162976416208172 0.8737373737385833 0 -3629 0.8250453729726641 0.7373737373747302 0 -3630 0.3964065367565096 0.6616161616166978 0 -3631 0.8862794924324677 0.4595959595977804 0 -3632 0.3439201486498715 0.0555555555558443 0 -3633 0.352667880001267 0.05050505050534412 0 -3634 0.7900544475674002 0.6767676767688005 0 -3635 0.8162976416213193 0.7424242424252022 0 -3636 0.3526678800010287 0.1313131313136475 0 -3637 0.09898367081118359 0.2171717171716186 0 -3638 0.177713252973627 0.1313131313132598 0 -3639 0.3614156113504103 0.9040404040408347 0 -3640 0.370163342701771 0.8989898989903664 0 -3641 0.1689655216220176 0.2070707070707584 0 -3642 0.1777132529733639 0.2121212121212827 0 -3643 0.7463157908113768 0.2979797979812889 0 -3644 0.8775317610818424 0.2626262626280325 0 -3645 0.2826860291887234 0.7575757575759682 0 -3646 0.4838838502691052 0.9444444444451459 0 -3647 0.3001814918927306 0.161616161616588 0 -3648 0.7813067162156329 0.803030303031568 0 -3649 0.7463157908108883 0.4292929292944835 0 -3650 0.7550635221622317 0.4343434343449972 0 -3651 0.7550635221622223 0.4444444444459987 0 -3652 0.7638112535135734 0.4393939393955118 0 -3653 0.116479133512637 0.8636363636363674 0 -3654 0.8075499102702222 0.6060606060619294 0 -3655 0.5188747756749369 0.7929292929302734 0 -3656 0.7375680594601091 0.2525252525267272 0 -3657 0.5976043578388343 0.1717171717181661 0 -3658 0.9125226864864044 0.5252525252542839 0 -3659 0.4139019994606683 0.1161616161622517 0 -3660 0.3089292232435524 0.4090909090913156 0 -3661 0.3089292232435781 0.3989898989903098 0 -3662 0.2389473724331676 0.1161616161618257 0 -3663 0.2301996410818016 0.1111111111112911 0 -3664 0.07274047675709801 0.3333333333332492 0 -3665 0.8950272237848514 0.07070707070879671 0 -3666 0.886279492433495 0.06565656565827464 0 -3667 0.8950272237848638 0.06060606060777989 0 -3668 0.8862794924335078 0.0555555555572596 0 -3669 0.895027223784874 0.05050505050676327 0 -3670 0.3089292232436667 0.3484848484853089 0 -3671 0.0639927454043126 0.8535353535353856 0 -3672 0.05524501405292959 0.858585858585876 0 -3673 0.816297641620932 0.8333333333346269 0 -3674 0.2914337605394088 0.9444444444446464 0 -3675 0.7638112535135575 0.4494949494965148 0 -3676 0.7725589848649147 0.4444444444460273 0 -3677 0.7725589848649317 0.4343434343450256 0 -3678 0.7813067162162731 0.4393939393955417 0 -3679 0.7813067162162904 0.4292929292945418 0 -3680 0.7900544475676323 0.4343434343450573 0 -3681 0.7900544475676141 0.4444444444460586 0 -3682 0.7988021789189733 0.4393939393955739 0 -3683 0.06399274540607773 0.05555555555543647 0 -3684 0.05524501405471731 0.05050505050490825 0 -3685 0.9037749551362351 0.05555555555728175 0 -3686 0.7113248654055482 0.5505050505062641 0 -3687 0.6500907459469807 0.1212121212133572 0 -3688 0.6588384772983029 0.1262626262638669 0 -3689 0.3264246859468132 0.1969696969702016 0 -3690 0.8950272237846275 0.242424242426019 0 -3691 0.3089292232434493 0.4494949494953355 0 -3692 0.3089292232434239 0.4595959595963397 0 -3693 0.5713611637830057 0.8131313131324241 0 -3694 0.8162976416222247 0.2979797979814208 0 -3695 0.7463157908107124 0.6717171717182138 0 -3696 0.4051542681093714 0.08080808080866272 0 -3697 0.8162976416216909 0.5505050505064815 0 -3698 0.8250453729730189 0.5555555555570008 0 -3699 0.8250453729730425 0.5454545454560088 0 -3700 0.8337931043243719 0.5505050505065244 0 -3701 0.8337931043243955 0.5404040404055376 0 -3702 0.8425408356757241 0.545454545456047 0 -3703 0.8425408356757474 0.5353535353550609 0 -3704 0.8512885670270737 0.5404040404055744 0 -3705 0.8512885670270962 0.5303030303045797 0 -3706 0.8600362983784194 0.535353535355104 0 -3707 0.8600362983784466 0.5252525252541028 0 -3708 0.2826860291888221 0.7070707070709631 0 -3709 0.5276225070280913 0.1717171717179988 0 -3710 0.8775317610801978 0.9090909090922198 0 -3711 0.8687840297288298 0.9141414141427079 0 -3712 0.3001814918922362 0.3939393939397842 0 -3713 0.3089292232436037 0.3888888888893038 0 -3714 0.4663883875683235 0.2474747474756532 0 -3715 0.518874775674582 0.9141414141422332 0 -3716 0.5101270443253531 0.1919191919199526 0 -3717 0.8950272237847492 0.1818181818198446 0 -3718 0.2389473724320091 0.7323232323233406 0 -3719 0.2301996410806637 0.7272727272728146 0 -3720 0.6675862086478221 0.8585858585871613 0 -3721 0.6150998205397431 0.828282828284054 0 -3722 0.5276225070260446 0.8787878787888013 0 -3723 0.9212704178378165 0.4797979797998326 0 -3724 0.9212704178383494 0.4292929292950267 0 -3725 0.9300181491901675 0.2222222222240344 0 -3726 0.9387658805415503 0.2171717171735381 0 -3727 0.6325952832432038 0.6666666666674542 0 -3728 0.6238475518918423 0.6717171717179381 0 -3729 0.6238475518918626 0.6616161616169353 0 -3730 0.6150998205405004 0.6666666666674194 0 -3731 0.615099820540521 0.6565656565664161 0 -3732 0.6063520891891584 0.6616161616169 0 -3733 0.6063520891891794 0.6515151515158967 0 -3734 0.5976043578378165 0.65656565656638 0 -3735 0.2739382978383129 0.3181818181821994 0 -3736 0.7025771340541276 0.4848484848498715 0 -3737 0.3964065367580084 0.07575757575812576 0 -3738 0.4663883875675709 0.4696969696980868 0 -3739 0.6675862086487376 0.4848484848498101 0 -3740 0.8687840297297719 0.5303030303046219 0 -3741 0.3964065367580566 0.05555555555606198 0 -3742 0.370163342702013 0.777777777778385 0 -3743 0.370163342701987 0.787878787879385 0 -3744 0.1689655216222701 0.1262626262627303 0 -3745 0.1777132529736495 0.1212121212122374 0 -3746 0.6588384772973622 0.4494949494963681 0 -3747 0.2651905664869679 0.3131313131316746 0 -3748 0.5801088951352446 0.4848484848495851 0 -3749 0.7200725967569066 0.5454545454557796 0 -3750 0.7550635221622901 0.5454545454558567 0 -3751 0.1514700589196671 0.08585858585867147 0 -3752 0.5363702383784557 0.4494949494961907 0 -3753 0.571361163783907 0.4797979797990646 0 -3754 0.3789110740543418 0.4090909090915872 0 -3755 0.6675862086485425 0.5656565656577842 0 -3756 0.658838477297206 0.5606060606072633 0 -3757 0.9212704178389183 0.1565656565673208 0 -3758 0.6238475518918402 0.5505050505061863 0 -3759 0.142722327568378 0.06060606060609324 0 -3760 0.1427223275683603 0.05050505050504889 0 -3761 0.588856626486466 0.5404040404051051 0 -3762 0.5801088951351282 0.5353535353545853 0 -3763 0.7813067162153173 0.9040404040414985 0 -3764 0.9650090745945508 0.4747474747494191 0 -3765 0.9475136118926447 0.3535353535373836 0 -3766 0.9475136118926658 0.343434343436348 0 -3767 0.9475136118930325 0.1111111111129563 0 -3768 0.9475136118930239 0.1212121212139799 0 -3769 0.5801088951340111 0.9494949494959073 0 -3770 0.5888566264853908 0.944444444445414 0 -3771 0.5888566264854015 0.9343434343444117 0 -3772 0.5976043578367682 0.9393939393949202 0 -3773 0.5976043578367503 0.9494949494959405 0 -3774 0.6063520891881287 0.9444444444454453 0 -3775 0.606352089188148 0.9343434343444231 0 -3776 0.6150998205395061 0.9393939393949507 0 -3777 0.6150998205395257 0.9292929292939294 0 -3778 0.6238475518908833 0.934343434344457 0 -3779 0.6238475518908637 0.9444444444454787 0 -3780 0.6325952832422417 0.9393939393949852 0 -3781 0.632595283242261 0.9292929292939621 0 -3782 0.6413430145936206 0.934343434344489 0 -3783 0.6413430145936055 0.9444444444455118 0 -3784 0.6500907459449818 0.9393939393950144 0 -3785 0.6500907459449982 0.9292929292939921 0 -3786 0.6588384772963575 0.9343434343445183 0 -3787 0.658838477296343 0.9444444444455397 0 -3788 0.6675862086477187 0.9393939393950421 0 -3789 0.6675862086477058 0.9494949494960646 0 -3790 0.6763339399990699 0.944444444445542 0 -3791 0.3351724172962741 0.9494949494952198 0 -3792 0.07274047675572787 0.9494949494948288 0 -3793 0.06399274540437848 0.944444444444313 0 -3794 0.06399274540439233 0.9343434343433026 0 -3795 0.05524501405302609 0.9393939393937969 0 -3796 0.05524501405303853 0.9292929292927836 0 -3797 0.05524501405301322 0.9494949494948091 0 -3798 0.4926315816204382 0.9494949494956697 0 -3799 0.5276225070258433 0.9494949494957692 0 -3800 0.413901999460842 0.04545454545507415 0 -3801 0.7638112535148642 0.04545454545621842 0 -3802 0.7550635221635421 0.0505050505066806 0 -3803 0.18646098432503 0.04545454545447051 0 -3804 0.5888566264878246 0.04545454545569852 0 -3805 0.7288203281069804 0.9545454545464599 0 -3806 0.7200725967556453 0.9494949494959258 0 -3807 0.7200725967557123 0.9393939393949098 0 -3808 0.2739382978388405 0.04545454545464259 0 -3809 0.2739382978367139 0.954545454545604 0 -3810 0.3439201486498936 0.04545454545480329 0 -3811 0.6763339399990326 0.9545454545465117 0 -3812 0.04649728270324001 0.1565656565655331 0 -3813 0.04649728270326028 0.1464646464645376 0 -3814 0.04649728270333783 0.05555555555540372 0 -3815 0.04649728270311684 0.2171717171715074 0 -3816 0.04652140810559732 0.2272309408496122 0 -3817 0.04649728270311174 0.3181818181817019 0 -3818 0.04649728270313402 0.308080808080714 0 -3819 0.04649728270284118 0.4191919191915763 0 -3820 0.04649728270281523 0.4292929292925685 0 -3821 0.04649728270165907 0.9444444444442934 0 -3822 0.04649728270159464 0.8434343434343173 0 -3823 0.06399274540609357 0.04545454545441331 0 -3824 0.09898367080978193 0.954545454545372 0 -3825 0.9212704178368393 0.9545454545469126 0 -3826 0.3964065367556371 0.9545454545458798 0 -3827 0.886279492433517 0.04545454545624852 0 -3828 0.8775317610821575 0.05050505050674317 0 -3829 0.04649728270164703 0.9545454545453078 0 -3830 0.04649728270335612 0.04545454545438107 0 -3831 0.4838838502690756 0.9545454545461427 0 -3832 0.7988021789201345 0.04545454545628503 0 -3833 0.9037749551362447 0.04545454545626008 0 -3834 0.9125226864876113 0.050505050506781 0 -3835 0.6413430145961603 0.04545454545622422 0 -3836 0.6063520891881117 0.9545454545464681 0 -3837 0.9037749551340928 0.9545454545468665 0 -3838 0.8950272237827309 0.9494949494963336 0 -3839 0.116479133512486 0.9545454545453926 0 -3840 0.1252268648638411 0.949494949494908 0 -3841 0.2914337605393935 0.9545454545456334 0 -3842 0.2039564470259711 0.9545454545454858 0 -3843 0.3964065367580827 0.04545454545502597 0 -3844 0.6588384772963334 0.9545454545465658 0 -3845 0.04649728270208184 0.6515151515148251 0 -3846 0.04649728270205547 0.6616161616158555 0 -3847 0.04649728270210891 0.641414141413795 0 -3848 0.05524501405349796 0.6363636363633038 0 -3849 0.04649728270213674 0.6313131313127651 0 -3850 0.05524501405352533 0.6262626262622756 0 -3851 0.04649728270216483 0.6212121212117352 0 -3852 0.05525699035182766 0.616161616161246 0 -3853 0.04660506938666573 0.6111111111107063 0 -3854 0.05525832105166366 0.6060606060602153 0 -3855 0.0466185242403107 0.6010101010096781 0 -3856 0.05525996389096005 0.595959595959187 0 -3857 0.04628076408155505 0.5909090909086496 0 -3858 0.055222617522152 0.5858585858581598 0 -3859 0.04623908557851453 0.5808080808076235 0 -3860 0.05518026865837287 0.5757621321770661 0 -3861 0.04619516779995599 0.5707480784859804 0 -3862 0.05520425179839387 0.5656616283449242 0 -3863 0.04593717001602631 0.5607004455094039 0 -3864 0.05517825017131292 0.5555666052876062 0 -3865 0.04617821661351517 0.5505651600641378 0 -3866 0.05523759584458223 0.5454557732021288 0 -3867 0.04619123573115703 0.5404108556599436 0 -3868 0.05517643168292623 0.5353545131591846 0 -3869 0.0461935065452704 0.5303037875532347 0 -3870 0.05520364088401306 0.5252527180361333 0 -3871 0.04656871969219123 0.5202021257609331 0 -3872 0.05524835447825677 0.5151515483003073 0 -3873 0.04661537821901011 0.5101010255125767 0 -3874 0.05525850693617356 0.505050510445724 0 -3875 0.0462755475188276 0.5000000023114648 0 -3876 0.05522187602038663 0.4949494958054188 0 -3877 0.04623371845040914 0.4898989902505247 0 -3878 0.9562613432423576 0.9444444444459642 0 -3879 0.9562613432423341 0.9545454545469989 0 -3880 0.9562613432423865 0.8333333333341352 0 -3881 0.9562613432423758 0.8434343434351014 0 -3882 0.9562613432425956 0.6818181818196339 0 -3883 0.9562613432426166 0.6717171717186806 0 -3884 0.8162976416212983 0.7525252525261852 0 -3885 0.8862794924317794 0.8232323232330737 0 -3886 0.8862794924317622 0.8333333333340542 0 -3887 0.8862794924317965 0.8131313131320957 0 -3888 0.5888566264874171 0.2070707070716167 0 -3889 0.7463157908103124 0.7727272727285244 0 -3890 0.728820328107737 0.7323232323244793 0 -3891 0.7638112535148136 0.06565656565814934 0 -3892 0.6938294027020139 0.792929292930721 0 -3893 0.6938294027034828 0.2070707070718512 0 -3894 0.4313974621623851 0.3383838383849637 0 -3895 0.4226497308110215 0.3434343434354528 0 -3896 0.7288203281073959 0.8030303030317926 0 -3897 0.5451179697291173 0.7474747474758175 0 -3898 0.5363702383777764 0.7424242424252924 0 -3899 0.5538657010804586 0.7525252525263399 0 -3900 0.5976043578377952 0.6666666666673838 0 -3901 0.588856626486453 0.6616161616168631 0 -3902 0.5888566264864747 0.6515151515158589 0 -3903 0.5801088951351111 0.6565656565663418 0 -3904 0.5801088951351331 0.6464646464653376 0 -3905 0.5713611637837706 0.6515151515158205 0 -3906 0.5363702383783955 0.6313131313137919 0 -3907 0.5276225070270137 0.6262626262633204 0 -3908 0.6238475518918224 0.6818181818189412 0 -3909 0.7550635221614563 0.8282828282843246 0 -3910 0.7375680594602455 0.1818181818194726 0 -3911 0.7463157908115998 0.1767676767689981 0 -3912 0.6325952832434513 0.3535353535368188 0 -3913 0.4488929248643556 0.7020202020210613 0 -3914 0.4576406562157221 0.6969696969705848 0 -3915 0.466388387567059 0.702020202021111 0 -3916 0.1514700589192403 0.2373737373737365 0 -3917 0.7638112535128 0.8333333333348381 0 -3918 0.2914337605397371 0.8434343434346822 0 -3919 0.2826860291884025 0.8383838383841616 0 -3920 0.1689655216219723 0.2272727272727741 0 -3921 0.5888566264869696 0.3282828282840778 0 -3922 0.6850816713515542 0.3535353535368941 0 -3923 0.3001814918908023 0.9191919191921953 0 -3924 0.7638112535137337 0.3585858585875039 0 -3925 0.7288203281087975 0.2272727272741038 0 -3926 0.2214519097292427 0.752525252525316 0 -3927 0.2214519097292174 0.7626262626263255 0 -3928 0.151470058918746 0.570707070707028 0 -3929 0.1514700589187701 0.5606060606060166 0 -3930 0.1514700589187221 0.5808080808080401 0 -3931 0.4663883875686978 0.1666666666675082 0 -3932 0.4751361189200317 0.1717171717180194 0 -3933 0.7200725967576369 0.1515151515164631 0 -3934 0.7113248654063135 0.1464646464659476 0 -3935 0.930018149188785 0.6161616161633118 0 -3936 0.938765880540111 0.6111111111128491 0 -3937 0.9475136118914175 0.616161616163347 0 -3938 0.9475136118914372 0.6060606060623868 0 -3939 0.9387658805401325 0.601010101011887 0 -3940 0.9475136118914604 0.5959595959614261 0 -3941 0.9562613432427641 0.6010101010119266 0 -3942 0.9562613432427882 0.5909090909109671 0 -3943 0.9387658805401536 0.5909090909109244 0 -3944 0.7988021789189549 0.4494949494965751 0 -3945 0.8075499102703145 0.44444444444609 0 -3946 0.0639927454042873 0.8636363636364098 0 -3947 0.05524501405290572 0.8686868686869009 0 -3948 0.07274047675566905 0.8585858585859198 0 -3949 0.04649728270154682 0.863636363636368 0 -3950 0.04649728270152367 0.8737373737373921 0 -3951 0.05524501405288181 0.8787878787879255 0 -3952 0.04649728270149936 0.8838383838384164 0 -3953 0.7463157908116242 0.1666666666680071 0 -3954 0.755063522162954 0.171717171718524 0 -3955 0.7550635221629298 0.1818181818195164 0 -3956 0.7638112535142857 0.1767676767690417 0 -3957 0.08148820810710473 0.8333333333333885 0 -3958 0.2914337605395058 0.9040404040406906 0 -3959 0.370163342702498 0.6363636363640752 0 -3960 0.378911074053862 0.631313131313593 0 -3961 0.2826860291881659 0.8989898989901748 0 -3962 0.1252268648638571 0.93939393939391 0 -3963 0.1339745962151965 0.9444444444444241 0 -3964 0.1339745962151787 0.9545454545454207 0 -3965 0.1427223275665332 0.9494949494949397 0 -3966 0.9387658805399087 0.7121212121224656 0 -3967 0.9475136118912094 0.7171717171729628 0 -3968 0.9562613432425303 0.7121212121225058 0 -3969 0.9562613432425068 0.7222222222234613 0 -3970 0.947513611891186 0.7272727272739163 0 -3971 0.9562613432424817 0.7323232323244142 0 -3972 0.3089292232429863 0.6515151515154487 0 -3973 0.7113248654060191 0.2676767676781873 0 -3974 0.5276225070271118 0.4444444444456764 0 -3975 0.8512885670270459 0.5505050505065756 0 -3976 0.3001814918926634 0.2222222222226777 0 -3977 0.8512885670279732 0.1262626262642964 0 -3978 0.9475136118917035 0.5353535353553392 0 -3979 0.9562613432430235 0.5404040404058449 0 -3980 0.45764065621759 0.08080808080879238 0 -3981 0.2826860291894774 0.4141414141417527 0 -3982 0.05520990436473048 0.4848484849866228 0 -3983 0.04646799778566974 0.4797979798365944 0 -3984 0.5276225070271277 0.4343434343446729 0 -3985 0.4139019994593888 0.5808080808086546 0 -3986 0.4139019994593637 0.5909090909096572 0 -3987 0.4139019994594145 0.5707070707076516 0 -3988 0.518874775676005 0.3282828282840772 0 -3989 0.3964065367578094 0.1666666666673109 0 -3990 0.2127041783783178 0.5454545454546533 0 -3991 0.2039564470274037 0.3484848484850601 0 -3992 0.2127041783787436 0.3535353535355793 0 -3993 0.772558984864897 0.454545454547032 0 -3994 0.5538657010812025 0.4191919191932096 0 -3995 0.7200725967573633 0.2727272727287075 0 -3996 0.8075499102703323 0.4343434343450892 0 -3997 0.3176769545949196 0.404040404040835 0 -3998 0.4226497308119175 0.161616161616864 0 -3999 0.05524501405461648 0.1414141414140563 0 -4000 0.04649728270327986 0.1363636363635404 0 -4001 0.09023593945887715 0.6868686868685575 0 -4002 0.6325952832433628 0.4141414141428259 0 -4003 0.4926315816216795 0.4444444444456221 0 -4004 0.247695103784533 0.1212121212123605 0 -4005 0.4663883875677677 0.3585858585870372 0 -4006 0.5538657010811283 0.621212121212822 0 -4007 0.2301996410817808 0.1212121212123221 0 -4008 0.2214519097304164 0.1161616161617886 0 -4009 0.2826860291889507 0.6363636363638843 0 -4010 0.05524501405414612 0.4343434343430873 0 -4011 0.0464972827027899 0.439393939393562 0 -4012 0.5626134324325612 0.4141414141427223 0 -4013 0.1339745962169442 0.09595959595967406 0 -4014 0.6588384772972801 0.5303030303042651 0 -4015 0.4051542681074911 0.7474747474754683 0 -4016 0.4051542681075169 0.7373737373744675 0 -4017 0.3964065367561789 0.7323232323239444 0 -4018 0.4051542681075428 0.7272727272734659 0 -4019 0.3089292232427853 0.7525252525255387 0 -4020 0.2039564470272895 0.3989898989900861 0 -4021 0.8425408356761284 0.3434343434361366 0 -4022 0.2739382978376495 0.611111111111343 0 -4023 0.1777132529727644 0.5959595959596196 0 -4024 0.1689655216213929 0.6010101010101059 0 -4025 0.7025771340541974 0.393939393940929 0 -4026 0.3701633427036525 0.1919191919197967 0 -4027 0.8512885670266648 0.7323232323242953 0 -4028 0.8337931043243503 0.5606060606075149 0 -4029 0.8162976416216448 0.5707070707084724 0 -4030 0.8337931043250437 0.2474747474764029 0 -4031 0.308929223242604 0.8131313131315997 0 -4032 0.3176769545939642 0.8080808080811324 0 -4033 0.7638112535135667 0.5808080808093533 0 -4034 0.7550635221622185 0.4545454545470091 0 -4035 0.895027223784771 0.1717171717188206 0 -4036 0.2651905664874434 0.05050505050514563 0 -4037 0.1952087156761101 0.3232323232325255 0 -4038 0.1864609843247467 0.3282828282830111 0 -4039 0.2914337605415901 0.05555555555572295 0 -4040 0.2914337605416126 0.04545454545468083 0 -4041 0.8600362983789087 0.3535353535371987 0 -4042 0.4926315816216379 0.46464646464763 0 -4043 0.7550635221623074 0.3939393939410155 0 -4044 0.3701633427020383 0.7676767676773841 0 -4045 0.2564428351353572 0.4393939393942016 0 -4046 0.1339745962167775 0.146464646464707 0 -4047 0.7638112535133941 0.6717171717182483 0 -4048 0.3089292232440868 0.1969696969701582 0 -4049 0.5188747756767574 0.1666666666674795 0 -4050 0.0639927454056512 0.3686868686866623 0 -4051 0.05524501405429774 0.3737373737371374 0 -4052 0.2214519097302042 0.3080808080810751 0 -4053 0.2301996410815707 0.303030303030592 0 -4054 0.7288203281081845 0.5808080808092874 0 -4055 0.1164791335142772 0.0555555555555205 0 -4056 0.1164791335142959 0.04545454545448697 0 -4057 0.9037749551361662 0.106060606062356 0 -4058 0.92127041783856 0.3282828282847584 0 -4059 0.7113248654054878 0.4797979797993934 0 -4060 0.8687840297292891 0.7525252525262665 0 -4061 0.7200725967568251 0.5858585858597687 0 -4062 0.7113248654054868 0.5808080808092549 0 -4063 0.3964065367579828 0.08585858585915633 0 -4064 0.12522686486524 0.2121212121211702 0 -4065 0.133974596216603 0.2070707070706871 0 -4066 0.1077314021622859 0.4040404040402432 0 -4067 0.9212704178386907 0.2676767676785999 0 -4068 0.3176769545947898 0.4545454545458594 0 -4069 0.3176769545947641 0.4646464646468636 0 -4070 0.3614156113506502 0.7828282828288632 0 -4071 0.3614156113506238 0.7929292929298638 0 -4072 0.3001814918923411 0.3333333333337851 0 -4073 0.676333939999947 0.6717171717180445 0 -4074 0.6413430145946127 0.631313131314042 0 -4075 0.938765880541462 0.2575757575775982 0 -4076 0.9475136118928515 0.2525252525270937 0 -4077 0.903774955134155 0.9343434343448114 0 -4078 0.3964065367567596 0.5505050505055982 0 -4079 0.3876588054054178 0.5454545454550749 0 -4080 0.3789110740540508 0.5505050505055565 0 -4081 0.3789110740540746 0.5404040404045521 0 -4082 0.3701633427027088 0.5454545454550339 0 -4083 0.3701633427027326 0.535353535354029 0 -4084 0.3614156113513667 0.540404040404511 0 -4085 0.361415611351391 0.5303030303035055 0 -4086 0.3526678800000246 0.5353535353539873 0 -4087 0.3526678800000491 0.5252525252529817 0 -4088 0.3439201486486827 0.5303030303034636 0 -4089 0.3439201486487076 0.520202020202458 0 -4090 0.335172417297341 0.5252525252529396 0 -4091 0.3351724172973656 0.5151515151519342 0 -4092 0.3264246859459992 0.5202020202024158 0 -4093 0.3264246859460233 0.5101010101014098 0 -4094 0.3351724172973162 0.535353535353945 0 -4095 0.3351724172973902 0.505050505050929 0 -4096 0.326424685946046 0.500000000000404 0 -4097 0.6588384772983243 0.1161616161628865 0 -4098 0.6675862086496455 0.1212121212133942 0 -4099 0.4401451935144904 0.2222222222229918 0 -4100 0.4313974621631206 0.2272727272734768 0 -4101 0.4226497308117731 0.2222222222229514 0 -4102 0.4226497308117503 0.2323232323239629 0 -4103 0.1427223275682959 0.101010101010206 0 -4104 0.8075499102702648 0.5151515151530874 0 -4105 0.3614156113526072 0.06565656565694286 0 -4106 0.7638112535136442 0.5404040404053752 0 -4107 0.6325952832443539 0.1010101010113548 0 -4108 0.6238475518930124 0.09595959596080951 0 -4109 0.8687840297297981 0.5202020202036243 0 -4110 0.5801088951341316 0.8989898989909789 0 -4111 0.676333939999878 0.5707070707083055 0 -4112 0.6588384772963743 0.9242424242434973 0 -4113 0.5451179697298364 0.4545454545466824 0 -4114 0.6588384772971818 0.5707070707082627 0 -4115 0.6500907459450173 0.9191919191929705 0 -4116 0.5276225070270888 0.4545454545466807 0 -4117 0.6763339399990929 0.9343434343445378 0 -4118 0.4576406562162085 0.474747474748574 0 -4119 0.4663883875675528 0.4797979797990907 0 -4120 0.6150998205404961 0.5555555555566376 0 -4121 0.9562613432442009 0.2676767676786593 0 -4122 0.9562613432438136 0.4292929292951133 0 -4123 0.956261343243841 0.4191919191940909 0 -4124 0.9562613432436819 0.4393939393961223 0 -4125 0.9562613432444059 0.116161616163488 0 -4126 0.9562613432444197 0.1060606060624527 0 -4127 0.9562613432443714 0.1262626262644944 0 -4128 0.7900544475688241 0.04040404040579025 0 -4129 0.352667880001291 0.04040404040430249 0 -4130 0.9212704178370803 0.8333333333342626 0 -4131 0.8250453729723309 0.8080808080821232 0 -4132 0.6325952832448637 0.05050505050664725 0 -4133 0.7550635221617338 0.7474747474759874 0 -4134 0.510127044325339 0.2020202020209505 0 -4135 0.5188747756766691 0.2070707070714674 0 -4136 0.9125226864869974 0.4242424242444989 0 -4137 0.9125226864869769 0.4343434343455154 0 -4138 0.6150998205401589 0.7474747474757153 0 -4139 0.8775317610812483 0.4040404040422325 0 -4140 0.8775317610812672 0.3939393939412216 0 -4141 0.6413430145942832 0.7323232323242372 0 -4142 0.7113248654059121 0.328282828284248 0 -4143 0.7200725967572572 0.3333333333347633 0 -4144 0.5713611637843111 0.3181818181830332 0 -4145 0.5713611637843037 0.3282828282840236 0 -4146 0.3264246859449512 0.9444444444447101 0 -4147 0.3264246859449227 0.9545454545456921 0 -4148 0.1164791335136175 0.4090909090907658 0 -4149 0.1252268648650943 0.363636363636358 0 -4150 0.09023593945989421 0.282828282828324 0 -4151 0.08148820810856196 0.277777777777809 0 -4152 0.07274047675720847 0.2828282828282863 0 -4153 0.07274047675723005 0.2727272727272942 0 -4154 0.06399274540587717 0.2777777777777715 0 -4155 0.06399274540589593 0.2676767676767799 0 -4156 0.05524501405454674 0.2727272727272568 0 -4157 0.05524501405456498 0.2626262626262663 0 -4158 0.04649728270321704 0.2676767676767426 0 -4159 0.2914337605413108 0.2171717171721473 0 -4160 0.2914337605413351 0.2070707070711287 0 -4161 0.8950272237834626 0.6363636363651693 0 -4162 0.8862794924321288 0.6414141414156392 0 -4163 0.8862794924321107 0.651515151516614 0 -4164 0.8775317610807934 0.64646464646611 0 -4165 0.2214519097292919 0.7323232323232971 0 -4166 0.2127041783784988 0.4646464646466251 0 -4167 0.2476951037839915 0.4444444444446812 0 -4168 0.8162976416216741 0.4393939393956046 0 -4169 0.7113248654055716 0.5404040404052726 0 -4170 0.5101270443245037 0.373737373738625 0 -4171 0.4838838502710813 0.2272727272736645 0 -4172 0.3789110740533242 0.7929292929299083 0 -4173 0.3176769545944647 0.5959595959599364 0 -4174 0.2651905664862825 0.6161616161618285 0 -4175 0.2651905664862607 0.6262626262628372 0 -4176 0.7900544475678 0.3434343434360455 0 -4177 0.7988021789191619 0.3383838383855541 0 -4178 0.7900544475676525 0.4242424242440601 0 -4179 0.07274047675621736 0.6464646464643814 0 -4180 0.8162976416213409 0.7323232323242197 0 -4181 0.7725589848649471 0.4242424242440273 0 -4182 0.8600362983779132 0.7777777777786986 0 -4183 0.8600362983778937 0.7878787878796787 0 -4184 0.5013793129740127 0.196969696970453 0 -4185 0.7288203281080672 0.6414141414152291 0 -4186 0.7200725967567105 0.646464646465709 0 -4187 0.5101270443253992 0.1717171717179579 0 -4188 0.2214519097293182 0.7222222222222872 0 -4189 0.2301996410806894 0.7171717171718037 0 -4190 0.8250453729726865 0.727272727273748 0 -4191 0.1777132529733862 0.2020202020202728 0 -4192 0.1864609843247332 0.2070707070707976 0 -4193 0.1864609843247104 0.2171717171718084 0 -4194 0.1689655216220391 0.1969696969697483 0 -4195 0.1952087156760768 0.2121212121213299 0 -4196 0.6850816713505808 0.8282828282842127 0 -4197 0.6938294027019217 0.8333333333347367 0 -4198 0.6063520891883731 0.8333333333345367 0 -4199 0.291433760541028 0.2878787878792758 0 -4200 0.8775317610811294 0.5252525252541385 0 -4201 0.3614156113526613 0.04545454545484441 0 -4202 0.6063520891881734 0.9242424242434016 0 -4203 0.6150998205395444 0.9191919191929085 0 -4204 0.5801088951352682 0.4747474747485845 0 -4205 0.413901999459557 0.4090909090919707 0 -4206 0.4139019994595394 0.4191919191929757 0 -4207 0.4226497308108839 0.4242424242434933 0 -4208 0.4139019994595221 0.4292929292939804 0 -4209 0.4139019994595759 0.3989898989909673 0 -4210 0.4226497308108666 0.4343434343444981 0 -4211 0.4139019994595041 0.4393939393949851 0 -4212 0.9300181491903022 0.1515151515168217 0 -4213 0.9387658805416689 0.1565656565673496 0 -4214 0.685081671350435 0.939393939395021 0 -4215 0.1777132529736198 0.06060606060601042 0 -4216 0.580108895135105 0.5454545454555852 0 -4217 0.5713611637837673 0.5404040404050653 0 -4218 0.9562613432440372 0.3484848484868853 0 -4219 0.9562613432440144 0.3585858585879236 0 -4220 0.9562613432440605 0.3383838383858472 0 -4221 0.03774955135197763 0.05050505050487679 0 -4222 0.03774955135196157 0.06060606060589649 0 -4223 0.03774955135178466 0.3131313131311884 0 -4224 0.0377630245747501 0.3232323232321712 0 -4225 0.03774955135180687 0.3030303030302014 0 -4226 0.03663507641998568 0.5758408336140455 0 -4227 0.03780864420409858 0.9495973013199508 0 -4228 0.03765340736080013 0.9397348221411378 0 -4229 0.212704178377307 0.9595959595959881 0 -4230 0.3876588054042849 0.9595959595963495 0 -4231 0.5976043578391586 0.04040404040524312 0 -4232 0.3351724172962491 0.9595959595962056 0 -4233 0.9475136118909455 0.9595959595974917 0 -4234 0.755063522163563 0.04040404040572263 0 -4235 0.7463157908122405 0.04545454545618267 0 -4236 0.7463157908122183 0.0555555555571406 0 -4237 0.7375680594609165 0.0505050505066405 0 -4238 0.7375680594609406 0.04040404040568448 0 -4239 0.7288203281096172 0.04545454545614029 0 -4240 0.1252268648656389 0.04040404040397751 0 -4241 0.8950475586188664 0.9595607386279718 0 -4242 0.8863020866937461 0.9545063201363969 0 -4243 0.8862820029049793 0.9444400961779722 0 -4244 0.8775345504951008 0.949490118087603 0 -4245 0.6325952832448565 0.04040404040572816 0 -4246 0.6500000405333758 0.04039974667045364 0 -4247 0.9123464799067187 0.04070923915650581 0 -4248 0.9212508393300018 0.0454884564285828 0 -4249 0.1952087156764232 0.04040404040396776 0 -4250 0.05524501405299934 0.9595959595958207 0 -4251 0.03775611722292611 0.9596073320208242 0 -4252 0.03774955135199393 0.04040404040385397 0 -4253 0.1427223275665124 0.9595959595959354 0 -4254 0.1514700589178664 0.9545454545454563 0 -4255 0.8775317610821659 0.04040404040574 0 -4256 0.8687840297308127 0.04545454545623529 0 -4257 0.877472441079493 0.9594130022217929 0 -4258 0.8687777485524559 0.9545245891263203 0 -4259 0.7200725967556001 0.9595959595969517 0 -4260 0.2651905664874656 0.04040404040410427 0 -4261 0.4926315816204075 0.9595959595966678 0 -4262 0.7375680594583207 0.9595959595969644 0 -4263 0.1865293941092385 0.03547202457538051 0 -4264 0.1777132529736544 0.04040404040393321 0 -4265 0.597604357836732 0.9595959595969651 0 -4266 0.04649728270337437 0.03535353535335602 0 -4267 0.8775317610804569 0.8181818181825694 0 -4268 0.807549910269973 0.7474747474756742 0 -4269 0.5976043578387497 0.2121212121221314 0 -4270 0.7375680594591074 0.7272727272739612 0 -4271 0.6238475518921088 0.3484848484863055 0 -4272 0.7025771340533747 0.787878787880239 0 -4273 0.9650090745944877 0.5050505050524092 0 -4274 0.04649728270323683 0.2575757575757554 0 -4275 0.7638112535142609 0.1868686868700357 0 -4276 0.7725589848656189 0.1818181818195603 0 -4277 0.8075499102705108 0.3434343434360707 0 -4278 0.5451179697291432 0.7373737373748109 0 -4279 0.5363702383778003 0.7323232323242852 0 -4280 0.7375680594608927 0.06060606060759918 0 -4281 0.05524501405285737 0.8888888888889483 0 -4282 0.04649728270147661 0.8939393939394404 0 -4283 0.7725589848655918 0.1919191919205584 0 -4284 0.7813067162169536 0.186868686870082 0 -4285 0.7813067162169258 0.196969696971083 0 -4286 0.1252268648650713 0.3737373737373544 0 -4287 0.7813067162157765 0.7525252525264874 0 -4288 0.8075499102699553 0.757575757576659 0 -4289 0.3176769545936629 0.8888888888892276 0 -4290 0.3264246859449951 0.893939393939746 0 -4291 0.475136118920069 0.1616161616170188 0 -4292 0.4576406562173567 0.1616161616169818 0 -4293 0.05523785909770536 0.4747474747667531 0 -4294 0.3351724172963542 0.888888888889273 0 -4295 0.5451179697300575 0.3030303030316152 0 -4296 0.5451179697300549 0.2929292929306412 0 -4297 0.5363702383787072 0.2878787878801383 0 -4298 0.8687840297308038 0.055555555557232 0 -4299 0.8600362983794596 0.05050505050673664 0 -4300 0.8600362983794714 0.04040404040573892 0 -4301 0.8512885670281274 0.04545454545623703 0 -4302 0.7200725967560286 0.8181818181832766 0 -4303 0.1514700589178881 0.944444444444462 0 -4304 0.1602177902692201 0.9494949494949778 0 -4305 0.1602177902691973 0.9595959595959714 0 -4306 0.1689655216205502 0.9545454545454949 0 -4307 0.807549910270525 0.333333333335062 0 -4308 0.7025771340548155 0.2121212121223699 0 -4309 0.7113248654061745 0.2070707070718927 0 -4310 0.8687836417552055 0.944441589242513 0 -4311 0.8600355573606424 0.9494923138713927 0 -4312 0.8600355181335853 0.959593348370021 0 -4313 0.8512883979969527 0.954544871563178 0 -4314 0.8512884659097559 0.9444440868225593 0 -4315 0.8425408056584001 0.9494948449843563 0 -4316 0.8425408356745726 0.9393939393951946 0 -4317 0.8337931009880504 0.9444444328332557 0 -4318 0.8337931006174432 0.9545454416440078 0 -4319 0.8250453721437302 0.9494949466129804 0 -4320 0.8250453725600102 0.9595959581635665 0 -4321 0.8162976414826409 0.9545454540670204 0 -4322 0.2826860291895024 0.4040404040407466 0 -4323 0.9387658805403112 0.5606060606078319 0 -4324 0.3526678799992891 0.7878787878793424 0 -4325 0.3526678799992612 0.7979797979803416 0 -4326 0.6063520891904091 0.06565656565768298 0 -4327 0.9037749551346218 0.7222222222234116 0 -4328 0.2214519097286587 0.9545454545455091 0 -4329 0.1339745962169218 0.1060606060606984 0 -4330 0.2564428351359205 0.1161616161618642 0 -4331 0.04649728270321923 0.1666666666665272 0 -4332 0.03774955135188626 0.1616161616160127 0 -4333 0.03774955135186535 0.1717171717170043 0 -4334 0.9475136118926881 0.3333333333353115 0 -4335 0.9562613432440829 0.3282828282848088 0 -4336 0.9475136118927112 0.3232323232342721 0 -4337 0.9562613432441061 0.3181818181837699 0 -4338 0.1252268648645109 0.6161616161614492 0 -4339 0.1339745962158645 0.6212121212119812 0 -4340 0.1339745962158899 0.6111111111109623 0 -4341 0.8775317610817407 0.3131313131331498 0 -4342 0.4488929248658599 0.2171717171725057 0 -4343 0.09898367081109315 0.3484848484848056 0 -4344 0.4401451935129355 0.7272727272735477 0 -4345 0.1427223275667311 0.8585858585858772 0 -4346 0.8425408356755315 0.6262626262639903 0 -4347 0.2301996410815524 0.2626262626265979 0 -4348 0.1077314021611965 0.9191919191918664 0 -4349 0.1339745962157952 0.6515151515150445 0 -4350 0.378911074054501 0.3383838383845708 0 -4351 0.1864609843238523 0.7121212121212769 0 -4352 0.3876588054045144 0.858585858586418 0 -4353 0.3964065367558482 0.8636363636369392 0 -4354 0.3876588054044874 0.8686868686874153 0 -4355 0.3964065367558208 0.8737373737379365 0 -4356 0.9300181491884845 0.777777777778778 0 -4357 0.938765880539793 0.782828282829275 0 -4358 0.9387658805398096 0.7727272727283132 0 -4359 0.9475136118911158 0.7777777777788081 0 -4360 0.9475136118911327 0.767676767677849 0 -4361 0.9562613432424369 0.7727272727283406 0 -4362 0.9562613432424202 0.7828282828292998 0 -4363 0.956261343242455 0.7626262626273714 0 -4364 0.9475136118911425 0.7575757575768657 0 -4365 0.4051542681069895 0.9494949494954094 0 -4366 0.4051542681069616 0.9595959595963972 0 -4367 0.4139019994583139 0.9545454545459265 0 -4368 0.1602177902701412 0.555555555555532 0 -4369 0.1514700589187948 0.5505050505050065 0 -4370 0.1602177902701642 0.5454545454545222 0 -4371 0.1514700589188182 0.5404040404039976 0 -4372 0.160217790270187 0.5353535353535136 0 -4373 0.151470058918842 0.5303030303029894 0 -4374 0.1602177902702098 0.5252525252525058 0 -4375 0.1514700589188663 0.5202020202019824 0 -4376 0.1602177902702334 0.5151515151514996 0 -4377 0.1514700589188906 0.5101010101009764 0 -4378 0.1602177902702565 0.5050505050504944 0 -4379 0.1514700589189148 0.4999999999999713 0 -4380 0.1602177902702799 0.4949494949494898 0 -4381 0.1514700589189392 0.4898989898989672 0 -4382 0.1602177902703035 0.4848484848484861 0 -4383 0.1514700589189632 0.4797979797979641 0 -4384 0.1602177902703266 0.474747474747483 0 -4385 0.151470058918987 0.4696969696969615 0 -4386 0.1602177902703499 0.4646464646464803 0 -4387 0.1514700589190105 0.4595959595959593 0 -4388 0.1602177902703731 0.4545454545454783 0 -4389 0.8162976416224447 0.1767676767692522 0 -4390 0.3176769545955926 0.111111111111498 0 -4391 0.4401451935137489 0.3333333333344741 0 -4392 0.3526678799990366 0.9090909090913095 0 -4393 0.4313974621613997 0.8030303030310399 0 -4394 0.8162976416213907 0.6919191919203262 0 -4395 0.18646098432353 0.8333333333334731 0 -4396 0.4139019994604025 0.227272727273438 0 -4397 0.4139019994603795 0.2373737373744497 0 -4398 0.7025771340532418 0.8686868686882505 0 -4399 0.4226497308098054 0.8989898989905001 0 -4400 0.3526678800004578 0.333333333333965 0 -4401 0.7813067162168539 0.2676767676783245 0 -4402 0.6063520891885055 0.7828282828294962 0 -4403 0.597604357837029 0.8282828282840098 0 -4404 0.09898367081095402 0.3989898989897207 0 -4405 0.4226497308099326 0.8484848484855126 0 -4406 0.2389473724327725 0.3686868686871541 0 -4407 0.8162976416212789 0.7626262626271687 0 -4408 0.1164791335135057 0.4595959595957444 0 -4409 0.4663883875677125 0.3888888888900527 0 -4410 0.4488929248637767 0.9242424242430596 0 -4411 0.2914337605409374 0.3585858585862693 0 -4412 0.4226497308108488 0.4444444444455027 0 -4413 0.4139019994594862 0.4494949494959898 0 -4414 0.4226497308108311 0.4545454545465076 0 -4415 0.2039564470273795 0.3585858585860617 0 -4416 0.3439201486478382 0.8333333333338145 0 -4417 0.466388387567278 0.6616161616168731 0 -4418 0.168965521621212 0.6717171717171774 0 -4419 0.5276225070264347 0.7373737373747697 0 -4420 0.5276225070264559 0.7272727272737627 0 -4421 0.5451179697297346 0.6363636363643157 0 -4422 0.5363702383783691 0.6414141414147959 0 -4423 0.5451179697297067 0.6464646464653172 0 -4424 0.5976043578379785 0.4040404040417739 0 -4425 0.9212704178374573 0.6212121212137741 0 -4426 0.238947372432165 0.6414141414142995 0 -4427 0.5276225070262766 0.7979797979807972 0 -4428 0.5188747756749117 0.8030303030312773 0 -4429 0.5276225070262512 0.8080808080818007 0 -4430 0.1339745962165777 0.3181818181819105 0 -4431 0.7988021789188269 0.6313131313143814 0 -4432 0.2214519097287375 0.9141414141415449 0 -4433 0.2301996410800894 0.9090909090910636 0 -4434 0.2214519097287541 0.9040404040405523 0 -4435 0.2301996410801065 0.8989898989900692 0 -4436 0.2214519097287697 0.8939393939395585 0 -4437 0.6150998205415407 0.1616161616172151 0 -4438 0.090235939459943 0.1717171717171203 0 -4439 0.3526678800000005 0.5454545454549926 0 -4440 0.5538657010812189 0.4090909090922081 0 -4441 0.5451179697298597 0.414141414142694 0 -4442 0.5626134324317447 0.7777777777788777 0 -4443 0.8687840297305431 0.2272727272744168 0 -4444 0.3876588054066196 0.08080808080861901 0 -4445 0.1514700589190363 0.4494949494949576 0 -4446 0.4139019994588543 0.7424242424249905 0 -4447 0.6063520891901036 0.207070707071653 0 -4448 0.7463157908106434 0.7020202020211834 0 -4449 0.4751361189189949 0.5151515151523844 0 -4450 0.6325952832432009 0.5454545454557065 0 -4451 0.632595283243224 0.5353535353547071 0 -4452 0.6938294027028382 0.3989898989914173 0 -4453 0.8425408356757194 0.4646464646481754 0 -4454 0.8775317610809821 0.5656565656581397 0 -4455 0.2914337605414232 0.1262626262629714 0 -4456 0.6325952832431876 0.5555555555566879 0 -4457 0.05524501405463609 0.1313131313130586 0 -4458 0.04649728270329843 0.1262626262625416 0 -4459 0.2214519097305329 0.05555555555557807 0 -4460 0.2301996410819267 0.05050505050507633 0 -4461 0.68508167135215 0.2020202020213334 0 -4462 0.6850816713521254 0.212121212122328 0 -4463 0.6763339400007921 0.207070707071809 0 -4464 0.5188747756750911 0.7323232323242492 0 -4465 0.5188747756751113 0.7222222222232437 0 -4466 0.4751361189183392 0.727272727273638 0 -4467 0.5101270443237468 0.7272727272737294 0 -4468 0.5101270443237675 0.7171717171727239 0 -4469 0.361415611350426 0.8939393939398426 0 -4470 0.4051542681090308 0.2323232323239243 0 -4471 0.4051542681090078 0.2424242424249367 0 -4472 0.3964065367576589 0.2373737373744112 0 -4473 0.3964065367576354 0.2474747474754241 0 -4474 0.3876588054062864 0.2424242424248979 0 -4475 0.3876588054062626 0.2525252525259111 0 -4476 0.5101270443254232 0.1616161616169601 0 -4477 0.641343014595522 0.1767676767687519 0 -4478 0.7375680594587364 0.8383838383852968 0 -4479 0.1777132529727419 0.6060606060606322 0 -4480 0.16896552162137 0.6111111111111188 0 -4481 0.1777132529727188 0.6161616161616458 0 -4482 0.1689655216213463 0.6212121212121325 0 -4483 0.1777132529726956 0.6262626262626598 0 -4484 0.1689655216213223 0.6313131313131467 0 -4485 0.1777132529726714 0.6363636363636751 0 -4486 0.05524501405306183 0.80808080808075 0 -4487 0.04649728270167549 0.8131313131312381 0 -4488 0.04649728270170347 0.8030303030302103 0 -4489 0.3789110740549134 0.2474747474753847 0 -4490 0.3789110740548892 0.2575757575763977 0 -4491 0.9387658805416136 0.1868686868704496 0 -4492 0.947513611893003 0.1818181818199502 0 -4493 0.9125226864859971 0.6969696969709918 0 -4494 0.8162976416207223 0.9141414141425924 0 -4495 0.0814882081083082 0.3787878787876974 0 -4496 0.3001814918929877 0.05050505050522139 0 -4497 0.30018149189301 0.04040404040417853 0 -4498 0.3089292232443845 0.04545454545472172 0 -4499 0.2214519097305536 0.04545454545453866 0 -4500 0.2301996410819486 0.04040404040403497 0 -4501 0.9037749551359189 0.277777777779603 0 -4502 0.8600362983774825 0.9090909090921855 0 -4503 0.05524501405432233 0.3636363636361465 0 -4504 0.04649728270297008 0.368686868686621 0 -4505 0.04649728270299363 0.358585858585633 0 -4506 0.1077314021629066 0.05050505050498535 0 -4507 0.1077314021629269 0.04040404040395003 0 -4508 0.09898367081153624 0.04545454545445003 0 -4509 0.7638112535134444 0.6414141414153001 0 -4510 0.9475136118929846 0.1919191919209849 0 -4511 0.9562613432443757 0.1868686868704839 0 -4512 0.9562613432443489 0.1969696969715067 0 -4513 0.9562613432443925 0.1767676767694463 0 -4514 0.06399274540506709 0.5606060606056238 0 -4515 0.8862794924320592 0.6818181818195016 0 -4516 0.7725589848647766 0.6464646464658109 0 -4517 0.07274047675700203 0.3636363636361931 0 -4518 0.7113248654054664 0.5909090909102515 0 -4519 0.1427223275673734 0.5757575757575127 0 -4520 0.1427223275674495 0.5454545454544824 0 -4521 0.05524501405465677 0.1212121212120591 0 -4522 0.04649728270331732 0.1161616161615411 0 -4523 0.9212682424490909 0.05555932344311923 0 -4524 0.9300157320904864 0.05050923704659461 0 -4525 0.9300176389137067 0.06060694443290394 0 -4526 0.9387655552776768 0.05555611893120619 0 -4527 0.938765575834642 0.04545507322448025 0 -4528 0.947513537880722 0.05050517870006615 0 -4529 0.9475135757526575 0.06060612320496287 0 -4530 0.9562613310052946 0.05555557675628594 0 -4531 0.9562613378689662 0.06565657496907069 0 -4532 0.9562613336610029 0.04545456205544667 0 -4533 0.05524501405412163 0.4444444444440818 0 -4534 0.3876588054065955 0.09090909090964744 0 -4535 0.5276225070281154 0.1616161616170025 0 -4536 0.8862794924333905 0.1767676767693112 0 -4537 0.886279492433368 0.1868686868703348 0 -4538 0.3089292232436457 0.3585858585863141 0 -4539 0.3176769545950102 0.353535353535832 0 -4540 0.3176769545950351 0.343434343434826 0 -4541 0.04649728270262347 0.4696969696964832 0 -4542 0.9212704178369311 0.914141414142814 0 -4543 0.9650090745937001 0.8383838383846285 0 -4544 0.9650090745936892 0.8484848484855951 0 -4545 0.9650090745937128 0.8282828282836653 0 -4546 0.9562613432423611 0.8535353535360701 0 -4547 0.96500907459368 0.8585858585865672 0 -4548 0.6150998205397171 0.8383838383850628 0 -4549 0.3351724172974145 0.494949494949924 0 -4550 0.4226497308107536 0.5757575757581759 0 -4551 0.422649730810778 0.5656565656571759 0 -4552 0.7200725967569289 0.5353535353547891 0 -4553 0.5188747756746767 0.8838383838392763 0 -4554 0.5276225070260083 0.8888888888897944 0 -4555 0.5888566264864969 0.6414141414148553 0 -4556 0.3176769545949946 0.3636363636368332 0 -4557 0.5801088951351558 0.6363636363643335 0 -4558 0.7025771340541335 0.5858585858597442 0 -4559 0.7025771340541518 0.4747474747488727 0 -4560 0.2214519097303953 0.1262626262628176 0 -4561 0.2127041783790319 0.1212121212122849 0 -4562 0.2127041783790598 0.1111111111112693 0 -4563 0.2301996410817593 0.1313131313133512 0 -4564 0.6675862086487053 0.4545454545468797 0 -4565 0.6588384772973527 0.4595959595973629 0 -4566 0.1689655216222907 0.1161616161617072 0 -4567 0.1777132529736712 0.1111111111112132 0 -4568 0.8425408356757536 0.5252525252540856 0 -4569 0.798802178919407 0.3080808080824607 0 -4570 0.07274047675722406 0.2626262626262757 0 -4571 0.7725589848656432 0.1717171717185649 0 -4572 0.8775317610820115 0.1818181818198019 0 -4573 0.8775317610819882 0.1919191919208235 0 -4574 0.7200725967576627 0.1414141414154772 0 -4575 0.711324865406341 0.1363636363649634 0 -4576 0.7025771340549924 0.1414141414154314 0 -4577 0.7025771340550206 0.1313131313144497 0 -4578 0.6938294027036737 0.1363636363649164 0 -4579 0.7288203281089849 0.1464646464659918 0 -4580 0.6938294027036939 0.1262626262639366 0 -4581 0.7550635221623099 0.5353535353548557 0 -4582 0.4051542681089852 0.25252525252595 0 -4583 0.4226497308110381 0.3333333333344461 0 -4584 0.4139019994596762 0.3383838383849389 0 -4585 0.4139019994596581 0.3484848484859431 0 -4586 0.5713611637839296 0.4696969696980633 0 -4587 0.6588384772963937 0.9141414141424777 0 -4588 0.6675862086496661 0.1111111111124168 0 -4589 0.6588384772983447 0.1060606060619083 0 -4590 0.1777132529736011 0.07070707070704725 0 -4591 0.3439201486479263 0.7929292929298194 0 -4592 0.3439201486478968 0.8030303030308169 0 -4593 0.6850816713504654 0.9292929292940324 0 -4594 0.9212704178389368 0.1464646464662912 0 -4595 0.9125226864875537 0.1515151515167899 0 -4596 0.615099820540669 0.585858585859476 0 -4597 0.5888566264864425 0.5505050505061058 0 -4598 0.9125226864875727 0.1414141414157622 0 -4599 0.9037749551361907 0.1464646464662608 0 -4600 0.9037749551362082 0.1363636363652355 0 -4601 0.05524501405288576 0.8989898989899482 0 -4602 0.04649728270153298 0.9040404040404338 0 -4603 0.7113248654042716 0.9545454545464295 0 -4604 0.965009074593728 0.9494949494965014 0 -4605 0.9650090745937039 0.9595959595975404 0 -4606 0.9650090745937475 0.9393939393954623 0 -4607 0.9650090745952004 0.4242424242446264 0 -4608 0.9650090745952268 0.4141414141436 0 -4609 0.9650090745957678 0.18181818181998 0 -4610 0.9650090745957824 0.1717171717189396 0 -4611 0.9650090721711485 0.05050505470663417 0 -4612 0.9650090732616571 0.04040404271679508 0 -4613 0.9562613420314404 0.03535353745639638 0 -4614 0.2214519097305749 0.03535353535349701 0 -4615 0.413901999458287 0.9646464646469148 0 -4616 0.4226497308096386 0.9595959595964439 0 -4617 0.3439201486499164 0.03535353535376029 0 -4618 0.2739382978388626 0.03535353535359891 0 -4619 0.8162976415593157 0.9646464644351056 0 -4620 0.8075499102469226 0.9595959595202456 0 -4621 0.8075499102512761 0.9494949494342967 0 -4622 0.7988021789132259 0.9545454545312135 0 -4623 0.7988021789146295 0.9646464646372043 0 -4624 0.7900544475657795 0.9595959595954093 0 -4625 0.09892003339275784 0.03546375859603556 0 -4626 0.9205684386397567 0.03479538102916748 0 -4627 0.03760405471261327 0.2624002269579865 0 -4628 0.03705436947468968 0.2519610321464026 0 -4629 0.03773338505861409 0.2727021576529685 0 -4630 0.03773993856751106 0.1313598160525583 0 -4631 0.03777635735454549 0.2221757928632216 0 -4632 0.03775252979654013 0.2121160533033543 0 -4633 0.0377495513514583 0.4343434343430423 0 -4634 0.03774955135143274 0.4444444444440365 0 -4635 0.03775847717800938 0.3636209036513398 0 -4636 0.03774093032569137 0.3736889712215542 0 -4637 0.03775054311015175 0.3535336357590341 0 -4638 0.036978617083327 0.4852854129222476 0 -4639 0.03764067284654178 0.5054301396016054 0 -4640 0.03746744127091137 0.5252522713520693 0 -4641 0.03654870652701824 0.5455102397280727 0 -4642 0.03764327986430788 0.5963323534547706 0 -4643 0.03831189067067406 0.6161390958733729 0 -4644 0.03785860766985238 0.6362548985052405 0 -4645 0.03774955135069245 0.6565656565653177 0 -4646 0.03774955135066688 0.6666666666663486 0 -4647 0.03774955135031612 0.8080808080806998 0 -4648 0.03774955135034461 0.7979797979796699 0 -4649 0.03774955135028947 0.8181818181817297 0 -4650 0.03773993856572663 0.8788345635273433 0 -4651 0.0377495513501047 0.8989898989899316 0 -4652 0.03774955135012296 0.9090909090909416 0 -4653 0.8512885670281395 0.03535353535524824 0 -4654 0.8425408356768016 0.04040404040574461 0 -4655 0.8512884615511163 0.9646461097354576 0 -4656 0.8425408356768173 0.03030303030476048 0 -4657 0.833793104325485 0.03535353535525089 0 -4658 0.5888566264878586 0.03535353535473532 0 -4659 0.3264246859448782 0.964646464646679 0 -4660 0.308929223244405 0.03535353535367827 0 -4661 0.7113248654042181 0.964646464647446 0 -4662 0.9037772145603093 0.9646425512068519 0 -4663 0.9036086643689983 0.03574373074386007 0 -4664 0.7638112535148829 0.03535353535526176 0 -4665 0.1689665768283348 0.9646446369729502 0 -4666 0.1339745962151583 0.9646464646464139 0 -4667 0.3614156113526892 0.03535353535380194 0 -4668 0.2039369580042986 0.9646127086707684 0 -4669 0.7288203281096437 0.03535353535518495 0 -4670 0.7200725967583205 0.04040404040564036 0 -4671 0.2214519097286379 0.9646464646464982 0 -4672 0.4838838502690454 0.9646464646471387 0 -4673 0.4751361189177144 0.9595959595966147 0 -4674 0.7988021789201509 0.03535353535532584 0 -4675 0.6063520891880945 0.9646464646474944 0 -4676 0.7900544475688419 0.0303030303048339 0 -4677 0.7900544475658575 0.9696969696967955 0 -4678 0.7813067162147883 0.9646464646472717 0 -4679 0.7200725967555781 0.9696969696979784 0 -4680 0.9650090745937382 0.7777777777788322 0 -4681 0.9650090745937254 0.7878787878797883 0 -4682 0.9650090745938024 0.7272727272739599 0 -4683 0.9650090745937772 0.7373737373749105 0 -4684 0.9650090745939148 0.6767676767691745 0 -4685 0.9650090745939348 0.6666666666682222 0 -4686 0.9650090745938934 0.6868686868701264 0 -4687 0.9650090745940907 0.5959595959614677 0 -4688 0.965009074594066 0.6060606060624247 0 -4689 0.9650090745941164 0.5858585858605092 0 -4690 0.9387658805397527 0.8434343434351669 0 -4691 0.9125226864856989 0.8585858585872623 0 -4692 0.8512885670265145 0.7929292929302711 0 -4693 0.9562613432423726 0.8636363636370441 0 -4694 0.9650090745936803 0.8686868686875492 0 -4695 0.8950272237830623 0.8383838383845573 0 -4696 0.8862794924317422 0.8434343434350368 0 -4697 0.9037749551356264 0.4292929292949922 0 -4698 0.545117969730065 0.2828282828296548 0 -4699 0.55386570108141 0.2878787878801603 0 -4700 0.5888566264873962 0.2171717171726101 0 -4701 0.7288203281074127 0.792929292930793 0 -4702 0.7725589848646089 0.7272727272737013 0 -4703 0.8862794924326178 0.3989898989917446 0 -4704 0.8862794924326368 0.3888888888907316 0 -4705 0.8775317610812851 0.3838383838402079 0 -4706 0.886279492432656 0.3787878787897169 0 -4707 0.5101270443253194 0.2121212121219486 0 -4708 0.5976043578371927 0.767676767677965 0 -4709 0.5888566264858521 0.762626262627437 0 -4710 0.7200725967582938 0.05050505050659596 0 -4711 0.7113248654069962 0.04545454545609485 0 -4712 0.7113248654070249 0.03535353535513954 0 -4713 0.7025771340557009 0.04040404040559176 0 -4714 0.6763339400007665 0.2171717171728048 0 -4715 0.6675862086494333 0.2121212121222842 0 -4716 0.6500907459458283 0.7070707070714947 0 -4717 0.6588384772971702 0.7121212121220106 0 -4718 0.6413430145944865 0.7020202020209781 0 -4719 0.6063520891904831 0.04545454545575137 0 -4720 0.6063520891904925 0.03535353535479017 0 -4721 0.6938294027029419 0.3484848484863855 0 -4722 0.5713611637837472 0.6616161616168252 0 -4723 0.728820328107796 0.7222222222234032 0 -4724 0.588856626486431 0.6717171717178679 0 -4725 0.5976043578377735 0.6767676767683886 0 -4726 0.7638112535128174 0.8232323232338296 0 -4727 0.7550635221614723 0.8181818181833245 0 -4728 0.6063520891900821 0.2171717171726466 0 -4729 0.6150998205414369 0.2121212121221683 0 -4730 0.4663883875670884 0.6919191919201082 0 -4731 0.4751361189184259 0.6969696969706349 0 -4732 0.5188747756766496 0.2171717171724644 0 -4733 0.6938294027020344 0.7828282828297195 0 -4734 0.6325952832434666 0.3434343434358179 0 -4735 0.6850816713512397 0.5656565656578292 0 -4736 0.7375680594587938 0.7979797979812387 0 -4737 0.7638112535132662 0.7222222222232295 0 -4738 0.7550635221629073 0.1919191919205044 0 -4739 0.1952087156760566 0.2222222222223351 0 -4740 0.5626134324329606 0.3232323232335111 0 -4741 0.5626134324329475 0.3333333333345113 0 -4742 0.2914337605397652 0.8333333333336799 0 -4743 0.2826860291884322 0.8282828282831587 0 -4744 0.6063520891903815 0.07575757575864997 0 -4745 0.597604357839046 0.08080808080911586 0 -4746 0.6150998205417166 0.07070707070818751 0 -4747 0.4488929248643856 0.6919191919200578 0 -4748 0.4401451935130192 0.6969696969705343 0 -4749 0.7025771340542092 0.545454545455753 0 -4750 0.1427223275677805 0.4141414141414322 0 -4751 0.1427223275677738 0.4242424242424437 0 -4752 0.3964065367562047 0.7222222222229437 0 -4753 0.4051542681075682 0.7171717171724644 0 -4754 0.3876588054048407 0.7272727272734216 0 -4755 0.3001814918907779 0.9494949494951516 0 -4756 0.3001814918907431 0.9595959595961389 0 -4757 0.2914337605393787 0.964646464646619 0 -4758 0.7725589848641599 0.8282828282843403 0 -4759 0.06399274540423813 0.8838383838384586 0 -4760 0.1427223275676012 0.4747474747474129 0 -4761 0.5713611637842915 0.3383838383850233 0 -4762 0.1427223275675561 0.4949494949494184 0 -4763 0.9037749551356029 0.4393939393959923 0 -4764 0.9125226864869556 0.4444444444465251 0 -4765 0.8862794924321482 0.6313131313146655 0 -4766 0.8950272237834833 0.6262626262641979 0 -4767 0.6850816713515709 0.343434343435889 0 -4768 0.1427223275675058 0.5151515151514299 0 -4769 0.1339745962164292 0.3686868686868761 0 -4770 0.79005444756829 0.1919191919206052 0 -4771 0.7900544475682639 0.2020202020216064 0 -4772 0.2826860291899574 0.2121212121216171 0 -4773 0.9562613432428141 0.5808080808100069 0 -4774 0.9650090745941422 0.5757575757595503 0 -4775 0.2914337605412867 0.2272727272731653 0 -4776 0.3001814918926385 0.2323232323236953 0 -4777 0.06398804933355216 0.4797979798151235 0 -4778 0.3176769545936409 0.8989898989902214 0 -4779 0.2039564470274497 0.2171717171718854 0 -4780 0.2127041783778726 0.7575757575757994 0 -4781 0.2127041783778482 0.7676767676768087 0 -4782 0.2214519097291936 0.772727272727334 0 -4783 0.2127041783778172 0.7777777777778321 0 -4784 0.2214519097291694 0.7828282828283434 0 -4785 0.2127041783777874 0.7878787878788558 0 -4786 0.2214519097291463 0.7929292929293524 0 -4787 0.2301996410805141 0.7878787878788653 0 -4788 0.2301996410804945 0.7979797979798645 0 -4789 0.2389473724318574 0.7929292929293884 0 -4790 0.2389473724318359 0.8030303030303867 0 -4791 0.2476951037831978 0.7979797979799144 0 -4792 0.2476951037831633 0.8080808080809323 0 -4793 0.2564428351345361 0.8030303030304415 0 -4794 0.2564428351344816 0.8131313131314912 0 -4795 0.06399167372176812 0.5000000006942305 0 -4796 0.8162976416221467 0.3080808080824703 0 -4797 0.8250453729735674 0.3030303030319463 0 -4798 0.8250453729735947 0.2929292929309287 0 -4799 0.1952087156746262 0.9494949494949984 0 -4800 0.9212704178374924 0.6111111111127916 0 -4801 0.8600362983794011 0.08080808080978759 0 -4802 0.2127041783779464 0.7272727272727694 0 -4803 0.06398851954456819 0.5202020453052635 0 -4804 0.1864609843247698 0.3181818181820029 0 -4805 0.1777132529734053 0.323232323232489 0 -4806 0.1952087156761338 0.3131313131315213 0 -4807 0.2301996410801208 0.8888888888890736 0 -4808 0.2389473724314587 0.8939393939395838 0 -4809 0.2214519097287838 0.8838383838385633 0 -4810 0.2127041783774315 0.8888888888890486 0 -4811 0.2127041783774456 0.8787878787880529 0 -4812 0.2039564470260914 0.8838383838385395 0 -4813 0.2039564470261049 0.8737373737375425 0 -4814 0.1952087156747505 0.8787878787880301 0 -4815 0.1952087156747626 0.868686868687032 0 -4816 0.1864609843234078 0.8737373737375213 0 -4817 0.1864609843234182 0.8636363636365219 0 -4818 0.177713252972067 0.8686868686870137 0 -4819 0.2914337605395324 0.8939393939397 0 -4820 0.1427223275676704 0.4545454545454168 0 -4821 0.06398430089622539 0.5404042854651601 0 -4822 0.8075499102702957 0.4545454545470906 0 -4823 0.7988021789189368 0.4595959595975755 0 -4824 0.1339745962152132 0.9343434343434267 0 -4825 0.8600362983784654 0.5151515151531108 0 -4826 0.8687840297298177 0.5101010101026309 0 -4827 0.8687840297306342 0.1868686868702923 0 -4828 0.868784029730609 0.1969696969713114 0 -4829 0.3789110740538397 0.6414141414145962 0 -4830 0.3701633427024753 0.6464646464650792 0 -4831 0.3876588054052035 0.6363636363641129 0 -4832 0.3876588054052251 0.6262626262631099 0 -4833 0.3964065367565661 0.6313131313136288 0 -4834 0.3964065367565877 0.621212121212626 0 -4835 0.4051542681079288 0.6262626262631454 0 -4836 0.05524501405453979 0.2525252525252142 0 -4837 0.1602177902699661 0.6262626262626045 0 -4838 0.8600362983774608 0.9191919191931972 0 -4839 0.8512885670261157 0.9141414141426706 0 -4840 0.8512885670276409 0.3181818181836261 0 -4841 0.2826860291899801 0.2020202020206002 0 -4842 0.0552450140546779 0.1111111111110586 0 -4843 0.956261343242639 0.6616161616177241 0 -4844 0.9650090745939569 0.6565656565672715 0 -4845 0.8775317610810944 0.5353535353551416 0 -4846 0.238947372432577 0.4696969696971721 0 -4847 0.238947372432553 0.4797979797981757 0 -4848 0.5013793129729983 0.4595959595971433 0 -4849 0.9562613432430486 0.5303030303048675 0 -4850 0.9650090745943629 0.5353535353553734 0 -4851 0.9650090745943444 0.5454545454563473 0 -4852 0.5188747756757682 0.4393939393951606 0 -4853 0.2739382978381359 0.4090909090912279 0 -4854 0.7113248654059976 0.2777777777791927 0 -4855 0.2564428351358979 0.1262626262628952 0 -4856 0.2651905664872853 0.1212121212123994 0 -4857 0.09023593945991618 0.2727272727273307 0 -4858 0.09898367081124937 0.2777777777778464 0 -4859 0.3351724172965038 0.8282828282832951 0 -4860 0.3264246859451433 0.8333333333337704 0 -4861 0.7200725967573418 0.2828282828297145 0 -4862 0.7288203281087068 0.2777777777792287 0 -4863 0.2651905664858544 0.8080808080810031 0 -4864 0.9562613432424043 0.792929292930255 0 -4865 0.9650090745937132 0.7979797979807433 0 -4866 0.1689655216220042 0.3484848484850105 0 -4867 0.1602177902706668 0.3434343434344902 0 -4868 0.1514700589192861 0.3484848484849604 0 -4869 0.151470058919328 0.3383838383839675 0 -4870 0.4401451935144669 0.2323232323240019 0 -4871 0.7550635221629777 0.161616161617533 0 -4872 0.3264246859449729 0.9040404040407376 0 -4873 0.2826860291881912 0.8888888888891811 0 -4874 0.273938297836834 0.8939393939396562 0 -4875 0.5188747756757847 0.4292929292941572 0 -4876 0.3526678799993312 0.777777777778346 0 -4877 0.06399191799453352 0.5909090909086956 0 -4878 0.3789110740529616 0.9545454545458321 0 -4879 0.3789110740529343 0.9646464646468189 0 -4880 0.2127041783787198 0.3636363636365843 0 -4881 0.2039564470273547 0.3686868686870641 0 -4882 0.2476951037840092 0.4343434343436819 0 -4883 0.238947372432649 0.4393939393941603 0 -4884 0.4488929248659871 0.1666666666674606 0 -4885 0.4488929248660145 0.1565656565664532 0 -4886 0.3176769545946569 0.5151515151518915 0 -4887 0.3176769545946329 0.5252525252528976 0 -4888 0.4051542681071801 0.8686868686874609 0 -4889 0.4051542681071529 0.878787878788459 0 -4890 0.3964065367557925 0.8838383838389318 0 -4891 0.4226497308117281 0.2424242424249746 0 -4892 0.6675862086496301 0.13131313131437 0 -4893 0.04649728270315531 0.2979797979797237 0 -4894 0.1602177902703981 0.4444444444444768 0 -4895 0.32642468594613 0.4595959595963834 0 -4896 0.3264246859461551 0.4494949494953793 0 -4897 0.3264246859461042 0.4696969696973878 0 -4898 0.317676954594738 0.4747474747478678 0 -4899 0.3526678799992355 0.8080808080813415 0 -4900 0.1602177902700228 0.6060606060605882 0 -4901 0.230199641080985 0.5656565656567049 0 -4902 0.3526678799990995 0.8686868686873284 0 -4903 0.8162976416216916 0.4292929292946027 0 -4904 0.8250453729730343 0.4343434343451191 0 -4905 0.8250453729730155 0.4444444444461209 0 -4906 0.06399555466009046 0.6111111111107579 0 -4907 0.4051542681073641 0.7979797979804683 0 -4908 0.3789110740551105 0.1464646464652323 0 -4909 0.2476951037838933 0.4848484848486981 0 -4910 0.2389473724325296 0.4898989898991794 0 -4911 0.431397462162211 0.4393939393950151 0 -4912 0.2651905664867222 0.4343434343437211 0 -4913 0.3176769545940066 0.797979797980116 0 -4914 0.4401451935136076 0.4141414141425195 0 -4915 0.4751361189179957 0.8585858585866499 0 -4916 0.3701633427026846 0.555555555556039 0 -4917 0.8950272237831798 0.7878787878796799 0 -4918 0.4051542681079516 0.6161616161621433 0 -4919 0.4139019994592921 0.6212121212126643 0 -4920 0.3351724172971283 0.6161616161619855 0 -4921 0.772558984864981 0.5454545454558866 0 -4922 0.772558984864997 0.5353535353548911 0 -4923 0.2389473724328896 0.3181818181821215 0 -4924 0.5713611637837896 0.5303030303040652 0 -4925 0.5626134324324288 0.5353535353545463 0 -4926 0.5626134324324076 0.5454545454555468 0 -4927 0.5538657010810683 0.5404040404050288 0 -4928 0.5538657010810554 0.5505050505060187 0 -4929 0.5451179697297088 0.5454545454555113 0 -4930 0.5451179697296964 0.5555555555565012 0 -4931 0.5363702383783484 0.5505050505059954 0 -4932 0.5363702383783372 0.5606060606069847 0 -4933 0.5276225070269884 0.5555555555564806 0 -4934 0.5276225070269782 0.5656565656574699 0 -4935 0.5188747756756295 0.5606060606069663 0 -4936 0.5188747756756111 0.5707070707079674 0 -4937 0.510127044324269 0.5656565656574521 0 -4938 0.5101270443242497 0.5757575757584537 0 -4939 0.5188747756756449 0.5505050505059667 0 -4940 0.5013793129729078 0.5707070707079359 0 -4941 0.5013793129728901 0.5808080808089389 0 -4942 0.501379312972927 0.5606060606069301 0 -4943 0.5363702383783669 0.5404040404049947 0 -4944 0.55386570108109 0.5303030303040269 0 -4945 0.1952087156761081 0.2020202020203389 0 -4946 0.2826860291890166 0.6060606060608565 0 -4947 0.2739382978376702 0.6010101010103348 0 -4948 0.816297641621365 0.7222222222232403 0 -4949 0.8075499102700159 0.7272727272737229 0 -4950 0.1777132529720723 0.8585858585860121 0 -4951 0.4139019994604241 0.2171717171724271 0 -4952 0.5626134324325769 0.4040404040417206 0 -4953 0.5101270443242325 0.5858585858594554 0 -4954 0.501379312972873 0.5909090909099413 0 -4955 0.3001814918917091 0.6161616161619048 0 -4956 0.09023593945901313 0.626262626262385 0 -4957 0.177713252973409 0.191919191919262 0 -4958 0.1689655216220596 0.1868686868687423 0 -4959 0.1602177902706922 0.1919191919192255 0 -4960 0.2039564470268244 0.6010101010101803 0 -4961 0.5188747756748838 0.8131313131322796 0 -4962 0.5101270443235417 0.8080808080817548 0 -4963 0.5276225070262268 0.8181818181828039 0 -4964 0.04649728270203006 0.6717171717168863 0 -4965 0.03774955135064136 0.6767676767673799 0 -4966 0.3089292232443002 0.07575757575784246 0 -4967 0.06399274540597259 0.1363636363635727 0 -4968 0.2564428351349145 0.6212121212123141 0 -4969 0.2564428351349363 0.6111111111113051 0 -4970 0.4226497308122085 0.05050505050561366 0 -4971 0.4226497308122353 0.04040404040458045 0 -4972 0.4139019994608698 0.0353535353540393 0 -4973 0.4226497308122638 0.03030303030354602 0 -4974 0.4313974621636283 0.03535353535408797 0 -4975 0.06399274540547703 0.4393939393936064 0 -4976 0.2214519097293426 0.712121212121277 0 -4977 0.2301996410807131 0.7070707070707923 0 -4978 0.2389473724320606 0.7121212121213175 0 -4979 0.7025771340541814 0.4040404040419313 0 -4980 0.2214519097302265 0.2979797979800705 0 -4981 0.2301996410815934 0.2929292929295875 0 -4982 0.2389473724329372 0.2979797979801091 0 -4983 0.8600362983780285 0.7070707070718778 0 -4984 0.8950272237832463 0.7575757575767795 0 -4985 0.5013793129724033 0.7222222222232082 0 -4986 0.5013793129724258 0.712121212122204 0 -4987 0.1777132529733399 0.3535353535355291 0 -4988 0.4139019994589057 0.7222222222229869 0 -4989 0.4139019994589321 0.7121212121219855 0 -4990 0.8337931043249456 0.2979797979814641 0 -4991 0.3789110740530928 0.9040404040408896 0 -4992 0.3964065367579609 0.09595959596018103 0 -4993 0.1689655216212976 0.6414141414141619 0 -4994 0.7288203281088924 0.1868686868699458 0 -4995 0.3264246859463784 0.3484848484853498 0 -4996 0.8775317610801774 0.9191919191932334 0 -4997 0.7288203281080442 0.6515151515162263 0 -4998 0.2389473724332967 0.05555555555561539 0 -4999 0.0639927454044065 0.9242424242422876 0 -5000 0.9125226864872411 0.3030303030321874 0 -5001 0.3001814918922619 0.3838383838387776 0 -5002 0.7288203281081329 0.6111111111122465 0 -5003 0.7375680594594866 0.606060606061765 0 -5004 0.7638112535136511 0.3989898989915288 0 -5005 0.7550635221622891 0.4040404040420136 0 -5006 0.3701633427017811 0.8888888888893712 0 -5007 0.1777132529726471 0.6464646464646907 0 -5008 0.1864609843240212 0.6414141414142035 0 -5009 0.1689655216207305 0.8636363636365015 0 -5010 0.886279492433415 0.1666666666682879 0 -5011 0.3351724172985204 0.04040404040426218 0 -5012 0.8862794924318708 0.7828282828291742 0 -5013 0.8775317610807737 0.6565656565670852 0 -5014 0.8687840297294546 0.6515151515165801 0 -5015 0.8687840297294778 0.6414141414156023 0 -5016 0.8600362983781387 0.6464646464660686 0 -5017 0.8250453729727082 0.7171717171727648 0 -5018 0.6850816713505551 0.8383838383852175 0 -5019 0.6938294027018961 0.8434343434357428 0 -5020 0.7025771340532634 0.838383838385262 0 -5021 0.1077314021623112 0.3939393939392554 0 -5022 0.7025771340542254 0.5353535353547727 0 -5023 0.947513611892735 0.3131313131332305 0 -5024 0.9562613432441298 0.3080808080827309 0 -5025 0.7113248654055142 0.4696969696983956 0 -5026 0.8250453729730509 0.5353535353550383 0 -5027 0.7200725967566898 0.6565656565667014 0 -5028 0.1252268648652596 0.2020202020201696 0 -5029 0.1339745962166252 0.1969696969696896 0 -5030 0.3439201486487513 0.5000000000004473 0 -5031 0.6150998205405422 0.646464646465417 0 -5032 0.6063520891883474 0.8434343434355382 0 -5033 0.3789110740552317 0.085858585859114 0 -5034 0.3789110740552066 0.09595959596014085 0 -5035 0.5013793129729817 0.4696969696981463 0 -5036 0.4926315816216214 0.474747474748633 0 -5037 0.8775317610804346 0.8383838383845311 0 -5038 0.8775317610804163 0.8484848484855156 0 -5039 0.09022886863585804 0.04041628743087242 0 -5040 0.1427223275673546 0.585858585858517 0 -5041 0.6325952832443602 0.09090909091036066 0 -5042 0.7900544475683159 0.1818181818196043 0 -5043 0.5013793129740733 0.166666666667438 0 -5044 0.5013793129740989 0.1565656565664399 0 -5045 0.6325952832432258 0.6565656565664614 0 -5046 0.3264246859464019 0.3383838383843469 0 -5047 0.475136118919987 0.1919191919200444 0 -5048 0.4751361189199619 0.2020202020210492 0 -5049 0.3876588054066955 0.05050505050552143 0 -5050 0.3876588054067321 0.04040404040448287 0 -5051 0.947513607280205 0.07070707869865739 0 -5052 0.956261342134638 0.07575757768170563 0 -5053 0.3876588054054408 0.5353535353540698 0 -5054 0.4051542681081595 0.4343434343444675 0 -5055 0.9387658805414757 0.2474747474765662 0 -5056 0.9475136118928682 0.2424242424260657 0 -5057 0.9562613432442428 0.247474747476591 0 -5058 0.956261343244263 0.2373737373755558 0 -5059 0.9650090745955442 0.2424242424260862 0 -5060 0.9650090745956434 0.2323232323250444 0 -5061 0.3701633427027579 0.5252525252530346 0 -5062 0.142722327568264 0.1111111111112294 0 -5063 0.1339745962168993 0.1161616161617205 0 -5064 0.7900544475678144 0.3333333333350372 0 -5065 0.781306716216453 0.3383838383855289 0 -5066 0.4051542681082161 0.4141414141424579 0 -5067 0.2739382978383335 0.3080808080811959 0 -5068 0.2826860291896735 0.3131313131317343 0 -5069 0.2651905664869878 0.3030303030306719 0 -5070 0.8775317610804737 0.8080808080815903 0 -5071 0.8687840297291455 0.8131313131320658 0 -5072 0.2389473724329618 0.2878787878791018 0 -5073 0.1864609843250176 0.1161616161617443 0 -5074 0.1864609843250452 0.1060606060607186 0 -5075 0.1777132529736909 0.1010101010101867 0 -5076 0.8862794924324543 0.5303030303046553 0 -5077 0.8862794924324843 0.5202020202036649 0 -5078 0.3876588054062388 0.2626262626269251 0 -5079 0.3789110740548659 0.2676767676774113 0 -5080 0.3701633427035162 0.2626262626268844 0 -5081 0.3701633427034933 0.272727272727898 0 -5082 0.3614156113521435 0.2676767676773715 0 -5083 0.3614156113521665 0.2575757575763574 0 -5084 0.3526678800007934 0.2626262626268445 0 -5085 0.3526678800008168 0.2525252525258299 0 -5086 0.3439201486494433 0.2575757575763171 0 -5087 0.5888566264854744 0.9040404040414991 0 -5088 0.5801088951341059 0.9090909090919936 0 -5089 0.4051542681083127 0.3434343434354288 0 -5090 0.4051542681082941 0.3535353535364325 0 -5091 0.8162976416206943 0.9242424242435967 0 -5092 0.8250453729720664 0.9191919191931088 0 -5093 0.5801088951352921 0.4646464646475839 0 -5094 0.5888566264866247 0.4696969696981147 0 -5095 0.6500907459450367 0.9090909090919518 0 -5096 0.6238475518920357 0.5808080808090064 0 -5097 0.632595283243341 0.5858585858595398 0 -5098 0.9300181491903096 0.141414141415797 0 -5099 0.4576406562161911 0.4848484848495778 0 -5100 0.4488929248648468 0.4797979797990612 0 -5101 0.4663883875675348 0.4898989899000945 0 -5102 0.6938294027018193 0.9343434343445384 0 -5103 0.6938294027018413 0.9242424242435354 0 -5104 0.5801088951350816 0.5555555555565854 0 -5105 0.1689655216222408 0.06565656565652968 0 -5106 0.4139019994594693 0.459595959596995 0 -5107 0.422649730810814 0.4646464646475119 0 -5108 0.4051542681081237 0.4545454545464776 0 -5109 0.702577134052864 0.9595959595969217 0 -5110 0.9650090745954094 0.3535353535374234 0 -5111 0.9650090745953865 0.3636363636384636 0 -5112 0.9650090745953013 0.3333333333353475 0 -5113 0.9650090745955026 0.313131313133271 0 -5114 0.9650090745955259 0.3030303030322303 0 -5115 0.9650090745957951 0.1111111111129843 0 -5116 0.9650090745958022 0.1010101010119584 0 -5117 0.9650090738752662 0.07070707195704146 0 -5118 0.1602060871884495 0.9696726378697963 0 -5119 0.8600362983794749 0.03030303030475215 0 -5120 0.860036199964052 0.9696966401272399 0 -5121 0.3351724172962218 0.9696969696971927 0 -5122 0.7550635221635856 0.03030303030476676 0 -5123 0.4751361189176854 0.9696969696976097 0 -5124 0.4663883875663556 0.9646464646470874 0 -5125 0.3001814918930318 0.03030303030313376 0 -5126 0.4051542681069357 0.9696969696973857 0 -5127 0.1773913675619626 0.02939229156292053 0 -5128 0.1688296439323759 0.0354257423462235 0 -5129 0.7025771340528274 0.9696969696979375 0 -5130 0.4663883875663278 0.9747474747480813 0 -5131 0.4576406562149988 0.9696969696975601 0 -5132 0.457640656215026 0.9595959595965675 0 -5133 0.4488929248636638 0.9646464646470352 0 -5134 0.4488929248636926 0.954545454546046 0 -5135 0.2301996410819704 0.03030303030299158 0 -5136 0.2389473724333446 0.03535353535353215 0 -5137 0.2389473724333687 0.02525252525248717 0 -5138 0.02900182000045852 0.3080808080806754 0 -5139 0.02900182000048076 0.2979797979796894 0 -5140 0.02897068805346331 0.05555555555537126 0 -5141 0.02896228703476693 0.06565656565638728 0 -5142 0.02900127165051139 0.1666666666664907 0 -5143 0.02900121072271042 0.1767676767674809 0 -5144 0.02900175907277438 0.1565656565655006 0 -5145 0.02881753415587146 0.2174220561502666 0 -5146 0.02950421612872758 0.2277083025944231 0 -5147 0.02898167473381168 0.2070979493106068 0 -5148 0.02883836081320584 0.2674228263704074 0 -5149 0.02901184778055611 0.3585684899607309 0 -5150 0.02875445550224075 0.3484344695898074 0 -5151 0.02873204906193871 0.4393939393935159 0 -5152 0.02870207451322721 0.4494949494945104 0 -5153 0.02897184545144282 0.4292929292925234 0 -5154 0.0290018199989282 0.8131313131311925 0 -5155 0.02900181999890227 0.8232323232322221 0 -5156 0.0290682082667815 0.954660442398246 0 -5157 0.0287613371233305 0.9647087628607398 0 -5158 0.02900181999930292 0.661616161615811 0 -5159 0.02896574613815507 0.9040404040404297 0 -5160 0.02896173793140716 0.9141414141414549 0 -5161 0.03772356057216829 0.9697051553234254 0 -5162 0.3001814918907166 0.9696969696971407 0 -5163 0.1074447405221711 0.03079026521727487 0 -5164 0.8250453729191958 0.9696969695153123 0 -5165 0.2651905664874886 0.03030303030306057 0 -5166 0.4926315816203759 0.9696969696976646 0 -5167 0.5013793129717388 0.9646464646471933 0 -5168 0.9650090743128824 0.03030303079499296 0 -5169 0.3349680746358917 0.03000230169217495 0 -5170 0.597604357836715 0.9696969696979936 0 -5171 0.4226497308096117 0.9696969696974327 0 -5172 0.7025771340557303 0.03030303030463912 0 -5173 0.6938294027044078 0.03535353535508965 0 -5174 0.8957676534974797 0.9697472850251402 0 -5175 0.1952847265477665 0.03043468499398219 0 -5176 0.09016444556993061 0.03042686135323 0 -5177 0.0377382416009884 0.03030896067980272 0 -5178 0.04648471631336785 0.02525911456007541 0 -5179 0.9562613430783004 0.02520747544509704 0 -5180 0.6938294027044374 0.02525252525413858 0 -5181 0.6851259797554757 0.03030303030458812 0 -5182 0.2739382978388849 0.0252525252525534 0 -5183 0.8162976416077251 0.9747474747047742 0 -5184 0.9737568059451226 0.9444444444459972 0 -5185 0.9737568059450202 0.8333333333341578 0 -5186 0.9737568059450417 0.7828282828293187 0 -5187 0.9737568059452104 0.6818181818196689 0 -5188 0.9737568059450989 0.7727272727283463 0 -5189 0.9737568059450711 0.8232323232331795 0 -5190 0.9737568059451905 0.6919191919206233 0 -5191 0.8075499102699017 0.7676767676777067 0 -5192 0.8162976416212102 0.7727272727282696 0 -5193 0.7813067162159395 0.7323232323242138 0 -5194 0.8950272237842533 0.4343434343454724 0 -5195 0.8950272237842677 0.4242424242444849 0 -5196 0.7025771340556441 0.05050505050655957 0 -5197 0.5363702383787246 0.277777777779141 0 -5198 0.6150998205414155 0.2222222222231632 0 -5199 0.623847551892771 0.2171717171726835 0 -5200 0.6850816713520836 0.2222222222233552 0 -5201 0.7113248654058976 0.3383838383852522 0 -5202 0.7200725967572336 0.3434343434357827 0 -5203 0.6675862086494074 0.2222222222232807 0 -5204 0.6588384772980745 0.2171717171727596 0 -5205 0.6588384772981005 0.2070707070717639 0 -5206 0.6500907459467493 0.2121212121222369 0 -5207 0.650090745946772 0.2020202020212416 0 -5208 0.6500907459467206 0.2222222222232717 0 -5209 0.7025771340533947 0.7777777777792377 0 -5210 0.5976043578372439 0.7575757575769274 0 -5211 0.6063520891886071 0.7626262626274183 0 -5212 0.5888566264858851 0.7525252525264253 0 -5213 0.5801088951345127 0.7575757575769049 0 -5214 0.5801088951345443 0.7474747474758965 0 -5215 0.5101270443252929 0.2222222222229461 0 -5216 0.5013793129739678 0.2171717171724404 0 -5217 0.5538657010814214 0.2777777777791715 0 -5218 0.5626134324327603 0.2828282828296855 0 -5219 0.5888566264863885 0.6818181818189004 0 -5220 0.5976043578377495 0.6868686868693966 0 -5221 0.6238475518921228 0.3383838383853046 0 -5222 0.6150998205407657 0.3434343434357927 0 -5223 0.4401451935130492 0.6868686868695312 0 -5224 0.9737568059451562 0.7323232323244557 0 -5225 0.9737568059451375 0.7424242424254067 0 -5226 0.9737568059451258 0.7222222222235063 0 -5227 0.3876588054048702 0.7171717171724205 0 -5228 0.6413430145944692 0.7121212121219807 0 -5229 0.6325952832431416 0.7070707070714631 0 -5230 0.9737568059456806 0.5404040404058734 0 -5231 0.9737568059456293 0.5505050505069153 0 -5232 0.9737568059457004 0.5303030303049033 0 -5233 0.6850865945089023 0.04040404040553918 0 -5234 0.6763548640057749 0.03553680246647457 0 -5235 0.7725589848645563 0.7373737373747411 0 -5236 0.8162976416218758 0.3383838383855781 0 -5237 0.5101270443237894 0.7070707070717192 0 -5238 0.5013793129724518 0.7020202020211994 0 -5239 0.5451179697291678 0.7272727272738027 0 -5240 0.5538657010805097 0.7323232323243272 0 -5241 0.9737568059453019 0.6616161616177654 0 -5242 0.9737568059452768 0.6515151515168154 0 -5243 0.5276225070264737 0.7171717171727562 0 -5244 0.8862794924317059 0.8535353535360251 0 -5245 0.8775317610803955 0.8585858585865038 0 -5246 0.8687840297290538 0.8535353535361337 0 -5247 0.1339745962164225 0.4191919191919105 0 -5248 0.1339745962164135 0.4292929292929222 0 -5249 0.9737568059454367 0.6010101010119671 0 -5250 0.9737568059454181 0.6111111111129192 0 -5251 0.7638112535128516 0.813131313132784 0 -5252 0.5626134324327595 0.2929292929306569 0 -5253 0.34392014864942 0.2676767676773315 0 -5254 0.6850816713512436 0.5757575757588209 0 -5255 0.6763339399998536 0.5808080808093029 0 -5256 0.956261343242355 0.8737373737380293 0 -5257 0.9650090745936739 0.8787878787885416 0 -5258 0.9737568059454438 0.5808080808100525 0 -5259 0.9737568059454684 0.5707070707090943 0 -5260 0.8950272237839884 0.3939393939412544 0 -5261 0.545117969729747 0.5656565656574526 0 -5262 0.5363702383783422 0.6515151515157979 0 -5263 0.5451179697296811 0.6565656565663107 0 -5264 0.5276225070269761 0.6464646464652883 0 -5265 0.1339745962163944 0.4090909090908778 0 -5266 0.1339745962164063 0.3787878787878729 0 -5267 0.5626134324329303 0.3434343434355046 0 -5268 0.5538657010815903 0.338383838385 0 -5269 0.6938294027030023 0.3383838383853515 0 -5270 0.2214519097291058 0.8030303030303786 0 -5271 0.7025771340550481 0.1212121212134705 0 -5272 0.5101270443242178 0.5959595959604577 0 -5273 0.5013793129728575 0.6010101010109442 0 -5274 0.510127044324202 0.6060606060614612 0 -5275 0.5013793129728417 0.6111111111119474 0 -5276 0.2389473724317776 0.8131313131313925 0 -5277 0.728820328109011 0.1363636363650073 0 -5278 0.6063520891903507 0.08585858585962067 0 -5279 0.5976043578390201 0.0909090909100891 0 -5280 0.9475136118911593 0.7373737373748698 0 -5281 0.9387658805398635 0.7323232323243709 0 -5282 0.7113248654058304 0.3484848484863021 0 -5283 0.8425408356767762 0.05050505050675899 0 -5284 0.1777133702171905 0.9595957565211746 0 -5285 0.1777144384522317 0.9696949163847566 0 -5286 0.3176769545936075 0.9090909090912171 0 -5287 0.8950272237840022 0.4040404040423001 0 -5288 0.273938297838602 0.2070707070710895 0 -5289 0.2739382978385824 0.2171717171721063 0 -5290 0.3351724172980662 0.2626262626268061 0 -5291 0.3351724172980926 0.2525252525257897 0 -5292 0.3264246859467035 0.2575757575762838 0 -5293 0.5101270443241905 0.6161616161624637 0 -5294 0.501379312972825 0.6212121212129503 0 -5295 0.5101270443241747 0.6262626262634666 0 -5296 0.9737568059451291 0.9343434343449391 0 -5297 0.4576406562173848 0.1515151515159735 0 -5298 0.8775317610810038 0.555555555557156 0 -5299 0.8600362983794405 0.06060606060775069 0 -5300 0.1602177902692418 0.9393939393939839 0 -5301 0.4488929248644271 0.6818181818190303 0 -5302 0.8075499102702772 0.4646464646480905 0 -5303 0.7113248654061488 0.2171717171728914 0 -5304 0.7200725967575089 0.2121212121224137 0 -5305 0.8162976416218908 0.3282828282845686 0 -5306 0.06399142862442245 0.4696969697006785 0 -5307 0.6763339400009857 0.1161616161629232 0 -5308 0.6763339400010063 0.1060606060619477 0 -5309 0.2739382978368587 0.8838383838386616 0 -5310 0.2651905664855025 0.888888888889137 0 -5311 0.1864609843234283 0.85353535353552 0 -5312 0.7375680594587739 0.8080808080822677 0 -5313 0.5013793129729868 0.4797979797991362 0 -5314 0.7550635221615296 0.8080808080822159 0 -5315 0.781306716214848 0.9545454545463598 0 -5316 0.1777132659991665 0.9494949269311438 0 -5317 0.1689655216217353 0.4494949494949967 0 -5318 0.2039564470261189 0.8636363636365433 0 -5319 0.8862794924333441 0.1969696969713567 0 -5320 0.1689655216216198 0.5000000000000121 0 -5321 0.9650090745937363 0.8181818181827046 0 -5322 0.9737568059450746 0.8131313131321837 0 -5323 0.2214519097288052 0.8737373737375652 0 -5324 0.6938294027036441 0.146464646465898 0 -5325 0.2739382978381604 0.3989898989902223 0 -5326 0.510127044324342 0.4646464646476595 0 -5327 0.6850816713523248 0.1414141414153821 0 -5328 0.9650090745942806 0.5555555555574226 0 -5329 0.5101270443244244 0.4343434343446444 0 -5330 0.9650090745939762 0.6464646464663227 0 -5331 0.973756805945289 0.6414141414158644 0 -5332 0.02894578775327082 0.2777467715131912 0 -5333 0.3789110740538167 0.6515151515156002 0 -5334 0.370163342702455 0.6565656565660877 0 -5335 0.8600362983781648 0.6363636363650923 0 -5336 0.1252268648650353 0.4242424242423636 0 -5337 0.1252268648650031 0.4343434343433675 0 -5338 0.4139019994592671 0.6313131313136704 0 -5339 0.4226497308106321 0.6262626262631891 0 -5340 0.4226497308106546 0.6161616161621828 0 -5341 0.3964065367565512 0.6414141414146444 0 -5342 0.2389473724314718 0.8838383838385878 0 -5343 0.9387658805413402 0.3181818181837358 0 -5344 0.2214519097303742 0.1363636363638456 0 -5345 0.641343014595692 0.09595959596088753 0 -5346 0.1689655216215541 0.5303030303030292 0 -5347 0.7988021789189248 0.4696969696985796 0 -5348 0.4313974621616845 0.6919191919200085 0 -5349 0.03774515880018321 0.07070707070690975 0 -5350 0.04649728270333607 0.1060606060605402 0 -5351 0.03774955135197395 0.1111111111110226 0 -5352 0.03774955135198052 0.1010101010100138 0 -5353 0.02896086552692296 0.0757575757573983 0 -5354 0.03774451279354204 0.08080808080791929 0 -5355 0.02896063580311474 0.08585858585842472 0 -5356 0.3789110740549327 0.2373737373743747 0 -5357 0.2301996410812126 0.4747474747476531 0 -5358 0.2301996410812366 0.4646464646466499 0 -5359 0.08148820810765635 0.6212121212118524 0 -5360 0.7725589848641451 0.8383838383853464 0 -5361 0.7813067162155014 0.8333333333348497 0 -5362 0.7813067162154852 0.8434343434358569 0 -5363 0.7900544475668401 0.8383838383853699 0 -5364 0.7900544475668263 0.8484848484863717 0 -5365 0.7988021789181813 0.8434343434358829 0 -5366 0.7988021789181713 0.8535353535368814 0 -5367 0.7900544475668413 0.8585858585873302 0 -5368 0.8075499102695464 0.8484848484863178 0 -5369 0.8425408356765911 0.1414141414157996 0 -5370 0.4488929248660434 0.1464646464654448 0 -5371 0.4926315816215475 0.5757575757584202 0 -5372 0.448892924866185 0.09595959596029743 0 -5373 0.3789110740535083 0.7222222222228968 0 -5374 0.1252268648655667 0.1010101010101671 0 -5375 0.8075499102714664 0.04040404040580304 0 -5376 0.8075371275147019 0.03039662126597737 0 -5377 0.5451179697298782 0.4040404040416915 0 -5378 0.8162976416210149 0.7929292929306234 0 -5379 0.5801088951365254 0.04040404040518793 0 -5380 0.5801088951365595 0.03030303030422687 0 -5381 0.5713611637852264 0.03535353535467783 0 -5382 0.3701633427016111 0.9595959595963031 0 -5383 0.3701633427015854 0.9696969696972894 0 -5384 0.3614156113502611 0.9646464646467755 0 -5385 0.0377494836543099 0.1818181818179943 0 -5386 0.02873197384278949 0.186868686868472 0 -5387 0.9387658805400333 0.6515151515166984 0 -5388 0.2826860291886173 0.7979797979799925 0 -5389 0.2826860291885722 0.8080808080810316 0 -5390 0.6413430145936602 0.9141414141424448 0 -5391 0.9125226864862922 0.575757575759194 0 -5392 0.9212704178376335 0.570707070708724 0 -5393 0.9387658805398392 0.7424242424253253 0 -5394 0.9650090745940538 0.6161616161633792 0 -5395 0.9737568059453524 0.6212121212138794 0 -5396 0.965009074594028 0.6262626262643539 0 -5397 0.7900544475670359 0.7777777777790257 0 -5398 0.265190566485478 0.8989898989901304 0 -5399 0.7813067162163347 0.5404040404054018 0 -5400 0.7813067162163486 0.5303030303044046 0 -5401 0.7900544475676885 0.5353535353549145 0 -5402 0.07274047675564271 0.8686868686869451 0 -5403 0.08148820810702197 0.8636363636364569 0 -5404 0.08148820810705204 0.8535353535354354 0 -5405 0.0902359394584018 0.8585858585859723 0 -5406 0.09023593945843278 0.8484848484849521 0 -5407 0.7463157908109466 0.3989898989915035 0 -5408 0.387658805404258 0.9696969696973361 0 -5409 0.7463157908116473 0.1565656565670175 0 -5410 0.755063522163001 0.151515151516543 0 -5411 0.2564428351345663 0.7929292929294379 0 -5412 0.7463157908104251 0.732323232324492 0 -5413 0.7463157908105021 0.7222222222233829 0 -5414 0.1602177902708261 0.1616161616162712 0 -5415 0.5713611637827575 0.9040404040414542 0 -5416 0.1602177902706882 0.3333333333334901 0 -5417 0.7288203281082644 0.5404040404052951 0 -5418 0.7288203281082846 0.530303030304305 0 -5419 0.7288203281086865 0.2878787878802356 0 -5420 0.7375680594600511 0.2828282828297498 0 -5421 0.8425408356754397 0.6666666666679222 0 -5422 0.7813067162168985 0.2070707070720863 0 -5423 0.6675862086486093 0.6666666666675253 0 -5424 0.6763339399999708 0.6616161616170465 0 -5425 0.6675862086486367 0.6565656565665337 0 -5426 0.6150998205418281 0.06060606060724519 0 -5427 0.8862794924335218 0.03535353535524125 0 -5428 0.8775317610821715 0.03030303030473563 0 -5429 0.5888566264853496 0.964646464647466 0 -5430 0.5713611637828661 0.8636363636374137 0 -5431 0.03774764392715062 0.2020226557336053 0 -5432 0.466388387568596 0.2070707070715306 0 -5433 0.1689655216216896 0.4696969696970014 0 -5434 0.6500907459460069 0.4545454545468566 0 -5435 0.6500907459459978 0.4646464646478509 0 -5436 0.6413430145946516 0.4595959595973451 0 -5437 0.1514700589179075 0.934343434343468 0 -5438 0.7375680594600714 0.2727272727287432 0 -5439 0.1339745962158401 0.6313131313130004 0 -5440 0.1164791335125778 0.9040404040403658 0 -5441 0.5626134324325198 0.6060606060613418 0 -5442 0.08148820810707452 0.9545454545453457 0 -5443 0.2476951037845112 0.1313131313133908 0 -5444 0.3176769545954766 0.161616161616627 0 -5445 0.3264246859468364 0.166666666667159 0 -5446 0.3176769545954546 0.1717171717176515 0 -5447 0.8775317610821293 0.07070707070876529 0 -5448 0.413901999459441 0.5606060606066482 0 -5449 0.4226497308108056 0.5555555555561733 0 -5450 0.4139019994594693 0.5505050505056445 0 -5451 0.7463157908114155 0.2777777777792638 0 -5452 0.7463157908114358 0.2676767676782573 0 -5453 0.7550635221627802 0.272727272728778 0 -5454 0.02900673761837156 0.8939548539241723 0 -5455 0.5101270443233393 0.8787878787887546 0 -5456 0.5101270443233087 0.8888888888897513 0 -5457 0.5013793129719739 0.8838383838392314 0 -5458 0.5013793129719436 0.8939393939402306 0 -5459 0.4926315816206091 0.888888888889707 0 -5460 0.4926315816206377 0.8787878787887068 0 -5461 0.4838838502692741 0.8838383838391844 0 -5462 0.7988021789189175 0.5909090909104199 0 -5463 0.09898367081029419 0.6717171717170537 0 -5464 0.4751361189188966 0.4848484848496077 0 -5465 0.7113248654047341 0.7828282828297568 0 -5466 0.5801088951360635 0.2121212121220956 0 -5467 0.5801088951360428 0.2222222222230895 0 -5468 0.5713611637847091 0.2171717171725745 0 -5469 0.1427223275664896 0.969696969696929 0 -5470 0.04649728270286794 0.4090909090905848 0 -5471 0.0377495513515122 0.4141414141410584 0 -5472 0.03774955135153987 0.4040404040400681 0 -5473 0.1514700589193491 0.3282828282829758 0 -5474 0.1427223275679905 0.3333333333334477 0 -5475 0.5363702383794478 0.1666666666675221 0 -5476 0.5363702383794724 0.1565656565665275 0 -5477 0.5451179697308032 0.161616161617046 0 -5478 0.1864609843244858 0.4393939393940572 0 -5479 0.7375680594594022 0.6464646464657471 0 -5480 0.2651905664853829 0.9494949494950917 0 -5481 0.2301996410799867 0.9595959595960193 0 -5482 0.2651905664853642 0.9595959595960805 0 -5483 0.2564428351340314 0.9545454545455683 0 -5484 0.2564428351340099 0.9646464646465558 0 -5485 0.2651905664853424 0.9696969696970679 0 -5486 0.2301996410799683 0.9696969696970079 0 -5487 0.5276225070273673 0.2828282828296249 0 -5488 0.3789110740534765 0.7323232323238993 0 -5489 0.3701633427021414 0.7272727272733754 0 -5490 0.3701633427021128 0.7373737373743784 0 -5491 0.5276225070263829 0.757575757576779 0 -5492 0.9387658805397751 0.7929292929302365 0 -5493 0.9037749551349054 0.6010101010116268 0 -5494 0.9125226864862488 0.5959595959612011 0 -5495 0.7900544475675795 0.4646464646480623 0 -5496 0.0552476946547041 0.2323185893871373 0 -5497 0.8162976416216366 0.4595959595976076 0 -5498 0.3876588054052459 0.6161616161621062 0 -5499 0.7813067162169204 0.2272727272742585 0 -5500 0.6150998205416773 0.1010101010112676 0 -5501 0.790054447566706 0.8888888888900074 0 -5502 0.1864609843246871 0.2272727272728191 0 -5503 0.1952087156760327 0.2323232323233447 0 -5504 0.1864609843246582 0.2373737373738231 0 -5505 0.3089292232423092 0.8838383838387179 0 -5506 0.09898367081097476 0.388888888888732 0 -5507 0.5626134324325691 0.474747474748545 0 -5508 0.5626134324325964 0.4646464646475535 0 -5509 0.378911074053426 0.7525252525259036 0 -5510 0.3789110740532517 0.8232323232329001 0 -5511 0.3701633427019147 0.8181818181823816 0 -5512 0.06399274540585563 0.2878787878787629 0 -5513 0.8775317610810974 0.48484848485024 0 -5514 0.7025771340541276 0.575757575758762 0 -5515 0.737568059460968 0.03030303030473 0 -5516 0.4838838502703575 0.4292929292941005 0 -5517 0.370163342702636 0.5757575757580474 0 -5518 0.6938294027027937 0.4797979797993552 0 -5519 0.6938294027028159 0.4696969696983544 0 -5520 0.6850816713514541 0.4747474747488526 0 -5521 0.02885750833212473 0.6512651963750563 0 -5522 0.1427223275678784 0.2424242424242152 0 -5523 0.151470058919217 0.2474747474747401 0 -5524 0.1427223275678768 0.252525252525265 0 -5525 0.2301996410814521 0.3535353535356229 0 -5526 0.6850816713514952 0.3939393939409022 0 -5527 0.685081671351479 0.4040404040419044 0 -5528 0.6763339400001367 0.39898989899139 0 -5529 0.7725589848650115 0.3939393939410442 0 -5530 0.6238475518910863 0.8333333333345811 0 -5531 0.6238475518910608 0.8434343434355903 0 -5532 0.6325952832424302 0.8383838383851085 0 -5533 0.8862794924334249 0.1060606060623215 0 -5534 0.8950272237835597 0.6060606060621183 0 -5535 0.08148820810805892 0.4696969696966369 0 -5536 0.6150998205405481 0.5252525252536656 0 -5537 0.2739382978370676 0.8333333333336382 0 -5538 0.6238475518920353 0.3989898989913123 0 -5539 0.2127041783788609 0.3030303030305549 0 -5540 0.265190566487308 0.1111111111113683 0 -5541 0.273938297838673 0.1161616161619035 0 -5542 0.4051542681071225 0.8888888888894557 0 -5543 0.4139019994584829 0.8838383838389835 0 -5544 0.6413430145948088 0.348484848486332 0 -5545 0.6413430145948255 0.3383838383853312 0 -5546 0.6500907459461664 0.3434343434358459 0 -5547 0.6500907459460628 0.4141414141428517 0 -5548 0.6588384772974214 0.4090909090923655 0 -5549 0.6500907459460799 0.4040404040418502 0 -5550 0.1864609843245861 0.3989898989900471 0 -5551 0.6850816713513838 0.5252525252538085 0 -5552 0.1077314021628894 0.06060606060601925 0 -5553 0.3089292232432908 0.5202020202023736 0 -5554 0.3089292232432658 0.5303030303033792 0 -5555 0.3089292232433133 0.5101010101013661 0 -5556 0.3176769545946076 0.5353535353539036 0 -5557 0.2914337605408939 0.3888888888892589 0 -5558 0.4576406562163869 0.3737373737385301 0 -5559 0.2564428351358113 0.1969696969700608 0 -5560 0.3001814918910956 0.8383838383842035 0 -5561 0.4313974621616543 0.7020202020210147 0 -5562 0.4226497308103225 0.6969696969704906 0 -5563 0.1689655216215106 0.5505050505050464 0 -5564 0.8162976416218618 0.3484848484865863 0 -5565 0.4051542681080004 0.595959595960138 0 -5566 0.5801088951343472 0.8181818181829508 0 -5567 0.5713611637829783 0.8232323232334312 0 -5568 0.5626134324316375 0.8181818181829026 0 -5569 0.5626134324316098 0.8282828282839114 0 -5570 0.5713611637829499 0.8333333333344394 0 -5571 0.5538657010802704 0.8232323232333804 0 -5572 0.6063520891892 0.6414141414148943 0 -5573 0.317676954594894 0.4141414141418406 0 -5574 0.326424685946261 0.4090909090913597 0 -5575 0.3264246859462342 0.4191919191923661 0 -5576 0.3264246859462862 0.3989898989903538 0 -5577 0.3351724172976282 0.4040404040408784 0 -5578 0.2476951037838695 0.494949494949702 0 -5579 0.2389473724325062 0.5000000000001833 0 -5580 0.2301996410811651 0.4949494949496613 0 -5581 0.2301996410811388 0.5050505050506651 0 -5582 0.238947372432483 0.510101010101187 0 -5583 0.2301996410811151 0.5151515151516688 0 -5584 0.2389473724324604 0.5202020202021909 0 -5585 0.2301996410810951 0.525252525252673 0 -5586 0.2389473724324377 0.5303030303031959 0 -5587 0.2301996410810722 0.5353535353536781 0 -5588 0.9562613432431343 0.5101010101028847 0 -5589 0.3526678800000654 0.5151515151519815 0 -5590 0.3614156113511111 0.6515151515155621 0 -5591 0.361415611351091 0.6616161616165708 0 -5592 0.7113248654055406 0.3989898989914434 0 -5593 0.5713611637839203 0.4090909090922339 0 -5594 0.2651905664863775 0.5757575757577983 0 -5595 0.3176769545941707 0.7373737373740579 0 -5596 0.2914337605412624 0.2373737373741824 0 -5597 0.3001814918926139 0.2424242424247119 0 -5598 0.3089292232439897 0.2373737373742252 0 -5599 0.3089292232439652 0.2474747474752415 0 -5600 0.2826860291899124 0.2323232323236583 0 -5601 0.6763339400002104 0.3484848484863811 0 -5602 0.6763339400002231 0.3383838383853782 0 -5603 0.5013793129740409 0.1767676767684369 0 -5604 0.6238475518927886 0.2070707070716898 0 -5605 0.4313974621632409 0.1767676767684146 0 -5606 0.947513611739883 0.03029802500384676 0 -5607 0.1689504241011736 0.04546256845364086 0 -5608 0.2389473724320821 0.6818181818183404 0 -5609 0.1252268648650488 0.3838383838383506 0 -5610 0.1339745962163845 0.3888888888888711 0 -5611 0.1602177902697867 0.7070707070707373 0 -5612 0.2127041783779205 0.73737373737378 0 -5613 0.5276225070280048 0.2121212121219828 0 -5614 0.5276225070279863 0.2222222222229788 0 -5615 0.5363702383793401 0.2171717171724978 0 -5616 0.4488929248649016 0.449494949496048 0 -5617 0.5713611637839341 0.3989898989912317 0 -5618 0.4401451935126792 0.8282828282835623 0 -5619 0.5801088951350238 0.6767676767684093 0 -5620 0.7113248654053612 0.6515151515161889 0 -5621 0.6413430145945614 0.5404040404052258 0 -5622 0.1602177902705812 0.2424242424242586 0 -5623 0.1602177902705576 0.2525252525252626 0 -5624 0.1689655216219222 0.2474747474747819 0 -5625 0.3176769545950446 0.3333333333338304 0 -5626 0.4926315816207768 0.828282828283692 0 -5627 0.1252268648638743 0.9292929292929123 0 -5628 0.1339745962152303 0.9242424242424274 0 -5629 0.3351724172969571 0.6969696969700685 0 -5630 0.1164791335140584 0.1464646464646752 0 -5631 0.3876588054064077 0.1818181818188184 0 -5632 0.4226497308096662 0.9494949494954574 0 -5633 0.7025771340546549 0.2727272727286707 0 -5634 0.7025771340546334 0.282828282829679 0 -5635 0.693829402703291 0.277777777779153 0 -5636 0.4139019994588282 0.7525252525259907 0 -5637 0.1164791335138989 0.2070707070706504 0 -5638 0.8862794924315486 0.9141414141427462 0 -5639 0.4139019994596416 0.35858585858695 0 -5640 0.4051542681082781 0.3636363636374396 0 -5641 0.4139019994596252 0.3686868686879569 0 -5642 0.4051542681082627 0.3737373737384466 0 -5643 0.3964065367569384 0.3686868686879294 0 -5644 0.1339745962164508 0.3585858585858819 0 -5645 0.6763339400001205 0.4090909090923913 0 -5646 0.04649728270200488 0.681818181817917 0 -5647 0.03774955135061679 0.686868686868412 0 -5648 0.02846471071061817 0.6819091561209808 0 -5649 0.02865362079200791 0.6919720162943784 0 -5650 0.03774955135059525 0.6969696969694437 0 -5651 0.02865661720451004 0.7020260713949382 0 -5652 0.03771119548449679 0.7070713592232534 0 -5653 0.02834617438242244 0.7121219367350602 0 -5654 0.03767244007468128 0.7171718701456045 0 -5655 0.02861388857275574 0.7222223197317489 0 -5656 0.0376978799391658 0.7272727551040784 0 -5657 0.02868320430130877 0.7323232462498458 0 -5658 0.0377084083383751 0.7373737420133887 0 -5659 0.0286920758710422 0.7424242444870268 0 -5660 0.03771056389046164 0.7474747482193571 0 -5661 0.02896259071819517 0.7525252528462638 0 -5662 0.03774521941045837 0.7575757576583872 0 -5663 0.02900574545990426 0.7626110802125384 0 -5664 0.03774950618608799 0.7676750807510145 0 -5665 0.02854702791013366 0.7726561385872875 0 -5666 0.04649679635689727 0.7626260751991835 0 -5667 0.04648696998817434 0.7323232359309992 0 -5668 0.04649302093906354 0.7020202744813971 0 -5669 0.8775317610813127 0.3737373737392085 0 -5670 0.8687840297299351 0.3787878787896851 0 -5671 0.7725589848648816 0.5959595959608602 0 -5672 0.6675862086485276 0.7070707070715241 0 -5673 0.6675862086485127 0.7171717171725233 0 -5674 0.6588384772971488 0.7222222222230348 0 -5675 0.5888566264877073 0.08585858585958091 0 -5676 0.5888566264876857 0.0959595959605519 0 -5677 0.5801088951363655 0.09090909091004835 0 -5678 0.781306716216127 0.6414141414153325 0 -5679 0.7813067162161068 0.6515151515163224 0 -5680 0.7900544475674578 0.6464646464658469 0 -5681 0.9300181491900901 0.252525252527066 0 -5682 0.2914337605413598 0.1969696969701095 0 -5683 0.07274047675571275 0.9595959595958335 0 -5684 0.08148820810705601 0.964646464646351 0 -5685 0.07274047675569542 0.9696969696968364 0 -5686 0.5276225070271442 0.4242424242436703 0 -5687 0.5188747756758013 0.4191919191931543 0 -5688 0.8512885670278107 0.2272727272744008 0 -5689 0.6588384772974385 0.3989898989913646 0 -5690 0.6850816713513077 0.666666666667566 0 -5691 0.422649730810192 0.7474747474755119 0 -5692 0.9387658805405064 0.4797979797998666 0 -5693 0.8512885670261681 0.8939393939406496 0 -5694 0.7988021789196537 0.1868686868701264 0 -5695 0.3526678799997465 0.6565656565660446 0 -5696 0.3526678799997238 0.6666666666670491 0 -5697 0.3439201486483812 0.6616161616165263 0 -5698 0.3439201486483578 0.6717171717175309 0 -5699 0.5451179697287504 0.8787878787888472 0 -5700 0.09023593945896098 0.6464646464644302 0 -5701 0.5363702383785182 0.4090909090921798 0 -5702 0.3089292232432405 0.5404040404043848 0 -5703 0.4488929248642501 0.7424242424250748 0 -5704 0.9212704178376018 0.5808080808097502 0 -5705 0.9300181491889306 0.5757575757593136 0 -5706 0.1427223275679669 0.2020202020202045 0 -5707 0.4751361189197149 0.2323232323241683 0 -5708 0.3614156113505549 0.8232323232328617 0 -5709 0.7463157908121941 0.0656565656580993 0 -5710 0.7375680594608612 0.07070707070854847 0 -5711 0.7463157908121205 0.07575757575906955 0 -5712 0.7288203281095647 0.0656565656580574 0 -5713 0.8250453729728986 0.6060606060619678 0 -5714 0.3789110740532738 0.8131313131319017 0 -5715 0.4926315816214984 0.6060606060614315 0 -5716 0.9125226864861603 0.6161616161632339 0 -5717 0.720072596756849 0.4747474747489189 0 -5718 0.7200725967568764 0.4646464646479276 0 -5719 0.728820328108212 0.4696969696984478 0 -5720 0.256442835134893 0.6313131313133227 0 -5721 0.2651905664862375 0.6363636363638471 0 -5722 0.4226497308102166 0.7373737373745114 0 -5723 0.5363702383775915 0.813131313132322 0 -5724 0.5976043578368486 0.898989898990981 0 -5725 0.816297641622322 0.2474747474763667 0 -5726 0.3876588054066651 0.06060606060655691 0 -5727 0.1252268648648442 0.4646464646462665 0 -5728 0.1252268648648199 0.4747474747472682 0 -5729 0.7113248654055234 0.4090909090924449 0 -5730 0.7200725967568836 0.4040404040419592 0 -5731 0.7900544475669253 0.8181818181831277 0 -5732 0.6850816713506735 0.7878787878802007 0 -5733 0.6850816713506952 0.7777777777791994 0 -5734 0.6763339399993336 0.7828282828296798 0 -5735 0.2826860291890372 0.5959595959598484 0 -5736 0.641343014594584 0.5303030303042253 0 -5737 0.6325952832432455 0.5252525252537072 0 -5738 0.7025771340547892 0.2222222222233672 0 -5739 0.2476951037838237 0.5151515151517088 0 -5740 0.8075499102703487 0.4242424242440885 0 -5741 0.8162976416217067 0.4191919191935996 0 -5742 0.676333939999869 0.7121212121220382 0 -5743 0.6763339399998519 0.7222222222230387 0 -5744 0.685081671351214 0.7171717171726322 0 -5745 0.4926315816205789 0.8989898989907066 0 -5746 0.4139019994596105 0.3787878787889626 0 -5747 0.6500907459458664 0.5656565656577418 0 -5748 0.7900544475673129 0.7171717171727531 0 -5749 0.1602177902704731 0.424242424242488 0 -5750 0.3176769545945832 0.5454545454549087 0 -5751 0.75506352216164 0.7878787878799947 0 -5752 0.8337931043240316 0.7222222222232735 0 -5753 0.9650090745954216 0.2525252525271259 0 -5754 0.8687840297296572 0.5606060606076297 0 -5755 0.2564428351356227 0.3080808080811511 0 -5756 0.2564428351356389 0.2979797979801547 0 -5757 0.2476951037835484 0.6262626262628012 0 -5758 0.3964065367581123 0.03535353535398759 0 -5759 0.3876588054067618 0.03030303030344215 0 -5760 0.1077314021612601 0.8787878787878785 0 -5761 0.3001814918907798 0.9292929292931846 0 -5762 0.3089292232421453 0.9242424242427051 0 -5763 0.308929223242154 0.934343434343693 0 -5764 0.9650090745937623 0.9292929292944235 0 -5765 0.9737568059451429 0.924242424243899 0 -5766 0.9650090745937783 0.9191919191933869 0 -5767 0.973756805945155 0.914141414142861 0 -5768 0.9650090745937933 0.9090909090923529 0 -5769 0.9737568059451652 0.9040404040418287 0 -5770 0.9650090745937688 0.898989898991154 0 -5771 0.9737568059451173 0.8939393939405744 0 -5772 0.6675862086477501 0.9191919191930017 0 -5773 0.4751361189183952 0.7070707070716378 0 -5774 0.7200725967564083 0.7272727272739555 0 -5775 0.7200725967564469 0.7171717171729217 0 -5776 0.711324865405072 0.7222222222234448 0 -5777 0.4226497308120712 0.101010101010748 0 -5778 0.6763339399992142 0.8333333333346937 0 -5779 0.973756805945036 0.8636363636370717 0 -5780 0.8862794924323569 0.5505050505066796 0 -5781 0.9562613432439916 0.3686868686889627 0 -5782 0.9650090745953638 0.3737373737395041 0 -5783 0.9562613432439684 0.3787878787900025 0 -5784 0.9650090745952722 0.3838383838405439 0 -5785 0.9562613432439419 0.3888888888910377 0 -5786 0.7288203281086013 0.3383838383852804 0 -5787 0.7288203281085761 0.3484848484863002 0 -5788 0.7375680594599462 0.3434343434357978 0 -5789 0.8862794924331785 0.2777777777795772 0 -5790 0.2739382978386501 0.1262626262629342 0 -5791 0.8775317610811804 0.4444444444462783 0 -5792 0.335172417297016 0.6666666666670087 0 -5793 0.3351724172969918 0.6767676767680144 0 -5794 0.3264246859456497 0.6717171717174895 0 -5795 0.5276225070281422 0.1515151515160093 0 -5796 0.956261343244408 0.1666666666684075 0 -5797 0.965009074595797 0.1616161616179003 0 -5798 0.5013793129723807 0.7323232323242126 0 -5799 0.4051542681082485 0.3838383838394521 0 -5800 0.7375680594602251 0.1919191919204619 0 -5801 0.256442835135875 0.1363636363639247 0 -5802 0.2476951037844893 0.1414141414144195 0 -5803 0.6150998205394731 0.9595959595969974 0 -5804 0.6150998205394559 0.9696969696980255 0 -5805 0.6238475518908373 0.9646464646475289 0 -5806 0.8687840297291202 0.8232323232330472 0 -5807 0.9562613432444227 0.1565656565673672 0 -5808 0.9650090745958124 0.1515151515168609 0 -5809 0.9300181491886084 0.7070707070719683 0 -5810 0.9300181491885863 0.7171717171729238 0 -5811 0.06399274540488603 0.6313131313128169 0 -5812 0.440145193514671 0.1515151515159172 0 -5813 0.04649728270173687 0.7929292929291871 0 -5814 0.3614156113521897 0.247474747475346 0 -5815 0.9387658805404152 0.5202020202038421 0 -5816 0.18646098432409 0.6111111111111567 0 -5817 0.09898367080978171 0.8535353535354876 0 -5818 0.09898367080981199 0.8434343434344693 0 -5819 0.7900544475674356 0.6565656565668347 0 -5820 0.2914337605403839 0.601010101010372 0 -5821 0.8337931043249651 0.2878787878804397 0 -5822 0.8250453729736158 0.2828282828299146 0 -5823 0.8337931043249855 0.2777777777794248 0 -5824 0.8250453729736356 0.2727272727289001 0 -5825 0.807549910270365 0.4141414141430895 0 -5826 0.5188747756750703 0.7424242424252557 0 -5827 0.7813067162160867 0.6616161616173076 0 -5828 0.05524361778919143 0.03030376244816412 0 -5829 0.4926315816210631 0.7171717171726876 0 -5830 0.3176769545953524 0.2424242424247508 0 -5831 0.9475136118918611 0.4747474747493844 0 -5832 0.9387658805405231 0.4696969696988669 0 -5833 0.9475136118918819 0.464646464648382 0 -5834 0.3701633427038436 0.09090909090961084 0 -5835 0.08148820810768231 0.6111111111108257 0 -5836 0.03772217660284584 0.343428554915149 0 -5837 0.02872131882275078 0.3382508939385576 0 -5838 0.5363702383775675 0.8232323232333262 0 -5839 0.2564428351348702 0.6414141414143313 0 -5840 0.2651905664862143 0.6464646464648577 0 -5841 0.8862794924318905 0.7727272727282046 0 -5842 0.1952087156747403 0.8888888888890237 0 -5843 0.3089292232443588 0.05555555555576427 0 -5844 0.8687840297295023 0.631313131314625 0 -5845 0.1339745962160069 0.5808080808079874 0 -5846 0.1339745962160251 0.5707070707069833 0 -5847 0.1952087156760149 0.3636363636365444 0 -5848 0.1952087156759912 0.3737373737375458 0 -5849 0.2039564470273304 0.3787878787880672 0 -5850 0.7725589848649912 0.404040404042044 0 -5851 0.7813067162163541 0.3989898989915607 0 -5852 0.5451179697308297 0.1515151515160545 0 -5853 0.5538657010821587 0.1565656565665719 0 -5854 0.763811253513428 0.65151515151629 0 -5855 0.1427223275672469 0.6161616161614983 0 -5856 0.05524501405434667 0.3535353535351622 0 -5857 0.7550635221622449 0.4242424242439971 0 -5858 0.7463157908109036 0.4191919191934864 0 -5859 0.7375680594587533 0.8282828282842962 0 -5860 0.7288203281073925 0.833333333334784 0 -5861 0.2564428351360713 0.04545454545460952 0 -5862 0.833793104325006 0.2676767676784111 0 -5863 0.3176769545957525 0.05050505050526662 0 -5864 0.1602177902706922 0.323232323232488 0 -5865 0.07274047675745005 0.05050505050493829 0 -5866 0.5188747756748531 0.8232323232332783 0 -5867 0.2039564470264651 0.7727272727273231 0 -5868 0.2564428351360506 0.05555555555565037 0 -5869 0.5538657010810759 0.6414141414148216 0 -5870 0.6150998205405639 0.6363636363644229 0 -5871 0.7025771340541139 0.5959595959607346 0 -5872 0.886279492432091 0.6616161616175862 0 -5873 0.8775317610807591 0.6666666666680527 0 -5874 0.3964065367579265 0.1161616161622033 0 -5875 0.1689655216212752 0.6515151515151731 0 -5876 0.1777132529726237 0.6565656565657 0 -5877 0.5101270443254515 0.1515151515159646 0 -5878 0.8075499102692949 0.9292929292940829 0 -5879 0.08147947869607383 0.03536865513974936 0 -5880 0.5013793129719111 0.9040404040412258 0 -5881 0.1164791335139163 0.1969696969696528 0 -5882 0.1077314021625576 0.2020202020201306 0 -5883 0.1077314021625769 0.1919191919191309 0 -5884 0.3264246859468144 0.176767676768181 0 -5885 0.3351724172981945 0.1717171717176908 0 -5886 0.7113248654054538 0.6010101010112439 0 -5887 0.3701633427038182 0.1010101010106357 0 -5888 0.3614156113524533 0.09595959596010421 0 -5889 0.3614156113524295 0.1060606060611304 0 -5890 0.3526678800010643 0.1010101010105984 0 -5891 0.291433760540918 0.3787878787882545 0 -5892 0.2826860291895515 0.3838383838387346 0 -5893 0.1777132529720619 0.8787878787880072 0 -5894 0.3964065367557642 0.8939393939399284 0 -5895 0.04649728270332411 0.09595959595950923 0 -5896 0.9562613432438641 0.4090909090930681 0 -5897 0.3526678800010414 0.111111111111625 0 -5898 0.3439201486496757 0.1060606060610936 0 -5899 0.3439201486496529 0.11616161616212 0 -5900 0.5538657010802408 0.8333333333343848 0 -5901 0.4313974621619933 0.6212121212127055 0 -5902 0.4313974621620153 0.611111111111703 0 -5903 0.921270417837284 0.7121212121224286 0 -5904 0.06399274540544687 0.4494949494945909 0 -5905 0.9037749551350457 0.5404040404057365 0 -5906 0.7025771340532392 0.8484848484862658 0 -5907 0.1864609843247932 0.308080808081 0 -5908 0.1952087156761512 0.3030303030305268 0 -5909 0.8950272237848298 0.1414141414157351 0 -5910 0.8950272237848433 0.1313131313147174 0 -5911 0.9650090745952027 0.39393939394158 0 -5912 0.9475136118910845 0.8585858585866286 0 -5913 0.9737568055294916 0.04545454617975711 0 -5914 0.816297641621381 0.7121212121222662 0 -5915 0.8250453729727235 0.707070707071789 0 -5916 0.711324865405345 0.6616161616171743 0 -5917 0.72882032810803 0.6616161616172138 0 -5918 0.860036298378116 0.6565656565670382 0 -5919 0.4313974621621161 0.5707070707077035 0 -5920 0.4313974621620928 0.5808080808086993 0 -5921 0.1602177902699203 0.6464646464646352 0 -5922 0.69382940270188 0.8535353535367403 0 -5923 0.2826860291899882 0.1919191919195871 0 -5924 0.2914337605413669 0.186868686869098 0 -5925 0.6850816713513342 0.6565656565665716 0 -5926 0.3789110740552634 0.07575757575808409 0 -5927 0.8512885670268246 0.641414141415542 0 -5928 0.7113248654046198 0.8434343434357792 0 -5929 0.6325952832424062 0.8484848484861147 0 -5930 0.6413430145937747 0.8434343434356353 0 -5931 0.2127041783788564 0.2929292929295568 0 -5932 0.9562613432442776 0.2272727272745229 0 -5933 0.9650090745956675 0.2222222222240028 0 -5934 0.2301996410815909 0.2828282828285866 0 -5935 0.1777132529720832 0.8484848484850107 0 -5936 0.5888566264865218 0.6313131313138598 0 -5937 0.3439201486487726 0.4898989898994465 0 -5938 0.6325952832432574 0.6363636363645143 0 -5939 0.2389473724320787 0.702020202020315 0 -5940 0.5276225070259424 0.9090909090917531 0 -5941 0.5363702383772878 0.9141414141422719 0 -5942 0.6063520891892256 0.6313131313139003 0 -5943 0.9300181491901055 0.2424242424260441 0 -5944 0.1427223275679912 0.1919191919192055 0 -5945 0.04649722364521951 0.7727270644657855 0 -5946 0.4051542681075953 0.7070707070714648 0 -5947 0.5801088951351807 0.6262626262633385 0 -5948 0.571361163783817 0.6313131313138132 0 -5949 0.3351724172977468 0.3434343434348724 0 -5950 0.3351724172977601 0.3333333333338795 0 -5951 0.2214519097293663 0.7020202020202698 0 -5952 0.2301996410817424 0.1414141414143794 0 -5953 0.7463157908116643 0.1464646464660362 0 -5954 0.2826860291895732 0.373737373737733 0 -5955 0.3351724172974932 0.4545454545459063 0 -5956 0.3351724172975177 0.4444444444449026 0 -5957 0.3264246859461796 0.4393939393943758 0 -5958 0.3351724172975443 0.4343434343438949 0 -5959 0.8862794924315227 0.9242424242437496 0 -5960 0.8950272237828896 0.9191919191932632 0 -5961 0.3351724172976497 0.3939393939398773 0 -5962 0.32642468594631 0.3888888888893483 0 -5963 0.3351724172976732 0.3838383838388711 0 -5964 0.1602177902707197 0.1818181818182287 0 -5965 0.1427223275672835 0.6060606060604941 0 -5966 0.1339745962159272 0.6010101010099527 0 -5967 0.3351724172977222 0.3535353535358742 0 -5968 0.947513611892751 0.3030303030322007 0 -5969 0.3351724172981763 0.1818181818187118 0 -5970 0.3439201486495518 0.1767676767682226 0 -5971 0.6850816713514511 0.4646464646478548 0 -5972 0.212704178377992 0.707070707070764 0 -5973 0.2739382978383398 0.2979797979802045 0 -5974 0.6413430145945967 0.6414141414150326 0 -5975 0.6500907459459522 0.6363636363645602 0 -5976 0.6500907459459424 0.6464646464655488 0 -5977 0.6588384772973022 0.6414141414150686 0 -5978 0.667586208648701 0.4646464646478692 0 -5979 0.9212704178387207 0.2474747474765398 0 -5980 0.2476951037834277 0.7070707070708391 0 -5981 0.2476951037834086 0.7171717171718422 0 -5982 0.2564428351347767 0.7121212121213616 0 -5983 0.2564428351347542 0.7222222222223666 0 -5984 0.2651905664861207 0.7171717171718868 0 -5985 0.2651905664860977 0.7272727272728916 0 -5986 0.2739382978374635 0.7222222222224155 0 -5987 0.2739382978374423 0.7323232323234158 0 -5988 0.2826860291888069 0.7272727272729412 0 -5989 0.2826860291887872 0.7373737373739405 0 -5990 0.29143376054015 0.7323232323234641 0 -5991 0.2914337605401297 0.7424242424244633 0 -5992 0.6938294027037171 0.1161616161629664 0 -5993 0.8600362983784851 0.5050505050521221 0 -5994 0.8512885670271196 0.5101010101026117 0 -5995 0.5363702383773086 0.9040404040412731 0 -5996 0.5451179697286557 0.9090909090917876 0 -5997 0.545117969728675 0.8989898989907947 0 -5998 0.6413430145946438 0.4696969696983389 0 -5999 0.7638112535143288 0.1565656565670669 0 -6000 0.9562613432444207 0.09595959596143407 0 -6001 0.2389473724329526 0.277777777778105 0 -6002 0.2476951037843153 0.2828282828286351 0 -6003 0.6938294027027632 0.5909090909102438 0 -6004 0.1777132529734341 0.1818181818182624 0 -6005 0.9650090743924529 0.080808081162231 0 -6006 0.798802178919674 0.1767676767691307 0 -6007 0.7900544475683341 0.1717171717186115 0 -6008 0.1602177902709174 0.1212121212122169 0 -6009 0.1602177902709403 0.1111111111112064 0 -6010 0.9562613432442882 0.2171717171734976 0 -6011 0.1864609843247878 0.1868686868687952 0 -6012 0.667586208647764 0.9090909090919929 0 -6013 0.3789110740553204 0.05555555555600711 0 -6014 0.1602010152474739 0.0404129548474722 0 -6015 0.1601007162141553 0.03048544398194961 0 -6016 0.1514551867995097 0.03537479403367149 0 -6017 0.5713611637827223 0.9141414141424529 0 -6018 0.9387658805405726 0.4595959595979203 0 -6019 0.9300181491892167 0.4646464646484118 0 -6020 0.7025771340540774 0.5151515151528627 0 -6021 0.4139019994597185 0.3282828282839316 0 -6022 0.4226497308110579 0.3232323232334388 0 -6023 0.7725589848650167 0.5252525252539092 0 -6024 0.7200725967569077 0.5252525252538194 0 -6025 0.1252268648648827 0.4545454545452807 0 -6026 0.5888566264854523 0.9141414141424838 0 -6027 0.9475136118929949 0.1313131313149608 0 -6028 0.3876588054062054 0.2727272727279383 0 -6029 0.3964065367575776 0.267676767677452 0 -6030 0.9650090745956792 0.2121212121229781 0 -6031 0.5713611637840955 0.2878787878801869 0 -6032 0.5713611637841183 0.2777777777791955 0 -6033 0.5801088951354525 0.2828282828296989 0 -6034 0.90377495513621 0.1262626262642366 0 -6035 0.7900544475676875 0.5252525252539417 0 -6036 0.1689655216222222 0.07575757575754745 0 -6037 0.1777132529736123 0.08080808080809704 0 -6038 0.8250453729722251 0.8585858585870898 0 -6039 0.7725589848635256 0.959595959597013 0 -6040 0.7725589848634927 0.9696969696980554 0 -6041 0.7638112535121814 0.9646464646475447 0 -6042 0.763922501756942 0.974554787136294 0 -6043 0.4926315816216141 0.484848484849621 0 -6044 0.5626134324329501 0.3131313131325222 0 -6045 0.6413430145936884 0.9040404040414399 0 -6046 0.632595283242302 0.9090909090919224 0 -6047 0.6413430145957193 0.08585858585992474 0 -6048 0.6325952832443764 0.08080808080935493 0 -6049 0.650090745947033 0.09090909091042443 0 -6050 0.6150998205406799 0.5757575757584907 0 -6051 0.7550758830768995 0.9696755599633264 0 -6052 0.973756805946533 0.4191919191941372 0 -6053 0.5888566264864249 0.5606060606070959 0 -6054 0.4488929248648408 0.4898989899000493 0 -6055 0.5626134324324055 0.5555555555565165 0 -6056 0.3614156113507891 0.7323232323238552 0 -6057 0.3614156113507803 0.7424242424248569 0 -6058 0.7988021789152563 0.9444444444369989 0 -6059 0.09023593945837721 0.8686868686869809 0 -6060 0.4139019994594629 0.4696969696979826 0 -6061 0.6850816713504899 0.9191919191930301 0 -6062 0.553865701081243 0.4696969696980466 0 -6063 0.7988021789190254 0.5303030303044531 0 -6064 0.4751361189189251 0.4949494949505828 0 -6065 0.4663883875675794 0.5000000000010498 0 -6066 0.9037749551354879 0.4494949494969633 0 -6067 0.9737568059470512 0.1767676767694729 0 -6068 0.03774509778713583 0.9191919191919266 0 -6069 0.02883506887942908 0.9244695827396046 0 -6070 0.440145193513503 0.4848484848495469 0 -6071 0.4401451935135045 0.4747474747485441 0 -6072 0.632595283243357 0.5757575757585749 0 -6073 0.650090745945865 0.575757575758742 0 -6074 0.6588384772971632 0.5808080808092616 0 -6075 0.6500907459458459 0.5858585858597065 0 -6076 0.1602177902708939 0.07070707070706528 0 -6077 0.4226497308108084 0.4747474747484977 0 -6078 0.1514700589197004 0.05555555555557359 0 -6079 0.9737568059467466 0.2373737373755661 0 -6080 0.7025771340531888 0.9292929292940324 0 -6081 0.702577134053222 0.9191919191930454 0 -6082 0.7988021789181747 0.8636363636378159 0 -6083 0.711324865404555 0.9242424242435221 0 -6084 0.7113248654046027 0.9141414141425523 0 -6085 0.7200725967559273 0.9191919191930223 0 -6086 0.7200725967559654 0.9090909090920403 0 -6087 0.7288203281073007 0.9141414141425295 0 -6088 0.7288203281073405 0.9040404040415579 0 -6089 0.7375680594586813 0.909090909092051 0 -6090 0.7375680594587175 0.8989898989910647 0 -6091 0.7463157908100502 0.9040404040415524 0 -6092 0.7463157908100746 0.8939393939405517 0 -6093 0.7550635221614055 0.8989898989910343 0 -6094 0.755063522161441 0.888888888890064 0 -6095 0.7638112535127685 0.8939393939405311 0 -6096 0.7638112535127815 0.8838383838395646 0 -6097 0.7900544475667634 0.8787878787890422 0 -6098 0.3964065367569956 0.3484848484859144 0 -6099 0.6938294027014923 0.9646464646473992 0 -6100 0.8862794924326949 0.3686868686887356 0 -6101 0.8950272237840322 0.3737373737392283 0 -6102 0.8950272237840592 0.3636363636382272 0 -6103 0.1689655216222617 0.0858585858586081 0 -6104 0.9125226864867858 0.4545454545475057 0 -6105 0.9212704178382182 0.449494949497053 0 -6106 0.3964065367570508 0.3383838383848352 0 -6107 0.9737568059464492 0.4292929292951743 0 -6108 0.9737568059465264 0.378787878790038 0 -6109 0.9737568059466377 0.3585858585879624 0 -6110 0.9737568059464685 0.4090909090930995 0 -6111 0.9737568059469651 0.2171717171734914 0 -6112 0.9737568059469633 0.20707070707247 0 -6113 0.973756805947023 0.1868686868705057 0 -6114 0.9737568059465469 0.3484848484868199 0 -6115 0.9737568059469685 0.1565656565673959 0 -6116 0.9737568056313073 0.05555555610440747 0 -6117 0.9737568058443146 0.07575757593729288 0 -6118 0.973756805912921 0.08585858591940206 0 -6119 0.9737568059468232 0.1464646464661877 0 -6120 0.3615093586060336 0.9745850997376494 0 -6121 0.3961797301339297 0.02511346042542579 0 -6122 0.2915173893591739 0.9746026253827357 0 -6123 0.02900182000063116 0.1060606060605082 0 -6124 0.02898328138980569 0.11619284091625 0 -6125 0.02900056336162818 0.03535419428410252 0 -6126 0.0202118166413642 0.1616237897975805 0 -6127 0.02004377885357243 0.2124081254770119 0 -6128 0.02885998650796373 0.4087655220435145 0 -6129 0.02904277300289986 0.3988555163235359 0 -6130 0.03775410168519754 0.3939244625317444 0 -6131 0.0289883373157193 0.388841073681278 0 -6132 0.01912810398419652 0.7269473526075081 0 -6133 0.02025893159751991 0.7575588882179649 0 -6134 0.0199768889567398 0.818164893560884 0 -6135 0.02890671281436269 0.9745391524986121 0 -6136 0.02906980168207079 0.02539894296707302 0 -6137 0.7112764112665693 0.02504389873456944 0 -6138 0.2215563100002574 0.9745666481726882 0 -6139 0.2214593146109936 0.02507681417900636 0 -6140 0.8337681745635045 0.02525704058438931 0 -6141 0.9040703272130077 0.974752582199918 0 -6142 0.9125229375327906 0.9696965348716545 0 -6143 0.7638207077275971 0.02516306433402056 0 -6144 0.08140862809276125 0.02539036188341208 0 -6145 0.4313974621636582 0.02525252525305566 0 -6146 0.4401451935150195 0.03030303030359853 0 -6147 0.133875390161866 0.974575644822721 0 -6148 0.1252158419689981 0.9696778774830389 0 -6149 0.8864015601863833 0.02568573761162595 0 -6150 0.6239437722768586 0.9745808161512112 0 -6151 0.6326059743962072 0.9696784520761361 0 -6152 0.4227127337607295 0.0203111445102284 0 -6153 0.6851985798211905 0.02031564568743326 0 -6154 0.7287350254324008 0.02531575289266637 0 -6155 0.9475550095707569 0.02026679349750334 0 -6156 0.9387596845950318 0.0250793075136805 0 -6157 0.8511876924278671 0.9745727180044805 0 -6158 0.5887536201059081 0.9745690624658219 0 -6159 0.5800974499806985 0.9696771461110044 0 -6160 0.5799931719175626 0.9795975413085861 0 -6161 0.5715048236859155 0.9747230011843189 0 -6162 0.326319635438018 0.9745655219324753 0 -6163 0.9825045372966298 0.6868686868701275 0 -6164 0.95626134324234 0.8838383838390278 0 -6165 0.9037749551343295 0.8535353535365132 0 -6166 0.9125226864856913 0.848484848486178 0 -6167 0.9212704178370461 0.8535353535367782 0 -6168 0.6238475518934733 0.04545454545608194 0 -6169 0.6238475518934463 0.03535353535513783 0 -6170 0.6325952832448557 0.03030303030476501 0 -6171 0.6239437722794755 0.02541918385136522 0 -6172 0.6238475518931828 0.06565656565777564 0 -6173 0.5801088951355008 0.272727272728678 0 -6174 0.5888566264868142 0.2777777777792255 0 -6175 0.7375680594588161 0.787878787880224 0 -6176 0.7288203281074364 0.7828282828297849 0 -6177 0.7113248654047776 0.7727272727287205 0 -6178 0.5713611637846884 0.2272727272735687 0 -6179 0.5626134324333543 0.2222222222230533 0 -6180 0.7375680594592904 0.70707070707166 0 -6181 0.606352089190058 0.2272727272736447 0 -6182 0.982504537297097 0.5353535353553912 0 -6183 0.7288203281095321 0.07575757575900519 0 -6184 0.9037749551354045 0.3686868686887375 0 -6185 0.5976043578373198 0.7474747474758556 0 -6186 0.6325952832431038 0.7171717171724945 0 -6187 0.6500907459462154 0.3333333333348293 0 -6188 0.5538657010805359 0.7222222222233228 0 -6189 0.5888566264863376 0.6919191919199393 0 -6190 0.5538657010815381 0.3484848484860069 0 -6191 0.5451179697302251 0.3434343434354836 0 -6192 0.4751361189184627 0.6868686868696039 0 -6193 0.466388387567111 0.6818181818190697 0 -6194 0.4838838502697926 0.6919191919201547 0 -6195 0.8250453729732256 0.3434343434360937 0 -6196 0.8250453729732139 0.3535353535371016 0 -6197 0.5538657010815811 0.3181818181830083 0 -6198 0.5276225070269721 0.6565656565662776 0 -6199 0.7113248654061131 0.2272727272738903 0 -6200 0.6850816713513583 0.5454545454558027 0 -6201 0.711324865405089 0.7121212121224475 0 -6202 0.5188747756756338 0.5909090909099333 0 -6203 0.3001814918911341 0.8282828282831889 0 -6204 0.7988021789186059 0.7525252525262009 0 -6205 0.7988021789186485 0.742424242425178 0 -6206 0.6238475518927502 0.2272727272736793 0 -6207 0.5888566264873765 0.2272727272736036 0 -6208 0.536370238379322 0.2272727272734936 0 -6209 0.5976043578390082 0.1010101010111056 0 -6210 0.6850816713511958 0.72727272727364 0 -6211 0.7900544475682483 0.2121212121226268 0 -6212 0.7988021789196059 0.2070707070721301 0 -6213 0.956261343242843 0.5707070707090404 0 -6214 0.3176769545935317 0.9292929292932283 0 -6215 0.3176769545935951 0.9494949494951784 0 -6216 0.3089292232420872 0.9646464646466482 0 -6217 0.3089292232420717 0.9747474747476598 0 -6218 0.6763339399993795 0.7727272727286406 0 -6219 0.6675862086479971 0.7777777777791548 0 -6220 0.5801088951363593 0.101010101011043 0 -6221 0.5713611637850244 0.09595959596054211 0 -6222 0.4139019994597922 0.318181818182841 0 -6223 0.04634741032078357 0.2372246148592409 0 -6224 0.5276225070274155 0.2727272727285849 0 -6225 0.5188747756760289 0.2777777777791095 0 -6226 0.8600362983777745 0.8181818181826425 0 -6227 0.1427223275678144 0.3636363636364087 0 -6228 0.3614156113521185 0.2777777777783887 0 -6229 0.3701633427034602 0.2828282828289124 0 -6230 0.4313974621617446 0.6818181818189581 0 -6231 0.0989836708112292 0.2676767676767856 0 -6232 0.1077314021625904 0.272727272727341 0 -6233 0.09023593945989383 0.2626262626262812 0 -6234 0.1077314021625807 0.2828282828283588 0 -6235 0.1164791335139384 0.2777777777778805 0 -6236 0.1164791335139456 0.2676767676768576 0 -6237 0.125226864865296 0.2727272727273999 0 -6238 0.1252268648653161 0.2626262626264035 0 -6239 0.1339745962166331 0.2676767676769211 0 -6240 0.851288567026246 0.8535353535366408 0 -6241 0.3089292232422603 0.9040404040407073 0 -6242 0.8250453729734848 0.313131313132996 0 -6243 0.3789110740535508 0.7121212121218948 0 -6244 0.8862794924321746 0.6212121212136714 0 -6245 0.8425408356762877 0.3131313131330875 0 -6246 0.3264246859451725 0.8232323232327772 0 -6247 0.8250414995928047 0.0303392468614675 0 -6248 0.825044942598437 0.04040806446760992 0 -6249 0.2739382978370968 0.8232323232326383 0 -6250 0.2651905664857332 0.8282828282831124 0 -6251 0.2914337605395492 0.8838383838387069 0 -6252 0.851288567026094 0.9242424242436843 0 -6253 0.9650090745937694 0.7474747474758736 0 -6254 0.9737568059450604 0.752525252526358 0 -6255 0.1602177902692624 0.9292929292929899 0 -6256 0.1864611290705184 0.9646462139368508 0 -6257 0.186461132126272 0.9747472187450783 0 -6258 0.8775317610801366 0.929292929294237 0 -6259 0.9212704178372648 0.7222222222233895 0 -6260 0.3614156113510718 0.6717171717175844 0 -6261 0.2039564470265653 0.7323232323232673 0 -6262 0.2039564470265356 0.7424242424242885 0 -6263 0.2039564470266048 0.7222222222222519 0 -6264 0.1252268648646582 0.5757575757574576 0 -6265 0.6150998205408047 0.3333333333347617 0 -6266 0.6063520891894334 0.3383838383852768 0 -6267 0.833793104324378 0.4393939393956392 0 -6268 0.8337931043243952 0.4292929292946372 0 -6269 0.8337931043243585 0.4494949494966423 0 -6270 0.3614156113504337 0.8737373737378483 0 -6271 0.3526678799990786 0.8787878787883255 0 -6272 0.2651905664867886 0.4040404040407047 0 -6273 0.2651905664867689 0.4141414141417087 0 -6274 0.8075499102702713 0.4747474747490981 0 -6275 0.3264246859449442 0.9141414141417419 0 -6276 0.3351724172963015 0.909090909091259 0 -6277 0.6500907459471453 0.08080808080948121 0 -6278 0.5713611637842428 0.3484848484860379 0 -6279 0.5801088951356145 0.3434343434355762 0 -6280 0.3264246859456247 0.6818181818184972 0 -6281 0.3176769545942823 0.6767676767679706 0 -6282 0.6938294027032679 0.2878787878801611 0 -6283 0.6850816713519267 0.2828282828296339 0 -6284 0.8512885670276619 0.3080808080826027 0 -6285 0.177713252973384 0.3333333333335066 0 -6286 0.7725589848662007 0.03030303030480349 0 -6287 0.2389473724313145 0.9646464646465284 0 -6288 0.2389473724312977 0.9747474747475159 0 -6289 0.2389473724313364 0.9545454545455383 0 -6290 0.4314088443645039 0.9646267500921292 0 -6291 0.4314999019928015 0.9745700437544402 0 -6292 0.7113248654059621 0.2979797979812273 0 -6293 0.2739382978374176 0.742424242424424 0 -6294 0.5101270443243657 0.4545454545466553 0 -6295 0.037741529291791 0.2828220471239056 0 -6296 0.9650090745938706 0.6969696969710797 0 -6297 0.9737568059451659 0.7020202020215858 0 -6298 0.4401451935149862 0.04040404040463559 0 -6299 0.4488929248663737 0.0353535353541433 0 -6300 0.4487774719770485 0.02545249552336147 0 -6301 0.457627828118943 0.03032524922256929 0 -6302 0.4576392308734146 0.04040650917344671 0 -6303 0.4663868038532072 0.0353562784305981 0 -6304 0.4662563831667147 0.02510564036829356 0 -6305 0.4750780735585043 0.02998631980124784 0 -6306 0.4751359429520165 0.04040434519100312 0 -6307 0.4838773812351124 0.03531837916356113 0 -6308 0.4839087919239434 0.02504281526152381 0 -6309 0.4926308628413417 0.03029912406035437 0 -6310 0.4926307829766581 0.04039970013432025 0 -6311 0.5013791443713811 0.03535261907497333 0 -6312 0.8600362983792595 0.1919191919207793 0 -6313 0.8600362983792333 0.2020202020217982 0 -6314 0.8687840297305834 0.2070707070723304 0 -6315 0.86003629837928 0.1818181818197678 0 -6316 0.8600362983792027 0.2121212121228276 0 -6317 0.5713758543103874 0.9646415427417632 0 -6318 0.5627223924184634 0.9695786533981132 0 -6319 0.9475136118919762 0.4545454545474542 0 -6320 0.9562613432432462 0.4595959595979226 0 -6321 0.3526782963606662 0.9696789280294558 0 -6322 0.8950272237847938 0.1616161616177942 0 -6323 0.8862794924334388 0.1565656565672621 0 -6324 0.8775317610820428 0.1616161616177766 0 -6325 0.7375680594599044 0.3535353535368277 0 -6326 0.7463157908112596 0.3484848484863162 0 -6327 0.5626134324324039 0.6565656565663072 0 -6328 0.5626134324323395 0.6666666666673632 0 -6329 0.8687840297296839 0.550505050506645 0 -6330 0.282695321279119 0.9696808753232242 0 -6331 0.1252268648638926 0.9191919191919072 0 -6332 0.9562613432424018 0.8030303030312234 0 -6333 0.1952087156759672 0.3838383838385488 0 -6334 0.326424685946083 0.4797979797983932 0 -6335 0.3176769545947153 0.4848484848488727 0 -6336 0.3351724172974391 0.4747474747479113 0 -6337 0.7113248654046447 0.8333333333347721 0 -6338 0.711324865405523 0.4595959595974113 0 -6339 0.553865701080025 0.9040404040413264 0 -6340 0.5538657010800002 0.9141414141423237 0 -6341 0.930018149188501 0.767676767677815 0 -6342 0.3439201486477412 0.873737373737808 0 -6343 0.4576406562150523 0.9494949494955743 0 -6344 0.448892924863723 0.9444444444450555 0 -6345 0.4401451935123584 0.9494949494955223 0 -6346 0.44014519351239 0.9393939393945335 0 -6347 0.781306716216317 0.5505050505064017 0 -6348 0.3701633427016359 0.9494949494953153 0 -6349 0.4838838502693009 0.8737373737381829 0 -6350 0.7550635221620946 0.6464646464657827 0 -6351 0.2389473724318847 0.7828282828283836 0 -6352 0.3701633427017914 0.8686868686873718 0 -6353 0.5538657010821337 0.1666666666675636 0 -6354 0.5626134324334877 0.1616161616170894 0 -6355 0.5626134324335138 0.1515151515160995 0 -6356 0.5713611637848417 0.1565656565666166 0 -6357 0.5713611637848175 0.166666666667607 0 -6358 0.5801088951361706 0.1616161616171348 0 -6359 0.5801088951361968 0.1515151515161457 0 -6360 0.5888566264875235 0.1565656565666637 0 -6361 0.5888566264875534 0.146464646465676 0 -6362 0.5976043578388787 0.151515151516192 0 -6363 0.6413430145938004 0.8333333333346252 0 -6364 0.6500907459451444 0.8383838383851517 0 -6365 0.6500907459451148 0.8484848484861556 0 -6366 0.6588384772964847 0.8434343434356655 0 -6367 0.6588384772965099 0.8333333333346622 0 -6368 0.9300181491899259 0.3333333333352877 0 -6369 0.6588384772981261 0.1969696969707695 0 -6370 0.2389473724326258 0.4494949494951624 0 -6371 0.2301996410812858 0.4444444444446376 0 -6372 0.230199641081308 0.4343434343436394 0 -6373 0.247695103782811 0.8888888888890987 0 -6374 0.2476951037827971 0.8989898989900929 0 -6375 0.2476951037828313 0.8787878787881067 0 -6376 0.5713611637831727 0.7525252525263739 0 -6377 0.5713611637832031 0.7424242424253662 0 -6378 0.5713611637831424 0.7626262626273836 0 -6379 0.09023593945962073 0.3939393939392017 0 -6380 0.6500907459460961 0.3939393939408491 0 -6381 0.6413430145947372 0.3989898989913352 0 -6382 0.8425408356763184 0.292929292930985 0 -6383 0.4401451935135386 0.4545454545465353 0 -6384 0.4751361189199031 0.2121212121220861 0 -6385 0.4663883875685438 0.2171717171725588 0 -6386 0.4838838502712824 0.2070707070715854 0 -6387 0.562613432433376 0.2121212121220589 0 -6388 0.886279492431844 0.7929292929301454 0 -6389 0.7550635221627999 0.2626262626277708 0 -6390 0.5626134324325904 0.3939393939407189 0 -6391 0.5801088951344547 0.777777777778924 0 -6392 0.6063520891891162 0.6818181818189086 0 -6393 0.6063520891890952 0.6919191919199157 0 -6394 0.6413430145946052 0.5202020202032251 0 -6395 0.1164791335135241 0.4494949494947556 0 -6396 0.2651905664865979 0.4848484848487425 0 -6397 0.238947372432414 0.5404040404042009 0 -6398 0.2301996410810486 0.5454545454546831 0 -6399 0.247695103783779 0.535353535353719 0 -6400 0.5976043578377871 0.5555555555566146 0 -6401 0.5976043578378345 0.5656565656575712 0 -6402 0.7725589848650825 0.353535353537025 0 -6403 0.7638112535137762 0.3484848484864607 0 -6404 0.8337931043239298 0.7727272727281789 0 -6405 0.8337931043238676 0.7828282828292725 0 -6406 0.6063520891893356 0.5808080808089673 0 -6407 0.2739382978380626 0.4393939393942455 0 -6408 0.2739382978380875 0.4292929292932404 0 -6409 0.7288203281073771 0.8434343434357865 0 -6410 0.3526678800008383 0.2424242424248205 0 -6411 0.6063520891893942 0.3585858585872803 0 -6412 0.5976043578380813 0.353535353536768 0 -6413 0.5976043578379423 0.4848484848496263 0 -6414 0.6063520891892928 0.4797979797991624 0 -6415 0.6325952832432965 0.464646464647834 0 -6416 0.3264246859458078 0.6010101010104587 0 -6417 0.3176769545944431 0.606060606060942 0 -6418 0.3089292232430991 0.6010101010104196 0 -6419 0.6325952832431466 0.6969696969704611 0 -6420 0.623847551891815 0.7020202020209753 0 -6421 0.3701633427019371 0.8080808080813845 0 -6422 0.1689655216217641 0.439393939393998 0 -6423 0.05524501405339293 0.6767676767674221 0 -6424 0.3089292232433729 0.4797979797983472 0 -6425 0.3089292232433478 0.4898989898993497 0 -6426 0.7025771340541633 0.4141414141429312 0 -6427 0.3439201486495372 0.1868686868692416 0 -6428 0.3526678800009107 0.1818181818187513 0 -6429 0.352667880000932 0.1717171717177319 0 -6430 0.3614156113522909 0.1767676767682616 0 -6431 0.4226497308106769 0.6060606060611804 0 -6432 0.4313974621620387 0.6010101010107014 0 -6433 0.5801088951352789 0.4040404040417462 0 -6434 0.6675862086488655 0.3434343434358697 0 -6435 0.667586208648886 0.3333333333348828 0 -6436 0.4226497308101657 0.7575757575765129 0 -6437 0.7638112535141448 0.2676767676782928 0 -6438 0.6675862086479718 0.7878787878801607 0 -6439 0.6588384772966313 0.7828282828296402 0 -6440 0.6588384772967 0.7727272727285637 0 -6441 0.6500907459453171 0.7777777777790723 0 -6442 0.8950272237831557 0.7979797979806519 0 -6443 0.04649728270162167 0.8333333333332913 0 -6444 0.03774955135023569 0.8383838383837824 0 -6445 0.03774955135020795 0.8484848484848094 0 -6446 0.02896574613833843 0.8434343434342725 0 -6447 0.02900181999881844 0.8535353535353003 0 -6448 0.8162976416217269 0.4090909090926009 0 -6449 0.4051542681090909 0.2020202020208916 0 -6450 0.1514700589187009 0.5909090909090476 0 -6451 0.6850816713514624 0.4141414141429054 0 -6452 0.3964065367576793 0.227272727273401 0 -6453 0.5801088951352917 0.3939393939407437 0 -6454 0.9125226864861289 0.6262626262642351 0 -6455 0.3176769545938118 0.8282828282832504 0 -6456 0.3176769545937826 0.8383838383842463 0 -6457 0.6500907459452667 0.7878787878801146 0 -6458 0.6413430145939263 0.7828282828295876 0 -6459 0.6413430145940002 0.7727272727285127 0 -6460 0.6325952832425841 0.7777777777790644 0 -6461 0.6325952832425558 0.7878787878800703 0 -6462 0.6238475518912157 0.7828282828295431 0 -6463 0.6238475518912426 0.7727272727285373 0 -6464 0.7375680594596211 0.5353535353548143 0 -6465 0.737568059459644 0.525252525253827 0 -6466 0.4751361189179371 0.8787878787886627 0 -6467 0.4751361189179156 0.8888888888896636 0 -6468 0.4313974621615532 0.7424242424250326 0 -6469 0.2127041783774037 0.9090909090910336 0 -6470 0.8600362983790146 0.3131313131331383 0 -6471 0.0552450140540813 0.45454545454506 0 -6472 0.8162976416216136 0.5202020202035975 0 -6473 0.825045372972943 0.5151515151531219 0 -6474 0.6500907459458731 0.5555555555567424 0 -6475 0.7463157908112961 0.3383838383853095 0 -6476 0.34392014864786 0.8232323232328184 0 -6477 0.2739382978376931 0.5909090909093271 0 -6478 0.2651905664863257 0.5959595959598122 0 -6479 0.8687840297296362 0.5707070707086135 0 -6480 0.8600362983783175 0.5656565656581027 0 -6481 0.6850816713519488 0.2727272727286313 0 -6482 0.6763339400005857 0.2777777777791123 0 -6483 0.6763339400005637 0.2878787878801165 0 -6484 0.6675862086492228 0.2828282828295935 0 -6485 0.5713611637850469 0.08585858585954247 0 -6486 0.5626134324337014 0.09090909091001283 0 -6487 0.5626134324336812 0.1010101010110325 0 -6488 0.5538657010823584 0.0959595959604828 0 -6489 0.6763339400008171 0.1969696969708147 0 -6490 0.5538657010823824 0.08585858585949774 0 -6491 0.5451179697310362 0.09090909090997078 0 -6492 0.545117969731019 0.1010101010109698 0 -6493 0.5363702383796846 0.09595959596046209 0 -6494 0.0814882081081611 0.4393939393936577 0 -6495 0.553865701082022 0.2171717171725369 0 -6496 0.5538657010820014 0.2272727272735321 0 -6497 0.08148820810763087 0.6313131313128741 0 -6498 0.2826860291902613 0.03030303030309533 0 -6499 0.5451179697302503 0.3333333333344977 0 -6500 0.5363702383788937 0.3383838383849909 0 -6501 0.5363702383788693 0.3484848484859673 0 -6502 0.5276225070275369 0.3434343434354827 0 -6503 0.7813067162164717 0.328282828284531 0 -6504 0.7725589848651261 0.3333333333349854 0 -6505 0.7900544475678398 0.3232323232340497 0 -6506 0.4226497308102672 0.7171717171725088 0 -6507 0.2651905664855285 0.8787878787881465 0 -6508 0.08148820810866836 0.1363636363635946 0 -6509 0.6675862086492452 0.272727272728593 0 -6510 0.6588384772978827 0.2777777777790733 0 -6511 0.6588384772978588 0.2878787878800744 0 -6512 0.6500907459465201 0.2828282828295527 0 -6513 0.8250453729720925 0.9090909090921053 0 -6514 0.5363702383797146 0.08585858585945695 0 -6515 0.5276225070283607 0.09090909090993057 0 -6516 0.527622507028332 0.101010101010961 0 -6517 0.5188747756770075 0.09595959596041602 0 -6518 0.3176769545943086 0.6666666666669659 0 -6519 0.3089292232429415 0.6717171717174484 0 -6520 0.2127041783791609 0.05050505050504223 0 -6521 0.5013793129721393 0.8232323232332168 0 -6522 0.492631581620805 0.8181818181826943 0 -6523 0.8425296156663881 0.9696775128475282 0 -6524 0.6325966031377753 0.9595936734708705 0 -6525 0.6413442024995876 0.9646444071340206 0 -6526 0.6413443344891216 0.9747451886224346 0 -6527 0.6500910245895685 0.9696964870714679 0 -6528 0.5013793129728037 0.6313131313139508 0 -6529 0.4926315816214548 0.6262626262634323 0 -6530 0.5101270443241428 0.6363636363644547 0 -6531 0.6500907459465427 0.2727272727285542 0 -6532 0.6413430145951817 0.2777777777790318 0 -6533 0.6413430145951566 0.2878787878800316 0 -6534 0.6325952832438192 0.2828282828295075 0 -6535 0.0902351538130117 0.05050641128572663 0 -6536 0.5188747756770349 0.08585858585941525 0 -6537 0.5101270443256775 0.09090909090989228 0 -6538 0.5101270443256543 0.101010101010902 0 -6539 0.5013793129743216 0.09595959596037559 0 -6540 0.5013793129743461 0.08585858585937642 0 -6541 0.4926315816229859 0.09090909090985687 0 -6542 0.4926315816229632 0.1010101010108608 0 -6543 0.4838838502716259 0.0959595959603395 0 -6544 0.4838838502716472 0.08585858585933949 0 -6545 0.4751361189202851 0.09090909090982299 0 -6546 0.475136118920265 0.1010101010108255 0 -6547 0.4663883875689205 0.09595959596031083 0 -6548 0.930018149188549 0.7373737373748348 0 -6549 0.4401451935134583 0.5757575757582378 0 -6550 0.72007259675753 0.2020202020214138 0 -6551 0.7288203281088653 0.2070707070719345 0 -6552 0.9387658805415948 0.1969696969714831 0 -6553 0.3264246859463331 0.3787878787883435 0 -6554 0.335172417297699 0.3737373737378605 0 -6555 0.7200725967568635 0.4141414141429585 0 -6556 0.7288203281082252 0.4090909090924741 0 -6557 0.7288203281082448 0.3989898989914752 0 -6558 0.09898367081121819 0.1969696969696152 0 -6559 0.6325952832438433 0.2727272727285109 0 -6560 0.6238475518924823 0.2777777777789837 0 -6561 0.623847551892454 0.2878787878799822 0 -6562 0.6150998205410591 0.2828282828295297 0 -6563 0.87753176108056 0.7777777777786784 0 -6564 0.755063522163035 0.141414141415577 0 -6565 0.7288203281081509 0.6010101010112572 0 -6566 0.7375680594595065 0.5959595959607739 0 -6567 0.7463157908108412 0.6010101010112823 0 -6568 0.7463157908108609 0.5909090909102925 0 -6569 0.7550635221621957 0.5959595959608062 0 -6570 0.8250453729736521 0.2626262626278891 0 -6571 0.7025771340551191 0.1111111111125165 0 -6572 0.6588384772971776 0.5909090909102229 0 -6573 0.2039486403834358 0.03535368413157144 0 -6574 0.2038101763570891 0.02512220956432085 0 -6575 0.05524495345301852 0.7676767237113162 0 -6576 0.1339745962163673 0.4393939393939028 0 -6577 0.6938294027026662 0.6616161616170984 0 -6578 0.5888566264868195 0.2878787878801951 0 -6579 0.5976043578381616 0.2828282828297293 0 -6580 0.5976043578381987 0.2727272727287073 0 -6581 0.06399274540601502 0.1161616161615752 0 -6582 0.06399274540602787 0.1060606060605634 0 -6583 0.7900544475675739 0.4747474747490663 0 -6584 0.7813067162162237 0.4696969696985491 0 -6585 0.6500907459468012 0.1919191919202494 0 -6586 0.641343014595453 0.1969696969707215 0 -6587 0.3876588054065632 0.1111111111116763 0 -6588 0.8075499102705455 0.3232323232340627 0 -6589 0.1514700589190681 0.4393939393939568 0 -6590 0.781306716216334 0.4090909090925587 0 -6591 0.7900544475676968 0.4040404040420735 0 -6592 0.7900544475677139 0.3939393939410735 0 -6593 0.1864609843250714 0.09595959595969643 0 -6594 0.1952087156764213 0.1010101010102272 0 -6595 0.6150998205410763 0.2727272727285419 0 -6596 0.9650090745944507 0.5151515151534067 0 -6597 0.9737568059458143 0.5101010101029361 0 -6598 0.4926315816205455 0.9090909090917 0 -6599 0.7550635221620831 0.6565656565667699 0 -6600 0.4926315816227157 0.1717171717179379 0 -6601 0.492631581622694 0.1818181818189449 0 -6602 0.3526678800001086 0.4949494949499892 0 -6603 0.3001814918914907 0.7373737373739915 0 -6604 0.2476951037847387 0.03030303030302968 0 -6605 0.9212701194315702 0.06565708251509889 0 -6606 0.930018059336549 0.07070722634018316 0 -6607 0.09898367081124083 0.1868686868686177 0 -6608 0.1077314021623709 0.3737373737373062 0 -6609 0.0989836708110375 0.3686868686867898 0 -6610 0.3264019812068557 0.03532012106360605 0 -6611 0.3260463918567167 0.02505618391183827 0 -6612 0.1252268648650172 0.39393939393934 0 -6613 0.6588384772973818 0.4797979797993019 0 -6614 0.6763339399991923 0.8434343434356939 0 -6615 0.3439201486489931 0.3989898989904261 0 -6616 0.3089292232436275 0.3787878787883018 0 -6617 0.7025771340541022 0.6060606060617221 0 -6618 0.8775317610805768 0.7676767676777025 0 -6619 0.833793104323437 0.914141414142628 0 -6620 0.5713611637838409 0.621212121212821 0 -6621 0.5013793129741252 0.1464646464654464 0 -6622 0.4926315816227858 0.1515151515159364 0 -6623 0.7288203281082269 0.4595959595974563 0 -6624 0.7375680594595716 0.4646464646479795 0 -6625 0.7375680594595448 0.4747474747489714 0 -6626 0.7463157908108984 0.4696969696985021 0 -6627 0.3876588054044425 0.8888888888894093 0 -6628 0.6238475518910419 0.8535353535365902 0 -6629 0.5976043578369583 0.8585858585869812 0 -6630 0.588856626485606 0.8535353535364583 0 -6631 0.860036298377431 0.9292929292941996 0 -6632 0.3176769545954446 0.1818181818186715 0 -6633 0.3089292232440835 0.1767676767681442 0 -6634 0.5188747756746033 0.9040404040412403 0 -6635 0.3351724172982972 0.1111111111115872 0 -6636 0.3351724172982763 0.1212121212126127 0 -6637 0.9300181491888433 0.5959595959613876 0 -6638 0.1252268648653275 0.1818181818182019 0 -6639 0.6150998205405902 0.6262626262634329 0 -6640 0.6938294027026931 0.6515151515161126 0 -6641 0.6325952832441133 0.2121212121222005 0 -6642 0.26519056648614 0.7070707070708868 0 -6643 0.05524501405306529 0.9191919191917943 0 -6644 0.06399274540442769 0.9141414141413196 0 -6645 0.07274047675578617 0.9191919191918141 0 -6646 0.5276225070270188 0.5757575757584337 0 -6647 0.9475136112572042 0.0808080819112641 0 -6648 0.9475136118915207 0.5757575757595027 0 -6649 0.4226497308108323 0.5454545454551755 0 -6650 0.4139019994594967 0.5404040404046453 0 -6651 0.4313974621621671 0.5505050505057154 0 -6652 0.03750487806248478 0.7878787878786552 0 -6653 0.02817976153702783 0.7928306018636244 0 -6654 0.938765880541528 0.2272727272745556 0 -6655 0.8950272237837993 0.5252525252541959 0 -6656 0.8950272237838247 0.5151515151532154 0 -6657 0.8862794924324995 0.5101010101026919 0 -6658 0.07273066459868666 0.0303200254603514 0 -6659 0.6938294027028108 0.4595959595973686 0 -6660 0.833793104323385 0.9242424242436338 0 -6661 0.142722327568238 0.1212121212122436 0 -6662 0.1339745962168683 0.1262626262627328 0 -6663 0.125226864865524 0.1212121212122111 0 -6664 0.1252268648654834 0.1313131313132175 0 -6665 0.8687840297291696 0.8030303030310948 0 -6666 0.2039564470276832 0.116161616161767 0 -6667 0.2039564470276664 0.1262626262627883 0 -6668 0.8162976416206044 0.9343434343446104 0 -6669 0.3701633427040502 0.04040404040436561 0 -6670 0.3701764594107795 0.030325749105758 0 -6671 0.3616072019687421 0.02511669596318649 0 -6672 0.8950272237848187 0.121212121213731 0 -6673 0.03771624629730578 0.4545454545450194 0 -6674 0.02896481438438244 0.4595959595954977 0 -6675 0.8687840297298273 0.5000000000016578 0 -6676 0.7725589848636107 0.9494949494959939 0 -6677 0.5013793129730179 0.4898989899000823 0 -6678 0.6325952832433035 0.4747474747488129 0 -6679 0.6238475518919508 0.4696969696983047 0 -6680 0.6238475518919551 0.4595959595973203 0 -6681 0.6150998205406075 0.4646464646477917 0 -6682 0.6150998205406126 0.4545454545468079 0 -6683 0.6063520891892771 0.4595959595972791 0 -6684 0.7813067162153812 0.8838383838394829 0 -6685 0.7813067162154219 0.8737373737385447 0 -6686 0.3351724172965903 0.7979797979802925 0 -6687 0.3351724172966392 0.7878787878792575 0 -6688 0.3351724172965571 0.8080808080812968 0 -6689 0.6063520891881935 0.914141414142392 0 -6690 0.6150998205395689 0.9090909090918901 0 -6691 0.7025771340537798 0.7171717171729379 0 -6692 0.7025771340537573 0.7272727272739321 0 -6693 0.6325952832423417 0.8989898989909426 0 -6694 0.9562613432444089 0.1464646464663583 0 -6695 0.5888566264866423 0.4595959595971431 0 -6696 0.5801088951353038 0.4545454545466169 0 -6697 0.8687840297300062 0.3686868686887059 0 -6698 0.8600362983785985 0.3737373737391836 0 -6699 0.7200725967559768 0.8989898989910776 0 -6700 0.6500907459450764 0.8989898989909754 0 -6701 0.746315790810081 0.8838383838395909 0 -6702 0.7463157908100009 0.9141414141425285 0 -6703 0.5801088951350943 0.5656565656575435 0 -6704 0.440145193513531 0.4949494949505002 0 -6705 0.7025771340531395 0.9393939393950013 0 -6706 0.413901999459484 0.4797979797989144 0 -6707 0.6938294027015824 0.9545454545463983 0 -6708 0.9825045372977015 0.4242424242445955 0 -6709 0.9737568059467373 0.3080808080827704 0 -6710 0.9737568059467381 0.2979797979817287 0 -6711 0.9650090745955444 0.2929292929311929 0 -6712 0.9737568059466254 0.3181818181838041 0 -6713 0.9737568059467541 0.2878787878806844 0 -6714 0.9650090745955379 0.2828282828301664 0 -6715 0.9737568059467261 0.2777777777796249 0 -6716 0.9825045372980318 0.2121212121228352 0 -6717 0.9825045372980787 0.1818181818198245 0 -6718 0.9737568059469397 0.1060606060624868 0 -6719 0.9737568059468165 0.1161616161634654 0 -6720 0.9825045372166367 0.05050505064776132 0 -6721 0.501488817402245 0.02544182742715499 0 -6722 0.5101391927508424 0.03032396206988132 0 -6723 0.5101285253977292 0.04040652276465453 0 -6724 0.5188761255022265 0.03535586110615976 0 -6725 0.501488915997766 0.9745576367383989 0 -6726 0.5101270443230719 0.9696969696977182 0 -6727 0.5101270443231011 0.9595959595967187 0 -6728 0.5188747756744361 0.9646464646472435 0 -6729 0.1514604085216911 0.02539470458608342 0 -6730 0.1427196028439404 0.0303211900821677 0 -6731 0.256331166380982 0.974554058793718 0 -6732 0.309043035239237 0.02544965341015991 0 -6733 0.7551061524233834 0.02022544462197659 0 -6734 0.7556590588461105 0.9806832347475984 0 -6735 0.7464618100485052 0.9747075347570606 0 -6736 0.3437355088382514 0.02473799037238335 0 -6737 0.08141754179134825 0.9746250770981971 0 -6738 0.09022808764554217 0.9696833699580739 0 -6739 0.4487774719742414 0.9745475044777187 0 -6740 0.7986658166906537 0.9747265717637256 0 -6741 0.7894845785867984 0.9807484876623298 0 -6742 0.5714762868316964 0.02545192421926638 0 -6743 0.5626262238835299 0.03032518574478377 0 -6744 0.5626148537060661 0.04040650212075524 0 -6745 0.5538672802738953 0.03535627059420156 0 -6746 0.5539537722116412 0.02540506892379432 0 -6747 0.5451279308779834 0.03032028351629708 0 -6748 0.5451192519910149 0.04040626134416155 0 -6749 0.5363714876473185 0.03535569914914079 0 -6750 0.536371483981539 0.02525468269878094 0 -6751 0.5187662199623149 0.02544573117520706 0 -6752 0.5187647201538513 0.9745568529949876 0 -6753 0.5276102786346023 0.9696757895029658 0 -6754 0.5887536201085352 0.02543093753632305 0 -6755 0.6939339164240137 0.974566451670837 0 -6756 0.6850932839859705 0.9696768560226035 0 -6757 0.3008404233359784 0.01931676081261227 0 -6758 0.8424372137595907 0.02037720259763428 0 -6759 0.2645857692461742 0.9806935685482875 0 -6760 0.05513648044831299 0.02038813230299796 0 -6761 0.5270537745589872 0.980699048200942 0 -6762 0.5362294743754789 0.9747132356712057 0 -6763 0.5363532392223948 0.9646403069504221 0 -6764 0.5450340162616087 0.96957743103089 0 -6765 0.4931891393352842 0.9807031339877694 0 -6766 0.2475589509974163 0.02024507185031478 0 -6767 0.7025172034804894 0.9795494494222434 0 -6768 0.3347136958638201 0.980705827669245 0 -6769 0.6855218192093816 0.980719344641708 0 -6770 0.6763301572522812 0.97502816690834 0 -6771 0.8426431146095426 0.9795506341544624 0 -6772 0.5971971295118994 0.9807099725868591 0 -6773 0.4230351920969105 0.9807254007683345 0 -6774 0.8596901222995919 0.9807283815469549 0 -6775 0.86848781107108 0.9741335320244348 0 -6776 0.8255280863574984 0.9791785862288405 0 -6777 0.8171782329624917 0.9845868796568999 0 -6778 0.2645858265721858 0.01921736649303965 0 -6779 0.2737177866319582 0.01599458829258515 0 -6780 0.2385074914068303 0.01511476964268905 0 -6781 0.07226237868410476 0.01931773639120515 0 -6782 0.07222785277927882 0.9806888990492164 0 -6783 0.06388576320408024 0.9745621761409831 0 -6784 0.1605699424508065 0.01966643981075529 0 -6785 0.04617418224571909 0.01528351750904507 0 -6786 0.5451992946959147 0.9805516994888499 0 -6787 0.02003419125810514 0.1515159990907146 0 -6788 0.02898630601374217 0.1464802006243805 0 -6789 0.01998559006369214 0.1414314238138336 0 -6790 0.01972840258822768 0.2020551081973032 0 -6791 0.0197453144093601 0.8080238187988923 0 -6792 0.01970083884429616 0.8282621426350458 0 -6793 0.09042099035156642 0.01944528908783159 0 -6794 0.09036760069139547 0.9807490346507166 0 -6795 0.09908859921606217 0.9746937222298391 0 -6796 0.5713229749987775 0.9847099885690677 0 -6797 0.02003889491748706 0.3030303030301205 0 -6798 0.02021104888763493 0.3130999240736776 0 -6799 0.01997891064244933 0.2929292929290651 0 -6800 0.02002041964284548 0.03027111396876943 0 -6801 0.01995577095261697 0.04044882554261103 0 -6802 0.01045412424995439 0.04564701225125613 0 -6803 0.01016606431327506 0.02515120046891366 0 -6804 0.01975062446590541 0.353474205828871 0 -6805 0.0199937380271278 0.3636121796144694 0 -6806 0.02003683507203075 0.1111145805281716 0 -6807 0.01997868177076419 0.1010104865007746 0 -6808 0.01995407510754921 0.1212472008747108 0 -6809 0.01998066197873931 0.06065352296099843 0 -6810 0.01948233736150118 0.1818190293936658 0 -6811 0.02009865945446862 0.3938209211810879 0 -6812 0.01996551445954629 0.3837886826426528 0 -6813 0.01995361247073506 0.08080808080790569 0 -6814 0.01947615550546497 0.4343434343428654 0 -6815 0.01972461528217645 0.4240152657445156 0 -6816 0.01971659191676767 0.4545454545449341 0 -6817 0.0198964322108595 0.4646546550993824 0 -6818 0.02885221162563987 0.4699230053647418 0 -6819 0.01926713615914305 0.4750343506094725 0 -6820 0.02001525053076764 0.2726956118859422 0 -6821 0.01958035237088097 0.2623200475044546 0 -6822 0.02002286028675364 0.6565378837718728 0 -6823 0.01965431080774631 0.6459566741679219 0 -6824 0.01971047755365945 0.6667172010042045 0 -6825 0.01900849710606371 0.6970236808521618 0 -6826 0.01975765136580348 0.9596692782516675 0 -6827 0.01971783723589526 0.9496364939993112 0 -6828 0.01999935925080665 0.89899161676594 0 -6829 0.0199839900177183 0.8889062575136809 0 -6830 0.02001665700096043 0.9192171590249514 0 -6831 0.01954648012923903 0.9295501620194351 0 -6832 0.01999881284881267 0.8484848484847055 0 -6833 0.0200105309383613 0.85858585858573 0 -6834 0.02895621942033858 0.8636675883910148 0 -6835 0.01986141874171466 0.868721562858648 0 -6836 0.8335508883390008 0.01525172482556317 0 -6837 0.1422366355949398 0.01923811717989948 0 -6838 0.1337912600933459 0.02557947530208878 0 -6839 0.2827294513406332 0.9807436306328393 0 -6840 0.7375508097235287 0.01926274986266531 0 -6841 0.4750754858909376 0.9793422086728023 0 -6842 0.4667903604235016 0.9844189788935576 0 -6843 0.3528679414111216 0.9807429435618433 0 -6844 0.6153547095568678 0.9807410664181537 0 -6845 0.8780086153621633 0.01926333703335937 0 -6846 0.1423968050689551 0.9807364071925413 0 -6847 0.03766904174551714 0.9795091685517033 0 -6848 0.04648544932574995 0.9747162941229401 0 -6849 0.04610615958403272 0.9846981712474108 0 -6850 0.1955344525215803 0.02080710354967989 0 -6851 0.3703139930090703 0.02053519069544223 0 -6852 0.3701592541517592 0.979702165044229 0 -6853 0.6326096005413659 0.0203029989262787 0 -6854 0.641320658712655 0.02526374511235897 0 -6855 0.6413773071951532 0.01515365169988097 0 -6856 0.6502406198065269 0.02018685582111371 0 -6857 0.6594016399349369 0.01601940237932142 0 -6858 0.6587295566184139 0.02574802389619811 0 -6859 0.6676536434479714 0.02141155362237398 0 -6860 0.3877607826429604 0.02053152791755053 0 -6861 0.125188166239673 0.9796886078519798 0 -6862 0.1164635261993612 0.9747297665699021 0 -6863 0.1163883892135268 0.9848175754108812 0 -6864 0.9125833824283252 0.9797242642991839 0 -6865 0.921185317902006 0.9745801091592288 0 -6866 0.9041381023234023 0.9848136828360686 0 -6867 0.6501005591932815 0.9797186263237645 0 -6868 0.6586430072432091 0.9748757923694042 0 -6869 0.6413636160220952 0.9848210314626833 0 -6870 0.9649825085700636 0.02002580271401629 0 -6871 0.973753854135082 0.02523294558763783 0 -6872 0.9740012846869285 0.01508544473344452 0 -6873 0.9827273995043522 0.0201387331158997 0 -6874 0.177577762760845 0.9799083870435705 0 -6875 0.1865595144257628 0.9849012435295328 0 -6876 0.1680422584546826 0.98488760732143 0 -6877 0.1954347389573785 0.9798063142619031 0 -6878 0.2046326517255342 0.9840234758711079 0 -6879 0.7725790310958641 0.01997045994780937 0 -6880 0.7725879049654237 0.9794388024622191 0 -6881 0.8427877956109575 0.009862871721631895 0 -6882 0.5803042233764003 0.9901268424305217 0 -6883 0.01057104395148397 0.3080849485890222 0 -6884 0.01028635915048805 0.4595799450247901 0 -6885 0.01058124298764233 0.2071064647963226 0 -6886 0.01057060662881608 0.1565742264978505 0 -6887 0.01035962395124655 0.2878787878782509 0 -6888 0.01035551595922198 0.0959596387917388 0 -6889 0.01035628354731753 0.1363655566300602 0 -6890 0.01035813548638938 0.3787823564320517 0 -6891 0.01036471645971266 0.116165899392528 0 -6892 0.01012709702586539 0.4189033667442832 0 -6893 0.01929311286803138 0.4132321006504901 0 -6894 0.01876988408456313 0.191923164558155 0 -6895 0.01029941379970751 0.813099325269655 0 -6896 0.01854614635875872 0.7977470450665382 0 -6897 0.01044988188266051 0.3988423526832658 0 -6898 0.01873458821847021 0.4444444444438437 0 -6899 0.01004507904531004 0.6410830350063272 0 -6900 0.01818961389551627 0.63465877228483 0 -6901 0.01645258110700772 0.6245887458061782 0 -6902 0.02509569559656992 0.6279862959148441 0 -6903 0.02361184698165747 0.6179920630019434 0 -6904 0.02815694971519328 0.639261569391153 0 -6905 0.01027229147144314 0.9545929599841168 0 -6906 0.01889712897322259 0.9699174733301769 0 -6907 0.02007493824640371 0.9805057631530377 0 -6908 0.01028596908573632 0.6616240526963044 0 -6909 0.0185917523803157 0.6769762526401465 0 -6910 0.01033103534103869 0.8434324629205929 0 -6911 0.01035610576364666 0.883840313685356 0 -6912 0.01039512861527318 0.86363636363608 0 -6913 0.01036189601780558 0.9040405949042305 0 -6914 0.01037860478671748 0.2676390382048831 0 -6915 0.01792232493924823 0.2519230035701831 0 -6916 0.01040158013183442 0.3585710152618484 0 -6917 0.01887498425009741 0.3431785979755541 0 -6918 0.01958515156964075 0.3330035881808782 0 -6919 0.01037882285705231 0.9242758400527473 0 -6920 0.01869494354069148 0.9397880580017719 0 -6921 0.02829443262328622 0.9352627497243264 0 -6922 0.02776327206850797 0.2564697958273 0 -6923 0.02674910081846289 0.2452371210843924 0 -6924 0.01670658775824447 0.241860979098603 0 -6925 0.03717082213375347 0.2415580267253178 0 -6926 0.01988216094312857 0.01913757179076583 0 -6927 0.05527438906835784 0.009879805685423799 0 -6928 0.9559422341338107 0.0150064707766155 0 -6929 0.01056843179802009 0.1666921985774033 0 -6930 0.01059183383843472 0.3181504540378433 0 -6931 0.0102971579005896 0.2174895308042921 0 -6932 0.01928752015580744 0.2244668849865543 0 -6933 0.009626176950818969 0.8231719357307116 0 -6934 0.009517469383911742 0.4696806830901592 0 -6935 0.01787284949750962 0.4851520374036942 0 -6936 0.02773226133547753 0.4808262449604479 0 -6937 0.02582105685897639 0.4914445792641309 0 -6938 0.03643806949500197 0.4954122536206785 0 -6939 0.02818227368571898 0.5018495356303538 0 -6940 0.0299558906312541 0.5116295790436042 0 -6941 0.02115896430933437 0.5084895620267351 0 -6942 0.02312698933778856 0.5185519988844242 0 -6943 0.009458893069392378 0.9445660801222461 0 -6944 0.6936773088960142 0.01524629939339274 0 -6945 0.9463726909987928 0.009699167399578653 0 -6946 0.009006325484113583 0.7928030047022807 0 -6947 0.0180100682252811 0.7876196007011779 0 -6948 0.02763009078697742 0.7827265374752448 0 -6949 0.01860749188205121 0.7775413803534091 0 -6950 0.6854756302786102 0.0106638500545315 0 -6951 0.4312146888453878 0.01530975376854524 0 -6952 0.4229931703648095 0.01067692429430636 0 -6953 0.6674058924920111 0.03093880715246995 0 -6954 0.01976697389692384 0.09090913850040182 0 -6955 0.01035080554789986 0.07576232199292945 0 -6956 0.0197628414141875 0.1313658474224252 0 -6957 0.01976438678728477 0.07071761789691935 0 -6958 0.009392012489946056 0.4393939393929658 0 -6959 0.02886408419766059 0.1263901722077977 0 -6960 0.009400096881316621 0.1868700700235025 0 -6961 0.01977673722256317 0.2828213198163318 0 -6962 0.01977718205069327 0.909093925587897 0 -6963 0.01976930611535708 0.3736818659339465 0 -6964 0.02886674550169827 0.378656363791918 0 -6965 0.01975616192743563 0.8788228541515837 0 -6966 0.02886929132467489 0.8738590195046394 0 -6967 0.01971225506664704 0.8383794505190312 0 -6968 0.01986281267220212 0.05055441358039134 0 -6969 0.009410540989044942 0.338301218017668 0 -6970 0.009378633307479947 0.9748402626525206 0 -6971 0.01704972154612359 0.9910824276296198 0 -6972 0.009094373144335382 0.6818941812899316 0 -6973 0.008802024070836911 0.4895794457444441 0 -6974 0.01985671273451834 0.1717217979224978 0 -6975 0.9825045372966579 0.8989898989908804 0 -6976 0.9825045372966676 0.9393939393951207 0 -6977 0.9825045372966703 0.9494949494961412 0 -6978 0.9825045372966884 0.9191919191930005 0 -6979 0.9825045372964557 0.8282828282835893 0 -6980 0.9825045372964938 0.8383838383845749 0 -6981 0.9825045372964958 0.7777777777787733 0 -6982 0.9825045372965285 0.787878787879728 0 -6983 0.9825045372965135 0.7474747474758442 0 -6984 0.98250453729656 0.7575757575768048 0 -6985 0.9825045372966756 0.7272727272738436 0 -6986 0.982504537296659 0.6767676767691578 0 -6987 0.9825045372967883 0.6565656565671766 0 -6988 0.9825045372966529 0.71717171717288 0 -6989 0.9825045372968675 0.616161616163303 0 -6990 0.9825045372968917 0.5757575757594982 0 -6991 0.9212704178370585 0.8434343434356492 0 -6992 0.9125226864857109 0.8383838383849711 0 -6993 0.8862794924316461 0.8636363636371091 0 -6994 0.8775317610803143 0.868686868687515 0 -6995 0.9825045372969257 0.5656565656585295 0 -6996 0.9650090745936848 0.8888888888896793 0 -6997 0.9737568059450472 0.8838383838391553 0 -6998 0.8162976416210732 0.7828282828295381 0 -6999 0.9912522686481547 0.7525252525260949 0 -7000 0.8075499102697568 0.7777777777789771 0 -7001 0.8600362983777354 0.8282828282837182 0 -7002 0.676375154948984 0.04554132056302166 0 -7003 0.9912522686481002 0.7828282828289851 0 -7004 0.8250453729724082 0.7878787878800319 0 -7005 0.7988021789184601 0.7727272727283352 0 -7006 0.7900544475671399 0.7575757575769252 0 -7007 0.7900544475672553 0.7474747474757351 0 -7008 0.9912522686482342 0.6818181818194446 0 -7009 0.8862794924328213 0.4292929292949194 0 -7010 0.8862794924328004 0.4191919191939039 0 -7011 0.7725589848644488 0.747474747475946 0 -7012 0.9825045372968128 0.6262626262642611 0 -7013 0.9912522686481378 0.8333333333337773 0 -7014 0.9825045372966419 0.8181818181824546 0 -7015 0.9825045372966209 0.8080808080814558 0 -7016 0.9300181491884175 0.8484848484860463 0 -7017 0.9037749551353832 0.3989898989918099 0 -7018 0.9037749551354664 0.4090909090928804 0 -7019 0.7463157908106092 0.7121212121221991 0 -7020 0.7550635221619735 0.7070707070716987 0 -7021 0.7025771340538084 0.70707070707187 0 -7022 0.7200725967564939 0.7070707070718565 0 -7023 0.7200725967581931 0.07070707070855797 0 -7024 0.9037749551354067 0.3787878787897595 0 -7025 0.7375680594588558 0.7777777777791904 0 -7026 0.7288203281075043 0.7727272727287066 0 -7027 0.7550635221616138 0.7979797979810236 0 -7028 0.5276225070279531 0.2323232323239988 0 -7029 0.7638112535129326 0.8030303030315927 0 -7030 0.7025771340534585 0.7676767676781699 0 -7031 0.5188747756761405 0.2676767676779886 0 -7032 0.5101270443247309 0.2727272727285366 0 -7033 0.5101270443246743 0.2828282828295851 0 -7034 0.5013793129733422 0.2777777777790661 0 -7035 0.501379312973312 0.2878787878800719 0 -7036 0.4926315816219868 0.2828282828295489 0 -7037 0.4926315816219516 0.2929292929305555 0 -7038 0.48388385027062 0.2878787878800312 0 -7039 0.4838838502705884 0.2979797979810395 0 -7040 0.4751361189192539 0.2929292929305192 0 -7041 0.4751361189192267 0.3030303030315233 0 -7042 0.4663883875678903 0.2979797979810032 0 -7043 0.4663883875678623 0.3080808080820078 0 -7044 0.4576406562165259 0.3030303030314868 0 -7045 0.4576406562164984 0.313131313132492 0 -7046 0.4488929248651612 0.3080808080819701 0 -7047 0.4751361189193469 0.2828282828294337 0 -7048 0.4488929248651337 0.3181818181829763 0 -7049 0.4401451935137955 0.313131313132455 0 -7050 0.5013793129734527 0.2676767676779489 0 -7051 0.685081671350761 0.7676767676781284 0 -7052 0.4226497308111432 0.3131313131323497 0 -7053 0.5363702383788339 0.267676767678022 0 -7054 0.7988021789182042 0.8333333333348195 0 -7055 0.9825045372968846 0.585858585860443 0 -7056 0.5013793129738972 0.2272727272734921 0 -7057 0.5101270443252296 0.2323232323240133 0 -7058 0.4576406562166084 0.2929292929304121 0 -7059 0.492631581622548 0.2222222222230275 0 -7060 0.70257713405433 0.3535353535368732 0 -7061 0.7025771340545144 0.3333333333347619 0 -7062 0.7550635221618237 0.727272727273912 0 -7063 0.6763339399998141 0.7323232323240574 0 -7064 0.4401451935138745 0.3030303030313842 0 -7065 0.9475136118910387 0.8787878787886417 0 -7066 0.5713611637842227 0.2676767676780868 0 -7067 0.6850867978088816 0.05051469218510404 0 -7068 0.5188747756755832 0.6111111111119335 0 -7069 0.7025771340547577 0.2323232323244037 0 -7070 0.1164791335139273 0.2575757575758083 0 -7071 0.5626134324318932 0.7272727272738244 0 -7072 0.5801088951346112 0.7373737373748398 0 -7073 0.6413430145944046 0.7222222222230776 0 -7074 0.05522865941199861 0.2424071573740465 0 -7075 0.9825045372971195 0.5252525252544261 0 -7076 0.956261343242373 0.8939393939402712 0 -7077 0.5188747756755442 0.6313131313139242 0 -7078 0.5188747756755718 0.6515151515158132 0 -7079 0.7288203281088392 0.2171717171729818 0 -7080 0.4838838502698419 0.681818181819102 0 -7081 0.492631581621158 0.6868686868696796 0 -7082 0.6938294027028458 0.5404040404052582 0 -7083 0.6938294027027792 0.5505050505062711 0 -7084 0.5101270443238536 0.6969696969706637 0 -7085 0.5188747756751887 0.7020202020211896 0 -7086 0.7725589848642578 0.8080808080821797 0 -7087 0.1689655216219324 0.2575757575758183 0 -7088 0.1777132529732824 0.2525252525253102 0 -7089 0.5451179697292021 0.7171717171727826 0 -7090 0.9037749551354748 0.3585858585877294 0 -7091 0.8950272237841573 0.3535353535372251 0 -7092 0.8337931043245949 0.3484848484866119 0 -7093 0.8337931043245681 0.3585858585876169 0 -7094 0.1252268648652741 0.2525252525253211 0 -7095 0.1077314021611909 0.8484848484849634 0 -7096 0.9125226864868458 0.3737373737392951 0 -7097 0.7813067162155367 0.823232323233786 0 -7098 0.6588384772984618 0.08585858585999105 0 -7099 0.3876588054049115 0.7070707070714064 0 -7100 0.8862794924327589 0.4393939393959054 0 -7101 0.6063520891895255 0.3282828282841927 0 -7102 0.623847551892192 0.3282828282842589 0 -7103 0.6413430145949013 0.3282828282842947 0 -7104 0.3614156113508327 0.7222222222228137 0 -7105 0.3526678799994994 0.7272727272732712 0 -7106 0.5801088951355245 0.3535353535366257 0 -7107 0.7200725967581403 0.08080808080954957 0 -7108 0.7113248654067945 0.06565656565813303 0 -7109 0.1164791335136138 0.4191919191917695 0 -7110 0.9825045372966125 0.8888888888895432 0 -7111 0.9825045372966564 0.8787878787884034 0 -7112 0.6763339400002728 0.3282828282843766 0 -7113 0.7813067162169015 0.2171717171731459 0 -7114 0.1602177902705734 0.2626262626263063 0 -7115 0.3614156113520814 0.2878787878794039 0 -7116 0.3701633427034002 0.2929292929299503 0 -7117 0.3351724172980287 0.2727272727278234 0 -7118 0.343920148649388 0.2777777777783415 0 -7119 0.6150998205418942 0.0404040404053614 0 -7120 0.3001814918912331 0.8181818181820933 0 -7121 0.5276225070274734 0.3535353535364799 0 -7122 0.518874775676094 0.348484848486011 0 -7123 0.7288203281084796 0.3585858585873754 0 -7124 0.7988021789195999 0.2171717171731668 0 -7125 0.8075499102709703 0.2121212121226853 0 -7126 0.2826860291884848 0.8181818181821258 0 -7127 0.6151105116959742 0.03032154792631723 0 -7128 0.6063208900823202 0.02537441098026221 0 -7129 0.6153527564209643 0.01927230533109594 0 -7130 0.7463157908111749 0.3585858585873913 0 -7131 0.6238475518930355 0.07575757575872061 0 -7132 0.6325952832444943 0.07070707070834577 0 -7133 0.6238475518929841 0.08585858585973703 0 -7134 0.1952087156760338 0.242424242424375 0 -7135 0.203956447027428 0.2373737373739191 0 -7136 0.6850816713512859 0.5858585858597972 0 -7137 0.676333939999916 0.5909090909102689 0 -7138 0.1339745962162032 0.4696969696968145 0 -7139 0.8950272237835184 0.6161616161631798 0 -7140 0.982504537297233 0.494949494951466 0 -7141 0.7725589848651808 0.3232323232339673 0 -7142 0.1427203723632975 0.04040842023277438 0 -7143 0.5276225070275078 0.3333333333345133 0 -7144 0.8862794924334561 0.1262626262642307 0 -7145 0.1427223275677537 0.3838383838384032 0 -7146 0.1427223275677211 0.3939393939393947 0 -7147 0.1514700589192162 0.3686868686869582 0 -7148 0.5538657010815227 0.3080808080820352 0 -7149 0.3176652823149173 0.9696767527176997 0 -7150 0.3175589348882763 0.9795935636724571 0 -7151 0.3086550686276579 0.9847221018773786 0 -7152 0.3177797858924097 0.9901233276985928 0 -7153 0.5713611637841336 0.297979797981143 0 -7154 0.6938294027026595 0.5707070707083166 0 -7155 0.1427223275679879 0.3232323232324547 0 -7156 0.6938294027028334 0.5303030303042826 0 -7157 0.6063520891892984 0.5707070707079978 0 -7158 0.6150998205410511 0.2929292929305393 0 -7159 0.6938294027026783 0.5606060606073112 0 -7160 0.7113248654060814 0.2373737373749678 0 -7161 0.6938294027033702 0.2373737373750053 0 -7162 0.6850816713519962 0.232323232324489 0 -7163 0.8162976416219681 0.3181818181835532 0 -7164 0.8250453729733338 0.3232323232340675 0 -7165 0.3001814918925645 0.2525252525257321 0 -7166 0.2826860291898621 0.2424242424246812 0 -7167 0.300077178215268 0.9797090184782835 0 -7168 0.518874775675551 0.6616161616168206 0 -7169 0.9737568059451294 0.7626262626273268 0 -7170 0.5188750902212861 0.04545507968999608 0 -7171 0.8600362983781935 0.6262626262640978 0 -7172 0.2651905664872175 0.2121212121215846 0 -7173 0.265190566487205 0.2222222222226061 0 -7174 0.2564428351357955 0.227272727273121 0 -7175 0.2651905664871683 0.2323232323236325 0 -7176 0.9475136118911417 0.7474747474758466 0 -7177 0.938765880539826 0.7525252525263185 0 -7178 0.7375680594602216 0.2121212121225379 0 -7179 0.3001814918909087 0.8888888888892187 0 -7180 0.7025771340553889 0.07070707070865194 0 -7181 0.7025771340554989 0.06060606060760795 0 -7182 0.0464967878613453 0.924242424242314 0 -7183 0.1952087156752096 0.7272727272727665 0 -7184 0.9825045372967982 0.7676767676777259 0 -7185 0.1252268648646742 0.565656565656448 0 -7186 0.1339745962160517 0.5606060606059727 0 -7187 0.8687840297295308 0.621212121213615 0 -7188 0.7113248654064224 0.1161616161630305 0 -7189 0.1427223275678504 0.3535353535354157 0 -7190 0.737568059459229 0.7171717171727447 0 -7191 0.03774441549017431 0.09090909090895735 0 -7192 0.04649615221216233 0.08585858585845564 0 -7193 0.9650090745939958 0.6363636363653562 0 -7194 0.8512885670271071 0.5000000000016316 0 -7195 0.4576406562174131 0.1414141414149586 0 -7196 0.4663883875687669 0.146464646465477 0 -7197 0.6850816713523488 0.1111111111124619 0 -7198 0.685081671352427 0.1010101010115058 0 -7199 0.6763339400011161 0.09595959596100075 0 -7200 0.5101272438387102 0.05050538568300224 0 -7201 0.1689655216206059 0.9343434343434933 0 -7202 0.5626134324319513 0.7171717171727742 0 -7203 0.8512885670279039 0.1868686868702676 0 -7204 0.8512885670279112 0.1767676767692717 0 -7205 0.1864609843234559 0.8434343434345123 0 -7206 0.1777132529721207 0.8383838383839951 0 -7207 0.1952087156748043 0.8484848484850237 0 -7208 0.4488929248660736 0.1363636363644179 0 -7209 0.4313974621619721 0.6313131313137172 0 -7210 0.4401451935133368 0.6262626262632419 0 -7211 0.6063520891895723 0.2777777777791877 0 -7212 0.6063520891896393 0.2676767676781312 0 -7213 0.623847551892428 0.2979797979810225 0 -7214 0.3526678800011028 0.09090909090955514 0 -7215 0.2651905664872223 0.202020202020571 0 -7216 0.8425408356763024 0.3030303030320424 0 -7217 0.982504537297248 0.4646464646484001 0 -7218 0.9825045372972393 0.4545454545473742 0 -7219 0.9737568059458908 0.459595959597897 0 -7220 0.9737568059459214 0.4494949494969548 0 -7221 0.1252268648649902 0.4141414141413151 0 -7222 0.4663883875688966 0.1060606060613191 0 -7223 0.1339745962166118 0.3282828282829203 0 -7224 0.1339745962165815 0.3383838383839144 0 -7225 0.6850816713523317 0.1212121212134308 0 -7226 0.3351724172983289 0.101010101010545 0 -7227 0.8687840297305578 0.2171717171733584 0 -7228 0.6063520891895784 0.2878787878801742 0 -7229 0.1164791335136142 0.429292929292787 0 -7230 0.3789110740537989 0.6616161616166222 0 -7231 0.1514700589179275 0.9242424242424678 0 -7232 0.3176769545942618 0.6868686868689894 0 -7233 0.8862794924324099 0.5404040404056638 0 -7234 0.2214519097299397 0.439393939394118 0 -7235 0.2214519097299613 0.4292929292931207 0 -7236 0.3351724172969697 0.6868686868690311 0 -7237 0.9912522686484652 0.8838383838382082 0 -7238 0.9825045372966419 0.8686868686873379 0 -7239 0.4663883875687919 0.1363636363644512 0 -7240 0.4751361189201579 0.1414141414149347 0 -7241 0.4751361189201265 0.1515151515159733 0 -7242 0.8425408356757423 0.4343434343451587 0 -7243 0.8425408356757571 0.4242424242441576 0 -7244 0.8600362983790328 0.3030303030321059 0 -7245 0.1164791335141375 0.1262626262626896 0 -7246 0.4698497883675553 0.008645192960785086 0 -7247 0.4749181881632595 0.01823519351314558 0 -7248 0.9650090745937333 0.8080808080817218 0 -7249 0.7725589848655535 0.2121212121226096 0 -7250 0.1777132529736855 0.09090909090915883 0 -7251 0.1689655216223235 0.09595959595967291 0 -7252 0.8512885670278504 0.2070707070723151 0 -7253 0.3001814918909359 0.8787878787882204 0 -7254 0.1952087156764387 0.09090909090919883 0 -7255 0.2039564470277885 0.09595959595973014 0 -7256 0.9737568059453525 0.6313131313148562 0 -7257 0.982504537296781 0.6363636363652536 0 -7258 0.1339745962161841 0.4797979797978196 0 -7259 0.8688262178681069 0.02526780112759962 0 -7260 0.7463157908101493 0.8131313131327689 0 -7261 0.7463157908102204 0.803030303031625 0 -7262 0.9037749551348693 0.61111111111265 0 -7263 0.56262717137736 0.9595822664629584 0 -7264 0.9737568059451644 0.7121212121225352 0 -7265 0.2214519097297886 0.5000000000001463 0 -7266 0.2214519097299116 0.4494949494951245 0 -7267 0.9475136118915697 0.5656565656584852 0 -7268 0.956261343242911 0.5606060606079778 0 -7269 0.5276225419778477 0.05050510986535382 0 -7270 0.2914337605395976 0.8737373737377054 0 -7271 0.9300181491888705 0.5858585858603884 0 -7272 0.2389473724315006 0.8737373737375947 0 -7273 0.1777132529733652 0.3434343434345273 0 -7274 0.1864609843247025 0.3484848484850447 0 -7275 0.982504537297292 0.4444444444464549 0 -7276 0.6763339400000582 0.4595959595973805 0 -7277 0.8862794924322149 0.6111111111126215 0 -7278 0.8775317610808697 0.6161616161631132 0 -7279 0.2214519097297421 0.5202020202021527 0 -7280 0.1077314021612291 0.8383838383839546 0 -7281 0.09898367080984787 0.8333333333334487 0 -7282 0.1077314021612492 0.8282828282829551 0 -7283 0.09898367080987834 0.8232323232324337 0 -7284 0.1077314021612585 0.8181818181819513 0 -7285 0.09898367080990694 0.8131313131314167 0 -7286 0.1077314021612879 0.8080808080809356 0 -7287 0.1164791335126562 0.8131313131314606 0 -7288 0.1164791335126711 0.8030303030304542 0 -7289 0.1077314021613194 0.7979797979799139 0 -7290 0.1164791335127028 0.7929292929294373 0 -7291 0.1252268648640502 0.7979797979799742 0 -7292 0.1252268648640834 0.7878787878789559 0 -7293 0.1164791335127347 0.7828282828284193 0 -7294 0.1252268648641162 0.7777777777779374 0 -7295 0.1164791335127666 0.7727272727274 0 -7296 0.1252268648641484 0.7676767676769186 0 -7297 0.1164791335127997 0.76262626262638 0 -7298 0.1252268648641825 0.7575757575758999 0 -7299 0.1164791335128332 0.7525252525253593 0 -7300 0.1252268648642168 0.7474747474748793 0 -7301 0.1164791335128665 0.7424242424243394 0 -7302 0.12522686486425 0.7373737373738574 0 -7303 0.1164791335128992 0.7323232323233184 0 -7304 0.125226864864282 0.7272727272728352 0 -7305 0.1164791335129302 0.7222222222222969 0 -7306 0.1252268648643135 0.7171717171718127 0 -7307 0.1164791335129608 0.7121212121212724 0 -7308 0.1252268648643468 0.7070707070707909 0 -7309 0.1164791335129938 0.7020202020202518 0 -7310 0.1339745962154935 0.7727272727274559 0 -7311 0.133974596215601 0.742424242424399 0 -7312 0.1339745962154343 0.7929292929294911 0 -7313 0.1339745962156988 0.7121212121213302 0 -7314 0.1252268648643794 0.6969696969697688 0 -7315 0.1077314021615665 0.7171717171717381 0 -7316 0.1077314021614751 0.7474747474748052 0 -7317 0.10773140216138 0.7777777777778706 0 -7318 0.1164791335130264 0.6919191919192289 0 -7319 0.1077314021616445 0.6969696969697066 0 -7320 0.1077314021616739 0.6868686868686877 0 -7321 0.1339745962154221 0.8030303030304862 0 -7322 0.1427223275667872 0.7979797979800173 0 -7323 0.1427223275668239 0.7878787878789886 0 -7324 0.1514700589181818 0.792929292929482 0 -7325 0.1514700589181685 0.8030303030304895 0 -7326 0.1252268648644064 0.6868686868687361 0 -7327 0.1339745962157662 0.691919191919268 0 -7328 0.0989836708102783 0.691919191919147 0 -7329 0.107731402161196 0.8585858585859598 0 -7330 0.7200725967560223 0.8383838383852757 0 -7331 0.273938297836894 0.8737373737376707 0 -7332 0.5306028486886756 0.9911352922463651 0 -7333 0.2214519097296999 0.5404040404041627 0 -7334 0.2214519097296808 0.5505050505051684 0 -7335 0.4895443390157151 0.00892970788400712 0 -7336 0.2127041783783052 0.5555555555556605 0 -7337 0.3876588054051651 0.6565656565661417 0 -7338 0.07273979240536282 0.4747474747495369 0 -7339 0.07273987893185195 0.4848484848503122 0 -7340 0.4401451935133138 0.6363636363642565 0 -7341 0.4226497308106059 0.6363636363642117 0 -7342 0.413901999459241 0.6414141414146908 0 -7343 0.07274033044770328 0.4646464646465305 0 -7344 0.9562613432426788 0.6414141414158127 0 -7345 0.3614156113520013 0.2979797979804363 0 -7346 0.45029053612665 0.009082077063104465 0 -7347 0.3176769545953272 0.2525252525257661 0 -7348 0.3351724172979673 0.2828282828288322 0 -7349 0.326424685946641 0.267676767677308 0 -7350 0.5188747756757102 0.4595959595971699 0 -7351 0.5188747756756925 0.4696969696981622 0 -7352 0.4401451935133783 0.6060606060612382 0 -7353 0.1339745962152522 0.9141414141414193 0 -7354 0.6850816713522929 0.1515151515163672 0 -7355 0.6938294027036152 0.1565656565668828 0 -7356 0.6763339400009645 0.1464646464658489 0 -7357 0.6675862086496003 0.1515151515163237 0 -7358 0.6763339400009833 0.1363636363648702 0 -7359 0.03771934898739022 0.191919464553833 0 -7360 0.3264246859467321 0.2474747474752674 0 -7361 0.3351724172981146 0.2424242424247793 0 -7362 0.9300181491889741 0.5656565656582949 0 -7363 0.7288203281074007 0.8232323232337844 0 -7364 0.7988021789190253 0.5404040404054314 0 -7365 0.8075499102703715 0.535353535354969 0 -7366 0.9825045372966721 0.7070707070719298 0 -7367 0.9825045372967326 0.6969696969710115 0 -7368 0.8775317610819366 0.2121212121228683 0 -7369 0.5101091194798096 0.9902378332805704 0 -7370 0.6763339400000706 0.4696969696983734 0 -7371 0.3439201486488832 0.4393939393944415 0 -7372 0.3439201486489097 0.4292929292934424 0 -7373 0.2214519097298147 0.4898989898991427 0 -7374 0.3089292232421888 0.9141414141417101 0 -7375 0.9125226864859517 0.7171717171729103 0 -7376 0.7025771340546153 0.2929292929306992 0 -7377 0.9737568059451243 0.7929292929302497 0 -7378 0.904040404040007 0.008734622763477298 0 -7379 0.9090909090905269 0.01743501754746556 0 -7380 0.9190327925272219 0.01739687475191525 0 -7381 0.9143226553603415 0.02583725760538868 0 -7382 0.8989429037857843 0.01691672503302262 0 -7383 0.8075499102709663 0.222222222223727 0 -7384 0.973756805945547 0.560606060608051 0 -7385 0.9825045372969817 0.5555555555574938 0 -7386 0.8837362913868996 0.008830838619896291 0 -7387 0.1864609843248352 0.1767676767677995 0 -7388 0.2214519097298639 0.4696969696971348 0 -7389 0.7900544475682711 0.2222222222237328 0 -7390 0.09898367081029705 0.6818181818181182 0 -7391 0.1077314021616931 0.6767676767676378 0 -7392 0.8600362983791805 0.2222222222238719 0 -7393 0.9125226864859433 0.7272727272738948 0 -7394 0.9037749551346285 0.7121212121224345 0 -7395 0.008665738727632842 0.5303941926949972 0 -7396 0.01743898304218725 0.5354457106609902 0 -7397 0.01750439954003215 0.5454911357262568 0 -7398 0.02644774136531102 0.5404245359424823 0 -7399 0.0265331045038057 0.5506110586533342 0 -7400 0.02663016534235215 0.5292646163026843 0 -7401 0.0359383946347912 0.5557953411454273 0 -7402 0.02654171208079224 0.5608137275396528 0 -7403 0.03616040394510505 0.5352474347330552 0 -7404 0.01763935760749886 0.5557073239034339 0 -7405 0.01771432954793791 0.5658740805669689 0 -7406 0.02667249360605968 0.5709063790846796 0 -7407 0.01792315323088597 0.5761879076915165 0 -7408 0.02706270506862982 0.5813749230604044 0 -7409 0.0365549957436129 0.5861687109594925 0 -7410 0.02834892007942117 0.5924247122844194 0 -7411 0.02992749665889487 0.6023749853273442 0 -7412 0.02118590074695596 0.5990185461803628 0 -7413 0.01829265493775295 0.5880941437147188 0 -7414 0.008959770492030061 0.5709079677549741 0 -7415 0.008772278033356878 0.5505356151762789 0 -7416 0.7113248654046059 0.853535353536779 0 -7417 0.09023593945852217 0.8181818181818952 0 -7418 0.9562613432427054 0.6313131313148234 0 -7419 0.2826860291900405 0.1212121212124375 0 -7420 0.2826860291900256 0.1313131313134679 0 -7421 0.9562613432424626 0.7525252525263816 0 -7422 0.2739382978372359 0.8030303030305032 0 -7423 0.5505732535938181 0.9909408969681756 0 -7424 0.5551251523210515 0.9829118665039277 0 -7425 0.4139019994584585 0.8939393939399791 0 -7426 0.291433760541437 0.1161616161619386 0 -7427 0.6500907459470163 0.1010101010113973 0 -7428 0.8425408356763577 0.2727272727289418 0 -7429 0.8425408356763785 0.2626262626279275 0 -7430 0.7813067162158889 0.7424242424252717 0 -7431 0.7638112535131398 0.7424242424253428 0 -7432 0.7813089435763748 0.02522679633700661 0 -7433 0.7814382877324616 0.01519784378109703 0 -7434 0.7636791570880552 0.0148481324479979 0 -7435 0.7540359694079877 0.009694379885753208 0 -7436 0.7813069637018223 0.03535067658670468 0 -7437 0.212704178378583 0.4343434343436109 0 -7438 0.4401451935134306 0.5858585858592373 0 -7439 0.247695103782669 0.9595959595960465 0 -7440 0.2476951037826972 0.9494949494950574 0 -7441 0.9912522686486214 0.4898989899009964 0 -7442 0.9825045372972353 0.5050505050524767 0 -7443 0.8512885670271085 0.4292929292946798 0 -7444 0.8425408356757316 0.4444444444461678 0 -7445 0.8512885670270831 0.4494949494966979 0 -7446 0.05508137199786209 0.9795719264324156 0 -7447 0.05526266229483894 0.9901146464565226 0 -7448 0.2651905664868103 0.3939393939397042 0 -7449 0.3439213060211062 0.9646444600169706 0 -7450 0.9562613432424136 0.8131313131322044 0 -7451 0.3176769545935655 0.9191919191922285 0 -7452 0.3264246859449162 0.9242424242427734 0 -7453 0.3614156113522753 0.1868686868692779 0 -7454 0.8687840297292451 0.7727272727281878 0 -7455 0.2739382978382074 0.3787878787882148 0 -7456 0.2739382978382217 0.368686868687212 0 -7457 0.2564428351354126 0.4090909090911926 0 -7458 0.2564428351353917 0.4191919191921961 0 -7459 0.3176769545946945 0.4949494949498763 0 -7460 0.2651905664868603 0.3636363636366998 0 -7461 0.2739382978382254 0.3585858585862107 0 -7462 0.807549910271033 0.1818181818196699 0 -7463 0.8075499102710599 0.1717171717186812 0 -7464 0.8075499102710116 0.1919191919206752 0 -7465 0.9242594803906941 0.008737367218949271 0 -7466 0.9296624427838038 0.01839613657213021 0 -7467 0.9825045372968226 0.73737373737478 0 -7468 0.9300181491899464 0.323232323234251 0 -7469 0.9212704178385785 0.3181818181837265 0 -7470 0.8775317610801304 0.8787878787886975 0 -7471 0.895027223782908 0.8686868686879544 0 -7472 0.1164791335141715 0.116161616161677 0 -7473 0.1077314021628204 0.1111111111111305 0 -7474 0.8250453729723533 0.7979797979811158 0 -7475 0.8337931043237394 0.792929292930531 0 -7476 0.8337931043236835 0.8030303030316265 0 -7477 0.842540835675069 0.7979797979810286 0 -7478 0.8425408356750167 0.8080808080821053 0 -7479 0.8512885670264221 0.8030303030314411 0 -7480 0.00812354002979968 0.5100668792452528 0 -7481 0.5626134324318293 0.7474747474758491 0 -7482 0.02892159974952331 0.04546507958158258 0 -7483 0.0252455098775603 0.008866478299829929 0 -7484 0.4751361189179639 0.8686868686876561 0 -7485 0.09899445709792301 0.9646389810623397 0 -7486 0.7550635221621775 0.606060606061799 0 -7487 0.3438387162587908 0.9748307787088417 0 -7488 0.8775317610811598 0.5050505050521729 0 -7489 0.912522686486212 0.6060606060621971 0 -7490 0.746315790811395 0.2878787878802726 0 -7491 0.2039564470273081 0.3888888888890734 0 -7492 0.9300181491884091 0.8585858585871734 0 -7493 0.8512885670280116 0.106060606062284 0 -7494 0.6850816713522602 0.1616161616173597 0 -7495 0.9825045372969063 0.6666666666681134 0 -7496 0.1777132529731042 0.4444444444445227 0 -7497 0.1777132529730802 0.4545454545455239 0 -7498 0.2739382978386988 0.1060606060608714 0 -7499 0.7900544475673063 0.7272727272737316 0 -7500 0.8775317610821118 0.08080808080978724 0 -7501 0.8687840297307621 0.07575757575927267 0 -7502 0.3176756576737008 0.9595937132651162 0 -7503 0.3089290791399827 0.9545452049533145 0 -7504 0.8250453729730706 0.4141414141431168 0 -7505 0.2476826961434263 0.9696754790354988 0 -7506 0.2475451647295495 0.9797310496368977 0 -7507 0.2385059595976003 0.9848825771892078 0 -7508 0.5801092557311522 0.9595932100977538 0 -7509 0.6588167893620424 0.9646606685358099 0 -7510 0.9125226864868716 0.393939393941393 0 -7511 0.1864609843247259 0.3383838383840367 0 -7512 0.7813067162154833 0.8535353535368339 0 -7513 0.04649391936295672 0.1868687171612724 0 -7514 0.8687840297292324 0.7828282828291853 0 -7515 0.9037749551356171 0.4191919191939802 0 -7516 0.825045372973203 0.3636363636381107 0 -7517 0.895027502724285 0.9393934562544276 0 -7518 0.7463157908107446 0.6515151515162635 0 -7519 0.2127041783786732 0.3838383838385944 0 -7520 0.7375680594603294 0.1414141414155271 0 -7521 0.7375680594603879 0.1313131313145591 0 -7522 0.728820328109071 0.1262626262640464 0 -7523 0.2476951037833829 0.7272727272728541 0 -7524 0.9825045372967912 0.6464646464661961 0 -7525 0.03773259269877121 0.3838114211574442 0 -7526 0.44889292486375 0.9343434343440603 0 -7527 0.9650090745938518 0.7070707070720449 0 -7528 0.8775317610820222 0.1717171717187862 0 -7529 0.352669165969519 0.9595937322298654 0 -7530 0.6238475518909202 0.9141414141424146 0 -7531 0.3439201486489634 0.4090909090914312 0 -7532 0.07274078889575966 0.6161616161613107 0 -7533 0.6588384772981583 0.1868686868697774 0 -7534 0.2564428351348493 0.6515151515153448 0 -7535 0.3001814918919475 0.515151515151848 0 -7536 0.8337931043248702 0.3181818181835658 0 -7537 0.9387651582298504 0.03533379143600002 0 -7538 0.4838838502693322 0.8636363636371734 0 -7539 0.4663883875666301 0.8636363636371259 0 -7540 0.763811253514362 0.1464646464660871 0 -7541 0.2651905664859018 0.7979797979799692 0 -7542 0.1339745962157768 0.681818181818202 0 -7543 0.7113248654046642 0.8232323232337646 0 -7544 0.08148820810708136 0.8434343434344137 0 -7545 0.2651905664859348 0.7878787878789558 0 -7546 0.2564428351345975 0.7828282828284271 0 -7547 0.1164791335142037 0.09595959595963013 0 -7548 0.6413065055355225 0.03535430492445647 0 -7549 0.5363702383785345 0.3989898989911769 0 -7550 0.5451179697298946 0.3939393939406906 0 -7551 0.8512885670279553 0.1363636363653051 0 -7552 0.8425408356766116 0.1313131313147853 0 -7553 0.842540835676629 0.1212121212137815 0 -7554 0.8337931043252714 0.1262626262642681 0 -7555 0.8337931043252905 0.1161616161632658 0 -7556 0.8250453729739342 0.1212121212137523 0 -7557 0.8250453729739547 0.1111111111127557 0 -7558 0.8162976416226013 0.1161616161632395 0 -7559 0.8162976416226262 0.1060606060622423 0 -7560 0.8075499102712742 0.1111111111127267 0 -7561 0.8075499102712994 0.1010101010117333 0 -7562 0.7988021789199451 0.1060606060622245 0 -7563 0.7988021789199711 0.09595959596123321 0 -7564 0.7900544475686231 0.1010101010117136 0 -7565 0.7900544475686511 0.09090909091072494 0 -7566 0.7813067162173107 0.09595959596119258 0 -7567 0.7813067162173354 0.08585858586021743 0 -7568 0.7725589848659974 0.09090909091068185 0 -7569 0.7813067162172753 0.1060606060621917 0 -7570 0.8075499102712466 0.1212121212137239 0 -7571 0.7725589848660317 0.08080808080969845 0 -7572 0.7638112535146897 0.08585858586017218 0 -7573 0.7638112535146452 0.09595959596116888 0 -7574 0.755063522163318 0.0909090909106517 0 -7575 0.7900544475686856 0.08080808080973084 0 -7576 0.7638112535147432 0.07575757575916862 0 -7577 0.8075499102713288 0.09090909091073632 0 -7578 0.8250453729739853 0.1010101010117444 0 -7579 0.8250453729739129 0.1313131313147565 0 -7580 0.8425408356766495 0.1111111111127748 0 -7581 0.8337931043252512 0.136363636365279 0 -7582 0.9562613432427268 0.6212121212138468 0 -7583 0.2737976645464825 0.9748129330780944 0 -7584 0.5975894461183522 0.03033639674972305 0 -7585 0.5972001367971342 0.01929049292592124 0 -7586 0.6063520891892785 0.4494949494962895 0 -7587 0.615099820540624 0.4444444444458062 0 -7588 0.7113248654059759 0.2878787878802042 0 -7589 0.6500907459460082 0.4747474747488297 0 -7590 0.5276225070270538 0.4646464646476854 0 -7591 0.5276225070270815 0.4747474747486513 0 -7592 0.5363702383784591 0.4696969696981494 0 -7593 0.7375680594603113 0.1515151515165065 0 -7594 0.02874270979614967 0.1969773466811505 0 -7595 0.04648723345899999 0.7424242434232668 0 -7596 0.0552427516136368 0.7373737378854938 0 -7597 0.3701633427017725 0.8787878787883697 0 -7598 0.2301996410810226 0.5555555555556898 0 -7599 0.8512885670279901 0.1161616161632924 0 -7600 0.4139019994585119 0.8737373737379822 0 -7601 0.4139019994585392 0.8636363636369837 0 -7602 0.4226497308098752 0.8686868686875066 0 -7603 0.4226497308098454 0.8787878787885082 0 -7604 0.4313974621611849 0.8838383838390295 0 -7605 0.9825045372970753 0.5454545454563848 0 -7606 0.9562613432430962 0.5202020202038793 0 -7607 0.9475136118917745 0.5151515151533625 0 -7608 0.9562613432424093 0.9141414141428635 0 -7609 0.8162976416224232 0.1868686868702605 0 -7610 0.4663883875665779 0.8838383838391396 0 -7611 0.4663883875665542 0.893939393940138 0 -7612 0.2476951037832283 0.7878787878789089 0 -7613 0.7375680594596022 0.5454545454558126 0 -7614 0.86878871730163 0.03535523267450127 0 -7615 0.8596943015878609 0.0192707188233227 0 -7616 0.5013793129727754 0.6414141414149458 0 -7617 0.9300181491890006 0.5555555555572756 0 -7618 0.2476951037837537 0.5454545454547256 0 -7619 0.2564428351351182 0.5404040404042444 0 -7620 0.5976043578377102 0.6969696969704269 0 -7621 0.6063520891890751 0.7020202020209646 0 -7622 0.457640656215107 0.9292929292935814 0 -7623 0.8337931043254055 0.06565656565827943 0 -7624 0.8425408356767452 0.06060606060779312 0 -7625 0.8337931043254185 0.05555555555729472 0 -7626 0.8512885670280731 0.06565656565829109 0 -7627 0.3439201486496453 0.1262626262631387 0 -7628 0.3001814918919699 0.5050505050508387 0 -7629 0.2914337605406268 0.5000000000003121 0 -7630 0.04649444051641684 0.3787795048769271 0 -7631 0.492631581621228 0.6767676767686026 0 -7632 0.4751361189185369 0.6767676767684683 0 -7633 0.4663883875671541 0.6717171717179703 0 -7634 0.8512885670280945 0.05555555555727384 0 -7635 0.4401451935147315 0.131313131313865 0 -7636 0.2127538161459991 0.9695893660162606 0 -7637 0.3789110740531285 0.8737373737378918 0 -7638 0.7200725967573223 0.2929292929307286 0 -7639 0.7288203281086697 0.2979797979812482 0 -7640 0.5101251543775207 0.02047694231140461 0 -7641 0.6238475518909502 0.9040404040414128 0 -7642 0.6150998205395987 0.8989898989909076 0 -7643 0.3351724172962808 0.9191919191922516 0 -7644 0.3439201486476416 0.9242424242427456 0 -7645 0.1513764929695563 0.9747252238957985 0 -7646 0.7200725967576882 0.1313131313145013 0 -7647 0.7375680594593876 0.6565656565667402 0 -7648 0.09898367081119958 0.2070707070706164 0 -7649 0.9125226864862702 0.5858585858602106 0 -7650 0.04649129881431366 0.7525252319028771 0 -7651 0.6938294027018778 0.914141414142564 0 -7652 0.4051542681081307 0.5454545454551186 0 -7653 0.4051542681081617 0.5353535353541186 0 -7654 0.4139019994595256 0.5303030303036601 0 -7655 0.34392014864772 0.8838383838388018 0 -7656 0.352667879999062 0.8888888888893204 0 -7657 0.3439201486477017 0.8939393939397985 0 -7658 0.7988021789186636 0.7222222222232484 0 -7659 0.8425408356766774 0.1010101010117622 0 -7660 0.3614157542359042 0.9545452070606326 0 -7661 0.3001814918918975 0.5353535353538585 0 -7662 0.3001814918918726 0.5454545454548642 0 -7663 0.755063522162738 0.2929292929307998 0 -7664 0.2214519097298857 0.4595959595961325 0 -7665 0.7638112535127887 0.8434343434358389 0 -7666 0.5188747756757456 0.449494949496166 0 -7667 0.9475136118925747 0.3838383838404933 0 -7668 0.8512885670276703 0.2979797979815431 0 -7669 0.868784029730404 0.2979797979815981 0 -7670 0.2127041783780021 0.6969696969697645 0 -7671 0.5363702383784636 0.459595959597175 0 -7672 0.6587999832402751 0.04551618673379645 0 -7673 0.4576406562172257 0.2121212121220184 0 -7674 0.9387658805413577 0.3080808080827016 0 -7675 0.9300181491899681 0.3131313131332112 0 -7676 0.5801088951340663 0.9191919191929776 0 -7677 0.1427223275665912 0.91919191919194 0 -7678 0.8337931043240491 0.712121212122297 0 -7679 0.842540835675372 0.7171717171728084 0 -7680 0.8162976416224692 0.1666666666682531 0 -7681 0.09898367080978571 0.8636363636364875 0 -7682 0.09898367080980938 0.8737373737374644 0 -7683 0.4313974621612413 0.8636363636370323 0 -7684 0.9212704178376572 0.5606060606077465 0 -7685 0.4401451935124192 0.9292929292935358 0 -7686 0.4401451935124455 0.9191919191925374 0 -7687 0.431397462161059 0.9343434343440076 0 -7688 0.4313974621624359 0.3181818181829379 0 -7689 0.1864609843246512 0.3686868686870317 0 -7690 0.8425408356757126 0.4545454545471707 0 -7691 0.8337931043243494 0.459595959597649 0 -7692 0.23000895358386 0.9797439587857527 0 -7693 0.7988021789200039 0.0858585858602335 0 -7694 0.8337931043236693 0.8131313131326158 0 -7695 0.711324865406934 0.05555555555707795 0 -7696 0.9737568059458533 0.5000000000019375 0 -7697 0.8248248784975922 0.0202064416181021 0 -7698 0.8156023401201049 0.0159979698622987 0 -7699 0.4931576606130821 0.01929380167631509 0 -7700 0.9037749551361721 0.1565656565672904 0 -7701 0.1077314021627491 0.1313131313131537 0 -7702 0.3614156272264859 0.9444444169464465 0 -7703 0.7638112535141237 0.2777777777793012 0 -7704 0.9212704178370351 0.8636363636377631 0 -7705 0.9387658805397545 0.8636363636375077 0 -7706 0.2389473724314451 0.9040404040405787 0 -7707 0.2476951037827787 0.9090909090910899 0 -7708 0.04649380955926257 0.9646451732493484 0 -7709 0.7112040308580263 0.9745221023329225 0 -7710 0.7194301534073689 0.9808302963170534 0 -7711 0.7287489455126712 0.9748621765838341 0 -7712 0.7292100051696617 0.9845973881430005 0 -7713 0.527622507026197 0.8282828282838061 0 -7714 0.5363702383775383 0.8333333333343292 0 -7715 0.05524488844453834 0.08080808080796845 0 -7716 0.8775317610817208 0.3232323232341712 0 -7717 0.4751361189202343 0.1111111111118504 0 -7718 0.4576406562175125 0.1111111111118206 0 -7719 0.7988021789190556 0.3989898989915869 0 -7720 0.9212609901826614 0.96462782015722 0 -7721 0.9300076461227447 0.9696763019117669 0 -7722 0.9298859297894848 0.9807301478029639 0 -7723 0.9388174711435021 0.9747332598770717 0 -7724 0.9300159346638053 0.9595915915666237 0 -7725 0.930017903129956 0.949494464159661 0 -7726 0.04649334124434182 0.1969700032629797 0 -7727 0.9737568059454398 0.5909090909109983 0 -7728 0.9825045372969186 0.5959595959613956 0 -7729 0.9300181491887088 0.6565656565671665 0 -7730 0.9387658805400166 0.6616161616176646 0 -7731 0.9475136118913388 0.6565656565672081 0 -7732 0.9300181491886919 0.6666666666681316 0 -7733 0.9912522686487056 0.1565656565665844 0 -7734 0.221451909730372 0.1464646464648788 0 -7735 0.2127041783790126 0.1414141414143503 0 -7736 0.3964065367567884 0.540404040404593 0 -7737 0.3964065367568128 0.5303030303035983 0 -7738 0.3876588054054644 0.5252525252530824 0 -7739 0.4313974621635991 0.04545454545512362 0 -7740 0.4313974621635689 0.05555555555615847 0 -7741 0.9912522686486648 0.1363636363642229 0 -7742 0.9825045372974349 0.1313131313139739 0 -7743 0.8162976416209956 0.8030303030316117 0 -7744 0.4663883875689654 0.07575757575830512 0 -7745 0.7900544475668682 0.8282828282842969 0 -7746 0.02891108847376558 0.2878738762141679 0 -7747 0.5713611637832692 0.7323232323243085 0 -7748 0.5888566264874999 0.166666666667652 0 -7749 0.676342923350344 0.05557290974280724 0 -7750 0.851288567026883 0.621212121213539 0 -7751 0.8687840297307851 0.06565656565824868 0 -7752 0.9387658805397526 0.813131313132176 0 -7753 0.58010889513432 0.8282828282839584 0 -7754 0.5801088951342876 0.8383838383849619 0 -7755 0.5713611637829158 0.8434343434354385 0 -7756 0.07274047675737833 0.09090909090902517 0 -7757 0.06399274540601942 0.09595959595952595 0 -7758 0.9650090745956551 0.141414141415806 0 -7759 0.2651905664860702 0.7373737373739007 0 -7760 0.2651905664860437 0.7474747474749097 0 -7761 0.1339745962155663 0.7525252525254217 0 -7762 0.1427223275669582 0.7474747474749305 0 -7763 0.1427223275669881 0.7373737373739208 0 -7764 0.1427223275669263 0.757575757575924 0 -7765 0.1514700589183436 0.742424242424423 0 -7766 0.1514700589183621 0.7323232323234036 0 -7767 0.1427223275670146 0.7272727272728872 0 -7768 0.7375680594601742 0.2222222222236522 0 -7769 0.7463157908116264 0.2070707070721005 0 -7770 0.3176769545953748 0.232323232323736 0 -7771 0.8432038912971161 0.9902873897594399 0 -7772 0.8600362983779533 0.7575757575767426 0 -7773 0.08148820810873511 0.095959595959551 0 -7774 0.7725589848655613 0.202020202021568 0 -7775 0.7638112535142292 0.2070707070720798 0 -7776 0.8337931043245556 0.3686868686886231 0 -7777 0.8425408356759436 0.3636363636381325 0 -7778 0.8425408356758973 0.3737373737391402 0 -7779 0.825045372973888 0.141414141415777 0 -7780 0.5451179697301214 0.2727272727286036 0 -7781 0.5538657010815302 0.2676767676780544 0 -7782 0.492631581620918 0.7777777777786969 0 -7783 0.4926315816208937 0.7878787878797013 0 -7784 0.4838838502695533 0.782828282829178 0 -7785 0.4838838502695298 0.79292929293018 0 -7786 0.47513611891819 0.787878787879659 0 -7787 0.4751361189181675 0.7979797979806604 0 -7788 0.4663883875668275 0.7929292929301393 0 -7789 0.4663883875668062 0.8030303030311419 0 -7790 0.4576406562154657 0.7979797979806196 0 -7791 0.4926315816208695 0.797979797980703 0 -7792 0.4576406562154431 0.8080808080816205 0 -7793 0.475136118918144 0.8080808080816611 0 -7794 0.4663883875668505 0.7828282828291365 0 -7795 0.4488929248641031 0.8030303030310975 0 -7796 0.4488929248640756 0.8131313131320971 0 -7797 0.4488929248641269 0.7929292929300921 0 -7798 0.4401451935127378 0.8080808080815727 0 -7799 0.4663883875667811 0.81313131313214 0 -7800 0.877531761080504 0.797979797980618 0 -7801 0.7200725967561024 0.7777777777792623 0 -7802 0.4838838502702779 0.4898989899000918 0 -7803 0.04648397949029021 0.7121213096308189 0 -7804 0.05524306238948588 0.7070707259562015 0 -7805 0.8162976416225766 0.1262626262642394 0 -7806 0.8075499102712158 0.1313131313147362 0 -7807 0.8512885670267623 0.6717171717184387 0 -7808 0.9037749551346624 0.7020202020214608 0 -7809 0.1077314021626049 0.181818181818138 0 -7810 0.3439201486490376 0.3787878787884105 0 -7811 0.3439201486490621 0.3686868686874083 0 -7812 0.8075499102703635 0.5454545454559506 0 -7813 0.5101270443244008 0.4444444444456488 0 -7814 0.501379312973057 0.4393939393951329 0 -7815 0.5013793129730794 0.429292929294129 0 -7816 0.8775317610811507 0.5151515151531514 0 -7817 0.5188744148405674 0.954545117041407 0 -7818 0.7024837168189895 0.01993084198923863 0 -7819 0.7113817131830213 0.01453820507162285 0 -7820 0.7201054406418564 0.01989667675010994 0 -7821 0.6763339399999979 0.6515151515160594 0 -7822 0.7463157908109759 0.5303030303043308 0 -7823 0.7463157908109807 0.5202020202033629 0 -7824 0.7550635221623225 0.5252525252538744 0 -7825 0.9562613432425522 0.702020202021545 0 -7826 0.4401341310137676 0.9696229601140719 0 -7827 0.4400472618795183 0.979529009366371 0 -7828 0.07603184140155714 0.008970267944714946 0 -7829 0.09023593945859699 0.7878787878788037 0 -7830 0.09898367080995792 0.7929292929293551 0 -7831 0.4926315816217113 0.434343434344617 0 -7832 0.4926315816217328 0.4242424242436144 0 -7833 0.9212704178372336 0.7424242424253475 0 -7834 0.2214519097286803 0.9444444444445173 0 -7835 0.868784029729436 0.6616161616175491 0 -7836 0.9737568059451065 0.9545454545469992 0 -7837 0.9737568059450593 0.9646464646480817 0 -7838 0.9650090745936745 0.969696969698581 0 -7839 0.9737568059450324 0.9747474747491263 0 -7840 0.964959893926102 0.9799689157799426 0 -7841 0.9562362204024715 0.9748168985543602 0 -7842 0.9738318933913808 0.9848033316463687 0 -7843 0.9559440690046617 0.9849729216756571 0 -7844 0.9475070333927099 0.9797204363705182 0 -7845 0.946292342182933 0.9902488059549406 0 -7846 0.9825045372965762 0.9696969696982881 0 -7847 0.7900544475676708 0.5454545454559182 0 -7848 0.4751360993683553 0.05050508437092516 0 -7849 0.4838830210269277 0.04545019458754176 0 -7850 0.4663880315045525 0.04545516217706088 0 -7851 0.4926314007463154 0.05050408482377578 0 -7852 0.4576404582833755 0.05050539333800246 0 -7853 0.8687840297307473 0.08585858586029532 0 -7854 0.5713611637848711 0.1464646464656282 0 -7855 0.3439201486483375 0.6818181818185483 0 -7856 0.8638003743059594 0.9911875486151884 0 -7857 0.09898358351739332 0.05555570675334883 0 -7858 0.0989836611121624 0.06565658245628167 0 -7859 0.6325952832429683 0.7272727272736572 0 -7860 0.6500907459457258 0.7272727272736623 0 -7861 0.1077314021611783 0.9292929292928752 0 -7862 0.1864609843236555 0.7929292929294017 0 -7863 0.1952087156750248 0.7878787878789149 0 -7864 0.1952087156750622 0.7777777777778808 0 -7865 0.1952087156750027 0.7979797979799242 0 -7866 0.2039564470263837 0.7929292929294113 0 -7867 0.2039564470263585 0.8030303030304288 0 -7868 0.2039564470263253 0.8131313131314575 0 -7869 0.2127041783776965 0.8080808080809445 0 -7870 0.8512885557909073 0.9343433946087885 0 -7871 0.658838477297276 0.6616161616170166 0 -7872 0.7025771340544584 0.3434343434357943 0 -7873 0.6938294027030805 0.3282828282843177 0 -7874 0.7113248654057078 0.3585858585873837 0 -7875 0.09589759687343287 0.008982455132330166 0 -7876 0.1012213497258443 0.01737936513886345 0 -7877 0.1111395535105129 0.0170660117677925 0 -7878 0.1161647764286464 0.008687008636335571 0 -7879 0.1211594411511847 0.0169436127112968 0 -7880 0.9562613432429904 0.5505050505068581 0 -7881 0.9037749551360901 0.1969696969714074 0 -7882 0.09023593945878795 0.7171717171716154 0 -7883 0.09898367081019244 0.7121212121211491 0 -7884 0.09023593945876024 0.7272727272726437 0 -7885 0.09898367081012793 0.7323232323232003 0 -7886 0.09898367081010101 0.7424242424242252 0 -7887 0.8512885670280614 0.07575757575928421 0 -7888 0.6063520891883081 0.8636363636375077 0 -7889 0.8425408356757011 0.5555555555570439 0 -7890 0.8425408356756778 0.5656565656580365 0 -7891 0.8337931043243304 0.5707070707085061 0 -7892 0.8425408356756573 0.575757575759025 0 -7893 0.8337931043243114 0.5808080808094933 0 -7894 0.842540835675632 0.5858585858600139 0 -7895 0.0552445761146178 0.2020202360526402 0 -7896 0.6150998205406346 0.4343434343448035 0 -7897 0.9037749551360693 0.2070707070724371 0 -7898 0.8950272237847052 0.2020202020218981 0 -7899 0.8950272237846844 0.2121212121229288 0 -7900 0.7813067162172267 0.1161616161632256 0 -7901 0.7900544475685813 0.111111111112735 0 -7902 0.7725589848659237 0.111111111112681 0 -7903 0.8687840297299168 0.3888888888906987 0 -7904 0.3614156113505764 0.8131313131318639 0 -7905 0.2476951037832568 0.7777777777779009 0 -7906 0.8250453729729794 0.5757575757589841 0 -7907 0.8250453729729619 0.5858585858599725 0 -7908 0.8075499102714446 0.05050505050677952 0 -7909 0.8162975884899837 0.04545504225404505 0 -7910 0.8250453251545712 0.05050549762477934 0 -7911 0.8250453676608004 0.06060611028755034 0 -7912 0.8337930511926374 0.04545504225404698 0 -7913 0.3964065367569264 0.3787878787889375 0 -7914 0.3964065367569451 0.3888888888899237 0 -7915 0.3876588054056412 0.3737373737383644 0 -7916 0.1514583623590668 0.9646412887932502 0 -7917 0.4139019994589607 0.7020202020209797 0 -7918 0.4051542681076573 0.6969696969704079 0 -7919 0.4226497308121804 0.06060606060664765 0 -7920 0.6675862086497024 0.1010101010114522 0 -7921 0.658838477298381 0.09595959596094644 0 -7922 0.6500907459470001 0.1111111111123761 0 -7923 0.6063520891890044 0.7121212121220402 0 -7924 0.6150998205404667 0.7070707070715609 0 -7925 0.4399359578891568 0.0203642503611647 0 -7926 0.27393829783681 0.9040404040406504 0 -7927 0.2651905664854557 0.9090909090911262 0 -7928 0.3789110740531539 0.8636363636368939 0 -7929 0.09023593945870843 0.7474747474746997 0 -7930 0.09023593945868028 0.7575757575757248 0 -7931 0.09898367081004286 0.7626262626262772 0 -7932 0.09898367081001327 0.7727272727273027 0 -7933 0.06399610525831394 0.6010101010097234 0 -7934 0.07274083815430143 0.5959595959592372 0 -7935 0.07274042497720595 0.5858585858582052 0 -7936 0.08148824250981955 0.5909090909087542 0 -7937 0.07274119689498808 0.6060606060602709 0 -7938 0.7638112535141635 0.2575757575772835 0 -7939 0.991252268648709 0.1161616161624106 0 -7940 0.2476951037835688 0.6161616161617915 0 -7941 0.2476951037835917 0.6060606060607814 0 -7942 0.755063522163266 0.1010101010116948 0 -7943 0.7463157908119533 0.09595959596114041 0 -7944 0.7463157908119725 0.08585858586010327 0 -7945 0.405154268107099 0.8989898989904503 0 -7946 0.3964065367557457 0.9040404040409263 0 -7947 0.3964065367557382 0.9141414141419217 0 -7948 0.8512885670262628 0.8434343434356341 0 -7949 0.8600362983776674 0.8383838383849511 0 -7950 0.7550635221621116 0.6363636363647871 0 -7951 0.457010005406684 0.9807855957253671 0 -7952 0.2651905664857055 0.8383838383841147 0 -7953 0.256442835134372 0.8333333333335887 0 -7954 0.2564428351344077 0.8232323232325733 0 -7955 0.2476951037830315 0.8282828282830427 0 -7956 0.387658805404611 0.818181818182418 0 -7957 0.3876588054046328 0.8080808080814204 0 -7958 0.3964065367559719 0.8131313131319396 0 -7959 0.6413430145956569 0.1161616161628476 0 -7960 0.7813067162157036 0.7727272727285412 0 -7961 0.8163163632225623 0.03540418601899693 0 -7962 0.2039564470276266 0.1767676767679071 0 -7963 0.203956447027593 0.1868686868689222 0 -7964 0.2127041783789609 0.1919191919194571 0 -7965 0.2039564470275394 0.1969696969699201 0 -7966 0.2127041783789228 0.2020202020204677 0 -7967 0.2214519097303141 0.1969696969699857 0 -7968 0.2214519097302916 0.207070707071003 0 -7969 0.2127041783788879 0.2121212121214726 0 -7970 0.2214519097302686 0.2171717171720181 0 -7971 0.2127041783788671 0.2222222222224787 0 -7972 0.2214519097302458 0.2272727272730345 0 -7973 0.2127041783788516 0.2323232323234946 0 -7974 0.2301996410816743 0.2020202020205163 0 -7975 0.1952087156762166 0.1818181818183708 0 -7976 0.238947372431362 0.9444444444445482 0 -7977 0.86878402972956 0.6111111111125695 0 -7978 0.8075499102702905 0.5757575757589524 0 -7979 0.8162976416216251 0.5808080808094657 0 -7980 0.8162976416216113 0.5909090909104597 0 -7981 0.825045372972937 0.5959595959609699 0 -7982 0.8512885670275346 0.3484848484866652 0 -7983 0.8512885670274383 0.3585858585876707 0 -7984 0.4139714301215316 0.9747307863564885 0 -7985 0.4049002767733677 0.9807544802660202 0 -7986 0.3962814500644489 0.9746859767281241 0 -7987 0.4051542681081006 0.5555555555561225 0 -7988 0.6500907459464974 0.2929292929305647 0 -7989 0.6588384772978382 0.2979797979810959 0 -7990 0.6413430145951362 0.2979797979810553 0 -7991 0.4226497308119717 0.1414141414148219 0 -7992 0.4313974621633244 0.1464646464653634 0 -7993 0.4226497308119446 0.1515151515158444 0 -7994 0.1777132529733162 0.2323232323233004 0 -7995 0.4313987268502738 0.9545432640398863 0 -7996 0.09023593945843761 0.9494949494948569 0 -7997 0.4139019994583744 0.93434343434395 0 -7998 0.7288203281070806 0.9343434343444224 0 -7999 0.2389473724331258 0.1363636363638858 0 -8000 0.2389473724331087 0.1464646464649139 0 -8001 0.2476951037844786 0.1515151515154463 0 -8002 0.2389473724331079 0.1565656565659432 0 -8003 0.597604357836791 0.9292929292939068 0 -8004 0.4838838502702655 0.4797979797991147 0 -8005 0.9300181491896975 0.4343434343455552 0 -8006 0.1689655216206287 0.9242424242424906 0 -8007 0.1777132544194309 0.9393939368868929 0 -8008 0.1864609844841532 0.9343434340649203 0 -8009 0.3614156113523143 0.1666666666672409 0 -8010 0.3701633427036741 0.1717171717177705 0 -8011 0.6588384772964226 0.9040404040414786 0 -8012 0.6675862086477913 0.8989898989910241 0 -8013 0.6413430145938259 0.8232323232336145 0 -8014 0.8075499102700432 0.6969696969708062 0 -8015 0.8075499102700319 0.707070707071786 0 -8016 0.938765880540442 0.5101010101028502 0 -8017 0.2214519097296121 0.5707070707071904 0 -8018 0.3964065367560549 0.7828282828289508 0 -8019 0.3876588054046906 0.7878787878794282 0 -8020 0.895027223783427 0.6565656565671161 0 -8021 0.8950272237834083 0.6666666666680822 0 -8022 0.1364456157396298 0.008879004769040568 0 -8023 0.1952087156747792 0.8585858585860299 0 -8024 0.2039564470261537 0.853535353535531 0 -8025 0.2127041783775027 0.8585858585860394 0 -8026 0.632595283243499 0.3333333333348148 0 -8027 0.6325952832422792 0.9191919191929401 0 -8028 0.4569712348979768 0.0193403827314926 0 -8029 0.8250453729730522 0.4242424242441187 0 -8030 0.448892924866211 0.08585858585928091 0 -8031 0.4926315816210394 0.72727272727369 0 -8032 0.4926315816210166 0.7373737373746925 0 -8033 0.2739382978375826 0.6414141414143724 0 -8034 0.2739382978375603 0.6515151515153831 0 -8035 0.2826860291889273 0.6464646464648965 0 -8036 0.2826860291889053 0.6565656565659046 0 -8037 0.2914337605402724 0.6515151515154195 0 -8038 0.2914337605402484 0.6616161616164269 0 -8039 0.2739382978375416 0.6616161616163941 0 -8040 0.3001814918916199 0.6565656565659387 0 -8041 0.9387658805399945 0.6717171717186373 0 -8042 0.2301996410800312 0.9393939393940371 0 -8043 0.5802000453970128 0.02047144617326389 0 -8044 0.6413430145946641 0.4494949494963443 0 -8045 0.7988021789186771 0.7121212121222679 0 -8046 0.527622507028298 0.1111111111120345 0 -8047 0.5363702383796634 0.1060606060615231 0 -8048 0.5188747756769798 0.1060606060614588 0 -8049 0.5101270443256194 0.1111111111119512 0 -8050 0.5013793129742938 0.1060606060613993 0 -8051 0.4926315816229277 0.1111111111118976 0 -8052 0.5451179697310157 0.1111111111119993 0 -8053 0.9212704178383169 0.4393939393960419 0 -8054 0.8162976416216242 0.4696969696986102 0 -8055 0.8162976416216241 0.4797979797996141 0 -8056 0.5363702383778215 0.7222222222232738 0 -8057 0.5363702383778578 0.7121212121222524 0 -8058 0.07274047675569724 0.8484848484848979 0 -8059 0.6850816713514216 0.5353535353548059 0 -8060 0.3264246859463492 0.3686868686873421 0 -8061 0.5188747756756147 0.6010101010109214 0 -8062 0.5801088951364887 0.05050505050615439 0 -8063 0.9562585518156637 0.9646541784041776 0 -8064 0.623847551891699 0.7222222222230408 0 -8065 0.2301996410812585 0.4545454545456462 0 -8066 0.9387657731919608 0.06565675159360281 0 -8067 0.7375680594600916 0.2626262626277359 0 -8068 0.5276225070270043 0.5454545454554798 0 -8069 0.5276225070270251 0.5353535353544783 0 -8070 0.5363702383783879 0.5303030303039921 0 -8071 0.5188747756756614 0.5404040404049656 0 -8072 0.5101270443243014 0.5454545454554482 0 -8073 0.5101270443243212 0.5353535353544445 0 -8074 0.5276225070270492 0.5252525252534733 0 -8075 0.1252268648655844 0.09090909090914134 0 -8076 0.3089292232422932 0.8939393939397117 0 -8077 0.8162976415111682 0.944444444065122 0 -8078 0.03773111944104805 0.1212349495941981 0 -8079 0.1164791335131562 0.6111111111109165 0 -8080 0.8950087470329632 0.04044739544892709 0 -8081 0.3439201486477637 0.8636363636368114 0 -8082 0.05524501405455438 0.1717171717170446 0 -8083 0.02881712475700724 0.4190294904098609 0 -8084 0.7025771340533136 0.8181818181832465 0 -8085 0.1164791335131816 0.6010101010098964 0 -8086 0.1252268648645766 0.5959595959594193 0 -8087 0.2826860291886388 0.7878787878789892 0 -8088 0.1564415766928366 0.00893336043510486 0 -8089 0.1715272964979785 0.0190220046378574 0 -8090 0.176710523101595 0.009931738967805505 0 -8091 0.1813014901968673 0.01917390038988827 0 -8092 0.186385899234446 0.01007437862975141 0 -8093 0.6063520891904699 0.05555555555671893 0 -8094 0.9212704178389417 0.1363636363652865 0 -8095 0.9300181491902951 0.1313131313148077 0 -8096 0.9125226864875763 0.1313131313147637 0 -8097 0.9475136118910993 0.7878787878797676 0 -8098 0.5101270443237246 0.7373737373747342 0 -8099 0.2214519097298378 0.4797979797981388 0 -8100 0.6938294027032464 0.2979797979811765 0 -8101 0.9125226864875119 0.1717171717188521 0 -8102 0.9475136118913975 0.6262626262643113 0 -8103 0.1427223275667085 0.8686868686868857 0 -8104 0.1514700589180698 0.8636363636364145 0 -8105 0.1514700589180939 0.8535353535354141 0 -8106 0.1514700589180481 0.8737373737374151 0 -8107 0.1427223275667547 0.8484848484848696 0 -8108 0.2389473724331459 0.1262626262628564 0 -8109 0.7463157908122653 0.03535353535522629 0 -8110 0.4926315816215292 0.585858585859423 0 -8111 0.4838838502701886 0.5808080808089032 0 -8112 0.4838838502702077 0.5707070707078972 0 -8113 0.6325952832426568 0.7676767676779916 0 -8114 0.6238475518913363 0.7626262626274349 0 -8115 0.5276225070261639 0.8383838383848046 0 -8116 0.6150998205419664 0.05050505050632238 0 -8117 0.7463157908107595 0.6414141414152659 0 -8118 0.4576406562164766 0.3232323232334982 0 -8119 0.1864609843249828 0.07575757575759179 0 -8120 0.3876588054064938 0.1414141414147413 0 -8121 0.3876588054064693 0.1515151515157651 0 -8122 0.3789110740550867 0.1565656565662553 0 -8123 0.3876588054064479 0.1616161616167852 0 -8124 0.3789110740550647 0.1666666666672763 0 -8125 0.3701633427037036 0.1616161616167465 0 -8126 0.378911074055041 0.1767676767682966 0 -8127 0.1777132529721856 0.828282828282962 0 -8128 0.1427223275666191 0.909090909090926 0 -8129 0.1864609843236315 0.8030303030304141 0 -8130 0.291433760539908 0.8131313131315552 0 -8131 0.9037749551349514 0.5808080808096699 0 -8132 0.3964065367559982 0.8030303030309415 0 -8133 0.9300181491895922 0.444444444446573 0 -8134 0.2039564470265058 0.7626262626262927 0 -8135 0.5538657010820445 0.2070707070715422 0 -8136 0.4139019994585957 0.8434343434349898 0 -8137 0.25644283513417 0.8838383838386199 0 -8138 0.2564428351342045 0.8737373737376295 0 -8139 0.5976043578370557 0.8181818181829998 0 -8140 0.5101270443235718 0.7979797979807546 0 -8141 0.5013793129722054 0.8030303030312297 0 -8142 0.991252268648696 0.3181818181833143 0 -8143 0.9912522686486748 0.09595959596040822 0 -8144 0.9912522686486996 0.29797979798123 0 -8145 0.9212704178371914 0.7626262626273123 0 -8146 0.9300181491885174 0.7575757575768304 0 -8147 0.8950272237848126 0.1515151515167603 0 -8148 0.886279492433443 0.146464646466244 0 -8149 0.2826860291887601 0.7474747474749498 0 -8150 0.2914337605400978 0.7525252525254775 0 -8151 0.8839207996530004 0.9911927991933747 0 -8152 0.8884066490085724 0.9823220387655796 0 -8153 0.8790005796876007 0.982850550983086 0 -8154 0.8832360710494557 0.9746064823803474 0 -8155 0.1339745962154683 0.7828282828284716 0 -8156 0.1427223275668553 0.7777777777779424 0 -8157 0.1864609843241122 0.6010101010101435 0 -8158 0.08148820810864973 0.1464646464646003 0 -8159 0.8337931039526897 0.9343434330543828 0 -8160 0.1864609843237153 0.7727272727273595 0 -8161 0.9912522686486389 0.33838383838527 0 -8162 0.9825045372973573 0.3333333333349552 0 -8163 0.1252268648639431 0.898989898989876 0 -8164 0.7200613842100965 0.03025294782303934 0 -8165 0.7725589848650289 0.3838383838400402 0 -8166 0.7620238080788455 0.9909114690045465 0 -8167 0.1427223275674718 0.5353535353534746 0 -8168 0.1339745962161036 0.5404040404039608 0 -8169 0.1339745962161095 0.5303030303029242 0 -8170 0.1252268648647323 0.535353535353395 0 -8171 0.1252268648647166 0.5454545454544143 0 -8172 0.7813067162168346 0.2777777777793349 0 -8173 0.1689655216214886 0.5606060606060584 0 -8174 0.1777132529728579 0.5555555555555728 0 -8175 0.1864609843242047 0.5606060606061029 0 -8176 0.6238475518928911 0.1565656565667404 0 -8177 0.6150998205415639 0.1515151515162277 0 -8178 0.6238475518929154 0.1464646464657545 0 -8179 0.6063520891902107 0.1565656565667027 0 -8180 0.6063520891902369 0.1464646464657165 0 -8181 0.06398102233275577 0.5707081394965056 0 -8182 0.07273917419283403 0.5656566844105847 0 -8183 0.07273929586463784 0.5555557248154623 0 -8184 0.08148806337851505 0.5606060738006161 0 -8185 0.08148804729745916 0.5707070853677401 0 -8186 0.06398166271738639 0.5808087058309785 0 -8187 0.06398356467170933 0.5505064418981752 0 -8188 0.07273838718601162 0.5454547460891641 0 -8189 0.07273930630322448 0.5353535848749417 0 -8190 0.08148784588298635 0.5404040681988481 0 -8191 0.4051542681081089 0.4646464646474461 0 -8192 0.3964065367567527 0.4595959595969448 0 -8193 0.3964065367567871 0.449494949495941 0 -8194 0.387658805405437 0.4545454545463607 0 -8195 0.3876588054053973 0.4646464646473334 0 -8196 0.510127044323477 0.828282828283742 0 -8197 0.8162976416222825 0.2676767676783801 0 -8198 0.3964065367566103 0.6111111111116226 0 -8199 0.7900544475665884 0.9292929292940274 0 -8200 0.9737568059452916 0.6717171717186935 0 -8201 0.7375680594595706 0.4545454545469788 0 -8202 0.03775568531483088 0.1414365168320816 0 -8203 0.8687840297293487 0.7121212121223821 0 -8204 0.8600362983780147 0.7171717171728543 0 -8205 0.6325952832433245 0.5959595959605215 0 -8206 0.168965521622206 0.15656565656579 0 -8207 0.1689655216221639 0.1666666666667897 0 -8208 0.05524501405452541 0.2828282828282483 0 -8209 0.05524501405450431 0.292929292929241 0 -8210 0.06399274540583431 0.2979797979797557 0 -8211 0.04649639136316928 0.2878780950226936 0 -8212 0.8687840297306433 0.1767676767692869 0 -8213 0.8075499102694473 0.878787878789082 0 -8214 0.4751361189200098 0.1818181818190272 0 -8215 0.4838838502713512 0.1868686868695167 0 -8216 0.4838838502713284 0.1969696969705446 0 -8217 0.4926315816226721 0.2020202020210236 0 -8218 0.6325952832440964 0.2222222222231976 0 -8219 0.6325952832440537 0.2323232323242499 0 -8220 0.6238475518926845 0.2373737373747685 0 -8221 0.6413430145953016 0.2373737373749531 0 -8222 0.6500907459466631 0.2323232323244475 0 -8223 0.3089292232429198 0.6818181818184655 0 -8224 0.3001814918915746 0.6767676767679451 0 -8225 0.2914337605402172 0.6818181818184558 0 -8226 0.2914337605402231 0.6717171717174393 0 -8227 0.2651905664867442 0.4242424242427156 0 -8228 0.6675862086492009 0.2929292929306056 0 -8229 0.6763339400005453 0.2979797979811408 0 -8230 0.9912522686486853 0.3585858585875115 0 -8231 0.7900544475675956 0.4545454545470612 0 -8232 0.107732600637591 0.9595951280865427 0 -8233 0.5538657010811537 0.6111111111118244 0 -8234 0.9912522686486837 0.3787878787896052 0 -8235 0.2826860291896774 0.2828282828287456 0 -8236 0.1077314021621655 0.4545454545452239 0 -8237 0.6816193115061293 0.9911851715092956 0 -8238 0.9737568059468149 0.2272727272745326 0 -8239 0.6150998205398742 0.7777777777790157 0 -8240 0.7931386352666953 0.9912817815747466 0 -8241 0.1864609843237613 0.7525252525253394 0 -8242 0.5626134324333206 0.2323232323240725 0 -8243 0.553865701081935 0.2373737373746114 0 -8244 0.5713611637846221 0.2373737373746478 0 -8245 0.4139019994604669 0.1969696969704033 0 -8246 0.5013793129718003 0.944444444445196 0 -8247 0.991252268648646 0.3989898989916163 0 -8248 0.9825045372973837 0.3939393939412779 0 -8249 0.3526678799990506 0.8989898989903183 0 -8250 0.3439201486476794 0.9040404040408005 0 -8251 0.4226497308118918 0.1717171717178816 0 -8252 0.4313974621632666 0.1666666666673992 0 -8253 0.6850816713511292 0.7373737373746866 0 -8254 0.6675862086484003 0.7373737373745904 0 -8255 0.5188747756766238 0.2272727272734713 0 -8256 0.2651905664869847 0.2727272727276964 0 -8257 0.265190566486969 0.2828282828287023 0 -8258 0.1952087156748681 0.8383838383840029 0 -8259 0.09898367081106861 0.3585858585858007 0 -8260 0.09023593945973205 0.3535353535352793 0 -8261 0.09023593945976 0.3434343434342886 0 -8262 0.08148820810839734 0.34848484848476 0 -8263 0.09023593945970108 0.3636363636362679 0 -8264 0.08148820810842866 0.3383838383837708 0 -8265 0.09023593945978331 0.3333333333332934 0 -8266 0.07274047675706802 0.3434343434342416 0 -8267 0.06399274540574212 0.3383838383837214 0 -8268 0.3964065367576112 0.2575757575764385 0 -8269 0.4051542681089618 0.262626262626963 0 -8270 0.4139019994603299 0.2575757575764654 0 -8271 0.4139019994602852 0.2676767676774807 0 -8272 0.4051542681088999 0.2727272727279769 0 -8273 0.08148820810813259 0.449494949494649 0 -8274 0.04648034952273887 0.7222222535468575 0 -8275 0.5538657010815999 0.3282828282840013 0 -8276 0.5451179697302048 0.3232323232335206 0 -8277 0.1777132529728352 0.5656565656565868 0 -8278 0.5101270443246181 0.3333333333345875 0 -8279 0.5801088951344837 0.7676767676779159 0 -8280 0.571361163783114 0.7727272727283938 0 -8281 0.5626134324317724 0.7676767676778671 0 -8282 0.4838838502697605 0.7020202020211612 0 -8283 0.2389473724320365 0.7222222222223289 0 -8284 0.702183453561624 0.9902183815606246 0 -8285 0.1514700589191595 0.3787878787879562 0 -8286 0.5626134324336601 0.1111111111121132 0 -8287 0.5713611637850194 0.1060606060616081 0 -8288 0.5801088951363748 0.1111111111120738 0 -8289 0.6063520891884782 0.7929292929305043 0 -8290 0.03772569915239105 0.4242243765996419 0 -8291 0.1164791335130506 0.6818181818181759 0 -8292 0.632595283243795 0.2929292929305229 0 -8293 0.221451909730479 0.08585858585868902 0 -8294 0.2301996410818405 0.09090909090922389 0 -8295 0.2214519097304636 0.09595959595973041 0 -8296 0.2301996410818205 0.101010101010258 0 -8297 0.9037749551351099 0.500000000001789 0 -8298 0.3614156113525654 0.07575757575799516 0 -8299 0.5888566264869208 0.2676767676781154 0 -8300 0.7025771340532916 0.828282828284252 0 -8301 0.8250453729726251 0.7575757575766936 0 -8302 0.5188747756767838 0.1565656565664828 0 -8303 0.5188747756768164 0.1464646464654916 0 -8304 0.6617622075410797 0.9912127178546952 0 -8305 0.6670459441408657 0.9817290607261359 0 -8306 0.553865701082113 0.1767676767685574 0 -8307 0.1602177902692914 0.9191919191919753 0 -8308 0.7813067162162376 0.4595959595975485 0 -8309 0.7725589848648809 0.4646464646480378 0 -8310 0.7725589848648775 0.4747474747490409 0 -8311 0.7638112535135415 0.4696969696985315 0 -8312 0.7638112535135476 0.4595959595975263 0 -8313 0.4401451935145881 0.1818181818189462 0 -8314 0.1514700589196579 0.09595959595971025 0 -8315 0.4488929248642733 0.7323232323240702 0 -8316 0.1077314021612132 0.9090909090908563 0 -8317 0.1689655216207418 0.853535353535502 0 -8318 0.4751361189189166 0.4747474747486027 0 -8319 0.2564428351359688 0.09595959595979844 0 -8320 0.3264246859460684 0.4898989898993988 0 -8321 0.2127041783790205 0.1313131313133148 0 -8322 0.3991389094293775 0.008802268991103574 0 -8323 0.4044858024037115 0.01826571734662161 0 -8324 0.8337931043252285 0.1464646464662923 0 -8325 0.5538657010821896 0.146464646465583 0 -8326 0.168965521621533 0.5404040404040374 0 -8327 0.1777132529728996 0.5353535353535522 0 -8328 0.1777132529729226 0.5252525252525457 0 -8329 0.1864609843242703 0.5303030303030726 0 -8330 0.01964218592731335 0.7474446208437718 0 -8331 0.01068161084414287 0.7524981383188487 0 -8332 0.01886163468474582 0.737081840676001 0 -8333 0.009714115284705664 0.7314497027418303 0 -8334 0.01058216919206858 0.7625981695652784 0 -8335 0.7521794772163007 0.9912254972667147 0 -8336 0.7725589848649623 0.555555555556884 0 -8337 0.7813067162169772 0.1767676767690835 0 -8338 0.7813067162170007 0.1666666666680877 0 -8339 0.7900544475683637 0.1616161616176289 0 -8340 0.7813067162170312 0.1565656565671136 0 -8341 0.6763339400001063 0.4797979797993637 0 -8342 0.1077314021616953 0.6666666666665786 0 -8343 0.3001814918923714 0.2929292929298016 0 -8344 0.3001814918923548 0.3030303030308135 0 -8345 0.3089292232436969 0.3080808080813388 0 -8346 0.3001814918923425 0.3131313131318196 0 -8347 0.3089292232436818 0.3181818181823401 0 -8348 0.3176769545950434 0.3131313131318598 0 -8349 0.2914337605410195 0.2979797979802857 0 -8350 0.7200725967566725 0.6767676767686499 0 -8351 0.2914337605403638 0.6111111111113797 0 -8352 0.06399274540426333 0.8737373737374361 0 -8353 0.07274047675561782 0.8787878787879708 0 -8354 0.07274047675562313 0.8888888888889779 0 -8355 0.08148820810703233 0.8838383838384583 0 -8356 0.9562613432424139 0.9040404040417348 0 -8357 0.3526678799997036 0.6767676767680632 0 -8358 0.361415611351051 0.6818181818186085 0 -8359 0.6209871022053474 0.9910661497385215 0 -8360 0.4488929248658357 0.2272727272735173 0 -8361 0.4488929248658031 0.2373737373745293 0 -8362 0.4401451935144384 0.2424242424250037 0 -8363 0.4576406562171465 0.2323232323240599 0 -8364 0.4488929248657436 0.2474747474755438 0 -8365 0.4576406562171882 0.2222222222230391 0 -8366 0.3789812720234272 0.007769817645135272 0 -8367 0.308929223243121 0.590909090909413 0 -8368 0.7113248654061972 0.1969696969708957 0 -8369 0.3584998989817401 0.008740640453645096 0 -8370 0.3531488338805543 0.01824643247616995 0 -8371 0.2975848038714692 0.008872107947094201 0 -8372 0.4313974621621757 0.4595959595970243 0 -8373 0.4488927445020414 0.04545485785530531 0 -8374 0.991252268648707 0.2373737373749365 0 -8375 0.9912522686486636 0.247474747475885 0 -8376 0.9825045372973457 0.2525252525265871 0 -8377 0.9825045372974033 0.2626262626276253 0 -8378 0.9125226864873037 0.2727272727290996 0 -8379 0.9037749551359349 0.267676767678572 0 -8380 0.9125226864873226 0.2626262626280663 0 -8381 0.9037749551359552 0.2575757575775446 0 -8382 0.895027223784572 0.2626262626280491 0 -8383 0.06399402715661123 0.5101010172498149 0 -8384 0.07274014963331808 0.5151515187347556 0 -8385 0.4051542681093456 0.09090909090969208 0 -8386 0.4051542681093268 0.1010101010107143 0 -8387 0.4139019994607335 0.08585858585919776 0 -8388 0.1514700589190847 0.3989898989899464 0 -8389 0.5626134324333995 0.2020202020210643 0 -8390 0.2739382978385845 0.1767676767680625 0 -8391 0.2739382978385763 0.1868686868690771 0 -8392 0.6413430145947203 0.4090909090923366 0 -8393 0.851138201894597 0.02534319272403023 0 -8394 0.2476951037842834 0.2626262626266431 0 -8395 0.9562613432427433 0.6111111111128846 0 -8396 0.2127041783775703 0.8484848484850116 0 -8397 0.2214519097288506 0.8636363636365563 0 -8398 0.378911074054001 0.5707070707075653 0 -8399 0.300181491892281 0.3737373737377783 0 -8400 0.3384067253885333 0.008578848661755331 0 -8401 0.3339840659657482 0.01818075613474849 0 -8402 0.5626134324324511 0.5252525252535457 0 -8403 0.5713611637838129 0.5202020202030647 0 -8404 0.5538657010811134 0.5202020202030259 0 -8405 0.5451179697297521 0.5252525252535065 0 -8406 0.9387658805413981 0.2878787878806935 0 -8407 0.317963490880381 0.009693699855516186 0 -8408 0.6675862086494578 0.2020202020212891 0 -8409 0.7900544475673384 0.7070707070717628 0 -8410 0.6675862086480927 0.7676767676780365 0 -8411 0.3614156113524164 0.1161616161621499 0 -8412 0.3701633427018182 0.8585858585863738 0 -8413 0.7550635221619985 0.6969696969707051 0 -8414 0.3351724172967974 0.7676767676771266 0 -8415 0.34392014864814 0.7626262626266924 0 -8416 0.3351724172967387 0.7777777777781745 0 -8417 0.3264246859464193 0.3080808080813784 0 -8418 0.3264246859463944 0.3181818181823796 0 -8419 0.466388387567841 0.3181818181830135 0 -8420 0.4576406562164576 0.3333333333345053 0 -8421 0.6063520891892809 0.43939393939529 0 -8422 0.6413432932382164 0.9545449719199036 0 -8423 0.3789110740544763 0.3484848484856309 0 -8424 0.6325952832432686 0.5151515151527064 0 -8425 0.1952087156759453 0.3939393939395565 0 -8426 0.1864609843246054 0.3888888888890373 0 -8427 0.282686029188222 0.878787878788187 0 -8428 0.3876588054045882 0.828282828283421 0 -8429 0.0377444846192437 0.8585893280030237 0 -8430 0.483883850270568 0.3080808080820435 0 -8431 0.3089292232427037 0.7828282828285512 0 -8432 0.3176769545940644 0.777777777778075 0 -8433 0.5276225070263556 0.7676767676777834 0 -8434 0.1252268648640598 0.8080808080809642 0 -8435 0.3439201486491205 0.318181818182428 0 -8436 0.09023593945885747 0.696969696969578 0 -8437 0.7200725967560735 0.7878787878802729 0 -8438 0.1864609843237726 0.7424242424243315 0 -8439 0.1952087156751431 0.7474747474748294 0 -8440 0.6011717376235841 0.9911346846637059 0 -8441 0.3176769545950693 0.3030303030308519 0 -8442 0.6325952832442412 0.1515151515162671 0 -8443 0.7463157908103948 0.7424242424254994 0 -8444 0.4751361189182921 0.7474747474756401 0 -8445 0.9125226864864238 0.5151515151532905 0 -8446 0.1689655232288813 0.9444444416588311 0 -8447 0.3351724172982189 0.1616161616166665 0 -8448 0.05524501405422266 0.4040404040401107 0 -8449 0.8687840297297558 0.4797979797997246 0 -8450 0.1777132529734205 0.3131313131314815 0 -8451 0.1777132529734199 0.3030303030304834 0 -8452 0.1689655216220404 0.3181818181819758 0 -8453 0.2301996410802351 0.8585858585860717 0 -8454 0.151470058919446 0.1666666666667514 0 -8455 0.3176769545946774 0.5050505050508828 0 -8456 0.07274047675716548 0.3030303030302719 0 -8457 0.3701633444656786 0.9393939363389538 0 -8458 0.008004512359575902 0.6010381512523058 0 -8459 0.6850816713516201 0.3333333333348767 0 -8460 0.8687840297294082 0.6818181818194602 0 -8461 0.7025771340541636 0.5555555555567619 0 -8462 0.4838838502700498 0.6414141414148936 0 -8463 0.405154268108075 0.565656565657127 0 -8464 0.2476951037830798 0.8181818181819985 0 -8465 0.238947372431687 0.8232323232324377 0 -8466 0.2301996410803735 0.8181818181818784 0 -8467 0.1164791335138956 0.2979797979798671 0 -8468 0.7813067162167305 0.3080808080824106 0 -8469 0.6675862086479465 0.7979797979811625 0 -8470 0.04649877972786223 0.328282828282689 0 -8471 0.04649440740038138 0.3383831952148968 0 -8472 0.1689655216216669 0.4797979797980046 0 -8473 0.1777132529730351 0.4747474747475285 0 -8474 0.1777132529730067 0.4848484848485324 0 -8475 0.1864609843243515 0.4898989898990698 0 -8476 0.1689655216216426 0.4898989898990089 0 -8477 0.3876588054052691 0.6060606060611015 0 -8478 0.3789110740539054 0.6111111111115838 0 -8479 0.3789110740543519 0.3989898989906099 0 -8480 0.3876588054056846 0.4040404040411911 0 -8481 0.3876588054056376 0.4141414141421893 0 -8482 0.2127041783788385 0.3131313131315596 0 -8483 0.7725589848654684 0.2828282828298245 0 -8484 0.3789110740549627 0.2171717171723553 0 -8485 0.3876588054063197 0.2222222222228805 0 -8486 0.3701633427035864 0.2222222222228435 0 -8487 0.3701633427035697 0.232323232323857 0 -8488 0.2389473724329255 0.2575757575761169 0 -8489 0.9912522686487057 0.277777777779069 0 -8490 0.8862794924326578 0.4090909090928068 0 -8491 0.08148820810868723 0.1262626262625894 0 -8492 0.3089292232439139 0.2575757575762609 0 -8493 0.3176769545952682 0.2626262626267864 0 -8494 0.4313974621614258 0.7929292929300372 0 -8495 0.2651905664874243 0.06060606060618753 0 -8496 0.4838838502696763 0.7323232323241691 0 -8497 0.2914337605413487 0.1666666666670781 0 -8498 0.3001814918927175 0.1717171717176106 0 -8499 0.2389473724327955 0.3585858585861476 0 -8500 0.2301996410814295 0.363636363636631 0 -8501 0.2301996410814072 0.3737373737376375 0 -8502 0.2214519097300635 0.3686868686871126 0 -8503 0.6238475518920503 0.3888888888903112 0 -8504 0.8075499102704975 0.3535353535370782 0 -8505 0.08148820810818719 0.4292929292926622 0 -8506 0.5713611637847985 0.1767676767685988 0 -8507 0.1427223275672168 0.6262626262625125 0 -8508 0.1427223275671949 0.6363636363635297 0 -8509 0.151470058918604 0.6212121212120434 0 -8510 0.1339745962158188 0.6414141414140205 0 -8511 0.142722327567175 0.6464646464645517 0 -8512 0.1514700589185549 0.6414141414140726 0 -8513 0.1252268648644391 0.646464646464512 0 -8514 0.1427223275671519 0.6565656565655767 0 -8515 0.116479133513366 0.5202020202017761 0 -8516 0.1252268648647323 0.5151515151512891 0 -8517 0.1252268648647532 0.50505050505028 0 -8518 0.1339745962161142 0.5101010101008291 0 -8519 0.125226864864722 0.5252525252523232 0 -8520 0.1339745962161399 0.4999999999998256 0 -8521 0.1339745962161016 0.5202020202018568 0 -8522 0.1864609843245139 0.429292929293056 0 -8523 0.8250453729729985 0.4545454545471255 0 -8524 0.6063520891891375 0.6717171717179037 0 -8525 0.1427223275675299 0.5050505050504231 0 -8526 0.1777132529730597 0.4646464646465272 0 -8527 0.02901650035048385 0.3181292658034931 0 -8528 0.3964065367578524 0.1464646464652743 0 -8529 0.5976043578380064 0.3838383838397718 0 -8530 0.536370238379504 0.1464646464655379 0 -8531 0.0902359394598061 0.3232323232322967 0 -8532 0.09898367081113918 0.3282828282828149 0 -8533 0.8512885670261385 0.9040404040416594 0 -8534 0.6588384772974545 0.388888888890363 0 -8535 0.3614156113505985 0.8030303030308656 0 -8536 0.3701633427020943 0.7474747474753805 0 -8537 0.3614156113507582 0.7525252525258597 0 -8538 0.3789110740534507 0.7424242424249021 0 -8539 0.5976043578390013 0.1111111111121997 0 -8540 0.6063520891903392 0.1060606060617315 0 -8541 0.9300181491884475 0.7979797979807062 0 -8542 0.9387658805397573 0.8030303030312037 0 -8543 0.9387658805398229 0.762626262627339 0 -8544 0.2651905664872622 0.1313131313134297 0 -8545 0.2651905664872479 0.1414141414144582 0 -8546 0.06399274540567397 0.3585858585856778 0 -8547 0.4663883875663834 0.9545454545460933 0 -8548 0.4663883875664111 0.9444444444450996 0 -8549 0.4751361189177427 0.9494949494956193 0 -8550 0.5801088951351516 0.5252525252535851 0 -8551 0.6238475518911881 0.7929292929305515 0 -8552 0.2476951037830124 0.8383838383840704 0 -8553 0.2301996410805405 0.7777777777778583 0 -8554 0.2914337605412082 0.247474747475205 0 -8555 0.9037749551344741 0.8030303030311512 0 -8556 0.5801088951342369 0.8585858585869381 0 -8557 0.2071517134041179 0.008786668805722901 0 -8558 0.2172670985887406 0.00867970063235117 0 -8559 0.2123871628624501 0.01828883740001751 0 -8560 0.7375680594595863 0.404040404041989 0 -8561 0.008949060424855481 0.7020200321809043 0 -8562 0.01818146877785972 0.7070665047905265 0 -8563 0.01818715152587565 0.7170260460248857 0 -8564 0.7200725967561882 0.767676767678157 0 -8565 0.09023593945862557 0.7777777777777802 0 -8566 0.09023593945978296 0.2424242424240942 0 -8567 0.09023593945980039 0.2525252525251405 0 -8568 0.08148820810845071 0.2474747474746085 0 -8569 0.08148820810844798 0.2373737373735761 0 -8570 0.07274047675710142 0.2424242424240617 0 -8571 0.0727404767571289 0.252525252525127 0 -8572 0.7988021789190767 0.3888888888905849 0 -8573 0.4488929248651128 0.3282828282839847 0 -8574 0.7463157908109621 0.3888888888905018 0 -8575 0.2389473724319321 0.7626262626263691 0 -8576 0.2476951037839663 0.4545454545456866 0 -8577 0.7988021789189328 0.5101010101025695 0 -8578 0.1514700589192525 0.3585858585859591 0 -8579 0.1864609843244571 0.4494949494950591 0 -8580 0.4051542681082503 0.4040404040414476 0 -8581 0.1339745962156642 0.7222222222223512 0 -8582 0.1427223275670443 0.717171717171865 0 -8583 0.1427223275670884 0.7070707070708301 0 -8584 0.1514700589184327 0.7121212121213205 0 -8585 0.483883850270272 0.540404040404878 0 -8586 0.4926315816216093 0.5454545454553974 0 -8587 0.4838838502702503 0.5505050505058794 0 -8588 0.4926315816215882 0.5555555555564012 0 -8589 0.6413430145937499 0.8535353535366349 0 -8590 0.04649679464201026 0.06565656565642089 0 -8591 0.2474393322343102 0.009393470561081344 0 -8592 0.9125226864875368 0.111111111112876 0 -8593 0.5013793129737607 0.237373737374672 0 -8594 0.3089292232441147 0.1565656565660945 0 -8595 0.7375680594595421 0.575757575758805 0 -8596 0.2914337605406452 0.4898989898993066 0 -8597 0.553865701081232 0.5808080808088352 0 -8598 0.5538657010812018 0.570707070707872 0 -8599 0.5451179697298736 0.5858585858593161 0 -8600 0.5363702383785038 0.5808080808088389 0 -8601 0.536370238378439 0.5101010101019886 0 -8602 0.2739382978371547 0.8131313131315918 0 -8603 0.04649778829552006 0.3989882399443341 0 -8604 0.1339745962156333 0.7323232323233753 0 -8605 0.2651905664865237 0.5151515151517556 0 -8606 0.09023593945935997 0.4949494949491907 0 -8607 0.08148819668888346 0.500000000043934 0 -8608 0.08148817176094161 0.5101010104988463 0 -8609 0.08148814168303981 0.4898989898989055 0 -8610 0.0727402826063757 0.4949494950314937 0 -8611 0.1077314021625388 0.3030303030303462 0 -8612 0.5188747756750153 0.7626262626272607 0 -8613 0.4401451935127891 0.7878787878795601 0 -8614 0.3614156113512706 0.5808080808085292 0 -8615 0.1864609843238665 0.7020202020202652 0 -8616 0.195208715675237 0.7070707070707809 0 -8617 0.6150998205406316 0.4848484848496841 0 -8618 0.2039564470274492 0.2777777777780518 0 -8619 0.5801088951348734 0.6969696969705601 0 -8620 0.5801088951349143 0.686868686869532 0 -8621 0.5713611637835598 0.681818181819024 0 -8622 0.5888566264862827 0.7020202020209799 0 -8623 0.5626134324321552 0.6868686868695582 0 -8624 0.5626134324322174 0.676767676768494 0 -8625 0.5538657010808775 0.6717171717179659 0 -8626 0.1076984959950381 0.9797136879989637 0 -8627 0.3526678800007211 0.2828282828288769 0 -8628 0.1427223275666895 0.8787878787878965 0 -8629 0.9912522686486801 0.07575757575833834 0 -8630 0.545117969729729 0.5353535353545094 0 -8631 0.06399274540581336 0.3080808080807496 0 -8632 0.07274047675576054 0.9292929292928136 0 -8633 0.8075499102547439 0.9393939393449933 0 -8634 0.07274047675729024 0.1515151515150855 0 -8635 0.09898367080993546 0.8030303030303917 0 -8636 0.4051542681070179 0.9393939393944208 0 -8637 0.3351724172974655 0.4646464646469075 0 -8638 0.3439201486488287 0.4595959595964497 0 -8639 0.8075499102702755 0.5858585858599475 0 -8640 0.3964065367568273 0.5101010101016624 0 -8641 0.5626134324315185 0.8585858585868898 0 -8642 0.2389473724321432 0.6515151515153114 0 -8643 0.09898367081130745 0.1666666666666373 0 -8644 0.7900544475682688 0.2323232323247903 0 -8645 0.03775795549150911 0.8889112538430347 0 -8646 0.4751361189189099 0.5454545454553592 0 -8647 0.3264246859458776 0.5707070707074401 0 -8648 0.3351724172972452 0.5656565656569579 0 -8649 0.3264246859459028 0.5606060606064344 0 -8650 0.3351724172972693 0.5555555555559526 0 -8651 0.3439201486486113 0.5606060606064768 0 -8652 0.4139019994584481 0.9040404040409733 0 -8653 0.07273777443273152 0.5757577787825837 0 -8654 0.2389473724319105 0.7727272727273771 0 -8655 0.3176769545948678 0.4242424242428464 0 -8656 0.2914337605402938 0.6414141414144089 0 -8657 0.4838838502702275 0.5606060606068842 0 -8658 0.7813067162168726 0.2575757575773142 0 -8659 0.6150998205413745 0.2323232323241983 0 -8660 0.6063520891899884 0.2373737373747342 0 -8661 0.1427223275674879 0.5252525252524505 0 -8662 0.7813067162162554 0.4494949494965449 0 -8663 0.4751361189191849 0.3232323232335343 0 -8664 0.3176769545953957 0.2222222222227195 0 -8665 0.2301996410808857 0.6060606060607444 0 -8666 0.2301996410809074 0.5959595959597342 0 -8667 0.11647913351341 0.499999999999758 0 -8668 0.1777132529725618 0.6767676767677051 0 -8669 0.8950272237848014 0.1010101010118364 0 -8670 0.2301996410811863 0.4848484848486577 0 -8671 0.1602177902708986 0.131313131313232 0 -8672 0.4488929248649703 0.4090909090920325 0 -8673 0.4488929248649519 0.4191919191930372 0 -8674 0.4401451935135894 0.4242424242435237 0 -8675 0.4488929248649347 0.429292929294041 0 -8676 0.7463157908108219 0.6111111111122786 0 -8677 0.7638112535135086 0.6111111111123216 0 -8678 0.5451179697298439 0.4242424242436968 0 -8679 0.230199641080841 0.6262626262627667 0 -8680 0.055245014053418 0.6666666666663924 0 -8681 0.3789110740545278 0.3282828282835266 0 -8682 0.3876588054058974 0.3232323232330414 0 -8683 0.3964065367571915 0.328282828283673 0 -8684 0.5451179697289319 0.8181818181828459 0 -8685 0.9212704178373247 0.6919191919205235 0 -8686 0.8337931043243594 0.4696969696986569 0 -8687 0.3001814918929615 0.06060606060626445 0 -8688 0.2914337605415656 0.0656565656567645 0 -8689 0.6150998205414572 0.2020202020211752 0 -8690 0.5013793129732904 0.2979797979810747 0 -8691 0.5801088951360855 0.2020202020211012 0 -8692 0.8775317610819149 0.2222222222239102 0 -8693 0.2826860291899368 0.2222222222226363 0 -8694 0.1339745962167019 0.1767676767677223 0 -8695 0.1864609843246816 0.2575757575758588 0 -8696 0.08148820810700912 0.8737373737374635 0 -8697 0.4576406562159609 0.6565656565663333 0 -8698 0.7638112535135891 0.4292929292945107 0 -8699 0.7638112535136039 0.4191919191935136 0 -8700 0.6938294027035865 0.1666666666678741 0 -8701 0.4751361189191302 0.3535353535365496 0 -8702 0.4751361189191121 0.3636363636375552 0 -8703 0.4838838502704743 0.3585858585870674 0 -8704 0.4838838502704564 0.3686868686880728 0 -8705 0.4926315816218183 0.3636363636375851 0 -8706 0.4751361189190939 0.3737373737385604 0 -8707 0.4926315816218001 0.3737373737385912 0 -8708 0.4926315816218358 0.3535353535365794 0 -8709 0.5013793129731794 0.3585858585870971 0 -8710 0.5013793129731426 0.3787878787891113 0 -8711 0.3264246859459499 0.5404040404044266 0 -8712 0.8075499102713759 0.08080808080971548 0 -8713 0.8162976416226688 0.09595959596121717 0 -8714 0.50137931297322 0.3383838383850856 0 -8715 0.5101270443246197 0.3434343434355815 0 -8716 0.9475136118914848 0.5858585858604649 0 -8717 0.116479133513879 0.2171717171716531 0 -8718 0.2476951037838007 0.5252525252527129 0 -8719 0.9125226864875332 0.1616161616178224 0 -8720 0.3964065367566604 0.5909090909096163 0 -8721 0.1514700589193041 0.2777777777779167 0 -8722 0.8337931043241562 0.6414141414154407 0 -8723 0.8337931043241803 0.6313131313144534 0 -8724 0.8425408356755069 0.6363636363649847 0 -8725 0.5713611637839547 0.4595959595970769 0 -8726 0.5626134324326029 0.4545454545465976 0 -8727 0.8075499102701567 0.6363636363648933 0 -8728 0.6150998205407366 0.3636363636377931 0 -8729 0.6850816713512988 0.5555555555568134 0 -8730 0.545117969728983 0.797979797980843 0 -8731 0.4401451935131282 0.6767676767684477 0 -8732 0.09023593945959668 0.4040404040401956 0 -8733 0.08148820810826372 0.3989898989896782 0 -8734 0.4139019994603569 0.2474747474754608 0 -8735 0.4226497308117006 0.2525252525259765 0 -8736 0.4313974621630696 0.2474747474754884 0 -8737 0.4313974621630128 0.2575757575765028 0 -8738 0.1602177902706718 0.2020202020202359 0 -8739 0.2914337605404061 0.5909090909093652 0 -8740 0.07273984081906514 0.5252525339420024 0 -8741 0.7200725967569011 0.3939393939409577 0 -8742 0.728820328108262 0.388888888890473 0 -8743 0.7113248654053801 0.6414141414151934 0 -8744 0.9737568059450137 0.8535353535360902 0 -8745 0.9825045372965838 0.8585858585863406 0 -8746 0.9825045372966262 0.8484848484854264 0 -8747 0.9737568059451175 0.8737373737380266 0 -8748 0.7025771340545447 0.3232323232337497 0 -8749 0.2739237043701294 0.9646519495306654 0 -8750 0.3964065367577156 0.207070707071379 0 -8751 0.4051542681090701 0.212121212121905 0 -8752 0.6588384772982809 0.1363636363648463 0 -8753 0.510127044324358 0.4747474747486336 0 -8754 0.2039564470274805 0.2474747474749955 0 -8755 0.2389473724314234 0.9141414141415747 0 -8756 0.422649730810972 0.3737373737384728 0 -8757 0.4226497308109561 0.3838383838394781 0 -8758 0.3876588054048133 0.737373737374423 0 -8759 0.2739382978367886 0.9141414141416442 0 -8760 0.2214519097300855 0.358585858586104 0 -8761 0.6150998205404604 0.6868686868694266 0 -8762 0.61509982054048 0.6767676767684229 0 -8763 0.2651905664866221 0.4747474747477383 0 -8764 0.1252268648655485 0.1111111111111902 0 -8765 0.3526678800001319 0.4747474747480209 0 -8766 0.7550635221628349 0.2424242424257544 0 -8767 0.7550635221628181 0.2525252525267627 0 -8768 0.1689655216215772 0.5202020202020226 0 -8769 0.1777132529729473 0.515151515151542 0 -8770 0.1689655216216002 0.510101010101017 0 -8771 0.1777132529729674 0.5050505050505386 0 -8772 0.6150998205398469 0.7878787878800249 0 -8773 0.6938294027027703 0.4898989899003571 0 -8774 0.2214519097301845 0.267676767677084 0 -8775 0.2214519097301832 0.2777777777780849 0 -8776 0.7900544475674958 0.6262626262638683 0 -8777 0.4926315816215122 0.5959595959604269 0 -8778 0.4838838502701511 0.601010101010909 0 -8779 0.4838838502701364 0.6111111111119119 0 -8780 0.4051542681081803 0.4242424242434632 0 -8781 0.3964065367568164 0.4292929292939145 0 -8782 0.3964065367568076 0.4393939393949304 0 -8783 0.5363702383779485 0.7020202020211808 0 -8784 0.3089292232435267 0.4191919191923211 0 -8785 0.06399274540425179 0.8939393939394596 0 -8786 0.07274047675568068 0.8989898989899524 0 -8787 0.2389473724326798 0.409090909091175 0 -8788 0.2389473724326612 0.4191919191921775 0 -8789 0.2476951037840269 0.4141414141416903 0 -8790 0.6413430145945693 0.6616161616169799 0 -8791 0.3789106197695975 0.974736828664022 0 -8792 0.3788770291574994 0.9848182339569682 0 -8793 0.1514700589192038 0.2575757575757744 0 -8794 0.1514700589192295 0.2676767676768351 0 -8795 0.1339745962166118 0.2878787878789069 0 -8796 0.1952087156752431 0.696969696969773 0 -8797 0.2039564470266134 0.7020202020202816 0 -8798 0.7725589848642128 0.8181818181832546 0 -8799 0.4226497308118186 0.2020202020209284 0 -8800 0.5976043578379043 0.6161616161624242 0 -8801 0.1252268648645386 0.6060606060604313 0 -8802 0.6413430145938962 0.7929292929305958 0 -8803 0.7375680594595448 0.4242424242439736 0 -8804 0.6850816713505217 0.8686868686882097 0 -8805 0.8775317610817605 0.3030303030321258 0 -8806 0.4663883875677495 0.3686868686880432 0 -8807 0.457640656216405 0.3636363636375248 0 -8808 0.3526678800007664 0.272727272727859 0 -8809 0.6063520891901878 0.1666666666676909 0 -8810 0.5276225070273479 0.2929292929306238 0 -8811 0.5801088951344266 0.7878787878799318 0 -8812 0.5713611637830855 0.7828282828294051 0 -8813 0.5801088951351762 0.5151515151525845 0 -8814 0.2914337605408689 0.3989898989902653 0 -8815 0.4751361189190571 0.3939393939405707 0 -8816 0.4751361189190746 0.3838383838395655 0 -8817 0.6413430145956757 0.106060606061866 0 -8818 0.1952087156760943 0.2828282828285387 0 -8819 0.2039564470274603 0.2878787878790572 0 -8820 0.4401451935129889 0.7070707070715415 0 -8821 0.5888566264866065 0.4191919191932632 0 -8822 0.5801088951352642 0.4141414141427489 0 -8823 0.5276225070269889 0.6363636363643114 0 -8824 0.1339745962157363 0.7020202020203047 0 -8825 0.1427223275671208 0.6969696969697686 0 -8826 0.08148820810872201 0.1060606060605702 0 -8827 0.1689655216220137 0.2676767676769267 0 -8828 0.09023593945889594 0.6767676767675233 0 -8829 0.4751361189195269 0.2727272727282482 0 -8830 0.7288203281087267 0.2676767676782215 0 -8831 0.230199641081632 0.2222222222225516 0 -8832 0.06399304325025616 0.227272211390774 0 -8833 0.2739382978381115 0.4191919191922348 0 -8834 0.8687840297303456 0.3282828282846683 0 -8835 0.4226497308110049 0.3535353535364598 0 -8836 0.9650090722540965 0.06060606466395081 0 -8837 0.2214519097297205 0.5303030303031576 0 -8838 0.2389473724326011 0.4595959595961682 0 -8839 0.51012704432345 0.8383838383847405 0 -8840 0.05524464035006423 0.1818181851839014 0 -8841 0.3789110740534016 0.7626262626269056 0 -8842 0.3701633427020685 0.7575757575763815 0 -8843 0.1427223275681535 0.1414141414142197 0 -8844 0.1339745962162523 0.4595959595958263 0 -8845 0.1864609843240671 0.6212121212121695 0 -8846 0.1864609843240451 0.6313131313131851 0 -8847 0.1952087156753928 0.6363636363637132 0 -8848 0.1952087156753709 0.6464646464647301 0 -8849 0.9912522686486468 0.2676767676779345 0 -8850 0.6850816713515105 0.3838383838399004 0 -8851 0.8250453729722522 0.8484848484860938 0 -8852 0.09023593945963991 0.3838383838382153 0 -8853 0.14272232756763 0.4646464646464123 0 -8854 0.8337931043241172 0.6616161616174073 0 -8855 0.8425408356754597 0.6565656565669464 0 -8856 0.2127041783783369 0.5353535353536468 0 -8857 0.3963926382343712 0.9646396315335646 0 -8858 0.3876120323192627 0.9797096398015854 0 -8859 0.0989836708111165 0.3383838383838105 0 -8860 0.3264246859457635 0.621212121212467 0 -8861 0.3176769545943974 0.6262626262629503 0 -8862 0.4751361189192049 0.3131313131325283 0 -8863 0.5538657010811977 0.4494949494961766 0 -8864 0.2564428351355998 0.318181818182159 0 -8865 0.4838838502694424 0.8232323232331725 0 -8866 0.2564428351350088 0.5808080808082814 0 -8867 0.6238475518909019 0.9242424242434352 0 -8868 0.7025771340541739 0.464646464647878 0 -8869 0.4051542681077672 0.6868686868692767 0 -8870 0.7550635221622335 0.5757575757588376 0 -8871 0.8950272237847283 0.1919191919208703 0 -8872 0.2127041783774687 0.8686868686870513 0 -8873 0.5713611637837933 0.6414141414148165 0 -8874 0.5626134324324515 0.6363636363643058 0 -8875 0.7833086808377379 0.9910254255581711 0 -8876 0.4576406562162973 0.4242424242435535 0 -8877 0.2301996410816046 0.2323232323235687 0 -8878 0.4051542681074641 0.7575757575764681 0 -8879 0.8250453729731778 0.3737373737391191 0 -8880 0.7550635221622123 0.4848484848499994 0 -8881 0.5013793129732053 0.3484848484860891 0 -8882 0.5101270443245801 0.3535353535365779 0 -8883 0.510127044324536 0.3636363636376033 0 -8884 0.5188747756759732 0.3585858585870363 0 -8885 0.7288203281081772 0.5101010101024053 0 -8886 0.3264246859469015 0.1363636363640898 0 -8887 0.7900544475666794 0.8989898989910148 0 -8888 0.0727404767571872 0.2929292929292787 0 -8889 0.7288203281076384 0.7626262626275153 0 -8890 0.6763339400001968 0.3585858585873838 0 -8891 0.2914337605405276 0.5404040404043362 0 -8892 0.2476951037846435 0.07070707070718987 0 -8893 0.6063520891888013 0.7424242424252148 0 -8894 0.6063520891887362 0.7525252525262713 0 -8895 0.6850816713506525 0.7979797979812029 0 -8896 0.3439201486490852 0.3484848484854109 0 -8897 0.5101270443244398 0.4242424242436414 0 -8898 0.5101270443244537 0.4141414141426384 0 -8899 0.5188747756758127 0.4090909090921535 0 -8900 0.1077314010851748 0.07070707257369012 0 -8901 0.7900544475675904 0.4848484848500678 0 -8902 0.4138977287696242 0.02515862972204072 0 -8903 0.2127041783786537 0.3939393939396044 0 -8904 0.2039564470268477 0.5909090909091703 0 -8905 0.3439201486485163 0.6010101010104986 0 -8906 0.3614156113513427 0.5505050505055167 0 -8907 0.3614156113513191 0.5606060606065216 0 -8908 0.676333940000013 0.6313131313141138 0 -8909 0.3176769545941461 0.7474747474750605 0 -8910 0.7200725967573078 0.3030303030317447 0 -8911 0.2739382978387292 0.09595959595983669 0 -8912 0.4401451935135359 0.5353535353542749 0 -8913 0.4488929248648737 0.5404040404048003 0 -8914 0.3001814918920581 0.4646464646468201 0 -8915 0.6675862086487631 0.4141414141428796 0 -8916 0.4751361189182137 0.7777777777786561 0 -8917 0.4663883875668755 0.7727272727281326 0 -8918 0.1689655216218376 0.4191919191920117 0 -8919 0.1602177902706389 0.3030303030304614 0 -8920 0.1602177902706421 0.3131313131314685 0 -8921 0.4313974621611636 0.8939393939400253 0 -8922 0.728820328108962 0.1565656565669786 0 -8923 0.7638112535135788 0.5101010101024894 0 -8924 0.4663883875687306 0.1565656565664938 0 -8925 0.4838838502714437 0.1565656565664982 0 -8926 0.1864609843243424 0.5000000000000707 0 -8927 0.5363702383797518 0.07575757575846892 0 -8928 0.2564428351355765 0.3282828282831672 0 -8929 0.1864609843244156 0.4696969696970638 0 -8930 0.6588384772964534 0.8636363636376461 0 -8931 0.5976043578389114 0.1414141414152053 0 -8932 0.5713611637840694 0.3585858585871566 0 -8933 0.08148820810858229 0.1767676767676009 0 -8934 0.9387658805411276 0.4090909090930278 0 -8935 0.8425408356764544 0.2222222222238812 0 -8936 0.6588384772973264 0.5101010101022686 0 -8937 0.04649728270319579 0.2777777777777322 0 -8938 0.5888566665517221 0.9545451490465275 0 -8939 0.7813067162162949 0.560606060607404 0 -8940 0.8075499102700942 0.6666666666678501 0 -8941 0.3789110740548309 0.2777777777784251 0 -8942 0.387658805406136 0.2828282828289698 0 -8943 0.06397891959393651 0.5303031968544876 0 -8944 0.8250453729732717 0.3333333333350848 0 -8945 0.3614156113511337 0.6414141414145579 0 -8946 0.3526678799997914 0.6363636363640366 0 -8947 0.606352089189211 0.5202020202031439 0 -8948 0.4139019994593151 0.6111111111116616 0 -8949 0.5626134324337293 0.08080808080902954 0 -8950 0.2739382978373837 0.7525252525254408 0 -8951 0.2127041783784272 0.4949494949496325 0 -8952 0.6150998205405716 0.5151515151526653 0 -8953 0.2127041783783787 0.5151515151516378 0 -8954 0.2127041783788157 0.3232323232325652 0 -8955 0.6413430145947047 0.4191919191933395 0 -8956 0.7288203281082455 0.5505050505062927 0 -8957 0.09023593945855041 0.8080808080808687 0 -8958 0.4226497308107286 0.585858585859178 0 -8959 0.6413430145946287 0.5101010101022266 0 -8960 0.6238475518919319 0.510101010102186 0 -8961 0.3439201486478766 0.8131313131318199 0 -8962 0.7813067162163494 0.5202020202034414 0 -8963 0.8775317610810375 0.5454545454561636 0 -8964 0.9037749551343945 0.8333333333341215 0 -8965 0.448892924864853 0.5505050505058013 0 -8966 0.440145193513496 0.555555555556268 0 -8967 0.3351724172970612 0.6464646464650026 0 -8968 0.3789110740541354 0.5000000000006256 0 -8969 0.3701633427027732 0.5050505050510985 0 -8970 0.3614156113514325 0.5000000000005564 0 -8971 0.2039564470267405 0.6414141414142381 0 -8972 0.2039564470267196 0.6515151515152501 0 -8973 0.3351724172975967 0.414141414141892 0 -8974 0.5451179697286084 0.929292929293799 0 -8975 0.3876588054051425 0.6666666666671766 0 -8976 0.3964065367565428 0.651515151515679 0 -8977 0.1427223275679377 0.3131313131314435 0 -8978 0.5801088951359996 0.2323232323241273 0 -8979 0.5888566264873131 0.2373737373746812 0 -8980 0.3089292232434748 0.4393939393943309 0 -8981 0.2039564470274328 0.2272727272728932 0 -8982 0.212704178379142 0.06060606060608034 0 -8983 0.05524501405448385 0.3030303030302364 0 -8984 0.9212704178371734 0.7727272727282772 0 -8985 0.6500907459459437 0.5252525252537428 0 -8986 0.3176769545955423 0.1313131313135509 0 -8987 0.8337931043243162 0.500000000001649 0 -8988 0.8425408356757005 0.5050505050521454 0 -8989 0.8337931043243213 0.5101010101026389 0 -8990 0.8250453729729592 0.5050505050521297 0 -8991 0.833793104324338 0.5202020202036173 0 -8992 0.4926315816219089 0.3131313131325639 0 -8993 0.6588384772982623 0.1464646464658276 0 -8994 0.09023593945906566 0.6060606060603395 0 -8995 0.2214519097301094 0.3484848484850983 0 -8996 0.2476951037842093 0.3333333333336512 0 -8997 0.1777132529732462 0.3939393939395296 0 -8998 0.8250453729727331 0.6868686868698523 0 -8999 0.8337931043240618 0.6919191919203587 0 -9000 0.5451179697298547 0.4848484848495219 0 -9001 0.6063520891891508 0.5505050505061305 0 -9002 0.1164791335138485 0.2474747474746922 0 -9003 0.8425408356758667 0.3838383838401558 0 -9004 0.7988021789199172 0.1161616161632228 0 -9005 0.3089292232440963 0.1666666666671196 0 -9006 0.6500907459461084 0.3838383838398473 0 -9007 0.51012704432463 0.303030303031593 0 -9008 0.1252268648652002 0.3232323232323808 0 -9009 0.0727404767568563 0.4242424242421409 0 -9010 0.0552446982557699 0.3838374534036085 0 -9011 0.5101270443237037 0.7474747474757393 0 -9012 0.3701633427024427 0.666666666667118 0 -9013 0.4838838502704378 0.3787878787890784 0 -9014 0.4313974621624046 0.3282828282839547 0 -9015 0.08148820810845139 0.3282828282827728 0 -9016 0.7025771340542648 0.363636363637912 0 -9017 0.5538657010804037 0.7727272727283516 0 -9018 0.1864607760628023 0.9545449817823077 0 -9019 0.1952065663107744 0.959592181075426 0 -9020 0.1952394394359575 0.9696657168097409 0 -9021 0.5976043578368745 0.8888888888899922 0 -9022 0.4838838502704193 0.3888888888900841 0 -9023 0.3964065367569853 0.358585858586922 0 -9024 0.4838838502703338 0.4393939393951052 0 -9025 0.6413430145936404 0.9242424242434648 0 -9026 0.8512885670267086 0.7020202020213742 0 -9027 0.4576406562163685 0.3838383838395348 0 -9028 0.5276225070271043 0.5959595959603221 0 -9029 0.8162976416218479 0.3585858585875925 0 -9030 0.5188747756758171 0.3989898989911514 0 -9031 0.7986943064011256 0.02544730489108803 0 -9032 0.7900930717998511 0.02031076269503764 0 -9033 0.7910335303523468 0.009725678461093937 0 -9034 0.2651905664863035 0.6060606060608202 0 -9035 0.08148805826347455 0.479797979798193 0 -9036 0.4401451935135566 0.444444444445531 0 -9037 0.168965521621714 0.4595959595960001 0 -9038 0.6675862086488531 0.3535353535368707 0 -9039 0.6588384772974947 0.3585858585873578 0 -9040 0.3701633427037279 0.1515151515157233 0 -9041 0.5188747756755849 0.6212121212129239 0 -9042 0.4838838502703824 0.419191919193098 0 -9043 0.186460984323382 0.9040404040404832 0 -9044 0.6588384772980398 0.2272727272738214 0 -9045 0.6675862086493511 0.2323232323243755 0 -9046 0.03773847969329483 0.2929279773486698 0 -9047 0.6238475518911114 0.8232323232335724 0 -9048 0.6325952832424547 0.8282828282840986 0 -9049 0.5976043578379636 0.4141414141427759 0 -9050 0.6850816713513694 0.5151515151528187 0 -9051 0.4313974621621933 0.4494949494960201 0 -9052 0.1427223275675783 0.484848484848412 0 -9053 0.4313974621630966 0.2373737373744853 0 -9054 0.6675862086486731 0.6262626262635997 0 -9055 0.2564428351343478 0.8434343434345962 0 -9056 0.5801088951347363 0.7272727272736925 0 -9057 0.2476951037842557 0.3131313131316362 0 -9058 0.4051542681081428 0.4444444444454675 0 -9059 0.5801088951350841 0.6666666666673534 0 -9060 0.9650090745937691 0.7676767676778451 0 -9061 0.7988021789191825 0.3282828282845498 0 -9062 0.7988021789192264 0.3181818181835523 0 -9063 0.5538657010812101 0.4797979797990289 0 -9064 0.5451179697298771 0.4747474747485504 0 -9065 0.8862794924324393 0.489898989900755 0 -9066 0.5188747756760091 0.2878787878801076 0 -9067 0.2739382978377456 0.5707070707073149 0 -9068 0.2214519097300406 0.3787878787881176 0 -9069 0.4488929248648645 0.4696969696980575 0 -9070 0.5538657010811375 0.5101010101020252 0 -9071 0.3089292232428505 0.722222222222529 0 -9072 0.7113248654054234 0.5101010101023808 0 -9073 0.7113248654054645 0.5202020202033647 0 -9074 0.6238475518918842 0.6515151515159421 0 -9075 0.1164791335125567 0.9141414141413775 0 -9076 0.6325952832433932 0.3939393939408234 0 -9077 0.6325952832434075 0.3838383838398222 0 -9078 0.8250453729729987 0.565656565657993 0 -9079 0.448892924865095 0.3383838383849934 0 -9080 0.3176769545937601 0.8484848484852452 0 -9081 0.3264246859451181 0.8434343434347686 0 -9082 0.8250453729729899 0.4646464646481341 0 -9083 0.116479133512635 0.8535353535353675 0 -9084 0.6938294027028212 0.4090909090924193 0 -9085 0.9737568055601878 0.06565656632831987 0 -9086 0.4051542681073105 0.8181818181824665 0 -9087 0.4576406562161996 0.4949494949505435 0 -9088 0.0552442884051405 0.7575757295740372 0 -9089 0.1077314021625281 0.2626262626262134 0 -9090 0.6675862086485446 0.6969696969705246 0 -9091 0.4751361189189333 0.4646464646475995 0 -9092 0.265190566487406 0.07070707070722615 0 -9093 0.3526678799991725 0.8383838383843344 0 -9094 0.5976043578378619 0.6363636363643802 0 -9095 0.1164791335125173 0.9343434343433965 0 -9096 0.2739382978380371 0.4494949494952494 0 -9097 0.4226497308098192 0.8888888888895049 0 -9098 0.5713611637850788 0.07575757575856261 0 -9099 0.3439201486494666 0.2474747474753046 0 -9100 0.6238475518920208 0.4090909090923132 0 -9101 0.1164791335137092 0.3787878787878275 0 -9102 0.9387658580469983 0.07575761472136056 0 -9103 0.9300181367071443 0.08080810243136639 0 -9104 0.3876588054054781 0.4343434343443089 0 -9105 0.3439201486484933 0.6111111111115032 0 -9106 0.2214519097292667 0.7424242424243058 0 -9107 0.1952087156759272 0.4040404040405701 0 -9108 0.3439201486486577 0.5404040404044685 0 -9109 0.317676954594535 0.5656565656569171 0 -9110 0.3089292232433982 0.4696969696973434 0 -9111 0.6588384772972474 0.6717171717180092 0 -9112 0.273938297837042 0.8434343434346384 0 -9113 0.212704178377652 0.8181818181819815 0 -9114 0.2651905664865739 0.494949494949747 0 -9115 0.2564428351352094 0.5000000000002266 0 -9116 0.615099820539696 0.8484848484860638 0 -9117 0.4663883875666603 0.8535353535361256 0 -9118 0.5626134324324742 0.5151515151525456 0 -9119 0.2826860291896537 0.3232323232327314 0 -9120 0.2914337605409953 0.3282828282832617 0 -9121 0.833793104324009 0.7323232323242553 0 -9122 0.3584037896354687 0.9910709898335701 0 -9123 0.2914337605401628 0.7121212121214858 0 -9124 0.6588384772972313 0.5505050505062633 0 -9125 0.05524501405309035 0.7979797979797264 0 -9126 0.7375680594594236 0.6363636363647482 0 -9127 0.6413430145946393 0.6010101010110471 0 -9128 0.2301996410803401 0.82828282828299 0 -9129 0.4051542681079761 0.6060606060611402 0 -9130 0.3964065367566359 0.6010101010106191 0 -9131 0.3351724172971738 0.5959595959599759 0 -9132 0.3789110740539295 0.6010101010105769 0 -9133 0.3701633427025656 0.6060606060610597 0 -9134 0.1602177902698622 0.6666666666666493 0 -9135 0.4488929248640164 0.833333333334084 0 -9136 0.1689638441199293 0.05555644699985263 0 -9137 0.5713611637838367 0.5101010101020638 0 -9138 0.06399252855316906 0.7020202041184215 0 -9139 0.09581940175638615 0.9910762933657244 0 -9140 0.5101270443235975 0.7878787878797509 0 -9141 0.5976043578379717 0.5858585858594494 0 -9142 0.3001814918919226 0.5252525252528533 0 -9143 0.2214519097303403 0.186868686868968 0 -9144 0.116479133513308 0.5505050505048359 0 -9145 0.5101270443233673 0.8686868686877509 0 -9146 0.3264246859459748 0.5303030303034213 0 -9147 0.7813067162164253 0.3585858585875418 0 -9148 0.1164791335126633 0.8232323232324427 0 -9149 0.4838838502715998 0.1060606060613551 0 -9150 0.4313974621612692 0.8535353535360346 0 -9151 0.212704178378523 0.4545454545456217 0 -9152 0.5101270443244327 0.4949494949504832 0 -9153 0.06399125916157705 0.2373712658326853 0 -9154 0.5276225070280245 0.202020202020987 0 -9155 0.4051542681072334 0.8484848484854646 0 -9156 0.5188747756753177 0.6919191919200447 0 -9157 0.5626134324328267 0.2727272727286204 0 -9158 0.7113248654055576 0.3888888888904415 0 -9159 0.03830902426969965 0.6263696345583499 0 -9160 0.7375680594602929 0.1616161616174928 0 -9161 0.912522686487337 0.2525252525270409 0 -9162 0.8250453729725393 0.7777777777787702 0 -9163 0.6763339400001527 0.3888888888903883 0 -9164 0.3964065367577866 0.1767676767683281 0 -9165 0.9212704178369582 0.9040404040417952 0 -9166 0.9125226864855875 0.9090909090922834 0 -9167 0.9125226864855635 0.919191919193303 0 -9168 0.9125226864856187 0.8989898989912672 0 -9169 0.9212704178369084 0.9242424242438338 0 -9170 0.3789110740542851 0.4191919191926048 0 -9171 0.2039564470274743 0.3181818181820433 0 -9172 0.2680217585227302 0.991128449431065 0 -9173 0.4838838502702783 0.4696969696981161 0 -9174 0.597604357837805 0.545454545455622 0 -9175 0.6413430145947933 0.3585858585873324 0 -9176 0.4576406562163152 0.414141414142549 0 -9177 0.4926315816219294 0.303030303031559 0 -9178 0.3351724172985012 0.05050505050530527 0 -9179 0.4663883875676265 0.5202020202028534 0 -9180 0.3439201486495754 0.1666666666672 0 -9181 0.3439201486487261 0.5101010101014528 0 -9182 0.6413430145945377 0.5505050505062221 0 -9183 0.7725589848659613 0.1010101010116756 0 -9184 0.3089292232430536 0.6212121212124284 0 -9185 0.8162976416216563 0.4494949494966059 0 -9186 0.6325952832433087 0.4545454545468323 0 -9187 0.1777132529733415 0.2222222222222924 0 -9188 0.5013793129730224 0.4494949494961385 0 -9189 0.5101270443246504 0.2929292929305902 0 -9190 0.06399274540475459 0.6818181818179558 0 -9191 0.4226497308117957 0.2121212121219402 0 -9192 0.4313974621610868 0.9242424242430075 0 -9193 0.4576406562157484 0.6868686868695755 0 -9194 0.3001814918910696 0.8484848484852032 0 -9195 0.483883850270352 0.5101010101019118 0 -9196 0.1164791335134568 0.479797979797748 0 -9197 0.9125226864855348 0.9292929292943243 0 -9198 0.6938294027025641 0.7020202020211563 0 -9199 0.7113248654051612 0.7020202020213332 0 -9200 0.6238475518919081 0.5202020202031865 0 -9201 0.5626134324325469 0.4848484848495462 0 -9202 0.825045372972108 0.8989898989910974 0 -9203 0.2476951037834326 0.6868686868688643 0 -9204 0.2389473724327494 0.3787878787881601 0 -9205 0.2301996410813839 0.3838383838386419 0 -9206 0.8862794924319517 0.7424242424253197 0 -9207 0.08148820810713157 0.8232323232323667 0 -9208 0.6238475518918749 0.5606060606071348 0 -9209 0.3526678800004709 0.3232323232329576 0 -9210 0.9650090745950473 0.4343434343456599 0 -9211 0.2739382978376063 0.6313131313133602 0 -9212 0.282893272411843 0.01912417822718465 0 -9213 0.5451179697307794 0.1717171717180402 0 -9214 0.4576406562162638 0.4444444444455621 0 -9215 0.06399274540477974 0.6717171717169281 0 -9216 0.4313974621622456 0.4191919191930063 0 -9217 0.5713611637847316 0.2070707070715801 0 -9218 0.2474046694785831 0.9906224049962614 0 -9219 0.3614156113514097 0.5202020202025128 0 -9220 0.1427223275683351 0.07070707070712332 0 -9221 0.8775317610818644 0.2525252525270123 0 -9222 0.8862794924332437 0.2474747474765167 0 -9223 0.09023592281001649 0.4747474747472383 0 -9224 0.3264246859455935 0.7020202020205543 0 -9225 0.4751361189177732 0.9393939393946239 0 -9226 0.3526678799990188 0.9191919191922945 0 -9227 0.238947372432866 0.3282828282831283 0 -9228 0.8162976416222464 0.2878787878804052 0 -9229 0.3176769545956166 0.1010101010104594 0 -9230 0.588856626486582 0.4898989899001057 0 -9231 0.5888566264866048 0.479797979799107 0 -9232 0.4401451935137708 0.3232323232334629 0 -9233 0.09898367081120461 0.2979797979798318 0 -9234 0.1689655216220252 0.3383838383840075 0 -9235 0.790054447568748 0.0707070707087059 0 -9236 0.6325952832431647 0.6868686868694591 0 -9237 0.623847551891808 0.6919191919199471 0 -9238 0.3876588054051849 0.6464646464651238 0 -9239 0.5626134324326029 0.3838383838397161 0 -9240 0.5626134324316655 0.8080808080818953 0 -9241 0.5188747756758848 0.3686868686881184 0 -9242 0.3089292232436859 0.3383838383843079 0 -9243 0.9125226864869812 0.4141414141434651 0 -9244 0.7725589848649004 0.5858585858598679 0 -9245 0.2826860291895273 0.3939393939397406 0 -9246 0.6238475518929438 0.1363636363647714 0 -9247 0.06399274540485785 0.6414141414138427 0 -9248 0.6150998205416681 0.1111111111122866 0 -9249 0.5976043578378384 0.6464646464653776 0 -9250 0.2914337605405757 0.5202020202023252 0 -9251 0.8950272237836727 0.5555555555571973 0 -9252 0.6063520891901242 0.1969696969706608 0 -9253 0.6850816713521757 0.19191919192034 0 -9254 0.6325954608577997 0.9494946418568087 0 -9255 0.2878675094782464 0.9910881260951542 0 -9256 0.3001814918916405 0.646464646464929 0 -9257 0.2127041783784747 0.4747474747476273 0 -9258 0.4576406562154881 0.7878787878796125 0 -9259 0.3089292232429074 0.6919191919195025 0 -9260 0.3264246859456058 0.691919191919522 0 -9261 0.343920420130281 0.9545449843239427 0 -9262 0.33857071391107 0.9911332658148139 0 -9263 0.9650090745957285 0.1919191919210022 0 -9264 0.4226497308102403 0.7272727272735104 0 -9265 0.2127041783777593 0.7979797979798753 0 -9266 0.1602177902706051 0.2323232323232547 0 -9267 0.6063520891893082 0.5909090909099584 0 -9268 0.9562613432441446 0.2979797979817024 0 -9269 0.5801088951356331 0.3333333333345589 0 -9270 0.9300181491891516 0.4848484848503489 0 -9271 0.2172075630536713 0.991929434054676 0 -9272 0.2127041783786962 0.3737373737375889 0 -9273 0.2564428351341064 0.9141414141416077 0 -9274 0.6500907459460196 0.4444444444458558 0 -9275 0.1427223275665517 0.9393939393939446 0 -9276 0.8337931043253198 0.1060606060622515 0 -9277 0.781306716215359 0.8939393939404925 0 -9278 0.1864609843241343 0.590909090909133 0 -9279 0.08148820810828607 0.3888888888886871 0 -9280 0.7113248654063651 0.1262626262639934 0 -9281 0.6763339400000645 0.4494949494963857 0 -9282 0.09898367081034366 0.6414141414139405 0 -9283 0.5363702383793588 0.2070707070715027 0 -9284 0.0814882081085742 0.2676767676768098 0 -9285 0.3439201486495247 0.2070707070712575 0 -9286 0.2039564470268017 0.6111111111111901 0 -9287 0.72007259675747 0.2222222222234382 0 -9288 0.05524501405300788 0.8282828282828002 0 -9289 0.7725589848655261 0.2525252525267931 0 -9290 0.291433760540693 0.4696969696973002 0 -9291 0.3176769545955658 0.1212121212125287 0 -9292 0.3992076015274034 0.9910731488303939 0 -9293 0.3176769545948149 0.4444444444448554 0 -9294 0.2214519097297551 0.5101010101011496 0 -9295 0.9737568059450629 0.8434343434350937 0 -9296 0.8075499102695594 0.8383838383852774 0 -9297 0.3439201486485866 0.5707070707074818 0 -9298 0.6238475518918851 0.5303030303041866 0 -9299 0.3351724172963774 0.8787878787882815 0 -9300 0.3089292232440163 0.2272727272732079 0 -9301 0.09023626551122939 0.9595936170044364 0 -9302 0.4313974621613432 0.8232323232330393 0 -9303 0.1339745962165416 0.2373737373736953 0 -9304 0.6938294027018715 0.8737373737387353 0 -9305 0.8775317610809631 0.5757575757591236 0 -9306 0.7288203281087446 0.2575757575772143 0 -9307 0.4313974621613705 0.8131313131320401 0 -9308 0.3176769545951736 0.2727272727278096 0 -9309 0.5888566264866362 0.398989898991258 0 -9310 0.4139019994588005 0.762626262626991 0 -9311 0.9387658805413158 0.3282828282847824 0 -9312 0.1514700589181203 0.8434343434343964 0 -9313 0.6500907459457982 0.7171717171725293 0 -9314 0.6238475518919778 0.439393939395317 0 -9315 0.5713611637839042 0.4191919191932365 0 -9316 0.03774850235727209 0.1515193659125681 0 -9317 0.2301996410807331 0.6767676767678159 0 -9318 0.7813067162160521 0.6818181818192752 0 -9319 0.7725589848647239 0.6767676767687608 0 -9320 0.3351724172974271 0.4848484848489176 0 -9321 0.4838838502695787 0.7727272727281744 0 -9322 0.4226497308105783 0.6464646464652319 0 -9323 0.5101270443253761 0.1818181818189556 0 -9324 0.1602177902696377 0.7676767676768159 0 -9325 0.2389473724331176 0.1666666666669677 0 -9326 0.1602177902698002 0.696969696969703 0 -9327 0.4313974621622283 0.4292929292940106 0 -9328 0.2739382978381855 0.3888888888892197 0 -9329 0.1077314021622442 0.4242424242422376 0 -9330 0.1689655216223155 0.1060606060606949 0 -9331 0.3789110740541218 0.5101010101016135 0 -9332 0.6675862086487471 0.4242424242438798 0 -9333 0.3701633427035401 0.2525252525258722 0 -9334 0.1252268648651169 0.3535353535353656 0 -9335 0.4488929248658831 0.2070707070714943 0 -9336 0.4139019994583432 0.944444444444939 0 -9337 0.4401451935135206 0.4646464646475398 0 -9338 0.4838838502704925 0.3484848484860613 0 -9339 0.5538657010800874 0.8838383838393694 0 -9340 0.9037749551360087 0.2373737373755203 0 -9341 0.2826860291897674 0.2525252525257062 0 -9342 0.3789110740531784 0.853535353535896 0 -9343 0.5976043578374295 0.7373737373747319 0 -9344 0.9475136118926216 0.3636363636384213 0 -9345 0.03765175961380129 0.6461856170175831 0 -9346 0.3176769545948407 0.4343434343438508 0 -9347 0.8162976416223832 0.2070707070722776 0 -9348 0.2564428351340509 0.9444444444445806 0 -9349 0.2651905664854006 0.9393939393941036 0 -9350 0.2301996410807308 0.6969696969697937 0 -9351 0.1077314021621894 0.4444444444442295 0 -9352 0.475136118918887 0.5555555555563614 0 -9353 0.5363702383792535 0.2373737373745722 0 -9354 0.8775317610806207 0.7474747474757906 0 -9355 0.5363702383776424 0.7929292929303184 0 -9356 0.3351724172971504 0.606060606060981 0 -9357 0.7113248654049196 0.7626262626275239 0 -9358 0.3526678800009573 0.1616161616167087 0 -9359 0.9912522686485333 0.6616161616172799 0 -9360 0.3527220916328211 0.03001348009259796 0 -9361 0.4313974621623511 0.3585858585869763 0 -9362 0.0814882081085135 0.2070707070705886 0 -9363 0.4226497308101396 0.7676767676775145 0 -9364 0.6938294027020651 0.7727272727287049 0 -9365 0.8162976416215471 0.6111111111124438 0 -9366 0.7113248654055057 0.570707070708261 0 -9367 0.5801088951352245 0.6060606060613836 0 -9368 0.1689655216207076 0.8939393939394554 0 -9369 0.1864609843249948 0.1262626262627682 0 -9370 0.2564428351358243 0.2070707070710785 0 -9371 0.2564428351358133 0.1868686868690456 0 -9372 0.5538657010813761 0.3585858585871074 0 -9373 0.536370238379425 0.1767676767685188 0 -9374 0.5101245499021333 0.9794128959932011 0 -9375 0.5451179697307131 0.2020202020210245 0 -9376 0.7725589848656639 0.1616161616175816 0 -9377 0.7988021789188949 0.6010101010114127 0 -9378 0.8775317610819623 0.2020202020218429 0 -9379 0.3789110740540262 0.560606060606561 0 -9380 0.2826860291894026 0.4444444444447687 0 -9381 0.1366431544196795 0.991059965788226 0 -9382 0.7900544475674782 0.6363636363648578 0 -9383 0.6413430145945056 0.6919191919199764 0 -9384 0.1252268648647794 0.4949494949492785 0 -9385 0.7725589848655781 0.2222222222237145 0 -9386 0.0814882081075772 0.6515151515149197 0 -9387 0.2301996410816966 0.1919191919194976 0 -9388 0.3176769545941915 0.7272727272730537 0 -9389 0.4488929248642263 0.7525252525260768 0 -9390 0.5888566264877346 0.07575757575860748 0 -9391 0.2914337605405037 0.5505050505053428 0 -9392 0.6500907459459757 0.6262626262635611 0 -9393 0.2564428351359436 0.1060606060608324 0 -9394 0.3089292232423417 0.8737373737377192 0 -9395 0.4751361189187354 0.6262626262633759 0 -9396 0.2564428351353734 0.4292929292932003 0 -9397 0.1252268648644612 0.6363636363634889 0 -9398 0.04649560929051992 0.3888830158354433 0 -9399 0.702577134054675 0.2626262626276664 0 -9400 0.5276225070271597 0.4141414141426703 0 -9401 0.1574869540897628 0.990668937909374 0 -9402 0.7288203281095919 0.05555555555709598 0 -9403 0.6063520891894186 0.3484848484862785 0 -9404 0.7988021789189912 0.429292929294575 0 -9405 0.2564428351349585 0.6010101010102965 0 -9406 0.4838838502694148 0.8333333333341715 0 -9407 0.5188747756757139 0.5202020202029511 0 -9408 0.9387658805416537 0.1666666666683828 0 -9409 0.5013793129720034 0.8737373737382292 0 -9410 0.4926315816206673 0.868686868687701 0 -9411 0.3964065367568745 0.4191919191928801 0 -9412 0.3526678799999522 0.5656565656570017 0 -9413 0.4226497308096996 0.9393939393944706 0 -9414 0.2826860291894527 0.424242424242759 0 -9415 0.8250453729736936 0.2424242424258777 0 -9416 0.991252268648493 0.7121212121219932 0 -9417 0.08148820810855664 0.1868686868685978 0 -9418 0.6413430145947513 0.3888888888903349 0 -9419 0.5013793129730927 0.4191919191931276 0 -9420 0.1339745962163582 0.3989898989898569 0 -9421 0.7375680594600327 0.2929292929307599 0 -9422 0.9912522686485451 0.621212121213482 0 -9423 0.4401451935149173 0.06060606060670692 0 -9424 0.4051542681092852 0.1212121212127381 0 -9425 0.2564428351352568 0.4797979797982176 0 -9426 0.9212704178374371 0.6313131313147382 0 -9427 0.9125226864861078 0.6363636363652033 0 -9428 0.9912522686484819 0.8636363636361957 0 -9429 0.2389473724333188 0.04545454545457471 0 -9430 0.7288203281079416 0.702020202021179 0 -9431 0.9475136118910109 0.9292929292944009 0 -9432 0.2039564470267573 0.6313131313132154 0 -9433 0.772558984863964 0.9090909090919825 0 -9434 0.5276225070270162 0.6161616161623185 0 -9435 0.9912522686485256 0.6414141414153792 0 -9436 0.221451909730442 0.1060606060607669 0 -9437 0.4751361189196713 0.2424242424251793 0 -9438 0.1252268648651857 0.3333333333333789 0 -9439 0.3614156113526309 0.0555555555558965 0 -9440 0.6500907459451702 0.8282828282841366 0 -9441 0.2389473724322733 0.5909090909092484 0 -9442 0.9912522686485032 0.7323232323238865 0 -9443 0.5451179697288367 0.8484848484858416 0 -9444 0.2826860291902379 0.04040404040414 0 -9445 0.4226497308109379 0.3939393939404818 0 -9446 0.6500907459463772 0.3232323232337121 0 -9447 0.9475136118917997 0.5050505050523695 0 -9448 0.3001814918917535 0.5959595959598941 0 -9449 0.7463157908113209 0.3282828282843064 0 -9450 0.2039564470260808 0.8939393939395307 0 -9451 0.5101270443232183 0.9191919191927168 0 -9452 0.3614156113506781 0.7727272727278662 0 -9453 0.361415611350726 0.7626262626268622 0 -9454 0.5713611637827853 0.8939393939404437 0 -9455 0.2476951037844925 0.1616161616164719 0 -9456 0.6210063297651621 0.008932791410969443 0 -9457 0.5363702383774107 0.8737373737383228 0 -9458 0.1864609843239969 0.651515151515214 0 -9459 0.1864609843242281 0.5505050505050935 0 -9460 0.1602177902696138 0.7777777777778315 0 -9461 0.1514700589182627 0.7727272727273358 0 -9462 0.8950272237845388 0.2828282828301031 0 -9463 0.05524429957798093 0.6969697073523148 0 -9464 0.3176769545956932 0.07070707070734422 0 -9465 0.4663883875677307 0.3787878787890478 0 -9466 0.8600362983785532 0.3939393939411913 0 -9467 0.6850816713512846 0.6767676767685633 0 -9468 0.6675862086486597 0.6363636363645884 0 -9469 0.6588384772972561 0.5404040404052639 0 -9470 0.9737564777417779 0.03535136022840647 0 -9471 0.6413430145941432 0.7626262626273356 0 -9472 0.06399274540595272 0.1464646464645711 0 -9473 0.1252268648648023 0.4848484848482745 0 -9474 0.9037749551358579 0.3080808080826805 0 -9475 0.9037749551358386 0.3181818181837044 0 -9476 0.7550635221635189 0.06060606060764016 0 -9477 0.1077314021625209 0.2222222222221365 0 -9478 0.6325952832442676 0.1414141414152828 0 -9479 0.9300181491899053 0.3434343434363175 0 -9480 0.7988021789188081 0.6414141414153708 0 -9481 0.9212704178387787 0.2272727272745269 0 -9482 0.1777113890821484 0.05050604099870418 0 -9483 0.2914337605414092 0.1363636363640008 0 -9484 0.8862794924315657 0.9040404040417305 0 -9485 0.4576406562172542 0.2020202020210074 0 -9486 0.7463970859313385 0.02528668738896479 0 -9487 0.8950272237830199 0.8484848484856123 0 -9488 0.3001814918929086 0.08080808080834126 0 -9489 0.2914337605415398 0.07575757575780317 0 -9490 0.6150998205398195 0.797979797981033 0 -9491 0.4139019994607093 0.09595959596022295 0 -9492 0.8075499102704803 0.3636363636380845 0 -9493 0.5188747756770721 0.07575757575842329 0 -9494 0.924429197514956 0.9910569352455791 0 -9495 0.5713611637836831 0.6717171717178844 0 -9496 0.9475136118910792 0.8080808080817017 0 -9497 0.4139019994588791 0.7323232323239899 0 -9498 0.7323895015834512 0.00890653349224947 0 -9499 0.7375680594600162 0.3030303030317773 0 -9500 0.3001814918927124 0.2020202020206411 0 -9501 0.4926315816215658 0.5656565656574108 0 -9502 0.2564428351358647 0.1464646464649516 0 -9503 0.2651905664870681 0.2424242424246609 0 -9504 0.09898367081122596 0.2878787878788389 0 -9505 0.8950272237838015 0.4646464646483023 0 -9506 0.8950272237838881 0.4545454545473424 0 -9507 0.3964065367580327 0.06565656565709463 0 -9508 0.4051542681073387 0.8080808080814663 0 -9509 0.2826860291894279 0.4343434343437644 0 -9510 0.5888566264874819 0.1767676767686413 0 -9511 0.3001814918924668 0.2626262626267585 0 -9512 0.1427223275673971 0.5656565656565009 0 -9513 0.9562613432424614 0.7424242424253779 0 -9514 0.1427223275677858 0.3737373737374067 0 -9515 0.7813067162161451 0.631313131314343 0 -9516 0.07597488318115526 0.9911287230832075 0 -9517 0.1864609843234014 0.883838383838513 0 -9518 0.1952087156925275 0.9393939393630413 0 -9519 0.5363702383784861 0.4292929292941849 0 -9520 0.6763339399998834 0.7020202020210407 0 -9521 0.1427223275679443 0.2121212121212078 0 -9522 0.4926315816206953 0.8585858585866939 0 -9523 0.8637743000853557 0.008862472861400935 0 -9524 0.2651905664872546 0.1515151515154843 0 -9525 0.5888566264857145 0.813131313132471 0 -9526 0.2301996410805627 0.7676767676768506 0 -9527 0.7813067162163709 0.3888888888905574 0 -9528 0.1602177902700694 0.5858585858585671 0 -9529 0.7025771340539776 0.6767676767686122 0 -9530 0.3789110740538839 0.6212121212125897 0 -9531 0.6238475518928047 0.1969696969706952 0 -9532 0.04649358214119383 0.4494949494945494 0 -9533 0.07274047675732816 0.1313131313130816 0 -9534 0.457640656216279 0.5151515151523512 0 -9535 0.08148820810833254 0.3686868686867164 0 -9536 0.1252268648654064 0.1515151515151938 0 -9537 0.4190268829888806 0.9911533184689154 0 -9538 0.9912522686485562 0.5808080808097066 0 -9539 0.501379312973163 0.3686868686881032 0 -9540 0.3001814918920334 0.474747474747823 0 -9541 0.7725589848654886 0.2727272727288149 0 -9542 0.9562613432424 0.8232323232331713 0 -9543 0.125226864863918 0.9090909090908892 0 -9544 0.8512885670262444 0.8636363636376254 0 -9545 0.8600362983776326 0.8585858585869892 0 -9546 0.6763339399993105 0.7929292929306807 0 -9547 0.5801088951353041 0.3838383838397434 0 -9548 0.7813067162150095 0.9444444444455061 0 -9549 0.606352089188538 0.7727272727284837 0 -9550 0.2651905664859612 0.7777777777779376 0 -9551 0.5013793129740267 0.1868686868694407 0 -9552 0.3526678799997688 0.6464646464650406 0 -9553 0.9562613432423769 0.9343434343449304 0 -9554 0.9562613432423923 0.9242424242438987 0 -9555 0.7988021789187864 0.651515151516358 0 -9556 0.5805989389738132 0.009785303941050524 0 -9557 0.7200725967567791 0.6161616161627262 0 -9558 0.2826860291900662 0.111111111111406 0 -9559 0.04649685995406144 0.1767676805073666 0 -9560 0.1864609843239379 0.6717171717172215 0 -9561 0.3789110740530665 0.9141414141418789 0 -9562 0.9125226864864732 0.474747474749331 0 -9563 0.2299983465209431 0.02021613112349814 0 -9564 0.4751361189187093 0.636363636364375 0 -9565 0.8250453729740213 0.09090909091072656 0 -9566 0.9912522686484984 0.8131313131314063 0 -9567 0.3439201486483224 0.691919191919586 0 -9568 0.4139019994593386 0.601010101010659 0 -9569 0.6763339400007099 0.2272727272738574 0 -9570 0.6500907459468722 0.1717171717182781 0 -9571 0.9387658805401978 0.5808080808099407 0 -9572 0.06399274540436529 0.9545454545453198 0 -9573 0.1339745962154605 0.8232323232323535 0 -9574 0.3176769545949449 0.3939393939398299 0 -9575 0.7288203281086172 0.3282828282842761 0 -9576 0.6500907459461506 0.3535353535368454 0 -9577 0.256442835135233 0.4898989898992215 0 -9578 0.2914337605400584 0.7626262626264981 0 -9579 0.1427223275674247 0.5555555555554905 0 -9580 0.6325952832433782 0.4040404040418237 0 -9581 0.4488929248646006 0.6616161616168152 0 -9582 0.4488929248645335 0.6717171717178836 0 -9583 0.2476951037842328 0.3232323232326443 0 -9584 0.7113248654047152 0.7929292929307605 0 -9585 0.9475136118930424 0.1010101010119295 0 -9586 0.7900544475669586 0.8080808080820764 0 -9587 0.247695103783352 0.737373737373867 0 -9588 0.8862794924318167 0.8030303030311208 0 -9589 0.30018149189085 0.9090909090912012 0 -9590 0.8687840297296199 0.5808080808095977 0 -9591 0.2826860291900213 0.141414141414496 0 -9592 0.3789110742489895 0.9444444441053589 0 -9593 0.04649728270156952 0.8535353535353433 0 -9594 0.09898367081036928 0.6313131313129171 0 -9595 0.387658805404464 0.8787878787884102 0 -9596 0.195208715675503 0.5858585858586463 0 -9597 0.4396148374935867 0.9902173381772482 0 -9598 0.440145193514614 0.1717171717179362 0 -9599 0.6588384772965333 0.8232323232336487 0 -9600 0.3614156113512948 0.5707070707075252 0 -9601 0.7988021789187474 0.6717171717183278 0 -9602 0.8075499102708971 0.2828282828298848 0 -9603 0.6238475518919664 0.4494949494963198 0 -9604 0.4488929248659599 0.1767676767684676 0 -9605 0.02869703592700506 0.6717560699961544 0 -9606 0.4226497308102933 0.7070707070715041 0 -9607 0.790054447567732 0.3838383838400701 0 -9608 0.9125226864864349 0.5050505050522996 0 -9609 0.5713611637839461 0.3888888888902299 0 -9610 0.5713611637837476 0.5505050505060614 0 -9611 0.9475136118930378 0.1515151515168567 0 -9612 0.2564428351346207 0.7727272727274137 0 -9613 0.4751361189186157 0.6666666666674081 0 -9614 0.1864609843247536 0.1969696969697982 0 -9615 0.1777132529728797 0.5454545454545622 0 -9616 0.3351724172981692 0.2020202020207303 0 -9617 0.702577134054964 0.1515151515164145 0 -9618 0.5976043578379538 0.474747474748647 0 -9619 0.7900544475681068 0.3030303030319106 0 -9620 0.7550635221627592 0.2828282828297862 0 -9621 0.3351724172984792 0.06060606060634541 0 -9622 0.6938294027026418 0.6717171717180908 0 -9623 0.4313974621621721 0.4797979797990117 0 -9624 0.6325952832425297 0.7979797979810779 0 -9625 0.8600362983785713 0.3838383838401829 0 -9626 0.4313974621623176 0.3787878787889884 0 -9627 0.4226497308109877 0.3636363636374668 0 -9628 0.2127041783778957 0.7474747474747925 0 -9629 0.5451179697299025 0.3838383838396878 0 -9630 0.571361163783884 0.6010101010108641 0 -9631 0.895027223784557 0.2727272727290775 0 -9632 0.5451179697297769 0.5151515151525062 0 -9633 0.7638112535133037 0.7121212121222071 0 -9634 0.8775317610807239 0.6868686868699658 0 -9635 0.6063520891892337 0.5101010101021448 0 -9636 0.1339745962161693 0.4898989898988229 0 -9637 0.2826854401463278 0.9595947807639118 0 -9638 0.1864609843249758 0.1363636363637898 0 -9639 0.04649604100633042 0.07575757575743579 0 -9640 0.5976043578381171 0.343434343435755 0 -9641 0.2389473724332737 0.06565656565665361 0 -9642 0.300181491892008 0.4848484848488249 0 -9643 0.5101270443244575 0.4040404040416368 0 -9644 0.8075499102699975 0.7373737373746979 0 -9645 0.6675862086487789 0.4040404040418784 0 -9646 0.1164791335132924 0.5707070707069063 0 -9647 0.2739382978386355 0.1363636363639626 0 -9648 0.5633133141718824 0.01935164118402623 0 -9649 0.781306743715752 0.04545422781529976 0 -9650 0.6011807036904514 0.008848659915082734 0 -9651 0.06399274540444704 0.8030303030302655 0 -9652 0.06399274540447425 0.7929292929292425 0 -9653 0.9737568059459026 0.4696969696989214 0 -9654 0.623847551891481 0.7525252525262648 0 -9655 0.5188747756751346 0.7121212121222342 0 -9656 0.8950272237829116 0.9090909090922514 0 -9657 0.4226497308099073 0.8585858585865102 0 -9658 0.3351724172964057 0.8686868686872873 0 -9659 0.06399274540550043 0.429292929292613 0 -9660 0.9912522686485867 0.6010101010116061 0 -9661 0.8775323068484098 0.9393926021863968 0 -9662 0.5976043578387283 0.2222222222231244 0 -9663 0.6675862086478711 0.8282828282841732 0 -9664 0.5453746607369747 0.01916308620677494 0 -9665 0.536315662617899 0.0160229819257971 0 -9666 0.4895959762242176 0.9912464195691842 0 -9667 0.6150998205407521 0.3535353535367928 0 -9668 0.790054447567649 0.5555555555569244 0 -9669 0.9300181491884099 0.8383838383847385 0 -9670 0.7638112535143082 0.1666666666680519 0 -9671 0.6150998205414753 0.1919191919201832 0 -9672 0.3701633427025427 0.616161616162067 0 -9673 0.8425408356748293 0.8888888888901272 0 -9674 0.5363702383782991 0.6616161616168086 0 -9675 0.7375680594602271 0.2020202020214791 0 -9676 0.06398554457715164 0.4898989900976434 0 -9677 0.1689655216219465 0.2373737373737785 0 -9678 0.56261359035297 0.05050532403005804 0 -9679 0.5013793129743809 0.0757575757583802 0 -9680 0.9475136118913164 0.6666666666681784 0 -9681 0.4838838502695051 0.8030303030311796 0 -9682 0.8775317610811326 0.4545454545472674 0 -9683 0.4488929248649199 0.4393939393950444 0 -9684 0.2739382978377204 0.5808080808083212 0 -9685 0.1077314021625402 0.212121212121134 0 -9686 0.4139019994585668 0.8535353535359866 0 -9687 0.7463157908115762 0.1868686868699868 0 -9688 0.6850816713514463 0.4242424242439042 0 -9689 0.5888566264856573 0.8333333333344854 0 -9690 0.6850816713519046 0.2929292929306467 0 -9691 0.7463157908114549 0.2575757575772493 0 -9692 0.7375680594593579 0.6767676767686904 0 -9693 0.6938294027034563 0.217171717172849 0 -9694 0.6938305193278878 0.04545561675366157 0 -9695 0.8337931043234528 0.9040404040416176 0 -9696 0.9650090745953553 0.3232323232343079 0 -9697 0.3789110740551897 0.1060606060611608 0 -9698 0.632613224147512 0.9796916391723128 0 -9699 0.4576406562152974 0.8585858585866025 0 -9700 0.8950272237840101 0.3838383838402415 0 -9701 0.8250453729722685 0.8383838383851077 0 -9702 0.7813067162173836 0.07575757575921403 0 -9703 0.8600362983782984 0.5757575757590851 0 -9704 0.3264246859457856 0.6111111111114624 0 -9705 0.4401451935128879 0.747474747475554 0 -9706 0.6588384772973161 0.6313131313140766 0 -9707 0.9387658805403861 0.5303030303048286 0 -9708 0.2127041783773874 0.9191919191920253 0 -9709 0.2651905664857799 0.8181818181820822 0 -9710 0.9300181491900754 0.2626262626281 0 -9711 0.1602177902700454 0.5959595959595787 0 -9712 0.2039564470265243 0.752525252525294 0 -9713 0.7463157908109362 0.550505050506336 0 -9714 0.9650090745956496 0.1212121212139647 0 -9715 0.4576406562175644 0.09090909090980143 0 -9716 0.886279492432241 0.6010101010116025 0 -9717 0.807549910270952 0.252525252526855 0 -9718 0.3351724172963327 0.8989898989902692 0 -9719 0.2914337605394264 0.9343434343436599 0 -9720 0.6763339399992406 0.8232323232336898 0 -9721 0.09023593945846238 0.8383838383839319 0 -9722 0.4313974621615021 0.7626262626270359 0 -9723 0.1864609843238355 0.7222222222222842 0 -9724 0.4313974621621626 0.4696969696980232 0 -9725 0.4226497308107018 0.5959595959601792 0 -9726 0.8425408356751934 0.7878787878797748 0 -9727 0.3614156113505311 0.8333333333338583 0 -9728 0.7463157908114733 0.2474747474762427 0 -9729 0.9387658805398897 0.7222222222234186 0 -9730 0.9125224116212335 0.06060653669031339 0 -9731 0.02866417833351216 0.8029871437790098 0 -9732 0.5801088951363933 0.08080808080907258 0 -9733 0.09898367080998589 0.7828282828283311 0 -9734 0.7811382870231061 0.9746255558827571 0 -9735 0.431397462162066 0.5909090909097031 0 -9736 0.676333940000105 0.4191919191933918 0 -9737 0.545106752770568 0.9595819933341801 0 -9738 0.457640656215081 0.9393939393945802 0 -9739 0.1514700589180297 0.8838383838384173 0 -9740 0.1602177902693841 0.8787878787879438 0 -9741 0.08148820810712623 0.9242424242423272 0 -9742 0.3789110740540981 0.5303030303035554 0 -9743 0.4840144365922202 0.9746668572538844 0 -9744 0.6675862086477328 0.92929292929402 0 -9745 0.5188747756756378 0.5808080808089472 0 -9746 0.7988021789198787 0.1262626262642405 0 -9747 0.6325952832441719 0.181818181819225 0 -9748 0.09023593542075327 0.5151515151954382 0 -9749 0.5888566264859579 0.7424242424253585 0 -9750 0.2564428351341486 0.8939393939396127 0 -9751 0.1164791335126378 0.8737373737373619 0 -9752 0.8425395547596549 0.959593680468217 0 -9753 0.7725589848655081 0.2626262626278052 0 -9754 0.2127041783774194 0.8989898989900412 0 -9755 0.5363702383773764 0.8838383838393173 0 -9756 0.807534758899465 0.9696946471060893 0 -9757 0.9562613432425722 0.6919191919205877 0 -9758 0.3089292232426757 0.7929292929295566 0 -9759 0.2127041783782666 0.5656565656566688 0 -9760 0.9737568059465782 0.3686868686890026 0 -9761 0.8075499102695913 0.8282828282841412 0 -9762 0.7025771340549367 0.161616161617401 0 -9763 0.3439201486484043 0.651515151515523 0 -9764 0.947513488339661 0.04040136545484421 0 -9765 0.7813067162164407 0.3484848484865367 0 -9766 0.06399250445853116 0.7121212144526068 0 -9767 0.8775317610812684 0.4141414141432666 0 -9768 0.8162976416207405 0.904040404041581 0 -9769 0.04648654505392075 0.9343813102041162 0 -9770 0.6675862086494856 0.1919191919202967 0 -9771 0.3701633427019596 0.797979797980386 0 -9772 0.5538659813008091 0.9545423812800612 0 -9773 0.1164791335133288 0.54040404040382 0 -9774 0.2039564470274959 0.3080808080810422 0 -9775 0.3526678799999777 0.5555555555559976 0 -9776 0.6938294027021455 0.762626262627615 0 -9777 0.1077314021613517 0.7878787878788935 0 -9778 0.352667879999196 0.8282828282833382 0 -9779 0.4313974621615765 0.7323232323240311 0 -9780 0.4401451935129129 0.7373737373745514 0 -9781 0.1164169728345339 0.0354601699632418 0 -9782 0.04649691510551591 0.2070704443174079 0 -9783 0.4313974621623006 0.3888888888899932 0 -9784 0.05524493466721584 0.6868686880220993 0 -9785 0.0464967209659353 0.6919192012520472 0 -9786 0.4576406562152696 0.8686868686876013 0 -9787 0.7638112535127309 0.863636363637808 0 -9788 0.7725589848641049 0.8585858585873093 0 -9789 0.9562613432442004 0.2575757575776257 0 -9790 0.09898367081015752 0.7222222222221788 0 -9791 0.4051542681094766 0.04040404040453263 0 -9792 0.4663883875670294 0.7121212121221124 0 -9793 0.5013793129722344 0.7929292929302296 0 -9794 0.09023593945984706 0.2121212121211038 0 -9795 0.5538657010804299 0.7626262626273455 0 -9796 0.9562613432431972 0.4797979797999034 0 -9797 0.8950272237832666 0.7474747474758174 0 -9798 0.1077314021615381 0.7272727272727642 0 -9799 0.9037749551347957 0.6313131313147033 0 -9800 0.3351724172972919 0.5454545454549488 0 -9801 0.5188747756756867 0.5303030303039588 0 -9802 0.5976043578379939 0.3939393939407718 0 -9803 0.8862794924333187 0.2070707070723809 0 -9804 0.6675862086485179 0.5757575757587818 0 -9805 0.4401451935135728 0.4343434343445265 0 -9806 0.3089292232424267 0.8434343434347258 0 -9807 0.8775317610812502 0.4343434343452903 0 -9808 0.2476951037838459 0.5050505050507058 0 -9809 0.7200725967568233 0.4848484848499146 0 -9810 0.3701633427026598 0.5656565656570439 0 -9811 0.4401451935127627 0.7979797979805647 0 -9812 0.982504537297014 0.6060606060623458 0 -9813 0.247695103783616 0.5959595959597725 0 -9814 0.422649730812048 0.111111111111765 0 -9815 0.5363702383784145 0.5202020202029881 0 -9816 0.7550635221616606 0.777777777779005 0 -9817 0.7200725967582415 0.0606060606075754 0 -9818 0.6675862086488106 0.3838383838398743 0 -9819 0.2389473724329128 0.308080808081115 0 -9820 0.7113248654062149 0.186868686869904 0 -9821 0.7200725967575653 0.1818181818194301 0 -9822 0.3439201486486347 0.5505050505054725 0 -9823 0.1339745962155325 0.7626262626264289 0 -9824 0.1952087156754802 0.5959595959596556 0 -9825 0.151470058919354 0.1868686868687164 0 -9826 0.588856626486622 0.4090909090922625 0 -9827 0.3001814918927309 0.1919191919196306 0 -9828 0.7988021789189369 0.580808080809427 0 -9829 0.3176769545945604 0.5555555555559126 0 -9830 0.4051542681072064 0.8585858585864616 0 -9831 0.09023593945898731 0.6363636363634076 0 -9832 0.1164791333945165 0.06565656586395753 0 -9833 0.04649728270164909 0.8232323232322661 0 -9834 0.5626134324315762 0.8383838383849128 0 -9835 0.5013793129717696 0.9545454545461948 0 -9836 0.9387658805411827 0.3888888888909782 0 -9837 0.4313974621615271 0.7525252525260321 0 -9838 0.85128856702708 0.4595959595976971 0 -9839 0.8687840297306491 0.1565656565673219 0 -9840 0.7200725967563841 0.7373737373749558 0 -9841 0.5801088951342125 0.8686868686879406 0 -9842 0.5976043578388524 0.1616161616171786 0 -9843 0.7988021789187647 0.6616161616173434 0 -9844 0.1252253261257415 0.9595933736474406 0 -9845 0.8600362983791694 0.2323232323249264 0 -9846 0.7375680594589685 0.7676767676780348 0 -9847 0.7375680594599614 0.3333333333347936 0 -9848 0.510127044324287 0.5555555555564484 0 -9849 0.4926315816230102 0.08080808080885961 0 -9850 0.3876588054043903 0.9191919191923975 0 -9851 0.03764776359282745 0.02025539359456423 0 -9852 0.09898366961405247 0.07575757783159233 0 -9853 0.5188747756765508 0.2373737373745529 0 -9854 0.2301996410800101 0.9494949494950252 0 -9855 0.2039564470277714 0.05555555555554482 0 -9856 0.5626134324313212 0.9292929292938518 0 -9857 0.8250453729721909 0.8686868686880909 0 -9858 0.6500907459456381 0.7373737373747236 0 -9859 0.7725589848648627 0.6060606060618493 0 -9860 0.7725589848651112 0.343434343436002 0 -9861 0.6938294027033121 0.2676767676781504 0 -9862 0.3264246859462059 0.4292929292933716 0 -9863 0.3001814918918493 0.555555555555869 0 -9864 0.1077314021614439 0.7575757575758266 0 -9865 0.5451179697294876 0.6767676767684837 0 -9866 0.9300181491902253 0.191919191920945 0 -9867 0.6150998205394883 0.9494949494959726 0 -9868 0.8425408356753272 0.7373737373747633 0 -9869 0.9475136118929556 0.2020202020220084 0 -9870 0.2914337605416352 0.03535353535363758 0 -9871 0.6500907459459212 0.5353535353547435 0 -9872 0.3439201486481758 0.752525252525679 0 -9873 0.5363702383785021 0.4191919191931829 0 -9874 0.8250453729725938 0.7676767676777008 0 -9875 0.930018149188633 0.696969696971014 0 -9876 0.6150998205415916 0.1414141414152441 0 -9877 0.763811253513329 0.7020202020212136 0 -9878 0.8512885670271163 0.5202020202035971 0 -9879 0.5013793721365292 0.04545416715588162 0 -9880 0.4926315816214817 0.6161616161624338 0 -9881 0.5538657010804836 0.7424242424253338 0 -9882 0.317676954594422 0.6161616161619461 0 -9883 0.3876588054066445 0.0707070707075885 0 -9884 0.7988021789183697 0.7828282828295436 0 -9885 0.8162976416223661 0.217171717173293 0 -9886 0.3001814918917318 0.6060606060608997 0 -9887 0.7988021789179671 0.9242424242435521 0 -9888 0.3176769545949688 0.3838383838388263 0 -9889 0.658838477297535 0.3383838383853576 0 -9890 0.2739382978372729 0.7929292929294769 0 -9891 0.7025771340541451 0.4242424242439286 0 -9892 0.816297641622266 0.2777777777793938 0 -9893 0.3089292232432163 0.5505050505053883 0 -9894 0.3351724172970394 0.6565656565660061 0 -9895 0.2389473724321854 0.6313131313132907 0 -9896 0.8337931043239479 0.7626262626271998 0 -9897 0.2651905664873337 0.1010101010103359 0 -9898 0.2476951037827176 0.9393939393940691 0 -9899 0.9212704178386257 0.2979797979816899 0 -9900 0.7813067162162248 0.4797979797995509 0 -9901 0.7463157908096973 0.9545454545464676 0 -9902 0.09898367081007259 0.7525252525252542 0 -9903 0.1077314021616088 0.7070707070707191 0 -9904 0.1514700589193082 0.2070707070707239 0 -9905 0.5363702383772636 0.9242424242432783 0 -9906 0.6588384772973045 0.5202020202032659 0 -9907 0.9037749551344939 0.792929292930182 0 -9908 0.2301996410801384 0.8787878787880786 0 -9909 0.1077314021615073 0.7373737373737834 0 -9910 0.562613432433465 0.1717171717180807 0 -9911 0.9650090745953267 0.343434343436361 0 -9912 0.50137931297299 0.5303030303039156 0 -9913 0.9125226864863849 0.5353535353552696 0 -9914 0.501379312972567 0.6818181818191249 0 -9915 0.1077314021614122 0.7676767676768506 0 -9916 0.03774955135026365 0.8282828282827561 0 -9917 0.7025771340541307 0.5656565656577679 0 -9918 0.5363702383776148 0.8030303030313206 0 -9919 0.9037749551348241 0.6212121212137142 0 -9920 0.3264246859459264 0.5505050505054304 0 -9921 0.6500907459459652 0.5151515151527453 0 -9922 0.4226497308120953 0.09090909090972749 0 -9923 0.6588384772981962 0.1767676767687897 0 -9924 0.5888566264866484 0.3888888888902571 0 -9925 0.1427223275665697 0.9292929292929473 0 -9926 0.9037749245955156 0.06565661855635645 0 -9927 0.8950272237831363 0.8080808080816249 0 -9928 0.4051542681073905 0.787878787879471 0 -9929 0.2564428351347238 0.7323232323233817 0 -9930 0.6500907459452397 0.7979797979811214 0 -9931 0.5538657010812361 0.3989898989912077 0 -9932 0.860036298379414 0.07070707070878229 0 -9933 0.265190566486351 0.5858585858588043 0 -9934 0.9300709561414285 0.03003712172472778 0 -9935 0.9037749517427982 0.0757575816368796 0 -9936 0.9475136118930219 0.171717171718916 0 -9937 0.2651905664861813 0.6666666666668888 0 -9938 0.2564428351349842 0.5909090909092882 0 -9939 0.4751361189187806 0.6060606060613735 0 -9940 0.8775317610818214 0.2727272727290512 0 -9941 0.4139019994595954 0.3888888888899659 0 -9942 0.9125226864857527 0.8282828282836675 0 -9943 0.7200725967568083 0.5959595959607584 0 -9944 0.2039564470260532 0.914141414141513 0 -9945 0.6763339400008479 0.1868686868698219 0 -9946 0.07274047675624519 0.6363636363633582 0 -9947 0.7988021789196298 0.1969696969711309 0 -9948 0.07274047675743171 0.06060606060596542 0 -9949 0.7638112535142396 0.1969696969710329 0 -9950 0.3089292232430777 0.6111111111114239 0 -9951 0.8600362983775098 0.8989898989911695 0 -9952 0.7900544475655048 0.949494949493195 0 -9953 0.9475136118910399 0.9090909090923114 0 -9954 0.9912522686486286 0.4494949494968626 0 -9955 0.807549910270255 0.5959595959609398 0 -9956 0.1952087156751606 0.737373737373815 0 -9957 0.6938294027041103 0.0656565656581182 0 -9958 0.09023589921203475 0.5353535384415572 0 -9959 0.6150998205404511 0.696969696970452 0 -9960 0.05524485891411536 0.04040412175336485 0 -9961 0.9387658805412281 0.3686868686889151 0 -9962 0.7725589848642994 0.7979797979810542 0 -9963 0.8600362983780001 0.7272727272738283 0 -9964 0.9125219179098382 0.9595934048464542 0 -9965 0.8950272237832267 0.7676767676777423 0 -9966 0.2914337605414669 0.106060606060907 0 -9967 0.7375680594596035 0.393939393940989 0 -9968 0.877531761080442 0.8282828282835507 0 -9969 0.9300181491902065 0.2020202020219768 0 -9970 0.7200725967571361 0.3535353535368747 0 -9971 0.4838838502701697 0.590909090909903 0 -9972 0.6675862086487953 0.3939393939408778 0 -9973 0.5888566264856867 0.8232323232334782 0 -9974 0.5976043578369991 0.8383838383850113 0 -9975 0.658838477297509 0.3484848484863581 0 -9976 0.5276225070264106 0.747474747475776 0 -9977 0.6763339399991103 0.9242424242435173 0 -9978 0.8775317610820541 0.1515151515167705 0 -9979 0.6850816713512259 0.7070707070716152 0 -9980 0.9737568059469189 0.1666666666684345 0 -9981 0.6850816713505354 0.8484848484862155 0 -9982 0.6500907459458973 0.5454545454557427 0 -9983 0.2564428351351858 0.5101010101012293 0 -9984 0.4139019994604456 0.2070707070714157 0 -9985 0.2127041783779762 0.7171717171717666 0 -9986 0.8075499102701379 0.6464646464658789 0 -9987 0.3964065367562328 0.7121212121219449 0 -9988 0.5188747355818469 0.944444406944705 0 -9989 0.300181491890788 0.9393939393941682 0 -9990 0.4576406562151895 0.8989898989906006 0 -9991 0.2476951037842786 0.3030303030306316 0 -9992 0.8775317610808142 0.6363636363651337 0 -9993 0.6413430145945473 0.5606060606072025 0 -9994 0.6938294027028048 0.4191919191934177 0 -9995 0.396406536757832 0.1565656565662934 0 -9996 0.1864609628113894 0.9444443890952182 0 -9997 0.9300181491888174 0.6060606060623474 0 -9998 0.3264246859456759 0.6616161616164875 0 -9999 0.4313974621635335 0.06565656565719064 0 -10000 0.08148820810760381 0.6414141414138962 0 -10001 0.5713613392508889 0.04545484937115103 0 -10002 0.5451179697306919 0.21212121212202 0 -10003 0.9387658805412943 0.3383838383858169 0 -10004 0.1602177902699968 0.6161616161615939 0 -10005 0.5626134324318007 0.7575757575768596 0 -10006 0.2564428351360338 0.06565656565669013 0 -10007 0.2476951037834881 0.6565656565658373 0 -10008 0.772558984864758 0.6565656565667974 0 -10009 0.8687840297293341 0.7222222222233546 0 -10010 0.3614156113504219 0.8838383838388484 0 -10011 0.5363702383785437 0.388888888890174 0 -10012 0.7288123967075834 0.9646592092958358 0 -10013 0.1952087156754575 0.6060606060606658 0 -10014 0.6063520891903348 0.09595959596063623 0 -10015 0.728820328107353 0.8535353535367891 0 -10016 0.720072596756001 0.8484848484862785 0 -10017 0.2651905664864554 0.5454545454547733 0 -10018 0.9475136118924825 0.4141414141435613 0 -10019 0.5451179697286322 0.919191919192794 0 -10020 0.195208715675123 0.7676767676768125 0 -10021 0.4751361189188482 0.5757575757583768 0 -10022 0.3351724172975672 0.4242424242428993 0 -10023 0.9037749551361502 0.1666666666683244 0 -10024 0.5713643626794166 0.9545430807087558 0 -10025 0.06399249402245516 0.7323232323799708 0 -10026 0.7463157908101177 0.8232323232338068 0 -10027 0.8862794924319107 0.7626262626272382 0 -10028 0.4838838502692474 0.8939393939401804 0 -10029 0.5801088951361489 0.171717171718124 0 -10030 0.0902359394584924 0.8282828282829131 0 -10031 0.0639808584932106 0.9646258759122875 0 -10032 0.2564428351350899 0.550505050505254 0 -10033 0.5713611637837503 0.5606060606070247 0 -10034 0.08148778839488877 0.5505050961586083 0 -10035 0.71132486540505 0.7323232323244397 0 -10036 0.833791714868347 0.9646440479256184 0 -10037 0.1077314021625588 0.2929292929293534 0 -10038 0.2389473724322505 0.6010101010102574 0 -10039 0.9125226864856482 0.8888888888902626 0 -10040 0.7550635221619239 0.7171717171727432 0 -10041 0.8775317610820615 0.1111111111128168 0 -10042 0.3789110740552918 0.06565656565704847 0 -10043 0.08148796267867844 0.5303030402021124 0 -10044 0.7988021789190133 0.4191919191935782 0 -10045 0.9037749551347264 0.6717171717185669 0 -10046 0.685081671352339 0.1313131313144053 0 -10047 0.9650090745938292 0.7171717171730057 0 -10048 0.2916098735925373 0.02516648902558905 0 -10049 0.8687840297288035 0.9242424242437123 0 -10050 0.6850816713519676 0.2626262626276311 0 -10051 0.6675862086485206 0.5858585858597644 0 -10052 0.5801088951362325 0.1414141414151593 0 -10053 0.5363667424196504 0.954542881045957 0 -10054 0.6588384772966092 0.792929292930641 0 -10055 0.9037749551347437 0.6616161616176035 0 -10056 0.7638112535136647 0.5303030303043899 0 -10057 0.03772812815372915 0.8687094269844851 0 -10058 0.291433760540433 0.5808080808083604 0 -10059 0.8425408356753518 0.727272727273784 0 -10060 0.6675862086484899 0.7272727272735261 0 -10061 0.5976043578386844 0.2323232323241645 0 -10062 0.2651905664861975 0.6565656565658726 0 -10063 0.07274047675731067 0.1414141414140859 0 -10064 0.3089292232424544 0.8333333333337241 0 -10065 0.9037749551354055 0.3888888888907893 0 -10066 0.5538657010802988 0.8131313131323722 0 -10067 0.2476951037842968 0.2929292929296327 0 -10068 0.2039564470260696 0.9040404040405208 0 -10069 0.6063520891902696 0.1363636363647323 0 -10070 0.05521192319911923 0.969645368282702 0 -10071 0.3526678799992179 0.8181818181823411 0 -10072 0.6938294027034166 0.2272727272738883 0 -10073 0.7113248654055022 0.4191919191934421 0 -10074 0.7725590154198024 0.04040368747136261 0 -10075 0.5101270443236772 0.7575757575767414 0 -10076 0.1339745962160791 0.5505050505049629 0 -10077 0.4488929248661556 0.1060606060613101 0 -10078 0.4051542681082564 0.3939393939404445 0 -10079 0.3001814918909106 0.8989898989902083 0 -10080 0.3001814918929328 0.07070707070730521 0 -10081 0.947513611893037 0.1616161616178787 0 -10082 0.2039564470264119 0.7828282828283891 0 -10083 0.8075499102695274 0.8585858585872784 0 -10084 0.807549910270932 0.262626262627865 0 -10085 0.4751361189183652 0.7171717171726387 0 -10086 0.07274047675683083 0.4343434343431333 0 -10087 0.7288203281081862 0.4494949494964623 0 -10088 0.9912522686485761 0.5606060606078026 0 -10089 0.3876588054064299 0.1717171717178022 0 -10090 0.9300181491884322 0.8080808080816771 0 -10091 0.5601591748013903 0.008895698488344893 0 -10092 0.2389473724322055 0.621212121212279 0 -10093 0.9299434608708089 0.04031457578965182 0 -10094 0.1777132529732871 0.2424242424243003 0 -10095 0.1514700589185756 0.6313131313130573 0 -10096 0.5451179697306719 0.2222222222230156 0 -10097 0.3001814918914241 0.7575757575760173 0 -10098 0.8775317610821467 0.06060606060774937 0 -10099 0.7375680594587192 0.8484848484862996 0 -10100 0.2826860291890631 0.5858585858588425 0 -10101 0.7638112535130719 0.7525252525265048 0 -10102 0.4313974621632928 0.156565656566386 0 -10103 0.4051542681090525 0.2222222222229148 0 -10104 0.2389473724323864 0.5505050505052068 0 -10105 0.6063027755840923 0.9748337664696174 0 -10106 0.5013793129723567 0.7424242424252135 0 -10107 0.1077314021627161 0.141414141414155 0 -10108 0.9300181491891745 0.4747474747493585 0 -10109 0.4401451935146423 0.161616161616927 0 -10110 0.0902358767433908 0.5555555620939959 0 -10111 0.2914337605398158 0.8232323232326494 0 -10112 0.8600362983789912 0.3232323232341493 0 -10113 0.6763339400006066 0.2676767676781132 0 -10114 0.6675862086492672 0.2626262626275961 0 -10115 0.1164791335139162 0.2878787878788741 0 -10116 0.5101269997757374 0.9494949078284574 0 -10117 0.1514700589186765 0.6010101010100487 0 -10118 0.4576406562155141 0.7777777777786096 0 -10119 0.545118112204485 0.0505052972770553 0 -10120 0.2651905664868723 0.3535353535356979 0 -10121 0.3001814918914604 0.7474747474749982 0 -10122 0.2127041783786075 0.4242424242426112 0 -10123 0.4926315816208383 0.8080808080816994 0 -10124 0.4838838502697283 0.7121212121221653 0 -10125 0.9387656071415112 0.9545449152838865 0 -10126 0.4313974621616271 0.7121212121220252 0 -10127 0.5538657010799743 0.9242424242433227 0 -10128 0.6588384772979785 0.2373737373750114 0 -10129 0.9475136118925985 0.3737373737394555 0 -10130 0.02887613586059188 0.8333305473874284 0 -10131 0.2389473724322281 0.6111111111112671 0 -10132 0.9125226864871969 0.3232323232342323 0 -10133 0.1514700589193297 0.1969696969697192 0 -10134 0.9475136118910851 0.7979797979807273 0 -10135 0.4838838502701117 0.6212121212129105 0 -10136 0.8949686040166226 0.03076119241295887 0 -10137 0.5451179697289033 0.8282828282838517 0 -10138 0.8077118323462771 0.9793136540887368 0 -10139 0.1952087156754353 0.6161616161616772 0 -10140 0.5451179697289549 0.8080808080818441 0 -10141 0.2564428351341273 0.9040404040406076 0 -10142 0.1164763077645345 0.9646422833240877 0 -10143 0.7288203281073966 0.8131313131327845 0 -10144 0.3176769545940307 0.787878787879099 0 -10145 0.7550635221626137 0.3333333333348336 0 -10146 0.3089292232433294 0.5000000000003538 0 -10147 0.4838838502692148 0.904040404041172 0 -10148 0.9212704178387061 0.2575757575775658 0 -10149 0.833973009607716 0.9744472900029552 0 -10150 0.5188747756750438 0.7525252525262598 0 -10151 0.1077314021628253 0.1010101010101144 0 -10152 0.3089292232443265 0.06565656565680683 0 -10153 0.7288203281081821 0.4797979797994406 0 -10154 0.4926315816209946 0.7474747474756911 0 -10155 0.4838838502696557 0.742424242425168 0 -10156 0.8775317610820512 0.1212121212138055 0 -10157 0.1514700589191069 0.4292929292929615 0 -10158 0.9475136118925445 0.39393939394152 0 -10159 0.2039555796228606 0.04545456198540688 0 -10160 0.4313974621618568 0.6717171717178191 0 -10161 0.7463157908109577 0.5404040404053364 0 -10162 0.7638112535135499 0.5909090909103411 0 -10163 0.1164791335136801 0.3888888888888122 0 -10164 0.7200725967568418 0.4242424242439528 0 -10165 0.5538657010824167 0.07575757575851332 0 -10166 0.4050543188849157 0.03006200105746053 0 -10167 0.8862794924331969 0.2676767676785563 0 -10168 0.6150998205399344 0.7676767676779597 0 -10169 0.3876588054046612 0.797979797980426 0 -10170 0.6675862086478505 0.8383838383851739 0 -10171 0.3176769545943324 0.656565656565966 0 -10172 0.07274047675680324 0.4444444444441223 0 -10173 0.1952087156754129 0.626262626262691 0 -10174 0.2389473724323554 0.5606060606062211 0 -10175 0.8075499102709887 0.2020202020216794 0 -10176 0.7900544475674181 0.6666666666678169 0 -10177 0.7813067162160717 0.6717171717182894 0 -10178 0.9650090745941891 0.5656565656585471 0 -10179 0.6763339399991288 0.9141414141425268 0 -10180 0.3964065367576964 0.2171717171723905 0 -10181 0.2564428351351383 0.5303030303032363 0 -10182 0.4838838502697028 0.722222222223166 0 -10183 0.6588384772979029 0.267676767678077 0 -10184 0.2476951037846627 0.06060606060615395 0 -10185 0.06399442292634437 0.6212121212117924 0 -10186 0.7375680594587704 0.8181818181832896 0 -10187 0.475136118920308 0.08080808080882296 0 -10188 0.5626134324335511 0.1414141414151137 0 -10189 0.868661254651017 0.9644124237417162 0 -10190 0.0552450140531252 0.78787878787871 0 -10191 0.2476951037835296 0.6363636363638084 0 -10192 0.2651905664864785 0.5353535353537633 0 -10193 0.5276192595207027 0.9595929220532494 0 -10194 0.2564428351351607 0.5202020202022324 0 -10195 0.9562613432432161 0.4696969696989053 0 -10196 0.8862794924334479 0.1363636363652431 0 -10197 0.4751361189183121 0.7373737373746392 0 -10198 0.03771212570574274 0.3333077996301358 0 -10199 0.5451179697306288 0.2323232323240549 0 -10200 0.4313974621616 0.7222222222230302 0 -10201 0.3001814918919863 0.4949494949498275 0 -10202 0.9475136118917334 0.5252525252543553 0 -10203 0.07274069782970687 0.6262626262623358 0 -10204 0.4576406562152172 0.8888888888896062 0 -10205 0.483883850271675 0.07575757575834081 0 -10206 0.553865701081013 0.6616161616168248 0 -10207 0.4838838502691833 0.9141414141421627 0 -10208 0.3964065367560272 0.7929292929299465 0 -10209 0.1602177902699445 0.6363636363636193 0 -10210 0.1164791335125375 0.9242424242423942 0 -10211 0.553865701081249 0.388888888890204 0 -10212 0.7200725967560346 0.8282828282842756 0 -10213 0.1252268648652735 0.2828282828283945 0 -10214 0.4663883875666014 0.8737373737381269 0 -10215 0.09023589854189976 0.5656565694778831 0 -10216 0.1514700589185349 0.6515151515151004 0 -10217 0.5276225070265244 0.7070707070717186 0 -10218 0.8775317610808391 0.6262626262641461 0 -10219 0.107738688154873 0.9696782753735873 0 -10220 0.37016334270242 0.6767676767681401 0 -10221 0.8425408356765386 0.1717171717188042 0 -10222 0.4051542681079086 0.6363636363641565 0 -10223 0.6763339400009801 0.1262626262638975 0 -10224 0.6500907459465624 0.2626262626275599 0 -10225 0.378911074053297 0.8030303030309095 0 -10226 0.317676954593599 0.9393939393942039 0 -10227 0.7025771340537248 0.7373737373749175 0 -10228 0.0814878880509671 0.5808081049951088 0 -10229 0.9912522686486204 0.540404040405857 0 -10230 0.3876588054063069 0.2323232323238893 0 -10231 0.0814883321009004 0.6010101010097958 0 -10232 0.5451179697310696 0.08080808080898179 0 -10233 0.7288203281082036 0.4191919191934678 0 -10234 0.4576406562154125 0.8181818181826137 0 -10235 0.7725589848661061 0.07070707070866614 0 -10236 0.7463157908102804 0.7828282828295379 0 -10237 0.2476951037835078 0.6464646464648194 0 -10238 0.3089292232429673 0.6616161616164495 0 -10239 0.5451179697308707 0.1414141414150676 0 -10240 0.9387701693857912 0.964642043542147 0 -10241 0.6500885300850671 0.9595972019438901 0 -10242 0.5276225070283946 0.08080808080893923 0 -10243 0.8687840297303663 0.3181818181836557 0 -10244 0.2127032145959269 0.04040405877167134 0 -10245 0.37891107405503 0.1868686868693095 0 -10246 0.09023590771970526 0.5858585885457732 0 -10247 0.1864609843246295 0.3787878787880365 0 -10248 0.4488929248640414 0.823232323233091 0 -10249 0.9212704178378444 0.4696969696988834 0 -10250 0.5101270443257095 0.08080808080889743 0 -10251 0.9475136118910803 0.8484848484855922 0 -10252 0.1777132529732658 0.383838383838528 0 -10253 0.08148820810715138 0.9141414141413367 0 -10254 0.9650090745954371 0.2626262626281518 0 -10255 0.6238477182809736 0.9545451663503499 0 -10256 0.5626134324318581 0.7373737373748378 0 -10257 0.3789110740549452 0.2272727272733652 0 -10258 0.5888566264875927 0.1363636363646884 0 -10259 0.1252268648646945 0.5555555555554283 0 -10260 0.8425408356748059 0.8989898989911295 0 -10261 0.1339745962166269 0.2777777777779152 0 -10262 0.3264246859467519 0.2373737373742585 0 -10263 0.9387658805415681 0.2070707070725106 0 -10264 0.8512885670269402 0.5909090909105421 0 -10265 0.9300181491885721 0.7272727272738752 0 -10266 0.05524141083098655 0.7171717338439676 0 -10267 0.7638112535135316 0.6010101010113331 0 -10268 0.7725589848647413 0.6666666666677785 0 -10269 0.6500905306988289 0.9494950339093907 0 -10270 0.1689655216218046 0.4292929292930053 0 -10271 0.641343014595202 0.2676767676780383 0 -10272 0.9387658805416605 0.146464646466341 0 -10273 0.4663883875667453 0.823232323233133 0 -10274 0.667583798877192 0.9595975378068299 0 -10275 0.8687840297297239 0.5404040404056429 0 -10276 0.3176769545957207 0.0606060606063087 0 -10277 0.05524130706027664 0.7272727330696702 0 -10278 0.3439201486494856 0.237373737374298 0 -10279 0.7725589848641314 0.8484848484863374 0 -10280 0.5013793129729439 0.5505050505059208 0 -10281 0.8337931043242821 0.5909090909104878 0 -10282 0.8512885670277548 0.2575757575774533 0 -10283 0.1864609843243003 0.5202020202020718 0 -10284 0.5363705393742967 0.04545506666264252 0 -10285 0.466388387568941 0.08585858585930913 0 -10286 0.8687840297291027 0.8333333333340975 0 -10287 0.1777132529733119 0.363636363636527 0 -10288 0.0727404767573754 0.1010101010100524 0 -10289 0.4226497308104835 0.6767676767683198 0 -10290 0.370163342703562 0.2424242424248644 0 -10291 0.9212704178369872 0.893939393940781 0 -10292 0.5276225070281837 0.1414141414150226 0 -10293 0.06399274540599065 0.126262626262574 0 -10294 0.5276225070271718 0.4040404040416711 0 -10295 0.4926315816210906 0.7070707070716865 0 -10296 0.6763339399995256 0.7626262626274414 0 -10297 0.3789110740536222 0.7020202020208393 0 -10298 0.7375680594595181 0.4848484848499606 0 -10299 0.1952087156760413 0.3535353535355508 0 -10300 0.5626134324324276 0.6464646464653093 0 -10301 0.2564428351357153 0.237373737374136 0 -10302 0.8162976416222988 0.2575757575773727 0 -10303 0.4401451935127042 0.8181818181825685 0 -10304 0.3964065367563956 0.6919191919197697 0 -10305 0.09023593945986448 0.2020202020201073 0 -10306 0.3264246859471136 0.05555555555580855 0 -10307 0.4313976026820522 0.94444420105543 0 -10308 0.2826860291895927 0.3535353535357422 0 -10309 0.8600362983783459 0.5555555555571162 0 -10310 0.2476951037846836 0.05050505050511356 0 -10311 0.8337931043246639 0.3383838383856093 0 -10312 0.7463157908102502 0.792929292930562 0 -10313 0.195208715676064 0.3434343434345506 0 -10314 0.04649403178157112 0.3484839429886692 0 -10315 0.6588384772968496 0.7626262626273634 0 -10316 0.2826860291888842 0.6666666666669158 0 -10317 0.3701633427036607 0.1818181818187846 0 -10318 0.7200725967575446 0.1919191919204184 0 -10319 0.1689655216220066 0.3080808080809695 0 -10320 0.8250453729736714 0.2525252525268847 0 -10321 0.501379312972169 0.8131313131322246 0 -10322 0.8512885670277337 0.2676767676784676 0 -10323 0.1777132529731383 0.4343434343435276 0 -10324 0.9212704178373082 0.7020202020214771 0 -10325 0.2127041783780638 0.656565656565764 0 -10326 0.2126525504086765 0.03005647003432997 0 -10327 0.8512885670271276 0.4191919191936817 0 -10328 0.05524433336281381 0.343434171360322 0 -10329 0.4838838502694732 0.8131313131321796 0 -10330 0.2127041783780871 0.6464646464647521 0 -10331 0.9125226864872145 0.3131313131332064 0 -10332 0.4926315816217428 0.4141414141426145 0 -10333 0.4401453695561333 0.9595853024138008 0 -10334 0.5538657010811028 0.6313131313138168 0 -10335 0.4751361189188273 0.5858585858593752 0 -10336 0.7638112535136262 0.4090909090925214 0 -10337 0.6325952832438611 0.2626262626275197 0 -10338 0.7288203281088762 0.1969696969709378 0 -10339 0.1952087156747332 0.8989898989900094 0 -10340 0.5713611637849154 0.1363636363646427 0 -10341 0.5101270443235055 0.8181818181827487 0 -10342 0.4051542681078759 0.6565656565662183 0 -10343 0.4576406562175461 0.1010101010108078 0 -10344 0.3614156113522743 0.196969696970288 0 -10345 0.1777132529729819 0.4949494949495366 0 -10346 0.3351724172965307 0.8181818181823002 0 -10347 0.8862794924319362 0.7525252525262797 0 -10348 0.8425408356765298 0.1818181818198031 0 -10349 0.09023593824938692 0.07070707280411064 0 -10350 0.09023593945988496 0.1919191919191107 0 -10351 0.4051542681078973 0.6464646464651943 0 -10352 0.3964065367562883 0.7020202020209054 0 -10353 0.9562613432426618 0.6515151515167701 0 -10354 0.9125226190200407 0.07070718756603328 0 -10355 0.9912522686486371 0.5101010101029987 0 -10356 0.510102491092824 0.009784626795084376 0 -10357 0.9475159881893168 0.9696948539379251 0 -10358 0.8162976416215758 0.6010101010114578 0 -10359 0.7550635221622621 0.414141414143005 0 -10360 0.3526678800009011 0.1919191919197629 0 -10361 0.8162976416217628 0.3989898989916077 0 -10362 0.4926315816211219 0.6969696969706792 0 -10363 0.5451179697288719 0.8383838383848488 0 -10364 0.0639924660910806 0.7424242424873171 0 -10365 0.8337931043242481 0.6010101010114935 0 -10366 0.4139019994606947 0.1060606060612387 0 -10367 0.8337931043244153 0.4191919191936418 0 -10368 0.7375680594595662 0.4141414141429813 0 -10369 0.2214519097296509 0.5606060606061745 0 -10370 0.5626134324324771 0.626262626263308 0 -10371 0.8425408356763355 0.2828282828299626 0 -10372 0.851288567027697 0.2878787878805156 0 -10373 0.3789110740543975 0.3686868686876602 0 -10374 0.1864609843247839 0.2979797979800125 0 -10375 0.1777132529733811 0.29292929292949 0 -10376 0.7900544475676774 0.4141414141430668 0 -10377 0.4401451935147034 0.1414141414148998 0 -10378 0.4226497308103817 0.6868686868694461 0 -10379 0.317676954593866 0.8181818181822283 0 -10380 0.5188747756748177 0.8333333333342734 0 -10381 0.7463157908108786 0.4797979797994871 0 -10382 0.5101270443254953 0.1414141414149777 0 -10383 0.5276225070261279 0.848484848485798 0 -10384 0.7463157908109267 0.4090909090924955 0 -10385 0.6500907459454571 0.7676767676778891 0 -10386 0.2214519097302361 0.2373737373740548 0 -10387 0.4751361189178871 0.8989898989906521 0 -10388 0.5013793129729629 0.5404040404049185 0 -10389 0.7725589848649644 0.4141414141430357 0 -10390 0.1689655216220378 0.3282828282829988 0 -10391 0.7813067162163088 0.4191919191935505 0 -10392 0.4401451734744757 0.05050508521680256 0 -10393 0.9912522686486199 0.5303030303049037 0 -10394 0.7638112535134137 0.6616161616172705 0 -10395 0.1864609843239695 0.6616161616162178 0 -10396 0.2039564470266917 0.6616161616162546 0 -10397 0.4751361189181116 0.8181818181826569 0 -10398 0.7375680594595291 0.5858585858597903 0 -10399 0.1952087156753478 0.6565656565657332 0 -10400 0.3264246859469966 0.09595959595996989 0 -10401 0.8512885670266882 0.7222222222233262 0 -10402 0.8337931043250211 0.2575757575774068 0 -10403 0.2476951037840095 0.4242424242426877 0 -10404 0.5363702383775029 0.8434343434353244 0 -10405 0.6238475518924953 0.267676767678003 0 -10406 0.2039564470275008 0.2979797979800508 0 -10407 0.1602177902704356 0.4343434343434799 0 -10408 0.4838838502715037 0.1363636363644231 0 -10409 0.6500907459468416 0.1818181818192601 0 -10410 0.2476951037847074 0.04040404040407374 0 -10411 0.05524501405468163 0.101010101010043 0 -10412 0.7288203281081709 0.5909090909102728 0 -10413 0.9212703656441698 0.07575766616336288 0 -10414 0.7463157908108826 0.5808080808093108 0 -10415 0.7550635221622143 0.5858585858598221 0 -10416 0.5271439338070423 0.01925254537466698 0 -10417 0.5101270443241385 0.6464646464654216 0 -10418 0.3089292072308616 0.9444444167121916 0 -10419 0.8950272237837046 0.5454545454562063 0 -10420 0.8687840297303846 0.3080808080826381 0 -10421 0.3176769545949873 0.3737373737378294 0 -10422 0.9475136118925056 0.4040404040425379 0 -10423 0.5538657010822357 0.1363636363645961 0 -10424 0.5538662103176172 0.04545542747661382 0 -10425 0.2651905664868351 0.3838383838387072 0 -10426 0.2301996410801749 0.868686868687081 0 -10427 0.3264246859468093 0.1868686868691937 0 -10428 0.693829402701886 0.863636363637734 0 -10429 0.1864609843246749 0.3585858585860373 0 -10430 0.7288203281078949 0.7121212121222427 0 -10431 0.5363702383795533 0.1363636363645512 0 -10432 0.09023584125444435 0.06060623070326666 0 -10433 0.1864609843233933 0.893939393939498 0 -10434 0.256442835135419 0.3989898989901953 0 -10435 0.510127044323246 0.9090909090917266 0 -10436 0.4926315816214166 0.6363636363644229 0 -10437 0.8425408356763959 0.2525252525269235 0 -10438 0.9475136118913535 0.646464646466251 0 -10439 0.2826860291888696 0.6767676767679418 0 -10440 0.7988021789190312 0.4090909090925818 0 -10441 0.09023593945990954 0.1818181818181153 0 -10442 0.413901999459025 0.6919191919199184 0 -10443 0.7550635221634732 0.07070707070861774 0 -10444 0.8250453729730994 0.4040404040421232 0 -10445 0.2739382978385636 0.2272727272731333 0 -10446 0.8512885670278835 0.1969696969712896 0 -10447 0.4488929248646831 0.631313131313804 0 -10448 0.05524487448786288 0.09090909090899696 0 -10449 0.7200725967568014 0.6060606060617426 0 -10450 0.3439201486497176 0.09595959596005027 0 -10451 0.5013793129727449 0.6515151515159296 0 -10452 0.06399274540570304 0.3484848484847011 0 -10453 0.4663883875665188 0.9040404040411245 0 -10454 0.142722327567715 0.4444444444444258 0 -10455 0.8512885670267005 0.7121212121223466 0 -10456 0.4051542681093123 0.1111111111117248 0 -10457 0.5538023667114074 0.9645015714409033 0 -10458 0.1427223275677413 0.4343434343434342 0 -10459 0.8862794924332147 0.257575757577537 0 -10460 0.2564428351360989 0.03535353535357108 0 -10461 0.3701633427022079 0.7171717171723522 0 -10462 0.9212704178385996 0.3080808080827059 0 -10463 0.8950272237833278 0.7070707070719305 0 -10464 0.8950272237837547 0.5353535353551926 0 -10465 0.3001814918915995 0.6666666666669401 0 -10466 0.07274047675734834 0.1212121212120842 0 -10467 0.3264221631982156 0.04545083275586474 0 -10468 0.3089292232425082 0.8232323232326998 0 -10469 0.5013793129725097 0.6919191919201636 0 -10470 0.3264246859463555 0.3585858585863471 0 -10471 0.4926315816205168 0.9191919191926866 0 -10472 0.2214519097299647 0.4191919191921285 0 -10473 0.3439201486497745 0.08585858585897486 0 -10474 0.5275576976683252 0.03021973898011256 0 -10475 0.9125226864859771 0.707070707071947 0 -10476 0.8862794924320764 0.6717171717185451 0 -10477 0.4488929248647026 0.6212121212127977 0 -10478 0.851288567027226 0.3787878787896692 0 -10479 0.2739382978385091 0.2373737373741682 0 -10480 0.6150998205400688 0.7575757575767995 0 -10481 0.3351724172977084 0.3636363636368716 0 -10482 0.9037749551342859 0.8939393939407441 0 -10483 0.9825045372971695 0.5151515151534567 0 -10484 0.2914337605409302 0.3686868686872613 0 -10485 0.8337931043249091 0.3080808080825006 0 -10486 0.6675862086496114 0.1414141414153446 0 -10487 0.378911074053109 0.8939393939398972 0 -10488 0.1777132529725948 0.6666666666667009 0 -10489 0.3614156113522042 0.2373737373743417 0 -10490 0.6413430145954899 0.1868686868697319 0 -10491 0.2739382978382385 0.3484848484852129 0 -10492 0.05524286954971911 0.747474742246885 0 -10493 0.04633726735652749 0.2472973426255917 0 -10494 0.807549910270391 0.4040404040420963 0 -10495 0.3001814918922857 0.3636363636367857 0 -10496 0.3876588054044102 0.9090909090914115 0 -10497 0.4401451935133538 0.6161616161622452 0 -10498 0.3526678800008491 0.2323232323238152 0 -10499 0.6938294027027496 0.6111111111121854 0 -10500 0.1164791335135558 0.4393939393937771 0 -10501 0.8950272237833953 0.6767676767690411 0 -10502 0.4488929248647456 0.6010101010107938 0 -10503 0.4838838502700715 0.6313131313139027 0 -10504 0.8950272237833077 0.7171717171729177 0 -10505 0.1689655216212513 0.6616161616161751 0 -10506 0.160217790269897 0.6565656565656436 0 -10507 0.7463157908115697 0.1969696969709944 0 -10508 0.1689655216207694 0.8434343434344876 0 -10509 0.6150998205411303 0.2626262626275095 0 -10510 0.8162976416217143 0.5404040404055022 0 -10511 0.7550635221620666 0.6666666666677448 0 -10512 0.3176741515414137 0.04039991518322536 0 -10513 0.7550635221633908 0.08080808080964302 0 -10514 0.3439201486495362 0.1969696969702504 0 -10515 0.3614156113524973 0.0858585858590668 0 -10516 0.4401451935133994 0.5959595959602418 0 -10517 0.9212704162978029 0.08585858852968964 0 -10518 0.2562488449717048 0.02534131875517756 0 -10519 0.8950272237845986 0.2525252525270323 0 -10520 0.9650090745945626 0.4646464646484167 0 -10521 0.8075499102702861 0.4848484848501113 0 -10522 0.2914337605413483 0.1767676767680916 0 -10523 0.2127041783788114 0.2828282828285655 0 -10524 0.5538657010806118 0.712121212122254 0 -10525 0.6675862086478319 0.8484848484861658 0 -10526 0.09898367081127374 0.1767676767676287 0 -10527 0.3439201486482266 0.7222222222226439 0 -10528 0.5188747756768672 0.1363636363645045 0 -10529 0.3701633427038855 0.08080808080857632 0 -10530 0.3526678799995838 0.717171717172164 0 -10531 0.8425408356764922 0.2020202020218284 0 -10532 0.08148810990292546 0.0555557256530269 0 -10533 0.06399265804365158 0.7626262546298429 0 -10534 0.30892922324282 0.7424242424245334 0 -10535 0.7113248654054467 0.611111111112224 0 -10536 0.2214519097302202 0.2878787878790775 0 -10537 0.116479133514198 0.1060606060606558 0 -10538 0.825045372972727 0.6969696969708221 0 -10539 0.1077314021626429 0.1717171717171497 0 -10540 0.2826860291899748 0.1818181818185792 0 -10541 0.5013793129718781 0.9141414141422111 0 -10542 0.317644733496867 0.03029894667046837 0 -10543 0.8775317610806026 0.7575757575767478 0 -10544 0.8425408356759934 0.3535353535371366 0 -10545 0.07274047675702644 0.3535353535352182 0 -10546 0.842540835675786 0.4141414141431655 0 -10547 0.3351724172981232 0.2323232323237746 0 -10548 0.5013793129741775 0.1363636363644601 0 -10549 0.2651905664871892 0.1919191919195634 0 -10550 0.2739382978386 0.1969696969700835 0 -10551 0.3526678799993898 0.7676767676773359 0 -10552 0.08148820810835983 0.3585858585857381 0 -10553 0.06399076308504856 0.2474725745200393 0 -10554 0.4488929248647964 0.5808080808087932 0 -10555 0.2301996410815454 0.2727272727275928 0 -10556 0.1339745962164991 0.3484848484848986 0 -10557 0.07274047675736441 0.1111111111110785 0 -10558 0.3964065367579466 0.1060606060611926 0 -10559 0.3789110740531203 0.8838383838388899 0 -10560 0.8775317610807485 0.6767676767690075 0 -10561 0.3876588054065788 0.1010101010106634 0 -10562 0.6938294027027777 0.6010101010112128 0 -10563 0.711324865405481 0.4494949494964299 0 -10564 0.06399274540454163 0.7727272727272015 0 -10565 0.06399274540585759 0.2575757575757169 0 -10566 0.8162976416213893 0.7020202020212969 0 -10567 0.3789110740551828 0.1161616161621725 0 -10568 0.1427223275679335 0.3434343434344311 0 -10569 0.5626134324314068 0.8989898989908978 0 -10570 0.6763339399991792 0.8535353535366871 0 -10571 0.9650090745943947 0.5252525252544021 0 -10572 0.7113248654046116 0.8636363636377715 0 -10573 0.6238475518919487 0.6212121212129827 0 -10574 0.4488929248648184 0.5707070707077928 0 -10575 0.8512885670267787 0.6616161616174761 0 -10576 0.08148820810853866 0.2575757575757536 0 -10577 0.8337931043240566 0.7020202020213305 0 -10578 0.9562613432441724 0.2777777777796824 0 -10579 0.2389473724329158 0.2676767676771157 0 -10580 0.1777132529720573 0.8888888888889872 0 -10581 0.6325952832441213 0.202020202021204 0 -10582 0.08148635432102135 0.04545775630905208 0 -10583 0.5101270443232737 0.8989898989907371 0 -10584 0.343920148647993 0.7828282828288086 0 -10585 0.8425408356753809 0.7070707070718409 0 -10586 0.6238475518919282 0.6313131313139824 0 -10587 0.8512885670278205 0.2171717171733706 0 -10588 0.09898367081115413 0.2575757575756605 0 -10589 0.7025771340540911 0.6161616161627002 0 -10590 0.5538657010802006 0.8434343434353753 0 -10591 0.6150998205416809 0.08080808080916142 0 -10592 0.2826860291882765 0.8686868686871898 0 -10593 0.1602177902695572 0.8080808080809093 0 -10594 0.3264246859452217 0.8131313131317673 0 -10595 0.632595283244144 0.1919191919202077 0 -10596 0.317676954595451 0.1919191919196817 0 -10597 0.11647913351394 0.1868686868686663 0 -10598 0.8425408356754779 0.6464646464659755 0 -10599 0.8425408356747623 0.9191919191931527 0 -10600 0.7025771340539979 0.6666666666676333 0 -10601 0.02891194870172257 0.09595964407974096 0 -10602 0.8600362983779293 0.7676767676777072 0 -10603 0.3701633427038058 0.111111111111649 0 -10604 0.7988021789189379 0.4797979797995938 0 -10605 0.4313974621621368 0.5606060606067166 0 -10606 0.7375680594593796 0.6666666666677161 0 -10607 0.1339745962165563 0.2474747474747377 0 -10608 0.308929223243639 0.36868686868731 0 -10609 0.3264246859453758 0.7828282828286439 0 -10610 0.1339745962166085 0.2575757575758727 0 -10611 0.7988021789185613 0.7626262626272431 0 -10612 0.7725589848648916 0.4848484848500438 0 -10613 0.7463157908107375 0.6616161616172406 0 -10614 0.5801088951342549 0.848484848485949 0 -10615 0.8512885670268031 0.6515151515165116 0 -10616 0.9562613432438878 0.3989898989920549 0 -10617 0.728820328108026 0.671717171718186 0 -10618 0.2476951037828867 0.8686868686871113 0 -10619 0.2826860291895827 0.3636363636367421 0 -10620 0.3614156113524145 0.1262626262631591 0 -10621 0.3701633427040047 0.05050505050541865 0 -10622 0.9037749551359808 0.2474747474765307 0 -10623 0.07273821060642088 0.0404079654926263 0 -10624 0.9037749551342628 0.9040404040417545 0 -10625 0.7025771340540216 0.6565656565666536 0 -10626 0.3089292232428429 0.7323232323235307 0 -10627 0.1164791335140831 0.1363636363636846 0 -10628 0.5626134324313765 0.9090909090918888 0 -10629 0.1252268648652815 0.1919191919191841 0 -10630 0.8425408356747832 0.9090909090921401 0 -10631 0.5626134324315402 0.8484848484859013 0 -10632 0.1689655216207188 0.8838383838384707 0 -10633 0.3526678800010333 0.1212121212126367 0 -10634 0.7200725967566838 0.6666666666676762 0 -10635 0.7113248654053401 0.6717171717181469 0 -10636 0.3001814918915006 0.7272727272730002 0 -10637 0.2389473724326602 0.4292929292931718 0 -10638 0.5276156670530084 0.04039540851870526 0 -10639 0.5713611637828835 0.853535353536424 0 -10640 0.2301996410817502 0.1616161616164448 0 -10641 0.965009074595199 0.4040404040425926 0 -10642 0.641343014595437 0.2070707070717128 0 -10643 0.1427223275679466 0.2727272727274186 0 -10644 0.527622507026891 0.666666666667332 0 -10645 0.8512885670269695 0.5808080808095546 0 -10646 0.2301996410817492 0.1515151515154107 0 -10647 0.06399123099321082 0.03535595021349994 0 -10648 0.1164791335136408 0.3989898989897893 0 -10649 0.6325952832423929 0.8585858585871038 0 -10650 0.3876588054044257 0.898989898990412 0 -10651 0.8425408343851815 0.9292929247357079 0 -10652 0.6500907459450924 0.858585858587142 0 -10653 0.6413430145937384 0.8636363636376215 0 -10654 0.2651905664855801 0.8686868686871525 0 -10655 0.6238475518910308 0.8636363636375768 0 -10656 0.05524500075796434 0.7777777497525052 0 -10657 0.3439201486496504 0.1363636363641442 0 -10658 0.2301996410813154 0.424242424242652 0 -10659 0.6588384772964586 0.8535353535366546 0 -10660 0.8512885670268591 0.6313131313145559 0 -10661 0.6150998205396793 0.8585858585870514 0 -10662 0.851288567026992 0.5707070707085689 0 -10663 0.3876588054058355 0.3333333333341323 0 -10664 0.8600362983781024 0.6666666666679946 0 -10665 0.8687840297294277 0.671717171718504 0 -10666 0.5188747756746376 0.893939393940259 0 -10667 0.8075499102700342 0.7171717171727549 0 -10668 0.3351724172981771 0.1919191919197255 0 -10669 0.6850816713505249 0.8585858585872076 0 -10670 0.2651905664861425 0.6969696969698994 0 -10671 0.7638112535135519 0.4797979797995311 0 -10672 0.2564428351347895 0.7020202020203725 0 -10673 0.0902359394596596 0.3737373737372418 0 -10674 0.8687840297292713 0.7626262626272221 0 -10675 0.2914337605401585 0.7222222222224792 0 -10676 0.7025771340540401 0.6464646464656636 0 -10677 0.6938294027027028 0.641414141415134 0 -10678 0.1252268648654295 0.1414141414142037 0 -10679 0.9125226864873619 0.2424242424260323 0 -10680 0.1602177902695619 0.7979797979799144 0 -10681 0.09898367081099532 0.3787878787877604 0 -10682 0.1077314021623326 0.3838383838382808 0 -10683 0.9300181478032741 0.09090909331328467 0 -10684 0.8687840297301983 0.3585858585877088 0 -10685 0.7025771340532393 0.8585858585872539 0 -10686 0.2739382978383134 0.2878787878792152 0 -10687 0.5888566264856245 0.8434343434354744 0 -10688 0.440145193513527 0.5454545454552713 0 -10689 0.8512885670270151 0.5606060606075798 0 -10690 0.5626134324324927 0.6161616161623242 0 -10691 0.5538657010810445 0.6515151515158152 0 -10692 0.1339745962166599 0.1868686868687067 0 -10693 0.5713611637838674 0.6111111111118457 0 -10694 0.23019964108073 0.6868686868688081 0 -10695 0.4576406562157923 0.6767676767685079 0 -10696 0.9212704178372574 0.7323232323243519 0 -10697 0.6763339400006293 0.2373737373749973 0 -10698 0.5451179697296049 0.6666666666673576 0 -10699 0.3439201486487881 0.4696969696974487 0 -10700 0.4401451935134779 0.5656565656572519 0 -10701 0.1514700589186459 0.6111111111110445 0 -10702 0.2127041783790274 0.1515151515153884 0 -10703 0.1252268648649892 0.4040404040403206 0 -10704 0.6938294027027707 0.4494949494963936 0 -10705 0.5538657010823452 0.1060606060614976 0 -10706 0.1689655216207326 0.8737373737374905 0 -10707 0.9737568059457598 0.5202020202039304 0 -10708 0.5801088951352057 0.616161616162362 0 -10709 0.921270417838747 0.237373737375534 0 -10710 0.6850816713513583 0.6464646464655994 0 -10711 0.4926315816228192 0.1414141414149347 0 -10712 0.2039564470276727 0.1464646464648598 0 -10713 0.4051542681083957 0.3333333333343961 0 -10714 0.7638112535132204 0.7323232323242662 0 -10715 0.8600362983783818 0.5454545454561186 0 -10716 0.7725589848640555 0.8787878787890328 0 -10717 0.5976043578378909 0.6262626262633991 0 -10718 0.5276225070259631 0.8989898989907713 0 -10719 0.5888566264865466 0.6212121212128831 0 -10720 0.3526678800001959 0.454545454546024 0 -10721 0.3176769545950289 0.323232323232849 0 -10722 0.5976043578369731 0.8484848484859979 0 -10723 0.8775317610805454 0.7878787878796504 0 -10724 0.6413430145954213 0.2171717171727195 0 -10725 0.2826860291888159 0.7171717171719557 0 -10726 0.9037749551342389 0.9141414141427737 0 -10727 0.1514700589182393 0.7828282828283777 0 -10728 0.6063520891883319 0.853535353536523 0 -10729 0.6588384772973027 0.6515151515160424 0 -10730 0.34392014864885 0.4494949494954571 0 -10731 0.3351724172977512 0.323232323232895 0 -10732 0.7988021789186712 0.7323232323242119 0 -10733 0.9475136118928926 0.2323232323250531 0 -10734 0.2214519097293768 0.6919191919192845 0 -10735 0.2039564470276712 0.1363636363638176 0 -10736 0.7550635221622178 0.4747474747490167 0 -10737 0.2127041783780032 0.6868686868687729 0 -10738 0.2739382978374767 0.7121212121214274 0 -10739 0.3526678800004483 0.3434343434349653 0 -10740 0.606352089189254 0.6212121212129245 0 -10741 0.6763339400000091 0.641414141415088 0 -10742 0.6675862086486593 0.646464646465563 0 -10743 0.9300181491885355 0.7474747474758151 0 -10744 0.2739382978374927 0.7020202020204331 0 -10745 0.4313974621621848 0.5404040404047294 0 -10746 0.1952087156763266 0.1313131313132953 0 -10747 0.9037749551342092 0.9242424242437886 0 -10748 0.07274044243737013 0.4545454545452067 0 -10749 0.7900544475673013 0.7373737373747128 0 -10750 0.7550635221629111 0.2020202020215287 0 -10751 0.3089292232440919 0.1868686868691584 0 -10752 0.6500907459459397 0.6565656565665188 0 -10753 0.6413430145953845 0.2272727272737756 0 -10754 0.6150998205406112 0.6161616161624539 0 -10755 0.3439201486491039 0.3383838383844223 0 -10756 0.6850816713517262 0.3232323232338409 0 -10757 0.3351724172982751 0.1313131313136201 0 -10758 0.6238475518919044 0.6414141414149627 0 -10759 0.247695103783432 0.6969696969698536 0 -10760 0.6850816713514275 0.4545454545468757 0 -10761 0.3526678800002517 0.4343434343440196 0 -10762 0.6325952832432442 0.6464646464654872 0 -10763 0.4226497308108528 0.5353535353542009 0 -10764 0.7550635221622234 0.4646464646480205 0 -10765 0.6413430145945882 0.6515151515160061 0 -10766 0.5363702383773377 0.8939393939402951 0 -10767 0.7463157908109035 0.4595959595975078 0 -10768 0.3526678800002712 0.4242424242430138 0 -10769 0.9475136118929045 0.22222222222404 0 -10770 0.9387658764304745 0.0858585929812043 0 -10771 0.3439201486489243 0.4191919191924469 0 -10772 0.9300181491899817 0.3030303030321988 0 -10773 0.9300181491901327 0.23232323232504 0 -10774 0.1689655216208204 0.8333333333334384 0 -10775 0.04649317096763331 0.4595959595955154 0 -10776 0.7113248654046097 0.9040404040415849 0 -10777 0.3439201486491208 0.3282828282834316 0 -10778 0.326424685946914 0.1262626262630827 0 -10779 0.8600362983784718 0.4949494949511628 0 -10780 0.2389473724320829 0.6919191919193314 0 -10781 0.8512885670270646 0.4898989899006616 0 -10782 0.343920148648771 0.4797979797984464 0 -10783 0.895027223784349 0.3434343434362189 0 -10784 0.3614156113514648 0.4898989898995491 0 -10785 0.4051542681085906 0.313131313132139 0 -10786 0.5626134324313371 0.9191919191928734 0 -10787 0.4226497308108759 0.5252525252532209 0 -10788 0.1427223275673315 0.5959595959595035 0 -10789 0.30018149189273 0.1818181818186279 0 -10790 0.04644451715157214 0.7828260988620235 0 -10791 0.7288203281094334 0.08585858586002892 0 -10792 0.676333940000084 0.4898989899003376 0 -10793 0.1427223275668774 0.7676767676769203 0 -10794 0.7200725967570115 0.3636363636379384 0 -10795 0.895027254776346 0.9292928756119445 0 -10796 0.6850816713514422 0.4848484848498578 0 -10797 0.1864609843246488 0.2474747474748333 0 -10798 0.9475136118929188 0.2121212121230227 0 -10799 0.3264246859463997 0.3282828282833669 0 -10800 0.3264246859469389 0.1161616161620684 0 -10801 0.7375680594587145 0.8888888888900923 0 -10802 0.3526678800000717 0.5050505050509861 0 -10803 0.4139019994599452 0.3080808080816266 0 -10804 0.133974596215984 0.5909090909089699 0 -10805 0.1339745962168186 0.1363636363637219 0 -10806 0.07274043687087074 0.5050505063781547 0 -10807 0.9387658805414907 0.2373737373755589 0 -10808 0.4139019994595326 0.520202020202686 0 -10809 0.1602177902693958 0.8686868686869629 0 -10810 0.1427223275680256 0.1818181818182251 0 -10811 0.9650090745945936 0.4545454545474688 0 -10812 0.3176409129953641 0.02049503961204496 0 -10813 0.4313974621625282 0.3080808080818539 0 -10814 0.1602177902707724 0.1717171717172536 0 -10815 0.3439201486490616 0.3585858585864166 0 -10816 0.5976043578368244 0.9191919191929107 0 -10817 0.3264246859469649 0.1060606060610317 0 -10818 0.4313974621626717 0.297979797980677 0 -10819 0.03751940703822491 0.7777583583687935 0 -10820 0.9037749551350898 0.5303030303047493 0 -10821 0.5101270443249162 0.2626262626273295 0 -10822 0.9387658805413679 0.2979797979816969 0 -10823 0.4488929248652631 0.2979797979808812 0 -10824 0.4926315816222413 0.2626262626272769 0 -10825 0.8425408356757553 0.5151515151531159 0 -10826 0.2039564470266296 0.712121212121268 0 -10827 0.8687840297291987 0.792929292930144 0 -10828 0.5451179697303046 0.262626262627401 0 -10829 0.2127041783791289 0.09090909090920686 0 -10830 0.9475136118927604 0.2929292929311981 0 -10831 0.4926315816220844 0.2727272727284732 0 -10832 0.448892924865416 0.2878787878796907 0 -10833 0.08148806934399301 0.5202020227144757 0 -10834 0.4838838502707318 0.2777777777789415 0 -10835 0.3526678800003279 0.4040404040410056 0 -10836 0.7463157908108961 0.4494949494964898 0 -10837 0.3089292232436884 0.3282828282833259 0 -10838 0.9562613432441549 0.2878787878806915 0 -10839 0.4663883875679948 0.2878787878799117 0 -10840 0.4051542681081886 0.525252525253149 0 -10841 0.4663883875681502 0.2777777777787211 0 -10842 0.5451179697287035 0.8888888888898234 0 -10843 0.3789110740541226 0.5202020202025829 0 -10844 0.6063520891882218 0.9040404040414042 0 -10845 0.3001814918923428 0.3232323232328065 0 -10846 0.5276225070276095 0.262626262627365 0 -10847 0.5626134324329974 0.2626262626274343 0 -10848 0.151470058918301 0.7626262626263381 0 -10849 0.1514700589193964 0.176767676767736 0 -10850 0.9475136113655898 0.09090909182449716 0 -10851 0.3876588054054763 0.5151515151521151 0 -10852 0.7550635221617666 0.7373737373749378 0 -10853 0.9650090745954886 0.2727272727291556 0 -10854 0.2039564470277763 0.08585858585868462 0 -10855 0.9650090745937765 0.7575757575768435 0 -10856 0.3526678800001261 0.4848484848490055 0 -10857 0.1427223275681938 0.1313131313132344 0 -10858 0.9037749551356737 0.3484848484867406 0 -10859 0.2914337605410045 0.3181818181822795 0 -10860 0.3526678800003482 0.39393939394 0 -10861 0.9737568059451331 0.803030303031173 0 -10862 0.5801088951356882 0.2626262626274733 0 -10863 0.8600362983778443 0.7979797979806853 0 -10864 0.8337931043243949 0.5303030303045753 0 -10865 0.6150998205416547 0.09090909091018011 0 -10866 0.6588384772973623 0.4696969696983351 0 -10867 0.3701633427027695 0.5151515151520677 0 -10868 0.5976043578383853 0.2626262626275067 0 -10869 0.2914337605410198 0.3080808080812873 0 -10870 0.1689655216220941 0.1767676767677656 0 -10871 0.1164791335132757 0.5808080808078998 0 -10872 0.195208715675244 0.7171717171717671 0 -10873 0.7725589848656925 0.1515151515166199 0 -10874 0.5538657010800434 0.8939393939403492 0 -10875 0.3439201486490041 0.388888888889433 0 -10876 0.2826860291896776 0.303030303030747 0 -10877 0.1602177902694171 0.8585858585859742 0 -10878 0.1514700589193199 0.3181818181819833 0 -10879 0.3614156113514168 0.5101010101015374 0 -10880 0.3439201486476328 0.9141414141417743 0 -10881 0.7813067162171023 0.1464646464661636 0 -10882 0.7900544475684219 0.1515151515166727 0 -10883 0.1252268648646318 0.5858585858584364 0 -10884 0.807549910271115 0.1616161616177124 0 -10885 0.8862798664511263 0.9343427429780999 0 -10886 0.1864609843250421 0.08585858585866829 0 -10887 0.8250453729729891 0.5252525252540845 0 -10888 0.3526678800003959 0.3737373737379848 0 -10889 0.256442835135642 0.2878787878791737 0 -10890 0.396406536756831 0.5202020202026304 0 -10891 0.2826860291896839 0.292929292929751 0 -10892 0.7988021789197036 0.1666666666681666 0 -10893 0.7550635221631217 0.1313131313146343 0 -10894 0.18646098432489 0.1666666666668144 0 -10895 0.7375680594605146 0.1212121212136166 0 -10896 0.09898367081025101 0.7020202020201475 0 -10897 0.1952087156763372 0.1212121212122716 0 -10898 0.7638112535144342 0.1363636363651401 0 -10899 0.05524359782759037 0.4646464646487367 0 -10900 0.1514700589195609 0.1262626262627403 0 -10901 0.3526678800004166 0.3636363636369801 0 -10902 0.6938300963797518 0.05555674588772744 0 -10903 0.2651905664869829 0.2929292929296941 0 -10904 0.912522686486879 0.3636363636382881 0 -10905 0.6500907459460368 0.4848484848497892 0 -10906 0.7463157908116992 0.1363636363650854 0 -10907 0.6675862086487248 0.4747474747488425 0 -10908 0.5888566264876851 0.1060606060615661 0 -10909 0.1952087156761265 0.2929292929295448 0 -10910 0.4838838502711764 0.2171717171726447 0 -10911 0.3264246859449565 0.9343434343437451 0 -10912 0.2564428351356533 0.2777777777781771 0 -10913 0.9562613429692567 0.08585858633704294 0 -10914 0.1952087156763647 0.1111111111112514 0 -10915 0.7200725967568627 0.454545454546952 0 -10916 0.7813067162156138 0.813131313132617 0 -10917 0.4838838502713858 0.1666666666674941 0 -10918 0.2476951037843035 0.2727272727276487 0 -10919 0.4576406562158957 0.6666666666673594 0 -10920 0.6938294027027508 0.5202020202033184 0 -10921 0.728820328109167 0.1161616161631129 0 -10922 0.1952087156751535 0.757575757575816 0 -10923 0.8687840472615164 0.9343429685211415 0 -10924 0.483883850271365 0.1767676767684814 0 -10925 0.7025771340541538 0.4545454545469094 0 -10926 0.8600362983792655 0.1717171717187967 0 -10927 0.06381916825948875 0.02536248724245856 0 -10928 0.790054447567083 0.7676767676779567 0 -10929 0.2039564470277321 0.106060606060764 0 -10930 0.4926315816226939 0.1919191919199637 0 -10931 0.1602177902694383 0.8484848484849619 0 -10932 0.8687840297306288 0.1666666666683046 0 -10933 0.15147005891958 0.1161616161617397 0 -10934 0.1952087156761418 0.1919191919193568 0 -10935 0.8512885670278969 0.1666666666682971 0 -10936 0.5013793129740107 0.2070707070714575 0 -10937 0.4838838502714814 0.146464646465422 0 -10938 0.1602177902696949 0.7474747474748503 0 -10939 0.6413430145946714 0.4797979797992947 0 -10940 0.8600361623986224 0.939393233394014 0 -10941 0.7113248654065614 0.106060606062092 0 -10942 0.3789110740553766 0.04545454545496372 0 -10943 0.4751361189198021 0.2222222222231364 0 -10944 0.9650090745388198 0.09090909100960637 0 -10945 0.7638112535136694 0.520202020203437 0 -10946 0.1164791335130573 0.6717171717170852 0 -10947 0.9037749551351221 0.5202020202037575 0 -10948 0.711324865405572 0.5303030303043194 0 -10949 0.6325952832435953 0.3232323232337735 0 -10950 0.2127041783791037 0.1010101010102587 0 -10951 0.1777132529734926 0.1717171717172919 0 -10952 0.7200725967577301 0.1212121212135571 0 -10953 0.151470058919611 0.1060606060607251 0 -10954 0.2301996410804487 0.8080808080808716 0 -10955 0.8512885670272751 0.3686868686886583 0 -10956 0.7200725967568279 0.5151515151528645 0 -10957 0.151470058918387 0.7222222222223408 0 -10958 0.2039564470274705 0.207070707070901 0 -10959 0.632595283243339 0.4848484848497601 0 -10960 0.7725589848649995 0.5151515151529658 0 -10961 0.6938294027027444 0.5808080808092824 0 -10962 0.5976043578382972 0.3232323232335768 0 -10963 0.3701633427039371 0.07070707070753683 0 -10964 0.7025771340552293 0.1010101010115933 0 -10965 0.9737568059367686 0.09595959597899727 0 -10966 0.7288203281082807 0.5202020202033548 0 -10967 0.5976043578381893 0.3333333333347057 0 -10968 0.6150998205409651 0.3232323232336188 0 -10969 0.6588384772976085 0.3282828282843477 0 -10970 0.1602177902697057 0.7373737373738627 0 -10971 0.9825045372968186 0.7979797979805549 0 -10972 0.9562613432443082 0.2070707070724987 0 -10973 0.1602177902709783 0.1010101010102109 0 -10974 0.4663883875683964 0.2373737373746359 0 -10975 0.06399258283984452 0.4595959595960639 0 -10976 0.9037749551351322 0.5101010101027759 0 -10977 0.5888566264867651 0.3585858585872346 0 -10978 0.6850816713526143 0.09090909091058288 0 -10979 0.737568059459622 0.5151515151528859 0 -10980 0.6238475518919731 0.4797979797992505 0 -10981 0.2214519097290117 0.813131313131451 0 -10982 0.667586208648989 0.3232323232338427 0 -10983 0.1602177902697803 0.7171717171717664 0 -10984 0.6763339400013074 0.08585858586008449 0 -10985 0.7375680594597396 0.3636363636379596 0 -10986 0.3701633427039699 0.06060606060648831 0 -10987 0.4576406562169955 0.2525252525261227 0 -10988 0.7550635221629372 0.2121212121226496 0 -10989 0.6938294027037982 0.1060606060620331 0 -10990 0.1339745962163268 0.4494949494948618 0 -10991 0.1252268648649124 0.4444444444443276 0 -10992 0.8775317610820295 0.141414141415788 0 -10993 0.921270417837549 0.6010101010118187 0 -10994 0.5626134324328287 0.3535353535365361 0 -10995 0.6675862086498029 0.09090909091052202 0 -10996 0.4401451935143668 0.2525252525260092 0 -10997 0.755063522162406 0.3636363636379961 0 -10998 0.816297641620941 0.8434343434356356 0 -10999 0.1427223275671308 0.6868686868686822 0 -11000 0.1427223275677184 0.4040404040403791 0 -11001 0.7550635221625562 0.3434343434358476 0 -11002 0.4401451935142702 0.2626262626270782 0 -11003 0.4226497308116305 0.2626262626269799 0 -11004 0.6150998205406222 0.4747474747487361 0 -11005 0.9650090745956883 0.2020202020219921 0 -11006 0.5188747756761181 0.3383838383850415 0 -11007 0.3439201486493019 0.2878787878793403 0 -11008 0.3701633427032837 0.303030303031007 0 -11009 0.545117969730152 0.3535353535364836 0 -11010 0.8775317610811393 0.4949494949512209 0 -11011 0.3789110740546578 0.2979797979805175 0 -11012 0.4926315816227704 0.1616161616169542 0 -11013 0.396406536757398 0.2878787878795374 0 -11014 0.3964065367574908 0.2777777777784769 0 -11015 0.3789110740547427 0.2878787878794618 0 -11016 0.8687840297297914 0.4898989899007056 0 -11017 0.4226497308115445 0.2727272727280392 0 -11018 0.4139019994601855 0.2777777777785073 0 -11019 0.6588384772986907 0.07575757575907417 0 -11020 0.8862794924324766 0.5000000000017396 0 -11021 0.1514700589184639 0.7020202020202341 0 -11022 0.8950272237838113 0.5050505050522582 0 -11023 0.03772465904254604 0.46467157972023 0 -11024 0.3789256481739711 0.03537877846773647 0 -11025 0.5713611637826781 0.9242424242434161 0 -11026 0.6063520891892821 0.4696969696982209 0 -11027 0.527622507027385 0.3232323232335672 0 -11028 0.9737568059468901 0.1969696969714675 0 -11029 0.6588384772970994 0.7323232323240632 0 -11030 0.6500907459473682 0.07070707070857608 0 -11031 0.7200725967574179 0.2323232323244896 0 -11032 0.3790291244157509 0.02545699447479398 0 -11033 0.536370238378762 0.3585858585870001 0 -11034 0.03750018706991343 0.4749381796379555 0 -11035 0.4576406562170713 0.2424242424250899 0 -11036 0.160217790270977 0.09090909090918703 0 -11037 0.4663883875684667 0.2272727272735974 0 -11038 0.5976043578379547 0.4646464646476977 0 -11039 0.9212704178375772 0.5909090909108261 0 -11040 0.5363702383788664 0.3282828282840404 0 -11041 0.6763339399991445 0.893939393940629 0 -11042 0.6413430145958365 0.07575757575898248 0 -11043 0.7463157908098765 0.9242424242434899 0 -11044 0.8162976416209258 0.8535353535366298 0 -11045 0.5801088951340295 0.9292929292939325 0 -11046 0.1602177902709334 0.08080808080810223 0 -11047 0.7638112535139601 0.3181818181833548 0 -11048 0.6763339399991291 0.9040404040415777 0 -11049 0.5888566264854158 0.9242424242434435 0 -11050 0.5451179697300714 0.3131313131325678 0 -11051 0.5801088951352741 0.4444444444456846 0 -11052 0.5976043578379706 0.454545454546751 0 -11053 0.7813067162165603 0.31818181818353 0 -11054 0.5538657010814373 0.2979797979810991 0 -11055 0.8162976416208806 0.86363636363762 0 -11056 0.6675862086485809 0.5959595959607095 0 -11057 0.8162976416216904 0.5303030303045562 0 -11058 0.5713611637842591 0.3080808080820768 0 -11059 0.6763339400000649 0.6010101010111988 0 -11060 0.5801088951354744 0.2929292929306466 0 -11061 0.7900544475679503 0.3131313131330267 0 -11062 0.4926315816226285 0.2121212121220209 0 -11063 0.8600362983778301 0.8080808080816673 0 -11064 0.5713611637839598 0.4494949494961411 0 -11065 0.6850816713514204 0.5959595959607329 0 -11066 0.5888566264866212 0.4494949494962 0 -11067 0.5976043578368238 0.909090909091937 0 -11068 0.5888566264869386 0.2979797979811242 0 -11069 0.9387658805402689 0.5707070707089287 0 -11070 0.8075499102706599 0.3131313131330488 0 -11071 0.5626134324325657 0.4444444444456598 0 -11072 0.6238475518920098 0.5707070707080644 0 -11073 0.8512885670263619 0.8131313131324539 0 -11074 0.8862794924334048 0.116161616163274 0 -11075 0.8250453729308145 0.9292929291507357 0 -11076 0.6063520891891856 0.5606060606070719 0 -11077 0.606352089189672 0.2979797979811188 0 -11078 0.9387658805416547 0.1262626262643906 0 -11079 0.9825295874912116 0.9797640251525537 0 -11080 0.9831980939253411 0.9904420020318231 0 -11081 0.6063520891882196 0.893939393940454 0 -11082 0.5976043578379611 0.5757575757585033 0 -11083 0.5538657010812614 0.4595959595971136 0 -11084 0.160214062487985 0.05050703149244915 0 -11085 0.5888566264864983 0.5707070707080178 0 -11086 0.8950272237841688 0.4141414141434507 0 -11087 0.7725589848640779 0.8888888888899835 0 -11088 0.825045372451424 0.9393939375829484 0 -11089 0.6150998205396345 0.8888888888899784 0 -11090 0.8512885670263528 0.8232323232334275 0 -11091 0.8950272237847757 0.1111111111127919 0 -11092 0.1514659111272605 0.04545860478117 0 -11093 0.5451179697298879 0.4646464646476141 0 -11094 0.9387658805416373 0.1363636363653575 0 -11095 0.8950272237841115 0.4444444444464118 0 -11096 0.737568059458598 0.9191919191929898 0 -11097 0.1164791335126897 0.8333333333334006 0 -11098 0.6238475518909996 0.8939393939404714 0 -11099 0.9037749551361751 0.1161616161632997 0 -11100 0.7813067162162957 0.5101010101025099 0 -11101 0.5538657010810941 0.5606060606069503 0 -11102 0.1514700589183375 0.7525252525253726 0 -11103 0.7988021789160061 0.9343434343380062 0 -11104 0.6325952832423714 0.8888888888900157 0 -11105 0.7900544475676443 0.5151515151530135 0 -11106 0.09023593945843403 0.8787878787879287 0 -11107 0.1077314021612639 0.868686868686921 0 -11108 0.9037749551352058 0.4595959595978971 0 -11109 0.1252268648641029 0.8181818181819103 0 -11110 0.1339743789719811 0.04545503210217991 0 -11111 0.133974596215473 0.8131313131314185 0 -11112 0.9125226864865288 0.4646464646484218 0 -11113 0.7725589848640488 0.8989898989909862 0 -11114 0.5451179697298668 0.5757575757583802 0 -11115 0.8862794924325369 0.4494949494968455 0 -11116 0.7025771340529863 0.9494949494959575 0 -11117 0.536370238378522 0.4797979797990833 0 -11118 0.7988021789189843 0.5202020202035269 0 -11119 0.5363702383783973 0.5707070707079139 0 -11120 0.9212704178389107 0.1262626262643309 0 -11121 0.8075499102703236 0.5252525252540354 0 -11122 0.3264246859453342 0.792929292929718 0 -11123 0.1339536814060399 0.03539242160956634 0 -11124 0.6413430145937359 0.8939393939405087 0 -11125 0.09898367080989488 0.8838383838384014 0 -11126 0.9912717591484657 0.974714764385199 0 -11127 0.08148820810713425 0.8939393939394069 0 -11128 0.1427223275668161 0.8080808080809505 0 -11129 0.9125226864875449 0.1212121212138179 0 -11130 0.5276225070271537 0.4848484848495577 0 -11131 0.7375680594607688 0.08080808080951302 0 -11132 0.5801088951352003 0.5757575757584599 0 -11133 0.3264246859452968 0.803030303030744 0 -11134 0.6500907459451007 0.888888888890055 0 -11135 0.7900544475659019 0.9393939393930124 0 -11136 0.7725589848637705 0.9393939393949609 0 -11137 0.5276225070271227 0.5858585858593759 0 -11138 0.9300181491902537 0.1212121212138694 0 -11139 0.597604357838236 0.2929292929306468 0 -11140 0.3701633427022972 0.7070707070713077 0 -11141 0.518874775675754 0.4797979797990806 0 -11142 0.1514700589196172 0.07575757575763532 0 -11143 0.1252464363134945 0.03071957142296307 0 -11144 0.6588384772964624 0.8939393939405461 0 -11145 0.5101270443244286 0.4848484848495611 0 -11146 0.1514700589182012 0.8131313131314313 0 -11147 0.6675862086478072 0.8888888888900982 0 -11148 0.5188747756755179 0.6414141414148686 0 -11149 0.623847551891807 0.712121212121998 0 -11150 0.04649673287906916 0.9141414141413744 0 -11151 0.352667879999512 0.7373737373743001 0 -11152 0.7463157908109168 0.5101010101024375 0 -11153 0.05524495296163517 0.9090909090908783 0 -11154 0.8687840297290923 0.8434343434351441 0 -11155 0.3439201486480808 0.7727272727277728 0 -11156 0.763811253512696 0.9040404040414821 0 -11157 0.3526678799994992 0.7474747474753033 0 -11158 0.3439201486481832 0.7323232323237104 0 -11159 0.5013793129730725 0.5000000000009988 0 -11160 0.7550635221622786 0.5151515151529424 0 -11161 0.7025771340541627 0.5252525252538391 0 -11162 0.7638112704683877 0.9444444150768175 0 -11163 0.8600362983776155 0.848484848485961 0 -11164 0.3526678799994667 0.7575757575763066 0 -11165 0.4926315816216776 0.4949494949505306 0 -11166 0.7638112535138373 0.3383838383854111 0 -11167 0.6588384772972873 0.6010101010111603 0 -11168 0.7638114061162027 0.9545451902287893 0 -11169 0.03763999929078695 0.9294623995691188 0 -11170 0.142722327567898 0.2626262626263725 0 -11171 0.07274047675579771 0.9090909090908783 0 -11172 0.4838838502703616 0.5000000000010042 0 -11173 0.9475136118922419 0.4444444444465431 0 -11174 0.7550635221613454 0.9090909090919868 0 -11175 0.4751361189190239 0.5050505050514791 0 -11176 0.6850816713505246 0.909090909092101 0 -11177 0.7550648955960874 0.9595935807375524 0 -11178 0.6938294027017261 0.9444444444454615 0 -11179 0.9825045372966144 0.9595959595971616 0 -11180 0.9475136118929998 0.1414141414158982 0 -11181 0.4663883875676544 0.5101010101019404 0 -11182 0.6938294027018809 0.9040404040416495 0 -11183 0.7463335412085114 0.9646393836934936 0 -11184 0.9562613432443278 0.1363636363654175 0 -11185 0.7550635221612831 0.9191919191929752 0 -11186 0.4576406562162496 0.5050505050514441 0 -11187 0.5888566264869001 0.3383838383851681 0 -11188 0.7375774434187152 0.9697059058688767 0 -11189 0.7113248654045532 0.893939393940665 0 -11190 0.7025771340532617 0.9090909090921182 0 -11191 0.4313974621622282 0.5000000000008814 0 -11192 0.9912522686484871 0.9545454545457019 0 -11193 0.8775317610814282 0.3636363636382635 0 -11194 0.868784029729065 0.863636363637123 0 -11195 0.4488929248649018 0.500000000000953 0 -11196 0.9650090745955447 0.1313131313148607 0 -11197 0.4313974621622282 0.4898989898999651 0 -11198 0.7200725967559765 0.8888888888901764 0 -11199 0.4401451935136065 0.5050505050513877 0 -11200 0.728820328107383 0.893939393940627 0 -11201 0.9912522686484559 0.944444444444723 0 -11202 0.737587730768078 0.9793190968832186 0 -11203 0.4051542681081426 0.4848484848492401 0 -11204 0.7375680594586504 0.8787878787891874 0 -11205 0.7463157908100714 0.873737373738709 0 -11206 0.8600362983787371 0.3636363636382204 0 -11207 0.4226497308108635 0.4848484848494017 0 -11208 0.755063522161461 0.878787878789167 0 -11209 0.7638112535127386 0.8737373737386881 0 -11210 0.7288203281072051 0.9242424242434587 0 -11211 0.3789110740540834 0.4696969696976542 0 -11212 0.7550635221624756 0.3535353535368901 0 -11213 0.4139019994595638 0.4898989898998074 0 -11214 0.982504537296647 0.9292929292940539 0 -11215 0.632595283243265 0.5656565656576149 0 -11216 0.3876588054054829 0.4444444444452944 0 -11217 0.3789110740541002 0.4595959595966667 0 -11218 0.5626134324328345 0.3030303030315682 0 -11219 0.3789110740541581 0.4393939393946504 0 -11220 0.4051542681081454 0.4747474747483466 0 -11221 0.7638112535138801 0.3282828282843752 0 -11222 0.615099820540586 0.5656565656575471 0 -11223 0.886279492432792 0.3585858585877726 0 -11224 0.3876588054055272 0.4242424242432082 0 -11225 0.3964065367567431 0.4696969696978328 0 -11226 0.9912522686484844 0.9242424242425753 0 -11227 0.6500907459458992 0.5959595959606141 0 -11228 0.7200725967558321 0.9292929292939403 0 -11229 0.6413430145946176 0.5707070707081955 0 -11230 0.3964065367569745 0.4090909090918737 0 -11231 0.5626134324324654 0.5656565656574156 0 -11232 0.5713611637838156 0.5707070707079335 0 -11233 0.6413430145946113 0.580808080809165 0 -11234 0.3876588054054506 0.4747474747482465 0 -11235 0.6938294027024883 0.7323232323243559 0 -11236 0.9825045372966645 0.9090909090919074 0 -11237 0.1514700589196231 0.06565656565661404 0 -11238 0.6938294027025245 0.7222222222233543 0 -11239 0.6938294027025412 0.7121212121223184 0 -11240 0.6413430145945842 0.5909090909100853 0 -11241 0.3964065367569943 0.3989898989908837 0 -11242 0.06399274540434469 0.9040404040404214 0 -11243 0.8862794924329017 0.3484848484867322 0 -11244 0.1602171896836939 0.06060637976516868 0 -11245 0.9912522686484624 0.904040404040496 0 -11246 0.5888566264868645 0.3484848484862071 0 -11247 0.7113248654044769 0.9343434343444476 0 -11248 0.3876588054056564 0.3939393939402706 0 -11249 0.8075499102694738 0.8686868686881862 0 -11250 0.3876588054056724 0.3838383838393543 0 -11251 0.7113248654044051 0.9444444444454264 0 -11252 0.3876588054057263 0.3636363636373499 0 -11253 0.3789110740543426 0.3787878787887128 0 -11254 0.7988021789181609 0.8737373737386611 0 -11255 0.3876588054057619 0.3535353535363387 0 -11256 0.895027223782935 0.8585858585867093 0 -11257 0.6325952832447963 0.06060606060748325 0 -11258 0.9037749551343089 0.8434343434352352 0 -11259 0.7900544475668548 0.8686868686881806 0 -11260 0.3876588054057874 0.3434343434352897 0 -11261 0.9912522686487536 0.4191919191937328 0 -11262 0.6238475518934445 0.05555555555693908 0 -11263 0.7813067162154836 0.8636363636377068 0 -11264 0.6850818221512287 0.9494950607903421 0 -11265 0.93876588053981 0.8535353535362451 0 -11266 0.4051542681085196 0.3232323232333106 0 -11267 0.6850830285582001 0.9595969612464896 0 -11268 0.973756805946368 0.3989898989920528 0 -11269 0.6763345422343565 0.9646755931690237 0 -11270 0.7725589848640407 0.8686868686881756 0 -11271 0.9475136118911054 0.8686868686876599 0 -11272 0.9912522686398098 0.04545454547083481 0 -11273 0.9562613432433936 0.4494949494970619 0 -11274 0.9387658805396717 0.8737373737385116 0 -11275 0.6675014294503 0.9699619698454609 0 -11276 0.9212704178379876 0.4595959595980074 0 -11277 0.9300181491893671 0.45454545454755 0 -11278 0.9475136118911023 0.8888888888897674 0 -11279 0.9387658805407649 0.4494949494970528 0 -11280 0.9825045372974205 0.3434343434358841 0 -11281 0.973756805946522 0.2676767676785664 0 -11282 0.9912522686488661 0.176767676768644 0 -11283 0.9912522686488856 0.2070707070717394 0 -11284 0.9825045372975308 0.1414141414149845 0 -11285 0.8687840297290073 0.8737373737380623 0 -11286 0.9650090745947613 0.444444444446622 0 -11287 0.9912522686485377 0.6919191919202708 0 -11288 0.9737568059461176 0.4393939393961533 0 -11289 0.9825045372974971 0.4040404040424287 0 -11290 0.9912522686485316 0.7626262626269181 0 -11291 0.9825045372974768 0.4343434343456046 0 -11292 0.9912522686487879 0.4292929292949555 0 -11293 0.991252268648489 0.7929292929298213 0 -11294 0.9825045372975568 0.4141414141435131 0 -11295 0.9737568059462907 0.3888888888910296 0 -11296 0.9825045372974919 0.3838383838404101 0 -11297 0.9912522686485352 0.8434343434345432 0 -11298 0.9825045372975967 0.2727272727288246 0 -11299 0.9825045372975576 0.3737373737394034 0 -11300 0.9825045372975695 0.3636363636383921 0 -11301 0.9825045372975632 0.3535353535372553 0 -11302 0.9737568059462931 0.3383838383857674 0 -11303 0.9737568059463254 0.3282828282847613 0 -11304 0.9825045372975352 0.3232323232341379 0 -11305 0.9825045372976126 0.3131313131331808 0 -11306 0.9825045372976337 0.3030303030321324 0 -11307 0.9825045372976476 0.2929292929310673 0 -11308 0.9825045372976268 0.2828282828300004 0 -11309 0.9737568059463134 0.2575757575775221 0 -11310 0.9737568059463944 0.2474747474765268 0 -11311 0.9825045372975926 0.2424242424258407 0 -11312 0.9825045372976758 0.2323232323248864 0 -11313 0.9825045372977677 0.2222222222239246 0 -11314 0.9912522686489496 0.2171717171730929 0 -11315 0.982504537297773 0.2020202020217553 0 -11316 0.9825045372978138 0.1919191919208663 0 -11317 0.9912522686489766 0.1868686868699981 0 -11318 0.973756805946405 0.136363636365036 0 -11319 0.9825045372977821 0.1717171717187301 0 -11320 0.9825045372976887 0.161616161617737 0 -11321 0.9825045372976816 0.1515151515165444 0 -11322 0.9737568059464371 0.1262626262642607 0 -11323 0.9825045372976644 0.1212121212134189 0 -11324 0.9825045372976449 0.1111111111127008 0 -11325 0.982504537296511 0.1010101010136581 0 -11326 0.9825045372925939 0.09090909091943866 0 -11327 0.9825045372818894 0.08080808083697616 0 -11328 0.9825045372318724 0.07070707082263868 0 -11329 0.9825045372106614 0.06060606075859752 0 -11330 0.9912522686292718 0.05555555559072897 0 -11331 0.9825072116653016 0.04040274892278076 0 -11332 0.9825289353187926 0.03029358120665897 0 -11333 0.9913115177241245 0.02529948061069354 0 -11334 0.1689055234088935 0.9747117718319331 0 -11335 0.01048054543952397 0.05571510894440543 0 -11336 0.01843206002630463 0.68705517678546 0 -11337 0.03597623973537066 0.5658757458211837 0 -11338 0.009005507873898724 0.7827423060456805 0 -11339 0.02896077016797111 0.3281924010883012 0 -11340 0.01971635916353669 0.7675823438287028 0 -11341 0.02893194469346642 0.3686079956272253 0 -11342 0.02892894802817744 0.8839134859520316 0 -11343 0.02892676698729376 0.1364413672925515 0 -11344 0.009026300538722878 0.581206818612041 0 -11345 0.01892380167799201 0.4994196690319945 0 -11346 0.02350212746392613 0.2350115038880863 0 -11347 0.6499400785693812 0.03035296211961103 0 -11348 0.1596678297159659 0.9797595682099831 0 -11349 0.2040282834303905 0.9744959055065254 0 -11350 0.8231923017832206 0.9921879377715394 0 -11351 0.8865389259050828 0.9653433391786399 0 -11352 0.8162245852627998 0.02553215949291416 0 -11353 0.6765422376202529 0.02560417327809944 0 -11354 0.0199374388209891 0.3230435701347247 0 -11355 0.4600633682523672 0.9915030413946712 0 -11356 0.03807472378018496 0.2319336412231509 0 -11357 0.008660705561679659 0.2474194574540984 0 -11358 0.7226227867441819 0.9915114968231307 0 -11359 0.9038415119578374 0.02594370469085231 0 -11360 0.1162030643820302 0.02543195292364715 0 -11361 0.9916935559662452 0.0154664430322515 0 -11362 0.6586094761325962 0.03553804223964258 0 -11363 0.2128579435317999 0.978972613314807 0 -11364 0.008654812876106357 0.01526603848911973 0 -11365 0.8073903228304797 0.0210402449436682 0 -11366 0.6676507166717175 0.04071799062913366 0 -11367 0.2680299796307282 0.008605573034805405 0 -11368 0.02597527772470206 0.9876970401213369 0 -11369 0.008390525957293523 0.2371772258172271 0 -11370 0.5306710973331644 0.008611566907290834 0 -11371 0.01673585744953113 0.5252294357729741 0 -11372 0.03846295707034446 0.606248279577894 0 -11373 0.02272973140891396 0.6086335069494007 0 -11374 0.03837273933520996 0.5153631732240487 0 -11375 0.008936928041467692 0.7217672250237834 0 -11376 0.01997737543726467 0.4035278862448423 0 -11377 0.1310830974952512 0.0168914834192712 0 -11378 0.8890235409367957 0.01682735256617815 0 -11379 0.02887093780901702 0.9449751889107643 0 -11380 0.007967182590326154 0.6209790588457007 0 -11381 0.4147107900786746 0.01535374642434638 0 -11382 0.09882944086116377 0.02613906312580628 0 -11383 0.5539689346046808 0.9742283635801251 0 -11384 0.6762747579906235 0.01556608250273465 0 -11385 0.1872849824976033 0.02582502302353082 0 -11386 0.9393987657039696 0.01637237461122926 0 -11387 0.343512778819842 0.01585840254771655 0 -11388 0.3435953851418783 0.9837224127575513 0 -11389 0.676553812765605 0.9839295386185664 0 -11390 0.9394208072744834 0.9834355075981487 0 -11391 0.6061598847956015 0.01630248551774945 0 -11392 0.606156133499228 0.9837248957214808 0 -11393 0.4140669318794118 0.9837177866985327 0 -11394 0.8687491215629924 0.01628548375396369 0 -11395 0.8696475970070393 0.9830349282062737 0 -11396 0.1515101281483569 0.9835218566401179 0 -11397 0.1514808590042712 0.0163611779224481 0 -11398 0.08105428016596643 0.9836864773201903 0 -11399 0.08107240817814962 0.01635557457166794 0 -11400 0.221938210447929 0.01630246305968316 0 -11401 0.2208636205049976 0.9837261144541561 0 -11402 0.7992211488774359 0.01634287728729315 0 -11403 0.7995015946932809 0.9840257990343021 0 -11404 0.4843600875460982 0.01612473322315925 0 -11405 0.4832385625337696 0.9840014882202099 0 -11406 0.53582661302365 0.9836440482931439 0 -11407 0.7471035199644923 0.01659566980974117 0 -11408 0.7457559447806552 0.9839826040298618 0 -11409 0.5631356311209341 0.979568985376998 0 -11410 0.2733351448179376 0.9836645848390775 0 -11411 0.5409613037535784 0.008524977800764716 0 -11412 0.02963633753860705 0.01653403203529146 0 -11413 0.8129197663278381 0.007632998646899431 0 -11414 0.2072667655438434 0.9923884075573149 0 -11415 0.876757384586323 0.9687607726783324 0 -11416 0.2921526033351112 0.01634029047286389 0 -11417 0.2921784151220408 0.9834238288854548 0 -11418 0.2783768951371292 0.00850487117152288 0 -11419 0.5545875929261154 0.01662172532784188 0 -11420 0.7281050611759612 0.01649579425471005 0 -11421 0.4656067069213496 0.01620578237637942 0 -11422 0.7323854374807846 0.9926347671555624 0 -11423 0.2031097214260159 0.01659050874836068 0 -11424 0.09988010185473656 0.9833953123399456 0 -11425 0.6618570400917789 0.007592290159885722 0 -11426 0.4698804438274464 0.9926300463019585 0 -11427 0.9227577328146517 0.02533381877500544 0 -11428 0.9203723905955993 0.9833727115246235 0 -11429 0.8131229140194944 0.9927347116746783 0 -11430 0.3624678038264141 0.01651703638821576 0 -11431 0.362370367817428 0.9833639173047485 0 -11432 0.6578067609887585 0.9835516256745962 0 -11433 0.6248885365235715 0.01662854112177032 0 -11434 0.6248592775534831 0.9833477110041923 0 -11435 0.3953495613138797 0.9833990318497702 0 -11436 0.3953084502310966 0.01652469010460183 0 -11437 0.1328919374538181 0.9833290264423312 0 -11438 0.1678106981626007 0.02680329862121884 0 -11439 0.01556607968360297 0.2330374698177357 0 -11440 0.8501090225202603 0.01677015408375076 0 -11441 0.8502112340419701 0.9832489757353691 0 -11442 0.4325182424035338 0.9832273805994357 0 -11443 0.587719815391613 0.01677835712590941 0 -11444 0.5876421775686218 0.983199140882936 0 -11445 0.1670033134482851 0.9932469557002491 0 -11446 0.03075929626460144 0.6117420647723564 0 -11447 0.695007691328387 0.9832177034333772 0 -11448 0.03103831365556867 0.5200745092718132 0 -11449 0.3251667815990323 0.9831860235048405 0 -11450 0.8964760893315881 0.9795963113841891 0 -11451 0.06268663005897616 0.9831687943066254 0 -11452 0.06269126555084595 0.01681598032021695 0 -11453 0.2376351071002556 0.9932200481612793 0 -11454 0.2376399330433903 0.006781714823958636 0 -11455 0.7800040872681584 0.983202647093922 0 -11456 0.5026976827839048 0.01681669342198435 0 -11457 0.5027026962798794 0.9831711330063152 0 -11458 0.0455038399924937 0.9931298187353764 0 -11459 0.04561350641301294 0.006854882168319468 0 -11460 0.5175399696905144 0.01680895663530711 0 -11461 0.5175375794227305 0.9831680280061103 0 -11462 0.9745490254185643 0.00667849653241311 0 -11463 0.9744182662874276 0.9932489217459175 0 -11464 0.3081972034811 0.993149899093038 0 -11465 0.570837973175868 0.9931388764415825 0 -11466 0.7651874920155587 0.9831541206008679 0 -11467 0.8333350573590363 0.006812713798729234 0 -11468 0.1868006646354033 0.9933205542806091 0 -11469 0.2550287582870611 0.9833358481984615 0 -11470 0.2550068502504916 0.01671659065297464 0 -11471 0.1162151261666205 0.9932386982147489 0 -11472 0.9040801640034984 0.9932282732650669 0 -11473 0.3788087954459941 0.9932397533534459 0 -11474 0.6414230023886405 0.006721929042736805 0 -11475 0.6414021912615911 0.9932402406414518 0 -11476 0.310371050276644 0.01683392994889798 0 -11477 0.7098443284970977 0.9831778145104278 0 -11478 0.5728769788005901 0.01685506672476638 0 -11479 0.4473612264187057 0.01680272864664082 0 -11480 0.4473682295457643 0.983164869870287 0 -11481 0.8345768487249078 0.9833825143942785 0 -11482 0.01556355360313367 0.6153178665352312 0 -11483 0.3793162569234254 0.01607570122124171 0 -11484 0.3249118799015617 0.01641564602926197 0 -11485 0.7822306697808528 0.006816074891369418 0 -11486 0.9550267899375051 0.993295596781978 0 -11487 0.03118066576903347 0.6217688596034193 0 -11488 0.9550749568181833 0.006707909544036787 0 -11489 0.6929272947599527 0.00697652533066596 0 -11490 0.4303975183097167 0.007073108497575364 0 -11491 0.01522355026271963 0.5147918880871055 0 -11492 0.7629570889495317 0.00657401577151458 0 -11493 0.01498462219037487 0.6054734426633809 0 -11494 0.7119086226860442 0.006322485636245752 0 -11495 0.006996196620448535 0.007005044421472373 0 -11496 0.007309575077898615 0.9928511641993281 0 -11497 0.9928018113698521 0.9928590542211259 0 -11498 0.9929452270850095 0.007090043551570668 0 -11499 0.1259422039879557 0.02300594279283608 0 -11500 0.894296896733079 0.0229989453984676 0 -11501 0.9109638280619433 0.03272299365772763 0 -11502 0.0311508853951659 0.2360810225905643 0 -11503 0.03184083636143516 0.6310801966790955 0 -11504 0.1066652885539102 0.02324502956681879 0 -11505 0.01438172673933027 0.5060006716224866 0 -11506 0.6671015158821718 0.01381765804389114 0 -11507 0.8756344277543704 0.9763529191601416 0 -11508 0.01415459252481883 0.5966245905331481 0 -11509 0.8079095225580829 0.01373331916480678 0 -11510 0.8083995977645773 0.9866851301768167 0 -11511 0.2122659387982858 0.9862945733227804 0 -11512 0.4745917832203858 0.9866513131989917 0 -11513 0.02560345152356758 0.994171759060594 0 -11514 0.7371514716415539 0.9866714681223325 0 -11515 0.4166881495454142 0.006914414378807866 0 -11516 0.02999318565653565 0.9822991448993974 0 -11517 0.8903930387535213 0.9747610952947439 0 -11518 0.1890416400053099 0.01751886712595411 0 -11519 0.01603829453420018 0.49273684611102 0 -11520 0.679120684873149 0.00684889017632354 0 -11521 0.827241858982932 0.9861886118307603 0 +2 0 10 0 +3 10 10 0 +4 10 0 0 +5 1.249999999998973 10 0 +6 2.499999999995371 10 0 +7 3.749999999991722 10 0 +8 4.999999999992412 10 0 +9 6.249999999994314 10 0 +10 7.499999999996209 10 0 +11 8.749999999998105 10 0 +12 10 8.749999999999996 0 +13 10 7.499999999999991 0 +14 10 6.249999999999988 0 +15 10 4.999999999999983 0 +16 10 3.749999999999982 0 +17 10 2.499999999999989 0 +18 10 1.249999999999995 0 +19 8.749999999999996 0 0 +20 7.499999999999991 0 0 +21 6.249999999999988 0 0 +22 4.999999999999983 0 0 +23 3.749999999999982 0 0 +24 2.499999999999989 0 0 +25 1.249999999999995 0 0 +26 0 1.249999999998973 0 +27 0 2.499999999995371 0 +28 0 3.749999999991722 0 +29 0 4.999999999992412 0 +30 0 6.249999999994314 0 +31 0 7.499999999996209 0 +32 0 8.749999999998105 0 +33 5.173787975656859 5.085045179576663 0 +34 3.031364394973262 2.995765707965804 0 +35 2.995765707966181 6.968635605026964 0 +36 7.008787139054464 2.981299261368599 0 +37 6.785255896460566 6.880804791167919 0 +38 4.984442231378654 2.096535650707435 0 +39 2.097343666220826 5.013201056705908 0 +40 7.903464349292699 4.98444223137876 0 +41 4.957440624148479 7.869392229780525 0 +42 1.700961977199405 1.680679898365461 0 +43 1.680679898365822 8.299038022800783 0 +44 8.299038022800305 1.680679898365364 0 +45 8.299038022800552 8.319320101634261 0 +46 3.548812102952463 4.316109948871402 0 +47 4.315476190476668 6.398809523809786 0 +48 5.683270608328813 3.546679908285533 0 +49 6.359523371713019 5.59292943887881 0 +50 1.536710838181838 3.607654600302749 0 +51 3.607654600302805 8.463289161818345 0 +52 3.707210563238025 1.476553281976585 0 +53 6.392345399698044 1.536710838181512 0 +54 1.45262492874672 6.252574266267288 0 +55 8.540771750810315 3.707392584507128 0 +56 8.463289161818672 6.392345399697989 0 +57 6.327028873276959 8.486407897092512 0 +58 4.196514992706012 3.18714819774071 0 +59 3.187248262461653 5.801083467659856 0 +60 5.606304146112091 6.687021608343258 0 +61 6.75251186372686 4.253657382326634 0 +62 0.8759974756754687 5.372059720513433 0 +63 4.634210612263091 0.9436412383540602 0 +64 5.352792380308166 9.004088475281169 0 +65 9.058833766329872 4.63423661530154 0 +66 0.9937277967549705 2.652888935255312 0 +67 2.652888935255445 9.006272203245086 0 +68 2.606328333024968 1.090910760831789 0 +69 7.304090354364384 0.9836094605874712 0 +70 8.909089239168296 2.606328333025176 0 +71 9.006272203244992 7.347111064742569 0 +72 1.090910760831986 7.393671666975671 0 +73 7.36751917833812 8.938023647432846 0 +74 2.540450587740446 3.886391957268869 0 +75 3.883455983146382 7.455090724357011 0 +76 6.087361749816728 2.530804838191685 0 +77 7.45005368428116 6.08837792360363 0 +78 0.8487587908561302 4.397641718771652 0 +79 4.413420597880402 9.132580617751277 0 +80 5.581396154894826 0.8611262039801124 0 +81 9.139054189947379 5.581398050159993 0 +82 4.761983574842397 4.25713995380524 0 +83 4.247705354472837 5.280986985902764 0 +84 5.926235033294744 4.696649721425565 0 +85 6.151704300182071 7.479814709529951 0 +86 0.9711512445888467 0.9711512445886189 0 +87 0.9711512445883793 9.028848755410968 0 +88 9.028848755411254 0.9711512445887419 0 +89 9.028848755411076 9.028848755411495 0 +90 2.101026448925906 2.803354162164832 0 +91 2.802864833144627 7.898230436423871 0 +92 7.920863709620026 2.773292598841395 0 +93 7.866827644983449 7.171869234502567 0 +94 2.802531761453046 2.055834512369694 0 +95 2.075401154077064 7.190806392590654 0 +96 7.176836064102227 2.05697407056305 0 +97 7.13289565267362 7.879373396893342 0 +98 5.068424493691744 5.900378956892553 0 +99 3.667311641950786 2.429560795407032 0 +100 2.404821709578857 6.30082676898258 0 +101 7.570439204593126 3.667311641951442 0 +102 0.7331682037086446 1.810944015640747 0 +103 1.810944015640798 9.266831796291369 0 +104 1.80568831096264 0.7485483807571737 0 +105 8.176395426515185 0.7270881207083155 0 +106 9.247395203475971 1.801631895195853 0 +107 9.266831796291324 8.189055984357664 0 +108 0.7485483807572375 8.194311689036347 0 +109 8.189081191308814 9.257238500895722 0 $EndNodes $Elements -23044 -1 15 2 0 1 1 -2 15 2 0 2 2 -3 15 2 0 3 3 -4 15 2 0 4 4 -5 1 2 0 1 3 5 -6 1 2 0 1 5 6 -7 1 2 0 1 6 7 -8 1 2 0 1 7 8 -9 1 2 0 1 8 9 -10 1 2 0 1 9 10 -11 1 2 0 1 10 11 -12 1 2 0 1 11 12 -13 1 2 0 1 12 13 -14 1 2 0 1 13 14 -15 1 2 0 1 14 15 -16 1 2 0 1 15 16 -17 1 2 0 1 16 17 -18 1 2 0 1 17 18 -19 1 2 0 1 18 19 -20 1 2 0 1 19 20 -21 1 2 0 1 20 21 -22 1 2 0 1 21 22 -23 1 2 0 1 22 23 -24 1 2 0 1 23 24 -25 1 2 0 1 24 25 -26 1 2 0 1 25 26 -27 1 2 0 1 26 27 -28 1 2 0 1 27 28 -29 1 2 0 1 28 29 -30 1 2 0 1 29 30 -31 1 2 0 1 30 31 -32 1 2 0 1 31 32 -33 1 2 0 1 32 33 -34 1 2 0 1 33 34 -35 1 2 0 1 34 35 -36 1 2 0 1 35 36 -37 1 2 0 1 36 37 -38 1 2 0 1 37 38 -39 1 2 0 1 38 39 -40 1 2 0 1 39 40 -41 1 2 0 1 40 41 -42 1 2 0 1 41 42 -43 1 2 0 1 42 43 -44 1 2 0 1 43 44 -45 1 2 0 1 44 45 -46 1 2 0 1 45 46 -47 1 2 0 1 46 47 -48 1 2 0 1 47 48 -49 1 2 0 1 48 49 -50 1 2 0 1 49 50 -51 1 2 0 1 50 51 -52 1 2 0 1 51 52 -53 1 2 0 1 52 53 -54 1 2 0 1 53 54 -55 1 2 0 1 54 55 -56 1 2 0 1 55 56 -57 1 2 0 1 56 57 -58 1 2 0 1 57 58 -59 1 2 0 1 58 59 -60 1 2 0 1 59 60 -61 1 2 0 1 60 61 -62 1 2 0 1 61 62 -63 1 2 0 1 62 63 -64 1 2 0 1 63 64 -65 1 2 0 1 64 65 -66 1 2 0 1 65 66 -67 1 2 0 1 66 67 -68 1 2 0 1 67 68 -69 1 2 0 1 68 69 -70 1 2 0 1 69 70 -71 1 2 0 1 70 71 -72 1 2 0 1 71 72 -73 1 2 0 1 72 73 -74 1 2 0 1 73 74 -75 1 2 0 1 74 75 -76 1 2 0 1 75 76 -77 1 2 0 1 76 77 -78 1 2 0 1 77 78 -79 1 2 0 1 78 79 -80 1 2 0 1 79 80 -81 1 2 0 1 80 81 -82 1 2 0 1 81 82 -83 1 2 0 1 82 83 -84 1 2 0 1 83 84 -85 1 2 0 1 84 85 -86 1 2 0 1 85 86 -87 1 2 0 1 86 87 -88 1 2 0 1 87 88 -89 1 2 0 1 88 89 -90 1 2 0 1 89 90 -91 1 2 0 1 90 91 -92 1 2 0 1 91 92 -93 1 2 0 1 92 93 -94 1 2 0 1 93 94 -95 1 2 0 1 94 95 -96 1 2 0 1 95 96 -97 1 2 0 1 96 97 -98 1 2 0 1 97 98 -99 1 2 0 1 98 99 -100 1 2 0 1 99 100 -101 1 2 0 1 100 101 -102 1 2 0 1 101 102 -103 1 2 0 1 102 2 -104 1 2 0 2 2 103 -105 1 2 0 2 103 104 -106 1 2 0 2 104 105 -107 1 2 0 2 105 106 -108 1 2 0 2 106 107 -109 1 2 0 2 107 108 -110 1 2 0 2 108 109 -111 1 2 0 2 109 110 -112 1 2 0 2 110 111 -113 1 2 0 2 111 112 -114 1 2 0 2 112 113 -115 1 2 0 2 113 114 -116 1 2 0 2 114 115 -117 1 2 0 2 115 116 -118 1 2 0 2 116 117 -119 1 2 0 2 117 118 -120 1 2 0 2 118 119 -121 1 2 0 2 119 120 -122 1 2 0 2 120 121 -123 1 2 0 2 121 122 -124 1 2 0 2 122 123 -125 1 2 0 2 123 124 -126 1 2 0 2 124 125 -127 1 2 0 2 125 126 -128 1 2 0 2 126 127 -129 1 2 0 2 127 128 -130 1 2 0 2 128 129 -131 1 2 0 2 129 130 -132 1 2 0 2 130 131 -133 1 2 0 2 131 132 -134 1 2 0 2 132 133 -135 1 2 0 2 133 134 -136 1 2 0 2 134 135 -137 1 2 0 2 135 136 -138 1 2 0 2 136 137 -139 1 2 0 2 137 138 -140 1 2 0 2 138 139 -141 1 2 0 2 139 140 -142 1 2 0 2 140 141 -143 1 2 0 2 141 142 -144 1 2 0 2 142 143 -145 1 2 0 2 143 144 -146 1 2 0 2 144 145 -147 1 2 0 2 145 146 -148 1 2 0 2 146 147 -149 1 2 0 2 147 148 -150 1 2 0 2 148 149 -151 1 2 0 2 149 150 -152 1 2 0 2 150 151 -153 1 2 0 2 151 152 -154 1 2 0 2 152 153 -155 1 2 0 2 153 154 -156 1 2 0 2 154 155 -157 1 2 0 2 155 156 -158 1 2 0 2 156 157 -159 1 2 0 2 157 158 -160 1 2 0 2 158 159 -161 1 2 0 2 159 160 -162 1 2 0 2 160 161 -163 1 2 0 2 161 162 -164 1 2 0 2 162 163 -165 1 2 0 2 163 164 -166 1 2 0 2 164 165 -167 1 2 0 2 165 166 -168 1 2 0 2 166 167 -169 1 2 0 2 167 168 -170 1 2 0 2 168 169 -171 1 2 0 2 169 170 -172 1 2 0 2 170 171 -173 1 2 0 2 171 172 -174 1 2 0 2 172 173 -175 1 2 0 2 173 174 -176 1 2 0 2 174 175 -177 1 2 0 2 175 176 -178 1 2 0 2 176 177 -179 1 2 0 2 177 178 -180 1 2 0 2 178 179 -181 1 2 0 2 179 180 -182 1 2 0 2 180 181 -183 1 2 0 2 181 182 -184 1 2 0 2 182 183 -185 1 2 0 2 183 184 -186 1 2 0 2 184 185 -187 1 2 0 2 185 186 -188 1 2 0 2 186 187 -189 1 2 0 2 187 188 -190 1 2 0 2 188 189 -191 1 2 0 2 189 190 -192 1 2 0 2 190 191 -193 1 2 0 2 191 192 -194 1 2 0 2 192 193 -195 1 2 0 2 193 194 -196 1 2 0 2 194 195 -197 1 2 0 2 195 196 -198 1 2 0 2 196 197 -199 1 2 0 2 197 198 -200 1 2 0 2 198 199 -201 1 2 0 2 199 200 -202 1 2 0 2 200 1 -203 1 2 0 3 1 201 -204 1 2 0 3 201 202 -205 1 2 0 3 202 203 -206 1 2 0 3 203 204 -207 1 2 0 3 204 205 -208 1 2 0 3 205 206 -209 1 2 0 3 206 207 -210 1 2 0 3 207 208 -211 1 2 0 3 208 209 -212 1 2 0 3 209 210 -213 1 2 0 3 210 211 -214 1 2 0 3 211 212 -215 1 2 0 3 212 213 -216 1 2 0 3 213 214 -217 1 2 0 3 214 215 -218 1 2 0 3 215 216 -219 1 2 0 3 216 217 -220 1 2 0 3 217 218 -221 1 2 0 3 218 219 -222 1 2 0 3 219 220 -223 1 2 0 3 220 221 -224 1 2 0 3 221 222 -225 1 2 0 3 222 223 -226 1 2 0 3 223 224 -227 1 2 0 3 224 225 -228 1 2 0 3 225 226 -229 1 2 0 3 226 227 -230 1 2 0 3 227 228 -231 1 2 0 3 228 229 -232 1 2 0 3 229 230 -233 1 2 0 3 230 231 -234 1 2 0 3 231 232 -235 1 2 0 3 232 233 -236 1 2 0 3 233 234 -237 1 2 0 3 234 235 -238 1 2 0 3 235 236 -239 1 2 0 3 236 237 -240 1 2 0 3 237 238 -241 1 2 0 3 238 239 -242 1 2 0 3 239 240 -243 1 2 0 3 240 241 -244 1 2 0 3 241 242 -245 1 2 0 3 242 243 -246 1 2 0 3 243 244 -247 1 2 0 3 244 245 -248 1 2 0 3 245 246 -249 1 2 0 3 246 247 -250 1 2 0 3 247 248 -251 1 2 0 3 248 249 -252 1 2 0 3 249 250 -253 1 2 0 3 250 251 -254 1 2 0 3 251 252 -255 1 2 0 3 252 253 -256 1 2 0 3 253 254 -257 1 2 0 3 254 255 -258 1 2 0 3 255 256 -259 1 2 0 3 256 257 -260 1 2 0 3 257 258 -261 1 2 0 3 258 259 -262 1 2 0 3 259 260 -263 1 2 0 3 260 261 -264 1 2 0 3 261 262 -265 1 2 0 3 262 263 -266 1 2 0 3 263 264 -267 1 2 0 3 264 265 -268 1 2 0 3 265 266 -269 1 2 0 3 266 267 -270 1 2 0 3 267 268 -271 1 2 0 3 268 269 -272 1 2 0 3 269 270 -273 1 2 0 3 270 271 -274 1 2 0 3 271 272 -275 1 2 0 3 272 273 -276 1 2 0 3 273 274 -277 1 2 0 3 274 275 -278 1 2 0 3 275 276 -279 1 2 0 3 276 277 -280 1 2 0 3 277 278 -281 1 2 0 3 278 279 -282 1 2 0 3 279 280 -283 1 2 0 3 280 281 -284 1 2 0 3 281 282 -285 1 2 0 3 282 283 -286 1 2 0 3 283 284 -287 1 2 0 3 284 285 -288 1 2 0 3 285 286 -289 1 2 0 3 286 287 -290 1 2 0 3 287 288 -291 1 2 0 3 288 289 -292 1 2 0 3 289 290 -293 1 2 0 3 290 291 -294 1 2 0 3 291 292 -295 1 2 0 3 292 293 -296 1 2 0 3 293 294 -297 1 2 0 3 294 295 -298 1 2 0 3 295 296 -299 1 2 0 3 296 297 -300 1 2 0 3 297 298 -301 1 2 0 3 298 4 -302 1 2 0 4 4 299 -303 1 2 0 4 299 300 -304 1 2 0 4 300 301 -305 1 2 0 4 301 302 -306 1 2 0 4 302 303 -307 1 2 0 4 303 304 -308 1 2 0 4 304 305 -309 1 2 0 4 305 306 -310 1 2 0 4 306 307 -311 1 2 0 4 307 308 -312 1 2 0 4 308 309 -313 1 2 0 4 309 310 -314 1 2 0 4 310 311 -315 1 2 0 4 311 312 -316 1 2 0 4 312 313 -317 1 2 0 4 313 314 -318 1 2 0 4 314 315 -319 1 2 0 4 315 316 -320 1 2 0 4 316 317 -321 1 2 0 4 317 318 -322 1 2 0 4 318 319 -323 1 2 0 4 319 320 -324 1 2 0 4 320 321 -325 1 2 0 4 321 322 -326 1 2 0 4 322 323 -327 1 2 0 4 323 324 -328 1 2 0 4 324 325 -329 1 2 0 4 325 326 -330 1 2 0 4 326 327 -331 1 2 0 4 327 328 -332 1 2 0 4 328 329 -333 1 2 0 4 329 330 -334 1 2 0 4 330 331 -335 1 2 0 4 331 332 -336 1 2 0 4 332 333 -337 1 2 0 4 333 334 -338 1 2 0 4 334 335 -339 1 2 0 4 335 336 -340 1 2 0 4 336 337 -341 1 2 0 4 337 338 -342 1 2 0 4 338 339 -343 1 2 0 4 339 340 -344 1 2 0 4 340 341 -345 1 2 0 4 341 342 -346 1 2 0 4 342 343 -347 1 2 0 4 343 344 -348 1 2 0 4 344 345 -349 1 2 0 4 345 346 -350 1 2 0 4 346 347 -351 1 2 0 4 347 348 -352 1 2 0 4 348 349 -353 1 2 0 4 349 350 -354 1 2 0 4 350 351 -355 1 2 0 4 351 352 -356 1 2 0 4 352 353 -357 1 2 0 4 353 354 -358 1 2 0 4 354 355 -359 1 2 0 4 355 356 -360 1 2 0 4 356 357 -361 1 2 0 4 357 358 -362 1 2 0 4 358 359 -363 1 2 0 4 359 360 -364 1 2 0 4 360 361 -365 1 2 0 4 361 362 -366 1 2 0 4 362 363 -367 1 2 0 4 363 364 -368 1 2 0 4 364 365 -369 1 2 0 4 365 366 -370 1 2 0 4 366 367 -371 1 2 0 4 367 368 -372 1 2 0 4 368 369 -373 1 2 0 4 369 370 -374 1 2 0 4 370 371 -375 1 2 0 4 371 372 -376 1 2 0 4 372 373 -377 1 2 0 4 373 374 -378 1 2 0 4 374 375 -379 1 2 0 4 375 376 -380 1 2 0 4 376 377 -381 1 2 0 4 377 378 -382 1 2 0 4 378 379 -383 1 2 0 4 379 380 -384 1 2 0 4 380 381 -385 1 2 0 4 381 382 -386 1 2 0 4 382 383 -387 1 2 0 4 383 384 -388 1 2 0 4 384 385 -389 1 2 0 4 385 386 -390 1 2 0 4 386 387 -391 1 2 0 4 387 388 -392 1 2 0 4 388 389 -393 1 2 0 4 389 390 -394 1 2 0 4 390 391 -395 1 2 0 4 391 392 -396 1 2 0 4 392 393 -397 1 2 0 4 393 394 -398 1 2 0 4 394 395 -399 1 2 0 4 395 396 -400 1 2 0 4 396 3 -401 2 2 0 6 441 7346 8028 -402 2 2 0 6 560 10091 9648 -403 2 2 0 6 458 11355 7951 -404 2 2 0 6 454 6851 11483 -405 2 2 0 6 4628 6925 6923 -406 2 2 0 6 524 8371 6757 -407 2 2 0 6 7346 11479 8028 -408 2 2 0 6 458 7951 11480 -409 2 2 0 6 476 11358 7710 -410 2 2 0 6 5169 6736 8401 -411 2 2 0 6 560 9648 11478 -412 2 2 0 6 454 11483 8366 -413 2 2 0 6 423 9172 6759 -414 2 2 0 6 122 9033 429 -415 2 2 0 6 8166 6734 8335 -416 2 2 0 6 6876 11348 9401 -417 2 2 0 6 419 6778 11367 -418 2 2 0 6 476 7710 11477 -419 2 2 0 6 501 7332 6761 -420 2 2 0 6 397 7335 7699 -421 2 2 0 6 398 6765 9666 -422 2 2 0 6 108 469 6945 -423 2 2 0 6 524 6757 11476 -424 2 2 0 6 6741 8875 8240 -425 2 2 0 6 558 10416 11370 -426 2 2 0 6 471 9516 6782 -427 2 2 0 6 465 6781 7828 -428 2 2 0 6 391 7845 470 -429 2 2 0 6 4638 6936 6937 -430 2 2 0 6 4628 6923 6922 -431 2 2 0 6 4638 6937 6938 -432 2 2 0 6 415 9262 6768 -433 2 2 0 6 514 6769 8237 -434 2 2 0 6 8323 10166 8902 -435 2 2 0 6 406 7585 9650 -436 2 2 0 6 402 8440 6772 -437 2 2 0 6 554 6773 9537 -438 2 2 0 6 477 9563 6780 -439 2 2 0 6 483 7507 7692 -440 2 2 0 6 434 7615 9523 -441 2 2 0 6 438 7856 6774 -442 2 2 0 6 513 8088 6784 -443 2 2 0 6 5145 6127 6932 -444 2 2 0 6 419 11470 6778 -445 2 2 0 6 423 6759 11469 -446 2 2 0 6 439 6846 9381 -447 2 2 0 6 435 8022 6837 -448 2 2 0 6 6770 11275 8305 -449 2 2 0 6 510 6845 7386 -450 2 2 0 6 6736 9360 8370 -451 2 2 0 6 8166 11466 6734 -452 2 2 0 6 407 7985 9292 -453 2 2 0 6 551 7129 9456 -454 2 2 0 6 528 8359 6844 -455 2 2 0 6 535 9122 6843 -456 2 2 0 6 5127 8091 8089 -457 2 2 0 6 449 6806 6807 -458 2 2 0 6 496 6801 6800 -459 2 2 0 6 440 6787 6789 -460 2 2 0 6 226 227 6914 -461 2 2 0 6 482 6797 6799 -462 2 2 0 6 220 221 6885 -463 2 2 0 6 221 6931 6885 -464 2 2 0 6 221 222 6931 -465 2 2 0 6 235 236 6916 -466 2 2 0 6 541 6811 6812 -467 2 2 0 6 556 6814 6815 -468 2 2 0 6 245 246 6884 -469 2 2 0 6 4641 7398 7399 -470 2 2 0 6 531 6822 6823 -471 2 2 0 6 519 8561 6825 -472 2 2 0 6 5651 8562 5653 -473 2 2 0 6 5653 8562 8563 -474 2 2 0 6 5653 8563 5655 -475 2 2 0 6 274 275 8331 -476 2 2 0 6 275 8334 8331 -477 2 2 0 6 275 276 8334 -478 2 2 0 6 294 295 6905 -479 2 2 0 6 280 281 6895 -480 2 2 0 6 436 6833 6832 -481 2 2 0 6 455 6828 6829 -482 2 2 0 6 291 292 6919 -483 2 2 0 6 547 6810 6974 -484 2 2 0 6 6156 7466 9934 -485 2 2 0 6 470 7722 9494 -486 2 2 0 6 530 9139 6794 -487 2 2 0 6 507 6793 7875 -488 2 2 0 6 555 6819 6934 -489 2 2 0 6 516 6792 6933 -490 2 2 0 6 443 7423 6786 -491 2 2 0 6 216 217 6929 -492 2 2 0 6 231 232 6930 -493 2 2 0 6 513 6784 8089 -494 2 2 0 6 422 9498 6840 -495 2 2 0 6 537 9255 6839 -496 2 2 0 6 561 6926 7483 -497 2 2 0 6 6139 8559 10326 -498 2 2 0 6 558 11460 10416 -499 2 2 0 6 501 6761 11461 -500 2 2 0 6 6815 8083 6893 -501 2 2 0 6 273 420 8333 -502 2 2 0 6 561 11364 6926 -503 2 2 0 6 397 7699 11456 -504 2 2 0 6 398 11457 6765 -505 2 2 0 6 416 6918 11354 -506 2 2 0 6 216 6929 6886 -507 2 2 0 6 231 6930 6883 -508 2 2 0 6 408 11376 6897 -509 2 2 0 6 6305 6308 7247 -510 2 2 0 6 205 206 11335 -511 2 2 0 6 5648 11336 5649 -512 2 2 0 6 540 6961 6820 -513 2 2 0 6 546 6956 6808 -514 2 2 0 6 533 6954 6813 -515 2 2 0 6 459 6963 6805 -516 2 2 0 6 472 6957 6809 -517 2 2 0 6 547 6960 6810 -518 2 2 0 6 556 6958 6814 -519 2 2 0 6 516 6967 6792 -520 2 2 0 6 523 6965 6835 -521 2 2 0 6 518 6830 6962 -522 2 2 0 6 5521 9345 6904 -523 2 2 0 6 6876 9401 11445 -524 2 2 0 6 6132 8563 11375 -525 2 2 0 6 6837 8022 11377 -526 2 2 0 6 6741 11455 8875 -527 2 2 0 6 6653 6947 6896 -528 2 2 0 6 6845 11378 7386 -529 2 2 0 6 489 9851 6785 -530 2 2 0 6 495 6849 6847 -531 2 2 0 6 416 6969 6918 -532 2 2 0 6 562 6907 6970 -533 2 2 0 6 6069 6921 11169 -534 2 2 0 6 464 11411 9664 -535 2 2 0 6 6817 6934 6819 -536 2 2 0 6 6134 6933 6792 -537 2 2 0 6 478 11418 9212 -538 2 2 0 6 564 6872 6873 -539 2 2 0 6 3861 3863 11337 -540 2 2 0 6 4226 7406 7408 -541 2 2 0 6 127 422 7435 -542 2 2 0 6 465 11452 6781 -543 2 2 0 6 471 6782 11451 -544 2 2 0 6 228 229 6887 -545 2 2 0 6 213 214 6889 -546 2 2 0 6 209 210 6888 -547 2 2 0 6 237 238 6890 -548 2 2 0 6 211 212 6891 -549 2 2 0 6 241 242 6892 -550 2 2 0 6 207 208 6955 -551 2 2 0 6 215 216 6886 -552 2 2 0 6 5386 6894 7594 -553 2 2 0 6 239 240 6897 -554 2 2 0 6 230 231 6883 -555 2 2 0 6 5151 6898 5152 -556 2 2 0 6 263 264 6899 -557 2 2 0 6 3867 3869 7403 -558 2 2 0 6 265 266 6908 -559 2 2 0 6 283 284 6910 -560 2 2 0 6 287 288 6911 -561 2 2 0 6 5657 8332 5659 -562 2 2 0 6 285 286 6912 -563 2 2 0 6 289 290 6913 -564 2 2 0 6 205 11335 6802 -565 2 2 0 6 5648 6909 11336 -566 2 2 0 6 6818 6936 11034 -567 2 2 0 6 4627 6922 5148 -568 2 2 0 6 481 7151 7167 -569 2 2 0 6 408 6893 11376 -570 2 2 0 6 6132 11375 8333 -571 2 2 0 6 6304 6305 7247 -572 2 2 0 6 182 183 8092 -573 2 2 0 6 3863 7401 11337 -574 2 2 0 6 6574 10326 8559 -575 2 2 0 6 415 6768 11449 -576 2 2 0 6 6827 11379 6920 -577 2 2 0 6 514 11447 6769 -578 2 2 0 6 6671 8370 9360 -579 2 2 0 6 204 205 6802 -580 2 2 0 6 202 203 6803 -581 2 2 0 6 3863 3865 7401 -582 2 2 0 6 5150 5837 6917 -583 2 2 0 6 5648 9605 6909 -584 2 2 0 6 5157 6906 6135 -585 2 2 0 6 6653 6896 9731 -586 2 2 0 6 5127 8089 11438 -587 2 2 0 6 477 6780 11454 -588 2 2 0 6 483 11453 7507 -589 2 2 0 6 6793 7876 7875 -590 2 2 0 6 6868 8305 11275 -591 2 2 0 6 6121 10166 8323 -592 2 2 0 6 6652 10819 6948 -593 2 2 0 6 406 11443 7585 -594 2 2 0 6 402 6772 11444 -595 2 2 0 6 424 6821 6915 -596 2 2 0 6 496 6800 6803 -597 2 2 0 6 538 6804 6917 -598 2 2 0 6 496 6802 6801 -599 2 2 0 6 555 6935 6819 -600 2 2 0 6 4641 7399 7401 -601 2 2 0 6 428 6791 6896 -602 2 2 0 6 412 6909 6824 -603 2 2 0 6 490 6906 6826 -604 2 2 0 6 554 11442 6773 -605 2 2 0 6 553 7697 6836 -606 2 2 0 6 3875 3877 6938 -607 2 2 0 6 5169 8401 6611 -608 2 2 0 6 6128 6893 8083 -609 2 2 0 6 272 273 8333 -610 2 2 0 6 431 6877 6875 -611 2 2 0 6 5145 6932 5146 -612 2 2 0 6 416 11354 6930 -613 2 2 0 6 3857 3859 7409 -614 2 2 0 6 6920 11379 6921 -615 2 2 0 6 434 11440 7615 -616 2 2 0 6 438 6774 11441 -617 2 2 0 6 447 6863 8626 -618 2 2 0 6 6736 11387 8401 -619 2 2 0 6 502 6796 11409 -620 2 2 0 6 7407 11344 7413 -621 2 2 0 6 543 6864 6866 -622 2 2 0 6 122 123 9033 -623 2 2 0 6 6786 7423 7424 -624 2 2 0 6 6846 11437 9381 -625 2 2 0 6 6653 6948 6947 -626 2 2 0 6 183 8090 8092 -627 2 2 0 6 544 7819 7820 -628 2 2 0 6 429 9033 11402 -629 2 2 0 6 107 108 6945 -630 2 2 0 6 457 8792 6852 -631 2 2 0 6 479 11340 8334 -632 2 2 0 6 479 6949 11340 -633 2 2 0 6 548 6855 6856 -634 2 2 0 6 522 6867 6869 -635 2 2 0 6 482 6883 6797 -636 2 2 0 6 440 6886 6787 -637 2 2 0 6 449 6891 6806 -638 2 2 0 6 449 6807 6888 -639 2 2 0 6 546 6808 6891 -640 2 2 0 6 432 6790 6894 -641 2 2 0 6 440 6789 6889 -642 2 2 0 6 533 6813 6955 -643 2 2 0 6 541 6897 6811 -644 2 2 0 6 482 6799 6887 -645 2 2 0 6 460 6816 6898 -646 2 2 0 6 541 6812 6890 -647 2 2 0 6 556 6815 6892 -648 2 2 0 6 4641 7403 7398 -649 2 2 0 6 4640 7400 7403 -650 2 2 0 6 531 6908 6822 -651 2 2 0 6 412 6824 6908 -652 2 2 0 6 420 8330 8332 -653 2 2 0 6 531 6823 6899 -654 2 2 0 6 436 6912 6833 -655 2 2 0 6 455 6913 6828 -656 2 2 0 6 523 6835 6912 -657 2 2 0 6 436 6832 6910 -658 2 2 0 6 455 6829 6911 -659 2 2 0 6 466 6920 6831 -660 2 2 0 6 7985 11435 9292 -661 2 2 0 6 391 392 7845 -662 2 2 0 6 469 11386 6945 -663 2 2 0 6 7129 11433 9456 -664 2 2 0 6 6844 8359 11434 -665 2 2 0 6 5146 6932 11346 -666 2 2 0 6 424 6914 6821 -667 2 2 0 6 226 6914 424 -668 2 2 0 6 538 6916 6804 -669 2 2 0 6 235 6916 538 -670 2 2 0 6 432 6885 6790 -671 2 2 0 6 220 6885 432 -672 2 2 0 6 460 6884 6816 -673 2 2 0 6 245 6884 460 -674 2 2 0 6 222 486 6931 -675 2 2 0 6 227 540 6914 -676 2 2 0 6 540 6820 6914 -677 2 2 0 6 236 459 6916 -678 2 2 0 6 459 6805 6916 -679 2 2 0 6 5655 8563 6132 -680 2 2 0 6 420 8331 8330 -681 2 2 0 6 274 8331 420 -682 2 2 0 6 428 6895 6791 -683 2 2 0 6 280 6895 428 -684 2 2 0 6 295 490 6905 -685 2 2 0 6 490 6826 6905 -686 2 2 0 6 518 6919 6830 -687 2 2 0 6 291 6919 518 -688 2 2 0 6 6825 8561 8562 -689 2 2 0 6 5651 6825 8562 -690 2 2 0 6 276 479 8334 -691 2 2 0 6 292 466 6919 -692 2 2 0 6 466 6831 6919 -693 2 2 0 6 463 6853 6855 -694 2 2 0 6 452 6869 9698 -695 2 2 0 6 6917 6918 6969 -696 2 2 0 6 6906 6970 6907 -697 2 2 0 6 246 6934 6884 -698 2 2 0 6 281 6933 6895 -699 2 2 0 6 294 6905 6943 -700 2 2 0 6 547 6974 6929 -701 2 2 0 6 536 8858 8792 -702 2 2 0 6 395 396 11080 -703 2 2 0 6 4228 11169 6921 -704 2 2 0 6 6803 6926 11364 -705 2 2 0 6 6843 9122 11431 -706 2 2 0 6 427 11518 6850 -707 2 2 0 6 217 547 6929 -708 2 2 0 6 232 416 6930 -709 2 2 0 6 204 6802 496 -710 2 2 0 6 203 496 6803 -711 2 2 0 6 5150 6917 6804 -712 2 2 0 6 3865 4641 7401 -713 2 2 0 6 6824 6909 9605 -714 2 2 0 6 5157 6826 6906 -715 2 2 0 6 6791 9731 6896 -716 2 2 0 6 470 7845 11390 -717 2 2 0 6 6823 6904 6900 -718 2 2 0 6 6127 6931 6932 -719 2 2 0 6 4644 6904 9345 -720 2 2 0 6 5521 6904 6823 -721 2 2 0 6 539 6861 6863 -722 2 2 0 6 489 6785 11459 -723 2 2 0 6 495 11458 6849 -724 2 2 0 6 7466 11427 9934 -725 2 2 0 6 7722 11428 9494 -726 2 2 0 6 472 6809 11335 -727 2 2 0 6 519 6825 11336 -728 2 2 0 6 4226 7408 7409 -729 2 2 0 6 6794 9139 11424 -730 2 2 0 6 6223 6925 10493 -731 2 2 0 6 4628 10493 6925 -732 2 2 0 6 542 6875 6874 -733 2 2 0 6 564 11462 6872 -734 2 2 0 6 4638 11034 6936 -735 2 2 0 6 4627 4628 6922 -736 2 2 0 6 427 8092 11518 -737 2 2 0 6 4640 11448 7400 -738 2 2 0 6 6827 6920 6943 -739 2 2 0 6 6318 11383 11409 -740 2 2 0 6 6815 6893 6892 -741 2 2 0 6 6823 6900 6899 -742 2 2 0 6 420 8332 8333 -743 2 2 0 6 126 127 7435 -744 2 2 0 6 5837 6918 6917 -745 2 2 0 6 6135 6906 6907 -746 2 2 0 6 6779 9212 11418 -747 2 2 0 6 540 6887 6961 -748 2 2 0 6 459 6890 6963 -749 2 2 0 6 546 6889 6956 -750 2 2 0 6 533 6888 6954 -751 2 2 0 6 472 6955 6957 -752 2 2 0 6 6810 6960 6894 -753 2 2 0 6 516 6910 6967 -754 2 2 0 6 523 6911 6965 -755 2 2 0 6 6814 6958 6898 -756 2 2 0 6 518 6962 6913 -757 2 2 0 6 228 6887 540 -758 2 2 0 6 229 482 6887 -759 2 2 0 6 214 440 6889 -760 2 2 0 6 210 449 6888 -761 2 2 0 6 209 6888 533 -762 2 2 0 6 213 6889 546 -763 2 2 0 6 238 541 6890 -764 2 2 0 6 237 6890 459 -765 2 2 0 6 212 546 6891 -766 2 2 0 6 215 6886 440 -767 2 2 0 6 211 6891 449 -768 2 2 0 6 241 6892 408 -769 2 2 0 6 242 556 6892 -770 2 2 0 6 208 533 6955 -771 2 2 0 6 207 6955 472 -772 2 2 0 6 230 6883 482 -773 2 2 0 6 5386 6810 6894 -774 2 2 0 6 6790 7594 6894 -775 2 2 0 6 239 6897 541 -776 2 2 0 6 240 408 6897 -777 2 2 0 6 5151 6814 6898 -778 2 2 0 6 5152 6898 6816 -779 2 2 0 6 264 531 6899 -780 2 2 0 6 263 6899 456 -781 2 2 0 6 3869 4640 7403 -782 2 2 0 6 3867 7403 4641 -783 2 2 0 6 266 412 6908 -784 2 2 0 6 265 6908 531 -785 2 2 0 6 284 436 6910 -786 2 2 0 6 283 6910 516 -787 2 2 0 6 287 6911 523 -788 2 2 0 6 288 455 6911 -789 2 2 0 6 5659 8332 8330 -790 2 2 0 6 5657 6132 8332 -791 2 2 0 6 285 6912 436 -792 2 2 0 6 286 523 6912 -793 2 2 0 6 290 518 6913 -794 2 2 0 6 289 6913 455 -795 2 2 0 6 8323 8902 11381 -796 2 2 0 6 6942 7400 11448 -797 2 2 0 6 6817 6884 6934 -798 2 2 0 6 6134 6895 6933 -799 2 2 0 6 6827 6943 6905 -800 2 2 0 6 464 9664 11419 -801 2 2 0 6 9665 9664 11411 -802 2 2 0 6 481 11464 7151 -803 2 2 0 6 183 184 8090 -804 2 2 0 6 117 6881 434 -805 2 2 0 6 6818 6819 6936 -806 2 2 0 6 5148 6922 6821 -807 2 2 0 6 6069 6831 6921 -808 2 2 0 6 182 8092 427 -809 2 2 0 6 206 472 11335 -810 2 2 0 6 5649 11336 6825 -811 2 2 0 6 6839 9255 11417 -812 2 2 0 6 478 9212 11416 -813 2 2 0 6 562 6971 6907 -814 2 2 0 6 6942 11371 7400 -815 2 2 0 6 6840 9498 11420 -816 2 2 0 6 4226 11337 7406 -817 2 2 0 6 117 118 6881 -818 2 2 0 6 7407 7413 7408 -819 2 2 0 6 7408 7413 7410 -820 2 2 0 6 525 11483 6860 -821 2 2 0 6 5665 6948 10819 -822 2 2 0 6 6652 6948 6653 -823 2 2 0 6 355 356 6882 -824 2 2 0 6 299 300 6971 -825 2 2 0 6 329 330 7152 -826 2 2 0 6 450 6866 11450 -827 2 2 0 6 6926 11412 7483 -828 2 2 0 6 492 6870 6872 -829 2 2 0 6 494 7842 7840 -830 2 2 0 6 303 304 7447 -831 2 2 0 6 195 196 6927 -832 2 2 0 6 3861 11337 4226 -833 2 2 0 6 3877 4638 6938 -834 2 2 0 6 3875 6938 4639 -835 2 2 0 6 356 402 6882 -836 2 2 0 6 537 6839 11410 -837 2 2 0 6 502 11465 6796 -838 2 2 0 6 422 6840 11407 -839 2 2 0 6 6900 6904 6902 -840 2 2 0 6 3859 4226 7409 -841 2 2 0 6 3857 7409 4642 -842 2 2 0 6 553 7698 7697 -843 2 2 0 6 431 6878 6877 -844 2 2 0 6 6770 8305 11389 -845 2 2 0 6 148 11370 11411 -846 2 2 0 6 174 11367 11418 -847 2 2 0 6 404 7413 11344 -848 2 2 0 6 396 11497 11080 -849 2 2 0 6 443 6786 11406 -850 2 2 0 6 548 6856 6857 -851 2 2 0 6 6736 8370 11387 -852 2 2 0 6 6932 11439 11346 -853 2 2 0 6 7408 7410 7409 -854 2 2 0 6 6771 11481 7771 -855 2 2 0 6 542 6874 6876 -856 2 2 0 6 485 7818 7819 -857 2 2 0 6 494 7840 7843 -858 2 2 0 6 330 415 7152 -859 2 2 0 6 488 7434 6879 -860 2 2 0 6 530 6794 11398 -861 2 2 0 6 507 11399 6793 -862 2 2 0 6 6156 11386 7466 -863 2 2 0 6 553 6836 11467 -864 2 2 0 6 499 7925 11479 -865 2 2 0 6 7827 9597 11480 -866 2 2 0 6 470 11390 7722 -867 2 2 0 6 488 6879 7433 -868 2 2 0 6 544 11494 7819 -869 2 2 0 6 5665 6949 6948 -870 2 2 0 6 7506 7507 9218 -871 2 2 0 6 6766 8591 6780 -872 2 2 0 6 8043 9556 11478 -873 2 2 0 6 431 6875 11468 -874 2 2 0 6 422 11407 7435 -875 2 2 0 6 7410 7413 7412 -876 2 2 0 6 535 6843 11388 -877 2 2 0 6 492 6928 6870 -878 2 2 0 6 6767 8284 11477 -879 2 2 0 6 9665 11370 10416 -880 2 2 0 6 304 471 7447 -881 2 2 0 6 195 6927 465 -882 2 2 0 6 7424 11409 11383 -883 2 2 0 6 447 11471 6863 -884 2 2 0 6 8407 11476 10812 -885 2 2 0 6 6779 11367 6778 -886 2 2 0 6 485 6944 7818 -887 2 2 0 6 6139 11400 8559 -888 2 2 0 6 543 6866 11472 -889 2 2 0 6 7710 11358 7712 -890 2 2 0 6 184 513 8090 -891 2 2 0 6 6837 11377 6838 -892 2 2 0 6 6137 7820 7819 -893 2 2 0 6 551 11391 7129 -894 2 2 0 6 528 6844 11392 -895 2 2 0 6 6842 7951 11355 -896 2 2 0 6 5665 11340 6949 -897 2 2 0 6 499 6951 7925 -898 2 2 0 6 6902 6904 11503 -899 2 2 0 6 6149 11378 6845 -900 2 2 0 6 407 11393 7985 -901 2 2 0 6 11348 11396 9401 -902 2 2 0 6 5234 11353 6953 -903 2 2 0 6 6766 11470 8591 -904 2 2 0 6 7506 9218 11469 -905 2 2 0 6 473 6880 11466 -906 2 2 0 6 525 8366 11483 -907 2 2 0 6 457 11473 8792 -908 2 2 0 6 6137 7819 7818 -909 2 2 0 6 564 6873 11361 -910 2 2 0 6 510 11394 6845 -911 2 2 0 6 479 11338 6949 -912 2 2 0 6 202 6803 11364 -913 2 2 0 6 502 11409 7424 -914 2 2 0 6 548 11474 6855 -915 2 2 0 6 522 6869 11475 -916 2 2 0 6 7640 11460 10356 -917 2 2 0 6 7369 11461 9374 -918 2 2 0 6 439 11396 6846 -919 2 2 0 6 435 6837 11397 -920 2 2 0 6 7640 10356 11456 -921 2 2 0 6 7369 9374 11457 -922 2 2 0 6 6308 11404 7247 -923 2 2 0 6 299 6971 11496 -924 2 2 0 6 6784 8088 11397 -925 2 2 0 6 6859 6953 11353 -926 2 2 0 6 6154 7820 8164 -927 2 2 0 6 6143 7434 6733 -928 2 2 0 6 473 11455 6880 -929 2 2 0 6 513 8089 8090 -930 2 2 0 6 7615 11394 9523 -931 2 2 0 6 6774 7856 11395 -932 2 2 0 6 463 6855 11474 -933 2 2 0 6 452 11475 6869 -934 2 2 0 6 7672 11366 11362 -935 2 2 0 6 6143 6879 7434 -936 2 2 0 6 536 8792 11473 -937 2 2 0 6 6776 6777 11521 -938 2 2 0 6 6777 11350 11521 -939 2 2 0 6 6773 11393 9537 -940 2 2 0 6 11370 9665 11411 -941 2 2 0 6 6779 11418 11367 -942 2 2 0 6 224 11357 11369 -943 2 2 0 6 7585 11391 9650 -944 2 2 0 6 6772 8440 11392 -945 2 2 0 6 6137 8164 7820 -946 2 2 0 6 506 7771 11481 -947 2 2 0 6 6767 11447 8284 -948 2 2 0 6 450 11450 8152 -949 2 2 0 6 6947 6949 11338 -950 2 2 0 6 5174 11351 11517 -951 2 2 0 6 6821 6922 6915 -952 2 2 0 6 6819 6935 6936 -953 2 2 0 6 7399 7402 7401 -954 2 2 0 6 8043 11443 9556 -955 2 2 0 6 450 11472 6866 -956 2 2 0 6 7827 11442 9597 -957 2 2 0 6 11351 8154 11517 -958 2 2 0 6 6769 11389 8237 -959 2 2 0 6 6800 6926 6803 -960 2 2 0 6 428 6896 6946 -961 2 2 0 6 6768 9262 11388 -962 2 2 0 6 6771 7771 11441 -963 2 2 0 6 539 6863 11471 -964 2 2 0 6 499 11479 7346 -965 2 2 0 6 458 11480 9597 -966 2 2 0 6 539 11437 6861 -967 2 2 0 6 560 11478 9556 -968 2 2 0 6 6223 11356 6925 -969 2 2 0 6 542 11468 6875 -970 2 2 0 6 536 11435 8858 -971 2 2 0 6 6782 9516 11398 -972 2 2 0 6 7828 6781 11399 -973 2 2 0 6 463 11433 6853 -974 2 2 0 6 452 9698 11434 -975 2 2 0 6 5127 11385 8091 -976 2 2 0 6 6923 6925 11502 -977 2 2 0 6 7840 7841 7843 -978 2 2 0 6 483 7692 11401 -979 2 2 0 6 477 11400 9563 -980 2 2 0 6 6733 7434 7435 -981 2 2 0 6 522 11432 6867 -982 2 2 0 6 6741 8240 11403 -983 2 2 0 6 257 258 11344 -984 2 2 0 6 454 11430 6851 -985 2 2 0 6 457 6852 11431 -986 2 2 0 6 525 6860 11436 -987 2 2 0 6 538 6917 6969 -988 2 2 0 6 6801 6802 6968 -989 2 2 0 6 555 6973 6935 -990 2 2 0 6 490 6970 6906 -991 2 2 0 6 412 6972 6909 -992 2 2 0 6 7335 11404 7699 -993 2 2 0 6 6765 11405 9666 -994 2 2 0 6 4626 11427 7381 -995 2 2 0 6 543 11428 6864 -996 2 2 0 6 6761 7332 11406 -997 2 2 0 6 447 8626 11424 -998 2 2 0 6 256 7414 504 -999 2 2 0 6 427 6850 11423 -1000 2 2 0 6 6734 11408 8335 -1001 2 2 0 6 476 11477 8284 -1002 2 2 0 6 6759 9172 11410 -1003 2 2 0 6 489 11412 9851 -1004 2 2 0 6 441 8028 11421 -1005 2 2 0 6 9648 10091 11419 -1006 2 2 0 6 6757 8371 11416 -1007 2 2 0 6 481 7167 11417 -1008 2 2 0 6 424 6915 11357 -1009 2 2 0 6 5179 6870 6928 -1010 2 2 0 6 5179 6928 6155 -1011 2 2 0 6 504 7414 7405 -1012 2 2 0 6 524 11476 8407 -1013 2 2 0 6 466 6943 6920 -1014 2 2 0 6 6797 6883 6798 -1015 2 2 0 6 7398 7403 7400 -1016 2 2 0 6 6126 6787 6886 -1017 2 2 0 6 6806 6891 6808 -1018 2 2 0 6 6822 6908 6824 -1019 2 2 0 6 6833 6912 6835 -1020 2 2 0 6 6856 6858 6857 -1021 2 2 0 6 6124 6959 8078 -1022 2 2 0 6 6834 6966 10057 -1023 2 2 0 6 6131 7525 6964 -1024 2 2 0 6 243 244 6958 -1025 2 2 0 6 218 219 6960 -1026 2 2 0 6 5141 6957 5353 -1027 2 2 0 6 5355 6954 10601 -1028 2 2 0 6 5159 6962 5160 -1029 2 2 0 6 5332 6961 7746 -1030 2 2 0 6 6446 10130 6967 -1031 2 2 0 6 495 6847 11516 -1032 2 2 0 6 486 6932 6931 -1033 2 2 0 6 8407 10812 11484 -1034 2 2 0 6 4626 7381 11501 -1035 2 2 0 6 233 234 6969 -1036 2 2 0 6 5140 7482 6968 -1037 2 2 0 6 296 297 6970 -1038 2 2 0 6 267 268 6972 -1039 2 2 0 6 248 249 6973 -1040 2 2 0 6 7397 7415 7404 -1041 2 2 0 6 293 6943 466 -1042 2 2 0 6 7841 7844 7843 -1043 2 2 0 6 282 516 6933 -1044 2 2 0 6 281 282 6933 -1045 2 2 0 6 246 247 6934 -1046 2 2 0 6 247 555 6934 -1047 2 2 0 6 256 257 7414 -1048 2 2 0 6 293 294 6943 -1049 2 2 0 6 6937 6939 6938 -1050 2 2 0 6 6789 11343 6956 -1051 2 2 0 6 6829 11342 6965 -1052 2 2 0 6 6805 6963 11341 -1053 2 2 0 6 6798 6883 6930 -1054 2 2 0 6 6126 6886 6929 -1055 2 2 0 6 408 6892 6893 -1056 2 2 0 6 456 6899 6900 -1057 2 2 0 6 6132 8333 8332 -1058 2 2 0 6 6831 6920 6921 -1059 2 2 0 6 5837 11339 6918 -1060 2 2 0 6 257 11344 7414 -1061 2 2 0 6 6793 11382 7876 -1062 2 2 0 6 279 428 6946 -1063 2 2 0 6 278 279 6946 -1064 2 2 0 6 6874 11334 6876 -1065 2 2 0 6 6947 6948 6949 -1066 2 2 0 6 6953 11362 11366 -1067 2 2 0 6 4639 6938 6939 -1068 2 2 0 6 8089 8091 8090 -1069 2 2 0 6 4642 7409 7410 -1070 2 2 0 6 504 7405 7404 -1071 2 2 0 6 7401 7402 11337 -1072 2 2 0 6 6155 6928 6945 -1073 2 2 0 6 6956 11343 6959 -1074 2 2 0 6 6966 6965 11342 -1075 2 2 0 6 6963 6964 11341 -1076 2 2 0 6 6807 6954 6888 -1077 2 2 0 6 6799 6961 6887 -1078 2 2 0 6 6789 6956 6889 -1079 2 2 0 6 6813 6957 6955 -1080 2 2 0 6 432 6894 6960 -1081 2 2 0 6 6812 6963 6890 -1082 2 2 0 6 460 6898 6958 -1083 2 2 0 6 6832 6967 6910 -1084 2 2 0 6 6829 6965 6911 -1085 2 2 0 6 6828 6913 6962 -1086 2 2 0 6 4630 8078 6959 -1087 2 2 0 6 4650 10057 6966 -1088 2 2 0 6 4636 6964 7525 -1089 2 2 0 6 243 6958 556 -1090 2 2 0 6 244 460 6958 -1091 2 2 0 6 219 432 6960 -1092 2 2 0 6 218 6960 547 -1093 2 2 0 6 5353 6957 6813 -1094 2 2 0 6 5141 6809 6957 -1095 2 2 0 6 6807 10601 6954 -1096 2 2 0 6 5355 6813 6954 -1097 2 2 0 6 5159 6828 6962 -1098 2 2 0 6 5160 6962 6830 -1099 2 2 0 6 6799 7746 6961 -1100 2 2 0 6 5332 6820 6961 -1101 2 2 0 6 6792 6967 10130 -1102 2 2 0 6 6446 6967 6832 -1103 2 2 0 6 419 8591 11470 -1104 2 2 0 6 423 11469 9218 -1105 2 2 0 6 6124 6808 6959 -1106 2 2 0 6 6131 6964 6812 -1107 2 2 0 6 6834 6835 6966 -1108 2 2 0 6 6924 11369 11357 -1109 2 2 0 6 6915 6922 6923 -1110 2 2 0 6 6935 6937 6936 -1111 2 2 0 6 272 8333 11375 -1112 2 2 0 6 6128 11376 6893 -1113 2 2 0 6 233 6969 416 -1114 2 2 0 6 234 538 6969 -1115 2 2 0 6 5140 6968 6809 -1116 2 2 0 6 6801 6968 7482 -1117 2 2 0 6 297 562 6970 -1118 2 2 0 6 296 6970 490 -1119 2 2 0 6 267 6972 412 -1120 2 2 0 6 268 519 6972 -1121 2 2 0 6 249 400 6973 -1122 2 2 0 6 248 6973 555 -1123 2 2 0 6 504 7404 7415 -1124 2 2 0 6 7397 7404 7399 -1125 2 2 0 6 473 11466 8166 -1126 2 2 0 6 6896 6947 6946 -1127 2 2 0 6 7399 7404 7402 -1128 2 2 0 6 196 11459 6927 -1129 2 2 0 6 303 7447 11458 -1130 2 2 0 6 258 404 11344 -1131 2 2 0 6 7402 7406 11337 -1132 2 2 0 6 6857 6858 6859 -1133 2 2 0 6 6877 6878 11349 -1134 2 2 0 6 7697 7698 11352 -1135 2 2 0 6 456 6900 6901 -1136 2 2 0 6 492 6872 11462 -1137 2 2 0 6 494 11463 7842 -1138 2 2 0 6 558 10356 11460 -1139 2 2 0 6 501 11461 7369 -1140 2 2 0 6 4639 6939 6940 -1141 2 2 0 6 8091 8092 8090 -1142 2 2 0 6 7841 10357 7844 -1143 2 2 0 6 7723 7844 10357 -1144 2 2 0 6 4642 7410 7411 -1145 2 2 0 6 6126 6929 6974 -1146 2 2 0 6 434 6881 11440 -1147 2 2 0 6 6915 6923 6924 -1148 2 2 0 6 6909 6972 11336 -1149 2 2 0 6 519 11336 6972 -1150 2 2 0 6 6802 11335 6968 -1151 2 2 0 6 6809 6968 11335 -1152 2 2 0 6 7843 7844 7845 -1153 2 2 0 6 6858 6953 6859 -1154 2 2 0 6 397 11456 10356 -1155 2 2 0 6 398 7369 11457 -1156 2 2 0 6 6900 6902 6901 -1157 2 2 0 6 6939 6941 6940 -1158 2 2 0 6 7410 7412 7411 -1159 2 2 0 6 5142 6974 5143 -1160 2 2 0 6 6808 6956 6959 -1161 2 2 0 6 6812 6964 6963 -1162 2 2 0 6 6835 6965 6966 -1163 2 2 0 6 6901 6902 6903 -1164 2 2 0 6 7402 7404 7405 -1165 2 2 0 6 6941 6942 6940 -1166 2 2 0 6 5143 6974 6810 -1167 2 2 0 6 5142 6126 6974 -1168 2 2 0 6 7402 7405 7406 -1169 2 2 0 6 7405 7407 7406 -1170 2 2 0 6 7406 7407 7408 -1171 2 2 0 6 7405 7414 7407 -1172 2 2 0 6 21 552 7013 -1173 2 2 0 6 552 6979 7013 -1174 2 2 0 6 6980 8746 11297 -1175 2 2 0 6 487 6981 7003 -1176 2 2 0 6 26 487 7003 -1177 2 2 0 6 445 7110 6975 -1178 2 2 0 6 29 421 6999 -1179 2 2 0 6 421 6983 6999 -1180 2 2 0 6 6163 7367 11287 -1181 2 2 0 6 425 7015 9566 -1182 2 2 0 6 6984 7184 11290 -1183 2 2 0 6 20 21 7013 -1184 2 2 0 6 433 8746 8745 -1185 2 2 0 6 552 7014 6979 -1186 2 2 0 6 36 413 7008 -1187 2 2 0 6 28 29 6999 -1188 2 2 0 6 25 26 7003 -1189 2 2 0 6 413 6986 7008 -1190 2 2 0 6 433 8745 9428 -1191 2 2 0 6 7238 9428 8745 -1192 2 2 0 6 1322 1439 11285 -1193 2 2 0 6 549 6985 9442 -1194 2 2 0 6 549 6988 6985 -1195 2 2 0 6 437 11284 11321 -1196 2 2 0 6 509 7238 7111 -1197 2 2 0 6 6988 9416 7366 -1198 2 2 0 6 549 9416 6988 -1199 2 2 0 6 7014 9566 7015 -1200 2 2 0 6 445 7237 7110 -1201 2 2 0 6 467 6976 11201 -1202 2 2 0 6 484 7366 9416 -1203 2 2 0 6 6982 10971 11293 -1204 2 2 0 6 484 7367 7366 -1205 2 2 0 6 491 7846 11126 -1206 2 2 0 6 445 6975 11245 -1207 2 2 0 6 7846 11079 11126 -1208 2 2 0 6 7110 7237 7111 -1209 2 2 0 6 6977 11179 11192 -1210 2 2 0 6 35 36 7008 -1211 2 2 0 6 527 6978 11226 -1212 2 2 0 6 509 9428 7238 -1213 2 2 0 6 527 11236 6978 -1214 2 2 0 6 461 7012 7257 -1215 2 2 0 6 467 11214 6976 -1216 2 2 0 6 563 11079 11080 -1217 2 2 0 6 487 7184 6981 -1218 2 2 0 6 563 11126 11079 -1219 2 2 0 6 545 6987 9359 -1220 2 2 0 6 545 7524 6987 -1221 2 2 0 6 7257 7524 9435 -1222 2 2 0 6 491 11179 7846 -1223 2 2 0 6 1513 1776 7470 -1224 2 2 0 6 545 9435 7524 -1225 2 2 0 6 491 11192 11179 -1226 2 2 0 6 509 7111 7237 -1227 2 2 0 6 461 7257 9435 -1228 2 2 0 6 2852 3250 11278 -1229 2 2 0 6 7492 7705 11265 -1230 2 2 0 6 421 7467 6983 -1231 2 2 0 6 5770 5771 6996 -1232 2 2 0 6 5770 7076 8356 -1233 2 2 0 6 6989 7012 9422 -1234 2 2 0 6 461 9422 7012 -1235 2 2 0 6 5771 6997 6996 -1236 2 2 0 6 6985 7467 9442 -1237 2 2 0 6 433 11297 8746 -1238 2 2 0 6 5770 6996 7076 -1239 2 2 0 6 98 11272 11330 -1240 2 2 0 6 550 6989 9422 -1241 2 2 0 6 462 7605 7385 -1242 2 2 0 6 6165 6166 11258 -1243 2 2 0 6 552 9566 7014 -1244 2 2 0 6 425 10971 7015 -1245 2 2 0 6 6976 6977 11201 -1246 2 2 0 6 484 11287 7367 -1247 2 2 0 6 405 7055 7728 -1248 2 2 0 6 405 7728 9660 -1249 2 2 0 6 11214 11226 6978 -1250 2 2 0 6 467 11226 11214 -1251 2 2 0 6 6975 11236 11245 -1252 2 2 0 6 85 11282 11317 -1253 2 2 0 6 527 11245 11236 -1254 2 2 0 6 1231 7949 7001 -1255 2 2 0 6 7001 7949 10286 -1256 2 2 0 6 405 9538 7055 -1257 2 2 0 6 6990 7055 9538 -1258 2 2 0 6 413 7495 6986 -1259 2 2 0 6 6991 7016 9669 -1260 2 2 0 6 4130 9942 6992 -1261 2 2 0 6 4130 6992 6991 -1262 2 2 0 6 4690 9669 7016 -1263 2 2 0 6 6987 7495 9359 -1264 2 2 0 6 4130 6991 9669 -1265 2 2 0 6 82 11283 11314 -1266 2 2 0 6 6977 11192 11201 -1267 2 2 0 6 7377 10861 10971 -1268 2 2 0 6 559 6990 9538 -1269 2 2 0 6 6992 9942 8964 -1270 2 2 0 6 559 6995 6990 -1271 2 2 0 6 3250 8356 7076 -1272 2 2 0 6 5188 7184 7169 -1273 2 2 0 6 6995 10088 7385 -1274 2 2 0 6 559 10088 6995 -1275 2 2 0 6 3310 6993 6994 -1276 2 2 0 6 517 11280 11301 -1277 2 2 0 6 5771 7110 6997 -1278 2 2 0 6 5224 5225 7467 -1279 2 2 0 6 6998 7004 9162 -1280 2 2 0 6 6405 9162 7004 -1281 2 2 0 6 5192 7000 6998 -1282 2 2 0 6 5912 11265 7705 -1283 2 2 0 6 5191 7000 5192 -1284 2 2 0 6 6405 7004 7475 -1285 2 2 0 6 5192 6998 9162 -1286 2 2 0 6 462 7385 10088 -1287 2 2 0 6 6405 7475 9726 -1288 2 2 0 6 2416 11256 7471 -1289 2 2 0 6 7475 7477 9726 -1290 2 2 0 6 4692 7477 7479 -1291 2 2 0 6 4692 9726 7477 -1292 2 2 0 6 550 9812 6989 -1293 2 2 0 6 4287 7006 7007 -1294 2 2 0 6 6204 7007 7006 -1295 2 2 0 6 6165 11258 9487 -1296 2 2 0 6 4692 7479 10863 -1297 2 2 0 6 7728 9812 9660 -1298 2 2 0 6 4287 7007 7430 -1299 2 2 0 6 3250 7076 11278 -1300 2 2 0 6 421 9442 7467 -1301 2 2 0 6 5241 8200 7495 -1302 2 2 0 6 6224 10846 7031 -1303 2 2 0 6 7032 10821 7050 -1304 2 2 0 6 7053 7780 10828 -1305 2 2 0 6 5426 11262 8116 -1306 2 2 0 6 7781 9157 10847 -1307 2 2 0 6 6168 6169 7119 -1308 2 2 0 6 3337 7749 7002 -1309 2 2 0 6 6169 7127 7119 -1310 2 2 0 6 893 11029 9858 -1311 2 2 0 6 6173 10862 7066 -1312 2 2 0 6 5191 7005 7000 -1313 2 2 0 6 6169 6171 7127 -1314 2 2 0 6 5249 5250 9812 -1315 2 2 0 6 6580 10868 8299 -1316 2 2 0 6 7002 7749 7067 -1317 2 2 0 6 1776 3310 7470 -1318 2 2 0 6 3310 7471 6993 -1319 2 2 0 6 2778 7067 7749 -1320 2 2 0 6 5235 7011 7430 -1321 2 2 0 6 5397 9884 7005 -1322 2 2 0 6 1439 7470 11285 -1323 2 2 0 6 4287 7430 7011 -1324 2 2 0 6 1439 1513 7470 -1325 2 2 0 6 913 7050 10821 -1326 2 2 0 6 917 7031 10846 -1327 2 2 0 6 921 7053 10828 -1328 2 2 0 6 7025 9846 7026 -1329 2 2 0 6 907 8564 8889 -1330 2 2 0 6 919 920 9353 -1331 2 2 0 6 7026 8889 8564 -1332 2 2 0 6 413 9359 7495 -1333 2 2 0 6 7026 9846 8889 -1334 2 2 0 6 900 9776 903 -1335 2 2 0 6 6177 9357 7030 -1336 2 2 0 6 919 9353 7028 -1337 2 2 0 6 925 7781 10847 -1338 2 2 0 6 903 9776 7030 -1339 2 2 0 6 3889 9846 7025 -1340 2 2 0 6 4723 10430 5775 -1341 2 2 0 6 903 7030 9357 -1342 2 2 0 6 931 932 8979 -1343 2 2 0 6 5287 8490 11086 -1344 2 2 0 6 927 928 8244 -1345 2 2 0 6 923 924 8243 -1346 2 2 0 6 4737 10040 7062 -1347 2 2 0 6 931 8979 8978 -1348 2 2 0 6 927 8244 8242 -1349 2 2 0 6 6218 10296 8410 -1350 2 2 0 6 916 9853 915 -1351 2 2 0 6 6182 7605 10229 -1352 2 2 0 6 4270 7190 4723 -1353 2 2 0 6 7062 10040 5413 -1354 2 2 0 6 3273 9199 7022 -1355 2 2 0 6 61 11261 11292 -1356 2 2 0 6 923 8243 10199 -1357 2 2 0 6 929 7066 10862 -1358 2 2 0 6 6441 10385 6459 -1359 2 2 0 6 915 9853 7057 -1360 2 2 0 6 3273 7022 9430 -1361 2 2 0 6 915 7057 8593 -1362 2 2 0 6 5413 10040 7019 -1363 2 2 0 6 937 7212 10509 -1364 2 2 0 6 4723 7190 10430 -1365 2 2 0 6 2778 10902 7067 -1366 2 2 0 6 940 8220 939 -1367 2 2 0 6 7056 8593 7057 -1368 2 2 0 6 939 8220 8659 -1369 2 2 0 6 897 898 8253 -1370 2 2 0 6 895 8410 10296 -1371 2 2 0 6 3478 8593 7056 -1372 2 2 0 6 7100 7009 9807 -1373 2 2 0 6 933 8299 10868 -1374 2 2 0 6 897 8253 7063 -1375 2 2 0 6 6459 9471 8113 -1376 2 2 0 6 7100 9807 5791 -1377 2 2 0 6 462 10229 7605 -1378 2 2 0 6 3478 7056 7059 -1379 2 2 0 6 1826 10791 1914 -1380 2 2 0 6 5771 6975 7110 -1381 2 2 0 6 3478 7059 4171 -1382 2 2 0 6 2489 10904 2614 -1383 2 2 0 6 935 8660 10061 -1384 2 2 0 6 6459 10385 9471 -1385 2 2 0 6 888 8114 8113 -1386 2 2 0 6 1231 7001 11090 -1387 2 2 0 6 3273 3274 9199 -1388 2 2 0 6 888 8113 9471 -1389 2 2 0 6 1357 9807 7009 -1390 2 2 0 6 5312 7260 7261 -1391 2 2 0 6 5251 7029 5314 -1392 2 2 0 6 6182 10393 7075 -1393 2 2 0 6 5314 7029 7027 -1394 2 2 0 6 1357 7009 7010 -1395 2 2 0 6 2778 9957 10902 -1396 2 2 0 6 888 9654 8114 -1397 2 2 0 6 7127 7129 7128 -1398 2 2 0 6 6265 10968 7101 -1399 2 2 0 6 1793 1877 7471 -1400 2 2 0 6 5211 10168 10480 -1401 2 2 0 6 1404 10994 9372 -1402 2 2 0 6 6182 10229 10393 -1403 2 2 0 6 1409 11033 1498 -1404 2 2 0 6 1357 7010 9767 -1405 2 2 0 6 3127 3128 10982 -1406 2 2 0 6 1914 7107 1972 -1407 2 2 0 6 935 936 8660 -1408 2 2 0 6 5235 7431 7011 -1409 2 2 0 6 3135 3136 10949 -1410 2 2 0 6 5210 5211 8894 -1411 2 2 0 6 6168 7119 8116 -1412 2 2 0 6 8568 8571 10576 -1413 2 2 0 6 7010 8490 9767 -1414 2 2 0 6 4141 7073 7859 -1415 2 2 0 6 870 873 8064 -1416 2 2 0 6 3324 7017 7018 -1417 2 2 0 6 6185 8893 9343 -1418 2 2 0 6 2614 7096 2616 -1419 2 2 0 6 5211 10480 8894 -1420 2 2 0 6 3324 7018 9243 -1421 2 2 0 6 6186 7859 7073 -1422 2 2 0 6 4652 6068 11150 -1423 2 2 0 6 5189 6979 7014 -1424 2 2 0 6 3058 7024 10065 -1425 2 2 0 6 487 11290 7184 -1426 2 2 0 6 5189 7014 5322 -1427 2 2 0 6 6185 9343 9749 -1428 2 2 0 6 7097 10916 8798 -1429 2 2 0 6 893 894 8254 -1430 2 2 0 6 9198 9979 11239 -1431 2 2 0 6 856 10524 859 -1432 2 2 0 6 1914 10791 7107 -1433 2 2 0 6 858 8057 7089 -1434 2 2 0 6 871 9749 9343 -1435 2 2 0 6 1130 7745 7054 -1436 2 2 0 6 4570 10576 8571 -1437 2 2 0 6 5731 7097 7745 -1438 2 2 0 6 7000 7005 9884 -1439 2 2 0 6 9044 10128 9045 -1440 2 2 0 6 8621 9495 8624 -1441 2 2 0 6 4133 10101 7431 -1442 2 2 0 6 7018 7515 9243 -1443 2 2 0 6 1400 7106 8932 -1444 2 2 0 6 6328 8625 8624 -1445 2 2 0 6 6325 10985 7130 -1446 2 2 0 6 4569 9619 11061 -1447 2 2 0 6 6197 7148 11050 -1448 2 2 0 6 871 7072 9749 -1449 2 2 0 6 893 8254 11029 -1450 2 2 0 6 6328 10206 8625 -1451 2 2 0 6 6278 8932 7106 -1452 2 2 0 6 6187 9446 7103 -1453 2 2 0 6 3567 9156 7085 -1454 2 2 0 6 7620 3341 7621 -1455 2 2 0 6 8222 10128 9044 -1456 2 2 0 6 2926 11070 4796 -1457 2 2 0 6 5208 8222 9044 -1458 2 2 0 6 5200 7162 10072 -1459 2 2 0 6 7054 9296 9761 -1460 2 2 0 6 8278 8715 11006 -1461 2 2 0 6 7085 9156 7084 -1462 2 2 0 6 1043 7084 9156 -1463 2 2 0 6 557 7075 10393 -1464 2 2 0 6 6984 7169 7184 -1465 2 2 0 6 859 7202 861 -1466 2 2 0 6 3135 7103 9446 -1467 2 2 0 6 3486 7071 7747 -1468 2 2 0 6 7982 10544 7983 -1469 2 2 0 6 1130 7054 9761 -1470 2 2 0 6 1130 5731 7745 -1471 2 2 0 6 871 9056 7072 -1472 2 2 0 6 844 9914 846 -1473 2 2 0 6 6328 8624 9495 -1474 2 2 0 6 2326 7023 7108 -1475 2 2 0 6 3563 7070 9002 -1476 2 2 0 6 5219 5619 8620 -1477 2 2 0 6 5619 8621 8620 -1478 2 2 0 6 951 9045 10128 -1479 2 2 0 6 3673 9761 9296 -1480 2 2 0 6 5328 7268 10178 -1481 2 2 0 6 7070 7094 9002 -1482 2 2 0 6 6984 11290 6999 -1483 2 2 0 6 3323 7536 7164 -1484 2 2 0 6 3567 7085 10217 -1485 2 2 0 6 5619 9495 8621 -1486 2 2 0 6 3320 10311 4021 -1487 2 2 0 6 3051 9002 7094 -1488 2 2 0 6 2614 10904 7096 -1489 2 2 0 6 844 7631 9914 -1490 2 2 0 6 5674 9313 7860 -1491 2 2 0 6 842 7631 844 -1492 2 2 0 6 859 10524 7202 -1493 2 2 0 6 7072 9056 7747 -1494 2 2 0 6 6202 11137 9745 -1495 2 2 0 6 5251 7086 7029 -1496 2 2 0 6 866 868 7923 -1497 2 2 0 6 5731 10916 7097 -1498 2 2 0 6 550 9660 9812 -1499 2 2 0 6 8354 8786 11127 -1500 2 2 0 6 3486 7747 9056 -1501 2 2 0 6 7621 7924 9959 -1502 2 2 0 6 5282 7872 7060 -1503 2 2 0 6 862 864 8622 -1504 2 2 0 6 4417 7633 9613 -1505 2 2 0 6 3323 7164 8944 -1506 2 2 0 6 5188 6981 7184 -1507 2 2 0 6 1043 10469 7084 -1508 2 2 0 6 7015 10971 10861 -1509 2 2 0 6 5254 7136 10961 -1510 2 2 0 6 4721 7060 7872 -1511 2 2 0 6 6595 7212 7211 -1512 2 2 0 6 4021 10311 7092 -1513 2 2 0 6 847 849 10644 -1514 2 2 0 6 1094 8695 1133 -1515 2 2 0 6 5224 7467 6985 -1516 2 2 0 6 7010 11086 8490 -1517 2 2 0 6 5225 6983 7467 -1518 2 2 0 6 3123 3124 10756 -1519 2 2 0 6 7122 8715 8882 -1520 2 2 0 6 6232 6236 9089 -1521 2 2 0 6 557 10483 7075 -1522 2 2 0 6 6562 6595 7211 -1523 2 2 0 6 963 968 11031 -1524 2 2 0 6 5282 7060 7874 -1525 2 2 0 6 3143 7101 10968 -1526 2 2 0 6 5269 7061 7873 -1527 2 2 0 6 897 7063 8254 -1528 2 2 0 6 7777 7983 10544 -1529 2 2 0 6 3135 10949 7103 -1530 2 2 0 6 8781 11224 9104 -1531 2 2 0 6 5301 9582 8731 -1532 2 2 0 6 6048 11042 7132 -1533 2 2 0 6 845 847 7168 -1534 2 2 0 6 6562 7211 7228 -1535 2 2 0 6 1148 9865 10698 -1536 2 2 0 6 2589 8731 9582 -1537 2 2 0 6 6386 10910 11062 -1538 2 2 0 6 5269 7872 7061 -1539 2 2 0 6 2616 7096 3058 -1540 2 2 0 6 4721 7872 5269 -1541 2 2 0 6 7769 10507 9675 -1542 2 2 0 6 787 10297 1522 -1543 2 2 0 6 6190 9372 10994 -1544 2 2 0 6 6562 7228 7158 -1545 2 2 0 6 852 8783 854 -1546 2 2 0 6 3058 7096 7024 -1547 2 2 0 6 3127 10982 7112 -1548 2 2 0 6 959 7160 7069 -1549 2 2 0 6 5328 7880 7268 -1550 2 2 0 6 1200 8794 8721 -1551 2 2 0 6 7108 7695 7181 -1552 2 2 0 6 960 7160 959 -1553 2 2 0 6 4350 11260 10663 -1554 2 2 0 6 6595 10509 7212 -1555 2 2 0 6 1366 7123 10794 -1556 2 2 0 6 7681 7682 11107 -1557 2 2 0 6 1795 7134 10797 -1558 2 2 0 6 6982 11293 7003 -1559 2 2 0 6 1522 10297 7099 -1560 2 2 0 6 5246 11154 11163 -1561 2 2 0 6 1200 7114 8794 -1562 2 2 0 6 2326 7107 7023 -1563 2 2 0 6 7005 10611 10928 -1564 2 2 0 6 10 467 11201 -1565 2 2 0 6 6982 7377 10971 -1566 2 2 0 6 1972 7107 2326 -1567 2 2 0 6 5196 7181 7695 -1568 2 2 0 6 6192 7632 6193 -1569 2 2 0 6 1200 8827 7114 -1570 2 2 0 6 4736 7261 10312 -1571 2 2 0 6 7108 9817 7695 -1572 2 2 0 6 959 7069 7161 -1573 2 2 0 6 5246 11163 9545 -1574 2 2 0 6 847 10644 7168 -1575 2 2 0 6 7087 7114 8827 -1576 2 2 0 6 1201 1231 11090 -1577 2 2 0 6 1498 11033 7121 -1578 2 2 0 6 3390 7087 8827 -1579 2 2 0 6 6163 11287 7008 -1580 2 2 0 6 3381 11194 9545 -1581 2 2 0 6 4141 7860 7073 -1582 2 2 0 6 3390 7088 7087 -1583 2 2 0 6 4323 7362 11069 -1584 2 2 0 6 6242 7164 7536 -1585 2 2 0 6 2587 11266 10785 -1586 2 2 0 6 4796 7163 6242 -1587 2 2 0 6 3648 9962 7086 -1588 2 2 0 6 5270 10981 10954 -1589 2 2 0 6 4108 10865 5500 -1590 2 2 0 6 5264 8823 11148 -1591 2 2 0 6 7161 10072 7162 -1592 2 2 0 6 2658 7510 2740 -1593 2 2 0 6 1148 10698 9674 -1594 2 2 0 6 7011 7431 10101 -1595 2 2 0 6 5241 7495 6987 -1596 2 2 0 6 7323 7324 10727 -1597 2 2 0 6 6242 7163 7164 -1598 2 2 0 6 7154 9917 7159 -1599 2 2 0 6 960 963 7160 -1600 2 2 0 6 6986 7495 8200 -1601 2 2 0 6 5514 9917 7154 -1602 2 2 0 6 1362 7130 10985 -1603 2 2 0 6 3058 10065 7510 -1604 2 2 0 6 7431 10714 10852 -1605 2 2 0 6 6226 11063 11073 -1606 2 2 0 6 4270 5413 7190 -1607 2 2 0 6 1606 9128 8466 -1608 2 2 0 6 894 897 8254 -1609 2 2 0 6 939 8659 8660 -1610 2 2 0 6 5413 7019 7190 -1611 2 2 0 6 6980 11297 7013 -1612 2 2 0 6 1472 1473 8288 -1613 2 2 0 6 7159 9917 8461 -1614 2 2 0 6 7122 11006 8715 -1615 2 2 0 6 8221 8222 10753 -1616 2 2 0 6 6200 8729 7083 -1617 2 2 0 6 3277 9198 7021 -1618 2 2 0 6 6204 7006 10611 -1619 2 2 0 6 991 8064 11149 -1620 2 2 0 6 7123 9970 10794 -1621 2 2 0 6 3277 7021 9199 -1622 2 2 0 6 3925 7768 7079 -1623 2 2 0 6 6200 7083 7082 -1624 2 2 0 6 5314 7027 7261 -1625 2 2 0 6 3324 7510 7017 -1626 2 2 0 6 6202 8061 9028 -1627 2 2 0 6 4108 5041 7133 -1628 2 2 0 6 7083 7159 8461 -1629 2 2 0 6 1476 8539 10908 -1630 2 2 0 6 1758 7632 7080 -1631 2 2 0 6 7120 8130 10111 -1632 2 2 0 6 6222 10803 10785 -1633 2 2 0 6 7083 8729 7159 -1634 2 2 0 6 1795 8754 7134 -1635 2 2 0 6 8849 8377 11298 -1636 2 2 0 6 6048 7132 7131 -1637 2 2 0 6 6003 10961 7136 -1638 2 2 0 6 3925 7079 9287 -1639 2 2 0 6 5208 10753 8222 -1640 2 2 0 6 5500 10014 8540 -1641 2 2 0 6 943 8221 8219 -1642 2 2 0 6 3264 7267 7268 -1643 2 2 0 6 7134 8754 7135 -1644 2 2 0 6 4295 11050 7148 -1645 2 2 0 6 7120 10111 6203 -1646 2 2 0 6 4719 8093 8116 -1647 2 2 0 6 5231 7384 7385 -1648 2 2 0 6 940 943 8220 -1649 2 2 0 6 9548 9952 11135 -1650 2 2 0 6 5249 9812 7728 -1651 2 2 0 6 7047 10834 8829 -1652 2 2 0 6 3382 7135 8754 -1653 2 2 0 6 943 8219 8220 -1654 2 2 0 6 5250 6989 9812 -1655 2 2 0 6 7023 9817 7108 -1656 2 2 0 6 932 935 8979 -1657 2 2 0 6 7079 7768 7178 -1658 2 2 0 6 2918 9028 8061 -1659 2 2 0 6 3268 7132 11042 -1660 2 2 0 6 7073 7860 9313 -1661 2 2 0 6 1322 11285 3381 -1662 2 2 0 6 5389 7126 8130 -1663 2 2 0 6 988 7178 7768 -1664 2 2 0 6 928 931 8244 -1665 2 2 0 6 4569 11061 9062 -1666 2 2 0 6 557 10355 10483 -1667 2 2 0 6 935 10061 8979 -1668 2 2 0 6 931 8978 8244 -1669 2 2 0 6 7574 10513 7944 -1670 2 2 0 6 924 927 8243 -1671 2 2 0 6 1588 10727 7324 -1672 2 2 0 6 5704 7649 11039 -1673 2 2 0 6 2918 8061 7068 -1674 2 2 0 6 927 8242 8243 -1675 2 2 0 6 7006 10928 10611 -1676 2 2 0 6 5231 5328 7384 -1677 2 2 0 6 7126 10111 8130 -1678 2 2 0 6 7633 7632 9613 -1679 2 2 0 6 907 9357 8564 -1680 2 2 0 6 5499 7389 7113 -1681 2 2 0 6 7016 7492 11265 -1682 2 2 0 6 8247 8248 11289 -1683 2 2 0 6 920 923 9353 -1684 2 2 0 6 7029 7086 9962 -1685 2 2 0 6 5210 8894 6185 -1686 2 2 0 6 5389 8602 7126 -1687 2 2 0 6 6166 6992 11258 -1688 2 2 0 6 4755 10418 9989 -1689 2 2 0 6 5313 6677 11145 -1690 2 2 0 6 936 939 8660 -1691 2 2 0 6 6106 8683 10663 -1692 2 2 0 6 1178 7052 10813 -1693 2 2 0 6 3491 11000 4750 -1694 2 2 0 6 1498 7121 8884 -1695 2 2 0 6 5389 7422 8602 -1696 2 2 0 6 4796 11070 7163 -1697 2 2 0 6 919 7028 9853 -1698 2 2 0 6 6209 8539 8540 -1699 2 2 0 6 5231 7385 7605 -1700 2 2 0 6 6185 8894 8893 -1701 2 2 0 6 3274 3277 9199 -1702 2 2 0 6 7949 11154 10286 -1703 2 2 0 6 6209 8540 10014 -1704 2 2 0 6 6222 7052 10803 -1705 2 2 0 6 6177 8564 9357 -1706 2 2 0 6 923 10199 9353 -1707 2 2 0 6 2311 7345 7115 -1708 2 2 0 6 6068 7182 11150 -1709 2 2 0 6 916 919 9853 -1710 2 2 0 6 1047 7345 2311 -1711 2 2 0 6 7031 10821 7032 -1712 2 2 0 6 7592 11093 7671 -1713 2 2 0 6 6175 10236 7025 -1714 2 2 0 6 3370 10831 10824 -1715 2 2 0 6 6224 7053 10846 -1716 2 2 0 6 1464 1465 8052 -1717 2 2 0 6 8884 8883 9241 -1718 2 2 0 6 3486 7202 7071 -1719 2 2 0 6 898 901 8253 -1720 2 2 0 6 4736 10312 6175 -1721 2 2 0 6 6218 7051 10296 -1722 2 2 0 6 6016 7142 11092 -1723 2 2 0 6 5328 10178 7384 -1724 2 2 0 6 1207 7348 7117 -1725 2 2 0 6 1053 7348 1207 -1726 2 2 0 6 861 7202 3486 -1727 2 2 0 6 1524 7168 7078 -1728 2 2 0 6 7065 11271 11274 -1729 2 2 0 6 8989 8991 10825 -1730 2 2 0 6 3123 10756 7873 -1731 2 2 0 6 899 9776 900 -1732 2 2 0 6 5247 7221 5336 -1733 2 2 0 6 3889 7025 10236 -1734 2 2 0 6 7280 11097 7282 -1735 2 2 0 6 3264 4323 7267 -1736 2 2 0 6 6175 10312 10236 -1737 2 2 0 6 990 10839 10841 -1738 2 2 0 6 5336 7221 7109 -1739 2 2 0 6 6440 8410 10315 -1740 2 2 0 6 7949 11163 11154 -1741 2 2 0 6 4108 7133 10865 -1742 2 2 0 6 7780 7781 10828 -1743 2 2 0 6 963 11031 7160 -1744 2 2 0 6 1042 1142 7383 -1745 2 2 0 6 845 7168 1524 -1746 2 2 0 6 4736 5312 7261 -1747 2 2 0 6 3386 10823 10832 -1748 2 2 0 6 6231 9089 10588 -1749 2 2 0 6 899 10296 7051 -1750 2 2 0 6 3386 10818 7064 -1751 2 2 0 6 5500 10865 10014 -1752 2 2 0 6 990 7058 10839 -1753 2 2 0 6 2851 7065 11274 -1754 2 2 0 6 3310 6994 7470 -1755 2 2 0 6 6192 7080 7632 -1756 2 2 0 6 7122 8882 8884 -1757 2 2 0 6 7066 10847 9157 -1758 2 2 0 6 2416 6165 11256 -1759 2 2 0 6 6440 10315 10385 -1760 2 2 0 6 1877 2416 7471 -1761 2 2 0 6 1793 7471 3310 -1762 2 2 0 6 3567 10217 8783 -1763 2 2 0 6 5775 10430 7022 -1764 2 2 0 6 3386 7064 10823 -1765 2 2 0 6 6440 10385 6441 -1766 2 2 0 6 3907 7077 8823 -1767 2 2 0 6 5397 7005 10928 -1768 2 2 0 6 1874 11131 10791 -1769 2 2 0 6 895 10315 8410 -1770 2 2 0 6 899 7051 9776 -1771 2 2 0 6 5219 8620 6189 -1772 2 2 0 6 6189 8620 8619 -1773 2 2 0 6 7287 9148 11109 -1774 2 2 0 6 7479 11073 11063 -1775 2 2 0 6 8583 8584 11021 -1776 2 2 0 6 4041 11206 10684 -1777 2 2 0 6 1468 8286 10705 -1778 2 2 0 6 6173 8299 10862 -1779 2 2 0 6 716 11213 11203 -1780 2 2 0 6 1515 7943 1778 -1781 2 2 0 6 6106 10713 8683 -1782 2 2 0 6 6211 7113 7389 -1783 2 2 0 6 7022 10430 9430 -1784 2 2 0 6 4659 7149 6162 -1785 2 2 0 6 5314 7261 7260 -1786 2 2 0 6 7860 9858 11029 -1787 2 2 0 6 3264 7268 7880 -1788 2 2 0 6 1681 1690 7542 -1789 2 2 0 6 2851 2852 11278 -1790 2 2 0 6 873 7859 8064 -1791 2 2 0 6 5375 7909 7961 -1792 2 2 0 6 3341 7923 7621 -1793 2 2 0 6 6580 7212 10868 -1794 2 2 0 6 6420 9959 7924 -1795 2 2 0 6 858 8783 8057 -1796 2 2 0 6 2496 2498 8388 -1797 2 2 0 6 2254 11127 8786 -1798 2 2 0 6 2918 7068 9434 -1799 2 2 0 6 2488 10858 7090 -1800 2 2 0 6 870 8064 991 -1801 2 2 0 6 6221 6487 8287 -1802 2 2 0 6 1178 10803 7052 -1803 2 2 0 6 917 10821 7031 -1804 2 2 0 6 793 795 11140 -1805 2 2 0 6 1049 11007 1051 -1806 2 2 0 6 5246 9545 11194 -1807 2 2 0 6 1524 7078 10417 -1808 2 2 0 6 8221 10753 8219 -1809 2 2 0 6 3563 9089 7070 -1810 2 2 0 6 5322 7014 7015 -1811 2 2 0 6 6487 8286 8287 -1812 2 2 0 6 5200 9569 7162 -1813 2 2 0 6 1690 7326 7542 -1814 2 2 0 6 5202 9970 5787 -1815 2 2 0 6 991 11149 7924 -1816 2 2 0 6 913 10824 7050 -1817 2 2 0 6 6223 10493 7074 -1818 2 2 0 6 8216 8217 10930 -1819 2 2 0 6 7050 10824 10831 -1820 2 2 0 6 7111 7238 8747 -1821 2 2 0 6 7620 8622 3341 -1822 2 2 0 6 6193 7632 7633 -1823 2 2 0 6 6186 8064 7859 -1824 2 2 0 6 6248 7961 7909 -1825 2 2 0 6 3482 7955 8465 -1826 2 2 0 6 8571 10553 10565 -1827 2 2 0 6 6220 6221 8287 -1828 2 2 0 6 8114 10480 10168 -1829 2 2 0 6 921 10846 7053 -1830 2 2 0 6 8114 9654 10480 -1831 2 2 0 6 7139 9919 7262 -1832 2 2 0 6 6189 8619 8622 -1833 2 2 0 6 7327 8825 10999 -1834 2 2 0 6 3907 9041 7077 -1835 2 2 0 6 7047 10841 10839 -1836 2 2 0 6 3653 9083 7329 -1837 2 2 0 6 7047 8829 10841 -1838 2 2 0 6 7062 10852 10714 -1839 2 2 0 6 990 10832 7058 -1840 2 2 0 6 8414 11155 8415 -1841 2 2 0 6 5265 9420 10703 -1842 2 2 0 6 6209 10908 8539 -1843 2 2 0 6 3123 7873 8748 -1844 2 2 0 6 956 7161 955 -1845 2 2 0 6 3141 7158 11077 -1846 2 2 0 6 7058 10832 10823 -1847 2 2 0 6 4755 7503 10418 -1848 2 2 0 6 6202 9028 11137 -1849 2 2 0 6 7479 11063 10863 -1850 2 2 0 6 2657 7198 10989 -1851 2 2 0 6 7573 7574 7942 -1852 2 2 0 6 925 10828 7781 -1853 2 2 0 6 6248 7909 7910 -1854 2 2 0 6 5524 11170 8793 -1855 2 2 0 6 3599 3601 8059 -1856 2 2 0 6 7095 7329 9083 -1857 2 2 0 6 7178 7769 9675 -1858 2 2 0 6 1370 7874 9016 -1859 2 2 0 6 4737 7062 10714 -1860 2 2 0 6 8625 10206 10698 -1861 2 2 0 6 7442 10483 10355 -1862 2 2 0 6 3054 7098 10995 -1863 2 2 0 6 9582 10695 10919 -1864 2 2 0 6 3382 7973 7135 -1865 2 2 0 6 842 1758 7631 -1866 2 2 0 6 425 11293 10971 -1867 2 2 0 6 3760 11092 7142 -1868 2 2 0 6 8169 8661 8521 -1869 2 2 0 6 1538 7573 7942 -1870 2 2 0 6 5247 5265 7221 -1871 2 2 0 6 5534 7139 7262 -1872 2 2 0 6 1745 7095 9083 -1873 2 2 0 6 7060 9016 7874 -1874 2 2 0 6 2374 9957 2476 -1875 2 2 0 6 4836 7074 10493 -1876 2 2 0 6 4794 8464 7954 -1877 2 2 0 6 4836 10553 7074 -1878 2 2 0 6 7966 10958 7969 -1879 2 2 0 6 4755 4756 7503 -1880 2 2 0 6 4570 8571 10565 -1881 2 2 0 6 846 9914 1043 -1882 2 2 0 6 7241 8925 10937 -1883 2 2 0 6 866 7923 3341 -1884 2 2 0 6 1758 7080 7631 -1885 2 2 0 6 5704 7271 5705 -1886 2 2 0 6 5711 7944 10513 -1887 2 2 0 6 5336 7109 7229 -1888 2 2 0 6 929 10847 7066 -1889 2 2 0 6 8119 6037 10886 -1890 2 2 0 6 868 991 7923 -1891 2 2 0 6 8567 8568 10576 -1892 2 2 0 6 6171 7129 7127 -1893 2 2 0 6 6119 11321 11284 -1894 2 2 0 6 952 955 10697 -1895 2 2 0 6 2559 2851 11274 -1896 2 2 0 6 4792 8464 4794 -1897 2 2 0 6 6492 6493 8047 -1898 2 2 0 6 7918 10304 10352 -1899 2 2 0 6 7197 10989 7198 -1900 2 2 0 6 8465 8466 9128 -1901 2 2 0 6 2340 8170 8519 -1902 2 2 0 6 951 10697 9045 -1903 2 2 0 6 9506 11095 11115 -1904 2 2 0 6 4836 10565 10553 -1905 2 2 0 6 7061 8748 7873 -1906 2 2 0 6 1745 7280 7095 -1907 2 2 0 6 6200 7082 8059 -1908 2 2 0 6 864 3341 8622 -1909 2 2 0 6 8169 8521 8519 -1910 2 2 0 6 862 8622 8619 -1911 2 2 0 6 8169 8519 8170 -1912 2 2 0 6 7963 10934 7965 -1913 2 2 0 6 1538 9183 7573 -1914 2 2 0 6 1826 1874 10791 -1915 2 2 0 6 4654 4657 7912 -1916 2 2 0 6 989 7249 7775 -1917 2 2 0 6 7867 7869 9265 -1918 2 2 0 6 956 959 7161 -1919 2 2 0 6 856 858 10524 -1920 2 2 0 6 5041 6048 7133 -1921 2 2 0 6 4783 5867 10082 -1922 2 2 0 6 5705 7271 9571 -1923 2 2 0 6 1874 7944 11131 -1924 2 2 0 6 6233 6231 10588 -1925 2 2 0 6 7864 10020 8160 -1926 2 2 0 6 933 10862 8299 -1927 2 2 0 6 5270 9265 7869 -1928 2 2 0 6 3320 3323 10311 -1929 2 2 0 6 5760 11107 7682 -1930 2 2 0 6 1133 8695 3390 -1931 2 2 0 6 1043 9914 10469 -1932 2 2 0 6 5551 8059 7156 -1933 2 2 0 6 1920 8988 7194 -1934 2 2 0 6 1522 10352 10304 -1935 2 2 0 6 5994 7194 8988 -1936 2 2 0 6 6487 10705 8286 -1937 2 2 0 6 6048 7131 7133 -1938 2 2 0 6 6232 9089 6231 -1939 2 2 0 6 1094 1795 8695 -1940 2 2 0 6 937 10868 7212 -1941 2 2 0 6 5867 10020 7864 -1942 2 2 0 6 3924 11212 10997 -1943 2 2 0 6 6236 7070 9089 -1944 2 2 0 6 6104 11108 11112 -1945 2 2 0 6 7918 10442 8869 -1946 2 2 0 6 6576 10991 10990 -1947 2 2 0 6 7571 10235 7576 -1948 2 2 0 6 1795 10797 8695 -1949 2 2 0 6 6066 11108 6104 -1950 2 2 0 6 4868 7189 8578 -1951 2 2 0 6 3370 8829 10834 -1952 2 2 0 6 5463 7390 7391 -1953 2 2 0 6 4392 10880 9226 -1954 2 2 0 6 1768 1871 8342 -1955 2 2 0 6 7621 7923 7924 -1956 2 2 0 6 6227 7147 8578 -1957 2 2 0 6 5283 7625 7624 -1958 2 2 0 6 7223 9438 7224 -1959 2 2 0 6 6227 8578 7189 -1960 2 2 0 6 7021 9198 11239 -1961 2 2 0 6 6066 11095 9506 -1962 2 2 0 6 5867 7864 10082 -1963 2 2 0 6 4568 10825 8991 -1964 2 2 0 6 5162 6122 7167 -1965 2 2 0 6 6227 9514 7147 -1966 2 2 0 6 2595 7224 9438 -1967 2 2 0 6 5265 10703 7221 -1968 2 2 0 6 2846 7145 7146 -1969 2 2 0 6 7223 9008 9438 -1970 2 2 0 6 5524 10607 10610 -1971 2 2 0 6 8450 8451 10319 -1972 2 2 0 6 852 3567 8783 -1973 2 2 0 6 399 7140 7442 -1974 2 2 0 6 6233 10588 8567 -1975 2 2 0 6 2489 2488 10904 -1976 2 2 0 6 854 8783 858 -1977 2 2 0 6 6256 6257 9020 -1978 2 2 0 6 5463 8828 7390 -1979 2 2 0 6 6025 10990 10991 -1980 2 2 0 6 5352 5895 7191 -1981 2 2 0 6 5269 7873 8459 -1982 2 2 0 6 6230 10160 10289 -1983 2 2 0 6 7064 10818 10813 -1984 2 2 0 6 6217 7151 7150 -1985 2 2 0 6 1178 10813 10818 -1986 2 2 0 6 4133 7431 10852 -1987 2 2 0 6 6275 7452 7643 -1988 2 2 0 6 6277 7098 11019 -1989 2 2 0 6 5895 7192 7191 -1990 2 2 0 6 6493 6516 8047 -1991 2 2 0 6 3268 11042 11030 -1992 2 2 0 6 3127 7112 10756 -1993 2 2 0 6 6993 7471 11256 -1994 2 2 0 6 4021 10544 7982 -1995 2 2 0 6 6233 8567 10576 -1996 2 2 0 6 3494 9702 9235 -1997 2 2 0 6 803 11018 812 -1998 2 2 0 6 6230 8731 10160 -1999 2 2 0 6 2589 10160 8731 -2000 2 2 0 6 6261 7183 9956 -2001 2 2 0 6 7105 10530 10527 -2002 2 2 0 6 6516 8046 8047 -2003 2 2 0 6 2658 3058 7510 -2004 2 2 0 6 7918 8869 10304 -2005 2 2 0 6 1207 7117 7349 -2006 2 2 0 6 14 445 11245 -2007 2 2 0 6 6277 11019 11030 -2008 2 2 0 6 786 7345 1047 -2009 2 2 0 6 6168 8116 11262 -2010 2 2 0 6 6230 10289 10378 -2011 2 2 0 6 1051 7348 1053 -2012 2 2 0 6 807 7104 10461 -2013 2 2 0 6 3891 7576 10235 -2014 2 2 0 6 3323 8944 10311 -2015 2 2 0 6 4364 7177 8543 -2016 2 2 0 6 2374 7180 9957 -2017 2 2 0 6 2740 7510 3324 -2018 2 2 0 6 3051 7094 10607 -2019 2 2 0 6 6162 7149 7150 -2020 2 2 0 6 4323 11069 7267 -2021 2 2 0 6 7575 9235 9702 -2022 2 2 0 6 3921 10967 10962 -2023 2 2 0 6 858 7089 10524 -2024 2 2 0 6 7633 10919 10695 -2025 2 2 0 6 6668 8633 8077 -2026 2 2 0 6 787 793 10297 -2027 2 2 0 6 4171 7059 10910 -2028 2 2 0 6 3842 4799 9019 -2029 2 2 0 6 5878 8633 6668 -2030 2 2 0 6 7135 7973 8981 -2031 2 2 0 6 7971 8981 7973 -2032 2 2 0 6 4395 7206 7205 -2033 2 2 0 6 10144 11122 10609 -2034 2 2 0 6 6037 6103 7250 -2035 2 2 0 6 6265 7102 10968 -2036 2 2 0 6 4799 9018 9019 -2037 2 2 0 6 1869 9956 7183 -2038 2 2 0 6 7769 10750 10507 -2039 2 2 0 6 1432 7902 1435 -2040 2 2 0 6 6103 7251 7250 -2041 2 2 0 6 3131 10969 10982 -2042 2 2 0 6 4364 7176 7177 -2043 2 2 0 6 1078 1076 7174 -2044 2 2 0 6 5716 7262 9919 -2045 2 2 0 6 3136 3139 10949 -2046 2 2 0 6 6516 8048 8046 -2047 2 2 0 6 5716 7489 7262 -2048 2 2 0 6 4364 7421 7176 -2049 2 2 0 6 7094 10610 10607 -2050 2 2 0 6 1476 10908 8288 -2051 2 2 0 6 3480 10319 8451 -2052 2 2 0 6 1844 9646 2341 -2053 2 2 0 6 2341 9646 7185 -2054 2 2 0 6 3131 9446 10969 -2055 2 2 0 6 7176 7421 9513 -2056 2 2 0 6 989 9385 7249 -2057 2 2 0 6 781 10378 10289 -2058 2 2 0 6 4779 7971 7969 -2059 2 2 0 6 4779 8981 7971 -2060 2 2 0 6 6687 8416 10609 -2061 2 2 0 6 1472 8288 8287 -2062 2 2 0 6 3059 9235 7575 -2063 2 2 0 6 1400 10977 7106 -2064 2 2 0 6 399 7441 7140 -2065 2 2 0 6 7339 8610 8609 -2066 2 2 0 6 5762 7451 7374 -2067 2 2 0 6 5286 7374 7451 -2068 2 2 0 6 1473 1476 8288 -2069 2 2 0 6 7104 10530 7105 -2070 2 2 0 6 7137 11059 11065 -2071 2 2 0 6 5270 7869 10981 -2072 2 2 0 6 5779 7238 8745 -2073 2 2 0 6 849 1148 10644 -2074 2 2 0 6 4021 7092 10544 -2075 2 2 0 6 5534 7277 7139 -2076 2 2 0 6 3453 7124 7389 -2077 2 2 0 6 4800 7489 5716 -2078 2 2 0 6 1404 8932 10994 -2079 2 2 0 6 4032 10379 10594 -2080 2 2 0 6 3128 3131 10982 -2081 2 2 0 6 6216 7502 7503 -2082 2 2 0 6 3077 3078 7200 -2083 2 2 0 6 7339 9676 8610 -2084 2 2 0 6 3059 7575 7693 -2085 2 2 0 6 7577 8712 7693 -2086 2 2 0 6 7069 10072 7161 -2087 2 2 0 6 6214 10226 10911 -2088 2 2 0 6 2488 7090 10904 -2089 2 2 0 6 1522 7099 10352 -2090 2 2 0 6 5337 7229 10500 -2091 2 2 0 6 807 10530 7104 -2092 2 2 0 6 4863 8602 7422 -2093 2 2 0 6 1584 7207 8024 -2094 2 2 0 6 3370 10834 10831 -2095 2 2 0 6 8148 10196 10992 -2096 2 2 0 6 1408 9372 11009 -2097 2 2 0 6 7175 10301 9503 -2098 2 2 0 6 781 8869 10442 -2099 2 2 0 6 3137 7213 3138 -2100 2 2 0 6 3059 7693 8712 -2101 2 2 0 6 7391 8291 10946 -2102 2 2 0 6 2317 7173 7172 -2103 2 2 0 6 4719 8116 7119 -2104 2 2 0 6 6245 10485 7536 -2105 2 2 0 6 2211 7180 2374 -2106 2 2 0 6 1588 7324 10680 -2107 2 2 0 6 7012 7256 7257 -2108 2 2 0 6 12 527 11226 -2109 2 2 0 6 3124 3127 10756 -2110 2 2 0 6 3077 7200 9879 -2111 2 2 0 6 1584 8024 8396 -2112 2 2 0 6 4311 10940 4314 -2113 2 2 0 6 6217 7150 7149 -2114 2 2 0 6 1468 10705 8052 -2115 2 2 0 6 2311 7115 8627 -2116 2 2 0 6 5499 7113 9385 -2117 2 2 0 6 3453 7383 7124 -2118 2 2 0 6 1556 1587 10970 -2119 2 2 0 6 8625 10698 9865 -2120 2 2 0 6 3054 10995 10984 -2121 2 2 0 6 7198 10978 7199 -2122 2 2 0 6 7077 11148 8823 -2123 2 2 0 6 6226 11090 7001 -2124 2 2 0 6 6172 7132 11257 -2125 2 2 0 6 5426 6172 11262 -2126 2 2 0 6 4032 4031 10379 -2127 2 2 0 6 5426 8116 8093 -2128 2 2 0 6 7574 7944 7943 -2129 2 2 0 6 3073 3074 7851 -2130 2 2 0 6 6050 11072 11222 -2131 2 2 0 6 7162 9569 10697 -2132 2 2 0 6 1042 7383 3453 -2133 2 2 0 6 5287 11086 7018 -2134 2 2 0 6 1409 1408 11033 -2135 2 2 0 6 5704 11039 7271 -2136 2 2 0 6 3390 8695 7088 -2137 2 2 0 6 1408 11009 11033 -2138 2 2 0 6 4184 10930 8217 -2139 2 2 0 6 4299 4301 7634 -2140 2 2 0 6 5368 10998 9296 -2141 2 2 0 6 4820 8844 8853 -2142 2 2 0 6 4243 10885 9661 -2143 2 2 0 6 3907 9434 9041 -2144 2 2 0 6 7349 8493 9308 -2145 2 2 0 6 2332 8146 10743 -2146 2 2 0 6 7138 8853 8844 -2147 2 2 0 6 1287 8977 10878 -2148 2 2 0 6 4760 8853 7138 -2149 2 2 0 6 8721 8794 10643 -2150 2 2 0 6 2137 7833 10696 -2151 2 2 0 6 4990 7216 6382 -2152 2 2 0 6 3137 8292 7213 -2153 2 2 0 6 3610 8712 7577 -2154 2 2 0 6 4760 7138 7258 -2155 2 2 0 6 4760 7258 9052 -2156 2 2 0 6 781 10442 10378 -2157 2 2 0 6 7199 10978 10984 -2158 2 2 0 6 5767 6978 11236 -2159 2 2 0 6 5395 7256 7012 -2160 2 2 0 6 8008 9996 9518 -2161 2 2 0 6 3216 11279 11173 -2162 2 2 0 6 7136 7137 11065 -2163 2 2 0 6 983 10988 988 -2164 2 2 0 6 3628 11055 11249 -2165 2 2 0 6 7068 9041 9434 -2166 2 2 0 6 5299 7626 9932 -2167 2 2 0 6 4659 7502 7149 -2168 2 2 0 6 7086 8798 10916 -2169 2 2 0 6 1465 1468 8052 -2170 2 2 0 6 3066 7643 7452 -2171 2 2 0 6 8024 8025 8396 -2172 2 2 0 6 4031 7120 10468 -2173 2 2 0 6 6211 7389 7124 -2174 2 2 0 6 2844 3064 8285 -2175 2 2 0 6 1673 10922 8241 -2176 2 2 0 6 10793 9461 10848 -2177 2 2 0 6 7562 7564 7901 -2178 2 2 0 6 5299 9932 7751 -2179 2 2 0 6 5301 10695 9582 -2180 2 2 0 6 3958 10079 4819 -2181 2 2 0 6 1464 8052 8047 -2182 2 2 0 6 6325 7123 10985 -2183 2 2 0 6 7090 10858 7091 -2184 2 2 0 6 6622 10937 8925 -2185 2 2 0 6 4430 9008 7223 -2186 2 2 0 6 6172 11257 11262 -2187 2 2 0 6 10083 11055 11044 -2188 2 2 0 6 5505 7179 8076 -2189 2 2 0 6 6997 7110 7111 -2190 2 2 0 6 1919 7387 7975 -2191 2 2 0 6 4430 7223 7155 -2192 2 2 0 6 1142 9885 7383 -2193 2 2 0 6 4756 6216 7503 -2194 2 2 0 6 2065 11059 11056 -2195 2 2 0 6 8193 11216 8194 -2196 2 2 0 6 7017 7510 10065 -2197 2 2 0 6 9045 10697 9569 -2198 2 2 0 6 1148 9674 10644 -2199 2 2 0 6 3476 8396 8025 -2200 2 2 0 6 1679 1681 7542 -2201 2 2 0 6 988 7769 7178 -2202 2 2 0 6 7121 7122 8884 -2203 2 2 0 6 2017 7171 7187 -2204 2 2 0 6 759 11253 10373 -2205 2 2 0 6 3476 8025 8397 -2206 2 2 0 6 4031 10468 10379 -2207 2 2 0 6 1573 8127 1575 -2208 2 2 0 6 4694 5257 8747 -2209 2 2 0 6 5505 7253 7179 -2210 2 2 0 6 6011 7975 7387 -2211 2 2 0 6 1597 10654 1600 -2212 2 2 0 6 5368 10083 11044 -2213 2 2 0 6 2017 7187 7977 -2214 2 2 0 6 5611 11021 8584 -2215 2 2 0 6 5763 9989 10418 -2216 2 2 0 6 6687 10584 8416 -2217 2 2 0 6 7323 10727 8156 -2218 2 2 0 6 1498 8884 9241 -2219 2 2 0 6 7559 8713 7561 -2220 2 2 0 6 8882 8883 8884 -2221 2 2 0 6 5191 10611 7005 -2222 2 2 0 6 6324 10932 7528 -2223 2 2 0 6 3141 7213 7158 -2224 2 2 0 6 1207 7349 9308 -2225 2 2 0 6 6165 9487 11256 -2226 2 2 0 6 5336 7229 5337 -2227 2 2 0 6 1359 10196 7144 -2228 2 2 0 6 5779 8747 7238 -2229 2 2 0 6 6689 10844 11067 -2230 2 2 0 6 7059 11062 10910 -2231 2 2 0 6 7764 10793 10848 -2232 2 2 0 6 6997 7111 8747 -2233 2 2 0 6 4762 8520 8525 -2234 2 2 0 6 4363 9060 10855 -2235 2 2 0 6 7120 6203 10468 -2236 2 2 0 6 3081 7269 7170 -2237 2 2 0 6 4795 8383 10806 -2238 2 2 0 6 4389 7462 7609 -2239 2 2 0 6 8384 8740 10833 -2240 2 2 0 6 5535 7343 7338 -2241 2 2 0 6 4768 8518 8521 -2242 2 2 0 6 2664 10175 9347 -2243 2 2 0 6 7143 11040 11027 -2244 2 2 0 6 1515 7942 7943 -2245 2 2 0 6 3988 8278 11006 -2246 2 2 0 6 2927 11047 7141 -2247 2 2 0 6 1456 8049 8050 -2248 2 2 0 6 7174 10301 7175 -2249 2 2 0 6 2249 7343 5535 -2250 2 2 0 6 5535 7338 9035 -2251 2 2 0 6 5235 10714 7431 -2252 2 2 0 6 955 7161 7162 -2253 2 2 0 6 6216 7149 7502 -2254 2 2 0 6 5505 9394 7253 -2255 2 2 0 6 1281 9104 11224 -2256 2 2 0 6 8518 8525 8520 -2257 2 2 0 6 6037 7250 10886 -2258 2 2 0 6 5368 11044 10998 -2259 2 2 0 6 5971 7276 7370 -2260 2 2 0 6 6316 7252 10587 -2261 2 2 0 6 2744 10896 8436 -2262 2 2 0 6 1778 7943 1874 -2263 2 2 0 6 2556 2631 10854 -2264 2 2 0 6 6242 7536 10485 -2265 2 2 0 6 5992 7197 7225 -2266 2 2 0 6 4316 10651 8159 -2267 2 2 0 6 8468 2927 11053 -2268 2 2 0 6 1425 10882 2399 -2269 2 2 0 6 1431 10898 1975 -2270 2 2 0 6 6307 7849 6310 -2271 2 2 0 6 3139 7102 10949 -2272 2 2 0 6 1456 8050 8051 -2273 2 2 0 6 7113 7249 9385 -2274 2 2 0 6 1448 1449 7717 -2275 2 2 0 6 7147 9514 8285 -2276 2 2 0 6 3482 8465 9128 -2277 2 2 0 6 5296 6976 11214 -2278 2 2 0 6 3081 7170 7200 -2279 2 2 0 6 7338 7339 9035 -2280 2 2 0 6 8468 11053 11061 -2281 2 2 0 6 7258 9636 9052 -2282 2 2 0 6 6214 10911 7452 -2283 2 2 0 6 4291 7241 8924 -2284 2 2 0 6 4389 7463 7462 -2285 2 2 0 6 7181 10902 9957 -2286 2 2 0 6 1601 10592 1604 -2287 2 2 0 6 3138 7213 3141 -2288 2 2 0 6 4768 8525 8518 -2289 2 2 0 6 1593 10618 1596 -2290 2 2 0 6 3078 3081 7200 -2291 2 2 0 6 3921 9269 11187 -2292 2 2 0 6 6248 7910 7912 -2293 2 2 0 6 5254 10961 7154 -2294 2 2 0 6 8466 10954 10981 -2295 2 2 0 6 2846 8285 7145 -2296 2 2 0 6 6244 7277 7278 -2297 2 2 0 6 5375 7961 5376 -2298 2 2 0 6 7166 9341 8554 -2299 2 2 0 6 7101 10962 10967 -2300 2 2 0 6 1434 9746 9004 -2301 2 2 0 6 6597 7442 7696 -2302 2 2 0 6 3988 7143 11027 -2303 2 2 0 6 7177 8146 8543 -2304 2 2 0 6 4580 5992 7225 -2305 2 2 0 6 1690 8291 7326 -2306 2 2 0 6 2498 2846 8388 -2307 2 2 0 6 3133 7990 3134 -2308 2 2 0 6 7339 8609 9035 -2309 2 2 0 6 5316 8007 8446 -2310 2 2 0 6 2496 8388 3491 -2311 2 2 0 6 1452 8051 9149 -2312 2 2 0 6 7574 7943 7942 -2313 2 2 0 6 1538 7902 9183 -2314 2 2 0 6 1064 7165 8554 -2315 2 2 0 6 1082 9370 1086 -2316 2 2 0 6 7165 9511 8492 -2317 2 2 0 6 6197 11050 8276 -2318 2 2 0 6 8468 11061 9619 -2319 2 2 0 6 3617 9341 7166 -2320 2 2 0 6 1607 7253 9394 -2321 2 2 0 6 5286 6241 7374 -2322 2 2 0 6 5193 7430 10749 -2323 2 2 0 6 6277 11030 11042 -2324 2 2 0 6 5520 5971 7370 -2325 2 2 0 6 3054 11019 7098 -2326 2 2 0 6 7592 9064 11093 -2327 2 2 0 6 6992 8964 11258 -2328 2 2 0 6 3143 10962 7101 -2329 2 2 0 6 1064 8554 9341 -2330 2 2 0 6 5763 10226 6214 -2331 2 2 0 6 4295 7148 11054 -2332 2 2 0 6 2664 7609 7464 -2333 2 2 0 6 5864 8452 8920 -2334 2 2 0 6 1051 11007 7348 -2335 2 2 0 6 6284 7244 7668 -2336 2 2 0 6 4346 10660 7750 -2337 2 2 0 6 7187 7278 7977 -2338 2 2 0 6 5283 7624 7634 -2339 2 2 0 6 4240 11110 11123 -2340 2 2 0 6 4389 7680 7463 -2341 2 2 0 6 4316 4314 7870 -2342 2 2 0 6 6241 9589 7374 -2343 2 2 0 6 3139 10968 7102 -2344 2 2 0 6 4845 8963 7233 -2345 2 2 0 6 4794 9709 4863 -2346 2 2 0 6 3599 8059 5551 -2347 2 2 0 6 2664 7464 10175 -2348 2 2 0 6 5787 9970 7123 -2349 2 2 0 6 6240 9545 11163 -2350 2 2 0 6 4863 9709 8602 -2351 2 2 0 6 955 7162 10697 -2352 2 2 0 6 6571 10941 10964 -2353 2 2 0 6 4762 9636 8520 -2354 2 2 0 6 4395 8127 7206 -2355 2 2 0 6 1840 10871 1842 -2356 2 2 0 6 4726 4758 8798 -2357 2 2 0 6 1448 7717 7222 -2358 2 2 0 6 4417 10919 7633 -2359 2 2 0 6 3593 8493 8492 -2360 2 2 0 6 7140 7696 7442 -2361 2 2 0 6 1936 8006 2195 -2362 2 2 0 6 3301 7153 11058 -2363 2 2 0 6 4395 7205 8258 -2364 2 2 0 6 1447 7239 1450 -2365 2 2 0 6 1348 9839 9978 -2366 2 2 0 6 3593 8492 9511 -2367 2 2 0 6 1064 9511 7165 -2368 2 2 0 6 7125 7383 9885 -2369 2 2 0 6 4768 8521 8661 -2370 2 2 0 6 1607 7270 7253 -2371 2 2 0 6 5202 5282 9970 -2372 2 2 0 6 4794 7954 9709 -2373 2 2 0 6 3601 6200 8059 -2374 2 2 0 6 2235 10858 2488 -2375 2 2 0 6 3133 7988 7990 -2376 2 2 0 6 7100 11115 11095 -2377 2 2 0 6 7125 9347 10175 -2378 2 2 0 6 6253 9513 7421 -2379 2 2 0 6 7125 9885 9347 -2380 2 2 0 6 4779 7969 10958 -2381 2 2 0 6 3593 9308 8493 -2382 2 2 0 6 3436 10563 10915 -2383 2 2 0 6 7196 7241 7240 -2384 2 2 0 6 8214 8215 10924 -2385 2 2 0 6 6324 9978 9839 -2386 2 2 0 6 4351 9723 10872 -2387 2 2 0 6 1595 10426 7272 -2388 2 2 0 6 5895 10448 7192 -2389 2 2 0 6 4795 8610 9676 -2390 2 2 0 6 3491 8388 11000 -2391 2 2 0 6 7462 7464 7609 -2392 2 2 0 6 4792 5276 8464 -2393 2 2 0 6 2921 9565 7578 -2394 2 2 0 6 1359 7144 10156 -2395 2 2 0 6 1460 8048 8049 -2396 2 2 0 6 4657 6248 7912 -2397 2 2 0 6 8171 9773 9144 -2398 2 2 0 6 7038 10834 7047 -2399 2 2 0 6 3740 10275 4845 -2400 2 2 0 6 1078 7174 2317 -2401 2 2 0 6 5762 6214 7451 -2402 2 2 0 6 1578 8258 1580 -2403 2 2 0 6 2326 7108 7180 -2404 2 2 0 6 5780 7233 8963 -2405 2 2 0 6 5551 7156 10920 -2406 2 2 0 6 1607 1604 7270 -2407 2 2 0 6 4430 7155 8977 -2408 2 2 0 6 5162 7167 6217 -2409 2 2 0 6 1587 7766 10970 -2410 2 2 0 6 6187 10969 9446 -2411 2 2 0 6 1936 8307 8006 -2412 2 2 0 6 4945 7965 10934 -2413 2 2 0 6 1745 11097 7280 -2414 2 2 0 6 8170 9773 8171 -2415 2 2 0 6 1906 8307 1936 -2416 2 2 0 6 4865 6332 7248 -2417 2 2 0 6 6278 10994 8932 -2418 2 2 0 6 5463 7391 8342 -2419 2 2 0 6 7775 10750 10988 -2420 2 2 0 6 6401 7157 11076 -2421 2 2 0 6 4001 7390 8828 -2422 2 2 0 6 7091 10858 10783 -2423 2 2 0 6 7657 9718 8250 -2424 2 2 0 6 7098 7921 10995 -2425 2 2 0 6 2508 11243 10783 -2426 2 2 0 6 2926 4569 11070 -2427 2 2 0 6 6384 10910 6386 -2428 2 2 0 6 2340 9773 8170 -2429 2 2 0 6 6578 11060 11068 -2430 2 2 0 6 3842 9019 4668 -2431 2 2 0 6 7570 9004 9746 -2432 2 2 0 6 6660 8159 10651 -2433 2 2 0 6 4762 9052 9636 -2434 2 2 0 6 3137 7990 8292 -2435 2 2 0 6 1827 7668 7244 -2436 2 2 0 6 2179 11082 11085 -2437 2 2 0 6 4443 7392 9845 -2438 2 2 0 6 6332 7450 7248 -2439 2 2 0 6 1584 8258 7207 -2440 2 2 0 6 2621 9548 11135 -2441 2 2 0 6 7324 7325 10680 -2442 2 2 0 6 5763 10418 10226 -2443 2 2 0 6 7762 7764 11102 -2444 2 2 0 6 2735 7644 2737 -2445 2 2 0 6 3673 9296 10998 -2446 2 2 0 6 2476 9957 2778 -2447 2 2 0 6 7522 10921 10952 -2448 2 2 0 6 3129 7989 3130 -2449 2 2 0 6 2211 2326 7180 -2450 2 2 0 6 1452 1453 8051 -2451 2 2 0 6 4690 7016 11265 -2452 2 2 0 6 399 7442 10355 -2453 2 2 0 6 7658 10667 8045 -2454 2 2 0 6 1446 7208 7195 -2455 2 2 0 6 6275 7451 7452 -2456 2 2 0 6 4001 7328 7390 -2457 2 2 0 6 7866 7867 9265 -2458 2 2 0 6 968 3925 11031 -2459 2 2 0 6 4845 10275 8963 -2460 2 2 0 6 3551 10999 8825 -2461 2 2 0 6 5928 7416 10016 -2462 2 2 0 6 4654 7912 5283 -2463 2 2 0 6 7522 10895 10921 -2464 2 2 0 6 5341 10351 10222 -2465 2 2 0 6 2017 7750 7171 -2466 2 2 0 6 8003 10816 11049 -2467 2 2 0 6 6244 7139 7277 -2468 2 2 0 6 2916 9434 3295 -2469 2 2 0 6 7955 8464 8465 -2470 2 2 0 6 1446 7239 1447 -2471 2 2 0 6 2341 10259 9144 -2472 2 2 0 6 4783 10082 4785 -2473 2 2 0 6 1719 1768 8342 -2474 2 2 0 6 1871 5463 8342 -2475 2 2 0 6 4785 7866 9265 -2476 2 2 0 6 6024 10956 9073 -2477 2 2 0 6 6257 6877 9020 -2478 2 2 0 6 6538 8049 8048 -2479 2 2 0 6 1444 7208 1446 -2480 2 2 0 6 6190 11009 9372 -2481 2 2 0 6 7193 5396 7418 -2482 2 2 0 6 5322 7015 10861 -2483 2 2 0 6 3134 7990 3137 -2484 2 2 0 6 1595 8453 10426 -2485 2 2 0 6 1942 7677 7231 -2486 2 2 0 6 1460 8046 8048 -2487 2 2 0 6 812 11018 8272 -2488 2 2 0 6 5341 9238 8976 -2489 2 2 0 6 6382 7216 7668 -2490 2 2 0 6 3129 8228 7989 -2491 2 2 0 6 5188 7169 9060 -2492 2 2 0 6 1589 8453 1591 -2493 2 2 0 6 6337 10212 7543 -2494 2 2 0 6 3531 10587 7252 -2495 2 2 0 6 5395 5396 7256 -2496 2 2 0 6 7158 7228 11077 -2497 2 2 0 6 6677 9152 11145 -2498 2 2 0 6 2317 7174 7173 -2499 2 2 0 6 2404 7201 8007 -2500 2 2 0 6 6024 10966 10956 -2501 2 2 0 6 1673 8160 10020 -2502 2 2 0 6 7196 8924 7241 -2503 2 2 0 6 6256 9020 9019 -2504 2 2 0 6 7 491 11126 -2505 2 2 0 6 4001 8436 7328 -2506 2 2 0 6 6106 10663 11260 -2507 2 2 0 6 6068 6069 11169 -2508 2 2 0 6 7315 7883 9790 -2509 2 2 0 6 8171 9144 10259 -2510 2 2 0 6 1446 7195 7239 -2511 2 2 0 6 1432 7900 7902 -2512 2 2 0 6 7569 7900 7901 -2513 2 2 0 6 5283 7912 7625 -2514 2 2 0 6 7199 10984 10995 -2515 2 2 0 6 1366 10985 7123 -2516 2 2 0 6 4327 7393 7375 -2517 2 2 0 6 1435 7902 1538 -2518 2 2 0 6 2657 10978 7198 -2519 2 2 0 6 6564 10893 10906 -2520 2 2 0 6 7193 7256 5396 -2521 2 2 0 6 2317 7172 9370 -2522 2 2 0 6 4785 10082 7866 -2523 2 2 0 6 7236 9567 7855 -2524 2 2 0 6 5928 7330 6337 -2525 2 2 0 6 5196 10902 7181 -2526 2 2 0 6 1456 1457 8049 -2527 2 2 0 6 1443 1445 7718 -2528 2 2 0 6 7501 7751 9932 -2529 2 2 0 6 7769 10988 10750 -2530 2 2 0 6 4930 5261 11101 -2531 2 2 0 6 4443 7227 7392 -2532 2 2 0 6 3606 7209 7341 -2533 2 2 0 6 8885 10966 10979 -2534 2 2 0 6 1975 10898 7540 -2535 2 2 0 6 8394 10579 10918 -2536 2 2 0 6 1869 7183 9723 -2537 2 2 0 6 1452 9149 7717 -2538 2 2 0 6 7082 7156 8059 -2539 2 2 0 6 7187 10218 7278 -2540 2 2 0 6 5928 10016 7330 -2541 2 2 0 6 732 7340 734 -2542 2 2 0 6 3253 7344 7418 -2543 2 2 0 6 3606 7340 7209 -2544 2 2 0 6 4799 9996 9018 -2545 2 2 0 6 5299 7634 7626 -2546 2 2 0 6 3077 9879 7851 -2547 2 2 0 6 4319 11088 8077 -2548 2 2 0 6 734 7340 3606 -2549 2 2 0 6 6262 6261 9956 -2550 2 2 0 6 8600 11114 11119 -2551 2 2 0 6 7196 7240 7239 -2552 2 2 0 6 7356 7358 10486 -2553 2 2 0 6 4934 6646 11119 -2554 2 2 0 6 5559 9370 7215 -2555 2 2 0 6 5261 8598 11101 -2556 2 2 0 6 3440 10087 8201 -2557 2 2 0 6 6066 9506 11108 -2558 2 2 0 6 1190 10909 8818 -2559 2 2 0 6 1604 10592 7270 -2560 2 2 0 6 6492 8047 8052 -2561 2 2 0 6 7230 8975 7337 -2562 2 2 0 6 3630 7337 8975 -2563 2 2 0 6 7569 7902 7900 -2564 2 2 0 6 1600 10654 7331 -2565 2 2 0 6 4316 7870 10651 -2566 2 2 0 6 7175 9503 10479 -2567 2 2 0 6 623 8885 10979 -2568 2 2 0 6 2745 9312 10931 -2569 2 2 0 6 6724 10474 6751 -2570 2 2 0 6 7458 10403 9396 -2571 2 2 0 6 2725 7852 3002 -2572 2 2 0 6 1519 11158 10527 -2573 2 2 0 6 5688 9845 7392 -2574 2 2 0 6 7177 10743 8146 -2575 2 2 0 6 1743 11109 9148 -2576 2 2 0 6 2631 7254 10854 -2577 2 2 0 6 3133 7989 7988 -2578 2 2 0 6 5629 7236 9260 -2579 2 2 0 6 5992 10989 7197 -2580 2 2 0 6 7564 7569 7901 -2581 2 2 0 6 3538 7278 7277 -2582 2 2 0 6 1921 8357 7855 -2583 2 2 0 6 5912 7705 11271 -2584 2 2 0 6 4182 7514 7454 -2585 2 2 0 6 5629 9567 7236 -2586 2 2 0 6 1362 10997 7130 -2587 2 2 0 6 1917 8054 8055 -2588 2 2 0 6 4602 4652 11150 -2589 2 2 0 6 6244 7278 10218 -2590 2 2 0 6 7109 9329 7229 -2591 2 2 0 6 5322 10861 7248 -2592 2 2 0 6 4301 5283 7634 -2593 2 2 0 6 6332 9496 7450 -2594 2 2 0 6 7777 10955 7983 -2595 2 2 0 6 1842 9646 1844 -2596 2 2 0 6 3074 3077 7851 -2597 2 2 0 6 6241 10079 9589 -2598 2 2 0 6 6262 8439 9712 -2599 2 2 0 6 6548 10696 7833 -2600 2 2 0 6 1448 7222 7718 -2601 2 2 0 6 4291 8925 7241 -2602 2 2 0 6 1025 8975 7230 -2603 2 2 0 6 3648 7086 10916 -2604 2 2 0 6 6220 8287 8288 -2605 2 2 0 6 7325 10593 10680 -2606 2 2 0 6 6306 7849 6307 -2607 2 2 0 6 8355 11106 8696 -2608 2 2 0 6 2242 10016 7416 -2609 2 2 0 6 5347 6583 10604 -2610 2 2 0 6 4694 8747 5779 -2611 2 2 0 6 3308 7579 7805 -2612 2 2 0 6 1921 7855 9567 -2613 2 2 0 6 2383 7229 9329 -2614 2 2 0 6 8450 10319 8452 -2615 2 2 0 6 7201 8446 8007 -2616 2 2 0 6 4601 4602 11153 -2617 2 2 0 6 56 565 497 -2618 2 2 0 6 3428 8863 11071 -2619 2 2 0 6 1453 1456 8051 -2620 2 2 0 6 2490 11047 2927 -2621 2 2 0 6 7571 9702 10235 -2622 2 2 0 6 602 1917 8055 -2623 2 2 0 6 3129 8229 8228 -2624 2 2 0 6 7189 10568 10556 -2625 2 2 0 6 6400 6401 11076 -2626 2 2 0 6 4868 10568 7189 -2627 2 2 0 6 6646 9745 11137 -2628 2 2 0 6 1190 10375 10374 -2629 2 2 0 6 2586 8797 7670 -2630 2 2 0 6 6259 7375 7393 -2631 2 2 0 6 4469 7656 8249 -2632 2 2 0 6 1537 10425 1801 -2633 2 2 0 6 6213 7268 7267 -2634 2 2 0 6 3446 10043 9958 -2635 2 2 0 6 8235 10686 10891 -2636 2 2 0 6 6222 10785 11266 -2637 2 2 0 6 5355 10601 7191 -2638 2 2 0 6 6262 9956 8439 -2639 2 2 0 6 5830 10262 7770 -2640 2 2 0 6 6623 8201 10087 -2641 2 2 0 6 1596 10618 8138 -2642 2 2 0 6 3130 7989 3133 -2643 2 2 0 6 5292 8493 7349 -2644 2 2 0 6 8988 8989 10825 -2645 2 2 0 6 6601 10924 8215 -2646 2 2 0 6 3073 7851 7849 -2647 2 2 0 6 5972 7670 8797 -2648 2 2 0 6 6337 7330 10212 -2649 2 2 0 6 5292 7347 8493 -2650 2 2 0 6 3432 10704 10925 -2651 2 2 0 6 7705 11274 11271 -2652 2 2 0 6 154 7246 498 -2653 2 2 0 6 6272 7448 10434 -2654 2 2 0 6 6538 8050 8049 -2655 2 2 0 6 8156 10727 9461 -2656 2 2 0 6 6563 7454 7514 -2657 2 2 0 6 3610 7577 8713 -2658 2 2 0 6 7100 5791 11115 -2659 2 2 0 6 2399 10882 8339 -2660 2 2 0 6 4295 11054 4296 -2661 2 2 0 6 6299 8373 6302 -2662 2 2 0 6 1157 1184 7694 -2663 2 2 0 6 5293 5295 9041 -2664 2 2 0 6 5341 8976 10351 -2665 2 2 0 6 6226 11073 11090 -2666 2 2 0 6 5251 8798 7086 -2667 2 2 0 6 5292 7360 7347 -2668 2 2 0 6 1961 8190 10034 -2669 2 2 0 6 7315 9903 7883 -2670 2 2 0 6 7027 10312 7261 -2671 2 2 0 6 7266 9151 7664 -2672 2 2 0 6 5711 10513 10443 -2673 2 2 0 6 6724 7170 10638 -2674 2 2 0 6 2341 7185 10259 -2675 2 2 0 6 3494 10235 9702 -2676 2 2 0 6 5923 10540 8391 -2677 2 2 0 6 5830 7347 7360 -2678 2 2 0 6 2846 7146 8388 -2679 2 2 0 6 4763 11095 6066 -2680 2 2 0 6 3639 4469 8249 -2681 2 2 0 6 3064 7147 8285 -2682 2 2 0 6 1921 8358 8357 -2683 2 2 0 6 6571 7188 10941 -2684 2 2 0 6 6600 11012 10917 -2685 2 2 0 6 2844 8285 2846 -2686 2 2 0 6 2015 2018 7750 -2687 2 2 0 6 565 566 497 -2688 2 2 0 6 3308 7779 7579 -2689 2 2 0 6 1587 10957 7766 -2690 2 2 0 6 6276 8250 9718 -2691 2 2 0 6 7192 10448 7715 -2692 2 2 0 6 5190 7367 6163 -2693 2 2 0 6 4299 7634 5299 -2694 2 2 0 6 3301 11058 3300 -2695 2 2 0 6 1449 1452 7717 -2696 2 2 0 6 5629 9260 9224 -2697 2 2 0 6 5026 10864 10887 -2698 2 2 0 6 4799 9518 9996 -2699 2 2 0 6 1952 7473 1954 -2700 2 2 0 6 6751 10474 10416 -2701 2 2 0 6 6306 7848 7849 -2702 2 2 0 6 1457 1460 8049 -2703 2 2 0 6 1573 1577 8127 -2704 2 2 0 6 8923 10945 10960 -2705 2 2 0 6 8007 9996 8008 -2706 2 2 0 6 6258 9661 10885 -2707 2 2 0 6 8156 9461 10793 -2708 2 2 0 6 7007 10749 7430 -2709 2 2 0 6 4602 11150 11153 -2710 2 2 0 6 1444 7635 7208 -2711 2 2 0 6 7561 8713 7577 -2712 2 2 0 6 1575 8127 4395 -2713 2 2 0 6 6646 8600 11119 -2714 2 2 0 6 152 153 7335 -2715 2 2 0 6 6020 10920 11161 -2716 2 2 0 6 5119 7614 7259 -2717 2 2 0 6 5119 7259 7615 -2718 2 2 0 6 3121 8100 3122 -2719 2 2 0 6 986 998 9385 -2720 2 2 0 6 3617 7166 10479 -2721 2 2 0 6 8941 11015 8942 -2722 2 2 0 6 8452 10319 8920 -2723 2 2 0 6 9439 10986 10621 -2724 2 2 0 6 6306 7850 7848 -2725 2 2 0 6 1920 7194 10781 -2726 2 2 0 6 988 10988 7769 -2727 2 2 0 6 1224 7373 8099 -2728 2 2 0 6 3204 7812 3207 -2729 2 2 0 6 7555 9276 7557 -2730 2 2 0 6 2221 2224 7357 -2731 2 2 0 6 1308 9322 7342 -2732 2 2 0 6 2603 7899 9803 -2733 2 2 0 6 7315 9790 9798 -2734 2 2 0 6 6114 11301 11280 -2735 2 2 0 6 4805 8452 10390 -2736 2 2 0 6 1319 1507 8692 -2737 2 2 0 6 8190 9958 10043 -2738 2 2 0 6 8435 10731 10777 -2739 2 2 0 6 4795 10806 8610 -2740 2 2 0 6 1450 7239 7240 -2741 2 2 0 6 4453 7691 8686 -2742 2 2 0 6 3958 9589 10079 -2743 2 2 0 6 498 7246 7247 -2744 2 2 0 6 2921 7578 9276 -2745 2 2 0 6 8451 10374 10375 -2746 2 2 0 6 3480 8451 10375 -2747 2 2 0 6 6029 11014 8272 -2748 2 2 0 6 5334 5591 9012 -2749 2 2 0 6 3308 7805 7806 -2750 2 2 0 6 2404 8006 7201 -2751 2 2 0 6 1076 10301 7174 -2752 2 2 0 6 7559 7578 8713 -2753 2 2 0 6 1568 1588 10680 -2754 2 2 0 6 615 8923 10960 -2755 2 2 0 6 7316 7886 9902 -2756 2 2 0 6 1170 1172 10327 -2757 2 2 0 6 6516 6517 8048 -2758 2 2 0 6 113 114 7386 -2759 2 2 0 6 6517 6538 8048 -2760 2 2 0 6 8354 11127 8355 -2761 2 2 0 6 1961 9958 8190 -2762 2 2 0 6 5931 8819 10406 -2763 2 2 0 6 1223 7234 7437 -2764 2 2 0 6 7521 10895 7522 -2765 2 2 0 6 3125 9690 8229 -2766 2 2 0 6 7394 10475 7808 -2767 2 2 0 6 5397 10928 7960 -2768 2 2 0 6 8025 8872 8397 -2769 2 2 0 6 1587 10983 10957 -2770 2 2 0 6 4892 10486 7358 -2771 2 2 0 6 7885 7886 9909 -2772 2 2 0 6 7570 9746 7806 -2773 2 2 0 6 7576 10443 10513 -2774 2 2 0 6 2941 7443 7242 -2775 2 2 0 6 1606 8466 10981 -2776 2 2 0 6 7388 9257 8099 -2777 2 2 0 6 3244 7263 10024 -2778 2 2 0 6 7137 11056 11059 -2779 2 2 0 6 1434 9004 7901 -2780 2 2 0 6 1424 7806 1426 -2781 2 2 0 6 500 7275 9954 -2782 2 2 0 6 1445 1448 7718 -2783 2 2 0 6 952 10697 951 -2784 2 2 0 6 3988 11006 7143 -2785 2 2 0 6 602 8055 604 -2786 2 2 0 6 6528 10436 7616 -2787 2 2 0 6 1119 1121 8475 -2788 2 2 0 6 7934 10231 7936 -2789 2 2 0 6 1223 7266 7234 -2790 2 2 0 6 28 6999 11290 -2791 2 2 0 6 3338 10377 7635 -2792 2 2 0 6 8390 8391 10540 -2793 2 2 0 6 1690 10946 8291 -2794 2 2 0 6 2603 9803 7368 -2795 2 2 0 6 5830 7360 10262 -2796 2 2 0 6 7562 7901 9004 -2797 2 2 0 6 3596 10473 7214 -2798 2 2 0 6 1224 8099 9257 -2799 2 2 0 6 836 10987 8364 -2800 2 2 0 6 793 11140 10297 -2801 2 2 0 6 2941 7242 7444 -2802 2 2 0 6 6310 7849 7851 -2803 2 2 0 6 3891 10443 7576 -2804 2 2 0 6 6284 7668 7216 -2805 2 2 0 6 4166 7388 7664 -2806 2 2 0 6 7265 7373 8951 -2807 2 2 0 6 7337 8976 9238 -2808 2 2 0 6 4166 9257 7388 -2809 2 2 0 6 5855 10701 5965 -2810 2 2 0 6 1224 8951 7373 -2811 2 2 0 6 5514 7154 10961 -2812 2 2 0 6 4819 10079 7179 -2813 2 2 0 6 3596 10515 8298 -2814 2 2 0 6 2876 8635 7830 -2815 2 2 0 6 1534 8789 7457 -2816 2 2 0 6 10523 10536 8775 -2817 2 2 0 6 1223 9151 7266 -2818 2 2 0 6 7289 7830 8635 -2819 2 2 0 6 7885 9798 9790 -2820 2 2 0 6 2195 8006 2404 -2821 2 2 0 6 7432 9032 7433 -2822 2 2 0 6 4166 7664 9151 -2823 2 2 0 6 3125 8229 3126 -2824 2 2 0 6 5934 8775 10536 -2825 2 2 0 6 7579 7779 7581 -2826 2 2 0 6 1897 7455 7456 -2827 2 2 0 6 7980 10358 7981 -2828 2 2 0 6 1168 7443 2941 -2829 2 2 0 6 3149 11027 11040 -2830 2 2 0 6 1967 11125 11106 -2831 2 2 0 6 3493 7265 8951 -2832 2 2 0 6 5257 6997 8747 -2833 2 2 0 6 4453 7690 7691 -2834 2 2 0 6 7457 8789 7458 -2835 2 2 0 6 8184 10110 10034 -2836 2 2 0 6 3259 7450 9496 -2837 2 2 0 6 736 9322 738 -2838 2 2 0 6 5934 6001 10555 -2839 2 2 0 6 7644 9226 10880 -2840 2 2 0 6 1967 11106 8355 -2841 2 2 0 6 6317 10024 7263 -2842 2 2 0 6 1897 7456 7460 -2843 2 2 0 6 5323 8397 8872 -2844 2 2 0 6 8017 10369 9759 -2845 2 2 0 6 5282 7874 9970 -2846 2 2 0 6 7193 7418 7344 -2847 2 2 0 6 7578 9565 8713 -2848 2 2 0 6 1082 2317 9370 -2849 2 2 0 6 7547 10151 10537 -2850 2 2 0 6 3149 11040 8276 -2851 2 2 0 6 4726 8798 5251 -2852 2 2 0 6 3082 3085 7269 -2853 2 2 0 6 3617 10479 9503 -2854 2 2 0 6 4314 10940 7870 -2855 2 2 0 6 826 11002 3471 -2856 2 2 0 6 4603 11251 11116 -2857 2 2 0 6 4141 9858 7860 -2858 2 2 0 6 2827 3988 11027 -2859 2 2 0 6 2595 10556 7224 -2860 2 2 0 6 8384 10833 8608 -2861 2 2 0 6 2968 7203 10348 -2862 2 2 0 6 7224 10556 10568 -2863 2 2 0 6 7203 7204 10348 -2864 2 2 0 6 7885 9909 9798 -2865 2 2 0 6 620 623 11152 -2866 2 2 0 6 8737 11002 10996 -2867 2 2 0 6 8298 10515 10529 -2868 2 2 0 6 3207 7812 7364 -2869 2 2 0 6 8391 10549 10550 -2870 2 2 0 6 1086 9370 5559 -2871 2 2 0 6 7052 7688 10813 -2872 2 2 0 6 7873 10756 8459 -2873 2 2 0 6 3081 3082 7269 -2874 2 2 0 6 7179 10079 8076 -2875 2 2 0 6 152 7335 397 -2876 2 2 0 6 5921 8512 10216 -2877 2 2 0 6 3189 10400 7226 -2878 2 2 0 6 1359 10992 10196 -2879 2 2 0 6 1168 1170 7443 -2880 2 2 0 6 6701 11205 11204 -2881 2 2 0 6 5534 9716 7277 -2882 2 2 0 6 1749 8224 8225 -2883 2 2 0 6 7063 10060 8254 -2884 2 2 0 6 1189 7279 8953 -2885 2 2 0 6 4676 9032 7432 -2886 2 2 0 6 1580 8258 1584 -2887 2 2 0 6 6542 8051 8050 -2888 2 2 0 6 7691 9082 8686 -2889 2 2 0 6 5674 7860 11029 -2890 2 2 0 6 6260 10220 9012 -2891 2 2 0 6 1865 8128 1867 -2892 2 2 0 6 6001 10579 10555 -2893 2 2 0 6 6582 10288 7757 -2894 2 2 0 6 4758 7097 8798 -2895 2 2 0 6 6285 7273 7511 -2896 2 2 0 6 4133 10852 8443 -2897 2 2 0 6 1906 1942 8307 -2898 2 2 0 6 7931 9915 9864 -2899 2 2 0 6 832 10987 836 -2900 2 2 0 6 5634 6282 7376 -2901 2 2 0 6 2096 10504 10463 -2902 2 2 0 6 4038 6285 7511 -2903 2 2 0 6 497 567 7441 -2904 2 2 0 6 7669 10420 8805 -2905 2 2 0 6 1578 4395 8258 -2906 2 2 0 6 6228 8808 8627 -2907 2 2 0 6 2372 10609 8416 -2908 2 2 0 6 9229 10817 10400 -2909 2 2 0 6 6327 10300 10691 -2910 2 2 0 6 7766 10957 7767 -2911 2 2 0 6 1189 8837 7279 -2912 2 2 0 6 1156 10122 1258 -2913 2 2 0 6 6597 10707 10483 -2914 2 2 0 6 1106 7336 1108 -2915 2 2 0 6 1266 1286 8977 -2916 2 2 0 6 7316 9909 7886 -2917 2 2 0 6 4801 7853 7501 -2918 2 2 0 6 567 7140 7441 -2919 2 2 0 6 8263 8260 10552 -2920 2 2 0 6 2737 7644 3066 -2921 2 2 0 6 7194 10779 10781 -2922 2 2 0 6 4323 7617 7362 -2923 2 2 0 6 114 510 7386 -2924 2 2 0 6 1749 8223 8224 -2925 2 2 0 6 2990 7848 7850 -2926 2 2 0 6 989 7775 10988 -2927 2 2 0 6 1758 9613 7632 -2928 2 2 0 6 3149 8276 11050 -2929 2 2 0 6 565 7217 566 -2930 2 2 0 6 7205 7207 8258 -2931 2 2 0 6 6698 10955 10478 -2932 2 2 0 6 6697 10684 11206 -2933 2 2 0 6 351 443 7332 -2934 2 2 0 6 5905 10464 10419 -2935 2 2 0 6 8014 8015 10566 -2936 2 2 0 6 3471 11002 8737 -2937 2 2 0 6 2990 7850 7852 -2938 2 2 0 6 5316 9996 8007 -2939 2 2 0 6 2968 10446 7203 -2940 2 2 0 6 7214 10473 10450 -2941 2 2 0 6 1827 7244 7669 -2942 2 2 0 6 3990 7333 8856 -2943 2 2 0 6 1397 10977 1400 -2944 2 2 0 6 3456 11016 8449 -2945 2 2 0 6 2775 9788 10279 -2946 2 2 0 6 255 504 7415 -2947 2 2 0 6 613 8901 9900 -2948 2 2 0 6 5931 10523 8819 -2949 2 2 0 6 6181 8660 8659 -2950 2 2 0 6 7333 8837 8856 -2951 2 2 0 6 3559 7232 9259 -2952 2 2 0 6 1942 7231 8307 -2953 2 2 0 6 4580 7225 10046 -2954 2 2 0 6 1201 11090 1202 -2955 2 2 0 6 4443 8692 7227 -2956 2 2 0 6 3536 7936 10231 -2957 2 2 0 6 7972 7973 10386 -2958 2 2 0 6 7500 7501 7853 -2959 2 2 0 6 6699 11198 11189 -2960 2 2 0 6 6403 9860 11166 -2961 2 2 0 6 3990 7334 7333 -2962 2 2 0 6 6245 7216 10485 -2963 2 2 0 6 1183 10894 1919 -2964 2 2 0 6 1961 10034 10110 -2965 2 2 0 6 7252 10446 10531 -2966 2 2 0 6 9072 9073 10956 -2967 2 2 0 6 8340 10881 10873 -2968 2 2 0 6 7232 8223 9259 -2969 2 2 0 6 1189 8856 8837 -2970 2 2 0 6 4750 11000 5265 -2971 2 2 0 6 6260 8358 10220 -2972 2 2 0 6 2627 11185 11043 -2973 2 2 0 6 1749 9259 8223 -2974 2 2 0 6 5352 7191 10601 -2975 2 2 0 6 59 500 9954 -2976 2 2 0 6 3126 8229 3129 -2977 2 2 0 6 3559 9260 7232 -2978 2 2 0 6 1537 7448 10425 -2979 2 2 0 6 9101 10682 10163 -2980 2 2 0 6 2927 7141 11053 -2981 2 2 0 6 3645 9578 8150 -2982 2 2 0 6 54 55 7441 -2983 2 2 0 6 8057 8783 10217 -2984 2 2 0 6 1917 9082 8054 -2985 2 2 0 6 6324 9839 10932 -2986 2 2 0 6 4392 8250 10880 -2987 2 2 0 6 3177 7245 7472 -2988 2 2 0 6 8771 8926 10345 -2989 2 2 0 6 15 7237 445 -2990 2 2 0 6 2916 2918 9434 -2991 2 2 0 6 8415 11155 10551 -2992 2 2 0 6 8271 11017 11003 -2993 2 2 0 6 5581 9294 5583 -2994 2 2 0 6 2735 9226 7644 -2995 2 2 0 6 8901 6583 9900 -2996 2 2 0 6 7204 10221 10348 -2997 2 2 0 6 7375 10475 7394 -2998 2 2 0 6 1673 10020 10922 -2999 2 2 0 6 7018 11086 7515 -3000 2 2 0 6 7329 7681 11107 -3001 2 2 0 6 6297 7527 7264 -3002 2 2 0 6 1135 7497 8526 -3003 2 2 0 6 7650 9088 10492 -3004 2 2 0 6 7317 7932 9733 -3005 2 2 0 6 4453 9838 7690 -3006 2 2 0 6 7468 7675 7469 -3007 2 2 0 6 4128 4676 7436 -3008 2 2 0 6 9136 11084 11244 -3009 2 2 0 6 1591 8453 1595 -3010 2 2 0 6 1589 3476 8453 -3011 2 2 0 6 7145 8285 9514 -3012 2 2 0 6 153 498 7335 -3013 2 2 0 6 157 499 7346 -3014 2 2 0 6 1025 7230 9012 -3015 2 2 0 6 348 7369 398 -3016 2 2 0 6 3538 7277 9716 -3017 2 2 0 6 7931 7932 9915 -3018 2 2 0 6 5600 10445 10479 -3019 2 2 0 6 3538 7977 7278 -3020 2 2 0 6 1537 10434 7448 -3021 2 2 0 6 4949 10667 7658 -3022 2 2 0 6 1716 10874 10569 -3023 2 2 0 6 5923 8391 10550 -3024 2 2 0 6 788 8358 794 -3025 2 2 0 6 5147 5431 7594 -3026 2 2 0 6 2494 7354 7356 -3027 2 2 0 6 1157 7694 4131 -3028 2 2 0 6 3295 9434 3907 -3029 2 2 0 6 3177 7701 7245 -3030 2 2 0 6 5006 7597 10010 -3031 2 2 0 6 5937 10856 10782 -3032 2 2 0 6 8470 10198 8471 -3033 2 2 0 6 1075 1077 8877 -3034 2 2 0 6 6217 7167 7151 -3035 2 2 0 6 2876 8957 8635 -3036 2 2 0 6 4837 10095 10209 -3037 2 2 0 6 7150 7151 7152 -3038 2 2 0 6 7418 7582 8102 -3039 2 2 0 6 5931 10536 10523 -3040 2 2 0 6 1443 7718 10077 -3041 2 2 0 6 3645 8150 8149 -3042 2 2 0 6 1424 3308 7806 -3043 2 2 0 6 8885 10956 10966 -3044 2 2 0 6 5431 7359 7594 -3045 2 2 0 6 7606 7607 10202 -3046 2 2 0 6 3630 8976 7337 -3047 2 2 0 6 5551 10920 9050 -3048 2 2 0 6 1170 10327 7443 -3049 2 2 0 6 6345 6346 10307 -3050 2 2 0 6 4843 7731 9680 -3051 2 2 0 6 5372 10077 10343 -3052 2 2 0 6 3514 4038 7511 -3053 2 2 0 6 1135 8526 8929 -3054 2 2 0 6 6285 9234 7273 -3055 2 2 0 6 7458 8789 10403 -3056 2 2 0 6 2725 2990 7852 -3057 2 2 0 6 5934 10555 8775 -3058 2 2 0 6 6297 7264 7366 -3059 2 2 0 6 713 1166 7445 -3060 2 2 0 6 4676 7432 7436 -3061 2 2 0 6 6298 7739 10392 -3062 2 2 0 6 54 7441 399 -3063 2 2 0 6 1942 8128 7677 -3064 2 2 0 6 5290 7349 7117 -3065 2 2 0 6 2874 8957 2876 -3066 2 2 0 6 1302 7635 1324 -3067 2 2 0 6 8473 8929 8526 -3068 2 2 0 6 5338 7341 5339 -3069 2 2 0 6 3002 7852 8373 -3070 2 2 0 6 3509 8929 8473 -3071 2 2 0 6 3509 8473 8474 -3072 2 2 0 6 7317 9733 9777 -3073 2 2 0 6 612 615 11100 -3074 2 2 0 6 5290 5292 7349 -3075 2 2 0 6 5462 9377 9955 -3076 2 2 0 6 3704 10715 3706 -3077 2 2 0 6 5516 9024 7831 -3078 2 2 0 6 6384 6385 10943 -3079 2 2 0 6 5339 7341 7209 -3080 2 2 0 6 4455 7419 7420 -3081 2 2 0 6 7445 7690 9838 -3082 2 2 0 6 7917 10442 7918 -3083 2 2 0 6 7358 10046 10223 -3084 2 2 0 6 6215 7503 7502 -3085 2 2 0 6 35 7008 11287 -3086 2 2 0 6 7493 7659 7580 -3087 2 2 0 6 4455 7420 9483 -3088 2 2 0 6 5713 7981 10358 -3089 2 2 0 6 5343 7675 7468 -3090 2 2 0 6 8512 10209 10095 -3091 2 2 0 6 3204 3697 7812 -3092 2 2 0 6 4906 7532 7937 -3093 2 2 0 6 8038 8226 10465 -3094 2 2 0 6 6466 10214 7610 -3095 2 2 0 6 5864 10390 8452 -3096 2 2 0 6 8001 8002 9455 -3097 2 2 0 6 2503 7946 7947 -3098 2 2 0 6 3125 8100 9690 -3099 2 2 0 6 794 8358 1921 -3100 2 2 0 6 4990 10485 7216 -3101 2 2 0 6 7363 10186 10143 -3102 2 2 0 6 6024 9073 10948 -3103 2 2 0 6 5337 10991 6576 -3104 2 2 0 6 3301 11060 7153 -3105 2 2 0 6 5133 5134 10333 -3106 2 2 0 6 3706 10275 3740 -3107 2 2 0 6 7931 9864 9902 -3108 2 2 0 6 6302 8373 7852 -3109 2 2 0 6 3975 7889 10689 -3110 2 2 0 6 7730 9680 7731 -3111 2 2 0 6 3207 7364 7847 -3112 2 2 0 6 112 446 7378 -3113 2 2 0 6 1219 10444 2389 -3114 2 2 0 6 1262 9003 7778 -3115 2 2 0 6 3352 9543 7353 -3116 2 2 0 6 1804 2180 9042 -3117 2 2 0 6 1370 10794 7874 -3118 2 2 0 6 6739 7826 7827 -3119 2 2 0 6 8215 8216 10930 -3120 2 2 0 6 3559 9224 9260 -3121 2 2 0 6 5835 7937 7532 -3122 2 2 0 6 3626 9502 8001 -3123 2 2 0 6 8542 9496 10134 -3124 2 2 0 6 5516 7831 7832 -3125 2 2 0 6 2224 2494 7357 -3126 2 2 0 6 5483 7439 5484 -3127 2 2 0 6 3615 9395 10135 -3128 2 2 0 6 812 8272 11014 -3129 2 2 0 6 4681 4865 7377 -3130 2 2 0 6 8002 9325 9455 -3131 2 2 0 6 8126 10089 8124 -3132 2 2 0 6 7225 10223 10046 -3133 2 2 0 6 5963 10875 7810 -3134 2 2 0 6 5494 7489 10993 -3135 2 2 0 6 8119 10886 2631 -3136 2 2 0 6 7830 9777 9733 -3137 2 2 0 6 2503 7945 7946 -3138 2 2 0 6 2015 7750 2017 -3139 2 2 0 6 3639 8249 4392 -3140 2 2 0 6 6201 9199 7021 -3141 2 2 0 6 5447 7751 7501 -3142 2 2 0 6 4250 10070 10031 -3143 2 2 0 6 2494 7494 7354 -3144 2 2 0 6 5133 7826 6739 -3145 2 2 0 6 1952 3177 7473 -3146 2 2 0 6 4469 5006 10010 -3147 2 2 0 6 446 7382 7378 -3148 2 2 0 6 7433 9032 9033 -3149 2 2 0 6 1935 10215 8185 -3150 2 2 0 6 1917 8686 9082 -3151 2 2 0 6 5478 7496 8579 -3152 2 2 0 6 5895 10411 10448 -3153 2 2 0 6 7155 10878 8977 -3154 2 2 0 6 7169 10855 9060 -3155 2 2 0 6 5484 7439 7505 -3156 2 2 0 6 6995 7385 7384 -3157 2 2 0 6 5435 7589 10866 -3158 2 2 0 6 3824 7485 8232 -3159 2 2 0 6 1202 7478 7694 -3160 2 2 0 6 7328 8436 10896 -3161 2 2 0 6 4116 7590 7671 -3162 2 2 0 6 5559 7215 10549 -3163 2 2 0 6 2603 7368 8692 -3164 2 2 0 6 253 444 7395 -3165 2 2 0 6 811 10818 3386 -3166 2 2 0 6 5147 7594 6790 -3167 2 2 0 6 352 7423 443 -3168 2 2 0 6 3615 8779 9939 -3169 2 2 0 6 4346 8724 10660 -3170 2 2 0 6 1136 8771 8769 -3171 2 2 0 6 4961 10341 5866 -3172 2 2 0 6 944 8221 943 -3173 2 2 0 6 1039 10439 10316 -3174 2 2 0 6 2968 10531 10446 -3175 2 2 0 6 2018 4346 7750 -3176 2 2 0 6 3645 8149 8950 -3177 2 2 0 6 1502 10322 3180 -3178 2 2 0 6 4837 10004 8509 -3179 2 2 0 6 5524 10610 11170 -3180 2 2 0 6 3266 4182 10602 -3181 2 2 0 6 5952 7734 10646 -3182 2 2 0 6 3440 10836 3441 -3183 2 2 0 6 5295 7077 9041 -3184 2 2 0 6 57 442 565 -3185 2 2 0 6 3253 10438 7344 -3186 2 2 0 6 3596 7214 10515 -3187 2 2 0 6 55 56 497 -3188 2 2 0 6 3244 9772 7263 -3189 2 2 0 6 155 441 7246 -3190 2 2 0 6 2851 11278 7065 -3191 2 2 0 6 1935 8185 10228 -3192 2 2 0 6 348 349 7369 -3193 2 2 0 6 153 154 498 -3194 2 2 0 6 4131 7474 7743 -3195 2 2 0 6 944 947 8221 -3196 2 2 0 6 1135 8579 7497 -3197 2 2 0 6 2561 7492 7704 -3198 2 2 0 6 6724 10638 10474 -3199 2 2 0 6 3189 10450 10473 -3200 2 2 0 6 6639 10586 10573 -3201 2 2 0 6 5518 5520 10796 -3202 2 2 0 6 1111 8329 1521 -3203 2 2 0 6 7590 7592 7671 -3204 2 2 0 6 7342 10222 10351 -3205 2 2 0 6 1913 10952 10921 -3206 2 2 0 6 3219 9639 7715 -3207 2 2 0 6 7215 10550 10549 -3208 2 2 0 6 1842 10871 9646 -3209 2 2 0 6 3189 7226 10450 -3210 2 2 0 6 3626 8001 9455 -3211 2 2 0 6 3626 9524 9502 -3212 2 2 0 6 6731 7505 7506 -3213 2 2 0 6 1262 7778 7776 -3214 2 2 0 6 6201 7022 9199 -3215 2 2 0 6 6213 10178 7268 -3216 2 2 0 6 6298 8373 6299 -3217 2 2 0 6 4361 4680 9060 -3218 2 2 0 6 4398 10572 10685 -3219 2 2 0 6 7362 7617 7684 -3220 2 2 0 6 7042 10839 7058 -3221 2 2 0 6 4849 7606 10202 -3222 2 2 0 6 8511 10216 8512 -3223 2 2 0 6 3122 8100 3125 -3224 2 2 0 6 8545 9502 9524 -3225 2 2 0 6 6795 10219 7485 -3226 2 2 0 6 2137 10696 7393 -3227 2 2 0 6 639 10792 3739 -3228 2 2 0 6 3121 7376 8100 -3229 2 2 0 6 3569 7616 10436 -3230 2 2 0 6 7234 7235 7437 -3231 2 2 0 6 5293 9041 7068 -3232 2 2 0 6 5190 6297 7367 -3233 2 2 0 6 8328 10283 8769 -3234 2 2 0 6 1121 3509 8475 -3235 2 2 0 6 9384 9636 9473 -3236 2 2 0 6 5121 6768 7487 -3237 2 2 0 6 6267 6269 7444 -3238 2 2 0 6 986 9385 989 -3239 2 2 0 6 4837 8509 10095 -3240 2 2 0 6 599 1920 10781 -3241 2 2 0 6 3720 10525 10659 -3242 2 2 0 6 1136 8926 8771 -3243 2 2 0 6 1010 10784 8970 -3244 2 2 0 6 8874 10370 10334 -3245 2 2 0 6 5478 8522 10323 -3246 2 2 0 6 2746 7602 7603 -3247 2 2 0 6 6049 7427 7921 -3248 2 2 0 6 7557 9276 7578 -3249 2 2 0 6 3180 10322 7428 -3250 2 2 0 6 6025 8844 10990 -3251 2 2 0 6 3493 9294 7265 -3252 2 2 0 6 7316 9902 9864 -3253 2 2 0 6 4469 10010 7656 -3254 2 2 0 6 7183 10872 9723 -3255 2 2 0 6 4131 7476 7474 -3256 2 2 0 6 7620 6189 8622 -3257 2 2 0 6 8804 10428 10669 -3258 2 2 0 6 8722 10598 8724 -3259 2 2 0 6 1815 1817 7426 -3260 2 2 0 6 444 7396 7395 -3261 2 2 0 6 3484 8942 11015 -3262 2 2 0 6 349 501 7369 -3263 2 2 0 6 4327 7375 7394 -3264 2 2 0 6 254 255 7415 -3265 2 2 0 6 6711 6714 10838 -3266 2 2 0 6 6293 8950 8149 -3267 2 2 0 6 1184 1202 7694 -3268 2 2 0 6 1212 9647 8545 -3269 2 2 0 6 1521 8329 8327 -3270 2 2 0 6 7970 7972 8831 -3271 2 2 0 6 8778 9939 8779 -3272 2 2 0 6 5494 11039 7649 -3273 2 2 0 6 4116 7350 7590 -3274 2 2 0 6 3352 7353 8128 -3275 2 2 0 6 5431 7726 7359 -3276 2 2 0 6 7756 7757 10288 -3277 2 2 0 6 1108 7336 3990 -3278 2 2 0 6 7581 7779 8324 -3279 2 2 0 6 1516 10906 10893 -3280 2 2 0 6 4589 7921 7427 -3281 2 2 0 6 5429 8938 7508 -3282 2 2 0 6 6292 7638 7588 -3283 2 2 0 6 1507 2603 8692 -3284 2 2 0 6 3453 7389 8644 -3285 2 2 0 6 1156 7437 10122 -3286 2 2 0 6 6267 7444 7242 -3287 2 2 0 6 6980 9295 8746 -3288 2 2 0 6 1760 10294 7549 -3289 2 2 0 6 7463 10884 10892 -3290 2 2 0 6 250 251 7480 -3291 2 2 0 6 4348 10210 9075 -3292 2 2 0 6 6294 7666 7813 -3293 2 2 0 6 3482 8552 7955 -3294 2 2 0 6 3301 11068 11060 -3295 2 2 0 6 4294 9718 7657 -3296 2 2 0 6 5343 7468 9311 -3297 2 2 0 6 694 10021 2313 -3298 2 2 0 6 5334 9012 7230 -3299 2 2 0 6 1583 1586 9128 -3300 2 2 0 6 7512 10279 9788 -3301 2 2 0 6 1867 8128 1942 -3302 2 2 0 6 113 7386 446 -3303 2 2 0 6 5927 8724 10598 -3304 2 2 0 6 7046 10823 7064 -3305 2 2 0 6 1597 1596 10654 -3306 2 2 0 6 812 11014 11013 -3307 2 2 0 6 109 7465 469 -3308 2 2 0 6 3485 7610 10214 -3309 2 2 0 6 5836 8471 10198 -3310 2 2 0 6 3615 10135 8779 -3311 2 2 0 6 5479 7647 7518 -3312 2 2 0 6 5428 7259 7614 -3313 2 2 0 6 5591 6260 9012 -3314 2 2 0 6 3531 7252 10531 -3315 2 2 0 6 3115 9499 7639 -3316 2 2 0 6 7493 7580 7599 -3317 2 2 0 6 4569 9062 11070 -3318 2 2 0 6 7685 9192 7687 -3319 2 2 0 6 5971 10760 7276 -3320 2 2 0 6 1319 8692 4443 -3321 2 2 0 6 2221 7357 8993 -3322 2 2 0 6 5484 7505 6731 -3323 2 2 0 6 7713 10380 8115 -3324 2 2 0 6 6193 7633 10695 -3325 2 2 0 6 5634 7376 7588 -3326 2 2 0 6 6377 7747 10256 -3327 2 2 0 6 1308 7342 10351 -3328 2 2 0 6 5921 10209 8512 -3329 2 2 0 6 2857 3514 10313 -3330 2 2 0 6 1337 1339 7680 -3331 2 2 0 6 7210 10447 10477 -3332 2 2 0 6 7420 9647 9591 -3333 2 2 0 6 8583 11021 8825 -3334 2 2 0 6 5631 10089 8126 -3335 2 2 0 6 2314 7970 8831 -3336 2 2 0 6 5869 8874 10334 -3337 2 2 0 6 7936 10246 10228 -3338 2 2 0 6 7639 9499 9421 -3339 2 2 0 6 7192 7715 9639 -3340 2 2 0 6 2398 9550 7545 -3341 2 2 0 6 3104 7417 8957 -3342 2 2 0 6 4915 7484 7538 -3343 2 2 0 6 8184 8185 10215 -3344 2 2 0 6 2390 7760 2455 -3345 2 2 0 6 1516 10895 7521 -3346 2 2 0 6 8901 10604 6583 -3347 2 2 0 6 3666 10098 5447 -3348 2 2 0 6 8682 10663 8683 -3349 2 2 0 6 10179 11176 11048 -3350 2 2 0 6 7317 9915 7932 -3351 2 2 0 6 8475 10345 8926 -3352 2 2 0 6 6316 10587 7392 -3353 2 2 0 6 4336 5343 9311 -3354 2 2 0 6 7279 9294 8953 -3355 2 2 0 6 5705 11069 7362 -3356 2 2 0 6 4568 8991 10864 -3357 2 2 0 6 4455 7426 7419 -3358 2 2 0 6 5815 7607 8016 -3359 2 2 0 6 6044 11058 11218 -3360 2 2 0 6 7108 7181 7180 -3361 2 2 0 6 6260 8357 8358 -3362 2 2 0 6 6294 7813 9188 -3363 2 2 0 6 2494 7356 7357 -3364 2 2 0 6 5497 9082 8523 -3365 2 2 0 6 7555 7580 9276 -3366 2 2 0 6 998 5499 9385 -3367 2 2 0 6 6551 9675 10338 -3368 2 2 0 6 7380 7466 7465 -3369 2 2 0 6 7963 7975 10934 -3370 2 2 0 6 5899 7627 10633 -3371 2 2 0 6 5914 10566 8015 -3372 2 2 0 6 8991 10887 10864 -3373 2 2 0 6 7171 7750 10660 -3374 2 2 0 6 4096 8320 7459 -3375 2 2 0 6 7172 7215 9370 -3376 2 2 0 6 7244 10420 7669 -3377 2 2 0 6 7657 8250 8249 -3378 2 2 0 6 1760 9030 10294 -3379 2 2 0 6 3067 7770 10262 -3380 2 2 0 6 1904 7500 7853 -3381 2 2 0 6 6542 9149 8051 -3382 2 2 0 6 6282 8100 7376 -3383 2 2 0 6 3990 7336 7334 -3384 2 2 0 6 6335 7459 8320 -3385 2 2 0 6 3760 7142 11110 -3386 2 2 0 6 442 7217 565 -3387 2 2 0 6 1420 1505 10332 -3388 2 2 0 6 6295 9046 8211 -3389 2 2 0 6 1595 7272 10618 -3390 2 2 0 6 7370 10907 8341 -3391 2 2 0 6 8498 10522 10789 -3392 2 2 0 6 1138 1223 7437 -3393 2 2 0 6 5561 5562 9606 -3394 2 2 0 6 3739 8341 10907 -3395 2 2 0 6 6289 7440 7976 -3396 2 2 0 6 5396 7582 7418 -3397 2 2 0 6 7206 10774 10508 -3398 2 2 0 6 2108 10281 10365 -3399 2 2 0 6 7545 9550 7546 -3400 2 2 0 6 736 3606 9322 -3401 2 2 0 6 1593 1595 10618 -3402 2 2 0 6 1600 10592 1601 -3403 2 2 0 6 4020 8425 9107 -3404 2 2 0 6 5483 7440 7439 -3405 2 2 0 6 3382 10386 7973 -3406 2 2 0 6 4128 7436 9649 -3407 2 2 0 6 1138 7437 1156 -3408 2 2 0 6 5499 8644 7389 -3409 2 2 0 6 2332 10743 7833 -3410 2 2 0 6 738 9322 1308 -3411 2 2 0 6 2371 2486 8700 -3412 2 2 0 6 7276 10760 9281 -3413 2 2 0 6 6783 10031 10070 -3414 2 2 0 6 5812 7992 10102 -3415 2 2 0 6 1212 8545 9524 -3416 2 2 0 6 5479 7518 8117 -3417 2 2 0 6 4294 7657 7655 -3418 2 2 0 6 3383 7352 10497 -3419 2 2 0 6 3253 7418 8102 -3420 2 2 0 6 4221 7482 5140 -3421 2 2 0 6 2503 8652 7945 -3422 2 2 0 6 1919 10894 7387 -3423 2 2 0 6 7118 8627 8808 -3424 2 2 0 6 6342 9299 7655 -3425 2 2 0 6 7813 7814 9188 -3426 2 2 0 6 7210 7340 10447 -3427 2 2 0 6 7356 10486 7357 -3428 2 2 0 6 1324 7635 1444 -3429 2 2 0 6 3389 7516 9029 -3430 2 2 0 6 7453 10317 6430 -3431 2 2 0 6 5121 7487 7449 -3432 2 2 0 6 5332 7746 6295 -3433 2 2 0 6 8826 10288 10557 -3434 2 2 0 6 199 561 7483 -3435 2 2 0 6 3783 9254 8422 -3436 2 2 0 6 7604 9097 8921 -3437 2 2 0 6 2464 7687 9192 -3438 2 2 0 6 7966 7965 10958 -3439 2 2 0 6 7425 7945 8652 -3440 2 2 0 6 7570 7806 7805 -3441 2 2 0 6 6349 7538 7484 -3442 2 2 0 6 156 7346 441 -3443 2 2 0 6 7233 10419 10464 -3444 2 2 0 6 6228 8627 7115 -3445 2 2 0 6 2313 8112 8657 -3446 2 2 0 6 4302 7363 10143 -3447 2 2 0 6 5956 10730 7371 -3448 2 2 0 6 1954 7473 10151 -3449 2 2 0 6 3456 10781 10779 -3450 2 2 0 6 7116 7345 11008 -3451 2 2 0 6 4393 7798 9811 -3452 2 2 0 6 5369 7551 7552 -3453 2 2 0 6 4256 7614 4300 -3454 2 2 0 6 1166 2941 7445 -3455 2 2 0 6 770 10699 8765 -3456 2 2 0 6 250 7480 400 -3457 2 2 0 6 7142 11123 11110 -3458 2 2 0 6 7730 8041 9680 -3459 2 2 0 6 1212 9591 9647 -3460 2 2 0 6 4942 9848 10280 -3461 2 2 0 6 1222 8778 9971 -3462 2 2 0 6 6296 7527 6297 -3463 2 2 0 6 350 7332 501 -3464 2 2 0 6 1049 2311 11007 -3465 2 2 0 6 3484 11015 11011 -3466 2 2 0 6 4116 7666 7350 -3467 2 2 0 6 7608 8356 9953 -3468 2 2 0 6 1729 1731 9312 -3469 2 2 0 6 1119 8475 8926 -3470 2 2 0 6 7116 11008 11011 -3471 2 2 0 6 1426 7806 9746 -3472 2 2 0 6 5520 7370 8341 -3473 2 2 0 6 6049 7921 7098 -3474 2 2 0 6 3115 7639 8910 -3475 2 2 0 6 7798 7795 9811 -3476 2 2 0 6 7453 4026 10317 -3477 2 2 0 6 1286 4430 8977 -3478 2 2 0 6 7496 7497 8579 -3479 2 2 0 6 6296 7825 7527 -3480 2 2 0 6 4182 7454 10602 -3481 2 2 0 6 3809 8749 9637 -3482 2 2 0 6 3523 7371 10730 -3483 2 2 0 6 4892 7358 10223 -3484 2 2 0 6 2389 10444 7504 -3485 2 2 0 6 3089 10424 10119 -3486 2 2 0 6 6483 8228 8229 -3487 2 2 0 6 8184 10215 10110 -3488 2 2 0 6 4020 7491 8425 -3489 2 2 0 6 349 350 501 -3490 2 2 0 6 1262 7776 8879 -3491 2 2 0 6 2313 10021 8112 -3492 2 2 0 6 2314 7968 7970 -3493 2 2 0 6 4003 9188 7814 -3494 2 2 0 6 6294 7350 7666 -3495 2 2 0 6 57 58 442 -3496 2 2 0 6 55 497 7441 -3497 2 2 0 6 7601 9657 9686 -3498 2 2 0 6 155 156 441 -3499 2 2 0 6 2371 8700 7494 -3500 2 2 0 6 6330 7583 6839 -3501 2 2 0 6 3239 7529 7660 -3502 2 2 0 6 4527 9764 7537 -3503 2 2 0 6 5869 10300 8874 -3504 2 2 0 6 4006 10334 10370 -3505 2 2 0 6 497 566 567 -3506 2 2 0 6 4589 7427 7922 -3507 2 2 0 6 2842 10438 3253 -3508 2 2 0 6 6214 7452 7451 -3509 2 2 0 6 1209 8073 9801 -3510 2 2 0 6 7718 10343 10077 -3511 2 2 0 6 1266 8977 1287 -3512 2 2 0 6 7874 10794 9970 -3513 2 2 0 6 4003 7814 7831 -3514 2 2 0 6 6292 7588 7376 -3515 2 2 0 6 4020 8903 7491 -3516 2 2 0 6 2386 10506 10216 -3517 2 2 0 6 4019 10121 10097 -3518 2 2 0 6 1576 1579 7868 -3519 2 2 0 6 7372 10761 10768 -3520 2 2 0 6 5983 9929 5985 -3521 2 2 0 6 1075 8877 1080 -3522 2 2 0 6 6295 7746 9046 -3523 2 2 0 6 6464 10161 7822 -3524 2 2 0 6 3199 10491 10308 -3525 2 2 0 6 2874 3104 8957 -3526 2 2 0 6 5478 10323 7496 -3527 2 2 0 6 1815 7426 4455 -3528 2 2 0 6 56 57 565 -3529 2 2 0 6 2226 2371 7494 -3530 2 2 0 6 3259 9542 7450 -3531 2 2 0 6 1516 7521 10906 -3532 2 2 0 6 2561 7705 7492 -3533 2 2 0 6 5515 8109 9486 -3534 2 2 0 6 1421 10884 7680 -3535 2 2 0 6 7173 7174 7175 -3536 2 2 0 6 1913 10941 7188 -3537 2 2 0 6 7757 10448 10411 -3538 2 2 0 6 1208 10516 10502 -3539 2 2 0 6 7473 10537 10151 -3540 2 2 0 6 6322 7700 8147 -3541 2 2 0 6 5409 5953 7593 -3542 2 2 0 6 5489 10461 7104 -3543 2 2 0 6 7730 7732 8041 -3544 2 2 0 6 7700 10023 8719 -3545 2 2 0 6 4863 7422 7541 -3546 2 2 0 6 3523 10730 10720 -3547 2 2 0 6 4899 8961 10071 -3548 2 2 0 6 3769 7508 8938 -3549 2 2 0 6 1865 3352 8128 -3550 2 2 0 6 1542 2586 10737 -3551 2 2 0 6 8418 10721 10799 -3552 2 2 0 6 7289 9777 7830 -3553 2 2 0 6 4061 9943 10412 -3554 2 2 0 6 1895 1897 7460 -3555 2 2 0 6 6321 7449 7487 -3556 2 2 0 6 1895 7460 1982 -3557 2 2 0 6 5264 11148 7078 -3558 2 2 0 6 112 113 446 -3559 2 2 0 6 469 7465 7466 -3560 2 2 0 6 7112 8459 10756 -3561 2 2 0 6 7128 7585 7584 -3562 2 2 0 6 1287 10878 8920 -3563 2 2 0 6 5606 7537 9764 -3564 2 2 0 6 5581 7265 9294 -3565 2 2 0 6 1106 9759 7336 -3566 2 2 0 6 6289 7439 7440 -3567 2 2 0 6 109 110 7465 -3568 2 2 0 6 3835 4246 7548 -3569 2 2 0 6 6795 8626 10219 -3570 2 2 0 6 7336 9759 10369 -3571 2 2 0 6 3383 10497 10477 -3572 2 2 0 6 6491 10232 6514 -3573 2 2 0 6 7371 10761 7372 -3574 2 2 0 6 5133 10333 7826 -3575 2 2 0 6 251 503 7480 -3576 2 2 0 6 4003 7831 9024 -3577 2 2 0 6 3514 7511 10313 -3578 2 2 0 6 7767 8582 8581 -3579 2 2 0 6 4302 7543 10212 -3580 2 2 0 6 4300 7614 5119 -3581 2 2 0 6 4658 7584 6754 -3582 2 2 0 6 2404 8007 8008 -3583 2 2 0 6 566 7217 9653 -3584 2 2 0 6 5953 7520 7593 -3585 2 2 0 6 1492 10539 1494 -3586 2 2 0 6 8179 9842 8809 -3587 2 2 0 6 6708 11292 11261 -3588 2 2 0 6 3476 8397 8453 -3589 2 2 0 6 5583 9294 7279 -3590 2 2 0 6 2873 8613 7797 -3591 2 2 0 6 7625 7912 7910 -3592 2 2 0 6 1302 3338 7635 -3593 2 2 0 6 4502 9951 8533 -3594 2 2 0 6 7624 7626 7634 -3595 2 2 0 6 3643 9421 9499 -3596 2 2 0 6 5815 10202 7607 -3597 2 2 0 6 3104 9207 7417 -3598 2 2 0 6 5312 10186 7260 -3599 2 2 0 6 5447 10098 7751 -3600 2 2 0 6 3824 9301 7485 -3601 2 2 0 6 5562 7917 9606 -3602 2 2 0 6 3675 8312 3993 -3603 2 2 0 6 6375 8137 8138 -3604 2 2 0 6 7546 9550 9612 -3605 2 2 0 6 7378 7382 7379 -3606 2 2 0 6 8380 8381 8379 -3607 2 2 0 6 5555 8455 10146 -3608 2 2 0 6 5744 6210 11238 -3609 2 2 0 6 1077 8831 8877 -3610 2 2 0 6 8010 8126 8124 -3611 2 2 0 6 7767 8581 8604 -3612 2 2 0 6 5889 8411 10603 -3613 2 2 0 6 4294 7655 9299 -3614 2 2 0 6 6401 11085 11082 -3615 2 2 0 6 5369 7581 8324 -3616 2 2 0 6 5312 10143 10186 -3617 2 2 0 6 7978 9828 8639 -3618 2 2 0 6 6538 6539 8050 -3619 2 2 0 6 5766 7608 9554 -3620 2 2 0 6 6338 10915 10563 -3621 2 2 0 6 1127 1129 8579 -3622 2 2 0 6 4536 7528 4572 -3623 2 2 0 6 813 10771 10768 -3624 2 2 0 6 1111 1113 8329 -3625 2 2 0 6 6657 7488 7816 -3626 2 2 0 6 7937 10231 7934 -3627 2 2 0 6 4581 7824 7822 -3628 2 2 0 6 154 155 7246 -3629 2 2 0 6 3110 7544 3957 -3630 2 2 0 6 4131 7694 7476 -3631 2 2 0 6 2011 2013 7977 -3632 2 2 0 6 1259 8009 8125 -3633 2 2 0 6 1935 10228 10246 -3634 2 2 0 6 5805 6524 10255 -3635 2 2 0 6 3937 8102 7582 -3636 2 2 0 6 1904 1938 7500 -3637 2 2 0 6 5338 7342 7341 -3638 2 2 0 6 6347 9668 7847 -3639 2 2 0 6 3364 7867 7865 -3640 2 2 0 6 7491 8903 7519 -3641 2 2 0 6 4221 4252 7482 -3642 2 2 0 6 6046 7641 7530 -3643 2 2 0 6 7953 7955 8552 -3644 2 2 0 6 7208 7635 10377 -3645 2 2 0 6 1535 7519 8903 -3646 2 2 0 6 2381 7659 7493 -3647 2 2 0 6 2465 7623 7911 -3648 2 2 0 6 2924 9620 7663 -3649 2 2 0 6 3968 10047 7527 -3650 2 2 0 6 4231 7584 4658 -3651 2 2 0 6 7516 8879 7776 -3652 2 2 0 6 5693 8533 9951 -3653 2 2 0 6 5550 8426 8997 -3654 2 2 0 6 4581 10056 7824 -3655 2 2 0 6 2314 7974 7968 -3656 2 2 0 6 2475 10473 3596 -3657 2 2 0 6 1975 7540 10873 -3658 2 2 0 6 4915 7539 7484 -3659 2 2 0 6 7639 7638 8910 -3660 2 2 0 6 8121 8123 9995 -3661 2 2 0 6 2703 7895 2705 -3662 2 2 0 6 7886 7929 9902 -3663 2 2 0 6 6317 7508 10024 -3664 2 2 0 6 14 15 445 -3665 2 2 0 6 4656 8393 6758 -3666 2 2 0 6 8010 8124 8125 -3667 2 2 0 6 2721 10492 9088 -3668 2 2 0 6 4869 10568 4868 -3669 2 2 0 6 8224 10465 8226 -3670 2 2 0 6 6539 6542 8050 -3671 2 2 0 6 2226 7494 2494 -3672 2 2 0 6 6210 11235 11238 -3673 2 2 0 6 6331 9543 9075 -3674 2 2 0 6 3231 4077 7517 -3675 2 2 0 6 5369 7552 7581 -3676 2 2 0 6 3957 10030 9207 -3677 2 2 0 6 5966 8086 8801 -3678 2 2 0 6 2796 7707 8755 -3679 2 2 0 6 1345 7551 5369 -3680 2 2 0 6 1136 8769 10283 -3681 2 2 0 6 2180 5516 9042 -3682 2 2 0 6 3239 9261 7529 -3683 2 2 0 6 1765 2381 7493 -3684 2 2 0 6 7992 7993 10102 -3685 2 2 0 6 4328 5481 9854 -3686 2 2 0 6 3809 5482 8749 -3687 2 2 0 6 3643 7490 9421 -3688 2 2 0 6 111 7378 520 -3689 2 2 0 6 7882 9790 7883 -3690 2 2 0 6 6401 11082 7157 -3691 2 2 0 6 3207 7847 9668 -3692 2 2 0 6 3364 7868 7867 -3693 2 2 0 6 6323 8147 8148 -3694 2 2 0 6 6334 9320 6336 -3695 2 2 0 6 4882 9396 10403 -3696 2 2 0 6 771 10815 10901 -3697 2 2 0 6 2249 10748 7343 -3698 2 2 0 6 3361 7513 7726 -3699 2 2 0 6 5428 6845 7259 -3700 2 2 0 6 5550 8425 8426 -3701 2 2 0 6 6331 9075 10210 -3702 2 2 0 6 3338 7992 10377 -3703 2 2 0 6 3563 10588 9089 -3704 2 2 0 6 1142 1160 9885 -3705 2 2 0 6 3844 10241 7509 -3706 2 2 0 6 5449 10605 6651 -3707 2 2 0 6 2866 3067 10547 -3708 2 2 0 6 2921 9276 7659 -3709 2 2 0 6 5402 8696 5403 -3710 2 2 0 6 7898 9803 7899 -3711 2 2 0 6 7071 10256 7747 -3712 2 2 0 6 4861 7588 7638 -3713 2 2 0 6 7691 8523 9082 -3714 2 2 0 6 6269 7690 7444 -3715 2 2 0 6 1918 9419 8898 -3716 2 2 0 6 6582 7757 10411 -3717 2 2 0 6 7607 9447 8016 -3718 2 2 0 6 3899 10005 7481 -3719 2 2 0 6 8195 11217 11211 -3720 2 2 0 6 4399 7425 8652 -3721 2 2 0 6 2773 7665 3033 -3722 2 2 0 6 8150 10097 10121 -3723 2 2 0 6 4342 8365 7673 -3724 2 2 0 6 7485 10219 8232 -3725 2 2 0 6 4405 9686 9657 -3726 2 2 0 6 5391 7649 5704 -3727 2 2 0 6 6345 10307 7995 -3728 2 2 0 6 5744 11239 9979 -3729 2 2 0 6 8744 8746 9295 -3730 2 2 0 6 8009 8010 8125 -3731 2 2 0 6 1505 1804 9042 -3732 2 2 0 6 4653 8393 4656 -3733 2 2 0 6 6331 7353 9543 -3734 2 2 0 6 8020 8021 10055 -3735 2 2 0 6 6489 9945 9770 -3736 2 2 0 6 6363 6364 9440 -3737 2 2 0 6 5841 9965 10027 -3738 2 2 0 6 3352 8163 9543 -3739 2 2 0 6 2746 7603 7604 -3740 2 2 0 6 1576 7868 3364 -3741 2 2 0 6 7420 9591 9483 -3742 2 2 0 6 7580 7659 9276 -3743 2 2 0 6 7981 10365 10281 -3744 2 2 0 6 1258 10122 1525 -3745 2 2 0 6 1339 1421 7680 -3746 2 2 0 6 351 352 443 -3747 2 2 0 6 4680 5188 9060 -3748 2 2 0 6 1337 7680 4389 -3749 2 2 0 6 5516 7832 9042 -3750 2 2 0 6 2746 7683 7602 -3751 2 2 0 6 947 8222 8221 -3752 2 2 0 6 6318 7263 10457 -3753 2 2 0 6 5034 9697 10561 -3754 2 2 0 6 6349 9410 7538 -3755 2 2 0 6 5331 7524 7257 -3756 2 2 0 6 1014 9432 8971 -3757 2 2 0 6 252 7395 503 -3758 2 2 0 6 2044 8677 7486 -3759 2 2 0 6 5462 9955 8639 -3760 2 2 0 6 6527 7509 10241 -3761 2 2 0 6 1680 8514 1682 -3762 2 2 0 6 6210 8253 11235 -3763 2 2 0 6 2334 2562 7732 -3764 2 2 0 6 3219 8590 9639 -3765 2 2 0 6 6524 8422 9254 -3766 2 2 0 6 1894 8917 2347 -3767 2 2 0 6 251 252 503 -3768 2 2 0 6 4399 9097 7425 -3769 2 2 0 6 8098 10106 9011 -3770 2 2 0 6 5193 10749 7499 -3771 2 2 0 6 2929 2455 7760 -3772 2 2 0 6 1918 8898 9643 -3773 2 2 0 6 4172 9771 10225 -3774 2 2 0 6 7089 8057 8056 -3775 2 2 0 6 6322 8147 6323 -3776 2 2 0 6 6382 10372 10371 -3777 2 2 0 6 5431 9782 7726 -3778 2 2 0 6 8847 8971 9432 -3779 2 2 0 6 3993 8312 8309 -3780 2 2 0 6 1437 7493 7599 -3781 2 2 0 6 3165 8956 3168 -3782 2 2 0 6 1898 11189 11198 -3783 2 2 0 6 1600 7331 10592 -3784 2 2 0 6 6385 7673 8365 -3785 2 2 0 6 3331 5193 7499 -3786 2 2 0 6 8387 9491 9922 -3787 2 2 0 6 8070 9815 8074 -3788 2 2 0 6 6298 10392 8373 -3789 2 2 0 6 5363 7054 7745 -3790 2 2 0 6 2044 7486 8676 -3791 2 2 0 6 1524 10417 10451 -3792 2 2 0 6 5462 8639 9828 -3793 2 2 0 6 4410 7685 7526 -3794 2 2 0 6 2300 7629 2302 -3795 2 2 0 6 6046 6693 7641 -3796 2 2 0 6 3536 10246 7936 -3797 2 2 0 6 1801 10425 1897 -3798 2 2 0 6 5902 10497 7352 -3799 2 2 0 6 1808 1910 7899 -3800 2 2 0 6 2763 7783 9793 -3801 2 2 0 6 8378 8380 8379 -3802 2 2 0 6 2108 7894 10281 -3803 2 2 0 6 713 7445 9838 -3804 2 2 0 6 353 502 7423 -3805 2 2 0 6 5550 9107 8425 -3806 2 2 0 6 6334 6335 8320 -3807 2 2 0 6 7144 10196 5910 -3808 2 2 0 6 6321 7529 7449 -3809 2 2 0 6 2334 7732 2336 -3810 2 2 0 6 6293 7760 8950 -3811 2 2 0 6 2636 7622 9738 -3812 2 2 0 6 3093 10001 9678 -3813 2 2 0 6 6597 10483 7442 -3814 2 2 0 6 6569 10267 10162 -3815 2 2 0 6 2381 2410 7659 -3816 2 2 0 6 8846 8847 10173 -3817 2 2 0 6 7217 7219 9653 -3818 2 2 0 6 5994 8988 10825 -3819 2 2 0 6 1913 7188 10952 -3820 2 2 0 6 2390 8950 7760 -3821 2 2 0 6 1222 9939 8778 -3822 2 2 0 6 8194 11217 8195 -3823 2 2 0 6 2776 2992 7908 -3824 2 2 0 6 5552 7858 8900 -3825 2 2 0 6 4681 7377 5186 -3826 2 2 0 6 7868 9113 7869 -3827 2 2 0 6 4687 7727 4689 -3828 2 2 0 6 1760 7549 10011 -3829 2 2 0 6 7906 7979 7907 -3830 2 2 0 6 7531 8973 10771 -3831 2 2 0 6 1817 9966 7426 -3832 2 2 0 6 1443 10077 1442 -3833 2 2 0 6 5870 10586 6639 -3834 2 2 0 6 2445 10400 3189 -3835 2 2 0 6 1808 7899 2603 -3836 2 2 0 6 4096 7459 8455 -3837 2 2 0 6 4029 7979 7906 -3838 2 2 0 6 3573 8194 11216 -3839 2 2 0 6 2929 7760 7759 -3840 2 2 0 6 4626 10093 9934 -3841 2 2 0 6 3257 9542 3259 -3842 2 2 0 6 6529 10503 10436 -3843 2 2 0 6 5289 7173 10445 -3844 2 2 0 6 4906 10185 7532 -3845 2 2 0 6 8071 9801 8073 -3846 2 2 0 6 8174 8277 8175 -3847 2 2 0 6 4841 5923 10550 -3848 2 2 0 6 3957 7544 9721 -3849 2 2 0 6 6272 10434 7457 -3850 2 2 0 6 2316 10646 7734 -3851 2 2 0 6 3239 7660 7702 -3852 2 2 0 6 3361 8840 7513 -3853 2 2 0 6 1731 8107 9312 -3854 2 2 0 6 3110 8058 7544 -3855 2 2 0 6 4155 4570 10565 -3856 2 2 0 6 3180 10371 10372 -3857 2 2 0 6 7365 7812 10510 -3858 2 2 0 6 2265 10032 3151 -3859 2 2 0 6 2652 2863 9762 -3860 2 2 0 6 7055 7727 7728 -3861 2 2 0 6 189 7878 512 -3862 2 2 0 6 6270 6271 10010 -3863 2 2 0 6 3565 10344 10360 -3864 2 2 0 6 4574 7646 4575 -3865 2 2 0 6 5378 7743 7474 -3866 2 2 0 6 4668 9019 9020 -3867 2 2 0 6 3355 7608 9953 -3868 2 2 0 6 7327 10999 7542 -3869 2 2 0 6 4147 7502 4659 -3870 2 2 0 6 3664 8266 8264 -3871 2 2 0 6 4285 4283 7774 -3872 2 2 0 6 8642 10007 10237 -3873 2 2 0 6 2745 10508 10774 -3874 2 2 0 6 3718 7523 8283 -3875 2 2 0 6 3470 8911 7498 -3876 2 2 0 6 7752 8542 10090 -3877 2 2 0 6 5780 10419 7233 -3878 2 2 0 6 59 60 500 -3879 2 2 0 6 4079 7736 5053 -3880 2 2 0 6 6334 8320 9320 -3881 2 2 0 6 8226 10316 10439 -3882 2 2 0 6 4147 6215 7502 -3883 2 2 0 6 3263 3264 7880 -3884 2 2 0 6 2628 7919 2932 -3885 2 2 0 6 6515 10242 6536 -3886 2 2 0 6 4256 4300 4299 -3887 2 2 0 6 157 158 499 -3888 2 2 0 6 3829 7708 4250 -3889 2 2 0 6 3355 9554 7608 -3890 2 2 0 6 3364 7865 8129 -3891 2 2 0 6 7922 8817 7959 -3892 2 2 0 6 520 7378 7379 -3893 2 2 0 6 2160 8432 2372 -3894 2 2 0 6 6330 8749 7583 -3895 2 2 0 6 4399 8921 9097 -3896 2 2 0 6 2705 7895 2982 -3897 2 2 0 6 7235 10122 7437 -3898 2 2 0 6 3443 7586 8421 -3899 2 2 0 6 2108 10264 7894 -3900 2 2 0 6 5800 10338 9675 -3901 2 2 0 6 3496 9649 10074 -3902 2 2 0 6 3675 4034 8312 -3903 2 2 0 6 1995 7684 7617 -3904 2 2 0 6 2410 2921 7659 -3905 2 2 0 6 6322 10023 7700 -3906 2 2 0 6 6351 7612 7905 -3907 2 2 0 6 4272 9584 5465 -3908 2 2 0 6 1352 1437 7599 -3909 2 2 0 6 1227 1271 9544 -3910 2 2 0 6 2644 3011 7772 -3911 2 2 0 6 2305 7535 7628 -3912 2 2 0 6 825 1749 8225 -3913 2 2 0 6 4636 7525 7630 -3914 2 2 0 6 5817 7681 7329 -3915 2 2 0 6 4172 10225 10169 -3916 2 2 0 6 2941 7444 7445 -3917 2 2 0 6 2775 7665 2773 -3918 2 2 0 6 7603 9097 7604 -3919 2 2 0 6 4300 4653 4301 -3920 2 2 0 6 6297 7366 7367 -3921 2 2 0 6 7774 9949 7775 -3922 2 2 0 6 5561 9606 10126 -3923 2 2 0 6 7341 7342 9322 -3924 2 2 0 6 4117 9977 9744 -3925 2 2 0 6 7535 9250 9142 -3926 2 2 0 6 7258 9473 9636 -3927 2 2 0 6 5866 10341 8196 -3928 2 2 0 6 5319 7898 8871 -3929 2 2 0 6 3718 9587 7523 -3930 2 2 0 6 4940 9501 5371 -3931 2 2 0 6 6332 10134 9496 -3932 2 2 0 6 254 7415 444 -3933 2 2 0 6 1583 9128 1606 -3934 2 2 0 6 9535 8263 10552 -3935 2 2 0 6 6602 8970 10784 -3936 2 2 0 6 4893 8209 8211 -3937 2 2 0 6 6754 7584 7585 -3938 2 2 0 6 6376 7481 10005 -3939 2 2 0 6 4354 7928 7637 -3940 2 2 0 6 7877 7879 7878 -3941 2 2 0 6 3509 8474 8475 -3942 2 2 0 6 6645 8632 9741 -3943 2 2 0 6 3664 8267 8266 -3944 2 2 0 6 1733 1736 8107 -3945 2 2 0 6 5361 5363 7745 -3946 2 2 0 6 3825 7720 7724 -3947 2 2 0 6 6687 10609 11122 -3948 2 2 0 6 2873 7797 9258 -3949 2 2 0 6 3852 10185 4906 -3950 2 2 0 6 4999 8632 6645 -3951 2 2 0 6 1586 3482 9128 -3952 2 2 0 6 7546 9612 7905 -3953 2 2 0 6 4880 8502 8760 -3954 2 2 0 6 6350 8117 7518 -3955 2 2 0 6 3219 3220 8590 -3956 2 2 0 6 6167 7704 7492 -3957 2 2 0 6 6181 10061 8660 -3958 2 2 0 6 5013 7835 5873 -3959 2 2 0 6 4687 5249 7727 -3960 2 2 0 6 9165 10291 9168 -3961 2 2 0 6 4442 8280 8281 -3962 2 2 0 6 2167 7604 2169 -3963 2 2 0 6 5401 7847 7364 -3964 2 2 0 6 6664 7245 10627 -3965 2 2 0 6 4893 8211 9046 -3966 2 2 0 6 1577 1727 10774 -3967 2 2 0 6 1412 1760 10011 -3968 2 2 0 6 1029 1280 9884 -3969 2 2 0 6 7653 7737 7736 -3970 2 2 0 6 5667 7596 10277 -3971 2 2 0 6 6763 10053 10193 -3972 2 2 0 6 4572 7528 8212 -3973 2 2 0 6 2347 8917 8916 -3974 2 2 0 6 2324 2404 8008 -3975 2 2 0 6 1612 9658 1614 -3976 2 2 0 6 3316 3968 7825 -3977 2 2 0 6 3972 9256 8040 -3978 2 2 0 6 4981 5934 10536 -3979 2 2 0 6 347 348 398 -3980 2 2 0 6 3372 10062 7534 -3981 2 2 0 6 4302 10212 7363 -3982 2 2 0 6 1172 1193 10327 -3983 2 2 0 6 7422 9890 7541 -3984 2 2 0 6 7858 9852 8900 -3985 2 2 0 6 6240 9544 9545 -3986 2 2 0 6 2305 9250 7535 -3987 2 2 0 6 1335 4389 7609 -3988 2 2 0 6 8174 9459 9615 -3989 2 2 0 6 7231 7677 9925 -3990 2 2 0 6 6457 9930 10054 -3991 2 2 0 6 502 7424 7423 -3992 2 2 0 6 1345 1347 7551 -3993 2 2 0 6 8037 8040 9256 -3994 2 2 0 6 5999 9670 9376 -3995 2 2 0 6 3835 7548 4245 -3996 2 2 0 6 6549 7438 10554 -3997 2 2 0 6 199 200 561 -3998 2 2 0 6 3781 9025 8027 -3999 2 2 0 6 2395 2561 7704 -4000 2 2 0 6 7308 8824 7314 -4001 2 2 0 6 5500 8540 9248 -4002 2 2 0 6 4285 7774 5422 -4003 2 2 0 6 8264 8265 9015 -4004 2 2 0 6 4670 8164 4712 -4005 2 2 0 6 1696 1699 7888 -4006 2 2 0 6 8295 10829 10950 -4007 2 2 0 6 3539 7958 7956 -4008 2 2 0 6 8520 9636 9384 -4009 2 2 0 6 569 7696 7140 -4010 2 2 0 6 7394 10463 10504 -4011 2 2 0 6 87 7733 505 -4012 2 2 0 6 6549 10554 10574 -4013 2 2 0 6 3485 10204 7610 -4014 2 2 0 6 1273 8572 1759 -4015 2 2 0 6 4321 8077 4621 -4016 2 2 0 6 7952 7953 9055 -4017 2 2 0 6 6125 6800 6801 -4018 2 2 0 6 5187 6986 8200 -4019 2 2 0 6 5493 7489 5494 -4020 2 2 0 6 3151 10032 7618 -4021 2 2 0 6 7563 7577 7693 -4022 2 2 0 6 1209 9912 8073 -4023 2 2 0 6 7625 7910 7911 -4024 2 2 0 6 3636 10633 7627 -4025 2 2 0 6 5628 9925 7677 -4026 2 2 0 6 3664 8264 9015 -4027 2 2 0 6 7417 9207 10030 -4028 2 2 0 6 1948 7701 1950 -4029 2 2 0 6 2841 3061 8020 -4030 2 2 0 6 5479 8117 9126 -4031 2 2 0 6 3937 7582 8395 -4032 2 2 0 6 3989 9995 8123 -4033 2 2 0 6 3925 9287 11031 -4034 2 2 0 6 5402 8353 8696 -4035 2 2 0 6 6362 9842 8179 -4036 2 2 0 6 1360 1361 8574 -4037 2 2 0 6 4671 7636 6138 -4038 2 2 0 6 1521 8327 9615 -4039 2 2 0 6 7726 9782 7895 -4040 2 2 0 6 3968 7527 7825 -4041 2 2 0 6 2013 2017 7977 -4042 2 2 0 6 7554 7579 7581 -4043 2 2 0 6 5356 10257 8487 -4044 2 2 0 6 8744 8745 8746 -4045 2 2 0 6 2324 8008 2405 -4046 2 2 0 6 6337 7543 8300 -4047 2 2 0 6 7788 9258 7790 -4048 2 2 0 6 6473 8989 8990 -4049 2 2 0 6 4361 9060 4363 -4050 2 2 0 6 6269 7691 7690 -4051 2 2 0 6 512 7878 7879 -4052 2 2 0 6 90 511 7741 -4053 2 2 0 6 1275 1279 9607 -4054 2 2 0 6 7958 9508 8132 -4055 2 2 0 6 5409 7593 9160 -4056 2 2 0 6 7440 9898 7976 -4057 2 2 0 6 7972 8877 8831 -4058 2 2 0 6 5840 7534 10062 -4059 2 2 0 6 4279 5239 8056 -4060 2 2 0 6 825 8225 831 -4061 2 2 0 6 2486 2652 8700 -4062 2 2 0 6 8150 9578 10097 -4063 2 2 0 6 253 254 444 -4064 2 2 0 6 111 112 7378 -4065 2 2 0 6 3383 10502 7352 -4066 2 2 0 6 4997 7647 5479 -4067 2 2 0 6 8500 8760 8502 -4068 2 2 0 6 4255 7614 4256 -4069 2 2 0 6 4442 8281 9017 -4070 2 2 0 6 4363 10855 7421 -4071 2 2 0 6 3606 7341 9322 -4072 2 2 0 6 3637 9685 7648 -4073 2 2 0 6 3235 4128 9649 -4074 2 2 0 6 4581 7822 10161 -4075 2 2 0 6 7623 7625 7911 -4076 2 2 0 6 2337 2483 8014 -4077 2 2 0 6 3533 8074 9815 -4078 2 2 0 6 5660 7650 7595 -4079 2 2 0 6 7628 10146 10201 -4080 2 2 0 6 3250 9953 8356 -4081 2 2 0 6 2839 7729 5387 -4082 2 2 0 6 2903 9243 4136 -4083 2 2 0 6 6292 8910 7638 -4084 2 2 0 6 5129 6767 7709 -4085 2 2 0 6 6274 10521 8055 -4086 2 2 0 6 2992 7909 7908 -4087 2 2 0 6 8112 9501 8657 -4088 2 2 0 6 5543 7603 7600 -4089 2 2 0 6 3328 3595 8656 -4090 2 2 0 6 3022 8506 9910 -4091 2 2 0 6 4051 4504 7630 -4092 2 2 0 6 1208 7438 10516 -4093 2 2 0 6 5213 6378 8279 -4094 2 2 0 6 3470 9558 9966 -4095 2 2 0 6 7685 7686 9192 -4096 2 2 0 6 5429 7508 6159 -4097 2 2 0 6 5403 8696 6059 -4098 2 2 0 6 5337 10500 10991 -4099 2 2 0 6 1085 1089 7974 -4100 2 2 0 6 350 351 7332 -4101 2 2 0 6 6348 7702 7660 -4102 2 2 0 6 4366 8857 5126 -4103 2 2 0 6 4055 5552 9832 -4104 2 2 0 6 6046 7530 8027 -4105 2 2 0 6 511 7742 7741 -4106 2 2 0 6 2168 10204 3485 -4107 2 2 0 6 5783 10129 7667 -4108 2 2 0 6 732 10447 7340 -4109 2 2 0 6 2011 7977 3538 -4110 2 2 0 6 2800 8759 7927 -4111 2 2 0 6 2045 8676 2048 -4112 2 2 0 6 3111 3671 8058 -4113 2 2 0 6 2465 7911 2641 -4114 2 2 0 6 4442 8812 8280 -4115 2 2 0 6 4254 7916 4305 -4116 2 2 0 6 1759 8572 7719 -4117 2 2 0 6 1938 2327 7500 -4118 2 2 0 6 4805 10390 6285 -4119 2 2 0 6 2112 7393 4327 -4120 2 2 0 6 7862 8129 7865 -4121 2 2 0 6 1950 7701 3177 -4122 2 2 0 6 6362 8179 8180 -4123 2 2 0 6 4299 4300 4301 -4124 2 2 0 6 5390 8027 9025 -4125 2 2 0 6 3828 4255 4256 -4126 2 2 0 6 4621 8633 6058 -4127 2 2 0 6 6633 9005 8498 -4128 2 2 0 6 5372 9715 8030 -4129 2 2 0 6 2775 10279 7665 -4130 2 2 0 6 8173 8277 8174 -4131 2 2 0 6 2759 2865 10498 -4132 2 2 0 6 6373 8137 6375 -4133 2 2 0 6 6001 10918 10579 -4134 2 2 0 6 3008 7752 10090 -4135 2 2 0 6 1616 8081 1619 -4136 2 2 0 6 7752 9496 8542 -4137 2 2 0 6 1910 7897 7899 -4138 2 2 0 6 3781 3782 9025 -4139 2 2 0 6 4136 9243 7515 -4140 2 2 0 6 2794 7976 9898 -4141 2 2 0 6 5343 7674 7675 -4142 2 2 0 6 1973 4341 7716 -4143 2 2 0 6 1139 4131 7743 -4144 2 2 0 6 1365 1368 8742 -4145 2 2 0 6 1977 9837 9722 -4146 2 2 0 6 2726 7744 3071 -4147 2 2 0 6 3668 3827 3828 -4148 2 2 0 6 6241 8076 10079 -4149 2 2 0 6 5969 10427 10668 -4150 2 2 0 6 2756 8485 10180 -4151 2 2 0 6 2518 8336 2685 -4152 2 2 0 6 4893 8983 8209 -4153 2 2 0 6 1334 2968 10348 -4154 2 2 0 6 198 7483 489 -4155 2 2 0 6 5185 9295 6980 -4156 2 2 0 6 3061 4163 8020 -4157 2 2 0 6 1890 10118 1892 -4158 2 2 0 6 5460 9410 6349 -4159 2 2 0 6 3627 9142 9250 -4160 2 2 0 6 1480 9248 8540 -4161 2 2 0 6 1295 8528 1297 -4162 2 2 0 6 7706 8755 7707 -4163 2 2 0 6 4077 10795 7517 -4164 2 2 0 6 8209 8983 8210 -4165 2 2 0 6 577 8016 9447 -4166 2 2 0 6 4600 8096 6034 -4167 2 2 0 6 4301 4653 4654 -4168 2 2 0 6 5364 7512 5367 -4169 2 2 0 6 7499 10749 10732 -4170 2 2 0 6 7449 7529 9261 -4171 2 2 0 6 3654 9955 9377 -4172 2 2 0 6 1563 1565 8160 -4173 2 2 0 6 7344 10438 10353 -4174 2 2 0 6 7679 10401 10455 -4175 2 2 0 6 4684 5187 8200 -4176 2 2 0 6 4402 8772 8239 -4177 2 2 0 6 5486 6138 7692 -4178 2 2 0 6 6361 10258 10052 -4179 2 2 0 6 4861 7638 5419 -4180 2 2 0 6 4224 10198 8470 -4181 2 2 0 6 995 1006 7960 -4182 2 2 0 6 1129 5478 8579 -4183 2 2 0 6 4601 11242 8785 -4184 2 2 0 6 6720 11330 11272 -4185 2 2 0 6 6363 8013 9048 -4186 2 2 0 6 4536 5010 7528 -4187 2 2 0 6 6351 7905 8654 -4188 2 2 0 6 2779 7749 3337 -4189 2 2 0 6 5391 8131 7649 -4190 2 2 0 6 7569 9183 7902 -4191 2 2 0 6 6347 8939 9668 -4192 2 2 0 6 7597 10559 7637 -4193 2 2 0 6 1089 9387 7974 -4194 2 2 0 6 7327 8824 8825 -4195 2 2 0 6 1680 2386 8514 -4196 2 2 0 6 2745 10931 10508 -4197 2 2 0 6 2729 8457 9592 -4198 2 2 0 6 4615 5126 7984 -4199 2 2 0 6 7354 7494 7355 -4200 2 2 0 6 156 157 7346 -4201 2 2 0 6 3913 4748 8820 -4202 2 2 0 6 1752 4398 9304 -4203 2 2 0 6 353 354 502 -4204 2 2 0 6 114 115 510 -4205 2 2 0 6 4653 4656 4654 -4206 2 2 0 6 110 111 520 -4207 2 2 0 6 5965 10701 10117 -4208 2 2 0 6 5658 5660 7595 -4209 2 2 0 6 7907 7979 7980 -4210 2 2 0 6 6193 10695 9193 -4211 2 2 0 6 4289 8076 4778 -4212 2 2 0 6 6352 7637 7928 -4213 2 2 0 6 3647 8498 9005 -4214 2 2 0 6 3980 9715 10285 -4215 2 2 0 6 5869 10691 10300 -4216 2 2 0 6 2881 3174 8413 -4217 2 2 0 6 3033 7665 3917 -4218 2 2 0 6 5562 10442 7917 -4219 2 2 0 6 4697 7515 5195 -4220 2 2 0 6 2573 3998 7993 -4221 2 2 0 6 4598 8096 4600 -4222 2 2 0 6 1250 9358 1259 -4223 2 2 0 6 4410 7526 7622 -4224 2 2 0 6 3164 8956 3165 -4225 2 2 0 6 3751 11036 11046 -4226 2 2 0 6 8898 8899 9643 -4227 2 2 0 6 5764 5766 9554 -4228 2 2 0 6 1765 1875 2381 -4229 2 2 0 6 3616 9522 9410 -4230 2 2 0 6 7266 7664 8065 -4231 2 2 0 6 4889 5543 7600 -4232 2 2 0 6 2160 2162 8432 -4233 2 2 0 6 5952 8000 7999 -4234 2 2 0 6 2478 7919 2628 -4235 2 2 0 6 5119 7615 8393 -4236 2 2 0 6 7426 9966 9558 -4237 2 2 0 6 4334 4336 9311 -4238 2 2 0 6 1333 1335 7609 -4239 2 2 0 6 8021 10045 10055 -4240 2 2 0 6 3389 8879 7516 -4241 2 2 0 6 4078 7736 4079 -4242 2 2 0 6 8486 8487 10257 -4243 2 2 0 6 8658 9289 9753 -4244 2 2 0 6 4433 7706 4435 -4245 2 2 0 6 8383 8384 10806 -4246 2 2 0 6 5023 7674 5343 -4247 2 2 0 6 5387 7729 7730 -4248 2 2 0 6 2138 2332 7833 -4249 2 2 0 6 1975 10873 10881 -4250 2 2 0 6 7292 8155 7294 -4251 2 2 0 6 6367 9599 9440 -4252 2 2 0 6 2114 7808 4493 -4253 2 2 0 6 91 7939 511 -4254 2 2 0 6 2418 9897 8911 -4255 2 2 0 6 3827 4255 3828 -4256 2 2 0 6 3181 9663 9720 -4257 2 2 0 6 5777 9922 9491 -4258 2 2 0 6 2430 2924 7663 -4259 2 2 0 6 2998 3337 7672 -4260 2 2 0 6 9529 10635 10600 -4261 2 2 0 6 7586 7587 8421 -4262 2 2 0 6 972 7768 3925 -4263 2 2 0 6 5374 8075 7547 -4264 2 2 0 6 1127 8579 1135 -4265 2 2 0 6 1085 7974 2314 -4266 2 2 0 6 6363 9440 8013 -4267 2 2 0 6 7932 8565 9733 -4268 2 2 0 6 2328 4356 8984 -4269 2 2 0 6 4970 7740 7739 -4270 2 2 0 6 8899 9030 9643 -4271 2 2 0 6 6449 8751 9984 -4272 2 2 0 6 3766 4334 10003 -4273 2 2 0 6 4349 8511 8510 -4274 2 2 0 6 8516 8521 8518 -4275 2 2 0 6 4342 7673 9335 -4276 2 2 0 6 2929 7759 9929 -4277 2 2 0 6 2204 8075 2323 -4278 2 2 0 6 3470 7498 9558 -4279 2 2 0 6 6140 6758 6836 -4280 2 2 0 6 2284 8739 9448 -4281 2 2 0 6 4778 8076 6241 -4282 2 2 0 6 7610 10204 7611 -4283 2 2 0 6 6196 9029 7516 -4284 2 2 0 6 3066 7644 7643 -4285 2 2 0 6 2257 7947 2473 -4286 2 2 0 6 1843 10215 1935 -4287 2 2 0 6 7537 9934 10093 -4288 2 2 0 6 7456 7461 7460 -4289 2 2 0 6 6716 11314 11283 -4290 2 2 0 6 3625 4701 8437 -4291 2 2 0 6 4403 9973 9689 -4292 2 2 0 6 2365 7622 2636 -4293 2 2 0 6 6385 8365 11037 -4294 2 2 0 6 1780 1827 7669 -4295 2 2 0 6 6347 8336 8939 -4296 2 2 0 6 1430 7900 1432 -4297 2 2 0 6 6479 9703 9590 -4298 2 2 0 6 3508 8115 10380 -4299 2 2 0 6 4071 4325 8535 -4300 2 2 0 6 6436 9310 9363 -4301 2 2 0 6 1330 3531 10531 -4302 2 2 0 6 7264 7527 10047 -4303 2 2 0 6 4901 10369 8017 -4304 2 2 0 6 3624 4302 10143 -4305 2 2 0 6 5405 7681 5817 -4306 2 2 0 6 7236 6280 9260 -4307 2 2 0 6 698 702 10335 -4308 2 2 0 6 5605 8252 8251 -4309 2 2 0 6 1478 8931 10069 -4310 2 2 0 6 7352 10502 10516 -4311 2 2 0 6 2068 2083 8854 -4312 2 2 0 6 6758 6881 6836 -4313 2 2 0 6 7311 7761 7762 -4314 2 2 0 6 110 520 7465 -4315 2 2 0 6 3539 7956 8428 -4316 2 2 0 6 7600 7603 7602 -4317 2 2 0 6 7935 8653 8186 -4318 2 2 0 6 3110 3111 8058 -4319 2 2 0 6 2327 3666 5447 -4320 2 2 0 6 5497 8054 9082 -4321 2 2 0 6 6540 9679 9849 -4322 2 2 0 6 5402 8352 8353 -4323 2 2 0 6 3829 4251 7708 -4324 2 2 0 6 1877 1986 1987 -4325 2 2 0 6 8206 5414 8207 -4326 2 2 0 6 1089 1093 9387 -4327 2 2 0 6 6433 9826 9309 -4328 2 2 0 6 2484 7533 9770 -4329 2 2 0 6 1740 8628 8103 -4330 2 2 0 6 3946 3947 8352 -4331 2 2 0 6 3389 9029 9492 -4332 2 2 0 6 566 568 567 -4333 2 2 0 6 6834 10057 8429 -4334 2 2 0 6 6341 8146 8145 -4335 2 2 0 6 297 298 562 -4336 2 2 0 6 77 417 8849 -4337 2 2 0 6 8180 10069 8931 -4338 2 2 0 6 1555 1869 9723 -4339 2 2 0 6 8187 8183 8188 -4340 2 2 0 6 1193 1195 10546 -4341 2 2 0 6 1695 1696 7888 -4342 2 2 0 6 189 190 7878 -4343 2 2 0 6 5482 5485 8749 -4344 2 2 0 6 3539 9086 7958 -4345 2 2 0 6 6744 9678 10001 -4346 2 2 0 6 1892 8917 1894 -4347 2 2 0 6 5122 9486 8109 -4348 2 2 0 6 8530 10431 10292 -4349 2 2 0 6 3833 4663 8080 -4350 2 2 0 6 4801 7501 9932 -4351 2 2 0 6 8403 8813 9137 -4352 2 2 0 6 6391 8280 8812 -4353 2 2 0 6 4256 4299 4298 -4354 2 2 0 6 6295 8211 8937 -4355 2 2 0 6 3724 8053 8005 -4356 2 2 0 6 2884 10116 9988 -4357 2 2 0 6 5779 8745 8744 -4358 2 2 0 6 5748 8045 8409 -4359 2 2 0 6 5471 6128 8083 -4360 2 2 0 6 2531 2533 8436 -4361 2 2 0 6 1259 9358 8009 -4362 2 2 0 6 2167 2746 7604 -4363 2 2 0 6 1731 1733 8107 -4364 2 2 0 6 8265 8531 9015 -4365 2 2 0 6 2764 8378 4501 -4366 2 2 0 6 2548 8565 2550 -4367 2 2 0 6 4789 7612 6351 -4368 2 2 0 6 7628 10201 7629 -4369 2 2 0 6 9121 9868 10059 -4370 2 2 0 6 16 17 509 -4371 2 2 0 6 7587 7896 8421 -4372 2 2 0 6 1729 9312 2745 -4373 2 2 0 6 2257 2503 7947 -4374 2 2 0 6 5985 9929 7759 -4375 2 2 0 6 5662 5666 7650 -4376 2 2 0 6 6717 11317 11282 -4377 2 2 0 6 4901 10174 7598 -4378 2 2 0 6 252 253 7395 -4379 2 2 0 6 5013 5014 7835 -4380 2 2 0 6 3043 9048 8013 -4381 2 2 0 6 1780 7669 1782 -4382 2 2 0 6 4494 6513 9768 -4383 2 2 0 6 7763 7767 8604 -4384 2 2 0 6 6404 9896 9874 -4385 2 2 0 6 5272 8061 6202 -4386 2 2 0 6 3687 7922 7959 -4387 2 2 0 6 5748 7658 8045 -4388 2 2 0 6 8085 8801 8086 -4389 2 2 0 6 6380 8534 9006 -4390 2 2 0 6 1535 9068 7519 -4391 2 2 0 6 5230 7605 6182 -4392 2 2 0 6 7436 10074 9649 -4393 2 2 0 6 5053 7736 7737 -4394 2 2 0 6 6476 10071 8961 -4395 2 2 0 6 3700 4028 7889 -4396 2 2 0 6 3813 8202 9316 -4397 2 2 0 6 969 9728 973 -4398 2 2 0 6 4942 10280 8588 -4399 2 2 0 6 2006 3339 8131 -4400 2 2 0 6 4067 9710 10148 -4401 2 2 0 6 8516 8519 8521 -4402 2 2 0 6 4391 9232 9014 -4403 2 2 0 6 2398 7545 9890 -4404 2 2 0 6 5021 10163 10682 -4405 2 2 0 6 5249 7728 7727 -4406 2 2 0 6 1776 1793 3310 -4407 2 2 0 6 6346 7687 10307 -4408 2 2 0 6 6346 7526 7685 -4409 2 2 0 6 4604 4605 7836 -4410 2 2 0 6 2087 2417 7807 -4411 2 2 0 6 8082 9559 8840 -4412 2 2 0 6 8067 3656 9306 -4413 2 2 0 6 5025 6338 8868 -4414 2 2 0 6 3177 7472 7473 -4415 2 2 0 6 5263 10698 10206 -4416 2 2 0 6 4185 5479 9126 -4417 2 2 0 6 6323 8148 9978 -4418 2 2 0 6 7953 8552 9055 -4419 2 2 0 6 1382 9006 8534 -4420 2 2 0 6 352 353 7423 -4421 2 2 0 6 3164 9713 7613 -4422 2 2 0 6 7353 7677 8128 -4423 2 2 0 6 4545 5321 9542 -4424 2 2 0 6 2738 2987 7996 -4425 2 2 0 6 2376 8087 2375 -4426 2 2 0 6 4393 9307 7798 -4427 2 2 0 6 53 54 399 -4428 2 2 0 6 788 10220 8358 -4429 2 2 0 6 2668 2671 8101 -4430 2 2 0 6 8575 9526 8654 -4431 2 2 0 6 5347 10604 6274 -4432 2 2 0 6 6722 6751 7640 -4433 2 2 0 6 4621 8077 8633 -4434 2 2 0 6 7300 7761 7311 -4435 2 2 0 6 5164 10149 10036 -4436 2 2 0 6 4712 8164 6137 -4437 2 2 0 6 3687 4097 7922 -4438 2 2 0 6 12 13 527 -4439 2 2 0 6 451 7875 7876 -4440 2 2 0 6 4328 9854 7834 -4441 2 2 0 6 151 152 397 -4442 2 2 0 6 5440 9543 8163 -4443 2 2 0 6 8005 8053 8133 -4444 2 2 0 6 1911 5372 8030 -4445 2 2 0 6 7926 7927 8759 -4446 2 2 0 6 4826 7816 7488 -4447 2 2 0 6 2919 3303 8368 -4448 2 2 0 6 7210 10477 10497 -4449 2 2 0 6 6288 7506 7505 -4450 2 2 0 6 6058 8633 11103 -4451 2 2 0 6 7427 8817 7922 -4452 2 2 0 6 4504 4636 7630 -4453 2 2 0 6 5820 9448 8739 -4454 2 2 0 6 5308 7199 7920 -4455 2 2 0 6 8265 8532 8531 -4456 2 2 0 6 6537 10250 6540 -4457 2 2 0 6 5242 7524 5331 -4458 2 2 0 6 5848 7689 10247 -4459 2 2 0 6 6140 6836 7697 -4460 2 2 0 6 2940 7757 7756 -4461 2 2 0 6 7490 7663 9620 -4462 2 2 0 6 3880 4543 4545 -4463 2 2 0 6 4253 7916 4254 -4464 2 2 0 6 8444 10155 10197 -4465 2 2 0 6 8210 8631 8456 -4466 2 2 0 6 2703 3361 7895 -4467 2 2 0 6 4255 5428 7614 -4468 2 2 0 6 6485 9098 8949 -4469 2 2 0 6 905 9840 10035 -4470 2 2 0 6 3814 4221 4222 -4471 2 2 0 6 1227 9544 6240 -4472 2 2 0 6 2911 7667 10129 -4473 2 2 0 6 5552 7857 7858 -4474 2 2 0 6 6280 7232 9260 -4475 2 2 0 6 5494 10993 11039 -4476 2 2 0 6 3231 7517 3838 -4477 2 2 0 6 5239 7089 8056 -4478 2 2 0 6 7227 8692 7368 -4479 2 2 0 6 1748 5440 8163 -4480 2 2 0 6 7020 9633 9877 -4481 2 2 0 6 3899 7481 9881 -4482 2 2 0 6 5392 7362 7684 -4483 2 2 0 6 2719 3224 8267 -4484 2 2 0 6 4543 9295 5185 -4485 2 2 0 6 7175 10479 10445 -4486 2 2 0 6 2938 11138 11078 -4487 2 2 0 6 2493 7729 2839 -4488 2 2 0 6 2483 8015 8014 -4489 2 2 0 6 4078 7652 7736 -4490 2 2 0 6 6346 7685 7687 -4491 2 2 0 6 855 857 8623 -4492 2 2 0 6 3826 8857 4366 -4493 2 2 0 6 1343 5369 8324 -4494 2 2 0 6 3303 4309 8368 -4495 2 2 0 6 6371 7266 8065 -4496 2 2 0 6 3993 8309 8308 -4497 2 2 0 6 1437 1765 7493 -4498 2 2 0 6 9036 9683 9805 -4499 2 2 0 6 2249 8273 10748 -4500 2 2 0 6 7854 10340 10188 -4501 2 2 0 6 5056 10733 10807 -4502 2 2 0 6 7881 8871 7898 -4503 2 2 0 6 4097 4589 7922 -4504 2 2 0 6 6569 7486 10267 -4505 2 2 0 6 3004 7998 3807 -4506 2 2 0 6 4051 7630 9010 -4507 2 2 0 6 2764 2766 8378 -4508 2 2 0 6 8510 9397 8513 -4509 2 2 0 6 5515 9486 6840 -4510 2 2 0 6 3824 7996 9301 -4511 2 2 0 6 2433 9140 2435 -4512 2 2 0 6 2305 7629 2300 -4513 2 2 0 6 2640 7744 2726 -4514 2 2 0 6 3056 7982 4041 -4515 2 2 0 6 6043 8004 7802 -4516 2 2 0 6 7927 10141 9273 -4517 2 2 0 6 7552 7554 7581 -4518 2 2 0 6 2007 9716 2027 -4519 2 2 0 6 1875 2382 2381 -4520 2 2 0 6 5744 11238 11239 -4521 2 2 0 6 5258 4689 7727 -4522 2 2 0 6 4942 8588 9501 -4523 2 2 0 6 6615 7531 10835 -4524 2 2 0 6 3026 8306 9213 -4525 2 2 0 6 7979 7978 8639 -4526 2 2 0 6 5724 11067 10844 -4527 2 2 0 6 4279 8056 4420 -4528 2 2 0 6 79 8374 8375 -4529 2 2 0 6 4894 10407 6589 -4530 2 2 0 6 6105 8133 8053 -4531 2 2 0 6 346 347 9666 -4532 2 2 0 6 4563 5952 7999 -4533 2 2 0 6 2302 7629 8596 -4534 2 2 0 6 7958 9086 9508 -4535 2 2 0 6 2987 5442 7996 -4536 2 2 0 6 4252 6125 7482 -4537 2 2 0 6 2145 2337 8014 -4538 2 2 0 6 3643 7663 7490 -4539 2 2 0 6 3542 8315 5703 -4540 2 2 0 6 3322 7536 3323 -4541 2 2 0 6 3757 4595 8719 -4542 2 2 0 6 8070 8405 9815 -4543 2 2 0 6 4028 7890 7889 -4544 2 2 0 6 8379 8382 9631 -4545 2 2 0 6 6783 10070 7446 -4546 2 2 0 6 5372 10343 9715 -4547 2 2 0 6 8537 9453 8842 -4548 2 2 0 6 3884 4407 8301 -4549 2 2 0 6 1877 1987 2416 -4550 2 2 0 6 5561 10126 8820 -4551 2 2 0 6 5894 6627 10650 -4552 2 2 0 6 8074 9407 9801 -4553 2 2 0 6 3094 8062 3093 -4554 2 2 0 6 1494 10539 7809 -4555 2 2 0 6 4688 8395 5394 -4556 2 2 0 6 3864 8187 3866 -4557 2 2 0 6 1275 9607 8572 -4558 2 2 0 6 1910 2183 7897 -4559 2 2 0 6 1598 9112 7952 -4560 2 2 0 6 694 698 10021 -4561 2 2 0 6 1765 1811 1875 -4562 2 2 0 6 8348 8418 8417 -4563 2 2 0 6 4029 7978 7979 -4564 2 2 0 6 4782 4784 8553 -4565 2 2 0 6 3263 7880 3979 -4566 2 2 0 6 1190 10374 10909 -4567 2 2 0 6 5769 5771 5770 -4568 2 2 0 6 1209 9801 9407 -4569 2 2 0 6 5447 7501 7500 -4570 2 2 0 6 4574 5277 7646 -4571 2 2 0 6 1505 9042 10332 -4572 2 2 0 6 8269 8272 8271 -4573 2 2 0 6 5006 10559 7597 -4574 2 2 0 6 2632 2995 7861 -4575 2 2 0 6 383 7856 438 -4576 2 2 0 6 2843 3253 8102 -4577 2 2 0 6 7796 10303 10248 -4578 2 2 0 6 6293 7759 7760 -4579 2 2 0 6 7311 7763 8604 -4580 2 2 0 6 3180 7428 10371 -4581 2 2 0 6 2904 3724 8005 -4582 2 2 0 6 4306 5316 8446 -4583 2 2 0 6 5180 7818 6944 -4584 2 2 0 6 3866 8187 4821 -4585 2 2 0 6 3179 4172 8019 -4586 2 2 0 6 3075 9849 9679 -4587 2 2 0 6 4615 7984 5171 -4588 2 2 0 6 5525 8760 8500 -4589 2 2 0 6 193 7828 507 -4590 2 2 0 6 4654 4656 4657 -4591 2 2 0 6 4970 7739 4971 -4592 2 2 0 6 4433 8755 7706 -4593 2 2 0 6 6029 8272 8269 -4594 2 2 0 6 6508 9533 10063 -4595 2 2 0 6 3858 4877 8186 -4596 2 2 0 6 5230 6182 5232 -4597 2 2 0 6 6251 7270 8427 -4598 2 2 0 6 2696 7715 2940 -4599 2 2 0 6 7359 7726 7513 -4600 2 2 0 6 6370 6371 8065 -4601 2 2 0 6 4221 5140 4222 -4602 2 2 0 6 5410 5999 7540 -4603 2 2 0 6 9663 5778 9720 -4604 2 2 0 6 4506 7857 5552 -4605 2 2 0 6 3314 4017 8758 -4606 2 2 0 6 1521 9615 9459 -4607 2 2 0 6 2569 8654 7905 -4608 2 2 0 6 7323 8156 8155 -4609 2 2 0 6 2144 2328 8984 -4610 2 2 0 6 6379 8852 9279 -4611 2 2 0 6 2382 2411 2410 -4612 2 2 0 6 2719 8267 3664 -4613 2 2 0 6 8204 9963 10009 -4614 2 2 0 6 1006 5397 7960 -4615 2 2 0 6 6303 7850 6306 -4616 2 2 0 6 4250 7708 10070 -4617 2 2 0 6 6473 8991 8989 -4618 2 2 0 6 3616 9410 9409 -4619 2 2 0 6 2902 7978 4029 -4620 2 2 0 6 4656 6140 4657 -4621 2 2 0 6 5882 7648 9685 -4622 2 2 0 6 5752 7679 7678 -4623 2 2 0 6 5048 6386 8216 -4624 2 2 0 6 2484 9770 9945 -4625 2 2 0 6 8188 10034 8190 -4626 2 2 0 6 4604 7836 5184 -4627 2 2 0 6 567 568 569 -4628 2 2 0 6 377 430 8240 -4629 2 2 0 6 3627 7661 9142 -4630 2 2 0 6 5258 7055 6990 -4631 2 2 0 6 7789 7792 7799 -4632 2 2 0 6 5923 5924 10540 -4633 2 2 0 6 2593 2644 7772 -4634 2 2 0 6 4310 10923 10940 -4635 2 2 0 6 4231 4720 7584 -4636 2 2 0 6 2126 9377 5462 -4637 2 2 0 6 6462 8239 8772 -4638 2 2 0 6 3493 8953 9294 -4639 2 2 0 6 3475 9590 9703 -4640 2 2 0 6 191 7875 451 -4641 2 2 0 6 4041 7982 7983 -4642 2 2 0 6 7795 7797 9811 -4643 2 2 0 6 2173 2176 7686 -4644 2 2 0 6 3091 8949 9098 -4645 2 2 0 6 73 8144 515 -4646 2 2 0 6 4543 5185 4545 -4647 2 2 0 6 6125 6136 6800 -4648 2 2 0 6 3819 8290 3820 -4649 2 2 0 6 4592 8961 4899 -4650 2 2 0 6 2898 8019 8018 -4651 2 2 0 6 9721 10030 3957 -4652 2 2 0 6 3771 3772 8003 -4653 2 2 0 6 1039 8039 9937 -4654 2 2 0 6 7131 10591 7133 -4655 2 2 0 6 7601 7602 9657 -4656 2 2 0 6 2636 8548 9225 -4657 2 2 0 6 3154 10247 7689 -4658 2 2 0 6 8553 8654 9526 -4659 2 2 0 6 255 256 504 -4660 2 2 0 6 7308 7313 8824 -4661 2 2 0 6 1793 1876 1877 -4662 2 2 0 6 2518 8939 8336 -4663 2 2 0 6 8987 8990 8989 -4664 2 2 0 6 6452 10180 8485 -4665 2 2 0 6 1658 1656 9145 -4666 2 2 0 6 2523 2940 7756 -4667 2 2 0 6 2516 2898 8018 -4668 2 2 0 6 2562 8041 7732 -4669 2 2 0 6 1684 8513 1720 -4670 2 2 0 6 8621 8624 8623 -4671 2 2 0 6 1614 8081 1616 -4672 2 2 0 6 912 8443 5412 -4673 2 2 0 6 4907 8132 9508 -4674 2 2 0 6 4917 6442 9907 -4675 2 2 0 6 2305 7628 7629 -4676 2 2 0 6 5741 8029 7504 -4677 2 2 0 6 8515 8519 8516 -4678 2 2 0 6 3627 8891 7661 -4679 2 2 0 6 1360 8574 4043 -4680 2 2 0 6 5971 6659 10760 -4681 2 2 0 6 5605 9598 8252 -4682 2 2 0 6 5390 6046 8027 -4683 2 2 0 6 1682 8514 4349 -4684 2 2 0 6 2382 4801 7887 -4685 2 2 0 6 7591 11130 11117 -4686 2 2 0 6 5987 7759 6293 -4687 2 2 0 6 4959 9825 10133 -4688 2 2 0 6 6565 10412 9943 -4689 2 2 0 6 5464 7802 8004 -4690 2 2 0 6 3574 9892 8197 -4691 2 2 0 6 2383 10500 7229 -4692 2 2 0 6 6388 7800 9588 -4693 2 2 0 6 3255 3259 7752 -4694 2 2 0 6 3018 9510 10029 -4695 2 2 0 6 1955 1957 7773 -4696 2 2 0 6 6528 6529 10436 -4697 2 2 0 6 4009 8033 8035 -4698 2 2 0 6 2734 2736 7702 -4699 2 2 0 6 6664 10627 10678 -4700 2 2 0 6 7556 7805 7579 -4701 2 2 0 6 4357 8097 4359 -4702 2 2 0 6 4284 5042 8337 -4703 2 2 0 6 1569 8129 7862 -4704 2 2 0 6 5768 5769 5770 -4705 2 2 0 6 4906 7937 7933 -4706 2 2 0 6 2092 4983 8203 -4707 2 2 0 6 7997 9336 9413 -4708 2 2 0 6 4029 7906 9078 -4709 2 2 0 6 3366 9288 6443 -4710 2 2 0 6 813 7531 10771 -4711 2 2 0 6 8847 9432 10173 -4712 2 2 0 6 5186 6982 6981 -4713 2 2 0 6 1259 8125 9040 -4714 2 2 0 6 5721 8033 9211 -4715 2 2 0 6 5983 7523 9929 -4716 2 2 0 6 442 9954 7218 -4717 2 2 0 6 3072 10205 3075 -4718 2 2 0 6 4701 6176 8437 -4719 2 2 0 6 6651 10605 8966 -4720 2 2 0 6 7285 8957 7417 -4721 2 2 0 6 2924 7703 9620 -4722 2 2 0 6 4170 9241 8883 -4723 2 2 0 6 4931 4943 8068 -4724 2 2 0 6 3646 8549 3831 -4725 2 2 0 6 8925 10917 11012 -4726 2 2 0 6 5600 10479 7166 -4727 2 2 0 6 2539 2547 7884 -4728 2 2 0 6 1317 2573 7993 -4729 2 2 0 6 7553 7555 7554 -4730 2 2 0 6 521 8248 8247 -4731 2 2 0 6 4078 7987 7652 -4732 2 2 0 6 1280 7000 9884 -4733 2 2 0 6 8899 10294 9030 -4734 2 2 0 6 198 199 7483 -4735 2 2 0 6 3657 8809 9842 -4736 2 2 0 6 8210 8983 8631 -4737 2 2 0 6 8015 8045 10667 -4738 2 2 0 6 4877 7935 8186 -4739 2 2 0 6 1273 1275 8572 -4740 2 2 0 6 8071 8069 9801 -4741 2 2 0 6 4861 4854 7588 -4742 2 2 0 6 5118 7916 7645 -4743 2 2 0 6 3372 7534 10007 -4744 2 2 0 6 3709 9373 5475 -4745 2 2 0 6 2348 9321 2387 -4746 2 2 0 6 4545 5185 5189 -4747 2 2 0 6 8070 8630 8405 -4748 2 2 0 6 4571 9376 9670 -4749 2 2 0 6 7972 10386 8877 -4750 2 2 0 6 7538 9410 9522 -4751 2 2 0 6 6362 8180 8931 -4752 2 2 0 6 4009 9211 8033 -4753 2 2 0 6 4575 7646 9280 -4754 2 2 0 6 8103 8628 8106 -4755 2 2 0 6 4458 8078 4630 -4756 2 2 0 6 7294 8155 7310 -4757 2 2 0 6 4265 8938 5429 -4758 2 2 0 6 72 515 8142 -4759 2 2 0 6 4851 7880 5328 -4760 2 2 0 6 6483 8229 9690 -4761 2 2 0 6 2624 7749 2779 -4762 2 2 0 6 7929 7930 9902 -4763 2 2 0 6 6524 9254 10255 -4764 2 2 0 6 2413 7623 2465 -4765 2 2 0 6 2376 2398 8087 -4766 2 2 0 6 4197 5020 8300 -4767 2 2 0 6 5824 8197 9892 -4768 2 2 0 6 2272 9863 9391 -4769 2 2 0 6 3118 3120 8748 -4770 2 2 0 6 7740 9999 9423 -4771 2 2 0 6 3408 3442 8044 -4772 2 2 0 6 1317 7993 7991 -4773 2 2 0 6 2075 8205 2079 -4774 2 2 0 6 4485 5008 8846 -4775 2 2 0 6 2020 2022 8723 -4776 2 2 0 6 2261 10174 4901 -4777 2 2 0 6 6748 6749 10284 -4778 2 2 0 6 5764 5765 5766 -4779 2 2 0 6 2413 2471 7623 -4780 2 2 0 6 4656 6758 6140 -4781 2 2 0 6 6979 6980 7013 -4782 2 2 0 6 5856 10328 10314 -4783 2 2 0 6 8325 10423 10239 -4784 2 2 0 6 3067 8664 7770 -4785 2 2 0 6 5236 8944 5305 -4786 2 2 0 6 7461 10619 10308 -4787 2 2 0 6 1350 1352 3977 -4788 2 2 0 6 4251 5157 5161 -4789 2 2 0 6 2381 2382 2410 -4790 2 2 0 6 5547 8392 8955 -4791 2 2 0 6 7734 7735 10702 -4792 2 2 0 6 2398 9890 8087 -4793 2 2 0 6 3799 9988 7817 -4794 2 2 0 6 4954 8777 5273 -4795 2 2 0 6 3686 8461 3169 -4796 2 2 0 6 7980 9955 10358 -4797 2 2 0 6 6847 6849 6848 -4798 2 2 0 6 6287 6288 7505 -4799 2 2 0 6 4093 8455 4886 -4800 2 2 0 6 5563 8174 9615 -4801 2 2 0 6 5491 8612 8433 -4802 2 2 0 6 2411 2413 2412 -4803 2 2 0 6 5140 6809 5141 -4804 2 2 0 6 7519 9068 9272 -4805 2 2 0 6 5481 6289 9854 -4806 2 2 0 6 6367 9663 9599 -4807 2 2 0 6 6306 6307 6305 -4808 2 2 0 6 2810 7617 4323 -4809 2 2 0 6 4669 8164 4670 -4810 2 2 0 6 5103 7651 6061 -4811 2 2 0 6 1025 9012 10220 -4812 2 2 0 6 2672 10387 10453 -4813 2 2 0 6 2044 8676 2045 -4814 2 2 0 6 836 8364 10996 -4815 2 2 0 6 5220 6189 7620 -4816 2 2 0 6 6302 7850 6303 -4817 2 2 0 6 68 517 8230 -4818 2 2 0 6 6341 8543 8146 -4819 2 2 0 6 6378 8280 8279 -4820 2 2 0 6 5161 6135 6847 -4821 2 2 0 6 4874 5398 7926 -4822 2 2 0 6 4044 8842 9453 -4823 2 2 0 6 4464 8098 5826 -4824 2 2 0 6 5272 5274 8061 -4825 2 2 0 6 2173 7686 2175 -4826 2 2 0 6 8167 8661 8169 -4827 2 2 0 6 3548 3913 8820 -4828 2 2 0 6 5678 9382 9515 -4829 2 2 0 6 2204 7547 8075 -4830 2 2 0 6 1736 4345 8107 -4831 2 2 0 6 1040 3453 8644 -4832 2 2 0 6 5593 9315 8822 -4833 2 2 0 6 4280 9402 5712 -4834 2 2 0 6 1689 7683 2165 -4835 2 2 0 6 1838 8085 2229 -4836 2 2 0 6 4709 5213 8279 -4837 2 2 0 6 8303 10528 10382 -4838 2 2 0 6 5017 5752 7678 -4839 2 2 0 6 6849 7447 7446 -4840 2 2 0 6 7740 7919 9999 -4841 2 2 0 6 6342 9658 9299 -4842 2 2 0 6 5470 8603 5472 -4843 2 2 0 6 2537 7884 7882 -4844 2 2 0 6 5126 7985 7984 -4845 2 2 0 6 6748 10119 10424 -4846 2 2 0 6 5537 7952 9112 -4847 2 2 0 6 65 8234 521 -4848 2 2 0 6 6274 10604 10521 -4849 2 2 0 6 2932 7919 4970 -4850 2 2 0 6 1298 1317 7991 -4851 2 2 0 6 5186 6981 5188 -4852 2 2 0 6 1995 1997 7684 -4853 2 2 0 6 5387 7730 7731 -4854 2 2 0 6 94 532 8143 -4855 2 2 0 6 6296 9757 7825 -4856 2 2 0 6 5471 8083 8290 -4857 2 2 0 6 5670 6698 9625 -4858 2 2 0 6 4873 6251 8427 -4859 2 2 0 6 7790 9258 7797 -4860 2 2 0 6 6330 9637 8749 -4861 2 2 0 6 2411 2412 2410 -4862 2 2 0 6 7933 7937 7934 -4863 2 2 0 6 3281 9520 9979 -4864 2 2 0 6 5419 7638 7639 -4865 2 2 0 6 2413 2465 2414 -4866 2 2 0 6 1229 1238 8206 -4867 2 2 0 6 2085 2087 7807 -4868 2 2 0 6 6301 6302 6303 -4869 2 2 0 6 3073 7849 7848 -4870 2 2 0 6 2545 2550 7930 -4871 2 2 0 6 8584 10957 10983 -4872 2 2 0 6 4657 6140 6247 -4873 2 2 0 6 1297 8528 2572 -4874 2 2 0 6 4720 7119 7127 -4875 2 2 0 6 3854 4906 7933 -4876 2 2 0 6 8777 9971 8778 -4877 2 2 0 6 3607 8351 3609 -4878 2 2 0 6 1919 7975 7962 -4879 2 2 0 6 6303 6305 6304 -4880 2 2 0 6 1614 9658 8081 -4881 2 2 0 6 5677 9732 6485 -4882 2 2 0 6 4229 7636 4671 -4883 2 2 0 6 2000 5392 7684 -4884 2 2 0 6 69 8161 517 -4885 2 2 0 6 2073 4074 9392 -4886 2 2 0 6 4349 8514 8511 -4887 2 2 0 6 382 438 7771 -4888 2 2 0 6 6606 9103 9102 -4889 2 2 0 6 1759 10494 10361 -4890 2 2 0 6 2688 9335 9485 -4891 2 2 0 6 8609 8610 8607 -4892 2 2 0 6 6142 7720 9964 -4893 2 2 0 6 6352 7928 8412 -4894 2 2 0 6 4784 4787 8553 -4895 2 2 0 6 4222 5140 5141 -4896 2 2 0 6 2372 8416 8414 -4897 2 2 0 6 8106 9739 9740 -4898 2 2 0 6 1782 7669 8805 -4899 2 2 0 6 7288 8434 7291 -4900 2 2 0 6 6339 6340 10628 -4901 2 2 0 6 4852 7813 7666 -4902 2 2 0 6 7591 11117 7592 -4903 2 2 0 6 1464 8047 8046 -4904 2 2 0 6 6606 9102 8066 -4905 2 2 0 6 5684 6738 9301 -4906 2 2 0 6 6613 10866 7589 -4907 2 2 0 6 994 995 7960 -4908 2 2 0 6 6529 10135 10503 -4909 2 2 0 6 5236 6195 8944 -4910 2 2 0 6 6788 9316 8202 -4911 2 2 0 6 2088 9026 2090 -4912 2 2 0 6 7513 8840 9559 -4913 2 2 0 6 7291 8434 7321 -4914 2 2 0 6 3375 3809 9637 -4915 2 2 0 6 7963 7962 7975 -4916 2 2 0 6 8502 9272 9068 -4917 2 2 0 6 1693 3362 9841 -4918 2 2 0 6 6146 6298 6299 -4919 2 2 0 6 3946 8352 5402 -4920 2 2 0 6 5398 7927 7926 -4921 2 2 0 6 2041 8677 2044 -4922 2 2 0 6 7292 7312 8155 -4923 2 2 0 6 3249 8093 4719 -4924 2 2 0 6 2500 9672 9133 -4925 2 2 0 6 3154 10252 10247 -4926 2 2 0 6 8765 10699 10782 -4927 2 2 0 6 6309 6310 6311 -4928 2 2 0 6 3349 5389 8130 -4929 2 2 0 6 1782 8805 1784 -4930 2 2 0 6 5311 8023 7207 -4931 2 2 0 6 1563 8160 1673 -4932 2 2 0 6 4716 5228 9313 -4933 2 2 0 6 6307 6309 6308 -4934 2 2 0 6 4421 5869 10334 -4935 2 2 0 6 5161 6847 6848 -4936 2 2 0 6 2810 3264 3263 -4937 2 2 0 6 7453 10360 10344 -4938 2 2 0 6 7355 7494 8700 -4939 2 2 0 6 3881 4543 3880 -4940 2 2 0 6 1565 3384 8160 -4941 2 2 0 6 5492 8542 10134 -4942 2 2 0 6 1461 1464 8046 -4943 2 2 0 6 1631 1633 9086 -4944 2 2 0 6 64 521 8247 -4945 2 2 0 6 197 198 489 -4946 2 2 0 6 6685 11263 11270 -4947 2 2 0 6 8208 8937 8211 -4948 2 2 0 6 3463 8477 9130 -4949 2 2 0 6 1162 1919 7962 -4950 2 2 0 6 2736 3239 7702 -4951 2 2 0 6 2547 7885 7884 -4952 2 2 0 6 6748 10284 10119 -4953 2 2 0 6 6722 6723 6724 -4954 2 2 0 6 6386 8217 8216 -4955 2 2 0 6 3164 7613 8956 -4956 2 2 0 6 8210 8456 8888 -4957 2 2 0 6 6299 6301 6300 -4958 2 2 0 6 1619 8081 4902 -4959 2 2 0 6 6262 9712 9628 -4960 2 2 0 6 188 512 8022 -4961 2 2 0 6 3718 8283 3719 -4962 2 2 0 6 3098 8093 3249 -4963 2 2 0 6 1347 1350 7551 -4964 2 2 0 6 1368 8741 8742 -4965 2 2 0 6 7783 7791 9793 -4966 2 2 0 6 7549 7550 10011 -4967 2 2 0 6 7553 7599 7580 -4968 2 2 0 6 5088 6017 7676 -4969 2 2 0 6 3329 5748 8409 -4970 2 2 0 6 7611 10204 9990 -4971 2 2 0 6 7173 7175 10445 -4972 2 2 0 6 4912 6408 8227 -4973 2 2 0 6 5501 6684 9277 -4974 2 2 0 6 2506 2939 7881 -4975 2 2 0 6 2652 9762 8700 -4976 2 2 0 6 2347 8916 9321 -4977 2 2 0 6 1252 1259 9040 -4978 2 2 0 6 8306 6353 9213 -4979 2 2 0 6 1487 7959 8817 -4980 2 2 0 6 4109 7816 4826 -4981 2 2 0 6 5303 9287 5304 -4982 2 2 0 6 6400 9001 9174 -4983 2 2 0 6 3717 4537 8871 -4984 2 2 0 6 4458 4522 8078 -4985 2 2 0 6 2654 3329 8409 -4986 2 2 0 6 4588 5308 7920 -4987 2 2 0 6 2535 2537 7882 -4988 2 2 0 6 6561 7213 8292 -4989 2 2 0 6 9480 9555 9986 -4990 2 2 0 6 4880 9272 8502 -4991 2 2 0 6 4851 5328 5231 -4992 2 2 0 6 9163 9818 9972 -4993 2 2 0 6 2323 8075 2899 -4994 2 2 0 6 5394 8395 7582 -4995 2 2 0 6 1422 7779 3308 -4996 2 2 0 6 3015 3316 7825 -4997 2 2 0 6 6370 8065 8838 -4998 2 2 0 6 4662 6142 9964 -4999 2 2 0 6 6058 11135 9952 -5000 2 2 0 6 4391 8573 9232 -5001 2 2 0 6 2991 3073 7848 -5002 2 2 0 6 8231 8662 8308 -5003 2 2 0 6 1364 1365 8742 -5004 2 2 0 6 2151 2372 8414 -5005 2 2 0 6 3442 9186 8044 -5006 2 2 0 6 2696 3219 7715 -5007 2 2 0 6 7673 9485 9335 -5008 2 2 0 6 1776 1792 1793 -5009 2 2 0 6 6159 6317 6161 -5010 2 2 0 6 7797 8613 9811 -5011 2 2 0 6 3920 7994 9187 -5012 2 2 0 6 2048 8676 5003 -5013 2 2 0 6 5008 8847 8846 -5014 2 2 0 6 5552 8900 9832 -5015 2 2 0 6 1480 8540 8539 -5016 2 2 0 6 2431 7782 2763 -5017 2 2 0 6 2577 2581 8251 -5018 2 2 0 6 8568 8570 8571 -5019 2 2 0 6 6722 6724 6751 -5020 2 2 0 6 4720 7127 7128 -5021 2 2 0 6 2763 7782 7783 -5022 2 2 0 6 1361 1364 8574 -5023 2 2 0 6 2470 8030 3980 -5024 2 2 0 6 6311 6722 6721 -5025 2 2 0 6 4563 7999 8108 -5026 2 2 0 6 3884 8301 3013 -5027 2 2 0 6 2148 2349 8444 -5028 2 2 0 6 6356 6359 7854 -5029 2 2 0 6 2464 9413 7687 -5030 2 2 0 6 3249 4231 3804 -5031 2 2 0 6 5712 9817 7023 -5032 2 2 0 6 7526 9738 7622 -5033 2 2 0 6 5428 6149 6845 -5034 2 2 0 6 1238 5414 8206 -5035 2 2 0 6 6167 7016 6991 -5036 2 2 0 6 3006 8555 9927 -5037 2 2 0 6 3174 4448 8413 -5038 2 2 0 6 7498 8911 9897 -5039 2 2 0 6 4495 9279 8852 -5040 2 2 0 6 4452 9084 4979 -5041 2 2 0 6 7967 7968 7974 -5042 2 2 0 6 1839 10246 3536 -5043 2 2 0 6 2430 7663 2491 -5044 2 2 0 6 8068 8069 8071 -5045 2 2 0 6 1989 8445 3658 -5046 2 2 0 6 4851 5231 5230 -5047 2 2 0 6 5095 8011 6700 -5048 2 2 0 6 2471 7624 7623 -5049 2 2 0 6 4572 8212 4827 -5050 2 2 0 6 2533 2744 8436 -5051 2 2 0 6 1821 8079 1836 -5052 2 2 0 6 8123 8124 10089 -5053 2 2 0 6 5230 5231 7605 -5054 2 2 0 6 2517 8296 3377 -5055 2 2 0 6 4511 9263 4609 -5056 2 2 0 6 4661 5129 7709 -5057 2 2 0 6 2550 8565 7932 -5058 2 2 0 6 8379 8381 8382 -5059 2 2 0 6 4349 8510 8513 -5060 2 2 0 6 7554 7555 7556 -5061 2 2 0 6 8722 8724 8723 -5062 2 2 0 6 1987 4691 2416 -5063 2 2 0 6 1611 9394 3359 -5064 2 2 0 6 1817 1819 9966 -5065 2 2 0 6 2581 5605 8251 -5066 2 2 0 6 1633 1687 9086 -5067 2 2 0 6 6170 6853 6171 -5068 2 2 0 6 2586 7670 10737 -5069 2 2 0 6 5047 5048 8216 -5070 2 2 0 6 374 473 8166 -5071 2 2 0 6 2640 3980 7744 -5072 2 2 0 6 2165 7683 2746 -5073 2 2 0 6 9000 9063 9064 -5074 2 2 0 6 4827 8212 6315 -5075 2 2 0 6 6373 9750 8137 -5076 2 2 0 6 3168 8956 3749 -5077 2 2 0 6 4974 6298 6146 -5078 2 2 0 6 5768 8356 7608 -5079 2 2 0 6 3085 3084 3086 -5080 2 2 0 6 1836 8085 1838 -5081 2 2 0 6 2389 7504 10367 -5082 2 2 0 6 1988 1989 1990 -5083 2 2 0 6 4049 8302 4476 -5084 2 2 0 6 5448 5450 7987 -5085 2 2 0 6 5666 9088 7650 -5086 2 2 0 6 1477 1480 8539 -5087 2 2 0 6 3073 3072 3074 -5088 2 2 0 6 3255 3257 3259 -5089 2 2 0 6 4789 4791 7612 -5090 2 2 0 6 9114 9577 9115 -5091 2 2 0 6 2169 7604 8921 -5092 2 2 0 6 4501 8378 8379 -5093 2 2 0 6 1911 8030 2194 -5094 2 2 0 6 1822 8390 10540 -5095 2 2 0 6 8616 10872 10826 -5096 2 2 0 6 1973 7716 2230 -5097 2 2 0 6 4372 8326 5346 -5098 2 2 0 6 5371 9501 8112 -5099 2 2 0 6 1665 9457 5699 -5100 2 2 0 6 2465 2641 2466 -5101 2 2 0 6 2939 8871 7881 -5102 2 2 0 6 5422 7774 7249 -5103 2 2 0 6 4605 7837 7836 -5104 2 2 0 6 6721 6722 7640 -5105 2 2 0 6 5510 8428 7956 -5106 2 2 0 6 4304 4306 8446 -5107 2 2 0 6 4984 10027 9965 -5108 2 2 0 6 1037 1139 7743 -5109 2 2 0 6 2027 9716 5534 -5110 2 2 0 6 5221 8026 7102 -5111 2 2 0 6 4940 4942 9501 -5112 2 2 0 6 3814 3830 4221 -5113 2 2 0 6 2631 2630 8119 -5114 2 2 0 6 1990 1991 1992 -5115 2 2 0 6 3832 4674 4128 -5116 2 2 0 6 3686 4749 8461 -5117 2 2 0 6 5395 7012 6989 -5118 2 2 0 6 1177 4140 7903 -5119 2 2 0 6 8224 8226 8225 -5120 2 2 0 6 5660 5662 7650 -5121 2 2 0 6 2667 2668 8101 -5122 2 2 0 6 7049 7688 9232 -5123 2 2 0 6 584 1520 8297 -5124 2 2 0 6 3979 7880 4851 -5125 2 2 0 6 3542 3544 8315 -5126 2 2 0 6 6439 6457 10054 -5127 2 2 0 6 6364 6367 9440 -5128 2 2 0 6 2641 2776 2642 -5129 2 2 0 6 3804 4231 4658 -5130 2 2 0 6 6750 9664 9665 -5131 2 2 0 6 2484 9923 7533 -5132 2 2 0 6 2412 2413 2414 -5133 2 2 0 6 4915 9117 7539 -5134 2 2 0 6 5060 6079 8238 -5135 2 2 0 6 2327 3665 3666 -5136 2 2 0 6 5122 6143 6733 -5137 2 2 0 6 87 88 7733 -5138 2 2 0 6 6514 10232 8927 -5139 2 2 0 6 2258 2632 7861 -5140 2 2 0 6 4360 4364 8543 -5141 2 2 0 6 1612 1755 9658 -5142 2 2 0 6 3971 9513 4683 -5143 2 2 0 6 5606 6156 7537 -5144 2 2 0 6 2550 7931 7930 -5145 2 2 0 6 3928 3929 9512 -5146 2 2 0 6 5973 10891 10686 -5147 2 2 0 6 5273 8777 5715 -5148 2 2 0 6 7555 7557 7556 -5149 2 2 0 6 5154 9731 6791 -5150 2 2 0 6 4658 6754 5380 -5151 2 2 0 6 1074 1081 8488 -5152 2 2 0 6 1295 8120 8528 -5153 2 2 0 6 7647 10606 10613 -5154 2 2 0 6 2898 3179 8019 -5155 2 2 0 6 417 8377 8849 -5156 2 2 0 6 3552 10234 10248 -5157 2 2 0 6 7563 7693 7565 -5158 2 2 0 6 2083 5421 8854 -5159 2 2 0 6 4903 8029 5741 -5160 2 2 0 6 4435 7706 4808 -5161 2 2 0 6 4669 5515 6154 -5162 2 2 0 6 8360 8363 8365 -5163 2 2 0 6 7558 7559 7560 -5164 2 2 0 6 88 437 7733 -5165 2 2 0 6 4969 7941 7940 -5166 2 2 0 6 2814 2816 8420 -5167 2 2 0 6 1836 8079 8085 -5168 2 2 0 6 8791 8792 8858 -5169 2 2 0 6 4918 9129 8198 -5170 2 2 0 6 2701 8840 3361 -5171 2 2 0 6 3115 8910 3116 -5172 2 2 0 6 4951 9984 8751 -5173 2 2 0 6 7788 7794 9258 -5174 2 2 0 6 2726 2991 2990 -5175 2 2 0 6 4688 5250 5249 -5176 2 2 0 6 2327 5447 7500 -5177 2 2 0 6 5464 8004 8318 -5178 2 2 0 6 1210 5688 8935 -5179 2 2 0 6 2411 2471 2413 -5180 2 2 0 6 3094 3096 3097 -5181 2 2 0 6 6348 8457 7702 -5182 2 2 0 6 1740 1742 8628 -5183 2 2 0 6 7020 9877 8413 -5184 2 2 0 6 6299 6302 6301 -5185 2 2 0 6 5460 9409 9410 -5186 2 2 0 6 5356 10230 10257 -5187 2 2 0 6 3235 3832 4128 -5188 2 2 0 6 7593 8922 9160 -5189 2 2 0 6 2003 2006 8131 -5190 2 2 0 6 2000 5391 5392 -5191 2 2 0 6 5421 8855 8854 -5192 2 2 0 6 6303 6306 6305 -5193 2 2 0 6 3724 4137 8053 -5194 2 2 0 6 1270 4908 8120 -5195 2 2 0 6 444 7397 7396 -5196 2 2 0 6 4908 8121 8120 -5197 2 2 0 6 6029 8269 8268 -5198 2 2 0 6 3328 8656 9256 -5199 2 2 0 6 89 90 7741 -5200 2 2 0 6 4687 4688 5249 -5201 2 2 0 6 8419 8663 8862 -5202 2 2 0 6 7207 8023 8024 -5203 2 2 0 6 2582 2579 8245 -5204 2 2 0 6 8403 9137 9118 -5205 2 2 0 6 2991 3071 3072 -5206 2 2 0 6 6534 6561 8292 -5207 2 2 0 6 2674 2881 8413 -5208 2 2 0 6 1994 2810 2809 -5209 2 2 0 6 972 979 7768 -5210 2 2 0 6 7991 7993 7992 -5211 2 2 0 6 4231 4719 4720 -5212 2 2 0 6 3974 4852 7666 -5213 2 2 0 6 3772 3775 8003 -5214 2 2 0 6 4943 8069 8068 -5215 2 2 0 6 2685 8336 3206 -5216 2 2 0 6 8615 8616 8796 -5217 2 2 0 6 3028 8419 8118 -5218 2 2 0 6 3977 7553 7552 -5219 2 2 0 6 2890 10140 10066 -5220 2 2 0 6 5375 7908 7909 -5221 2 2 0 6 569 570 571 -5222 2 2 0 6 840 9613 1758 -5223 2 2 0 6 89 7741 437 -5224 2 2 0 6 2154 4401 8172 -5225 2 2 0 6 5826 8098 9011 -5226 2 2 0 6 7130 10997 11212 -5227 2 2 0 6 5185 6979 5189 -5228 2 2 0 6 1437 1511 1765 -5229 2 2 0 6 6357 9910 8506 -5230 2 2 0 6 569 7140 567 -5231 2 2 0 6 3098 3249 3097 -5232 2 2 0 6 2882 2883 9451 -5233 2 2 0 6 1035 1989 1988 -5234 2 2 0 6 3077 3076 3078 -5235 2 2 0 6 7314 8824 7327 -5236 2 2 0 6 1418 1918 9643 -5237 2 2 0 6 774 10342 3630 -5238 2 2 0 6 8715 8881 8882 -5239 2 2 0 6 4737 9633 10040 -5240 2 2 0 6 3097 3249 3804 -5241 2 2 0 6 5131 6739 7951 -5242 2 2 0 6 5493 5534 7262 -5243 2 2 0 6 3377 8296 3663 -5244 2 2 0 6 4821 8187 8188 -5245 2 2 0 6 4595 7700 8719 -5246 2 2 0 6 1987 2395 7704 -5247 2 2 0 6 6395 9351 8236 -5248 2 2 0 6 7562 7563 7564 -5249 2 2 0 6 2039 8677 2041 -5250 2 2 0 6 5297 8924 7196 -5251 2 2 0 6 7938 9753 9289 -5252 2 2 0 6 5465 7801 6177 -5253 2 2 0 6 186 435 8088 -5254 2 2 0 6 6447 6834 8429 -5255 2 2 0 6 2567 8575 2569 -5256 2 2 0 6 2487 9011 10106 -5257 2 2 0 6 2980 4331 8082 -5258 2 2 0 6 3259 9496 7752 -5259 2 2 0 6 1340 1343 8324 -5260 2 2 0 6 8705 9539 8709 -5261 2 2 0 6 2025 4431 8727 -5262 2 2 0 6 3668 3669 3827 -5263 2 2 0 6 4929 8630 4943 -5264 2 2 0 6 95 8629 532 -5265 2 2 0 6 2903 3724 2904 -5266 2 2 0 6 5511 6421 7904 -5267 2 2 0 6 2843 8102 3103 -5268 2 2 0 6 4264 5607 9482 -5269 2 2 0 6 8588 8657 9501 -5270 2 2 0 6 4974 6146 6145 -5271 2 2 0 6 2229 8085 8086 -5272 2 2 0 6 7557 7559 7558 -5273 2 2 0 6 4431 9480 8727 -5274 2 2 0 6 5126 8857 7986 -5275 2 2 0 6 1422 1424 1423 -5276 2 2 0 6 2726 3071 2991 -5277 2 2 0 6 3844 7509 10274 -5278 2 2 0 6 5010 6323 6324 -5279 2 2 0 6 450 8152 8151 -5280 2 2 0 6 4853 6273 8833 -5281 2 2 0 6 2523 2696 2940 -5282 2 2 0 6 857 1024 8623 -5283 2 2 0 6 2776 7908 2914 -5284 2 2 0 6 7541 9890 7545 -5285 2 2 0 6 7598 10174 10104 -5286 2 2 0 6 2997 9197 4077 -5287 2 2 0 6 6434 9975 9038 -5288 2 2 0 6 3339 5493 5494 -5289 2 2 0 6 8587 8646 9352 -5290 2 2 0 6 3153 4051 9010 -5291 2 2 0 6 2190 7622 2365 -5292 2 2 0 6 5570 7754 7753 -5293 2 2 0 6 6463 8114 10168 -5294 2 2 0 6 2909 3216 3215 -5295 2 2 0 6 5042 6007 8337 -5296 2 2 0 6 3603 8729 6200 -5297 2 2 0 6 4376 8770 4378 -5298 2 2 0 6 569 568 570 -5299 2 2 0 6 2079 8205 2111 -5300 2 2 0 6 7731 10353 10438 -5301 2 2 0 6 4476 8302 5877 -5302 2 2 0 6 1953 8826 2248 -5303 2 2 0 6 1989 1991 1990 -5304 2 2 0 6 8265 8859 8532 -5305 2 2 0 6 3941 4688 4687 -5306 2 2 0 6 4873 8427 5309 -5307 2 2 0 6 4359 8097 4362 -5308 2 2 0 6 5031 10758 5870 -5309 2 2 0 6 8101 8719 10023 -5310 2 2 0 6 3953 5409 9160 -5311 2 2 0 6 6007 8339 8338 -5312 2 2 0 6 4198 4403 9974 -5313 2 2 0 6 4541 4293 10899 -5314 2 2 0 6 403 8322 8323 -5315 2 2 0 6 5567 5570 7753 -5316 2 2 0 6 3947 3951 8352 -5317 2 2 0 6 3081 3080 3082 -5318 2 2 0 6 3882 9757 4686 -5319 2 2 0 6 1341 1422 1421 -5320 2 2 0 6 8606 8609 8607 -5321 2 2 0 6 8403 8550 8813 -5322 2 2 0 6 6309 6311 6721 -5323 2 2 0 6 2255 2523 7756 -5324 2 2 0 6 5141 5353 5349 -5325 2 2 0 6 2183 2361 7897 -5326 2 2 0 6 2796 9273 7707 -5327 2 2 0 6 6348 9592 8457 -5328 2 2 0 6 3090 3092 3093 -5329 2 2 0 6 3820 8290 4633 -5330 2 2 0 6 8468 9619 2385 -5331 2 2 0 6 3074 3075 3076 -5332 2 2 0 6 2336 7732 7729 -5333 2 2 0 6 5798 8031 8032 -5334 2 2 0 6 2147 2148 8444 -5335 2 2 0 6 1324 1443 1442 -5336 2 2 0 6 6247 6140 7697 -5337 2 2 0 6 3979 4851 4850 -5338 2 2 0 6 3825 7724 7725 -5339 2 2 0 6 5732 9546 8895 -5340 2 2 0 6 3696 8385 8387 -5341 2 2 0 6 3828 4256 4298 -5342 2 2 0 6 7518 7647 10613 -5343 2 2 0 6 1426 9746 1428 -5344 2 2 0 6 4128 4674 4676 -5345 2 2 0 6 2375 8087 3347 -5346 2 2 0 6 5392 5704 5705 -5347 2 2 0 6 2543 7930 7929 -5348 2 2 0 6 91 92 7939 -5349 2 2 0 6 2671 8719 8101 -5350 2 2 0 6 8348 8417 8441 -5351 2 2 0 6 3657 7748 9510 -5352 2 2 0 6 5020 6337 8300 -5353 2 2 0 6 3945 4822 9185 -5354 2 2 0 6 4341 10243 7716 -5355 2 2 0 6 2290 10192 10017 -5356 2 2 0 6 1231 7948 7949 -5357 2 2 0 6 3621 8504 4277 -5358 2 2 0 6 6753 6763 10193 -5359 2 2 0 6 1350 1351 1352 -5360 2 2 0 6 1684 4349 8513 -5361 2 2 0 6 5006 10487 10559 -5362 2 2 0 6 1230 10712 10735 -5363 2 2 0 6 1352 1353 1437 -5364 2 2 0 6 8496 10197 10155 -5365 2 2 0 6 3831 8549 4673 -5366 2 2 0 6 7662 7661 8891 -5367 2 2 0 6 4354 7637 9595 -5368 2 2 0 6 2531 8436 4001 -5369 2 2 0 6 5318 8872 8025 -5370 2 2 0 6 7459 10146 8455 -5371 2 2 0 6 6014 6016 11092 -5372 2 2 0 6 4967 10063 9533 -5373 2 2 0 6 1579 9113 7868 -5374 2 2 0 6 4273 5588 6596 -5375 2 2 0 6 269 8561 519 -5376 2 2 0 6 5172 7818 5180 -5377 2 2 0 6 5767 5769 5768 -5378 2 2 0 6 6307 6310 6309 -5379 2 2 0 6 5772 9744 9977 -5380 2 2 0 6 1443 1444 1445 -5381 2 2 0 6 8587 9352 8657 -5382 2 2 0 6 6615 10835 10860 -5383 2 2 0 6 5353 6813 5355 -5384 2 2 0 6 8198 9130 8477 -5385 2 2 0 6 2440 2442 9017 -5386 2 2 0 6 7565 7567 7566 -5387 2 2 0 6 1957 2255 7773 -5388 2 2 0 6 4968 4969 7940 -5389 2 2 0 6 5465 9584 8437 -5390 2 2 0 6 1854 8515 3472 -5391 2 2 0 6 5408 8858 7986 -5392 2 2 0 6 6445 8429 9593 -5393 2 2 0 6 4368 8173 5563 -5394 2 2 0 6 8382 10167 9631 -5395 2 2 0 6 1852 8515 1854 -5396 2 2 0 6 3630 10342 8976 -5397 2 2 0 6 5399 7847 5401 -5398 2 2 0 6 1339 1340 1341 -5399 2 2 0 6 964 9306 3656 -5400 2 2 0 6 4473 4475 8268 -5401 2 2 0 6 3647 9005 8594 -5402 2 2 0 6 3819 5471 8290 -5403 2 2 0 6 5486 7692 6288 -5404 2 2 0 6 5838 7713 7714 -5405 2 2 0 6 4983 8204 8203 -5406 2 2 0 6 3220 3814 8590 -5407 2 2 0 6 4338 4340 8801 -5408 2 2 0 6 5859 10186 7363 -5409 2 2 0 6 1924 8911 3470 -5410 2 2 0 6 1497 8707 9013 -5411 2 2 0 6 2989 3791 9261 -5412 2 2 0 6 2880 9319 4047 -5413 2 2 0 6 1426 1428 1427 -5414 2 2 0 6 5242 6987 7524 -5415 2 2 0 6 6305 6307 6308 -5416 2 2 0 6 6269 8523 7691 -5417 2 2 0 6 8551 8772 9490 -5418 2 2 0 6 3293 9584 4272 -5419 2 2 0 6 4587 8011 5095 -5420 2 2 0 6 8569 8570 8568 -5421 2 2 0 6 5766 5767 5768 -5422 2 2 0 6 2904 8005 2909 -5423 2 2 0 6 7373 8670 8099 -5424 2 2 0 6 3717 4035 4536 -5425 2 2 0 6 3666 3667 3668 -5426 2 2 0 6 2984 7998 3004 -5427 2 2 0 6 295 296 490 -5428 2 2 0 6 7798 10303 7796 -5429 2 2 0 6 372 8335 418 -5430 2 2 0 6 2776 2914 2777 -5431 2 2 0 6 3072 3075 3074 -5432 2 2 0 6 4252 5177 6125 -5433 2 2 0 6 4676 9031 9032 -5434 2 2 0 6 5555 10146 7628 -5435 2 2 0 6 3155 9106 3926 -5436 2 2 0 6 3549 10126 10200 -5437 2 2 0 6 4245 6170 6169 -5438 2 2 0 6 3700 7889 3702 -5439 2 2 0 6 3738 4119 8318 -5440 2 2 0 6 3339 7649 8131 -5441 2 2 0 6 3078 3079 3080 -5442 2 2 0 6 3285 5423 9111 -5443 2 2 0 6 3515 5536 8947 -5444 2 2 0 6 7868 7869 7867 -5445 2 2 0 6 7552 7553 7554 -5446 2 2 0 6 2757 2761 8486 -5447 2 2 0 6 579 1035 1988 -5448 2 2 0 6 2876 7830 7829 -5449 2 2 0 6 4119 5464 8318 -5450 2 2 0 6 2433 2763 9140 -5451 2 2 0 6 3183 8895 9546 -5452 2 2 0 6 2543 2545 7930 -5453 2 2 0 6 1874 7943 7944 -5454 2 2 0 6 4093 4096 8455 -5455 2 2 0 6 3968 3969 10047 -5456 2 2 0 6 5765 5767 5766 -5457 2 2 0 6 7456 10619 7461 -5458 2 2 0 6 7559 7561 7560 -5459 2 2 0 6 7662 8891 9391 -5460 2 2 0 6 8385 9491 8387 -5461 2 2 0 6 6436 9722 9837 -5462 2 2 0 6 4697 5194 4763 -5463 2 2 0 6 7458 9396 8227 -5464 2 2 0 6 5130 6842 6841 -5465 2 2 0 6 2551 8565 2548 -5466 2 2 0 6 3069 4342 9335 -5467 2 2 0 6 6513 9202 9768 -5468 2 2 0 6 3607 4955 8351 -5469 2 2 0 6 2414 2465 2466 -5470 2 2 0 6 6409 10015 10099 -5471 2 2 0 6 4424 9309 9826 -5472 2 2 0 6 6270 10010 7597 -5473 2 2 0 6 5654 5656 8274 -5474 2 2 0 6 5768 5770 8356 -5475 2 2 0 6 7453 10344 4026 -5476 2 2 0 6 3229 4246 3835 -5477 2 2 0 6 1937 2196 9043 -5478 2 2 0 6 249 250 400 -5479 2 2 0 6 80 474 8374 -5480 2 2 0 6 4586 5093 8725 -5481 2 2 0 6 3256 3257 3255 -5482 2 2 0 6 6124 6806 6808 -5483 2 2 0 6 3020 3021 8389 -5484 2 2 0 6 5439 9397 8510 -5485 2 2 0 6 2679 4343 8259 -5486 2 2 0 6 6378 8281 8280 -5487 2 2 0 6 1955 7773 8826 -5488 2 2 0 6 2883 2886 9451 -5489 2 2 0 6 78 79 8375 -5490 2 2 0 6 3379 9300 8664 -5491 2 2 0 6 5157 6135 5161 -5492 2 2 0 6 3719 8283 4189 -5493 2 2 0 6 88 89 437 -5494 2 2 0 6 5539 5931 10406 -5495 2 2 0 6 3257 3258 3880 -5496 2 2 0 6 4300 5119 4653 -5497 2 2 0 6 2641 2992 2776 -5498 2 2 0 6 4370 8326 4372 -5499 2 2 0 6 4611 8836 6116 -5500 2 2 0 6 7543 8084 8300 -5501 2 2 0 6 3093 8062 10001 -5502 2 2 0 6 3082 3084 3085 -5503 2 2 0 6 4985 8031 5798 -5504 2 2 0 6 5525 8500 8499 -5505 2 2 0 6 1615 1756 9081 -5506 2 2 0 6 2466 2641 2642 -5507 2 2 0 6 5392 5391 5704 -5508 2 2 0 6 5333 7337 9238 -5509 2 2 0 6 6153 6944 6950 -5510 2 2 0 6 3457 8300 8084 -5511 2 2 0 6 1774 9484 1775 -5512 2 2 0 6 4353 4888 9830 -5513 2 2 0 6 6219 8410 6440 -5514 2 2 0 6 6169 6170 6171 -5515 2 2 0 6 5766 5768 7608 -5516 2 2 0 6 2031 2035 8776 -5517 2 2 0 6 1986 2395 1987 -5518 2 2 0 6 8912 10745 10688 -5519 2 2 0 6 7556 7557 7558 -5520 2 2 0 6 5409 5410 5953 -5521 2 2 0 6 1333 7609 2664 -5522 2 2 0 6 1941 8887 3763 -5523 2 2 0 6 2743 2903 2904 -5524 2 2 0 6 2914 3235 2915 -5525 2 2 0 6 3349 8130 3350 -5526 2 2 0 6 7967 7974 9387 -5527 2 2 0 6 3941 4687 3942 -5528 2 2 0 6 4198 9974 5032 -5529 2 2 0 6 5093 6696 8725 -5530 2 2 0 6 4238 8109 5515 -5531 2 2 0 6 8151 8152 8153 -5532 2 2 0 6 3205 4029 9078 -5533 2 2 0 6 2917 4006 8233 -5534 2 2 0 6 7282 11097 9148 -5535 2 2 0 6 1339 1341 1421 -5536 2 2 0 6 1354 8504 3621 -5537 2 2 0 6 2470 3980 2640 -5538 2 2 0 6 4408 6395 8236 -5539 2 2 0 6 2567 2847 8575 -5540 2 2 0 6 8152 8154 8153 -5541 2 2 0 6 8259 8260 8263 -5542 2 2 0 6 3272 8350 3275 -5543 2 2 0 6 8776 9515 9382 -5544 2 2 0 6 1720 8513 1770 -5545 2 2 0 6 3502 3515 8947 -5546 2 2 0 6 1337 1338 1339 -5547 2 2 0 6 2640 2726 2725 -5548 2 2 0 6 6125 6801 7482 -5549 2 2 0 6 3118 8748 4142 -5550 2 2 0 6 4357 4359 4358 -5551 2 2 0 6 3609 8351 4946 -5552 2 2 0 6 2480 4357 4356 -5553 2 2 0 6 1472 8287 8286 -5554 2 2 0 6 2925 3694 9228 -5555 2 2 0 6 3086 3088 3089 -5556 2 2 0 6 5378 7004 6998 -5557 2 2 0 6 8174 8175 9459 -5558 2 2 0 6 569 571 7696 -5559 2 2 0 6 5201 7872 5282 -5560 2 2 0 6 2194 8030 2470 -5561 2 2 0 6 1590 8552 3482 -5562 2 2 0 6 4371 4373 8167 -5563 2 2 0 6 4463 6489 8408 -5564 2 2 0 6 1658 9145 1667 -5565 2 2 0 6 9681 10329 10123 -5566 2 2 0 6 2092 8203 2094 -5567 2 2 0 6 1510 8213 2448 -5568 2 2 0 6 4473 8268 4582 -5569 2 2 0 6 2384 8172 8483 -5570 2 2 0 6 1440 7942 1515 -5571 2 2 0 6 1561 1673 8241 -5572 2 2 0 6 4860 6456 9081 -5573 2 2 0 6 1184 1201 1202 -5574 2 2 0 6 2810 4323 3264 -5575 2 2 0 6 7564 7565 7566 -5576 2 2 0 6 3782 3785 9025 -5577 2 2 0 6 1997 2000 7684 -5578 2 2 0 6 1243 8594 5444 -5579 2 2 0 6 5470 8448 8603 -5580 2 2 0 6 6466 7484 10214 -5581 2 2 0 6 5684 5685 6737 -5582 2 2 0 6 2977 2996 7725 -5583 2 2 0 6 5374 7547 10537 -5584 2 2 0 6 1789 8316 5440 -5585 2 2 0 6 4764 6066 6104 -5586 2 2 0 6 5588 7606 6596 -5587 2 2 0 6 2395 2559 2561 -5588 2 2 0 6 1335 1337 4389 -5589 2 2 0 6 5171 7984 6773 -5590 2 2 0 6 2564 2917 8233 -5591 2 2 0 6 5532 6363 9048 -5592 2 2 0 6 5277 7521 7522 -5593 2 2 0 6 7565 7575 7567 -5594 2 2 0 6 4028 7891 7890 -5595 2 2 0 6 3671 3948 8058 -5596 2 2 0 6 2710 2712 8569 -5597 2 2 0 6 3372 9937 10062 -5598 2 2 0 6 4598 4600 4599 -5599 2 2 0 6 3056 3318 7982 -5600 2 2 0 6 6460 6459 8113 -5601 2 2 0 6 2470 2640 2639 -5602 2 2 0 6 5353 5355 5354 -5603 2 2 0 6 4358 4360 8543 -5604 2 2 0 6 1352 7599 3977 -5605 2 2 0 6 2299 2665 8605 -5606 2 2 0 6 1429 1428 1430 -5607 2 2 0 6 6161 6317 6318 -5608 2 2 0 6 4763 6066 4764 -5609 2 2 0 6 1424 1426 1425 -5610 2 2 0 6 4391 9079 8573 -5611 2 2 0 6 5130 7951 6842 -5612 2 2 0 6 5981 8283 7523 -5613 2 2 0 6 3457 8084 3186 -5614 2 2 0 6 7236 7855 5793 -5615 2 2 0 6 1567 1569 7862 -5616 2 2 0 6 4963 7713 5838 -5617 2 2 0 6 73 74 8144 -5618 2 2 0 6 2888 9988 3799 -5619 2 2 0 6 7561 7563 7562 -5620 2 2 0 6 386 450 8151 -5621 2 2 0 6 765 8423 4350 -5622 2 2 0 6 5654 8274 7803 -5623 2 2 0 6 4936 9745 6646 -5624 2 2 0 6 1469 1472 8286 -5625 2 2 0 6 855 8623 3522 -5626 2 2 0 6 1332 1333 1331 -5627 2 2 0 6 2442 4442 9017 -5628 2 2 0 6 526 8370 8369 -5629 2 2 0 6 616 619 8923 -5630 2 2 0 6 2031 8776 4431 -5631 2 2 0 6 1964 2253 8828 -5632 2 2 0 6 5563 8173 8174 -5633 2 2 0 6 4992 8386 8385 -5634 2 2 0 6 1988 5815 8016 -5635 2 2 0 6 4931 8068 4933 -5636 2 2 0 6 4251 5161 7708 -5637 2 2 0 6 2761 8487 8486 -5638 2 2 0 6 3769 10024 7508 -5639 2 2 0 6 3977 7552 7551 -5640 2 2 0 6 4343 8260 8259 -5641 2 2 0 6 5346 8326 8327 -5642 2 2 0 6 2920 9177 8992 -5643 2 2 0 6 2206 9433 2319 -5644 2 2 0 6 2244 8888 8456 -5645 2 2 0 6 3120 3123 8748 -5646 2 2 0 6 4811 8872 4813 -5647 2 2 0 6 2194 2470 2469 -5648 2 2 0 6 1487 4107 3358 -5649 2 2 0 6 2517 8294 8296 -5650 2 2 0 6 7623 7624 7625 -5651 2 2 0 6 8699 10336 10359 -5652 2 2 0 6 3882 4686 4684 -5653 2 2 0 6 3948 5402 5403 -5654 2 2 0 6 3248 4328 7834 -5655 2 2 0 6 3736 5518 8773 -5656 2 2 0 6 8816 9022 9013 -5657 2 2 0 6 3949 9593 8429 -5658 2 2 0 6 2537 2539 7884 -5659 2 2 0 6 2020 8723 4346 -5660 2 2 0 6 5617 6453 9609 -5661 2 2 0 6 1333 1334 1335 -5662 2 2 0 6 5730 6557 8741 -5663 2 2 0 6 4234 4664 5122 -5664 2 2 0 6 4927 8630 4929 -5665 2 2 0 6 3780 9254 3783 -5666 2 2 0 6 2585 2690 8313 -5667 2 2 0 6 4748 5561 8820 -5668 2 2 0 6 3082 3083 3084 -5669 2 2 0 6 5172 6137 7818 -5670 2 2 0 6 194 465 7828 -5671 2 2 0 6 853 3522 9865 -5672 2 2 0 6 4491 9866 6552 -5673 2 2 0 6 451 7876 7877 -5674 2 2 0 6 4140 4705 7903 -5675 2 2 0 6 3116 8910 3119 -5676 2 2 0 6 4091 9181 4095 -5677 2 2 0 6 1949 8491 6508 -5678 2 2 0 6 2738 7996 2994 -5679 2 2 0 6 4298 4299 5299 -5680 2 2 0 6 1879 1974 9475 -5681 2 2 0 6 6464 7613 10161 -5682 2 2 0 6 7735 10712 10702 -5683 2 2 0 6 2914 3832 3235 -5684 2 2 0 6 3028 8118 8420 -5685 2 2 0 6 6159 6161 6160 -5686 2 2 0 6 8701 8703 9338 -5687 2 2 0 6 2636 9738 8548 -5688 2 2 0 6 977 10101 4133 -5689 2 2 0 6 4355 9595 4890 -5690 2 2 0 6 5656 5667 8274 -5691 2 2 0 6 2990 2991 7848 -5692 2 2 0 6 6145 7925 6951 -5693 2 2 0 6 3408 9274 3409 -5694 2 2 0 6 6848 6849 7446 -5695 2 2 0 6 2434 8433 8612 -5696 2 2 0 6 4547 5779 8744 -5697 2 2 0 6 6370 8838 8576 -5698 2 2 0 6 2562 2563 2807 -5699 2 2 0 6 2794 8042 7976 -5700 2 2 0 6 410 8305 8304 -5701 2 2 0 6 2839 2842 2840 -5702 2 2 0 6 1946 6508 8158 -5703 2 2 0 6 770 8638 10699 -5704 2 2 0 6 4002 8955 8392 -5705 2 2 0 6 2642 2776 2777 -5706 2 2 0 6 7534 10237 10007 -5707 2 2 0 6 2740 3324 2742 -5708 2 2 0 6 5493 7262 7489 -5709 2 2 0 6 3838 4243 4242 -5710 2 2 0 6 7217 7218 7219 -5711 2 2 0 6 3781 8027 8867 -5712 2 2 0 6 5588 9447 7607 -5713 2 2 0 6 7587 9603 9314 -5714 2 2 0 6 5472 8603 6130 -5715 2 2 0 6 5187 5190 6163 -5716 2 2 0 6 1915 4408 8236 -5717 2 2 0 6 3043 8013 3044 -5718 2 2 0 6 2199 8669 4057 -5719 2 2 0 6 4511 4512 9263 -5720 2 2 0 6 5950 10777 10731 -5721 2 2 0 6 1052 8441 8417 -5722 2 2 0 6 1770 8513 9397 -5723 2 2 0 6 381 7771 506 -5724 2 2 0 6 1335 1336 1337 -5725 2 2 0 6 1972 2326 2211 -5726 2 2 0 6 3074 3076 3077 -5727 2 2 0 6 3092 3094 3093 -5728 2 2 0 6 2541 2543 7929 -5729 2 2 0 6 1081 4347 8488 -5730 2 2 0 6 4716 9313 4717 -5731 2 2 0 6 2090 9026 4983 -5732 2 2 0 6 2742 2903 2743 -5733 2 2 0 6 573 4273 571 -5734 2 2 0 6 4178 10376 10391 -5735 2 2 0 6 2517 2423 8294 -5736 2 2 0 6 1784 8805 1878 -5737 2 2 0 6 1708 8930 1707 -5738 2 2 0 6 2435 9140 3655 -5739 2 2 0 6 4326 5426 8093 -5740 2 2 0 6 4255 5427 5428 -5741 2 2 0 6 5180 6944 6153 -5742 2 2 0 6 2779 3337 2998 -5743 2 2 0 6 5276 8465 8464 -5744 2 2 0 6 4753 5946 9987 -5745 2 2 0 6 5304 9287 7079 -5746 2 2 0 6 4340 5966 8801 -5747 2 2 0 6 4211 9058 4413 -5748 2 2 0 6 3797 4250 9572 -5749 2 2 0 6 4108 4107 5041 -5750 2 2 0 6 6311 6723 6722 -5751 2 2 0 6 5331 7257 7256 -5752 2 2 0 6 1992 1993 1994 -5753 2 2 0 6 192 507 7875 -5754 2 2 0 6 2217 8442 2219 -5755 2 2 0 6 3498 9016 7060 -5756 2 2 0 6 3333 9160 8922 -5757 2 2 0 6 9309 9802 9924 -5758 2 2 0 6 3526 3527 9069 -5759 2 2 0 6 2024 2025 8727 -5760 2 2 0 6 1264 1508 8454 -5761 2 2 0 6 7563 7565 7564 -5762 2 2 0 6 3088 3090 3089 -5763 2 2 0 6 2624 2778 7749 -5764 2 2 0 6 3158 8173 4368 -5765 2 2 0 6 1859 3387 8606 -5766 2 2 0 6 1447 1449 1448 -5767 2 2 0 6 1451 1453 1452 -5768 2 2 0 6 5351 6123 6124 -5769 2 2 0 6 6301 6303 6304 -5770 2 2 0 6 875 4141 7859 -5771 2 2 0 6 5060 8238 5933 -5772 2 2 0 6 1430 1432 1431 -5773 2 2 0 6 4356 6341 8984 -5774 2 2 0 6 7707 9273 10141 -5775 2 2 0 6 1203 7948 1231 -5776 2 2 0 6 4767 5269 8459 -5777 2 2 0 6 2196 2495 9043 -5778 2 2 0 6 6738 7485 9301 -5779 2 2 0 6 3085 10284 7269 -5780 2 2 0 6 7499 10732 7658 -5781 2 2 0 6 4320 5164 10036 -5782 2 2 0 6 4341 8805 10420 -5783 2 2 0 6 5344 8321 7735 -5784 2 2 0 6 1970 8732 2251 -5785 2 2 0 6 5560 9806 10064 -5786 2 2 0 6 1333 2664 1331 -5787 2 2 0 6 1324 1444 1443 -5788 2 2 0 6 4506 4508 7857 -5789 2 2 0 6 2909 8005 3216 -5790 2 2 0 6 5197 7780 7053 -5791 2 2 0 6 2662 2876 7829 -5792 2 2 0 6 7240 7241 10937 -5793 2 2 0 6 5410 6564 5953 -5794 2 2 0 6 3595 4009 8656 -5795 2 2 0 6 1271 1305 9544 -5796 2 2 0 6 4664 6143 5122 -5797 2 2 0 6 3015 7825 9757 -5798 2 2 0 6 1160 1329 9885 -5799 2 2 0 6 6662 6663 6664 -5800 2 2 0 6 3838 7517 4243 -5801 2 2 0 6 3797 3829 4250 -5802 2 2 0 6 93 94 8143 -5803 2 2 0 6 2800 7927 9273 -5804 2 2 0 6 4013 4329 4103 -5805 2 2 0 6 5382 6348 7660 -5806 2 2 0 6 3236 3496 3495 -5807 2 2 0 6 1440 1538 7942 -5808 2 2 0 6 4971 4974 4973 -5809 2 2 0 6 4691 6166 6165 -5810 2 2 0 6 3483 9111 7871 -5811 2 2 0 6 3096 3098 3097 -5812 2 2 0 6 2903 4136 3724 -5813 2 2 0 6 8328 8329 10283 -5814 2 2 0 6 6317 7263 6318 -5815 2 2 0 6 640 643 8936 -5816 2 2 0 6 5134 6345 10333 -5817 2 2 0 6 4137 4697 4763 -5818 2 2 0 6 4950 8317 5009 -5819 2 2 0 6 3481 8430 8862 -5820 2 2 0 6 8898 9419 8897 -5821 2 2 0 6 3528 8767 7938 -5822 2 2 0 6 8958 9725 9735 -5823 2 2 0 6 1068 3365 8256 -5824 2 2 0 6 2333 8685 2563 -5825 2 2 0 6 8380 9161 8381 -5826 2 2 0 6 2297 2299 8605 -5827 2 2 0 6 2336 7729 2493 -5828 2 2 0 6 4463 8408 4715 -5829 2 2 0 6 4471 4582 8734 -5830 2 2 0 6 2129 2333 2130 -5831 2 2 0 6 7571 7576 7572 -5832 2 2 0 6 3422 8822 9315 -5833 2 2 0 6 367 8284 514 -5834 2 2 0 6 1788 5372 1911 -5835 2 2 0 6 1886 8494 8613 -5836 2 2 0 6 2085 7807 5421 -5837 2 2 0 6 3724 4136 4137 -5838 2 2 0 6 269 270 8561 -5839 2 2 0 6 67 68 8230 -5840 2 2 0 6 4305 7916 5118 -5841 2 2 0 6 4401 9541 8172 -5842 2 2 0 6 4358 4359 4360 -5843 2 2 0 6 4063 4992 8385 -5844 2 2 0 6 3496 3801 3497 -5845 2 2 0 6 6456 10064 9806 -5846 2 2 0 6 3969 3971 4682 -5847 2 2 0 6 8985 9906 9921 -5848 2 2 0 6 5735 10100 6477 -5849 2 2 0 6 8616 10826 8797 -5850 2 2 0 6 86 87 505 -5851 2 2 0 6 2569 8575 8654 -5852 2 2 0 6 2000 2001 5391 -5853 2 2 0 6 2476 2778 2624 -5854 2 2 0 6 3858 8186 3860 -5855 2 2 0 6 4813 8872 5318 -5856 2 2 0 6 6301 6304 8028 -5857 2 2 0 6 2201 8592 2364 -5858 2 2 0 6 2740 2742 2741 -5859 2 2 0 6 4999 6645 6644 -5860 2 2 0 6 8419 3028 8663 -5861 2 2 0 6 719 3510 8640 -5862 2 2 0 6 2052 2053 8743 -5863 2 2 0 6 7560 7561 7562 -5864 2 2 0 6 4886 8455 5555 -5865 2 2 0 6 2201 4057 8592 -5866 2 2 0 6 2712 8570 8569 -5867 2 2 0 6 8198 9129 9130 -5868 2 2 0 6 382 383 438 -5869 2 2 0 6 2671 3757 8719 -5870 2 2 0 6 6146 6299 6300 -5871 2 2 0 6 5224 6985 5226 -5872 2 2 0 6 92 448 7939 -5873 2 2 0 6 665 9201 9063 -5874 2 2 0 6 4253 4666 5469 -5875 2 2 0 6 1992 1994 2809 -5876 2 2 0 6 4595 4598 4599 -5877 2 2 0 6 4684 4686 5187 -5878 2 2 0 6 5241 6987 5242 -5879 2 2 0 6 3977 7599 7553 -5880 2 2 0 6 1876 1986 1877 -5881 2 2 0 6 5185 6980 6979 -5882 2 2 0 6 6547 10285 9715 -5883 2 2 0 6 2481 2654 8409 -5884 2 2 0 6 5436 9186 6415 -5885 2 2 0 6 1302 1324 1323 -5886 2 2 0 6 5405 6059 7681 -5887 2 2 0 6 1500 3687 7959 -5888 2 2 0 6 3232 3824 8232 -5889 2 2 0 6 2863 3332 3334 -5890 2 2 0 6 2006 2027 3339 -5891 2 2 0 6 1214 1229 8206 -5892 2 2 0 6 1395 1398 8529 -5893 2 2 0 6 1978 9363 9310 -5894 2 2 0 6 76 77 8849 -5895 2 2 0 6 4356 4357 4358 -5896 2 2 0 6 4331 9559 8082 -5897 2 2 0 6 2991 3072 3073 -5898 2 2 0 6 573 5588 4273 -5899 2 2 0 6 2332 8145 8146 -5900 2 2 0 6 5668 7804 9463 -5901 2 2 0 6 8289 9490 8772 -5902 2 2 0 6 4684 8200 4685 -5903 2 2 0 6 1857 1859 8606 -5904 2 2 0 6 1849 9958 1961 -5905 2 2 0 6 71 72 8142 -5906 2 2 0 6 8972 10325 10330 -5907 2 2 0 6 3078 3080 3081 -5908 2 2 0 6 4508 6535 7857 -5909 2 2 0 6 8172 9541 8483 -5910 2 2 0 6 2328 2480 4356 -5911 2 2 0 6 1800 10875 10860 -5912 2 2 0 6 6123 6806 6124 -5913 2 2 0 6 5448 7987 8463 -5914 2 2 0 6 4588 7920 4589 -5915 2 2 0 6 638 640 8936 -5916 2 2 0 6 3020 8389 9217 -5917 2 2 0 6 1423 1424 1425 -5918 2 2 0 6 2067 8940 2081 -5919 2 2 0 6 3965 4253 4254 -5920 2 2 0 6 3882 4684 3883 -5921 2 2 0 6 5580 8670 7373 -5922 2 2 0 6 1307 8165 1306 -5923 2 2 0 6 4392 8249 8250 -5924 2 2 0 6 5909 8148 8147 -5925 2 2 0 6 4514 8187 3864 -5926 2 2 0 6 95 96 8629 -5927 2 2 0 6 6380 9006 9418 -5928 2 2 0 6 1433 1432 1435 -5929 2 2 0 6 5380 6754 8043 -5930 2 2 0 6 2259 4901 8017 -5931 2 2 0 6 2075 9127 8205 -5932 2 2 0 6 4494 5092 6513 -5933 2 2 0 6 4004 8108 5443 -5934 2 2 0 6 979 983 988 -5935 2 2 0 6 2382 7887 2411 -5936 2 2 0 6 1391 8728 1394 -5937 2 2 0 6 4483 4485 8846 -5938 2 2 0 6 2027 5493 3339 -5939 2 2 0 6 7097 5361 7745 -5940 2 2 0 6 8511 8514 10216 -5941 2 2 0 6 6879 7432 7433 -5942 2 2 0 6 3573 11216 11219 -5943 2 2 0 6 7530 8867 8027 -5944 2 2 0 6 2258 7861 4348 -5945 2 2 0 6 5063 6662 6661 -5946 2 2 0 6 5910 6672 7144 -5947 2 2 0 6 2583 2585 8313 -5948 2 2 0 6 8281 10005 9795 -5949 2 2 0 6 3616 9409 9145 -5950 2 2 0 6 4514 8182 8183 -5951 2 2 0 6 1598 7952 9055 -5952 2 2 0 6 4410 7686 7685 -5953 2 2 0 6 5475 9373 9213 -5954 2 2 0 6 1430 1434 7900 -5955 2 2 0 6 2104 9206 9797 -5956 2 2 0 6 4360 4359 4361 -5957 2 2 0 6 3681 8231 3944 -5958 2 2 0 6 6408 8833 8227 -5959 2 2 0 6 2094 2095 2093 -5960 2 2 0 6 2506 2667 2939 -5961 2 2 0 6 4071 8535 9771 -5962 2 2 0 6 3801 4664 4234 -5963 2 2 0 6 7865 7867 7866 -5964 2 2 0 6 3021 3024 8389 -5965 2 2 0 6 2816 3028 8420 -5966 2 2 0 6 4705 5670 7903 -5967 2 2 0 6 2464 7997 9413 -5968 2 2 0 6 8478 9132 9133 -5969 2 2 0 6 3801 4234 3802 -5970 2 2 0 6 2416 4691 6165 -5971 2 2 0 6 4508 5039 6535 -5972 2 2 0 6 384 508 7856 -5973 2 2 0 6 7476 7478 7477 -5974 2 2 0 6 6012 8012 8011 -5975 2 2 0 6 1469 1471 1472 -5976 2 2 0 6 4361 4362 4680 -5977 2 2 0 6 1445 1446 1447 -5978 2 2 0 6 65 66 8234 -5979 2 2 0 6 5736 9871 8985 -5980 2 2 0 6 1421 1422 1423 -5981 2 2 0 6 6047 6049 6277 -5982 2 2 0 6 4545 5189 5321 -5983 2 2 0 6 5258 6990 5259 -5984 2 2 0 6 6341 8145 8984 -5985 2 2 0 6 9408 9936 10081 -5986 2 2 0 6 6724 6723 7170 -5987 2 2 0 6 1964 8828 5463 -5988 2 2 0 6 2255 7756 7773 -5989 2 2 0 6 4686 9757 6296 -5990 2 2 0 6 1305 1322 3381 -5991 2 2 0 6 3678 8662 3681 -5992 2 2 0 6 6373 6374 9750 -5993 2 2 0 6 4334 9311 10003 -5994 2 2 0 6 3205 9078 3698 -5995 2 2 0 6 2579 2580 8245 -5996 2 2 0 6 767 10289 10160 -5997 2 2 0 6 1685 1716 9454 -5998 2 2 0 6 3687 3688 4097 -5999 2 2 0 6 4954 8110 8777 -6000 2 2 0 6 4373 8661 8167 -6001 2 2 0 6 1708 1711 8930 -6002 2 2 0 6 63 64 8247 -6003 2 2 0 6 75 76 8489 -6004 2 2 0 6 1626 1629 8428 -6005 2 2 0 6 1494 10597 6638 -6006 2 2 0 6 2230 2509 2508 -6007 2 2 0 6 2033 2068 8854 -6008 2 2 0 6 3283 9467 4073 -6009 2 2 0 6 4329 5063 5062 -6010 2 2 0 6 5643 7915 7913 -6011 2 2 0 6 508 8151 8153 -6012 2 2 0 6 2487 10075 9011 -6013 2 2 0 6 5041 5345 6047 -6014 2 2 0 6 5103 6081 7651 -6015 2 2 0 6 4712 6137 5172 -6016 2 2 0 6 4163 5872 8020 -6017 2 2 0 6 821 9123 823 -6018 2 2 0 6 5452 6389 9691 -6019 2 2 0 6 5442 5683 5684 -6020 2 2 0 6 3649 5858 8803 -6021 2 2 0 6 573 9447 5588 -6022 2 2 0 6 3257 3880 9542 -6023 2 2 0 6 3512 9843 8940 -6024 2 2 0 6 5297 7196 7195 -6025 2 2 0 6 5010 6324 7528 -6026 2 2 0 6 4537 5319 8871 -6027 2 2 0 6 3995 4862 8830 -6028 2 2 0 6 3481 8862 8663 -6029 2 2 0 6 4136 4697 4137 -6030 2 2 0 6 5126 7986 7985 -6031 2 2 0 6 1476 1477 8539 -6032 2 2 0 6 2138 2140 2332 -6033 2 2 0 6 2994 3232 2995 -6034 2 2 0 6 4997 5917 7647 -6035 2 2 0 6 5877 8302 8303 -6036 2 2 0 6 7218 9954 7275 -6037 2 2 0 6 8203 8204 10009 -6038 2 2 0 6 2698 2980 8082 -6039 2 2 0 6 5808 6119 7758 -6040 2 2 0 6 1062 1066 8235 -6041 2 2 0 6 3408 8044 9274 -6042 2 2 0 6 4326 4746 5426 -6043 2 2 0 6 5225 6254 6983 -6044 2 2 0 6 5542 7945 7425 -6045 2 2 0 6 3232 3839 3233 -6046 2 2 0 6 90 91 511 -6047 2 2 0 6 4669 6154 8164 -6048 2 2 0 6 2318 2621 8199 -6049 2 2 0 6 2103 2104 2112 -6050 2 2 0 6 2493 2839 2838 -6051 2 2 0 6 5684 6737 6738 -6052 2 2 0 6 4479 5816 8157 -6053 2 2 0 6 179 8558 477 -6054 2 2 0 6 1240 1264 8454 -6055 2 2 0 6 4342 8360 8365 -6056 2 2 0 6 8769 8771 8770 -6057 2 2 0 6 5975 5977 9706 -6058 2 2 0 6 3076 3079 3078 -6059 2 2 0 6 7662 9391 9863 -6060 2 2 0 6 4310 9661 10923 -6061 2 2 0 6 6012 5772 10179 -6062 2 2 0 6 2043 2046 7950 -6063 2 2 0 6 4055 4506 5552 -6064 2 2 0 6 5606 6155 6156 -6065 2 2 0 6 6350 7950 8117 -6066 2 2 0 6 2807 2808 3014 -6067 2 2 0 6 5308 7198 7199 -6068 2 2 0 6 5632 9413 9336 -6069 2 2 0 6 1425 1426 1427 -6070 2 2 0 6 411 8401 8400 -6071 2 2 0 6 982 8642 993 -6072 2 2 0 6 3080 3083 3082 -6073 2 2 0 6 1444 1446 1445 -6074 2 2 0 6 6088 6089 6090 -6075 2 2 0 6 69 70 8161 -6076 2 2 0 6 6312 6315 7203 -6077 2 2 0 6 3934 4574 4575 -6078 2 2 0 6 8424 8960 9200 -6079 2 2 0 6 8178 9478 9246 -6080 2 2 0 6 1016 8679 3451 -6081 2 2 0 6 1447 1450 1449 -6082 2 2 0 6 4590 6037 8119 -6083 2 2 0 6 5063 8764 6663 -6084 2 2 0 6 2659 2658 2740 -6085 2 2 0 6 1928 8273 2249 -6086 2 2 0 6 6590 10391 10376 -6087 2 2 0 6 194 195 465 -6088 2 2 0 6 7928 9342 8412 -6089 2 2 0 6 2114 4493 2129 -6090 2 2 0 6 5180 6153 5181 -6091 2 2 0 6 380 381 506 -6092 2 2 0 6 3465 8463 3468 -6093 2 2 0 6 4580 5271 5992 -6094 2 2 0 6 1449 1450 1451 -6095 2 2 0 6 4360 4361 4363 -6096 2 2 0 6 4941 8110 4954 -6097 2 2 0 6 4978 8283 5981 -6098 2 2 0 6 2347 9321 2348 -6099 2 2 0 6 4405 8136 9686 -6100 2 2 0 6 2112 2113 2137 -6101 2 2 0 6 3864 3866 3865 -6102 2 2 0 6 4805 8450 8452 -6103 2 2 0 6 2911 9836 7667 -6104 2 2 0 6 7567 7571 7568 -6105 2 2 0 6 2998 7672 3229 -6106 2 2 0 6 7311 7762 7763 -6107 2 2 0 6 5424 5925 7821 -6108 2 2 0 6 4357 5492 8097 -6109 2 2 0 6 2219 8442 2955 -6110 2 2 0 6 839 3569 8462 -6111 2 2 0 6 3738 8318 9091 -6112 2 2 0 6 4301 4654 5283 -6113 2 2 0 6 2616 3058 2658 -6114 2 2 0 6 4587 6012 8011 -6115 2 2 0 6 4378 8770 5320 -6116 2 2 0 6 2101 2103 2099 -6117 2 2 0 6 2741 2742 2743 -6118 2 2 0 6 4154 4156 8208 -6119 2 2 0 6 4582 8270 8734 -6120 2 2 0 6 2114 2129 2115 -6121 2 2 0 6 2899 4013 3196 -6122 2 2 0 6 2842 3253 2843 -6123 2 2 0 6 3662 8108 4004 -6124 2 2 0 6 3024 8135 8389 -6125 2 2 0 6 1655 3508 8839 -6126 2 2 0 6 6287 7505 7439 -6127 2 2 0 6 4605 7838 7837 -6128 2 2 0 6 1139 1157 4131 -6129 2 2 0 6 5172 5180 5173 -6130 2 2 0 6 3778 3781 8867 -6131 2 2 0 6 2725 2726 2990 -6132 2 2 0 6 1270 8120 1284 -6133 2 2 0 6 2022 2026 8723 -6134 2 2 0 6 3452 3717 2939 -6135 2 2 0 6 5063 6663 6662 -6136 2 2 0 6 3681 8662 8231 -6137 2 2 0 6 3813 9316 3812 -6138 2 2 0 6 4238 5515 4669 -6139 2 2 0 6 4613 5606 9764 -6140 2 2 0 6 190 451 7878 -6141 2 2 0 6 969 3656 9728 -6142 2 2 0 6 8121 9995 8528 -6143 2 2 0 6 1939 8669 2199 -6144 2 2 0 6 4731 5773 8282 -6145 2 2 0 6 1455 1457 1456 -6146 2 2 0 6 8241 8439 8438 -6147 2 2 0 6 5407 9967 8560 -6148 2 2 0 6 4821 8188 8189 -6149 2 2 0 6 4376 8768 8770 -6150 2 2 0 6 1778 1874 1826 -6151 2 2 0 6 4605 8063 7838 -6152 2 2 0 6 3385 5724 9021 -6153 2 2 0 6 3465 3467 8463 -6154 2 2 0 6 3103 8102 3937 -6155 2 2 0 6 8477 9132 8478 -6156 2 2 0 6 1485 1487 1484 -6157 2 2 0 6 3014 3882 3312 -6158 2 2 0 6 4441 5701 9873 -6159 2 2 0 6 3103 3937 3936 -6160 2 2 0 6 2977 7725 2979 -6161 2 2 0 6 3068 8214 3932 -6162 2 2 0 6 1972 2211 2210 -6163 2 2 0 6 4245 6169 6168 -6164 2 2 0 6 1427 1428 1429 -6165 2 2 0 6 3871 3872 3873 -6166 2 2 0 6 6596 7606 10571 -6167 2 2 0 6 5 6 563 -6168 2 2 0 6 2137 2138 7833 -6169 2 2 0 6 192 193 507 -6170 2 2 0 6 5642 5643 7913 -6171 2 2 0 6 2766 4067 8378 -6172 2 2 0 6 2915 3235 3236 -6173 2 2 0 6 5142 5144 6126 -6174 2 2 0 6 2361 2506 7881 -6175 2 2 0 6 4514 8181 8182 -6176 2 2 0 6 6663 8764 7472 -6177 2 2 0 6 4536 4572 4537 -6178 2 2 0 6 1994 7617 2810 -6179 2 2 0 6 8270 8735 8734 -6180 2 2 0 6 1947 4438 8643 -6181 2 2 0 6 3334 3933 3934 -6182 2 2 0 6 2472 8636 7997 -6183 2 2 0 6 5217 7781 7780 -6184 2 2 0 6 5652 5654 7803 -6185 2 2 0 6 3089 3090 9678 -6186 2 2 0 6 2624 2779 2625 -6187 2 2 0 6 3671 3946 3948 -6188 2 2 0 6 2948 8861 3327 -6189 2 2 0 6 8987 8989 8988 -6190 2 2 0 6 3908 8761 9237 -6191 2 2 0 6 7838 8063 7841 -6192 2 2 0 6 5445 5885 8447 -6193 2 2 0 6 442 7218 7217 -6194 2 2 0 6 4235 8109 4238 -6195 2 2 0 6 6567 8676 7486 -6196 2 2 0 6 1072 1074 8488 -6197 2 2 0 6 4245 7548 6170 -6198 2 2 0 6 181 427 8557 -6199 2 2 0 6 6391 8812 8811 -6200 2 2 0 6 4822 5497 9185 -6201 2 2 0 6 1473 1475 1476 -6202 2 2 0 6 4689 5258 4774 -6203 2 2 0 6 5681 5943 5979 -6204 2 2 0 6 6737 6794 6738 -6205 2 2 0 6 729 8697 4417 -6206 2 2 0 6 4203 8867 7530 -6207 2 2 0 6 2081 8940 2128 -6208 2 2 0 6 1623 1725 9727 -6209 2 2 0 6 3866 3868 3867 -6210 2 2 0 6 1150 1162 7962 -6211 2 2 0 6 8616 8797 8796 -6212 2 2 0 6 7587 9314 7896 -6213 2 2 0 6 3637 7648 9794 -6214 2 2 0 6 2088 2089 2087 -6215 2 2 0 6 3086 3087 3088 -6216 2 2 0 6 1197 1214 3354 -6217 2 2 0 6 5041 6047 6048 -6218 2 2 0 6 6663 7245 6664 -6219 2 2 0 6 2094 2096 2095 -6220 2 2 0 6 3981 4853 8833 -6221 2 2 0 6 4749 7083 8461 -6222 2 2 0 6 4509 7950 6350 -6223 2 2 0 6 4380 8476 4382 -6224 2 2 0 6 6071 9337 9724 -6225 2 2 0 6 8184 10034 8183 -6226 2 2 0 6 4156 8937 8208 -6227 2 2 0 6 3812 4332 4331 -6228 2 2 0 6 4026 10245 10317 -6229 2 2 0 6 4522 5351 8078 -6230 2 2 0 6 377 378 430 -6231 2 2 0 6 1029 1036 1280 -6232 2 2 0 6 3877 3982 3983 -6233 2 2 0 6 1435 1440 1436 -6234 2 2 0 6 2085 2086 2087 -6235 2 2 0 6 2333 2562 2334 -6236 2 2 0 6 1422 3308 1424 -6237 2 2 0 6 5515 6840 6154 -6238 2 2 0 6 161 8322 403 -6239 2 2 0 6 4097 4588 4589 -6240 2 2 0 6 1105 8175 1137 -6241 2 2 0 6 3472 8515 8516 -6242 2 2 0 6 2710 8569 2713 -6243 2 2 0 6 1013 8679 1016 -6244 2 2 0 6 2946 8861 2948 -6245 2 2 0 6 5501 9277 8887 -6246 2 2 0 6 7321 7322 7312 -6247 2 2 0 6 1147 8522 5478 -6248 2 2 0 6 3512 9555 9843 -6249 2 2 0 6 2328 2329 2480 -6250 2 2 0 6 4560 8321 5344 -6251 2 2 0 6 4589 7920 7921 -6252 2 2 0 6 4099 8360 4342 -6253 2 2 0 6 1484 1487 3358 -6254 2 2 0 6 3008 3254 3255 -6255 2 2 0 6 1245 5445 8447 -6256 2 2 0 6 7445 7444 7690 -6257 2 2 0 6 1892 10118 8917 -6258 2 2 0 6 1435 1538 1440 -6259 2 2 0 6 8557 8559 8558 -6260 2 2 0 6 6170 6854 6853 -6261 2 2 0 6 3558 9187 3642 -6262 2 2 0 6 2258 2456 2632 -6263 2 2 0 6 4464 4467 8098 -6264 2 2 0 6 4911 9051 9036 -6265 2 2 0 6 5703 9780 9705 -6266 2 2 0 6 1006 1018 5397 -6267 2 2 0 6 2998 3229 2999 -6268 2 2 0 6 5077 6657 7816 -6269 2 2 0 6 1239 1263 1240 -6270 2 2 0 6 3462 3466 8398 -6271 2 2 0 6 5051 8066 9102 -6272 2 2 0 6 2427 2555 8293 -6273 2 2 0 6 2650 9253 3040 -6274 2 2 0 6 805 10527 10530 -6275 2 2 0 6 190 191 451 -6276 2 2 0 6 5485 6759 7583 -6277 2 2 0 6 613 610 8901 -6278 2 2 0 6 1656 3616 9145 -6279 2 2 0 6 6988 7366 7264 -6280 2 2 0 6 6406 9141 9267 -6281 2 2 0 6 2097 2095 2105 -6282 2 2 0 6 1820 8079 1821 -6283 2 2 0 6 3861 3860 3862 -6284 2 2 0 6 3757 4594 4595 -6285 2 2 0 6 2129 8685 2333 -6286 2 2 0 6 7322 7325 7324 -6287 2 2 0 6 1027 8665 8666 -6288 2 2 0 6 4600 5910 5909 -6289 2 2 0 6 2397 8599 2566 -6290 2 2 0 6 715 719 8640 -6291 2 2 0 6 2058 10589 10499 -6292 2 2 0 6 1440 1515 1441 -6293 2 2 0 6 2616 2658 2617 -6294 2 2 0 6 2483 8045 8015 -6295 2 2 0 6 4253 5469 7916 -6296 2 2 0 6 2364 8592 2771 -6297 2 2 0 6 2922 5509 8841 -6298 2 2 0 6 8353 8354 8355 -6299 2 2 0 6 4309 6550 8368 -6300 2 2 0 6 4804 8450 4805 -6301 2 2 0 6 171 8371 524 -6302 2 2 0 6 4243 7517 10885 -6303 2 2 0 6 1240 1263 1264 -6304 2 2 0 6 3963 3964 3965 -6305 2 2 0 6 2623 3596 8298 -6306 2 2 0 6 4175 5721 9211 -6307 2 2 0 6 4403 8139 9973 -6308 2 2 0 6 1233 10437 10282 -6309 2 2 0 6 3951 4281 4759 -6310 2 2 0 6 2840 2842 2843 -6311 2 2 0 6 3669 3833 8080 -6312 2 2 0 6 1347 1349 1350 -6313 2 2 0 6 4599 4600 5909 -6314 2 2 0 6 7907 7980 7981 -6315 2 2 0 6 5153 6815 6814 -6316 2 2 0 6 5323 10426 8397 -6317 2 2 0 6 6854 6856 6855 -6318 2 2 0 6 6302 7852 7850 -6319 2 2 0 6 4332 5142 4333 -6320 2 2 0 6 2839 5387 2842 -6321 2 2 0 6 5023 5968 7674 -6322 2 2 0 6 2256 7997 2464 -6323 2 2 0 6 5547 5549 8392 -6324 2 2 0 6 1691 1685 9454 -6325 2 2 0 6 1461 1463 1464 -6326 2 2 0 6 7553 7580 7555 -6327 2 2 0 6 2265 2267 10032 -6328 2 2 0 6 5408 7986 8857 -6329 2 2 0 6 1945 2246 1947 -6330 2 2 0 6 3840 3964 3963 -6331 2 2 0 6 3387 9223 9035 -6332 2 2 0 6 3717 4536 4537 -6333 2 2 0 6 4682 4683 5224 -6334 2 2 0 6 2648 8139 2677 -6335 2 2 0 6 5198 6181 8659 -6336 2 2 0 6 3322 6245 7536 -6337 2 2 0 6 4000 4630 8202 -6338 2 2 0 6 3062 9575 9847 -6339 2 2 0 6 2105 2114 2106 -6340 2 2 0 6 4685 5241 4844 -6341 2 2 0 6 1310 6638 8694 -6342 2 2 0 6 3505 9961 9344 -6343 2 2 0 6 1991 1993 1992 -6344 2 2 0 6 3662 4007 8108 -6345 2 2 0 6 8188 8190 8189 -6346 2 2 0 6 2754 2757 8486 -6347 2 2 0 6 1329 1330 1331 -6348 2 2 0 6 4035 5010 4536 -6349 2 2 0 6 649 8617 650 -6350 2 2 0 6 4910 8670 5580 -6351 2 2 0 6 1263 1276 1264 -6352 2 2 0 6 260 529 8458 -6353 2 2 0 6 2407 8555 3006 -6354 2 2 0 6 2342 8878 2570 -6355 2 2 0 6 7882 7884 9790 -6356 2 2 0 6 3358 4107 4108 -6357 2 2 0 6 166 526 8369 -6358 2 2 0 6 187 8022 435 -6359 2 2 0 6 5670 6697 6698 -6360 2 2 0 6 1238 1239 1240 -6361 2 2 0 6 1264 1276 1277 -6362 2 2 0 6 4593 5103 6061 -6363 2 2 0 6 5469 6846 7645 -6364 2 2 0 6 7890 7891 7892 -6365 2 2 0 6 4862 5438 8830 -6366 2 2 0 6 6411 9667 9403 -6367 2 2 0 6 3151 10104 10174 -6368 2 2 0 6 705 11199 11191 -6369 2 2 0 6 1968 2188 2258 -6370 2 2 0 6 2809 2810 3263 -6371 2 2 0 6 3312 3882 3883 -6372 2 2 0 6 3785 4112 4115 -6373 2 2 0 6 6981 6982 7003 -6374 2 2 0 6 164 454 8366 -6375 2 2 0 6 5507 9063 9201 -6376 2 2 0 6 1093 1132 9387 -6377 2 2 0 6 4916 9810 9379 -6378 2 2 0 6 8740 10043 10833 -6379 2 2 0 6 2547 7886 7885 -6380 2 2 0 6 4314 4316 4315 -6381 2 2 0 6 3461 8720 3464 -6382 2 2 0 6 1453 1454 1455 -6383 2 2 0 6 2632 2738 2994 -6384 2 2 0 6 3817 4224 8470 -6385 2 2 0 6 2783 3221 8448 -6386 2 2 0 6 6196 7516 7093 -6387 2 2 0 6 4514 3862 8181 -6388 2 2 0 6 5108 8192 8191 -6389 2 2 0 6 8338 8339 8340 -6390 2 2 0 6 1303 10603 8411 -6391 2 2 0 6 1276 1309 1277 -6392 2 2 0 6 2091 2092 2093 -6393 2 2 0 6 2980 3812 4331 -6394 2 2 0 6 4013 5374 4329 -6395 2 2 0 6 1137 8175 8277 -6396 2 2 0 6 5483 9348 7440 -6397 2 2 0 6 3872 4803 8383 -6398 2 2 0 6 3937 8395 3938 -6399 2 2 0 6 5568 10066 5571 -6400 2 2 0 6 3867 3868 3869 -6401 2 2 0 6 2084 8998 8999 -6402 2 2 0 6 4850 4851 5230 -6403 2 2 0 6 6271 7656 10010 -6404 2 2 0 6 1830 1947 8643 -6405 2 2 0 6 2583 2584 2585 -6406 2 2 0 6 4890 9595 6627 -6407 2 2 0 6 7761 7764 7762 -6408 2 2 0 6 4380 5320 8476 -6409 2 2 0 6 2582 2583 2581 -6410 2 2 0 6 2807 3014 3312 -6411 2 2 0 6 5411 7541 7545 -6412 2 2 0 6 2154 8172 2156 -6413 2 2 0 6 1613 1615 9081 -6414 2 2 0 6 1323 1324 1442 -6415 2 2 0 6 2667 3452 2939 -6416 2 2 0 6 5194 7009 7100 -6417 2 2 0 6 7396 7398 7400 -6418 2 2 0 6 4199 8349 8343 -6419 2 2 0 6 1296 1297 1298 -6420 2 2 0 6 6853 6854 6855 -6421 2 2 0 6 6159 7508 6317 -6422 2 2 0 6 6036 6103 6037 -6423 2 2 0 6 6045 6693 6046 -6424 2 2 0 6 1653 1655 8839 -6425 2 2 0 6 4782 8553 9526 -6426 2 2 0 6 2994 3824 3232 -6427 2 2 0 6 3457 4197 8300 -6428 2 2 0 6 7296 9823 7298 -6429 2 2 0 6 1800 7810 10875 -6430 2 2 0 6 4593 5102 5103 -6431 2 2 0 6 5469 6147 6846 -6432 2 2 0 6 4049 4535 8302 -6433 2 2 0 6 5450 7652 7987 -6434 2 2 0 6 3460 3462 8398 -6435 2 2 0 6 3835 4245 4132 -6436 2 2 0 6 5636 9310 6436 -6437 2 2 0 6 1992 2809 9707 -6438 2 2 0 6 1162 1183 1919 -6439 2 2 0 6 1218 9003 1234 -6440 2 2 0 6 4682 5224 5226 -6441 2 2 0 6 4590 5105 6036 -6442 2 2 0 6 608 611 8577 -6443 2 2 0 6 3439 3649 8803 -6444 2 2 0 6 2601 9386 4179 -6445 2 2 0 6 4097 4098 4588 -6446 2 2 0 6 2630 3208 8119 -6447 2 2 0 6 2924 8483 7703 -6448 2 2 0 6 973 9728 8766 -6449 2 2 0 6 6359 10052 7854 -6450 2 2 0 6 2246 2459 2247 -6451 2 2 0 6 3933 4574 3934 -6452 2 2 0 6 7226 10400 10817 -6453 2 2 0 6 4680 4681 5186 -6454 2 2 0 6 4691 6167 6166 -6455 2 2 0 6 3993 8308 8662 -6456 2 2 0 6 3983 4293 4541 -6457 2 2 0 6 1226 8594 1243 -6458 2 2 0 6 3468 8463 7987 -6459 2 2 0 6 5820 9886 9448 -6460 2 2 0 6 6288 7507 7506 -6461 2 2 0 6 4817 8023 5311 -6462 2 2 0 6 1277 1310 8694 -6463 2 2 0 6 3870 3872 3871 -6464 2 2 0 6 5215 7057 8255 -6465 2 2 0 6 5392 5705 7362 -6466 2 2 0 6 8907 9412 9600 -6467 2 2 0 6 4407 9874 8301 -6468 2 2 0 6 3837 4662 9964 -6469 2 2 0 6 3876 3982 3877 -6470 2 2 0 6 4222 5141 5349 -6471 2 2 0 6 2050 4185 9126 -6472 2 2 0 6 6393 7621 9959 -6473 2 2 0 6 2112 2137 7393 -6474 2 2 0 6 2052 8743 4186 -6475 2 2 0 6 3906 8823 4422 -6476 2 2 0 6 5820 8351 9886 -6477 2 2 0 6 3196 4013 4103 -6478 2 2 0 6 3342 7006 4287 -6479 2 2 0 6 876 10670 10744 -6480 2 2 0 6 74 475 8144 -6481 2 2 0 6 6007 8338 8337 -6482 2 2 0 6 3603 3605 8729 -6483 2 2 0 6 2039 9859 8677 -6484 2 2 0 6 4235 4238 4237 -6485 2 2 0 6 5121 6162 6768 -6486 2 2 0 6 8726 11071 8863 -6487 2 2 0 6 2211 2374 2373 -6488 2 2 0 6 1460 1461 8046 -6489 2 2 0 6 4803 8384 8383 -6490 2 2 0 6 1390 1392 8503 -6491 2 2 0 6 2459 2698 2460 -6492 2 2 0 6 2691 2850 2849 -6493 2 2 0 6 3084 3087 3086 -6494 2 2 0 6 5017 7678 5915 -6495 2 2 0 6 6389 7938 8767 -6496 2 2 0 6 3511 9406 8865 -6497 2 2 0 6 7304 8604 8581 -6498 2 2 0 6 1830 1945 1947 -6499 2 2 0 6 2374 2476 2415 -6500 2 2 0 6 2639 2640 2725 -6501 2 2 0 6 3791 4232 9261 -6502 2 2 0 6 2344 8995 5525 -6503 2 2 0 6 2090 2091 2089 -6504 2 2 0 6 2130 2333 2334 -6505 2 2 0 6 5138 6798 8527 -6506 2 2 0 6 1022 8665 1027 -6507 2 2 0 6 5495 8231 8308 -6508 2 2 0 6 5485 6731 6759 -6509 2 2 0 6 3965 4303 9275 -6510 2 2 0 6 5783 7667 5785 -6511 2 2 0 6 6519 8224 8223 -6512 2 2 0 6 4767 8459 5602 -6513 2 2 0 6 1744 1747 1742 -6514 2 2 0 6 7365 7364 7812 -6515 2 2 0 6 968 972 3925 -6516 2 2 0 6 4336 5023 5343 -6517 2 2 0 6 4758 5361 7097 -6518 2 2 0 6 4740 6197 8275 -6519 2 2 0 6 8206 8207 3354 -6520 2 2 0 6 1470 10188 10340 -6521 2 2 0 6 6281 6519 8223 -6522 2 2 0 6 6286 6879 6143 -6523 2 2 0 6 755 8479 1011 -6524 2 2 0 6 2833 9303 2892 -6525 2 2 0 6 1229 1237 1238 -6526 2 2 0 6 3862 3864 3863 -6527 2 2 0 6 3343 7962 7963 -6528 2 2 0 6 1515 1778 1777 -6529 2 2 0 6 4238 4669 4239 -6530 2 2 0 6 3313 3314 8758 -6531 2 2 0 6 1689 9150 7683 -6532 2 2 0 6 1459 1461 1460 -6533 2 2 0 6 3946 5402 3948 -6534 2 2 0 6 5258 7727 7055 -6535 2 2 0 6 5346 8327 8328 -6536 2 2 0 6 4017 4754 8758 -6537 2 2 0 6 1177 7903 9466 -6538 2 2 0 6 1164 8390 1822 -6539 2 2 0 6 4559 5025 8868 -6540 2 2 0 6 7770 8664 9300 -6541 2 2 0 6 1457 1459 1460 -6542 2 2 0 6 4897 6336 8637 -6543 2 2 0 6 1997 1999 2000 -6544 2 2 0 6 2779 2998 2780 -6545 2 2 0 6 359 8359 528 -6546 2 2 0 6 1249 9358 1250 -6547 2 2 0 6 6282 9690 8100 -6548 2 2 0 6 3869 3870 3871 -6549 2 2 0 6 4633 5153 5151 -6550 2 2 0 6 1468 1469 8286 -6551 2 2 0 6 4685 8200 5241 -6552 2 2 0 6 2119 9267 9141 -6553 2 2 0 6 1465 1467 1468 -6554 2 2 0 6 579 1988 8016 -6555 2 2 0 6 2084 2086 2085 -6556 2 2 0 6 2509 2684 2683 -6557 2 2 0 6 7568 7571 7572 -6558 2 2 0 6 78 8375 417 -6559 2 2 0 6 1735 9083 1737 -6560 2 2 0 6 1150 3343 1144 -6561 2 2 0 6 6249 9709 6250 -6562 2 2 0 6 7020 10040 9633 -6563 2 2 0 6 1934 2250 8505 -6564 2 2 0 6 5433 8526 9037 -6565 2 2 0 6 4452 5527 9084 -6566 2 2 0 6 1201 1203 1231 -6567 2 2 0 6 1036 5378 1280 -6568 2 2 0 6 1364 9967 8574 -6569 2 2 0 6 4117 4593 9977 -6570 2 2 0 6 7310 8155 8156 -6571 2 2 0 6 2372 8432 10609 -6572 2 2 0 6 4588 5307 5308 -6573 2 2 0 6 6163 7008 6986 -6574 2 2 0 6 6484 8228 6483 -6575 2 2 0 6 8360 8361 8363 -6576 2 2 0 6 4167 6370 8576 -6577 2 2 0 6 1309 1492 1310 -6578 2 2 0 6 3964 4253 3965 -6579 2 2 0 6 6496 8243 8242 -6580 2 2 0 6 4582 8268 8269 -6581 2 2 0 6 5217 5218 9157 -6582 2 2 0 6 3874 3876 3875 -6583 2 2 0 6 4891 8736 9053 -6584 2 2 0 6 2791 8042 2794 -6585 2 2 0 6 4329 5374 8764 -6586 2 2 0 6 1778 1826 1825 -6587 2 2 0 6 2006 2007 2027 -6588 2 2 0 6 5190 6296 6297 -6589 2 2 0 6 4437 8176 8177 -6590 2 2 0 6 358 528 8440 -6591 2 2 0 6 5423 7871 9111 -6592 2 2 0 6 3998 8251 8252 -6593 2 2 0 6 3440 8201 10836 -6594 2 2 0 6 1277 1309 1310 -6595 2 2 0 6 1237 1239 1238 -6596 2 2 0 6 6315 7204 7203 -6597 2 2 0 6 4170 8883 9539 -6598 2 2 0 6 1740 1741 1742 -6599 2 2 0 6 2777 2914 2915 -6600 2 2 0 6 93 8143 448 -6601 2 2 0 6 6609 10673 10681 -6602 2 2 0 6 83 84 426 -6603 2 2 0 6 2787 8246 2884 -6604 2 2 0 6 374 375 473 -6605 2 2 0 6 4746 6172 5426 -6606 2 2 0 6 365 8237 410 -6607 2 2 0 6 4888 7601 9830 -6608 2 2 0 6 1534 7457 10434 -6609 2 2 0 6 5143 6810 5386 -6610 2 2 0 6 4829 5333 9238 -6611 2 2 0 6 4599 8147 7700 -6612 2 2 0 6 3229 3835 3267 -6613 2 2 0 6 4331 4332 4333 -6614 2 2 0 6 6166 6167 6991 -6615 2 2 0 6 1298 7991 1300 -6616 2 2 0 6 1826 1914 1912 -6617 2 2 0 6 3872 3874 3873 -6618 2 2 0 6 4311 4314 4313 -6619 2 2 0 6 1393 1395 8529 -6620 2 2 0 6 1477 1479 1480 -6621 2 2 0 6 4223 5138 8527 -6622 2 2 0 6 5189 5322 5321 -6623 2 2 0 6 3983 3982 4293 -6624 2 2 0 6 1341 7779 1422 -6625 2 2 0 6 2662 2874 2876 -6626 2 2 0 6 1300 3338 1302 -6627 2 2 0 6 1875 4801 2382 -6628 2 2 0 6 5145 5147 6127 -6629 2 2 0 6 1429 1430 1431 -6630 2 2 0 6 3033 3917 3909 -6631 2 2 0 6 3316 3967 3968 -6632 2 2 0 6 1968 2258 4348 -6633 2 2 0 6 3676 8662 3678 -6634 2 2 0 6 5047 8215 8214 -6635 2 2 0 6 4475 5078 8268 -6636 2 2 0 6 188 189 512 -6637 2 2 0 6 4577 5271 4580 -6638 2 2 0 6 5271 6571 5992 -6639 2 2 0 6 3230 3837 9964 -6640 2 2 0 6 1553 1555 9723 -6641 2 2 0 6 3729 9074 3731 -6642 2 2 0 6 8178 8442 9478 -6643 2 2 0 6 3452 4035 3717 -6644 2 2 0 6 1994 1995 7617 -6645 2 2 0 6 2679 8259 3344 -6646 2 2 0 6 3171 4167 8576 -6647 2 2 0 6 2748 8750 6449 -6648 2 2 0 6 3249 4719 4231 -6649 2 2 0 6 1865 1867 1866 -6650 2 2 0 6 8106 8628 9739 -6651 2 2 0 6 76 8849 8489 -6652 2 2 0 6 4780 9628 9712 -6653 2 2 0 6 2683 2684 3055 -6654 2 2 0 6 8362 9053 8736 -6655 2 2 0 6 1666 1669 8641 -6656 2 2 0 6 3765 3505 9344 -6657 2 2 0 6 8430 8992 9177 -6658 2 2 0 6 1430 1428 1434 -6659 2 2 0 6 3222 3817 8470 -6660 2 2 0 6 4871 5410 5409 -6661 2 2 0 6 4971 7739 4974 -6662 2 2 0 6 2422 3376 8319 -6663 2 2 0 6 2104 2113 2112 -6664 2 2 0 6 2230 2508 2231 -6665 2 2 0 6 2688 2691 2690 -6666 2 2 0 6 6130 8603 9398 -6667 2 2 0 6 4229 4668 7636 -6668 2 2 0 6 3875 3876 3877 -6669 2 2 0 6 5250 5395 6989 -6670 2 2 0 6 4698 5217 7780 -6671 2 2 0 6 1666 8641 1670 -6672 2 2 0 6 290 291 518 -6673 2 2 0 6 3873 3874 3875 -6674 2 2 0 6 4673 5124 5123 -6675 2 2 0 6 1058 4199 8343 -6676 2 2 0 6 1546 8615 8796 -6677 2 2 0 6 2708 8832 2712 -6678 2 2 0 6 3332 3933 3334 -6679 2 2 0 6 4683 9513 6253 -6680 2 2 0 6 2697 3219 2696 -6681 2 2 0 6 3967 3969 3968 -6682 2 2 0 6 6282 6283 9690 -6683 2 2 0 6 3394 3396 9100 -6684 2 2 0 6 5277 7520 7521 -6685 2 2 0 6 3906 3907 8823 -6686 2 2 0 6 1742 1747 1864 -6687 2 2 0 6 2698 8082 2699 -6688 2 2 0 6 2939 3717 8871 -6689 2 2 0 6 2089 2091 8460 -6690 2 2 0 6 3233 3839 3840 -6691 2 2 0 6 1449 1451 1452 -6692 2 2 0 6 3869 3868 3870 -6693 2 2 0 6 3398 3400 7896 -6694 2 2 0 6 8193 9058 8782 -6695 2 2 0 6 185 8088 513 -6696 2 2 0 6 5184 7836 6977 -6697 2 2 0 6 687 8913 689 -6698 2 2 0 6 4352 9342 7928 -6699 2 2 0 6 1947 2246 2247 -6700 2 2 0 6 5277 7522 7646 -6701 2 2 0 6 2555 2556 10854 -6702 2 2 0 6 2981 3812 2980 -6703 2 2 0 6 3953 4871 5409 -6704 2 2 0 6 5967 10470 10481 -6705 2 2 0 6 663 9118 9137 -6706 2 2 0 6 4103 4329 5062 -6707 2 2 0 6 5171 6773 6291 -6708 2 2 0 6 7566 7567 7568 -6709 2 2 0 6 1372 4025 9158 -6710 2 2 0 6 6567 7486 6569 -6711 2 2 0 6 3562 8708 8881 -6712 2 2 0 6 5698 7855 8357 -6713 2 2 0 6 1567 7862 3384 -6714 2 2 0 6 4647 9731 5154 -6715 2 2 0 6 2003 2005 2006 -6716 2 2 0 6 3208 4590 8119 -6717 2 2 0 6 6499 8275 8276 -6718 2 2 0 6 6447 6833 6834 -6719 2 2 0 6 6257 6874 6875 -6720 2 2 0 6 5384 7660 7529 -6721 2 2 0 6 4277 8504 5564 -6722 2 2 0 6 8296 8295 9436 -6723 2 2 0 6 4115 4587 5095 -6724 2 2 0 6 2227 2385 9619 -6725 2 2 0 6 1482 9876 9246 -6726 2 2 0 6 1747 1865 1864 -6727 2 2 0 6 4655 9752 6523 -6728 2 2 0 6 8835 9627 9361 -6729 2 2 0 6 6485 9732 9098 -6730 2 2 0 6 8252 10109 10102 -6731 2 2 0 6 7616 10451 10417 -6732 2 2 0 6 2083 2084 2085 -6733 2 2 0 6 3033 3909 3034 -6734 2 2 0 6 3862 4514 3864 -6735 2 2 0 6 4793 7541 5411 -6736 2 2 0 6 6092 6093 6094 -6737 2 2 0 6 1797 8532 8859 -6738 2 2 0 6 288 289 455 -6739 2 2 0 6 1445 1447 1448 -6740 2 2 0 6 1914 1972 1971 -6741 2 2 0 6 3208 4215 4590 -6742 2 2 0 6 6983 6984 6999 -6743 2 2 0 6 2105 7808 2114 -6744 2 2 0 6 4759 8354 8353 -6745 2 2 0 6 6273 8227 8833 -6746 2 2 0 6 2814 8420 9079 -6747 2 2 0 6 3558 3920 9187 -6748 2 2 0 6 2724 9247 3226 -6749 2 2 0 6 1310 1492 1494 -6750 2 2 0 6 1481 1483 1484 -6751 2 2 0 6 2469 2470 2639 -6752 2 2 0 6 3858 3860 3859 -6753 2 2 0 6 4333 5142 5143 -6754 2 2 0 6 2575 2577 8251 -6755 2 2 0 6 6016 6730 7142 -6756 2 2 0 6 5070 9588 7800 -6757 2 2 0 6 1547 8668 1674 -6758 2 2 0 6 6175 7025 6176 -6759 2 2 0 6 979 988 7768 -6760 2 2 0 6 3359 9394 5505 -6761 2 2 0 6 4961 4962 10341 -6762 2 2 0 6 5458 5459 5745 -6763 2 2 0 6 383 384 7856 -6764 2 2 0 6 6396 8763 9425 -6765 2 2 0 6 1451 1454 1453 -6766 2 2 0 6 3856 3858 3857 -6767 2 2 0 6 3868 4821 8943 -6768 2 2 0 6 8864 9057 9583 -6769 2 2 0 6 2088 2090 2089 -6770 2 2 0 6 3269 9430 6180 -6771 2 2 0 6 5910 6034 6672 -6772 2 2 0 6 5275 5715 9880 -6773 2 2 0 6 2429 2927 8468 -6774 2 2 0 6 2585 2687 2688 -6775 2 2 0 6 3971 4683 4682 -6776 2 2 0 6 5349 5353 5354 -6777 2 2 0 6 5106 5108 8191 -6778 2 2 0 6 5153 8083 6815 -6779 2 2 0 6 2670 9408 2770 -6780 2 2 0 6 4821 8189 8943 -6781 2 2 0 6 1045 3612 9317 -6782 2 2 0 6 4002 8392 9580 -6783 2 2 0 6 3815 4631 3816 -6784 2 2 0 6 2162 8431 8432 -6785 2 2 0 6 7688 9014 9232 -6786 2 2 0 6 2982 3815 3490 -6787 2 2 0 6 169 8407 411 -6788 2 2 0 6 4719 7119 4720 -6789 2 2 0 6 5286 7451 6275 -6790 2 2 0 6 1297 1317 1298 -6791 2 2 0 6 2103 2112 4327 -6792 2 2 0 6 4665 5285 5284 -6793 2 2 0 6 5103 6080 6081 -6794 2 2 0 6 6127 6790 6885 -6795 2 2 0 6 71 8142 409 -6796 2 2 0 6 1627 9342 4352 -6797 2 2 0 6 4671 6138 5486 -6798 2 2 0 6 5013 5872 4163 -6799 2 2 0 6 1294 1295 1296 -6800 2 2 0 6 2632 2994 2995 -6801 2 2 0 6 4075 5055 5681 -6802 2 2 0 6 1350 3977 7551 -6803 2 2 0 6 8585 8646 8587 -6804 2 2 0 6 4879 8791 5408 -6805 2 2 0 6 1735 1745 9083 -6806 2 2 0 6 4264 5128 5607 -6807 2 2 0 6 6690 7641 7642 -6808 2 2 0 6 3860 8181 3862 -6809 2 2 0 6 6415 9186 6680 -6810 2 2 0 6 5944 10133 9825 -6811 2 2 0 6 1406 9629 10211 -6812 2 2 0 6 7800 10723 10827 -6813 2 2 0 6 2563 2808 2807 -6814 2 2 0 6 4590 6036 6037 -6815 2 2 0 6 7478 7479 7477 -6816 2 2 0 6 1295 1297 1296 -6817 2 2 0 6 4137 4763 4764 -6818 2 2 0 6 6083 6084 6081 -6819 2 2 0 6 3318 3320 4021 -6820 2 2 0 6 8504 9492 9029 -6821 2 2 0 6 5991 8149 8150 -6822 2 2 0 6 5571 10066 8684 -6823 2 2 0 6 347 398 9666 -6824 2 2 0 6 7971 7973 7972 -6825 2 2 0 6 2101 2104 2103 -6826 2 2 0 6 2763 9793 9140 -6827 2 2 0 6 2508 2509 2683 -6828 2 2 0 6 4712 5172 4713 -6829 2 2 0 6 1988 1990 5815 -6830 2 2 0 6 3023 8306 3026 -6831 2 2 0 6 8673 8876 9176 -6832 2 2 0 6 384 385 508 -6833 2 2 0 6 1618 1621 9093 -6834 2 2 0 6 8313 9604 9598 -6835 2 2 0 6 2962 9671 9531 -6836 2 2 0 6 2577 2579 2581 -6837 2 2 0 6 2579 2582 2581 -6838 2 2 0 6 3863 3864 3865 -6839 2 2 0 6 3293 4272 3892 -6840 2 2 0 6 6095 6096 6094 -6841 2 2 0 6 5658 7595 5667 -6842 2 2 0 6 1214 8206 3354 -6843 2 2 0 6 2748 2750 8750 -6844 2 2 0 6 2405 8008 9518 -6845 2 2 0 6 4203 6690 6689 -6846 2 2 0 6 5545 7103 8026 -6847 2 2 0 6 2580 6449 8245 -6848 2 2 0 6 2319 9433 3212 -6849 2 2 0 6 2693 2773 2774 -6850 2 2 0 6 4362 4681 4680 -6851 2 2 0 6 8478 9133 9672 -6852 2 2 0 6 3826 4230 8857 -6853 2 2 0 6 2083 2085 5421 -6854 2 2 0 6 5010 6322 6323 -6855 2 2 0 6 5062 5063 6661 -6856 2 2 0 6 6179 6496 8242 -6857 2 2 0 6 7979 8639 7980 -6858 2 2 0 6 4454 6479 9305 -6859 2 2 0 6 3512 9986 9555 -6860 2 2 0 6 1457 1458 1459 -6861 2 2 0 6 1878 4341 1973 -6862 2 2 0 6 5055 5943 5681 -6863 2 2 0 6 1610 1613 9080 -6864 2 2 0 6 2799 2798 9349 -6865 2 2 0 6 1847 1848 1849 -6866 2 2 0 6 2476 2624 2477 -6867 2 2 0 6 912 5412 4270 -6868 2 2 0 6 3098 4326 8093 -6869 2 2 0 6 3752 4116 7671 -6870 2 2 0 6 994 7960 3342 -6871 2 2 0 6 70 409 8161 -6872 2 2 0 6 2485 9253 2650 -6873 2 2 0 6 92 93 448 -6874 2 2 0 6 3400 8421 7896 -6875 2 2 0 6 2868 8664 3067 -6876 2 2 0 6 2610 8807 2813 -6877 2 2 0 6 618 8880 621 -6878 2 2 0 6 3802 4234 4235 -6879 2 2 0 6 1618 9093 1617 -6880 2 2 0 6 6511 7988 7989 -6881 2 2 0 6 6300 6301 8028 -6882 2 2 0 6 5351 6124 8078 -6883 2 2 0 6 4222 5349 8590 -6884 2 2 0 6 687 696 8913 -6885 2 2 0 6 5607 9136 9482 -6886 2 2 0 6 5442 9301 7996 -6887 2 2 0 6 1455 1458 1457 -6888 2 2 0 6 1150 7962 3343 -6889 2 2 0 6 4772 5289 8693 -6890 2 2 0 6 2946 8860 8861 -6891 2 2 0 6 3020 9217 8691 -6892 2 2 0 6 4577 9280 5271 -6893 2 2 0 6 1686 1693 9841 -6894 2 2 0 6 3852 4906 3854 -6895 2 2 0 6 2149 8599 2397 -6896 2 2 0 6 5571 10137 5900 -6897 2 2 0 6 1433 1435 1436 -6898 2 2 0 6 4599 5909 8147 -6899 2 2 0 6 8343 8349 8344 -6900 2 2 0 6 1139 1140 1157 -6901 2 2 0 6 2573 2575 3998 -6902 2 2 0 6 3856 4877 3858 -6903 2 2 0 6 991 7924 7923 -6904 2 2 0 6 5443 8108 7999 -6905 2 2 0 6 2862 9719 5761 -6906 2 2 0 6 7796 10248 10234 -6907 2 2 0 6 1849 1850 1851 -6908 2 2 0 6 4177 9061 5064 -6909 2 2 0 6 4594 4598 4595 -6910 2 2 0 6 5207 6369 6585 -6911 2 2 0 6 1867 1906 1868 -6912 2 2 0 6 1317 2572 2573 -6913 2 2 0 6 5476 5477 5852 -6914 2 2 0 6 6313 7252 6316 -6915 2 2 0 6 8176 8178 8177 -6916 2 2 0 6 2339 2564 8233 -6917 2 2 0 6 2251 8732 8733 -6918 2 2 0 6 2393 11204 11205 -6919 2 2 0 6 3629 9121 4190 -6920 2 2 0 6 4424 9802 9309 -6921 2 2 0 6 292 293 466 -6922 2 2 0 6 3785 3786 4112 -6923 2 2 0 6 6376 10005 6378 -6924 2 2 0 6 4943 8630 8070 -6925 2 2 0 6 2728 2729 9592 -6926 2 2 0 6 8182 8184 8183 -6927 2 2 0 6 4514 8183 8187 -6928 2 2 0 6 1157 1158 1184 -6929 2 2 0 6 1284 1295 1294 -6930 2 2 0 6 3055 3056 4041 -6931 2 2 0 6 5186 7377 6982 -6932 2 2 0 6 4887 5556 9146 -6933 2 2 0 6 2850 3321 5047 -6934 2 2 0 6 5124 5131 5130 -6935 2 2 0 6 5405 5817 5406 -6936 2 2 0 6 1381 9039 1384 -6937 2 2 0 6 1252 9040 1255 -6938 2 2 0 6 6381 6380 9418 -6939 2 2 0 6 1018 1019 1029 -6940 2 2 0 6 763 8423 765 -6941 2 2 0 6 2247 2459 2460 -6942 2 2 0 6 2953 8277 8173 -6943 2 2 0 6 1048 2588 8435 -6944 2 2 0 6 5198 8659 6206 -6945 2 2 0 6 1453 1455 1456 -6946 2 2 0 6 3248 3842 4229 -6947 2 2 0 6 75 8489 475 -6948 2 2 0 6 80 81 474 -6949 2 2 0 6 2701 3361 2703 -6950 2 2 0 6 4921 6347 5399 -6951 2 2 0 6 3575 3577 8495 -6952 2 2 0 6 2734 7702 8457 -6953 2 2 0 6 2944 8860 2946 -6954 2 2 0 6 8494 9811 8613 -6955 2 2 0 6 590 8449 5513 -6956 2 2 0 6 1860 2212 9196 -6957 2 2 0 6 3577 4036 8495 -6958 2 2 0 6 6456 9080 9081 -6959 2 2 0 6 5752 9121 10059 -6960 2 2 0 6 1471 1473 1472 -6961 2 2 0 6 8709 8881 8708 -6962 2 2 0 6 4527 7537 10093 -6963 2 2 0 6 7963 7965 7964 -6964 2 2 0 6 2001 2003 8131 -6965 2 2 0 6 168 411 8400 -6966 2 2 0 6 8420 8573 9079 -6967 2 2 0 6 8301 9874 9896 -6968 2 2 0 6 2808 3015 3014 -6969 2 2 0 6 3528 7938 9289 -6970 2 2 0 6 5879 6658 10623 -6971 2 2 0 6 1669 5430 8641 -6972 2 2 0 6 5095 6700 6045 -6973 2 2 0 6 4386 5433 9037 -6974 2 2 0 6 193 194 7828 -6975 2 2 0 6 3917 4758 4726 -6976 2 2 0 6 4290 4289 4778 -6977 2 2 0 6 5047 8216 8215 -6978 2 2 0 6 650 8617 653 -6979 2 2 0 6 2463 8688 3576 -6980 2 2 0 6 4190 5752 5017 -6981 2 2 0 6 5218 6032 9157 -6982 2 2 0 6 4002 9580 9100 -6983 2 2 0 6 3069 4099 4342 -6984 2 2 0 6 4705 5669 5670 -6985 2 2 0 6 5321 7450 9542 -6986 2 2 0 6 6575 10533 9088 -6987 2 2 0 6 1300 1302 1301 -6988 2 2 0 6 2582 2584 2583 -6989 2 2 0 6 4674 5375 5376 -6990 2 2 0 6 409 8162 8161 -6991 2 2 0 6 6527 6868 7509 -6992 2 2 0 6 5882 6558 7648 -6993 2 2 0 6 3694 4798 9228 -6994 2 2 0 6 2361 2362 2506 -6995 2 2 0 6 3221 9010 9398 -6996 2 2 0 6 4086 9108 4439 -6997 2 2 0 6 3969 3970 3971 -6998 2 2 0 6 6474 9982 9182 -6999 2 2 0 6 385 8151 508 -7000 2 2 0 6 3479 10472 10658 -7001 2 2 0 6 1857 1858 1859 -7002 2 2 0 6 2460 2698 2699 -7003 2 2 0 6 2995 3232 3233 -7004 2 2 0 6 6059 7682 7681 -7005 2 2 0 6 1949 1951 8491 -7006 2 2 0 6 2782 2783 8448 -7007 2 2 0 6 2614 2616 2615 -7008 2 2 0 6 4943 8070 8069 -7009 2 2 0 6 658 9137 8813 -7010 2 2 0 6 3731 9074 5031 -7011 2 2 0 6 3809 5480 5482 -7012 2 2 0 6 6129 6131 6811 -7013 2 2 0 6 7195 7196 7239 -7014 2 2 0 6 6546 7222 7717 -7015 2 2 0 6 2209 9965 5841 -7016 2 2 0 6 1513 1775 1776 -7017 2 2 0 6 3854 3856 3855 -7018 2 2 0 6 2932 4970 3800 -7019 2 2 0 6 3570 5491 8433 -7020 2 2 0 6 3473 8448 5470 -7021 2 2 0 6 2345 2666 8763 -7022 2 2 0 6 5805 6151 6524 -7023 2 2 0 6 191 192 7875 -7024 2 2 0 6 5404 7544 8058 -7025 2 2 0 6 1625 1626 8428 -7026 2 2 0 6 2090 2092 2091 -7027 2 2 0 6 1695 7888 6629 -7028 2 2 0 6 1431 1432 1433 -7029 2 2 0 6 1936 2195 1937 -7030 2 2 0 6 2836 8566 8567 -7031 2 2 0 6 2907 3738 9091 -7032 2 2 0 6 1181 1822 8497 -7033 2 2 0 6 3375 3841 3674 -7034 2 2 0 6 1736 1738 4345 -7035 2 2 0 6 4631 4632 5145 -7036 2 2 0 6 590 592 8449 -7037 2 2 0 6 4884 9598 9604 -7038 2 2 0 6 3191 8482 8954 -7039 2 2 0 6 5941 9905 10019 -7040 2 2 0 6 1906 1936 1907 -7041 2 2 0 6 2475 3596 2623 -7042 2 2 0 6 1667 5455 4553 -7043 2 2 0 6 1622 8412 9342 -7044 2 2 0 6 4701 4736 6175 -7045 2 2 0 6 5469 7645 7916 -7046 2 2 0 6 3216 8005 8133 -7047 2 2 0 6 4082 4084 8906 -7048 2 2 0 6 3854 7933 3856 -7049 2 2 0 6 5801 8545 8544 -7050 2 2 0 6 5535 9035 9223 -7051 2 2 0 6 3861 3862 3863 -7052 2 2 0 6 3650 8698 5857 -7053 2 2 0 6 3963 9275 4824 -7054 2 2 0 6 6479 9590 9305 -7055 2 2 0 6 1146 9371 3561 -7056 2 2 0 6 4854 5633 5634 -7057 2 2 0 6 5989 8149 5991 -7058 2 2 0 6 577 579 8016 -7059 2 2 0 6 6396 9577 9114 -7060 2 2 0 6 186 187 435 -7061 2 2 0 6 2556 2630 2631 -7062 2 2 0 6 3625 3896 4701 -7063 2 2 0 6 1748 1789 5440 -7064 2 2 0 6 2729 2731 8457 -7065 2 2 0 6 2379 8950 2390 -7066 2 2 0 6 6197 8276 8275 -7067 2 2 0 6 5666 6575 9088 -7068 2 2 0 6 2277 2284 8367 -7069 2 2 0 6 4587 5772 6012 -7070 2 2 0 6 6816 6884 6817 -7071 2 2 0 6 4703 8490 5287 -7072 2 2 0 6 77 78 417 -7073 2 2 0 6 2997 4077 3231 -7074 2 2 0 6 993 8642 1003 -7075 2 2 0 6 1490 8611 1763 -7076 2 2 0 6 1980 2352 8672 -7077 2 2 0 6 4431 9382 9480 -7078 2 2 0 6 3896 4736 4701 -7079 2 2 0 6 4107 5345 5041 -7080 2 2 0 6 4289 5505 8076 -7081 2 2 0 6 67 8230 453 -7082 2 2 0 6 7550 9629 10011 -7083 2 2 0 6 1916 1928 1927 -7084 2 2 0 6 5783 5785 5784 -7085 2 2 0 6 5151 5153 6814 -7086 2 2 0 6 8294 8293 8295 -7087 2 2 0 6 3461 3463 8720 -7088 2 2 0 6 4374 8768 4376 -7089 2 2 0 6 7595 7650 10492 -7090 2 2 0 6 2584 2687 2585 -7091 2 2 0 6 3859 3860 3861 -7092 2 2 0 6 2902 4029 3205 -7093 2 2 0 6 4844 5241 5242 -7094 2 2 0 6 3404 3443 8421 -7095 2 2 0 6 4970 7919 7740 -7096 2 2 0 6 769 8681 775 -7097 2 2 0 6 1844 1846 1845 -7098 2 2 0 6 5051 6647 5052 -7099 2 2 0 6 4732 5215 8255 -7100 2 2 0 6 3361 7726 7895 -7101 2 2 0 6 7969 7971 7970 -7102 2 2 0 6 74 75 475 -7103 2 2 0 6 1574 1575 1576 -7104 2 2 0 6 2864 3332 2863 -7105 2 2 0 6 1343 1345 5369 -7106 2 2 0 6 4273 6596 6597 -7107 2 2 0 6 5899 6636 7627 -7108 2 2 0 6 3455 4868 8578 -7109 2 2 0 6 1763 8611 1833 -7110 2 2 0 6 2206 3763 9433 -7111 2 2 0 6 4439 9822 9775 -7112 2 2 0 6 1567 1568 1569 -7113 2 2 0 6 4353 4354 4355 -7114 2 2 0 6 7291 7321 7312 -7115 2 2 0 6 2583 8313 5605 -7116 2 2 0 6 4089 9181 4091 -7117 2 2 0 6 4740 8275 4741 -7118 2 2 0 6 4855 5801 8544 -7119 2 2 0 6 1184 1185 1201 -7120 2 2 0 6 2422 2423 2517 -7121 2 2 0 6 4448 7020 8413 -7122 2 2 0 6 3938 3941 3940 -7123 2 2 0 6 4254 4305 4304 -7124 2 2 0 6 4293 4777 5306 -7125 2 2 0 6 5775 7022 6201 -7126 2 2 0 6 2238 5525 8499 -7127 2 2 0 6 7028 8255 9853 -7128 2 2 0 6 5812 10102 10109 -7129 2 2 0 6 2705 2982 2707 -7130 2 2 0 6 1500 2215 3687 -7131 2 2 0 6 7318 7326 8291 -7132 2 2 0 6 4043 5407 5005 -7133 2 2 0 6 5205 6369 5207 -7134 2 2 0 6 66 453 8234 -7135 2 2 0 6 1932 1934 8505 -7136 2 2 0 6 1830 1831 1945 -7137 2 2 0 6 4281 4282 4601 -7138 2 2 0 6 4621 6058 4622 -7139 2 2 0 6 2774 2773 3033 -7140 2 2 0 6 2009 2011 3538 -7141 2 2 0 6 5472 6129 6128 -7142 2 2 0 6 6176 7025 7026 -7143 2 2 0 6 6466 7610 6467 -7144 2 2 0 6 2957 8176 4437 -7145 2 2 0 6 5308 7197 7198 -7146 2 2 0 6 4099 4870 8360 -7147 2 2 0 6 6489 9770 8408 -7148 2 2 0 6 3666 3668 10098 -7149 2 2 0 6 2617 2658 2659 -7150 2 2 0 6 769 4350 8681 -7151 2 2 0 6 3299 4297 8810 -7152 2 2 0 6 3012 9121 3629 -7153 2 2 0 6 5556 8711 9146 -7154 2 2 0 6 1581 1580 1582 -7155 2 2 0 6 2684 3056 3055 -7156 2 2 0 6 4889 4890 5542 -7157 2 2 0 6 7396 7397 7398 -7158 2 2 0 6 5380 8043 6742 -7159 2 2 0 6 2423 2425 8294 -7160 2 2 0 6 3041 8551 9490 -7161 2 2 0 6 2242 7416 10572 -7162 2 2 0 6 2838 2839 2840 -7163 2 2 0 6 2849 2850 3068 -7164 2 2 0 6 1502 3180 1779 -7165 2 2 0 6 5785 5911 5784 -7166 2 2 0 6 2623 8298 4105 -7167 2 2 0 6 4343 8859 8261 -7168 2 2 0 6 4268 9644 6205 -7169 2 2 0 6 1761 1762 1830 -7170 2 2 0 6 2135 8597 2149 -7171 2 2 0 6 3866 3867 3865 -7172 2 2 0 6 3775 3777 4202 -7173 2 2 0 6 5148 6820 5332 -7174 2 2 0 6 8121 8122 8123 -7175 2 2 0 6 4036 5868 8495 -7176 2 2 0 6 3387 8609 8606 -7177 2 2 0 6 1832 8531 8532 -7178 2 2 0 6 3477 9189 9007 -7179 2 2 0 6 8037 9256 8656 -7180 2 2 0 6 8178 9246 9876 -7181 2 2 0 6 1737 1738 1736 -7182 2 2 0 6 4973 4974 6145 -7183 2 2 0 6 7312 7322 7323 -7184 2 2 0 6 5852 5853 8325 -7185 2 2 0 6 3948 5403 5404 -7186 2 2 0 6 4978 5981 5980 -7187 2 2 0 6 2286 8648 8647 -7188 2 2 0 6 2049 9557 2051 -7189 2 2 0 6 2863 3334 9762 -7190 2 2 0 6 5070 7800 6665 -7191 2 2 0 6 3229 7672 4246 -7192 2 2 0 6 5345 6049 6047 -7193 2 2 0 6 3888 8691 5466 -7194 2 2 0 6 1575 1578 1576 -7195 2 2 0 6 4560 5344 4563 -7196 2 2 0 6 5144 6787 6126 -7197 2 2 0 6 5014 5918 7835 -7198 2 2 0 6 4870 8361 8360 -7199 2 2 0 6 1070 1072 8394 -7200 2 2 0 6 682 684 8585 -7201 2 2 0 6 4062 9366 5514 -7202 2 2 0 6 886 887 889 -7203 2 2 0 6 2585 2688 2690 -7204 2 2 0 6 1727 1729 2745 -7205 2 2 0 6 2517 3377 3376 -7206 2 2 0 6 1545 8668 1547 -7207 2 2 0 6 572 573 571 -7208 2 2 0 6 1850 1852 1851 -7209 2 2 0 6 3377 3662 3378 -7210 2 2 0 6 4200 4845 5076 -7211 2 2 0 6 5205 5207 5206 -7212 2 2 0 6 5457 5459 5458 -7213 2 2 0 6 6804 6916 6805 -7214 2 2 0 6 7554 7556 7579 -7215 2 2 0 6 2817 8701 9338 -7216 2 2 0 6 1982 7460 10120 -7217 2 2 0 6 879 887 886 -7218 2 2 0 6 3068 3932 3931 -7219 2 2 0 6 2158 4338 1820 -7220 2 2 0 6 5242 5331 5330 -7221 2 2 0 6 2551 2662 7829 -7222 2 2 0 6 5399 6347 7847 -7223 2 2 0 6 2394 10099 10015 -7224 2 2 0 6 5166 6765 6725 -7225 2 2 0 6 1873 1966 1968 -7226 2 2 0 6 5354 5355 7191 -7227 2 2 0 6 8815 9022 8816 -7228 2 2 0 6 5383 6852 8791 -7229 2 2 0 6 1389 8728 1391 -7230 2 2 0 6 3045 9930 8802 -7231 2 2 0 6 5271 9280 7188 -7232 2 2 0 6 4086 4088 9108 -7233 2 2 0 6 8262 10545 10552 -7234 2 2 0 6 1463 1465 1464 -7235 2 2 0 6 4158 4629 8937 -7236 2 2 0 6 4572 4827 4573 -7237 2 2 0 6 5296 5765 5764 -7238 2 2 0 6 371 372 418 -7239 2 2 0 6 2092 2094 2093 -7240 2 2 0 6 2691 3321 2850 -7241 2 2 0 6 4239 4669 4670 -7242 2 2 0 6 5025 5718 6338 -7243 2 2 0 6 1861 1862 1863 -7244 2 2 0 6 7556 7558 7805 -7245 2 2 0 6 1065 1068 8256 -7246 2 2 0 6 1027 8666 1033 -7247 2 2 0 6 4098 4892 10223 -7248 2 2 0 6 1848 1850 1849 -7249 2 2 0 6 5781 5783 5782 -7250 2 2 0 6 8120 8121 8528 -7251 2 2 0 6 2356 8876 8675 -7252 2 2 0 6 2457 2636 9225 -7253 2 2 0 6 3015 3315 3316 -7254 2 2 0 6 4338 4339 4340 -7255 2 2 0 6 1401 1400 8932 -7256 2 2 0 6 4889 5542 5543 -7257 2 2 0 6 1695 6629 3362 -7258 2 2 0 6 7838 7841 7840 -7259 2 2 0 6 3472 8516 8517 -7260 2 2 0 6 72 73 515 -7261 2 2 0 6 2690 2691 2849 -7262 2 2 0 6 1040 1042 3453 -7263 2 2 0 6 3840 3963 3962 -7264 2 2 0 6 3248 4229 4328 -7265 2 2 0 6 5382 5384 5383 -7266 2 2 0 6 2953 8173 3158 -7267 2 2 0 6 3280 9467 3283 -7268 2 2 0 6 1866 1867 1868 -7269 2 2 0 6 1255 4908 1270 -7270 2 2 0 6 8103 8106 8104 -7271 2 2 0 6 63 8247 401 -7272 2 2 0 6 3696 4063 8385 -7273 2 2 0 6 2387 9321 7782 -7274 2 2 0 6 7539 9117 9699 -7275 2 2 0 6 2707 2982 3490 -7276 2 2 0 6 2427 2554 2555 -7277 2 2 0 6 4791 4792 4793 -7278 2 2 0 6 2581 2583 5605 -7279 2 2 0 6 6820 6821 6914 -7280 2 2 0 6 6288 7692 7507 -7281 2 2 0 6 4005 8806 8702 -7282 2 2 0 6 5587 8837 7333 -7283 2 2 0 6 1744 1748 8163 -7284 2 2 0 6 3357 7926 8759 -7285 2 2 0 6 4374 5346 8768 -7286 2 2 0 6 878 879 886 -7287 2 2 0 6 1863 1915 1916 -7288 2 2 0 6 4789 4790 4791 -7289 2 2 0 6 7934 7936 7935 -7290 2 2 0 6 5802 7999 8000 -7291 2 2 0 6 6432 9735 9725 -7292 2 2 0 6 1854 1856 1855 -7293 2 2 0 6 1973 2230 1974 -7294 2 2 0 6 3490 3815 3816 -7295 2 2 0 6 4627 5148 4629 -7296 2 2 0 6 2001 8131 5391 -7297 2 2 0 6 1394 8728 6411 -7298 2 2 0 6 4321 4621 4620 -7299 2 2 0 6 4305 5118 4665 -7300 2 2 0 6 3232 8232 3839 -7301 2 2 0 6 1364 8742 9967 -7302 2 2 0 6 4734 8026 5221 -7303 2 2 0 6 873 875 7859 -7304 2 2 0 6 7313 8582 8583 -7305 2 2 0 6 4211 5054 9058 -7306 2 2 0 6 9166 9165 9168 -7307 2 2 0 6 6383 8372 9337 -7308 2 2 0 6 707 10808 10787 -7309 2 2 0 6 1563 1564 1565 -7310 2 2 0 6 4749 7082 7083 -7311 2 2 0 6 4895 4897 8637 -7312 2 2 0 6 4343 8261 8260 -7313 2 2 0 6 6151 9698 6526 -7314 2 2 0 6 1712 1715 1711 -7315 2 2 0 6 1859 1860 1861 -7316 2 2 0 6 2652 2653 2863 -7317 2 2 0 6 1485 7959 1487 -7318 2 2 0 6 8566 8568 8567 -7319 2 2 0 6 8936 9921 9906 -7320 2 2 0 6 1475 1477 1476 -7321 2 2 0 6 1867 1942 1906 -7322 2 2 0 6 2195 2324 2196 -7323 2 2 0 6 2523 2524 2696 -7324 2 2 0 6 4672 4673 5123 -7325 2 2 0 6 6349 7484 6466 -7326 2 2 0 6 180 8557 8558 -7327 2 2 0 6 916 918 919 -7328 2 2 0 6 2046 9126 8117 -7329 2 2 0 6 5130 5131 7951 -7330 2 2 0 6 4007 4563 8108 -7331 2 2 0 6 3188 3294 3293 -7332 2 2 0 6 4535 5475 5476 -7333 2 2 0 6 5984 5985 5986 -7334 2 2 0 6 5352 6123 5351 -7335 2 2 0 6 6131 6812 6811 -7336 2 2 0 6 79 80 8374 -7337 2 2 0 6 4278 9881 5240 -7338 2 2 0 6 1846 1848 1847 -7339 2 2 0 6 2250 2251 2525 -7340 2 2 0 6 5471 5472 6128 -7341 2 2 0 6 1307 1327 8165 -7342 2 2 0 6 1951 2248 8491 -7343 2 2 0 6 2566 8599 8600 -7344 2 2 0 6 1072 8488 8394 -7345 2 2 0 6 1571 1572 1573 -7346 2 2 0 6 2087 2089 2417 -7347 2 2 0 6 3158 4368 3929 -7348 2 2 0 6 4082 8906 4916 -7349 2 2 0 6 5001 8399 5891 -7350 2 2 0 6 2788 2993 3248 -7351 2 2 0 6 4007 4008 4560 -7352 2 2 0 6 5456 5457 5458 -7353 2 2 0 6 5092 6619 6513 -7354 2 2 0 6 1497 8710 8707 -7355 2 2 0 6 4629 6295 8937 -7356 2 2 0 6 1648 9117 4915 -7357 2 2 0 6 5520 8341 10796 -7358 2 2 0 6 184 185 513 -7359 2 2 0 6 1898 1984 1899 -7360 2 2 0 6 3473 5470 3819 -7361 2 2 0 6 4944 8405 8630 -7362 2 2 0 6 865 863 9056 -7363 2 2 0 6 2113 2138 2137 -7364 2 2 0 6 4154 8208 5512 -7365 2 2 0 6 5090 9023 5640 -7366 2 2 0 6 286 287 523 -7367 2 2 0 6 1557 1558 1559 -7368 2 2 0 6 1622 1620 8412 -7369 2 2 0 6 4635 4637 5149 -7370 2 2 0 6 6092 6094 6701 -7371 2 2 0 6 4529 8066 5051 -7372 2 2 0 6 3409 9274 3414 -7373 2 2 0 6 2693 2772 2773 -7374 2 2 0 6 3662 3663 4007 -7375 2 2 0 6 5685 6782 6737 -7376 2 2 0 6 1436 1440 1441 -7377 2 2 0 6 1838 1840 1839 -7378 2 2 0 6 1928 1929 1930 -7379 2 2 0 6 8067 8830 5438 -7380 2 2 0 6 2670 2910 9408 -7381 2 2 0 6 4631 5145 5146 -7382 2 2 0 6 6093 6095 6094 -7383 2 2 0 6 1630 8136 1632 -7384 2 2 0 6 2251 8733 2526 -7385 2 2 0 6 1407 1410 9629 -7386 2 2 0 6 579 580 1035 -7387 2 2 0 6 970 977 4133 -7388 2 2 0 6 5285 6257 6256 -7389 2 2 0 6 7379 7381 7380 -7390 2 2 0 6 7318 8291 7320 -7391 2 2 0 6 1531 8787 1534 -7392 2 2 0 6 2833 3051 9303 -7393 2 2 0 6 1382 8534 9818 -7394 2 2 0 6 8039 10062 9937 -7395 2 2 0 6 2086 2088 2087 -7396 2 2 0 6 4979 9084 6426 -7397 2 2 0 6 3108 3110 3957 -7398 2 2 0 6 2352 2949 8672 -7399 2 2 0 6 7 8 491 -7400 2 2 0 6 1561 1563 1673 -7401 2 2 0 6 1733 1735 1736 -7402 2 2 0 6 1836 1838 1837 -7403 2 2 0 6 4232 5121 7449 -7404 2 2 0 6 3338 7991 7992 -7405 2 2 0 6 4908 8122 8121 -7406 2 2 0 6 1855 1856 1857 -7407 2 2 0 6 187 188 8022 -7408 2 2 0 6 1756 4860 9081 -7409 2 2 0 6 835 879 878 -7410 2 2 0 6 1074 1080 1081 -7411 2 2 0 6 5503 5502 5504 -7412 2 2 0 6 1092 1095 8618 -7413 2 2 0 6 6379 9279 8733 -7414 2 2 0 6 5525 8995 8760 -7415 2 2 0 6 3090 3091 3092 -7416 2 2 0 6 5193 5235 7430 -7417 2 2 0 6 887 890 889 -7418 2 2 0 6 1916 1929 1928 -7419 2 2 0 6 2029 2033 3353 -7420 2 2 0 6 7320 8291 7391 -7421 2 2 0 6 2575 8251 3998 -7422 2 2 0 6 4052 5539 8482 -7423 2 2 0 6 1738 1739 1740 -7424 2 2 0 6 3702 3975 3704 -7425 2 2 0 6 4230 4878 4879 -7426 2 2 0 6 1852 2340 8515 -7427 2 2 0 6 2149 8597 8599 -7428 2 2 0 6 5253 7118 8808 -7429 2 2 0 6 5498 8478 9530 -7430 2 2 0 6 70 71 409 -7431 2 2 0 6 1332 1334 1333 -7432 2 2 0 6 5344 7734 5952 -7433 2 2 0 6 2070 2073 9392 -7434 2 2 0 6 949 10183 10114 -7435 2 2 0 6 1559 1560 1561 -7436 2 2 0 6 5306 7338 7343 -7437 2 2 0 6 2715 8566 2836 -7438 2 2 0 6 3587 3981 9414 -7439 2 2 0 6 2525 2526 2782 -7440 2 2 0 6 4063 4534 4992 -7441 2 2 0 6 3019 8506 3022 -7442 2 2 0 6 3334 3934 9617 -7443 2 2 0 6 8072 10388 10280 -7444 2 2 0 6 2333 2563 2562 -7445 2 2 0 6 2647 2649 8289 -7446 2 2 0 6 2506 2507 2667 -7447 2 2 0 6 3153 4050 4051 -7448 2 2 0 6 5599 7165 8492 -7449 2 2 0 6 1009 8658 1021 -7450 2 2 0 6 3557 3641 8738 -7451 2 2 0 6 5502 9187 7994 -7452 2 2 0 6 1569 1570 1571 -7453 2 2 0 6 3412 5547 8955 -7454 2 2 0 6 2215 3688 3687 -7455 2 2 0 6 2425 2427 8293 -7456 2 2 0 6 7497 9037 8526 -7457 2 2 0 6 8706 9465 8816 -7458 2 2 0 6 3327 8861 9184 -7459 2 2 0 6 3934 4575 4576 -7460 2 2 0 6 4561 6666 6667 -7461 2 2 0 6 4044 8841 8842 -7462 2 2 0 6 1561 1562 1563 -7463 2 2 0 6 1493 1761 1492 -7464 2 2 0 6 4332 5144 5142 -7465 2 2 0 6 7782 7784 7783 -7466 2 2 0 6 6557 8742 8741 -7467 2 2 0 6 2419 2421 2422 -7468 2 2 0 6 6091 6093 6092 -7469 2 2 0 6 4351 8616 8615 -7470 2 2 0 6 2792 2793 8755 -7471 2 2 0 6 977 978 984 -7472 2 2 0 6 1843 1844 1845 -7473 2 2 0 6 3775 3776 3777 -7474 2 2 0 6 4652 5160 6068 -7475 2 2 0 6 6127 6885 6931 -7476 2 2 0 6 4711 4712 4713 -7477 2 2 0 6 2825 8278 3988 -7478 2 2 0 6 4152 5512 8888 -7479 2 2 0 6 5035 5313 8753 -7480 2 2 0 6 2068 2082 2083 -7481 2 2 0 6 1983 2238 8499 -7482 2 2 0 6 4304 4305 4306 -7483 2 2 0 6 4683 5225 5224 -7484 2 2 0 6 5458 5745 5880 -7485 2 2 0 6 6352 7597 7637 -7486 2 2 0 6 7897 7898 7899 -7487 2 2 0 6 834 835 878 -7488 2 2 0 6 1842 1844 1843 -7489 2 2 0 6 3094 3095 3096 -7490 2 2 0 6 3819 5470 5471 -7491 2 2 0 6 4670 4712 4711 -7492 2 2 0 6 1020 1040 8644 -7493 2 2 0 6 2365 2636 2457 -7494 2 2 0 6 2140 8145 2332 -7495 2 2 0 6 5987 6293 5989 -7496 2 2 0 6 1240 8454 5414 -7497 2 2 0 6 1249 8447 9180 -7498 2 2 0 6 2325 2324 2405 -7499 2 2 0 6 8067 9306 8830 -7500 2 2 0 6 5683 5685 5684 -7501 2 2 0 6 5443 5802 5801 -7502 2 2 0 6 6196 7093 7092 -7503 2 2 0 6 5378 7474 7004 -7504 2 2 0 6 1578 1580 1579 -7505 2 2 0 6 5882 5883 6558 -7506 2 2 0 6 5666 5945 6575 -7507 2 2 0 6 5084 5253 8808 -7508 2 2 0 6 2241 2393 2394 -7509 2 2 0 6 2255 2369 2523 -7510 2 2 0 6 3495 3496 3497 -7511 2 2 0 6 4154 4155 4156 -7512 2 2 0 6 6173 7066 6032 -7513 2 2 0 6 1810 8887 1941 -7514 2 2 0 6 1792 1876 1793 -7515 2 2 0 6 1068 1070 3365 -7516 2 2 0 6 373 374 8166 -7517 2 2 0 6 2925 9228 9602 -7518 2 2 0 6 5563 9615 8326 -7519 2 2 0 6 4184 8217 10936 -7520 2 2 0 6 4036 5861 5868 -7521 2 2 0 6 4203 7530 6690 -7522 2 2 0 6 5502 7994 5504 -7523 2 2 0 6 5586 6399 8718 -7524 2 2 0 6 4346 8723 8724 -7525 2 2 0 6 890 914 915 -7526 2 2 0 6 2351 9024 5516 -7527 2 2 0 6 2526 8733 2877 -7528 2 2 0 6 7748 10029 9510 -7529 2 2 0 6 2712 9153 8570 -7530 2 2 0 6 984 985 994 -7531 2 2 0 6 5305 8944 7164 -7532 2 2 0 6 908 910 909 -7533 2 2 0 6 1298 1300 1299 -7534 2 2 0 6 4368 5563 4370 -7535 2 2 0 6 6247 7961 6248 -7536 2 2 0 6 5817 7329 7095 -7537 2 2 0 6 4018 9497 4988 -7538 2 2 0 6 6587 10561 9697 -7539 2 2 0 6 6852 8792 8791 -7540 2 2 0 6 1579 1580 1581 -7541 2 2 0 6 875 881 4141 -7542 2 2 0 6 4008 4561 4560 -7543 2 2 0 6 3961 4874 7926 -7544 2 2 0 6 1392 3392 8503 -7545 2 2 0 6 5408 8791 8858 -7546 2 2 0 6 2188 2456 2258 -7547 2 2 0 6 3624 3896 3625 -7548 2 2 0 6 8327 8329 8328 -7549 2 2 0 6 5124 8547 5132 -7550 2 2 0 6 3576 8688 4039 -7551 2 2 0 6 984 994 1038 -7552 2 2 0 6 1479 1481 1480 -7553 2 2 0 6 1899 1984 1985 -7554 2 2 0 6 2106 2114 2115 -7555 2 2 0 6 1966 2188 1968 -7556 2 2 0 6 4189 4978 4977 -7557 2 2 0 6 1050 1052 8417 -7558 2 2 0 6 4316 8159 4317 -7559 2 2 0 6 6546 7717 9149 -7560 2 2 0 6 5025 5717 5718 -7561 2 2 0 6 5987 5989 5988 -7562 2 2 0 6 4720 7128 7584 -7563 2 2 0 6 8269 8271 8270 -7564 2 2 0 6 4413 9058 5108 -7565 2 2 0 6 1502 1779 1503 -7566 2 2 0 6 2425 8293 8294 -7567 2 2 0 6 6449 8750 8751 -7568 2 2 0 6 1938 2197 2327 -7569 2 2 0 6 3647 8497 8498 -7570 2 2 0 6 4244 4310 4258 -7571 2 2 0 6 5585 8837 5587 -7572 2 2 0 6 4339 5855 4340 -7573 2 2 0 6 997 4104 6472 -7574 2 2 0 6 68 69 517 -7575 2 2 0 6 2251 2526 2525 -7576 2 2 0 6 2645 9868 3012 -7577 2 2 0 6 1856 1858 1857 -7578 2 2 0 6 4373 4375 8661 -7579 2 2 0 6 5807 5808 6694 -7580 2 2 0 6 5147 6790 6127 -7581 2 2 0 6 2419 2422 8319 -7582 2 2 0 6 417 8375 8376 -7583 2 2 0 6 2961 8809 3657 -7584 2 2 0 6 3447 6391 8811 -7585 2 2 0 6 5578 9115 9577 -7586 2 2 0 6 4176 5065 9765 -7587 2 2 0 6 1334 1336 1335 -7588 2 2 0 6 1907 1936 1937 -7589 2 2 0 6 1565 1567 3384 -7590 2 2 0 6 2671 2770 3757 -7591 2 2 0 6 4158 4274 4627 -7592 2 2 0 6 4653 5119 8393 -7593 2 2 0 6 8709 9539 8883 -7594 2 2 0 6 4448 7019 7020 -7595 2 2 0 6 6379 8733 8732 -7596 2 2 0 6 1953 1955 8826 -7597 2 2 0 6 1009 9289 8658 -7598 2 2 0 6 2313 8657 9352 -7599 2 2 0 6 4170 9539 8710 -7600 2 2 0 6 1338 1340 1339 -7601 2 2 0 6 2539 2541 2547 -7602 2 2 0 6 2659 2740 2741 -7603 2 2 0 6 5187 6163 6986 -7604 2 2 0 6 2850 5047 8214 -7605 2 2 0 6 2754 8486 8484 -7606 2 2 0 6 5930 8589 6365 -7607 2 2 0 6 1245 5444 5445 -7608 2 2 0 6 5668 7803 7804 -7609 2 2 0 6 868 870 991 -7610 2 2 0 6 1029 1030 1036 -7611 2 2 0 6 1175 1174 1198 -7612 2 2 0 6 3222 3223 3817 -7613 2 2 0 6 4574 4579 5277 -7614 2 2 0 6 2175 7686 4410 -7615 2 2 0 6 4834 4918 8198 -7616 2 2 0 6 4189 8283 4978 -7617 2 2 0 6 1431 1433 10898 -7618 2 2 0 6 896 898 897 -7619 2 2 0 6 1083 1084 1081 -7620 2 2 0 6 1851 1852 1853 -7621 2 2 0 6 3375 3374 3809 -7622 2 2 0 6 4355 4890 4889 -7623 2 2 0 6 6086 6087 6088 -7624 2 2 0 6 4370 5563 8326 -7625 2 2 0 6 2230 7716 2509 -7626 2 2 0 6 8647 8649 9109 -7627 2 2 0 6 1583 1582 1585 -7628 2 2 0 6 7557 7578 7559 -7629 2 2 0 6 3702 7889 3975 -7630 2 2 0 6 885 891 892 -7631 2 2 0 6 368 476 8284 -7632 2 2 0 6 2393 2692 2394 -7633 2 2 0 6 3650 3652 8698 -7634 2 2 0 6 7737 10840 10890 -7635 2 2 0 6 870 872 873 -7636 2 2 0 6 1467 1469 1468 -7637 2 2 0 6 1580 1584 1582 -7638 2 2 0 6 2582 8245 8799 -7639 2 2 0 6 3220 3684 3814 -7640 2 2 0 6 4147 4659 4232 -7641 2 2 0 6 2641 7911 2992 -7642 2 2 0 6 4877 7934 7935 -7643 2 2 0 6 8354 8785 8786 -7644 2 2 0 6 1878 8805 4341 -7645 2 2 0 6 1930 1931 1932 -7646 2 2 0 6 3497 3801 3802 -7647 2 2 0 6 1575 4395 1578 -7648 2 2 0 6 162 525 8322 -7649 2 2 0 6 1674 8668 4418 -7650 2 2 0 6 5470 5472 5471 -7651 2 2 0 6 4902 6342 6271 -7652 2 2 0 6 4142 7061 5201 -7653 2 2 0 6 3739 10792 8341 -7654 2 2 0 6 2082 2084 2083 -7655 2 2 0 6 2115 2129 2130 -7656 2 2 0 6 4232 4659 5121 -7657 2 2 0 6 4366 5126 4615 -7658 2 2 0 6 4732 5614 5613 -7659 2 2 0 6 3794 8632 4999 -7660 2 2 0 6 4903 4904 8029 -7661 2 2 0 6 873 874 875 -7662 2 2 0 6 1214 1228 1229 -7663 2 2 0 6 4202 4203 6689 -7664 2 2 0 6 3221 8603 8448 -7665 2 2 0 6 2587 8682 8683 -7666 2 2 0 6 5468 9217 6387 -7667 2 2 0 6 2698 2717 2980 -7668 2 2 0 6 4004 5443 4855 -7669 2 2 0 6 5053 7737 7738 -7670 2 2 0 6 7970 7971 7972 -7671 2 2 0 6 2243 2244 8456 -7672 2 2 0 6 1083 1087 1084 -7673 2 2 0 6 3838 4242 4241 -7674 2 2 0 6 4193 5502 4739 -7675 2 2 0 6 5742 5743 5744 -7676 2 2 0 6 5048 6384 6386 -7677 2 2 0 6 3350 7120 4031 -7678 2 2 0 6 7966 7969 7968 -7679 2 2 0 6 728 8697 729 -7680 2 2 0 6 8704 9013 8707 -7681 2 2 0 6 892 894 893 -7682 2 2 0 6 1555 1557 1869 -7683 2 2 0 6 2526 2783 2782 -7684 2 2 0 6 2802 3374 2804 -7685 2 2 0 6 5042 6006 6007 -7686 2 2 0 6 4655 6523 6157 -7687 2 2 0 6 1620 1757 8412 -7688 2 2 0 6 307 308 9139 -7689 2 2 0 6 181 182 427 -7690 2 2 0 6 2243 2461 2245 -7691 2 2 0 6 3931 3932 4291 -7692 2 2 0 6 4223 4225 5138 -7693 2 2 0 6 4756 4757 5162 -7694 2 2 0 6 3329 3331 5748 -7695 2 2 0 6 2535 7882 2744 -7696 2 2 0 6 5274 7068 8061 -7697 2 2 0 6 4924 8550 8403 -7698 2 2 0 6 1970 2512 8732 -7699 2 2 0 6 3155 3156 9106 -7700 2 2 0 6 3256 3258 3257 -7701 2 2 0 6 5818 5817 7095 -7702 2 2 0 6 163 8366 525 -7703 2 2 0 6 7789 7799 7793 -7704 2 2 0 6 3350 8130 7120 -7705 2 2 0 6 8208 8211 8209 -7706 2 2 0 6 4557 8873 3904 -7707 2 2 0 6 6582 10557 10288 -7708 2 2 0 6 3031 9373 3709 -7709 2 2 0 6 3376 3377 3378 -7710 2 2 0 6 2479 3696 8387 -7711 2 2 0 6 3442 9314 9603 -7712 2 2 0 6 66 67 453 -7713 2 2 0 6 1925 1926 2243 -7714 2 2 0 6 1627 4352 3363 -7715 2 2 0 6 3815 4632 4631 -7716 2 2 0 6 3909 3917 4726 -7717 2 2 0 6 1924 2187 8911 -7718 2 2 0 6 902 904 905 -7719 2 2 0 6 2170 2169 2171 -7720 2 2 0 6 2445 3189 2447 -7721 2 2 0 6 4504 4505 4635 -7722 2 2 0 6 4674 9031 4676 -7723 2 2 0 6 8548 8549 9225 -7724 2 2 0 6 6453 9547 9609 -7725 2 2 0 6 1229 1236 1237 -7726 2 2 0 6 1573 1575 1574 -7727 2 2 0 6 1416 1418 9643 -7728 2 2 0 6 4575 4577 4576 -7729 2 2 0 6 4158 4627 4629 -7730 2 2 0 6 5173 5180 5181 -7731 2 2 0 6 2250 2525 9009 -7732 2 2 0 6 5105 6076 6036 -7733 2 2 0 6 4872 5286 6275 -7734 2 2 0 6 6086 6088 6699 -7735 2 2 0 6 1110 3990 8856 -7736 2 2 0 6 2361 7881 7897 -7737 2 2 0 6 3193 8139 4403 -7738 2 2 0 6 8294 8295 8296 -7739 2 2 0 6 3857 3858 3859 -7740 2 2 0 6 3672 3946 3671 -7741 2 2 0 6 3929 4368 4369 -7742 2 2 0 6 3113 3923 9589 -7743 2 2 0 6 4223 8527 4224 -7744 2 2 0 6 4856 8544 5790 -7745 2 2 0 6 4182 4183 7514 -7746 2 2 0 6 6369 7533 6585 -7747 2 2 0 6 2547 7929 7886 -7748 2 2 0 6 5631 8126 10245 -7749 2 2 0 6 1480 1481 9248 -7750 2 2 0 6 7504 8029 10367 -7751 2 2 0 6 2167 2169 2168 -7752 2 2 0 6 3940 3941 3942 -7753 2 2 0 6 176 8591 419 -7754 2 2 0 6 4340 5855 5965 -7755 2 2 0 6 4363 7421 4364 -7756 2 2 0 6 4847 8670 4910 -7757 2 2 0 6 4237 4238 4239 -7758 2 2 0 6 5404 5405 5406 -7759 2 2 0 6 4613 5179 5606 -7760 2 2 0 6 6129 6130 6131 -7761 2 2 0 6 4202 8003 3775 -7762 2 2 0 6 1206 8345 8441 -7763 2 2 0 6 364 365 410 -7764 2 2 0 6 2718 8631 3223 -7765 2 2 0 6 1160 1187 1329 -7766 2 2 0 6 2256 2257 2472 -7767 2 2 0 6 2909 3215 3214 -7768 2 2 0 6 4786 4788 4787 -7769 2 2 0 6 4787 4788 4789 -7770 2 2 0 6 5986 5987 5988 -7771 2 2 0 6 2744 7883 10896 -7772 2 2 0 6 5652 7803 5668 -7773 2 2 0 6 1559 1561 8241 -7774 2 2 0 6 2752 2754 8484 -7775 2 2 0 6 6377 10256 7481 -7776 2 2 0 6 3378 3662 4004 -7777 2 2 0 6 684 8646 8585 -7778 2 2 0 6 7558 7560 7570 -7779 2 2 0 6 865 9056 871 -7780 2 2 0 6 7282 9148 7284 -7781 2 2 0 6 64 65 521 -7782 2 2 0 6 1087 1091 1088 -7783 2 2 0 6 2557 2788 2558 -7784 2 2 0 6 3318 3319 3320 -7785 2 2 0 6 3693 9240 5568 -7786 2 2 0 6 5701 7549 10294 -7787 2 2 0 6 1062 1065 1066 -7788 2 2 0 6 1250 1259 1252 -7789 2 2 0 6 2517 3376 2422 -7790 2 2 0 6 4156 4157 4158 -7791 2 2 0 6 4503 4505 4504 -7792 2 2 0 6 4282 4602 4601 -7793 2 2 0 6 4229 4671 4328 -7794 2 2 0 6 1893 3540 9389 -7795 2 2 0 6 4808 6374 6373 -7796 2 2 0 6 1757 6352 8412 -7797 2 2 0 6 1245 8447 1246 -7798 2 2 0 6 8261 8859 8265 -7799 2 2 0 6 1920 8987 8988 -7800 2 2 0 6 8952 9200 8960 -7801 2 2 0 6 4074 5975 9392 -7802 2 2 0 6 3331 7499 5748 -7803 2 2 0 6 1197 1213 1214 -7804 2 2 0 6 4632 5147 5145 -7805 2 2 0 6 4671 5486 5481 -7806 2 2 0 6 4461 6489 4463 -7807 2 2 0 6 6383 9036 9051 -7808 2 2 0 6 5496 9153 8832 -7809 2 2 0 6 2457 9225 2637 -7810 2 2 0 6 919 918 920 -7811 2 2 0 6 1080 1083 1081 -7812 2 2 0 6 2718 3222 2719 -7813 2 2 0 6 4102 4891 9053 -7814 2 2 0 6 3951 3952 4281 -7815 2 2 0 6 4152 4154 5512 -7816 2 2 0 6 5095 6045 5390 -7817 2 2 0 6 5486 6288 6287 -7818 2 2 0 6 5444 8594 9005 -7819 2 2 0 6 2550 7932 7931 -7820 2 2 0 6 7041 8862 8430 -7821 2 2 0 6 1336 1338 1337 -7822 2 2 0 6 3688 4098 4097 -7823 2 2 0 6 5138 5139 6797 -7824 2 2 0 6 4711 5196 7695 -7825 2 2 0 6 4673 8547 5124 -7826 2 2 0 6 1151 1174 1152 -7827 2 2 0 6 2410 2412 2921 -7828 2 2 0 6 4726 5251 4727 -7829 2 2 0 6 8517 8516 8518 -7830 2 2 0 6 2666 3487 8763 -7831 2 2 0 6 1060 1062 8235 -7832 2 2 0 6 570 572 571 -7833 2 2 0 6 1790 2158 1820 -7834 2 2 0 6 4098 5307 4588 -7835 2 2 0 6 5658 5659 5660 -7836 2 2 0 6 4955 9950 9886 -7837 2 2 0 6 3813 4000 8202 -7838 2 2 0 6 900 902 901 -7839 2 2 0 6 1840 1842 1841 -7840 2 2 0 6 1937 2195 2196 -7841 2 2 0 6 2461 2718 2462 -7842 2 2 0 6 3883 4684 4685 -7843 2 2 0 6 4791 4790 4792 -7844 2 2 0 6 5444 5446 5445 -7845 2 2 0 6 3792 5683 5442 -7846 2 2 0 6 5131 5133 6739 -7847 2 2 0 6 3343 7963 7964 -7848 2 2 0 6 8260 8261 8262 -7849 2 2 0 6 4879 5383 8791 -7850 2 2 0 6 5487 9066 8810 -7851 2 2 0 6 62 63 401 -7852 2 2 0 6 881 884 885 -7853 2 2 0 6 1311 1490 1312 -7854 2 2 0 6 2728 3228 3000 -7855 2 2 0 6 5455 5457 5456 -7856 2 2 0 6 5975 5974 5976 -7857 2 2 0 6 6356 6358 6359 -7858 2 2 0 6 3384 7862 7863 -7859 2 2 0 6 366 514 8237 -7860 2 2 0 6 7048 8573 8118 -7861 2 2 0 6 362 363 522 -7862 2 2 0 6 1742 1741 1744 -7863 2 2 0 6 3266 3306 4182 -7864 2 2 0 6 5662 5664 5666 -7865 2 2 0 6 2405 2557 2406 -7866 2 2 0 6 651 9635 8952 -7867 2 2 0 6 5132 8547 6343 -7868 2 2 0 6 829 833 832 -7869 2 2 0 6 1091 1094 1092 -7870 2 2 0 6 1058 1060 4199 -7871 2 2 0 6 4369 4368 4370 -7872 2 2 0 6 8000 8002 8001 -7873 2 2 0 6 890 915 8593 -7874 2 2 0 6 4451 5737 9298 -7875 2 2 0 6 5811 10203 10185 -7876 2 2 0 6 904 906 905 -7877 2 2 0 6 1868 1906 1907 -7878 2 2 0 6 2183 2360 2361 -7879 2 2 0 6 2783 2878 3221 -7880 2 2 0 6 3320 3322 3323 -7881 2 2 0 6 3215 4124 4122 -7882 2 2 0 6 8122 8124 8123 -7883 2 2 0 6 4005 8807 8806 -7884 2 2 0 6 5512 8210 8888 -7885 2 2 0 6 6461 8551 9624 -7886 2 2 0 6 866 867 868 -7887 2 2 0 6 5035 8753 5326 -7888 2 2 0 6 2309 9105 2501 -7889 2 2 0 6 4202 3777 4203 -7890 2 2 0 6 4371 4372 4373 -7891 2 2 0 6 4563 5344 5952 -7892 2 2 0 6 2868 2870 8664 -7893 2 2 0 6 1033 8666 1101 -7894 2 2 0 6 2573 2574 2575 -7895 2 2 0 6 4577 4580 4578 -7896 2 2 0 6 2987 3792 5442 -7897 2 2 0 6 4845 7233 5076 -7898 2 2 0 6 5824 6570 8197 -7899 2 2 0 6 1024 8619 8620 -7900 2 2 0 6 8675 9805 9683 -7901 2 2 0 6 1099 8017 1100 -7902 2 2 0 6 2325 2405 2406 -7903 2 2 0 6 5930 6364 6363 -7904 2 2 0 6 1574 3364 8129 -7905 2 2 0 6 7114 8793 8794 -7906 2 2 0 6 8673 8675 8876 -7907 2 2 0 6 3519 4451 9298 -7908 2 2 0 6 178 179 477 -7909 2 2 0 6 920 922 923 -7910 2 2 0 6 1133 1151 1134 -7911 2 2 0 6 1565 1566 1567 -7912 2 2 0 6 3663 4008 4007 -7913 2 2 0 6 4375 4376 4377 -7914 2 2 0 6 2418 2419 8319 -7915 2 2 0 6 8544 8545 9647 -7916 2 2 0 6 1902 1924 3470 -7917 2 2 0 6 1238 1240 5414 -7918 2 2 0 6 4582 8269 8270 -7919 2 2 0 6 2782 8448 3473 -7920 2 2 0 6 2648 9525 8139 -7921 2 2 0 6 1884 1979 9928 -7922 2 2 0 6 1220 1265 1221 -7923 2 2 0 6 1837 1838 1839 -7924 2 2 0 6 2662 2663 2874 -7925 2 2 0 6 1643 9699 9117 -7926 2 2 0 6 8706 8816 9013 -7927 2 2 0 6 2224 2226 2494 -7928 2 2 0 6 3920 9677 7994 -7929 2 2 0 6 3848 5811 3850 -7930 2 2 0 6 5403 6059 5405 -7931 2 2 0 6 4827 6315 6312 -7932 2 2 0 6 2281 2286 8647 -7933 2 2 0 6 3235 9649 3236 -7934 2 2 0 6 5445 5446 5884 -7935 2 2 0 6 185 186 8088 -7936 2 2 0 6 2978 9197 2997 -7937 2 2 0 6 165 8369 454 -7938 2 2 0 6 5884 5969 5885 -7939 2 2 0 6 827 829 828 -7940 2 2 0 6 1490 1763 1491 -7941 2 2 0 6 1951 1953 2248 -7942 2 2 0 6 5123 5124 5130 -7943 2 2 0 6 4808 7706 6374 -7944 2 2 0 6 172 478 8371 -7945 2 2 0 6 180 181 8557 -7946 2 2 0 6 1006 1007 1018 -7947 2 2 0 6 1094 1133 1095 -7948 2 2 0 6 1611 3359 1755 -7949 2 2 0 6 4505 4637 4635 -7950 2 2 0 6 4176 5064 5065 -7951 2 2 0 6 5673 5743 5742 -7952 2 2 0 6 1284 8120 1295 -7953 2 2 0 6 360 452 8359 -7954 2 2 0 6 832 833 834 -7955 2 2 0 6 4359 4362 4361 -7956 2 2 0 6 4000 4458 4630 -7957 2 2 0 6 5197 7053 6224 -7958 2 2 0 6 167 8400 526 -7959 2 2 0 6 1285 1311 1286 -7960 2 2 0 6 1878 1973 1879 -7961 2 2 0 6 5383 6120 6852 -7962 2 2 0 6 6275 7643 6276 -7963 2 2 0 6 2788 7834 2789 -7964 2 2 0 6 5443 7999 5802 -7965 2 2 0 6 2405 9518 2557 -7966 2 2 0 6 284 285 436 -7967 2 2 0 6 2093 2095 2097 -7968 2 2 0 6 5209 5465 6177 -7969 2 2 0 6 6360 6361 6359 -7970 2 2 0 6 5148 6821 6820 -7971 2 2 0 6 2832 2891 8717 -7972 2 2 0 6 6457 8802 9930 -7973 2 2 0 6 1183 1196 1197 -7974 2 2 0 6 1244 1245 1246 -7975 2 2 0 6 1821 1836 1835 -7976 2 2 0 6 1853 1854 1855 -7977 2 2 0 6 4637 5150 5149 -7978 2 2 0 6 3331 4702 5193 -7979 2 2 0 6 4629 5148 5332 -7980 2 2 0 6 5889 5897 8411 -7981 2 2 0 6 592 595 8449 -7982 2 2 0 6 970 971 977 -7983 2 2 0 6 1570 1572 1571 -7984 2 2 0 6 1858 1860 1859 -7985 2 2 0 6 4372 4374 4373 -7986 2 2 0 6 4860 6455 6456 -7987 2 2 0 6 3044 3046 3045 -7988 2 2 0 6 5128 6014 5607 -7989 2 2 0 6 4382 8476 8472 -7990 2 2 0 6 1024 8621 8623 -7991 2 2 0 6 1109 1110 1111 -7992 2 2 0 6 1832 1833 1925 -7993 2 2 0 6 4215 5105 4590 -7994 2 2 0 6 4680 5186 5188 -7995 2 2 0 6 4496 5843 4498 -7996 2 2 0 6 6122 6330 6839 -7997 2 2 0 6 1925 2245 8531 -7998 2 2 0 6 2847 3356 8575 -7999 2 2 0 6 1103 1106 1105 -8000 2 2 0 6 1111 1112 1113 -8001 2 2 0 6 1461 1462 1463 -8002 2 2 0 6 1747 3352 1865 -8003 2 2 0 6 3817 3818 4223 -8004 2 2 0 6 5859 7363 5860 -8005 2 2 0 6 279 280 428 -8006 2 2 0 6 368 369 476 -8007 2 2 0 6 1591 1593 1592 -8008 2 2 0 6 1718 1724 1752 -8009 2 2 0 6 2145 8014 4394 -8010 2 2 0 6 4297 5487 8810 -8011 2 2 0 6 1763 1832 1764 -8012 2 2 0 6 2473 2634 2472 -8013 2 2 0 6 4007 4560 4563 -8014 2 2 0 6 5475 5477 5476 -8015 2 2 0 6 170 524 8407 -8016 2 2 0 6 2699 8840 2701 -8017 2 2 0 6 2813 8807 4005 -8018 2 2 0 6 2673 9319 2880 -8019 2 2 0 6 386 387 450 -8020 2 2 0 6 1084 1087 1088 -8021 2 2 0 6 2557 2993 2788 -8022 2 2 0 6 4265 5429 5170 -8023 2 2 0 6 1802 4406 9204 -8024 2 2 0 6 885 892 893 -8025 2 2 0 6 1845 1846 1847 -8026 2 2 0 6 1844 2341 1846 -8027 2 2 0 6 4110 5415 5088 -8028 2 2 0 6 5678 5679 5680 -8029 2 2 0 6 5664 5945 5666 -8030 2 2 0 6 2056 10677 10676 -8031 2 2 0 6 4595 4599 7700 -8032 2 2 0 6 1046 1048 8435 -8033 2 2 0 6 1088 1813 8774 -8034 2 2 0 6 2072 9127 2075 -8035 2 2 0 6 1301 1302 1323 -8036 2 2 0 6 1852 1854 1853 -8037 2 2 0 6 1752 1899 4398 -8038 2 2 0 6 1243 5444 1245 -8039 2 2 0 6 3024 9375 8135 -8040 2 2 0 6 968 969 972 -8041 2 2 0 6 1266 1265 1285 -8042 2 2 0 6 3186 3188 3187 -8043 2 2 0 6 4902 6271 6270 -8044 2 2 0 6 914 916 915 -8045 2 2 0 6 3870 4803 3872 -8046 2 2 0 6 1021 8658 1499 -8047 2 2 0 6 1487 8817 4107 -8048 2 2 0 6 1571 1573 1574 -8049 2 2 0 6 2097 2105 2106 -8050 2 2 0 6 2195 2404 2324 -8051 2 2 0 6 5003 6567 6566 -8052 2 2 0 6 6512 7988 6511 -8053 2 2 0 6 5496 7074 9153 -8054 2 2 0 6 1583 1585 1586 -8055 2 2 0 6 1999 2001 2000 -8056 2 2 0 6 4370 4372 4371 -8057 2 2 0 6 3321 5048 5047 -8058 2 2 0 6 835 8829 3370 -8059 2 2 0 6 1974 2232 9475 -8060 2 2 0 6 108 109 469 -8061 2 2 0 6 1838 2229 1840 -8062 2 2 0 6 2533 2535 2744 -8063 2 2 0 6 4152 4153 4154 -8064 2 2 0 6 3866 4821 3868 -8065 2 2 0 6 3345 6608 9101 -8066 2 2 0 6 5361 5362 5363 -8067 2 2 0 6 5383 5384 6120 -8068 2 2 0 6 4592 6686 6688 -8069 2 2 0 6 8690 9007 9189 -8070 2 2 0 6 2480 5492 4357 -8071 2 2 0 6 5149 5150 6804 -8072 2 2 0 6 8264 8266 8262 -8073 2 2 0 6 3526 9069 4118 -8074 2 2 0 6 172 173 478 -8075 2 2 0 6 2692 2693 2394 -8076 2 2 0 6 4305 4665 4306 -8077 2 2 0 6 4522 5350 5351 -8078 2 2 0 6 4606 5296 5764 -8079 2 2 0 6 4402 8289 8772 -8080 2 2 0 6 7810 10888 7811 -8081 2 2 0 6 259 260 8458 -8082 2 2 0 6 1037 1098 1139 -8083 2 2 0 6 1198 1220 1199 -8084 2 2 0 6 4376 4378 4377 -8085 2 2 0 6 4420 4465 4464 -8086 2 2 0 6 5031 5870 5572 -8087 2 2 0 6 5637 5881 5882 -8088 2 2 0 6 3641 4194 8738 -8089 2 2 0 6 869 870 868 -8090 2 2 0 6 4258 4310 4311 -8091 2 2 0 6 1645 9117 1648 -8092 2 2 0 6 1243 1245 1244 -8093 2 2 0 6 1586 1585 1589 -8094 2 2 0 6 2734 2735 2736 -8095 2 2 0 6 3874 4795 3876 -8096 2 2 0 6 2111 8205 5097 -8097 2 2 0 6 3222 8470 3224 -8098 2 2 0 6 1192 8497 3647 -8099 2 2 0 6 5065 6504 9860 -8100 2 2 0 6 1390 8503 9077 -8101 2 2 0 6 2965 3298 9252 -8102 2 2 0 6 3379 3976 9300 -8103 2 2 0 6 5712 9402 9817 -8104 2 2 0 6 2176 2177 2192 -8105 2 2 0 6 5853 6354 6355 -8106 2 2 0 6 696 8912 8913 -8107 2 2 0 6 3527 9337 9069 -8108 2 2 0 6 2089 8460 2417 -8109 2 2 0 6 6738 6794 6795 -8110 2 2 0 6 5593 8822 6433 -8111 2 2 0 6 3919 5537 9112 -8112 2 2 0 6 1590 1591 1592 -8113 2 2 0 6 1790 1820 1791 -8114 2 2 0 6 1779 1827 1780 -8115 2 2 0 6 2654 3037 3329 -8116 2 2 0 6 5143 5386 5385 -8117 2 2 0 6 7294 7310 7296 -8118 2 2 0 6 8037 8038 8040 -8119 2 2 0 6 2481 8409 2483 -8120 2 2 0 6 3265 9896 6404 -8121 2 2 0 6 160 161 403 -8122 2 2 0 6 1150 1161 1162 -8123 2 2 0 6 1054 1056 1206 -8124 2 2 0 6 2551 2552 2662 -8125 2 2 0 6 2456 2738 2632 -8126 2 2 0 6 6255 5300 7201 -8127 2 2 0 6 647 8424 8959 -8128 2 2 0 6 7811 10888 10901 -8129 2 2 0 6 2421 2423 2422 -8130 2 2 0 6 4597 6400 9174 -8131 2 2 0 6 4557 5948 8873 -8132 2 2 0 6 4624 5315 4678 -8133 2 2 0 6 7291 7312 7292 -8134 2 2 0 6 2277 8367 2280 -8135 2 2 0 6 6396 9425 9577 -8136 2 2 0 6 1970 2251 2250 -8137 2 2 0 6 2774 3033 3034 -8138 2 2 0 6 7546 7905 7612 -8139 2 2 0 6 3655 8140 4428 -8140 2 2 0 6 1220 1221 1199 -8141 2 2 0 6 1593 1596 1594 -8142 2 2 0 6 4276 4284 8337 -8143 2 2 0 6 4561 6667 8321 -8144 2 2 0 6 1181 8497 1192 -8145 2 2 0 6 3151 7618 10104 -8146 2 2 0 6 828 829 832 -8147 2 2 0 6 1496 1517 1518 -8148 2 2 0 6 1839 1840 1841 -8149 2 2 0 6 2173 2174 2176 -8150 2 2 0 6 5446 6632 5884 -8151 2 2 0 6 875 880 881 -8152 2 2 0 6 3210 9091 9173 -8153 2 2 0 6 1483 1485 1484 -8154 2 2 0 6 2545 2548 2550 -8155 2 2 0 6 3108 3109 3110 -8156 2 2 0 6 2993 3842 3248 -8157 2 2 0 6 4717 5673 5672 -8158 2 2 0 6 1946 1949 6508 -8159 2 2 0 6 3429 9519 3445 -8160 2 2 0 6 4051 4503 4504 -8161 2 2 0 6 4793 4794 4863 -8162 2 2 0 6 4974 7739 6298 -8163 2 2 0 6 7881 7898 7897 -8164 2 2 0 6 1147 1257 8522 -8165 2 2 0 6 833 835 834 -8166 2 2 0 6 994 3342 1038 -8167 2 2 0 6 5802 8000 8001 -8168 2 2 0 6 4375 4768 8661 -8169 2 2 0 6 1132 1144 9143 -8170 2 2 0 6 1306 8165 9527 -8171 2 2 0 6 5603 9551 9323 -8172 2 2 0 6 3184 3186 3187 -8173 2 2 0 6 4230 4879 5408 -8174 2 2 0 6 4791 4793 5411 -8175 2 2 0 6 6534 6559 6560 -8176 2 2 0 6 7789 7790 7792 -8177 2 2 0 6 5512 8208 8209 -8178 2 2 0 6 1341 1340 8324 -8179 2 2 0 6 997 6473 8990 -8180 2 2 0 6 276 277 479 -8181 2 2 0 6 1770 1790 1771 -8182 2 2 0 6 1985 2240 2241 -8183 2 2 0 6 3778 3780 3781 -8184 2 2 0 6 4242 4243 4244 -8185 2 2 0 6 4715 5205 5204 -8186 2 2 0 6 4925 8402 4944 -8187 2 2 0 6 8031 8496 8032 -8188 2 2 0 6 170 171 524 -8189 2 2 0 6 2634 2728 3000 -8190 2 2 0 6 4373 4374 4375 -8191 2 2 0 6 5698 8357 5696 -8192 2 2 0 6 6229 7115 7116 -8193 2 2 0 6 8181 8186 8653 -8194 2 2 0 6 357 8440 402 -8195 2 2 0 6 270 480 8561 -8196 2 2 0 6 2608 8807 2610 -8197 2 2 0 6 1916 1915 8236 -8198 2 2 0 6 3947 3950 3951 -8199 2 2 0 6 2713 8569 8566 -8200 2 2 0 6 6071 9724 9623 -8201 2 2 0 6 282 283 516 -8202 2 2 0 6 1578 1579 1576 -8203 2 2 0 6 1589 1591 1590 -8204 2 2 0 6 2256 2472 7997 -8205 2 2 0 6 3880 4545 9542 -8206 2 2 0 6 578 579 577 -8207 2 2 0 6 815 827 826 -8208 2 2 0 6 1737 1739 1738 -8209 2 2 0 6 2174 2177 2176 -8210 2 2 0 6 4778 5286 4872 -8211 2 2 0 6 5969 6427 5970 -8212 2 2 0 6 6032 7066 9157 -8213 2 2 0 6 2548 2549 2551 -8214 2 2 0 6 2702 2701 2703 -8215 2 2 0 6 2894 3042 3041 -8216 2 2 0 6 3031 3709 3161 -8217 2 2 0 6 4050 4503 4051 -8218 2 2 0 6 4823 5347 5302 -8219 2 2 0 6 4855 5443 5801 -8220 2 2 0 6 4855 8544 4856 -8221 2 2 0 6 5542 5894 7945 -8222 2 2 0 6 753 8479 755 -8223 2 2 0 6 166 167 526 -8224 2 2 0 6 607 4104 997 -8225 2 2 0 6 6087 6089 6088 -8226 2 2 0 6 7561 7577 7563 -8227 2 2 0 6 162 163 525 -8228 2 2 0 6 1134 1151 1152 -8229 2 2 0 6 802 1178 804 -8230 2 2 0 6 1752 1898 1899 -8231 2 2 0 6 2461 8631 2718 -8232 2 2 0 6 997 6472 6473 -8233 2 2 0 6 7891 7893 7892 -8234 2 2 0 6 2762 7978 2902 -8235 2 2 0 6 667 668 8601 -8236 2 2 0 6 366 367 514 -8237 2 2 0 6 2501 9105 2942 -8238 2 2 0 6 1095 1133 1134 -8239 2 2 0 6 1993 1995 1994 -8240 2 2 0 6 5344 7735 7734 -8241 2 2 0 6 3602 9469 9124 -8242 2 2 0 6 4944 8402 8404 -8243 2 2 0 6 4715 8408 5205 -8244 2 2 0 6 3581 8914 3692 -8245 2 2 0 6 3604 9124 3756 -8246 2 2 0 6 1752 9304 1718 -8247 2 2 0 6 3777 3778 8867 -8248 2 2 0 6 6049 7098 6277 -8249 2 2 0 6 5467 6178 8978 -8250 2 2 0 6 8672 8673 9176 -8251 2 2 0 6 7438 9735 10516 -8252 2 2 0 6 2165 2167 2166 -8253 2 2 0 6 1930 1932 6494 -8254 2 2 0 6 5422 7249 7113 -8255 2 2 0 6 2982 7895 9782 -8256 2 2 0 6 176 177 8591 -8257 2 2 0 6 5745 10147 6598 -8258 2 2 0 6 2015 2017 2013 -8259 2 2 0 6 4428 4962 4961 -8260 2 2 0 6 2860 2943 8946 -8261 2 2 0 6 5737 8424 9200 -8262 2 2 0 6 5818 7095 7280 -8263 2 2 0 6 5466 8691 9217 -8264 2 2 0 6 6525 8422 6524 -8265 2 2 0 6 5433 8472 8473 -8266 2 2 0 6 1246 1249 1248 -8267 2 2 0 6 2793 2796 8755 -8268 2 2 0 6 1864 1865 1866 -8269 2 2 0 6 1985 2241 2242 -8270 2 2 0 6 2902 3205 3204 -8271 2 2 0 6 5131 5132 5133 -8272 2 2 0 6 364 410 8304 -8273 2 2 0 6 3765 9344 4219 -8274 2 2 0 6 175 176 419 -8275 2 2 0 6 1162 1182 1183 -8276 2 2 0 6 1710 1712 1711 -8277 2 2 0 6 5614 6208 5615 -8278 2 2 0 6 7903 9625 9466 -8279 2 2 0 6 7322 7324 7323 -8280 2 2 0 6 1036 7743 5378 -8281 2 2 0 6 8177 8180 8179 -8282 2 2 0 6 2850 8214 3068 -8283 2 2 0 6 4729 5604 8689 -8284 2 2 0 6 2781 4105 9439 -8285 2 2 0 6 2541 2542 2543 -8286 2 2 0 6 1048 1050 2588 -8287 2 2 0 6 4435 4808 4807 -8288 2 2 0 6 5403 5405 5404 -8289 2 2 0 6 1380 9039 1381 -8290 2 2 0 6 8689 9531 9671 -8291 2 2 0 6 1510 2448 1803 -8292 2 2 0 6 1530 1532 9205 -8293 2 2 0 6 2296 9600 9412 -8294 2 2 0 6 906 908 909 -8295 2 2 0 6 1441 1515 1777 -8296 2 2 0 6 1820 4338 8079 -8297 2 2 0 6 1629 3539 8428 -8298 2 2 0 6 889 890 8593 -8299 2 2 0 6 2891 4064 8717 -8300 2 2 0 6 4014 9906 8985 -8301 2 2 0 6 168 169 411 -8302 2 2 0 6 1841 1842 1843 -8303 2 2 0 6 5024 5968 5023 -8304 2 2 0 6 4698 7780 5197 -8305 2 2 0 6 3544 3547 8315 -8306 2 2 0 6 1582 1584 8396 -8307 2 2 0 6 3427 8678 3429 -8308 2 2 0 6 1599 1602 9112 -8309 2 2 0 6 827 828 826 -8310 2 2 0 6 2828 2829 3038 -8311 2 2 0 6 4353 4355 4888 -8312 2 2 0 6 4713 5172 5173 -8313 2 2 0 6 8915 9332 9736 -8314 2 2 0 6 7964 7965 7966 -8315 2 2 0 6 94 95 532 -8316 2 2 0 6 983 986 989 -8317 2 2 0 6 4808 6373 5342 -8318 2 2 0 6 5108 8193 8192 -8319 2 2 0 6 1134 1190 8818 -8320 2 2 0 6 3298 4447 9252 -8321 2 2 0 6 1152 1174 1175 -8322 2 2 0 6 1279 1289 1306 -8323 2 2 0 6 2099 2100 2101 -8324 2 2 0 6 790 2587 792 -8325 2 2 0 6 3853 3852 3854 -8326 2 2 0 6 2175 4410 2190 -8327 2 2 0 6 7655 7657 7656 -8328 2 2 0 6 5921 10216 10506 -8329 2 2 0 6 2692 2772 2693 -8330 2 2 0 6 1581 1582 1583 -8331 2 2 0 6 1860 1862 1861 -8332 2 2 0 6 4112 4587 4115 -8333 2 2 0 6 5477 5853 5852 -8334 2 2 0 6 6688 10346 8961 -8335 2 2 0 6 164 165 454 -8336 2 2 0 6 898 899 900 -8337 2 2 0 6 2803 2802 2804 -8338 2 2 0 6 2498 2844 2846 -8339 2 2 0 6 1056 1058 8343 -8340 2 2 0 6 5081 6229 8941 -8341 2 2 0 6 3351 3350 4031 -8342 2 2 0 6 1499 4401 2154 -8343 2 2 0 6 4297 4698 5197 -8344 2 2 0 6 4467 4985 5798 -8345 2 2 0 6 5474 7155 7223 -8346 2 2 0 6 4854 5634 7588 -8347 2 2 0 6 4109 4200 7816 -8348 2 2 0 6 3318 4021 7982 -8349 2 2 0 6 259 8458 404 -8350 2 2 0 6 5346 8328 8768 -8351 2 2 0 6 2699 2701 2700 -8352 2 2 0 6 3316 3966 3967 -8353 2 2 0 6 864 865 866 -8354 2 2 0 6 3740 4845 4200 -8355 2 2 0 6 5460 6349 5461 -8356 2 2 0 6 4448 6180 7019 -8357 2 2 0 6 1534 8787 8789 -8358 2 2 0 6 7419 7426 9558 -8359 2 2 0 6 7753 9689 9973 -8360 2 2 0 6 1330 1332 1331 -8361 2 2 0 6 2554 2556 2555 -8362 2 2 0 6 2213 2375 2571 -8363 2 2 0 6 864 866 3341 -8364 2 2 0 6 3790 4214 4117 -8365 2 2 0 6 3841 4757 4756 -8366 2 2 0 6 3985 8958 4550 -8367 2 2 0 6 4911 9036 9805 -8368 2 2 0 6 5807 9611 10081 -8369 2 2 0 6 1266 1285 1286 -8370 2 2 0 6 2187 2368 2418 -8371 2 2 0 6 2801 2802 2803 -8372 2 2 0 6 3377 3663 3662 -8373 2 2 0 6 3788 3790 4117 -8374 2 2 0 6 4471 4473 4582 -8375 2 2 0 6 5642 5799 5746 -8376 2 2 0 6 4662 6141 6142 -8377 2 2 0 6 5790 7420 7419 -8378 2 2 0 6 1070 8394 3365 -8379 2 2 0 6 4447 4729 8689 -8380 2 2 0 6 2568 9587 2848 -8381 2 2 0 6 3056 3317 3318 -8382 2 2 0 6 665 9063 9000 -8383 2 2 0 6 3985 3986 8958 -8384 2 2 0 6 5523 5522 5524 -8385 2 2 0 6 5109 6707 6099 -8386 2 2 0 6 2525 2784 9009 -8387 2 2 0 6 1886 8613 1888 -8388 2 2 0 6 5108 9058 8193 -8389 2 2 0 6 1925 2243 2245 -8390 2 2 0 6 3166 4054 8595 -8391 2 2 0 6 1144 1149 1150 -8392 2 2 0 6 3000 3228 3826 -8393 2 2 0 6 3344 8259 6609 -8394 2 2 0 6 3187 3188 3293 -8395 2 2 0 6 1551 1553 4351 -8396 2 2 0 6 7862 7865 7863 -8397 2 2 0 6 8847 8848 8971 -8398 2 2 0 6 963 964 968 -8399 2 2 0 6 1092 1094 1095 -8400 2 2 0 6 1739 1741 1740 -8401 2 2 0 6 1825 1826 1912 -8402 2 2 0 6 1934 1970 2250 -8403 2 2 0 6 2431 2763 2433 -8404 2 2 0 6 2795 2798 2797 -8405 2 2 0 6 3228 4230 3826 -8406 2 2 0 6 3963 3965 9275 -8407 2 2 0 6 2575 2576 2577 -8408 2 2 0 6 5656 5658 5667 -8409 2 2 0 6 4560 4561 8321 -8410 2 2 0 6 1832 1925 8531 -8411 2 2 0 6 2920 9007 8690 -8412 2 2 0 6 894 895 896 -8413 2 2 0 6 1088 1091 1092 -8414 2 2 0 6 808 816 1519 -8415 2 2 0 6 1863 1862 1915 -8416 2 2 0 6 1927 1928 2249 -8417 2 2 0 6 2577 2578 2579 -8418 2 2 0 6 8318 9173 9091 -8419 2 2 0 6 1192 3647 1217 -8420 2 2 0 6 5989 5991 5990 -8421 2 2 0 6 6254 6984 6983 -8422 2 2 0 6 582 584 8297 -8423 2 2 0 6 7287 8434 7288 -8424 2 2 0 6 8508 8511 8512 -8425 2 2 0 6 8067 9691 3656 -8426 2 2 0 6 979 980 983 -8427 2 2 0 6 1221 1265 1266 -8428 2 2 0 6 2193 2257 2256 -8429 2 2 0 6 4479 4481 5816 -8430 2 2 0 6 5410 7540 6564 -8431 2 2 0 6 1559 8241 8438 -8432 2 2 0 6 3458 5517 8614 -8433 2 2 0 6 2306 2345 8763 -8434 2 2 0 6 902 903 904 -8435 2 2 0 6 1175 1198 1199 -8436 2 2 0 6 3953 3954 4871 -8437 2 2 0 6 4697 5195 5194 -8438 2 2 0 6 4739 5502 5503 -8439 2 2 0 6 7968 7969 7970 -8440 2 2 0 6 2245 2461 2462 -8441 2 2 0 6 2731 2733 2734 -8442 2 2 0 6 2088 2102 9026 -8443 2 2 0 6 3855 3856 3857 -8444 2 2 0 6 6445 6447 8429 -8445 2 2 0 6 790 8682 2587 -8446 2 2 0 6 1529 8787 1531 -8447 2 2 0 6 772 780 9209 -8448 2 2 0 6 5442 5684 9301 -8449 2 2 0 6 273 274 420 -8450 2 2 0 6 1132 1143 1144 -8451 2 2 0 6 1315 1495 1496 -8452 2 2 0 6 3956 4276 4571 -8453 2 2 0 6 4272 5465 5209 -8454 2 2 0 6 417 8376 8377 -8455 2 2 0 6 1248 1249 1250 -8456 2 2 0 6 1592 1593 1594 -8457 2 2 0 6 1507 1808 2603 -8458 2 2 0 6 2737 3065 2989 -8459 2 2 0 6 4306 4665 5284 -8460 2 2 0 6 4234 5122 8109 -8461 2 2 0 6 4877 7933 7934 -8462 2 2 0 6 6178 8244 8978 -8463 2 2 0 6 3766 4220 4334 -8464 2 2 0 6 2486 2651 2652 -8465 2 2 0 6 2984 3213 7998 -8466 2 2 0 6 8261 8264 8262 -8467 2 2 0 6 2724 4179 9247 -8468 2 2 0 6 2287 9297 2286 -8469 2 2 0 6 6130 9398 7525 -8470 2 2 0 6 5703 8315 9780 -8471 2 2 0 6 996 9816 5751 -8472 2 2 0 6 1296 1298 1299 -8473 2 2 0 6 2703 2705 2704 -8474 2 2 0 6 2158 4339 4338 -8475 2 2 0 6 4686 5190 5187 -8476 2 2 0 6 4309 5304 6550 -8477 2 2 0 6 7957 7958 8132 -8478 2 2 0 6 5597 8554 7165 -8479 2 2 0 6 3464 8720 3499 -8480 2 2 0 6 3589 8655 8784 -8481 2 2 0 6 7891 9078 7906 -8482 2 2 0 6 1930 1929 1931 -8483 2 2 0 6 4985 5829 8031 -8484 2 2 0 6 3069 3070 4099 -8485 2 2 0 6 3098 3099 4326 -8486 2 2 0 6 2162 2213 8431 -8487 2 2 0 6 1764 1832 8532 -8488 2 2 0 6 3637 9477 9685 -8489 2 2 0 6 1813 8775 8774 -8490 2 2 0 6 898 900 901 -8491 2 2 0 6 3646 3831 3798 -8492 2 2 0 6 4296 4698 4297 -8493 2 2 0 6 1761 1830 8643 -8494 2 2 0 6 1280 5378 6998 -8495 2 2 0 6 5280 5393 7176 -8496 2 2 0 6 5736 8985 6394 -8497 2 2 0 6 3345 9101 4286 -8498 2 2 0 6 5966 10804 8086 -8499 2 2 0 6 1226 1243 1242 -8500 2 2 0 6 1459 1462 1461 -8501 2 2 0 6 2824 2825 2826 -8502 2 2 0 6 3841 4756 4755 -8503 2 2 0 6 4782 4783 4784 -8504 2 2 0 6 3034 10026 5859 -8505 2 2 0 6 3468 7987 4078 -8506 2 2 0 6 5320 8770 8771 -8507 2 2 0 6 2545 2546 2548 -8508 2 2 0 6 4064 5028 5637 -8509 2 2 0 6 5020 5928 6337 -8510 2 2 0 6 3064 3304 7147 -8511 2 2 0 6 8034 8036 8035 -8512 2 2 0 6 1125 1135 8929 -8513 2 2 0 6 1286 1311 1312 -8514 2 2 0 6 2196 2324 2325 -8515 2 2 0 6 2572 2574 2573 -8516 2 2 0 6 2462 2718 2719 -8517 2 2 0 6 2899 3196 2933 -8518 2 2 0 6 3347 3349 3348 -8519 2 2 0 6 3851 3850 3852 -8520 2 2 0 6 3394 9100 5538 -8521 2 2 0 6 2169 8921 2171 -8522 2 2 0 6 6490 8949 10165 -8523 2 2 0 6 1355 10322 1502 -8524 2 2 0 6 906 907 908 -8525 2 2 0 6 2319 3212 2403 -8526 2 2 0 6 1755 3359 3360 -8527 2 2 0 6 1146 3561 1154 -8528 2 2 0 6 5399 5401 5400 -8529 2 2 0 6 5139 6799 6797 -8530 2 2 0 6 7297 9864 9915 -8531 2 2 0 6 360 361 452 -8532 2 2 0 6 1355 1502 1356 -8533 2 2 0 6 3797 3821 3829 -8534 2 2 0 6 4214 5102 4593 -8535 2 2 0 6 4553 5455 5456 -8536 2 2 0 6 5386 7594 7359 -8537 2 2 0 6 4064 5637 8717 -8538 2 2 0 6 1095 1134 8818 -8539 2 2 0 6 2596 9278 9596 -8540 2 2 0 6 1103 1105 1104 -8541 2 2 0 6 4345 8103 8104 -8542 2 2 0 6 8281 9795 9017 -8543 2 2 0 6 7523 9587 9929 -8544 2 2 0 6 910 911 970 -8545 2 2 0 6 1264 1277 1508 -8546 2 2 0 6 1099 1101 2259 -8547 2 2 0 6 4274 4628 4627 -8548 2 2 0 6 5484 6731 5485 -8549 2 2 0 6 5138 6797 6798 -8550 2 2 0 6 5209 6177 7030 -8551 2 2 0 6 5503 5504 7134 -8552 2 2 0 6 3900 4725 8524 -8553 2 2 0 6 1079 2314 8831 -8554 2 2 0 6 1562 9324 1564 -8555 2 2 0 6 1926 2244 2243 -8556 2 2 0 6 1234 9003 1262 -8557 2 2 0 6 3299 4296 4297 -8558 2 2 0 6 1619 4902 1757 -8559 2 2 0 6 3467 3987 8463 -8560 2 2 0 6 1490 8467 8611 -8561 2 2 0 6 1784 1878 1806 -8562 2 2 0 6 1297 2572 1317 -8563 2 2 0 6 2718 3223 3222 -8564 2 2 0 6 3205 3698 3697 -8565 2 2 0 6 4043 5005 5004 -8566 2 2 0 6 3917 5360 4758 -8567 2 2 0 6 5617 6433 6453 -8568 2 2 0 6 1206 8343 8344 -8569 2 2 0 6 1024 8620 8621 -8570 2 2 0 6 630 3736 8773 -8571 2 2 0 6 3343 7964 9143 -8572 2 2 0 6 848 9156 850 -8573 2 2 0 6 356 357 402 -8574 2 2 0 6 1113 1114 1115 -8575 2 2 0 6 1883 2151 2150 -8576 2 2 0 6 2144 2208 2328 -8577 2 2 0 6 3294 3624 3625 -8578 2 2 0 6 3831 4672 4261 -8579 2 2 0 6 8971 8972 10330 -8580 2 2 0 6 4784 4785 4786 -8581 2 2 0 6 1018 1029 9884 -8582 2 2 0 6 2823 2825 2824 -8583 2 2 0 6 3223 3818 3817 -8584 2 2 0 6 3942 4687 4689 -8585 2 2 0 6 3832 5375 4674 -8586 2 2 0 6 4219 5781 5111 -8587 2 2 0 6 6356 6357 6358 -8588 2 2 0 6 3918 9194 5560 -8589 2 2 0 6 1292 4443 9845 -8590 2 2 0 6 5415 10628 6017 -8591 2 2 0 6 1312 1490 1491 -8592 2 2 0 6 1861 9223 3387 -8593 2 2 0 6 2874 2875 3104 -8594 2 2 0 6 5008 8848 8847 -8595 2 2 0 6 1971 1972 2210 -8596 2 2 0 6 2540 2541 2539 -8597 2 2 0 6 3336 3911 3953 -8598 2 2 0 6 3976 4775 4776 -8599 2 2 0 6 5761 5763 5762 -8600 2 2 0 6 4404 5506 6379 -8601 2 2 0 6 7838 7840 7839 -8602 2 2 0 6 333 334 9122 -8603 2 2 0 6 4025 5592 9158 -8604 2 2 0 6 4487 4649 9833 -8605 2 2 0 6 1932 1933 1934 -8606 2 2 0 6 2529 2531 4001 -8607 2 2 0 6 4756 5162 6216 -8608 2 2 0 6 6711 6713 6714 -8609 2 2 0 6 4826 7488 6675 -8610 2 2 0 6 1246 8447 1249 -8611 2 2 0 6 821 824 9123 -8612 2 2 0 6 8730 9355 9918 -8613 2 2 0 6 2543 2544 2545 -8614 2 2 0 6 2791 2794 2793 -8615 2 2 0 6 4504 4635 4636 -8616 2 2 0 6 4709 5212 5213 -8617 2 2 0 6 3709 5475 4535 -8618 2 2 0 6 1829 8815 4409 -8619 2 2 0 6 2084 8999 2086 -8620 2 2 0 6 358 359 528 -8621 2 2 0 6 811 3386 815 -8622 2 2 0 6 1518 2228 2496 -8623 2 2 0 6 2375 3347 2571 -8624 2 2 0 6 3818 4225 4223 -8625 2 2 0 6 4537 4572 4573 -8626 2 2 0 6 3877 3983 4638 -8627 2 2 0 6 5207 6585 6586 -8628 2 2 0 6 7314 7327 7326 -8629 2 2 0 6 5302 8054 5497 -8630 2 2 0 6 772 9209 4400 -8631 2 2 0 6 4496 8687 5843 -8632 2 2 0 6 4177 4307 9061 -8633 2 2 0 6 4447 8689 9252 -8634 2 2 0 6 1859 1861 3387 -8635 2 2 0 6 3600 9469 3602 -8636 2 2 0 6 6309 7699 6308 -8637 2 2 0 6 8079 8801 8085 -8638 2 2 0 6 3602 9124 3604 -8639 2 2 0 6 894 896 897 -8640 2 2 0 6 1115 1116 1117 -8641 2 2 0 6 1491 1763 1764 -8642 2 2 0 6 1585 3476 1589 -8643 2 2 0 6 2193 2256 2192 -8644 2 2 0 6 3831 4673 4672 -8645 2 2 0 6 4168 4905 4904 -8646 2 2 0 6 4688 5394 5250 -8647 2 2 0 6 5567 5568 5569 -8648 2 2 0 6 4828 6312 6313 -8649 2 2 0 6 7306 7313 7308 -8650 2 2 0 6 7762 7765 7763 -8651 2 2 0 6 5485 7583 8749 -8652 2 2 0 6 8768 8769 8770 -8653 2 2 0 6 4775 5596 4776 -8654 2 2 0 6 5424 5690 5925 -8655 2 2 0 6 7300 7311 7302 -8656 2 2 0 6 1095 8818 8618 -8657 2 2 0 6 1572 1577 1573 -8658 2 2 0 6 3254 3256 3255 -8659 2 2 0 6 3053 4151 4152 -8660 2 2 0 6 3817 4223 4224 -8661 2 2 0 6 1635 4405 1637 -8662 2 2 0 6 367 368 8284 -8663 2 2 0 6 4783 4785 4784 -8664 2 2 0 6 3901 3903 9059 -8665 2 2 0 6 4592 6688 8961 -8666 2 2 0 6 2129 4493 8685 -8667 2 2 0 6 3922 5601 8890 -8668 2 2 0 6 4142 5201 4143 -8669 2 2 0 6 3400 3404 8421 -8670 2 2 0 6 9076 9418 9077 -8671 2 2 0 6 2005 2007 2006 -8672 2 2 0 6 2705 2707 2706 -8673 2 2 0 6 4698 4699 5217 -8674 2 2 0 6 3816 6223 5496 -8675 2 2 0 6 5983 5984 5982 -8676 2 2 0 6 5932 5933 6010 -8677 2 2 0 6 1496 8918 3373 -8678 2 2 0 6 5853 6355 8325 -8679 2 2 0 6 5661 8330 6133 -8680 2 2 0 6 1799 8494 1886 -8681 2 2 0 6 1553 1554 1555 -8682 2 2 0 6 1932 8505 6494 -8683 2 2 0 6 3698 4028 3700 -8684 2 2 0 6 4372 5346 4374 -8685 2 2 0 6 4754 5373 5488 -8686 2 2 0 6 1569 1571 8129 -8687 2 2 0 6 1358 3628 1489 -8688 2 2 0 6 5078 6028 6029 -8689 2 2 0 6 5307 7197 5308 -8690 2 2 0 6 7967 9387 9143 -8691 2 2 0 6 2806 3213 2984 -8692 2 2 0 6 3709 4535 4049 -8693 2 2 0 6 3749 4552 4169 -8694 2 2 0 6 4573 4827 4828 -8695 2 2 0 6 3455 4867 4868 -8696 2 2 0 6 4516 5679 5678 -8697 2 2 0 6 4535 5476 5795 -8698 2 2 0 6 6133 8330 8331 -8699 2 2 0 6 5715 8777 8778 -8700 2 2 0 6 2253 2529 8828 -8701 2 2 0 6 814 815 826 -8702 2 2 0 6 2750 2752 2756 -8703 2 2 0 6 4135 4732 5613 -8704 2 2 0 6 4408 6025 6395 -8705 2 2 0 6 1789 1873 8316 -8706 2 2 0 6 8328 8769 8768 -8707 2 2 0 6 5836 10314 8471 -8708 2 2 0 6 1105 1106 1107 -8709 2 2 0 6 3516 9174 9001 -8710 2 2 0 6 3544 3546 3547 -8711 2 2 0 6 3830 4252 4221 -8712 2 2 0 6 4827 6312 4828 -8713 2 2 0 6 7326 7327 7542 -8714 2 2 0 6 3183 9546 8469 -8715 2 2 0 6 1056 8343 1206 -8716 2 2 0 6 1785 1786 1882 -8717 2 2 0 6 5847 7689 5848 -8718 2 2 0 6 6625 10298 10381 -8719 2 2 0 6 2235 2488 2358 -8720 2 2 0 6 4159 4775 3976 -8721 2 2 0 6 3800 4970 4971 -8722 2 2 0 6 4452 5526 5527 -8723 2 2 0 6 2788 3248 7834 -8724 2 2 0 6 3186 8084 3188 -8725 2 2 0 6 1084 1088 8774 -8726 2 2 0 6 10 11 467 -8727 2 2 0 6 2210 2211 2373 -8728 2 2 0 6 1744 8163 1747 -8729 2 2 0 6 8482 9171 8954 -8730 2 2 0 6 2384 8483 2428 -8731 2 2 0 6 4725 6392 8524 -8732 2 2 0 6 8647 8648 8649 -8733 2 2 0 6 1662 9457 1665 -8734 2 2 0 6 264 265 531 -8735 2 2 0 6 1835 1836 1837 -8736 2 2 0 6 3928 9512 4519 -8737 2 2 0 6 5596 5600 7166 -8738 2 2 0 6 6355 6356 7854 -8739 2 2 0 6 4095 9181 5030 -8740 2 2 0 6 605 607 997 -8741 2 2 0 6 2406 2557 2558 -8742 2 2 0 6 1693 1695 3362 -8743 2 2 0 6 5989 6293 8149 -8744 2 2 0 6 3553 5522 3916 -8745 2 2 0 6 5736 6394 5737 -8746 2 2 0 6 5970 6427 6428 -8747 2 2 0 6 7893 7894 7892 -8748 2 2 0 6 8707 8710 9539 -8749 2 2 0 6 2505 2853 2854 -8750 2 2 0 6 2870 3379 8664 -8751 2 2 0 6 3179 3743 4172 -8752 2 2 0 6 5487 6225 9066 -8753 2 2 0 6 2596 2598 9278 -8754 2 2 0 6 357 358 8440 -8755 2 2 0 6 1597 1600 1599 -8756 2 2 0 6 1833 1926 1925 -8757 2 2 0 6 1984 2240 1985 -8758 2 2 0 6 5885 5969 5970 -8759 2 2 0 6 5285 6874 6257 -8760 2 2 0 6 5580 7373 7265 -8761 2 2 0 6 1065 8256 1066 -8762 2 2 0 6 2822 2821 2823 -8763 2 2 0 6 3936 3937 3938 -8764 2 2 0 6 3299 4295 4296 -8765 2 2 0 6 4374 4376 4375 -8766 2 2 0 6 7288 7291 7290 -8767 2 2 0 6 2899 8075 4013 -8768 2 2 0 6 5573 8784 8655 -8769 2 2 0 6 2975 9169 2978 -8770 2 2 0 6 7630 9398 9010 -8771 2 2 0 6 4379 4380 4381 -8772 2 2 0 6 3982 4777 4293 -8773 2 2 0 6 7048 9232 8573 -8774 2 2 0 6 6274 8055 8054 -8775 2 2 0 6 3688 8752 4892 -8776 2 2 0 6 2607 2900 9626 -8777 2 2 0 6 2173 2175 2172 -8778 2 2 0 6 2292 2293 2297 -8779 2 2 0 6 2878 3153 9010 -8780 2 2 0 6 2719 3222 3224 -8781 2 2 0 6 1908 9176 8876 -8782 2 2 0 6 6084 6085 6086 -8783 2 2 0 6 4666 6147 5469 -8784 2 2 0 6 3344 6609 6608 -8785 2 2 0 6 5327 7358 7356 -8786 2 2 0 6 5614 8255 7028 -8787 2 2 0 6 4923 9583 9057 -8788 2 2 0 6 3784 3786 3785 -8789 2 2 0 6 3004 3807 3806 -8790 2 2 0 6 3285 4073 5423 -8791 2 2 0 6 6484 6509 6510 -8792 2 2 0 6 3914 4730 9193 -8793 2 2 0 6 889 8593 3478 -8794 2 2 0 6 2290 2291 2292 -8795 2 2 0 6 3929 9579 9512 -8796 2 2 0 6 1764 8532 1797 -8797 2 2 0 6 4964 5646 6423 -8798 2 2 0 6 2677 8139 3193 -8799 2 2 0 6 3224 8470 8471 -8800 2 2 0 6 8705 8709 8708 -8801 2 2 0 6 1569 1568 1570 -8802 2 2 0 6 2715 2836 2830 -8803 2 2 0 6 2856 2854 2857 -8804 2 2 0 6 5124 5132 5131 -8805 2 2 0 6 5650 5652 5668 -8806 2 2 0 6 4933 8068 4939 -8807 2 2 0 6 6358 6360 6359 -8808 2 2 0 6 2756 8484 8485 -8809 2 2 0 6 2750 2756 8750 -8810 2 2 0 6 8189 8740 8943 -8811 2 2 0 6 266 267 412 -8812 2 2 0 6 811 815 814 -8813 2 2 0 6 1586 1589 1590 -8814 2 2 0 6 1591 1595 1593 -8815 2 2 0 6 2415 2476 2477 -8816 2 2 0 6 3909 4726 4727 -8817 2 2 0 6 5652 5653 5654 -8818 2 2 0 6 4904 4905 6267 -8819 2 2 0 6 8714 8881 8715 -8820 2 2 0 6 4787 4789 6351 -8821 2 2 0 6 3561 8391 8390 -8822 2 2 0 6 795 799 807 -8823 2 2 0 6 1242 1243 1244 -8824 2 2 0 6 4273 6597 7696 -8825 2 2 0 6 2243 8456 2461 -8826 2 2 0 6 4384 8472 5433 -8827 2 2 0 6 3304 3455 8578 -8828 2 2 0 6 2646 3447 8811 -8829 2 2 0 6 5835 10231 7937 -8830 2 2 0 6 2373 2374 2415 -8831 2 2 0 6 2428 2430 2429 -8832 2 2 0 6 520 7379 7380 -8833 2 2 0 6 7565 7693 7575 -8834 2 2 0 6 3944 8231 4823 -8835 2 2 0 6 1277 8694 1508 -8836 2 2 0 6 576 577 574 -8837 2 2 0 6 1315 1496 3373 -8838 2 2 0 6 2782 3473 2784 -8839 2 2 0 6 1941 3763 2206 -8840 2 2 0 6 4158 4157 4274 -8841 2 2 0 6 3347 5388 3349 -8842 2 2 0 6 1497 9013 9022 -8843 2 2 0 6 1610 1608 1611 -8844 2 2 0 6 2165 2746 2167 -8845 2 2 0 6 3111 3367 3671 -8846 2 2 0 6 3514 4037 4038 -8847 2 2 0 6 2601 4179 2724 -8848 2 2 0 6 1757 4902 6270 -8849 2 2 0 6 2580 2748 6449 -8850 2 2 0 6 5899 6635 6636 -8851 2 2 0 6 5441 10690 10693 -8852 2 2 0 6 8345 8348 8441 -8853 2 2 0 6 4194 4959 8738 -8854 2 2 0 6 1818 4390 9229 -8855 2 2 0 6 4038 4804 4805 -8856 2 2 0 6 2259 2261 4901 -8857 2 2 0 6 6512 6531 6532 -8858 2 2 0 6 4633 8290 5153 -8859 2 2 0 6 4409 8815 8816 -8860 2 2 0 6 1608 9394 1611 -8861 2 2 0 6 862 863 864 -8862 2 2 0 6 993 1003 1002 -8863 2 2 0 6 1863 1916 1927 -8864 2 2 0 6 2558 2788 2789 -8865 2 2 0 6 5289 7172 7173 -8866 2 2 0 6 3804 5379 8062 -8867 2 2 0 6 1092 8618 1813 -8868 2 2 0 6 2244 3053 8888 -8869 2 2 0 6 810 811 814 -8870 2 2 0 6 2461 8456 8631 -8871 2 2 0 6 2491 2661 2660 -8872 2 2 0 6 3379 3380 3976 -8873 2 2 0 6 2297 8605 3368 -8874 2 2 0 6 4225 5139 5138 -8875 2 2 0 6 4954 5273 5272 -8876 2 2 0 6 5284 5285 6256 -8877 2 2 0 6 1309 1493 1492 -8878 2 2 0 6 4921 5399 4922 -8879 2 2 0 6 4946 8351 5820 -8880 2 2 0 6 5268 8275 6499 -8881 2 2 0 6 4875 5687 8897 -8882 2 2 0 6 5802 8001 9502 -8883 2 2 0 6 7461 10308 10491 -8884 2 2 0 6 1564 1566 1565 -8885 2 2 0 6 2708 2712 2710 -8886 2 2 0 6 1110 8856 1112 -8887 2 2 0 6 5920 7438 6549 -8888 2 2 0 6 7476 7477 7475 -8889 2 2 0 6 7784 7786 7785 -8890 2 2 0 6 4902 8081 6342 -8891 2 2 0 6 5476 5852 8530 -8892 2 2 0 6 2815 8701 2817 -8893 2 2 0 6 8419 8862 7043 -8894 2 2 0 6 2472 2634 8636 -8895 2 2 0 6 3472 8517 8667 -8896 2 2 0 6 2857 3513 3514 -8897 2 2 0 6 3360 4289 4290 -8898 2 2 0 6 4325 4591 4592 -8899 2 2 0 6 4194 4958 4959 -8900 2 2 0 6 4272 5209 4733 -8901 2 2 0 6 2634 2635 2728 -8902 2 2 0 6 1712 8804 1715 -8903 2 2 0 6 1211 1188 4030 -8904 2 2 0 6 4944 8404 8405 -8905 2 2 0 6 5276 8466 8465 -8906 2 2 0 6 8566 8569 8568 -8907 2 2 0 6 8787 8788 8789 -8908 2 2 0 6 1763 1833 1832 -8909 2 2 0 6 4377 4378 4379 -8910 2 2 0 6 4073 5690 5424 -8911 2 2 0 6 6534 6560 6561 -8912 2 2 0 6 2344 2505 8995 -8913 2 2 0 6 5114 6711 9268 -8914 2 2 0 6 5621 9871 5736 -8915 2 2 0 6 1526 8903 4020 -8916 2 2 0 6 1517 2228 1518 -8917 2 2 0 6 307 9139 530 -8918 2 2 0 6 4169 5022 4749 -8919 2 2 0 6 2111 5097 5096 -8920 2 2 0 6 4776 5596 5597 -8921 2 2 0 6 4757 6122 5162 -8922 2 2 0 6 2731 2734 8457 -8923 2 2 0 6 5846 7186 7185 -8924 2 2 0 6 4899 10071 7904 -8925 2 2 0 6 2344 2504 2505 -8926 2 2 0 6 2780 2998 2999 -8927 2 2 0 6 4378 4380 4379 -8928 2 2 0 6 3944 4822 3945 -8929 2 2 0 6 5596 7166 8554 -8930 2 2 0 6 5149 6804 6805 -8931 2 2 0 6 1060 8235 4199 -8932 2 2 0 6 1599 1600 1601 -8933 2 2 0 6 1642 1640 1689 -8934 2 2 0 6 2171 2173 2172 -8935 2 2 0 6 3038 8810 3477 -8936 2 2 0 6 2772 2775 2773 -8937 2 2 0 6 3046 3048 3049 -8938 2 2 0 6 2512 4066 4404 -8939 2 2 0 6 4946 5820 5735 -8940 2 2 0 6 4415 5847 4881 -8941 2 2 0 6 4764 6104 6105 -8942 2 2 0 6 6160 6161 6796 -8943 2 2 0 6 4964 6423 8680 -8944 2 2 0 6 6392 8762 8524 -8945 2 2 0 6 773 776 781 -8946 2 2 0 6 1735 1737 1736 -8947 2 2 0 6 1934 1969 1970 -8948 2 2 0 6 1850 2340 1852 -8949 2 2 0 6 4782 4781 4783 -8950 2 2 0 6 4498 5843 5863 -8951 2 2 0 6 5474 7223 7224 -8952 2 2 0 6 6174 6580 8299 -8953 2 2 0 6 4503 8546 5856 -8954 2 2 0 6 890 913 914 -8955 2 2 0 6 1068 1069 1070 -8956 2 2 0 6 1117 1118 1119 -8957 2 2 0 6 782 787 1522 -8958 2 2 0 6 1594 1596 1597 -8959 2 2 0 6 881 9858 4141 -8960 2 2 0 6 1300 7991 3338 -8961 2 2 0 6 5623 8793 7114 -8962 2 2 0 6 5640 9023 5643 -8963 2 2 0 6 4420 5243 4465 -8964 2 2 0 6 5201 5282 5202 -8965 2 2 0 6 7249 7774 7775 -8966 2 2 0 6 4325 4899 8535 -8967 2 2 0 6 1488 1509 9202 -8968 2 2 0 6 5480 9348 5483 -8969 2 2 0 6 1612 1611 1755 -8970 2 2 0 6 2822 2823 2824 -8971 2 2 0 6 2505 2854 2856 -8972 2 2 0 6 3547 3548 3549 -8973 2 2 0 6 3995 4854 4861 -8974 2 2 0 6 4997 5027 5917 -8975 2 2 0 6 8500 8502 8501 -8976 2 2 0 6 4846 8838 5358 -8977 2 2 0 6 1108 1110 1109 -8978 2 2 0 6 1791 1820 1821 -8979 2 2 0 6 4577 4578 4576 -8980 2 2 0 6 4099 4100 4870 -8981 2 2 0 6 5897 5898 5899 -8982 2 2 0 6 5743 6210 5744 -8983 2 2 0 6 4038 4805 6285 -8984 2 2 0 6 5636 6436 5691 -8985 2 2 0 6 770 10720 8638 -8986 2 2 0 6 2660 2834 3371 -8987 2 2 0 6 909 910 912 -8988 2 2 0 6 916 917 918 -8989 2 2 0 6 2804 3374 3375 -8990 2 2 0 6 4822 4823 5302 -8991 2 2 0 6 5597 7165 5599 -8992 2 2 0 6 7795 7798 7796 -8993 2 2 0 6 5894 7946 7945 -8994 2 2 0 6 3481 8992 8430 -8995 2 2 0 6 1774 3710 9484 -8996 2 2 0 6 4369 4370 4371 -8997 2 2 0 6 2757 2759 2761 -8998 2 2 0 6 3009 3011 2644 -8999 2 2 0 6 5980 5981 5982 -9000 2 2 0 6 731 740 739 -9001 2 2 0 6 804 811 810 -9002 2 2 0 6 1307 1326 1327 -9003 2 2 0 6 1912 1914 1971 -9004 2 2 0 6 1689 2165 2164 -9005 2 2 0 6 2516 2897 2898 -9006 2 2 0 6 2687 2689 3069 -9007 2 2 0 6 1915 3529 4408 -9008 2 2 0 6 3849 3848 3850 -9009 2 2 0 6 2856 2857 3991 -9010 2 2 0 6 3601 3603 6200 -9011 2 2 0 6 1034 1099 1100 -9012 2 2 0 6 1566 1568 1567 -9013 2 2 0 6 1619 1757 1620 -9014 2 2 0 6 1499 2154 2153 -9015 2 2 0 6 2289 2294 2295 -9016 2 2 0 6 3158 3929 3928 -9017 2 2 0 6 3904 4555 4557 -9018 2 2 0 6 3721 4548 5530 -9019 2 2 0 6 6216 6217 7149 -9020 2 2 0 6 1123 1125 8929 -9021 2 2 0 6 5425 5424 7821 -9022 2 2 0 6 1635 8136 4405 -9023 2 2 0 6 5309 8427 7331 -9024 2 2 0 6 2713 8566 2715 -9025 2 2 0 6 1217 8594 1226 -9026 2 2 0 6 1484 3358 9248 -9027 2 2 0 6 887 913 890 -9028 2 2 0 6 2192 2256 2464 -9029 2 2 0 6 2820 2821 2822 -9030 2 2 0 6 2886 3170 3715 -9031 2 2 0 6 4946 5735 4947 -9032 2 2 0 6 5078 5079 6028 -9033 2 2 0 6 5201 7061 7872 -9034 2 2 0 6 1099 2259 8017 -9035 2 2 0 6 5228 7073 9313 -9036 2 2 0 6 4067 10148 8380 -9037 2 2 0 6 1065 1067 1068 -9038 2 2 0 6 761 1523 763 -9039 2 2 0 6 2825 2827 2826 -9040 2 2 0 6 4004 4855 4330 -9041 2 2 0 6 5020 5906 5928 -9042 2 2 0 6 6484 6510 6511 -9043 2 2 0 6 5730 6556 6557 -9044 2 2 0 6 4804 5907 8450 -9045 2 2 0 6 995 1000 1006 -9046 2 2 0 6 1329 1331 9347 -9047 2 2 0 6 2368 2419 2418 -9048 2 2 0 6 2323 2899 2468 -9049 2 2 0 6 3109 3111 3110 -9050 2 2 0 6 6482 6484 6483 -9051 2 2 0 6 1640 9150 1689 -9052 2 2 0 6 816 1751 1519 -9053 2 2 0 6 4156 4155 4157 -9054 2 2 0 6 4978 5980 5939 -9055 2 2 0 6 7964 7967 9143 -9056 2 2 0 6 6387 9217 8389 -9057 2 2 0 6 5796 10081 9936 -9058 2 2 0 6 1858 8667 2212 -9059 2 2 0 6 1696 1698 1699 -9060 2 2 0 6 2156 2227 2157 -9061 2 2 0 6 2208 2329 2328 -9062 2 2 0 6 4467 4468 4985 -9063 2 2 0 6 5003 6566 6565 -9064 2 2 0 6 4586 8725 5508 -9065 2 2 0 6 5948 8874 8873 -9066 2 2 0 6 1062 1063 1065 -9067 2 2 0 6 1112 1114 1113 -9068 2 2 0 6 2263 2265 3151 -9069 2 2 0 6 5568 5571 5569 -9070 2 2 0 6 5592 5729 5730 -9071 2 2 0 6 4307 5305 6588 -9072 2 2 0 6 7839 7840 7842 -9073 2 2 0 6 2159 1883 8909 -9074 2 2 0 6 3336 3953 9160 -9075 2 2 0 6 1299 1300 1301 -9076 2 2 0 6 4378 5320 4380 -9077 2 2 0 6 4734 5544 5545 -9078 2 2 0 6 5613 5614 5615 -9079 2 2 0 6 5445 5884 5885 -9080 2 2 0 6 6360 6362 6361 -9081 2 2 0 6 6690 7530 7641 -9082 2 2 0 6 6374 7706 7707 -9083 2 2 0 6 2684 8834 3317 -9084 2 2 0 6 4583 9014 6022 -9085 2 2 0 6 4412 9051 4911 -9086 2 2 0 6 4988 9497 9264 -9087 2 2 0 6 2297 2298 2299 -9088 2 2 0 6 3842 4668 4229 -9089 2 2 0 6 4185 4997 5479 -9090 2 2 0 6 2238 2344 5525 -9091 2 2 0 6 3376 9393 8319 -9092 2 2 0 6 8534 9972 9818 -9093 2 2 0 6 3142 3145 3144 -9094 2 2 0 6 3330 3331 3329 -9095 2 2 0 6 2957 4437 2959 -9096 2 2 0 6 5599 7347 5830 -9097 2 2 0 6 5326 7350 6294 -9098 2 2 0 6 3846 4964 8680 -9099 2 2 0 6 8703 8708 9338 -9100 2 2 0 6 8541 10090 8542 -9101 2 2 0 6 1195 1219 2389 -9102 2 2 0 6 1630 9155 8136 -9103 2 2 0 6 3322 4840 6245 -9104 2 2 0 6 6167 7492 7016 -9105 2 2 0 6 5721 5840 8033 -9106 2 2 0 6 1908 8876 2181 -9107 2 2 0 6 617 8880 618 -9108 2 2 0 6 5703 9705 9389 -9109 2 2 0 6 258 259 404 -9110 2 2 0 6 2473 2635 2634 -9111 2 2 0 6 2493 2838 2837 -9112 2 2 0 6 3414 3746 3416 -9113 2 2 0 6 5433 8473 8526 -9114 2 2 0 6 2971 4542 2973 -9115 2 2 0 6 1050 8417 2588 -9116 2 2 0 6 1896 1983 8499 -9117 2 2 0 6 1066 8256 8257 -9118 2 2 0 6 775 8681 785 -9119 2 2 0 6 4142 8748 7061 -9120 2 2 0 6 8398 9379 9810 -9121 2 2 0 6 606 609 608 -9122 2 2 0 6 4153 4155 4154 -9123 2 2 0 6 3987 4550 4551 -9124 2 2 0 6 4529 5051 4531 -9125 2 2 0 6 5394 5396 5395 -9126 2 2 0 6 1384 9039 9576 -9127 2 2 0 6 4869 5473 5474 -9128 2 2 0 6 1469 1470 1471 -9129 2 2 0 6 2156 2384 2227 -9130 2 2 0 6 2684 3317 3056 -9131 2 2 0 6 4856 5790 5541 -9132 2 2 0 6 5088 5415 6017 -9133 2 2 0 6 6354 6356 6355 -9134 2 2 0 6 8071 8073 8072 -9135 2 2 0 6 8278 8714 8715 -9136 2 2 0 6 2824 2920 8992 -9137 2 2 0 6 1654 9522 3616 -9138 2 2 0 6 1711 1715 3720 -9139 2 2 0 6 6442 8555 9907 -9140 2 2 0 6 8684 10066 10140 -9141 2 2 0 6 4348 7861 10210 -9142 2 2 0 6 727 731 730 -9143 2 2 0 6 798 802 801 -9144 2 2 0 6 2281 2282 2283 -9145 2 2 0 6 2477 2624 2625 -9146 2 2 0 6 2981 3813 3812 -9147 2 2 0 6 3359 4289 3360 -9148 2 2 0 6 5090 5640 5639 -9149 2 2 0 6 1857 8606 1960 -9150 2 2 0 6 1700 1702 1703 -9151 2 2 0 6 2155 2154 2156 -9152 2 2 0 6 2978 2997 2996 -9153 2 2 0 6 3829 4227 4251 -9154 2 2 0 6 5933 6030 6010 -9155 2 2 0 6 5464 5101 6064 -9156 2 2 0 6 4793 4863 7541 -9157 2 2 0 6 7730 7729 7732 -9158 2 2 0 6 1928 1930 8273 -9159 2 2 0 6 8181 8653 8182 -9160 2 2 0 6 693 695 694 -9161 2 2 0 6 1558 1560 1559 -9162 2 2 0 6 3182 3184 3183 -9163 2 2 0 6 912 4270 3890 -9164 2 2 0 6 2046 8117 7950 -9165 2 2 0 6 5701 9400 9873 -9166 2 2 0 6 751 3754 753 -9167 2 2 0 6 2888 3799 2985 -9168 2 2 0 6 5318 8025 8024 -9169 2 2 0 6 4159 4772 8693 -9170 2 2 0 6 1107 1108 1109 -9171 2 2 0 6 2835 3063 3062 -9172 2 2 0 6 4772 5288 5289 -9173 2 2 0 6 5549 6380 6381 -9174 2 2 0 6 8167 8169 8168 -9175 2 2 0 6 4039 8688 8687 -9176 2 2 0 6 1708 1710 1711 -9177 2 2 0 6 2279 2291 2290 -9178 2 2 0 6 2294 2308 2295 -9179 2 2 0 6 2793 2794 2795 -9180 2 2 0 6 3105 3107 3108 -9181 2 2 0 6 2736 2989 3239 -9182 2 2 0 6 5302 5347 6274 -9183 2 2 0 6 7304 7306 7305 -9184 2 2 0 6 5464 6064 7802 -9185 2 2 0 6 2588 8417 8418 -9186 2 2 0 6 268 269 519 -9187 2 2 0 6 4084 4439 8906 -9188 2 2 0 6 1752 1724 1898 -9189 2 2 0 6 8735 8737 8736 -9190 2 2 0 6 731 741 740 -9191 2 2 0 6 972 973 979 -9192 2 2 0 6 1117 1116 1118 -9193 2 2 0 6 2828 3038 3477 -9194 2 2 0 6 6568 6567 6569 -9195 2 2 0 6 5411 7545 7546 -9196 2 2 0 6 6668 8077 11088 -9197 2 2 0 6 2151 2160 2372 -9198 2 2 0 6 4018 4753 4752 -9199 2 2 0 6 5985 5987 5986 -9200 2 2 0 6 4356 4358 6341 -9201 2 2 0 6 6136 6926 6800 -9202 2 2 0 6 4329 8764 5063 -9203 2 2 0 6 4785 9265 4786 -9204 2 2 0 6 1071 1072 1070 -9205 2 2 0 6 1075 1080 1074 -9206 2 2 0 6 1166 1168 2941 -9207 2 2 0 6 2111 5096 4596 -9208 2 2 0 6 3026 9213 9373 -9209 2 2 0 6 5460 5461 5459 -9210 2 2 0 6 4881 5847 5848 -9211 2 2 0 6 4557 5936 5947 -9212 2 2 0 6 5239 6188 7089 -9213 2 2 0 6 5623 7114 7087 -9214 2 2 0 6 629 9809 4059 -9215 2 2 0 6 1257 1314 1315 -9216 2 2 0 6 966 3372 975 -9217 2 2 0 6 1354 9492 8504 -9218 2 2 0 6 3467 3499 3985 -9219 2 2 0 6 1881 4343 2679 -9220 2 2 0 6 4925 4944 4927 -9221 2 2 0 6 6333 8426 8425 -9222 2 2 0 6 6389 8767 9691 -9223 2 2 0 6 1110 1112 1111 -9224 2 2 0 6 3681 3944 3682 -9225 2 2 0 6 5297 7195 5370 -9226 2 2 0 6 6428 7453 6430 -9227 2 2 0 6 2676 5000 9899 -9228 2 2 0 6 2860 8946 3534 -9229 2 2 0 6 792 798 797 -9230 2 2 0 6 1560 1562 1561 -9231 2 2 0 6 4189 4977 4976 -9232 2 2 0 6 5204 5205 5206 -9233 2 2 0 6 5983 5985 5984 -9234 2 2 0 6 5401 7364 6063 -9235 2 2 0 6 171 172 8371 -9236 2 2 0 6 1217 3647 8594 -9237 2 2 0 6 6433 8822 9826 -9238 2 2 0 6 2762 2902 2901 -9239 2 2 0 6 1401 8932 1404 -9240 2 2 0 6 2786 3646 3798 -9241 2 2 0 6 4366 4615 4367 -9242 2 2 0 6 3749 5417 4552 -9243 2 2 0 6 5436 8044 9186 -9244 2 2 0 6 6089 6091 6090 -9245 2 2 0 6 5853 6353 6354 -9246 2 2 0 6 5599 8492 7347 -9247 2 2 0 6 8361 8362 8364 -9248 2 2 0 6 5584 5586 8718 -9249 2 2 0 6 5358 8838 8065 -9250 2 2 0 6 260 261 529 -9251 2 2 0 6 2269 2279 2290 -9252 2 2 0 6 3733 5031 5572 -9253 2 2 0 6 6609 8259 8263 -9254 2 2 0 6 1518 2497 8918 -9255 2 2 0 6 2943 3114 8946 -9256 2 2 0 6 961 9399 3973 -9257 2 2 0 6 8478 9672 9530 -9258 2 2 0 6 5781 10129 5783 -9259 2 2 0 6 797 798 801 -9260 2 2 0 6 1284 1294 1293 -9261 2 2 0 6 1519 1751 1785 -9262 2 2 0 6 1667 4553 3722 -9263 2 2 0 6 4102 4397 4891 -9264 2 2 0 6 4729 5199 5604 -9265 2 2 0 6 4759 8353 8352 -9266 2 2 0 6 2955 8442 8176 -9267 2 2 0 6 2752 8484 2756 -9268 2 2 0 6 3532 9329 7109 -9269 2 2 0 6 8651 9775 9822 -9270 2 2 0 6 6442 9927 8555 -9271 2 2 0 6 2491 2660 2490 -9272 2 2 0 6 3174 3269 4448 -9273 2 2 0 6 4052 4980 5539 -9274 2 2 0 6 5883 6607 6558 -9275 2 2 0 6 5490 6057 8536 -9276 2 2 0 6 3148 3171 8576 -9277 2 2 0 6 96 468 8629 -9278 2 2 0 6 2123 4394 8998 -9279 2 2 0 6 4069 9110 4898 -9280 2 2 0 6 3112 4487 9833 -9281 2 2 0 6 270 271 480 -9282 2 2 0 6 2459 2717 2698 -9283 2 2 0 6 3873 3875 4639 -9284 2 2 0 6 4146 6215 4147 -9285 2 2 0 6 4043 8574 5407 -9286 2 2 0 6 1530 9205 1535 -9287 2 2 0 6 3885 4267 9968 -9288 2 2 0 6 2828 2827 2829 -9289 2 2 0 6 3318 3317 3319 -9290 2 2 0 6 4904 6267 6268 -9291 2 2 0 6 3941 8395 4688 -9292 2 2 0 6 4387 4388 4445 -9293 2 2 0 6 4261 4672 5166 -9294 2 2 0 6 5796 5797 5807 -9295 2 2 0 6 4701 6175 6176 -9296 2 2 0 6 6251 7179 7253 -9297 2 2 0 6 571 4273 7696 -9298 2 2 0 6 3384 7864 8160 -9299 2 2 0 6 8344 8346 8345 -9300 2 2 0 6 5577 8973 7531 -9301 2 2 0 6 7739 7740 10392 -9302 2 2 0 6 2033 2067 2068 -9303 2 2 0 6 3048 3050 3049 -9304 2 2 0 6 3050 3181 3182 -9305 2 2 0 6 3727 5045 3729 -9306 2 2 0 6 5339 5901 5340 -9307 2 2 0 6 6283 6481 6482 -9308 2 2 0 6 5313 6043 6677 -9309 2 2 0 6 5321 5322 7248 -9310 2 2 0 6 718 722 721 -9311 2 2 0 6 1114 1116 1115 -9312 2 2 0 6 1311 8467 1490 -9313 2 2 0 6 2535 2536 2537 -9314 2 2 0 6 3128 3129 3130 -9315 2 2 0 6 3050 3182 3183 -9316 2 2 0 6 3153 3340 4050 -9317 2 2 0 6 4833 4835 4834 -9318 2 2 0 6 3951 4759 8352 -9319 2 2 0 6 5590 8945 9552 -9320 2 2 0 6 2489 2614 2613 -9321 2 2 0 6 3652 3651 3675 -9322 2 2 0 6 4860 6246 6455 -9323 2 2 0 6 4445 4894 6589 -9324 2 2 0 6 5254 5255 7136 -9325 2 2 0 6 1073 1074 1072 -9326 2 2 0 6 1106 1108 1107 -9327 2 2 0 6 1854 3472 1856 -9328 2 2 0 6 5672 5673 5742 -9329 2 2 0 6 1526 1528 8903 -9330 2 2 0 6 4609 9263 6113 -9331 2 2 0 6 742 743 744 -9332 2 2 0 6 1496 1495 1517 -9333 2 2 0 6 2293 2298 2297 -9334 2 2 0 6 1905 8669 1939 -9335 2 2 0 6 4788 4790 4789 -9336 2 2 0 6 5258 5259 4774 -9337 2 2 0 6 4476 5877 5044 -9338 2 2 0 6 2284 9448 8367 -9339 2 2 0 6 5733 7051 6218 -9340 2 2 0 6 5588 7607 7606 -9341 2 2 0 6 179 180 8558 -9342 2 2 0 6 262 263 456 -9343 2 2 0 6 1187 1330 1329 -9344 2 2 0 6 1720 1770 1769 -9345 2 2 0 6 2165 2166 2164 -9346 2 2 0 6 5090 6098 9023 -9347 2 2 0 6 3363 4352 4353 -9348 2 2 0 6 5225 6253 6254 -9349 2 2 0 6 2945 8967 3114 -9350 2 2 0 6 8069 8070 8074 -9351 2 2 0 6 7347 8492 8493 -9352 2 2 0 6 614 617 616 -9353 2 2 0 6 1604 1607 1605 -9354 2 2 0 6 2291 2293 2292 -9355 2 2 0 6 3038 3039 3299 -9356 2 2 0 6 3902 4555 3904 -9357 2 2 0 6 5150 5836 5837 -9358 2 2 0 6 3466 9379 8398 -9359 2 2 0 6 2900 8756 9626 -9360 2 2 0 6 5790 9647 7420 -9361 2 2 0 6 4371 8167 4520 -9362 2 2 0 6 803 804 810 -9363 2 2 0 6 3933 4579 4574 -9364 2 2 0 6 4119 5101 5464 -9365 2 2 0 6 5021 5506 4404 -9366 2 2 0 6 6073 6075 6074 -9367 2 2 0 6 4917 6388 6442 -9368 2 2 0 6 6482 6509 6484 -9369 2 2 0 6 7351 7590 7350 -9370 2 2 0 6 8517 8518 8520 -9371 2 2 0 6 6176 7026 7801 -9372 2 2 0 6 4678 5315 6039 -9373 2 2 0 6 5253 7117 7118 -9374 2 2 0 6 3856 7933 4877 -9375 2 2 0 6 5302 6274 8054 -9376 2 2 0 6 2812 2814 9079 -9377 2 2 0 6 2159 8909 4019 -9378 2 2 0 6 3702 3704 3703 -9379 2 2 0 6 4324 4325 4071 -9380 2 2 0 6 3964 4666 4253 -9381 2 2 0 6 3034 5859 4478 -9382 2 2 0 6 6151 6525 6524 -9383 2 2 0 6 1632 8136 1635 -9384 2 2 0 6 4044 9453 9452 -9385 2 2 0 6 3802 4236 9476 -9386 2 2 0 6 3236 3495 3494 -9387 2 2 0 6 8717 9685 9477 -9388 2 2 0 6 1081 1084 4347 -9389 2 2 0 6 3206 4921 4106 -9390 2 2 0 6 6085 6087 6086 -9391 2 2 0 6 4968 7940 5757 -9392 2 2 0 6 3302 9079 4391 -9393 2 2 0 6 2022 2024 2026 -9394 2 2 0 6 2026 2028 2029 -9395 2 2 0 6 2668 2670 2671 -9396 2 2 0 6 3011 3265 3266 -9397 2 2 0 6 3701 3700 3702 -9398 2 2 0 6 4382 4384 4383 -9399 2 2 0 6 6500 7143 6502 -9400 2 2 0 6 2042 2043 7950 -9401 2 2 0 6 3191 4052 8482 -9402 2 2 0 6 827 990 829 -9403 2 2 0 6 1056 1057 1058 -9404 2 2 0 6 2227 2384 2385 -9405 2 2 0 6 2819 2821 2820 -9406 2 2 0 6 3522 8623 8624 -9407 2 2 0 6 4352 4354 4353 -9408 2 2 0 6 3623 5526 4452 -9409 2 2 0 6 2537 2538 2539 -9410 2 2 0 6 165 166 8369 -9411 2 2 0 6 2736 2737 2989 -9412 2 2 0 6 2437 9355 2438 -9413 2 2 0 6 4475 4490 5078 -9414 2 2 0 6 5134 6344 6345 -9415 2 2 0 6 1625 8428 5510 -9416 2 2 0 6 3304 8578 7147 -9417 2 2 0 6 936 938 939 -9418 2 2 0 6 1314 1495 1315 -9419 2 2 0 6 1702 1704 1703 -9420 2 2 0 6 1771 1790 1791 -9421 2 2 0 6 3421 3432 3431 -9422 2 2 0 6 785 8681 8682 -9423 2 2 0 6 1292 1319 4443 -9424 2 2 0 6 4018 4988 4753 -9425 2 2 0 6 5078 6029 8268 -9426 2 2 0 6 3914 9193 4747 -9427 2 2 0 6 1548 1550 1551 -9428 2 2 0 6 1311 1313 8467 -9429 2 2 0 6 4585 5090 5639 -9430 2 2 0 6 4735 5254 7154 -9431 2 2 0 6 4012 9315 5593 -9432 2 2 0 6 1434 7901 7900 -9433 2 2 0 6 3872 8383 3874 -9434 2 2 0 6 833 8829 835 -9435 2 2 0 6 3053 4152 8888 -9436 2 2 0 6 4190 9121 5752 -9437 2 2 0 6 1555 1556 1557 -9438 2 2 0 6 1704 1706 1707 -9439 2 2 0 6 1778 1825 1777 -9440 2 2 0 6 3122 3124 3123 -9441 2 2 0 6 3138 3141 3140 -9442 2 2 0 6 3959 3960 3535 -9443 2 2 0 6 3791 4147 4232 -9444 2 2 0 6 4381 4382 4383 -9445 2 2 0 6 4754 5227 5373 -9446 2 2 0 6 3727 8790 5045 -9447 2 2 0 6 6116 8836 9085 -9448 2 2 0 6 1030 9586 1097 -9449 2 2 0 6 836 10996 11002 -9450 2 2 0 6 2337 2481 2483 -9451 2 2 0 6 2574 2576 2575 -9452 2 2 0 6 4380 4382 4381 -9453 2 2 0 6 4383 4384 4385 -9454 2 2 0 6 3201 4411 3203 -9455 2 2 0 6 4190 5017 4948 -9456 2 2 0 6 4197 5019 5020 -9457 2 2 0 6 5132 5134 5133 -9458 2 2 0 6 3916 5522 5523 -9459 2 2 0 6 5598 5597 5599 -9460 2 2 0 6 1945 8158 2246 -9461 2 2 0 6 8582 8584 8583 -9462 2 2 0 6 1562 1564 1563 -9463 2 2 0 6 2735 2737 2736 -9464 2 2 0 6 2870 3101 3379 -9465 2 2 0 6 4986 5829 4985 -9466 2 2 0 6 2448 6097 5501 -9467 2 2 0 6 5209 7030 9364 -9468 2 2 0 6 755 1011 757 -9469 2 2 0 6 359 360 8359 -9470 2 2 0 6 3544 3545 3546 -9471 2 2 0 6 4725 5220 6392 -9472 2 2 0 6 1310 1494 6638 -9473 2 2 0 6 5288 7172 5289 -9474 2 2 0 6 5901 7209 7210 -9475 2 2 0 6 4732 8255 5614 -9476 2 2 0 6 4338 8801 8079 -9477 2 2 0 6 2974 2976 9431 -9478 2 2 0 6 4920 9704 8860 -9479 2 2 0 6 2168 2169 2170 -9480 2 2 0 6 3650 3651 3652 -9481 2 2 0 6 2862 5761 3923 -9482 2 2 0 6 5745 6598 5880 -9483 2 2 0 6 6044 7148 6197 -9484 2 2 0 6 1327 1328 1360 -9485 2 2 0 6 1882 1883 2150 -9486 2 2 0 6 2733 2735 2734 -9487 2 2 0 6 2683 3055 3057 -9488 2 2 0 6 2435 3655 2437 -9489 2 2 0 6 5881 5883 5882 -9490 2 2 0 6 5532 5930 6363 -9491 2 2 0 6 6287 7439 6289 -9492 2 2 0 6 7788 7790 7789 -9493 2 2 0 6 3747 5755 8864 -9494 2 2 0 6 3108 3957 9207 -9495 2 2 0 6 1551 1552 1553 -9496 2 2 0 6 2138 2139 2140 -9497 2 2 0 6 2177 8652 2193 -9498 2 2 0 6 2228 2498 2496 -9499 2 2 0 6 373 8166 8335 -9500 2 2 0 6 3746 4565 4564 -9501 2 2 0 6 4874 5310 5398 -9502 2 2 0 6 5220 6393 6392 -9503 2 2 0 6 6179 6495 6496 -9504 2 2 0 6 838 9613 840 -9505 2 2 0 6 4345 8104 8105 -9506 2 2 0 6 2642 3059 8712 -9507 2 2 0 6 3327 9184 3594 -9508 2 2 0 6 2287 2296 9297 -9509 2 2 0 6 3588 8784 3660 -9510 2 2 0 6 3704 3706 3705 -9511 2 2 0 6 4093 4095 4096 -9512 2 2 0 6 5036 6043 5313 -9513 2 2 0 6 5411 7546 7612 -9514 2 2 0 6 5713 10365 7981 -9515 2 2 0 6 920 921 922 -9516 2 2 0 6 1528 1535 8903 -9517 2 2 0 6 2259 2260 2261 -9518 2 2 0 6 835 3370 879 -9519 2 2 0 6 2142 2144 8984 -9520 2 2 0 6 4509 5854 4516 -9521 2 2 0 6 5048 5432 6384 -9522 2 2 0 6 6512 6532 6533 -9523 2 2 0 6 5982 5984 6642 -9524 2 2 0 6 7286 7287 7288 -9525 2 2 0 6 2304 8596 2513 -9526 2 2 0 6 6682 7587 7586 -9527 2 2 0 6 161 162 8322 -9528 2 2 0 6 5722 6468 9779 -9529 2 2 0 6 1023 1027 1028 -9530 2 2 0 6 1060 1061 1062 -9531 2 2 0 6 1164 1822 1181 -9532 2 2 0 6 2280 2282 2281 -9533 2 2 0 6 1003 4426 1012 -9534 2 2 0 6 5482 5484 5485 -9535 2 2 0 6 5656 5657 5658 -9536 2 2 0 6 4962 8140 8141 -9537 2 2 0 6 1803 8887 1810 -9538 2 2 0 6 2929 9587 2568 -9539 2 2 0 6 618 621 620 -9540 2 2 0 6 695 699 698 -9541 2 2 0 6 699 703 702 -9542 2 2 0 6 2289 2288 2294 -9543 2 2 0 6 2816 2817 2818 -9544 2 2 0 6 3065 4146 3791 -9545 2 2 0 6 3826 4366 4365 -9546 2 2 0 6 4397 4471 8734 -9547 2 2 0 6 6510 6531 6512 -9548 2 2 0 6 5079 5081 8941 -9549 2 2 0 6 3721 5530 9047 -9550 2 2 0 6 612 610 613 -9551 2 2 0 6 722 732 728 -9552 2 2 0 6 2496 3491 2497 -9553 2 2 0 6 1694 1696 1695 -9554 2 2 0 6 2364 2771 2619 -9555 2 2 0 6 2018 2020 4346 -9556 2 2 0 6 5871 6617 5886 -9557 2 2 0 6 163 164 8366 -9558 2 2 0 6 3038 3299 8810 -9559 2 2 0 6 3777 8867 4203 -9560 2 2 0 6 2569 7905 9612 -9561 2 2 0 6 802 804 803 -9562 2 2 0 6 1054 1055 1056 -9563 2 2 0 6 1751 1786 1785 -9564 2 2 0 6 2300 2302 2301 -9565 2 2 0 6 4793 4792 4794 -9566 2 2 0 6 4490 5079 5078 -9567 2 2 0 6 5364 5366 5365 -9568 2 2 0 6 3618 4717 5672 -9569 2 2 0 6 6460 6463 6462 -9570 2 2 0 6 4491 6552 4510 -9571 2 2 0 6 924 926 927 -9572 2 2 0 6 2783 2877 2878 -9573 2 2 0 6 3131 3130 3132 -9574 2 2 0 6 3473 3819 3474 -9575 2 2 0 6 3651 4034 3675 -9576 2 2 0 6 4384 4386 4385 -9577 2 2 0 6 372 373 8335 -9578 2 2 0 6 5696 8357 6260 -9579 2 2 0 6 3358 5500 9248 -9580 2 2 0 6 3527 6383 9337 -9581 2 2 0 6 714 718 717 -9582 2 2 0 6 1616 1619 1618 -9583 2 2 0 6 1682 4349 1684 -9584 2 2 0 6 4550 5919 4551 -9585 2 2 0 6 5850 6590 5851 -9586 2 2 0 6 4777 7338 5306 -9587 2 2 0 6 2190 4410 7622 -9588 2 2 0 6 1489 8213 1510 -9589 2 2 0 6 5419 7639 9421 -9590 2 2 0 6 4207 9327 9216 -9591 2 2 0 6 1033 1099 1034 -9592 2 2 0 6 3781 3780 3782 -9593 2 2 0 6 3068 3931 3309 -9594 2 2 0 6 3312 3883 9680 -9595 2 2 0 6 5247 5336 5248 -9596 2 2 0 6 5250 5394 5395 -9597 2 2 0 6 5495 6584 6583 -9598 2 2 0 6 3427 3994 8678 -9599 2 2 0 6 4965 9605 5648 -9600 2 2 0 6 9038 9975 9039 -9601 2 2 0 6 8183 10034 8188 -9602 2 2 0 6 6536 10242 9493 -9603 2 2 0 6 948 950 951 -9604 2 2 0 6 1021 1499 1032 -9605 2 2 0 6 3609 4946 4022 -9606 2 2 0 6 4115 5095 5390 -9607 2 2 0 6 5017 5915 5914 -9608 2 2 0 6 5712 7023 6183 -9609 2 2 0 6 5698 5793 7855 -9610 2 2 0 6 2384 2428 2385 -9611 2 2 0 6 4585 5089 5090 -9612 2 2 0 6 4525 6605 6606 -9613 2 2 0 6 5287 7018 7017 -9614 2 2 0 6 5902 7352 6432 -9615 2 2 0 6 7786 7794 7788 -9616 2 2 0 6 699 1208 703 -9617 2 2 0 6 1764 1797 1796 -9618 2 2 0 6 1786 1883 1882 -9619 2 2 0 6 2531 2532 2533 -9620 2 2 0 6 2653 2864 2863 -9621 2 2 0 6 3211 4042 4848 -9622 2 2 0 6 5545 6187 7103 -9623 2 2 0 6 5793 6280 7236 -9624 2 2 0 6 2355 2356 9214 -9625 2 2 0 6 1686 1692 1693 -9626 2 2 0 6 3599 3600 3601 -9627 2 2 0 6 3258 3881 3880 -9628 2 2 0 6 3605 4111 4735 -9629 2 2 0 6 4867 4869 4868 -9630 2 2 0 6 5925 6577 6640 -9631 2 2 0 6 7045 8118 8419 -9632 2 2 0 6 1035 8445 1989 -9633 2 2 0 6 1384 9175 1385 -9634 2 2 0 6 3966 5810 9729 -9635 2 2 0 6 6208 10199 10096 -9636 2 2 0 6 1601 1604 1603 -9637 2 2 0 6 1635 1637 1636 -9638 2 2 0 6 3448 9549 4708 -9639 2 2 0 6 1263 4046 1276 -9640 2 2 0 6 5482 5483 5484 -9641 2 2 0 6 5253 5290 7117 -9642 2 2 0 6 385 386 8151 -9643 2 2 0 6 671 3533 8601 -9644 2 2 0 6 3083 8927 3084 -9645 2 2 0 6 1279 1288 1289 -9646 2 2 0 6 3464 3499 3467 -9647 2 2 0 6 3171 4045 4167 -9648 2 2 0 6 2989 9261 3239 -9649 2 2 0 6 1013 1016 1015 -9650 2 2 0 6 3146 3301 3300 -9651 2 2 0 6 4151 4153 4152 -9652 2 2 0 6 588 590 5513 -9653 2 2 0 6 6283 6482 6483 -9654 2 2 0 6 3452 2667 8101 -9655 2 2 0 6 1206 8344 8345 -9656 2 2 0 6 6462 8772 8551 -9657 2 2 0 6 4548 5032 9116 -9658 2 2 0 6 1897 10425 7455 -9659 2 2 0 6 4750 5265 5247 -9660 2 2 0 6 4340 5965 5966 -9661 2 2 0 6 2497 5749 8918 -9662 2 2 0 6 5548 8915 9645 -9663 2 2 0 6 2475 2623 2622 -9664 2 2 0 6 2498 2499 2844 -9665 2 2 0 6 3548 3550 3913 -9666 2 2 0 6 3166 3190 4054 -9667 2 2 0 6 2132 5462 9828 -9668 2 2 0 6 5077 6655 6656 -9669 2 2 0 6 5092 6660 6619 -9670 2 2 0 6 5326 7351 7350 -9671 2 2 0 6 3384 7863 7864 -9672 2 2 0 6 6173 6174 8299 -9673 2 2 0 6 5573 8655 5575 -9674 2 2 0 6 1962 8994 5835 -9675 2 2 0 6 6383 9051 8372 -9676 2 2 0 6 5639 9627 8835 -9677 2 2 0 6 956 958 959 -9678 2 2 0 6 1307 1325 1326 -9679 2 2 0 6 2799 2802 2801 -9680 2 2 0 6 765 4350 769 -9681 2 2 0 6 4561 4562 6666 -9682 2 2 0 6 609 8901 610 -9683 2 2 0 6 724 727 726 -9684 2 2 0 6 1058 1059 1060 -9685 2 2 0 6 1361 1363 1364 -9686 2 2 0 6 595 597 3456 -9687 2 2 0 6 5988 5989 5990 -9688 2 2 0 6 5315 6676 6039 -9689 2 2 0 6 5473 7155 5474 -9690 2 2 0 6 2156 8172 2384 -9691 2 2 0 6 1642 1689 2164 -9692 2 2 0 6 4878 5382 4879 -9693 2 2 0 6 4596 6050 6406 -9694 2 2 0 6 6251 7253 7270 -9695 2 2 0 6 3094 3097 8062 -9696 2 2 0 6 860 862 8619 -9697 2 2 0 6 2576 2578 2577 -9698 2 2 0 6 3306 4183 4182 -9699 2 2 0 6 3491 4750 3492 -9700 2 2 0 6 4284 4770 5042 -9701 2 2 0 6 5634 5635 6282 -9702 2 2 0 6 5537 6250 7952 -9703 2 2 0 6 3981 8833 9414 -9704 2 2 0 6 740 741 742 -9705 2 2 0 6 3130 3133 3132 -9706 2 2 0 6 3187 3293 3892 -9707 2 2 0 6 5489 6056 5490 -9708 2 2 0 6 2586 8796 8797 -9709 2 2 0 6 4916 8906 8907 -9710 2 2 0 6 1091 1795 1094 -9711 2 2 0 6 3913 4747 4748 -9712 2 2 0 6 4550 5920 5919 -9713 2 2 0 6 5103 5102 6080 -9714 2 2 0 6 4138 8893 8894 -9715 2 2 0 6 8501 8502 9068 -9716 2 2 0 6 1856 3472 8667 -9717 2 2 0 6 1016 1022 1017 -9718 2 2 0 6 1118 1120 1119 -9719 2 2 0 6 1465 1466 1467 -9720 2 2 0 6 1945 1946 8158 -9721 2 2 0 6 2878 3152 3153 -9722 2 2 0 6 3398 3402 3399 -9723 2 2 0 6 1084 8774 4347 -9724 2 2 0 6 5220 7620 6393 -9725 2 2 0 6 4550 8958 5920 -9726 2 2 0 6 3903 4722 9059 -9727 2 2 0 6 947 10128 8222 -9728 2 2 0 6 1051 1052 1050 -9729 2 2 0 6 1289 1307 1306 -9730 2 2 0 6 2292 2297 3368 -9731 2 2 0 6 5417 7613 6464 -9732 2 2 0 6 3898 4419 9976 -9733 2 2 0 6 4322 9245 5325 -9734 2 2 0 6 5896 10422 10018 -9735 2 2 0 6 801 802 803 -9736 2 2 0 6 2712 8832 9153 -9737 2 2 0 6 2818 2819 2820 -9738 2 2 0 6 1054 8441 1052 -9739 2 2 0 6 3979 4850 4849 -9740 2 2 0 6 2126 5462 2132 -9741 2 2 0 6 6083 6085 6084 -9742 2 2 0 6 5024 5114 9268 -9743 2 2 0 6 5347 5495 6583 -9744 2 2 0 6 5581 5580 7265 -9745 2 2 0 6 2949 4914 8672 -9746 2 2 0 6 1198 1200 8721 -9747 2 2 0 6 622 625 624 -9748 2 2 0 6 3088 3091 3090 -9749 2 2 0 6 3127 3126 3128 -9750 2 2 0 6 1627 3363 1628 -9751 2 2 0 6 2637 3646 2786 -9752 2 2 0 6 3706 3740 3707 -9753 2 2 0 6 5480 5483 5482 -9754 2 2 0 6 2473 7947 9850 -9755 2 2 0 6 5981 5983 5982 -9756 2 2 0 6 6245 6284 7216 -9757 2 2 0 6 7320 7391 7390 -9758 2 2 0 6 2346 9290 3579 -9759 2 2 0 6 6206 8659 8220 -9760 2 2 0 6 4422 8823 5264 -9761 2 2 0 6 2884 8246 10116 -9762 2 2 0 6 884 891 885 -9763 2 2 0 6 944 946 947 -9764 2 2 0 6 1048 1049 1050 -9765 2 2 0 6 1053 1054 1052 -9766 2 2 0 6 1363 1365 1364 -9767 2 2 0 6 5642 7913 5799 -9768 2 2 0 6 2029 2032 2033 -9769 2 2 0 6 2335 2334 2336 -9770 2 2 0 6 1674 4418 1676 -9771 2 2 0 6 2285 9829 9893 -9772 2 2 0 6 2291 8891 3627 -9773 2 2 0 6 5539 9774 8482 -9774 2 2 0 6 664 666 667 -9775 2 2 0 6 1002 1003 1004 -9776 2 2 0 6 2625 2779 2780 -9777 2 2 0 6 2408 3007 3008 -9778 2 2 0 6 3851 3852 3853 -9779 2 2 0 6 961 3973 976 -9780 2 2 0 6 5311 7207 7205 -9781 2 2 0 6 1747 8163 3352 -9782 2 2 0 6 5746 8757 8756 -9783 2 2 0 6 7302 7311 8604 -9784 2 2 0 6 2660 2661 2834 -9785 2 2 0 6 3035 4402 3448 -9786 2 2 0 6 3000 3826 4365 -9787 2 2 0 6 5564 6196 6195 -9788 2 2 0 6 6533 8292 7990 -9789 2 2 0 6 1699 1698 1700 -9790 2 2 0 6 1776 1775 1792 -9791 2 2 0 6 2177 2193 2192 -9792 2 2 0 6 2274 2275 2276 -9793 2 2 0 6 2385 2428 2429 -9794 2 2 0 6 2430 2491 2490 -9795 2 2 0 6 3743 4070 4071 -9796 2 2 0 6 3798 3831 4261 -9797 2 2 0 6 4015 5636 4446 -9798 2 2 0 6 8345 8346 8347 -9799 2 2 0 6 2246 8634 2459 -9800 2 2 0 6 3994 4441 8678 -9801 2 2 0 6 785 8682 790 -9802 2 2 0 6 5082 5084 8808 -9803 2 2 0 6 5577 5574 8973 -9804 2 2 0 6 8706 9013 8704 -9805 2 2 0 6 568 9653 3764 -9806 2 2 0 6 1285 1313 1311 -9807 2 2 0 6 1493 1762 1761 -9808 2 2 0 6 1858 2212 1860 -9809 2 2 0 6 2308 2310 2295 -9810 2 2 0 6 3135 3134 3136 -9811 2 2 0 6 5637 5882 9685 -9812 2 2 0 6 3433 3436 3435 -9813 2 2 0 6 4832 4833 4834 -9814 2 2 0 6 4531 5051 5052 -9815 2 2 0 6 5662 5663 5664 -9816 2 2 0 6 4963 5838 5723 -9817 2 2 0 6 5305 7164 7163 -9818 2 2 0 6 5339 7209 5901 -9819 2 2 0 6 6371 7234 7266 -9820 2 2 0 6 1959 7547 2204 -9821 2 2 0 6 6650 7654 7653 -9822 2 2 0 6 6484 6511 8228 -9823 2 2 0 6 480 8563 8562 -9824 2 2 0 6 4009 8035 8656 -9825 2 2 0 6 1499 8658 4401 -9826 2 2 0 6 1638 9135 5618 -9827 2 2 0 6 1015 1016 1017 -9828 2 2 0 6 877 1039 883 -9829 2 2 0 6 3499 3986 3985 -9830 2 2 0 6 2306 8763 6396 -9831 2 2 0 6 2048 5003 5002 -9832 2 2 0 6 5639 5640 5641 -9833 2 2 0 6 8118 8573 8420 -9834 2 2 0 6 1003 8642 4426 -9835 2 2 0 6 1202 11073 7478 -9836 2 2 0 6 1879 1973 1974 -9837 2 2 0 6 853 855 3522 -9838 2 2 0 6 2302 8596 2304 -9839 2 2 0 6 4254 4304 4303 -9840 2 2 0 6 8034 8039 8036 -9841 2 2 0 6 7713 8115 7714 -9842 2 2 0 6 5205 8408 6369 -9843 2 2 0 6 3814 4222 8590 -9844 2 2 0 6 5523 5524 8793 -9845 2 2 0 6 6343 9738 6344 -9846 2 2 0 6 1100 1103 1102 -9847 2 2 0 6 2238 2343 2344 -9848 2 2 0 6 2429 2490 2927 -9849 2 2 0 6 3605 3755 4111 -9850 2 2 0 6 1802 1896 4406 -9851 2 2 0 6 4117 4214 4593 -9852 2 2 0 6 4744 4746 4326 -9853 2 2 0 6 3228 4878 4230 -9854 2 2 0 6 1669 1672 5430 -9855 2 2 0 6 4519 5846 5845 -9856 2 2 0 6 5628 7677 7353 -9857 2 2 0 6 5616 9683 9036 -9858 2 2 0 6 1473 1474 1475 -9859 2 2 0 6 2615 2616 2617 -9860 2 2 0 6 4118 5099 4119 -9861 2 2 0 6 3944 4823 4822 -9862 2 2 0 6 4927 4929 4928 -9863 2 2 0 6 4775 5600 5596 -9864 2 2 0 6 6206 8219 8218 -9865 2 2 0 6 480 8562 8561 -9866 2 2 0 6 3652 3677 8698 -9867 2 2 0 6 6509 10114 10183 -9868 2 2 0 6 2250 9009 8505 -9869 2 2 0 6 1416 1417 1418 -9870 2 2 0 6 3586 8784 3588 -9871 2 2 0 6 860 8619 1024 -9872 2 2 0 6 2430 2490 2429 -9873 2 2 0 6 2147 3541 3540 -9874 2 2 0 6 4146 4147 3791 -9875 2 2 0 6 2675 2764 4501 -9876 2 2 0 6 4937 4942 4940 -9877 2 2 0 6 4337 5023 4336 -9878 2 2 0 6 4750 5247 4751 -9879 2 2 0 6 5084 5086 5253 -9880 2 2 0 6 5528 5645 5527 -9881 2 2 0 6 5602 6435 6434 -9882 2 2 0 6 5226 6985 6988 -9883 2 2 0 6 7298 7761 7300 -9884 2 2 0 6 3392 5538 8503 -9885 2 2 0 6 8705 8704 8707 -9886 2 2 0 6 2277 2280 2278 -9887 2 2 0 6 2504 2853 2505 -9888 2 2 0 6 2717 2981 2980 -9889 2 2 0 6 3042 3044 3045 -9890 2 2 0 6 1133 3390 1151 -9891 2 2 0 6 3231 3838 3837 -9892 2 2 0 6 2050 2052 4185 -9893 2 2 0 6 4212 4594 3757 -9894 2 2 0 6 4066 5021 4404 -9895 2 2 0 6 5697 5698 5696 -9896 2 2 0 6 5054 8781 8782 -9897 2 2 0 6 4912 8227 9396 -9898 2 2 0 6 2578 2580 2579 -9899 2 2 0 6 3392 3393 3394 -9900 2 2 0 6 4296 4699 4698 -9901 2 2 0 6 3927 4781 4782 -9902 2 2 0 6 4786 5270 4788 -9903 2 2 0 6 4823 5495 5347 -9904 2 2 0 6 1412 10011 1410 -9905 2 2 0 6 5472 6130 6129 -9906 2 2 0 6 4853 6272 6273 -9907 2 2 0 6 6273 7457 7458 -9908 2 2 0 6 5892 7455 9328 -9909 2 2 0 6 2857 10313 3991 -9910 2 2 0 6 1001 993 1002 -9911 2 2 0 6 2283 2287 2286 -9912 2 2 0 6 2298 2300 2299 -9913 2 2 0 6 1678 2386 1680 -9914 2 2 0 6 2754 2755 2757 -9915 2 2 0 6 2678 2894 3041 -9916 2 2 0 6 3406 3408 3407 -9917 2 2 0 6 1022 3451 8665 -9918 2 2 0 6 3039 4295 3299 -9919 2 2 0 6 2123 2145 4394 -9920 2 2 0 6 4450 4451 3519 -9921 2 2 0 6 3985 4550 3987 -9922 2 2 0 6 3736 4559 5518 -9923 2 2 0 6 5088 7676 6026 -9924 2 2 0 6 6512 6533 7988 -9925 2 2 0 6 2955 8176 2957 -9926 2 2 0 6 7063 8253 6210 -9927 2 2 0 6 8980 9293 9346 -9928 2 2 0 6 675 676 674 -9929 2 2 0 6 1855 1857 1960 -9930 2 2 0 6 5786 5787 5788 -9931 2 2 0 6 4740 6044 6197 -9932 2 2 0 6 5998 6415 6678 -9933 2 2 0 6 3417 9281 3420 -9934 2 2 0 6 3269 3270 9430 -9935 2 2 0 6 1692 1694 1693 -9936 2 2 0 6 2263 2264 2265 -9937 2 2 0 6 2302 2304 2303 -9938 2 2 0 6 1518 2496 2497 -9939 2 2 0 6 2757 2758 2759 -9940 2 2 0 6 3118 3119 3120 -9941 2 2 0 6 3965 4254 4303 -9942 2 2 0 6 4465 4468 4467 -9943 2 2 0 6 4428 4961 4429 -9944 2 2 0 6 4075 4076 5055 -9945 2 2 0 6 5572 5870 5942 -9946 2 2 0 6 6032 6033 6173 -9947 2 2 0 6 5271 7188 6571 -9948 2 2 0 6 850 9156 3567 -9949 2 2 0 6 2557 9518 2993 -9950 2 2 0 6 5975 9706 9392 -9951 2 2 0 6 2815 2817 2816 -9952 2 2 0 6 3738 4118 4119 -9953 2 2 0 6 4784 4786 4787 -9954 2 2 0 6 1129 1147 5478 -9955 2 2 0 6 4934 4936 6646 -9956 2 2 0 6 6123 6807 6806 -9957 2 2 0 6 6172 7131 7132 -9958 2 2 0 6 5106 8191 6060 -9959 2 2 0 6 1647 9406 3511 -9960 2 2 0 6 608 609 610 -9961 2 2 0 6 3124 3125 3126 -9962 2 2 0 6 1372 1373 3623 -9963 2 2 0 6 4377 8525 4768 -9964 2 2 0 6 1947 2247 4438 -9965 2 2 0 6 3913 3914 4747 -9966 2 2 0 6 5889 5890 5897 -9967 2 2 0 6 5614 7028 6208 -9968 2 2 0 6 3357 3961 7926 -9969 2 2 0 6 4559 8868 5519 -9970 2 2 0 6 2351 2520 9024 -9971 2 2 0 6 1279 1306 9607 -9972 2 2 0 6 730 731 739 -9973 2 2 0 6 918 921 920 -9974 2 2 0 6 2336 2493 2492 -9975 2 2 0 6 2454 2511 2646 -9976 2 2 0 6 2817 2819 2818 -9977 2 2 0 6 3119 3121 3120 -9978 2 2 0 6 4747 5301 5223 -9979 2 2 0 6 863 3486 9056 -9980 2 2 0 6 6271 7655 7656 -9981 2 2 0 6 5536 8952 8947 -9982 2 2 0 6 5737 9200 9298 -9983 2 2 0 6 2278 2280 2281 -9984 2 2 0 6 3506 9466 9625 -9985 2 2 0 6 1372 3623 4025 -9986 2 2 0 6 5527 5645 6451 -9987 2 2 0 6 8702 8706 8704 -9988 2 2 0 6 3262 4695 8964 -9989 2 2 0 6 5437 9925 9275 -9990 2 2 0 6 864 863 865 -9991 2 2 0 6 1022 1027 1023 -9992 2 2 0 6 1028 1027 1033 -9993 2 2 0 6 1088 1092 1813 -9994 2 2 0 6 1797 1881 1880 -9995 2 2 0 6 4753 4989 5946 -9996 2 2 0 6 4382 8472 4384 -9997 2 2 0 6 4544 4547 8744 -9998 2 2 0 6 3428 3444 8863 -9999 2 2 0 6 4386 9037 4388 -10000 2 2 0 6 709 714 710 -10001 2 2 0 6 790 792 791 -10002 2 2 0 6 4633 5151 4634 -10003 2 2 0 6 5390 6045 6046 -10004 2 2 0 6 7117 7348 7118 -10005 2 2 0 6 3369 5529 8165 -10006 2 2 0 6 3522 8624 8625 -10007 2 2 0 6 3162 3163 8595 -10008 2 2 0 6 1220 3388 1265 -10009 2 2 0 6 1369 1370 1371 -10010 2 2 0 6 1503 1779 1780 -10011 2 2 0 6 3772 3774 3775 -10012 2 2 0 6 4206 4208 4207 -10013 2 2 0 6 2520 2906 9024 -10014 2 2 0 6 3902 9249 4555 -10015 2 2 0 6 722 728 725 -10016 2 2 0 6 857 860 1024 -10017 2 2 0 6 1957 2189 2255 -10018 2 2 0 6 2283 2288 2287 -10019 2 2 0 6 2520 2905 2906 -10020 2 2 0 6 2866 2868 3067 -10021 2 2 0 6 3211 3210 4042 -10022 2 2 0 6 4879 5382 5383 -10023 2 2 0 6 5788 6325 6326 -10024 2 2 0 6 6460 6462 6461 -10025 2 2 0 6 5331 7256 7193 -10026 2 2 0 6 4734 5545 8026 -10027 2 2 0 6 4579 8922 7593 -10028 2 2 0 6 4918 4919 8948 -10029 2 2 0 6 726 727 730 -10030 2 2 0 6 741 743 742 -10031 2 2 0 6 1255 1270 1269 -10032 2 2 0 6 1626 1627 1628 -10033 2 2 0 6 1762 1831 1830 -10034 2 2 0 6 2908 2904 2909 -10035 2 2 0 6 3487 3488 3489 -10036 2 2 0 6 2961 3657 2964 -10037 2 2 0 6 5573 5575 5574 -10038 2 2 0 6 2387 7782 2431 -10039 2 2 0 6 8036 8038 8037 -10040 2 2 0 6 601 8987 1920 -10041 2 2 0 6 703 709 706 -10042 2 2 0 6 2905 3210 2906 -10043 2 2 0 6 3460 3461 3462 -10044 2 2 0 6 683 9179 685 -10045 2 2 0 6 4385 4386 4387 -10046 2 2 0 6 4919 5338 5339 -10047 2 2 0 6 4658 5380 5379 -10048 2 2 0 6 4890 5894 5542 -10049 2 2 0 6 6216 5162 6217 -10050 2 2 0 6 5593 6433 5617 -10051 2 2 0 6 7284 7287 7286 -10052 2 2 0 6 363 8304 522 -10053 2 2 0 6 3501 8550 3503 -10054 2 2 0 6 3463 9132 8477 -10055 2 2 0 6 9405 9938 9813 -10056 2 2 0 6 626 629 628 -10057 2 2 0 6 3063 3115 3116 -10058 2 2 0 6 3513 4037 3514 -10059 2 2 0 6 4933 4939 4935 -10060 2 2 0 6 3952 4650 8645 -10061 2 2 0 6 3392 3394 5538 -10062 2 2 0 6 4012 5593 4952 -10063 2 2 0 6 7590 7591 7592 -10064 2 2 0 6 7045 7048 8118 -10065 2 2 0 6 2699 8082 8840 -10066 2 2 0 6 5840 10062 8034 -10067 2 2 0 6 914 917 916 -10068 2 2 0 6 1174 1200 1198 -10069 2 2 0 6 2159 2160 2151 -10070 2 2 0 6 2261 2262 2263 -10071 2 2 0 6 3104 3105 9207 -10072 2 2 0 6 4408 5727 6025 -10073 2 2 0 6 5081 6228 6229 -10074 2 2 0 6 1114 1189 8953 -10075 2 2 0 6 6381 9418 9076 -10076 2 2 0 6 5645 9645 8915 -10077 2 2 0 6 2727 4055 9832 -10078 2 2 0 6 945 10337 10271 -10079 2 2 0 6 572 574 573 -10080 2 2 0 6 616 617 618 -10081 2 2 0 6 630 632 631 -10082 2 2 0 6 1390 1391 1392 -10083 2 2 0 6 3121 3122 3120 -10084 2 2 0 6 2953 3158 3157 -10085 2 2 0 6 3698 3700 3699 -10086 2 2 0 6 3741 5049 5726 -10087 2 2 0 6 5526 5528 5527 -10088 2 2 0 6 4924 8403 8402 -10089 2 2 0 6 4927 4944 8630 -10090 2 2 0 6 1356 1502 1503 -10091 2 2 0 6 2610 2813 2812 -10092 2 2 0 6 2646 2647 3035 -10093 2 2 0 6 3367 3672 3671 -10094 2 2 0 6 3782 3784 3785 -10095 2 2 0 6 4386 4388 4387 -10096 2 2 0 6 2027 5534 5493 -10097 2 2 0 6 3488 4846 3489 -10098 2 2 0 6 4699 5218 5217 -10099 2 2 0 6 4751 5247 5248 -10100 2 2 0 6 5274 5275 5293 -10101 2 2 0 6 4886 5555 5553 -10102 2 2 0 6 5384 6321 6120 -10103 2 2 0 6 6354 6357 6356 -10104 2 2 0 6 7282 7284 7283 -10105 2 2 0 6 4420 8056 5243 -10106 2 2 0 6 3347 8087 5388 -10107 2 2 0 6 2388 10075 2487 -10108 2 2 0 6 653 8617 6414 -10109 2 2 0 6 6552 9866 9969 -10110 2 2 0 6 940 942 943 -10111 2 2 0 6 960 962 963 -10112 2 2 0 6 1270 1284 1283 -10113 2 2 0 6 2529 2530 2531 -10114 2 2 0 6 2989 3065 3791 -10115 2 2 0 6 3747 5069 5755 -10116 2 2 0 6 1489 3628 8213 -10117 2 2 0 6 2551 7829 8565 -10118 2 2 0 6 6022 9014 7688 -10119 2 2 0 6 3305 6405 9726 -10120 2 2 0 6 3075 10205 9849 -10121 2 2 0 6 595 596 597 -10122 2 2 0 6 636 639 638 -10123 2 2 0 6 792 797 791 -10124 2 2 0 6 584 586 1520 -10125 2 2 0 6 2308 2309 2500 -10126 2 2 0 6 3348 3349 3350 -10127 2 2 0 6 671 674 3533 -10128 2 2 0 6 3233 3840 3962 -10129 2 2 0 6 2766 2768 4067 -10130 2 2 0 6 4388 4894 4445 -10131 2 2 0 6 4933 4935 4934 -10132 2 2 0 6 4025 4452 4979 -10133 2 2 0 6 2951 9216 4914 -10134 2 2 0 6 2150 2151 8414 -10135 2 2 0 6 1369 1372 9158 -10136 2 2 0 6 5570 5569 9834 -10137 2 2 0 6 2265 2266 2267 -10138 2 2 0 6 2804 3375 3674 -10139 2 2 0 6 3534 3959 3535 -10140 2 2 0 6 3991 4415 3992 -10141 2 2 0 6 1154 8390 1164 -10142 2 2 0 6 1010 8970 8969 -10143 2 2 0 6 4924 8402 4925 -10144 2 2 0 6 1151 3390 8827 -10145 2 2 0 6 5687 8898 8897 -10146 2 2 0 6 603 8990 8987 -10147 2 2 0 6 1256 6038 9857 -10148 2 2 0 6 5527 6451 9084 -10149 2 2 0 6 1931 1933 1932 -10150 2 2 0 6 4727 5251 5314 -10151 2 2 0 6 6090 6091 6092 -10152 2 2 0 6 7785 7786 7787 -10153 2 2 0 6 1013 1012 8679 -10154 2 2 0 6 2418 8319 9897 -10155 2 2 0 6 2171 2174 2173 -10156 2 2 0 6 3128 3130 3131 -10157 2 2 0 6 3409 3414 3413 -10158 2 2 0 6 4037 4804 4038 -10159 2 2 0 6 4936 4937 4938 -10160 2 2 0 6 4610 5797 5796 -10161 2 2 0 6 6376 6377 7481 -10162 2 2 0 6 2053 2056 8743 -10163 2 2 0 6 3044 3047 3046 -10164 2 2 0 6 3467 3985 3987 -10165 2 2 0 6 3952 4282 4281 -10166 2 2 0 6 6833 6835 6834 -10167 2 2 0 6 2035 2038 8776 -10168 2 2 0 6 5054 8780 8781 -10169 2 2 0 6 1496 1518 8918 -10170 2 2 0 6 3160 4205 4206 -10171 2 2 0 6 4681 4864 4865 -10172 2 2 0 6 4964 4965 5646 -10173 2 2 0 6 3418 9736 9332 -10174 2 2 0 6 4144 6044 4740 -10175 2 2 0 6 8709 8882 8881 -10176 2 2 0 6 3585 9414 9509 -10177 2 2 0 6 3049 10054 9930 -10178 2 2 0 6 2376 2378 2398 -10179 2 2 0 6 2796 2795 2797 -10180 2 2 0 6 2826 2827 2828 -10181 2 2 0 6 2824 2826 2920 -10182 2 2 0 6 709 3383 714 -10183 2 2 0 6 4415 4881 4880 -10184 2 2 0 6 5340 5901 5902 -10185 2 2 0 6 5848 6333 5849 -10186 2 2 0 6 6411 8728 9667 -10187 2 2 0 6 1787 8815 1829 -10188 2 2 0 6 848 1043 9156 -10189 2 2 0 6 6381 9580 8392 -10190 2 2 0 6 1377 1379 1378 -10191 2 2 0 6 3319 3322 3320 -10192 2 2 0 6 2646 3035 3447 -10193 2 2 0 6 2310 3459 3458 -10194 2 2 0 6 2907 3526 3738 -10195 2 2 0 6 2949 2951 4914 -10196 2 2 0 6 4200 5076 5077 -10197 2 2 0 6 4564 4565 5978 -10198 2 2 0 6 4597 6053 6400 -10199 2 2 0 6 668 671 8601 -10200 2 2 0 6 1294 9424 5874 -10201 2 2 0 6 4607 9210 6107 -10202 2 2 0 6 1632 1635 1634 -10203 2 2 0 6 3744 4566 6008 -10204 2 2 0 6 595 3456 8449 -10205 2 2 0 6 2282 9131 2283 -10206 2 2 0 6 682 683 684 -10207 2 2 0 6 928 930 931 -10208 2 2 0 6 3652 3675 3676 -10209 2 2 0 6 4279 4420 4419 -10210 2 2 0 6 4834 4835 4918 -10211 2 2 0 6 4271 4734 5221 -10212 2 2 0 6 4910 5580 5579 -10213 2 2 0 6 5823 5824 5822 -10214 2 2 0 6 5028 5881 5637 -10215 2 2 0 6 8309 8312 8311 -10216 2 2 0 6 3460 8398 5517 -10217 2 2 0 6 676 677 678 -10218 2 2 0 6 775 785 784 -10219 2 2 0 6 849 851 1148 -10220 2 2 0 6 1375 1377 1378 -10221 2 2 0 6 1261 1273 1759 -10222 2 2 0 6 2666 3148 3487 -10223 2 2 0 6 2042 4509 2928 -10224 2 2 0 6 4538 4556 4539 -10225 2 2 0 6 5221 6265 5222 -10226 2 2 0 6 5268 6499 6191 -10227 2 2 0 6 5947 6620 5948 -10228 2 2 0 6 6228 7115 6229 -10229 2 2 0 6 5956 7371 5958 -10230 2 2 0 6 6006 7462 7463 -10231 2 2 0 6 2593 7772 4060 -10232 2 2 0 6 2744 7882 7883 -10233 2 2 0 6 8702 8704 8703 -10234 2 2 0 6 576 578 577 -10235 2 2 0 6 1172 1176 1193 -10236 2 2 0 6 2301 2302 2303 -10237 2 2 0 6 3124 3126 3127 -10238 2 2 0 6 2815 4005 8701 -10239 2 2 0 6 4042 5036 5035 -10240 2 2 0 6 6439 6441 6457 -10241 2 2 0 6 6272 7457 6273 -10242 2 2 0 6 8035 8036 8037 -10243 2 2 0 6 1687 9508 9086 -10244 2 2 0 6 3373 10323 8522 -10245 2 2 0 6 2533 2534 2535 -10246 2 2 0 6 5223 6230 5348 -10247 2 2 0 6 3339 5494 7649 -10248 2 2 0 6 5199 6206 8218 -10249 2 2 0 6 9283 10002 9375 -10250 2 2 0 6 578 580 579 -10251 2 2 0 6 639 641 640 -10252 2 2 0 6 1305 1321 1322 -10253 2 2 0 6 1769 1770 1771 -10254 2 2 0 6 2162 2163 2213 -10255 2 2 0 6 3464 3467 3465 -10256 2 2 0 6 3502 3503 3504 -10257 2 2 0 6 3570 3572 5491 -10258 2 2 0 6 3291 3483 8790 -10259 2 2 0 6 3226 9247 3848 -10260 2 2 0 6 1017 1022 1023 -10261 2 2 0 6 1046 1047 1048 -10262 2 2 0 6 1279 1278 1288 -10263 2 2 0 6 2753 2754 2752 -10264 2 2 0 6 5808 7758 6694 -10265 2 2 0 6 3682 3944 3945 -10266 2 2 0 6 4366 4367 4365 -10267 2 2 0 6 4929 4943 4931 -10268 2 2 0 6 4042 5035 4848 -10269 2 2 0 6 5530 5531 5532 -10270 2 2 0 6 3660 8784 5573 -10271 2 2 0 6 5570 7755 7754 -10272 2 2 0 6 4023 4479 8157 -10273 2 2 0 6 4377 4379 8525 -10274 2 2 0 6 857 859 860 -10275 2 2 0 6 2267 2268 2269 -10276 2 2 0 6 3179 3742 3743 -10277 2 2 0 6 4290 4778 4872 -10278 2 2 0 6 4883 6371 6370 -10279 2 2 0 6 5436 6415 5998 -10280 2 2 0 6 5841 6618 6563 -10281 2 2 0 6 8232 10219 10142 -10282 2 2 0 6 7783 7784 7785 -10283 2 2 0 6 5357 7388 8099 -10284 2 2 0 6 4847 5357 8670 -10285 2 2 0 6 4039 8687 4496 -10286 2 2 0 6 751 9170 3754 -10287 2 2 0 6 6570 10320 10302 -10288 2 2 0 6 3444 3752 4113 -10289 2 2 0 6 3449 4708 4709 -10290 2 2 0 6 3594 4955 3607 -10291 2 2 0 6 4829 4830 5333 -10292 2 2 0 6 740 770 8765 -10293 2 2 0 6 3642 9187 4193 -10294 2 2 0 6 3742 4044 9452 -10295 2 2 0 6 1028 1033 1034 -10296 2 2 0 6 3064 3150 3304 -10297 2 2 0 6 3655 4428 4427 -10298 2 2 0 6 3674 3841 4755 -10299 2 2 0 6 4355 4889 4888 -10300 2 2 0 6 4790 5276 4792 -10301 2 2 0 6 4846 5357 4847 -10302 2 2 0 6 5741 6448 5825 -10303 2 2 0 6 2140 2142 8145 -10304 2 2 0 6 1797 8859 1881 -10305 2 2 0 6 5572 5942 9094 -10306 2 2 0 6 2180 2351 5516 -10307 2 2 0 6 5919 5920 6549 -10308 2 2 0 6 5730 6555 6556 -10309 2 2 0 6 4523 6605 4525 -10310 2 2 0 6 5070 6665 5071 -10311 2 2 0 6 8701 8702 8703 -10312 2 2 0 6 6478 9405 9034 -10313 2 2 0 6 3120 3122 3123 -10314 2 2 0 6 1785 1882 3176 -10315 2 2 0 6 2623 4105 2781 -10316 2 2 0 6 3369 4043 5004 -10317 2 2 0 6 4062 5514 4558 -10318 2 2 0 6 6371 6372 7234 -10319 2 2 0 6 6430 8010 8009 -10320 2 2 0 6 7043 7045 8419 -10321 2 2 0 6 1387 1390 9077 -10322 2 2 0 6 2920 8690 9177 -10323 2 2 0 6 957 10050 9861 -10324 2 2 0 6 1033 1101 1099 -10325 2 2 0 6 1556 1558 1557 -10326 2 2 0 6 3126 3129 3128 -10327 2 2 0 6 3203 4538 3670 -10328 2 2 0 6 5035 5036 5313 -10329 2 2 0 6 3746 5434 4565 -10330 2 2 0 6 5598 5599 5830 -10331 2 2 0 6 2295 3458 8614 -10332 2 2 0 6 684 686 8646 -10333 2 2 0 6 2036 9377 2126 -10334 2 2 0 6 3540 5703 9389 -10335 2 2 0 6 4807 9908 4809 -10336 2 2 0 6 1379 1380 1381 -10337 2 2 0 6 1397 1400 1399 -10338 2 2 0 6 2080 2079 2109 -10339 2 2 0 6 2257 2473 2472 -10340 2 2 0 6 2447 2475 2474 -10341 2 2 0 6 3462 3464 3465 -10342 2 2 0 6 999 987 3528 -10343 2 2 0 6 3399 3403 4002 -10344 2 2 0 6 4270 5412 5413 -10345 2 2 0 6 5654 5655 5656 -10346 2 2 0 6 5888 5889 5887 -10347 2 2 0 6 6130 7525 6131 -10348 2 2 0 6 7790 7797 7795 -10349 2 2 0 6 2823 8714 8278 -10350 2 2 0 6 4486 9651 9125 -10351 2 2 0 6 105 106 492 -10352 2 2 0 6 1983 2237 2238 -10353 2 2 0 6 2571 3347 3348 -10354 2 2 0 6 4135 4707 4732 -10355 2 2 0 6 3892 4272 4733 -10356 2 2 0 6 4753 4988 4989 -10357 2 2 0 6 4441 5377 5701 -10358 2 2 0 6 4112 5772 4587 -10359 2 2 0 6 5363 5365 7054 -10360 2 2 0 6 2303 6396 9114 -10361 2 2 0 6 5715 8779 9880 -10362 2 2 0 6 2343 2504 2344 -10363 2 2 0 6 3435 3437 3438 -10364 2 2 0 6 2820 2822 3481 -10365 2 2 0 6 2854 3513 2857 -10366 2 2 0 6 4412 4911 4210 -10367 2 2 0 6 5640 5642 5641 -10368 2 2 0 6 4838 6252 6631 -10369 2 2 0 6 1546 1548 8615 -10370 2 2 0 6 2936 3767 9585 -10371 2 2 0 6 3825 9964 7720 -10372 2 2 0 6 1477 1478 1479 -10373 2 2 0 6 2460 2699 2700 -10374 2 2 0 6 719 723 3510 -10375 2 2 0 6 2339 8233 5441 -10376 2 2 0 6 1871 1964 5463 -10377 2 2 0 6 5348 5562 5561 -10378 2 2 0 6 5058 5060 5932 -10379 2 2 0 6 5635 6283 6282 -10380 2 2 0 6 3522 8625 9865 -10381 2 2 0 6 904 907 906 -10382 2 2 0 6 1597 1599 1598 -10383 2 2 0 6 2879 3171 3148 -10384 2 2 0 6 2497 3491 3492 -10385 2 2 0 6 4961 5866 4963 -10386 2 2 0 6 1881 8859 4343 -10387 2 2 0 6 3109 9288 3366 -10388 2 2 0 6 628 629 630 -10389 2 2 0 6 2275 2284 2277 -10390 2 2 0 6 2813 2814 2812 -10391 2 2 0 6 2759 2760 2865 -10392 2 2 0 6 2844 2845 3064 -10393 2 2 0 6 2834 2835 3062 -10394 2 2 0 6 3307 4144 4145 -10395 2 2 0 6 3380 4159 3976 -10396 2 2 0 6 169 170 8407 -10397 2 2 0 6 2303 2306 6396 -10398 2 2 0 6 6411 9403 6412 -10399 2 2 0 6 103 104 564 -10400 2 2 0 6 1391 1394 1393 -10401 2 2 0 6 2076 2075 2079 -10402 2 2 0 6 2096 2098 2099 -10403 2 2 0 6 1542 1544 2586 -10404 2 2 0 6 3142 3144 3143 -10405 2 2 0 6 3404 3410 3443 -10406 2 2 0 6 4089 4091 4090 -10407 2 2 0 6 6225 7031 7032 -10408 2 2 0 6 818 9224 3559 -10409 2 2 0 6 1624 1627 1626 -10410 2 2 0 6 2140 2141 2142 -10411 2 2 0 6 1101 2260 2259 -10412 2 2 0 6 2702 2703 2704 -10413 2 2 0 6 3591 3712 8814 -10414 2 2 0 6 3406 3442 3408 -10415 2 2 0 6 3492 4750 4751 -10416 2 2 0 6 4741 8275 5268 -10417 2 2 0 6 6534 8292 6533 -10418 2 2 0 6 2030 9365 3654 -10419 2 2 0 6 4431 8776 9382 -10420 2 2 0 6 3533 9407 8074 -10421 2 2 0 6 787 788 793 -10422 2 2 0 6 1115 1117 1136 -10423 2 2 0 6 1831 1946 1945 -10424 2 2 0 6 2266 2268 2267 -10425 2 2 0 6 3403 3402 3406 -10426 2 2 0 6 1016 3451 1022 -10427 2 2 0 6 6428 6430 6429 -10428 2 2 0 6 5417 6464 5418 -10429 2 2 0 6 308 309 447 -10430 2 2 0 6 808 809 816 -10431 2 2 0 6 2269 2270 2279 -10432 2 2 0 6 2635 2729 2728 -10433 2 2 0 6 2792 8755 4433 -10434 2 2 0 6 2491 3643 2661 -10435 2 2 0 6 3587 3590 3981 -10436 2 2 0 6 6624 6625 6626 -10437 2 2 0 6 5743 7063 6210 -10438 2 2 0 6 3692 9110 4069 -10439 2 2 0 6 1637 4405 9150 -10440 2 2 0 6 642 645 644 -10441 2 2 0 6 3461 3464 3462 -10442 2 2 0 6 3623 4452 4025 -10443 2 2 0 6 4685 4844 4843 -10444 2 2 0 6 4748 4747 5223 -10445 2 2 0 6 7776 7778 7777 -10446 2 2 0 6 3488 8838 4846 -10447 2 2 0 6 1692 3385 9021 -10448 2 2 0 6 965 9203 967 -10449 2 2 0 6 5596 8554 5597 -10450 2 2 0 6 1640 1642 1641 -10451 2 2 0 6 1154 3561 8390 -10452 2 2 0 6 2166 2167 2168 -10453 2 2 0 6 598 4453 8686 -10454 2 2 0 6 1851 1853 3446 -10455 2 2 0 6 1629 1631 3539 -10456 2 2 0 6 4387 4445 4820 -10457 2 2 0 6 2282 6416 9131 -10458 2 2 0 6 4708 5211 5210 -10459 2 2 0 6 5468 6387 6179 -10460 2 2 0 6 5384 7529 6321 -10461 2 2 0 6 4428 8140 4962 -10462 2 2 0 6 4875 8897 5329 -10463 2 2 0 6 2283 9131 2288 -10464 2 2 0 6 7997 8636 9336 -10465 2 2 0 6 8905 9131 9356 -10466 2 2 0 6 8529 9924 9802 -10467 2 2 0 6 388 389 543 -10468 2 2 0 6 620 621 622 -10469 2 2 0 6 723 724 726 -10470 2 2 0 6 2213 2214 2375 -10471 2 2 0 6 3199 3201 3200 -10472 2 2 0 6 3672 3947 3946 -10473 2 2 0 6 4748 5223 5348 -10474 2 2 0 6 4384 5433 4386 -10475 2 2 0 6 5429 6159 6158 -10476 2 2 0 6 5635 6481 6283 -10477 2 2 0 6 3490 5496 8832 -10478 2 2 0 6 3943 8716 9571 -10479 2 2 0 6 5319 9803 7898 -10480 2 2 0 6 1326 1328 1327 -10481 2 2 0 6 2700 2701 2702 -10482 2 2 0 6 2525 2782 2784 -10483 2 2 0 6 1028 8904 4960 -10484 2 2 0 6 4757 6330 6122 -10485 2 2 0 6 4919 5339 5340 -10486 2 2 0 6 5221 7102 6265 -10487 2 2 0 6 5906 7416 5928 -10488 2 2 0 6 6465 6464 7822 -10489 2 2 0 6 4781 8134 5867 -10490 2 2 0 6 3503 8550 3762 -10491 2 2 0 6 8648 8650 8649 -10492 2 2 0 6 8648 8651 8650 -10493 2 2 0 6 2454 2646 8811 -10494 2 2 0 6 651 8952 8960 -10495 2 2 0 6 8848 8972 8971 -10496 2 2 0 6 720 724 723 -10497 2 2 0 6 785 790 789 -10498 2 2 0 6 1134 1152 1190 -10499 2 2 0 6 2814 2815 2816 -10500 2 2 0 6 3116 3118 3117 -10501 2 2 0 6 3007 3254 3008 -10502 2 2 0 6 3709 4049 3161 -10503 2 2 0 6 4557 4555 5936 -10504 2 2 0 6 5449 6651 6649 -10505 2 2 0 6 7300 7302 7301 -10506 2 2 0 6 1393 8529 3391 -10507 2 2 0 6 4379 4762 8525 -10508 2 2 0 6 2509 8834 2684 -10509 2 2 0 6 1004 1012 1013 -10510 2 2 0 6 2086 2102 2088 -10511 2 2 0 6 2423 2424 2425 -10512 2 2 0 6 2830 2836 3563 -10513 2 2 0 6 3974 3984 4852 -10514 2 2 0 6 4717 5674 5673 -10515 2 2 0 6 4980 5931 5539 -10516 2 2 0 6 5577 7531 6615 -10517 2 2 0 6 3398 7896 3402 -10518 2 2 0 6 8472 8474 8473 -10519 2 2 0 6 4406 8501 9204 -10520 2 2 0 6 2170 2171 2172 -10521 2 2 0 6 2274 2276 2285 -10522 2 2 0 6 2240 2393 2241 -10523 2 2 0 6 3132 3133 3134 -10524 2 2 0 6 4831 5341 4833 -10525 2 2 0 6 3490 3816 5496 -10526 2 2 0 6 5194 5195 7009 -10527 2 2 0 6 739 740 8765 -10528 2 2 0 6 1268 1355 1291 -10529 2 2 0 6 3597 3598 3599 -10530 2 2 0 6 4490 5080 5079 -10531 2 2 0 6 4413 5108 5106 -10532 2 2 0 6 5650 5651 5652 -10533 2 2 0 6 3924 6402 6403 -10534 2 2 0 6 638 8936 3537 -10535 2 2 0 6 4461 9253 6489 -10536 2 2 0 6 1119 1120 1121 -10537 2 2 0 6 1969 2512 1970 -10538 2 2 0 6 2813 2815 2814 -10539 2 2 0 6 726 1010 8968 -10540 2 2 0 6 3419 3420 3421 -10541 2 2 0 6 3581 3692 3691 -10542 2 2 0 6 5406 5818 9721 -10543 2 2 0 6 4761 6278 6279 -10544 2 2 0 6 5892 5954 7455 -10545 2 2 0 6 1495 9107 5550 -10546 2 2 0 6 8705 8707 9539 -10547 2 2 0 6 96 97 468 -10548 2 2 0 6 2275 2277 2276 -10549 2 2 0 6 2287 2288 2289 -10550 2 2 0 6 2997 3231 3230 -10551 2 2 0 6 2917 3295 3296 -10552 2 2 0 6 3036 4134 4135 -10553 2 2 0 6 2158 5439 4339 -10554 2 2 0 6 5177 6136 6125 -10555 2 2 0 6 5222 6265 6266 -10556 2 2 0 6 5870 6639 5942 -10557 2 2 0 6 3948 5404 8058 -10558 2 2 0 6 376 377 8240 -10559 2 2 0 6 2187 2418 8911 -10560 2 2 0 6 1114 8953 1116 -10561 2 2 0 6 2973 9169 2975 -10562 2 2 0 6 691 693 692 -10563 2 2 0 6 900 903 902 -10564 2 2 0 6 1603 1604 1605 -10565 2 2 0 6 1694 1695 1693 -10566 2 2 0 6 1418 1420 1918 -10567 2 2 0 6 2281 2283 2286 -10568 2 2 0 6 2362 2507 2506 -10569 2 2 0 6 2706 2707 2708 -10570 2 2 0 6 3201 3203 3202 -10571 2 2 0 6 3699 3700 3701 -10572 2 2 0 6 1360 4043 3369 -10573 2 2 0 6 3963 4824 3962 -10574 2 2 0 6 4167 4882 4883 -10575 2 2 0 6 3359 5505 4289 -10576 2 2 0 6 5762 5763 6214 -10577 2 2 0 6 5214 6377 6376 -10578 2 2 0 6 5926 9883 10042 -10579 2 2 0 6 740 742 770 -10580 2 2 0 6 1219 1234 1235 -10581 2 2 0 6 1862 3529 1915 -10582 2 2 0 6 2950 3159 2951 -10583 2 2 0 6 3414 3416 3415 -10584 2 2 0 6 1856 8667 1858 -10585 2 2 0 6 4565 5434 5435 -10586 2 2 0 6 4597 5104 6053 -10587 2 2 0 6 4947 5735 6477 -10588 2 2 0 6 3416 9281 3417 -10589 2 2 0 6 1571 1574 8129 -10590 2 2 0 6 3712 5557 8814 -10591 2 2 0 6 615 616 8923 -10592 2 2 0 6 1607 1608 1605 -10593 2 2 0 6 3193 4403 4198 -10594 2 2 0 6 3211 4848 9188 -10595 2 2 0 6 5794 6280 5793 -10596 2 2 0 6 1415 8710 1417 -10597 2 2 0 6 3716 9323 9551 -10598 2 2 0 6 1732 9573 1743 -10599 2 2 0 6 684 685 686 -10600 2 2 0 6 982 993 992 -10601 2 2 0 6 1574 1576 3364 -10602 2 2 0 6 3178 3742 3179 -10603 2 2 0 6 3547 3549 4344 -10604 2 2 0 6 4333 5143 5385 -10605 2 2 0 6 7703 8483 9541 -10606 2 2 0 6 5401 6063 6035 -10607 2 2 0 6 1757 6270 6352 -10608 2 2 0 6 5446 6633 6632 -10609 2 2 0 6 5542 7425 5543 -10610 2 2 0 6 3198 3200 9120 -10611 2 2 0 6 2262 2264 2263 -10612 2 2 0 6 2666 2879 3148 -10613 2 2 0 6 3397 3398 3396 -10614 2 2 0 6 3407 3409 3412 -10615 2 2 0 6 3117 3118 4142 -10616 2 2 0 6 4475 4489 4490 -10617 2 2 0 6 4446 5636 5691 -10618 2 2 0 6 5641 5642 5746 -10619 2 2 0 6 5064 9061 6505 -10620 2 2 0 6 733 734 735 -10621 2 2 0 6 952 954 955 -10622 2 2 0 6 720 2312 724 -10623 2 2 0 6 3116 3119 3118 -10624 2 2 0 6 3304 3454 3455 -10625 2 2 0 6 2813 4005 2815 -10626 2 2 0 6 4464 4465 4467 -10627 2 2 0 6 4095 4549 4096 -10628 2 2 0 6 5857 8698 8699 -10629 2 2 0 6 2750 2751 2752 -10630 2 2 0 6 2516 2570 2897 -10631 2 2 0 6 3148 3488 3487 -10632 2 2 0 6 1045 1540 3612 -10633 2 2 0 6 3294 3311 3624 -10634 2 2 0 6 639 3739 641 -10635 2 2 0 6 5450 6650 7652 -10636 2 2 0 6 4939 8071 8072 -10637 2 2 0 6 1888 8613 2873 -10638 2 2 0 6 1551 4351 8615 -10639 2 2 0 6 1054 1206 8441 -10640 2 2 0 6 5217 9157 7781 -10641 2 2 0 6 872 874 873 -10642 2 2 0 6 966 975 974 -10643 2 2 0 6 2731 2732 2733 -10644 2 2 0 6 2758 2760 2759 -10645 2 2 0 6 680 682 3450 -10646 2 2 0 6 2246 8158 8634 -10647 2 2 0 6 4733 5733 5732 -10648 2 2 0 6 4958 5964 4959 -10649 2 2 0 6 5213 6376 6378 -10650 2 2 0 6 5626 6521 6522 -10651 2 2 0 6 4137 4764 8053 -10652 2 2 0 6 6392 8761 8762 -10653 2 2 0 6 2294 8905 2309 -10654 2 2 0 6 632 635 634 -10655 2 2 0 6 860 861 862 -10656 2 2 0 6 1093 1131 1132 -10657 2 2 0 6 2270 2271 2272 -10658 2 2 0 6 2440 2441 2442 -10659 2 2 0 6 2526 2877 2783 -10660 2 2 0 6 2877 3152 2878 -10661 2 2 0 6 3459 3461 3460 -10662 2 2 0 6 4483 4484 4485 -10663 2 2 0 6 5660 5661 5662 -10664 2 2 0 6 5197 6224 5487 -10665 2 2 0 6 3119 6292 3121 -10666 2 2 0 6 6561 6562 7158 -10667 2 2 0 6 1650 4915 7538 -10668 2 2 0 6 8309 8311 8310 -10669 2 2 0 6 1968 4348 8316 -10670 2 2 0 6 167 168 8400 -10671 2 2 0 6 4005 8702 8701 -10672 2 2 0 6 5727 8844 6025 -10673 2 2 0 6 1602 3919 9112 -10674 2 2 0 6 3753 5507 9201 -10675 2 2 0 6 1234 1260 1235 -10676 2 2 0 6 1373 1374 1375 -10677 2 2 0 6 3122 3125 3124 -10678 2 2 0 6 3101 3380 3379 -10679 2 2 0 6 4286 5609 5266 -10680 2 2 0 6 1205 1227 6240 -10681 2 2 0 6 4167 4883 6370 -10682 2 2 0 6 5357 5358 7388 -10683 2 2 0 6 6273 7458 8227 -10684 2 2 0 6 3908 8762 8761 -10685 2 2 0 6 1564 9324 9460 -10686 2 2 0 6 1425 1427 10882 -10687 2 2 0 6 1195 1218 1219 -10688 2 2 0 6 1361 1362 1363 -10689 2 2 0 6 1368 1367 1369 -10690 2 2 0 6 2898 3178 3179 -10691 2 2 0 6 3435 3436 3437 -10692 2 2 0 6 3302 4391 3894 -10693 2 2 0 6 1650 1648 4915 -10694 2 2 0 6 7786 7788 7787 -10695 2 2 0 6 3605 4735 8729 -10696 2 2 0 6 1120 8951 1224 -10697 2 2 0 6 2063 2069 9054 -10698 2 2 0 6 7302 8604 7304 -10699 2 2 0 6 2157 2227 2409 -10700 2 2 0 6 2431 2433 2432 -10701 2 2 0 6 3136 3138 3139 -10702 2 2 0 6 3394 3395 3396 -10703 2 2 0 6 3431 3432 3433 -10704 2 2 0 6 4855 4856 4330 -10705 2 2 0 6 3396 3399 9100 -10706 2 2 0 6 4848 5035 5326 -10707 2 2 0 6 4776 5597 5598 -10708 2 2 0 6 5657 5659 5658 -10709 2 2 0 6 653 6414 6413 -10710 2 2 0 6 5669 6697 5670 -10711 2 2 0 6 1462 10292 10431 -10712 2 2 0 6 1658 1667 1661 -10713 2 2 0 6 2110 2119 2118 -10714 2 2 0 6 2652 2651 2653 -10715 2 2 0 6 3959 4829 3960 -10716 2 2 0 6 2409 4569 2926 -10717 2 2 0 6 6377 7072 7747 -10718 2 2 0 6 4383 4385 4760 -10719 2 2 0 6 3753 4586 5507 -10720 2 2 0 6 4659 6162 5121 -10721 2 2 0 6 4406 8499 8500 -10722 2 2 0 6 4404 6379 8732 -10723 2 2 0 6 2308 2294 2309 -10724 2 2 0 6 2291 3627 2293 -10725 2 2 0 6 3660 5573 3997 -10726 2 2 0 6 5633 5635 5634 -10727 2 2 0 6 5732 5733 5734 -10728 2 2 0 6 5199 6641 5604 -10729 2 2 0 6 1742 1864 8628 -10730 2 2 0 6 2288 8905 2294 -10731 2 2 0 6 6475 9449 9847 -10732 2 2 0 6 728 732 733 -10733 2 2 0 6 1125 1127 1135 -10734 2 2 0 6 1369 1371 1372 -10735 2 2 0 6 2441 2449 2442 -10736 2 2 0 6 2906 3210 3211 -10737 2 2 0 6 2917 3296 4006 -10738 2 2 0 6 3961 4873 4874 -10739 2 2 0 6 4093 4886 4092 -10740 2 2 0 6 3540 3542 5703 -10741 2 2 0 6 3962 5627 9095 -10742 2 2 0 6 3311 8084 7543 -10743 2 2 0 6 2823 8278 2825 -10744 2 2 0 6 3289 9111 3483 -10745 2 2 0 6 4207 4210 9327 -10746 2 2 0 6 3022 9910 8306 -10747 2 2 0 6 592 594 595 -10748 2 2 0 6 599 601 1920 -10749 2 2 0 6 1889 1891 1977 -10750 2 2 0 6 2147 8444 3541 -10751 2 2 0 6 1327 1360 3369 -10752 2 2 0 6 3869 3871 4640 -10753 2 2 0 6 3344 6608 3345 -10754 2 2 0 6 4096 4549 8320 -10755 2 2 0 6 5357 8099 8670 -10756 2 2 0 6 5003 8676 6567 -10757 2 2 0 6 1379 1381 1382 -10758 2 2 0 6 1610 1611 1612 -10759 2 2 0 6 3458 3459 3460 -10760 2 2 0 6 4506 4507 4508 -10761 2 2 0 6 4831 4833 4832 -10762 2 2 0 6 4068 4895 4896 -10763 2 2 0 6 4708 5210 4709 -10764 2 2 0 6 4986 5237 5238 -10765 2 2 0 6 4741 5268 5267 -10766 2 2 0 6 2594 9868 2645 -10767 2 2 0 6 8706 8806 9465 -10768 2 2 0 6 612 613 614 -10769 2 2 0 6 678 679 680 -10770 2 2 0 6 680 681 682 -10771 2 2 0 6 1381 1384 1383 -10772 2 2 0 6 2082 2123 8998 -10773 2 2 0 6 1881 2679 1976 -10774 2 2 0 6 3107 3109 3108 -10775 2 2 0 6 3691 3692 4068 -10776 2 2 0 6 4847 4910 4909 -10777 2 2 0 6 4926 4925 4927 -10778 2 2 0 6 4534 5033 5034 -10779 2 2 0 6 4995 5967 5949 -10780 2 2 0 6 4558 6003 5871 -10781 2 2 0 6 2264 8866 5594 -10782 2 2 0 6 5949 5967 8896 -10783 2 2 0 6 773 774 776 -10784 2 2 0 6 1387 1389 1390 -10785 2 2 0 6 2237 2343 2238 -10786 2 2 0 6 3134 3137 3136 -10787 2 2 0 6 1108 3990 1110 -10788 2 2 0 6 3675 3993 3676 -10789 2 2 0 6 6399 7618 7619 -10790 2 2 0 6 4050 4517 8546 -10791 2 2 0 6 4895 8637 5955 -10792 2 2 0 6 2082 8998 2084 -10793 2 2 0 6 648 650 651 -10794 2 2 0 6 896 899 898 -10795 2 2 0 6 1328 1361 1360 -10796 2 2 0 6 1367 1370 1369 -10797 2 2 0 6 1847 1849 1961 -10798 2 2 0 6 2797 2798 2799 -10799 2 2 0 6 4156 4158 8937 -10800 2 2 0 6 4977 4978 5939 -10801 2 2 0 6 4883 6372 6371 -10802 2 2 0 6 6089 6702 6091 -10803 2 2 0 6 5309 7331 6507 -10804 2 2 0 6 6343 8547 8548 -10805 2 2 0 6 2892 9303 3553 -10806 2 2 0 6 1981 9027 2353 -10807 2 2 0 6 2119 2121 2120 -10808 2 2 0 6 2351 2355 2520 -10809 2 2 0 6 3396 3398 3399 -10810 2 2 0 6 2859 2860 3534 -10811 2 2 0 6 4941 4954 4953 -10812 2 2 0 6 4485 5007 5008 -10813 2 2 0 6 4707 5215 4732 -10814 2 2 0 6 4422 5264 5262 -10815 2 2 0 6 3919 4743 5537 -10816 2 2 0 6 5489 7104 6056 -10817 2 2 0 6 8182 8185 8184 -10818 2 2 0 6 3698 9078 4028 -10819 2 2 0 6 3326 9256 3972 -10820 2 2 0 6 640 641 642 -10821 2 2 0 6 2295 2310 3458 -10822 2 2 0 6 2345 2599 2666 -10823 2 2 0 6 2901 2902 3204 -10824 2 2 0 6 4055 4056 4506 -10825 2 2 0 6 4798 5821 5822 -10826 2 2 0 6 6080 6083 6081 -10827 2 2 0 6 6142 6865 7720 -10828 2 2 0 6 4852 5329 7813 -10829 2 2 0 6 4050 8546 4503 -10830 2 2 0 6 7313 8581 8582 -10831 2 2 0 6 2514 2681 8928 -10832 2 2 0 6 3763 8887 9277 -10833 2 2 0 6 589 591 590 -10834 2 2 0 6 624 625 626 -10835 2 2 0 6 2352 2604 2949 -10836 2 2 0 6 3516 3518 3517 -10837 2 2 0 6 3960 4829 4831 -10838 2 2 0 6 5366 5368 5365 -10839 2 2 0 6 4175 5720 5721 -10840 2 2 0 6 5975 5976 5977 -10841 2 2 0 6 5160 6069 6068 -10842 2 2 0 6 2177 4399 8652 -10843 2 2 0 6 3756 6474 5747 -10844 2 2 0 6 6097 6685 6684 -10845 2 2 0 6 8673 8674 8675 -10846 2 2 0 6 3836 5803 9867 -10847 2 2 0 6 99 100 493 -10848 2 2 0 6 1868 1907 9368 -10849 2 2 0 6 1393 1394 1395 -10850 2 2 0 6 1974 2230 2231 -10851 2 2 0 6 2546 2549 2548 -10852 2 2 0 6 4324 4591 4325 -10853 2 2 0 6 3378 4004 4330 -10854 2 2 0 6 4180 4190 4948 -10855 2 2 0 6 3529 5727 4408 -10856 2 2 0 6 5274 5293 7068 -10857 2 2 0 6 3035 8289 4402 -10858 2 2 0 6 2459 8634 2717 -10859 2 2 0 6 1371 1374 1373 -10860 2 2 0 6 3896 5312 4736 -10861 2 2 0 6 2928 4516 5678 -10862 2 2 0 6 4898 6424 6335 -10863 2 2 0 6 6254 7169 6984 -10864 2 2 0 6 6579 7228 7211 -10865 2 2 0 6 7572 7574 7573 -10866 2 2 0 6 3752 7671 4113 -10867 2 2 0 6 7720 7721 7724 -10868 2 2 0 6 4489 9333 4490 -10869 2 2 0 6 3451 10092 10131 -10870 2 2 0 6 3883 4843 9680 -10871 2 2 0 6 4344 9780 8315 -10872 2 2 0 6 588 589 590 -10873 2 2 0 6 1246 1248 1247 -10874 2 2 0 6 1383 1384 1385 -10875 2 2 0 6 1706 1708 1707 -10876 2 2 0 6 3437 3440 3439 -10877 2 2 0 6 4427 4428 4429 -10878 2 2 0 6 4193 4739 4195 -10879 2 2 0 6 4886 5553 4887 -10880 2 2 0 6 6053 6401 6400 -10881 2 2 0 6 5496 6223 7074 -10882 2 2 0 6 6022 7688 7052 -10883 2 2 0 6 5799 7913 7914 -10884 2 2 0 6 1896 8499 4406 -10885 2 2 0 6 4575 9280 4577 -10886 2 2 0 6 689 691 690 -10887 2 2 0 6 1250 1252 1251 -10888 2 2 0 6 1401 1404 1403 -10889 2 2 0 6 1412 1414 1760 -10890 2 2 0 6 2419 2420 2421 -10891 2 2 0 6 691 2952 693 -10892 2 2 0 6 2689 3070 3069 -10893 2 2 0 6 3171 3566 4045 -10894 2 2 0 6 4316 4317 4315 -10895 2 2 0 6 2858 3639 4392 -10896 2 2 0 6 4596 5096 6050 -10897 2 2 0 6 4467 5798 8098 -10898 2 2 0 6 4136 7515 4697 -10899 2 2 0 6 8703 8704 8705 -10900 2 2 0 6 1667 9145 5455 -10901 2 2 0 6 7037 7039 9177 -10902 2 2 0 6 2798 9348 9349 -10903 2 2 0 6 650 652 651 -10904 2 2 0 6 1385 1387 1386 -10905 2 2 0 6 2425 2426 2427 -10906 2 2 0 6 2299 2301 2665 -10907 2 2 0 6 2949 2950 2951 -10908 2 2 0 6 3395 3397 3396 -10909 2 2 0 6 3601 3602 3603 -10910 2 2 0 6 2930 3696 2479 -10911 2 2 0 6 2964 3657 9510 -10912 2 2 0 6 2606 5558 2608 -10913 2 2 0 6 4895 5955 4896 -10914 2 2 0 6 3560 8864 8928 -10915 2 2 0 6 671 672 674 -10916 2 2 0 6 2299 2300 2301 -10917 2 2 0 6 1316 1526 4020 -10918 2 2 0 6 4087 4089 4088 -10919 2 2 0 6 1286 1312 4430 -10920 2 2 0 6 3489 4846 4847 -10921 2 2 0 6 3984 5686 4875 -10922 2 2 0 6 4549 5030 5937 -10923 2 2 0 6 4733 5209 9364 -10924 2 2 0 6 5104 6703 6053 -10925 2 2 0 6 5318 8024 8023 -10926 2 2 0 6 645 646 644 -10927 2 2 0 6 795 796 799 -10928 2 2 0 6 2704 2705 2706 -10929 2 2 0 6 2630 2695 3208 -10930 2 2 0 6 2859 3534 3535 -10931 2 2 0 6 3762 4924 4217 -10932 2 2 0 6 5481 5486 6287 -10933 2 2 0 6 5064 6505 6503 -10934 2 2 0 6 5824 5862 6570 -10935 2 2 0 6 3488 8576 8838 -10936 2 2 0 6 5440 8316 9075 -10937 2 2 0 6 3631 9505 9506 -10938 2 2 0 6 2051 9557 2054 -10939 2 2 0 6 4843 10353 7731 -10940 2 2 0 6 592 593 594 -10941 2 2 0 6 662 664 663 -10942 2 2 0 6 776 777 778 -10943 2 2 0 6 782 783 787 -10944 2 2 0 6 932 934 935 -10945 2 2 0 6 1147 1156 1257 -10946 2 2 0 6 2355 2521 2520 -10947 2 2 0 6 6333 8425 7491 -10948 2 2 0 6 4213 10081 9611 -10949 2 2 0 6 2124 2134 2125 -10950 2 2 0 6 2397 2566 2565 -10951 2 2 0 6 3035 3448 3447 -10952 2 2 0 6 3776 3778 3777 -10953 2 2 0 6 3912 4734 4271 -10954 2 2 0 6 3712 5001 5557 -10955 2 2 0 6 1485 1500 7959 -10956 2 2 0 6 4585 5639 8835 -10957 2 2 0 6 1010 8969 8968 -10958 2 2 0 6 2014 10264 2108 -10959 2 2 0 6 1365 1367 1368 -10960 2 2 0 6 2080 2109 2110 -10961 2 2 0 6 2160 2161 2162 -10962 2 2 0 6 2521 2907 2905 -10963 2 2 0 6 3070 4100 4099 -10964 2 2 0 6 5990 5991 6603 -10965 2 2 0 6 3234 11168 11162 -10966 2 2 0 6 2440 9017 2656 -10967 2 2 0 6 2679 3344 2680 -10968 2 2 0 6 3348 3350 3351 -10969 2 2 0 6 1388 3530 1389 -10970 2 2 0 6 4134 4707 4135 -10971 2 2 0 6 4965 5647 5646 -10972 2 2 0 6 6533 7990 7988 -10973 2 2 0 6 682 8585 3450 -10974 2 2 0 6 2512 4404 8732 -10975 2 2 0 6 1151 8827 1174 -10976 2 2 0 6 5612 6262 9628 -10977 2 2 0 6 594 596 595 -10978 2 2 0 6 655 656 657 -10979 2 2 0 6 1032 1499 2153 -10980 2 2 0 6 2435 2436 2434 -10981 2 2 0 6 3204 3205 3697 -10982 2 2 0 6 834 878 3714 -10983 2 2 0 6 4091 4095 4093 -10984 2 2 0 6 1581 1583 1606 -10985 2 2 0 6 1079 1085 2314 -10986 2 2 0 6 2520 2521 2905 -10987 2 2 0 6 2682 3199 3198 -10988 2 2 0 6 4313 4314 4315 -10989 2 2 0 6 4379 4381 4762 -10990 2 2 0 6 5879 6144 6658 -10991 2 2 0 6 2893 9047 2894 -10992 2 2 0 6 2758 9285 2760 -10993 2 2 0 6 743 745 744 -10994 2 2 0 6 1003 1012 1004 -10995 2 2 0 6 880 884 881 -10996 2 2 0 6 1531 1534 1533 -10997 2 2 0 6 2253 2528 2529 -10998 2 2 0 6 2791 2793 2792 -10999 2 2 0 6 3752 3974 4116 -11000 2 2 0 6 4461 4463 4462 -11001 2 2 0 6 4325 4592 4899 -11002 2 2 0 6 5538 9076 8503 -11003 2 2 0 6 5553 7535 9142 -11004 2 2 0 6 798 10785 10803 -11005 2 2 0 6 1235 1260 1261 -11006 2 2 0 6 1637 1640 1638 -11007 2 2 0 6 2303 2304 2306 -11008 2 2 0 6 2737 3066 3065 -11009 2 2 0 6 2922 2923 3313 -11010 2 2 0 6 3981 4322 4853 -11011 2 2 0 6 4388 5317 4894 -11012 2 2 0 6 6580 7211 7212 -11013 2 2 0 6 2340 8519 8515 -11014 2 2 0 6 2707 3490 8832 -11015 2 2 0 6 5480 9349 9348 -11016 2 2 0 6 732 734 733 -11017 2 2 0 6 799 800 805 -11018 2 2 0 6 2271 2273 2272 -11019 2 2 0 6 2118 2131 8800 -11020 2 2 0 6 2306 2307 2345 -11021 2 2 0 6 4206 5066 8780 -11022 2 2 0 6 3397 3400 3398 -11023 2 2 0 6 3439 3440 3441 -11024 2 2 0 6 3459 3463 3461 -11025 2 2 0 6 3163 3166 8595 -11026 2 2 0 6 1326 1325 3924 -11027 2 2 0 6 3609 4022 3622 -11028 2 2 0 6 4205 5066 4206 -11029 2 2 0 6 5548 5549 5547 -11030 2 2 0 6 4657 6247 6248 -11031 2 2 0 6 5591 5696 6260 -11032 2 2 0 6 6325 7130 6326 -11033 2 2 0 6 7280 7282 7281 -11034 2 2 0 6 5549 6381 8392 -11035 2 2 0 6 780 1046 9209 -11036 2 2 0 6 3414 9274 3746 -11037 2 2 0 6 4708 9549 5211 -11038 2 2 0 6 1273 1272 1274 -11039 2 2 0 6 1376 1377 1375 -11040 2 2 0 6 2066 2071 2070 -11041 2 2 0 6 2134 2239 2135 -11042 2 2 0 6 2511 2647 2646 -11043 2 2 0 6 2552 2663 2662 -11044 2 2 0 6 3063 3116 3117 -11045 2 2 0 6 3950 3952 3951 -11046 2 2 0 6 4185 4186 4997 -11047 2 2 0 6 8176 8442 8178 -11048 2 2 0 6 3973 9399 5633 -11049 2 2 0 6 1265 3388 8795 -11050 2 2 0 6 4846 5358 5357 -11051 2 2 0 6 4637 5836 5150 -11052 2 2 0 6 4074 5974 5975 -11053 2 2 0 6 1100 8017 9759 -11054 2 2 0 6 4564 5978 7276 -11055 2 2 0 6 3326 3328 9256 -11056 2 2 0 6 4091 4093 4092 -11057 2 2 0 6 4360 4363 4364 -11058 2 2 0 6 3959 4830 4829 -11059 2 2 0 6 2789 7834 8042 -11060 2 2 0 6 4503 5856 4505 -11061 2 2 0 6 5228 6186 7073 -11062 2 2 0 6 3692 8914 9110 -11063 2 2 0 6 7966 7968 7967 -11064 2 2 0 6 5585 7279 8837 -11065 2 2 0 6 3580 3583 9380 -11066 2 2 0 6 2862 3923 3113 -11067 2 2 0 6 3582 8980 3584 -11068 2 2 0 6 4748 5348 5561 -11069 2 2 0 6 4081 4079 5053 -11070 2 2 0 6 4087 5589 4089 -11071 2 2 0 6 4853 5325 6272 -11072 2 2 0 6 5171 6291 6290 -11073 2 2 0 6 6554 7810 7811 -11074 2 2 0 6 5733 9364 7051 -11075 2 2 0 6 2278 2281 8647 -11076 2 2 0 6 1077 1079 8831 -11077 2 2 0 6 3646 9225 8549 -11078 2 2 0 6 805 806 808 -11079 2 2 0 6 1112 1189 1114 -11080 2 2 0 6 1374 1376 1375 -11081 2 2 0 6 2273 2275 2274 -11082 2 2 0 6 2309 2501 2500 -11083 2 2 0 6 3774 3776 3775 -11084 2 2 0 6 3849 3850 3851 -11085 2 2 0 6 2073 2107 4074 -11086 2 2 0 6 4168 4904 4903 -11087 2 2 0 6 4741 5267 4761 -11088 2 2 0 6 5373 5489 5488 -11089 2 2 0 6 5719 6625 6624 -11090 2 2 0 6 5497 8523 9185 -11091 2 2 0 6 8757 9445 9783 -11092 2 2 0 6 3169 8461 9917 -11093 2 2 0 6 1291 1355 1356 -11094 2 2 0 6 4358 8543 6341 -11095 2 2 0 6 2180 2181 2351 -11096 2 2 0 6 2427 2553 2554 -11097 2 2 0 6 3519 3758 4450 -11098 2 2 0 6 4977 9350 5951 -11099 2 2 0 6 2829 3039 3038 -11100 2 2 0 6 3046 3047 3048 -11101 2 2 0 6 3138 3140 3139 -11102 2 2 0 6 1175 1199 3480 -11103 2 2 0 6 3581 3691 3582 -11104 2 2 0 6 3263 3979 3978 -11105 2 2 0 6 7313 8583 8824 -11106 2 2 0 6 5457 5460 5459 -11107 2 2 0 6 3018 8506 3019 -11108 2 2 0 6 3560 3747 8864 -11109 2 2 0 6 5699 9457 9755 -11110 2 2 0 6 642 644 643 -11111 2 2 0 6 668 670 671 -11112 2 2 0 6 2379 3645 8950 -11113 2 2 0 6 1482 1483 1481 -11114 2 2 0 6 2060 2077 2062 -11115 2 2 0 6 2610 2812 2811 -11116 2 2 0 6 3160 4206 4207 -11117 2 2 0 6 5662 5661 5663 -11118 2 2 0 6 4421 4423 5869 -11119 2 2 0 6 4126 5116 6000 -11120 2 2 0 6 1981 4409 9027 -11121 2 2 0 6 5295 6528 6530 -11122 2 2 0 6 6560 6595 6562 -11123 2 2 0 6 5498 8477 8478 -11124 2 2 0 6 5855 8507 8509 -11125 2 2 0 6 591 593 592 -11126 2 2 0 6 2880 4047 3172 -11127 2 2 0 6 3417 3419 3418 -11128 2 2 0 6 4119 5099 5101 -11129 2 2 0 6 5364 5365 5363 -11130 2 2 0 6 4887 5554 5556 -11131 2 2 0 6 5101 6065 6064 -11132 2 2 0 6 4437 8177 8179 -11133 2 2 0 6 1637 9150 1640 -11134 2 2 0 6 2124 2121 2179 -11135 2 2 0 6 2354 2762 2611 -11136 2 2 0 6 2565 2918 2916 -11137 2 2 0 6 3351 4031 4032 -11138 2 2 0 6 5579 5580 5581 -11139 2 2 0 6 5030 6602 5937 -11140 2 2 0 6 4592 4591 6686 -11141 2 2 0 6 1375 1378 8850 -11142 2 2 0 6 3333 3336 9160 -11143 2 2 0 6 3746 9274 5434 -11144 2 2 0 6 689 8913 8965 -11145 2 2 0 6 1485 1486 1500 -11146 2 2 0 6 2534 2536 2535 -11147 2 2 0 6 2966 3018 3017 -11148 2 2 0 6 861 3486 863 -11149 2 2 0 6 3518 3758 3519 -11150 2 2 0 6 4869 5416 5473 -11151 2 2 0 6 5333 5334 7230 -11152 2 2 0 6 6663 7472 7245 -11153 2 2 0 6 5840 8034 8033 -11154 2 2 0 6 4891 8734 8735 -11155 2 2 0 6 2999 3229 3267 -11156 2 2 0 6 1121 1123 3509 -11157 2 2 0 6 4068 3692 4069 -11158 2 2 0 6 763 1523 8423 -11159 2 2 0 6 5640 5643 5642 -11160 2 2 0 6 1394 6411 1396 -11161 2 2 0 6 7783 7785 7791 -11162 2 2 0 6 2556 2629 2630 -11163 2 2 0 6 3019 3022 3021 -11164 2 2 0 6 2951 3159 3160 -11165 2 2 0 6 3289 3483 3291 -11166 2 2 0 6 839 841 3569 -11167 2 2 0 6 976 3973 3995 -11168 2 2 0 6 3526 4118 3738 -11169 2 2 0 6 4208 4211 4210 -11170 2 2 0 6 3693 5568 5567 -11171 2 2 0 6 4812 4814 5842 -11172 2 2 0 6 5435 5436 5998 -11173 2 2 0 6 3447 3449 6391 -11174 2 2 0 6 4963 5866 7713 -11175 2 2 0 6 3860 8186 8181 -11176 2 2 0 6 1940 2205 9887 -11177 2 2 0 6 883 966 965 -11178 2 2 0 6 2228 2499 2498 -11179 2 2 0 6 2584 2689 2687 -11180 2 2 0 6 2978 2996 2977 -11181 2 2 0 6 3426 4012 3994 -11182 2 2 0 6 3358 4108 5500 -11183 2 2 0 6 6174 6579 6580 -11184 2 2 0 6 5541 5790 7419 -11185 2 2 0 6 874 4138 9654 -11186 2 2 0 6 5488 5490 8538 -11187 2 2 0 6 3933 8922 4579 -11188 2 2 0 6 4962 8141 10321 -11189 2 2 0 6 1208 10554 7438 -11190 2 2 0 6 892 895 894 -11191 2 2 0 6 3590 3591 8814 -11192 2 2 0 6 5223 5301 8731 -11193 2 2 0 6 3600 3602 3601 -11194 2 2 0 6 3603 3604 3605 -11195 2 2 0 6 3756 5747 4114 -11196 2 2 0 6 4881 5848 5849 -11197 2 2 0 6 4583 6022 6021 -11198 2 2 0 6 5432 6385 6384 -11199 2 2 0 6 7309 7314 7318 -11200 2 2 0 6 4208 8780 5054 -11201 2 2 0 6 5786 9847 9575 -11202 2 2 0 6 6451 9688 9994 -11203 2 2 0 6 1275 1278 1279 -11204 2 2 0 6 1804 1787 1828 -11205 2 2 0 6 2032 2067 2033 -11206 2 2 0 6 1908 2181 2180 -11207 2 2 0 6 3017 3018 3019 -11208 2 2 0 6 3412 3413 3613 -11209 2 2 0 6 3226 3848 3847 -11210 2 2 0 6 2199 4057 2201 -11211 2 2 0 6 4062 4558 4518 -11212 2 2 0 6 2067 3512 8940 -11213 2 2 0 6 2565 9028 2918 -11214 2 2 0 6 5388 7422 5389 -11215 2 2 0 6 5034 5834 5887 -11216 2 2 0 6 5218 6031 6032 -11217 2 2 0 6 5358 7664 7388 -11218 2 2 0 6 7787 7788 7789 -11219 2 2 0 6 6462 6463 8239 -11220 2 2 0 6 7656 7657 8249 -11221 2 2 0 6 4908 9040 8122 -11222 2 2 0 6 3288 3290 9383 -11223 2 2 0 6 686 687 689 -11224 2 2 0 6 2649 2677 2678 -11225 2 2 0 6 3468 4078 3469 -11226 2 2 0 6 2928 4509 4516 -11227 2 2 0 6 1756 4859 4860 -11228 2 2 0 6 4208 5054 4211 -11229 2 2 0 6 5545 5546 6187 -11230 2 2 0 6 4848 5326 6294 -11231 2 2 0 6 6051 6735 6734 -11232 2 2 0 6 1312 9008 4430 -11233 2 2 0 6 3923 7374 9589 -11234 2 2 0 6 660 662 663 -11235 2 2 0 6 865 867 866 -11236 2 2 0 6 1258 1314 1257 -11237 2 2 0 6 1802 1895 1896 -11238 2 2 0 6 3043 3044 3042 -11239 2 2 0 6 3132 3134 3135 -11240 2 2 0 6 2923 3314 3313 -11241 2 2 0 6 3409 3413 3412 -11242 2 2 0 6 2819 3562 2821 -11243 2 2 0 6 3356 3926 3927 -11244 2 2 0 6 3117 4142 4143 -11245 2 2 0 6 6439 6440 6441 -11246 2 2 0 6 5264 7078 6198 -11247 2 2 0 6 5954 7456 7455 -11248 2 2 0 6 1399 1402 9547 -11249 2 2 0 6 719 720 723 -11250 2 2 0 6 794 795 793 -11251 2 2 0 6 5223 8731 6230 -11252 2 2 0 6 8945 8946 9552 -11253 2 2 0 6 4834 8198 5498 -11254 2 2 0 6 2118 8800 2117 -11255 2 2 0 6 2760 2866 2865 -11256 2 2 0 6 3136 3137 3138 -11257 2 2 0 6 3543 3544 3542 -11258 2 2 0 6 2174 4399 2177 -11259 2 2 0 6 5885 9180 8447 -11260 2 2 0 6 4721 5269 4767 -11261 2 2 0 6 326 327 9255 -11262 2 2 0 6 3458 3460 5517 -11263 2 2 0 6 3729 5045 9074 -11264 2 2 0 6 8485 10257 10230 -11265 2 2 0 6 8261 8265 8264 -11266 2 2 0 6 1585 8396 3476 -11267 2 2 0 6 3876 4795 9676 -11268 2 2 0 6 9458 10395 10399 -11269 2 2 0 6 2301 2303 9114 -11270 2 2 0 6 644 646 647 -11271 2 2 0 6 767 768 773 -11272 2 2 0 6 789 790 791 -11273 2 2 0 6 1237 1253 1239 -11274 2 2 0 6 2024 2028 2026 -11275 2 2 0 6 2875 3105 3104 -11276 2 2 0 6 3148 8576 3488 -11277 2 2 0 6 3572 3897 3898 -11278 2 2 0 6 4871 9670 5999 -11279 2 2 0 6 3677 3679 4181 -11280 2 2 0 6 4207 4208 4210 -11281 2 2 0 6 3499 5565 3986 -11282 2 2 0 6 5317 7497 7496 -11283 2 2 0 6 6255 7201 8006 -11284 2 2 0 6 8192 8193 8194 -11285 2 2 0 6 5506 8852 6379 -11286 2 2 0 6 1255 9040 4908 -11287 2 2 0 6 5526 9163 5528 -11288 2 2 0 6 5571 8684 10137 -11289 2 2 0 6 882 965 967 -11290 2 2 0 6 1798 1722 1799 -11291 2 2 0 6 2135 2149 2136 -11292 2 2 0 6 2272 2273 2274 -11293 2 2 0 6 1893 2147 3540 -11294 2 2 0 6 3393 3395 3394 -11295 2 2 0 6 3598 3600 3599 -11296 2 2 0 6 4468 4986 4985 -11297 2 2 0 6 1396 6411 6412 -11298 2 2 0 6 3597 3599 5551 -11299 2 2 0 6 5081 5082 6228 -11300 2 2 0 6 4579 7520 5277 -11301 2 2 0 6 9788 11270 11263 -11302 2 2 0 6 2816 2818 3028 -11303 2 2 0 6 3295 3907 3906 -11304 2 2 0 6 4311 4313 4312 -11305 2 2 0 6 3393 4424 3395 -11306 2 2 0 6 3412 3613 5547 -11307 2 2 0 6 5782 5783 5784 -11308 2 2 0 6 5721 5839 5840 -11309 2 2 0 6 5729 6555 5730 -11310 2 2 0 6 753 3754 8479 -11311 2 2 0 6 2541 7929 2547 -11312 2 2 0 6 8033 8034 8035 -11313 2 2 0 6 4645 9345 5521 -11314 2 2 0 6 735 736 737 -11315 2 2 0 6 869 872 870 -11316 2 2 0 6 1221 1266 1287 -11317 2 2 0 6 1554 1556 1555 -11318 2 2 0 6 1028 1034 8904 -11319 2 2 0 6 4210 4211 4412 -11320 2 2 0 6 5069 5756 5755 -11321 2 2 0 6 5039 5176 5879 -11322 2 2 0 6 4804 4806 5907 -11323 2 2 0 6 6510 6512 6511 -11324 2 2 0 6 5846 7185 6264 -11325 2 2 0 6 2681 3560 8928 -11326 2 2 0 6 5638 5960 9656 -11327 2 2 0 6 5569 5900 9834 -11328 2 2 0 6 2608 2610 2609 -11329 2 2 0 6 2707 8832 2708 -11330 2 2 0 6 4508 4625 5039 -11331 2 2 0 6 5358 8065 7664 -11332 2 2 0 6 5060 5933 5932 -11333 2 2 0 6 3121 6292 7376 -11334 2 2 0 6 4878 6348 5382 -11335 2 2 0 6 5477 6353 5853 -11336 2 2 0 6 6532 6559 6534 -11337 2 2 0 6 6174 6578 6579 -11338 2 2 0 6 6070 6704 6054 -11339 2 2 0 6 5215 7056 7057 -11340 2 2 0 6 5099 9087 5101 -11341 2 2 0 6 2452 8811 8812 -11342 2 2 0 6 8537 8842 8536 -11343 2 2 0 6 4761 6279 9269 -11344 2 2 0 6 8067 5452 9691 -11345 2 2 0 6 654 656 655 -11346 2 2 0 6 849 850 851 -11347 2 2 0 6 1252 1255 1254 -11348 2 2 0 6 1273 1274 1275 -11349 2 2 0 6 2070 2071 2072 -11350 2 2 0 6 2551 2549 2552 -11351 2 2 0 6 1083 3382 1087 -11352 2 2 0 6 3405 3410 3404 -11353 2 2 0 6 3462 3465 3466 -11354 2 2 0 6 2346 3579 2600 -11355 2 2 0 6 3283 4073 3285 -11356 2 2 0 6 1413 4170 1415 -11357 2 2 0 6 5690 6577 5925 -11358 2 2 0 6 4063 4444 4534 -11359 2 2 0 6 4835 5338 4919 -11360 2 2 0 6 3888 5466 4700 -11361 2 2 0 6 4767 5602 5601 -11362 2 2 0 6 5001 5891 5557 -11363 2 2 0 6 5592 5730 8741 -11364 2 2 0 6 2110 9267 2119 -11365 2 2 0 6 4303 5437 9275 -11366 2 2 0 6 4075 5681 9710 -11367 2 2 0 6 6638 10597 10629 -11368 2 2 0 6 1261 1272 1273 -11369 2 2 0 6 1640 1641 1638 -11370 2 2 0 6 1688 1722 1721 -11371 2 2 0 6 1933 1969 1934 -11372 2 2 0 6 818 3559 820 -11373 2 2 0 6 3945 4168 3996 -11374 2 2 0 6 4070 4324 4071 -11375 2 2 0 6 3927 4780 4781 -11376 2 2 0 6 6467 7610 7611 -11377 2 2 0 6 1327 3369 8165 -11378 2 2 0 6 4515 10501 10476 -11379 2 2 0 6 634 636 637 -11380 2 2 0 6 1260 1272 1261 -11381 2 2 0 6 1411 1412 1410 -11382 2 2 0 6 2276 2277 2278 -11383 2 2 0 6 3399 3402 3403 -11384 2 2 0 6 3602 3604 3603 -11385 2 2 0 6 4334 4335 4336 -11386 2 2 0 6 4144 4740 4145 -11387 2 2 0 6 5079 5080 5081 -11388 2 2 0 6 6335 6424 6425 -11389 2 2 0 6 2385 2429 8468 -11390 2 2 0 6 5735 5820 8739 -11391 2 2 0 6 822 9259 1749 -11392 2 2 0 6 1218 1234 1219 -11393 2 2 0 6 1387 1385 1388 -11394 2 2 0 6 2287 2289 2296 -11395 2 2 0 6 2428 2924 2430 -11396 2 2 0 6 1722 4393 8494 -11397 2 2 0 6 2897 3178 2898 -11398 2 2 0 6 3417 3420 3419 -11399 2 2 0 6 3580 3581 3582 -11400 2 2 0 6 3994 4012 4440 -11401 2 2 0 6 4159 8693 4775 -11402 2 2 0 6 5523 8793 5623 -11403 2 2 0 6 8618 8818 8819 -11404 2 2 0 6 656 658 657 -11405 2 2 0 6 874 880 875 -11406 2 2 0 6 908 911 910 -11407 2 2 0 6 1129 1138 1147 -11408 2 2 0 6 3166 3167 3190 -11409 2 2 0 6 5898 6635 5899 -11410 2 2 0 6 5371 8112 8111 -11411 2 2 0 6 5495 8308 6584 -11412 2 2 0 6 5626 6522 8865 -11413 2 2 0 6 1103 9759 1106 -11414 2 2 0 6 2604 2950 2949 -11415 2 2 0 6 729 4417 838 -11416 2 2 0 6 4905 6269 6267 -11417 2 2 0 6 5093 5094 6695 -11418 2 2 0 6 6865 7721 7720 -11419 2 2 0 6 5329 7815 7814 -11420 2 2 0 6 6430 8009 6429 -11421 2 2 0 6 5079 8941 6028 -11422 2 2 0 6 7296 7310 9823 -11423 2 2 0 6 2001 2002 2003 -11424 2 2 0 6 2028 2032 2029 -11425 2 2 0 6 2298 2305 2300 -11426 2 2 0 6 2181 2355 2351 -11427 2 2 0 6 3094 3092 3095 -11428 2 2 0 6 3400 3401 3404 -11429 2 2 0 6 2907 3525 3526 -11430 2 2 0 6 4322 5325 4853 -11431 2 2 0 6 5418 6464 6465 -11432 2 2 0 6 6271 6342 7655 -11433 2 2 0 6 1415 4170 8710 -11434 2 2 0 6 4204 9231 5094 -11435 2 2 0 6 2947 3325 3524 -11436 2 2 0 6 1377 1380 1379 -11437 2 2 0 6 2360 2362 2361 -11438 2 2 0 6 2538 2540 2539 -11439 2 2 0 6 3407 3408 3409 -11440 2 2 0 6 3967 3970 3969 -11441 2 2 0 6 3455 4866 4867 -11442 2 2 0 6 4022 4946 4947 -11443 2 2 0 6 3892 4733 5732 -11444 2 2 0 6 4513 4610 5796 -11445 2 2 0 6 5677 6485 6221 -11446 2 2 0 6 5512 8209 8210 -11447 2 2 0 6 5737 6394 8424 -11448 2 2 0 6 1621 1623 9727 -11449 2 2 0 6 1491 1764 1796 -11450 2 2 0 6 1382 1381 1383 -11451 2 2 0 6 2172 2175 2178 -11452 2 2 0 6 2304 2513 2307 -11453 2 2 0 6 3145 3146 3144 -11454 2 2 0 6 4088 4089 4090 -11455 2 2 0 6 4317 4319 4318 -11456 2 2 0 6 4084 4086 4439 -11457 2 2 0 6 4817 5311 4950 -11458 2 2 0 6 4114 6073 6074 -11459 2 2 0 6 1517 5550 8997 -11460 2 2 0 6 7763 7765 7766 -11461 2 2 0 6 2061 2063 9054 -11462 2 2 0 6 2826 9007 2920 -11463 2 2 0 6 3945 9185 4168 -11464 2 2 0 6 1249 9180 9358 -11465 2 2 0 6 1013 1015 1014 -11466 2 2 0 6 2438 2441 2440 -11467 2 2 0 6 3421 3431 3430 -11468 2 2 0 6 3433 3435 3434 -11469 2 2 0 6 3853 3854 3855 -11470 2 2 0 6 5511 5714 6421 -11471 2 2 0 6 6560 6562 6561 -11472 2 2 0 6 7302 7304 7303 -11473 2 2 0 6 5981 7523 5983 -11474 2 2 0 6 5329 7814 7813 -11475 2 2 0 6 2570 8878 2923 -11476 2 2 0 6 7784 8916 7786 -11477 2 2 0 6 5755 9057 8864 -11478 2 2 0 6 3579 9290 8914 -11479 2 2 0 6 3844 10269 10241 -11480 2 2 0 6 5812 10377 7992 -11481 2 2 0 6 1371 1373 1372 -11482 2 2 0 6 2445 2447 2446 -11483 2 2 0 6 2606 2608 2607 -11484 2 2 0 6 1586 1590 3482 -11485 2 2 0 6 1374 3498 1376 -11486 2 2 0 6 3820 4633 4011 -11487 2 2 0 6 3827 5427 4255 -11488 2 2 0 6 5537 6249 6250 -11489 2 2 0 6 6050 7157 6406 -11490 2 2 0 6 8122 9040 8125 -11491 2 2 0 6 634 635 636 -11492 2 2 0 6 3469 4079 4080 -11493 2 2 0 6 3923 5761 5762 -11494 2 2 0 6 4201 6669 4667 -11495 2 2 0 6 6713 6715 6714 -11496 2 2 0 6 3016 8691 3888 -11497 2 2 0 6 1412 1413 1414 -11498 2 2 0 6 3415 3417 3418 -11499 2 2 0 6 4068 4069 4895 -11500 2 2 0 6 631 633 6020 -11501 2 2 0 6 5601 5602 6434 -11502 2 2 0 6 5064 6503 5065 -11503 2 2 0 6 6525 6526 6527 -11504 2 2 0 6 2514 8928 8996 -11505 2 2 0 6 2983 3003 9901 -11506 2 2 0 6 1193 1194 1195 -11507 2 2 0 6 1274 1278 1275 -11508 2 2 0 6 1804 1908 2180 -11509 2 2 0 6 2661 2835 2834 -11510 2 2 0 6 2894 3043 3042 -11511 2 2 0 6 3428 3429 3444 -11512 2 2 0 6 3441 3651 3650 -11513 2 2 0 6 6566 6567 6568 -11514 2 2 0 6 5728 7138 5727 -11515 2 2 0 6 3974 7666 4116 -11516 2 2 0 6 4914 8674 8673 -11517 2 2 0 6 6225 7033 9066 -11518 2 2 0 6 7525 9398 7630 -11519 2 2 0 6 922 924 923 -11520 2 2 0 6 2264 2266 2265 -11521 2 2 0 6 2532 2534 2533 -11522 2 2 0 6 2613 2614 2615 -11523 2 2 0 6 2975 2978 2977 -11524 2 2 0 6 3391 3393 3392 -11525 2 2 0 6 3403 3406 3407 -11526 2 2 0 6 3447 3448 3449 -11527 2 2 0 6 3261 3887 3885 -11528 2 2 0 6 2856 3991 3992 -11529 2 2 0 6 3210 9173 4042 -11530 2 2 0 6 4268 6205 6204 -11531 2 2 0 6 7351 7591 7590 -11532 2 2 0 6 6358 7748 6360 -11533 2 2 0 6 3008 3255 7752 -11534 2 2 0 6 3225 3846 8680 -11535 2 2 0 6 2861 3357 8759 -11536 2 2 0 6 3754 9170 8481 -11537 2 2 0 6 675 677 676 -11538 2 2 0 6 1019 1030 1029 -11539 2 2 0 6 2244 3052 3053 -11540 2 2 0 6 3188 3311 3294 -11541 2 2 0 6 2439 2656 3570 -11542 2 2 0 6 4802 5612 4165 -11543 2 2 0 6 4897 6334 6336 -11544 2 2 0 6 4947 6477 6478 -11545 2 2 0 6 6198 7078 7168 -11546 2 2 0 6 5075 7250 7251 -11547 2 2 0 6 2439 3570 8433 -11548 2 2 0 6 5826 10150 9976 -11549 2 2 0 6 656 659 658 -11550 2 2 0 6 1278 9492 1354 -11551 2 2 0 6 3140 3141 3142 -11552 2 2 0 6 3701 3702 3703 -11553 2 2 0 6 4447 4728 4729 -11554 2 2 0 6 2994 7996 3824 -11555 2 2 0 6 5955 8637 8638 -11556 2 2 0 6 3756 9124 6474 -11557 2 2 0 6 6310 9879 6311 -11558 2 2 0 6 700 704 2152 -11559 2 2 0 6 3152 3340 3153 -11560 2 2 0 6 3579 3581 3580 -11561 2 2 0 6 3314 4016 4017 -11562 2 2 0 6 3804 4658 5379 -11563 2 2 0 6 6551 7079 7178 -11564 2 2 0 6 3579 8914 3581 -11565 2 2 0 6 1711 3720 8930 -11566 2 2 0 6 586 587 588 -11567 2 2 0 6 646 649 648 -11568 2 2 0 6 2348 2387 2350 -11569 2 2 0 6 2540 2542 2541 -11570 2 2 0 6 2670 2770 2671 -11571 2 2 0 6 2845 3150 3064 -11572 2 2 0 6 6398 7333 7334 -11573 2 2 0 6 5385 5386 7359 -11574 2 2 0 6 5434 8044 5436 -11575 2 2 0 6 3677 4181 8698 -11576 2 2 0 6 4803 8943 8740 -11577 2 2 0 6 1850 9773 2340 -11578 2 2 0 6 778 779 782 -11579 2 2 0 6 1888 2873 1890 -11580 2 2 0 6 2677 2893 2678 -11581 2 2 0 6 3543 3545 3544 -11582 2 2 0 6 3607 3609 3608 -11583 2 2 0 6 3590 4322 3981 -11584 2 2 0 6 4548 5531 5530 -11585 2 2 0 6 4175 4968 5720 -11586 2 2 0 6 6372 7235 7234 -11587 2 2 0 6 4905 8523 6269 -11588 2 2 0 6 5511 7904 5708 -11589 2 2 0 6 4870 8362 8361 -11590 2 2 0 6 3030 9154 3029 -11591 2 2 0 6 636 638 637 -11592 2 2 0 6 646 648 647 -11593 2 2 0 6 747 1281 749 -11594 2 2 0 6 1409 1411 1410 -11595 2 2 0 6 1995 1996 1997 -11596 2 2 0 6 3465 3468 3466 -11597 2 2 0 6 3202 3203 3670 -11598 2 2 0 6 3865 3867 4641 -11599 2 2 0 6 7619 10017 10192 -11600 2 2 0 6 626 628 627 -11601 2 2 0 6 649 650 648 -11602 2 2 0 6 666 668 667 -11603 2 2 0 6 784 785 789 -11604 2 2 0 6 1120 1122 1121 -11605 2 2 0 6 1226 1242 1241 -11606 2 2 0 6 1409 1498 1411 -11607 2 2 0 6 4145 4740 4741 -11608 2 2 0 6 4830 5334 5333 -11609 2 2 0 6 5956 5958 5957 -11610 2 2 0 6 2441 9355 8730 -11611 2 2 0 6 6528 7616 6530 -11612 2 2 0 6 1373 8850 3623 -11613 2 2 0 6 3904 8873 3905 -11614 2 2 0 6 1647 1649 9406 -11615 2 2 0 6 1978 2342 1979 -11616 2 2 0 6 2388 2431 2432 -11617 2 2 0 6 4412 4413 4414 -11618 2 2 0 6 4118 5100 5099 -11619 2 2 0 6 4979 5729 5592 -11620 2 2 0 6 5106 6060 5107 -11621 2 2 0 6 3269 6180 4448 -11622 2 2 0 6 4778 6241 5286 -11623 2 2 0 6 6364 6366 6367 -11624 2 2 0 6 6458 6459 6460 -11625 2 2 0 6 696 700 8912 -11626 2 2 0 6 4571 8337 8338 -11627 2 2 0 6 1215 8851 6038 -11628 2 2 0 6 6384 10943 10910 -11629 2 2 0 6 950 952 951 -11630 2 2 0 6 1392 1391 1393 -11631 2 2 0 6 2037 2038 2035 -11632 2 2 0 6 2155 2156 2157 -11633 2 2 0 6 2387 2431 2388 -11634 2 2 0 6 2747 2748 2580 -11635 2 2 0 6 5510 5714 5511 -11636 2 2 0 6 1294 5874 1293 -11637 2 2 0 6 6031 6033 6032 -11638 2 2 0 6 6179 6387 6495 -11639 2 2 0 6 5044 5877 6621 -11640 2 2 0 6 4014 8985 9871 -11641 2 2 0 6 6490 10232 6491 -11642 2 2 0 6 6028 8941 8942 -11643 2 2 0 6 3510 8968 9331 -11644 2 2 0 6 2170 2172 9990 -11645 2 2 0 6 1602 1601 1603 -11646 2 2 0 6 1980 1981 2352 -11647 2 2 0 6 3144 3146 3147 -11648 2 2 0 6 3413 3414 3415 -11649 2 2 0 6 1116 3493 1118 -11650 2 2 0 6 3705 3706 3707 -11651 2 2 0 6 2442 2450 4442 -11652 2 2 0 6 3525 5616 3527 -11653 2 2 0 6 4941 5371 8110 -11654 2 2 0 6 5907 8451 8450 -11655 2 2 0 6 855 856 857 -11656 2 2 0 6 1500 1501 2215 -11657 2 2 0 6 2268 2271 2270 -11658 2 2 0 6 655 657 3500 -11659 2 2 0 6 3570 3571 3572 -11660 2 2 0 6 3585 3586 3587 -11661 2 2 0 6 3147 3307 3921 -11662 2 2 0 6 1891 1893 9389 -11663 2 2 0 6 4451 5621 5736 -11664 2 2 0 6 6219 6440 6439 -11665 2 2 0 6 5326 8753 7351 -11666 2 2 0 6 4791 5411 7612 -11667 2 2 0 6 5715 8778 8779 -11668 2 2 0 6 1265 8795 1285 -11669 2 2 0 6 2135 2239 8597 -11670 2 2 0 6 1799 1886 1885 -11671 2 2 0 6 1423 1425 2399 -11672 2 2 0 6 2433 2435 2434 -11673 2 2 0 6 3429 3445 3444 -11674 2 2 0 6 2913 3218 4075 -11675 2 2 0 6 6257 6875 6877 -11676 2 2 0 6 5317 7496 6422 -11677 2 2 0 6 1722 8494 1799 -11678 2 2 0 6 4891 8735 8736 -11679 2 2 0 6 375 8875 473 -11680 2 2 0 6 3223 8631 8983 -11681 2 2 0 6 1517 8997 2228 -11682 2 2 0 6 4094 9146 8711 -11683 2 2 0 6 2785 9190 9784 -11684 2 2 0 6 2051 2052 2050 -11685 2 2 0 6 2118 2119 2120 -11686 2 2 0 6 2443 2445 2444 -11687 2 2 0 6 2599 2879 2666 -11688 2 2 0 6 4084 4085 4086 -11689 2 2 0 6 4832 4834 5498 -11690 2 2 0 6 6120 6321 6843 -11691 2 2 0 6 7081 7631 7080 -11692 2 2 0 6 6389 6437 7938 -11693 2 2 0 6 1529 3479 8787 -11694 2 2 0 6 2812 9079 3302 -11695 2 2 0 6 1634 1635 1636 -11696 2 2 0 6 2686 2896 3162 -11697 2 2 0 6 3740 4200 4109 -11698 2 2 0 6 5844 7187 7171 -11699 2 2 0 6 1590 1592 8552 -11700 2 2 0 6 711 715 1155 -11701 2 2 0 6 2597 2953 2871 -11702 2 2 0 6 2109 2111 4596 -11703 2 2 0 6 2438 9355 2441 -11704 2 2 0 6 6679 6680 6681 -11705 2 2 0 6 8122 8125 8124 -11706 2 2 0 6 1257 1315 8522 -11707 2 2 0 6 686 690 8646 -11708 2 2 0 6 4914 8673 8672 -11709 2 2 0 6 3407 3412 8955 -11710 2 2 0 6 5616 9036 6383 -11711 2 2 0 6 679 681 680 -11712 2 2 0 6 889 3478 1044 -11713 2 2 0 6 1418 1419 1420 -11714 2 2 0 6 2126 2132 2127 -11715 2 2 0 6 2793 2795 2796 -11716 2 2 0 6 3290 3291 3292 -11717 2 2 0 6 1392 3391 3392 -11718 2 2 0 6 2282 4173 6416 -11719 2 2 0 6 2321 2479 8387 -11720 2 2 0 6 749 9170 751 -11721 2 2 0 6 1124 1125 1123 -11722 2 2 0 6 2070 2072 2073 -11723 2 2 0 6 2304 2307 2306 -11724 2 2 0 6 2194 2469 2320 -11725 2 2 0 6 2853 2855 3191 -11726 2 2 0 6 4835 4919 4918 -11727 2 2 0 6 4898 6335 6334 -11728 2 2 0 6 5970 6428 6429 -11729 2 2 0 6 2905 2907 9091 -11730 2 2 0 6 3894 9014 4583 -11731 2 2 0 6 1980 8672 9176 -11732 2 2 0 6 610 612 611 -11733 2 2 0 6 1389 1391 1390 -11734 2 2 0 6 1419 1504 1420 -11735 2 2 0 6 1528 1530 1535 -11736 2 2 0 6 1796 1797 1880 -11737 2 2 0 6 3425 3427 3428 -11738 2 2 0 6 850 3567 852 -11739 2 2 0 6 3997 5573 5574 -11740 2 2 0 6 7288 7290 7289 -11741 2 2 0 6 2992 7910 7909 -11742 2 2 0 6 3445 9519 3984 -11743 2 2 0 6 580 581 582 -11744 2 2 0 6 938 940 939 -11745 2 2 0 6 1176 1194 1193 -11746 2 2 0 6 2076 2079 2080 -11747 2 2 0 6 3140 3142 3143 -11748 2 2 0 6 2437 3655 4427 -11749 2 2 0 6 4204 5094 5093 -11750 2 2 0 6 6502 7122 7121 -11751 2 2 0 6 6272 5325 7448 -11752 2 2 0 6 1315 3373 8522 -11753 2 2 0 6 5082 8808 6228 -11754 2 2 0 6 2245 9015 8531 -11755 2 2 0 6 632 634 633 -11756 2 2 0 6 676 678 1209 -11757 2 2 0 6 1626 1628 1629 -11758 2 2 0 6 3973 4854 3995 -11759 2 2 0 6 3992 4415 4880 -11760 2 2 0 6 1028 4960 1023 -11761 2 2 0 6 4402 8239 9549 -11762 2 2 0 6 5902 6432 6431 -11763 2 2 0 6 2653 9821 2864 -11764 2 2 0 6 1636 1637 1638 -11765 2 2 0 6 2149 2397 2339 -11766 2 2 0 6 2501 2860 2859 -11767 2 2 0 6 3146 3300 3147 -11768 2 2 0 6 4073 5424 5423 -11769 2 2 0 6 5014 5016 5918 -11770 2 2 0 6 2820 3481 8663 -11771 2 2 0 6 4206 8780 4208 -11772 2 2 0 6 4028 9078 7891 -11773 2 2 0 6 3030 3036 9154 -11774 2 2 0 6 670 672 671 -11775 2 2 0 6 1127 1128 1129 -11776 2 2 0 6 1289 1325 1307 -11777 2 2 0 6 1804 1828 1908 -11778 2 2 0 6 4419 4420 4464 -11779 2 2 0 6 4473 4474 4475 -11780 2 2 0 6 5086 5290 5253 -11781 2 2 0 6 5090 5089 6098 -11782 2 2 0 6 5214 6376 5213 -11783 2 2 0 6 2647 8289 3035 -11784 2 2 0 6 3987 5448 8463 -11785 2 2 0 6 4286 9101 5609 -11786 2 2 0 6 7037 9177 8690 -11787 2 2 0 6 8367 9448 6418 -11788 2 2 0 6 1505 1787 1804 -11789 2 2 0 6 2197 3665 2327 -11790 2 2 0 6 3405 3422 3411 -11791 2 2 0 6 3013 3635 3884 -11792 2 2 0 6 2923 4015 3314 -11793 2 2 0 6 3208 3209 4215 -11794 2 2 0 6 4937 4940 4938 -11795 2 2 0 6 5080 5082 5081 -11796 2 2 0 6 4894 5317 6422 -11797 2 2 0 6 5538 9100 9580 -11798 2 2 0 6 6503 7141 6504 -11799 2 2 0 6 5333 7230 7337 -11800 2 2 0 6 2450 2452 8812 -11801 2 2 0 6 4387 4820 8853 -11802 2 2 0 6 1504 1787 1505 -11803 2 2 0 6 2072 2075 2074 -11804 2 2 0 6 2435 2437 2436 -11805 2 2 0 6 4931 4933 4932 -11806 2 2 0 6 4278 5240 5239 -11807 2 2 0 6 5438 5451 5452 -11808 2 2 0 6 3374 5480 3809 -11809 2 2 0 6 5574 5577 5576 -11810 2 2 0 6 4401 8658 9753 -11811 2 2 0 6 5978 7370 7276 -11812 2 2 0 6 6321 7487 6843 -11813 2 2 0 6 2004 4454 9305 -11814 2 2 0 6 650 653 652 -11815 2 2 0 6 8703 8705 8708 -11816 2 2 0 6 6680 9603 6682 -11817 2 2 0 6 1889 1977 9722 -11818 2 2 0 6 751 753 752 -11819 2 2 0 6 1409 1410 1407 -11820 2 2 0 6 1414 1415 1416 -11821 2 2 0 6 3560 3735 3747 -11822 2 2 0 6 3922 3498 4721 -11823 2 2 0 6 4929 4931 4930 -11824 2 2 0 6 1123 8929 3509 -11825 2 2 0 6 1495 5550 1517 -11826 2 2 0 6 4781 5867 4783 -11827 2 2 0 6 5890 5898 5897 -11828 2 2 0 6 4629 5332 6295 -11829 2 2 0 6 5065 6503 6504 -11830 2 2 0 6 5114 6710 6711 -11831 2 2 0 6 7210 7209 7340 -11832 2 2 0 6 2280 8367 4173 -11833 2 2 0 6 3732 3900 8524 -11834 2 2 0 6 4385 8853 4760 -11835 2 2 0 6 1349 1351 1350 -11836 2 2 0 6 1405 1407 1406 -11837 2 2 0 6 2442 2449 2450 -11838 2 2 0 6 2176 9192 7686 -11839 2 2 0 6 2345 2346 2599 -11840 2 2 0 6 1527 3479 1529 -11841 2 2 0 6 3584 3589 3586 -11842 2 2 0 6 2906 3211 4003 -11843 2 2 0 6 4069 4897 4895 -11844 2 2 0 6 3670 4538 4539 -11845 2 2 0 6 4292 5297 4885 -11846 2 2 0 6 1803 2448 5501 -11847 2 2 0 6 5520 5519 5971 -11848 2 2 0 6 5586 6397 6399 -11849 2 2 0 6 5222 9403 9667 -11850 2 2 0 6 5022 7082 4749 -11851 2 2 0 6 4848 6294 9188 -11852 2 2 0 6 737 738 767 -11853 2 2 0 6 2352 2353 2604 -11854 2 2 0 6 3291 8790 3727 -11855 2 2 0 6 1392 1393 3391 -11856 2 2 0 6 3729 3731 3730 -11857 2 2 0 6 3753 4204 4586 -11858 2 2 0 6 4887 5553 5554 -11859 2 2 0 6 7953 7954 7955 -11860 2 2 0 6 7956 7958 7957 -11861 2 2 0 6 715 8640 1155 -11862 2 2 0 6 2893 3721 9047 -11863 2 2 0 6 1419 9022 1504 -11864 2 2 0 6 1821 1835 1834 -11865 2 2 0 6 659 3748 661 -11866 2 2 0 6 4015 4446 4016 -11867 2 2 0 6 4586 5508 5507 -11868 2 2 0 6 6500 6502 6501 -11869 2 2 0 6 5818 7280 7281 -11870 2 2 0 6 4352 7928 4354 -11871 2 2 0 6 3582 3691 8980 -11872 2 2 0 6 6863 6862 8626 -11873 2 2 0 6 2853 3191 8954 -11874 2 2 0 6 1888 1890 1889 -11875 2 2 0 6 1896 1982 1983 -11876 2 2 0 6 2068 2067 2081 -11877 2 2 0 6 3292 3727 3728 -11878 2 2 0 6 3734 3902 3901 -11879 2 2 0 6 3696 3737 4063 -11880 2 2 0 6 3987 4551 5448 -11881 2 2 0 6 3994 4440 4441 -11882 2 2 0 6 4217 4924 4925 -11883 2 2 0 6 4012 4952 4440 -11884 2 2 0 6 5434 5436 5435 -11885 2 2 0 6 3922 4767 5601 -11886 2 2 0 6 5532 5929 5930 -11887 2 2 0 6 4173 6418 6417 -11888 2 2 0 6 5788 6326 6475 -11889 2 2 0 6 5860 7330 6409 -11890 2 2 0 6 4898 9110 6424 -11891 2 2 0 6 606 608 607 -11892 2 2 0 6 1217 1226 1225 -11893 2 2 0 6 1866 1868 2502 -11894 2 2 0 6 2455 2929 2568 -11895 2 2 0 6 4092 4886 4887 -11896 2 2 0 6 5042 5694 6006 -11897 2 2 0 6 7032 7050 7034 -11898 2 2 0 6 6682 7586 6683 -11899 2 2 0 6 7784 9321 8916 -11900 2 2 0 6 1532 9204 9205 -11901 2 2 0 6 1664 1666 1670 -11902 2 2 0 6 1577 1726 1727 -11903 2 2 0 6 1886 1888 1887 -11904 2 2 0 6 2353 9027 2606 -11905 2 2 0 6 4651 8645 5454 -11906 2 2 0 6 791 797 3484 -11907 2 2 0 6 3327 3594 3328 -11908 2 2 0 6 2933 3196 3751 -11909 2 2 0 6 3679 3680 4178 -11910 2 2 0 6 5248 5336 5337 -11911 2 2 0 6 1105 1107 8175 -11912 2 2 0 6 8345 8347 8348 -11913 2 2 0 6 6423 9215 8680 -11914 2 2 0 6 711 712 715 -11915 2 2 0 6 1405 1408 1407 -11916 2 2 0 6 4450 3758 4456 -11917 2 2 0 6 2072 2074 2073 -11918 2 2 0 6 2307 2346 2345 -11919 2 2 0 6 2040 2042 2928 -11920 2 2 0 6 4186 5027 4997 -11921 2 2 0 6 5891 5954 5892 -11922 2 2 0 6 5691 6468 5722 -11923 2 2 0 6 5123 5130 6841 -11924 2 2 0 6 4780 8134 4781 -11925 2 2 0 6 2505 2856 8995 -11926 2 2 0 6 1328 1362 1361 -11927 2 2 0 6 1662 1663 1659 -11928 2 2 0 6 1700 1701 1702 -11929 2 2 0 6 4968 5757 5720 -11930 2 2 0 6 5849 6333 7491 -11931 2 2 0 6 5553 5555 7535 -11932 2 2 0 6 4186 8743 5620 -11933 2 2 0 6 5303 6199 9287 -11934 2 2 0 6 640 642 643 -11935 2 2 0 6 1416 1415 1417 -11936 2 2 0 6 2181 2356 2355 -11937 2 2 0 6 2187 2367 2368 -11938 2 2 0 6 2678 2893 2894 -11939 2 2 0 6 2984 3004 3003 -11940 2 2 0 6 3198 3199 3200 -11941 2 2 0 6 3147 3300 3307 -11942 2 2 0 6 3566 6407 4912 -11943 2 2 0 6 5587 7333 6398 -11944 2 2 0 6 5420 7490 5451 -11945 2 2 0 6 7863 7865 7866 -11946 2 2 0 6 3585 3587 9414 -11947 2 2 0 6 2279 8891 2291 -11948 2 2 0 6 6250 9709 7954 -11949 2 2 0 6 4401 9753 9541 -11950 2 2 0 6 867 869 868 -11951 2 2 0 6 935 934 936 -11952 2 2 0 6 1040 1041 1042 -11953 2 2 0 6 1880 1881 1976 -11954 2 2 0 6 2542 2544 2543 -11955 2 2 0 6 3287 3297 3618 -11956 2 2 0 6 1376 3498 3922 -11957 2 2 0 6 7815 7832 7831 -11958 2 2 0 6 4276 8337 4571 -11959 2 2 0 6 6387 8389 8135 -11960 2 2 0 6 5602 8459 7112 -11961 2 2 0 6 8702 8806 8706 -11962 2 2 0 6 3663 8296 9436 -11963 2 2 0 6 656 9230 659 -11964 2 2 0 6 3878 4606 9553 -11965 2 2 0 6 638 639 640 -11966 2 2 0 6 1030 1037 1036 -11967 2 2 0 6 1125 1126 1127 -11968 2 2 0 6 1363 1366 1365 -11969 2 2 0 6 1550 1552 1551 -11970 2 2 0 6 1594 1597 1598 -11971 2 2 0 6 5099 6054 9087 -11972 2 2 0 6 2081 2123 2082 -11973 2 2 0 6 1924 2186 2187 -11974 2 2 0 6 3501 3503 3502 -11975 2 2 0 6 3541 3543 3542 -11976 2 2 0 6 2600 3579 3580 -11977 2 2 0 6 3732 3731 3733 -11978 2 2 0 6 3416 3746 4564 -11979 2 2 0 6 5350 5352 5351 -11980 2 2 0 6 4722 6327 6328 -11981 2 2 0 6 3448 4402 9549 -11982 2 2 0 6 4173 6417 6416 -11983 2 2 0 6 4999 6644 6643 -11984 2 2 0 6 5412 7062 5413 -11985 2 2 0 6 5602 7112 6435 -11986 2 2 0 6 4857 6233 9284 -11987 2 2 0 6 5036 8004 6043 -11988 2 2 0 6 3754 8481 8480 -11989 2 2 0 6 1504 8815 1787 -11990 2 2 0 6 4348 9075 8316 -11991 2 2 0 6 2212 9473 9196 -11992 2 2 0 6 686 689 690 -11993 2 2 0 6 981 975 982 -11994 2 2 0 6 1383 1385 1386 -11995 2 2 0 6 3280 3283 3282 -11996 2 2 0 6 3454 4866 3455 -11997 2 2 0 6 4709 5210 5212 -11998 2 2 0 6 5612 6261 6262 -11999 2 2 0 6 5694 7462 6006 -12000 2 2 0 6 5667 7595 7596 -12001 2 2 0 6 1401 1403 1402 -12002 2 2 0 6 1411 1413 1412 -12003 2 2 0 6 3502 3504 3515 -12004 2 2 0 6 4715 5204 5203 -12005 2 2 0 6 5518 5519 5520 -12006 2 2 0 6 4912 6407 6408 -12007 2 2 0 6 4890 6627 5894 -12008 2 2 0 6 5628 7353 6331 -12009 2 2 0 6 7564 7566 7569 -12010 2 2 0 6 3022 8306 3023 -12011 2 2 0 6 976 3995 8830 -12012 2 2 0 6 2945 2947 8967 -12013 2 2 0 6 3221 9398 8603 -12014 2 2 0 6 716 720 719 -12015 2 2 0 6 1399 1400 1401 -12016 2 2 0 6 1643 1645 1644 -12017 2 2 0 6 1787 1829 1828 -12018 2 2 0 6 1798 1799 1884 -12019 2 2 0 6 2397 2565 2564 -12020 2 2 0 6 3586 3589 8784 -12021 2 2 0 6 4494 5091 5092 -12022 2 2 0 6 4264 5127 5128 -12023 2 2 0 6 2922 3313 5509 -12024 2 2 0 6 7306 7308 7307 -12025 2 2 0 6 6511 7989 8228 -12026 2 2 0 6 1916 8236 1929 -12027 2 2 0 6 4811 5323 8872 -12028 2 2 0 6 647 8960 8424 -12029 2 2 0 6 2906 4003 9024 -12030 2 2 0 6 965 974 9203 -12031 2 2 0 6 6526 9698 6869 -12032 2 2 0 6 1688 1721 1687 -12033 2 2 0 6 2079 2111 2109 -12034 2 2 0 6 2350 2387 2388 -12035 2 2 0 6 2647 2648 2649 -12036 2 2 0 6 3583 3584 3585 -12037 2 2 0 6 5275 5294 5293 -12038 2 2 0 6 5544 5546 5545 -12039 2 2 0 6 621 10381 10298 -12040 2 2 0 6 4414 5107 8372 -12041 2 2 0 6 5382 7660 5384 -12042 2 2 0 6 3548 8820 3549 -12043 2 2 0 6 872 8893 4138 -12044 2 2 0 6 753 755 754 -12045 2 2 0 6 1718 1723 1724 -12046 2 2 0 6 2019 2020 2018 -12047 2 2 0 6 2271 3521 2273 -12048 2 2 0 6 313 314 9401 -12049 2 2 0 6 4803 8740 8384 -12050 2 2 0 6 4772 4841 5288 -12051 2 2 0 6 7297 7298 7299 -12052 2 2 0 6 7397 7399 7398 -12053 2 2 0 6 5741 7504 6448 -12054 2 2 0 6 365 366 8237 -12055 2 2 0 6 5584 8718 5739 -12056 2 2 0 6 2951 3160 9216 -12057 2 2 0 6 886 889 1044 -12058 2 2 0 6 1387 1388 1389 -12059 2 2 0 6 1609 1608 1610 -12060 2 2 0 6 2121 2124 2122 -12061 2 2 0 6 3582 3584 3583 -12062 2 2 0 6 2462 2719 3664 -12063 2 2 0 6 4471 4472 4473 -12064 2 2 0 6 653 6413 654 -12065 2 2 0 6 2171 8921 2174 -12066 2 2 0 6 1121 1122 1123 -12067 2 2 0 6 1258 1316 1314 -12068 2 2 0 6 1642 1643 1641 -12069 2 2 0 6 3017 3019 3020 -12070 2 2 0 6 1388 3912 3530 -12071 2 2 0 6 4080 4079 4081 -12072 2 2 0 6 4088 4090 4094 -12073 2 2 0 6 4664 6286 6143 -12074 2 2 0 6 4008 4562 4561 -12075 2 2 0 6 4045 4882 4167 -12076 2 2 0 6 3196 4103 8314 -12077 2 2 0 6 1631 9086 3539 -12078 2 2 0 6 3938 8395 3941 -12079 2 2 0 6 2483 8409 8045 -12080 2 2 0 6 3197 3198 9119 -12081 2 2 0 6 3929 4369 9579 -12082 2 2 0 6 1420 1504 1505 -12083 2 2 0 6 2860 2942 2943 -12084 2 2 0 6 3902 3904 3903 -12085 2 2 0 6 3360 4290 4294 -12086 2 2 0 6 5334 5590 5591 -12087 2 2 0 6 2264 5594 2266 -12088 2 2 0 6 5549 5689 6380 -12089 2 2 0 6 3584 8980 3589 -12090 2 2 0 6 8947 8952 9635 -12091 2 2 0 6 7041 7043 8862 -12092 2 2 0 6 1387 9077 1386 -12093 2 2 0 6 1628 3363 9155 -12094 2 2 0 6 4914 9216 8674 -12095 2 2 0 6 664 665 666 -12096 2 2 0 6 755 757 756 -12097 2 2 0 6 1120 1224 1122 -12098 2 2 0 6 1244 1246 1247 -12099 2 2 0 6 1902 1923 1924 -12100 2 2 0 6 2094 2098 2096 -12101 2 2 0 6 2080 2110 2117 -12102 2 2 0 6 2450 2451 2452 -12103 2 2 0 6 2196 2325 2495 -12104 2 2 0 6 4205 8580 5066 -12105 2 2 0 6 3397 3401 3400 -12106 2 2 0 6 3642 4193 4192 -12107 2 2 0 6 3159 4205 3160 -12108 2 2 0 6 4896 5955 5956 -12109 2 2 0 6 6267 7242 6268 -12110 2 2 0 6 1091 8754 1795 -12111 2 2 0 6 3024 3025 9375 -12112 2 2 0 6 4261 5167 9835 -12113 2 2 0 6 5388 9890 7422 -12114 2 2 0 6 1194 1218 1195 -12115 2 2 0 6 1395 1394 1396 -12116 2 2 0 6 1531 1533 1532 -12117 2 2 0 6 2062 2065 2063 -12118 2 2 0 6 1883 2159 2151 -12119 2 2 0 6 2353 2606 2605 -12120 2 2 0 6 3200 3201 3202 -12121 2 2 0 6 3903 3904 3905 -12122 2 2 0 6 2825 3988 2827 -12123 2 2 0 6 3761 4216 4597 -12124 2 2 0 6 6575 10564 10533 -12125 2 2 0 6 5851 6590 6591 -12126 2 2 0 6 1036 1037 7743 -12127 2 2 0 6 854 858 856 -12128 2 2 0 6 1885 1886 1887 -12129 2 2 0 6 2753 2755 2754 -12130 2 2 0 6 4278 5239 4279 -12131 2 2 0 6 5554 7661 5702 -12132 2 2 0 6 6460 8113 6463 -12133 2 2 0 6 4345 8105 8107 -12134 2 2 0 6 1389 3530 8728 -12135 2 2 0 6 3605 3604 3755 -12136 2 2 0 6 3267 3835 4132 -12137 2 2 0 6 3961 4819 4873 -12138 2 2 0 6 2598 4023 9278 -12139 2 2 0 6 2982 9782 3815 -12140 2 2 0 6 1109 1111 1521 -12141 2 2 0 6 1989 3658 1991 -12142 2 2 0 6 2512 3532 4066 -12143 2 2 0 6 4090 4091 4092 -12144 2 2 0 6 1829 4409 1981 -12145 2 2 0 6 3895 4584 4585 -12146 2 2 0 6 4454 5754 6479 -12147 2 2 0 6 1087 8754 1091 -12148 2 2 0 6 2288 9131 8905 -12149 2 2 0 6 1828 9176 1908 -12150 2 2 0 6 659 9230 3748 -12151 2 2 0 6 1442 10077 1788 -12152 2 2 0 6 652 654 655 -12153 2 2 0 6 819 821 823 -12154 2 2 0 6 2843 3103 3102 -12155 2 2 0 6 2591 2593 4060 -12156 2 2 0 6 4938 4941 4953 -12157 2 2 0 6 5577 6615 5961 -12158 2 2 0 6 6286 7432 6879 -12159 2 2 0 6 3744 6008 8671 -12160 2 2 0 6 1144 3343 9143 -12161 2 2 0 6 5526 8850 9163 -12162 2 2 0 6 820 9259 822 -12163 2 2 0 6 843 845 1524 -12164 2 2 0 6 4081 4083 4082 -12165 2 2 0 6 5448 5449 5450 -12166 2 2 0 6 4297 5197 5487 -12167 2 2 0 6 5557 5891 5892 -12168 2 2 0 6 5531 5929 5532 -12169 2 2 0 6 4761 5267 6278 -12170 2 2 0 6 3527 5616 6383 -12171 2 2 0 6 7290 7291 7292 -12172 2 2 0 6 2864 9821 3335 -12173 2 2 0 6 660 661 662 -12174 2 2 0 6 3517 3518 3519 -12175 2 2 0 6 3168 3686 3169 -12176 2 2 0 6 3190 4061 4054 -12177 2 2 0 6 4080 4082 4916 -12178 2 2 0 6 2942 4920 2944 -12179 2 2 0 6 3477 8810 9066 -12180 2 2 0 6 3196 8314 3751 -12181 2 2 0 6 4181 8699 8698 -12182 2 2 0 6 1287 8920 8919 -12183 2 2 0 6 962 964 963 -12184 2 2 0 6 2068 2081 2082 -12185 2 2 0 6 2680 3344 3345 -12186 2 2 0 6 2847 3155 3356 -12187 2 2 0 6 1646 1647 3511 -12188 2 2 0 6 3291 3727 3292 -12189 2 2 0 6 3503 3762 3761 -12190 2 2 0 6 3330 4702 3331 -12191 2 2 0 6 5290 5291 5292 -12192 2 2 0 6 4897 4898 6334 -12193 2 2 0 6 6364 6365 6366 -12194 2 2 0 6 6225 7032 7033 -12195 2 2 0 6 8472 8476 8474 -12196 2 2 0 6 8353 8355 8696 -12197 2 2 0 6 5626 8865 9406 -12198 2 2 0 6 8072 8073 10388 -12199 2 2 0 6 1034 1100 1102 -12200 2 2 0 6 1395 1396 1397 -12201 2 2 0 6 1618 1619 1620 -12202 2 2 0 6 2268 2270 2269 -12203 2 2 0 6 4086 4087 4088 -12204 2 2 0 6 4375 4377 4768 -12205 2 2 0 6 5406 5817 5818 -12206 2 2 0 6 6074 6075 6572 -12207 2 2 0 6 5609 6612 5610 -12208 2 2 0 6 6281 8223 7232 -12209 2 2 0 6 5519 6659 5971 -12210 2 2 0 6 3097 3804 8062 -12211 2 2 0 6 851 852 853 -12212 2 2 0 6 1463 1466 1465 -12213 2 2 0 6 1630 1632 1631 -12214 2 2 0 6 2868 2869 2870 -12215 2 2 0 6 2943 2945 3114 -12216 2 2 0 6 872 4138 874 -12217 2 2 0 6 777 3630 8975 -12218 2 2 0 6 6014 6015 6016 -12219 2 2 0 6 6650 7653 7652 -12220 2 2 0 6 5641 5746 8756 -12221 2 2 0 6 2181 8876 2356 -12222 2 2 0 6 1474 10052 10258 -12223 2 2 0 6 877 883 882 -12224 2 2 0 6 4022 9034 4174 -12225 2 2 0 6 2221 2223 2224 -12226 2 2 0 6 3660 3997 3661 -12227 2 2 0 6 4615 5171 4616 -12228 2 2 0 6 2649 9490 8289 -12229 2 2 0 6 5099 5100 6054 -12230 2 2 0 6 5096 5097 6072 -12231 2 2 0 6 5449 6649 5450 -12232 2 2 0 6 5288 7215 7172 -12233 2 2 0 6 837 839 8462 -12234 2 2 0 6 678 9912 1209 -12235 2 2 0 6 3868 8943 3870 -12236 2 2 0 6 2500 2859 9672 -12237 2 2 0 6 1365 1366 1367 -12238 2 2 0 6 1413 1415 1414 -12239 2 2 0 6 1527 1529 1528 -12240 2 2 0 6 1889 1890 1891 -12241 2 2 0 6 1937 9043 3564 -12242 2 2 0 6 3598 4014 3600 -12243 2 2 0 6 3515 3517 5536 -12244 2 2 0 6 4875 5686 5687 -12245 2 2 0 6 4557 5947 5948 -12246 2 2 0 6 4730 6192 6193 -12247 2 2 0 6 5798 10106 8098 -12248 2 2 0 6 6265 7101 6266 -12249 2 2 0 6 6579 7211 6580 -12250 2 2 0 6 7115 7345 7116 -12251 2 2 0 6 3623 8850 5526 -12252 2 2 0 6 2894 9047 3043 -12253 2 2 0 6 3442 9603 9186 -12254 2 2 0 6 707 708 711 -12255 2 2 0 6 1417 1419 1418 -12256 2 2 0 6 1632 1634 1633 -12257 2 2 0 6 2260 2262 2261 -12258 2 2 0 6 2748 2749 2750 -12259 2 2 0 6 3525 3527 3526 -12260 2 2 0 6 4017 4018 4752 -12261 2 2 0 6 4271 5221 5222 -12262 2 2 0 6 5490 6056 6057 -12263 2 2 0 6 5268 6191 6190 -12264 2 2 0 6 5933 8238 6111 -12265 2 2 0 6 6553 6554 8060 -12266 2 2 0 6 7312 7323 8155 -12267 2 2 0 6 843 844 845 -12268 2 2 0 6 971 978 977 -12269 2 2 0 6 2346 2600 2599 -12270 2 2 0 6 2755 2758 2757 -12271 2 2 0 6 3770 3772 3771 -12272 2 2 0 6 4724 5619 5219 -12273 2 2 0 6 5650 5649 5651 -12274 2 2 0 6 5695 5697 5696 -12275 2 2 0 6 2617 9836 2911 -12276 2 2 0 6 1098 1140 1139 -12277 2 2 0 6 1138 1156 1147 -12278 2 2 0 6 2449 2451 2450 -12279 2 2 0 6 629 3736 630 -12280 2 2 0 6 3571 3899 3897 -12281 2 2 0 6 4095 5030 4549 -12282 2 2 0 6 5468 6178 5467 -12283 2 2 0 6 5985 7759 5987 -12284 2 2 0 6 4731 8282 6194 -12285 2 2 0 6 5498 8198 8477 -12286 2 2 0 6 1312 1491 9008 -12287 2 2 0 6 1051 1053 1052 -12288 2 2 0 6 1192 1217 1216 -12289 2 2 0 6 2866 2867 2868 -12290 2 2 0 6 3633 4201 4129 -12291 2 2 0 6 824 830 3708 -12292 2 2 0 6 3311 4302 3624 -12293 2 2 0 6 4450 5621 4451 -12294 2 2 0 6 3731 5031 3733 -12295 2 2 0 6 1314 9107 1495 -12296 2 2 0 6 5961 5963 5962 -12297 2 2 0 6 5129 6755 6767 -12298 2 2 0 6 7792 7795 7796 -12299 2 2 0 6 1979 2516 8018 -12300 2 2 0 6 2947 3524 8967 -12301 2 2 0 6 816 9388 1751 -12302 2 2 0 6 926 928 927 -12303 2 2 0 6 1150 1149 1161 -12304 2 2 0 6 2870 3100 3101 -12305 2 2 0 6 2896 3163 3162 -12306 2 2 0 6 1907 1937 3564 -12307 2 2 0 6 3847 3848 3849 -12308 2 2 0 6 3206 4106 3750 -12309 2 2 0 6 3489 4847 4909 -12310 2 2 0 6 5761 9989 5763 -12311 2 2 0 6 5555 7628 7535 -12312 2 2 0 6 1017 1023 9286 -12313 2 2 0 6 9451 10435 10541 -12314 2 2 0 6 672 675 674 -12315 2 2 0 6 677 679 678 -12316 2 2 0 6 1403 1404 1405 -12317 2 2 0 6 1533 1537 1536 -12318 2 2 0 6 2074 2107 2073 -12319 2 2 0 6 4422 4423 4421 -12320 2 2 0 6 3712 3713 5001 -12321 2 2 0 6 4143 5201 5202 -12322 2 2 0 6 3918 5560 4742 -12323 2 2 0 6 3649 3650 5857 -12324 2 2 0 6 5583 7279 5585 -12325 2 2 0 6 5199 8218 6641 -12326 2 2 0 6 726 730 1010 -12327 2 2 0 6 842 840 1758 -12328 2 2 0 6 3401 3405 3404 -12329 2 2 0 6 3439 3441 3649 -12330 2 2 0 6 3678 3681 3680 -12331 2 2 0 6 3218 4076 4075 -12332 2 2 0 6 4584 5089 4585 -12333 2 2 0 6 7292 7294 7293 -12334 2 2 0 6 7822 7824 7823 -12335 2 2 0 6 8586 8585 8587 -12336 2 2 0 6 2608 5558 8807 -12337 2 2 0 6 1506 9222 3690 -12338 2 2 0 6 3292 3908 9236 -12339 2 2 0 6 4187 5603 9323 -12340 2 2 0 6 6040 6880 9734 -12341 2 2 0 6 1616 1618 1617 -12342 2 2 0 6 5001 6616 8399 -12343 2 2 0 6 2521 3525 2907 -12344 2 2 0 6 3307 4145 9269 -12345 2 2 0 6 3315 3966 3316 -12346 2 2 0 6 2727 3227 4055 -12347 2 2 0 6 3742 4070 3743 -12348 2 2 0 6 4080 4081 4082 -12349 2 2 0 6 3756 4114 3755 -12350 2 2 0 6 3530 3912 4271 -12351 2 2 0 6 3897 4278 3898 -12352 2 2 0 6 4422 5262 4423 -12353 2 2 0 6 4937 9848 4942 -12354 2 2 0 6 6060 6706 6077 -12355 2 2 0 6 3498 7060 4721 -12356 2 2 0 6 3732 8524 3730 -12357 2 2 0 6 2026 8722 8723 -12358 2 2 0 6 1296 1299 9424 -12359 2 2 0 6 3741 5726 9507 -12360 2 2 0 6 954 956 955 -12361 2 2 0 6 2124 2125 2122 -12362 2 2 0 6 2125 2134 2135 -12363 2 2 0 6 2130 2334 2335 -12364 2 2 0 6 3053 4150 4151 -12365 2 2 0 6 3984 4875 4852 -12366 2 2 0 6 3846 4646 4964 -12367 2 2 0 6 5340 5902 6431 -12368 2 2 0 6 3762 8550 4924 -12369 2 2 0 6 2468 2899 2933 -12370 2 2 0 6 2964 2966 2965 -12371 2 2 0 6 637 638 3537 -12372 2 2 0 6 6532 6534 6533 -12373 2 2 0 6 4787 6351 8553 -12374 2 2 0 6 3500 3502 8947 -12375 2 2 0 6 4412 4414 9051 -12376 2 2 0 6 3040 9253 4461 -12377 2 2 0 6 757 759 758 -12378 2 2 0 6 723 8968 3510 -12379 2 2 0 6 1997 1998 1999 -12380 2 2 0 6 2074 2075 2076 -12381 2 2 0 6 2350 2388 2487 -12382 2 2 0 6 2751 2753 2752 -12383 2 2 0 6 3405 3411 3410 -12384 2 2 0 6 2848 3718 3156 -12385 2 2 0 6 3960 4831 4832 -12386 2 2 0 6 4413 5106 4414 -12387 2 2 0 6 4874 5309 5310 -12388 2 2 0 6 5574 5575 8973 -12389 2 2 0 6 4880 4881 9272 -12390 2 2 0 6 1140 1158 1157 -12391 2 2 0 6 1629 1630 1631 -12392 2 2 0 6 1799 1885 1884 -12393 2 2 0 6 3070 9191 4101 -12394 2 2 0 6 2528 2530 2529 -12395 2 2 0 6 2544 2546 2545 -12396 2 2 0 6 814 826 3471 -12397 2 2 0 6 2879 3566 3171 -12398 2 2 0 6 3697 3698 3699 -12399 2 2 0 6 3732 3733 3734 -12400 2 2 0 6 4085 4087 4086 -12401 2 2 0 6 1688 4393 1722 -12402 2 2 0 6 3340 4517 4050 -12403 2 2 0 6 4052 4053 4980 -12404 2 2 0 6 4729 5198 5199 -12405 2 2 0 6 2309 8905 9105 -12406 2 2 0 6 8674 9216 9327 -12407 2 2 0 6 4735 7154 7159 -12408 2 2 0 6 5566 5567 7753 -12409 2 2 0 6 7039 7041 8430 -12410 2 2 0 6 717 718 721 -12411 2 2 0 6 1124 1126 1125 -12412 2 2 0 6 1536 1801 1802 -12413 2 2 0 6 2015 2014 2016 -12414 2 2 0 6 1981 2353 2352 -12415 2 2 0 6 3150 3454 3304 -12416 2 2 0 6 3580 3582 3583 -12417 2 2 0 6 3518 4120 3758 -12418 2 2 0 6 2052 4186 4185 -12419 2 2 0 6 5679 5819 5680 -12420 2 2 0 6 7308 7314 7309 -12421 2 2 0 6 5678 5680 9382 -12422 2 2 0 6 5799 10078 9941 -12423 2 2 0 6 3998 10102 7993 -12424 2 2 0 6 2153 2154 2155 -12425 2 2 0 6 911 971 970 -12426 2 2 0 6 1146 1154 1153 -12427 2 2 0 6 2053 2055 2056 -12428 2 2 0 6 3553 3916 3554 -12429 2 2 0 6 4551 5449 5448 -12430 2 2 0 6 4910 5579 5578 -12431 2 2 0 6 5049 6013 5726 -12432 2 2 0 6 4598 8094 8096 -12433 2 2 0 6 1285 8795 1313 -12434 2 2 0 6 604 606 605 -12435 2 2 0 6 745 747 746 -12436 2 2 0 6 763 765 764 -12437 2 2 0 6 2439 2440 2656 -12438 2 2 0 6 3500 3501 3502 -12439 2 2 0 6 3445 3974 3752 -12440 2 2 0 6 1816 4390 1818 -12441 2 2 0 6 4938 4940 4941 -12442 2 2 0 6 4802 6261 5612 -12443 2 2 0 6 5794 6518 6281 -12444 2 2 0 6 5556 5750 8711 -12445 2 2 0 6 1379 1382 9818 -12446 2 2 0 6 587 589 588 -12447 2 2 0 6 1122 1124 1123 -12448 2 2 0 6 1395 1397 1398 -12449 2 2 0 6 1397 1399 1398 -12450 2 2 0 6 1729 1730 1731 -12451 2 2 0 6 1884 1978 1979 -12452 2 2 0 6 1829 1981 1980 -12453 2 2 0 6 2175 2190 2178 -12454 2 2 0 6 2499 2845 2844 -12455 2 2 0 6 4896 5956 5957 -12456 2 2 0 6 7093 7516 7776 -12457 2 2 0 6 4950 5935 8317 -12458 2 2 0 6 4406 8500 8501 -12459 2 2 0 6 3597 5551 9050 -12460 2 2 0 6 3282 3284 9090 -12461 2 2 0 6 3277 3278 9198 -12462 2 2 0 6 1004 1013 1014 -12463 2 2 0 6 1401 1402 1399 -12464 2 2 0 6 1442 1788 1514 -12465 2 2 0 6 1885 1978 1884 -12466 2 2 0 6 2449 2890 2451 -12467 2 2 0 6 3556 3920 3558 -12468 2 2 0 6 3900 4724 4725 -12469 2 2 0 6 6281 6518 6519 -12470 2 2 0 6 5152 6816 6674 -12471 2 2 0 6 5946 7917 7918 -12472 2 2 0 6 2529 4001 8828 -12473 2 2 0 6 1162 1161 1182 -12474 2 2 0 6 3289 3291 3290 -12475 2 2 0 6 3586 3588 3587 -12476 2 2 0 6 5584 5585 5586 -12477 2 2 0 6 5529 5850 5851 -12478 2 2 0 6 4036 4260 5861 -12479 2 2 0 6 5872 8021 8020 -12480 2 2 0 6 637 3597 9050 -12481 2 2 0 6 1613 9081 9080 -12482 2 2 0 6 5419 9421 5420 -12483 2 2 0 6 618 620 619 -12484 2 2 0 6 1063 1067 1065 -12485 2 2 0 6 1467 1470 1469 -12486 2 2 0 6 2063 2065 2066 -12487 2 2 0 6 2260 2315 2262 -12488 2 2 0 6 2605 2606 2607 -12489 2 2 0 6 3247 3770 3771 -12490 2 2 0 6 3230 3231 3837 -12491 2 2 0 6 4277 5564 5236 -12492 2 2 0 6 5623 7087 5624 -12493 2 2 0 6 3917 7665 5360 -12494 2 2 0 6 4319 8077 4321 -12495 2 2 0 6 654 9230 656 -12496 2 2 0 6 8517 8520 9384 -12497 2 2 0 6 583 585 584 -12498 2 2 0 6 596 598 597 -12499 2 2 0 6 710 714 717 -12500 2 2 0 6 1156 1258 1257 -12501 2 2 0 6 723 726 8968 -12502 2 2 0 6 1982 2236 1983 -12503 2 2 0 6 3184 3185 3186 -12504 2 2 0 6 3444 3445 3752 -12505 2 2 0 6 4940 5371 4941 -12506 2 2 0 6 614 616 615 -12507 2 2 0 6 759 761 760 -12508 2 2 0 6 1407 1408 1409 -12509 2 2 0 6 1633 1639 1687 -12510 2 2 0 6 2008 2009 2007 -12511 2 2 0 6 2611 2762 2901 -12512 2 2 0 6 3588 3660 3591 -12513 2 2 0 6 4016 4018 4017 -12514 2 2 0 6 3192 4052 3191 -12515 2 2 0 6 4509 6350 5854 -12516 2 2 0 6 4176 4177 5064 -12517 2 2 0 6 5523 5623 5622 -12518 2 2 0 6 3905 6327 4722 -12519 2 2 0 6 5503 7134 7135 -12520 2 2 0 6 7284 7286 7285 -12521 2 2 0 6 4673 8549 8547 -12522 2 2 0 6 2801 2861 8759 -12523 2 2 0 6 3894 4391 9014 -12524 2 2 0 6 3515 3516 3517 -12525 2 2 0 6 3676 3678 3677 -12526 2 2 0 6 909 912 3890 -12527 2 2 0 6 3198 9120 9119 -12528 2 2 0 6 5718 5719 6623 -12529 2 2 0 6 5765 6978 5767 -12530 2 2 0 6 3590 8814 4322 -12531 2 2 0 6 1183 1182 1196 -12532 2 2 0 6 2451 2453 2452 -12533 2 2 0 6 2944 2946 2945 -12534 2 2 0 6 3587 3588 3590 -12535 2 2 0 6 3469 4078 4079 -12536 2 2 0 6 3748 4204 3753 -12537 2 2 0 6 4926 4927 4928 -12538 2 2 0 6 4752 5227 4754 -12539 2 2 0 6 6313 6316 6314 -12540 2 2 0 6 4952 5617 6390 -12541 2 2 0 6 641 3739 6613 -12542 2 2 0 6 4205 4209 8580 -12543 2 2 0 6 3927 4782 9526 -12544 2 2 0 6 2552 2722 9652 -12545 2 2 0 6 5742 9979 9520 -12546 2 2 0 6 1049 1051 1050 -12547 2 2 0 6 1417 1497 1419 -12548 2 2 0 6 1983 2236 2237 -12549 2 2 0 6 2358 2488 2489 -12550 2 2 0 6 697 2602 701 -12551 2 2 0 6 5084 5085 5086 -12552 2 2 0 6 5697 5792 5698 -12553 2 2 0 6 4292 8924 5297 -12554 2 2 0 6 2607 2608 2609 -12555 2 2 0 6 2729 2730 2731 -12556 2 2 0 6 3040 4461 3893 -12557 2 2 0 6 3922 4721 4767 -12558 2 2 0 6 4952 5593 5617 -12559 2 2 0 6 5582 5584 5739 -12560 2 2 0 6 7296 7298 7297 -12561 2 2 0 6 6255 8307 7231 -12562 2 2 0 6 2436 2439 8433 -12563 2 2 0 6 644 647 8959 -12564 2 2 0 6 6862 10142 10219 -12565 2 2 0 6 5645 8915 9736 -12566 2 2 0 6 882 883 965 -12567 2 2 0 6 1806 1878 1879 -12568 2 2 0 6 1829 1980 1828 -12569 2 2 0 6 2864 3333 3332 -12570 2 2 0 6 6022 7052 6222 -12571 2 2 0 6 6178 6179 8242 -12572 2 2 0 6 8709 8883 8882 -12573 2 2 0 6 2878 9010 3221 -12574 2 2 0 6 8072 10280 9848 -12575 2 2 0 6 3887 9927 9588 -12576 2 2 0 6 1645 1647 1646 -12577 2 2 0 6 1727 1728 1729 -12578 2 2 0 6 2110 2118 2117 -12579 2 2 0 6 4871 5999 5410 -12580 2 2 0 6 6309 6721 7699 -12581 2 2 0 6 5510 7956 5714 -12582 2 2 0 6 5439 8510 8508 -12583 2 2 0 6 4775 8693 5600 -12584 2 2 0 6 2460 2700 8933 -12585 2 2 0 6 1598 1599 9112 -12586 2 2 0 6 3202 3670 9242 -12587 2 2 0 6 780 786 1046 -12588 2 2 0 6 1674 1676 1675 -12589 2 2 0 6 822 1749 825 -12590 2 2 0 6 3037 3330 3329 -12591 2 2 0 6 3546 3548 3547 -12592 2 2 0 6 3566 4912 4045 -12593 2 2 0 6 6591 7719 6592 -12594 2 2 0 6 4173 8367 6418 -12595 2 2 0 6 3043 9047 9048 -12596 2 2 0 6 4383 4760 9052 -12597 2 2 0 6 652 653 654 -12598 2 2 0 6 1154 1164 1163 -12599 2 2 0 6 1196 1213 1197 -12600 2 2 0 6 1649 1651 1652 -12601 2 2 0 6 3286 3289 3288 -12602 2 2 0 6 2811 2812 3302 -12603 2 2 0 6 3193 4198 3721 -12604 2 2 0 6 2453 3693 2510 -12605 2 2 0 6 3325 3326 3972 -12606 2 2 0 6 4083 4085 4084 -12607 2 2 0 6 4934 4935 4936 -12608 2 2 0 6 4699 5252 5218 -12609 2 2 0 6 5380 6742 5381 -12610 2 2 0 6 5477 9213 6353 -12611 2 2 0 6 4322 8814 9245 -12612 2 2 0 6 3429 8678 9519 -12613 2 2 0 6 747 749 748 -12614 2 2 0 6 729 838 837 -12615 2 2 0 6 2159 2161 2160 -12616 2 2 0 6 3314 4015 4016 -12617 2 2 0 6 3098 3096 3099 -12618 2 2 0 6 3540 3541 3542 -12619 2 2 0 6 4074 5938 5974 -12620 2 2 0 6 5468 6179 6178 -12621 2 2 0 6 2247 8933 4438 -12622 2 2 0 6 4067 8380 8378 -12623 2 2 0 6 2237 8996 2343 -12624 2 2 0 6 2802 9349 3374 -12625 2 2 0 6 6423 9784 9190 -12626 2 2 0 6 7440 9348 9898 -12627 2 2 0 6 857 856 859 -12628 2 2 0 6 1128 1223 1138 -12629 2 2 0 6 1176 1177 9466 -12630 2 2 0 6 1552 1554 1553 -12631 2 2 0 6 1047 2311 1049 -12632 2 2 0 6 2789 2791 2790 -12633 2 2 0 6 3415 3416 3417 -12634 2 2 0 6 2770 4212 3757 -12635 2 2 0 6 4159 4160 4772 -12636 2 2 0 6 4932 4933 4934 -12637 2 2 0 6 3693 5567 5566 -12638 2 2 0 6 5590 5695 5591 -12639 2 2 0 6 6192 6194 7080 -12640 2 2 0 6 980 8766 987 -12641 2 2 0 6 6361 6362 8931 -12642 2 2 0 6 3996 5740 9404 -12643 2 2 0 6 3079 9493 3080 -12644 2 2 0 6 2809 3978 9707 -12645 2 2 0 6 1228 1236 1229 -12646 2 2 0 6 1525 1527 1526 -12647 2 2 0 6 1605 1608 1609 -12648 2 2 0 6 1712 1713 1714 -12649 2 2 0 6 2339 2397 2564 -12650 2 2 0 6 2400 2567 2569 -12651 2 2 0 6 2947 2948 3325 -12652 2 2 0 6 3652 3676 3677 -12653 2 2 0 6 4409 9465 9027 -12654 2 2 0 6 3768 6027 4127 -12655 2 2 0 6 6681 6682 6683 -12656 2 2 0 6 6101 7024 6184 -12657 2 2 0 6 7314 7326 7318 -12658 2 2 0 6 6394 8959 8424 -12659 2 2 0 6 3060 2837 9427 -12660 2 2 0 6 685 687 686 -12661 2 2 0 6 1007 1019 1018 -12662 2 2 0 6 1628 1630 1629 -12663 2 2 0 6 2066 2070 2069 -12664 2 2 0 6 2036 2126 2078 -12665 2 2 0 6 3728 3730 8762 -12666 2 2 0 6 3681 3682 3680 -12667 2 2 0 6 1124 4166 1126 -12668 2 2 0 6 2280 4173 2282 -12669 2 2 0 6 2689 9191 3070 -12670 2 2 0 6 4111 5254 4735 -12671 2 2 0 6 1846 2341 9144 -12672 2 2 0 6 3743 9771 4172 -12673 2 2 0 6 4058 7468 7469 -12674 2 2 0 6 7035 7037 8690 -12675 2 2 0 6 1833 8611 9233 -12676 2 2 0 6 3288 9383 3297 -12677 2 2 0 6 2296 8614 9600 -12678 2 2 0 6 1143 1149 1144 -12679 2 2 0 6 1316 1525 1526 -12680 2 2 0 6 1648 1650 1649 -12681 2 2 0 6 2125 2135 2136 -12682 2 2 0 6 4412 4211 4413 -12683 2 2 0 6 4867 5416 4869 -12684 2 2 0 6 2591 4060 9354 -12685 2 2 0 6 6206 8220 8219 -12686 2 2 0 6 850 852 851 -12687 2 2 0 6 1071 1073 1072 -12688 2 2 0 6 1528 1529 1530 -12689 2 2 0 6 735 737 2589 -12690 2 2 0 6 629 4059 3736 -12691 2 2 0 6 5100 6071 6070 -12692 2 2 0 6 4132 4245 6168 -12693 2 2 0 6 7814 7815 7831 -12694 2 2 0 6 3041 9624 8551 -12695 2 2 0 6 853 854 855 -12696 2 2 0 6 930 932 931 -12697 2 2 0 6 999 1009 1008 -12698 2 2 0 6 2098 2100 2099 -12699 2 2 0 6 2025 2031 4431 -12700 2 2 0 6 4928 4929 4930 -12701 2 2 0 6 4838 6631 10049 -12702 2 2 0 6 3285 9111 3286 -12703 2 2 0 6 628 630 631 -12704 2 2 0 6 706 709 710 -12705 2 2 0 6 839 840 841 -12706 2 2 0 6 1067 1069 1068 -12707 2 2 0 6 1623 1624 1625 -12708 2 2 0 6 2353 2605 2604 -12709 2 2 0 6 2871 2953 3157 -12710 2 2 0 6 3270 3272 3273 -12711 2 2 0 6 3466 3468 3469 -12712 2 2 0 6 5294 6528 5295 -12713 2 2 0 6 5839 7534 5840 -12714 2 2 0 6 6057 8537 8536 -12715 2 2 0 6 2986 3242 8974 -12716 2 2 0 6 8501 9068 9205 -12717 2 2 0 6 1318 9222 1506 -12718 2 2 0 6 4232 7449 9261 -12719 2 2 0 6 715 716 719 -12720 2 2 0 6 734 736 735 -12721 2 2 0 6 958 960 959 -12722 2 2 0 6 961 976 962 -12723 2 2 0 6 1069 1071 1070 -12724 2 2 0 6 1340 1342 1343 -12725 2 2 0 6 1748 1772 1789 -12726 2 2 0 6 2118 2120 2131 -12727 2 2 0 6 1911 2194 1943 -12728 2 2 0 6 3419 3421 3430 -12729 2 2 0 6 2166 2168 3485 -12730 2 2 0 6 3328 3594 3595 -12731 2 2 0 6 3762 4217 4216 -12732 2 2 0 6 2796 2797 9273 -12733 2 2 0 6 2107 5938 4074 -12734 2 2 0 6 6225 6224 7031 -12735 2 2 0 6 8192 8194 8195 -12736 2 2 0 6 1220 1198 8721 -12737 2 2 0 6 974 5608 9203 -12738 2 2 0 6 1181 1192 1191 -12739 2 2 0 6 1213 1228 1214 -12740 2 2 0 6 1529 1531 1530 -12741 2 2 0 6 2799 2801 2800 -12742 2 2 0 6 2500 2501 2859 -12743 2 2 0 6 2677 3193 2893 -12744 2 2 0 6 3584 3586 3585 -12745 2 2 0 6 3426 3994 3427 -12746 2 2 0 6 4235 4237 4236 -12747 2 2 0 6 4645 5521 5158 -12748 2 2 0 6 5651 5653 5652 -12749 2 2 0 6 4872 6275 6276 -12750 2 2 0 6 6180 7190 7019 -12751 2 2 0 6 7600 7602 7601 -12752 2 2 0 6 1417 8710 1497 -12753 2 2 0 6 601 603 8987 -12754 2 2 0 6 4085 5061 9219 -12755 2 2 0 6 6682 9603 7587 -12756 2 2 0 6 2091 9634 8460 -12757 2 2 0 6 765 769 766 -12758 2 2 0 6 974 975 981 -12759 2 2 0 6 1641 1643 1644 -12760 2 2 0 6 1617 4416 1756 -12761 2 2 0 6 4083 5061 4085 -12762 2 2 0 6 4930 4932 5261 -12763 2 2 0 6 4114 5747 6073 -12764 2 2 0 6 5093 6695 6696 -12765 2 2 0 6 7286 7288 7289 -12766 2 2 0 6 2286 9297 8648 -12767 2 2 0 6 946 948 947 -12768 2 2 0 6 1621 1620 1622 -12769 2 2 0 6 3167 3168 3169 -12770 2 2 0 6 3427 3429 3428 -12771 2 2 0 6 3302 3894 3619 -12772 2 2 0 6 1107 1109 9459 -12773 2 2 0 6 4810 4811 4812 -12774 2 2 0 6 4930 4931 4932 -12775 2 2 0 6 3912 5544 4734 -12776 2 2 0 6 5435 5998 7589 -12777 2 2 0 6 3730 8524 8762 -12778 2 2 0 6 3422 8821 8822 -12779 2 2 0 6 3895 4585 8835 -12780 2 2 0 6 6486 8949 6490 -12781 2 2 0 6 5543 9097 7603 -12782 2 2 0 6 3286 9111 3289 -12783 2 2 0 6 2781 9439 3633 -12784 2 2 0 6 6381 9076 9580 -12785 2 2 0 6 582 8297 9608 -12786 2 2 0 6 1788 1911 1824 -12787 2 2 0 6 2148 2347 2348 -12788 2 2 0 6 2749 2751 2750 -12789 2 2 0 6 3411 3423 3424 -12790 2 2 0 6 3915 5773 4731 -12791 2 2 0 6 6021 6022 6222 -12792 2 2 0 6 5461 6349 6466 -12793 2 2 0 6 3715 5940 6634 -12794 2 2 0 6 663 9070 9118 -12795 2 2 0 6 3197 9119 3735 -12796 2 2 0 6 1818 9229 1823 -12797 2 2 0 6 6680 9186 9603 -12798 2 2 0 6 5504 7994 10094 -12799 2 2 0 6 6706 11203 11213 -12800 2 2 0 6 1164 1181 1180 -12801 2 2 0 6 2634 3000 8636 -12802 2 2 0 6 1621 1622 1623 -12803 2 2 0 6 2348 2350 2349 -12804 2 2 0 6 2536 2538 2537 -12805 2 2 0 6 2835 3115 3063 -12806 2 2 0 6 2682 3198 3197 -12807 2 2 0 6 2784 3473 3474 -12808 2 2 0 6 3591 3660 3661 -12809 2 2 0 6 5420 5451 5438 -12810 2 2 0 6 4822 5302 5497 -12811 2 2 0 6 5823 5862 5824 -12812 2 2 0 6 5834 5888 5887 -12813 2 2 0 6 5400 5401 6035 -12814 2 2 0 6 5450 6649 6650 -12815 2 2 0 6 6730 6837 6838 -12816 2 2 0 6 6465 7822 7823 -12817 2 2 0 6 4397 8734 4891 -12818 2 2 0 6 1536 1802 9204 -12819 2 2 0 6 2900 9361 9627 -12820 2 2 0 6 681 683 682 -12821 2 2 0 6 762 764 771 -12822 2 2 0 6 1062 1061 1063 -12823 2 2 0 6 1708 1709 1710 -12824 2 2 0 6 4397 4470 4471 -12825 2 2 0 6 2090 4983 2092 -12826 2 2 0 6 2974 9431 3355 -12827 2 2 0 6 4414 5106 5107 -12828 2 2 0 6 6278 7106 6279 -12829 2 2 0 6 451 7877 7878 -12830 2 2 0 6 7891 7906 7893 -12831 2 2 0 6 4281 4601 8785 -12832 2 2 0 6 1104 1105 1137 -12833 2 2 0 6 2738 2739 2987 -12834 2 2 0 6 2966 3017 3016 -12835 2 2 0 6 4600 6034 5910 -12836 2 2 0 6 5155 6134 6792 -12837 2 2 0 6 15 16 7237 -12838 2 2 0 6 3062 9847 9449 -12839 2 2 0 6 600 602 601 -12840 2 2 0 6 657 3501 3500 -12841 2 2 0 6 761 763 762 -12842 2 2 0 6 2943 2944 2945 -12843 2 2 0 6 3159 4209 4205 -12844 2 2 0 6 3448 4708 3449 -12845 2 2 0 6 2237 2514 8996 -12846 2 2 0 6 5567 5569 5570 -12847 2 2 0 6 5583 5585 5584 -12848 2 2 0 6 5733 6218 5734 -12849 2 2 0 6 6486 6490 6488 -12850 2 2 0 6 5531 6628 5929 -12851 2 2 0 6 5305 7163 6588 -12852 2 2 0 6 7320 7390 7328 -12853 2 2 0 6 5161 6848 7708 -12854 2 2 0 6 2228 8997 2499 -12855 2 2 0 6 2071 9127 2072 -12856 2 2 0 6 1678 9134 2386 -12857 2 2 0 6 1691 9454 4110 -12858 2 2 0 6 2928 5678 9515 -12859 2 2 0 6 582 583 584 -12860 2 2 0 6 624 626 627 -12861 2 2 0 6 1131 1143 1132 -12862 2 2 0 6 1639 1688 1687 -12863 2 2 0 6 1744 1746 1748 -12864 2 2 0 6 1722 1798 1721 -12865 2 2 0 6 2003 2004 2005 -12866 2 2 0 6 1272 3389 1274 -12867 2 2 0 6 3537 3598 3597 -12868 2 2 0 6 2377 3645 2379 -12869 2 2 0 6 4085 9219 4087 -12870 2 2 0 6 4502 4839 4838 -12871 2 2 0 6 4935 4937 4936 -12872 2 2 0 6 4758 5360 5361 -12873 2 2 0 6 6016 6729 6730 -12874 2 2 0 6 7790 7795 7792 -12875 2 2 0 6 3044 8013 3047 -12876 2 2 0 6 4823 8231 5495 -12877 2 2 0 6 5690 9622 6577 -12878 2 2 0 6 590 591 592 -12879 2 2 0 6 1873 1965 1966 -12880 2 2 0 6 2831 3051 2833 -12881 2 2 0 6 2861 2862 3113 -12882 2 2 0 6 3793 3795 3797 -12883 2 2 0 6 3952 8645 4282 -12884 2 2 0 6 1602 1603 3918 -12885 2 2 0 6 3995 4861 4862 -12886 2 2 0 6 4485 4993 5007 -12887 2 2 0 6 3747 5067 5069 -12888 2 2 0 6 4730 4731 6192 -12889 2 2 0 6 1777 10921 10895 -12890 2 2 0 6 597 598 599 -12891 2 2 0 6 1652 1660 5626 -12892 2 2 0 6 5548 5689 5549 -12893 2 2 0 6 5267 5268 6190 -12894 2 2 0 6 3362 6629 6630 -12895 2 2 0 6 6280 6281 7232 -12896 2 2 0 6 622 624 623 -12897 2 2 0 6 659 661 660 -12898 2 2 0 6 1073 1075 1074 -12899 2 2 0 6 1704 1705 1706 -12900 2 2 0 6 2040 2041 2042 -12901 2 2 0 6 1976 2679 2680 -12902 2 2 0 6 2609 2610 2811 -12903 2 2 0 6 2607 2609 2900 -12904 2 2 0 6 2654 2655 3037 -12905 2 2 0 6 2993 4799 3842 -12906 2 2 0 6 5613 5615 9283 -12907 2 2 0 6 5888 5890 5889 -12908 2 2 0 6 6219 6439 6438 -12909 2 2 0 6 7294 7296 7295 -12910 2 2 0 6 2042 7950 4509 -12911 2 2 0 6 3313 8538 5509 -12912 2 2 0 6 1373 1375 8850 -12913 2 2 0 6 4798 5822 9228 -12914 2 2 0 6 1481 1484 9248 -12915 2 2 0 6 2892 3553 3195 -12916 2 2 0 6 736 738 737 -12917 2 2 0 6 749 751 750 -12918 2 2 0 6 1731 1732 1733 -12919 2 2 0 6 2063 2066 2069 -12920 2 2 0 6 3411 3422 3423 -12921 2 2 0 6 1798 4907 1721 -12922 2 2 0 6 1174 8827 1200 -12923 2 2 0 6 4483 8846 8845 -12924 2 2 0 6 837 838 839 -12925 2 2 0 6 1128 1138 1129 -12926 2 2 0 6 1650 1651 1649 -12927 2 2 0 6 2226 2370 2371 -12928 2 2 0 6 2337 2338 2481 -12929 2 2 0 6 1926 3052 2244 -12930 2 2 0 6 8905 9356 9105 -12931 2 2 0 6 6425 6424 9642 -12932 2 2 0 6 941 10509 10405 -12933 2 2 0 6 3706 10715 10275 -12934 2 2 0 6 2681 3197 3560 -12935 2 2 0 6 3954 9670 4871 -12936 2 2 0 6 7263 9772 10457 -12937 2 2 0 6 3901 3902 3903 -12938 2 2 0 6 3613 5548 5547 -12939 2 2 0 6 5647 5649 5650 -12940 2 2 0 6 5556 5702 5750 -12941 2 2 0 6 5100 6070 6054 -12942 2 2 0 6 3713 6616 5001 -12943 2 2 0 6 5598 5830 7770 -12944 2 2 0 6 7893 7906 7907 -12945 2 2 0 6 1930 6494 8273 -12946 2 2 0 6 6449 9984 8245 -12947 2 2 0 6 7817 9988 10116 -12948 2 2 0 6 1126 1128 1127 -12949 2 2 0 6 708 1179 712 -12950 2 2 0 6 1248 1250 1251 -12951 2 2 0 6 5101 9087 6065 -12952 2 2 0 6 2849 3068 3309 -12953 2 2 0 6 3591 3661 3712 -12954 2 2 0 6 3727 3729 3728 -12955 2 2 0 6 3735 5068 5067 -12956 2 2 0 6 1625 5510 1725 -12957 2 2 0 6 5139 7746 6799 -12958 2 2 0 6 3670 4540 9242 -12959 2 2 0 6 4606 5764 9553 -12960 2 2 0 6 5807 6694 9611 -12961 2 2 0 6 5528 9645 5645 -12962 2 2 0 6 8177 9876 8180 -12963 2 2 0 6 1057 1059 1058 -12964 2 2 0 6 1351 1353 1352 -12965 2 2 0 6 1633 1634 1639 -12966 2 2 0 6 1549 1675 9326 -12967 2 2 0 6 2011 2012 2013 -12968 2 2 0 6 2365 2457 2366 -12969 2 2 0 6 3437 3439 3438 -12970 2 2 0 6 5663 5665 5664 -12971 2 2 0 6 5237 7084 5238 -12972 2 2 0 6 698 699 702 -12973 2 2 0 6 806 809 808 -12974 2 2 0 6 1532 1533 1536 -12975 2 2 0 6 1622 1624 1623 -12976 2 2 0 6 3197 3735 3560 -12977 2 2 0 6 4481 4482 4483 -12978 2 2 0 6 4069 4898 4897 -12979 2 2 0 6 683 4449 9179 -12980 2 2 0 6 4731 6194 6192 -12981 2 2 0 6 5304 6551 6550 -12982 2 2 0 6 6680 6682 6681 -12983 2 2 0 6 3908 9237 9236 -12984 2 2 0 6 788 794 793 -12985 2 2 0 6 3594 3607 3595 -12986 2 2 0 6 1544 8796 2586 -12987 2 2 0 6 2190 2365 2191 -12988 2 2 0 6 1823 2443 1944 -12989 2 2 0 6 3577 3808 4036 -12990 2 2 0 6 3621 4177 4176 -12991 2 2 0 6 3297 4716 3618 -12992 2 2 0 6 3918 4742 3919 -12993 2 2 0 6 3351 4032 4913 -12994 2 2 0 6 4862 5419 5420 -12995 2 2 0 6 2452 2454 8811 -12996 2 2 0 6 627 628 9072 -12997 2 2 0 6 8968 8969 9331 -12998 2 2 0 6 1526 1527 1528 -12999 2 2 0 6 1624 1626 1625 -13000 2 2 0 6 4076 5056 5055 -13001 2 2 0 6 3661 9574 3713 -13002 2 2 0 6 4857 6231 6233 -13003 2 2 0 6 6236 6238 7070 -13004 2 2 0 6 4013 8075 5374 -13005 2 2 0 6 1290 9221 1318 -13006 2 2 0 6 3691 9293 8980 -13007 2 2 0 6 3767 4126 9585 -13008 2 2 0 6 1019 9586 1030 -13009 2 2 0 6 2768 2913 9710 -13010 2 2 0 6 942 944 943 -13011 2 2 0 6 2564 2916 2917 -13012 2 2 0 6 3165 3168 3167 -13013 2 2 0 6 3618 4716 4717 -13014 2 2 0 6 3818 4893 4225 -13015 2 2 0 6 5229 6419 6420 -13016 2 2 0 6 1199 8919 3480 -13017 2 2 0 6 8638 10720 10730 -13018 2 2 0 6 1582 8396 1585 -13019 2 2 0 6 838 840 839 -13020 2 2 0 6 1405 1406 1403 -13021 2 2 0 6 1691 1692 1686 -13022 2 2 0 6 1891 1892 1893 -13023 2 2 0 6 2041 2043 2042 -13024 2 2 0 6 2564 2565 2916 -13025 2 2 0 6 2219 2955 2222 -13026 2 2 0 6 3423 3425 3424 -13027 2 2 0 6 1654 3616 1656 -13028 2 2 0 6 5423 5424 5425 -13029 2 2 0 6 4909 4910 5578 -13030 2 2 0 6 1751 5595 1786 -13031 2 2 0 6 5787 6325 5788 -13032 2 2 0 6 2912 8406 3346 -13033 2 2 0 6 3463 9130 8720 -13034 2 2 0 6 2308 2500 9133 -13035 2 2 0 6 3402 9314 3406 -13036 2 2 0 6 8185 8653 10228 -13037 2 2 0 6 4661 5109 5129 -13038 2 2 0 6 4328 4671 5481 -13039 2 2 0 6 5214 7072 6377 -13040 2 2 0 6 3547 4344 8315 -13041 2 2 0 6 1504 9022 8815 -13042 2 2 0 6 4149 5644 9334 -13043 2 2 0 6 6103 11046 11036 -13044 2 2 0 6 658 659 660 -13045 2 2 0 6 1894 2347 2148 -13046 2 2 0 6 2507 2668 2667 -13047 2 2 0 6 3278 3280 3281 -13048 2 2 0 6 3608 3609 3622 -13049 2 2 0 6 3445 3984 3974 -13050 2 2 0 6 3761 3762 4216 -13051 2 2 0 6 5466 5468 5467 -13052 2 2 0 6 6756 6770 6769 -13053 2 2 0 6 7043 7044 7045 -13054 2 2 0 6 1237 8671 1253 -13055 2 2 0 6 4022 4947 9034 -13056 2 2 0 6 6020 9073 9072 -13057 2 2 0 6 608 610 611 -13058 2 2 0 6 1102 1103 1104 -13059 2 2 0 6 3426 3427 3425 -13060 2 2 0 6 3017 3020 8691 -13061 2 2 0 6 4964 4646 4965 -13062 2 2 0 6 3405 8821 3422 -13063 2 2 0 6 1413 9241 4170 -13064 2 2 0 6 584 585 586 -13065 2 2 0 6 1158 1185 1184 -13066 2 2 0 6 1278 1354 1288 -13067 2 2 0 6 1258 1525 1316 -13068 2 2 0 6 2043 2045 2046 -13069 2 2 0 6 1087 3382 8754 -13070 2 2 0 6 2601 2724 2723 -13071 2 2 0 6 3803 4263 4264 -13072 2 2 0 6 1809 4502 3711 -13073 2 2 0 6 4463 4715 4714 -13074 2 2 0 6 4303 4304 5300 -13075 2 2 0 6 1112 8856 1189 -13076 2 2 0 6 3973 5633 4854 -13077 2 2 0 6 4903 5741 5740 -13078 2 2 0 6 5327 7356 7354 -13079 2 2 0 6 5929 8589 5930 -13080 2 2 0 6 5075 7251 9330 -13081 2 2 0 6 6627 10559 10487 -13082 2 2 0 6 922 925 924 -13083 2 2 0 6 1887 1888 1889 -13084 2 2 0 6 2224 2225 2226 -13085 2 2 0 6 2915 3236 3494 -13086 2 2 0 6 3200 3202 4072 -13087 2 2 0 6 4488 5813 4648 -13088 2 2 0 6 3170 5940 3715 -13089 2 2 0 6 7308 7309 7307 -13090 2 2 0 6 630 8773 632 -13091 2 2 0 6 2905 9091 3210 -13092 2 2 0 6 1216 1225 9483 -13093 2 2 0 6 210 211 449 -13094 2 2 0 6 700 701 704 -13095 2 2 0 6 1645 1648 1647 -13096 2 2 0 6 1536 1537 1801 -13097 2 2 0 6 2454 2510 2511 -13098 2 2 0 6 2501 2942 2860 -13099 2 2 0 6 3157 3158 3928 -13100 2 2 0 6 5329 8897 7815 -13101 2 2 0 6 4518 5871 5886 -13102 2 2 0 6 2212 8667 9384 -13103 2 2 0 6 6350 7518 6599 -13104 2 2 0 6 6584 8309 8310 -13105 2 2 0 6 4735 7159 8729 -13106 2 2 0 6 2835 9499 3115 -13107 2 2 0 6 8380 10148 9161 -13108 2 2 0 6 1623 1625 1725 -13109 2 2 0 6 2120 2121 2122 -13110 2 2 0 6 2965 3016 3298 -13111 2 2 0 6 4068 4896 9293 -13112 2 2 0 6 3178 4044 3742 -13113 2 2 0 6 3300 4144 3307 -13114 2 2 0 6 3622 4174 4175 -13115 2 2 0 6 5797 5808 5807 -13116 2 2 0 6 5134 6343 6344 -13117 2 2 0 6 3754 8480 8479 -13118 2 2 0 6 5467 8978 6207 -13119 2 2 0 6 786 1047 1046 -13120 2 2 0 6 1801 1895 1802 -13121 2 2 0 6 2648 2677 2649 -13122 2 2 0 6 2558 2789 2790 -13123 2 2 0 6 3031 3161 3032 -13124 2 2 0 6 3546 3550 3548 -13125 2 2 0 6 5438 5452 8067 -13126 2 2 0 6 3676 3993 8662 -13127 2 2 0 6 905 906 9840 -13128 2 2 0 6 5957 9346 9293 -13129 2 2 0 6 2093 2097 9634 -13130 2 2 0 6 2266 5594 9067 -13131 2 2 0 6 3174 3175 3269 -13132 2 2 0 6 4082 4083 4084 -13133 2 2 0 6 1636 1638 5618 -13134 2 2 0 6 6458 6460 6461 -13135 2 2 0 6 5291 7360 5292 -13136 2 2 0 6 1122 1224 9257 -13137 2 2 0 6 5851 6592 9527 -13138 2 2 0 6 1971 10964 10941 -13139 2 2 0 6 631 632 633 -13140 2 2 0 6 769 775 772 -13141 2 2 0 6 2055 2058 2057 -13142 2 2 0 6 1894 2147 1893 -13143 2 2 0 6 2438 2440 2439 -13144 2 2 0 6 2530 2532 2531 -13145 2 2 0 6 3504 3516 3515 -13146 2 2 0 6 4496 4498 4497 -13147 2 2 0 6 4204 5093 4586 -13148 2 2 0 6 4830 5590 5334 -13149 2 2 0 6 3223 8983 3818 -13150 2 2 0 6 4538 10495 10608 -13151 2 2 0 6 1786 8909 1883 -13152 2 2 0 6 1615 1616 1617 -13153 2 2 0 6 1549 1674 1675 -13154 2 2 0 6 1895 1982 1896 -13155 2 2 0 6 2342 2570 2516 -13156 2 2 0 6 2030 3654 2034 -13157 2 2 0 6 3894 4583 3895 -13158 2 2 0 6 4216 5104 4597 -13159 2 2 0 6 2218 2221 8993 -13160 2 2 0 6 685 9179 688 -13161 2 2 0 6 5316 9018 9996 -13162 2 2 0 6 6740 10138 9756 -13163 2 2 0 6 2035 2036 2037 -13164 2 2 0 6 1984 2935 2240 -13165 2 2 0 6 3778 3779 3780 -13166 2 2 0 6 5046 4995 5949 -13167 2 2 0 6 5453 6437 6389 -13168 2 2 0 6 6270 7597 6352 -13169 2 2 0 6 9 10 11201 -13170 2 2 0 6 1055 1057 1056 -13171 2 2 0 6 1271 1304 1305 -13172 2 2 0 6 1631 1632 1633 -13173 2 2 0 6 1819 1901 1902 -13174 2 2 0 6 3661 3713 3712 -13175 2 2 0 6 4539 4995 4540 -13176 2 2 0 6 5698 5792 5793 -13177 2 2 0 6 4459 4499 6520 -13178 2 2 0 6 5849 7491 7519 -13179 2 2 0 6 728 733 8697 -13180 2 2 0 6 862 861 863 -13181 2 2 0 6 1801 1897 1895 -13182 2 2 0 6 2948 3327 3326 -13183 2 2 0 6 5082 5083 5084 -13184 2 2 0 6 3369 5004 5529 -13185 2 2 0 6 5228 5229 6186 -13186 2 2 0 6 5295 6530 7077 -13187 2 2 0 6 5702 7661 7662 -13188 2 2 0 6 4092 4887 9146 -13189 2 2 0 6 1199 1221 8919 -13190 2 2 0 6 4219 9344 5781 -13191 2 2 0 6 3568 9202 9695 -13192 2 2 0 6 3898 4279 4419 -13193 2 2 0 6 4011 4633 4634 -13194 2 2 0 6 4140 4704 4705 -13195 2 2 0 6 2497 3492 5749 -13196 2 2 0 6 5680 5819 9555 -13197 2 2 0 6 1644 1645 1646 -13198 2 2 0 6 3017 8691 3016 -13199 2 2 0 6 2142 2143 2144 -13200 2 2 0 6 3357 3958 3961 -13201 2 2 0 6 3595 3608 4009 -13202 2 2 0 6 3622 4022 4174 -13203 2 2 0 6 4979 6426 5729 -13204 2 2 0 6 6445 6446 6447 -13205 2 2 0 6 6738 6795 7485 -13206 2 2 0 6 3387 9035 8609 -13207 2 2 0 6 3305 9726 3306 -13208 2 2 0 6 2193 2503 2257 -13209 2 2 0 6 661 3748 3753 -13210 2 2 0 6 3604 3756 3755 -13211 2 2 0 6 4904 6268 8029 -13212 2 2 0 6 2818 8663 3028 -13213 2 2 0 6 4856 5541 5540 -13214 2 2 0 6 4705 4706 5669 -13215 2 2 0 6 5461 6466 6467 -13216 2 2 0 6 6166 6991 6992 -13217 2 2 0 6 6623 6624 8201 -13218 2 2 0 6 2944 4920 8860 -13219 2 2 0 6 3613 8915 5548 -13220 2 2 0 6 1116 8953 3493 -13221 2 2 0 6 5594 9933 9684 -13222 2 2 0 6 5694 9947 7464 -13223 2 2 0 6 1060 1059 1061 -13224 2 2 0 6 1541 2954 1543 -13225 2 2 0 6 3629 4190 4180 -13226 2 2 0 6 4409 8816 9465 -13227 2 2 0 6 4566 6009 6008 -13228 2 2 0 6 4939 8068 8071 -13229 2 2 0 6 3479 8788 8787 -13230 2 2 0 6 2856 3992 8995 -13231 2 2 0 6 7804 9138 9463 -13232 2 2 0 6 794 796 795 -13233 2 2 0 6 978 985 984 -13234 2 2 0 6 1714 1717 1718 -13235 2 2 0 6 1572 1726 1577 -13236 2 2 0 6 2715 2830 2716 -13237 2 2 0 6 3588 3591 3590 -13238 2 2 0 6 3503 3761 3504 -13239 2 2 0 6 3550 3914 3913 -13240 2 2 0 6 3900 3901 4724 -13241 2 2 0 6 4037 4806 4804 -13242 2 2 0 6 5153 8290 8083 -13243 2 2 0 6 4035 6322 5010 -13244 2 2 0 6 6335 6425 7459 -13245 2 2 0 6 2818 2820 8663 -13246 2 2 0 6 4385 4387 8853 -13247 2 2 0 6 4193 9187 5502 -13248 2 2 0 6 6344 9738 7526 -13249 2 2 0 6 612 614 615 -13250 2 2 0 6 809 817 816 -13251 2 2 0 6 1141 5725 9415 -13252 2 2 0 6 1053 1055 1054 -13253 2 2 0 6 1547 1674 1549 -13254 2 2 0 6 3019 3021 3020 -13255 2 2 0 6 4324 4070 4876 -13256 2 2 0 6 4559 5519 5518 -13257 2 2 0 6 5558 8806 8807 -13258 2 2 0 6 603 604 605 -13259 2 2 0 6 1676 1678 1677 -13260 2 2 0 6 2421 2424 2423 -13261 2 2 0 6 2803 2862 2861 -13262 2 2 0 6 2942 2944 2943 -13263 2 2 0 6 3192 4053 4052 -13264 2 2 0 6 3906 4422 4421 -13265 2 2 0 6 4187 4049 4476 -13266 2 2 0 6 5080 5083 5082 -13267 2 2 0 6 5416 5864 5473 -13268 2 2 0 6 5013 5873 5872 -13269 2 2 0 6 5805 6150 6151 -13270 2 2 0 6 3735 9119 5068 -13271 2 2 0 6 5594 9684 9067 -13272 2 2 0 6 1618 1620 1621 -13273 2 2 0 6 3686 3749 4169 -13274 2 2 0 6 5488 5489 5490 -13275 2 2 0 6 4025 4979 5592 -13276 2 2 0 6 1242 1244 8886 -13277 2 2 0 6 2831 9002 3051 -13278 2 2 0 6 6369 9770 7533 -13279 2 2 0 6 1047 1049 1048 -13280 2 2 0 6 5054 8782 9058 -13281 2 2 0 6 2504 2855 2853 -13282 2 2 0 6 2897 2922 8841 -13283 2 2 0 6 4725 5219 5220 -13284 2 2 0 6 4852 4875 5329 -13285 2 2 0 6 5076 6655 5077 -13286 2 2 0 6 7309 7318 7319 -13287 2 2 0 6 1118 8951 1120 -13288 2 2 0 6 1751 9388 5595 -13289 2 2 0 6 5437 7231 9925 -13290 2 2 0 6 4179 10000 9946 -13291 2 2 0 6 602 604 603 -13292 2 2 0 6 2945 2946 2947 -13293 2 2 0 6 3163 3165 3166 -13294 2 2 0 6 3292 3728 3908 -13295 2 2 0 6 3735 5067 3747 -13296 2 2 0 6 5585 5587 5586 -13297 2 2 0 6 5624 7087 7088 -13298 2 2 0 6 4888 4889 7600 -13299 2 2 0 6 4616 7995 5632 -13300 2 2 0 6 2823 2821 8714 -13301 2 2 0 6 1132 9143 9387 -13302 2 2 0 6 2760 9285 2867 -13303 2 2 0 6 6648 9571 8716 -13304 2 2 0 6 855 854 856 -13305 2 2 0 6 2436 2438 2439 -13306 2 2 0 6 3620 3621 4176 -13307 2 2 0 6 655 3500 9635 -13308 2 2 0 6 1550 5611 1552 -13309 2 2 0 6 5591 5695 5696 -13310 2 2 0 6 4981 5072 5934 -13311 2 2 0 6 5577 5961 5576 -13312 2 2 0 6 6387 8135 6495 -13313 2 2 0 6 2855 3192 3191 -13314 2 2 0 6 1661 1667 3722 -13315 2 2 0 6 3543 4466 3545 -13316 2 2 0 6 1962 5835 5359 -13317 2 2 0 6 5653 5655 5654 -13318 2 2 0 6 5963 6554 6553 -13319 2 2 0 6 4947 6478 9034 -13320 2 2 0 6 4920 9356 9704 -13321 2 2 0 6 1969 3532 2512 -13322 2 2 0 6 2663 2875 2874 -13323 2 2 0 6 2957 2959 2958 -13324 2 2 0 6 3423 3426 3425 -13325 2 2 0 6 3297 4718 4716 -13326 2 2 0 6 3914 3915 4730 -13327 2 2 0 6 5808 6115 6119 -13328 2 2 0 6 5356 8487 10290 -13329 2 2 0 6 6147 6148 6861 -13330 2 2 0 6 6268 7242 7243 -13331 2 2 0 6 381 382 7771 -13332 2 2 0 6 5476 8530 5795 -13333 2 2 0 6 5475 9213 5477 -13334 2 2 0 6 6620 10693 10690 -13335 2 2 0 6 585 587 586 -13336 2 2 0 6 800 806 805 -13337 2 2 0 6 3431 3433 3434 -13338 2 2 0 6 3721 4198 4548 -13339 2 2 0 6 4157 4836 4274 -13340 2 2 0 6 4163 4164 5013 -13341 2 2 0 6 4953 4954 5272 -13342 2 2 0 6 4632 5431 5147 -13343 2 2 0 6 7045 7046 7048 -13344 2 2 0 6 5728 7258 7138 -13345 2 2 0 6 7305 7306 7307 -13346 2 2 0 6 1053 1207 1055 -13347 2 2 0 6 2145 2146 2337 -13348 2 2 0 6 3156 3719 4165 -13349 2 2 0 6 6711 6710 6713 -13350 2 2 0 6 1236 8671 1237 -13351 2 2 0 6 7293 7317 9777 -13352 2 2 0 6 5866 10380 7713 -13353 2 2 0 6 985 995 994 -13354 2 2 0 6 2436 2437 2438 -13355 2 2 0 6 2791 2792 2790 -13356 2 2 0 6 2692 2934 2772 -13357 2 2 0 6 8004 9173 8318 -13358 2 2 0 6 4479 4480 4481 -13359 2 2 0 6 5046 5625 4540 -13360 2 2 0 6 4059 5717 5025 -13361 2 2 0 6 5034 5033 5834 -13362 2 2 0 6 7048 7049 9232 -13363 2 2 0 6 3613 9332 8915 -13364 2 2 0 6 3200 4072 9120 -13365 2 2 0 6 1833 9233 1926 -13366 2 2 0 6 5667 10277 8274 -13367 2 2 0 6 1599 1601 1602 -13368 2 2 0 6 2214 2376 2375 -13369 2 2 0 6 3571 3897 3572 -13370 2 2 0 6 4620 4621 4622 -13371 2 2 0 6 3926 4780 3927 -13372 2 2 0 6 4552 5418 6024 -13373 2 2 0 6 5255 7137 7136 -13374 2 2 0 6 5371 8111 8110 -13375 2 2 0 6 1479 1482 1481 -13376 2 2 0 6 1644 1646 3552 -13377 2 2 0 6 3719 4189 4188 -13378 2 2 0 6 3670 4539 4540 -13379 2 2 0 6 5086 5291 5290 -13380 2 2 0 6 5226 6988 7264 -13381 2 2 0 6 7787 7789 7793 -13382 2 2 0 6 2466 2642 8712 -13383 2 2 0 6 3619 3895 8835 -13384 2 2 0 6 749 1281 9170 -13385 2 2 0 6 768 774 773 -13386 2 2 0 6 1185 1203 1201 -13387 2 2 0 6 2039 2040 2038 -13388 2 2 0 6 3333 3335 3336 -13389 2 2 0 6 4474 4489 4475 -13390 2 2 0 6 3888 4700 4269 -13391 2 2 0 6 4463 4714 4462 -13392 2 2 0 6 3321 5432 5048 -13393 2 2 0 6 5007 5875 5876 -13394 2 2 0 6 8586 8587 8588 -13395 2 2 0 6 8587 8657 8588 -13396 2 2 0 6 1697 1698 1696 -13397 2 2 0 6 4062 4518 4061 -13398 2 2 0 6 1378 9163 8850 -13399 2 2 0 6 5024 9268 5968 -13400 2 2 0 6 869 9343 8893 -13401 2 2 0 6 1837 1839 3536 -13402 2 2 0 6 669 670 668 -13403 2 2 0 6 744 745 746 -13404 2 2 0 6 828 832 836 -13405 2 2 0 6 1021 1032 1031 -13406 2 2 0 6 1530 1531 1532 -13407 2 2 0 6 1660 6521 5626 -13408 2 2 0 6 4153 4570 4155 -13409 2 2 0 6 4607 6107 6052 -13410 2 2 0 6 8503 9076 9077 -13411 2 2 0 6 3025 3029 9375 -13412 2 2 0 6 8262 8266 10545 -13413 2 2 0 6 690 691 692 -13414 2 2 0 6 840 842 841 -13415 2 2 0 6 2218 2220 2221 -13416 2 2 0 6 2685 3206 2895 -13417 2 2 0 6 3688 4892 4098 -13418 2 2 0 6 4718 6419 5229 -13419 2 2 0 6 5719 6624 6623 -13420 2 2 0 6 7293 7294 7295 -13421 2 2 0 6 7242 7443 7243 -13422 2 2 0 6 2450 8812 4442 -13423 2 2 0 6 5852 10239 8530 -13424 2 2 0 6 2237 2236 2514 -13425 2 2 0 6 2713 2715 2714 -13426 2 2 0 6 2527 2723 9215 -13427 2 2 0 6 5845 5846 6264 -13428 2 2 0 6 5621 9182 9982 -13429 2 2 0 6 3931 4291 8924 -13430 2 2 0 6 2606 9027 5558 -13431 2 2 0 6 1535 9205 9068 -13432 2 2 0 6 1411 9241 1413 -13433 2 2 0 6 1017 9286 1026 -13434 2 2 0 6 598 600 599 -13435 2 2 0 6 616 618 619 -13436 2 2 0 6 696 697 700 -13437 2 2 0 6 3165 3167 3166 -13438 2 2 0 6 5452 5451 5453 -13439 2 2 0 6 8948 9129 4918 -13440 2 2 0 6 779 783 782 -13441 2 2 0 6 847 848 849 -13442 2 2 0 6 846 1043 848 -13443 2 2 0 6 1475 1478 1477 -13444 2 2 0 6 1979 2342 2516 -13445 2 2 0 6 3327 3328 3326 -13446 2 2 0 6 3595 3607 3608 -13447 2 2 0 6 5774 5775 5776 -13448 2 2 0 6 4858 6234 6232 -13449 2 2 0 6 5787 7123 6325 -13450 2 2 0 6 3416 4564 9281 -13451 2 2 0 6 3870 8943 4803 -13452 2 2 0 6 1045 1539 1540 -13453 2 2 0 6 2009 2010 2011 -13454 2 2 0 6 2136 2149 2339 -13455 2 2 0 6 2948 3326 3325 -13456 2 2 0 6 5963 7810 6554 -13457 2 2 0 6 5509 8538 8536 -13458 2 2 0 6 6249 7126 8602 -13459 2 2 0 6 907 8889 908 -13460 2 2 0 6 2247 2460 8933 -13461 2 2 0 6 662 9201 665 -13462 2 2 0 6 3290 3292 9236 -13463 2 2 0 6 3562 9338 8708 -13464 2 2 0 6 1892 1894 1893 -13465 2 2 0 6 2048 5002 2049 -13466 2 2 0 6 4648 5813 6652 -13467 2 2 0 6 5272 5273 5274 -13468 2 2 0 6 5644 6227 7189 -13469 2 2 0 6 1550 9326 5611 -13470 2 2 0 6 3188 8084 3311 -13471 2 2 0 6 2371 2485 2486 -13472 2 2 0 6 2414 2466 3610 -13473 2 2 0 6 2392 2519 4033 -13474 2 2 0 6 5501 6097 6684 -13475 2 2 0 6 2434 2436 8433 -13476 2 2 0 6 1221 1287 8919 -13477 2 2 0 6 1210 8935 1186 -13478 2 2 0 6 2565 2566 9028 -13479 2 2 0 6 2481 2482 2654 -13480 2 2 0 6 2799 2800 2797 -13481 2 2 0 6 3062 3063 9575 -13482 2 2 0 6 1096 1146 1145 -13483 2 2 0 6 3009 3265 3011 -13484 2 2 0 6 4309 5303 5304 -13485 2 2 0 6 5202 5787 5786 -13486 2 2 0 6 5195 7010 7009 -13487 2 2 0 6 8168 8169 8170 -13488 2 2 0 6 5530 5532 9048 -13489 2 2 0 6 1000 1007 1006 -13490 2 2 0 6 2020 2021 2022 -13491 2 2 0 6 4217 4925 4926 -13492 2 2 0 6 5274 5273 5275 -13493 2 2 0 6 6527 6867 6868 -13494 2 2 0 6 5252 7153 6031 -13495 2 2 0 6 2786 8246 2787 -13496 2 2 0 6 1609 1610 9080 -13497 2 2 0 6 848 850 849 -13498 2 2 0 6 2681 2682 3197 -13499 2 2 0 6 5248 5337 6576 -13500 2 2 0 6 2584 8799 2689 -13501 2 2 0 6 2157 2925 9602 -13502 2 2 0 6 575 576 574 -13503 2 2 0 6 670 673 672 -13504 2 2 0 6 796 800 799 -13505 2 2 0 6 2688 2687 9335 -13506 2 2 0 6 2960 2959 2961 -13507 2 2 0 6 3048 3181 3050 -13508 2 2 0 6 744 746 3523 -13509 2 2 0 6 5727 7138 8844 -13510 2 2 0 6 3099 4744 4326 -13511 2 2 0 6 5655 5657 5656 -13512 2 2 0 6 7273 7274 7511 -13513 2 2 0 6 7815 8897 9419 -13514 2 2 0 6 1783 1805 9462 -13515 2 2 0 6 704 705 707 -13516 2 2 0 6 1651 1653 1652 -13517 2 2 0 6 1890 1892 1891 -13518 2 2 0 6 3441 3650 3649 -13519 2 2 0 6 3730 3731 3732 -13520 2 2 0 6 3576 4039 3578 -13521 2 2 0 6 3736 4059 4559 -13522 2 2 0 6 5342 6373 6375 -13523 2 2 0 6 5439 8508 8507 -13524 2 2 0 6 1548 1551 8615 -13525 2 2 0 6 5446 9005 6633 -13526 2 2 0 6 5849 7519 9272 -13527 2 2 0 6 4824 9925 5628 -13528 2 2 0 6 7613 9713 10161 -13529 2 2 0 6 842 843 841 -13530 2 2 0 6 940 941 942 -13531 2 2 0 6 3172 3695 3173 -13532 2 2 0 6 5019 5906 5020 -13533 2 2 0 6 2800 2801 8759 -13534 2 2 0 6 2463 9489 8688 -13535 2 2 0 6 3583 3585 9509 -13536 2 2 0 6 750 752 813 -13537 2 2 0 6 1612 1614 1613 -13538 2 2 0 6 1560 1750 1562 -13539 2 2 0 6 3562 8881 8714 -13540 2 2 0 6 2376 2377 2378 -13541 2 2 0 6 3550 3915 3914 -13542 2 2 0 6 4796 6242 4797 -13543 2 2 0 6 5444 9005 5446 -13544 2 2 0 6 1652 1653 1660 -13545 2 2 0 6 2101 2100 2116 -13546 2 2 0 6 3284 3285 3286 -13547 2 2 0 6 3703 3704 3705 -13548 2 2 0 6 3422 9315 3423 -13549 2 2 0 6 4039 4496 4040 -13550 2 2 0 6 4535 5795 8302 -13551 2 2 0 6 6133 8331 8334 -13552 2 2 0 6 2024 8727 2028 -13553 2 2 0 6 809 9224 818 -13554 2 2 0 6 7794 8916 8917 -13555 2 2 0 6 683 685 684 -13556 2 2 0 6 1015 1017 1026 -13557 2 2 0 6 600 1917 602 -13558 2 2 0 6 3023 3026 3025 -13559 2 2 0 6 6195 6196 7092 -13560 2 2 0 6 5951 7670 5972 -13561 2 2 0 6 1316 4020 9107 -13562 2 2 0 6 1405 9372 1408 -13563 2 2 0 6 1680 1682 1681 -13564 2 2 0 6 2511 2648 2647 -13565 2 2 0 6 3021 3023 3024 -13566 2 2 0 6 3686 3168 3749 -13567 2 2 0 6 1038 3342 4287 -13568 2 2 0 6 4064 4065 5028 -13569 2 2 0 6 7964 7966 7967 -13570 2 2 0 6 1960 8606 8607 -13571 2 2 0 6 4881 5849 9272 -13572 2 2 0 6 687 688 696 -13573 2 2 0 6 775 784 780 -13574 2 2 0 6 738 1308 768 -13575 2 2 0 6 1694 1697 1696 -13576 2 2 0 6 1288 1354 3620 -13577 2 2 0 6 2847 2848 3155 -13578 2 2 0 6 1046 8435 9209 -13579 2 2 0 6 964 969 968 -13580 2 2 0 6 2123 2128 2145 -13581 2 2 0 6 2390 2455 2400 -13582 2 2 0 6 2578 2747 2580 -13583 2 2 0 6 2642 2777 3059 -13584 2 2 0 6 4212 5098 4594 -13585 2 2 0 6 2637 9225 3646 -13586 2 2 0 6 1662 1664 1663 -13587 2 2 0 6 2656 3571 3570 -13588 2 2 0 6 2730 2732 2731 -13589 2 2 0 6 2146 3634 2338 -13590 2 2 0 6 3734 3901 3900 -13591 2 2 0 6 3879 8063 4605 -13592 2 2 0 6 4540 4995 5046 -13593 2 2 0 6 4268 6204 4288 -13594 2 2 0 6 2049 5002 9557 -13595 2 2 0 6 6101 9700 7024 -13596 2 2 0 6 5166 9743 6765 -13597 2 2 0 6 845 846 847 -13598 2 2 0 6 1001 1045 992 -13599 2 2 0 6 1841 1843 1935 -13600 2 2 0 6 2514 2515 2681 -13601 2 2 0 6 2574 3989 2576 -13602 2 2 0 6 4174 4969 4968 -13603 2 2 0 6 5291 7361 7360 -13604 2 2 0 6 1272 8879 3389 -13605 2 2 0 6 5687 8899 8898 -13606 2 2 0 6 2858 4392 9226 -13607 2 2 0 6 310 311 539 -13608 2 2 0 6 605 606 607 -13609 2 2 0 6 738 768 767 -13610 2 2 0 6 993 1001 992 -13611 2 2 0 6 1233 1268 1267 -13612 2 2 0 6 1678 1680 1679 -13613 2 2 0 6 2236 2515 2514 -13614 2 2 0 6 2840 2843 3102 -13615 2 2 0 6 2829 3149 3039 -13616 2 2 0 6 1907 3564 9368 -13617 2 2 0 6 3898 4278 4279 -13618 2 2 0 6 3306 4692 4183 -13619 2 2 0 6 4145 4741 4761 -13620 2 2 0 6 4873 5309 4874 -13621 2 2 0 6 4584 4583 6021 -13622 2 2 0 6 3748 9230 9231 -13623 2 2 0 6 620 622 623 -13624 2 2 0 6 1128 9151 1223 -13625 2 2 0 6 3594 9184 4955 -13626 2 2 0 6 5581 5583 5582 -13627 2 2 0 6 6861 6862 6863 -13628 2 2 0 6 3818 8983 4893 -13629 2 2 0 6 1368 1369 9158 -13630 2 2 0 6 2452 2453 2454 -13631 2 2 0 6 3103 3936 3935 -13632 2 2 0 6 3313 8758 8538 -13633 2 2 0 6 5067 5973 5069 -13634 2 2 0 6 5734 6218 6219 -13635 2 2 0 6 6415 6679 6678 -13636 2 2 0 6 5649 6825 5651 -13637 2 2 0 6 7786 8916 7794 -13638 2 2 0 6 1814 8986 9291 -13639 2 2 0 6 1675 1676 1677 -13640 2 2 0 6 734 3606 736 -13641 2 2 0 6 5659 5661 5660 -13642 2 2 0 6 6191 6499 6500 -13643 2 2 0 6 6397 7618 6399 -13644 2 2 0 6 3663 9436 4008 -13645 2 2 0 6 4571 8338 9376 -13646 2 2 0 6 6659 10925 10704 -13647 2 2 0 6 599 600 601 -13648 2 2 0 6 1675 1677 3551 -13649 2 2 0 6 5083 5085 5084 -13650 2 2 0 6 3997 5574 5576 -13651 2 2 0 6 5266 5609 5610 -13652 2 2 0 6 4381 4383 9052 -13653 2 2 0 6 2239 8598 8597 -13654 2 2 0 6 3378 4330 9393 -13655 2 2 0 6 4623 6740 9756 -13656 2 2 0 6 1647 1648 1649 -13657 2 2 0 6 1789 1872 1873 -13658 2 2 0 6 2113 2139 2138 -13659 2 2 0 6 2747 2749 2748 -13660 2 2 0 6 2965 2966 3016 -13661 2 2 0 6 962 9306 964 -13662 2 2 0 6 3532 4148 4066 -13663 2 2 0 6 4102 4396 4397 -13664 2 2 0 6 4470 4472 4471 -13665 2 2 0 6 2967 4991 3640 -13666 2 2 0 6 1927 2249 5535 -13667 2 2 0 6 4149 4769 5644 -13668 2 2 0 6 5554 5702 5556 -13669 2 2 0 6 7293 7295 7317 -13670 2 2 0 6 3513 9171 4037 -13671 2 2 0 6 2687 3069 9335 -13672 2 2 0 6 822 825 824 -13673 2 2 0 6 924 925 926 -13674 2 2 0 6 2148 2348 2349 -13675 2 2 0 6 2674 2880 2881 -13676 2 2 0 6 4174 4968 4175 -13677 2 2 0 6 3349 5388 5389 -13678 2 2 0 6 5582 5583 5584 -13679 2 2 0 6 1665 5699 1668 -13680 2 2 0 6 7041 7042 7043 -13681 2 2 0 6 5222 6266 9403 -13682 2 2 0 6 4344 9779 9780 -13683 2 2 0 6 1172 1173 1176 -13684 2 2 0 6 1471 1474 1473 -13685 2 2 0 6 1894 2148 2147 -13686 2 2 0 6 2955 2957 2956 -13687 2 2 0 6 637 3537 3597 -13688 2 2 0 6 981 5608 974 -13689 2 2 0 6 2688 9485 2691 -13690 2 2 0 6 4616 5171 6290 -13691 2 2 0 6 4618 6498 5182 -13692 2 2 0 6 8948 6431 9568 -13693 2 2 0 6 7039 8430 9177 -13694 2 2 0 6 5885 5970 9180 -13695 2 2 0 6 1331 2664 9347 -13696 2 2 0 6 948 949 950 -13697 2 2 0 6 2896 3164 3163 -13698 2 2 0 6 3895 4583 4584 -13699 2 2 0 6 5107 6060 6077 -13700 2 2 0 6 6344 6346 6345 -13701 2 2 0 6 6447 6832 6833 -13702 2 2 0 6 1244 1247 8886 -13703 2 2 0 6 5503 7135 8981 -13704 2 2 0 6 3992 8760 8995 -13705 2 2 0 6 8864 9583 8928 -13706 2 2 0 6 779 1025 783 -13707 2 2 0 6 4068 9293 3691 -13708 2 2 0 6 4472 4474 4473 -13709 2 2 0 6 2774 3034 4478 -13710 2 2 0 6 3722 4553 4554 -13711 2 2 0 6 4126 6000 9585 -13712 2 2 0 6 1325 6402 3924 -13713 2 2 0 6 4526 8066 4529 -13714 2 2 0 6 4862 5420 5438 -13715 2 2 0 6 4739 5503 8981 -13716 2 2 0 6 7180 7181 9957 -13717 2 2 0 6 694 695 698 -13718 2 2 0 6 1871 1963 1964 -13719 2 2 0 6 2455 2568 2567 -13720 2 2 0 6 2598 2872 4023 -13721 2 2 0 6 3529 5728 5727 -13722 2 2 0 6 1218 3506 9003 -13723 2 2 0 6 5734 6219 6438 -13724 2 2 0 6 3812 9316 4332 -13725 2 2 0 6 688 9179 9534 -13726 2 2 0 6 1309 9536 1493 -13727 2 2 0 6 5327 10046 7358 -13728 2 2 0 6 6596 10707 6597 -13729 2 2 0 6 2942 9105 4920 -13730 2 2 0 6 4286 5266 4769 -13731 2 2 0 6 4446 5691 5722 -13732 2 2 0 6 5072 6001 5934 -13733 2 2 0 6 2174 8921 4399 -13734 2 2 0 6 825 831 830 -13735 2 2 0 6 2061 2062 2063 -13736 2 2 0 6 3182 3185 3184 -13737 2 2 0 6 3885 3887 4267 -13738 2 2 0 6 3345 4286 4149 -13739 2 2 0 6 3903 3905 4722 -13740 2 2 0 6 3454 4987 4866 -13741 2 2 0 6 4747 9193 5301 -13742 2 2 0 6 4145 4761 9269 -13743 2 2 0 6 702 703 706 -13744 2 2 0 6 746 747 748 -13745 2 2 0 6 809 818 817 -13746 2 2 0 6 876 877 882 -13747 2 2 0 6 3833 4247 4663 -13748 2 2 0 6 5052 6005 5117 -13749 2 2 0 6 1008 5499 998 -13750 2 2 0 6 5065 9860 9765 -13751 2 2 0 6 4678 6039 6040 -13752 2 2 0 6 7038 7047 7040 -13753 2 2 0 6 2723 3225 8680 -13754 2 2 0 6 1239 8843 1263 -13755 2 2 0 6 306 307 530 -13756 2 2 0 6 852 854 853 -13757 2 2 0 6 1780 1782 1781 -13758 2 2 0 6 1511 1811 1765 -13759 2 2 0 6 1086 5559 1090 -13760 2 2 0 6 5273 5715 5275 -13761 2 2 0 6 1860 9196 1862 -13762 2 2 0 6 3438 3439 8803 -13763 2 2 0 6 1405 1404 9372 -13764 2 2 0 6 1274 9492 1278 -13765 2 2 0 6 783 788 787 -13766 2 2 0 6 844 846 845 -13767 2 2 0 6 1542 1543 1544 -13768 2 2 0 6 4306 5284 5316 -13769 2 2 0 6 5204 5206 5208 -13770 2 2 0 6 7046 7064 7049 -13771 2 2 0 6 5468 5466 9217 -13772 2 2 0 6 8517 9384 8667 -13773 2 2 0 6 1725 5708 9727 -13774 2 2 0 6 2972 3355 9953 -13775 2 2 0 6 859 861 860 -13776 2 2 0 6 938 941 940 -13777 2 2 0 6 1210 1188 1211 -13778 2 2 0 6 1651 1654 1653 -13779 2 2 0 6 1791 1821 1834 -13780 2 2 0 6 2845 3154 3150 -13781 2 2 0 6 3225 3845 3846 -13782 2 2 0 6 1602 3918 3919 -13783 2 2 0 6 4815 5318 8023 -13784 2 2 0 6 1491 1796 9008 -13785 2 2 0 6 3307 9269 3921 -13786 2 2 0 6 662 665 664 -13787 2 2 0 6 712 716 715 -13788 2 2 0 6 2515 2682 2681 -13789 2 2 0 6 2916 3295 2917 -13790 2 2 0 6 3113 3958 3357 -13791 2 2 0 6 766 772 4400 -13792 2 2 0 6 5294 6529 6528 -13793 2 2 0 6 4162 9992 4164 -13794 2 2 0 6 308 447 9139 -13795 2 2 0 6 3362 8556 9841 -13796 2 2 0 6 6026 11049 10816 -13797 2 2 0 6 831 877 876 -13798 2 2 0 6 2057 2059 2064 -13799 2 2 0 6 2570 2923 2922 -13800 2 2 0 6 6561 7158 7213 -13801 2 2 0 6 1617 9093 4416 -13802 2 2 0 6 5490 8536 8538 -13803 2 2 0 6 1639 9302 9307 -13804 2 2 0 6 7416 10685 10572 -13805 2 2 0 6 2058 2060 2059 -13806 2 2 0 6 2710 2713 2711 -13807 2 2 0 6 1187 3531 1330 -13808 2 2 0 6 743 3573 745 -13809 2 2 0 6 2855 4923 3192 -13810 2 2 0 6 6433 9309 6453 -13811 2 2 0 6 4462 5200 9693 -13812 2 2 0 6 987 999 998 -13813 2 2 0 6 2570 2922 2897 -13814 2 2 0 6 3732 3734 3900 -13815 2 2 0 6 2747 5631 2749 -13816 2 2 0 6 4578 5327 5324 -13817 2 2 0 6 2047 2048 2049 -13818 2 2 0 6 2053 2054 2055 -13819 2 2 0 6 1276 4046 9536 -13820 2 2 0 6 4354 9595 4355 -13821 2 2 0 6 5377 7549 5701 -13822 2 2 0 6 596 4453 598 -13823 2 2 0 6 2432 2434 8612 -13824 2 2 0 6 1879 9475 9474 -13825 2 2 0 6 5315 9952 9548 -13826 2 2 0 6 1168 1169 1170 -13827 2 2 0 6 3272 3275 3274 -13828 2 2 0 6 3619 3894 3895 -13829 2 2 0 6 4922 5399 5400 -13830 2 2 0 6 1532 1536 9204 -13831 2 2 0 6 4236 5709 9476 -13832 2 2 0 6 3610 8713 9565 -13833 2 2 0 6 4419 4464 5826 -13834 2 2 0 6 5072 6002 6001 -13835 2 2 0 6 1643 9117 1645 -13836 2 2 0 6 3036 4135 9154 -13837 2 2 0 6 3374 9349 5480 -13838 2 2 0 6 777 779 778 -13839 2 2 0 6 1931 2383 1933 -13840 2 2 0 6 1868 9368 2502 -13841 2 2 0 6 4367 4615 4616 -13842 2 2 0 6 4429 4961 4963 -13843 2 2 0 6 4307 5236 5305 -13844 2 2 0 6 2136 2339 5441 -13845 2 2 0 6 4993 5875 5007 -13846 2 2 0 6 2509 7716 8834 -13847 2 2 0 6 4919 5340 8948 -13848 2 2 0 6 4073 9467 5690 -13849 2 2 0 6 1712 1714 8804 -13850 2 2 0 6 2253 2527 2528 -13851 2 2 0 6 774 3630 777 -13852 2 2 0 6 3788 3789 3790 -13853 2 2 0 6 1754 1815 4455 -13854 2 2 0 6 4816 4818 5893 -13855 2 2 0 6 5775 6201 5776 -13856 2 2 0 6 2437 4427 9355 -13857 2 2 0 6 7042 7058 7044 -13858 2 2 0 6 3119 8910 6292 -13859 2 2 0 6 6314 7368 9378 -13860 2 2 0 6 1384 9576 9175 -13861 2 2 0 6 601 602 603 -13862 2 2 0 6 1768 1870 1871 -13863 2 2 0 6 4381 9052 4762 -13864 2 2 0 6 3185 3457 3186 -13865 2 2 0 6 2059 8908 2064 -13866 2 2 0 6 5011 5169 6610 -13867 2 2 0 6 1126 9151 1128 -13868 2 2 0 6 2741 8934 3507 -13869 2 2 0 6 6443 9288 9833 -13870 2 2 0 6 2893 3193 3721 -13871 2 2 0 6 4100 4101 4102 -13872 2 2 0 6 1126 4166 9151 -13873 2 2 0 6 3298 4269 4447 -13874 2 2 0 6 4269 4728 4447 -13875 2 2 0 6 3915 4731 4730 -13876 2 2 0 6 5364 5367 5366 -13877 2 2 0 6 3748 9231 4204 -13878 2 2 0 6 2045 2048 2047 -13879 2 2 0 6 2049 2051 2050 -13880 2 2 0 6 2453 2510 2454 -13881 2 2 0 6 4197 5018 5019 -13882 2 2 0 6 5832 6018 6019 -13883 2 2 0 6 6041 6051 6042 -13884 2 2 0 6 5794 6281 6280 -13885 2 2 0 6 673 11130 11141 -13886 2 2 0 6 1596 8138 10654 -13887 2 2 0 6 708 712 711 -13888 2 2 0 6 721 722 725 -13889 2 2 0 6 965 966 974 -13890 2 2 0 6 980 986 983 -13891 2 2 0 6 1717 1723 1718 -13892 2 2 0 6 2022 2023 2024 -13893 2 2 0 6 690 9352 8646 -13894 2 2 0 6 2987 2988 3792 -13895 2 2 0 6 7281 7282 7283 -13896 2 2 0 6 3874 8383 4795 -13897 2 2 0 6 4502 8533 4839 -13898 2 2 0 6 1927 5535 9223 -13899 2 2 0 6 331 332 9262 -13900 2 2 0 6 1750 9324 1562 -13901 2 2 0 6 6508 8491 9533 -13902 2 2 0 6 1428 9746 1434 -13903 2 2 0 6 3402 7896 9314 -13904 2 2 0 6 2051 2054 2053 -13905 2 2 0 6 3916 5523 5622 -13906 2 2 0 6 776 8869 781 -13907 2 2 0 6 4490 9333 5080 -13908 2 2 0 6 1610 1612 1613 -13909 2 2 0 6 3025 3027 3029 -13910 2 2 0 6 4552 5417 5418 -13911 2 2 0 6 5579 5581 5582 -13912 2 2 0 6 1870 5700 1963 -13913 2 2 0 6 5089 6106 6098 -13914 2 2 0 6 5962 5963 6553 -13915 2 2 0 6 2582 8799 2584 -13916 2 2 0 6 3849 3851 9159 -13917 2 2 0 6 702 706 1222 -13918 2 2 0 6 1615 1617 1756 -13919 2 2 0 6 1429 1431 1975 -13920 2 2 0 6 2060 2062 2061 -13921 2 2 0 6 2963 2964 2965 -13922 2 2 0 6 4135 5613 9154 -13923 2 2 0 6 3851 4643 9159 -13924 2 2 0 6 1403 1406 9239 -13925 2 2 0 6 801 803 812 -13926 2 2 0 6 865 871 867 -13927 2 2 0 6 928 929 930 -13928 2 2 0 6 2161 2163 2162 -13929 2 2 0 6 2475 2622 2474 -13930 2 2 0 6 2482 2655 2654 -13931 2 2 0 6 3161 4049 4187 -13932 2 2 0 6 7756 10288 7773 -13933 2 2 0 6 1684 1720 1719 -13934 2 2 0 6 4088 4094 9108 -13935 2 2 0 6 5423 5425 7871 -13936 2 2 0 6 2828 3477 9007 -13937 2 2 0 6 1990 9707 5815 -13938 2 2 0 6 1274 3389 9492 -13939 2 2 0 6 774 777 776 -13940 2 2 0 6 820 822 821 -13941 2 2 0 6 2041 2044 2043 -13942 2 2 0 6 2133 2354 2391 -13943 2 2 0 6 2961 2964 2963 -13944 2 2 0 6 5132 6343 5134 -13945 2 2 0 6 5843 10276 5863 -13946 2 2 0 6 1420 10332 1918 -13947 2 2 0 6 1733 1734 1735 -13948 2 2 0 6 4362 4864 4681 -13949 2 2 0 6 4444 5033 4534 -13950 2 2 0 6 5422 7113 6211 -13951 2 2 0 6 5557 9245 8814 -13952 2 2 0 6 2690 9604 8313 -13953 2 2 0 6 3992 4880 8760 -13954 2 2 0 6 4100 4102 9053 -13955 2 2 0 6 5970 6429 9180 -13956 2 2 0 6 5557 5892 9245 -13957 2 2 0 6 3583 9509 9380 -13958 2 2 0 6 8467 10115 10037 -13959 2 2 0 6 2368 2420 2419 -13960 2 2 0 6 2755 3565 2758 -13961 2 2 0 6 5158 6822 6824 -13962 2 2 0 6 5453 7703 6437 -13963 2 2 0 6 2420 8892 2421 -13964 2 2 0 6 1681 1683 1690 -13965 2 2 0 6 3156 3718 3719 -13966 2 2 0 6 2891 3194 4064 -13967 2 2 0 6 3802 4235 4236 -13968 2 2 0 6 5452 5453 6389 -13969 2 2 0 6 6452 10103 10180 -13970 2 2 0 6 6218 8410 6219 -13971 2 2 0 6 4459 6520 8982 -13972 2 2 0 6 1861 1863 9223 -13973 2 2 0 6 6577 10625 6640 -13974 2 2 0 6 944 945 946 -13975 2 2 0 6 1720 1769 1768 -13976 2 2 0 6 2457 2637 2458 -13977 2 2 0 6 2708 2710 2709 -13978 2 2 0 6 2635 2730 2729 -13979 2 2 0 6 2946 2948 2947 -13980 2 2 0 6 2858 2967 3639 -13981 2 2 0 6 681 4449 683 -13982 2 2 0 6 4369 4371 4520 -13983 2 2 0 6 4647 5154 4649 -13984 2 2 0 6 2609 2811 9361 -13985 2 2 0 6 6463 8113 8114 -13986 2 2 0 6 4243 9661 4244 -13987 2 2 0 6 1880 1976 2595 -13988 2 2 0 6 6316 7392 7227 -13989 2 2 0 6 6461 6462 8551 -13990 2 2 0 6 4730 6193 9193 -13991 2 2 0 6 7791 8141 9793 -13992 2 2 0 6 7821 10710 10741 -13993 2 2 0 6 950 953 952 -13994 2 2 0 6 954 957 956 -13995 2 2 0 6 1614 1616 1615 -13996 2 2 0 6 4479 4024 4480 -13997 2 2 0 6 4149 4286 4769 -13998 2 2 0 6 5266 5610 7145 -13999 2 2 0 6 4481 4483 8845 -14000 2 2 0 6 1828 1980 9176 -14001 2 2 0 6 5687 9400 8899 -14002 2 2 0 6 1166 1167 1168 -14003 2 2 0 6 1234 1262 1260 -14004 2 2 0 6 1544 1545 1546 -14005 2 2 0 6 1682 1684 1683 -14006 2 2 0 6 2059 2060 2061 -14007 2 2 0 6 2562 2807 8041 -14008 2 2 0 6 2853 8954 2854 -14009 2 2 0 6 1546 1547 1548 -14010 2 2 0 6 1548 1549 1550 -14011 2 2 0 6 3665 3667 3666 -14012 2 2 0 6 7837 7838 7839 -14013 2 2 0 6 2411 7887 2471 -14014 2 2 0 6 3477 9066 9189 -14015 2 2 0 6 2270 2272 9391 -14016 2 2 0 6 8404 9070 9632 -14017 2 2 0 6 1269 1270 1283 -14018 2 2 0 6 1614 1615 1613 -14019 2 2 0 6 692 694 2313 -14020 2 2 0 6 2338 2482 2481 -14021 2 2 0 6 2554 2629 2556 -14022 2 2 0 6 4482 4484 4483 -14023 2 2 0 6 5569 5571 5900 -14024 2 2 0 6 666 669 668 -14025 2 2 0 6 1672 1685 1686 -14026 2 2 0 6 3887 5070 4267 -14027 2 2 0 6 4576 4578 5324 -14028 2 2 0 6 4988 6506 4989 -14029 2 2 0 6 2059 2061 8908 -14030 2 2 0 6 5729 10073 6555 -14031 2 2 0 6 3000 4365 8636 -14032 2 2 0 6 2637 2786 2638 -14033 2 2 0 6 3513 8954 9171 -14034 2 2 0 6 3625 8437 9584 -14035 2 2 0 6 820 3559 9259 -14036 2 2 0 6 4433 4435 4434 -14037 2 2 0 6 580 9608 1035 -14038 2 2 0 6 4679 7710 7711 -14039 2 2 0 6 3211 9188 4003 -14040 2 2 0 6 3466 3469 9379 -14041 2 2 0 6 956 957 958 -14042 2 2 0 6 5237 7085 7084 -14043 2 2 0 6 1436 1441 1516 -14044 2 2 0 6 4335 4337 4336 -14045 2 2 0 6 4023 4024 4479 -14046 2 2 0 6 4844 5242 5330 -14047 2 2 0 6 7040 7042 7041 -14048 2 2 0 6 5280 7176 9513 -14049 2 2 0 6 4225 4893 9046 -14050 2 2 0 6 1411 1498 9241 -14051 2 2 0 6 337 338 9292 -14052 2 2 0 6 1969 9329 3532 -14053 2 2 0 6 819 820 821 -14054 2 2 0 6 2031 2034 2035 -14055 2 2 0 6 2686 2895 2896 -14056 2 2 0 6 3682 3945 3996 -14057 2 2 0 6 4244 4258 4257 -14058 2 2 0 6 6249 8602 9709 -14059 2 2 0 6 4807 4808 5342 -14060 2 2 0 6 1263 8843 4046 -14061 2 2 0 6 4414 8372 9051 -14062 2 2 0 6 932 933 934 -14063 2 2 0 6 1712 1710 1713 -14064 2 2 0 6 2811 3302 3619 -14065 2 2 0 6 2146 2338 2337 -14066 2 2 0 6 2792 4433 4432 -14067 2 2 0 6 3280 3282 3281 -14068 2 2 0 6 4277 5236 4307 -14069 2 2 0 6 6592 7719 8572 -14070 2 2 0 6 4225 9046 5139 -14071 2 2 0 6 1863 1927 9223 -14072 2 2 0 6 936 937 938 -14073 2 2 0 6 2037 2036 2078 -14074 2 2 0 6 2803 2861 2801 -14075 2 2 0 6 2751 4026 2753 -14076 2 2 0 6 1725 5511 5708 -14077 2 2 0 6 4160 4841 4772 -14078 2 2 0 6 4981 4982 5072 -14079 2 2 0 6 4861 5419 4862 -14080 2 2 0 6 5720 5839 5721 -14081 2 2 0 6 6039 6041 6040 -14082 2 2 0 6 6157 6523 6771 -14083 2 2 0 6 4148 7109 7221 -14084 2 2 0 6 1385 9175 1388 -14085 2 2 0 6 8648 9297 8651 -14086 2 2 0 6 5457 9409 5460 -14087 2 2 0 6 803 810 11018 -14088 2 2 0 6 701 705 704 -14089 2 2 0 6 981 982 992 -14090 2 2 0 6 2828 9007 2826 -14091 2 2 0 6 2673 2880 2674 -14092 2 2 0 6 4797 4990 4798 -14093 2 2 0 6 4337 5024 5023 -14094 2 2 0 6 5218 5252 6031 -14095 2 2 0 6 3496 10074 3801 -14096 2 2 0 6 3450 8585 8586 -14097 2 2 0 6 1540 1541 1542 -14098 2 2 0 6 756 758 1800 -14099 2 2 0 6 2157 2409 2925 -14100 2 2 0 6 4948 5017 5914 -14101 2 2 0 6 2597 8277 2953 -14102 2 2 0 6 5592 8741 9158 -14103 2 2 0 6 8471 10314 10328 -14104 2 2 0 6 581 583 582 -14105 2 2 0 6 934 937 936 -14106 2 2 0 6 946 949 948 -14107 2 2 0 6 2354 2611 2391 -14108 2 2 0 6 4802 6263 6261 -14109 2 2 0 6 4806 5908 5907 -14110 2 2 0 6 5085 5814 6410 -14111 2 2 0 6 4107 8817 5345 -14112 2 2 0 6 1241 1242 8986 -14113 2 2 0 6 1628 9155 1630 -14114 2 2 0 6 2391 8939 2518 -14115 2 2 0 6 4670 4711 4710 -14116 2 2 0 6 4194 4957 4958 -14117 2 2 0 6 4440 5377 4441 -14118 2 2 0 6 1991 3658 9913 -14119 2 2 0 6 3566 9096 6407 -14120 2 2 0 6 6429 8009 9358 -14121 2 2 0 6 8907 9775 9412 -14122 2 2 0 6 1256 9857 1282 -14123 2 2 0 6 332 333 535 -14124 2 2 0 6 2013 2014 2015 -14125 2 2 0 6 2407 3006 3005 -14126 2 2 0 6 3283 3285 3284 -14127 2 2 0 6 5227 6243 5373 -14128 2 2 0 6 1796 1880 9438 -14129 2 2 0 6 821 822 824 -14130 2 2 0 6 1137 2597 2596 -14131 2 2 0 6 1160 1186 1187 -14132 2 2 0 6 677 1753 679 -14133 2 2 0 6 2023 2025 2024 -14134 2 2 0 6 4977 5939 9350 -14135 2 2 0 6 3893 4461 4462 -14136 2 2 0 6 4645 5158 4646 -14137 2 2 0 6 4724 5219 4725 -14138 2 2 0 6 5803 5804 5805 -14139 2 2 0 6 5046 5949 5950 -14140 2 2 0 6 5487 6224 6225 -14141 2 2 0 6 3930 5040 6450 -14142 2 2 0 6 5018 5778 6614 -14143 2 2 0 6 7037 7038 7039 -14144 2 2 0 6 3554 3916 9266 -14145 2 2 0 6 2513 9540 9290 -14146 2 2 0 6 6412 9403 9640 -14147 2 2 0 6 2207 4917 9907 -14148 2 2 0 6 2747 9164 5631 -14149 2 2 0 6 3061 4162 4163 -14150 2 2 0 6 2510 3693 5566 -14151 2 2 0 6 4700 5467 6207 -14152 2 2 0 6 5958 7371 7372 -14153 2 2 0 6 1220 8721 3388 -14154 2 2 0 6 3270 3271 3272 -14155 2 2 0 6 4969 9405 7941 -14156 2 2 0 6 1354 3621 3620 -14157 2 2 0 6 3457 4196 4197 -14158 2 2 0 6 3487 9425 8763 -14159 2 2 0 6 3649 5857 5858 -14160 2 2 0 6 2026 2029 8722 -14161 2 2 0 6 8834 10243 10112 -14162 2 2 0 6 4195 4739 4779 -14163 2 2 0 6 9228 9892 9602 -14164 2 2 0 6 6201 7021 6691 -14165 2 2 0 6 3105 3108 9207 -14166 2 2 0 6 6146 7925 6145 -14167 2 2 0 6 5723 5838 8684 -14168 2 2 0 6 1419 1497 9022 -14169 2 2 0 6 818 820 819 -14170 2 2 0 6 2037 2039 2038 -14171 2 2 0 6 2252 2601 2527 -14172 2 2 0 6 3728 3729 3730 -14173 2 2 0 6 3016 3888 3298 -14174 2 2 0 6 4423 5262 5263 -14175 2 2 0 6 4474 5356 4489 -14176 2 2 0 6 5262 5264 6198 -14177 2 2 0 6 1501 2216 2215 -14178 2 2 0 6 4320 4321 4619 -14179 2 2 0 6 4813 5318 4815 -14180 2 2 0 6 4416 6476 4859 -14181 2 2 0 6 1769 1771 9282 -14182 2 2 0 6 6178 8242 8244 -14183 2 2 0 6 1242 8886 8986 -14184 2 2 0 6 325 326 537 -14185 2 2 0 6 6421 9771 8535 -14186 2 2 0 6 2830 3563 9002 -14187 2 2 0 6 578 581 580 -14188 2 2 0 6 1702 1705 1704 -14189 2 2 0 6 2519 2685 2686 -14190 2 2 0 6 2881 3172 3173 -14191 2 2 0 6 2266 9067 2268 -14192 2 2 0 6 3474 3819 3820 -14193 2 2 0 6 1756 4416 4859 -14194 2 2 0 6 5294 5295 5293 -14195 2 2 0 6 1738 8103 4345 -14196 2 2 0 6 3534 8946 8945 -14197 2 2 0 6 334 457 9122 -14198 2 2 0 6 2025 2030 2031 -14199 2 2 0 6 3395 4424 9049 -14200 2 2 0 6 3380 4160 4159 -14201 2 2 0 6 4258 4311 4312 -14202 2 2 0 6 3810 4617 5011 -14203 2 2 0 6 4476 5044 5043 -14204 2 2 0 6 4711 4713 5196 -14205 2 2 0 6 4111 5255 5254 -14206 2 2 0 6 4700 5466 5467 -14207 2 2 0 6 8182 8653 8185 -14208 2 2 0 6 1239 1253 8843 -14209 2 2 0 6 7035 8690 9189 -14210 2 2 0 6 2950 9783 9445 -14211 2 2 0 6 952 953 954 -14212 2 2 0 6 969 973 972 -14213 2 2 0 6 1999 2002 2001 -14214 2 2 0 6 2869 3100 2870 -14215 2 2 0 6 5586 5587 6397 -14216 2 2 0 6 4766 7139 6244 -14217 2 2 0 6 4989 7917 5946 -14218 2 2 0 6 2399 8339 10892 -14219 2 2 0 6 8583 8825 8824 -14220 2 2 0 6 4896 5957 9293 -14221 2 2 0 6 4866 9234 4867 -14222 2 2 0 6 4210 4911 9327 -14223 2 2 0 6 2307 9290 2346 -14224 2 2 0 6 4481 8845 5816 -14225 2 2 0 6 2530 2785 2532 -14226 2 2 0 6 2732 2858 2733 -14227 2 2 0 6 3295 3906 3296 -14228 2 2 0 6 3052 4150 3053 -14229 2 2 0 6 9184 9882 9950 -14230 2 2 0 6 4042 9173 5036 -14231 2 2 0 6 4288 5191 4407 -14232 2 2 0 6 4591 6687 6686 -14233 2 2 0 6 598 8686 600 -14234 2 2 0 6 685 688 687 -14235 2 2 0 6 2045 2047 2046 -14236 2 2 0 6 2848 3156 3155 -14237 2 2 0 6 3553 9303 5522 -14238 2 2 0 6 1057 9308 3593 -14239 2 2 0 6 2960 2961 2963 -14240 2 2 0 6 3911 3954 3953 -14241 2 2 0 6 3296 3906 4421 -14242 2 2 0 6 4053 4982 4981 -14243 2 2 0 6 7303 7304 7305 -14244 2 2 0 6 2298 9250 2305 -14245 2 2 0 6 338 339 407 -14246 2 2 0 6 748 749 750 -14247 2 2 0 6 2057 2058 2059 -14248 2 2 0 6 2623 2781 2622 -14249 2 2 0 6 2680 3345 4149 -14250 2 2 0 6 4150 4857 4151 -14251 2 2 0 6 5576 5961 5962 -14252 2 2 0 6 3980 8030 9715 -14253 2 2 0 6 1374 9016 3498 -14254 2 2 0 6 1398 1399 9547 -14255 2 2 0 6 1483 1486 1485 -14256 2 2 0 6 1659 1661 1662 -14257 2 2 0 6 3163 3164 3165 -14258 2 2 0 6 3286 3288 3287 -14259 2 2 0 6 3252 4233 3879 -14260 2 2 0 6 5083 5814 5085 -14261 2 2 0 6 5309 6507 5310 -14262 2 2 0 6 1014 1015 9432 -14263 2 2 0 6 5212 9749 5214 -14264 2 2 0 6 2760 2867 2866 -14265 2 2 0 6 3027 3031 3030 -14266 2 2 0 6 3195 3553 3554 -14267 2 2 0 6 3677 3678 3679 -14268 2 2 0 6 628 631 9072 -14269 2 2 0 6 631 6020 9072 -14270 2 2 0 6 3284 3286 3287 -14271 2 2 0 6 3786 3787 3788 -14272 2 2 0 6 3851 3853 4643 -14273 2 2 0 6 4468 5237 4986 -14274 2 2 0 6 5769 6975 5771 -14275 2 2 0 6 7568 7572 7573 -14276 2 2 0 6 6408 9509 9414 -14277 2 2 0 6 3737 4444 4063 -14278 2 2 0 6 4053 4981 4980 -14279 2 2 0 6 3970 5280 3971 -14280 2 2 0 6 1962 5359 4956 -14281 2 2 0 6 4723 5775 5774 -14282 2 2 0 6 4859 6246 4860 -14283 2 2 0 6 5587 6398 6397 -14284 2 2 0 6 7044 7046 7045 -14285 2 2 0 6 6170 7548 6854 -14286 2 2 0 6 1679 1680 1681 -14287 2 2 0 6 2191 2365 2366 -14288 2 2 0 6 4965 5648 5647 -14289 2 2 0 6 7145 5610 7146 -14290 2 2 0 6 4233 10125 10240 -14291 2 2 0 6 2527 9215 2528 -14292 2 2 0 6 5575 8655 9862 -14293 2 2 0 6 692 693 694 -14294 2 2 0 6 817 818 819 -14295 2 2 0 6 1539 1541 1540 -14296 2 2 0 6 2015 2016 2018 -14297 2 2 0 6 5212 5214 5213 -14298 2 2 0 6 4819 7179 6251 -14299 2 2 0 6 6398 7334 7598 -14300 2 2 0 6 4388 9037 5317 -14301 2 2 0 6 5670 9625 7903 -14302 2 2 0 6 830 831 876 -14303 2 2 0 6 3021 3022 3023 -14304 2 2 0 6 4634 5151 5152 -14305 2 2 0 6 4200 5077 7816 -14306 2 2 0 6 7318 7320 7319 -14307 2 2 0 6 4759 8785 8354 -14308 2 2 0 6 2301 9114 2665 -14309 2 2 0 6 1386 9077 9418 -14310 2 2 0 6 973 980 979 -14311 2 2 0 6 3556 9266 3920 -14312 2 2 0 6 1260 8879 1272 -14313 2 2 0 6 2879 9096 3566 -14314 2 2 0 6 2747 2578 9164 -14315 2 2 0 6 2728 9592 3228 -14316 2 2 0 6 1057 3593 1059 -14317 2 2 0 6 2128 2146 2145 -14318 2 2 0 6 710 717 3615 -14319 2 2 0 6 3532 7109 4148 -14320 2 2 0 6 2061 9054 8908 -14321 2 2 0 6 5689 8534 6380 -14322 2 2 0 6 2033 8854 3353 -14323 2 2 0 6 707 705 708 -14324 2 2 0 6 942 945 944 -14325 2 2 0 6 4192 4193 4195 -14326 2 2 0 6 3919 4742 4743 -14327 2 2 0 6 5792 5794 5793 -14328 2 2 0 6 6173 6033 6174 -14329 2 2 0 6 6243 5227 7099 -14330 2 2 0 6 5393 7177 7176 -14331 2 2 0 6 3655 9140 8140 -14332 2 2 0 6 4027 10059 9868 -14333 2 2 0 6 1216 1217 1225 -14334 2 2 0 6 2527 2601 2723 -14335 2 2 0 6 4500 5136 5135 -14336 2 2 0 6 5136 6604 5137 -14337 2 2 0 6 4727 5314 7260 -14338 2 2 0 6 3271 8350 3272 -14339 2 2 0 6 3892 5732 8895 -14340 2 2 0 6 3281 3282 9520 -14341 2 2 0 6 4714 5203 9569 -14342 2 2 0 6 1009 1021 1020 -14343 2 2 0 6 1700 1698 1701 -14344 2 2 0 6 2996 2997 3230 -14345 2 2 0 6 3278 3279 3280 -14346 2 2 0 6 3923 5762 7374 -14347 2 2 0 6 2665 9114 9115 -14348 2 2 0 6 3160 4207 9216 -14349 2 2 0 6 1823 9229 2443 -14350 2 2 0 6 1283 1284 1293 -14351 2 2 0 6 2159 4019 2161 -14352 2 2 0 6 800 5629 806 -14353 2 2 0 6 3202 9242 4072 -14354 2 2 0 6 3884 4288 4407 -14355 2 2 0 6 6158 6159 6160 -14356 2 2 0 6 6584 8308 8309 -14357 2 2 0 6 3632 3810 9178 -14358 2 2 0 6 330 331 415 -14359 2 2 0 6 334 335 457 -14360 2 2 0 6 1225 1226 1241 -14361 2 2 0 6 3013 3629 3635 -14362 2 2 0 6 2379 2390 2380 -14363 2 2 0 6 3030 3031 3032 -14364 2 2 0 6 3070 4101 4100 -14365 2 2 0 6 3884 4268 4288 -14366 2 2 0 6 3152 4495 3340 -14367 2 2 0 6 5623 5624 5622 -14368 2 2 0 6 4451 5736 5737 -14369 2 2 0 6 2995 9095 7861 -14370 2 2 0 6 1008 8644 5499 -14371 2 2 0 6 4100 9053 4870 -14372 2 2 0 6 322 323 9218 -14373 2 2 0 6 1964 2252 2253 -14374 2 2 0 6 3309 3931 4292 -14375 2 2 0 6 1675 3551 9326 -14376 2 2 0 6 4143 5202 5786 -14377 2 2 0 6 327 481 9255 -14378 2 2 0 6 5109 6099 5129 -14379 2 2 0 6 8781 9104 8782 -14380 2 2 0 6 2723 8680 9215 -14381 2 2 0 6 733 735 9581 -14382 2 2 0 6 1042 1141 1142 -14383 2 2 0 6 1655 1657 3508 -14384 2 2 0 6 5554 9142 7661 -14385 2 2 0 6 2163 2214 2213 -14386 2 2 0 6 3845 9345 4645 -14387 2 2 0 6 1691 3385 1692 -14388 2 2 0 6 3796 3794 4999 -14389 2 2 0 6 5679 5827 5819 -14390 2 2 0 6 7474 7476 7475 -14391 2 2 0 6 2848 9587 3718 -14392 2 2 0 6 5979 9161 10148 -14393 2 2 0 6 1681 1682 1683 -14394 2 2 0 6 2881 3173 3174 -14395 2 2 0 6 4488 4648 4647 -14396 2 2 0 6 1210 1232 5688 -14397 2 2 0 6 6753 6762 6763 -14398 2 2 0 6 3079 10250 9493 -14399 2 2 0 6 327 328 481 -14400 2 2 0 6 2378 2379 2380 -14401 2 2 0 6 3622 4175 9211 -14402 2 2 0 6 3847 3849 4644 -14403 2 2 0 6 2432 2433 2434 -14404 2 2 0 6 964 3656 969 -14405 2 2 0 6 4866 4987 7273 -14406 2 2 0 6 6063 7364 7365 -14407 2 2 0 6 3362 6630 8556 -14408 2 2 0 6 1890 2873 10118 -14409 2 2 0 6 880 888 884 -14410 2 2 0 6 2732 2967 2858 -14411 2 2 0 6 2697 3220 3219 -14412 2 2 0 6 5085 6410 9099 -14413 2 2 0 6 2097 2106 4515 -14414 2 2 0 6 2694 4998 4460 -14415 2 2 0 6 3728 8762 3908 -14416 2 2 0 6 1289 9147 1325 -14417 2 2 0 6 2034 9377 2036 -14418 2 2 0 6 5617 9609 6390 -14419 2 2 0 6 930 933 932 -14420 2 2 0 6 2030 2034 2031 -14421 2 2 0 6 2808 3315 3015 -14422 2 2 0 6 5182 6498 9212 -14423 2 2 0 6 3639 3640 4469 -14424 2 2 0 6 5220 5219 6189 -14425 2 2 0 6 3403 3407 8955 -14426 2 2 0 6 1251 1252 1254 -14427 2 2 0 6 2424 2426 2425 -14428 2 2 0 6 4396 4470 4397 -14429 2 2 0 6 4815 4817 4816 -14430 2 2 0 6 2215 8752 3688 -14431 2 2 0 6 1605 1609 9194 -14432 2 2 0 6 1814 9291 1816 -14433 2 2 0 6 688 697 696 -14434 2 2 0 6 1507 1807 1808 -14435 2 2 0 6 2016 2019 2018 -14436 2 2 0 6 2518 2685 2519 -14437 2 2 0 6 2867 2869 2868 -14438 2 2 0 6 3025 3026 3027 -14439 2 2 0 6 3782 3783 3784 -14440 2 2 0 6 2421 8892 2424 -14441 2 2 0 6 4542 9166 9167 -14442 2 2 0 6 1299 3659 9424 -14443 2 2 0 6 1118 3493 8951 -14444 2 2 0 6 1001 1539 1045 -14445 2 2 0 6 3881 4544 4543 -14446 2 2 0 6 4110 5088 5087 -14447 2 2 0 6 3845 3847 9345 -14448 2 2 0 6 2193 8652 2503 -14449 2 2 0 6 2599 2600 9096 -14450 2 2 0 6 5761 9719 9989 -14451 2 2 0 6 9324 9461 9460 -14452 2 2 0 6 1170 1171 1172 -14453 2 2 0 6 1782 1784 1783 -14454 2 2 0 6 2047 2049 2050 -14455 2 2 0 6 3105 3106 3107 -14456 2 2 0 6 1376 3922 8890 -14457 2 2 0 6 5795 8303 8302 -14458 2 2 0 6 8996 9583 9227 -14459 2 2 0 6 1353 1511 1437 -14460 2 2 0 6 1503 1780 1781 -14461 2 2 0 6 4993 5921 5875 -14462 2 2 0 6 4828 6313 6314 -14463 2 2 0 6 4826 6675 5993 -14464 2 2 0 6 2963 2965 9252 -14465 2 2 0 6 6590 10389 10391 -14466 2 2 0 6 6787 6788 6789 -14467 2 2 0 6 3251 3878 9553 -14468 2 2 0 6 2110 2109 9267 -14469 2 2 0 6 3181 9720 3182 -14470 2 2 0 6 1654 1656 1655 -14471 2 2 0 6 5404 5406 7544 -14472 2 2 0 6 4661 7709 4679 -14473 2 2 0 6 3901 9059 4724 -14474 2 2 0 6 4087 9219 5589 -14475 2 2 0 6 3272 3274 3273 -14476 2 2 0 6 3641 4191 4194 -14477 2 2 0 6 3206 8336 4921 -14478 2 2 0 6 2817 9338 2819 -14479 2 2 0 6 1660 8196 6521 -14480 2 2 0 6 5014 5015 5016 -14481 2 2 0 6 4518 4558 5871 -14482 2 2 0 6 3959 3534 8945 -14483 2 2 0 6 4024 9711 4900 -14484 2 2 0 6 1849 1851 9958 -14485 2 2 0 6 2014 2108 2016 -14486 2 2 0 6 2855 9227 4923 -14487 2 2 0 6 4432 4434 6469 -14488 2 2 0 6 970 4133 8443 -14489 2 2 0 6 5509 8842 8841 -14490 2 2 0 6 8404 9118 9070 -14491 2 2 0 6 5122 6733 9486 -14492 2 2 0 6 4923 9227 9583 -14493 2 2 0 6 1097 9586 5731 -14494 2 2 0 6 846 848 847 -14495 2 2 0 6 2021 2023 2022 -14496 2 2 0 6 2055 2057 2056 -14497 2 2 0 6 4024 4900 4480 -14498 2 2 0 6 4825 5993 5994 -14499 2 2 0 6 8861 9882 9184 -14500 2 2 0 6 4807 5342 9908 -14501 2 2 0 6 725 728 729 -14502 2 2 0 6 568 3764 570 -14503 2 2 0 6 4435 4807 4436 -14504 2 2 0 6 4728 6181 5198 -14505 2 2 0 6 3848 9247 5811 -14506 2 2 0 6 5536 9298 9200 -14507 2 2 0 6 3290 9236 9383 -14508 2 2 0 6 1549 9326 1550 -14509 2 2 0 6 2132 2354 2133 -14510 2 2 0 6 2567 2568 2847 -14511 2 2 0 6 4454 5298 5754 -14512 2 2 0 6 5304 7079 6551 -14513 2 2 0 6 3773 8938 4265 -14514 2 2 0 6 688 9534 697 -14515 2 2 0 6 1990 1992 9707 -14516 2 2 0 6 1653 1654 1655 -14517 2 2 0 6 1655 1656 1657 -14518 2 2 0 6 2051 2053 2052 -14519 2 2 0 6 3276 3279 3278 -14520 2 2 0 6 2861 3113 3357 -14521 2 2 0 6 4718 5229 5228 -14522 2 2 0 6 5111 5781 5782 -14523 2 2 0 6 6033 6578 6174 -14524 2 2 0 6 1318 9221 9222 -14525 2 2 0 6 3549 10200 4344 -14526 2 2 0 6 232 233 416 -14527 2 2 0 6 1142 1159 1160 -14528 2 2 0 6 1254 1255 1269 -14529 2 2 0 6 1554 1587 1556 -14530 2 2 0 6 2445 2446 2444 -14531 2 2 0 6 4059 5025 4559 -14532 2 2 0 6 4462 4714 5200 -14533 2 2 0 6 5199 5198 6206 -14534 2 2 0 6 3618 5672 9090 -14535 2 2 0 6 2453 9240 3693 -14536 2 2 0 6 5388 8087 9890 -14537 2 2 0 6 7036 10834 7038 -14538 2 2 0 6 6430 10317 8010 -14539 2 2 0 6 697 701 700 -14540 2 2 0 6 3766 4218 4220 -14541 2 2 0 6 4321 4620 4619 -14542 2 2 0 6 5930 6365 6364 -14543 2 2 0 6 5168 6871 6870 -14544 2 2 0 6 6392 6393 8761 -14545 2 2 0 6 3435 3438 10164 -14546 2 2 0 6 6489 9253 9945 -14547 2 2 0 6 7935 7936 10228 -14548 2 2 0 6 1901 1923 1902 -14549 2 2 0 6 4249 6573 5175 -14550 2 2 0 6 6191 6500 6501 -14551 2 2 0 6 7039 7040 7041 -14552 2 2 0 6 6285 10390 9234 -14553 2 2 0 6 2854 8954 3513 -14554 2 2 0 6 643 644 8959 -14555 2 2 0 6 1486 1501 1500 -14556 2 2 0 6 1944 2443 2444 -14557 2 2 0 6 2369 2524 2523 -14558 2 2 0 6 4101 4396 4102 -14559 2 2 0 6 4603 5109 4661 -14560 2 2 0 6 5754 6480 6479 -14561 2 2 0 6 3353 8854 8855 -14562 2 2 0 6 338 407 9292 -14563 2 2 0 6 5801 9502 8545 -14564 2 2 0 6 5528 9163 9972 -14565 2 2 0 6 390 391 470 -14566 2 2 0 6 752 753 754 -14567 2 2 0 6 2811 3619 9361 -14568 2 2 0 6 3319 4840 3322 -14569 2 2 0 6 4728 5198 4729 -14570 2 2 0 6 5203 5204 9044 -14571 2 2 0 6 8687 8688 10080 -14572 2 2 0 6 824 825 830 -14573 2 2 0 6 725 729 837 -14574 2 2 0 6 794 1921 796 -14575 2 2 0 6 2212 9384 9473 -14576 2 2 0 6 3966 5809 5810 -14577 2 2 0 6 7653 7736 7652 -14578 2 2 0 6 3499 8720 5565 -14579 2 2 0 6 4215 9136 5105 -14580 2 2 0 6 324 325 9172 -14581 2 2 0 6 3810 5011 9178 -14582 2 2 0 6 2186 2367 2187 -14583 2 2 0 6 4519 5845 5040 -14584 2 2 0 6 7034 7036 7035 -14585 2 2 0 6 5085 9099 5086 -14586 2 2 0 6 574 577 9447 -14587 2 2 0 6 3806 4603 4259 -14588 2 2 0 6 4624 4677 4623 -14589 2 2 0 6 3890 4270 4723 -14590 2 2 0 6 4017 4752 4754 -14591 2 2 0 6 3699 3701 5026 -14592 2 2 0 6 7043 7042 7044 -14593 2 2 0 6 5307 7225 7197 -14594 2 2 0 6 7299 7300 7301 -14595 2 2 0 6 5488 8538 8758 -14596 2 2 0 6 1020 1031 1040 -14597 2 2 0 6 2880 3172 2881 -14598 2 2 0 6 2742 9243 2903 -14599 2 2 0 6 4739 8981 4779 -14600 2 2 0 6 4867 9234 5416 -14601 2 2 0 6 4080 4916 9379 -14602 2 2 0 6 878 886 9437 -14603 2 2 0 6 336 337 536 -14604 2 2 0 6 3589 8980 9346 -14605 2 2 0 6 2716 2830 2831 -14606 2 2 0 6 5181 5234 5233 -14607 2 2 0 6 3504 9174 3516 -14608 2 2 0 6 5210 6185 5212 -14609 2 2 0 6 2797 2800 9273 -14610 2 2 0 6 8958 9735 5920 -14611 2 2 0 6 3282 3283 3284 -14612 2 2 0 6 3100 4048 3101 -14613 2 2 0 6 4261 5166 5167 -14614 2 2 0 6 5508 6062 5507 -14615 2 2 0 6 5239 5240 6188 -14616 2 2 0 6 3750 4106 4581 -14617 2 2 0 6 1205 6240 7948 -14618 2 2 0 6 908 8889 911 -14619 2 2 0 6 3703 3705 4568 -14620 2 2 0 6 323 324 423 -14621 2 2 0 6 750 751 752 -14622 2 2 0 6 2127 2132 2133 -14623 2 2 0 6 3036 3716 4134 -14624 2 2 0 6 3846 4645 4646 -14625 2 2 0 6 842 844 843 -14626 2 2 0 6 1808 1909 1910 -14627 2 2 0 6 4242 4244 4257 -14628 2 2 0 6 4817 4950 4818 -14629 2 2 0 6 4976 4977 5951 -14630 2 2 0 6 6415 6680 6679 -14631 2 2 0 6 7305 7307 7315 -14632 2 2 0 6 6250 7953 7952 -14633 2 2 0 6 4234 8109 4235 -14634 2 2 0 6 1544 1543 1545 -14635 2 2 0 6 1671 1716 1685 -14636 2 2 0 6 1903 2185 4494 -14637 2 2 0 6 4109 4826 4825 -14638 2 2 0 6 2676 9899 2765 -14639 2 2 0 6 5340 6431 8948 -14640 2 2 0 6 3243 3245 3246 -14641 2 2 0 6 2686 3162 8870 -14642 2 2 0 6 4811 4813 4812 -14643 2 2 0 6 2599 9096 2879 -14644 2 2 0 6 5722 9264 9497 -14645 2 2 0 6 6407 9509 6408 -14646 2 2 0 6 607 608 8577 -14647 2 2 0 6 4703 5287 5260 -14648 2 2 0 6 5139 9046 7746 -14649 2 2 0 6 1145 1146 1153 -14650 2 2 0 6 2081 2128 2123 -14651 2 2 0 6 2596 2597 2598 -14652 2 2 0 6 806 9224 809 -14653 2 2 0 6 4885 5297 5370 -14654 2 2 0 6 6188 7071 7202 -14655 2 2 0 6 7301 7302 7303 -14656 2 2 0 6 2794 9898 2795 -14657 2 2 0 6 1809 9951 4502 -14658 2 2 0 6 1192 1216 1191 -14659 2 2 0 6 1044 3478 4171 -14660 2 2 0 6 3226 3847 3845 -14661 2 2 0 6 4186 5620 5027 -14662 2 2 0 6 4686 6296 5190 -14663 2 2 0 6 5746 5799 9941 -14664 2 2 0 6 1314 1316 9107 -14665 2 2 0 6 4555 9249 9094 -14666 2 2 0 6 566 9653 568 -14667 2 2 0 6 6283 6483 9690 -14668 2 2 0 6 2019 2021 2020 -14669 2 2 0 6 3109 3366 3111 -14670 2 2 0 6 2869 3689 3100 -14671 2 2 0 6 3837 3838 4241 -14672 2 2 0 6 3112 4486 4487 -14673 2 2 0 6 5008 9458 8848 -14674 2 2 0 6 904 9357 907 -14675 2 2 0 6 2182 2184 9481 -14676 2 2 0 6 2446 2447 2474 -14677 2 2 0 6 3266 3305 3306 -14678 2 2 0 6 4926 4928 6055 -14679 2 2 0 6 4611 6116 5913 -14680 2 2 0 6 5113 6712 6709 -14681 2 2 0 6 7033 9189 9066 -14682 2 2 0 6 926 929 928 -14683 2 2 0 6 1078 2317 1082 -14684 2 2 0 6 3030 3032 3036 -14685 2 2 0 6 2724 3226 3225 -14686 2 2 0 6 3245 3247 3246 -14687 2 2 0 6 2930 3737 3696 -14688 2 2 0 6 3947 3949 3950 -14689 2 2 0 6 4010 4533 4975 -14690 2 2 0 6 5481 6287 6289 -14691 2 2 0 6 5883 7809 6607 -14692 2 2 0 6 3956 4571 9670 -14693 2 2 0 6 2133 2391 2392 -14694 2 2 0 6 626 9809 629 -14695 2 2 0 6 4716 4718 5228 -14696 2 2 0 6 2127 9244 5671 -14697 2 2 0 6 2872 4024 4023 -14698 2 2 0 6 3996 4168 4903 -14699 2 2 0 6 2767 2769 8406 -14700 2 2 0 6 5655 6132 5657 -14701 2 2 0 6 5002 5003 6565 -14702 2 2 0 6 2289 8614 2296 -14703 2 2 0 6 5492 8541 8542 -14704 2 2 0 6 2029 3353 8722 -14705 2 2 0 6 3501 8813 8550 -14706 2 2 0 6 2116 2591 9354 -14707 2 2 0 6 5572 9094 9249 -14708 2 2 0 6 2673 9318 9319 -14709 2 2 0 6 2409 2926 2925 -14710 2 2 0 6 7046 7049 7048 -14711 2 2 0 6 2245 2462 9015 -14712 2 2 0 6 6407 9096 9380 -14713 2 2 0 6 886 1044 9437 -14714 2 2 0 6 2377 2379 2378 -14715 2 2 0 6 2458 2637 2638 -14716 2 2 0 6 3589 9346 8655 -14717 2 2 0 6 2627 2806 2805 -14718 2 2 0 6 3023 3025 3024 -14719 2 2 0 6 3930 4519 5040 -14720 2 2 0 6 4830 8945 5590 -14721 2 2 0 6 2086 8999 2102 -14722 2 2 0 6 1662 1665 1664 -14723 2 2 0 6 2225 2370 2226 -14724 2 2 0 6 2400 2455 2567 -14725 2 2 0 6 3032 3716 3036 -14726 2 2 0 6 5590 9552 5695 -14727 2 2 0 6 5077 6656 6657 -14728 2 2 0 6 2039 2041 2040 -14729 2 2 0 6 1923 2186 1924 -14730 2 2 0 6 5004 5850 5529 -14731 2 2 0 6 9134 10505 10506 -14732 2 2 0 6 5851 6591 6592 -14733 2 2 0 6 7039 7038 7040 -14734 2 2 0 6 5400 6035 8962 -14735 2 2 0 6 3859 3861 4226 -14736 2 2 0 6 6232 6234 6235 -14737 2 2 0 6 6236 6237 6238 -14738 2 2 0 6 3976 4776 9300 -14739 2 2 0 6 8338 8340 9376 -14740 2 2 0 6 2967 9561 4991 -14741 2 2 0 6 2593 2594 2644 -14742 2 2 0 6 4769 6227 5644 -14743 2 2 0 6 6501 6502 7121 -14744 2 2 0 6 2272 2274 9863 -14745 2 2 0 6 3707 3740 4109 -14746 2 2 0 6 2914 7908 3832 -14747 2 2 0 6 2213 2571 8431 -14748 2 2 0 6 1368 9158 8741 -14749 2 2 0 6 4037 9171 4806 -14750 2 2 0 6 4540 5625 9242 -14751 2 2 0 6 4718 9383 6419 -14752 2 2 0 6 5639 5641 9627 -14753 2 2 0 6 4498 4660 4497 -14754 2 2 0 6 4819 6251 4873 -14755 2 2 0 6 5216 7059 7056 -14756 2 2 0 6 7290 7292 7293 -14757 2 2 0 6 2830 9002 2831 -14758 2 2 0 6 973 8766 980 -14759 2 2 0 6 2002 2004 2003 -14760 2 2 0 6 4307 6588 9061 -14761 2 2 0 6 4666 6148 6147 -14762 2 2 0 6 2576 9164 2578 -14763 2 2 0 6 1677 1678 1679 -14764 2 2 0 6 2925 2926 3694 -14765 2 2 0 6 2895 3206 3750 -14766 2 2 0 6 4956 5359 6497 -14767 2 2 0 6 4815 8023 4817 -14768 2 2 0 6 2786 3798 8246 -14769 2 2 0 6 633 634 9050 -14770 2 2 0 6 1388 9175 3912 -14771 2 2 0 6 319 320 9271 -14772 2 2 0 6 8756 8757 9626 -14773 2 2 0 6 1737 3653 1739 -14774 2 2 0 6 3667 3669 3668 -14775 2 2 0 6 1691 4110 3385 -14776 2 2 0 6 5240 7071 6188 -14777 2 2 0 6 333 9122 535 -14778 2 2 0 6 760 761 762 -14779 2 2 0 6 2714 2715 2716 -14780 2 2 0 6 2568 2848 2847 -14781 2 2 0 6 3716 4184 4134 -14782 2 2 0 6 3403 8955 4002 -14783 2 2 0 6 5360 5362 5361 -14784 2 2 0 6 1280 6998 7000 -14785 2 2 0 6 5342 6375 7272 -14786 2 2 0 6 3934 4576 9617 -14787 2 2 0 6 1186 1188 1210 -14788 2 2 0 6 2005 2008 2007 -14789 2 2 0 6 2023 2030 2025 -14790 2 2 0 6 3288 3289 3290 -14791 2 2 0 6 3155 3926 3356 -14792 2 2 0 6 3190 4062 4061 -14793 2 2 0 6 4188 4189 4976 -14794 2 2 0 6 4330 4856 5540 -14795 2 2 0 6 634 637 9050 -14796 2 2 0 6 1122 9257 1124 -14797 2 2 0 6 7829 7830 9733 -14798 2 2 0 6 982 10007 8642 -14799 2 2 0 6 1163 1164 1180 -14800 2 2 0 6 3173 3175 3174 -14801 2 2 0 6 4484 4993 4485 -14802 2 2 0 6 4826 5993 4825 -14803 2 2 0 6 3265 6404 3305 -14804 2 2 0 6 6726 6725 9374 -14805 2 2 0 6 4129 4201 4667 -14806 2 2 0 6 4953 5272 6202 -14807 2 2 0 6 6238 7094 7070 -14808 2 2 0 6 8508 8510 8511 -14809 2 2 0 6 5086 9099 5291 -14810 2 2 0 6 756 757 758 -14811 2 2 0 6 2380 2390 2400 -14812 2 2 0 6 1067 3617 1069 -14813 2 2 0 6 3521 9067 9684 -14814 2 2 0 6 1544 1546 8796 -14815 2 2 0 6 654 6413 9230 -14816 2 2 0 6 1564 9460 1566 -14817 2 2 0 6 2732 9561 2967 -14818 2 2 0 6 320 321 483 -14819 2 2 0 6 234 235 538 -14820 2 2 0 6 772 775 780 -14821 2 2 0 6 1211 1233 1232 -14822 2 2 0 6 1268 1291 1290 -14823 2 2 0 6 2183 2359 2360 -14824 2 2 0 6 2252 2527 2253 -14825 2 2 0 6 2597 2871 2598 -14826 2 2 0 6 6237 6239 6238 -14827 2 2 0 6 6261 6263 7183 -14828 2 2 0 6 1676 4418 9134 -14829 2 2 0 6 2097 4515 9634 -14830 2 2 0 6 4403 9689 9974 -14831 2 2 0 6 2426 2553 2427 -14832 2 2 0 6 3855 3857 4642 -14833 2 2 0 6 3975 10689 10309 -14834 2 2 0 6 227 228 540 -14835 2 2 0 6 1786 5595 8909 -14836 2 2 0 6 6485 8949 6486 -14837 2 2 0 6 1603 1605 9194 -14838 2 2 0 6 2871 3157 9528 -14839 2 2 0 6 6323 9978 6324 -14840 2 2 0 6 3808 4260 4036 -14841 2 2 0 6 4220 4335 4334 -14842 2 2 0 6 6291 7826 6290 -14843 2 2 0 6 6266 9640 9403 -14844 2 2 0 6 4866 7273 9234 -14845 2 2 0 6 2821 3562 8714 -14846 2 2 0 6 776 778 8869 -14847 2 2 0 6 4916 8907 9810 -14848 2 2 0 6 1154 1163 1153 -14849 2 2 0 6 7787 7793 9681 -14850 2 2 0 6 2331 10090 8541 -14851 2 2 0 6 3822 6444 6445 -14852 2 2 0 6 5129 6099 6755 -14853 2 2 0 6 806 5629 9224 -14854 2 2 0 6 1816 9291 4390 -14855 2 2 0 6 3236 9649 3496 -14856 2 2 0 6 1732 1734 1733 -14857 2 2 0 6 2189 2369 2255 -14858 2 2 0 6 3276 3278 3277 -14859 2 2 0 6 3813 3999 4000 -14860 2 2 0 6 2316 10640 10646 -14861 2 2 0 6 2758 3565 9285 -14862 2 2 0 6 2542 2721 2544 -14863 2 2 0 6 4436 4809 4810 -14864 2 2 0 6 4809 4811 4810 -14865 2 2 0 6 3899 9795 10005 -14866 2 2 0 6 2767 8406 2912 -14867 2 2 0 6 3546 9792 3550 -14868 2 2 0 6 212 213 546 -14869 2 2 0 6 2706 2708 2709 -14870 2 2 0 6 3684 3830 3814 -14871 2 2 0 6 4187 5043 5603 -14872 2 2 0 6 4870 9053 8362 -14873 2 2 0 6 758 759 760 -14874 2 2 0 6 3678 3680 3679 -14875 2 2 0 6 4622 4624 4623 -14876 2 2 0 6 5291 9099 7361 -14877 2 2 0 6 3012 3629 3013 -14878 2 2 0 6 5685 6783 6782 -14879 2 2 0 6 5521 6823 6822 -14880 2 2 0 6 5578 9808 9115 -14881 2 2 0 6 762 763 764 -14882 2 2 0 6 2486 2650 2651 -14883 2 2 0 6 2638 2786 2787 -14884 2 2 0 6 996 5751 1005 -14885 2 2 0 6 3971 5280 9513 -14886 2 2 0 6 4513 4609 4610 -14887 2 2 0 6 139 140 9456 -14888 2 2 0 6 7829 9733 8565 -14889 2 2 0 6 2403 2627 2626 -14890 2 2 0 6 4667 6669 6670 -14891 2 2 0 6 2689 8799 9191 -14892 2 2 0 6 3190 9366 4062 -14893 2 2 0 6 5575 10022 8973 -14894 2 2 0 6 1805 2675 9462 -14895 2 2 0 6 2723 2724 3225 -14896 2 2 0 6 4089 5589 9181 -14897 2 2 0 6 5508 8725 8726 -14898 2 2 0 6 2886 3715 9451 -14899 2 2 0 6 5681 10148 9710 -14900 2 2 0 6 1041 5725 1141 -14901 2 2 0 6 3376 3378 9393 -14902 2 2 0 6 4987 7274 7273 -14903 2 2 0 6 1543 2954 9560 -14904 2 2 0 6 960 961 962 -14905 2 2 0 6 2214 2377 2376 -14906 2 2 0 6 2685 2895 2686 -14907 2 2 0 6 3710 4996 5638 -14908 2 2 0 6 5519 8868 6659 -14909 2 2 0 6 2675 4501 9462 -14910 2 2 0 6 5233 7067 9694 -14911 2 2 0 6 754 755 756 -14912 2 2 0 6 1963 2252 1964 -14913 2 2 0 6 3274 3276 3277 -14914 2 2 0 6 1798 1884 9928 -14915 2 2 0 6 6723 7200 7170 -14916 2 2 0 6 2462 3664 9015 -14917 2 2 0 6 2268 9067 2271 -14918 2 2 0 6 572 575 574 -14919 2 2 0 6 1547 1549 1548 -14920 2 2 0 6 2711 2713 2714 -14921 2 2 0 6 4537 4573 5319 -14922 2 2 0 6 4470 6452 4472 -14923 2 2 0 6 8069 8074 9801 -14924 2 2 0 6 987 998 986 -14925 2 2 0 6 2012 2014 2013 -14926 2 2 0 6 2155 3574 2153 -14927 2 2 0 6 3608 9211 4009 -14928 2 2 0 6 3010 3013 8301 -14929 2 2 0 6 6207 8978 8979 -14930 2 2 0 6 2271 9067 3521 -14931 2 2 0 6 1541 1543 1542 -14932 2 2 0 6 1726 1728 1727 -14933 2 2 0 6 2629 2695 2630 -14934 2 2 0 6 2958 2960 2962 -14935 2 2 0 6 4714 4715 5203 -14936 2 2 0 6 4623 4677 6740 -14937 2 2 0 6 6755 6756 6769 -14938 2 2 0 6 6194 7081 7080 -14939 2 2 0 6 1219 1235 10444 -14940 2 2 0 6 4161 4766 4765 -14941 2 2 0 6 5317 9037 7497 -14942 2 2 0 6 1180 1181 1191 -14943 2 2 0 6 2078 2126 2127 -14944 2 2 0 6 2806 2984 2983 -14945 2 2 0 6 3621 4277 4177 -14946 2 2 0 6 4520 8167 8168 -14947 2 2 0 6 3849 9159 4644 -14948 2 2 0 6 3297 9383 4718 -14949 2 2 0 6 8967 9894 9763 -14950 2 2 0 6 958 961 960 -14951 2 2 0 6 980 987 986 -14952 2 2 0 6 1658 1659 1657 -14953 2 2 0 6 4742 5560 6203 -14954 2 2 0 6 7035 7036 7037 -14955 2 2 0 6 7782 9321 7784 -14956 2 2 0 6 3930 6450 9528 -14957 2 2 0 6 1545 1547 1546 -14958 2 2 0 6 5717 5719 5718 -14959 2 2 0 6 6284 6470 7244 -14960 2 2 0 6 3669 8080 3827 -14961 2 2 0 6 229 230 482 -14962 2 2 0 6 4160 5682 4841 -14963 2 2 0 6 3836 4675 5803 -14964 2 2 0 6 5215 5216 7056 -14965 2 2 0 6 1159 1188 1186 -14966 2 2 0 6 1996 1998 1997 -14967 2 2 0 6 2139 2141 2140 -14968 2 2 0 6 5015 5844 5335 -14969 2 2 0 6 4655 6157 5120 -14970 2 2 0 6 867 9343 869 -14971 2 2 0 6 8372 9724 9337 -14972 2 2 0 6 1104 1137 2596 -14973 2 2 0 6 3175 3271 3270 -14974 2 2 0 6 3298 3888 4269 -14975 2 2 0 6 5661 6133 5663 -14976 2 2 0 6 7032 7034 7033 -14977 2 2 0 6 4139 8490 4703 -14978 2 2 0 6 624 627 8885 -14979 2 2 0 6 7469 10331 10132 -14980 2 2 0 6 3928 4519 3930 -14981 2 2 0 6 7298 7300 7299 -14982 2 2 0 6 6150 9698 6151 -14983 2 2 0 6 851 853 9865 -14984 2 2 0 6 1719 1720 1768 -14985 2 2 0 6 2318 2319 2402 -14986 2 2 0 6 4480 4482 4481 -14987 2 2 0 6 4547 4694 5779 -14988 2 2 0 6 1819 1902 9966 -14989 2 2 0 6 2612 3520 9479 -14990 2 2 0 6 5053 7738 9742 -14991 2 2 0 6 4516 10008 5679 -14992 2 2 0 6 5553 9142 5554 -14993 2 2 0 6 3686 4169 4749 -14994 2 2 0 6 884 9471 891 -14995 2 2 0 6 4769 5266 9514 -14996 2 2 0 6 1322 1438 1439 -14997 2 2 0 6 2958 2959 2960 -14998 2 2 0 6 1291 1356 3644 -14999 2 2 0 6 3457 3185 4196 -15000 2 2 0 6 4312 4313 4655 -15001 2 2 0 6 4841 5682 5923 -15002 2 2 0 6 1188 9415 4030 -15003 2 2 0 6 1321 9673 5693 -15004 2 2 0 6 2220 2222 9570 -15005 2 2 0 6 780 784 786 -15006 2 2 0 6 1706 1709 1708 -15007 2 2 0 6 1683 1684 1719 -15008 2 2 0 6 2032 3512 2067 -15009 2 2 0 6 2702 2704 3614 -15010 2 2 0 6 4707 5216 5215 -15011 2 2 0 6 2010 2012 2011 -15012 2 2 0 6 2957 2958 2956 -15013 2 2 0 6 2926 4796 3694 -15014 2 2 0 6 1653 8839 1660 -15015 2 2 0 6 3619 8835 9361 -15016 2 2 0 6 6742 9648 6743 -15017 2 2 0 6 7036 7038 7037 -15018 2 2 0 6 3600 4014 9469 -15019 2 2 0 6 6418 9886 9950 -15020 2 2 0 6 2391 2518 2392 -15021 2 2 0 6 2787 2884 2883 -15022 2 2 0 6 3303 4308 4309 -15023 2 2 0 6 3161 4187 9323 -15024 2 2 0 6 975 3372 10007 -15025 2 2 0 6 236 237 459 -15026 2 2 0 6 2220 2223 2221 -15027 2 2 0 6 3287 3288 3297 -15028 2 2 0 6 4180 4948 4949 -15029 2 2 0 6 5740 5741 5825 -15030 2 2 0 6 1770 9397 1790 -15031 2 2 0 6 3784 3787 3786 -15032 2 2 0 6 3803 4264 9482 -15033 2 2 0 6 2832 8717 9477 -15034 2 2 0 6 3169 9917 9366 -15035 2 2 0 6 4150 4858 4857 -15036 2 2 0 6 4367 4616 5632 -15037 2 2 0 6 6556 8560 6557 -15038 2 2 0 6 999 1008 998 -15039 2 2 0 6 1768 1769 1870 -15040 2 2 0 6 2208 2330 2329 -15041 2 2 0 6 2967 3640 3639 -15042 2 2 0 6 2377 9578 3645 -15043 2 2 0 6 1926 9233 3052 -15044 2 2 0 6 1669 1671 1672 -15045 2 2 0 6 2536 2720 2538 -15046 2 2 0 6 5128 6015 6014 -15047 2 2 0 6 883 1039 9937 -15048 2 2 0 6 2600 9380 9096 -15049 2 2 0 6 1044 5707 9437 -15050 2 2 0 6 3218 4121 9789 -15051 2 2 0 6 885 893 9858 -15052 2 2 0 6 4040 4496 4497 -15053 2 2 0 6 7033 7034 7035 -15054 2 2 0 6 3311 7543 4302 -15055 2 2 0 6 3397 9049 3401 -15056 2 2 0 6 4330 5540 9393 -15057 2 2 0 6 4950 5311 5935 -15058 2 2 0 6 5298 6329 5754 -15059 2 2 0 6 1055 1207 9308 -15060 2 2 0 6 7667 9836 10158 -15061 2 2 0 6 5888 7214 5890 -15062 2 2 0 6 3175 3270 3269 -15063 2 2 0 6 4971 4973 4972 -15064 2 2 0 6 7319 7320 7328 -15065 2 2 0 6 4564 7276 9281 -15066 2 2 0 6 1034 1102 8904 -15067 2 2 0 6 2343 8996 9227 -15068 2 2 0 6 2799 9349 2802 -15069 2 2 0 6 8326 9615 8327 -15070 2 2 0 6 3931 8924 4292 -15071 2 2 0 6 1566 1588 1568 -15072 2 2 0 6 4662 5174 6141 -15073 2 2 0 6 4857 4858 6231 -15074 2 2 0 6 1225 1754 9483 -15075 2 2 0 6 3014 3015 9757 -15076 2 2 0 6 2549 2722 2552 -15077 2 2 0 6 6618 7454 6563 -15078 2 2 0 6 766 769 772 -15079 2 2 0 6 1506 3690 1807 -15080 2 2 0 6 3640 5006 4469 -15081 2 2 0 6 6232 6235 6236 -15082 2 2 0 6 6145 6951 6152 -15083 2 2 0 6 6062 9064 9063 -15084 2 2 0 6 7284 9148 7287 -15085 2 2 0 6 6461 9624 8802 -15086 2 2 0 6 2913 4075 9710 -15087 2 2 0 6 6497 9946 10000 -15088 2 2 0 6 3225 3226 3845 -15089 2 2 0 6 4165 4188 4802 -15090 2 2 0 6 2877 8733 9279 -15091 2 2 0 6 5728 9473 7258 -15092 2 2 0 6 5200 10072 9693 -15093 2 2 0 6 2319 2403 2402 -15094 2 2 0 6 3336 3910 3911 -15095 2 2 0 6 3516 9001 3518 -15096 2 2 0 6 3636 10620 10633 -15097 2 2 0 6 6698 10478 9625 -15098 2 2 0 6 3883 4685 4843 -15099 2 2 0 6 3916 5622 9266 -15100 2 2 0 6 2008 2010 2009 -15101 2 2 0 6 2593 2592 2594 -15102 2 2 0 6 1194 3506 1218 -15103 2 2 0 6 3788 3787 3789 -15104 2 2 0 6 5933 6111 6030 -15105 2 2 0 6 5345 7427 6049 -15106 2 2 0 6 3406 9314 3442 -15107 2 2 0 6 240 241 408 -15108 2 2 0 6 2695 3209 3208 -15109 2 2 0 6 4777 7339 7338 -15110 2 2 0 6 7093 7776 7777 -15111 2 2 0 6 2919 8368 9820 -15112 2 2 0 6 2912 3346 3217 -15113 2 2 0 6 3194 4065 4064 -15114 2 2 0 6 6391 8279 8280 -15115 2 2 0 6 1131 9325 1143 -15116 2 2 0 6 1728 1730 1729 -15117 2 2 0 6 2178 2190 2191 -15118 2 2 0 6 5603 6600 6601 -15119 2 2 0 6 2680 4149 9334 -15120 2 2 0 6 4526 4529 4528 -15121 2 2 0 6 1725 5510 5511 -15122 2 2 0 6 4824 5628 5627 -15123 2 2 0 6 5203 9044 9045 -15124 2 2 0 6 6429 9358 9180 -15125 2 2 0 6 3497 3802 9476 -15126 2 2 0 6 2289 2295 8614 -15127 2 2 0 6 3367 9593 3672 -15128 2 2 0 6 225 226 424 -15129 2 2 0 6 2223 2225 2224 -15130 2 2 0 6 4815 4816 4814 -15131 2 2 0 6 5102 6705 6080 -15132 2 2 0 6 5862 7428 7429 -15133 2 2 0 6 6416 9356 9131 -15134 2 2 0 6 2252 9386 2601 -15135 2 2 0 6 5517 9600 8614 -15136 2 2 0 6 1744 1741 1746 -15137 2 2 0 6 2222 2955 2956 -15138 2 2 0 6 5647 5648 5649 -15139 2 2 0 6 4609 6067 4610 -15140 2 2 0 6 3173 3695 9692 -15141 2 2 0 6 7930 7931 9902 -15142 2 2 0 6 2482 2673 2655 -15143 2 2 0 6 4280 5712 5710 -15144 2 2 0 6 6176 7801 8437 -15145 2 2 0 6 4722 6328 9495 -15146 2 2 0 6 1834 1835 1962 -15147 2 2 0 6 2805 2983 3234 -15148 2 2 0 6 4000 4457 4458 -15149 2 2 0 6 5682 5924 5923 -15150 2 2 0 6 3554 9266 3556 -15151 2 2 0 6 1870 1963 1871 -15152 2 2 0 6 2598 2871 2872 -15153 2 2 0 6 5019 5922 5906 -15154 2 2 0 6 1557 8438 1869 -15155 2 2 0 6 2191 2366 2672 -15156 2 2 0 6 1870 9282 5700 -15157 2 2 0 6 317 318 431 -15158 2 2 0 6 1666 1668 1669 -15159 2 2 0 6 5071 6226 5806 -15160 2 2 0 6 6235 6237 6236 -15161 2 2 0 6 5166 6725 5167 -15162 2 2 0 6 1377 8890 1380 -15163 2 2 0 6 2716 2831 2832 -15164 2 2 0 6 4320 4319 4321 -15165 2 2 0 6 4613 5168 5179 -15166 2 2 0 6 1097 5731 1130 -15167 2 2 0 6 6507 8138 8137 -15168 2 2 0 6 6208 7028 9353 -15169 2 2 0 6 2043 2044 2045 -15170 2 2 0 6 5995 5996 5997 -15171 2 2 0 6 2150 8414 8415 -15172 2 2 0 6 1288 9147 1289 -15173 2 2 0 6 2524 2697 2696 -15174 2 2 0 6 3789 3811 3790 -15175 2 2 0 6 4393 9811 8494 -15176 2 2 0 6 5776 6691 6692 -15177 2 2 0 6 1104 2596 9596 -15178 2 2 0 6 6508 10063 8158 -15179 2 2 0 6 5838 10137 8684 -15180 2 2 0 6 2655 2673 2674 -15181 2 2 0 6 4106 4921 4922 -15182 2 2 0 6 4101 4951 4396 -15183 2 2 0 6 6151 6526 6525 -15184 2 2 0 6 6434 6435 9889 -15185 2 2 0 6 58 9954 442 -15186 2 2 0 6 1061 1064 1063 -15187 2 2 0 6 4602 4651 4652 -15188 2 2 0 6 2392 4033 9244 -15189 2 2 0 6 1656 1658 1657 -15190 2 2 0 6 5434 9274 8044 -15191 2 2 0 6 2638 2787 2882 -15192 2 2 0 6 4315 4317 4318 -15193 2 2 0 6 987 8766 3528 -15194 2 2 0 6 2276 9109 2285 -15195 2 2 0 6 2034 3654 9377 -15196 2 2 0 6 5529 5851 9527 -15197 2 2 0 6 1976 2680 9334 -15198 2 2 0 6 5540 5541 7498 -15199 2 2 0 6 2960 2963 9671 -15200 2 2 0 6 6413 9231 9230 -15201 2 2 0 6 4769 9514 6227 -15202 2 2 0 6 764 765 766 -15203 2 2 0 6 2366 2457 2458 -15204 2 2 0 6 2790 2792 4432 -15205 2 2 0 6 5370 7195 7208 -15206 2 2 0 6 444 7415 7397 -15207 2 2 0 6 6399 7619 10181 -15208 2 2 0 6 346 9666 534 -15209 2 2 0 6 1993 1996 1995 -15210 2 2 0 6 2831 2833 2832 -15211 2 2 0 6 2004 3611 4454 -15212 2 2 0 6 2007 2009 9716 -15213 2 2 0 6 1834 1962 4956 -15214 2 2 0 6 1796 9438 9008 -15215 2 2 0 6 4746 7131 6172 -15216 2 2 0 6 5204 5208 9044 -15217 2 2 0 6 5080 9333 5083 -15218 2 2 0 6 2668 2669 2670 -15219 2 2 0 6 4196 5018 4197 -15220 2 2 0 6 4429 4963 5723 -15221 2 2 0 6 1882 2150 9872 -15222 2 2 0 6 4548 9116 5531 -15223 2 2 0 6 8914 9290 9540 -15224 2 2 0 6 6870 6871 6872 -15225 2 2 0 6 5601 6434 9038 -15226 2 2 0 6 4745 9390 5675 -15227 2 2 0 6 1294 1296 9424 -15228 2 2 0 6 1910 2182 2183 -15229 2 2 0 6 2709 2710 2711 -15230 2 2 0 6 3010 3012 3013 -15231 2 2 0 6 3776 3779 3778 -15232 2 2 0 6 1055 9308 1057 -15233 2 2 0 6 1008 1020 8644 -15234 2 2 0 6 2563 8685 9875 -15235 2 2 0 6 6505 9061 9062 -15236 2 2 0 6 3101 4048 9500 -15237 2 2 0 6 1090 5559 9371 -15238 2 2 0 6 1501 2217 2216 -15239 2 2 0 6 2644 2645 3009 -15240 2 2 0 6 2592 4027 2594 -15241 2 2 0 6 5036 9173 8004 -15242 2 2 0 6 4616 6290 7995 -15243 2 2 0 6 5300 6255 5437 -15244 2 2 0 6 2988 8632 3794 -15245 2 2 0 6 2216 2218 8993 -15246 2 2 0 6 3798 4261 9835 -15247 2 2 0 6 2217 2219 2218 -15248 2 2 0 6 2335 2336 2492 -15249 2 2 0 6 5043 6600 5603 -15250 2 2 0 6 6594 7255 7254 -15251 2 2 0 6 4710 4711 7695 -15252 2 2 0 6 6865 7722 7721 -15253 2 2 0 6 1386 9418 9006 -15254 2 2 0 6 9169 9167 9197 -15255 2 2 0 6 3554 3556 3555 -15256 2 2 0 6 4065 5029 5028 -15257 2 2 0 6 3996 4903 5740 -15258 2 2 0 6 5324 5327 7354 -15259 2 2 0 6 5310 6507 8137 -15260 2 2 0 6 2837 2838 9427 -15261 2 2 0 6 1489 1510 1509 -15262 2 2 0 6 2231 2233 2232 -15263 2 2 0 6 1153 1163 3626 -15264 2 2 0 6 5601 9038 8890 -15265 2 2 0 6 3528 8766 8767 -15266 2 2 0 6 2219 2222 2220 -15267 2 2 0 6 3780 3783 3782 -15268 2 2 0 6 2768 9710 4067 -15269 2 2 0 6 1642 9699 1643 -15270 2 2 0 6 3170 5941 5940 -15271 2 2 0 6 5659 8330 5661 -15272 2 2 0 6 1622 9342 1624 -15273 2 2 0 6 7532 10185 10203 -15274 2 2 0 6 2329 2330 2331 -15275 2 2 0 6 3575 8495 9092 -15276 2 2 0 6 3102 4425 9426 -15277 2 2 0 6 2125 2136 9630 -15278 2 2 0 6 1079 1082 1085 -15279 2 2 0 6 1149 2316 1161 -15280 2 2 0 6 3578 4039 4040 -15281 2 2 0 6 1276 9536 1309 -15282 2 2 0 6 2222 2956 4477 -15283 2 2 0 6 2019 5713 2021 -15284 2 2 0 6 3507 10158 9836 -15285 2 2 0 6 6526 6867 6527 -15286 2 2 0 6 1543 9560 1545 -15287 2 2 0 6 1075 1076 1077 -15288 2 2 0 6 1731 1730 1732 -15289 2 2 0 6 2034 2036 2035 -15290 2 2 0 6 2392 2518 2519 -15291 2 2 0 6 3027 3030 3029 -15292 2 2 0 6 3274 3275 3276 -15293 2 2 0 6 2010 3475 2012 -15294 2 2 0 6 5158 5521 6822 -15295 2 2 0 6 777 8975 779 -15296 2 2 0 6 7558 7570 7805 -15297 2 2 0 6 1382 1383 9006 -15298 2 2 0 6 2355 9214 2521 -15299 2 2 0 6 5750 9893 9829 -15300 2 2 0 6 6743 9648 6746 -15301 2 2 0 6 1180 1191 1212 -15302 2 2 0 6 1305 1304 1321 -15303 2 2 0 6 881 885 9858 -15304 2 2 0 6 3102 3103 3935 -15305 2 2 0 6 5144 6788 6787 -15306 2 2 0 6 3114 9552 8946 -15307 2 2 0 6 1282 1358 1320 -15308 2 2 0 6 3029 9154 9283 -15309 2 2 0 6 3018 10029 8506 -15310 2 2 0 6 238 239 541 -15311 2 2 0 6 4151 9284 4153 -15312 2 2 0 6 1041 1141 1042 -15313 2 2 0 6 1949 1950 1951 -15314 2 2 0 6 7283 7284 7285 -15315 2 2 0 6 7295 7296 7297 -15316 2 2 0 6 3633 9439 4201 -15317 2 2 0 6 4369 4520 9579 -15318 2 2 0 6 7305 7315 9798 -15319 2 2 0 6 3821 4227 3829 -15320 2 2 0 6 4486 4488 4487 -15321 2 2 0 6 4407 5191 5192 -15322 2 2 0 6 4153 9284 4570 -15323 2 2 0 6 7721 7722 7723 -15324 2 2 0 6 5113 9696 6712 -15325 2 2 0 6 5058 5059 5060 -15326 2 2 0 6 3413 9332 3613 -15327 2 2 0 6 4770 5694 5042 -15328 2 2 0 6 3959 8945 4830 -15329 2 2 0 6 2711 2714 3637 -15330 2 2 0 6 4624 4678 4677 -15331 2 2 0 6 5173 5181 5233 -15332 2 2 0 6 4969 9034 9405 -15333 2 2 0 6 8426 10247 10252 -15334 2 2 0 6 1810 1941 1940 -15335 2 2 0 6 5898 7226 6635 -15336 2 2 0 6 4339 5439 8507 -15337 2 2 0 6 3184 8895 3183 -15338 2 2 0 6 1545 9560 8668 -15339 2 2 0 6 3938 3940 3939 -15340 2 2 0 6 3106 4486 3112 -15341 2 2 0 6 4339 8507 5855 -15342 2 2 0 6 2764 2765 2766 -15343 2 2 0 6 1603 9194 3918 -15344 2 2 0 6 7620 7621 6393 -15345 2 2 0 6 4612 5913 9470 -15346 2 2 0 6 3444 4113 8863 -15347 2 2 0 6 824 3708 9123 -15348 2 2 0 6 1714 1713 1717 -15349 2 2 0 6 4081 5053 9742 -15350 2 2 0 6 3845 4645 3846 -15351 2 2 0 6 2278 8647 9109 -15352 2 2 0 6 1015 1026 9432 -15353 2 2 0 6 2216 2217 2218 -15354 2 2 0 6 222 223 486 -15355 2 2 0 6 3772 3773 3774 -15356 2 2 0 6 3787 3844 3789 -15357 2 2 0 6 3954 3955 3956 -15358 2 2 0 6 3745 5073 4567 -15359 2 2 0 6 600 8686 1917 -15360 2 2 0 6 1241 1814 1754 -15361 2 2 0 6 2743 2904 2908 -15362 2 2 0 6 3265 3305 3266 -15363 2 2 0 6 2972 2974 3355 -15364 2 2 0 6 2600 3580 9380 -15365 2 2 0 6 4008 9436 4562 -15366 2 2 0 6 1941 2206 2205 -15367 2 2 0 6 1332 2968 1334 -15368 2 2 0 6 4187 4476 5043 -15369 2 2 0 6 5579 9808 5578 -15370 2 2 0 6 3287 3618 9090 -15371 2 2 0 6 2119 9141 2121 -15372 2 2 0 6 3469 4080 9379 -15373 2 2 0 6 2552 9652 2663 -15374 2 2 0 6 1236 3638 3744 -15375 2 2 0 6 1096 9371 1146 -15376 2 2 0 6 1880 2595 9438 -15377 2 2 0 6 4858 9504 6234 -15378 2 2 0 6 6407 9380 9509 -15379 2 2 0 6 5647 9785 5646 -15380 2 2 0 6 5831 9796 10195 -15381 2 2 0 6 1735 1734 1745 -15382 2 2 0 6 3759 6078 3760 -15383 2 2 0 6 5074 6594 6593 -15384 2 2 0 6 7785 7787 9681 -15385 2 2 0 6 4177 4277 4307 -15386 2 2 0 6 2966 9510 3018 -15387 2 2 0 6 1292 1318 1319 -15388 2 2 0 6 3004 3806 3805 -15389 2 2 0 6 4809 5323 4811 -15390 2 2 0 6 5536 9200 8952 -15391 2 2 0 6 6546 6547 7222 -15392 2 2 0 6 6553 8060 10421 -15393 2 2 0 6 8266 8267 10452 -15394 2 2 0 6 1783 9462 5789 -15395 2 2 0 6 3419 3430 9688 -15396 2 2 0 6 1510 1803 1767 -15397 2 2 0 6 2669 4491 2910 -15398 2 2 0 6 4444 5926 5033 -15399 2 2 0 6 4798 4990 5821 -15400 2 2 0 6 5432 7673 6385 -15401 2 2 0 6 648 651 8960 -15402 2 2 0 6 2364 2619 2618 -15403 2 2 0 6 4308 5303 4309 -15404 2 2 0 6 817 9071 9388 -15405 2 2 0 6 2279 9391 8891 -15406 2 2 0 6 5802 9502 5801 -15407 2 2 0 6 2993 9518 4799 -15408 2 2 0 6 5610 6612 9420 -15409 2 2 0 6 7004 7474 7475 -15410 2 2 0 6 3912 9175 5544 -15411 2 2 0 6 1020 1021 1031 -15412 2 2 0 6 779 8975 1025 -15413 2 2 0 6 1873 1968 8316 -15414 2 2 0 6 1676 9134 1678 -15415 2 2 0 6 1023 4960 9286 -15416 2 2 0 6 2901 3204 3207 -15417 2 2 0 6 3195 3554 3555 -15418 2 2 0 6 1299 1301 3659 -15419 2 2 0 6 4264 4263 5127 -15420 2 2 0 6 6077 9623 9724 -15421 2 2 0 6 1090 1093 1089 -15422 2 2 0 6 1784 1806 1805 -15423 2 2 0 6 2628 2932 2931 -15424 2 2 0 6 2892 3195 3194 -15425 2 2 0 6 5935 7205 7206 -15426 2 2 0 6 3395 9049 3397 -15427 2 2 0 6 1664 1665 1666 -15428 2 2 0 6 4816 4817 4818 -15429 2 2 0 6 4617 5169 5011 -15430 2 2 0 6 3774 3836 9867 -15431 2 2 0 6 4090 4092 9146 -15432 2 2 0 6 5892 9328 9245 -15433 2 2 0 6 2315 9813 9938 -15434 2 2 0 6 585 1922 587 -15435 2 2 0 6 3385 5087 5724 -15436 2 2 0 6 5385 7359 7513 -15437 2 2 0 6 1176 9466 1194 -15438 2 2 0 6 2819 9338 3562 -15439 2 2 0 6 4618 9444 6498 -15440 2 2 0 6 3719 4188 4165 -15441 2 2 0 6 4506 4056 4507 -15442 2 2 0 6 3744 3745 4566 -15443 2 2 0 6 4219 5111 5110 -15444 2 2 0 6 4745 5675 5279 -15445 2 2 0 6 4858 6232 6231 -15446 2 2 0 6 5673 5674 10060 -15447 2 2 0 6 5311 7205 5935 -15448 2 2 0 6 1124 9257 4166 -15449 2 2 0 6 3113 9589 3958 -15450 2 2 0 6 6477 9933 6478 -15451 2 2 0 6 9344 9961 10129 -15452 2 2 0 6 6540 10250 9679 -15453 2 2 0 6 36 37 413 -15454 2 2 0 6 995 996 1000 -15455 2 2 0 6 1073 1076 1075 -15456 2 2 0 6 4533 5904 4975 -15457 2 2 0 6 4724 9059 5619 -15458 2 2 0 6 315 316 542 -15459 2 2 0 6 1077 1078 1079 -15460 2 2 0 6 2833 2892 2891 -15461 2 2 0 6 1978 9310 2342 -15462 2 2 0 6 3926 9106 9628 -15463 2 2 0 6 5940 5941 5995 -15464 2 2 0 6 4683 6253 5225 -15465 2 2 0 6 7893 10281 7894 -15466 2 2 0 6 3733 9249 3734 -15467 2 2 0 6 1085 1086 1089 -15468 2 2 0 6 3111 3366 3367 -15469 2 2 0 6 376 8240 8875 -15470 2 2 0 6 6342 8081 9658 -15471 2 2 0 6 2976 2977 2979 -15472 2 2 0 6 4162 4164 4163 -15473 2 2 0 6 4332 9316 5144 -15474 2 2 0 6 1225 1241 1754 -15475 2 2 0 6 6344 7526 6346 -15476 2 2 0 6 3471 8737 11003 -15477 2 2 0 6 4304 8446 5300 -15478 2 2 0 6 2798 9898 9348 -15479 2 2 0 6 1946 1948 1949 -15480 2 2 0 6 7904 6421 8535 -15481 2 2 0 6 5598 7770 9300 -15482 2 2 0 6 393 394 494 -15483 2 2 0 6 4555 9094 5936 -15484 2 2 0 6 4976 5951 5972 -15485 2 2 0 6 2233 2235 2234 -15486 2 2 0 6 3773 4265 3836 -15487 2 2 0 6 4276 4283 4284 -15488 2 2 0 6 3694 4796 4797 -15489 2 2 0 6 1944 2444 4966 -15490 2 2 0 6 6148 6862 6861 -15491 2 2 0 6 5823 7428 5862 -15492 2 2 0 6 4776 5598 9300 -15493 2 2 0 6 5325 9245 9328 -15494 2 2 0 6 3774 9867 3776 -15495 2 2 0 6 1093 1096 1131 -15496 2 2 0 6 3556 3558 3557 -15497 2 2 0 6 7218 7220 7219 -15498 2 2 0 6 1063 9341 1067 -15499 2 2 0 6 3638 9369 3745 -15500 2 2 0 6 7539 9699 9786 -15501 2 2 0 6 2605 2607 9626 -15502 2 2 0 6 3799 10193 10053 -15503 2 2 0 6 5816 10013 8157 -15504 2 2 0 6 1260 1262 8879 -15505 2 2 0 6 4055 3227 4056 -15506 2 2 0 6 4065 5706 5029 -15507 2 2 0 6 721 9564 9395 -15508 2 2 0 6 2959 8809 2961 -15509 2 2 0 6 3608 3622 9211 -15510 2 2 0 6 6408 9414 8833 -15511 2 2 0 6 1059 3593 9511 -15512 2 2 0 6 2996 3230 3825 -15513 2 2 0 6 3157 3928 3930 -15514 2 2 0 6 4023 8157 9278 -15515 2 2 0 6 1723 1766 1724 -15516 2 2 0 6 2675 2676 2764 -15517 2 2 0 6 5407 8574 9967 -15518 2 2 0 6 3335 4994 3910 -15519 2 2 0 6 4478 5859 5860 -15520 2 2 0 6 2109 4596 9267 -15521 2 2 0 6 3167 3169 9366 -15522 2 2 0 6 4492 4511 4513 -15523 2 2 0 6 5057 5753 5059 -15524 2 2 0 6 3525 9214 5616 -15525 2 2 0 6 5137 6604 6766 -15526 2 2 0 6 6134 6791 6895 -15527 2 2 0 6 689 8965 691 -15528 2 2 0 6 6442 9588 9927 -15529 2 2 0 6 1096 1145 1131 -15530 2 2 0 6 2206 2319 2318 -15531 2 2 0 6 3822 6445 9593 -15532 2 2 0 6 1037 1097 1098 -15533 2 2 0 6 4813 4815 4814 -15534 2 2 0 6 5135 5136 5137 -15535 2 2 0 6 4921 8336 6347 -15536 2 2 0 6 5300 8446 7201 -15537 2 2 0 6 2293 3627 9250 -15538 2 2 0 6 2643 3759 3001 -15539 2 2 0 6 6515 6536 6517 -15540 2 2 0 6 6674 6816 6817 -15541 2 2 0 6 2807 3312 8041 -15542 2 2 0 6 3423 9315 3426 -15543 2 2 0 6 1791 1834 9594 -15544 2 2 0 6 1082 1086 1085 -15545 2 2 0 6 3399 4002 9100 -15546 2 2 0 6 5377 7550 7549 -15547 2 2 0 6 5565 9130 9129 -15548 2 2 0 6 3734 9249 3902 -15549 2 2 0 6 4714 9569 5200 -15550 2 2 0 6 5155 6792 10130 -15551 2 2 0 6 2892 3194 2891 -15552 2 2 0 6 4194 4191 4957 -15553 2 2 0 6 1293 5874 6587 -15554 2 2 0 6 1383 1386 9006 -15555 2 2 0 6 1493 9536 5630 -15556 2 2 0 6 4549 5937 9320 -15557 2 2 0 6 4239 4670 4710 -15558 2 2 0 6 1414 1416 9030 -15559 2 2 0 6 817 9388 816 -15560 2 2 0 6 1008 1009 1020 -15561 2 2 0 6 1825 1912 1913 -15562 2 2 0 6 3101 9500 3380 -15563 2 2 0 6 2004 9305 2005 -15564 2 2 0 6 1732 1743 1734 -15565 2 2 0 6 2766 2767 2768 -15566 2 2 0 6 1090 1096 1093 -15567 2 2 0 6 2318 2402 2621 -15568 2 2 0 6 3820 4011 4010 -15569 2 2 0 6 3157 3930 9528 -15570 2 2 0 6 2650 2919 2651 -15571 2 2 0 6 2886 2887 3170 -15572 2 2 0 6 2770 4213 4212 -15573 2 2 0 6 5610 9420 7146 -15574 2 2 0 6 5044 6621 6622 -15575 2 2 0 6 6404 9162 6405 -15576 2 2 0 6 3366 3822 3367 -15577 2 2 0 6 3040 3893 3303 -15578 2 2 0 6 4285 5422 4771 -15579 2 2 0 6 985 9816 996 -15580 2 2 0 6 4237 9402 4280 -15581 2 2 0 6 2141 2143 2142 -15582 2 2 0 6 3495 3497 3891 -15583 2 2 0 6 4196 5778 5018 -15584 2 2 0 6 4439 9775 8906 -15585 2 2 0 6 700 2152 8912 -15586 2 2 0 6 2609 9361 2900 -15587 2 2 0 6 4567 5074 5075 -15588 2 2 0 6 5359 5835 7532 -15589 2 2 0 6 3284 3287 9090 -15590 2 2 0 6 2659 2741 3507 -15591 2 2 0 6 2150 8415 9872 -15592 2 2 0 6 5868 10006 8495 -15593 2 2 0 6 1658 1661 1659 -15594 2 2 0 6 4482 4837 4484 -15595 2 2 0 6 3962 4824 5627 -15596 2 2 0 6 5027 5620 5916 -15597 2 2 0 6 1769 9282 1870 -15598 2 2 0 6 2350 2487 10154 -15599 2 2 0 6 5755 5756 9991 -15600 2 2 0 6 1078 1082 1079 -15601 2 2 0 6 3956 4275 4276 -15602 2 2 0 6 4487 4647 4649 -15603 2 2 0 6 4609 6113 6067 -15604 2 2 0 6 5303 5738 6199 -15605 2 2 0 6 4996 6258 5959 -15606 2 2 0 6 3785 4115 9025 -15607 2 2 0 6 3733 5572 9249 -15608 2 2 0 6 1556 10970 1558 -15609 2 2 0 6 1815 1814 1816 -15610 2 2 0 6 2504 9227 2855 -15611 2 2 0 6 4531 5052 5117 -15612 2 2 0 6 3047 8013 9440 -15613 2 2 0 6 1398 9924 8529 -15614 2 2 0 6 1816 1818 1817 -15615 2 2 0 6 2639 2725 3002 -15616 2 2 0 6 5179 6155 5606 -15617 2 2 0 6 5236 5564 6195 -15618 2 2 0 6 7763 7766 7767 -15619 2 2 0 6 593 713 594 -15620 2 2 0 6 2222 4477 9570 -15621 2 2 0 6 1290 1291 9221 -15622 2 2 0 6 1818 1823 1819 -15623 2 2 0 6 3958 4819 3961 -15624 2 2 0 6 586 9065 1520 -15625 2 2 0 6 5454 6829 6828 -15626 2 2 0 6 2849 3309 9604 -15627 2 2 0 6 2343 9227 2504 -15628 2 2 0 6 2883 2885 2886 -15629 2 2 0 6 1251 1254 3636 -15630 2 2 0 6 3418 3419 9688 -15631 2 2 0 6 6357 8506 10029 -15632 2 2 0 6 4648 6652 6653 -15633 2 2 0 6 5400 8962 6023 -15634 2 2 0 6 1803 5501 8887 -15635 2 2 0 6 4118 9069 5100 -15636 2 2 0 6 1210 1211 1232 -15637 2 2 0 6 2832 2833 2891 -15638 2 2 0 6 4434 4435 4436 -15639 2 2 0 6 4596 6406 9267 -15640 2 2 0 6 3742 9452 4070 -15641 2 2 0 6 2132 9828 2354 -15642 2 2 0 6 3808 4618 4260 -15643 2 2 0 6 651 652 9635 -15644 2 2 0 6 2094 8203 2098 -15645 2 2 0 6 4418 10505 9134 -15646 2 2 0 6 3084 8927 3087 -15647 2 2 0 6 4786 9265 5270 -15648 2 2 0 6 5697 9763 9894 -15649 2 2 0 6 1086 1090 1089 -15650 2 2 0 6 1823 1944 1901 -15651 2 2 0 6 2225 2484 2370 -15652 2 2 0 6 4312 4655 5120 -15653 2 2 0 6 7075 10483 10707 -15654 2 2 0 6 2002 3611 2004 -15655 2 2 0 6 4282 4651 4602 -15656 2 2 0 6 4432 4433 4434 -15657 2 2 0 6 1846 9144 1848 -15658 2 2 0 6 33 34 484 -15659 2 2 0 6 4722 9495 9059 -15660 2 2 0 6 208 209 533 -15661 2 2 0 6 2218 2219 2220 -15662 2 2 0 6 2370 2485 2371 -15663 2 2 0 6 2078 2127 5671 -15664 2 2 0 6 5170 5429 6158 -15665 2 2 0 6 2789 8042 2791 -15666 2 2 0 6 3822 6443 6444 -15667 2 2 0 6 6015 6729 6016 -15668 2 2 0 6 6729 6837 6730 -15669 2 2 0 6 4717 9313 5674 -15670 2 2 0 6 3280 3279 9467 -15671 2 2 0 6 3375 9637 3841 -15672 2 2 0 6 1754 1814 1815 -15673 2 2 0 6 667 8601 9632 -15674 2 2 0 6 1215 6038 1256 -15675 2 2 0 6 5169 6611 6610 -15676 2 2 0 6 8948 9568 9129 -15677 2 2 0 6 4838 4839 6252 -15678 2 2 0 6 3366 6443 3822 -15679 2 2 0 6 2307 2513 9290 -15680 2 2 0 6 3755 9804 4111 -15681 2 2 0 6 1267 1290 1292 -15682 2 2 0 6 1819 1823 1901 -15683 2 2 0 6 4812 4813 4814 -15684 2 2 0 6 4702 5235 5193 -15685 2 2 0 6 134 135 414 -15686 2 2 0 6 1268 1290 1267 -15687 2 2 0 6 4010 4011 4533 -15688 2 2 0 6 4532 4612 4613 -15689 2 2 0 6 4425 5716 6454 -15690 2 2 0 6 6488 6490 6491 -15691 2 2 0 6 6513 9695 9202 -15692 2 2 0 6 625 9809 626 -15693 2 2 0 6 3330 4737 4702 -15694 2 2 0 6 4660 6732 5125 -15695 2 2 0 6 5362 5364 5363 -15696 2 2 0 6 4460 4998 9429 -15697 2 2 0 6 605 997 8990 -15698 2 2 0 6 4257 4258 10189 -15699 2 2 0 6 3694 4797 4798 -15700 2 2 0 6 4497 4660 5125 -15701 2 2 0 6 2576 3989 9164 -15702 2 2 0 6 5182 6779 6778 -15703 2 2 0 6 6071 9069 9337 -15704 2 2 0 6 323 423 9218 -15705 2 2 0 6 5075 6593 7250 -15706 2 2 0 6 1815 1816 1817 -15707 2 2 0 6 2463 3576 3575 -15708 2 2 0 6 3576 3578 3577 -15709 2 2 0 6 2276 2278 9109 -15710 2 2 0 6 5821 5823 5822 -15711 2 2 0 6 3926 9628 4780 -15712 2 2 0 6 2859 3535 9672 -15713 2 2 0 6 1077 1076 1078 -15714 2 2 0 6 5558 9027 9465 -15715 2 2 0 6 5029 5706 5944 -15716 2 2 0 6 1557 1559 8438 -15717 2 2 0 6 1319 1506 1507 -15718 2 2 0 6 1817 1818 1819 -15719 2 2 0 6 5022 7156 7082 -15720 2 2 0 6 8649 8650 9920 -15721 2 2 0 6 6041 6042 6040 -15722 2 2 0 6 7033 7035 9189 -15723 2 2 0 6 219 220 432 -15724 2 2 0 6 2367 2463 3575 -15725 2 2 0 6 2875 3106 3105 -15726 2 2 0 6 971 3889 978 -15727 2 2 0 6 1738 1740 8103 -15728 2 2 0 6 1872 1965 1873 -15729 2 2 0 6 4138 10480 9654 -15730 2 2 0 6 5420 9421 7490 -15731 2 2 0 6 2730 9561 2732 -15732 2 2 0 6 1671 1685 1672 -15733 2 2 0 6 4458 4521 4522 -15734 2 2 0 6 4198 5032 4548 -15735 2 2 0 6 2466 8712 3610 -15736 2 2 0 6 5773 10124 8282 -15737 2 2 0 6 4310 10940 4311 -15738 2 2 0 6 1321 1438 1322 -15739 2 2 0 6 2594 2645 2644 -15740 2 2 0 6 3797 3795 3821 -15741 2 2 0 6 4260 4618 5165 -15742 2 2 0 6 5184 6977 6976 -15743 2 2 0 6 3167 9366 3190 -15744 2 2 0 6 3430 9994 9688 -15745 2 2 0 6 5024 5113 5114 -15746 2 2 0 6 1044 4171 5707 -15747 2 2 0 6 4765 4766 6244 -15748 2 2 0 6 3761 4597 9174 -15749 2 2 0 6 4331 4333 9559 -15750 2 2 0 6 5843 8687 10152 -15751 2 2 0 6 129 130 544 -15752 2 2 0 6 1031 1041 1040 -15753 2 2 0 6 3003 3805 4262 -15754 2 2 0 6 5558 9465 8806 -15755 2 2 0 6 324 9172 423 -15756 2 2 0 6 4507 4625 4508 -15757 2 2 0 6 8168 8170 8171 -15758 2 2 0 6 2650 3040 2919 -15759 2 2 0 6 3393 9802 4424 -15760 2 2 0 6 4911 9805 9327 -15761 2 2 0 6 7980 8639 9955 -15762 2 2 0 6 6378 10005 8281 -15763 2 2 0 6 3437 10087 3440 -15764 2 2 0 6 2210 2373 2657 -15765 2 2 0 6 1493 5630 1762 -15766 2 2 0 6 5125 6732 6757 -15767 2 2 0 6 2554 2553 8982 -15768 2 2 0 6 332 535 9262 -15769 2 2 0 6 4192 4195 4945 -15770 2 2 0 6 3558 3642 3641 -15771 2 2 0 6 3261 3885 3262 -15772 2 2 0 6 3890 4723 5774 -15773 2 2 0 6 4525 6606 8066 -15774 2 2 0 6 3642 4192 4191 -15775 2 2 0 6 5675 9732 5677 -15776 2 2 0 6 8679 9895 10092 -15777 2 2 0 6 3003 3004 3805 -15778 2 2 0 6 4957 6004 4958 -15779 2 2 0 6 6221 6485 6486 -15780 2 2 0 6 1450 7240 10408 -15781 2 2 0 6 312 313 439 -15782 2 2 0 6 31 32 549 -15783 2 2 0 6 1038 4287 7011 -15784 2 2 0 6 1671 9339 1716 -15785 2 2 0 6 2186 2463 2367 -15786 2 2 0 6 2645 3012 3010 -15787 2 2 0 6 1107 9459 8175 -15788 2 2 0 6 3336 3335 3910 -15789 2 2 0 6 1746 1772 1748 -15790 2 2 0 6 3577 3578 3808 -15791 2 2 0 6 3474 3820 4010 -15792 2 2 0 6 3942 4773 8716 -15793 2 2 0 6 2489 2613 2612 -15794 2 2 0 6 4922 5400 6023 -15795 2 2 0 6 5677 6221 6220 -15796 2 2 0 6 4840 6284 6245 -15797 2 2 0 6 5354 7191 7192 -15798 2 2 0 6 632 8773 635 -15799 2 2 0 6 4828 6314 9378 -15800 2 2 0 6 4766 9919 7139 -15801 2 2 0 6 1952 1953 1951 -15802 2 2 0 6 1771 9594 9282 -15803 2 2 0 6 5641 8756 9627 -15804 2 2 0 6 2235 2358 2357 -15805 2 2 0 6 1900 5000 2676 -15806 2 2 0 6 645 10905 10939 -15807 2 2 0 6 3989 8123 10089 -15808 2 2 0 6 2805 2806 2983 -15809 2 2 0 6 4957 6011 6004 -15810 2 2 0 6 6204 6205 7007 -15811 2 2 0 6 2214 9578 2377 -15812 2 2 0 6 331 9262 415 -15813 2 2 0 6 3672 3949 3947 -15814 2 2 0 6 6357 10029 6358 -15815 2 2 0 6 3214 3215 4122 -15816 2 2 0 6 2986 3241 3242 -15817 2 2 0 6 3555 3556 3557 -15818 2 2 0 6 2964 9510 2966 -15819 2 2 0 6 2932 3800 3237 -15820 2 2 0 6 4523 4525 4524 -15821 2 2 0 6 2770 9408 4213 -15822 2 2 0 6 1131 1145 9325 -15823 2 2 0 6 996 1005 1000 -15824 2 2 0 6 3726 3725 6654 -15825 2 2 0 6 5922 10669 10428 -15826 2 2 0 6 3741 3843 5049 -15827 2 2 0 6 7285 8635 8957 -15828 2 2 0 6 2367 9092 2368 -15829 2 2 0 6 1853 9748 3446 -15830 2 2 0 6 3611 5780 5298 -15831 2 2 0 6 3114 8967 9763 -15832 2 2 0 6 4905 9185 8523 -15833 2 2 0 6 6743 6746 6745 -15834 2 2 0 6 6040 6042 6880 -15835 2 2 0 6 3278 3281 9198 -15836 2 2 0 6 5544 9175 9576 -15837 2 2 0 6 6264 7185 9646 -15838 2 2 0 6 1141 1159 1142 -15839 2 2 0 6 3847 4644 9345 -15840 2 2 0 6 8974 10019 9905 -15841 2 2 0 6 10085 10182 10124 -15842 2 2 0 6 2446 2474 2633 -15843 2 2 0 6 5087 5088 6026 -15844 2 2 0 6 6005 6118 6117 -15845 2 2 0 6 5325 9328 7448 -15846 2 2 0 6 2091 2093 9634 -15847 2 2 0 6 38 39 545 -15848 2 2 0 6 6314 6316 7227 -15849 2 2 0 6 1837 3536 8994 -15850 2 2 0 6 4533 6471 5904 -15851 2 2 0 6 1376 8890 1377 -15852 2 2 0 6 1808 1807 1909 -15853 2 2 0 6 4818 4950 5009 -15854 2 2 0 6 7283 7285 7417 -15855 2 2 0 6 4691 7704 6167 -15856 2 2 0 6 4122 4124 9210 -15857 2 2 0 6 3092 9098 3095 -15858 2 2 0 6 2293 9250 2298 -15859 2 2 0 6 5016 5335 5927 -15860 2 2 0 6 5854 6350 6599 -15861 2 2 0 6 5748 7499 7658 -15862 2 2 0 6 3517 9298 5536 -15863 2 2 0 6 7298 9823 7761 -15864 2 2 0 6 1506 1807 1507 -15865 2 2 0 6 3575 3576 3577 -15866 2 2 0 6 4320 4619 5164 -15867 2 2 0 6 1672 9841 5430 -15868 2 2 0 6 4101 9191 4951 -15869 2 2 0 6 1976 9334 2595 -15870 2 2 0 6 1685 1691 1686 -15871 2 2 0 6 2485 2650 2486 -15872 2 2 0 6 2787 2883 2882 -15873 2 2 0 6 3635 9644 4268 -15874 2 2 0 6 4566 9330 6009 -15875 2 2 0 6 2406 2558 9708 -15876 2 2 0 6 6310 7851 9879 -15877 2 2 0 6 2122 9630 9367 -15878 2 2 0 6 2323 2468 2467 -15879 2 2 0 6 6593 6594 7254 -15880 2 2 0 6 4468 9655 5237 -15881 2 2 0 6 6436 9363 9722 -15882 2 2 0 6 3380 9500 4160 -15883 2 2 0 6 4674 5376 9031 -15884 2 2 0 6 8467 10037 8611 -15885 2 2 0 6 2395 2396 2559 -15886 2 2 0 6 3629 4180 3635 -15887 2 2 0 6 4611 5913 4612 -15888 2 2 0 6 6256 9019 9018 -15889 2 2 0 6 5680 9480 9382 -15890 2 2 0 6 1909 2184 2182 -15891 2 2 0 6 4529 4531 4530 -15892 2 2 0 6 4743 6249 5537 -15893 2 2 0 6 5182 9212 6779 -15894 2 2 0 6 4230 5408 8857 -15895 2 2 0 6 697 9534 2602 -15896 2 2 0 6 1672 1686 9841 -15897 2 2 0 6 29 30 421 -15898 2 2 0 6 1338 1342 1340 -15899 2 2 0 6 2402 2403 2626 -15900 2 2 0 6 5123 6841 9743 -15901 2 2 0 6 131 132 485 -15902 2 2 0 6 5244 5245 6993 -15903 2 2 0 6 6477 9684 9933 -15904 2 2 0 6 5605 8313 9598 -15905 2 2 0 6 7309 7319 9903 -15906 2 2 0 6 5932 6010 10769 -15907 2 2 0 6 6441 6459 6458 -15908 2 2 0 6 5165 5182 6778 -15909 2 2 0 6 3682 3996 9404 -15910 2 2 0 6 2510 9525 2511 -15911 2 2 0 6 1940 1941 2205 -15912 2 2 0 6 5996 6339 5997 -15913 2 2 0 6 5772 9977 10179 -15914 2 2 0 6 2889 2986 8974 -15915 2 2 0 6 2704 2706 9362 -15916 2 2 0 6 33 484 9416 -15917 2 2 0 6 2838 2840 9426 -15918 2 2 0 6 2284 10058 8739 -15919 2 2 0 6 2591 2592 2593 -15920 2 2 0 6 5335 5844 7171 -15921 2 2 0 6 3500 8947 9635 -15922 2 2 0 6 39 40 9435 -15923 2 2 0 6 5993 7194 5994 -15924 2 2 0 6 878 9437 3714 -15925 2 2 0 6 2473 9850 2635 -15926 2 2 0 6 5790 8544 9647 -15927 2 2 0 6 2929 9929 9587 -15928 2 2 0 6 1965 2254 1966 -15929 2 2 0 6 2553 2694 4459 -15930 2 2 0 6 6431 6432 9725 -15931 2 2 0 6 2182 9481 2359 -15932 2 2 0 6 339 340 9537 -15933 2 2 0 6 2981 3999 3813 -15934 2 2 0 6 4649 5154 5155 -15935 2 2 0 6 3578 9444 3808 -15936 2 2 0 6 588 5513 9065 -15937 2 2 0 6 1241 8986 1814 -15938 2 2 0 6 2368 9092 2420 -15939 2 2 0 6 8501 9205 9204 -15940 2 2 0 6 3426 9315 4012 -15941 2 2 0 6 4500 9429 5136 -15942 2 2 0 6 5650 5668 9785 -15943 2 2 0 6 4282 8645 4651 -15944 2 2 0 6 8385 8386 9491 -15945 2 2 0 6 6481 9861 10050 -15946 2 2 0 6 1325 9147 6402 -15947 2 2 0 6 999 9289 1009 -15948 2 2 0 6 1067 9341 3617 -15949 2 2 0 6 3574 9602 9892 -15950 2 2 0 6 3805 3806 4259 -15951 2 2 0 6 2996 3825 7725 -15952 2 2 0 6 1624 9342 1627 -15953 2 2 0 6 580 582 9608 -15954 2 2 0 6 2864 3335 3333 -15955 2 2 0 6 4618 5182 5165 -15956 2 2 0 6 5621 9982 9871 -15957 2 2 0 6 3095 9390 3096 -15958 2 2 0 6 3672 9593 3949 -15959 2 2 0 6 1109 1521 9459 -15960 2 2 0 6 5675 9390 9732 -15961 2 2 0 6 1137 8277 2597 -15962 2 2 0 6 1269 1283 1303 -15963 2 2 0 6 2220 9570 2223 -15964 2 2 0 6 6726 6752 6728 -15965 2 2 0 6 5638 9656 9484 -15966 2 2 0 6 7306 8581 7313 -15967 2 2 0 6 5266 7145 9514 -15968 2 2 0 6 6419 9383 9236 -15969 2 2 0 6 5613 9283 9154 -15970 2 2 0 6 4617 6736 5169 -15971 2 2 0 6 4151 4857 9284 -15972 2 2 0 6 2612 3505 3520 -15973 2 2 0 6 733 9581 8697 -15974 2 2 0 6 3385 4110 5087 -15975 2 2 0 6 2262 2315 8866 -15976 2 2 0 6 4625 5176 5039 -15977 2 2 0 6 5330 5331 7193 -15978 2 2 0 6 3558 3641 3557 -15979 2 2 0 6 5676 5675 5677 -15980 2 2 0 6 6491 6514 6493 -15981 2 2 0 6 1717 1773 1723 -15982 2 2 0 6 2456 2739 2738 -15983 2 2 0 6 1358 1489 1488 -15984 2 2 0 6 5137 6766 6780 -15985 2 2 0 6 1039 10316 8039 -15986 2 2 0 6 3209 9482 4215 -15987 2 2 0 6 3356 3927 9526 -15988 2 2 0 6 3884 3635 4268 -15989 2 2 0 6 5175 6573 6574 -15990 2 2 0 6 5256 7065 6164 -15991 2 2 0 6 5056 5057 5058 -15992 2 2 0 6 305 306 9516 -15993 2 2 0 6 5728 9196 9473 -15994 2 2 0 6 7792 10234 7799 -15995 2 2 0 6 2765 2769 2767 -15996 2 2 0 6 2510 5566 9525 -15997 2 2 0 6 2477 2625 3054 -15998 2 2 0 6 3707 4109 4825 -15999 2 2 0 6 5645 9736 6451 -16000 2 2 0 6 217 218 547 -16001 2 2 0 6 6291 7827 7826 -16002 2 2 0 6 4696 5038 5244 -16003 2 2 0 6 575 5692 576 -16004 2 2 0 6 3240 9737 9772 -16005 2 2 0 6 6447 6446 6832 -16006 2 2 0 6 4179 9386 10000 -16007 2 2 0 6 5313 11145 8753 -16008 2 2 0 6 4612 5168 4613 -16009 2 2 0 6 6488 6491 6492 -16010 2 2 0 6 6493 6515 6516 -16011 2 2 0 6 5548 9645 5689 -16012 2 2 0 6 2976 2975 2977 -16013 2 2 0 6 6486 6488 6487 -16014 2 2 0 6 4465 9655 4468 -16015 2 2 0 6 6468 9780 9779 -16016 2 2 0 6 2908 2909 3214 -16017 2 2 0 6 2144 2207 2208 -16018 2 2 0 6 1165 5791 1167 -16019 2 2 0 6 5233 5234 7002 -16020 2 2 0 6 2205 2318 8199 -16021 2 2 0 6 2983 9901 3234 -16022 2 2 0 6 326 9255 537 -16023 2 2 0 6 4459 4460 4499 -16024 2 2 0 6 2391 2611 8939 -16025 2 2 0 6 4090 9146 4094 -16026 2 2 0 6 3745 9369 5073 -16027 2 2 0 6 2136 5441 9630 -16028 2 2 0 6 3060 9427 9799 -16029 2 2 0 6 8260 8262 10552 -16030 2 2 0 6 5432 9485 7673 -16031 2 2 0 6 8135 9375 10002 -16032 2 2 0 6 4250 10031 9572 -16033 2 2 0 6 4524 4525 4526 -16034 2 2 0 6 2325 9944 2495 -16035 2 2 0 6 2700 9417 8933 -16036 2 2 0 6 2262 8866 2264 -16037 2 2 0 6 1414 9030 1760 -16038 2 2 0 6 3745 4567 4566 -16039 2 2 0 6 4567 5073 5074 -16040 2 2 0 6 6142 6864 6865 -16041 2 2 0 6 1960 8607 8608 -16042 2 2 0 6 136 137 548 -16043 2 2 0 6 3879 4233 8063 -16044 2 2 0 6 1754 4455 9483 -16045 2 2 0 6 1160 1159 1186 -16046 2 2 0 6 2359 3725 2522 -16047 2 2 0 6 2938 3768 3767 -16048 2 2 0 6 2519 8870 4033 -16049 2 2 0 6 3545 9792 3546 -16050 2 2 0 6 25 7003 11293 -16051 2 2 0 6 40 41 461 -16052 2 2 0 6 2590 2592 2591 -16053 2 2 0 6 3106 3112 3107 -16054 2 2 0 6 2781 3633 3632 -16055 2 2 0 6 4522 4842 5350 -16056 2 2 0 6 2285 9109 9829 -16057 2 2 0 6 3518 9001 4120 -16058 2 2 0 6 3657 9842 7748 -16059 2 2 0 6 6393 9959 8761 -16060 2 2 0 6 2622 2781 3632 -16061 2 2 0 6 1772 1872 1789 -16062 2 2 0 6 2973 2975 2974 -16063 2 2 0 6 2913 3217 3218 -16064 2 2 0 6 3641 3642 4191 -16065 2 2 0 6 4251 5156 5157 -16066 2 2 0 6 1901 9488 1923 -16067 2 2 0 6 5176 6144 5879 -16068 2 2 0 6 6314 7227 7368 -16069 2 2 0 6 6259 5903 7375 -16070 2 2 0 6 3405 3401 8821 -16071 2 2 0 6 2216 8993 8752 -16072 2 2 0 6 2983 2984 3003 -16073 2 2 0 6 5804 6150 5805 -16074 2 2 0 6 2978 9169 9197 -16075 2 2 0 6 3192 4923 9819 -16076 2 2 0 6 3401 9049 8821 -16077 2 2 0 6 4110 9454 5415 -16078 2 2 0 6 6004 6011 7387 -16079 2 2 0 6 2900 9627 8756 -16080 2 2 0 6 4955 9184 9950 -16081 2 2 0 6 4281 8785 4759 -16082 2 2 0 6 679 1753 9195 -16083 2 2 0 6 9011 10075 10150 -16084 2 2 0 6 1173 1177 1176 -16085 2 2 0 6 2116 2590 2591 -16086 2 2 0 6 4303 5300 5437 -16087 2 2 0 6 5818 7281 9721 -16088 2 2 0 6 6746 9664 6747 -16089 2 2 0 6 2669 2910 2670 -16090 2 2 0 6 2495 9944 10068 -16091 2 2 0 6 623 624 8885 -16092 2 2 0 6 2822 2824 8992 -16093 2 2 0 6 5507 6062 9063 -16094 2 2 0 6 2976 3251 9431 -16095 2 2 0 6 3758 9208 4456 -16096 2 2 0 6 1553 9723 4351 -16097 2 2 0 6 4259 4603 4661 -16098 2 2 0 6 1885 9363 1978 -16099 2 2 0 6 325 537 9172 -16100 2 2 0 6 999 3528 9289 -16101 2 2 0 6 5688 7392 10587 -16102 2 2 0 6 1318 1506 1319 -16103 2 2 0 6 6413 6414 9618 -16104 2 2 0 6 4164 9992 5015 -16105 2 2 0 6 3066 7452 10911 -16106 2 2 0 6 4123 4608 5896 -16107 2 2 0 6 6674 6817 6818 -16108 2 2 0 6 5259 6990 6995 -16109 2 2 0 6 7299 7301 7316 -16110 2 2 0 6 7710 7712 7711 -16111 2 2 0 6 3487 3489 9425 -16112 2 2 0 6 2511 9525 2648 -16113 2 2 0 6 3443 11066 11052 -16114 2 2 0 6 2871 9528 2872 -16115 2 2 0 6 2867 9285 9616 -16116 2 2 0 6 6539 6541 6542 -16117 2 2 0 6 5430 9841 8556 -16118 2 2 0 6 2426 2694 2553 -16119 2 2 0 6 3955 4738 4275 -16120 2 2 0 6 4267 5070 5071 -16121 2 2 0 6 4634 5152 6673 -16122 2 2 0 6 2877 9279 3152 -16123 2 2 0 6 992 1045 9317 -16124 2 2 0 6 3886 5037 4696 -16125 2 2 0 6 2690 2849 9604 -16126 2 2 0 6 3007 9942 4130 -16127 2 2 0 6 5083 9333 5814 -16128 2 2 0 6 3632 3633 3810 -16129 2 2 0 6 3767 4125 4126 -16130 2 2 0 6 3303 3893 4308 -16131 2 2 0 6 6871 6873 6872 -16132 2 2 0 6 1728 3592 1730 -16133 2 2 0 6 32 33 9416 -16134 2 2 0 6 6537 6540 6539 -16135 2 2 0 6 5152 6674 6673 -16136 2 2 0 6 575 9796 5831 -16137 2 2 0 6 8649 9829 9109 -16138 2 2 0 6 6437 7703 9541 -16139 2 2 0 6 1203 1205 7948 -16140 2 2 0 6 5680 9555 9480 -16141 2 2 0 6 10035 10227 905 -16142 2 2 0 6 2809 3263 3978 -16143 2 2 0 6 4667 6670 6671 -16144 2 2 0 6 6588 9062 9061 -16145 2 2 0 6 8650 9822 9800 -16146 2 2 0 6 3633 4129 3810 -16147 2 2 0 6 1741 9751 1746 -16148 2 2 0 6 4220 5112 4335 -16149 2 2 0 6 6099 6756 6755 -16150 2 2 0 6 6056 7104 7105 -16151 2 2 0 6 7057 9853 8255 -16152 2 2 0 6 5847 10299 10429 -16153 2 2 0 6 5074 6593 5075 -16154 2 2 0 6 5117 6117 9085 -16155 2 2 0 6 1030 1097 1037 -16156 2 2 0 6 2479 2628 2930 -16157 2 2 0 6 1963 5700 9386 -16158 2 2 0 6 5996 6340 6339 -16159 2 2 0 6 676 1209 9407 -16160 2 2 0 6 4743 7126 6249 -16161 2 2 0 6 2706 2709 9362 -16162 2 2 0 6 2502 9740 9739 -16163 2 2 0 6 2359 2522 2360 -16164 2 2 0 6 1963 9386 2252 -16165 2 2 0 6 5531 9116 6628 -16166 2 2 0 6 2988 3793 3792 -16167 2 2 0 6 3768 4127 4125 -16168 2 2 0 6 4492 4491 4510 -16169 2 2 0 6 3810 4129 4617 -16170 2 2 0 6 4620 4622 4623 -16171 2 2 0 6 4689 4774 4773 -16172 2 2 0 6 5280 5281 5393 -16173 2 2 0 6 5059 6079 5060 -16174 2 2 0 6 6515 6517 6516 -16175 2 2 0 6 2973 4542 9169 -16176 2 2 0 6 4425 6454 9426 -16177 2 2 0 6 3661 3997 9574 -16178 2 2 0 6 1512 1809 1774 -16179 2 2 0 6 4614 5135 6139 -16180 2 2 0 6 5633 9861 5635 -16181 2 2 0 6 6438 8469 9546 -16182 2 2 0 6 127 128 422 -16183 2 2 0 6 4573 4828 9378 -16184 2 2 0 6 2590 10009 9963 -16185 2 2 0 6 3624 10143 3896 -16186 2 2 0 6 4499 4500 4614 -16187 2 2 0 6 1771 1791 9594 -16188 2 2 0 6 1170 1169 1171 -16189 2 2 0 6 1996 5905 1998 -16190 2 2 0 6 6474 9124 9982 -16191 2 2 0 6 6211 7124 6212 -16192 2 2 0 6 4923 9057 9819 -16193 2 2 0 6 4419 5826 9976 -16194 2 2 0 6 4129 4667 9360 -16195 2 2 0 6 1063 1064 9341 -16196 2 2 0 6 6409 7330 10016 -16197 2 2 0 6 1323 1442 1514 -16198 2 2 0 6 4236 4237 4280 -16199 2 2 0 6 1232 1233 1267 -16200 2 2 0 6 2182 2359 2183 -16201 2 2 0 6 1809 3711 3710 -16202 2 2 0 6 4011 4634 9532 -16203 2 2 0 6 8928 9583 8996 -16204 2 2 0 6 3535 9530 9672 -16205 2 2 0 6 4460 4500 4499 -16206 2 2 0 6 2428 8483 2924 -16207 2 2 0 6 2694 4460 4459 -16208 2 2 0 6 652 655 9635 -16209 2 2 0 6 4917 5012 6388 -16210 2 2 0 6 3897 3899 9881 -16211 2 2 0 6 1117 1119 8926 -16212 2 2 0 6 3950 4650 3952 -16213 2 2 0 6 2554 8982 2629 -16214 2 2 0 6 5603 6601 9551 -16215 2 2 0 6 1862 9196 3529 -16216 2 2 0 6 1172 1171 1173 -16217 2 2 0 6 1290 1318 1292 -16218 2 2 0 6 2217 9478 8442 -16219 2 2 0 6 2205 2206 2318 -16220 2 2 0 6 2492 2493 2837 -16221 2 2 0 6 2185 5091 4494 -16222 2 2 0 6 2471 7626 7624 -16223 2 2 0 6 2960 9671 2962 -16224 2 2 0 6 966 9937 3372 -16225 2 2 0 6 3839 9844 3840 -16226 2 2 0 6 6537 6539 6538 -16227 2 2 0 6 6146 6300 7925 -16228 2 2 0 6 3850 10185 3852 -16229 2 2 0 6 4168 9185 4905 -16230 2 2 0 6 3638 3745 3744 -16231 2 2 0 6 5175 6574 6850 -16232 2 2 0 6 2005 9305 2008 -16233 2 2 0 6 1479 10069 1482 -16234 2 2 0 6 26 27 487 -16235 2 2 0 6 1343 1344 1345 -16236 2 2 0 6 1488 1489 1509 -16237 2 2 0 6 1783 1784 1805 -16238 2 2 0 6 3911 3955 3954 -16239 2 2 0 6 2491 7663 3643 -16240 2 2 0 6 138 139 463 -16241 2 2 0 6 2784 9659 9009 -16242 2 2 0 6 1974 2231 2232 -16243 2 2 0 6 5782 5784 6108 -16244 2 2 0 6 6753 6761 6762 -16245 2 2 0 6 1228 3638 1236 -16246 2 2 0 6 4308 5738 5303 -16247 2 2 0 6 2209 5841 5012 -16248 2 2 0 6 4956 9831 9594 -16249 2 2 0 6 2919 3040 3303 -16250 2 2 0 6 3611 9251 5780 -16251 2 2 0 6 4125 4127 9714 -16252 2 2 0 6 589 3631 591 -16253 2 2 0 6 4487 4488 4647 -16254 2 2 0 6 3796 4999 6643 -16255 2 2 0 6 3808 9444 4618 -16256 2 2 0 6 1196 1230 1213 -16257 2 2 0 6 1288 3620 9147 -16258 2 2 0 6 4651 5159 4652 -16259 2 2 0 6 4437 8179 8809 -16260 2 2 0 6 3029 9283 9375 -16261 2 2 0 6 9239 6390 9609 -16262 2 2 0 6 3006 3261 3260 -16263 2 2 0 6 5012 5841 6563 -16264 2 2 0 6 6456 9806 9080 -16265 2 2 0 6 2115 2130 10045 -16266 2 2 0 6 1236 3744 8671 -16267 2 2 0 6 2532 9138 2534 -16268 2 2 0 6 4500 5135 4614 -16269 2 2 0 6 2468 2933 9220 -16270 2 2 0 6 1059 9511 1061 -16271 2 2 0 6 2694 9641 4998 -16272 2 2 0 6 5514 9366 9917 -16273 2 2 0 6 1167 1169 1168 -16274 2 2 0 6 3578 4040 9444 -16275 2 2 0 6 3836 4265 4675 -16276 2 2 0 6 3887 9588 5070 -16277 2 2 0 6 4764 6105 8053 -16278 2 2 0 6 8496 10182 4466 -16279 2 2 0 6 1939 2199 2198 -16280 2 2 0 6 643 9921 8936 -16281 2 2 0 6 1909 2182 1910 -16282 2 2 0 6 5104 9610 10033 -16283 2 2 0 6 1343 1342 1344 -16284 2 2 0 6 1513 1774 1775 -16285 2 2 0 6 5100 9069 6071 -16286 2 2 0 6 5646 9784 6423 -16287 2 2 0 6 1781 1782 1783 -16288 2 2 0 6 4318 4319 4320 -16289 2 2 0 6 5544 9576 5546 -16290 2 2 0 6 3982 9676 4777 -16291 2 2 0 6 3438 10233 10164 -16292 2 2 0 6 7285 7286 8635 -16293 2 2 0 6 5212 6185 9749 -16294 2 2 0 6 5154 6134 5155 -16295 2 2 0 6 4651 5454 5159 -16296 2 2 0 6 4706 6100 5669 -16297 2 2 0 6 2714 2716 9477 -16298 2 2 0 6 7281 7283 10030 -16299 2 2 0 6 3840 9844 3964 -16300 2 2 0 6 5810 5903 6259 -16301 2 2 0 6 6221 6486 6487 -16302 2 2 0 6 1636 5618 9302 -16303 2 2 0 6 9222 10459 10519 -16304 2 2 0 6 6141 6866 6864 -16305 2 2 0 6 4801 9932 7887 -16306 2 2 0 6 3281 9979 9198 -16307 2 2 0 6 4754 5488 8758 -16308 2 2 0 6 3091 9098 3092 -16309 2 2 0 6 1169 9807 1357 -16310 2 2 0 6 6609 8263 10673 -16311 2 2 0 6 1665 1668 1666 -16312 2 2 0 6 5324 7354 7355 -16313 2 2 0 6 7186 9512 9579 -16314 2 2 0 6 4083 9742 5061 -16315 2 2 0 6 1903 4494 9768 -16316 2 2 0 6 3574 8197 10084 -16317 2 2 0 6 3770 3773 3772 -16318 2 2 0 6 6250 7954 7953 -16319 2 2 0 6 5604 9531 8689 -16320 2 2 0 6 6463 10168 8239 -16321 2 2 0 6 2888 2985 2889 -16322 2 2 0 6 5633 9399 9861 -16323 2 2 0 6 6042 6051 6734 -16324 2 2 0 6 6494 8505 10086 -16325 2 2 0 6 2571 9758 8431 -16326 2 2 0 6 2275 10058 2284 -16327 2 2 0 6 2974 2975 2976 -16328 2 2 0 6 4612 9470 5168 -16329 2 2 0 6 1141 9415 1159 -16330 2 2 0 6 5941 5996 5995 -16331 2 2 0 6 3080 9493 3083 -16332 2 2 0 6 2930 9507 3737 -16333 2 2 0 6 1100 9759 1103 -16334 2 2 0 6 3939 3940 3943 -16335 2 2 0 6 4292 4885 4884 -16336 2 2 0 6 44 45 405 -16337 2 2 0 6 4259 4661 4679 -16338 2 2 0 6 3792 9572 5683 -16339 2 2 0 6 4634 6673 9532 -16340 2 2 0 6 4139 9767 8490 -16341 2 2 0 6 985 996 995 -16342 2 2 0 6 3003 4262 9901 -16343 2 2 0 6 1458 10382 10528 -16344 2 2 0 6 3984 9519 5686 -16345 2 2 0 6 3170 9905 5941 -16346 2 2 0 6 1345 1346 1347 -16347 2 2 0 6 1737 9083 3653 -16348 2 2 0 6 4728 9662 6181 -16349 2 2 0 6 5366 5367 6082 -16350 2 2 0 6 1607 9394 1608 -16351 2 2 0 6 1097 1130 1098 -16352 2 2 0 6 2329 2331 8541 -16353 2 2 0 6 5690 9467 9622 -16354 2 2 0 6 1090 9371 1096 -16355 2 2 0 6 1668 1671 1669 -16356 2 2 0 6 6445 6444 6446 -16357 2 2 0 6 5214 9749 7072 -16358 2 2 0 6 4652 5159 5160 -16359 2 2 0 6 1406 1407 9629 -16360 2 2 0 6 1641 9135 1638 -16361 2 2 0 6 2777 9235 3059 -16362 2 2 0 6 5238 10469 10362 -16363 2 2 0 6 3061 4161 4162 -16364 2 2 0 6 2589 9582 9581 -16365 2 2 0 6 3843 5758 5050 -16366 2 2 0 6 7954 8464 7955 -16367 2 2 0 6 2931 3237 3741 -16368 2 2 0 6 4511 4609 4513 -16369 2 2 0 6 6481 10113 6482 -16370 2 2 0 6 1169 1357 1171 -16371 2 2 0 6 4573 9378 5319 -16372 2 2 0 6 5362 7512 5364 -16373 2 2 0 6 7619 10192 10181 -16374 2 2 0 6 1903 1940 2185 -16375 2 2 0 6 2143 2207 2144 -16376 2 2 0 6 3209 3238 3803 -16377 2 2 0 6 4704 4706 4705 -16378 2 2 0 6 2530 9190 2785 -16379 2 2 0 6 5977 9468 9706 -16380 2 2 0 6 4907 10208 8132 -16381 2 2 0 6 2100 2590 2116 -16382 2 2 0 6 1831 1948 1946 -16383 2 2 0 6 1644 3552 9135 -16384 2 2 0 6 5110 6109 6114 -16385 2 2 0 6 5243 8056 8057 -16386 2 2 0 6 6343 8548 9738 -16387 2 2 0 6 4283 4285 4284 -16388 2 2 0 6 4436 4807 4809 -16389 2 2 0 6 5232 6182 7075 -16390 2 2 0 6 42 43 550 -16391 2 2 0 6 2837 3060 2841 -16392 2 2 0 6 5451 9620 5453 -16393 2 2 0 6 6255 8006 8307 -16394 2 2 0 6 1509 1510 1767 -16395 2 2 0 6 363 364 8304 -16396 2 2 0 6 4777 9676 7339 -16397 2 2 0 6 3713 9574 9888 -16398 2 2 0 6 4285 4770 4284 -16399 2 2 0 6 3999 4967 4457 -16400 2 2 0 6 1204 8851 1215 -16401 2 2 0 6 4744 4745 5278 -16402 2 2 0 6 4990 6382 5821 -16403 2 2 0 6 6543 6545 6546 -16404 2 2 0 6 6526 6869 6867 -16405 2 2 0 6 1203 1204 1205 -16406 2 2 0 6 1347 1348 1349 -16407 2 2 0 6 6517 6537 6538 -16408 2 2 0 6 3517 3519 9298 -16409 2 2 0 6 5647 5650 9785 -16410 2 2 0 6 4076 5057 5056 -16411 2 2 0 6 2952 8965 8966 -16412 2 2 0 6 9278 9824 9596 -16413 2 2 0 6 6818 6817 6819 -16414 2 2 0 6 4519 9512 5846 -16415 2 2 0 6 2940 7715 10448 -16416 2 2 0 6 581 3723 583 -16417 2 2 0 6 3152 9279 4495 -16418 2 2 0 6 2768 2912 2913 -16419 2 2 0 6 8650 8651 9822 -16420 2 2 0 6 214 215 440 -16421 2 2 0 6 1165 1167 1166 -16422 2 2 0 6 4920 9105 9356 -16423 2 2 0 6 2618 2936 2937 -16424 2 2 0 6 2619 2938 2936 -16425 2 2 0 6 4160 9500 5682 -16426 2 2 0 6 320 483 9271 -16427 2 2 0 6 4832 5498 9530 -16428 2 2 0 6 5345 8817 7427 -16429 2 2 0 6 8035 8037 8656 -16430 2 2 0 6 3076 9679 3079 -16431 2 2 0 6 1007 3648 1019 -16432 2 2 0 6 1805 1900 2675 -16433 2 2 0 6 5833 6320 6319 -16434 2 2 0 6 5530 9048 9047 -16435 2 2 0 6 1923 9489 2186 -16436 2 2 0 6 3936 3938 3939 -16437 2 2 0 6 3999 4457 4000 -16438 2 2 0 6 3309 4292 4884 -16439 2 2 0 6 8402 8403 9118 -16440 2 2 0 6 1929 8236 9351 -16441 2 2 0 6 7611 10453 10387 -16442 2 2 0 6 3245 3769 3247 -16443 2 2 0 6 2412 9565 2921 -16444 2 2 0 6 142 143 406 -16445 2 2 0 6 2912 3217 2913 -16446 2 2 0 6 3099 4745 4744 -16447 2 2 0 6 2741 2743 8934 -16448 2 2 0 6 3262 3885 3886 -16449 2 2 0 6 3910 4994 5800 -16450 2 2 0 6 6144 6781 6658 -16451 2 2 0 6 1781 1783 5789 -16452 2 2 0 6 6481 10050 10113 -16453 2 2 0 6 4365 4367 9336 -16454 2 2 0 6 4367 5632 9336 -16455 2 2 0 6 5637 9685 8717 -16456 2 2 0 6 2406 9708 9944 -16457 2 2 0 6 3834 4523 4248 -16458 2 2 0 6 5007 9458 5008 -16459 2 2 0 6 2163 9578 2214 -16460 2 2 0 6 2695 3238 3209 -16461 2 2 0 6 3773 3836 3774 -16462 2 2 0 6 4510 4512 4511 -16463 2 2 0 6 5714 7956 7957 -16464 2 2 0 6 1834 4956 9594 -16465 2 2 0 6 5451 7490 9620 -16466 2 2 0 6 5627 5628 6331 -16467 2 2 0 6 8650 9800 9920 -16468 2 2 0 6 7304 8581 7306 -16469 2 2 0 6 2822 8992 3481 -16470 2 2 0 6 3504 3761 9174 -16471 2 2 0 6 3758 4120 9208 -16472 2 2 0 6 2234 2357 4058 -16473 2 2 0 6 41 42 9422 -16474 2 2 0 6 573 574 9447 -16475 2 2 0 6 4802 9985 6263 -16476 2 2 0 6 1205 1215 1227 -16477 2 2 0 6 5538 9580 9076 -16478 2 2 0 6 6670 6851 6671 -16479 2 2 0 6 2186 9489 2463 -16480 2 2 0 6 5615 10002 9283 -16481 2 2 0 6 5380 5381 5379 -16482 2 2 0 6 3964 9844 4666 -16483 2 2 0 6 1380 9038 9039 -16484 2 2 0 6 4275 4283 4276 -16485 2 2 0 6 663 664 9070 -16486 2 2 0 6 2270 9391 2279 -16487 2 2 0 6 1402 9609 9547 -16488 2 2 0 6 124 125 488 -16489 2 2 0 6 1358 1488 1320 -16490 2 2 0 6 3803 4249 4263 -16491 2 2 0 6 5806 6226 7001 -16492 2 2 0 6 1987 7704 4691 -16493 2 2 0 6 1697 11081 11089 -16494 2 2 0 6 8689 9671 9252 -16495 2 2 0 6 23 24 425 -16496 2 2 0 6 1271 1282 1304 -16497 2 2 0 6 2444 9464 4966 -16498 2 2 0 6 4111 9804 5255 -16499 2 2 0 6 4578 4580 10046 -16500 2 2 0 6 5238 10362 10295 -16501 2 2 0 6 3765 3766 3520 -16502 2 2 0 6 3007 4130 3254 -16503 2 2 0 6 2910 9936 9408 -16504 2 2 0 6 3632 9178 9621 -16505 2 2 0 6 6394 9921 8959 -16506 2 2 0 6 1416 9643 9030 -16507 2 2 0 6 1140 3673 1158 -16508 2 2 0 6 657 658 8813 -16509 2 2 0 6 4215 9482 9136 -16510 2 2 0 6 3815 9782 4632 -16511 2 2 0 6 5710 5712 6183 -16512 2 2 0 6 1173 9767 4139 -16513 2 2 0 6 6551 7178 9675 -16514 2 2 0 6 3550 9792 3915 -16515 2 2 0 6 140 141 551 -16516 2 2 0 6 5168 6870 5179 -16517 2 2 0 6 4407 5192 9874 -16518 2 2 0 6 4885 5370 5812 -16519 2 2 0 6 6493 6514 6515 -16520 2 2 0 6 1509 9768 9202 -16521 2 2 0 6 2885 2887 2886 -16522 2 2 0 6 2714 9477 3637 -16523 2 2 0 6 3262 3886 4695 -16524 2 2 0 6 3368 8605 10194 -16525 2 2 0 6 4126 5115 5116 -16526 2 2 0 6 6252 7870 6631 -16527 2 2 0 6 5529 9527 8165 -16528 2 2 0 6 3459 9132 3463 -16529 2 2 0 6 1566 9460 1588 -16530 2 2 0 6 4241 5174 4662 -16531 2 2 0 6 5154 6791 6134 -16532 2 2 0 6 3131 3132 9446 -16533 2 2 0 6 2199 2201 2200 -16534 2 2 0 6 3217 4121 3218 -16535 2 2 0 6 3309 4884 9604 -16536 2 2 0 6 2358 2489 2612 -16537 2 2 0 6 2867 9616 2869 -16538 2 2 0 6 1185 9701 1204 -16539 2 2 0 6 6492 6491 6493 -16540 2 2 0 6 2553 4459 8982 -16541 2 2 0 6 3132 3135 9446 -16542 2 2 0 6 2767 2912 2768 -16543 2 2 0 6 6111 6716 6112 -16544 2 2 0 6 3195 3555 9521 -16545 2 2 0 6 1344 2401 1346 -16546 2 2 0 6 6728 7817 6727 -16547 2 2 0 6 4174 9034 4969 -16548 2 2 0 6 5315 9548 6676 -16549 2 2 0 6 6184 7024 7096 -16550 2 2 0 6 604 8055 10521 -16551 2 2 0 6 5394 7582 5396 -16552 2 2 0 6 1488 9202 3568 -16553 2 2 0 6 4460 9429 4500 -16554 2 2 0 6 5739 9983 9808 -16555 2 2 0 6 304 305 471 -16556 2 2 0 6 1767 1803 1810 -16557 2 2 0 6 2643 9220 3759 -16558 2 2 0 6 1960 8608 9748 -16559 2 2 0 6 6477 10100 9684 -16560 2 2 0 6 6536 9493 10250 -16561 2 2 0 6 1956 1959 1958 -16562 2 2 0 6 2330 8555 2407 -16563 2 2 0 6 1486 9246 9478 -16564 2 2 0 6 2910 4491 4492 -16565 2 2 0 6 5233 7002 7067 -16566 2 2 0 6 4122 9210 4607 -16567 2 2 0 6 4829 9238 4831 -16568 2 2 0 6 8107 8105 9312 -16569 2 2 0 6 6522 10123 10329 -16570 2 2 0 6 1872 1967 1965 -16571 2 2 0 6 4249 5175 4263 -16572 2 2 0 6 4810 9450 9754 -16573 2 2 0 6 2407 3005 2408 -16574 2 2 0 6 2932 3237 2931 -16575 2 2 0 6 4129 9360 4617 -16576 2 2 0 6 6368 9311 7468 -16577 2 2 0 6 5541 7419 9558 -16578 2 2 0 6 1940 9887 2185 -16579 2 2 0 6 2201 2364 2363 -16580 2 2 0 6 2612 2613 3505 -16581 2 2 0 6 6100 6101 6102 -16582 2 2 0 6 1649 1652 9406 -16583 2 2 0 6 2538 2720 10025 -16584 2 2 0 6 3238 4249 3803 -16585 2 2 0 6 5676 5677 6220 -16586 2 2 0 6 2626 2627 2805 -16587 2 2 0 6 5203 9045 9569 -16588 2 2 0 6 8757 9783 9626 -16589 2 2 0 6 4833 5341 10222 -16590 2 2 0 6 1035 9608 8445 -16591 2 2 0 6 2204 2323 2322 -16592 2 2 0 6 2507 2669 2668 -16593 2 2 0 6 4164 5015 5014 -16594 2 2 0 6 3611 5298 4454 -16595 2 2 0 6 6070 6071 9623 -16596 2 2 0 6 2739 2988 2987 -16597 2 2 0 6 1977 9389 9705 -16598 2 2 0 6 1165 9682 5791 -16599 2 2 0 6 8404 9632 8405 -16600 2 2 0 6 1145 1153 9455 -16601 2 2 0 6 5342 7272 9908 -16602 2 2 0 6 1145 9455 9325 -16603 2 2 0 6 1775 9484 1794 -16604 2 2 0 6 1102 1104 9596 -16605 2 2 0 6 2885 2888 2887 -16606 2 2 0 6 3315 5809 3966 -16607 2 2 0 6 6101 6184 6102 -16608 2 2 0 6 2959 4437 8809 -16609 2 2 0 6 2521 9214 3525 -16610 2 2 0 6 2930 2931 9507 -16611 2 2 0 6 4112 9744 5772 -16612 2 2 0 6 7124 7383 7125 -16613 2 2 0 6 1503 1781 9940 -16614 2 2 0 6 2777 2915 9235 -16615 2 2 0 6 5560 9194 9806 -16616 2 2 0 6 4567 9330 4566 -16617 2 2 0 6 5114 5113 6709 -16618 2 2 0 6 2717 9472 2981 -16619 2 2 0 6 2143 2209 2207 -16620 2 2 0 6 2208 2207 9907 -16621 2 2 0 6 4745 5279 5278 -16622 2 2 0 6 5183 6777 6776 -16623 2 2 0 6 6069 6830 6831 -16624 2 2 0 6 5135 9563 6139 -16625 2 2 0 6 884 888 9471 -16626 2 2 0 6 3045 8802 9624 -16627 2 2 0 6 2765 2767 2766 -16628 2 2 0 6 3243 3244 3245 -16629 2 2 0 6 2528 9190 2530 -16630 2 2 0 6 9282 9594 9831 -16631 2 2 0 6 4899 7904 8535 -16632 2 2 0 6 2444 2446 9464 -16633 2 2 0 6 1153 3626 9455 -16634 2 2 0 6 5797 6115 5808 -16635 2 2 0 6 5776 6201 6691 -16636 2 2 0 6 1835 1837 8994 -16637 2 2 0 6 958 9399 961 -16638 2 2 0 6 800 9567 5629 -16639 2 2 0 6 3095 9732 9390 -16640 2 2 0 6 2711 3637 9794 -16641 2 2 0 6 2331 2407 2408 -16642 2 2 0 6 3572 3898 9976 -16643 2 2 0 6 680 3450 9912 -16644 2 2 0 6 5144 9316 6788 -16645 2 2 0 6 2040 2928 9515 -16646 2 2 0 6 1775 1794 1792 -16647 2 2 0 6 5738 7069 6199 -16648 2 2 0 6 4059 9809 5717 -16649 2 2 0 6 3091 10165 8949 -16650 2 2 0 6 2700 2702 9417 -16651 2 2 0 6 5913 6116 6720 -16652 2 2 0 6 337 9292 536 -16653 2 2 0 6 4576 5324 9617 -16654 2 2 0 6 1900 2676 2675 -16655 2 2 0 6 6353 9910 6354 -16656 2 2 0 6 5034 5887 9697 -16657 2 2 0 6 4048 9827 9500 -16658 2 2 0 6 5275 9880 5294 -16659 2 2 0 6 649 10959 10980 -16660 2 2 0 6 2716 2832 9477 -16661 2 2 0 6 4672 5123 9743 -16662 2 2 0 6 5946 7918 10352 -16663 2 2 0 6 1959 2204 2203 -16664 2 2 0 6 3942 4689 4773 -16665 2 2 0 6 6015 6784 6729 -16666 2 2 0 6 3943 9571 7271 -16667 2 2 0 6 3247 3769 3770 -16668 2 2 0 6 5757 10092 9895 -16669 2 2 0 6 5543 7425 9097 -16670 2 2 0 6 3085 3086 10119 -16671 2 2 0 6 3879 4605 4604 -16672 2 2 0 6 3195 9521 3194 -16673 2 2 0 6 9346 5957 9862 -16674 2 2 0 6 3598 9906 4014 -16675 2 2 0 6 4457 4521 4458 -16676 2 2 0 6 2522 3725 3726 -16677 2 2 0 6 4542 9165 9166 -16678 2 2 0 6 4140 4703 4704 -16679 2 2 0 6 869 8893 872 -16680 2 2 0 6 7568 7573 9183 -16681 2 2 0 6 5135 5137 9563 -16682 2 2 0 6 3356 9526 8575 -16683 2 2 0 6 3075 9679 3076 -16684 2 2 0 6 5695 9763 5697 -16685 2 2 0 6 6478 9938 9405 -16686 2 2 0 6 3009 2645 3010 -16687 2 2 0 6 3001 3759 3760 -16688 2 2 0 6 5115 6719 6718 -16689 2 2 0 6 3878 4604 4606 -16690 2 2 0 6 4365 9336 8636 -16691 2 2 0 6 6030 6111 6112 -16692 2 2 0 6 6213 7267 6648 -16693 2 2 0 6 3233 3962 9095 -16694 2 2 0 6 1891 9389 1977 -16695 2 2 0 6 3876 9676 3982 -16696 2 2 0 6 4125 9714 5115 -16697 2 2 0 6 9993 11215 11229 -16698 2 2 0 6 6255 7231 5437 -16699 2 2 0 6 3178 8841 4044 -16700 2 2 0 6 5622 5624 9677 -16701 2 2 0 6 6448 10361 10494 -16702 2 2 0 6 2321 2478 2479 -16703 2 2 0 6 3716 9551 4184 -16704 2 2 0 6 1931 9351 2383 -16705 2 2 0 6 957 9399 958 -16706 2 2 0 6 1855 1960 9748 -16707 2 2 0 6 5117 6005 6117 -16708 2 2 0 6 3090 3093 9678 -16709 2 2 0 6 8306 9910 6353 -16710 2 2 0 6 2122 2125 9630 -16711 2 2 0 6 1256 1282 1271 -16712 2 2 0 6 4285 4771 4770 -16713 2 2 0 6 5406 9721 7544 -16714 2 2 0 6 6457 6458 8802 -16715 2 2 0 6 2133 2392 9244 -16716 2 2 0 6 2883 2884 2885 -16717 2 2 0 6 2615 2617 2911 -16718 2 2 0 6 4909 5578 9577 -16719 2 2 0 6 5826 9011 10150 -16720 2 2 0 6 1767 1810 1903 -16721 2 2 0 6 4567 5075 9330 -16722 2 2 0 6 3978 3979 4849 -16723 2 2 0 6 5789 9462 9631 -16724 2 2 0 6 2467 2468 2643 -16725 2 2 0 6 3305 6404 6405 -16726 2 2 0 6 3832 7908 5375 -16727 2 2 0 6 4909 9577 9425 -16728 2 2 0 6 3282 9090 9520 -16729 2 2 0 6 4956 6497 9831 -16730 2 2 0 6 7550 10211 9629 -16731 2 2 0 6 3083 10242 8927 -16732 2 2 0 6 5170 6158 6772 -16733 2 2 0 6 1923 9488 9489 -16734 2 2 0 6 2139 4984 2141 -16735 2 2 0 6 1807 3690 9340 -16736 2 2 0 6 3910 5800 9687 -16737 2 2 0 6 3711 4502 4838 -16738 2 2 0 6 6441 6458 6457 -16739 2 2 0 6 3955 4275 3956 -16740 2 2 0 6 5013 4164 5014 -16741 2 2 0 6 4161 4765 4162 -16742 2 2 0 6 5694 7464 7462 -16743 2 2 0 6 978 9816 985 -16744 2 2 0 6 5726 10042 9883 -16745 2 2 0 6 2467 2643 2727 -16746 2 2 0 6 1101 8666 9441 -16747 2 2 0 6 5517 8398 9810 -16748 2 2 0 6 3529 9196 5728 -16749 2 2 0 6 5846 9512 7186 -16750 2 2 0 6 1746 5760 1772 -16751 2 2 0 6 1668 5699 9339 -16752 2 2 0 6 1739 9751 1741 -16753 2 2 0 6 5440 9075 9543 -16754 2 2 0 6 4667 6671 9360 -16755 2 2 0 6 2969 9165 2971 -16756 2 2 0 6 3489 4909 9425 -16757 2 2 0 6 6518 9998 10171 -16758 2 2 0 6 2367 3575 9092 -16759 2 2 0 6 4114 6074 9804 -16760 2 2 0 6 7761 9823 7764 -16761 2 2 0 6 690 692 9352 -16762 2 2 0 6 1953 1954 1955 -16763 2 2 0 6 5541 9558 7498 -16764 2 2 0 6 1402 1403 9239 -16765 2 2 0 6 2203 2322 8900 -16766 2 2 0 6 7815 9419 7832 -16767 2 2 0 6 4521 6581 4842 -16768 2 2 0 6 2838 9426 9427 -16769 2 2 0 6 3052 9233 9504 -16770 2 2 0 6 8496 8031 10182 -16771 2 2 0 6 1216 9483 9591 -16772 2 2 0 6 2215 2216 8752 -16773 2 2 0 6 5686 9400 5687 -16774 2 2 0 6 4441 9873 8678 -16775 2 2 0 6 3705 3707 9878 -16776 2 2 0 6 5565 8720 9130 -16777 2 2 0 6 4733 9364 5733 -16778 2 2 0 6 2931 3741 9507 -16779 2 2 0 6 4549 9320 8320 -16780 2 2 0 6 3557 8738 9904 -16781 2 2 0 6 4248 4523 4524 -16782 2 2 0 6 3843 5050 5049 -16783 2 2 0 6 121 122 429 -16784 2 2 0 6 2872 9711 4024 -16785 2 2 0 6 4771 5422 6211 -16786 2 2 0 6 8908 9054 9468 -16787 2 2 0 6 2408 3008 10090 -16788 2 2 0 6 6523 10036 10149 -16789 2 2 0 6 4824 9275 9925 -16790 2 2 0 6 21 22 552 -16791 2 2 0 6 1005 7027 7029 -16792 2 2 0 6 1848 9144 9773 -16793 2 2 0 6 3096 9390 3099 -16794 2 2 0 6 3194 9521 4065 -16795 2 2 0 6 1811 1812 1904 -16796 2 2 0 6 647 648 8960 -16797 2 2 0 6 1180 1212 9524 -16798 2 2 0 6 5349 9639 8590 -16799 2 2 0 6 313 9401 439 -16800 2 2 0 6 1282 1320 1304 -16801 2 2 0 6 5811 9247 9946 -16802 2 2 0 6 4556 10421 8060 -16803 2 2 0 6 2969 10291 9165 -16804 2 2 0 6 2869 9616 3689 -16805 2 2 0 6 9115 9808 9983 -16806 2 2 0 6 5164 5183 6776 -16807 2 2 0 6 2357 6368 4058 -16808 2 2 0 6 4271 5222 9667 -16809 2 2 0 6 2704 9362 3614 -16810 2 2 0 6 3260 3262 8964 -16811 2 2 0 6 7596 10025 10277 -16812 2 2 0 6 1948 1950 1949 -16813 2 2 0 6 3060 4161 3061 -16814 2 2 0 6 5279 5676 6209 -16815 2 2 0 6 3939 3943 6637 -16816 2 2 0 6 1652 5626 9406 -16817 2 2 0 6 3535 3960 9530 -16818 2 2 0 6 6451 9994 9084 -16819 2 2 0 6 717 9395 3615 -16820 2 2 0 6 2936 2938 3767 -16821 2 2 0 6 7753 7754 9689 -16822 2 2 0 6 3099 9390 4745 -16823 2 2 0 6 3240 10053 9737 -16824 2 2 0 6 4465 5243 9655 -16825 2 2 0 6 3430 3431 9891 -16826 2 2 0 6 5709 5710 5711 -16827 2 2 0 6 5066 9411 8780 -16828 2 2 0 6 6177 7801 8564 -16829 2 2 0 6 2999 3267 3268 -16830 2 2 0 6 6102 7090 7091 -16831 2 2 0 6 340 341 554 -16832 2 2 0 6 1810 1940 1903 -16833 2 2 0 6 1163 9524 3626 -16834 2 2 0 6 6390 10211 9931 -16835 2 2 0 6 4351 10872 8616 -16836 2 2 0 6 3683 5865 3823 -16837 2 2 0 6 2532 2785 9138 -16838 2 2 0 6 2356 8675 9683 -16839 2 2 0 6 7286 7289 8635 -16840 2 2 0 6 5822 5824 9892 -16841 2 2 0 6 735 2589 9581 -16842 2 2 0 6 3767 3768 4125 -16843 2 2 0 6 3713 9888 6616 -16844 2 2 0 6 1730 9573 1732 -16845 2 2 0 6 3005 3006 3260 -16846 2 2 0 6 39 9435 545 -16847 2 2 0 6 4528 4530 4532 -16848 2 2 0 6 4706 6101 6100 -16849 2 2 0 6 4115 5390 9025 -16850 2 2 0 6 1806 1879 9474 -16851 2 2 0 6 4333 5385 9559 -16852 2 2 0 6 1805 1806 1900 -16853 2 2 0 6 4530 8836 4611 -16854 2 2 0 6 981 9317 5608 -16855 2 2 0 6 3986 5565 9568 -16856 2 2 0 6 7941 9405 9813 -16857 2 2 0 6 1812 5533 1905 -16858 2 2 0 6 3032 3161 9323 -16859 2 2 0 6 5991 10121 6603 -16860 2 2 0 6 5051 9102 6647 -16861 2 2 0 6 1809 3710 1774 -16862 2 2 0 6 4125 5115 4126 -16863 2 2 0 6 8906 9775 8907 -16864 2 2 0 6 713 1165 1166 -16865 2 2 0 6 3237 3843 3741 -16866 2 2 0 6 5788 6475 9847 -16867 2 2 0 6 1303 10567 10603 -16868 2 2 0 6 5057 5059 5058 -16869 2 2 0 6 6728 6752 6753 -16870 2 2 0 6 1159 9415 1188 -16871 2 2 0 6 5863 10276 10306 -16872 2 2 0 6 3635 4180 9644 -16873 2 2 0 6 1398 9547 9924 -16874 2 2 0 6 2727 3001 3227 -16875 2 2 0 6 678 680 9912 -16876 2 2 0 6 1901 1944 9488 -16877 2 2 0 6 5668 9463 9785 -16878 2 2 0 6 4053 9819 4982 -16879 2 2 0 6 7301 9909 7316 -16880 2 2 0 6 5622 9677 9266 -16881 2 2 0 6 5920 9735 7438 -16882 2 2 0 6 4579 7593 7520 -16883 2 2 0 6 2095 2096 10463 -16884 2 2 0 6 7724 10240 10125 -16885 2 2 0 6 2717 8634 9472 -16886 2 2 0 6 2235 2357 2234 -16887 2 2 0 6 2201 2363 2200 -16888 2 2 0 6 2330 2407 2331 -16889 2 2 0 6 4488 9125 5813 -16890 2 2 0 6 2127 2133 9244 -16891 2 2 0 6 8474 10345 8475 -16892 2 2 0 6 2482 9318 2673 -16893 2 2 0 6 8958 3986 9725 -16894 2 2 0 6 7081 9914 7631 -16895 2 2 0 6 4058 6368 7468 -16896 2 2 0 6 4532 4611 4612 -16897 2 2 0 6 2185 5878 5091 -16898 2 2 0 6 3710 3711 4996 -16899 2 2 0 6 5350 5895 5352 -16900 2 2 0 6 3367 3822 9593 -16901 2 2 0 6 6388 9588 6442 -16902 2 2 0 6 1933 9329 1969 -16903 2 2 0 6 2887 2888 2889 -16904 2 2 0 6 4010 4975 9659 -16905 2 2 0 6 2233 2234 2232 -16906 2 2 0 6 1321 5693 1438 -16907 2 2 0 6 6199 7069 7160 -16908 2 2 0 6 4988 9264 6506 -16909 2 2 0 6 2513 8596 9642 -16910 2 2 0 6 2930 2628 2931 -16911 2 2 0 6 1594 1598 9055 -16912 2 2 0 6 6423 9190 9215 -16913 2 2 0 6 1227 1256 1271 -16914 2 2 0 6 3765 4219 4218 -16915 2 2 0 6 6747 6750 6749 -16916 2 2 0 6 6557 8560 9967 -16917 2 2 0 6 2661 9499 2835 -16918 2 2 0 6 2441 8730 2449 -16919 2 2 0 6 1885 1887 9363 -16920 2 2 0 6 576 5692 9270 -16921 2 2 0 6 3228 9592 4878 -16922 2 2 0 6 1952 1950 3177 -16923 2 2 0 6 2069 2070 9392 -16924 2 2 0 6 6424 9110 9540 -16925 2 2 0 6 4337 5113 5024 -16926 2 2 0 6 1688 9307 4393 -16927 2 2 0 6 3261 9927 3887 -16928 2 2 0 6 5868 10184 10006 -16929 2 2 0 6 6558 10305 7648 -16930 2 2 0 6 2209 4917 2207 -16931 2 2 0 6 1163 1180 9524 -16932 2 2 0 6 5750 9920 8711 -16933 2 2 0 6 2676 2765 2764 -16934 2 2 0 6 3798 9835 8246 -16935 2 2 0 6 3014 9757 3882 -16936 2 2 0 6 4850 5230 5232 -16937 2 2 0 6 2469 2639 9423 -16938 2 2 0 6 1514 1788 1824 -16939 2 2 0 6 3241 3244 3243 -16940 2 2 0 6 6183 7023 7107 -16941 2 2 0 6 8687 10080 10152 -16942 2 2 0 6 1380 8890 9038 -16943 2 2 0 6 4926 6055 9610 -16944 2 2 0 6 339 9537 407 -16945 2 2 0 6 3102 3935 4425 -16946 2 2 0 6 3050 3183 8469 -16947 2 2 0 6 4265 5170 4675 -16948 2 2 0 6 1486 9478 1501 -16949 2 2 0 6 5924 10789 10522 -16950 2 2 0 6 4015 8878 5636 -16951 2 2 0 6 1438 1512 1439 -16952 2 2 0 6 2972 2973 2974 -16953 2 2 0 6 4544 8744 9295 -16954 2 2 0 6 4840 6470 6284 -16955 2 2 0 6 6402 9860 6403 -16956 2 2 0 6 1185 1204 1203 -16957 2 2 0 6 7566 7568 9183 -16958 2 2 0 6 5671 10162 10267 -16959 2 2 0 6 1346 1348 1347 -16960 2 2 0 6 903 9357 904 -16961 2 2 0 6 3052 9504 4150 -16962 2 2 0 6 3915 9792 5773 -16963 2 2 0 6 4624 9952 5315 -16964 2 2 0 6 607 8577 4104 -16965 2 2 0 6 3413 3415 9332 -16966 2 2 0 6 1466 10239 10423 -16967 2 2 0 6 5016 5015 5335 -16968 2 2 0 6 5816 8845 10139 -16969 2 2 0 6 1439 1512 1513 -16970 2 2 0 6 5702 7662 9893 -16971 2 2 0 6 1320 1488 3568 -16972 2 2 0 6 2478 9999 7919 -16973 2 2 0 6 4617 9360 6736 -16974 2 2 0 6 4192 4945 9614 -16975 2 2 0 6 8402 9118 8404 -16976 2 2 0 6 2528 9215 9190 -16977 2 2 0 6 6583 6584 9900 -16978 2 2 0 6 1979 8018 9928 -16979 2 2 0 6 2618 2619 2936 -16980 2 2 0 6 3041 3042 9624 -16981 2 2 0 6 1512 1774 1513 -16982 2 2 0 6 1301 9814 3659 -16983 2 2 0 6 2449 8730 2890 -16984 2 2 0 6 3368 10194 10181 -16985 2 2 0 6 1173 4139 1177 -16986 2 2 0 6 691 8965 2952 -16987 2 2 0 6 4065 9521 5706 -16988 2 2 0 6 5110 5111 6109 -16989 2 2 0 6 4045 9396 4882 -16990 2 2 0 6 3505 3765 3520 -16991 2 2 0 6 3897 9881 4278 -16992 2 2 0 6 2260 9441 2315 -16993 2 2 0 6 3209 3803 9482 -16994 2 2 0 6 6747 9664 6750 -16995 2 2 0 6 4936 4938 9745 -16996 2 2 0 6 2478 2628 2479 -16997 2 2 0 6 1341 8324 7779 -16998 2 2 0 6 6413 9618 9231 -16999 2 2 0 6 3415 3418 9332 -17000 2 2 0 6 589 9505 3631 -17001 2 2 0 6 9441 10038 9813 -17002 2 2 0 6 2834 3062 9449 -17003 2 2 0 6 2142 8984 8145 -17004 2 2 0 6 5038 5245 5244 -17005 2 2 0 6 7567 9702 7571 -17006 2 2 0 6 4362 8097 4864 -17007 2 2 0 6 6418 9448 9886 -17008 2 2 0 6 3909 4727 10026 -17009 2 2 0 6 1950 1952 1951 -17010 2 2 0 6 5758 6121 5759 -17011 2 2 0 6 8126 10317 10245 -17012 2 2 0 6 140 551 9456 -17013 2 2 0 6 4610 9980 5797 -17014 2 2 0 6 3779 9254 3780 -17015 2 2 0 6 3012 9868 9121 -17016 2 2 0 6 3227 4240 4056 -17017 2 2 0 6 1378 9818 9163 -17018 2 2 0 6 7618 10032 7619 -17019 2 2 0 6 3530 4271 9667 -17020 2 2 0 6 6542 6543 9149 -17021 2 2 0 6 1215 1256 1227 -17022 2 2 0 6 4478 5860 6409 -17023 2 2 0 6 8547 8549 8548 -17024 2 2 0 6 9528 6450 9711 -17025 2 2 0 6 2320 9999 2478 -17026 2 2 0 6 6160 6796 6882 -17027 2 2 0 6 5125 10048 9870 -17028 2 2 0 6 8914 9540 9110 -17029 2 2 0 6 2128 8940 9601 -17030 2 2 0 6 4439 9108 9822 -17031 2 2 0 6 2474 9621 2633 -17032 2 2 0 6 5050 5758 5759 -17033 2 2 0 6 2363 2364 2618 -17034 2 2 0 6 3449 8279 6391 -17035 2 2 0 6 5679 10008 5827 -17036 2 2 0 6 9531 10581 10595 -17037 2 2 0 6 710 3615 9939 -17038 2 2 0 6 1845 1847 10110 -17039 2 2 0 6 1909 9340 2184 -17040 2 2 0 6 5722 9779 9264 -17041 2 2 0 6 6558 6607 10350 -17042 2 2 0 6 2988 3794 3793 -17043 2 2 0 6 3770 8938 3773 -17044 2 2 0 6 5173 5233 9694 -17045 2 2 0 6 8386 10366 9491 -17046 2 2 0 6 4973 6145 6152 -17047 2 2 0 6 6752 6761 6753 -17048 2 2 0 6 4045 4912 9396 -17049 2 2 0 6 5114 6709 6710 -17050 2 2 0 6 867 871 9343 -17051 2 2 0 6 3521 10100 10058 -17052 2 2 0 6 7670 10734 10737 -17053 2 2 0 6 306 530 9516 -17054 2 2 0 6 311 312 9381 -17055 2 2 0 6 9039 9975 9576 -17056 2 2 0 6 2985 3240 2986 -17057 2 2 0 6 1641 1644 9135 -17058 2 2 0 6 1824 1911 1943 -17059 2 2 0 6 6726 6728 6727 -17060 2 2 0 6 4143 5786 9575 -17061 2 2 0 6 3685 9730 3834 -17062 2 2 0 6 6469 9944 9708 -17063 2 2 0 6 1835 8994 1962 -17064 2 2 0 6 1117 8926 1136 -17065 2 2 0 6 5804 6844 6150 -17066 2 2 0 6 1843 1845 10215 -17067 2 2 0 6 2840 3102 9426 -17068 2 2 0 6 5850 10389 6590 -17069 2 2 0 6 3940 3942 8716 -17070 2 2 0 6 5167 6727 9835 -17071 2 2 0 6 1929 9351 1931 -17072 2 2 0 6 692 2313 9352 -17073 2 2 0 6 874 9654 880 -17074 2 2 0 6 2342 9310 8878 -17075 2 2 0 6 667 9632 9070 -17076 2 2 0 6 2468 9220 2643 -17077 2 2 0 6 1071 1069 9503 -17078 2 2 0 6 4530 4611 4532 -17079 2 2 0 6 3970 5281 5280 -17080 2 2 0 6 2104 9797 2113 -17081 2 2 0 6 4011 9532 4533 -17082 2 2 0 6 1639 9307 1688 -17083 2 2 0 6 2702 3614 9417 -17084 2 2 0 6 2356 9683 9214 -17085 2 2 0 6 5750 9829 9920 -17086 2 2 0 6 4094 8711 9800 -17087 2 2 0 6 2359 9481 3725 -17088 2 2 0 6 9737 10457 9772 -17089 2 2 0 6 2322 2323 2467 -17090 2 2 0 6 2643 3001 2727 -17091 2 2 0 6 6067 6113 6717 -17092 2 2 0 6 2937 2936 9585 -17093 2 2 0 6 119 120 553 -17094 2 2 0 6 4219 5110 4218 -17095 2 2 0 6 698 10335 10021 -17096 2 2 0 6 1933 2383 9329 -17097 2 2 0 6 1943 2194 2320 -17098 2 2 0 6 2709 2711 9794 -17099 2 2 0 6 1370 9016 1371 -17100 2 2 0 6 2605 9626 9783 -17101 2 2 0 6 6311 9879 6723 -17102 2 2 0 6 6541 6544 6543 -17103 2 2 0 6 4446 5722 9497 -17104 2 2 0 6 2971 2973 2972 -17105 2 2 0 6 7837 7839 7846 -17106 2 2 0 6 6286 7436 7432 -17107 2 2 0 6 2038 2040 9515 -17108 2 2 0 6 6723 9879 7200 -17109 2 2 0 6 3363 4353 9830 -17110 2 2 0 6 2321 8387 9922 -17111 2 2 0 6 3969 4682 10047 -17112 2 2 0 6 6548 7833 10743 -17113 2 2 0 6 1621 9727 9093 -17114 2 2 0 6 5237 9655 7085 -17115 2 2 0 6 2604 9783 2950 -17116 2 2 0 6 901 902 10227 -17117 2 2 0 6 3241 3243 3242 -17118 2 2 0 6 1191 1216 9591 -17119 2 2 0 6 3042 3045 9624 -17120 2 2 0 6 8405 9632 9815 -17121 2 2 0 6 3032 9323 3716 -17122 2 2 0 6 4521 4842 4522 -17123 2 2 0 6 4523 9730 6605 -17124 2 2 0 6 1061 9511 1064 -17125 2 2 0 6 3638 9638 9369 -17126 2 2 0 6 3786 9744 4112 -17127 2 2 0 6 948 10128 947 -17128 2 2 0 6 4405 9657 9150 -17129 2 2 0 6 4713 5173 9694 -17130 2 2 0 6 2424 9641 2426 -17131 2 2 0 6 4081 9742 4083 -17132 2 2 0 6 4632 9782 5431 -17133 2 2 0 6 7303 7305 9798 -17134 2 2 0 6 4054 4061 10412 -17135 2 2 0 6 5257 6996 6997 -17136 2 2 0 6 3334 9617 9762 -17137 2 2 0 6 5682 9500 9827 -17138 2 2 0 6 3920 9266 9677 -17139 2 2 0 6 4525 8066 4526 -17140 2 2 0 6 3270 3273 9430 -17141 2 2 0 6 1746 9751 5760 -17142 2 2 0 6 4682 5226 10047 -17143 2 2 0 6 2534 9138 9766 -17144 2 2 0 6 4486 9125 4488 -17145 2 2 0 6 8157 9824 9278 -17146 2 2 0 6 5160 6830 6069 -17147 2 2 0 6 4973 6152 8902 -17148 2 2 0 6 7794 10118 9258 -17149 2 2 0 6 1568 10680 1570 -17150 2 2 0 6 2604 2605 9783 -17151 2 2 0 6 3960 4832 9530 -17152 2 2 0 6 8601 9815 9632 -17153 2 2 0 6 5957 5958 9862 -17154 2 2 0 6 4888 7600 7601 -17155 2 2 0 6 1378 1379 9818 -17156 2 2 0 6 4113 11083 8863 -17157 2 2 0 6 1344 1346 1345 -17158 2 2 0 6 5260 5287 7017 -17159 2 2 0 6 2308 9133 2310 -17160 2 2 0 6 4161 9799 4766 -17161 2 2 0 6 5646 9785 9784 -17162 2 2 0 6 2889 2985 2986 -17163 2 2 0 6 4982 9819 9991 -17164 2 2 0 6 2981 9472 3999 -17165 2 2 0 6 2901 3207 9668 -17166 2 2 0 6 6142 6141 6864 -17167 2 2 0 6 5582 5739 9808 -17168 2 2 0 6 2739 8632 2988 -17169 2 2 0 6 2895 9713 2896 -17170 2 2 0 6 8241 10922 8439 -17171 2 2 0 6 1948 10107 7701 -17172 2 2 0 6 18 19 433 -17173 2 2 0 6 6676 9548 11136 -17174 2 2 0 6 4960 8904 9824 -17175 2 2 0 6 6351 8654 8553 -17176 2 2 0 6 6426 9084 9994 -17177 2 2 0 6 2915 3494 9235 -17178 2 2 0 6 3245 10024 3769 -17179 2 2 0 6 6514 10242 6515 -17180 2 2 0 6 4543 4544 9295 -17181 2 2 0 6 42 550 9422 -17182 2 2 0 6 1955 1956 1957 -17183 2 2 0 6 6545 6547 6546 -17184 2 2 0 6 4400 10755 10739 -17185 2 2 0 6 1634 9302 1639 -17186 2 2 0 6 3312 9680 8041 -17187 2 2 0 6 5262 6198 9674 -17188 2 2 0 6 8666 10038 9441 -17189 2 2 0 6 3943 7271 6637 -17190 2 2 0 6 5094 9231 9618 -17191 2 2 0 6 2424 8892 9641 -17192 2 2 0 6 2923 8878 4015 -17193 2 2 0 6 3997 5576 9574 -17194 2 2 0 6 4542 9167 9169 -17195 2 2 0 6 3530 9667 8728 -17196 2 2 0 6 4236 4280 5709 -17197 2 2 0 6 5759 6121 6860 -17198 2 2 0 6 7785 9681 7791 -17199 2 2 0 6 2678 3041 9490 -17200 2 2 0 6 2021 5713 9365 -17201 2 2 0 6 4150 9504 4858 -17202 2 2 0 6 2446 2633 9464 -17203 2 2 0 6 6543 6546 9149 -17204 2 2 0 6 1853 1855 9748 -17205 2 2 0 6 1904 1905 1938 -17206 2 2 0 6 5619 9059 9495 -17207 2 2 0 6 4507 5163 4625 -17208 2 2 0 6 4267 5806 9968 -17209 2 2 0 6 3381 9545 9544 -17210 2 2 0 6 1848 9773 1850 -17211 2 2 0 6 2756 10180 8750 -17212 2 2 0 6 2023 9365 2030 -17213 2 2 0 6 3449 4709 8279 -17214 2 2 0 6 5774 10035 9840 -17215 2 2 0 6 3156 4165 9106 -17216 2 2 0 6 7315 7307 9903 -17217 2 2 0 6 1478 10258 8931 -17218 2 2 0 6 5385 7513 9559 -17219 2 2 0 6 1232 1267 9845 -17220 2 2 0 6 8727 9480 9986 -17221 2 2 0 6 2267 2269 10017 -17222 2 2 0 6 4773 4774 6213 -17223 2 2 0 6 6592 8572 9607 -17224 2 2 0 6 4935 9848 4937 -17225 2 2 0 6 5809 5903 5810 -17226 2 2 0 6 2208 9907 2330 -17227 2 2 0 6 5570 9834 7755 -17228 2 2 0 6 4267 5071 5806 -17229 2 2 0 6 3800 4971 4972 -17230 2 2 0 6 4679 7709 7710 -17231 2 2 0 6 6394 8985 9921 -17232 2 2 0 6 1664 1670 9443 -17233 2 2 0 6 3154 7689 10287 -17234 2 2 0 6 3520 3766 10003 -17235 2 2 0 6 5786 5788 9847 -17236 2 2 0 6 5279 5675 5676 -17237 2 2 0 6 2107 10573 10586 -17238 2 2 0 6 3837 4241 4662 -17239 2 2 0 6 4696 5037 5038 -17240 2 2 0 6 6367 6366 10170 -17241 2 2 0 6 3821 9769 4228 -17242 2 2 0 6 3006 9927 3261 -17243 2 2 0 6 3794 3796 3795 -17244 2 2 0 6 2513 9642 9540 -17245 2 2 0 6 6452 8485 10230 -17246 2 2 0 6 2209 5012 4917 -17247 2 2 0 6 575 5831 5692 -17248 2 2 0 6 2963 9252 9671 -17249 2 2 0 6 4677 6741 6740 -17250 2 2 0 6 375 376 8875 -17251 2 2 0 6 1952 1954 1953 -17252 2 2 0 6 5616 9214 9683 -17253 2 2 0 6 4996 5959 5638 -17254 2 2 0 6 2872 9528 9711 -17255 2 2 0 6 6289 7976 9854 -17256 2 2 0 6 5732 5734 9546 -17257 2 2 0 6 1905 1939 1938 -17258 2 2 0 6 3765 4218 3766 -17259 2 2 0 6 4619 5183 5164 -17260 2 2 0 6 3192 9819 4053 -17261 2 2 0 6 5381 6742 6743 -17262 2 2 0 6 7566 9183 7569 -17263 2 2 0 6 838 4417 9613 -17264 2 2 0 6 5635 9861 6481 -17265 2 2 0 6 4529 4530 4528 -17266 2 2 0 6 1005 5751 7027 -17267 2 2 0 6 5927 10660 8724 -17268 2 2 0 6 5167 6725 6726 -17269 2 2 0 6 6055 10033 9610 -17270 2 2 0 6 3533 9815 8601 -17271 2 2 0 6 1171 9767 1173 -17272 2 2 0 6 2492 2837 2841 -17273 2 2 0 6 4434 9754 6469 -17274 2 2 0 6 4016 9497 4018 -17275 2 2 0 6 1205 1204 1215 -17276 2 2 0 6 2896 9713 3164 -17277 2 2 0 6 1069 3617 9503 -17278 2 2 0 6 6431 9725 9568 -17279 2 2 0 6 1957 1958 2189 -17280 2 2 0 6 5167 6726 6727 -17281 2 2 0 6 5565 9129 9568 -17282 2 2 0 6 2451 2890 9240 -17283 2 2 0 6 981 992 9317 -17284 2 2 0 6 1191 9591 1212 -17285 2 2 0 6 4139 4703 4140 -17286 2 2 0 6 1102 9596 8904 -17287 2 2 0 6 3555 9904 9521 -17288 2 2 0 6 5576 5962 9574 -17289 2 2 0 6 6013 10621 10986 -17290 2 2 0 6 2895 3750 9713 -17291 2 2 0 6 2611 2901 9668 -17292 2 2 0 6 2261 2263 10174 -17293 2 2 0 6 2426 9641 2694 -17294 2 2 0 6 3524 9894 8967 -17295 2 2 0 6 2656 9017 9795 -17296 2 2 0 6 4416 9778 6476 -17297 2 2 0 6 2203 2204 2322 -17298 2 2 0 6 5137 6780 9563 -17299 2 2 0 6 4432 6469 9708 -17300 2 2 0 6 3788 4117 9744 -17301 2 2 0 6 1232 9845 5688 -17302 2 2 0 6 4757 9637 6330 -17303 2 2 0 6 3325 3972 10171 -17304 2 2 0 6 717 721 9395 -17305 2 2 0 6 796 1921 9567 -17306 2 2 0 6 4492 4510 4511 -17307 2 2 0 6 9108 9800 9822 -17308 2 2 0 6 5184 6976 5296 -17309 2 2 0 6 3321 9485 5432 -17310 2 2 0 6 4806 9774 5908 -17311 2 2 0 6 6506 10200 10126 -17312 2 2 0 6 5638 5959 5960 -17313 2 2 0 6 1692 9021 1694 -17314 2 2 0 6 5819 9843 9555 -17315 2 2 0 6 4425 4800 5716 -17316 2 2 0 6 6514 8927 10242 -17317 2 2 0 6 6539 6540 6541 -17318 2 2 0 6 4298 5299 7751 -17319 2 2 0 6 2784 3474 9659 -17320 2 2 0 6 586 588 9065 -17321 2 2 0 6 4677 4678 9734 -17322 2 2 0 6 5261 11114 8598 -17323 2 2 0 6 8482 9774 9171 -17324 2 2 0 6 8678 9873 9519 -17325 2 2 0 6 4703 5260 4704 -17326 2 2 0 6 665 9000 666 -17327 2 2 0 6 3242 9856 10127 -17328 2 2 0 6 9125 9651 9652 -17329 2 2 0 6 2558 2790 9708 -17330 2 2 0 6 3260 3261 3262 -17331 2 2 0 6 4280 5710 5709 -17332 2 2 0 6 5263 5262 9674 -17333 2 2 0 6 2320 2469 9999 -17334 2 2 0 6 6523 9752 10036 -17335 2 2 0 6 4533 9532 6471 -17336 2 2 0 6 5697 9894 5792 -17337 2 2 0 6 819 823 9071 -17338 2 2 0 6 679 9195 681 -17339 2 2 0 6 2613 9961 3505 -17340 2 2 0 6 341 342 9597 -17341 2 2 0 6 5682 9827 5924 -17342 2 2 0 6 4172 10169 8019 -17343 2 2 0 6 1939 2198 2197 -17344 2 2 0 6 5427 6149 5428 -17345 2 2 0 6 4864 6332 4865 -17346 2 2 0 6 1798 9928 4907 -17347 2 2 0 6 2665 9983 8605 -17348 2 2 0 6 5321 7248 7450 -17349 2 2 0 6 2897 8841 3178 -17350 2 2 0 6 6212 7124 7125 -17351 2 2 0 6 1301 1323 9814 -17352 2 2 0 6 1501 9478 2217 -17353 2 2 0 6 3520 10003 9479 -17354 2 2 0 6 3252 3879 3878 -17355 2 2 0 6 664 667 9070 -17356 2 2 0 6 5240 9881 10256 -17357 2 2 0 6 4450 9182 5621 -17358 2 2 0 6 3332 8922 3933 -17359 2 2 0 6 4842 6581 6582 -17360 2 2 0 6 2320 2478 2321 -17361 2 2 0 6 6402 9147 9765 -17362 2 2 0 6 1944 4966 9488 -17363 2 2 0 6 4959 10133 8738 -17364 2 2 0 6 2620 10349 10432 -17365 2 2 0 6 4959 5964 9825 -17366 2 2 0 6 2976 2979 3251 -17367 2 2 0 6 2956 9747 4477 -17368 2 2 0 6 6517 6536 6537 -17369 2 2 0 6 5455 9409 5457 -17370 2 2 0 6 3251 3252 3878 -17371 2 2 0 6 4957 9614 6011 -17372 2 2 0 6 2474 2622 9621 -17373 2 2 0 6 2986 3240 3241 -17374 2 2 0 6 2168 2170 10204 -17375 2 2 0 6 206 207 472 -17376 2 2 0 6 4675 5804 5803 -17377 2 2 0 6 2691 9485 3321 -17378 2 2 0 6 796 9567 800 -17379 2 2 0 6 4524 4526 4527 -17380 2 2 0 6 4192 9614 4191 -17381 2 2 0 6 5579 5582 9808 -17382 2 2 0 6 3060 3061 2841 -17383 2 2 0 6 1213 9638 1228 -17384 2 2 0 6 4831 9238 5341 -17385 2 2 0 6 3095 9098 9732 -17386 2 2 0 6 1959 2203 1958 -17387 2 2 0 6 1177 4139 4140 -17388 2 2 0 6 1905 5533 8669 -17389 2 2 0 6 4771 6211 6212 -17390 2 2 0 6 5281 6548 5393 -17391 2 2 0 6 2519 2686 8870 -17392 2 2 0 6 4217 4926 9610 -17393 2 2 0 6 5038 5246 5245 -17394 2 2 0 6 1866 2502 9739 -17395 2 2 0 6 949 10114 950 -17396 2 2 0 6 6421 10225 9771 -17397 2 2 0 6 5007 5876 9458 -17398 2 2 0 6 4773 6213 6648 -17399 2 2 0 6 2378 9550 2398 -17400 2 2 0 6 4444 9883 5926 -17401 2 2 0 6 2362 9969 9866 -17402 2 2 0 6 954 10050 957 -17403 2 2 0 6 8422 10241 10269 -17404 2 2 0 6 1514 1824 5777 -17405 2 2 0 6 6541 6543 6542 -17406 2 2 0 6 585 9562 1922 -17407 2 2 0 6 3707 4825 9878 -17408 2 2 0 6 6556 10233 10368 -17409 2 2 0 6 6437 9753 7938 -17410 2 2 0 6 3841 9637 4757 -17411 2 2 0 6 4677 9734 6741 -17412 2 2 0 6 5695 9552 9763 -17413 2 2 0 6 3878 3879 4604 -17414 2 2 0 6 5120 6774 6775 -17415 2 2 0 6 2273 3521 10058 -17416 2 2 0 6 1267 1292 9845 -17417 2 2 0 6 2408 3005 3007 -17418 2 2 0 6 4806 9171 9774 -17419 2 2 0 6 1977 9705 9837 -17420 2 2 0 6 7560 7562 9004 -17421 2 2 0 6 1943 2320 2321 -17422 2 2 0 6 2164 9786 9699 -17423 2 2 0 6 5091 5878 6668 -17424 2 2 0 6 6369 8408 9770 -17425 2 2 0 6 116 117 434 -17426 2 2 0 6 4700 6207 9662 -17427 2 2 0 6 3340 9535 4517 -17428 2 2 0 6 4672 9743 5166 -17429 2 2 0 6 5794 9998 6518 -17430 2 2 0 6 1012 9895 8679 -17431 2 2 0 6 5176 6793 6144 -17432 2 2 0 6 5159 5454 6828 -17433 2 2 0 6 3755 4114 9804 -17434 2 2 0 6 2121 9141 2179 -17435 2 2 0 6 2120 2122 9367 -17436 2 2 0 6 1187 1186 8935 -17437 2 2 0 6 3332 3333 8922 -17438 2 2 0 6 2310 9132 3459 -17439 2 2 0 6 1864 1866 9739 -17440 2 2 0 6 6434 9889 9975 -17441 2 2 0 6 3089 9678 10424 -17442 2 2 0 6 3793 3797 9572 -17443 2 2 0 6 1956 1958 1957 -17444 2 2 0 6 911 8889 9846 -17445 2 2 0 6 591 9682 593 -17446 2 2 0 6 4604 5184 4606 -17447 2 2 0 6 4666 9844 6148 -17448 2 2 0 6 5686 9519 9873 -17449 2 2 0 6 4606 5184 5296 -17450 2 2 0 6 1592 1594 9055 -17451 2 2 0 6 2639 3002 9423 -17452 2 2 0 6 40 461 9435 -17453 2 2 0 6 4710 9817 9402 -17454 2 2 0 6 593 1165 713 -17455 2 2 0 6 2315 9441 9813 -17456 2 2 0 6 2274 2285 9863 -17457 2 2 0 6 3796 6643 7182 -17458 2 2 0 6 4497 5125 9870 -17459 2 2 0 6 3251 9553 9431 -17460 2 2 0 6 2709 9794 9362 -17461 2 2 0 6 837 8462 9564 -17462 2 2 0 6 4955 9886 8351 -17463 2 2 0 6 3431 3434 9891 -17464 2 2 0 6 5330 7193 7344 -17465 2 2 0 6 5117 9085 8836 -17466 2 2 0 6 5310 8137 9750 -17467 2 2 0 6 851 9865 1148 -17468 2 2 0 6 4907 9928 10208 -17469 2 2 0 6 2651 9820 2653 -17470 2 2 0 6 2198 2200 2202 -17471 2 2 0 6 4884 4885 10109 -17472 2 2 0 6 7567 7575 9702 -17473 2 2 0 6 5909 5910 10196 -17474 2 2 0 6 2559 2560 2851 -17475 2 2 0 6 3999 9472 4967 -17476 2 2 0 6 5819 5827 10176 -17477 2 2 0 6 4825 5994 9878 -17478 2 2 0 6 5453 9620 7703 -17479 2 2 0 6 6475 10145 9449 -17480 2 2 0 6 2290 2292 10192 -17481 2 2 0 6 1349 1359 1351 -17482 2 2 0 6 1959 10151 7547 -17483 2 2 0 6 3418 9688 9736 -17484 2 2 0 6 3834 9730 4523 -17485 2 2 0 6 6424 9540 9642 -17486 2 2 0 6 5735 8739 10100 -17487 2 2 0 6 8766 9728 8767 -17488 2 2 0 6 5465 8437 7801 -17489 2 2 0 6 1000 1005 9962 -17490 2 2 0 6 5098 8095 8094 -17491 2 2 0 6 3799 7817 10193 -17492 2 2 0 6 4660 10512 10542 -17493 2 2 0 6 4972 4973 8902 -17494 2 2 0 6 1213 1230 9638 -17495 2 2 0 6 8319 9393 9897 -17496 2 2 0 6 1938 1939 2197 -17497 2 2 0 6 58 59 9954 -17498 2 2 0 6 681 9195 4449 -17499 2 2 0 6 5338 10222 7342 -17500 2 2 0 6 1954 1956 1955 -17501 2 2 0 6 2956 2958 9747 -17502 2 2 0 6 4780 9712 8134 -17503 2 2 0 6 3890 5774 9840 -17504 2 2 0 6 4482 10004 4837 -17505 2 2 0 6 5594 8866 9933 -17506 2 2 0 6 5509 8536 8842 -17507 2 2 0 6 4814 9517 5842 -17508 2 2 0 6 3220 3683 3684 -17509 2 2 0 6 3351 4913 9758 -17510 2 2 0 6 658 660 9137 -17511 2 2 0 6 4070 9452 4876 -17512 2 2 0 6 3182 9720 3185 -17513 2 2 0 6 669 666 9000 -17514 2 2 0 6 2227 9619 2409 -17515 2 2 0 6 1019 3648 9586 -17516 2 2 0 6 8177 8178 9876 -17517 2 2 0 6 1812 1905 1904 -17518 2 2 0 6 3674 9989 9719 -17519 2 2 0 6 5072 10067 6002 -17520 2 2 0 6 4216 9610 5104 -17521 2 2 0 6 8111 8112 10021 -17522 2 2 0 6 5832 5833 6018 -17523 2 2 0 6 2775 9787 9788 -17524 2 2 0 6 3063 3117 9575 -17525 2 2 0 6 4123 5896 10018 -17526 2 2 0 6 6419 9236 9237 -17527 2 2 0 6 2166 3485 9786 -17528 2 2 0 6 4227 5156 4251 -17529 2 2 0 6 9463 9784 9785 -17530 2 2 0 6 6525 6527 10241 -17531 2 2 0 6 1807 9340 1909 -17532 2 2 0 6 6422 7496 10323 -17533 2 2 0 6 5706 9521 9904 -17534 2 2 0 6 3173 9692 3175 -17535 2 2 0 6 2241 10015 2242 -17536 2 2 0 6 5115 6718 5116 -17537 2 2 0 6 3710 5638 9484 -17538 2 2 0 6 7662 9863 9893 -17539 2 2 0 6 3769 8938 3770 -17540 2 2 0 6 9318 10177 9319 -17541 2 2 0 6 1475 10258 1478 -17542 2 2 0 6 3037 9877 9633 -17543 2 2 0 6 7297 7299 9864 -17544 2 2 0 6 1228 9638 3638 -17545 2 2 0 6 4424 9826 9049 -17546 2 2 0 6 1187 8935 3531 -17547 2 2 0 6 2158 9397 5439 -17548 2 2 0 6 5168 9470 6871 -17549 2 2 0 6 5615 10096 10002 -17550 2 2 0 6 2629 8982 9855 -17551 2 2 0 6 4191 9614 4957 -17552 2 2 0 6 3954 3956 9670 -17553 2 2 0 6 737 10160 2589 -17554 2 2 0 6 6745 6746 6747 -17555 2 2 0 6 3317 8834 10112 -17556 2 2 0 6 2198 2199 2200 -17557 2 2 0 6 7601 9686 9830 -17558 2 2 0 6 2362 9866 2507 -17559 2 2 0 6 2795 9898 2798 -17560 2 2 0 6 2315 9938 8866 -17561 2 2 0 6 3497 9476 3891 -17562 2 2 0 6 3237 3800 9791 -17563 2 2 0 6 4809 9908 5323 -17564 2 2 0 6 2166 9786 2164 -17565 2 2 0 6 3885 9968 3886 -17566 2 2 0 6 3026 9373 3027 -17567 2 2 0 6 6454 9799 9427 -17568 2 2 0 6 6354 9910 6357 -17569 2 2 0 6 906 909 9840 -17570 2 2 0 6 6437 9541 9753 -17571 2 2 0 6 2979 3252 3251 -17572 2 2 0 6 2804 3674 9719 -17573 2 2 0 6 2733 9226 2735 -17574 2 2 0 6 2958 2962 9747 -17575 2 2 0 6 957 9861 9399 -17576 2 2 0 6 2785 9463 9138 -17577 2 2 0 6 8799 9984 9191 -17578 2 2 0 6 6208 9353 10199 -17579 2 2 0 6 7863 7866 10082 -17580 2 2 0 6 657 8813 3501 -17581 2 2 0 6 4252 4266 5177 -17582 2 2 0 6 4283 9949 7774 -17583 2 2 0 6 3978 10202 9707 -17584 2 2 0 6 3045 3046 9930 -17585 2 2 0 6 4675 10105 5804 -17586 2 2 0 6 2369 2620 2524 -17587 2 2 0 6 4987 10287 10429 -17588 2 2 0 6 1660 8839 8196 -17589 2 2 0 6 9346 9862 8655 -17590 2 2 0 6 8780 9411 8781 -17591 2 2 0 6 2572 8528 9995 -17592 2 2 0 6 3935 3936 9997 -17593 2 2 0 6 4524 4527 10093 -17594 2 2 0 6 1371 9016 1374 -17595 2 2 0 6 2412 2414 9565 -17596 2 2 0 6 6513 6619 9695 -17597 2 2 0 6 3886 4696 4695 -17598 2 2 0 6 4679 7711 10012 -17599 2 2 0 6 6402 9765 9860 -17600 2 2 0 6 1840 2229 10871 -17601 2 2 0 6 8110 9971 8777 -17602 2 2 0 6 4269 9662 4728 -17603 2 2 0 6 3910 9687 3911 -17604 2 2 0 6 1098 9761 1140 -17605 2 2 0 6 6494 10172 8273 -17606 2 2 0 6 2176 2192 9192 -17607 2 2 0 6 5158 6824 9605 -17608 2 2 0 6 4935 4939 9848 -17609 2 2 0 6 4209 9941 10078 -17610 2 2 0 6 5029 10692 10629 -17611 2 2 0 6 5589 10879 10802 -17612 2 2 0 6 1811 1904 7853 -17613 2 2 0 6 1305 3381 9544 -17614 2 2 0 6 661 9201 662 -17615 2 2 0 6 1634 1636 9302 -17616 2 2 0 6 6543 6544 6545 -17617 2 2 0 6 5120 6157 6774 -17618 2 2 0 6 5702 9893 5750 -17619 2 2 0 6 3674 4755 9989 -17620 2 2 0 6 4951 8751 10103 -17621 2 2 0 6 8139 9525 9973 -17622 2 2 0 6 2622 3632 9621 -17623 2 2 0 6 6181 9662 10061 -17624 2 2 0 6 5708 10071 9778 -17625 2 2 0 6 4884 10109 9598 -17626 2 2 0 6 7391 10946 8342 -17627 2 2 0 6 7550 9931 10211 -17628 2 2 0 6 6102 6184 7090 -17629 2 2 0 6 2338 3634 9318 -17630 2 2 0 6 2296 9412 9297 -17631 2 2 0 6 8751 10180 10103 -17632 2 2 0 6 3340 4495 9535 -17633 2 2 0 6 22 23 9566 -17634 2 2 0 6 1642 2164 9699 -17635 2 2 0 6 6359 6361 10052 -17636 2 2 0 6 1781 5789 9940 -17637 2 2 0 6 2656 9795 3571 -17638 2 2 0 6 4878 9592 6348 -17639 2 2 0 6 4675 5170 10105 -17640 2 2 0 6 2629 9855 2695 -17641 2 2 0 6 3027 9373 3031 -17642 2 2 0 6 2611 9668 8939 -17643 2 2 0 6 1171 1357 9767 -17644 2 2 0 6 5778 10170 6614 -17645 2 2 0 6 6618 5841 10027 -17646 2 2 0 6 2414 3610 9565 -17647 2 2 0 6 5832 6019 10108 -17648 2 2 0 6 4770 9947 5694 -17649 2 2 0 6 3764 10195 9796 -17650 2 2 0 6 1739 3653 9751 -17651 2 2 0 6 4528 4532 9764 -17652 2 2 0 6 2116 9354 9206 -17653 2 2 0 6 603 605 8990 -17654 2 2 0 6 3620 4176 9765 -17655 2 2 0 6 8665 10038 8666 -17656 2 2 0 6 1313 10115 8467 -17657 2 2 0 6 2310 9133 9132 -17658 2 2 0 6 6520 9855 8982 -17659 2 2 0 6 1098 1130 9761 -17660 2 2 0 6 2360 9969 2362 -17661 2 2 0 6 2420 9092 10006 -17662 2 2 0 6 817 819 9071 -17663 2 2 0 6 5816 10139 10013 -17664 2 2 0 6 6606 10413 9103 -17665 2 2 0 6 3279 9622 9467 -17666 2 2 0 6 6645 9741 10253 -17667 2 2 0 6 5708 9778 9727 -17668 2 2 0 6 9057 9991 9819 -17669 2 2 0 6 6455 10064 6456 -17670 2 2 0 6 5365 9296 7054 -17671 2 2 0 6 6490 10165 10232 -17672 2 2 0 6 8496 4466 10197 -17673 2 2 0 6 7994 9677 10094 -17674 2 2 0 6 3821 4228 4227 -17675 2 2 0 6 3656 9691 9728 -17676 2 2 0 6 661 3753 9201 -17677 2 2 0 6 3218 9789 4076 -17678 2 2 0 6 5528 9972 9645 -17679 2 2 0 6 1438 5693 9951 -17680 2 2 0 6 5115 9714 6719 -17681 2 2 0 6 8595 10398 10414 -17682 2 2 0 6 7884 7885 9790 -17683 2 2 0 6 3793 3794 3795 -17684 2 2 0 6 581 9270 3723 -17685 2 2 0 6 3256 4690 3258 -17686 2 2 0 6 8845 10173 10139 -17687 2 2 0 6 1851 3446 9958 -17688 2 2 0 6 7940 10131 10092 -17689 2 2 0 6 3114 9763 9552 -17690 2 2 0 6 5568 9240 10066 -17691 2 2 0 6 4526 4528 4527 -17692 2 2 0 6 1032 10084 9717 -17693 2 2 0 6 1882 9872 3176 -17694 2 2 0 6 4450 4456 9182 -17695 2 2 0 6 6419 9237 6420 -17696 2 2 0 6 3034 3909 10026 -17697 2 2 0 6 1687 1721 9508 -17698 2 2 0 6 594 713 9838 -17699 2 2 0 6 5107 6077 9724 -17700 2 2 0 6 7464 9947 10175 -17701 2 2 0 6 2009 3538 9716 -17702 2 2 0 6 2038 9515 8776 -17703 2 2 0 6 3935 4800 4425 -17704 2 2 0 6 1101 9441 2260 -17705 2 2 0 6 2205 8199 9887 -17706 2 2 0 6 2485 9945 9253 -17707 2 2 0 6 2021 9365 2023 -17708 2 2 0 6 5564 9029 6196 -17709 2 2 0 6 1839 1841 10246 -17710 2 2 0 6 6052 6107 6708 -17711 2 2 0 6 1482 9246 1483 -17712 2 2 0 6 3737 9883 4444 -17713 2 2 0 6 4220 4218 9911 -17714 2 2 0 6 3451 10131 8665 -17715 2 2 0 6 1982 10120 2236 -17716 2 2 0 6 6494 10086 10172 -17717 2 2 0 6 5349 5354 9639 -17718 2 2 0 6 8674 9805 8675 -17719 2 2 0 6 3335 9821 4994 -17720 2 2 0 6 8245 9984 8799 -17721 2 2 0 6 6745 6747 6748 -17722 2 2 0 6 6498 9870 10048 -17723 2 2 0 6 2120 9367 2131 -17724 2 2 0 6 5835 8994 10231 -17725 2 2 0 6 7026 8564 7801 -17726 2 2 0 6 3046 3049 9930 -17727 2 2 0 6 2635 9850 2730 -17728 2 2 0 6 5672 5742 9520 -17729 2 2 0 6 7469 7675 10462 -17730 2 2 0 6 311 9381 539 -17731 2 2 0 6 3071 7744 10187 -17732 2 2 0 6 7429 7428 10322 -17733 2 2 0 6 7804 9766 9138 -17734 2 2 0 6 6003 7136 11065 -17735 2 2 0 6 1707 8930 10652 -17736 2 2 0 6 4434 4436 9754 -17737 2 2 0 6 8110 8111 9971 -17738 2 2 0 6 5427 10136 6149 -17739 2 2 0 6 8781 9411 11224 -17740 2 2 0 6 4269 4700 9662 -17741 2 2 0 6 2101 9206 2104 -17742 2 2 0 6 3783 8422 10269 -17743 2 2 0 6 6375 10618 7272 -17744 2 2 0 6 2192 2464 9192 -17745 2 2 0 6 975 10007 982 -17746 2 2 0 6 1031 1032 9717 -17747 2 2 0 6 4220 9911 5112 -17748 2 2 0 6 6830 6919 6831 -17749 2 2 0 6 6644 11171 11242 -17750 2 2 0 6 3088 10165 3091 -17751 2 2 0 6 6443 9916 6444 -17752 2 2 0 6 6570 10302 8197 -17753 2 2 0 6 6361 8931 10258 -17754 2 2 0 6 909 3890 9840 -17755 2 2 0 6 5797 9980 6115 -17756 2 2 0 6 2790 4432 9708 -17757 2 2 0 6 2037 9859 2039 -17758 2 2 0 6 2651 2919 9820 -17759 2 2 0 6 2950 9445 3159 -17760 2 2 0 6 7619 10032 10017 -17761 2 2 0 6 3749 8956 5417 -17762 2 2 0 6 5782 6108 9760 -17763 2 2 0 6 6601 8215 10930 -17764 2 2 0 6 1204 9701 8851 -17765 2 2 0 6 6495 8135 10002 -17766 2 2 0 6 7721 7723 10240 -17767 2 2 0 6 4054 10398 8595 -17768 2 2 0 6 4649 5155 9916 -17769 2 2 0 6 8651 9412 9775 -17770 2 2 0 6 5540 9897 9393 -17771 2 2 0 6 1581 9113 1579 -17772 2 2 0 6 3373 8918 10270 -17773 2 2 0 6 1012 4426 9895 -17774 2 2 0 6 3293 3294 9584 -17775 2 2 0 6 2841 8020 10055 -17776 2 2 0 6 3634 9601 10176 -17777 2 2 0 6 1662 1661 9457 -17778 2 2 0 6 4266 5828 5178 -17779 2 2 0 6 6417 9950 9882 -17780 2 2 0 6 3972 8040 10238 -17781 2 2 0 6 3187 3892 8895 -17782 2 2 0 6 883 9937 966 -17783 2 2 0 6 1663 1664 9443 -17784 2 2 0 6 2969 2971 2970 -17785 2 2 0 6 5517 9810 9600 -17786 2 2 0 6 3330 9633 4737 -17787 2 2 0 6 6360 9842 6362 -17788 2 2 0 6 5294 9880 6529 -17789 2 2 0 6 6259 10265 5810 -17790 2 2 0 6 4647 4648 9731 -17791 2 2 0 6 5564 8504 9029 -17792 2 2 0 6 6762 6786 6764 -17793 2 2 0 6 2451 9240 2453 -17794 2 2 0 6 3474 4010 9659 -17795 2 2 0 6 1998 9251 1999 -17796 2 2 0 6 5111 5782 9760 -17797 2 2 0 6 5803 5805 10255 -17798 2 2 0 6 1902 3470 9966 -17799 2 2 0 6 706 9939 1222 -17800 2 2 0 6 1668 9339 1671 -17801 2 2 0 6 4196 9720 5778 -17802 2 2 0 6 962 976 9306 -17803 2 2 0 6 583 9562 585 -17804 2 2 0 6 4478 6409 10099 -17805 2 2 0 6 4773 6648 8716 -17806 2 2 0 6 8191 11225 11220 -17807 2 2 0 6 5455 9145 9409 -17808 2 2 0 6 6374 10141 9750 -17809 2 2 0 6 4594 8094 4598 -17810 2 2 0 6 6540 9849 6541 -17811 2 2 0 6 2002 9251 3611 -17812 2 2 0 6 594 9838 596 -17813 2 2 0 6 5298 5780 8963 -17814 2 2 0 6 2971 9165 4542 -17815 2 2 0 6 4216 4217 9610 -17816 2 2 0 6 1291 3644 9221 -17817 2 2 0 6 4710 7695 9817 -17818 2 2 0 6 4649 9916 9833 -17819 2 2 0 6 1268 10282 1355 -17820 2 2 0 6 1509 1767 9768 -17821 2 2 0 6 1306 9527 9607 -17822 2 2 0 6 2572 9995 2574 -17823 2 2 0 6 3936 3939 9997 -17824 2 2 0 6 4016 4446 9497 -17825 2 2 0 6 4872 6276 9718 -17826 2 2 0 6 1482 10069 9876 -17827 2 2 0 6 2785 9784 9463 -17828 2 2 0 6 5962 6553 9888 -17829 2 2 0 6 5689 9972 8534 -17830 2 2 0 6 7794 8917 10118 -17831 2 2 0 6 139 9456 463 -17832 2 2 0 6 8204 10455 10401 -17833 2 2 0 6 1356 1503 9940 -17834 2 2 0 6 4438 10441 10526 -17835 2 2 0 6 1194 9466 3506 -17836 2 2 0 6 4180 4949 9644 -17837 2 2 0 6 4501 8379 9631 -17838 2 2 0 6 660 663 9137 -17839 2 2 0 6 4696 5244 9487 -17840 2 2 0 6 5324 7355 9617 -17841 2 2 0 6 4040 4497 9870 -17842 2 2 0 6 4247 4248 4626 -17843 2 2 0 6 3620 9765 9147 -17844 2 2 0 6 4816 5893 9517 -17845 2 2 0 6 41 9422 461 -17846 2 2 0 6 8651 9297 9412 -17847 2 2 0 6 4939 8072 9848 -17848 2 2 0 6 8180 9876 10069 -17849 2 2 0 6 593 9682 1165 -17850 2 2 0 6 5924 10522 10540 -17851 2 2 0 6 1650 7538 9522 -17852 2 2 0 6 5284 6256 9018 -17853 2 2 0 6 4436 4810 9754 -17854 2 2 0 6 2153 3574 10084 -17855 2 2 0 6 4165 5612 9106 -17856 2 2 0 6 8904 9596 9824 -17857 2 2 0 6 1346 2401 9839 -17858 2 2 0 6 44 405 9660 -17859 2 2 0 6 6345 7995 10333 -17860 2 2 0 6 2155 2157 9602 -17861 2 2 0 6 6051 11183 6735 -17862 2 2 0 6 2047 2050 9126 -17863 2 2 0 6 2695 9855 3238 -17864 2 2 0 6 342 343 458 -17865 2 2 0 6 3828 4298 10098 -17866 2 2 0 6 5719 10153 6625 -17867 2 2 0 6 2697 3683 3220 -17868 2 2 0 6 32 9416 549 -17869 2 2 0 6 4516 5854 10008 -17870 2 2 0 6 3834 4248 4247 -17871 2 2 0 6 6479 6480 9703 -17872 2 2 0 6 8634 10063 9472 -17873 2 2 0 6 4162 4765 9992 -17874 2 2 0 6 5833 6319 6018 -17875 2 2 0 6 4646 9605 4965 -17876 2 2 0 6 6469 10068 9944 -17877 2 2 0 6 7307 7309 9903 -17878 2 2 0 6 4298 7751 10098 -17879 2 2 0 6 3363 9830 9155 -17880 2 2 0 6 3940 8716 3943 -17881 2 2 0 6 3050 8469 3049 -17882 2 2 0 6 3162 8595 10414 -17883 2 2 0 6 6584 8310 9900 -17884 2 2 0 6 4470 10103 6452 -17885 2 2 0 6 242 243 556 -17886 2 2 0 6 2908 8934 2743 -17887 2 2 0 6 6468 9705 9780 -17888 2 2 0 6 6743 6745 6744 -17889 2 2 0 6 2649 2678 9490 -17890 2 2 0 6 3634 10177 9318 -17891 2 2 0 6 2661 3643 9499 -17892 2 2 0 6 6207 10061 9662 -17893 2 2 0 6 4532 4613 9764 -17894 2 2 0 6 1592 9055 8552 -17895 2 2 0 6 3680 3682 9404 -17896 2 2 0 6 984 1038 10101 -17897 2 2 0 6 8132 10208 10169 -17898 2 2 0 6 4530 4531 8836 -17899 2 2 0 6 1158 9701 1185 -17900 2 2 0 6 340 554 9537 -17901 2 2 0 6 3711 4838 10049 -17902 2 2 0 6 2357 9479 6368 -17903 2 2 0 6 2992 7911 7910 -17904 2 2 0 6 3117 4143 9575 -17905 2 2 0 6 5686 9873 9400 -17906 2 2 0 6 31 549 9442 -17907 2 2 0 6 1410 10011 9629 -17908 2 2 0 6 5032 10722 10728 -17909 2 2 0 6 5962 9888 9574 -17910 2 2 0 6 7642 11089 11081 -17911 2 2 0 6 3569 10451 7616 -17912 2 2 0 6 5377 9931 7550 -17913 2 2 0 6 3106 9651 4486 -17914 2 2 0 6 3705 9878 4568 -17915 2 2 0 6 5540 7498 9897 -17916 2 2 0 6 2995 3233 9095 -17917 2 2 0 6 6478 9933 9938 -17918 2 2 0 6 129 544 9498 -17919 2 2 0 6 4244 9661 4310 -17920 2 2 0 6 2733 2858 9226 -17921 2 2 0 6 4056 9781 4507 -17922 2 2 0 6 22 9566 552 -17923 2 2 0 6 3555 3557 9904 -17924 2 2 0 6 4993 10209 5921 -17925 2 2 0 6 8761 9959 9237 -17926 2 2 0 6 2885 9988 2888 -17927 2 2 0 6 1304 9673 1321 -17928 2 2 0 6 5624 10094 9677 -17929 2 2 0 6 1998 5905 10419 -17930 2 2 0 6 8386 10456 10366 -17931 2 2 0 6 5831 5833 5832 -17932 2 2 0 6 9721 7281 10030 -17933 2 2 0 6 1358 9857 3628 -17934 2 2 0 6 8310 10612 9900 -17935 2 2 0 6 5575 9862 10022 -17936 2 2 0 6 7935 10228 8653 -17937 2 2 0 6 4427 4429 9918 -17938 2 2 0 6 3184 3187 8895 -17939 2 2 0 6 1402 9239 9609 -17940 2 2 0 6 8821 9826 8822 -17941 2 2 0 6 2354 9828 2762 -17942 2 2 0 6 8739 10058 10100 -17943 2 2 0 6 2394 2693 10099 -17944 2 2 0 6 5107 9724 8372 -17945 2 2 0 6 7030 9776 9364 -17946 2 2 0 6 3986 9568 9725 -17947 2 2 0 6 6234 10037 10115 -17948 2 2 0 6 1483 9246 1486 -17949 2 2 0 6 8171 10259 10076 -17950 2 2 0 6 4094 9800 9108 -17951 2 2 0 6 1864 9739 8628 -17952 2 2 0 6 1900 9474 5000 -17953 2 2 0 6 3723 10108 10249 -17954 2 2 0 6 3786 3788 9744 -17955 2 2 0 6 6041 11177 6051 -17956 2 2 0 6 3242 3243 9856 -17957 2 2 0 6 2386 9134 10506 -17958 2 2 0 6 3792 3793 9572 -17959 2 2 0 6 1876 10039 1986 -17960 2 2 0 6 5615 6208 10096 -17961 2 2 0 6 390 470 9494 -17962 2 2 0 6 2229 8086 10883 -17963 2 2 0 6 6156 9934 7537 -17964 2 2 0 6 1577 10774 8127 -17965 2 2 0 6 4812 5842 9450 -17966 2 2 0 6 9168 10291 10039 -17967 2 2 0 6 1336 10221 1338 -17968 2 2 0 6 6454 9427 9426 -17969 2 2 0 6 8649 9920 9829 -17970 2 2 0 6 977 984 10101 -17971 2 2 0 6 3743 4071 9771 -17972 2 2 0 6 5354 7192 9639 -17973 2 2 0 6 2229 10883 10871 -17974 2 2 0 6 4501 9631 9462 -17975 2 2 0 6 6509 10183 6510 -17976 2 2 0 6 4123 4122 4607 -17977 2 2 0 6 5746 9941 8757 -17978 2 2 0 6 312 439 9381 -17979 2 2 0 6 4975 10086 9659 -17980 2 2 0 6 1113 10283 8329 -17981 2 2 0 6 7372 10768 10771 -17982 2 2 0 6 1767 1903 9768 -17983 2 2 0 6 5756 10067 9991 -17984 2 2 0 6 727 11234 11211 -17985 2 2 0 6 5284 9018 5316 -17986 2 2 0 6 5381 6743 6744 -17987 2 2 0 6 7904 10071 5708 -17988 2 2 0 6 3571 9795 3899 -17989 2 2 0 6 3955 9687 4738 -17990 2 2 0 6 6417 6418 9950 -17991 2 2 0 6 4513 5796 9936 -17992 2 2 0 6 6726 9374 6752 -17993 2 2 0 6 142 406 9650 -17994 2 2 0 6 7051 9364 9776 -17995 2 2 0 6 1329 9347 9885 -17996 2 2 0 6 3789 3844 10274 -17997 2 2 0 6 8821 9049 9826 -17998 2 2 0 6 6358 10029 7748 -17999 2 2 0 6 2852 2970 3250 -18000 2 2 0 6 3275 9529 3276 -18001 2 2 0 6 3800 4972 9791 -18002 2 2 0 6 5967 10815 8896 -18003 2 2 0 6 5609 10163 6612 -18004 2 2 0 6 5692 5831 5832 -18005 2 2 0 6 6404 9874 9162 -18006 2 2 0 6 2161 4019 10097 -18007 2 2 0 6 4913 10144 9758 -18008 2 2 0 6 6498 9444 9870 -18009 2 2 0 6 2663 9652 9651 -18010 2 2 0 6 5691 6436 9837 -18011 2 2 0 6 2631 10886 7254 -18012 2 2 0 6 1875 7853 4801 -18013 2 2 0 6 4040 9870 9444 -18014 2 2 0 6 9071 10636 10626 -18015 2 2 0 6 5459 10028 5745 -18016 2 2 0 6 2845 10252 3154 -18017 2 2 0 6 767 773 10289 -18018 2 2 0 6 2617 2659 9836 -18019 2 2 0 6 8189 10043 8740 -18020 2 2 0 6 8019 10169 10208 -18021 2 2 0 6 8136 9155 9686 -18022 2 2 0 6 1113 1115 10283 -18023 2 2 0 6 4416 9093 9778 -18024 2 2 0 6 2185 9887 5878 -18025 2 2 0 6 949 10224 10183 -18026 2 2 0 6 4527 4528 9764 -18027 2 2 0 6 6537 6536 10250 -18028 2 2 0 6 3833 3834 4247 -18029 2 2 0 6 1041 9717 5725 -18030 2 2 0 6 1511 1812 1811 -18031 2 2 0 6 1478 10069 1479 -18032 2 2 0 6 5689 9645 9972 -18033 2 2 0 6 4396 4951 10103 -18034 2 2 0 6 3939 6637 9997 -18035 2 2 0 6 5672 9520 9090 -18036 2 2 0 6 5726 9883 9507 -18037 2 2 0 6 3683 3823 3684 -18038 2 2 0 6 4054 10412 10398 -18039 2 2 0 6 6458 6461 8802 -18040 2 2 0 6 6064 6065 11175 -18041 2 2 0 6 4967 9472 10063 -18042 2 2 0 6 2665 9115 9983 -18043 2 2 0 6 6550 6551 10338 -18044 2 2 0 6 3451 8679 10092 -18045 2 2 0 6 1511 10041 1812 -18046 2 2 0 6 5178 6760 6785 -18047 2 2 0 6 3830 4266 4252 -18048 2 2 0 6 578 576 9270 -18049 2 2 0 6 5104 10033 6703 -18050 2 2 0 6 6074 6572 10051 -18051 2 2 0 6 3843 9791 5758 -18052 2 2 0 6 3256 9669 4690 -18053 2 2 0 6 5546 9889 6187 -18054 2 2 0 6 6763 9737 10053 -18055 2 2 0 6 1323 1514 9814 -18056 2 2 0 6 2158 1790 9397 -18057 2 2 0 6 596 9838 4453 -18058 2 2 0 6 2653 9820 9821 -18059 2 2 0 6 6592 9607 9527 -18060 2 2 0 6 3067 10262 10547 -18061 2 2 0 6 2360 2522 9969 -18062 2 2 0 6 3159 9445 4209 -18063 2 2 0 6 3037 9633 3330 -18064 2 2 0 6 2594 4027 9868 -18065 2 2 0 6 8140 9793 8141 -18066 2 2 0 6 5755 9991 9057 -18067 2 2 0 6 8845 8846 10173 -18068 2 2 0 6 1140 9761 3673 -18069 2 2 0 6 3237 9791 3843 -18070 2 2 0 6 5700 9282 9831 -18071 2 2 0 6 6453 9924 9547 -18072 2 2 0 6 6497 10000 9831 -18073 2 2 0 6 6368 9479 10003 -18074 2 2 0 6 1406 10211 9239 -18075 2 2 0 6 2742 3324 9243 -18076 2 2 0 6 8674 9327 9805 -18077 2 2 0 6 3750 10161 9713 -18078 2 2 0 6 2325 2406 9944 -18079 2 2 0 6 4427 9918 9355 -18080 2 2 0 6 7283 7417 10030 -18081 2 2 0 6 3723 9270 10108 -18082 2 2 0 6 5752 10059 7679 -18083 2 2 0 6 3665 9926 3667 -18084 2 2 0 6 4953 6202 9745 -18085 2 2 0 6 6426 9994 9891 -18086 2 2 0 6 3492 10157 5749 -18087 2 2 0 6 2890 8730 10140 -18088 2 2 0 6 3523 10761 7371 -18089 2 2 0 6 2322 9832 8900 -18090 2 2 0 6 5245 6994 6993 -18091 2 2 0 6 6550 10318 8368 -18092 2 2 0 6 5636 8878 9310 -18093 2 2 0 6 8252 9598 10109 -18094 2 2 0 6 6355 10188 8325 -18095 2 2 0 6 583 3723 9562 -18096 2 2 0 6 3680 9404 4178 -18097 2 2 0 6 2467 2727 9832 -18098 2 2 0 6 8711 9920 9800 -18099 2 2 0 6 5799 7914 10078 -18100 2 2 0 6 8157 10013 9824 -18101 2 2 0 6 3949 8429 10057 -18102 2 2 0 6 2248 8826 10557 -18103 2 2 0 6 4426 10237 10191 -18104 2 2 0 6 8189 8190 10043 -18105 2 2 0 6 8685 10324 9875 -18106 2 2 0 6 4426 10191 9895 -18107 2 2 0 6 5298 8963 6329 -18108 2 2 0 6 1334 10348 1336 -18109 2 2 0 6 6763 6764 9737 -18110 2 2 0 6 978 3889 9816 -18111 2 2 0 6 9009 9659 10086 -18112 2 2 0 6 880 9654 888 -18113 2 2 0 6 1005 7029 9962 -18114 2 2 0 6 7186 10076 10259 -18115 2 2 0 6 2480 8541 5492 -18116 2 2 0 6 38 545 9359 -18117 2 2 0 6 2538 10025 2540 -18118 2 2 0 6 2225 9923 2484 -18119 2 2 0 6 5848 10247 6333 -18120 2 2 0 6 2663 9651 2875 -18121 2 2 0 6 1954 10151 1956 -18122 2 2 0 6 4056 4240 9781 -18123 2 2 0 6 3783 10269 3784 -18124 2 2 0 6 6019 10249 10108 -18125 2 2 0 6 4249 10159 6573 -18126 2 2 0 6 8930 10659 10652 -18127 2 2 0 6 2370 9945 2485 -18128 2 2 0 6 6625 10153 10298 -18129 2 2 0 6 520 7380 7465 -18130 2 2 0 6 7957 10169 10225 -18131 2 2 0 6 4531 5117 8836 -18132 2 2 0 6 3980 10285 7744 -18133 2 2 0 6 8730 9918 10140 -18134 2 2 0 6 8111 10335 9971 -18135 2 2 0 6 4713 9694 5196 -18136 2 2 0 6 8034 10062 8039 -18137 2 2 0 6 2420 10006 8892 -18138 2 2 0 6 3572 9976 5491 -18139 2 2 0 6 1824 9922 5777 -18140 2 2 0 6 4951 9191 9984 -18141 2 2 0 6 1514 5777 9814 -18142 2 2 0 6 1646 10273 3552 -18143 2 2 0 6 2232 10132 9475 -18144 2 2 0 6 8201 10767 10836 -18145 2 2 0 6 143 144 9556 -18146 2 2 0 6 5546 9576 9975 -18147 2 2 0 6 5491 9976 10150 -18148 2 2 0 6 9356 6416 9704 -18149 2 2 0 6 6374 7707 10141 -18150 2 2 0 6 2774 4478 10099 -18151 2 2 0 6 4938 4953 9745 -18152 2 2 0 6 8426 10252 8997 -18153 2 2 0 6 2762 9828 7978 -18154 2 2 0 6 721 725 9564 -18155 2 2 0 6 6747 6749 6748 -18156 2 2 0 6 1358 1282 9857 -18157 2 2 0 6 5734 6438 9546 -18158 2 2 0 6 3005 3260 9942 -18159 2 2 0 6 5886 10535 10449 -18160 2 2 0 6 6064 11172 7802 -18161 2 2 0 6 5798 8032 10106 -18162 2 2 0 6 5379 10001 8062 -18163 2 2 0 6 4290 9718 4294 -18164 2 2 0 6 5877 10382 6621 -18165 2 2 0 6 6234 9504 10037 -18166 2 2 0 6 2203 8900 9852 -18167 2 2 0 6 301 302 495 -18168 2 2 0 6 1986 2396 2395 -18169 2 2 0 6 7941 9813 10038 -18170 2 2 0 6 2380 9612 9550 -18171 2 2 0 6 6762 6764 6763 -18172 2 2 0 6 976 8830 9306 -18173 2 2 0 6 2338 9318 2482 -18174 2 2 0 6 4663 10136 8080 -18175 2 2 0 6 5398 10141 7927 -18176 2 2 0 6 2233 10858 2235 -18177 2 2 0 6 7063 5743 10060 -18178 2 2 0 6 9711 10117 4900 -18179 2 2 0 6 4248 4524 10093 -18180 2 2 0 6 4678 6040 9734 -18181 2 2 0 6 6541 9849 6544 -18182 2 2 0 6 9601 9843 10176 -18183 2 2 0 6 2267 10017 10032 -18184 2 2 0 6 2285 9893 9863 -18185 2 2 0 6 3685 3833 3669 -18186 2 2 0 6 141 142 9650 -18187 2 2 0 6 6826 6827 6905 -18188 2 2 0 6 43 44 9660 -18189 2 2 0 6 1794 9484 9656 -18190 2 2 0 6 5427 8080 10136 -18191 2 2 0 6 5018 6614 9981 -18192 2 2 0 6 3060 9799 4161 -18193 2 2 0 6 4802 4188 9985 -18194 2 2 0 6 3665 9935 9926 -18195 2 2 0 6 5671 9244 10162 -18196 2 2 0 6 305 9516 471 -18197 2 2 0 6 3185 9720 4196 -18198 2 2 0 6 8907 9600 9810 -18199 2 2 0 6 3112 9833 9288 -18200 2 2 0 6 674 9407 3533 -18201 2 2 0 6 2765 9899 2769 -18202 2 2 0 6 2400 2569 9612 -18203 2 2 0 6 1694 9021 1697 -18204 2 2 0 6 4727 7260 10026 -18205 2 2 0 6 4752 4753 9987 -18206 2 2 0 6 8438 8439 9956 -18207 2 2 0 6 4480 4900 10004 -18208 2 2 0 6 3737 9507 9883 -18209 2 2 0 6 1869 8438 9956 -18210 2 2 0 6 4989 6506 9606 -18211 2 2 0 6 8940 9843 9601 -18212 2 2 0 6 1346 9839 1348 -18213 2 2 0 6 4507 9781 5163 -18214 2 2 0 6 4510 6552 9869 -18215 2 2 0 6 5958 7372 10022 -18216 2 2 0 6 5178 5828 6760 -18217 2 2 0 6 2803 9719 2862 -18218 2 2 0 6 578 9270 581 -18219 2 2 0 6 2574 9995 3989 -18220 2 2 0 6 6558 10350 10305 -18221 2 2 0 6 3991 10299 4415 -18222 2 2 0 6 6451 9736 9688 -18223 2 2 0 6 643 8959 9921 -18224 2 2 0 6 6589 10407 10157 -18225 2 2 0 6 1313 8795 10213 -18226 2 2 0 6 4864 10134 6332 -18227 2 2 0 6 3306 9726 4692 -18228 2 2 0 6 1651 9522 1654 -18229 2 2 0 6 3978 4849 10202 -18230 2 2 0 6 2970 2971 2972 -18231 2 2 0 6 5310 9750 5398 -18232 2 2 0 6 2887 9905 3170 -18233 2 2 0 6 6360 7748 9842 -18234 2 2 0 6 4593 6061 9977 -18235 2 2 0 6 2197 9935 3665 -18236 2 2 0 6 5459 5461 10028 -18237 2 2 0 6 4810 4812 9450 -18238 2 2 0 6 2952 10700 10574 -18239 2 2 0 6 2155 9602 3574 -18240 2 2 0 6 4098 10223 5307 -18241 2 2 0 6 2322 2467 9832 -18242 2 2 0 6 2985 10053 3240 -18243 2 2 0 6 3388 8721 10643 -18244 2 2 0 6 4123 4607 4608 -18245 2 2 0 6 4704 5260 9700 -18246 2 2 0 6 2669 9866 4491 -18247 2 2 0 6 2884 9988 2885 -18248 2 2 0 6 8495 10006 9092 -18249 2 2 0 6 2370 2484 9945 -18250 2 2 0 6 1663 10404 10383 -18251 2 2 0 6 3776 9867 3779 -18252 2 2 0 6 7287 11109 8434 -18253 2 2 0 6 7460 7461 10120 -18254 2 2 0 6 7834 9854 8042 -18255 2 2 0 6 6074 10051 9804 -18256 2 2 0 6 6535 10582 10532 -18257 2 2 0 6 2358 2612 9479 -18258 2 2 0 6 5110 6114 9911 -18259 2 2 0 6 3454 10287 4987 -18260 2 2 0 6 8474 8476 10345 -18261 2 2 0 6 6409 10016 10015 -18262 2 2 0 6 2146 9601 3634 -18263 2 2 0 6 6453 9309 9924 -18264 2 2 0 6 6496 10096 10199 -18265 2 2 0 6 5810 10265 9729 -18266 2 2 0 6 9093 9727 9778 -18267 2 2 0 6 892 10315 895 -18268 2 2 0 6 1721 4907 9508 -18269 2 2 0 6 1966 2254 10253 -18270 2 2 0 6 9286 10013 10139 -18271 2 2 0 6 5785 7667 10158 -18272 2 2 0 6 4989 9606 7917 -18273 2 2 0 6 7274 10313 7511 -18274 2 2 0 6 2069 9706 9054 -18275 2 2 0 6 5811 9946 10203 -18276 2 2 0 6 4179 9946 9247 -18277 2 2 0 6 6339 10569 10874 -18278 2 2 0 6 2749 5631 10245 -18279 2 2 0 6 3697 10510 7812 -18280 2 2 0 6 2739 9741 8632 -18281 2 2 0 6 5259 6995 7384 -18282 2 2 0 6 1887 1889 9722 -18283 2 2 0 6 1762 5630 10107 -18284 2 2 0 6 3537 9906 3598 -18285 2 2 0 6 5612 9628 9106 -18286 2 2 0 6 5742 5744 9979 -18287 2 2 0 6 3071 10205 3072 -18288 2 2 0 6 2188 9741 2456 -18289 2 2 0 6 6495 10002 10096 -18290 2 2 0 6 3175 9692 3271 -18291 2 2 0 6 4960 9824 10013 -18292 2 2 0 6 2101 2116 9206 -18293 2 2 0 6 2834 9449 3371 -18294 2 2 0 6 7560 9004 7570 -18295 2 2 0 6 7355 8700 9762 -18296 2 2 0 6 1730 3592 9573 -18297 2 2 0 6 6535 10432 7857 -18298 2 2 0 6 2730 9850 9561 -18299 2 2 0 6 3886 9968 5037 -18300 2 2 0 6 4113 11093 11083 -18301 2 2 0 6 6416 6417 9704 -18302 2 2 0 6 6470 10112 10243 -18303 2 2 0 6 3720 10659 8930 -18304 2 2 0 6 4034 10764 8312 -18305 2 2 0 6 5738 9693 10072 -18306 2 2 0 6 4480 10004 4482 -18307 2 2 0 6 3244 10024 3245 -18308 2 2 0 6 5859 10026 10186 -18309 2 2 0 6 1356 9940 3644 -18310 2 2 0 6 2507 9866 2669 -18311 2 2 0 6 2032 9986 3512 -18312 2 2 0 6 6598 10147 10207 -18313 2 2 0 6 1806 9474 1900 -18314 2 2 0 6 1958 9852 2189 -18315 2 2 0 6 3434 10073 9891 -18316 2 2 0 6 9054 9706 9468 -18317 2 2 0 6 725 837 9564 -18318 2 2 0 6 4218 5110 9911 -18319 2 2 0 6 3214 4122 4123 -18320 2 2 0 6 5417 8956 7613 -18321 2 2 0 6 3294 3625 9584 -18322 2 2 0 6 3005 9942 3007 -18323 2 2 0 6 1581 1606 9113 -18324 2 2 0 6 2873 9258 10118 -18325 2 2 0 6 8795 10261 10213 -18326 2 2 0 6 8038 10316 8226 -18327 2 2 0 6 5057 9789 5753 -18328 2 2 0 6 4960 10013 9286 -18329 2 2 0 6 2456 9741 2739 -18330 2 2 0 6 8665 10131 10038 -18331 2 2 0 6 5156 6826 5157 -18332 2 2 0 6 1018 9884 5397 -18333 2 2 0 6 3009 9896 3265 -18334 2 2 0 6 6207 8979 10061 -18335 2 2 0 6 3989 10089 9164 -18336 2 2 0 6 4429 5723 9918 -18337 2 2 0 6 2875 9651 3106 -18338 2 2 0 6 4608 6052 6110 -18339 2 2 0 6 3524 10171 9998 -18340 2 2 0 6 4426 8642 10237 -18341 2 2 0 6 4594 5098 8094 -18342 2 2 0 6 2409 9619 4569 -18343 2 2 0 6 706 710 9939 -18344 2 2 0 6 1353 10041 1511 -18345 2 2 0 6 3839 8232 10142 -18346 2 2 0 6 4770 4771 9947 -18347 2 2 0 6 7803 8274 10266 -18348 2 2 0 6 9450 10068 9754 -18349 2 2 0 6 6398 7598 10104 -18350 2 2 0 6 1031 9717 1041 -18351 2 2 0 6 37 38 9359 -18352 2 2 0 6 2046 2047 9126 -18353 2 2 0 6 4466 10182 10085 -18354 2 2 0 6 5716 9919 6454 -18355 2 2 0 6 3430 9891 9994 -18356 2 2 0 6 4237 4239 9402 -18357 2 2 0 6 7602 7683 9657 -18358 2 2 0 6 3181 9599 9663 -18359 2 2 0 6 6397 10104 7618 -18360 2 2 0 6 4315 4318 9752 -18361 2 2 0 6 5773 9792 10085 -18362 2 2 0 6 3911 9687 3955 -18363 2 2 0 6 1755 3360 9299 -18364 2 2 0 6 4266 5178 5177 -18365 2 2 0 6 1167 9807 1169 -18366 2 2 0 6 4901 7598 10369 -18367 2 2 0 6 5917 10606 7647 -18368 2 2 0 6 9233 10037 9504 -18369 2 2 0 6 4290 4872 9718 -18370 2 2 0 6 3683 9948 5865 -18371 2 2 0 6 9124 9469 9982 -18372 2 2 0 6 5685 10031 6783 -18373 2 2 0 6 5255 10051 7137 -18374 2 2 0 6 2273 10058 2275 -18375 2 2 0 6 2471 7887 7626 -18376 2 2 0 6 4544 4546 4547 -18377 2 2 0 6 1958 2203 9852 -18378 2 2 0 6 1755 9299 9658 -18379 2 2 0 6 2469 9423 9999 -18380 2 2 0 6 7218 7275 7220 -18381 2 2 0 6 3511 10397 10273 -18382 2 2 0 6 3893 4462 9693 -18383 2 2 0 6 5365 5368 9296 -18384 2 2 0 6 4493 7808 10475 -18385 2 2 0 6 4619 9756 5183 -18386 2 2 0 6 8860 9704 9882 -18387 2 2 0 6 8158 10063 8634 -18388 2 2 0 6 1991 9913 1993 -18389 2 2 0 6 3254 9669 3256 -18390 2 2 0 6 4335 5112 9696 -18391 2 2 0 6 1999 9251 2002 -18392 2 2 0 6 8507 10095 8509 -18393 2 2 0 6 6640 10625 10676 -18394 2 2 0 6 4209 10078 8580 -18395 2 2 0 6 5693 10260 8533 -18396 2 2 0 6 1609 9806 9194 -18397 2 2 0 6 5111 9760 6109 -18398 2 2 0 6 2010 9590 3475 -18399 2 2 0 6 1788 10077 5372 -18400 2 2 0 6 896 10296 899 -18401 2 2 0 6 3268 11257 7132 -18402 2 2 0 6 4076 9789 5057 -18403 2 2 0 6 6290 10333 7995 -18404 2 2 0 6 4607 6052 4608 -18405 2 2 0 6 5977 10729 10742 -18406 2 2 0 6 1887 9722 9363 -18407 2 2 0 6 910 8443 912 -18408 2 2 0 6 7301 7303 9909 -18409 2 2 0 6 6476 9778 10071 -18410 2 2 0 6 9663 10170 5778 -18411 2 2 0 6 2069 9392 9706 -18412 2 2 0 6 37 9359 413 -18413 2 2 0 6 3935 9997 4800 -18414 2 2 0 6 782 1522 10304 -18415 2 2 0 6 4646 5158 9605 -18416 2 2 0 6 2803 2804 9719 -18417 2 2 0 6 3452 8101 10023 -18418 2 2 0 6 1438 9951 1512 -18419 2 2 0 6 1831 10107 1948 -18420 2 2 0 6 3685 3834 3833 -18421 2 2 0 6 5796 5807 10081 -18422 2 2 0 6 6552 10263 9869 -18423 2 2 0 6 4335 9696 4337 -18424 2 2 0 6 8779 10135 9880 -18425 2 2 0 6 5255 9804 10051 -18426 2 2 0 6 674 676 9407 -18427 2 2 0 6 9319 10177 10268 -18428 2 2 0 6 5726 6013 10042 -18429 2 2 0 6 5461 6467 10028 -18430 2 2 0 6 7186 9579 10076 -18431 2 2 0 6 1609 9080 9806 -18432 2 2 0 6 4637 10314 5836 -18433 2 2 0 6 5226 7264 10047 -18434 2 2 0 6 5421 10575 8855 -18435 2 2 0 6 2028 9986 2032 -18436 2 2 0 6 6498 10048 9212 -18437 2 2 0 6 6495 10096 6496 -18438 2 2 0 6 6152 6951 6952 -18439 2 2 0 6 3230 9964 3825 -18440 2 2 0 6 3452 10023 4035 -18441 2 2 0 6 5729 6426 10073 -18442 2 2 0 6 5927 10598 10615 -18443 2 2 0 6 6760 6927 6785 -18444 2 2 0 6 2590 9963 2592 -18445 2 2 0 6 4962 10321 10341 -18446 2 2 0 6 2380 2400 9612 -18447 2 2 0 6 2172 2178 9990 -18448 2 2 0 6 5560 10064 6203 -18449 2 2 0 6 3279 9529 9622 -18450 2 2 0 6 778 10304 8869 -18451 2 2 0 6 1824 1943 9922 -18452 2 2 0 6 2008 9305 9590 -18453 2 2 0 6 8866 9938 9933 -18454 2 2 0 6 953 10050 954 -18455 2 2 0 6 5177 9851 6136 -18456 2 2 0 6 4259 4679 10012 -18457 2 2 0 6 5758 10166 6121 -18458 2 2 0 6 675 672 9152 -18459 2 2 0 6 341 9597 554 -18460 2 2 0 6 3805 4259 10012 -18461 2 2 0 6 4986 5238 10295 -18462 2 2 0 6 5941 10019 5996 -18463 2 2 0 6 8431 9758 10144 -18464 2 2 0 6 4510 9869 4512 -18465 2 2 0 6 2911 10129 9961 -18466 2 2 0 6 5125 6757 10048 -18467 2 2 0 6 2571 3348 9758 -18468 2 2 0 6 7679 10059 10401 -18469 2 2 0 6 2378 2380 9550 -18470 2 2 0 6 7793 10329 9681 -18471 2 2 0 6 5015 9992 5844 -18472 2 2 0 6 5673 10060 5743 -18473 2 2 0 6 5183 9756 10138 -18474 2 2 0 6 2329 8541 2480 -18475 2 2 0 6 3537 8936 9906 -18476 2 2 0 6 4327 7394 10504 -18477 2 2 0 6 1943 2321 9922 -18478 2 2 0 6 8848 9458 10399 -18479 2 2 0 6 3260 8964 9942 -18480 2 2 0 6 3238 9855 10159 -18481 2 2 0 6 2357 2358 9479 -18482 2 2 0 6 4058 7469 10132 -18483 2 2 0 6 4648 6653 9731 -18484 2 2 0 6 6180 9430 10430 -18485 2 2 0 6 6268 7243 10367 -18486 2 2 0 6 8350 10617 10634 -18487 2 2 0 6 3391 8529 9802 -18488 2 2 0 6 7222 10343 7718 -18489 2 2 0 6 5764 9554 9553 -18490 2 2 0 6 3667 3685 3669 -18491 2 2 0 6 2524 9948 2697 -18492 2 2 0 6 2269 2290 10017 -18493 2 2 0 6 4578 10046 5327 -18494 2 2 0 6 4982 10067 5072 -18495 2 2 0 6 6425 10201 10146 -18496 2 2 0 6 2985 3799 10053 -18497 2 2 0 6 3998 8252 10102 -18498 2 2 0 6 4033 10415 10162 -18499 2 2 0 6 4308 9693 5738 -18500 2 2 0 6 3545 10085 9792 -18501 2 2 0 6 45 46 9538 -18502 2 2 0 6 2852 2969 2970 -18503 2 2 0 6 2889 8974 9905 -18504 2 2 0 6 702 1222 10335 -18505 2 2 0 6 1222 9971 10335 -18506 2 2 0 6 2399 10892 10884 -18507 2 2 0 6 6313 10446 7252 -18508 2 2 0 6 9302 10303 9307 -18509 2 2 0 6 2128 9601 2146 -18510 2 2 0 6 5843 10152 10276 -18511 2 2 0 6 946 10224 949 -18512 2 2 0 6 5566 9973 9525 -18513 2 2 0 6 2170 9990 10204 -18514 2 2 0 6 8484 8486 10257 -18515 2 2 0 6 4704 9700 4706 -18516 2 2 0 6 1646 3511 10273 -18517 2 2 0 6 3685 3667 9926 -18518 2 2 0 6 3972 10238 10171 -18519 2 2 0 6 1320 3568 9673 -18520 2 2 0 6 2223 9570 9923 -18521 2 2 0 6 8508 8512 10095 -18522 2 2 0 6 4610 6067 9980 -18523 2 2 0 6 4835 10222 5338 -18524 2 2 0 6 7476 7694 7478 -18525 2 2 0 6 1811 7853 1875 -18526 2 2 0 6 4622 6058 9952 -18527 2 2 0 6 4213 9408 10081 -18528 2 2 0 6 4188 4976 9985 -18529 2 2 0 6 5866 8196 10380 -18530 2 2 0 6 5700 10000 9386 -18531 2 2 0 6 5865 10532 10582 -18532 2 2 0 6 1650 9522 1651 -18533 2 2 0 6 8611 10037 9233 -18534 2 2 0 6 3970 9729 5281 -18535 2 2 0 6 2232 2234 10132 -18536 2 2 0 6 1247 10657 10757 -18537 2 2 0 6 3391 9802 3393 -18538 2 2 0 6 5192 9162 9874 -18539 2 2 0 6 4318 4320 10036 -18540 2 2 0 6 4440 9931 5377 -18541 2 2 0 6 672 673 9152 -18542 2 2 0 6 4546 5912 4693 -18543 2 2 0 6 4474 10230 5356 -18544 2 2 0 6 1847 1961 10110 -18545 2 2 0 6 2560 2969 2852 -18546 2 2 0 6 5823 10371 7428 -18547 2 2 0 6 3360 4294 9299 -18548 2 2 0 6 8860 9882 8861 -18549 2 2 0 6 3047 9440 9599 -18550 2 2 0 6 2890 10066 9240 -18551 2 2 0 6 7863 10082 7864 -18552 2 2 0 6 1812 10041 5533 -18553 2 2 0 6 2751 10245 4026 -18554 2 2 0 6 3199 10308 3201 -18555 2 2 0 6 3086 3089 10119 -18556 2 2 0 6 8757 9941 9445 -18557 2 2 0 6 5822 9892 9228 -18558 2 2 0 6 5862 7429 10402 -18559 2 2 0 6 5211 9549 10168 -18560 2 2 0 6 942 10337 945 -18561 2 2 0 6 2098 10009 2100 -18562 2 2 0 6 3107 9288 3109 -18563 2 2 0 6 5279 6209 10014 -18564 2 2 0 6 3471 11003 11017 -18565 2 2 0 6 6482 10113 6509 -18566 2 2 0 6 128 129 9498 -18567 2 2 0 6 2350 10154 2349 -18568 2 2 0 6 6417 9882 9704 -18569 2 2 0 6 799 10530 807 -18570 2 2 0 6 5867 8134 10020 -18571 2 2 0 6 7243 10546 10367 -18572 2 2 0 6 4814 4816 9517 -18573 2 2 0 6 6420 9237 9959 -18574 2 2 0 6 1714 9304 8804 -18575 2 2 0 6 3543 10197 4466 -18576 2 2 0 6 4239 4710 9402 -18577 2 2 0 6 5700 9831 10000 -18578 2 2 0 6 4248 10093 4626 -18579 2 2 0 6 5692 10108 9270 -18580 2 2 0 6 591 3631 9682 -18581 2 2 0 6 3545 4466 10085 -18582 2 2 0 6 5789 9631 10167 -18583 2 2 0 6 2330 9907 8555 -18584 2 2 0 6 5624 7088 10094 -18585 2 2 0 6 4976 5972 9985 -18586 2 2 0 6 5278 5279 10014 -18587 2 2 0 6 7976 8042 9854 -18588 2 2 0 6 2100 10009 2590 -18589 2 2 0 6 6426 9891 10073 -18590 2 2 0 6 5747 6474 9993 -18591 2 2 0 6 1661 3722 9457 -18592 2 2 0 6 6368 10003 9311 -18593 2 2 0 6 6438 6439 10054 -18594 2 2 0 6 2223 9923 2225 -18595 2 2 0 6 9469 9871 9982 -18596 2 2 0 6 3371 9449 10145 -18597 2 2 0 6 2865 10278 10498 -18598 2 2 0 6 2401 10935 10926 -18599 2 2 0 6 3243 3246 9856 -18600 2 2 0 6 3684 9960 3830 -18601 2 2 0 6 3549 8820 10126 -18602 2 2 0 6 8873 8874 10300 -18603 2 2 0 6 7295 7297 9915 -18604 2 2 0 6 2910 4492 9936 -18605 2 2 0 6 4742 10111 4743 -18606 2 2 0 6 8571 8570 10553 -18607 2 2 0 6 4952 6390 9931 -18608 2 2 0 6 5005 10359 10336 -18609 2 2 0 6 7854 10052 10340 -18610 2 2 0 6 4489 5356 10290 -18611 2 2 0 6 3348 3351 9758 -18612 2 2 0 6 1762 10107 1831 -18613 2 2 0 6 4505 5856 10314 -18614 2 2 0 6 6312 7203 10446 -18615 2 2 0 6 5789 10167 9940 -18616 2 2 0 6 8688 9489 10080 -18617 2 2 0 6 2720 9766 10266 -18618 2 2 0 6 6557 9967 8742 -18619 2 2 0 6 4337 9696 5113 -18620 2 2 0 6 1986 10039 2396 -18621 2 2 0 6 203 204 496 -18622 2 2 0 6 783 10220 788 -18623 2 2 0 6 3436 10087 3437 -18624 2 2 0 6 9155 9830 9686 -18625 2 2 0 6 5566 7753 9973 -18626 2 2 0 6 8530 10239 10431 -18627 2 2 0 6 2842 5387 10438 -18628 2 2 0 6 2674 8413 9877 -18629 2 2 0 6 6529 9880 10135 -18630 2 2 0 6 7019 10040 7020 -18631 2 2 0 6 3805 10012 4262 -18632 2 2 0 6 4706 9700 6101 -18633 2 2 0 6 5814 10290 10489 -18634 2 2 0 6 4614 10326 10244 -18635 2 2 0 6 4742 6203 10111 -18636 2 2 0 6 5164 6776 10149 -18637 2 2 0 6 3296 4421 10334 -18638 2 2 0 6 621 10298 622 -18639 2 2 0 6 6520 10159 9855 -18640 2 2 0 6 4456 9993 9182 -18641 2 2 0 6 805 808 10527 -18642 2 2 0 6 3434 3435 10164 -18643 2 2 0 6 4061 4518 9943 -18644 2 2 0 6 6728 10193 7817 -18645 2 2 0 6 948 951 10128 -18646 2 2 0 6 2028 8727 9986 -18647 2 2 0 6 5958 10022 9862 -18648 2 2 0 6 6609 10681 6608 -18649 2 2 0 6 5631 9164 10089 -18650 2 2 0 6 7957 8132 10169 -18651 2 2 0 6 8505 9009 10086 -18652 2 2 0 6 8765 10782 10856 -18653 2 2 0 6 6585 7533 10409 -18654 2 2 0 6 8397 10426 8453 -18655 2 2 0 6 5874 10456 10558 -18656 2 2 0 6 4396 10103 4470 -18657 2 2 0 6 1032 2153 10084 -18658 2 2 0 6 761 10373 1523 -18659 2 2 0 6 2722 10564 10656 -18660 2 2 0 6 7473 7472 10537 -18661 2 2 0 6 1714 1718 9304 -18662 2 2 0 6 3893 9693 4308 -18663 2 2 0 6 5738 10072 7069 -18664 2 2 0 6 2887 2889 9905 -18665 2 2 0 6 345 346 534 -18666 2 2 0 6 3684 3823 9960 -18667 2 2 0 6 5795 10292 8303 -18668 2 2 0 6 4472 6452 10230 -18669 2 2 0 6 6148 10142 6862 -18670 2 2 0 6 2524 2620 9948 -18671 2 2 0 6 5857 8699 10359 -18672 2 2 0 6 3685 9926 9730 -18673 2 2 0 6 3252 10125 4233 -18674 2 2 0 6 6603 10121 10534 -18675 2 2 0 6 23 425 9566 -18676 2 2 0 6 2130 2335 10045 -18677 2 2 0 6 6469 9754 10068 -18678 2 2 0 6 8282 10295 10362 -18679 2 2 0 6 5886 10449 9943 -18680 2 2 0 6 3668 3828 10098 -18681 2 2 0 6 910 970 8443 -18682 2 2 0 6 3388 10261 8795 -18683 2 2 0 6 2236 10120 2515 -18684 2 2 0 6 6286 10074 7436 -18685 2 2 0 6 1313 10213 10115 -18686 2 2 0 6 2396 2560 2559 -18687 2 2 0 6 5156 6827 6826 -18688 2 2 0 6 1359 10156 1351 -18689 2 2 0 6 389 9494 543 -18690 2 2 0 6 6735 11183 11188 -18691 2 2 0 6 5757 7940 10092 -18692 2 2 0 6 4752 9987 5227 -18693 2 2 0 6 5996 10019 6340 -18694 2 2 0 6 9488 10080 9489 -18695 2 2 0 6 7481 10256 9881 -18696 2 2 0 6 2487 10106 10154 -18697 2 2 0 6 3276 9529 3279 -18698 2 2 0 6 4394 8014 10566 -18699 2 2 0 6 1304 1320 9673 -18700 2 2 0 6 5725 10302 10320 -18701 2 2 0 6 4266 9960 5828 -18702 2 2 0 6 5948 10370 8874 -18703 2 2 0 6 1158 3673 9701 -18704 2 2 0 6 4014 9871 9469 -18705 2 2 0 6 4797 10485 4990 -18706 2 2 0 6 4499 4614 10244 -18707 2 2 0 6 3009 3010 9896 -18708 2 2 0 6 3881 4546 4544 -18709 2 2 0 6 6065 11181 11175 -18710 2 2 0 6 4664 10074 6286 -18711 2 2 0 6 5754 6329 10309 -18712 2 2 0 6 2349 10155 8444 -18713 2 2 0 6 4484 4837 10209 -18714 2 2 0 6 4885 5812 10109 -18715 2 2 0 6 2071 11167 11227 -18716 2 2 0 6 3240 9772 3241 -18717 2 2 0 6 6608 10682 9101 -18718 2 2 0 6 1026 9286 10139 -18719 2 2 0 6 7472 8764 10537 -18720 2 2 0 6 3722 4554 9755 -18721 2 2 0 6 2143 9965 2209 -18722 2 2 0 6 1167 5791 9807 -18723 2 2 0 6 8738 10133 9904 -18724 2 2 0 6 1539 10325 10396 -18725 2 2 0 6 3905 10300 6327 -18726 2 2 0 6 911 9846 971 -18727 2 2 0 6 7940 7941 10131 -18728 2 2 0 6 7724 10125 7725 -18729 2 2 0 6 6443 9833 9916 -18730 2 2 0 6 5979 10148 5681 -18731 2 2 0 6 5227 9987 7099 -18732 2 2 0 6 3949 10057 3950 -18733 2 2 0 6 1471 10340 1474 -18734 2 2 0 6 7299 7316 9864 -18735 2 2 0 6 5165 10518 10460 -18736 2 2 0 6 3254 4130 9669 -18737 2 2 0 6 5683 10031 5685 -18738 2 2 0 6 5838 7714 10137 -18739 2 2 0 6 5855 8509 10701 -18740 2 2 0 6 5860 7363 10212 -18741 2 2 0 6 8507 8508 10095 -18742 2 2 0 6 7429 10282 10437 -18743 2 2 0 6 5018 9981 5019 -18744 2 2 0 6 1657 10383 3508 -18745 2 2 0 6 3242 10127 8974 -18746 2 2 0 6 8790 10752 10765 -18747 2 2 0 6 6235 6234 10115 -18748 2 2 0 6 3689 10668 10427 -18749 2 2 0 6 3010 8301 9896 -18750 2 2 0 6 3801 10074 4664 -18751 2 2 0 6 3508 10383 8115 -18752 2 2 0 6 1541 10396 2954 -18753 2 2 0 6 3355 9431 9554 -18754 2 2 0 6 4518 5886 9943 -18755 2 2 0 6 1308 10351 10342 -18756 2 2 0 6 5458 5880 10583 -18757 2 2 0 6 5706 9904 10133 -18758 2 2 0 6 953 10113 10050 -18759 2 2 0 6 5833 10195 6320 -18760 2 2 0 6 3541 8444 10197 -18761 2 2 0 6 1996 9913 5905 -18762 2 2 0 6 7484 7539 10214 -18763 2 2 0 6 572 9796 575 -18764 2 2 0 6 1175 3480 10375 -18765 2 2 0 6 5170 6772 10105 -18766 2 2 0 6 7941 10038 10131 -18767 2 2 0 6 244 245 460 -18768 2 2 0 6 3241 9772 3244 -18769 2 2 0 6 2592 9963 4027 -18770 2 2 0 6 4695 4696 9487 -18771 2 2 0 6 5966 5965 10788 -18772 2 2 0 6 1073 10301 1076 -18773 2 2 0 6 3966 9729 3967 -18774 2 2 0 6 8892 10006 10184 -18775 2 2 0 6 3224 10328 8267 -18776 2 2 0 6 3524 9998 9894 -18777 2 2 0 6 6506 10126 9606 -18778 2 2 0 6 3317 10112 3319 -18779 2 2 0 6 5546 9975 9889 -18780 2 2 0 6 342 458 9597 -18781 2 2 0 6 5243 10217 9655 -18782 2 2 0 6 6596 10571 10707 -18783 2 2 0 6 8060 10481 10470 -18784 2 2 0 6 4966 10152 10080 -18785 2 2 0 6 2655 9877 3037 -18786 2 2 0 6 4771 6212 9947 -18787 2 2 0 6 2499 8997 10252 -18788 2 2 0 6 7798 9307 10303 -18789 2 2 0 6 1152 10375 1190 -18790 2 2 0 6 3827 8080 5427 -18791 2 2 0 6 6555 10073 10164 -18792 2 2 0 6 8767 9728 9691 -18793 2 2 0 6 4620 4623 9756 -18794 2 2 0 6 5491 10150 8612 -18795 2 2 0 6 43 9660 550 -18796 2 2 0 6 6427 10360 6428 -18797 2 2 0 6 2697 9948 3683 -18798 2 2 0 6 570 3764 9796 -18799 2 2 0 6 5379 5381 10001 -18800 2 2 0 6 7626 7887 9932 -18801 2 2 0 6 7303 9798 9909 -18802 2 2 0 6 5373 10461 5489 -18803 2 2 0 6 3796 7182 9769 -18804 2 2 0 6 2161 10097 2163 -18805 2 2 0 6 4047 9319 10268 -18806 2 2 0 6 7361 9099 10278 -18807 2 2 0 6 6215 10418 7503 -18808 2 2 0 6 6448 7504 10444 -18809 2 2 0 6 4106 10056 4581 -18810 2 2 0 6 5884 6632 10427 -18811 2 2 0 6 128 9498 422 -18812 2 2 0 6 30 31 9442 -18813 2 2 0 6 2008 9590 2010 -18814 2 2 0 6 8140 9140 9793 -18815 2 2 0 6 4619 4620 9756 -18816 2 2 0 6 2560 2852 2851 -18817 2 2 0 6 3492 4751 10157 -18818 2 2 0 6 8976 10342 10351 -18819 2 2 0 6 7804 10266 9766 -18820 2 2 0 6 3107 3112 9288 -18821 2 2 0 6 1993 9913 1996 -18822 2 2 0 6 5814 9333 10290 -18823 2 2 0 6 4493 10324 8685 -18824 2 2 0 6 1038 7011 10101 -18825 2 2 0 6 3521 9684 10100 -18826 2 2 0 6 6399 10181 8718 -18827 2 2 0 6 6397 6398 10104 -18828 2 2 0 6 4209 9445 9941 -18829 2 2 0 6 2115 10045 10501 -18830 2 2 0 6 4520 10076 9579 -18831 2 2 0 6 971 9846 3889 -18832 2 2 0 6 8803 10368 10233 -18833 2 2 0 6 1525 10472 1527 -18834 2 2 0 6 8920 10319 8919 -18835 2 2 0 6 3315 9875 5809 -18836 2 2 0 6 4982 9991 10067 -18837 2 2 0 6 7355 9762 9617 -18838 2 2 0 6 3150 3154 10287 -18839 2 2 0 6 7368 9803 9378 -18840 2 2 0 6 6339 10628 10569 -18841 2 2 0 6 3711 10049 4996 -18842 2 2 0 6 5398 9750 10141 -18843 2 2 0 6 4146 10226 6215 -18844 2 2 0 6 2163 10097 9578 -18845 2 2 0 6 5178 6785 9851 -18846 2 2 0 6 5829 10124 10182 -18847 2 2 0 6 9239 10211 6390 -18848 2 2 0 6 5261 11119 11114 -18849 2 2 0 6 2098 8203 10009 -18850 2 2 0 6 141 9650 551 -18851 2 2 0 6 2443 10400 2445 -18852 2 2 0 6 737 767 10160 -18853 2 2 0 6 6576 10454 10458 -18854 2 2 0 6 3830 9960 4266 -18855 2 2 0 6 4556 8060 10470 -18856 2 2 0 6 5804 10105 6844 -18857 2 2 0 6 2908 10018 8934 -18858 2 2 0 6 1809 1512 9951 -18859 2 2 0 6 5706 10133 5944 -18860 2 2 0 6 5717 10153 5719 -18861 2 2 0 6 5977 10742 9468 -18862 2 2 0 6 4035 10023 6322 -18863 2 2 0 6 6590 10376 6591 -18864 2 2 0 6 2263 3151 10174 -18865 2 2 0 6 1827 10372 7668 -18866 2 2 0 6 4966 10080 9488 -18867 2 2 0 6 8605 9983 10194 -18868 2 2 0 6 4440 4952 9931 -18869 2 2 0 6 3325 10171 3524 -18870 2 2 0 6 2659 3507 9836 -18871 2 2 0 6 5691 9837 6468 -18872 2 2 0 6 8168 8171 10076 -18873 2 2 0 6 30 9442 421 -18874 2 2 0 6 143 9556 406 -18875 2 2 0 6 8282 10124 10295 -18876 2 2 0 6 3450 10388 9912 -18877 2 2 0 6 6862 10219 8626 -18878 2 2 0 6 2012 10264 2014 -18879 2 2 0 6 6629 10728 10722 -18880 2 2 0 6 2534 9766 2536 -18881 2 2 0 6 4113 7671 11093 -18882 2 2 0 6 1026 10139 10173 -18883 2 2 0 6 5177 5178 9851 -18884 2 2 0 6 877 10439 1039 -18885 2 2 0 6 2772 9787 2775 -18886 2 2 0 6 7915 10373 11253 -18887 2 2 0 6 4922 6023 10056 -18888 2 2 0 6 5991 8150 10121 -18889 2 2 0 6 6444 9916 10130 -18890 2 2 0 6 6608 10681 10682 -18891 2 2 0 6 5829 10182 8031 -18892 2 2 0 6 4743 10111 7126 -18893 2 2 0 6 2753 4026 10344 -18894 2 2 0 6 3319 10112 4840 -18895 2 2 0 6 5868 10310 10184 -18896 2 2 0 6 5720 5757 10191 -18897 2 2 0 6 3932 8214 10924 -18898 2 2 0 6 8974 10127 10019 -18899 2 2 0 6 4520 8168 10076 -18900 2 2 0 6 1026 10173 9432 -18901 2 2 0 6 5289 10445 8693 -18902 2 2 0 6 3950 10057 4650 -18903 2 2 0 6 5155 10130 9916 -18904 2 2 0 6 8021 10476 10501 -18905 2 2 0 6 8274 10277 10266 -18906 2 2 0 6 7469 10462 10331 -18907 2 2 0 6 1083 1080 10386 -18908 2 2 0 6 45 9538 405 -18909 2 2 0 6 2113 9797 2139 -18910 2 2 0 6 2386 10216 8514 -18911 2 2 0 6 5792 9998 5794 -18912 2 2 0 6 3011 3266 10602 -18913 2 2 0 6 6425 10146 7459 -18914 2 2 0 6 5136 10410 6604 -18915 2 2 0 6 3561 10549 8391 -18916 2 2 0 6 3795 9769 3821 -18917 2 2 0 6 5243 8057 10217 -18918 2 2 0 6 389 390 9494 -18919 2 2 0 6 2078 5671 9859 -18920 2 2 0 6 2335 2492 10055 -18921 2 2 0 6 8310 10671 10612 -18922 2 2 0 6 7858 10349 9852 -18923 2 2 0 6 6531 10271 6532 -18924 2 2 0 6 7463 7680 10884 -18925 2 2 0 6 3644 9940 10167 -18926 2 2 0 6 1071 9503 10301 -18927 2 2 0 6 8038 10465 8040 -18928 2 2 0 6 1338 10221 1342 -18929 2 2 0 6 4318 10036 9752 -18930 2 2 0 6 3787 10269 3844 -18931 2 2 0 6 2197 2198 9935 -18932 2 2 0 6 768 10342 774 -18933 2 2 0 6 5886 6617 10535 -18934 2 2 0 6 7528 10932 8212 -18935 2 2 0 6 4967 9533 10293 -18936 2 2 0 6 3172 10511 3695 -18937 2 2 0 6 3679 4178 10391 -18938 2 2 0 6 3494 3495 10235 -18939 2 2 0 6 4966 9464 10152 -18940 2 2 0 6 2536 9766 2720 -18941 2 2 0 6 5781 9344 10129 -18942 2 2 0 6 2722 10190 9652 -18943 2 2 0 6 8751 8750 10180 -18944 2 2 0 6 6327 10206 6328 -18945 2 2 0 6 8239 10168 9549 -18946 2 2 0 6 2012 3475 10264 -18947 2 2 0 6 6607 10441 10350 -18948 2 2 0 6 3087 10165 3088 -18949 2 2 0 6 2241 2394 10015 -18950 2 2 0 6 9717 10084 10302 -18951 2 2 0 6 5609 9101 10163 -18952 2 2 0 6 1004 1014 10330 -18953 2 2 0 6 2970 2972 9953 -18954 2 2 0 6 4457 4967 10293 -18955 2 2 0 6 4975 10172 10086 -18956 2 2 0 6 6474 9182 9993 -18957 2 2 0 6 1450 10408 1451 -18958 2 2 0 6 4313 9752 4655 -18959 2 2 0 6 46 47 559 -18960 2 2 0 6 1659 1663 10383 -18961 2 2 0 6 6544 10205 10187 -18962 2 2 0 6 5952 10646 8000 -18963 2 2 0 6 5348 6230 10378 -18964 2 2 0 6 7791 10123 8141 -18965 2 2 0 6 10299 7274 10429 -18966 2 2 0 6 5809 9875 10324 -18967 2 2 0 6 2755 10344 3565 -18968 2 2 0 6 6425 9642 10201 -18969 2 2 0 6 2542 10364 2721 -18970 2 2 0 6 1014 8971 10330 -18971 2 2 0 6 4521 10293 6581 -18972 2 2 0 6 843 1524 10451 -18973 2 2 0 6 2655 2674 9877 -18974 2 2 0 6 4840 10112 6470 -18975 2 2 0 6 144 145 560 -18976 2 2 0 6 10452 10545 8266 -18977 2 2 0 6 5359 10203 6497 -18978 2 2 0 6 5320 8771 10345 -18979 2 2 0 6 2248 10466 8491 -18980 2 2 0 6 9264 9779 10200 -18981 2 2 0 6 2693 2774 10099 -18982 2 2 0 6 5739 10194 9983 -18983 2 2 0 6 5891 8399 10484 -18984 2 2 0 6 2139 9797 4984 -18985 2 2 0 6 5381 6744 10001 -18986 2 2 0 6 1956 10151 1959 -18987 2 2 0 6 3850 5811 10185 -18988 2 2 0 6 3750 4581 10161 -18989 2 2 0 6 625 10153 9809 -18990 2 2 0 6 4178 9404 10044 -18991 2 2 0 6 1080 8877 10386 -18992 2 2 0 6 5751 9816 10236 -18993 2 2 0 6 7081 10362 10469 -18994 2 2 0 6 7683 9150 9657 -18995 2 2 0 6 3552 10248 9135 -18996 2 2 0 6 4547 4546 4693 -18997 2 2 0 6 9711 6450 10117 -18998 2 2 0 6 5806 7001 10286 -18999 2 2 0 6 5683 9572 10031 -19000 2 2 0 6 6728 6753 10193 -19001 2 2 0 6 2522 10263 9969 -19002 2 2 0 6 709 10502 3383 -19003 2 2 0 6 3238 10159 4249 -19004 2 2 0 6 1822 10522 8497 -19005 2 2 0 6 2202 2200 10517 -19006 2 2 0 6 4106 4922 10056 -19007 2 2 0 6 4622 9952 4624 -19008 2 2 0 6 3722 9755 9457 -19009 2 2 0 6 5019 9981 5922 -19010 2 2 0 6 2613 2615 9961 -19011 2 2 0 6 5723 8684 10140 -19012 2 2 0 6 9395 10503 10135 -19013 2 2 0 6 2096 2099 10504 -19014 2 2 0 6 6569 10162 10415 -19015 2 2 0 6 6612 10163 10648 -19016 2 2 0 6 2037 2078 9859 -19017 2 2 0 6 7629 10201 8596 -19018 2 2 0 6 7915 11253 11250 -19019 2 2 0 6 3889 10236 9816 -19020 2 2 0 6 5307 10223 7225 -19021 2 2 0 6 4313 4315 9752 -19022 2 2 0 6 7841 8063 10357 -19023 2 2 0 6 7714 10404 10363 -19024 2 2 0 6 4864 8097 10134 -19025 2 2 0 6 7361 10278 10547 -19026 2 2 0 6 5976 10729 5977 -19027 2 2 0 6 5815 9707 10202 -19028 2 2 0 6 2016 2108 10365 -19029 2 2 0 6 4972 10166 9791 -19030 2 2 0 6 6559 10271 10337 -19031 2 2 0 6 2447 10473 2475 -19032 2 2 0 6 4547 4693 4694 -19033 2 2 0 6 3048 9599 3181 -19034 2 2 0 6 2242 10015 10016 -19035 2 2 0 6 4996 10049 6258 -19036 2 2 0 6 5836 10198 5837 -19037 2 2 0 6 6573 10159 10244 -19038 2 2 0 6 7219 10520 9653 -19039 2 2 0 6 4492 4513 9936 -19040 2 2 0 6 6552 9969 10263 -19041 2 2 0 6 6544 10187 6545 -19042 2 2 0 6 4975 5904 10172 -19043 2 2 0 6 8618 8819 10523 -19044 2 2 0 6 1845 10110 10215 -19045 2 2 0 6 1211 10437 1233 -19046 2 2 0 6 2772 2934 9787 -19047 2 2 0 6 5430 8556 10639 -19048 2 2 0 6 7429 10322 10282 -19049 2 2 0 6 6612 10703 9420 -19050 2 2 0 6 6531 10224 10271 -19051 2 2 0 6 8855 10615 10598 -19052 2 2 0 6 8496 10155 8032 -19053 2 2 0 6 6506 9264 10200 -19054 2 2 0 6 7429 10437 10402 -19055 2 2 0 6 4258 4312 10189 -19056 2 2 0 6 5416 9234 10390 -19057 2 2 0 6 7024 9700 10065 -19058 2 2 0 6 7295 9915 7317 -19059 2 2 0 6 4774 5259 10178 -19060 2 2 0 6 1533 1534 10434 -19061 2 2 0 6 5757 9895 10191 -19062 2 2 0 6 5813 9125 10190 -19063 2 2 0 6 7331 8427 10592 -19064 2 2 0 6 3896 10143 5312 -19065 2 2 0 6 1463 10431 1466 -19066 2 2 0 6 4484 10209 4993 -19067 2 2 0 6 572 570 9796 -19068 2 2 0 6 8246 9835 10116 -19069 2 2 0 6 945 10224 946 -19070 2 2 0 6 6625 10381 6626 -19071 2 2 0 6 8018 8019 10208 -19072 2 2 0 6 3967 9729 3970 -19073 2 2 0 6 8677 9859 10267 -19074 2 2 0 6 6554 7811 10481 -19075 2 2 0 6 950 10114 953 -19076 2 2 0 6 5366 10083 5368 -19077 2 2 0 6 4766 9799 9919 -19078 2 2 0 6 5785 10616 5911 -19079 2 2 0 6 6585 10490 6586 -19080 2 2 0 6 5901 10497 5902 -19081 2 2 0 6 9821 9820 10318 -19082 2 2 0 6 8488 10579 8394 -19083 2 2 0 6 9534 11181 11186 -19084 2 2 0 6 9475 10132 10331 -19085 2 2 0 6 5995 10766 10718 -19086 2 2 0 6 2979 7725 10125 -19087 2 2 0 6 5917 10617 10606 -19088 2 2 0 6 587 9505 589 -19089 2 2 0 6 3275 10635 9529 -19090 2 2 0 6 5874 9424 10456 -19091 2 2 0 6 3071 10187 10205 -19092 2 2 0 6 1193 10546 10327 -19093 2 2 0 6 3536 10231 8994 -19094 2 2 0 6 8726 11064 11071 -19095 2 2 0 6 4445 10454 4820 -19096 2 2 0 6 4995 10470 5967 -19097 2 2 0 6 2198 2202 9935 -19098 2 2 0 6 625 10298 10153 -19099 2 2 0 6 7793 7799 10397 -19100 2 2 0 6 5011 6610 10467 -19101 2 2 0 6 5745 10028 10147 -19102 2 2 0 6 5880 10541 10435 -19103 2 2 0 6 3047 9599 3048 -19104 2 2 0 6 6497 10203 9946 -19105 2 2 0 6 6454 9919 9799 -19106 2 2 0 6 2234 4058 10132 -19107 2 2 0 6 4046 10805 10678 -19108 2 2 0 6 1918 10332 9419 -19109 2 2 0 6 7858 10432 10349 -19110 2 2 0 6 1966 10253 2188 -19111 2 2 0 6 6051 11177 11183 -19112 2 2 0 6 5907 5908 10374 -19113 2 2 0 6 6555 10164 10233 -19114 2 2 0 6 7778 9003 10478 -19115 2 2 0 6 6496 10199 8243 -19116 2 2 0 6 6237 10213 10261 -19117 2 2 0 6 1759 7719 10494 -19118 2 2 0 6 8480 8481 11230 -19119 2 2 0 6 6422 10323 10270 -19120 2 2 0 6 7455 10425 9328 -19121 2 2 0 6 3723 10249 9562 -19122 2 2 0 6 6531 10183 10224 -19123 2 2 0 6 1899 10572 4398 -19124 2 2 0 6 5183 10138 6777 -19125 2 2 0 6 8586 8588 10280 -19126 2 2 0 6 8196 8839 10380 -19127 2 2 0 6 1474 10340 10052 -19128 2 2 0 6 6605 10354 10413 -19129 2 2 0 6 6617 10499 10589 -19130 2 2 0 6 4033 10162 9244 -19131 2 2 0 6 2458 10471 10207 -19132 2 2 0 6 2388 2432 10075 -19133 2 2 0 6 4894 6422 10407 -19134 2 2 0 6 6510 10183 6531 -19135 2 2 0 6 5005 5407 10384 -19136 2 2 0 6 5720 10191 5839 -19137 2 2 0 6 5259 7384 10178 -19138 2 2 0 6 7716 10243 8834 -19139 2 2 0 6 10614 10639 8556 -19140 2 2 0 6 2492 2841 10055 -19141 2 2 0 6 5723 10140 9918 -19142 2 2 0 6 5792 9894 9998 -19143 2 2 0 6 6523 10149 6771 -19144 2 2 0 6 9206 10347 9797 -19145 2 2 0 6 983 989 10988 -19146 2 2 0 6 4774 10178 6213 -19147 2 2 0 6 4991 10496 10650 -19148 2 2 0 6 2102 10577 10585 -19149 2 2 0 6 2292 3368 10192 -19150 2 2 0 6 8612 10150 10075 -19151 2 2 0 6 8718 10181 10194 -19152 2 2 0 6 4344 10200 9779 -19153 2 2 0 6 5827 10177 10176 -19154 2 2 0 6 4833 10222 4835 -19155 2 2 0 6 6355 7854 10188 -19156 2 2 0 6 1001 10325 1539 -19157 2 2 0 6 8325 10188 10423 -19158 2 2 0 6 5627 10210 9095 -19159 2 2 0 6 4275 4738 9949 -19160 2 2 0 6 3368 10181 10192 -19161 2 2 0 6 6559 10405 6560 -19162 2 2 0 6 5844 10218 7187 -19163 2 2 0 6 2563 9875 2808 -19164 2 2 0 6 6744 10424 9678 -19165 2 2 0 6 1467 10423 1470 -19166 2 2 0 6 7394 7808 10463 -19167 2 2 0 6 4765 6244 10218 -19168 2 2 0 6 4998 9641 10184 -19169 2 2 0 6 2103 4327 10504 -19170 2 2 0 6 2188 10253 9741 -19171 2 2 0 6 6235 10213 6237 -19172 2 2 0 6 5717 9809 10153 -19173 2 2 0 6 5238 7084 10469 -19174 2 2 0 6 5693 9673 10260 -19175 2 2 0 6 5739 8718 10194 -19176 2 2 0 6 5758 9791 10166 -19177 2 2 0 6 7539 9786 10214 -19178 2 2 0 6 1841 1935 10246 -19179 2 2 0 6 4418 8668 10488 -19180 2 2 0 6 4312 5120 10189 -19181 2 2 0 6 8310 8311 10671 -19182 2 2 0 6 5319 9378 9803 -19183 2 2 0 6 8036 10316 8038 -19184 2 2 0 6 902 905 10227 -19185 2 2 0 6 8368 10318 9820 -19186 2 2 0 6 6235 10115 10213 -19187 2 2 0 6 2749 10245 2751 -19188 2 2 0 6 4998 10184 10310 -19189 2 2 0 6 5860 10212 7330 -19190 2 2 0 6 4438 8933 10441 -19191 2 2 0 6 8596 10201 9642 -19192 2 2 0 6 6148 9844 10142 -19193 2 2 0 6 938 10509 941 -19194 2 2 0 6 6525 10241 8422 -19195 2 2 0 6 1753 11159 11165 -19196 2 2 0 6 3485 10214 9786 -19197 2 2 0 6 4844 10353 4843 -19198 2 2 0 6 5256 6164 5257 -19199 2 2 0 6 4972 8902 10166 -19200 2 2 0 6 10035 6692 10227 -19201 2 2 0 6 2191 2672 10453 -19202 2 2 0 6 7290 9777 7289 -19203 2 2 0 6 7653 10840 7737 -19204 2 2 0 6 5366 6082 10083 -19205 2 2 0 6 8073 9912 10388 -19206 2 2 0 6 2682 10491 3199 -19207 2 2 0 6 2908 3214 10018 -19208 2 2 0 6 1699 10655 10661 -19209 2 2 0 6 6333 10247 8426 -19210 2 2 0 6 6556 10368 8560 -19211 2 2 0 6 5749 10407 10270 -19212 2 2 0 6 6727 7817 10116 -19213 2 2 0 6 5671 10267 9859 -19214 2 2 0 6 1000 9962 1007 -19215 2 2 0 6 6329 10715 10309 -19216 2 2 0 6 7689 10429 10287 -19217 2 2 0 6 5492 10134 8097 -19218 2 2 0 6 5852 8325 10239 -19219 2 2 0 6 2970 9953 3250 -19220 2 2 0 6 1455 10548 1458 -19221 2 2 0 6 1002 10330 10325 -19222 2 2 0 6 9431 9553 9554 -19223 2 2 0 6 3796 9769 3795 -19224 2 2 0 6 9362 9794 10305 -19225 2 2 0 6 5839 10237 7534 -19226 2 2 0 6 8892 10184 9641 -19227 2 2 0 6 3839 10142 9844 -19228 2 2 0 6 5898 10450 7226 -19229 2 2 0 6 5415 9454 10569 -19230 2 2 0 6 5861 10310 5868 -19231 2 2 0 6 5773 10085 10124 -19232 2 2 0 6 4591 10584 6687 -19233 2 2 0 6 2720 10277 10025 -19234 2 2 0 6 6444 10130 6446 -19235 2 2 0 6 7893 7907 10281 -19236 2 2 0 6 6585 10409 10490 -19237 2 2 0 6 2060 10499 2077 -19238 2 2 0 6 5839 10191 10237 -19239 2 2 0 6 2335 10055 10045 -19240 2 2 0 6 5749 10270 8918 -19241 2 2 0 6 5976 10752 10729 -19242 2 2 0 6 1492 1761 10539 -19243 2 2 0 6 7290 7293 9777 -19244 2 2 0 6 3433 10563 3436 -19245 2 2 0 6 5359 7532 10203 -19246 2 2 0 6 7792 7796 10234 -19247 2 2 0 6 3543 3541 10197 -19248 2 2 0 6 8484 10257 8485 -19249 2 2 0 6 699 10554 1208 -19250 2 2 0 6 3779 10255 9254 -19251 2 2 0 6 4274 4836 10493 -19252 2 2 0 6 7360 7361 10262 -19253 2 2 0 6 6547 10343 7222 -19254 2 2 0 6 5370 10377 5812 -19255 2 2 0 6 6340 10019 10127 -19256 2 2 0 6 722 10447 732 -19257 2 2 0 6 6744 6745 10424 -19258 2 2 0 6 945 10271 10224 -19259 2 2 0 6 4499 10244 6520 -19260 2 2 0 6 8560 10368 10384 -19261 2 2 0 6 5890 7214 10450 -19262 2 2 0 6 6581 10293 10466 -19263 2 2 0 6 9570 10409 9923 -19264 2 2 0 6 6164 7076 6996 -19265 2 2 0 6 587 1922 9505 -19266 2 2 0 6 3552 10273 10234 -19267 2 2 0 6 49 50 10229 -19268 2 2 0 6 2396 10039 10291 -19269 2 2 0 6 5120 6775 10189 -19270 2 2 0 6 6518 10238 6519 -19271 2 2 0 6 613 9900 10612 -19272 2 2 0 6 8018 10208 9928 -19273 2 2 0 6 3079 9679 10250 -19274 2 2 0 6 9178 10467 10306 -19275 2 2 0 6 7832 9419 10332 -19276 2 2 0 6 9849 10205 6544 -19277 2 2 0 6 8115 10383 10404 -19278 2 2 0 6 2366 10207 2672 -19279 2 2 0 6 6547 9715 10343 -19280 2 2 0 6 4694 5256 5257 -19281 2 2 0 6 7085 9655 10217 -19282 2 2 0 6 5900 10137 10363 -19283 2 2 0 6 3438 8803 10233 -19284 2 2 0 6 6203 10064 10468 -19285 2 2 0 6 5625 10799 10721 -19286 2 2 0 6 6212 7125 10175 -19287 2 2 0 6 8311 10736 10671 -19288 2 2 0 6 8010 10317 8126 -19289 2 2 0 6 5350 10411 5895 -19290 2 2 0 6 8774 8775 10555 -19291 2 2 0 6 6243 7099 10297 -19292 2 2 0 6 2540 10025 10364 -19293 2 2 0 6 4498 10512 4660 -19294 2 2 0 6 8148 10992 9978 -19295 2 2 0 6 4275 9949 4283 -19296 2 2 0 6 6438 10054 8469 -19297 2 2 0 6 1115 1136 10283 -19298 2 2 0 6 9443 10363 10404 -19299 2 2 0 6 4472 10230 4474 -19300 2 2 0 6 1792 1794 10482 -19301 2 2 0 6 6237 10261 6239 -19302 2 2 0 6 783 1025 10220 -19303 2 2 0 6 7334 10369 7598 -19304 2 2 0 6 714 3383 10477 -19305 2 2 0 6 3697 3699 10510 -19306 2 2 0 6 7260 10186 10026 -19307 2 2 0 6 9452 9453 10551 -19308 2 2 0 6 5819 10176 9843 -19309 2 2 0 6 7892 10645 10662 -19310 2 2 0 6 5260 7017 10065 -19311 2 2 0 6 115 9523 510 -19312 2 2 0 6 4260 5165 10460 -19313 2 2 0 6 7334 7336 10369 -19314 2 2 0 6 4694 4693 5256 -19315 2 2 0 6 3634 10176 10177 -19316 2 2 0 6 2499 10252 2845 -19317 2 2 0 6 6518 10171 10238 -19318 2 2 0 6 9178 10306 9621 -19319 2 2 0 6 4865 7248 10861 -19320 2 2 0 6 8804 9304 10428 -19321 2 2 0 6 6598 10207 10471 -19322 2 2 0 6 1474 10258 1475 -19323 2 2 0 6 2836 8567 10588 -19324 2 2 0 6 4849 10571 7606 -19325 2 2 0 6 8431 10144 8432 -19326 2 2 0 6 6212 10175 9947 -19327 2 2 0 6 3049 8469 10054 -19328 2 2 0 6 2954 10399 10395 -19329 2 2 0 6 7533 9923 10409 -19330 2 2 0 6 9221 10459 9222 -19331 2 2 0 6 7721 10240 7724 -19332 2 2 0 6 6555 10233 6556 -19333 2 2 0 6 2366 2458 10207 -19334 2 2 0 6 8800 10717 10740 -19335 2 2 0 6 5827 10268 10177 -19336 2 2 0 6 773 781 10289 -19337 2 2 0 6 5692 5832 10108 -19338 2 2 0 6 6573 10244 10326 -19339 2 2 0 6 5618 10248 10303 -19340 2 2 0 6 4539 4556 10470 -19341 2 2 0 6 1233 10282 1268 -19342 2 2 0 6 2615 2911 9961 -19343 2 2 0 6 2720 10266 10277 -19344 2 2 0 6 2019 10365 5713 -19345 2 2 0 6 6520 10244 10159 -19346 2 2 0 6 5618 9135 10248 -19347 2 2 0 6 2369 10349 2620 -19348 2 2 0 6 4841 10550 5288 -19349 2 2 0 6 5281 9729 10265 -19350 2 2 0 6 8021 10501 10045 -19351 2 2 0 6 2865 2866 10547 -19352 2 2 0 6 3087 8927 10232 -19353 2 2 0 6 1235 1261 10361 -19354 2 2 0 6 7074 10553 9153 -19355 2 2 0 6 5644 7189 10556 -19356 2 2 0 6 7861 9095 10210 -19357 2 2 0 6 2189 9852 10349 -19358 2 2 0 6 8086 10804 10883 -19359 2 2 0 6 5248 6576 10458 -19360 2 2 0 6 4489 10290 9333 -19361 2 2 0 6 10299 10313 7274 -19362 2 2 0 6 3085 10119 10284 -19363 2 2 0 6 703 1208 10502 -19364 2 2 0 6 6422 10270 10407 -19365 2 2 0 6 3495 3891 10235 -19366 2 2 0 6 2495 10068 10339 -19367 2 2 0 6 4614 6139 10326 -19368 2 2 0 6 7357 10486 8993 -19369 2 2 0 6 2808 9875 3315 -19370 2 2 0 6 6509 10113 10114 -19371 2 2 0 6 7803 10266 7804 -19372 2 2 0 6 7185 7186 10259 -19373 2 2 0 6 2759 10498 2761 -19374 2 2 0 6 6659 10704 10760 -19375 2 2 0 6 2106 10501 4515 -19376 2 2 0 6 2761 10489 8487 -19377 2 2 0 6 7170 7269 10638 -19378 2 2 0 6 8399 10608 10495 -19379 2 2 0 6 8972 10396 10325 -19380 2 2 0 6 2202 10517 10413 -19381 2 2 0 6 5257 6164 6996 -19382 2 2 0 6 1779 10372 1827 -19383 2 2 0 6 6410 10278 9099 -19384 2 2 0 6 7907 7981 10281 -19385 2 2 0 6 5946 10352 9987 -19386 2 2 0 6 5407 8560 10384 -19387 2 2 0 6 5900 10590 9834 -19388 2 2 0 6 5627 6331 10210 -19389 2 2 0 6 7648 10305 9794 -19390 2 2 0 6 5847 10429 7689 -19391 2 2 0 6 7755 10631 10639 -19392 2 2 0 6 6064 11175 11172 -19393 2 2 0 6 5004 10336 5850 -19394 2 2 0 6 3002 10392 9423 -19395 2 2 0 6 4415 10299 5847 -19396 2 2 0 6 5909 10196 8148 -19397 2 2 0 6 7799 10273 10397 -19398 2 2 0 6 2761 10498 10489 -19399 2 2 0 6 1007 9962 3648 -19400 2 2 0 6 5896 10616 10422 -19401 2 2 0 6 8752 8993 10486 -19402 2 2 0 6 1330 10531 1332 -19403 2 2 0 6 3565 10514 9285 -19404 2 2 0 6 5966 10788 10804 -19405 2 2 0 6 5539 10406 9774 -19406 2 2 0 6 6468 9837 9705 -19407 2 2 0 6 1355 10282 10322 -19408 2 2 0 6 5039 5879 10582 -19409 2 2 0 6 4030 9415 10320 -19410 2 2 0 6 5806 10286 9968 -19411 2 2 0 6 6522 10321 10123 -19412 2 2 0 6 7235 10658 10472 -19413 2 2 0 6 9464 10276 10152 -19414 2 2 0 6 3434 10164 10073 -19415 2 2 0 6 8382 10519 10459 -19416 2 2 0 6 8040 10465 10238 -19417 2 2 0 6 4019 8909 10534 -19418 2 2 0 6 3784 10269 3787 -19419 2 2 0 6 1494 7809 10597 -19420 2 2 0 6 6750 9665 10416 -19421 2 2 0 6 5725 10320 9415 -19422 2 2 0 6 5842 10433 10339 -19423 2 2 0 6 2882 9451 10541 -19424 2 2 0 6 5709 5711 10443 -19425 2 2 0 6 2495 10339 9043 -19426 2 2 0 6 5240 10256 7071 -19427 2 2 0 6 4751 10458 10157 -19428 2 2 0 6 1813 10523 8775 -19429 2 2 0 6 7723 10357 10240 -19430 2 2 0 6 5880 10435 10583 -19431 2 2 0 6 9071 10626 9388 -19432 2 2 0 6 4859 6476 10346 -19433 2 2 0 6 3636 7627 10657 -19434 2 2 0 6 3150 10287 3454 -19435 2 2 0 6 3083 9493 10242 -19436 2 2 0 6 3720 10570 10525 -19437 2 2 0 6 9206 9354 10347 -19438 2 2 0 6 1525 10122 10472 -19439 2 2 0 6 6329 8963 10275 -19440 2 2 0 6 9125 9652 10190 -19441 2 2 0 6 3258 10251 3881 -19442 2 2 0 6 5831 10195 5833 -19443 2 2 0 6 778 782 10304 -19444 2 2 0 6 6617 10589 10535 -19445 2 2 0 6 7321 8434 11111 -19446 2 2 0 6 3789 10274 3811 -19447 2 2 0 6 8197 10302 10084 -19448 2 2 0 6 6290 7826 10333 -19449 2 2 0 6 3214 4123 10018 -19450 2 2 0 6 831 8225 10439 -19451 2 2 0 6 6545 10187 10285 -19452 2 2 0 6 247 248 555 -19453 2 2 0 6 17 9428 509 -19454 2 2 0 6 7049 10813 7688 -19455 2 2 0 6 4534 5034 10561 -19456 2 2 0 6 4212 10272 5098 -19457 2 2 0 6 3654 9365 10358 -19458 2 2 0 6 604 10521 606 -19459 2 2 0 6 4869 5474 10568 -19460 2 2 0 6 841 10451 3569 -19461 2 2 0 6 4765 10218 9992 -19462 2 2 0 6 5803 10255 9867 -19463 2 2 0 6 3201 10308 4411 -19464 2 2 0 6 4842 6582 10411 -19465 2 2 0 6 6595 10405 10509 -19466 2 2 0 6 6382 7668 10372 -19467 2 2 0 6 7889 7890 10689 -19468 2 2 0 6 10339 10433 9043 -19469 2 2 0 6 3258 4690 10251 -19470 2 2 0 6 3991 10313 10299 -19471 2 2 0 6 6749 6750 10474 -19472 2 2 0 6 8348 10721 8418 -19473 2 2 0 6 693 2952 10574 -19474 2 2 0 6 4493 10475 10324 -19475 2 2 0 6 5864 8920 10878 -19476 2 2 0 6 6061 10179 9977 -19477 2 2 0 6 6848 7446 10070 -19478 2 2 0 6 2396 10291 2560 -19479 2 2 0 6 6612 10648 10703 -19480 2 2 0 6 3296 10334 4006 -19481 2 2 0 6 8032 10154 10106 -19482 2 2 0 6 5033 5926 10529 -19483 2 2 0 6 4980 4981 10536 -19484 2 2 0 6 2638 2882 10471 -19485 2 2 0 6 4155 10565 4157 -19486 2 2 0 6 7793 10397 10329 -19487 2 2 0 6 3779 9867 10255 -19488 2 2 0 6 9450 10339 10068 -19489 2 2 0 6 2141 4984 9965 -19490 2 2 0 6 1001 1002 10325 -19491 2 2 0 6 2331 2408 10090 -19492 2 2 0 6 7596 10364 10025 -19493 2 2 0 6 7791 9681 10123 -19494 2 2 0 6 7892 7894 10645 -19495 2 2 0 6 5522 10607 5524 -19496 2 2 0 6 4505 10314 4637 -19497 2 2 0 6 5937 10782 9320 -19498 2 2 0 6 3051 10607 9303 -19499 2 2 0 6 621 8880 10381 -19500 2 2 0 6 7799 10234 10273 -19501 2 2 0 6 1071 10301 1073 -19502 2 2 0 6 5611 8584 10983 -19503 2 2 0 6 6727 10116 9835 -19504 2 2 0 6 4006 10690 8233 -19505 2 2 0 6 5260 10065 9700 -19506 2 2 0 6 8487 10489 10290 -19507 2 2 0 6 5076 10464 6655 -19508 2 2 0 6 2141 9965 2143 -19509 2 2 0 6 8460 9634 10560 -19510 2 2 0 6 8226 10439 8225 -19511 2 2 0 6 6568 6569 10415 -19512 2 2 0 6 3353 10598 8722 -19513 2 2 0 6 5829 10295 10124 -19514 2 2 0 6 4394 10538 8998 -19515 2 2 0 6 2633 10276 9464 -19516 2 2 0 6 6545 10285 6547 -19517 2 2 0 6 6589 10157 10458 -19518 2 2 0 6 9354 10543 10347 -19519 2 2 0 6 9371 5559 10549 -19520 2 2 0 6 7773 10288 8826 -19521 2 2 0 6 2633 10306 10276 -19522 2 2 0 6 4181 10391 10389 -19523 2 2 0 6 2383 9351 10500 -19524 2 2 0 6 5795 8530 10292 -19525 2 2 0 6 5688 10587 8935 -19526 2 2 0 6 2979 10125 3252 -19527 2 2 0 6 2055 10589 2058 -19528 2 2 0 6 3203 4411 10495 -19529 2 2 0 6 6253 7421 10855 -19530 2 2 0 6 3373 10270 10323 -19531 2 2 0 6 5888 10515 7214 -19532 2 2 0 6 4984 10347 10027 -19533 2 2 0 6 4986 10295 5829 -19534 2 2 0 6 8586 10280 10388 -19535 2 2 0 6 3891 9476 10443 -19536 2 2 0 6 2549 10564 2722 -19537 2 2 0 6 5740 10044 9404 -19538 2 2 0 6 2202 10413 10354 -19539 2 2 0 6 6605 9730 10354 -19540 2 2 0 6 5206 10642 10724 -19541 2 2 0 6 7572 10513 7574 -19542 2 2 0 6 8934 10018 10422 -19543 2 2 0 6 1351 10156 1353 -19544 2 2 0 6 9834 10590 10631 -19545 2 2 0 6 6476 8961 10346 -19546 2 2 0 6 1570 10593 1572 -19547 2 2 0 6 1470 10423 10188 -19548 2 2 0 6 144 560 9556 -19549 2 2 0 6 4457 10293 4521 -19550 2 2 0 6 6195 10311 8944 -19551 2 2 0 6 2672 10207 10147 -19552 2 2 0 6 6532 10271 6559 -19553 2 2 0 6 622 10298 625 -19554 2 2 0 6 891 10315 892 -19555 2 2 0 6 6607 10526 10441 -19556 2 2 0 6 7144 6672 11074 -19557 2 2 0 6 46 559 9538 -19558 2 2 0 6 2522 3726 10263 -19559 2 2 0 6 1459 10528 1462 -19560 2 2 0 6 7105 10527 11158 -19561 2 2 0 6 7486 8677 10267 -19562 2 2 0 6 4057 11091 11099 -19563 2 2 0 6 6194 10362 7081 -19564 2 2 0 6 4398 10428 9304 -19565 2 2 0 6 3087 10232 10165 -19566 2 2 0 6 2721 9088 10533 -19567 2 2 0 6 953 10114 10113 -19568 2 2 0 6 5887 5889 10603 -19569 2 2 0 6 5774 5776 10035 -19570 2 2 0 6 3905 8873 10300 -19571 2 2 0 6 4984 9797 10347 -19572 2 2 0 6 3480 8919 10319 -19573 2 2 0 6 2515 10120 10491 -19574 2 2 0 6 1002 1004 10330 -19575 2 2 0 6 1779 3180 10372 -19576 2 2 0 6 6550 10338 10318 -19577 2 2 0 6 6848 10070 7708 -19578 2 2 0 6 4998 10310 9429 -19579 2 2 0 6 5821 6382 10371 -19580 2 2 0 6 7755 9834 10631 -19581 2 2 0 6 6268 10367 8029 -19582 2 2 0 6 8480 11230 11241 -19583 2 2 0 6 8384 8608 10806 -19584 2 2 0 6 2417 10665 10664 -19585 2 2 0 6 2633 9621 10306 -19586 2 2 0 6 3224 8471 10328 -19587 2 2 0 6 5897 5899 10633 -19588 2 2 0 6 3715 6634 10435 -19589 2 2 0 6 4181 10389 8699 -19590 2 2 0 6 2865 10547 10278 -19591 2 2 0 6 6603 10534 10626 -19592 2 2 0 6 6521 10321 6522 -19593 2 2 0 6 7461 10491 10120 -19594 2 2 0 6 5754 10309 6480 -19595 2 2 0 6 3614 9362 10305 -19596 2 2 0 6 4033 8870 10415 -19597 2 2 0 6 5863 10306 10467 -19598 2 2 0 6 5330 7344 10353 -19599 2 2 0 6 6604 10410 10460 -19600 2 2 0 6 7735 10735 10712 -19601 2 2 0 6 5352 10601 6123 -19602 2 2 0 6 5740 5825 10044 -19603 2 2 0 6 8999 10538 10577 -19604 2 2 0 6 2560 10291 2969 -19605 2 2 0 6 5323 9908 10426 -19606 2 2 0 6 4121 10578 10853 -19607 2 2 0 6 9663 6367 10170 -19608 2 2 0 6 9395 9564 10503 -19609 2 2 0 6 1985 2242 10572 -19610 2 2 0 6 4213 9611 10272 -19611 2 2 0 6 5935 7206 10508 -19612 2 2 0 6 6688 10594 10346 -19613 2 2 0 6 4390 9291 10800 -19614 2 2 0 6 5281 10265 6548 -19615 2 2 0 6 2432 8612 10075 -19616 2 2 0 6 5906 5922 10685 -19617 2 2 0 6 7890 7892 10662 -19618 2 2 0 6 5777 9491 10366 -19619 2 2 0 6 4390 10817 9229 -19620 2 2 0 6 2102 10585 9026 -19621 2 2 0 6 5320 10345 8476 -19622 2 2 0 6 8681 10663 8682 -19623 2 2 0 6 9697 10603 10567 -19624 2 2 0 6 4212 4213 10272 -19625 2 2 0 6 941 10337 942 -19626 2 2 0 6 7740 9423 10392 -19627 2 2 0 6 3508 10380 8839 -19628 2 2 0 6 145 146 10091 -19629 2 2 0 6 5877 8303 10382 -19630 2 2 0 6 8141 10123 10321 -19631 2 2 0 6 7811 10901 10815 -19632 2 2 0 6 4994 10338 5800 -19633 2 2 0 6 3823 5865 10623 -19634 2 2 0 6 1471 1470 10340 -19635 2 2 0 6 8036 8039 10316 -19636 2 2 0 6 5021 4066 10648 -19637 2 2 0 6 6577 9622 10600 -19638 2 2 0 6 5857 10359 5858 -19639 2 2 0 6 5776 6692 10035 -19640 2 2 0 6 3002 8373 10392 -19641 2 2 0 6 4546 10251 5912 -19642 2 2 0 6 6565 9943 10449 -19643 2 2 0 6 5858 10384 10368 -19644 2 2 0 6 768 1308 10342 -19645 2 2 0 6 6574 6573 10326 -19646 2 2 0 6 6058 11103 11135 -19647 2 2 0 6 7714 8115 10404 -19648 2 2 0 6 5618 10303 9302 -19649 2 2 0 6 3614 10305 10350 -19650 2 2 0 6 6233 10576 9284 -19651 2 2 0 6 2595 9334 10556 -19652 2 2 0 6 6586 10595 10581 -19653 2 2 0 6 5009 10809 10706 -19654 2 2 0 6 8104 10877 8105 -19655 2 2 0 6 895 10296 896 -19656 2 2 0 6 3704 3975 10715 -19657 2 2 0 6 1283 10567 1303 -19658 2 2 0 6 5751 10312 7027 -19659 2 2 0 6 3654 10358 9955 -19660 2 2 0 6 1336 10348 10221 -19661 2 2 0 6 5844 9992 10218 -19662 2 2 0 6 5854 6599 10394 -19663 2 2 0 6 6467 7611 10387 -19664 2 2 0 6 7517 10795 10885 -19665 2 2 0 6 7243 7443 10327 -19666 2 2 0 6 1466 10431 10239 -19667 2 2 0 6 2544 2721 10533 -19668 2 2 0 6 7744 10285 10187 -19669 2 2 0 6 4983 10455 8204 -19670 2 2 0 6 6654 10807 10733 -19671 2 2 0 6 1195 2389 10546 -19672 2 2 0 6 48 49 462 -19673 2 2 0 6 5000 10331 10462 -19674 2 2 0 6 7832 10332 9042 -19675 2 2 0 6 2753 10344 2755 -19676 2 2 0 6 1261 1759 10361 -19677 2 2 0 6 2540 10364 2542 -19678 2 2 0 6 1303 8411 10620 -19679 2 2 0 6 3100 3689 10596 -19680 2 2 0 6 8637 10699 8638 -19681 2 2 0 6 5701 10294 9400 -19682 2 2 0 6 4019 10534 10121 -19683 2 2 0 6 5861 10410 10310 -19684 2 2 0 6 146 147 464 -19685 2 2 0 6 3511 8865 10397 -19686 2 2 0 6 5751 10236 10312 -19687 2 2 0 6 5919 10700 10605 -19688 2 2 0 6 4201 10621 6669 -19689 2 2 0 6 2721 10364 10492 -19690 2 2 0 6 8411 10633 10620 -19691 2 2 0 6 4744 5278 10591 -19692 2 2 0 6 9533 10466 10293 -19693 2 2 0 6 4859 10346 6246 -19694 2 2 0 6 4991 9561 10496 -19695 2 2 0 6 9103 10413 10517 -19696 2 2 0 6 6559 10337 10405 -19697 2 2 0 6 759 10373 761 -19698 2 2 0 6 7453 6428 10360 -19699 2 2 0 6 5725 9717 10302 -19700 2 2 0 6 4882 10637 4883 -19701 2 2 0 6 1152 1175 10375 -19702 2 2 0 6 8899 9400 10294 -19703 2 2 0 6 2954 10396 10399 -19704 2 2 0 6 6621 10382 10548 -19705 2 2 0 6 7772 10602 10674 -19706 2 2 0 6 4288 6204 10611 -19707 2 2 0 6 5809 10324 5903 -19708 2 2 0 6 8349 10876 10869 -19709 2 2 0 6 4233 10357 8063 -19710 2 2 0 6 613 10612 614 -19711 2 2 0 6 8111 10021 10335 -19712 2 2 0 6 1269 1303 10620 -19713 2 2 0 6 8303 10292 10528 -19714 2 2 0 6 6610 10542 10512 -19715 2 2 0 6 5825 10440 10044 -19716 2 2 0 6 718 10477 10447 -19717 2 2 0 6 6194 8282 10362 -19718 2 2 0 6 3881 10251 4546 -19719 2 2 0 6 1066 10686 8235 -19720 2 2 0 6 2117 8800 10740 -19721 2 2 0 6 2316 7734 10702 -19722 2 2 0 6 5914 8015 10667 -19723 2 2 0 6 2189 10349 2369 -19724 2 2 0 6 6630 10614 8556 -19725 2 2 0 6 8912 10688 8913 -19726 2 2 0 6 6366 10659 10525 -19727 2 2 0 6 3640 10487 5006 -19728 2 2 0 6 4983 9026 10455 -19729 2 2 0 6 5856 8546 10452 -19730 2 2 0 6 891 10385 10315 -19731 2 2 0 6 7514 10827 10723 -19732 2 2 0 6 7775 9949 10750 -19733 2 2 0 6 5916 10600 10635 -19734 2 2 0 6 4994 9821 10318 -19735 2 2 0 6 5504 10797 7134 -19736 2 2 0 6 5858 10368 8803 -19737 2 2 0 6 5604 6641 10581 -19738 2 2 0 6 5883 10597 7809 -19739 2 2 0 6 6519 10238 10465 -19740 2 2 0 6 1657 1659 10383 -19741 2 2 0 6 4551 10605 5449 -19742 2 2 0 6 6627 10487 10650 -19743 2 2 0 6 8460 10560 10665 -19744 2 2 0 6 2349 10154 10155 -19745 2 2 0 6 6470 10420 7244 -19746 2 2 0 6 2074 10573 2107 -19747 2 2 0 6 47 48 10088 -19748 2 2 0 6 1353 10156 10041 -19749 2 2 0 6 4138 8894 10480 -19750 2 2 0 6 5842 10339 9450 -19751 2 2 0 6 5821 10371 5823 -19752 2 2 0 6 6587 10558 10561 -19753 2 2 0 6 5925 10710 7821 -19754 2 2 0 6 882 967 10670 -19755 2 2 0 6 6676 11136 11162 -19756 2 2 0 6 6522 10329 8865 -19757 2 2 0 6 6658 10647 10623 -19758 2 2 0 6 3614 10350 9417 -19759 2 2 0 6 5813 10790 6652 -19760 2 2 0 6 6587 9697 10567 -19761 2 2 0 6 891 9471 10385 -19762 2 2 0 6 7946 10496 7947 -19763 2 2 0 6 2962 9531 10595 -19764 2 2 0 6 6714 10578 10838 -19765 2 2 0 6 3679 10391 4181 -19766 2 2 0 6 6195 7092 10311 -19767 2 2 0 6 4047 10268 10394 -19768 2 2 0 6 4324 4876 10584 -19769 2 2 0 6 5948 6620 10370 -19770 2 2 0 6 5827 10008 10268 -19771 2 2 0 6 2502 10632 9740 -19772 2 2 0 6 6238 6239 10610 -19773 2 2 0 6 5370 7208 10377 -19774 2 2 0 6 8788 10403 8789 -19775 2 2 0 6 4849 4850 10571 -19776 2 2 0 6 5348 10378 5562 -19777 2 2 0 6 5713 10358 9365 -19778 2 2 0 6 4900 10701 10004 -19779 2 2 0 6 4746 10591 7131 -19780 2 2 0 6 6180 10430 7190 -19781 2 2 0 6 6651 10688 10745 -19782 2 2 0 6 6246 10379 6455 -19783 2 2 0 6 9926 9935 10354 -19784 2 2 0 6 6521 8196 10341 -19785 2 2 0 6 5028 5029 10629 -19786 2 2 0 6 5416 10390 5864 -19787 2 2 0 6 5907 10374 8451 -19788 2 2 0 6 3568 10260 9673 -19789 2 2 0 6 6604 10460 10518 -19790 2 2 0 6 1083 10386 3382 -19791 2 2 0 6 7946 10650 10496 -19792 2 2 0 6 6008 6009 10933 -19793 2 2 0 6 3450 8586 10388 -19794 2 2 0 6 4341 10420 10243 -19795 2 2 0 6 1293 6587 10567 -19796 2 2 0 6 4390 10800 10817 -19797 2 2 0 6 8361 11035 8363 -19798 2 2 0 6 8002 10646 10640 -19799 2 2 0 6 3659 9814 10366 -19800 2 2 0 6 2056 10676 8743 -19801 2 2 0 6 5777 10366 9814 -19802 2 2 0 6 5917 10634 10617 -19803 2 2 0 6 3421 10704 3432 -19804 2 2 0 6 6553 10421 9888 -19805 2 2 0 6 1998 10419 9251 -19806 2 2 0 6 5969 10668 6427 -19807 2 2 0 6 6492 8052 10705 -19808 2 2 0 6 115 116 9523 -19809 2 2 0 6 5362 10279 7512 -19810 2 2 0 6 5306 10975 10899 -19811 2 2 0 6 6651 8966 10688 -19812 2 2 0 6 1715 8804 10669 -19813 2 2 0 6 1143 9325 10640 -19814 2 2 0 6 3569 10436 8462 -19815 2 2 0 6 6448 10444 10361 -19816 2 2 0 6 10027 10347 10543 -19817 2 2 0 6 6602 10802 8970 -19818 2 2 0 6 5278 10865 10591 -19819 2 2 0 6 1247 1248 10657 -19820 2 2 0 6 6589 10458 10454 -19821 2 2 0 6 4949 7658 10732 -19822 2 2 0 6 8032 10155 10154 -19823 2 2 0 6 7611 9990 10453 -19824 2 2 0 6 6327 10691 10206 -19825 2 2 0 6 6432 10516 9735 -19826 2 2 0 6 5004 5005 10336 -19827 2 2 0 6 5037 9968 10286 -19828 2 2 0 6 3612 10737 10734 -19829 2 2 0 6 8848 10399 8972 -19830 2 2 0 6 2019 2016 10365 -19831 2 2 0 6 6642 5984 10738 -19832 2 2 0 6 1211 4030 10437 -19833 2 2 0 6 1451 10408 1454 -19834 2 2 0 6 3162 10414 8870 -19835 2 2 0 6 5002 6565 10449 -19836 2 2 0 6 6591 10440 7719 -19837 2 2 0 6 5360 10279 5362 -19838 2 2 0 6 2618 2937 10683 -19839 2 2 0 6 5980 10672 10759 -19840 2 2 0 6 7714 10363 10137 -19841 2 2 0 6 1149 10640 2316 -19842 2 2 0 6 7637 10559 9595 -19843 2 2 0 6 742 10720 770 -19844 2 2 0 6 8818 10909 8819 -19845 2 2 0 6 5632 7995 10307 -19846 2 2 0 6 4077 9197 10747 -19847 2 2 0 6 2389 10367 10546 -19848 2 2 0 6 6650 10763 7654 -19849 2 2 0 6 6633 8498 10789 -19850 2 2 0 6 795 807 11140 -19851 2 2 0 6 6427 10514 10360 -19852 2 2 0 6 9429 10310 10410 -19853 2 2 0 6 5780 9251 10419 -19854 2 2 0 6 2882 10541 10471 -19855 2 2 0 6 6467 10387 10028 -19856 2 2 0 6 6586 10490 10595 -19857 2 2 0 6 3217 10578 4121 -19858 2 2 0 6 4844 5330 10353 -19859 2 2 0 6 5749 10157 10407 -19860 2 2 0 6 1700 10655 1699 -19861 2 2 0 6 813 10835 7531 -19862 2 2 0 6 4178 10044 10376 -19863 2 2 0 6 6642 10744 10670 -19864 2 2 0 6 5862 10402 6570 -19865 2 2 0 6 6566 10398 10412 -19866 2 2 0 6 8386 10558 10456 -19867 2 2 0 6 8509 10004 10701 -19868 2 2 0 6 1539 10396 1541 -19869 2 2 0 6 7540 5999 10873 -19870 2 2 0 6 3483 10752 8790 -19871 2 2 0 6 5414 10814 8207 -19872 2 2 0 6 4423 5263 10691 -19873 2 2 0 6 7687 9413 10307 -19874 2 2 0 6 4842 10411 5350 -19875 2 2 0 6 5360 7665 10279 -19876 2 2 0 6 3506 10478 9003 -19877 2 2 0 6 1458 10548 10382 -19878 2 2 0 6 6560 10405 6595 -19879 2 2 0 6 7857 10432 7858 -19880 2 2 0 6 6667 10735 8321 -19881 2 2 0 6 3659 10366 10456 -19882 2 2 0 6 3568 9695 10260 -19883 2 2 0 6 4477 10409 9570 -19884 2 2 0 6 8382 10459 10167 -19885 2 2 0 6 6640 10676 10677 -19886 2 2 0 6 4030 10320 10402 -19887 2 2 0 6 6252 10599 10651 -19888 2 2 0 6 6010 10798 10769 -19889 2 2 0 6 3475 10645 10264 -19890 2 2 0 6 5953 6564 10906 -19891 2 2 0 6 5000 10462 9899 -19892 2 2 0 6 6198 10644 9674 -19893 2 2 0 6 8462 10436 10503 -19894 2 2 0 6 1251 3636 10657 -19895 2 2 0 6 3479 10658 8788 -19896 2 2 0 6 1254 10620 3636 -19897 2 2 0 6 5412 8443 10852 -19898 2 2 0 6 3612 10694 9317 -19899 2 2 0 6 6388 10723 7800 -19900 2 2 0 6 4030 10402 10437 -19901 2 2 0 6 2057 2064 10677 -19902 2 2 0 6 5915 10577 10538 -19903 2 2 0 6 5929 6628 10649 -19904 2 2 0 6 2954 10395 9560 -19905 2 2 0 6 5714 7957 10225 -19906 2 2 0 6 5842 9517 10433 -19907 2 2 0 6 2443 9229 10400 -19908 2 2 0 6 10044 10440 10376 -19909 2 2 0 6 8002 10640 9325 -19910 2 2 0 6 17 18 9428 -19911 2 2 0 6 5914 5915 10566 -19912 2 2 0 6 3764 9653 10520 -19913 2 2 0 6 6563 7514 10723 -19914 2 2 0 6 5876 10395 9458 -19915 2 2 0 6 5005 10384 10359 -19916 2 2 0 6 1876 10482 10039 -19917 2 2 0 6 116 434 9523 -19918 2 2 0 6 7454 10674 10602 -19919 2 2 0 6 4233 10240 10357 -19920 2 2 0 6 6246 10594 10379 -19921 2 2 0 6 5874 10558 6587 -19922 2 2 0 6 5936 10717 10719 -19923 2 2 0 6 4797 6242 10485 -19924 2 2 0 6 5884 10427 5969 -19925 2 2 0 6 5021 10648 10163 -19926 2 2 0 6 4121 10254 9789 -19927 2 2 0 6 718 10447 722 -19928 2 2 0 6 5940 5995 10718 -19929 2 2 0 6 5136 9429 10410 -19930 2 2 0 6 5903 10324 10475 -19931 2 2 0 6 6395 10500 9351 -19932 2 2 0 6 2248 10557 10466 -19933 2 2 0 6 2940 10448 7757 -19934 2 2 0 6 5908 9774 10406 -19935 2 2 0 6 4945 10958 7965 -19936 2 2 0 6 6188 10524 7089 -19937 2 2 0 6 5871 6003 10562 -19938 2 2 0 6 6605 10413 6606 -19939 2 2 0 6 5714 10225 6421 -19940 2 2 0 6 6017 10628 10786 -19941 2 2 0 6 8643 10526 10539 -19942 2 2 0 6 4553 10666 4554 -19943 2 2 0 6 5441 10693 9630 -19944 2 2 0 6 18 433 9428 -19945 2 2 0 6 2178 10453 9990 -19946 2 2 0 6 10028 10387 10147 -19947 2 2 0 6 3203 10495 4538 -19948 2 2 0 6 5387 7731 10438 -19949 2 2 0 6 9208 11222 11072 -19950 2 2 0 6 50 51 10393 -19951 2 2 0 6 2105 10463 7808 -19952 2 2 0 6 9730 9926 10354 -19953 2 2 0 6 6632 10596 10427 -19954 2 2 0 6 1463 1462 10431 -19955 2 2 0 6 6243 10461 5373 -19956 2 2 0 6 1533 10434 1537 -19957 2 2 0 6 7448 9328 10425 -19958 2 2 0 6 3565 10360 10514 -19959 2 2 0 6 2588 10731 8435 -19960 2 2 0 6 1462 10528 10292 -19961 2 2 0 6 1466 10423 1467 -19962 2 2 0 6 7890 10662 10689 -19963 2 2 0 6 5800 9675 10507 -19964 2 2 0 6 5016 10615 5918 -19965 2 2 0 6 3145 11077 11139 -19966 2 2 0 6 9974 10687 10722 -19967 2 2 0 6 5061 10843 10867 -19968 2 2 0 6 8105 10877 10931 -19969 2 2 0 6 6279 11246 11187 -19970 2 2 0 6 5518 10796 8773 -19971 2 2 0 6 4987 10429 7274 -19972 2 2 0 6 6068 11169 7182 -19973 2 2 0 6 3055 10684 3057 -19974 2 2 0 6 5000 9474 10331 -19975 2 2 0 6 8942 11013 11014 -19976 2 2 0 6 6530 7616 10417 -19977 2 2 0 6 6535 10532 10432 -19978 2 2 0 6 3436 10915 10087 -19979 2 2 0 6 2458 2638 10471 -19980 2 2 0 6 6009 10953 10933 -19981 2 2 0 6 6668 11088 11075 -19982 2 2 0 6 6549 10574 10700 -19983 2 2 0 6 6638 10629 10692 -19984 2 2 0 6 4046 10678 9536 -19985 2 2 0 6 6565 6566 10412 -19986 2 2 0 6 714 10477 718 -19987 2 2 0 6 5165 6778 10518 -19988 2 2 0 6 6616 9888 10421 -19989 2 2 0 6 3975 10309 10715 -19990 2 2 0 6 7272 10426 9908 -19991 2 2 0 6 6646 11137 8600 -19992 2 2 0 6 4445 6589 10454 -19993 2 2 0 6 10008 10394 10268 -19994 2 2 0 6 6568 10414 10398 -19995 2 2 0 6 7807 10664 10575 -19996 2 2 0 6 9475 10331 9474 -19997 2 2 0 6 6570 10402 10320 -19998 2 2 0 6 5632 10307 9413 -19999 2 2 0 6 5871 10562 6617 -20000 2 2 0 6 6610 10512 10467 -20001 2 2 0 6 1527 10472 3479 -20002 2 2 0 6 3659 10456 9424 -20003 2 2 0 6 8381 10622 10519 -20004 2 2 0 6 4751 5248 10458 -20005 2 2 0 6 5393 6548 10743 -20006 2 2 0 6 7099 9987 10352 -20007 2 2 0 6 5890 10450 5898 -20008 2 2 0 6 6566 6568 10398 -20009 2 2 0 6 8933 9417 10441 -20010 2 2 0 6 5089 10713 6106 -20011 2 2 0 6 6568 10415 10414 -20012 2 2 0 6 3695 10511 10613 -20013 2 2 0 6 2080 2117 10754 -20014 2 2 0 6 831 10439 877 -20015 2 2 0 6 1161 2316 10702 -20016 2 2 0 6 5850 10336 10389 -20017 2 2 0 6 766 4400 10739 -20018 2 2 0 6 5600 8693 10445 -20019 2 2 0 6 5968 10822 7674 -20020 2 2 0 6 4260 10460 5861 -20021 2 2 0 6 3420 9281 10760 -20022 2 2 0 6 597 599 10781 -20023 2 2 0 6 9268 10838 10830 -20024 2 2 0 6 8788 10658 10637 -20025 2 2 0 6 5875 10506 10505 -20026 2 2 0 6 8434 11109 11111 -20027 2 2 0 6 4538 10608 4556 -20028 2 2 0 6 3172 4047 10511 -20029 2 2 0 6 3484 11013 8942 -20030 2 2 0 6 1716 9339 10874 -20031 2 2 0 6 5872 10476 8021 -20032 2 2 0 6 7092 7093 10544 -20033 2 2 0 6 8533 10260 10630 -20034 2 2 0 6 3695 10613 10606 -20035 2 2 0 6 6745 6748 10424 -20036 2 2 0 6 4477 10490 10409 -20037 2 2 0 6 5709 10443 9476 -20038 2 2 0 6 6312 10446 6313 -20039 2 2 0 6 764 10739 771 -20040 2 2 0 6 7572 7576 10513 -20041 2 2 0 6 4892 8752 10486 -20042 2 2 0 6 4584 6021 10713 -20043 2 2 0 6 7809 10539 10526 -20044 2 2 0 6 9872 11164 11157 -20045 2 2 0 6 771 10739 8896 -20046 2 2 0 6 4418 10488 10505 -20047 2 2 0 6 9560 10395 10488 -20048 2 2 0 6 2447 3189 10473 -20049 2 2 0 6 6594 10929 7255 -20050 2 2 0 6 1523 10373 11252 -20051 2 2 0 6 830 876 10744 -20052 2 2 0 6 6554 10481 8060 -20053 2 2 0 6 1794 10624 10482 -20054 2 2 0 6 8699 10389 10336 -20055 2 2 0 6 5216 10936 11062 -20056 2 2 0 6 5876 10488 10395 -20057 2 2 0 6 4438 10526 8643 -20058 2 2 0 6 6633 10751 6632 -20059 2 2 0 6 5011 10467 9178 -20060 2 2 0 6 4034 10836 10767 -20061 2 2 0 6 6488 6492 10705 -20062 2 2 0 6 5873 10476 5872 -20063 2 2 0 6 6410 10489 10498 -20064 2 2 0 6 3271 10617 8350 -20065 2 2 0 6 9417 10350 10441 -20066 2 2 0 6 1663 9443 10404 -20067 2 2 0 6 4274 10493 4628 -20068 2 2 0 6 4839 10630 10599 -20069 2 2 0 6 841 843 10451 -20070 2 2 0 6 5711 11131 7944 -20071 2 2 0 6 5800 10507 9687 -20072 2 2 0 6 5875 5921 10506 -20073 2 2 0 6 2202 10354 9935 -20074 2 2 0 6 9557 10449 10535 -20075 2 2 0 6 5206 5207 10642 -20076 2 2 0 6 6320 10520 10811 -20077 2 2 0 6 771 8896 10815 -20078 2 2 0 6 7081 10469 9914 -20079 2 2 0 6 5854 10394 10008 -20080 2 2 0 6 5949 10755 5950 -20081 2 2 0 6 7765 10970 7766 -20082 2 2 0 6 8382 8381 10519 -20083 2 2 0 6 5032 9974 10722 -20084 2 2 0 6 8399 10495 10484 -20085 2 2 0 6 7674 10772 7675 -20086 2 2 0 6 6521 10341 10321 -20087 2 2 0 6 1792 10482 1876 -20088 2 2 0 6 5825 6448 10494 -20089 2 2 0 6 799 805 10530 -20090 2 2 0 6 6519 10465 8224 -20091 2 2 0 6 636 10792 639 -20092 2 2 0 6 6647 9102 10770 -20093 2 2 0 6 744 3523 10720 -20094 2 2 0 6 703 10502 709 -20095 2 2 0 6 6603 10626 10636 -20096 2 2 0 6 6455 10468 10064 -20097 2 2 0 6 10394 6599 10511 -20098 2 2 0 6 3592 11146 11128 -20099 2 2 0 6 6660 10651 10599 -20100 2 2 0 6 5894 10650 7946 -20101 2 2 0 6 6215 10226 10418 -20102 2 2 0 6 2672 10147 10387 -20103 2 2 0 6 6614 10525 10570 -20104 2 2 0 6 8868 6338 10925 -20105 2 2 0 6 5608 10694 10780 -20106 2 2 0 6 5814 10489 6410 -20107 2 2 0 6 6652 10790 10819 -20108 2 2 0 6 4608 6110 10641 -20109 2 2 0 6 1196 10712 1230 -20110 2 2 0 6 2064 10741 10710 -20111 2 2 0 6 9460 9461 10727 -20112 2 2 0 6 6621 10711 6622 -20113 2 2 0 6 8608 8607 10806 -20114 2 2 0 6 5002 10449 9557 -20115 2 2 0 6 5901 7210 10497 -20116 2 2 0 6 6375 8138 10618 -20117 2 2 0 6 4913 11122 10144 -20118 2 2 0 6 5891 10484 5954 -20119 2 2 0 6 10564 6575 10656 -20120 2 2 0 6 4948 5914 10667 -20121 2 2 0 6 10158 10422 10616 -20122 2 2 0 6 7595 10492 7596 -20123 2 2 0 6 4539 10470 4995 -20124 2 2 0 6 5027 5916 10634 -20125 2 2 0 6 6630 10687 10614 -20126 2 2 0 6 5903 10475 7375 -20127 2 2 0 6 6432 7352 10516 -20128 2 2 0 6 3506 9625 10478 -20129 2 2 0 6 2515 10491 2682 -20130 2 2 0 6 4660 10542 6732 -20131 2 2 0 6 6259 7393 10696 -20132 2 2 0 6 4839 8533 10630 -20133 2 2 0 6 9689 10687 9974 -20134 2 2 0 6 9368 10580 10632 -20135 2 2 0 6 2099 2103 10504 -20136 2 2 0 6 4517 10552 10545 -20137 2 2 0 6 2178 2191 10453 -20138 2 2 0 6 5955 10730 5956 -20139 2 2 0 6 808 1519 10527 -20140 2 2 0 6 3715 10435 9451 -20141 2 2 0 6 9209 8435 10777 -20142 2 2 0 6 5876 5875 10505 -20143 2 2 0 6 2095 10463 2105 -20144 2 2 0 6 8491 10466 9533 -20145 2 2 0 6 2417 8460 10665 -20146 2 2 0 6 4994 10318 10338 -20147 2 2 0 6 4047 10394 10511 -20148 2 2 0 6 7091 10783 11243 -20149 2 2 0 6 7947 10496 9850 -20150 2 2 0 6 1332 10531 2968 -20151 2 2 0 6 4477 9747 10490 -20152 2 2 0 6 707 10787 704 -20153 2 2 0 6 7682 11106 11125 -20154 2 2 0 6 5834 10529 10515 -20155 2 2 0 6 3564 9043 10433 -20156 2 2 0 6 5076 7233 10464 -20157 2 2 0 6 2200 2363 10517 -20158 2 2 0 6 7764 10848 11102 -20159 2 2 0 6 5918 10575 10664 -20160 2 2 0 6 7522 10952 7646 -20161 2 2 0 6 6507 10654 8138 -20162 2 2 0 6 8908 9468 10741 -20163 2 2 0 6 9535 10673 8263 -20164 2 2 0 6 7255 10950 10829 -20165 2 2 0 6 5753 9789 10254 -20166 2 2 0 6 941 10405 10337 -20167 2 2 0 6 9656 10726 10624 -20168 2 2 0 6 8865 10329 10397 -20169 2 2 0 6 5968 10830 10822 -20170 2 2 0 6 6011 10934 7975 -20171 2 2 0 6 4498 5863 10512 -20172 2 2 0 6 3640 4991 10487 -20173 2 2 0 6 5033 10529 5834 -20174 2 2 0 6 792 10785 798 -20175 2 2 0 6 5834 10515 5888 -20176 2 2 0 6 7778 10478 10955 -20177 2 2 0 6 6090 6092 10801 -20178 2 2 0 6 606 10521 609 -20179 2 2 0 6 746 10761 3523 -20180 2 2 0 6 8668 9560 10488 -20181 2 2 0 6 8267 10328 10452 -20182 2 2 0 6 8314 10953 10973 -20183 2 2 0 6 730 10784 1010 -20184 2 2 0 6 1813 8618 10523 -20185 2 2 0 6 8497 10522 8498 -20186 2 2 0 6 8415 11164 9872 -20187 2 2 0 6 802 10803 1178 -20188 2 2 0 6 4818 5009 10706 -20189 2 2 0 6 6615 10860 10875 -20190 2 2 0 6 823 9123 10675 -20191 2 2 0 6 8998 10538 8999 -20192 2 2 0 6 7719 10440 10494 -20193 2 2 0 6 10739 10755 8896 -20194 2 2 0 6 4006 10370 10690 -20195 2 2 0 6 1822 10540 10522 -20196 2 2 0 6 6007 10892 8339 -20197 2 2 0 6 4495 10673 9535 -20198 2 2 0 6 695 10554 699 -20199 2 2 0 6 5374 10537 8764 -20200 2 2 0 6 9371 10549 3561 -20201 2 2 0 6 937 10509 938 -20202 2 2 0 6 750 813 10768 -20203 2 2 0 6 5301 9193 10695 -20204 2 2 0 6 4992 10561 10558 -20205 2 2 0 6 3690 9222 10519 -20206 2 2 0 6 6004 10951 10870 -20207 2 2 0 6 5947 10708 6620 -20208 2 2 0 6 5861 10460 10410 -20209 2 2 0 6 5589 10802 9181 -20210 2 2 0 6 8986 10778 9291 -20211 2 2 0 6 1458 10528 1459 -20212 2 2 0 6 6604 10518 6766 -20213 2 2 0 6 3564 10580 9368 -20214 2 2 0 6 5936 9094 10717 -20215 2 2 0 6 6627 9595 10559 -20216 2 2 0 6 3176 11157 11151 -20217 2 2 0 6 5856 10452 10328 -20218 2 2 0 6 7654 10787 10808 -20219 2 2 0 6 2544 10533 2546 -20220 2 2 0 6 7235 10472 10122 -20221 2 2 0 6 786 11008 7345 -20222 2 2 0 6 150 151 10356 -20223 2 2 0 6 2555 10829 8293 -20224 2 2 0 6 1715 10570 3720 -20225 2 2 0 6 6470 10243 10420 -20226 2 2 0 6 1540 1542 10737 -20227 2 2 0 6 8965 10688 8966 -20228 2 2 0 6 5870 10758 10586 -20229 2 2 0 6 6628 10661 10655 -20230 2 2 0 6 9285 10514 9616 -20231 2 2 0 6 6607 7809 10526 -20232 2 2 0 6 2058 10499 2060 -20233 2 2 0 6 6764 10457 9737 -20234 2 2 0 6 6647 10770 10850 -20235 2 2 0 6 2546 10533 10564 -20236 2 2 0 6 5947 10719 10708 -20237 2 2 0 6 1704 1707 10653 -20238 2 2 0 6 7540 10898 6564 -20239 2 2 0 6 7627 10757 10657 -20240 2 2 0 6 145 10091 560 -20241 2 2 0 6 7116 11011 11015 -20242 2 2 0 6 8570 9153 10553 -20243 2 2 0 6 4060 10543 9354 -20244 2 2 0 6 7255 10929 10950 -20245 2 2 0 6 695 10574 10554 -20246 2 2 0 6 8966 10605 10700 -20247 2 2 0 6 5058 5932 10733 -20248 2 2 0 6 1703 10653 10649 -20249 2 2 0 6 8462 10503 9564 -20250 2 2 0 6 7678 10585 10577 -20251 2 2 0 6 9623 11207 11197 -20252 2 2 0 6 6184 10904 7090 -20253 2 2 0 6 6641 10724 10642 -20254 2 2 0 6 5980 5982 10672 -20255 2 2 0 6 5825 10494 10440 -20256 2 2 0 6 4980 10536 5931 -20257 2 2 0 6 2102 8999 10577 -20258 2 2 0 6 879 3370 10824 -20259 2 2 0 6 1716 10569 9454 -20260 2 2 0 6 151 397 10356 -20261 2 2 0 6 2054 9557 10535 -20262 2 2 0 6 7914 11248 11241 -20263 2 2 0 6 3644 10167 10459 -20264 2 2 0 6 4105 8298 10963 -20265 2 2 0 6 2620 10532 9948 -20266 2 2 0 6 3507 8934 10422 -20267 2 2 0 6 2106 2115 10501 -20268 2 2 0 6 9168 10039 10482 -20269 2 2 0 6 5595 10534 8909 -20270 2 2 0 6 2117 10740 10754 -20271 2 2 0 6 5858 10359 10384 -20272 2 2 0 6 4411 10484 10495 -20273 2 2 0 6 914 10821 917 -20274 2 2 0 6 3689 10427 10596 -20275 2 2 0 6 7596 10492 10364 -20276 2 2 0 6 5263 10206 10691 -20277 2 2 0 6 7310 8156 10793 -20278 2 2 0 6 3699 5026 10510 -20279 2 2 0 6 4949 10732 9644 -20280 2 2 0 6 6614 10570 9981 -20281 2 2 0 6 47 10088 559 -20282 2 2 0 6 4517 10545 8546 -20283 2 2 0 6 4800 10993 7489 -20284 2 2 0 6 1699 10661 7888 -20285 2 2 0 6 8104 8106 10809 -20286 2 2 0 6 7894 10264 10645 -20287 2 2 0 6 3644 10459 9221 -20288 2 2 0 6 53 399 10355 -20289 2 2 0 6 1761 8643 10539 -20290 2 2 0 6 8972 10399 10396 -20291 2 2 0 6 4882 10403 10637 -20292 2 2 0 6 1454 10548 1455 -20293 2 2 0 6 52 53 10355 -20294 2 2 0 6 5288 10550 7215 -20295 2 2 0 6 4556 10608 10421 -20296 2 2 0 6 693 10574 695 -20297 2 2 0 6 5873 10665 10560 -20298 2 2 0 6 5644 10556 9334 -20299 2 2 0 6 7156 11161 10920 -20300 2 2 0 6 7219 10811 10520 -20301 2 2 0 6 8204 10401 9963 -20302 2 2 0 6 829 990 10841 -20303 2 2 0 6 5935 10508 8317 -20304 2 2 0 6 6689 6690 10844 -20305 2 2 0 6 5046 5950 10799 -20306 2 2 0 6 3690 10519 10622 -20307 2 2 0 6 5954 10484 10619 -20308 2 2 0 6 4411 10619 10484 -20309 2 2 0 6 4347 8774 10555 -20310 2 2 0 6 9695 10630 10260 -20311 2 2 0 6 6253 10855 6254 -20312 2 2 0 6 3456 10779 11016 -20313 2 2 0 6 815 3386 10832 -20314 2 2 0 6 6320 10195 10520 -20315 2 2 0 6 7270 10592 8427 -20316 2 2 0 6 4202 10816 8003 -20317 2 2 0 6 4992 10558 8386 -20318 2 2 0 6 4534 10561 4992 -20319 2 2 0 6 6084 6086 10776 -20320 2 2 0 6 6455 10379 10468 -20321 2 2 0 6 1523 11252 11255 -20322 2 2 0 6 2077 10499 10562 -20323 2 2 0 6 2546 10564 2549 -20324 2 2 0 6 827 10832 990 -20325 2 2 0 6 6188 7202 10524 -20326 2 2 0 6 6610 6611 10542 -20327 2 2 0 6 5335 10660 5927 -20328 2 2 0 6 3764 10520 10195 -20329 2 2 0 6 6616 10421 10608 -20330 2 2 0 6 149 150 558 -20331 2 2 0 6 51 52 557 -20332 2 2 0 6 804 10818 811 -20333 2 2 0 6 10083 11249 11055 -20334 2 2 0 6 4738 10507 10750 -20335 2 2 0 6 2231 10783 2233 -20336 2 2 0 6 9561 9850 10496 -20337 2 2 0 6 6621 10548 10711 -20338 2 2 0 6 1235 10361 10444 -20339 2 2 0 6 8414 8416 11155 -20340 2 2 0 6 6672 11091 11074 -20341 2 2 0 6 5699 10842 9339 -20342 2 2 0 6 7034 10831 7036 -20343 2 2 0 6 4394 10566 10538 -20344 2 2 0 6 5936 10719 5947 -20345 2 2 0 6 918 10846 921 -20346 2 2 0 6 5911 10616 10641 -20347 2 2 0 6 7764 9823 10793 -20348 2 2 0 6 3432 10563 3433 -20349 2 2 0 6 9026 10585 10455 -20350 2 2 0 6 5968 9268 10830 -20351 2 2 0 6 4738 9687 10507 -20352 2 2 0 6 4517 9535 10552 -20353 2 2 0 6 5055 5056 10807 -20354 2 2 0 6 5951 10734 7670 -20355 2 2 0 6 7093 7777 10544 -20356 2 2 0 6 8870 10414 10415 -20357 2 2 0 6 711 1155 10808 -20358 2 2 0 6 1441 10895 1516 -20359 2 2 0 6 8344 8349 10869 -20360 2 2 0 6 2107 10586 5938 -20361 2 2 0 6 5207 6586 10642 -20362 2 2 0 6 7835 10664 10665 -20363 2 2 0 6 7888 10728 6629 -20364 2 2 0 6 5922 10428 10685 -20365 2 2 0 6 6600 10924 6601 -20366 2 2 0 6 10452 8546 10545 -20367 2 2 0 6 609 10521 10604 -20368 2 2 0 6 5664 5665 10819 -20369 2 2 0 6 887 10824 913 -20370 2 2 0 6 1800 10888 7810 -20371 2 2 0 6 1520 11020 11022 -20372 2 2 0 6 922 10828 925 -20373 2 2 0 6 6613 7589 10905 -20374 2 2 0 6 4565 5435 10866 -20375 2 2 0 6 49 10229 462 -20376 2 2 0 6 1367 10794 1370 -20377 2 2 0 6 5052 10913 6005 -20378 2 2 0 6 8488 4347 10579 -20379 2 2 0 6 752 10835 813 -20380 2 2 0 6 5865 9948 10532 -20381 2 2 0 6 3708 10738 10725 -20382 2 2 0 6 3441 10836 3651 -20383 2 2 0 6 5880 6598 10541 -20384 2 2 0 6 7040 10839 7042 -20385 2 2 0 6 4157 10565 4836 -20386 2 2 0 6 6006 7463 10892 -20387 2 2 0 6 5016 5927 10615 -20388 2 2 0 6 2657 10989 10964 -20389 2 2 0 6 1794 9656 10624 -20390 2 2 0 6 3217 3346 10578 -20391 2 2 0 6 5474 7224 10568 -20392 2 2 0 6 7044 10823 7046 -20393 2 2 0 6 5421 7807 10575 -20394 2 2 0 6 1704 10653 1703 -20395 2 2 0 6 6633 10789 10751 -20396 2 2 0 6 1670 10590 9443 -20397 2 2 0 6 5993 10779 7194 -20398 2 2 0 6 6581 10557 6582 -20399 2 2 0 6 2074 2076 10573 -20400 2 2 0 6 6634 10583 10435 -20401 2 2 0 6 5456 5458 10583 -20402 2 2 0 6 6471 9532 10775 -20403 2 2 0 6 6598 10471 10541 -20404 2 2 0 6 1230 10746 9638 -20405 2 2 0 6 6427 10668 10514 -20406 2 2 0 6 6664 10678 10805 -20407 2 2 0 6 4411 10308 10619 -20408 2 2 0 6 5865 10582 10623 -20409 2 2 0 6 8381 9161 10622 -20410 2 2 0 6 4324 10584 4591 -20411 2 2 0 6 1967 8355 11127 -20412 2 2 0 6 6642 10672 5982 -20413 2 2 0 6 4570 9284 10576 -20414 2 2 0 6 6655 10464 10820 -20415 2 2 0 6 4032 11133 4913 -20416 2 2 0 6 5045 10765 10762 -20417 2 2 0 6 3011 10602 7772 -20418 2 2 0 6 5915 7678 10577 -20419 2 2 0 6 934 10868 937 -20420 2 2 0 6 6714 10853 10578 -20421 2 2 0 6 6655 10820 10947 -20422 2 2 0 6 5039 10582 6535 -20423 2 2 0 6 5893 10632 10580 -20424 2 2 0 6 5625 10837 9242 -20425 2 2 0 6 1427 1429 10881 -20426 2 2 0 6 8340 10873 9376 -20427 2 2 0 6 4105 10963 10986 -20428 2 2 0 6 8855 10575 10615 -20429 2 2 0 6 3446 10833 10043 -20430 2 2 0 6 833 10841 8829 -20431 2 2 0 6 6472 10887 6473 -20432 2 2 0 6 4913 11133 11122 -20433 2 2 0 6 5961 10875 5963 -20434 2 2 0 6 8788 10637 10403 -20435 2 2 0 6 5873 7835 10665 -20436 2 2 0 6 4850 5232 10571 -20437 2 2 0 6 1283 1293 10567 -20438 2 2 0 6 3725 10773 6654 -20439 2 2 0 6 9166 10624 10726 -20440 2 2 0 6 5030 10802 6602 -20441 2 2 0 6 4199 8235 10891 -20442 2 2 0 6 1183 1197 10894 -20443 2 2 0 6 6620 10690 10370 -20444 2 2 0 6 5620 10625 5916 -20445 2 2 0 6 2836 10588 3563 -20446 2 2 0 6 8973 10022 10771 -20447 2 2 0 6 3695 10606 9692 -20448 2 2 0 6 6591 10376 10440 -20449 2 2 0 6 2417 10664 7807 -20450 2 2 0 6 6450 10788 10117 -20451 2 2 0 6 9324 10848 9461 -20452 2 2 0 6 6410 10498 10278 -20453 2 2 0 6 1727 2745 10774 -20454 2 2 0 6 6628 10655 10649 -20455 2 2 0 6 4744 10591 4746 -20456 2 2 0 6 3365 8394 10918 -20457 2 2 0 6 6711 10838 9268 -20458 2 2 0 6 4347 10555 10579 -20459 2 2 0 6 4105 10986 9439 -20460 2 2 0 6 1899 1985 10572 -20461 2 2 0 6 3510 9331 10851 -20462 2 2 0 6 6618 10027 10543 -20463 2 2 0 6 50 10393 10229 -20464 2 2 0 6 756 1800 10860 -20465 2 2 0 6 3353 8855 10598 -20466 2 2 0 6 6072 11229 11215 -20467 2 2 0 6 5915 10538 10566 -20468 2 2 0 6 5562 10378 10442 -20469 2 2 0 6 6620 10708 10693 -20470 2 2 0 6 9312 8105 10931 -20471 2 2 0 6 3365 10912 8256 -20472 2 2 0 6 5893 10580 9517 -20473 2 2 0 6 6619 6660 10599 -20474 2 2 0 6 5919 6549 10700 -20475 2 2 0 6 9517 10580 10433 -20476 2 2 0 6 4876 9452 10551 -20477 2 2 0 6 3708 10725 9123 -20478 2 2 0 6 6624 10767 8201 -20479 2 2 0 6 6252 10651 7870 -20480 2 2 0 6 4515 10560 9634 -20481 2 2 0 6 1572 10593 1726 -20482 2 2 0 6 7711 11202 11188 -20483 2 2 0 6 146 464 10091 -20484 2 2 0 6 823 10636 9071 -20485 2 2 0 6 9123 10725 10675 -20486 2 2 0 6 6123 10601 6807 -20487 2 2 0 6 4350 8423 11260 -20488 2 2 0 6 2054 10535 10589 -20489 2 2 0 6 7319 10896 9903 -20490 2 2 0 6 5068 9119 10859 -20491 2 2 0 6 5965 10117 10788 -20492 2 2 0 6 6632 10751 10596 -20493 2 2 0 6 48 462 10088 -20494 2 2 0 6 967 10759 10672 -20495 2 2 0 6 10706 10809 9740 -20496 2 2 0 6 6504 11221 11166 -20497 2 2 0 6 5945 10656 6575 -20498 2 2 0 6 1523 11255 8423 -20499 2 2 0 6 5473 5864 10878 -20500 2 2 0 6 3507 10422 10158 -20501 2 2 0 6 3100 10596 4048 -20502 2 2 0 6 1433 1436 10893 -20503 2 2 0 6 3531 8935 10587 -20504 2 2 0 6 4027 10401 10059 -20505 2 2 0 6 5881 10597 5883 -20506 2 2 0 6 3703 4568 10864 -20507 2 2 0 6 9747 10595 10490 -20508 2 2 0 6 7678 7679 10585 -20509 2 2 0 6 8970 10802 10879 -20510 2 2 0 6 4288 10611 5191 -20511 2 2 0 6 5595 10626 10534 -20512 2 2 0 6 5760 7682 11125 -20513 2 2 0 6 5604 10581 9531 -20514 2 2 0 6 7754 7755 10614 -20515 2 2 0 6 7102 8026 10949 -20516 2 2 0 6 642 10905 645 -20517 2 2 0 6 6005 10913 10944 -20518 2 2 0 6 2962 10595 9747 -20519 2 2 0 6 4034 10767 10764 -20520 2 2 0 6 3446 9748 10833 -20521 2 2 0 6 9166 9168 10624 -20522 2 2 0 6 2054 10589 2055 -20523 2 2 0 6 9585 6000 10850 -20524 2 2 0 6 3701 10864 5026 -20525 2 2 0 6 5972 8797 10826 -20526 2 2 0 6 3475 9703 10645 -20527 2 2 0 6 6750 10416 10474 -20528 2 2 0 6 758 10888 1800 -20529 2 2 0 6 3176 9872 11157 -20530 2 2 0 6 5828 9960 10647 -20531 2 2 0 6 8589 10649 10653 -20532 2 2 0 6 6238 10610 7094 -20533 2 2 0 6 7088 8695 10797 -20534 2 2 0 6 6581 10466 10557 -20535 2 2 0 6 5031 9074 10758 -20536 2 2 0 6 6577 10600 10625 -20537 2 2 0 6 5415 10569 10628 -20538 2 2 0 6 7361 10547 10262 -20539 2 2 0 6 5976 10765 10752 -20540 2 2 0 6 3342 7960 10928 -20541 2 2 0 6 5863 10467 10512 -20542 2 2 0 6 930 10862 933 -20543 2 2 0 6 5012 6563 10723 -20544 2 2 0 6 5887 10603 9697 -20545 2 2 0 6 5069 5973 10903 -20546 2 2 0 6 2620 10432 10532 -20547 2 2 0 6 1254 1269 10620 -20548 2 2 0 6 9350 10780 10694 -20549 2 2 0 6 7254 7255 10854 -20550 2 2 0 6 5954 10619 7456 -20551 2 2 0 6 8793 11170 8794 -20552 2 2 0 6 6246 10346 10594 -20553 2 2 0 6 3564 10433 10580 -20554 2 2 0 6 8273 10172 10748 -20555 2 2 0 6 6714 6715 10853 -20556 2 2 0 6 5522 9303 10607 -20557 2 2 0 6 8852 10681 10673 -20558 2 2 0 6 6366 10525 10170 -20559 2 2 0 6 6617 10562 10499 -20560 2 2 0 6 7245 7701 10627 -20561 2 2 0 6 5879 10623 10582 -20562 2 2 0 6 8339 10882 8340 -20563 2 2 0 6 4551 5919 10605 -20564 2 2 0 6 926 10847 929 -20565 2 2 0 6 6619 10599 10630 -20566 2 2 0 6 5979 10679 9161 -20567 2 2 0 6 5067 10876 5973 -20568 2 2 0 6 7674 10822 10772 -20569 2 2 0 6 6571 10964 10989 -20570 2 2 0 6 5990 6603 10636 -20571 2 2 0 6 5998 6678 10939 -20572 2 2 0 6 4171 10943 5707 -20573 2 2 0 6 6616 10608 8399 -20574 2 2 0 6 7883 9903 10896 -20575 2 2 0 6 8423 11255 11260 -20576 2 2 0 6 4417 8697 10919 -20577 2 2 0 6 7133 10591 10865 -20578 2 2 0 6 8790 10765 5045 -20579 2 2 0 6 1777 1825 10921 -20580 2 2 0 6 1670 8641 10631 -20581 2 2 0 6 1670 10631 10590 -20582 2 2 0 6 6642 10738 10744 -20583 2 2 0 6 4169 10948 5022 -20584 2 2 0 6 6593 7254 10886 -20585 2 2 0 6 762 771 10901 -20586 2 2 0 6 7755 10639 10614 -20587 2 2 0 6 3275 8350 10635 -20588 2 2 0 6 4554 10718 10766 -20589 2 2 0 6 5881 10629 10597 -20590 2 2 0 6 9703 10662 10645 -20591 2 2 0 6 3388 10643 10261 -20592 2 2 0 6 16 509 7237 -20593 2 2 0 6 4702 4737 10714 -20594 2 2 0 6 3690 10622 9340 -20595 2 2 0 6 609 10604 8901 -20596 2 2 0 6 4060 7772 10674 -20597 2 2 0 6 9529 10600 9622 -20598 2 2 0 6 5595 9388 10626 -20599 2 2 0 6 7738 10890 10851 -20600 2 2 0 6 2124 2179 11132 -20601 2 2 0 6 5028 10629 5881 -20602 2 2 0 6 6340 10127 10786 -20603 2 2 0 6 3066 10911 3065 -20604 2 2 0 6 1421 1423 10884 -20605 2 2 0 6 614 10612 617 -20606 2 2 0 6 5876 10505 10488 -20607 2 2 0 6 2502 9368 10632 -20608 2 2 0 6 8641 10639 10631 -20609 2 2 0 6 7243 10327 10546 -20610 2 2 0 6 6008 10900 8671 -20611 2 2 0 6 6622 8925 11012 -20612 2 2 0 6 823 10675 10636 -20613 2 2 0 6 5456 10583 10666 -20614 2 2 0 6 5430 10639 8641 -20615 2 2 0 6 9074 10762 10758 -20616 2 2 0 6 9616 10514 10668 -20617 2 2 0 6 4883 10637 6372 -20618 2 2 0 6 5897 10633 8411 -20619 2 2 0 6 6220 8288 10908 -20620 2 2 0 6 5785 10158 10616 -20621 2 2 0 6 6667 10746 10735 -20622 2 2 0 6 1454 10711 10548 -20623 2 2 0 6 5918 10615 10575 -20624 2 2 0 6 6634 10666 10583 -20625 2 2 0 6 2134 11132 11232 -20626 2 2 0 6 9443 10590 10363 -20627 2 2 0 6 4027 9963 10401 -20628 2 2 0 6 3726 6654 10769 -20629 2 2 0 6 4201 9439 10621 -20630 2 2 0 6 1143 10640 1149 -20631 2 2 0 6 6365 8589 10652 -20632 2 2 0 6 6205 10732 10749 -20633 2 2 0 6 4146 10911 10226 -20634 2 2 0 6 5908 10406 10909 -20635 2 2 0 6 6198 7168 10644 -20636 2 2 0 6 9581 9582 10919 -20637 2 2 0 6 1700 1703 10655 -20638 2 2 0 6 3271 9692 10617 -20639 2 2 0 6 7679 10455 10585 -20640 2 2 0 6 1520 11022 8297 -20641 2 2 0 6 5061 9742 10843 -20642 2 2 0 6 633 9050 10920 -20643 2 2 0 6 4134 4184 10936 -20644 2 2 0 6 6749 10474 10638 -20645 2 2 0 6 8000 10646 8002 -20646 2 2 0 6 5979 5943 10709 -20647 2 2 0 6 4066 4148 10648 -20648 2 2 0 6 1558 10938 1560 -20649 2 2 0 6 6365 10652 10659 -20650 2 2 0 6 5676 6220 10908 -20651 2 2 0 6 1155 10890 10840 -20652 2 2 0 6 5276 10954 8466 -20653 2 2 0 6 9869 10263 10798 -20654 2 2 0 6 7767 10957 8582 -20655 2 2 0 6 6626 10736 10764 -20656 2 2 0 6 5027 10634 5917 -20657 2 2 0 6 6472 11121 11057 -20658 2 2 0 6 4350 10663 8681 -20659 2 2 0 6 3365 10918 10912 -20660 2 2 0 6 5873 10560 10476 -20661 2 2 0 6 7105 11158 11151 -20662 2 2 0 6 6669 10621 10942 -20663 2 2 0 6 5074 10914 6594 -20664 2 2 0 6 1363 10985 1366 -20665 2 2 0 6 9899 10462 10772 -20666 2 2 0 6 5929 10649 8589 -20667 2 2 0 6 5926 10963 10529 -20668 2 2 0 6 3921 11187 10967 -20669 2 2 0 6 5828 10647 10927 -20670 2 2 0 6 1248 1251 10657 -20671 2 2 0 6 641 6613 10905 -20672 2 2 0 6 3551 8825 11021 -20673 2 2 0 6 967 10672 10670 -20674 2 2 0 6 8819 10909 10406 -20675 2 2 0 6 9168 10482 10624 -20676 2 2 0 6 6599 7518 10613 -20677 2 2 0 6 9692 10606 10617 -20678 2 2 0 6 5979 10709 10679 -20679 2 2 0 6 10867 8969 10879 -20680 2 2 0 6 5718 6623 10915 -20681 2 2 0 6 5943 10773 10709 -20682 2 2 0 6 7589 10939 10905 -20683 2 2 0 6 7088 10797 10094 -20684 2 2 0 6 8257 10889 10903 -20685 2 2 0 6 5951 9350 10734 -20686 2 2 0 6 1679 7542 10999 -20687 2 2 0 6 6365 10659 6366 -20688 2 2 0 6 5049 10942 6013 -20689 2 2 0 6 5630 10627 10107 -20690 2 2 0 6 6372 10658 7235 -20691 2 2 0 6 6258 10923 9661 -20692 2 2 0 6 9869 10798 10972 -20693 2 2 0 6 6628 9116 10661 -20694 2 2 0 6 6372 10637 10658 -20695 2 2 0 6 2076 10754 10573 -20696 2 2 0 6 8800 10719 10717 -20697 2 2 0 6 6669 11024 6670 -20698 2 2 0 6 6636 10757 7627 -20699 2 2 0 6 6639 10573 10754 -20700 2 2 0 6 5045 10762 9074 -20701 2 2 0 6 5630 10678 10627 -20702 2 2 0 6 3760 6078 11092 -20703 2 2 0 6 4041 7983 11206 -20704 2 2 0 6 6638 10692 8694 -20705 2 2 0 6 6693 11124 11104 -20706 2 2 0 6 8295 10950 9436 -20707 2 2 0 6 4553 5456 10666 -20708 2 2 0 6 1715 10669 10570 -20709 2 2 0 6 6619 10630 9695 -20710 2 2 0 6 5918 10664 7835 -20711 2 2 0 6 6005 10944 6118 -20712 2 2 0 6 4495 8852 10673 -20713 2 2 0 6 6259 10696 10265 -20714 2 2 0 6 6315 8212 10926 -20715 2 2 0 6 8432 10144 10609 -20716 2 2 0 6 9468 10742 10741 -20717 2 2 0 6 4839 10599 6252 -20718 2 2 0 6 6641 10642 10581 -20719 2 2 0 6 4707 10936 5216 -20720 2 2 0 6 7269 10284 10638 -20721 2 2 0 6 5960 10747 10726 -20722 2 2 0 6 4541 10899 10775 -20723 2 2 0 6 6614 10170 10525 -20724 2 2 0 6 1508 10810 10849 -20725 2 2 0 6 4608 10641 5896 -20726 2 2 0 6 4790 10954 5276 -20727 2 2 0 6 627 9072 10956 -20728 2 2 0 6 7758 11196 11184 -20729 2 2 0 6 8880 10671 10736 -20730 2 2 0 6 617 10671 8880 -20731 2 2 0 6 6601 10930 9551 -20732 2 2 0 6 7888 10661 10728 -20733 2 2 0 6 2937 10770 10683 -20734 2 2 0 6 7520 10906 7521 -20735 2 2 0 6 4423 10691 5869 -20736 2 2 0 6 5022 10948 11161 -20737 2 2 0 6 5906 10685 7416 -20738 2 2 0 6 6749 10638 10284 -20739 2 2 0 6 4948 10667 4949 -20740 2 2 0 6 2056 2057 10677 -20741 2 2 0 6 10867 10879 9219 -20742 2 2 0 6 6507 7331 10654 -20743 2 2 0 6 4398 10685 10428 -20744 2 2 0 6 6630 10722 10687 -20745 2 2 0 6 3689 9616 10668 -20746 2 2 0 6 7754 10614 10687 -20747 2 2 0 6 5232 10707 10571 -20748 2 2 0 6 5972 10826 9985 -20749 2 2 0 6 5620 10676 10625 -20750 2 2 0 6 5630 9536 10678 -20751 2 2 0 6 617 10612 10671 -20752 2 2 0 6 1570 10680 10593 -20753 2 2 0 6 5021 10682 5506 -20754 2 2 0 6 7675 10772 10462 -20755 2 2 0 6 5506 10681 8852 -20756 2 2 0 6 5608 10780 9203 -20757 2 2 0 6 3147 3921 10962 -20758 2 2 0 6 6684 6685 10716 -20759 2 2 0 6 7920 10995 7921 -20760 2 2 0 6 8297 10976 9608 -20761 2 2 0 6 1066 8257 10686 -20762 2 2 0 6 6336 10699 8637 -20763 2 2 0 6 5441 8233 10690 -20764 2 2 0 6 1913 1912 10941 -20765 2 2 0 6 876 882 10670 -20766 2 2 0 6 4103 10953 8314 -20767 2 2 0 6 4958 6004 10870 -20768 2 2 0 6 3823 10647 9960 -20769 2 2 0 6 9981 10570 10669 -20770 2 2 0 6 9065 11010 11020 -20771 2 2 0 6 2184 9340 10679 -20772 2 2 0 6 8218 10753 10724 -20773 2 2 0 6 1683 1719 10946 -20774 2 2 0 6 1719 8342 10946 -20775 2 2 0 6 1344 10935 2401 -20776 2 2 0 6 967 9203 10759 -20777 2 2 0 6 6670 11024 11032 -20778 2 2 0 6 649 646 10959 -20779 2 2 0 6 9367 9630 10693 -20780 2 2 0 6 5900 10363 10590 -20781 2 2 0 6 10632 10706 9740 -20782 2 2 0 6 5620 8743 10676 -20783 2 2 0 6 1971 2210 10964 -20784 2 2 0 6 2131 10708 10719 -20785 2 2 0 6 4515 10476 10560 -20786 2 2 0 6 6599 10613 10511 -20787 2 2 0 6 5942 10740 10717 -20788 2 2 0 6 5995 5997 10766 -20789 2 2 0 6 5905 9913 10820 -20790 2 2 0 6 5960 10726 9656 -20791 2 2 0 6 3055 4041 10684 -20792 2 2 0 6 6636 10778 10757 -20793 2 2 0 6 2363 2618 10683 -20794 2 2 0 6 1230 10735 10746 -20795 2 2 0 6 5196 9694 10902 -20796 2 2 0 6 2064 10710 10677 -20797 2 2 0 6 6017 11025 7676 -20798 2 2 0 6 6670 11032 6851 -20799 2 2 0 6 6641 8218 10724 -20800 2 2 0 6 9339 10842 10874 -20801 2 2 0 6 6618 10674 7454 -20802 2 2 0 6 3420 10704 3421 -20803 2 2 0 6 5506 10682 10681 -20804 2 2 0 6 6118 10944 10965 -20805 2 2 0 6 4148 10703 10648 -20806 2 2 0 6 8913 10688 8965 -20807 2 2 0 6 6623 10087 10915 -20808 2 2 0 6 9291 10778 10800 -20809 2 2 0 6 4048 10596 10751 -20810 2 2 0 6 4554 10666 10718 -20811 2 2 0 6 7701 10107 10627 -20812 2 2 0 6 5029 5944 10692 -20813 2 2 0 6 5974 10762 10765 -20814 2 2 0 6 6655 10947 6656 -20815 2 2 0 6 2952 8966 10700 -20816 2 2 0 6 5032 10728 9116 -20817 2 2 0 6 7651 11190 11182 -20818 2 2 0 6 5335 7171 10660 -20819 2 2 0 6 1161 10702 1182 -20820 2 2 0 6 6266 10967 9640 -20821 2 2 0 6 6480 10662 9703 -20822 2 2 0 6 4195 10958 4945 -20823 2 2 0 6 1508 8694 10810 -20824 2 2 0 6 5988 5990 10675 -20825 2 2 0 6 5986 10725 10738 -20826 2 2 0 6 3139 3140 10968 -20827 2 2 0 6 8454 10849 10814 -20828 2 2 0 6 9166 10726 9167 -20829 2 2 0 6 4148 7221 10703 -20830 2 2 0 6 1554 10983 1587 -20831 2 2 0 6 9340 10622 10679 -20832 2 2 0 6 4060 10674 10543 -20833 2 2 0 6 7737 10890 7738 -20834 2 2 0 6 1328 10997 1362 -20835 2 2 0 6 5705 9571 11069 -20836 2 2 0 6 5940 10718 6634 -20837 2 2 0 6 6205 9644 10732 -20838 2 2 0 6 6678 10980 10959 -20839 2 2 0 6 9481 10709 10773 -20840 2 2 0 6 5263 9674 10698 -20841 2 2 0 6 9167 10726 10747 -20842 2 2 0 6 2363 10683 10517 -20843 2 2 0 6 9116 10728 10661 -20844 2 2 0 6 7754 10687 9689 -20845 2 2 0 6 6694 7758 11184 -20846 2 2 0 6 2722 10656 10190 -20847 2 2 0 6 5942 10717 9094 -20848 2 2 0 6 6239 10261 10643 -20849 2 2 0 6 1182 10702 10712 -20850 2 2 0 6 4584 10713 5089 -20851 2 2 0 6 4558 5514 10961 -20852 2 2 0 6 6658 6781 10927 -20853 2 2 0 6 1182 10712 1196 -20854 2 2 0 6 3057 10684 11193 -20855 2 2 0 6 832 834 10987 -20856 2 2 0 6 5925 6640 10710 -20857 2 2 0 6 3354 10951 10894 -20858 2 2 0 6 5608 9317 10694 -20859 2 2 0 6 5425 10729 7871 -20860 2 2 0 6 742 744 10720 -20861 2 2 0 6 5984 5986 10738 -20862 2 2 0 6 5418 10966 6024 -20863 2 2 0 6 2131 10719 8800 -20864 2 2 0 6 3443 11052 7586 -20865 2 2 0 6 6487 6488 10705 -20866 2 2 0 6 5922 9981 10669 -20867 2 2 0 6 1342 10221 10935 -20868 2 2 0 6 2184 10679 10709 -20869 2 2 0 6 6618 10543 10674 -20870 2 2 0 6 5990 10636 10675 -20871 2 2 0 6 6699 11200 11198 -20872 2 2 0 6 4552 6024 10948 -20873 2 2 0 6 4818 10706 5893 -20874 2 2 0 6 3143 3144 10962 -20875 2 2 0 6 9161 10679 10622 -20876 2 2 0 6 5978 10866 10907 -20877 2 2 0 6 2131 9367 10708 -20878 2 2 0 6 4788 5270 10954 -20879 2 2 0 6 8362 10996 8364 -20880 2 2 0 6 5994 10825 9878 -20881 2 2 0 6 5425 10742 10729 -20882 2 2 0 6 6702 11043 11185 -20883 2 2 0 6 2373 10978 2657 -20884 2 2 0 6 7735 8321 10735 -20885 2 2 0 6 6011 9614 10934 -20886 2 2 0 6 6649 6651 10745 -20887 2 2 0 6 8347 10721 8348 -20888 2 2 0 6 8346 10845 8347 -20889 2 2 0 6 4900 10117 10701 -20890 2 2 0 6 5265 11000 9420 -20891 2 2 0 6 6002 10067 10889 -20892 2 2 0 6 2184 10709 9481 -20893 2 2 0 6 5942 6639 10740 -20894 2 2 0 6 1520 9065 11020 -20895 2 2 0 6 6205 10749 7007 -20896 2 2 0 6 6338 10563 10925 -20897 2 2 0 6 6229 11015 8941 -20898 2 2 0 6 6629 10722 6630 -20899 2 2 0 6 8346 10859 10845 -20900 2 2 0 6 8736 8737 10996 -20901 2 2 0 6 4865 10861 7377 -20902 2 2 0 6 6586 10581 10642 -20903 2 2 0 6 8735 11003 8737 -20904 2 2 0 6 10843 10851 9331 -20905 2 2 0 6 2588 8418 10731 -20906 2 2 0 6 5955 8638 10730 -20907 2 2 0 6 1677 1679 10999 -20908 2 2 0 6 7251 10973 9330 -20909 2 2 0 6 5208 10724 10753 -20910 2 2 0 6 6624 6626 10767 -20911 2 2 0 6 3714 9437 10974 -20912 2 2 0 6 6662 6664 10805 -20913 2 2 0 6 8311 10764 10736 -20914 2 2 0 6 6480 10689 10662 -20915 2 2 0 6 3483 7871 10752 -20916 2 2 0 6 826 828 11002 -20917 2 2 0 6 5976 5974 10765 -20918 2 2 0 6 10843 9331 10867 -20919 2 2 0 6 7642 11098 11089 -20920 2 2 0 6 5938 10762 5974 -20921 2 2 0 6 9167 10747 9197 -20922 2 2 0 6 5267 10994 6278 -20923 2 2 0 6 5988 10675 10725 -20924 2 2 0 6 9203 10780 10759 -20925 2 2 0 6 9103 10517 10683 -20926 2 2 0 6 3648 10916 9586 -20927 2 2 0 6 8270 8271 11003 -20928 2 2 0 6 6658 10927 10647 -20929 2 2 0 6 5425 7821 10742 -20930 2 2 0 6 5986 5988 10725 -20931 2 2 0 6 1396 10977 1397 -20932 2 2 0 6 5916 10635 10634 -20933 2 2 0 6 1540 10737 3612 -20934 2 2 0 6 5938 10758 10762 -20935 2 2 0 6 5206 10724 5208 -20936 2 2 0 6 1606 10981 9113 -20937 2 2 0 6 6502 7143 11006 -20938 2 2 0 6 7204 10926 10935 -20939 2 2 0 6 5068 10859 10869 -20940 2 2 0 6 6499 8276 11040 -20941 2 2 0 6 4077 10747 10795 -20942 2 2 0 6 1348 9978 10992 -20943 2 2 0 6 1326 3924 10997 -20944 2 2 0 6 4702 10714 5235 -20945 2 2 0 6 8218 8219 10753 -20946 2 2 0 6 5916 10625 10600 -20947 2 2 0 6 748 10768 10761 -20948 2 2 0 6 764 766 10739 -20949 2 2 0 6 2477 3054 10984 -20950 2 2 0 6 8439 10922 9712 -20951 2 2 0 6 6329 10275 10715 -20952 2 2 0 6 2064 8908 10741 -20953 2 2 0 6 5973 10876 10891 -20954 2 2 0 6 5232 7075 10707 -20955 2 2 0 6 5056 5058 10733 -20956 2 2 0 6 1588 9460 10727 -20957 2 2 0 6 5393 10743 7177 -20958 2 2 0 6 830 10744 3708 -20959 2 2 0 6 2080 10754 2076 -20960 2 2 0 6 6701 11208 11205 -20961 2 2 0 6 5043 11012 6600 -20962 2 2 0 6 6626 10381 10736 -20963 2 2 0 6 2254 8786 11171 -20964 2 2 0 6 5949 8896 10755 -20965 2 2 0 6 8311 8312 10764 -20966 2 2 0 6 1707 10652 10653 -20967 2 2 0 6 791 3484 11011 -20968 2 2 0 6 9369 9638 10746 -20969 2 2 0 6 8347 10845 10837 -20970 2 2 0 6 5950 10755 10777 -20971 2 2 0 6 2587 8683 11266 -20972 2 2 0 6 5939 5980 10759 -20973 2 2 0 6 2152 10745 8912 -20974 2 2 0 6 1247 10757 8886 -20975 2 2 0 6 797 11013 3484 -20976 2 2 0 6 7871 10729 10752 -20977 2 2 0 6 1703 10649 10655 -20978 2 2 0 6 9367 10693 10708 -20979 2 2 0 6 810 814 11017 -20980 2 2 0 6 6336 9320 10782 -20981 2 2 0 6 6340 10786 10628 -20982 2 2 0 6 4820 10990 8844 -20983 2 2 0 6 6000 10913 10850 -20984 2 2 0 6 8134 9712 10922 -20985 2 2 0 6 3932 10917 4291 -20986 2 2 0 6 746 748 10761 -20987 2 2 0 6 6028 11014 6029 -20988 2 2 0 6 7228 11139 11077 -20989 2 2 0 6 3612 10734 10694 -20990 2 2 0 6 6047 11042 6048 -20991 2 2 0 6 6661 6662 10857 -20992 2 2 0 6 6700 11144 11134 -20993 2 2 0 6 784 11008 786 -20994 2 2 0 6 6642 10670 10672 -20995 2 2 0 6 6649 10745 10763 -20996 2 2 0 6 7654 10763 10787 -20997 2 2 0 6 5964 10814 10849 -20998 2 2 0 6 5306 7343 10975 -20999 2 2 0 6 6654 10773 10807 -21000 2 2 0 6 7676 11025 11045 -21001 2 2 0 6 5068 10869 10876 -21002 2 2 0 6 7206 8127 10774 -21003 2 2 0 6 801 812 11013 -21004 2 2 0 6 5513 11016 11010 -21005 2 2 0 6 2490 2660 11047 -21006 2 2 0 6 6500 11040 7143 -21007 2 2 0 6 597 10781 3456 -21008 2 2 0 6 9856 10786 10127 -21009 2 2 0 6 748 750 10768 -21010 2 2 0 6 4048 10751 9827 -21011 2 2 0 6 9102 9103 10770 -21012 2 2 0 6 51 557 10393 -21013 2 2 0 6 6649 10763 6650 -21014 2 2 0 6 10947 10976 6656 -21015 2 2 0 6 8207 10870 10951 -21016 2 2 0 6 6258 10049 10923 -21017 2 2 0 6 6666 10897 6667 -21018 2 2 0 6 5012 10723 6388 -21019 2 2 0 6 5504 10094 10797 -21020 2 2 0 6 4293 5306 10899 -21021 2 2 0 6 6086 6699 10776 -21022 2 2 0 6 5950 10731 10799 -21023 2 2 0 6 6190 6191 11009 -21024 2 2 0 6 4991 10650 10487 -21025 2 2 0 6 5094 11038 6695 -21026 2 2 0 6 5905 10820 10464 -21027 2 2 0 6 3771 11049 11045 -21028 2 2 0 6 3983 11034 4638 -21029 2 2 0 6 7188 9280 10952 -21030 2 2 0 6 8886 10757 10778 -21031 2 2 0 6 6674 6818 11023 -21032 2 2 0 6 7204 10935 10221 -21033 2 2 0 6 3432 10925 10563 -21034 2 2 0 6 1349 1348 10992 -21035 2 2 0 6 5993 6675 10779 -21036 2 2 0 6 6669 10942 11024 -21037 2 2 0 6 6673 10775 9532 -21038 2 2 0 6 9209 10777 4400 -21039 2 2 0 6 1552 5611 10983 -21040 2 2 0 6 8969 8970 10879 -21041 2 2 0 6 5061 10867 9219 -21042 2 2 0 6 6480 10309 10689 -21043 2 2 0 6 4738 10750 9949 -21044 2 2 0 6 8886 10778 8986 -21045 2 2 0 6 5896 10641 10616 -21046 2 2 0 6 6639 10754 10740 -21047 2 2 0 6 8104 10809 10877 -21048 2 2 0 6 2827 11027 2829 -21049 2 2 0 6 730 739 10784 -21050 2 2 0 6 5967 10481 10815 -21051 2 2 0 6 6475 11001 10145 -21052 2 2 0 6 3039 3149 11050 -21053 2 2 0 6 635 10792 636 -21054 2 2 0 6 5932 10769 10733 -21055 2 2 0 6 8298 10529 10963 -21056 2 2 0 6 6036 6076 11046 -21057 2 2 0 6 2152 10763 10745 -21058 2 2 0 6 5904 10748 10172 -21059 2 2 0 6 6662 10805 10857 -21060 2 2 0 6 792 2587 10785 -21061 2 2 0 6 6548 10265 10696 -21062 2 2 0 6 6183 7107 10791 -21063 2 2 0 6 6187 9889 10969 -21064 2 2 0 6 3057 11193 11223 -21065 2 2 0 6 704 10787 2152 -21066 2 2 0 6 5092 11075 6660 -21067 2 2 0 6 5997 10842 10766 -21068 2 2 0 6 7372 10771 10022 -21069 2 2 0 6 1717 11041 1773 -21070 2 2 0 6 5937 6602 10856 -21071 2 2 0 6 5625 10721 10837 -21072 2 2 0 6 2625 11019 3054 -21073 2 2 0 6 3653 7329 11107 -21074 2 2 0 6 6095 11113 11087 -21075 2 2 0 6 3551 11021 9326 -21076 2 2 0 6 6661 10857 10900 -21077 2 2 0 6 5939 10780 9350 -21078 2 2 0 6 5513 8449 11016 -21079 2 2 0 6 3725 9481 10773 -21080 2 2 0 6 5040 10788 6450 -21081 2 2 0 6 4554 10766 9755 -21082 2 2 0 6 5044 6622 11012 -21083 2 2 0 6 1454 10408 10711 -21084 2 2 0 6 6010 10972 10798 -21085 2 2 0 6 8880 10736 10381 -21086 2 2 0 6 9825 10849 10810 -21087 2 2 0 6 6666 10914 10897 -21088 2 2 0 6 5707 11037 10974 -21089 2 2 0 6 2999 3268 11030 -21090 2 2 0 6 5513 11010 9065 -21091 2 2 0 6 6660 11075 8159 -21092 2 2 0 6 9827 10751 10789 -21093 2 2 0 6 635 8773 10796 -21094 2 2 0 6 1508 10849 8454 -21095 2 2 0 6 4296 11054 4699 -21096 2 2 0 6 6263 10826 10872 -21097 2 2 0 6 8106 9740 10809 -21098 2 2 0 6 6002 10889 10912 -21099 2 2 0 6 2937 10850 10770 -21100 2 2 0 6 3346 10830 10838 -21101 2 2 0 6 6635 10800 6636 -21102 2 2 0 6 6818 11034 11023 -21103 2 2 0 6 5924 9827 10789 -21104 2 2 0 6 7310 10793 9823 -21105 2 2 0 6 5939 10759 10780 -21106 2 2 0 6 5046 10799 5625 -21107 2 2 0 6 2231 2508 10783 -21108 2 2 0 6 1366 10794 1367 -21109 2 2 0 6 7824 10056 10945 -21110 2 2 0 6 6395 10991 10500 -21111 2 2 0 6 8607 8610 10806 -21112 2 2 0 6 5973 10686 10903 -21113 2 2 0 6 6471 10899 10975 -21114 2 2 0 6 707 711 10808 -21115 2 2 0 6 1773 11048 11176 -21116 2 2 0 6 635 10796 10792 -21117 2 2 0 6 150 10356 558 -21118 2 2 0 6 4958 10870 5964 -21119 2 2 0 6 52 10355 557 -21120 2 2 0 6 798 10803 802 -21121 2 2 0 6 6013 10942 10621 -21122 2 2 0 6 6092 6701 10801 -21123 2 2 0 6 2769 9899 10772 -21124 2 2 0 6 3658 10820 9913 -21125 2 2 0 6 5055 10807 5943 -21126 2 2 0 6 5030 9181 10802 -21127 2 2 0 6 3823 10623 10647 -21128 2 2 0 6 6572 11227 11167 -21129 2 2 0 6 6665 7800 10827 -21130 2 2 0 6 4240 11143 9781 -21131 2 2 0 6 6012 11048 8012 -21132 2 2 0 6 4046 8843 10805 -21133 2 2 0 6 4032 10594 11133 -21134 2 2 0 6 6613 10907 10866 -21135 2 2 0 6 8363 10974 11037 -21136 2 2 0 6 8341 10792 10796 -21137 2 2 0 6 6654 10733 10769 -21138 2 2 0 6 6594 10914 10929 -21139 2 2 0 6 6385 11037 10943 -21140 2 2 0 6 2806 11043 3213 -21141 2 2 0 6 3411 3424 11051 -21142 2 2 0 6 5959 10795 5960 -21143 2 2 0 6 8297 11022 10976 -21144 2 2 0 6 6095 11087 6096 -21145 2 2 0 6 3771 8003 11049 -21146 2 2 0 6 4800 9997 10993 -21147 2 2 0 6 7811 10815 10481 -21148 2 2 0 6 739 10856 10784 -21149 2 2 0 6 5040 5845 10804 -21150 2 2 0 6 6263 9985 10826 -21151 2 2 0 6 6031 7153 11060 -21152 2 2 0 6 8694 10692 10810 -21153 2 2 0 6 3673 10998 9701 -21154 2 2 0 6 3247 3771 11045 -21155 2 2 0 6 8271 8272 11018 -21156 2 2 0 6 6276 10880 8250 -21157 2 2 0 6 913 10821 914 -21158 2 2 0 6 804 1178 10818 -21159 2 2 0 6 5978 10907 7370 -21160 2 2 0 6 7049 7064 10813 -21161 2 2 0 6 8640 10851 10890 -21162 2 2 0 6 6602 10784 10856 -21163 2 2 0 6 4183 10827 7514 -21164 2 2 0 6 5414 8454 10814 -21165 2 2 0 6 922 921 10828 -21166 2 2 0 6 5944 9825 10810 -21167 2 2 0 6 6336 10782 10699 -21168 2 2 0 6 9369 10746 10897 -21169 2 2 0 6 7387 10894 10951 -21170 2 2 0 6 5040 10804 10788 -21171 2 2 0 6 8589 10653 10652 -21172 2 2 0 6 7219 7220 10811 -21173 2 2 0 6 6635 10817 10800 -21174 2 2 0 6 3714 11035 10987 -21175 2 2 0 6 5813 10190 10790 -21176 2 2 0 6 4202 6689 10816 -21177 2 2 0 6 7034 7050 10831 -21178 2 2 0 6 7044 7058 10823 -21179 2 2 0 6 5699 9755 10842 -21180 2 2 0 6 5944 10810 10692 -21181 2 2 0 6 5607 6014 11084 -21182 2 2 0 6 8350 10634 10635 -21183 2 2 0 6 8293 10829 8295 -21184 2 2 0 6 6634 10718 10666 -21185 2 2 0 6 879 10824 887 -21186 2 2 0 6 6045 11124 6693 -21187 2 2 0 6 6503 11053 7141 -21188 2 2 0 6 6635 7226 10817 -21189 2 2 0 6 2062 11059 2065 -21190 2 2 0 6 7036 10831 10834 -21191 2 2 0 6 815 10832 827 -21192 2 2 0 6 3145 11068 3146 -21193 2 2 0 6 5664 10819 5945 -21194 2 2 0 6 6667 10897 10746 -21195 2 2 0 6 3300 11058 4144 -21196 2 2 0 6 9755 10766 10842 -21197 2 2 0 6 3651 10836 4034 -21198 2 2 0 6 8640 3510 10851 -21199 2 2 0 6 5071 11063 6226 -21200 2 2 0 6 6665 10827 10863 -21201 2 2 0 6 3658 10947 10820 -21202 2 2 0 6 3346 8406 10830 -21203 2 2 0 6 5945 10819 10790 -21204 2 2 0 6 8608 10833 9748 -21205 2 2 0 6 4072 9242 10837 -21206 2 2 0 6 4317 11088 4319 -21207 2 2 0 6 5945 10790 10656 -21208 2 2 0 6 7040 7047 10839 -21209 2 2 0 6 615 10960 11100 -21210 2 2 0 6 9350 10694 10734 -21211 2 2 0 6 829 10841 833 -21212 2 2 0 6 6420 7924 11149 -21213 2 2 0 6 752 754 10835 -21214 2 2 0 6 7641 11098 7642 -21215 2 2 0 6 6564 10898 10893 -21216 2 2 0 6 5999 9376 10873 -21217 2 2 0 6 8364 10987 11035 -21218 2 2 0 6 5893 10706 10632 -21219 2 2 0 6 2769 10772 10822 -21220 2 2 0 6 5845 10883 10804 -21221 2 2 0 6 1155 10840 10808 -21222 2 2 0 6 7821 10741 10742 -21223 2 2 0 6 917 10846 918 -21224 2 2 0 6 3628 9857 11055 -21225 2 2 0 6 2555 10854 10829 -21226 2 2 0 6 8843 10857 10805 -21227 2 2 0 6 8217 11062 10936 -21228 2 2 0 6 6254 10855 7169 -21229 2 2 0 6 8406 10822 10830 -21230 2 2 0 6 4291 10917 8925 -21231 2 2 0 6 623 10979 11152 -21232 2 2 0 6 8207 10814 10870 -21233 2 2 0 6 9120 10845 10859 -21234 2 2 0 6 3141 11077 3142 -21235 2 2 0 6 6008 10933 10900 -21236 2 2 0 6 7765 10938 10970 -21237 2 2 0 6 5953 10906 7520 -21238 2 2 0 6 7738 10843 9742 -21239 2 2 0 6 739 8765 10856 -21240 2 2 0 6 6690 7642 10844 -21241 2 2 0 6 8257 10903 10686 -21242 2 2 0 6 3708 10744 10738 -21243 2 2 0 6 4072 10845 9120 -21244 2 2 0 6 7078 11148 10417 -21245 2 2 0 6 4183 10863 10827 -21246 2 2 0 6 2769 10822 8406 -21247 2 2 0 6 6010 6030 10972 -21248 2 2 0 6 6263 10872 7183 -21249 2 2 0 6 6640 10677 10710 -21250 2 2 0 6 4072 10837 10845 -21251 2 2 0 6 9103 10683 10770 -21252 2 2 0 6 754 10860 10835 -21253 2 2 0 6 5938 10586 10758 -21254 2 2 0 6 5009 8317 10877 -21255 2 2 0 6 3425 3428 11071 -21256 2 2 0 6 6400 11076 9001 -21257 2 2 0 6 5724 11081 9021 -21258 2 2 0 6 6033 11060 6578 -21259 2 2 0 6 1253 10857 8843 -21260 2 2 0 6 11078 11138 8095 -21261 2 2 0 6 6588 11070 9062 -21262 2 2 0 6 933 10868 934 -21263 2 2 0 6 6648 11069 9571 -21264 2 2 0 6 9119 9120 10859 -21265 2 2 0 6 5195 7515 11086 -21266 2 2 0 6 4057 8669 11091 -21267 2 2 0 6 3726 10798 10263 -21268 2 2 0 6 3701 3703 10864 -21269 2 2 0 6 6053 6703 11085 -21270 2 2 0 6 4565 10866 5978 -21271 2 2 0 6 7255 10829 10854 -21272 2 2 0 6 3424 11071 11064 -21273 2 2 0 6 926 925 10847 -21274 2 2 0 6 1441 1777 10895 -21275 2 2 0 6 8344 10869 8346 -21276 2 2 0 6 6695 11052 11066 -21277 2 2 0 6 930 929 10862 -21278 2 2 0 6 7653 7654 10840 -21279 2 2 0 6 6199 11031 9287 -21280 2 2 0 6 4820 10454 10990 -21281 2 2 0 6 754 756 10860 -21282 2 2 0 6 2937 9585 10850 -21283 2 2 0 6 4183 4692 10863 -21284 2 2 0 6 8969 10867 9331 -21285 2 2 0 6 7062 5412 10852 -21286 2 2 0 6 7762 11102 7765 -21287 2 2 0 6 4568 9878 10825 -21288 2 2 0 6 6264 10871 10883 -21289 2 2 0 6 5961 6615 10875 -21290 2 2 0 6 8599 11114 8600 -21291 2 2 0 6 1429 1975 10881 -21292 2 2 0 6 5964 10849 9825 -21293 2 2 0 6 6006 10892 6007 -21294 2 2 0 6 6264 9646 10871 -21295 2 2 0 6 6473 10887 8991 -21296 2 2 0 6 6600 10917 10924 -21297 2 2 0 6 5067 5068 10876 -21298 2 2 0 6 5473 10878 7155 -21299 2 2 0 6 1734 1743 11097 -21300 2 2 0 6 2233 10783 10858 -21301 2 2 0 6 5756 10903 10889 -21302 2 2 0 6 7091 11243 11223 -21303 2 2 0 6 5845 6264 10883 -21304 2 2 0 6 1750 10848 9324 -21305 2 2 0 6 6184 7096 10904 -21306 2 2 0 6 5997 6339 10874 -21307 2 2 0 6 1253 10900 10857 -21308 2 2 0 6 3354 8207 10951 -21309 2 2 0 6 2179 9141 11082 -21310 2 2 0 6 6009 10973 10953 -21311 2 2 0 6 6089 11096 6702 -21312 2 2 0 6 760 10901 10888 -21313 2 2 0 6 10190 10656 10790 -21314 2 2 0 6 7824 10945 11160 -21315 2 2 0 6 8726 8863 11083 -21316 2 2 0 6 4199 10891 8349 -21317 2 2 0 6 6593 10886 7250 -21318 2 2 0 6 1423 2399 10884 -21319 2 2 0 6 6636 10800 10778 -21320 2 2 0 6 5589 9219 10879 -21321 2 2 0 6 5096 11072 6050 -21322 2 2 0 6 758 760 10888 -21323 2 2 0 6 6017 10786 11025 -21324 2 2 0 6 1197 3354 10894 -21325 2 2 0 6 7153 11218 11058 -21326 2 2 0 6 5278 10014 10865 -21327 2 2 0 6 1697 11089 1698 -21328 2 2 0 6 1743 9148 11097 -21329 2 2 0 6 8725 11064 8726 -21330 2 2 0 6 6406 7157 11082 -21331 2 2 0 6 1436 1516 10893 -21332 2 2 0 6 7592 11117 9064 -21333 2 2 0 6 6112 11028 11005 -21334 2 2 0 6 1427 10881 10882 -21335 2 2 0 6 8347 10837 10721 -21336 2 2 0 6 6732 10542 10812 -21337 2 2 0 6 4928 4930 11101 -21338 2 2 0 6 1433 10893 10898 -21339 2 2 0 6 5109 11116 6707 -21340 2 2 0 6 5904 10975 10748 -21341 2 2 0 6 5959 6258 10885 -21342 2 2 0 6 5508 8726 11083 -21343 2 2 0 6 760 762 10901 -21344 2 2 0 6 6631 10940 10923 -21345 2 2 0 6 1701 11104 1702 -21346 2 2 0 6 1253 8671 10900 -21347 2 2 0 6 10551 9453 11164 -21348 2 2 0 6 7118 11007 8627 -21349 2 2 0 6 5878 11103 8633 -21350 2 2 0 6 6403 11166 11001 -21351 2 2 0 6 6472 11057 10887 -21352 2 2 0 6 2311 8627 11007 -21353 2 2 0 6 5069 10903 5756 -21354 2 2 0 6 6319 11173 11279 -21355 2 2 0 6 8640 10890 1155 -21356 2 2 0 6 7644 10880 7643 -21357 2 2 0 6 5943 10807 10773 -21358 2 2 0 6 7319 7328 10896 -21359 2 2 0 6 8418 10799 10731 -21360 2 2 0 6 5073 9369 10897 -21361 2 2 0 6 6626 10764 10767 -21362 2 2 0 6 3420 10760 10704 -21363 2 2 0 6 3065 10911 4146 -21364 2 2 0 6 641 10905 642 -21365 2 2 0 6 3726 10769 10798 -21366 2 2 0 6 7067 10902 9694 -21367 2 2 0 6 6276 7643 10880 -21368 2 2 0 6 3739 10907 6613 -21369 2 2 0 6 6688 11133 10594 -21370 2 2 0 6 7343 10748 10975 -21371 2 2 0 6 5756 10889 10067 -21372 2 2 0 6 5676 10908 6209 -21373 2 2 0 6 5073 10897 10914 -21374 2 2 0 6 5052 6647 10913 -21375 2 2 0 6 3631 9506 11115 -21376 2 2 0 6 6078 11244 11084 -21377 2 2 0 6 4121 10853 10254 -21378 2 2 0 6 11116 11251 6705 -21379 2 2 0 6 7839 11079 7846 -21380 2 2 0 6 3768 11078 6027 -21381 2 2 0 6 8257 8256 10912 -21382 2 2 0 6 6471 10775 10899 -21383 2 2 0 6 5959 10885 10795 -21384 2 2 0 6 5878 9887 11103 -21385 2 2 0 6 8597 8598 11114 -21386 2 2 0 6 1825 1913 10921 -21387 2 2 0 6 5908 10909 10374 -21388 2 2 0 6 6631 10923 10049 -21389 2 2 0 6 8317 10931 10877 -21390 2 2 0 6 6611 10812 10542 -21391 2 2 0 6 9000 9064 11117 -21392 2 2 0 6 5087 6026 11067 -21393 2 2 0 6 6977 7836 11179 -21394 2 2 0 6 8159 11075 11088 -21395 2 2 0 6 6090 10801 11200 -21396 2 2 0 6 6386 11062 8217 -21397 2 2 0 6 6030 11005 10972 -21398 2 2 0 6 6001 6002 10918 -21399 2 2 0 6 6103 11036 7251 -21400 2 2 0 6 8340 10882 10881 -21401 2 2 0 6 7321 11128 7322 -21402 2 2 0 6 6730 6838 11123 -21403 2 2 0 6 10041 10156 11074 -21404 2 2 0 6 5718 10915 6338 -21405 2 2 0 6 5073 10914 5074 -21406 2 2 0 6 6644 6645 11171 -21407 2 2 0 6 6572 11056 10051 -21408 2 2 0 6 6030 6112 11005 -21409 2 2 0 6 6700 8011 11144 -21410 2 2 0 6 8212 10932 10926 -21411 2 2 0 6 3342 10928 7006 -21412 2 2 0 6 5960 10795 10747 -21413 2 2 0 6 4400 10777 10755 -21414 2 2 0 6 2621 11136 9548 -21415 2 2 0 6 1772 5760 11125 -21416 2 2 0 6 4876 11155 10584 -21417 2 2 0 6 7144 11074 10156 -21418 2 2 0 6 7869 9113 10981 -21419 2 2 0 6 6002 10912 10918 -21420 2 2 0 6 6677 11159 9152 -21421 2 2 0 6 633 10920 6020 -21422 2 2 0 6 8697 9581 10919 -21423 2 2 0 6 3227 11110 4240 -21424 2 2 0 6 3001 3760 11110 -21425 2 2 0 6 6043 7802 11165 -21426 2 2 0 6 6084 10776 11190 -21427 2 2 0 6 7591 11141 11130 -21428 2 2 0 6 5997 10874 10842 -21429 2 2 0 6 3658 8445 10947 -21430 2 2 0 6 7777 7778 10955 -21431 2 2 0 6 6631 7870 10940 -21432 2 2 0 6 3346 10838 10578 -21433 2 2 0 6 1705 11134 1706 -21434 2 2 0 6 6578 11139 6579 -21435 2 2 0 6 4932 4934 11119 -21436 2 2 0 6 6020 11161 9073 -21437 2 2 0 6 6698 11206 10955 -21438 2 2 0 6 1342 10935 1344 -21439 2 2 0 6 2402 11136 2621 -21440 2 2 0 6 4562 10929 6666 -21441 2 2 0 6 7738 10851 10843 -21442 2 2 0 6 675 9152 11159 -21443 2 2 0 6 8868 10925 6659 -21444 2 2 0 6 670 11130 673 -21445 2 2 0 6 5062 6661 10933 -21446 2 2 0 6 2401 10932 9839 -21447 2 2 0 6 4134 10936 4707 -21448 2 2 0 6 6315 10926 7204 -21449 2 2 0 6 4763 5194 11095 -21450 2 2 0 6 1872 11125 1967 -21451 2 2 0 6 1519 1785 11158 -21452 2 2 0 6 1912 1971 10941 -21453 2 2 0 6 2805 3234 11162 -21454 2 2 0 6 8257 10912 10889 -21455 2 2 0 6 1965 1967 11127 -21456 2 2 0 6 6 7 11126 -21457 2 2 0 6 5998 10939 7589 -21458 2 2 0 6 2933 3751 11142 -21459 2 2 0 6 4184 9551 10930 -21460 2 2 0 6 6000 10944 10913 -21461 2 2 0 6 6059 8696 11106 -21462 2 2 0 6 5731 9586 10916 -21463 2 2 0 6 5091 6668 11075 -21464 2 2 0 6 6673 11023 10775 -21465 2 2 0 6 6678 10959 10939 -21466 2 2 0 6 4945 10934 9614 -21467 2 2 0 6 5828 10927 6760 -21468 2 2 0 6 1683 10946 1690 -21469 2 2 0 6 2152 10787 10763 -21470 2 2 0 6 8346 10869 10859 -21471 2 2 0 6 7351 8753 11141 -21472 2 2 0 6 7103 10949 8026 -21473 2 2 0 6 1709 11147 1710 -21474 2 2 0 6 4169 4552 10948 -21475 2 2 0 6 5049 5050 10942 -21476 2 2 0 6 1701 11098 11104 -21477 2 2 0 6 8363 11035 10974 -21478 2 2 0 6 6647 10850 10913 -21479 2 2 0 6 627 10956 8885 -21480 2 2 0 6 2065 11167 2066 -21481 2 2 0 6 4562 10950 10929 -21482 2 2 0 6 5229 6420 11149 -21483 2 2 0 6 8349 10891 10876 -21484 2 2 0 6 6622 10711 10937 -21485 2 2 0 6 5062 10933 10953 -21486 2 2 0 6 8134 10922 10020 -21487 2 2 0 6 3215 11173 4124 -21488 2 2 0 6 8582 10957 8584 -21489 2 2 0 6 9856 11025 10786 -21490 2 2 0 6 4541 10775 11023 -21491 2 2 0 6 1750 1560 10938 -21492 2 2 0 6 5116 10965 10944 -21493 2 2 0 6 1728 11146 3592 -21494 2 2 0 6 4562 9436 10950 -21495 2 2 0 6 5009 10877 10809 -21496 2 2 0 6 2566 8600 11137 -21497 2 2 0 6 9505 11108 9506 -21498 2 2 0 6 6699 11189 10776 -21499 2 2 0 6 5116 10944 6000 -21500 2 2 0 6 4103 5062 10953 -21501 2 2 0 6 6676 11162 11168 -21502 2 2 0 6 6701 11204 10801 -21503 2 2 0 6 5038 11154 5246 -21504 2 2 0 6 6004 7387 10951 -21505 2 2 0 6 7365 11057 11121 -21506 2 2 0 6 3653 11107 9751 -21507 2 2 0 6 3763 11113 9433 -21508 2 2 0 6 2619 11138 2938 -21509 2 2 0 6 8415 10551 11164 -21510 2 2 0 6 8363 11037 8365 -21511 2 2 0 6 8923 11160 10945 -21512 2 2 0 6 4195 4779 10958 -21513 2 2 0 6 1558 10970 10938 -21514 2 2 0 6 7646 10952 9280 -21515 2 2 0 6 4788 10954 4790 -21516 2 2 0 6 6056 7105 11151 -21517 2 2 0 6 5791 9682 11115 -21518 2 2 0 6 645 10959 646 -21519 2 2 0 6 6023 10960 10945 -21520 2 2 0 6 677 11159 1753 -21521 2 2 0 6 6039 11168 6041 -21522 2 2 0 6 6240 11163 7948 -21523 2 2 0 6 6694 11180 9611 -21524 2 2 0 6 2210 2657 10964 -21525 2 2 0 6 6435 10982 10969 -21526 2 2 0 6 5710 11131 5711 -21527 2 2 0 6 6266 7101 10967 -21528 2 2 0 6 6081 11190 7651 -21529 2 2 0 6 6435 10969 9889 -21530 2 2 0 6 4558 10961 6003 -21531 2 2 0 6 5964 10870 10814 -21532 2 2 0 6 6023 10945 10056 -21533 2 2 0 6 9073 11161 10948 -21534 2 2 0 6 6023 8962 10960 -21535 2 2 0 6 5116 6718 10965 -21536 2 2 0 6 6672 11099 11091 -21537 2 2 0 6 7251 11036 10973 -21538 2 2 0 6 3381 11285 11194 -21539 2 2 0 6 6243 11140 10461 -21540 2 2 0 6 3144 3147 10962 -21541 2 2 0 6 6088 11200 6699 -21542 2 2 0 6 8416 10584 11155 -21543 2 2 0 6 3140 3143 10968 -21544 2 2 0 6 619 11152 11160 -21545 2 2 0 6 9562 10249 11112 -21546 2 2 0 6 6279 11187 9269 -21547 2 2 0 6 6091 6702 11174 -21548 2 2 0 6 6279 7106 11246 -21549 2 2 0 6 612 11100 611 -21550 2 2 0 6 3212 9433 11156 -21551 2 2 0 6 5926 10042 10963 -21552 2 2 0 6 7240 10937 10408 -21553 2 2 0 6 6689 11067 10816 -21554 2 2 0 6 5707 10974 9437 -21555 2 2 0 6 8095 11120 8094 -21556 2 2 0 6 807 10461 11140 -21557 2 2 0 6 5418 6465 10966 -21558 2 2 0 6 6684 10716 11087 -21559 2 2 0 6 7146 9420 11000 -21560 2 2 0 6 5102 11178 6705 -21561 2 2 0 6 6009 9330 10973 -21562 2 2 0 6 3932 10924 10917 -21563 2 2 0 6 5904 6471 10975 -21564 2 2 0 6 10963 10042 10986 -21565 2 2 0 6 6239 10643 11170 -21566 2 2 0 6 6465 10979 10966 -21567 2 2 0 6 2373 2415 10978 -21568 2 2 0 6 649 10980 8617 -21569 2 2 0 6 6678 6679 10980 -21570 2 2 0 6 6465 7823 10979 -21571 2 2 0 6 9179 11181 9534 -21572 2 2 0 6 6186 11149 8064 -21573 2 2 0 6 8 9 11192 -21574 2 2 0 6 8794 11170 10643 -21575 2 2 0 6 11105 11118 8577 -21576 2 2 0 6 6679 11004 10980 -21577 2 2 0 6 9433 11113 11156 -21578 2 2 0 6 1362 10985 1363 -21579 2 2 0 6 6072 11233 11229 -21580 2 2 0 6 3410 11051 11066 -21581 2 2 0 6 8361 8364 11035 -21582 2 2 0 6 6435 7112 10982 -21583 2 2 0 6 6657 11020 7488 -21584 2 2 0 6 1898 11198 1984 -21585 2 2 0 6 6677 11165 11159 -21586 2 2 0 6 1723 1773 11182 -21587 2 2 0 6 2415 2477 10984 -21588 2 2 0 6 6657 11022 11020 -21589 2 2 0 6 3212 11156 11174 -21590 2 2 0 6 2403 11185 2627 -21591 2 2 0 6 10947 8445 10976 -21592 2 2 0 6 1396 6412 10977 -21593 2 2 0 6 834 3714 10987 -21594 2 2 0 6 10980 11004 8617 -21595 2 2 0 6 619 11160 8923 -21596 2 2 0 6 6704 11191 11199 -21597 2 2 0 6 4512 9869 10972 -21598 2 2 0 6 6666 10929 10914 -21599 2 2 0 6 8445 9608 10976 -21600 2 2 0 6 6025 10991 6395 -21601 2 2 0 6 7654 10808 10840 -21602 2 2 0 6 7199 10995 7920 -21603 2 2 0 6 10272 11180 11094 -21604 2 2 0 6 5992 6571 10989 -21605 2 2 0 6 2415 10984 10978 -21606 2 2 0 6 1326 10997 1328 -21607 2 2 0 6 8317 10508 10931 -21608 2 2 0 6 7365 10510 11057 -21609 2 2 0 6 6054 6704 11195 -21610 2 2 0 6 8362 8736 10996 -21611 2 2 0 6 5050 11024 10942 -21612 2 2 0 6 5674 11029 10060 -21613 2 2 0 6 5097 11233 6072 -21614 2 2 0 6 1552 10983 1554 -21615 2 2 0 6 6096 11087 10716 -21616 2 2 0 6 7182 11169 9769 -21617 2 2 0 6 708 11191 1179 -21618 2 2 0 6 1677 10999 3551 -21619 2 2 0 6 619 620 11152 -21620 2 2 0 6 7146 11000 8388 -21621 2 2 0 6 5245 5246 11194 -21622 2 2 0 6 611 11105 8577 -21623 2 2 0 6 5037 10286 11154 -21624 2 2 0 6 5267 6190 10994 -21625 2 2 0 6 6661 10900 10933 -21626 2 2 0 6 6675 11010 11016 -21627 2 2 0 6 6679 6681 11004 -21628 2 2 0 6 3751 8314 11036 -21629 2 2 0 6 6013 10986 10042 -21630 2 2 0 6 11005 11028 9263 -21631 2 2 0 6 1359 1349 10992 -21632 2 2 0 6 5098 10272 11094 -21633 2 2 0 6 7842 11080 11079 -21634 2 2 0 6 7837 7846 11179 -21635 2 2 0 6 6326 11001 6475 -21636 2 2 0 6 6681 11026 11004 -21637 2 2 0 6 1766 11190 10776 -21638 2 2 0 6 6504 11166 9860 -21639 2 2 0 6 6414 8617 11004 -21640 2 2 0 6 8270 11003 8735 -21641 2 2 0 6 6637 10993 9997 -21642 2 2 0 6 6061 11176 10179 -21643 2 2 0 6 701 11199 705 -21644 2 2 0 6 3924 6403 11212 -21645 2 2 0 6 828 836 11002 -21646 2 2 0 6 3573 11217 8194 -21647 2 2 0 6 8254 10060 11029 -21648 2 2 0 6 4512 11005 9263 -21649 2 2 0 6 4512 10972 11005 -21650 2 2 0 6 1726 10593 11146 -21651 2 2 0 6 2312 11220 11225 -21652 2 2 0 6 6094 11208 6701 -21653 2 2 0 6 6685 11259 11263 -21654 2 2 0 6 8786 11242 11171 -21655 2 2 0 6 6414 11004 11026 -21656 2 2 0 6 6502 11006 7122 -21657 2 2 0 6 716 11203 720 -21658 2 2 0 6 7325 11146 10593 -21659 2 2 0 6 1724 1766 11189 -21660 2 2 0 6 7118 7348 11007 -21661 2 2 0 6 6530 10417 11148 -21662 2 2 0 6 5724 10844 11081 -21663 2 2 0 6 784 789 11008 -21664 2 2 0 6 611 11100 11105 -21665 2 2 0 6 789 791 11011 -21666 2 2 0 6 10408 10937 10711 -21667 2 2 0 6 6026 10816 11067 -21668 2 2 0 6 5026 11057 10510 -21669 2 2 0 6 7642 11081 10844 -21670 2 2 0 6 6229 7116 11015 -21671 2 2 0 6 7325 11128 11146 -21672 2 2 0 6 789 11011 11008 -21673 2 2 0 6 797 801 11013 -21674 2 2 0 6 2935 11200 10801 -21675 2 2 0 6 4104 8577 11118 -21676 2 2 0 6 7488 11020 11010 -21677 2 2 0 6 6028 8942 11014 -21678 2 2 0 6 5296 11214 5765 -21679 2 2 0 6 810 11017 11018 -21680 2 2 0 6 2692 2393 11205 -21681 2 2 0 6 814 3471 11017 -21682 2 2 0 6 5669 11193 6697 -21683 2 2 0 6 5043 5044 11012 -21684 2 2 0 6 6191 6501 11009 -21685 2 2 0 6 6681 6683 11026 -21686 2 2 0 6 6097 11259 6685 -21687 2 2 0 6 6675 7488 11010 -21688 2 2 0 6 5707 10943 11037 -21689 2 2 0 6 6065 11186 11181 -21690 2 2 0 6 9104 11219 11216 -21691 2 2 0 6 8193 8782 11216 -21692 2 2 0 6 2625 2780 11019 -21693 2 2 0 6 7676 11045 11049 -21694 2 2 0 6 1705 11124 11134 -21695 2 2 0 6 8851 9701 10998 -21696 2 2 0 6 6077 6706 11207 -21697 2 2 0 6 5767 11236 5769 -21698 2 2 0 6 727 11211 731 -21699 2 2 0 6 6414 11026 9618 -21700 2 2 0 6 5611 9326 11021 -21701 2 2 0 6 6673 6674 11023 -21702 2 2 0 6 2829 11027 3149 -21703 2 2 0 6 1709 11144 11147 -21704 2 2 0 6 2780 2999 11030 -21705 2 2 0 6 5050 5759 11024 -21706 2 2 0 6 11 12 11226 -21707 2 2 0 6 6576 10990 10454 -21708 2 2 0 6 712 11213 716 -21709 2 2 0 6 4541 11034 3983 -21710 2 2 0 6 6656 11022 6657 -21711 2 2 0 6 6078 11084 11092 -21712 2 2 0 6 6696 11066 11051 -21713 2 2 0 6 4456 9208 11215 -21714 2 2 0 6 6501 11033 11009 -21715 2 2 0 6 6656 10976 11022 -21716 2 2 0 6 2780 11030 11019 -21717 2 2 0 6 5759 11032 11024 -21718 2 2 0 6 5066 11230 9411 -21719 2 2 0 6 6501 7121 11033 -21720 2 2 0 6 4541 11023 11034 -21721 2 2 0 6 1713 11041 1717 -21722 2 2 0 6 2077 11065 11059 -21723 2 2 0 6 5098 11094 8095 -21724 2 2 0 6 747 11219 1281 -21725 2 2 0 6 1281 11219 9104 -21726 2 2 0 6 6504 7141 11221 -21727 2 2 0 6 745 3573 11219 -21728 2 2 0 6 743 11217 3573 -21729 2 2 0 6 2401 10926 10932 -21730 2 2 0 6 5759 6860 11032 -21731 2 2 0 6 6060 11220 6706 -21732 2 2 0 6 4104 11121 6472 -21733 2 2 0 6 6702 11185 11174 -21734 2 2 0 6 6113 9263 11028 -21735 2 2 0 6 6183 10791 11131 -21736 2 2 0 6 3246 11025 9856 -21737 2 2 0 6 8481 9170 11224 -21738 2 2 0 6 6499 11040 6500 -21739 2 2 0 6 2771 11129 11120 -21740 2 2 0 6 3410 11066 3443 -21741 2 2 0 6 6070 9623 11197 -21742 2 2 0 6 7711 11188 10012 -21743 2 2 0 6 13 14 11245 -21744 2 2 0 6 6047 6277 11042 -21745 2 2 0 6 6696 11064 8725 -21746 2 2 0 6 3714 10974 11035 -21747 2 2 0 6 8195 11211 11234 -21748 2 2 0 6 5094 9618 11038 -21749 2 2 0 6 1202 11090 11073 -21750 2 2 0 6 6199 7160 11031 -21751 2 2 0 6 8481 9411 11230 -21752 2 2 0 6 3246 11045 11025 -21753 2 2 0 6 6695 11038 11052 -21754 2 2 0 6 6038 11044 11055 -21755 2 2 0 6 3759 11237 6078 -21756 2 2 0 6 6036 11046 6103 -21757 2 2 0 6 724 2312 11234 -21758 2 2 0 6 9618 11026 11038 -21759 2 2 0 6 2240 2935 11204 -21760 2 2 0 6 2254 11171 10253 -21761 2 2 0 6 8481 11224 9411 -21762 2 2 0 6 8191 8192 11225 -21763 2 2 0 6 2508 2683 11243 -21764 2 2 0 6 3039 11050 4295 -21765 2 2 0 6 1773 11041 11048 -21766 2 2 0 6 5747 9993 11229 -21767 2 2 0 6 6683 11038 11026 -21768 2 2 0 6 1179 11197 11207 -21769 2 2 0 6 6038 8851 11044 -21770 2 2 0 6 2660 3371 11047 -21771 2 2 0 6 1011 8479 11248 -21772 2 2 0 6 2627 11043 2806 -21773 2 2 0 6 6735 11188 11202 -21774 2 2 0 6 3246 3247 11045 -21775 2 2 0 6 6505 11061 11053 -21776 2 2 0 6 3176 11151 11158 -21777 2 2 0 6 20 7013 11297 -21778 2 2 0 6 6637 11039 10993 -21779 2 2 0 6 6026 7676 11049 -21780 2 2 0 6 6076 11142 11046 -21781 2 2 0 6 6637 7271 11039 -21782 2 2 0 6 8271 11018 11017 -21783 2 2 0 6 6038 11055 9857 -21784 2 2 0 6 5105 9136 11244 -21785 2 2 0 6 5244 11256 9487 -21786 2 2 0 6 3410 3411 11051 -21787 2 2 0 6 6003 11065 10562 -21788 2 2 0 6 8012 11048 11041 -21789 2 2 0 6 6021 11266 10713 -21790 2 2 0 6 4699 11054 5252 -21791 2 2 0 6 4171 10910 10943 -21792 2 2 0 6 6503 6505 11053 -21793 2 2 0 6 5026 10887 11057 -21794 2 2 0 6 3806 11251 4603 -21795 2 2 0 6 7913 7915 11250 -21796 2 2 0 6 6683 7586 11052 -21797 2 2 0 6 9127 11227 11240 -21798 2 2 0 6 1773 11176 11182 -21799 2 2 0 6 6044 11218 7148 -21800 2 2 0 6 8851 10998 11044 -21801 2 2 0 6 6012 10179 11048 -21802 2 2 0 6 4144 11058 6044 -21803 2 2 0 6 6505 9062 11061 -21804 2 2 0 6 6697 11193 10684 -21805 2 2 0 6 6031 11060 6033 -21806 2 2 0 6 7765 11102 10938 -21807 2 2 0 6 6080 6705 11247 -21808 2 2 0 6 6702 11096 11043 -21809 2 2 0 6 2062 2077 11059 -21810 2 2 0 6 2448 11254 6097 -21811 2 2 0 6 7137 10051 11056 -21812 2 2 0 6 6102 7091 11223 -21813 2 2 0 6 5643 11252 7915 -21814 2 2 0 6 645 10939 10959 -21815 2 2 0 6 6665 10863 11063 -21816 2 2 0 6 4104 11118 11121 -21817 2 2 0 6 6078 11237 11244 -21818 2 2 0 6 5071 6665 11063 -21819 2 2 0 6 6703 11232 11132 -21820 2 2 0 6 3213 11043 11096 -21821 2 2 0 6 5216 11062 7059 -21822 2 2 0 6 2179 11085 11132 -21823 2 2 0 6 3424 11064 11051 -21824 2 2 0 6 757 11253 759 -21825 2 2 0 6 4057 11099 8592 -21826 2 2 0 6 6695 11066 6696 -21827 2 2 0 6 2771 8592 11129 -21828 2 2 0 6 1750 10938 11102 -21829 2 2 0 6 6648 7267 11069 -21830 2 2 0 6 7914 11241 10078 -21831 2 2 0 6 1701 11089 11098 -21832 2 2 0 6 8205 9127 11240 -21833 2 2 0 6 1705 11104 11124 -21834 2 2 0 6 2071 11227 9127 -21835 2 2 0 6 6756 11267 11269 -21836 2 2 0 6 10249 11276 11112 -21837 2 2 0 6 901 11235 8253 -21838 2 2 0 6 3146 11068 3301 -21839 2 2 0 6 6675 11016 10779 -21840 2 2 0 6 901 10227 11235 -21841 2 2 0 6 1709 11134 11144 -21842 2 2 0 6 3145 11139 11068 -21843 2 2 0 6 3424 3425 11071 -21844 2 2 0 6 1766 10776 11189 -21845 2 2 0 6 6588 7163 11070 -21846 2 2 0 6 3790 3811 11264 -21847 2 2 0 6 8314 10973 11036 -21848 2 2 0 6 5096 6072 11072 -21849 2 2 0 6 5087 11067 5724 -21850 2 2 0 6 5091 11075 5092 -21851 2 2 0 6 61 62 11261 -21852 2 2 0 6 7983 10955 11206 -21853 2 2 0 6 11087 11113 9277 -21854 2 2 0 6 3213 11210 7998 -21855 2 2 0 6 7321 11111 11128 -21856 2 2 0 6 6050 11222 7157 -21857 2 2 0 6 4120 9001 11076 -21858 2 2 0 6 7512 9788 11263 -21859 2 2 0 6 3142 11077 3145 -21860 2 2 0 6 7478 11073 7479 -21861 2 2 0 6 4240 11123 11143 -21862 2 2 0 6 6684 11087 9277 -21863 2 2 0 6 1011 11250 11253 -21864 2 2 0 6 11241 11248 8480 -21865 2 2 0 6 7915 11252 10373 -21866 2 2 0 6 1713 11147 11041 -21867 2 2 0 6 3807 7998 11228 -21868 2 2 0 6 6406 11082 9141 -21869 2 2 0 6 2938 11078 3768 -21870 2 2 0 6 7839 7842 11079 -21871 2 2 0 6 5533 10041 11074 -21872 2 2 0 6 6014 11092 11084 -21873 2 2 0 6 3267 11257 3268 -21874 2 2 0 6 6053 11085 6401 -21875 2 2 0 6 1697 9021 11081 -21876 2 2 0 6 4317 8159 11088 -21877 2 2 0 6 5508 11083 6062 -21878 2 2 0 6 2935 10801 11204 -21879 2 2 0 6 3751 11046 11142 -21880 2 2 0 6 5607 11084 9136 -21881 2 2 0 6 2124 11132 2134 -21882 2 2 0 6 2134 11232 2239 -21883 2 2 0 6 6572 11167 11056 -21884 2 2 0 6 1698 11089 1701 -21885 2 2 0 6 8592 11099 11129 -21886 2 2 0 6 6694 11184 11180 -21887 2 2 0 6 2077 10562 11065 -21888 2 2 0 6 6693 11098 7641 -21889 2 2 0 6 4695 11258 8964 -21890 2 2 0 6 8096 11120 11129 -21891 2 2 0 6 6062 11083 11093 -21892 2 2 0 6 5195 11086 7010 -21893 2 2 0 6 8683 10713 11266 -21894 2 2 0 6 4601 11153 11242 -21895 2 2 0 6 1734 11097 1745 -21896 2 2 0 6 3807 11228 11247 -21897 2 2 0 6 6062 11093 9064 -21898 2 2 0 6 6035 11118 11105 -21899 2 2 0 6 8012 11041 11147 -21900 2 2 0 6 6578 11068 11139 -21901 2 2 0 6 2065 11056 11167 -21902 2 2 0 6 6087 11096 6089 -21903 2 2 0 6 1922 11112 11108 -21904 2 2 0 6 2239 11231 8598 -21905 2 2 0 6 10145 11166 11221 -21906 2 2 0 6 6034 11099 6672 -21907 2 2 0 6 5194 7100 11095 -21908 2 2 0 6 7998 11210 11228 -21909 2 2 0 6 6868 11275 7509 -21910 2 2 0 6 6035 11105 8962 -21911 2 2 0 6 1702 11104 1705 -21912 2 2 0 6 5533 11091 8669 -21913 2 2 0 6 6027 11094 11180 -21914 2 2 0 6 5533 11074 11091 -21915 2 2 0 6 1766 11182 11190 -21916 2 2 0 6 4928 11101 6055 -21917 2 2 0 6 2239 11232 11231 -21918 2 2 0 6 3628 11249 8213 -21919 2 2 0 6 8095 11138 11120 -21920 2 2 0 6 6099 11267 6756 -21921 2 2 0 6 1922 9562 11112 -21922 2 2 0 6 6027 11078 11094 -21923 2 2 0 6 8597 11114 8599 -21924 2 2 0 6 6059 11106 7682 -21925 2 2 0 6 5256 11271 7065 -21926 2 2 0 6 1743 9573 11109 -21927 2 2 0 6 8199 11103 9887 -21928 2 2 0 6 3001 11110 3227 -21929 2 2 0 6 1922 11108 9505 -21930 2 2 0 6 6034 8096 11129 -21931 2 2 0 6 669 11117 11130 -21932 2 2 0 6 5760 9751 11107 -21933 2 2 0 6 3763 9277 11113 -21934 2 2 0 6 8962 11105 11100 -21935 2 2 0 6 1772 11125 1872 -21936 2 2 0 6 6326 11212 11001 -21937 2 2 0 6 401 11289 11294 -21938 2 2 0 6 7322 11128 7325 -21939 2 2 0 6 6035 6063 11118 -21940 2 2 0 6 4932 11119 5261 -21941 2 2 0 6 6063 7365 11121 -21942 2 2 0 6 3592 11111 9573 -21943 2 2 0 6 6730 11123 7142 -21944 2 2 0 6 669 9000 11117 -21945 2 2 0 6 6 11126 563 -21946 2 2 0 6 1706 11134 1709 -21947 2 2 0 6 6403 11001 11212 -21948 2 2 0 6 4603 11116 5109 -21949 2 2 0 6 2935 11198 11200 -21950 2 2 0 6 6104 11276 6105 -21951 2 2 0 6 8096 8094 11120 -21952 2 2 0 6 6076 11237 11142 -21953 2 2 0 6 6034 11129 11099 -21954 2 2 0 6 6703 11132 11085 -21955 2 2 0 6 6045 6700 11124 -21956 2 2 0 6 1965 11127 2254 -21957 2 2 0 6 669 11130 670 -21958 2 2 0 6 2621 11135 8199 -21959 2 2 0 6 6686 11133 6688 -21960 2 2 0 6 3631 11115 9682 -21961 2 2 0 6 6686 6687 11122 -21962 2 2 0 6 9573 11111 11109 -21963 2 2 0 6 98 99 11272 -21964 2 2 0 6 2402 2626 11136 -21965 2 2 0 6 2934 11205 11208 -21966 2 2 0 6 7823 11160 11152 -21967 2 2 0 6 2566 11137 9028 -21968 2 2 0 6 2619 2771 11138 -21969 2 2 0 6 6705 11251 11247 -21970 2 2 0 6 6579 11139 7228 -21971 2 2 0 6 2934 11209 9787 -21972 2 2 0 6 6105 11277 8133 -21973 2 2 0 6 3213 11096 11210 -21974 2 2 0 6 6057 11151 11157 -21975 2 2 0 6 6838 11143 11123 -21976 2 2 0 6 6105 11276 11277 -21977 2 2 0 6 11116 11178 6707 -21978 2 2 0 6 5710 6183 11131 -21979 2 2 0 6 8753 11145 11141 -21980 2 2 0 6 6686 11122 11133 -21981 2 2 0 6 7351 11141 7591 -21982 2 2 0 6 2933 11142 9220 -21983 2 2 0 6 1710 11147 1713 -21984 2 2 0 6 6693 11104 11098 -21985 2 2 0 6 2559 11274 2561 -21986 2 2 0 6 6095 11156 11113 -21987 2 2 0 6 7802 11172 11165 -21988 2 2 0 6 8011 8012 11144 -21989 2 2 0 6 673 11145 9152 -21990 2 2 0 6 1726 11146 1728 -21991 2 2 0 6 7106 10977 11246 -21992 2 2 0 6 8786 8785 11242 -21993 2 2 0 6 6056 11151 6057 -21994 2 2 0 6 8248 11268 11289 -21995 2 2 0 6 5229 11149 6186 -21996 2 2 0 6 6057 11157 8537 -21997 2 2 0 6 6097 11254 11259 -21998 2 2 0 6 3057 11223 11243 -21999 2 2 0 6 6530 11148 7077 -22000 2 2 0 6 675 11159 677 -22001 2 2 0 6 6243 10297 11140 -22002 2 2 0 6 9640 11187 11246 -22003 2 2 0 6 1785 3176 11158 -22004 2 2 0 6 6643 11150 7182 -22005 2 2 0 6 6412 11246 10977 -22006 2 2 0 6 11116 6705 11178 -22007 2 2 0 6 8199 11135 11103 -22008 2 2 0 6 6095 6093 11156 -22009 2 2 0 6 5037 11154 5038 -22010 2 2 0 6 8537 11157 11164 -22011 2 2 0 6 5022 11161 7156 -22012 2 2 0 6 7823 7824 11160 -22013 2 2 0 6 6643 6644 11153 -22014 2 2 0 6 8489 11298 11308 -22015 2 2 0 6 6039 6676 11168 -22016 2 2 0 6 6093 11174 11156 -22017 2 2 0 6 6063 11121 11118 -22018 2 2 0 6 3216 8133 11279 -22019 2 2 0 6 3811 11267 11264 -22020 2 2 0 6 6696 11051 11064 -22021 2 2 0 6 8537 11164 9453 -22022 2 2 0 6 2066 11167 2071 -22023 2 2 0 6 6043 11165 6677 -22024 2 2 0 6 4690 11265 10251 -22025 2 2 0 6 5252 11054 11218 -22026 2 2 0 6 11001 11166 10145 -22027 2 2 0 6 6683 11052 11038 -22028 2 2 0 6 7948 11163 7949 -22029 2 2 0 6 2626 2805 11162 -22030 2 2 0 6 6643 11153 11150 -22031 2 2 0 6 9208 11072 11215 -22032 2 2 0 6 4228 9769 11169 -22033 2 2 0 6 7148 11218 11054 -22034 2 2 0 6 1753 11172 9195 -22035 2 2 0 6 8133 11277 11279 -22036 2 2 0 6 4120 11076 11222 -22037 2 2 0 6 2626 11162 11136 -22038 2 2 0 6 6239 11170 10610 -22039 2 2 0 6 4693 5912 11271 -22040 2 2 0 6 11078 8095 11094 -22041 2 2 0 6 7157 11222 11076 -22042 2 2 0 6 6091 11174 6093 -22043 2 2 0 6 7141 11047 11221 -22044 2 2 0 6 3215 3216 11173 -22045 2 2 0 6 7836 7837 11179 -22046 2 2 0 6 6061 7651 11176 -22047 2 2 0 6 517 8161 11280 -22048 2 2 0 6 6041 11168 11177 -22049 2 2 0 6 4124 11173 11273 -22050 2 2 0 6 6087 11210 11096 -22051 2 2 0 6 4127 11184 11196 -22052 2 2 0 6 3371 11221 11047 -22053 2 2 0 6 4449 9195 11175 -22054 2 2 0 6 4214 11178 5102 -22055 2 2 0 6 4449 11175 11181 -22056 2 2 0 6 2602 9534 11186 -22057 2 2 0 6 9195 11172 11175 -22058 2 2 0 6 4876 10551 11155 -22059 2 2 0 6 2602 11186 11195 -22060 2 2 0 6 4449 11181 9179 -22061 2 2 0 6 1750 11102 10848 -22062 2 2 0 6 3234 9901 11177 -22063 2 2 0 6 4262 11188 11183 -22064 2 2 0 6 6645 10253 11171 -22065 2 2 0 6 1723 11182 1766 -22066 2 2 0 6 6700 11134 11124 -22067 2 2 0 6 6704 11199 11195 -22068 2 2 0 6 9640 10967 11187 -22069 2 2 0 6 6070 11197 6704 -22070 2 2 0 6 6164 7065 11278 -22071 2 2 0 6 4127 6027 11184 -22072 2 2 0 6 1724 11189 1898 -22073 2 2 0 6 9901 11183 11177 -22074 2 2 0 6 6065 9087 11186 -22075 2 2 0 6 8012 11147 11144 -22076 2 2 0 6 6685 11270 10716 -22077 2 2 0 6 4262 10012 11188 -22078 2 2 0 6 9611 11180 10272 -22079 2 2 0 6 6081 6084 11190 -22080 2 2 0 6 4127 11196 9714 -22081 2 2 0 6 9087 11195 11186 -22082 2 2 0 6 4262 11183 9901 -22083 2 2 0 6 705 11191 708 -22084 2 2 0 6 6756 11269 6770 -22085 2 2 0 6 6055 11101 11231 -22086 2 2 0 6 2403 3212 11185 -22087 2 2 0 6 8962 11100 10960 -22088 2 2 0 6 8598 11231 11101 -22089 2 2 0 6 6054 11195 9087 -22090 2 2 0 6 5245 11194 6994 -22091 2 2 0 6 5669 6100 11193 -22092 2 2 0 6 8 11192 491 -22093 2 2 0 6 1179 11191 11197 -22094 2 2 0 6 6104 11112 11276 -22095 2 2 0 6 1984 11198 2935 -22096 2 2 0 6 9 11201 11192 -22097 2 2 0 6 9220 11142 11237 -22098 2 2 0 6 701 2602 11199 -22099 2 2 0 6 6072 11215 11072 -22100 2 2 0 6 3212 11174 11185 -22101 2 2 0 6 6706 11213 11207 -22102 2 2 0 6 6088 6090 11200 -22103 2 2 0 6 2312 11225 11234 -22104 2 2 0 6 7711 7712 11202 -22105 2 2 0 6 720 11203 2312 -22106 2 2 0 6 6100 11223 11193 -22107 2 2 0 6 2692 11205 2934 -22108 2 2 0 6 6320 11273 6319 -22109 2 2 0 6 85 86 11282 -22110 2 2 0 6 6697 11206 6698 -22111 2 2 0 6 4124 11286 9210 -22112 2 2 0 6 6077 11207 9623 -22113 2 2 0 6 2240 11204 2393 -22114 2 2 0 6 7823 11152 10979 -22115 2 2 0 6 2771 11120 11138 -22116 2 2 0 6 3592 11128 11111 -22117 2 2 0 6 5097 8205 11240 -22118 2 2 0 6 6706 11220 11203 -22119 2 2 0 6 6326 7130 11212 -22120 2 2 0 6 731 11211 741 -22121 2 2 0 6 712 1179 11213 -22122 2 2 0 6 6094 6096 11208 -22123 2 2 0 6 6085 11210 6087 -22124 2 2 0 6 82 83 11283 -22125 2 2 0 6 437 7741 11284 -22126 2 2 0 6 5765 11214 6978 -22127 2 2 0 6 741 11211 11217 -22128 2 2 0 6 8782 9104 11216 -22129 2 2 0 6 741 11217 743 -22130 2 2 0 6 6110 11268 10641 -22131 2 2 0 6 6707 11178 11264 -22132 2 2 0 6 4456 11215 9993 -22133 2 2 0 6 5252 11218 7153 -22134 2 2 0 6 745 11219 747 -22135 2 2 0 6 7651 11182 11176 -22136 2 2 0 6 6075 11240 11227 -22137 2 2 0 6 6060 8191 11220 -22138 2 2 0 6 9210 11286 11288 -22139 2 2 0 6 6075 11227 6572 -22140 2 2 0 6 8192 8195 11225 -22141 2 2 0 6 6073 11229 11233 -22142 2 2 0 6 4120 11222 9208 -22143 2 2 0 6 1281 11224 9170 -22144 2 2 0 6 11 11226 467 -22145 2 2 0 6 5747 11229 6073 -22146 2 2 0 6 6073 11233 6075 -22147 2 2 0 6 6100 6102 11223 -22148 2 2 0 6 5066 8580 11230 -22149 2 2 0 6 6692 11238 11235 -22150 2 2 0 6 6085 11228 11210 -22151 2 2 0 6 6083 11228 6085 -22152 2 2 0 6 3371 10145 11221 -22153 2 2 0 6 6083 11247 11228 -22154 2 2 0 6 6692 6691 11238 -22155 2 2 0 6 724 11234 727 -22156 2 2 0 6 5769 11236 6975 -22157 2 2 0 6 6055 11231 10033 -22158 2 2 0 6 6703 10033 11232 -22159 2 2 0 6 3759 9220 11237 -22160 2 2 0 6 8580 11241 11230 -22161 2 2 0 6 11231 11232 10033 -22162 2 2 0 6 6691 7021 11239 -22163 2 2 0 6 6708 11291 11292 -22164 2 2 0 6 13 11245 527 -22165 2 2 0 6 2683 3057 11243 -22166 2 2 0 6 5105 11244 6076 -22167 2 2 0 6 1011 11248 11250 -22168 2 2 0 6 4214 11264 11178 -22169 2 2 0 6 8580 10078 11241 -22170 2 2 0 6 6692 11235 10227 -22171 2 2 0 6 6083 6080 11247 -22172 2 2 0 6 6027 11180 11184 -22173 2 2 0 6 673 11141 11145 -22174 2 2 0 6 6412 9640 11246 -22175 2 2 0 6 8479 8480 11248 -22176 2 2 0 6 6076 11244 11237 -22177 2 2 0 6 6691 11239 11238 -22178 2 2 0 6 6107 9210 11288 -22179 2 2 0 6 6770 11269 11275 -22180 2 2 0 6 6082 11249 10083 -22181 2 2 0 6 6096 10716 11209 -22182 2 2 0 6 7913 11250 7914 -22183 2 2 0 6 34 35 11287 -22184 2 2 0 6 3806 3807 11251 -22185 2 2 0 6 5643 9023 11252 -22186 2 2 0 6 1753 11165 11172 -22187 2 2 0 6 757 1011 11253 -22188 2 2 0 6 9023 11255 11252 -22189 2 2 0 6 2448 8213 11254 -22190 2 2 0 6 6715 11281 10853 -22191 2 2 0 6 5244 6993 11256 -22192 2 2 0 6 5367 11263 11259 -22193 2 2 0 6 5367 7512 11263 -22194 2 2 0 6 6098 11255 9023 -22195 2 2 0 6 8377 11281 11298 -22196 2 2 0 6 3267 4132 11257 -22197 2 2 0 6 6098 11260 11255 -22198 2 2 0 6 5367 11259 6082 -22199 2 2 0 6 3811 11269 11267 -22200 2 2 0 6 3234 11177 11168 -22201 2 2 0 6 2934 11208 11209 -22202 2 2 0 6 6098 6106 11260 -22203 2 2 0 6 6107 11291 6708 -22204 2 2 0 6 62 401 11261 -22205 2 2 0 6 4132 6168 11262 -22206 2 2 0 6 3807 11247 11251 -22207 2 2 0 6 3790 11264 4214 -22208 2 2 0 6 4132 11262 11257 -22209 2 2 0 6 4695 9487 11258 -22210 2 2 0 6 532 11326 8143 -22211 2 2 0 6 6021 6222 11266 -22212 2 2 0 6 6704 11197 11191 -22213 2 2 0 6 5912 10251 11265 -22214 2 2 0 6 6099 6707 11267 -22215 2 2 0 6 2602 11195 11199 -22216 2 2 0 6 532 8629 11327 -22217 2 2 0 6 6082 11259 11254 -22218 2 2 0 6 27 28 11290 -22219 2 2 0 6 6107 11288 11291 -22220 2 2 0 6 6319 11273 11173 -22221 2 2 0 6 532 11327 11326 -22222 2 2 0 6 60 61 11292 -22223 2 2 0 6 468 11328 8629 -22224 2 2 0 6 8629 11328 11327 -22225 2 2 0 6 4124 11273 11286 -22226 2 2 0 6 1179 11207 11213 -22227 2 2 0 6 401 8247 11289 -22228 2 2 0 6 9787 11270 9788 -22229 2 2 0 6 2312 11203 11220 -22230 2 2 0 6 3811 10274 11269 -22231 2 2 0 6 6720 11329 11330 -22232 2 2 0 6 24 25 11293 -22233 2 2 0 6 468 11329 11328 -22234 2 2 0 6 448 11324 7939 -22235 2 2 0 6 6707 11264 11267 -22236 2 2 0 6 5911 10641 11268 -22237 2 2 0 6 8195 11234 11225 -22238 2 2 0 6 6644 11242 11153 -22239 2 2 0 6 448 11325 11324 -22240 2 2 0 6 4693 11271 5256 -22241 2 2 0 6 99 493 11272 -22242 2 2 0 6 9787 11209 11270 -22243 2 2 0 6 448 8143 11325 -22244 2 2 0 6 5097 11240 11233 -22245 2 2 0 6 6719 11322 11323 -22246 2 2 0 6 6052 6708 11294 -22247 2 2 0 6 2561 11274 7705 -22248 2 2 0 6 6096 11209 11208 -22249 2 2 0 6 10716 11270 11209 -22250 2 2 0 6 493 11332 11331 -22251 2 2 0 6 6082 11254 11249 -22252 2 2 0 6 6108 11295 11296 -22253 2 2 0 6 8213 11249 11254 -22254 2 2 0 6 6075 11233 11240 -22255 2 2 0 6 453 11299 8234 -22256 2 2 0 6 7509 11275 10274 -22257 2 2 0 6 6873 11332 11333 -22258 2 2 0 6 6019 11277 11276 -22259 2 2 0 6 10274 11275 11269 -22260 2 2 0 6 453 11300 11299 -22261 2 2 0 6 6019 11276 10249 -22262 2 2 0 6 6018 11277 6019 -22263 2 2 0 6 7914 11250 11248 -22264 2 2 0 6 453 8230 11300 -22265 2 2 0 6 517 11301 8230 -22266 2 2 0 6 6320 10811 11273 -22267 2 2 0 6 6164 11278 7076 -22268 2 2 0 6 6018 11279 11277 -22269 2 2 0 6 5784 11295 6108 -22270 2 2 0 6 6018 6319 11279 -22271 2 2 0 6 8230 11301 11300 -22272 2 2 0 6 8161 8162 11280 -22273 2 2 0 6 521 8234 11296 -22274 2 2 0 6 19 20 11297 -22275 2 2 0 6 8162 11303 11302 -22276 2 2 0 6 515 11305 8142 -22277 2 2 0 6 515 8144 11306 -22278 2 2 0 6 8376 11309 8377 -22279 2 2 0 6 8376 11310 11309 -22280 2 2 0 6 6712 11303 11304 -22281 2 2 0 6 515 11306 11305 -22282 2 2 0 6 475 11308 11307 -22283 2 2 0 6 475 11307 8144 -22284 2 2 0 6 86 505 11282 -22285 2 2 0 6 8144 11307 11306 -22286 2 2 0 6 474 11313 11312 -22287 2 2 0 6 474 11312 8374 -22288 2 2 0 6 505 7733 11320 -22289 2 2 0 6 6114 11302 9911 -22290 2 2 0 6 6712 9696 11303 -22291 2 2 0 6 401 11294 11261 -22292 2 2 0 6 6994 11285 7470 -22293 2 2 0 6 6717 11316 11317 -22294 2 2 0 6 409 8142 11304 -22295 2 2 0 6 475 8489 11308 -22296 2 2 0 6 83 426 11283 -22297 2 2 0 6 8234 11299 11296 -22298 2 2 0 6 437 11321 7733 -22299 2 2 0 6 6079 11310 11311 -22300 2 2 0 6 8849 11298 8489 -22301 2 2 0 6 7733 11321 11320 -22302 2 2 0 6 7742 11284 7741 -22303 2 2 0 6 10254 10853 11281 -22304 2 2 0 6 8143 11326 11325 -22305 2 2 0 6 6716 11313 11314 -22306 2 2 0 6 505 11320 11319 -22307 2 2 0 6 10811 11286 11273 -22308 2 2 0 6 6708 11261 11294 -22309 2 2 0 6 8142 11305 11304 -22310 2 2 0 6 493 11331 11272 -22311 2 2 0 6 5911 11268 11295 -22312 2 2 0 6 34 11287 484 -22313 2 2 0 6 7220 11288 11286 -22314 2 2 0 6 8374 11311 8375 -22315 2 2 0 6 6110 11294 11289 -22316 2 2 0 6 8248 11295 11268 -22317 2 2 0 6 5059 11310 6079 -22318 2 2 0 6 7220 11286 10811 -22319 2 2 0 6 7220 7275 11288 -22320 2 2 0 6 81 82 11314 -22321 2 2 0 6 6111 11313 6716 -22322 2 2 0 6 6994 11194 11285 -22323 2 2 0 6 500 11292 11291 -22324 2 2 0 6 6119 11318 7758 -22325 2 2 0 6 500 11291 7275 -22326 2 2 0 6 426 11316 11315 -22327 2 2 0 6 11280 8162 11302 -22328 2 2 0 6 7275 11291 11288 -22329 2 2 0 6 6112 6716 11315 -22330 2 2 0 6 27 11290 487 -22331 2 2 0 6 84 85 11317 -22332 2 2 0 6 6113 11316 6717 -22333 2 2 0 6 6067 6717 11319 -22334 2 2 0 6 8374 11312 11311 -22335 2 2 0 6 60 11292 500 -22336 2 2 0 6 6114 11280 11302 -22337 2 2 0 6 6110 11289 11268 -22338 2 2 0 6 24 11293 425 -22339 2 2 0 6 6052 11294 6110 -22340 2 2 0 6 511 7939 11323 -22341 2 2 0 6 505 11319 11282 -22342 2 2 0 6 6719 9714 11322 -22343 2 2 0 6 6715 11308 11298 -22344 2 2 0 6 426 11315 11283 -22345 2 2 0 6 7742 11318 11284 -22346 2 2 0 6 8248 11296 11295 -22347 2 2 0 6 6116 11329 6720 -22348 2 2 0 6 97 98 11330 -22349 2 2 0 6 5913 6720 11331 -22350 2 2 0 6 100 101 11333 -22351 2 2 0 6 5784 5911 11295 -22352 2 2 0 6 6871 11332 6873 -22353 2 2 0 6 10254 11281 11309 -22354 2 2 0 6 11318 7742 11322 -22355 2 2 0 6 8377 11309 11281 -22356 2 2 0 6 521 11296 8248 -22357 2 2 0 6 19 11297 433 -22358 2 2 0 6 6108 11299 9760 -22359 2 2 0 6 6119 11284 11318 -22360 2 2 0 6 9760 11299 11300 -22361 2 2 0 6 6109 9760 11300 -22362 2 2 0 6 6716 11283 11315 -22363 2 2 0 6 6109 11300 11301 -22364 2 2 0 6 6109 11301 6114 -22365 2 2 0 6 6715 11298 11281 -22366 2 2 0 6 6717 11282 11319 -22367 2 2 0 6 6108 11296 11299 -22368 2 2 0 6 8162 11304 11303 -22369 2 2 0 6 5112 9911 11302 -22370 2 2 0 6 5112 11302 11303 -22371 2 2 0 6 5112 11303 9696 -22372 2 2 0 6 409 11304 8162 -22373 2 2 0 6 6709 6712 11305 -22374 2 2 0 6 6720 11272 11331 -22375 2 2 0 6 6709 11305 11306 -22376 2 2 0 6 6709 11306 6710 -22377 2 2 0 6 6713 11307 11308 -22378 2 2 0 6 6710 11306 11307 -22379 2 2 0 6 6712 11304 11305 -22380 2 2 0 6 6710 11307 6713 -22381 2 2 0 6 6713 11308 6715 -22382 2 2 0 6 8376 11311 11310 -22383 2 2 0 6 11322 7742 11323 -22384 2 2 0 6 474 11314 11313 -22385 2 2 0 6 5753 11309 11310 -22386 2 2 0 6 7939 11324 11323 -22387 2 2 0 6 5753 10254 11309 -22388 2 2 0 6 5059 5753 11310 -22389 2 2 0 6 426 11317 11316 -22390 2 2 0 6 8375 11311 8376 -22391 2 2 0 6 8238 11312 11313 -22392 2 2 0 6 6079 11312 8238 -22393 2 2 0 6 468 11330 11329 -22394 2 2 0 6 6111 8238 11313 -22395 2 2 0 6 81 11314 474 -22396 2 2 0 6 493 11333 11332 -22397 2 2 0 6 6079 11311 11312 -22398 2 2 0 6 6112 11315 11028 -22399 2 2 0 6 84 11317 426 -22400 2 2 0 6 6067 11319 9980 -22401 2 2 0 6 6115 9980 11320 -22402 2 2 0 6 9980 11319 11320 -22403 2 2 0 6 6115 11320 11321 -22404 2 2 0 6 6115 11321 6119 -22405 2 2 0 6 11315 11316 11028 -22406 2 2 0 6 6113 11028 11316 -22407 2 2 0 6 7758 11318 11196 -22408 2 2 0 6 511 11323 7742 -22409 2 2 0 6 6718 6719 11324 -22410 2 2 0 6 6718 11324 11325 -22411 2 2 0 6 6718 11325 10965 -22412 2 2 0 6 9714 11196 11322 -22413 2 2 0 6 6118 11326 11327 -22414 2 2 0 6 6117 6118 11327 -22415 2 2 0 6 6117 11327 11328 -22416 2 2 0 6 6117 11328 9085 -22417 2 2 0 6 9085 11328 11329 -22418 2 2 0 6 6116 9085 11329 -22419 2 2 0 6 6118 10965 11326 -22420 2 2 0 6 97 11330 468 -22421 2 2 0 6 10965 11325 11326 -22422 2 2 0 6 5913 11331 9470 -22423 2 2 0 6 9470 11331 11332 -22424 2 2 0 6 6871 9470 11332 -22425 2 2 0 6 11318 11322 11196 -22426 2 2 0 6 100 11333 493 -22427 2 2 0 6 6719 11323 11324 -22428 2 2 0 6 4665 5118 11334 -22429 2 2 0 6 5285 11334 6874 -22430 2 2 0 6 278 6946 11338 -22431 2 2 0 6 9159 11487 11503 -22432 2 2 0 6 4665 11334 5285 -22433 2 2 0 6 6786 7424 11383 -22434 2 2 0 6 6915 6924 11357 -22435 2 2 0 6 6856 11347 6858 -22436 2 2 0 6 6304 7247 11421 -22437 2 2 0 6 6811 6897 11376 -22438 2 2 0 6 5837 10198 11339 -22439 2 2 0 6 4224 8527 11339 -22440 2 2 0 6 473 8875 11455 -22441 2 2 0 6 6784 11438 8089 -22442 2 2 0 6 277 11338 479 -22443 2 2 0 6 329 7152 11464 -22444 2 2 0 6 6937 11345 6939 -22445 2 2 0 6 4636 11341 6964 -22446 2 2 0 6 4650 6966 11342 -22447 2 2 0 6 4630 6959 11343 -22448 2 2 0 6 5376 11352 11365 -22449 2 2 0 6 11349 11363 7636 -22450 2 2 0 6 6133 8334 11340 -22451 2 2 0 6 5663 11340 5665 -22452 2 2 0 6 4635 11341 4636 -22453 2 2 0 6 5149 6805 11341 -22454 2 2 0 6 5454 11342 6829 -22455 2 2 0 6 4650 11342 8645 -22456 2 2 0 6 4630 11343 8202 -22457 2 2 0 6 6788 11343 6789 -22458 2 2 0 6 6946 6947 11338 -22459 2 2 0 6 277 278 11338 -22460 2 2 0 6 4228 6921 11379 -22461 2 2 0 6 5118 11348 11334 -22462 2 2 0 6 4246 11347 7548 -22463 2 2 0 6 6854 11347 6856 -22464 2 2 0 6 11334 11348 6876 -22465 2 2 0 6 4224 11339 10198 -22466 2 2 0 6 402 11444 6882 -22467 2 2 0 6 6902 11503 11487 -22468 2 2 0 6 11339 8527 11354 -22469 2 2 0 6 6923 11502 11346 -22470 2 2 0 6 6798 6930 11354 -22471 2 2 0 6 5663 6133 11340 -22472 2 2 0 6 4635 5149 11341 -22473 2 2 0 6 5454 8645 11342 -22474 2 2 0 6 6788 8202 11343 -22475 2 2 0 6 6877 11349 9020 -22476 2 2 0 6 4668 11349 7636 -22477 2 2 0 6 7407 7414 11344 -22478 2 2 0 6 379 380 11350 -22479 2 2 0 6 6939 11345 6941 -22480 2 2 0 6 4242 4257 11351 -22481 2 2 0 6 4241 11351 5174 -22482 2 2 0 6 5376 7961 11352 -22483 2 2 0 6 7697 11352 6247 -22484 2 2 0 6 5181 11353 5234 -22485 2 2 0 6 6918 11339 11354 -22486 2 2 0 6 6923 11346 6924 -22487 2 2 0 6 343 344 11355 -22488 2 2 0 6 4631 5146 11356 -22489 2 2 0 6 3816 11356 6223 -22490 2 2 0 6 7412 7413 11508 -22491 2 2 0 6 6854 7548 11347 -22492 2 2 0 6 224 225 11357 -22493 2 2 0 6 355 6882 11465 -22494 2 2 0 6 369 370 11358 -22495 2 2 0 6 5118 7645 11348 -22496 2 2 0 6 10138 11403 11510 -22497 2 2 0 6 403 8323 11381 -22498 2 2 0 6 4246 7672 11362 -22499 2 2 0 6 503 11371 11491 -22500 2 2 0 6 7379 11359 7381 -22501 2 2 0 6 4663 11359 10136 -22502 2 2 0 6 6878 11363 11349 -22503 2 2 0 6 9781 11143 11360 -22504 2 2 0 6 544 7820 11420 -22505 2 2 0 6 7698 11365 11352 -22506 2 2 0 6 101 102 11361 -22507 2 2 0 6 6873 11333 11361 -22508 2 2 0 6 6574 8559 11423 -22509 2 2 0 6 5234 6953 11366 -22510 2 2 0 6 514 8284 11447 -22511 2 2 0 6 415 11449 7152 -22512 2 2 0 6 5234 11366 7002 -22513 2 2 0 6 3337 11366 7672 -22514 2 2 0 6 174 175 11367 -22515 2 2 0 6 7507 11453 9218 -22516 2 2 0 6 6780 8591 11454 -22517 2 2 0 6 223 224 11369 -22518 2 2 0 6 553 11413 7698 -22519 2 2 0 6 148 149 11370 -22520 2 2 0 6 431 11414 6878 -22521 2 2 0 6 201 202 11364 -22522 2 2 0 6 370 11422 11358 -22523 2 2 0 6 406 9556 11443 -22524 2 2 0 6 4668 9020 11349 -22525 2 2 0 6 380 506 11350 -22526 2 2 0 6 6841 11512 11405 -22527 2 2 0 6 4241 4242 11351 -22528 2 2 0 6 6247 11352 7961 -22529 2 2 0 6 548 6857 11425 -22530 2 2 0 6 554 9597 11442 -22531 2 2 0 6 503 7395 11371 -22532 2 2 0 6 7396 7400 11371 -22533 2 2 0 6 4257 11415 11351 -22534 2 2 0 6 118 11467 6881 -22535 2 2 0 6 344 11426 11355 -22536 2 2 0 6 5181 6153 11353 -22537 2 2 0 6 6798 11354 8527 -22538 2 2 0 6 4642 7411 11372 -22539 2 2 0 6 343 11355 458 -22540 2 2 0 6 4639 6940 11374 -22541 2 2 0 6 3855 4642 11372 -22542 2 2 0 6 3853 11372 4643 -22543 2 2 0 6 471 11451 7447 -22544 2 2 0 6 465 6927 11452 -22545 2 2 0 6 3871 11374 4640 -22546 2 2 0 6 3873 4639 11374 -22547 2 2 0 6 3816 4631 11356 -22548 2 2 0 6 379 11350 11429 -22549 2 2 0 6 542 6876 11445 -22550 2 2 0 6 271 272 11375 -22551 2 2 0 6 480 11375 8563 -22552 2 2 0 6 6128 6129 11376 -22553 2 2 0 6 11373 11493 11482 -22554 2 2 0 6 438 11441 7771 -22555 2 2 0 6 512 7879 11377 -22556 2 2 0 6 446 11378 7382 -22557 2 2 0 6 4227 4228 11379 -22558 2 2 0 6 5156 11379 6827 -22559 2 2 0 6 456 6901 11380 -22560 2 2 0 6 262 456 11380 -22561 2 2 0 6 261 11380 529 -22562 2 2 0 6 6859 11353 11384 -22563 2 2 0 6 6152 6952 11381 -22564 2 2 0 6 225 424 11357 -22565 2 2 0 6 5176 11382 6793 -22566 2 2 0 6 4625 5163 11382 -22567 2 2 0 6 4246 11362 11347 -22568 2 2 0 6 369 11358 476 -22569 2 2 0 6 6318 10457 11383 -22570 2 2 0 6 6764 6786 11383 -22571 2 2 0 6 11143 11499 11360 -22572 2 2 0 6 6135 6907 11516 -22573 2 2 0 6 539 9381 11437 -22574 2 2 0 6 5175 6850 11385 -22575 2 2 0 6 4263 11385 5127 -22576 2 2 0 6 10136 11359 11500 -22577 2 2 0 6 6153 6950 11384 -22578 2 2 0 6 7877 11360 7879 -22579 2 2 0 6 469 7466 11386 -22580 2 2 0 6 526 11387 8370 -22581 2 2 0 6 8400 8401 11387 -22582 2 2 0 6 410 11389 8305 -22583 2 2 0 6 508 8153 11395 -22584 2 2 0 6 6737 11398 6794 -22585 2 2 0 6 6144 6793 11399 -22586 2 2 0 6 11202 11514 11408 -22587 2 2 0 6 7379 7382 11359 -22588 2 2 0 6 7722 11390 7723 -22589 2 2 0 6 9033 9032 11402 -22590 2 2 0 6 6740 11403 10138 -22591 2 2 0 6 5163 9781 11360 -22592 2 2 0 6 488 11492 7434 -22593 2 2 0 6 6841 11405 9743 -22594 2 2 0 6 6762 11406 6786 -22595 2 2 0 6 485 7819 11494 -22596 2 2 0 6 8153 11507 11395 -22597 2 2 0 6 101 11361 11333 -22598 2 2 0 6 6840 9486 11407 -22599 2 2 0 6 6735 11202 11408 -22600 2 2 0 6 6858 11362 6953 -22601 2 2 0 6 6161 6318 11409 -22602 2 2 0 6 11351 11415 8154 -22603 2 2 0 6 6839 7583 11410 -22604 2 2 0 6 6138 7636 11363 -22605 2 2 0 6 147 148 11411 -22606 2 2 0 6 6136 11412 6926 -22607 2 2 0 6 120 11413 553 -22608 2 2 0 6 121 429 11413 -22609 2 2 0 6 430 11510 11403 -22610 2 2 0 6 7712 11358 11422 -22611 2 2 0 6 318 11414 431 -22612 2 2 0 6 319 9271 11414 -22613 2 2 0 6 6775 11415 10189 -22614 2 2 0 6 6907 6971 11368 -22615 2 2 0 6 494 7843 11486 -22616 2 2 0 6 9212 10048 11416 -22617 2 2 0 6 6122 6839 11417 -22618 2 2 0 6 6671 11430 8370 -22619 2 2 0 6 5376 11365 9031 -22620 2 2 0 6 6155 6945 11386 -22621 2 2 0 6 173 174 11418 -22622 2 2 0 6 536 9292 11435 -22623 2 2 0 6 6942 11491 11371 -22624 2 2 0 6 6843 7487 11388 -22625 2 2 0 6 6842 11355 11426 -22626 2 2 0 6 6746 11419 9664 -22627 2 2 0 6 488 7433 11485 -22628 2 2 0 6 6858 11347 11362 -22629 2 2 0 6 3337 7002 11366 -22630 2 2 0 6 8558 8559 11400 -22631 2 2 0 6 463 9456 11433 -22632 2 2 0 6 452 11434 8359 -22633 2 2 0 6 175 419 11367 -22634 2 2 0 6 371 418 11422 -22635 2 2 0 6 6777 11429 11350 -22636 2 2 0 6 6794 11424 6795 -22637 2 2 0 6 136 548 11425 -22638 2 2 0 6 135 11425 414 -22639 2 2 0 6 345 534 11426 -22640 2 2 0 6 7380 11427 7466 -22641 2 2 0 6 6865 11428 7722 -22642 2 2 0 6 378 11429 430 -22643 2 2 0 6 6120 6843 11431 -22644 2 2 0 6 6733 7435 11407 -22645 2 2 0 6 6868 11432 8305 -22646 2 2 0 6 6171 11433 7129 -22647 2 2 0 6 6150 6844 11434 -22648 2 2 0 6 7985 7986 11435 -22649 2 2 0 6 525 11436 8322 -22650 2 2 0 6 6147 11437 6846 -22651 2 2 0 6 223 11369 486 -22652 2 2 0 6 5127 11438 5128 -22653 2 2 0 6 6015 11438 6784 -22654 2 2 0 6 6758 11440 6881 -22655 2 2 0 6 7615 11440 8393 -22656 2 2 0 6 6157 11441 6774 -22657 2 2 0 6 6785 6927 11459 -22658 2 2 0 6 6849 11458 7447 -22659 2 2 0 6 7844 11390 7845 -22660 2 2 0 6 522 8304 11432 -22661 2 2 0 6 6291 6773 11442 -22662 2 2 0 6 6754 7585 11443 -22663 2 2 0 6 6160 6882 11444 -22664 2 2 0 6 6158 11444 6772 -22665 2 2 0 6 314 11445 9401 -22666 2 2 0 6 315 542 11445 -22667 2 2 0 6 6755 6769 11447 -22668 2 2 0 6 7150 7152 11449 -22669 2 2 0 6 6162 11449 6768 -22670 2 2 0 6 149 558 11370 -22671 2 2 0 6 5174 11450 6141 -22672 2 2 0 6 7446 7447 11451 -22673 2 2 0 6 6783 11451 6782 -22674 2 2 0 6 6760 11452 6927 -22675 2 2 0 6 6781 11452 10927 -22676 2 2 0 6 321 11453 483 -22677 2 2 0 6 322 9218 11453 -22678 2 2 0 6 177 11454 8591 -22679 2 2 0 6 178 477 11454 -22680 2 2 0 6 454 8369 11430 -22681 2 2 0 6 457 11431 9122 -22682 2 2 0 6 6741 9734 11455 -22683 2 2 0 6 6721 11456 7699 -22684 2 2 0 6 6725 6765 11457 -22685 2 2 0 6 302 11458 495 -22686 2 2 0 6 197 489 11459 -22687 2 2 0 6 6751 10416 11460 -22688 2 2 0 6 6752 11461 6761 -22689 2 2 0 6 105 492 11462 -22690 2 2 0 6 104 11462 564 -22691 2 2 0 6 394 11463 494 -22692 2 2 0 6 6154 6840 11420 -22693 2 2 0 6 328 11464 481 -22694 2 2 0 6 354 11465 502 -22695 2 2 0 6 6042 6734 11466 -22696 2 2 0 6 119 553 11467 -22697 2 2 0 6 317 431 11468 -22698 2 2 0 6 316 11468 542 -22699 2 2 0 6 6731 11469 6759 -22700 2 2 0 6 6778 11470 10518 -22701 2 2 0 6 309 11471 447 -22702 2 2 0 6 310 539 11471 -22703 2 2 0 6 388 543 11472 -22704 2 2 0 6 387 11472 450 -22705 2 2 0 6 336 536 11473 -22706 2 2 0 6 335 11473 457 -22707 2 2 0 6 137 11474 548 -22708 2 2 0 6 138 463 11474 -22709 2 2 0 6 361 11475 452 -22710 2 2 0 6 362 522 11475 -22711 2 2 0 6 6859 11384 11506 -22712 2 2 0 6 7128 7129 11391 -22713 2 2 0 6 6844 10105 11392 -22714 2 2 0 6 6732 11476 6757 -22715 2 2 0 6 7709 11477 7710 -22716 2 2 0 6 11363 11511 11401 -22717 2 2 0 6 6742 11478 9648 -22718 2 2 0 6 6300 8028 11479 -22719 2 2 0 6 6739 11480 7951 -22720 2 2 0 6 133 11520 6950 -22721 2 2 0 6 6776 11481 10149 -22722 2 2 0 6 11365 11509 11402 -22723 2 2 0 6 7879 11360 11499 -22724 2 2 0 6 11032 11483 6851 -22725 2 2 0 6 7382 11500 11359 -22726 2 2 0 6 411 8407 11484 -22727 2 2 0 6 7984 7985 11393 -22728 2 2 0 6 498 7247 11404 -22729 2 2 0 6 4626 9934 11427 -22730 2 2 0 6 543 9494 11428 -22731 2 2 0 6 159 11515 6952 -22732 2 2 0 6 534 11405 11512 -22733 2 2 0 6 6903 11373 11482 -22734 2 2 0 6 447 11424 9139 -22735 2 2 0 6 492 11488 6928 -22736 2 2 0 6 125 11492 488 -22737 2 2 0 6 7151 11464 7152 -22738 2 2 0 6 131 485 11494 -22739 2 2 0 6 130 11494 544 -22740 2 2 0 6 427 11423 8557 -22741 2 2 0 6 563 11080 11497 -22742 2 2 0 6 1 11495 200 -22743 2 2 0 6 1 201 11495 -22744 2 2 0 6 4 11496 298 -22745 2 2 0 6 4 299 11496 -22746 2 2 0 6 3 5 11497 -22747 2 2 0 6 3 11497 396 -22748 2 2 0 6 2 103 11498 -22749 2 2 0 6 2 11498 102 -22750 2 2 0 6 133 134 11520 -22751 2 2 0 6 6121 8323 11436 -22752 2 2 0 6 159 160 11515 -22753 2 2 0 6 6845 11394 7259 -22754 2 2 0 6 301 495 11513 -22755 2 2 0 6 7395 7396 11371 -22756 2 2 0 6 4247 4626 11501 -22757 2 2 0 6 393 494 11486 -22758 2 2 0 6 6846 11396 7645 -22759 2 2 0 6 6729 11397 6837 -22760 2 2 0 6 441 11421 7246 -22761 2 2 0 6 6138 11363 11401 -22762 2 2 0 6 464 11419 10091 -22763 2 2 0 6 544 11420 9498 -22764 2 2 0 6 9031 11365 11402 -22765 2 2 0 6 6729 6784 11397 -22766 2 2 0 6 106 11488 492 -22767 2 2 0 6 6796 11465 6882 -22768 2 2 0 6 6774 11395 6775 -22769 2 2 0 6 7259 11394 7615 -22770 2 2 0 6 400 11519 6973 -22771 2 2 0 6 7411 7412 11373 -22772 2 2 0 6 3853 3855 11372 -22773 2 2 0 6 3871 3873 11374 -22774 2 2 0 6 481 11417 9255 -22775 2 2 0 6 478 11416 8371 -22776 2 2 0 6 562 11496 6971 -22777 2 2 0 6 6154 11420 7820 -22778 2 2 0 6 271 11375 480 -22779 2 2 0 6 6129 6811 11376 -22780 2 2 0 6 418 11408 11514 -22781 2 2 0 6 400 11345 11519 -22782 2 2 0 6 6773 7984 11393 -22783 2 2 0 6 512 11377 8022 -22784 2 2 0 6 489 7483 11412 -22785 2 2 0 6 446 7386 11378 -22786 2 2 0 6 4227 11379 5156 -22787 2 2 0 6 6775 11395 11507 -22788 2 2 0 6 7128 11391 7585 -22789 2 2 0 6 6772 11392 10105 -22790 2 2 0 6 537 11410 9172 -22791 2 2 0 6 6836 6881 11467 -22792 2 2 0 6 11348 7645 11396 -22793 2 2 0 6 418 8335 11408 -22794 2 2 0 6 261 262 11380 -22795 2 2 0 6 6907 11368 11516 -22796 2 2 0 6 124 488 11485 -22797 2 2 0 6 6152 11381 8902 -22798 2 2 0 6 485 11489 6944 -22799 2 2 0 6 4625 11382 5176 -22800 2 2 0 6 443 11406 7332 -22801 2 2 0 6 6769 6770 11389 -22802 2 2 0 6 495 11368 11513 -22803 2 2 0 6 498 11404 7335 -22804 2 2 0 6 534 9666 11405 -22805 2 2 0 6 6768 11388 7487 -22806 2 2 0 6 6764 11383 10457 -22807 2 2 0 6 430 11403 8240 -22808 2 2 0 6 483 11401 9271 -22809 2 2 0 6 477 8558 11400 -22810 2 2 0 6 7877 11504 11360 -22811 2 2 0 6 4263 5175 11385 -22812 2 2 0 6 7723 11390 7844 -22813 2 2 0 6 507 7828 11399 -22814 2 2 0 6 530 11398 9516 -22815 2 2 0 6 5163 11360 11504 -22816 2 2 0 6 6155 11386 6156 -22817 2 2 0 6 526 8400 11387 -22818 2 2 0 6 535 11388 9262 -22819 2 2 0 6 410 8237 11389 -22820 2 2 0 6 551 9650 11391 -22821 2 2 0 6 528 11392 8440 -22822 2 2 0 6 407 9537 11393 -22823 2 2 0 6 9271 11401 11511 -22824 2 2 0 6 510 9523 11394 -22825 2 2 0 6 508 11395 7856 -22826 2 2 0 6 439 9401 11396 -22827 2 2 0 6 435 11397 8088 -22828 2 2 0 6 6737 6782 11398 -22829 2 2 0 6 6144 11399 6781 -22830 2 2 0 6 429 11402 11509 -22831 2 2 0 6 7381 11359 11501 -22832 2 2 0 6 6139 9563 11400 -22833 2 2 0 6 6138 11401 7692 -22834 2 2 0 6 7246 11421 7247 -22835 2 2 0 6 9031 11402 9032 -22836 2 2 0 6 6741 11403 6740 -22837 2 2 0 6 6903 11487 11446 -22838 2 2 0 6 4640 11374 11448 -22839 2 2 0 6 4643 11372 11446 -22840 2 2 0 6 495 11516 11368 -22841 2 2 0 6 6308 7699 11404 -22842 2 2 0 6 6765 9743 11405 -22843 2 2 0 6 6761 11406 6762 -22844 2 2 0 6 6733 11407 9486 -22845 2 2 0 6 6734 6735 11408 -22846 2 2 0 6 6924 11346 11439 -22847 2 2 0 6 499 11490 6951 -22848 2 2 0 6 6161 11409 6796 -22849 2 2 0 6 132 11489 485 -22850 2 2 0 6 6611 8401 11484 -22851 2 2 0 6 6759 11410 7583 -22852 2 2 0 6 486 11439 6932 -22853 2 2 0 6 8557 11423 8559 -22854 2 2 0 6 147 11411 464 -22855 2 2 0 6 9851 11412 6136 -22856 2 2 0 6 120 121 11413 -22857 2 2 0 6 529 11380 11482 -22858 2 2 0 6 159 6952 11490 -22859 2 2 0 6 318 319 11414 -22860 2 2 0 6 4257 10189 11415 -22861 2 2 0 6 6153 11384 11353 -22862 2 2 0 6 133 6950 11489 -22863 2 2 0 6 6757 11416 10048 -22864 2 2 0 6 6122 11417 7167 -22865 2 2 0 6 173 11418 478 -22866 2 2 0 6 6935 11519 6937 -22867 2 2 0 6 395 11080 11463 -22868 2 2 0 6 123 11485 9033 -22869 2 2 0 6 6746 9648 11419 -22870 2 2 0 6 404 11508 7413 -22871 2 2 0 6 158 11490 499 -22872 2 2 0 6 6304 11421 8028 -22873 2 2 0 6 126 7435 11492 -22874 2 2 0 6 158 159 11490 -22875 2 2 0 6 370 371 11422 -22876 2 2 0 6 6574 11423 6850 -22877 2 2 0 6 8369 8370 11430 -22878 2 2 0 6 6795 11424 8626 -22879 2 2 0 6 135 136 11425 -22880 2 2 0 6 414 11506 11384 -22881 2 2 0 6 344 345 11426 -22882 2 2 0 6 7380 7381 11427 -22883 2 2 0 6 6864 11428 6865 -22884 2 2 0 6 8305 11432 8304 -22885 2 2 0 6 132 133 11489 -22886 2 2 0 6 4663 11501 11359 -22887 2 2 0 6 378 379 11429 -22888 2 2 0 6 6671 6851 11430 -22889 2 2 0 6 6120 11431 6852 -22890 2 2 0 6 6867 11432 6868 -22891 2 2 0 6 6937 11519 11345 -22892 2 2 0 6 6903 11446 11373 -22893 2 2 0 6 6121 11436 6860 -22894 2 2 0 6 6171 6853 11433 -22895 2 2 0 6 6150 11434 9698 -22896 2 2 0 6 7986 8858 11435 -22897 2 2 0 6 6611 11484 10812 -22898 2 2 0 6 8323 8322 11436 -22899 2 2 0 6 6924 11439 11369 -22900 2 2 0 6 6147 6861 11437 -22901 2 2 0 6 5128 11438 6015 -22902 2 2 0 6 7434 11492 7435 -22903 2 2 0 6 123 124 11485 -22904 2 2 0 6 6758 8393 11440 -22905 2 2 0 6 6157 6771 11441 -22906 2 2 0 6 107 6945 11488 -22907 2 2 0 6 392 11486 7845 -22908 2 2 0 6 6291 11442 7827 -22909 2 2 0 6 6754 11443 8043 -22910 2 2 0 6 6158 6160 11444 -22911 2 2 0 6 314 315 11445 -22912 2 2 0 6 6755 11447 6767 -22913 2 2 0 6 6940 6942 11448 -22914 2 2 0 6 6162 7150 11449 -22915 2 2 0 6 6141 11450 6866 -22916 2 2 0 6 6783 7446 11451 -22917 2 2 0 6 6760 10927 11452 -22918 2 2 0 6 321 322 11453 -22919 2 2 0 6 177 178 11454 -22920 2 2 0 6 6950 11520 11384 -22921 2 2 0 6 6880 11455 9734 -22922 2 2 0 6 6952 11515 11381 -22923 2 2 0 6 6721 7640 11456 -22924 2 2 0 6 6725 11457 9374 -22925 2 2 0 6 302 303 11458 -22926 2 2 0 6 196 197 11459 -22927 2 2 0 6 6751 11460 7640 -22928 2 2 0 6 6752 9374 11461 -22929 2 2 0 6 104 105 11462 -22930 2 2 0 6 394 395 11463 -22931 2 2 0 6 7842 11463 11080 -22932 2 2 0 6 328 329 11464 -22933 2 2 0 6 354 355 11465 -22934 2 2 0 6 6042 11466 6880 -22935 2 2 0 6 118 119 11467 -22936 2 2 0 6 316 317 11468 -22937 2 2 0 6 6731 7506 11469 -22938 2 2 0 6 6766 10518 11470 -22939 2 2 0 6 309 310 11471 -22940 2 2 0 6 387 388 11472 -22941 2 2 0 6 335 336 11473 -22942 2 2 0 6 137 138 11474 -22943 2 2 0 6 361 362 11475 -22944 2 2 0 6 6732 10812 11476 -22945 2 2 0 6 6767 11477 7709 -22946 2 2 0 6 6742 8043 11478 -22947 2 2 0 6 6941 11491 6942 -22948 2 2 0 6 6300 11479 7925 -22949 2 2 0 6 6739 7827 11480 -22950 2 2 0 6 4643 11487 9159 -22951 2 2 0 6 106 107 11488 -22952 2 2 0 6 6771 10149 11481 -22953 2 2 0 6 6901 6903 11482 -22954 2 2 0 6 300 11513 6971 -22955 2 2 0 6 4644 9159 11503 -22956 2 2 0 6 11032 6860 11483 -22957 2 2 0 6 392 393 11486 -22958 2 2 0 6 486 11369 11439 -22959 2 2 0 6 411 11484 8401 -22960 2 2 0 6 7433 9033 11485 -22961 2 2 0 6 6945 6928 11488 -22962 2 2 0 6 6940 11448 11374 -22963 2 2 0 6 7411 11446 11372 -22964 2 2 0 6 7843 7845 11486 -22965 2 2 0 6 6902 11487 6903 -22966 2 2 0 6 4644 11503 6904 -22967 2 2 0 6 4643 11446 11487 -22968 2 2 0 6 529 11482 11493 -22969 2 2 0 6 6944 11489 6950 -22970 2 2 0 6 414 11425 11506 -22971 2 2 0 6 6951 11490 6952 -22972 2 2 0 6 5146 11502 11356 -22973 2 2 0 6 503 11491 7480 -22974 2 2 0 6 102 11498 11361 -22975 2 2 0 6 7412 11508 11493 -22976 2 2 0 6 125 126 11492 -22977 2 2 0 6 529 11493 8458 -22978 2 2 0 6 6941 11505 11491 -22979 2 2 0 6 5163 11504 11382 -22980 2 2 0 6 6776 11521 11481 -22981 2 2 0 6 6901 11482 11380 -22982 2 2 0 6 130 131 11494 -22983 2 2 0 6 201 11364 11495 -22984 2 2 0 6 5174 11517 11450 -22985 2 2 0 6 5146 11346 11502 -22986 2 2 0 6 6850 11518 11385 -22987 2 2 0 6 200 11495 561 -22988 2 2 0 6 298 11496 562 -22989 2 2 0 6 5 563 11497 -22990 2 2 0 6 103 564 11498 -22991 2 2 0 6 7382 11378 11500 -22992 2 2 0 6 11377 7879 11499 -22993 2 2 0 6 7480 11491 11505 -22994 2 2 0 6 8458 11493 11508 -22995 2 2 0 6 9271 11511 11414 -22996 2 2 0 6 430 11429 11510 -22997 2 2 0 6 429 11509 11413 -22998 2 2 0 6 534 11512 11426 -22999 2 2 0 6 418 11514 11422 -23000 2 2 0 6 6775 11507 11415 -23001 2 2 0 6 8153 8154 11507 -23002 2 2 0 6 7712 11514 11202 -23003 2 2 0 6 6838 11499 11143 -23004 2 2 0 6 6149 10136 11500 -23005 2 2 0 6 7411 11373 11446 -23006 2 2 0 6 6841 6842 11512 -23007 2 2 0 6 4247 11501 4663 -23008 2 2 0 6 6971 11513 11368 -23009 2 2 0 6 6777 10138 11510 -23010 2 2 0 6 7876 11504 7877 -23011 2 2 0 6 6857 6859 11506 -23012 2 2 0 6 400 7480 11505 -23013 2 2 0 6 8091 11518 8092 -23014 2 2 0 6 404 8458 11508 -23015 2 2 0 6 300 301 11513 -23016 2 2 0 6 6935 6973 11519 -23017 2 2 0 6 160 403 11515 -23018 2 2 0 6 6135 11516 6847 -23019 2 2 0 6 8152 11517 8154 -23020 2 2 0 6 134 414 11520 -23021 2 2 0 6 400 11505 11345 -23022 2 2 0 6 7412 11493 11373 -23023 2 2 0 6 564 11361 11498 -23024 2 2 0 6 6941 11345 11505 -23025 2 2 0 6 414 11384 11520 -23026 2 2 0 6 561 11495 11364 -23027 2 2 0 6 403 11381 11515 -23028 2 2 0 6 6925 11356 11502 -23029 2 2 0 6 506 11521 11350 -23030 2 2 0 6 6878 11511 11363 -23031 2 2 0 6 7876 11382 11504 -23032 2 2 0 6 7698 11509 11365 -23033 2 2 0 6 6149 11500 11378 -23034 2 2 0 6 6838 11377 11499 -23035 2 2 0 6 6857 11506 11425 -23036 2 2 0 6 8091 11385 11518 -23037 2 2 0 6 8154 11415 11507 -23038 2 2 0 6 7712 11422 11514 -23039 2 2 0 6 7698 11413 11509 -23040 2 2 0 6 6878 11414 11511 -23041 2 2 0 6 6842 11426 11512 -23042 2 2 0 6 6777 11510 11429 -23043 2 2 0 6 8152 11450 11517 -23044 2 2 0 6 506 11481 11521 +216 +1 1 2 1 1 2 5 +2 1 2 1 1 5 6 +3 1 2 1 1 6 7 +4 1 2 1 1 7 8 +5 1 2 1 1 8 9 +6 1 2 1 1 9 10 +7 1 2 1 1 10 11 +8 1 2 1 1 11 3 +9 1 2 1 2 3 12 +10 1 2 1 2 12 13 +11 1 2 1 2 13 14 +12 1 2 1 2 14 15 +13 1 2 1 2 15 16 +14 1 2 1 2 16 17 +15 1 2 1 2 17 18 +16 1 2 1 2 18 4 +17 1 2 1 3 4 19 +18 1 2 1 3 19 20 +19 1 2 1 3 20 21 +20 1 2 1 3 21 22 +21 1 2 1 3 22 23 +22 1 2 1 3 23 24 +23 1 2 1 3 24 25 +24 1 2 1 3 25 1 +25 1 2 1 4 1 26 +26 1 2 1 4 26 27 +27 1 2 1 4 27 28 +28 1 2 1 4 28 29 +29 1 2 1 4 29 30 +30 1 2 1 4 30 31 +31 1 2 1 4 31 32 +32 1 2 1 4 32 2 +33 2 2 2 10 39 59 46 +34 2 2 2 10 38 58 48 +35 2 2 2 10 40 61 49 +36 2 2 2 10 37 49 60 +37 2 2 2 10 30 72 54 +38 2 2 2 10 23 68 52 +39 2 2 2 10 9 73 57 +40 2 2 2 10 28 50 66 +41 2 2 2 10 21 53 69 +42 2 2 2 10 16 70 55 +43 2 2 2 10 7 51 67 +44 2 2 2 10 14 56 71 +45 2 2 2 10 39 50 78 +46 2 2 2 10 41 51 79 +47 2 2 2 10 38 53 80 +48 2 2 2 10 40 56 81 +49 2 2 2 10 23 52 63 +50 2 2 2 10 16 55 65 +51 2 2 2 10 30 54 62 +52 2 2 2 10 9 57 64 +53 2 2 2 10 37 60 85 +54 2 2 2 10 34 46 58 +55 2 2 2 10 35 47 59 +56 2 2 2 10 36 48 61 +57 2 2 2 10 41 60 47 +58 2 2 2 10 48 58 82 +59 2 2 2 10 46 59 83 +60 2 2 2 10 49 61 84 +61 2 2 2 10 30 31 72 +62 2 2 2 10 9 10 73 +63 2 2 2 10 23 24 68 +64 2 2 2 10 16 17 70 +65 2 2 2 10 20 21 69 +66 2 2 2 10 13 14 71 +67 2 2 2 10 27 28 66 +68 2 2 2 10 6 7 67 +69 2 2 2 10 33 49 84 +70 2 2 2 10 98 49 33 +71 2 2 2 10 28 78 50 +72 2 2 2 10 7 79 51 +73 2 2 2 10 21 80 53 +74 2 2 2 10 14 81 56 +75 2 2 2 10 34 74 46 +76 2 2 2 10 35 75 47 +77 2 2 2 10 38 48 76 +78 2 2 2 10 40 49 77 +79 2 2 2 10 39 46 74 +80 2 2 2 10 41 47 75 +81 2 2 2 10 36 76 48 +82 2 2 2 10 37 77 49 +83 2 2 2 10 38 52 99 +84 2 2 2 10 39 54 100 +85 2 2 2 10 40 55 101 +86 2 2 2 10 38 63 52 +87 2 2 2 10 39 62 54 +88 2 2 2 10 40 65 55 +89 2 2 2 10 41 64 57 +90 2 2 2 10 41 57 85 +91 2 2 2 10 39 74 50 +92 2 2 2 10 41 75 51 +93 2 2 2 10 38 76 53 +94 2 2 2 10 40 77 56 +95 2 2 2 10 39 78 62 +96 2 2 2 10 41 79 64 +97 2 2 2 10 38 80 63 +98 2 2 2 10 40 81 65 +99 2 2 2 10 56 77 93 +100 2 2 2 10 37 93 77 +101 2 2 2 10 50 74 90 +102 2 2 2 10 51 75 91 +103 2 2 2 10 22 23 63 +104 2 2 2 10 15 16 65 +105 2 2 2 10 29 30 62 +106 2 2 2 10 8 9 64 +107 2 2 2 10 34 90 74 +108 2 2 2 10 35 91 75 +109 2 2 2 10 46 83 82 +110 2 2 2 10 48 82 84 +111 2 2 2 10 33 82 83 +112 2 2 2 10 33 84 82 +113 2 2 2 10 1 26 86 +114 2 2 2 10 2 5 87 +115 2 2 2 10 1 86 25 +116 2 2 2 10 2 87 32 +117 2 2 2 10 4 88 18 +118 2 2 2 10 4 19 88 +119 2 2 2 10 3 12 89 +120 2 2 2 10 3 89 11 +121 2 2 2 10 38 99 58 +122 2 2 2 10 39 100 59 +123 2 2 2 10 40 101 61 +124 2 2 2 10 49 98 60 +125 2 2 2 10 41 85 60 +126 2 2 2 10 46 82 58 +127 2 2 2 10 47 83 59 +128 2 2 2 10 48 84 61 +129 2 2 2 10 36 96 76 +130 2 2 2 10 53 76 96 +131 2 2 2 10 47 98 83 +132 2 2 2 10 28 29 78 +133 2 2 2 10 7 8 79 +134 2 2 2 10 21 22 80 +135 2 2 2 10 14 15 81 +136 2 2 2 10 34 58 99 +137 2 2 2 10 35 59 100 +138 2 2 2 10 36 61 101 +139 2 2 2 10 47 60 98 +140 2 2 2 10 55 92 101 +141 2 2 2 10 33 83 98 +142 2 2 2 10 31 32 108 +143 2 2 2 10 24 25 104 +144 2 2 2 10 10 11 109 +145 2 2 2 10 19 20 105 +146 2 2 2 10 17 18 106 +147 2 2 2 10 12 13 107 +148 2 2 2 10 26 27 102 +149 2 2 2 10 5 6 103 +150 2 2 2 10 22 63 80 +151 2 2 2 10 15 65 81 +152 2 2 2 10 29 62 78 +153 2 2 2 10 8 64 79 +154 2 2 2 10 50 90 66 +155 2 2 2 10 51 91 67 +156 2 2 2 10 55 70 92 +157 2 2 2 10 56 93 71 +158 2 2 2 10 42 94 68 +159 2 2 2 10 44 69 96 +160 2 2 2 10 43 95 72 +161 2 2 2 10 45 97 73 +162 2 2 2 10 37 85 97 +163 2 2 2 10 57 97 85 +164 2 2 2 10 42 90 94 +165 2 2 2 10 44 96 92 +166 2 2 2 10 43 91 95 +167 2 2 2 10 45 93 97 +168 2 2 2 10 36 101 92 +169 2 2 2 10 42 102 66 +170 2 2 2 10 43 103 67 +171 2 2 2 10 42 68 104 +172 2 2 2 10 44 105 69 +173 2 2 2 10 44 70 106 +174 2 2 2 10 45 107 71 +175 2 2 2 10 43 72 108 +176 2 2 2 10 45 73 109 +177 2 2 2 10 42 66 90 +178 2 2 2 10 43 67 91 +179 2 2 2 10 44 92 70 +180 2 2 2 10 45 71 93 +181 2 2 2 10 27 66 102 +182 2 2 2 10 6 67 103 +183 2 2 2 10 24 104 68 +184 2 2 2 10 20 69 105 +185 2 2 2 10 17 106 70 +186 2 2 2 10 13 71 107 +187 2 2 2 10 31 108 72 +188 2 2 2 10 10 109 73 +189 2 2 2 10 52 68 94 +190 2 2 2 10 53 96 69 +191 2 2 2 10 54 72 95 +192 2 2 2 10 57 73 97 +193 2 2 2 10 42 86 102 +194 2 2 2 10 43 87 103 +195 2 2 2 10 42 104 86 +196 2 2 2 10 44 88 105 +197 2 2 2 10 44 106 88 +198 2 2 2 10 43 108 87 +199 2 2 2 10 45 89 107 +200 2 2 2 10 45 109 89 +201 2 2 2 10 34 94 90 +202 2 2 2 10 35 95 91 +203 2 2 2 10 36 92 96 +204 2 2 2 10 37 97 93 +205 2 2 2 10 26 102 86 +206 2 2 2 10 5 103 87 +207 2 2 2 10 25 86 104 +208 2 2 2 10 19 105 88 +209 2 2 2 10 18 88 106 +210 2 2 2 10 12 107 89 +211 2 2 2 10 32 87 108 +212 2 2 2 10 11 89 109 +213 2 2 2 10 34 99 94 +214 2 2 2 10 52 94 99 +215 2 2 2 10 35 100 95 +216 2 2 2 10 54 95 100 $EndElements diff --git a/wrappers/gmshpy/gmshGeo.i b/wrappers/gmshpy/gmshGeo.i index d195c204bf5a99ef5a1ff26ff2c77405bf632713..0266507840572b229f429ca18201bc70c0123cc1 100644 --- a/wrappers/gmshpy/gmshGeo.i +++ b/wrappers/gmshpy/gmshGeo.i @@ -19,6 +19,7 @@ #include "GFace.h" #include "GFaceCompound.h" #include "GRegion.h" + #include "discreteDiskFace.h" #include "discreteFace.h" #include "discreteEdge.h" #include "discreteRegion.h" @@ -113,6 +114,7 @@ namespace std { %include "GFace.h" %include "GFaceCompound.h" %include "GRegion.h" +%include "discreteDiskFace.h" %include "discreteFace.h" %include "discreteEdge.h" %include "discreteVertex.h"